// ========== Copyright Header Begin ==========================================
// OpenSPARC T2 Processor File: xmac_shadow_class.vr
// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; version 2 of the License.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
// For the avoidance of doubt, and except that if any non-GPL license
// choice is available it will apply instead, Sun elects to use only
// the General Public License version 2 (GPLv2) at this time for any
// software where a choice of GPL license versions is made
// available with the language indicating that GPLv2 or any later version
// may be used, or where a choice of which version of the GPL is applied is
// otherwise unspecified.
// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
// CA 95054 USA or visit www.sun.com if you need additional information or
// ========== Copyright Header End ============================================
#include <vera_defines.vrh>
#include "xmac_memory_map.vri"
#include "neptune_memory_map.vri"
bit [32:0] all_xmac_regs[];
bit [32:0] fall_xmac_regs[];
bit [31:0] xtxmac_sw_rst;
bit [31:0] xrxmac_sw_rst;
bit [31:0] xtxmac_status;
bit [31:0] xrxmac_status;
bit [31:0] xmac_ctrl_stat;
bit [31:0] xtxmac_stat_msk;
bit [31:0] xrxmac_stat_msk;
bit [31:0] rxmac_bc_frm_cnt;
bit [31:0] rxmac_mc_frm_cnt;
bit [31:0] rxmac_frag_cnt;
bit [31:0] rxmac_hist_cnt1;
bit [31:0] rxmac_hist_cnt2;
bit [31:0] rxmac_hist_cnt3;
bit [31:0] rxmac_hist_cnt4;
bit [31:0] rxmac_hist_cnt5;
bit [31:0] rxmac_hist_cnt6;
bit [31:0] rxmac_mpszer_cnt;
bit [31:0] mac_crc_er_cnt;
bit [31:0] mac_cd_vio_cnt;
bit [31:0] mac_al_er_cnt;
bit [31:0] txmac_frm_cnt;
bit [31:0] txmac_byte_cnt;
bit [31:0] xmac_addr_cmpen_lsb;
bit [31:0] xmac_addr_cmpen_msb;
bit [31:0] xmac_fc_addr0;
bit [31:0] xmac_fc_addr1;
bit [31:0] xmac_fc_addr2;
bit [31:0] xmac_add_filt0;
bit [31:0] xmac_add_filt1;
bit [31:0] xmac_add_filt2;
bit [31:0] xmac_add_filt12_mask;
bit [31:0] xmac_add_filt00_mask;
bit [31:0] xmac_hash_tbl0;
bit [31:0] xmac_hash_tbl1;
bit [31:0] xmac_hash_tbl2;
bit [31:0] xmac_hash_tbl3;
bit [31:0] xmac_hash_tbl4;
bit [31:0] xmac_hash_tbl5;
bit [31:0] xmac_hash_tbl6;
bit [31:0] xmac_hash_tbl7;
bit [31:0] xmac_hash_tbl8;
bit [31:0] xmac_hash_tbl9;
bit [31:0] xmac_hash_tbl10;
bit [31:0] xmac_hash_tbl11;
bit [31:0] xmac_hash_tbl12;
bit [31:0] xmac_hash_tbl13;
bit [31:0] xmac_hash_tbl14;
bit [31:0] xmac_hash_tbl15;
bit [31:0] xmac_host_info0;
bit [31:0] xmac_host_info1;
bit [31:0] xmac_host_info2;
bit [31:0] xmac_host_info3;
bit [31:0] xmac_host_info4;
bit [31:0] xmac_host_info5;
bit [31:0] xmac_host_info6;
bit [31:0] xmac_host_info7;
bit [31:0] xmac_host_info8;
bit [31:0] xmac_host_info9;
bit [31:0] xmac_host_info10;
bit [31:0] xmac_host_info11;
bit [31:0] xmac_host_info12;
bit [31:0] xmac_host_info13;
bit [31:0] xmac_host_info14;
bit [31:0] xmac_host_info15;
bit [31:0] xmac_host_info16;
bit [31:0] xmac_host_info17;
bit [31:0] xmac_host_info18;
bit [31:0] xmac_host_info19;
bit [31:0] xmac_host_info20;
bit [31:0] xmac_host_info21;
bit [31:0] xmac_host_info22;
bit [31:0] xmac_host_info23;
bit [31:0] xmac_host_info24;
bit [31:0] xmac_host_info25;
bit [31:0] xmac_host_info26;
bit [31:0] xmac_host_info27;
bit [31:0] xmac_host_info28;
bit [31:0] xmac_host_info29;
bit [31:0] xmac_host_info30;
bit [31:0] xmac_host_info31;
bit [31:0] xmac_pa_data0;
bit [31:0] xmac_pa_data1;
bit [31:0] xmac_debug_sel;
bit [31:0] xmac_debug_reg;
xtxmac_sw_rst = 32'h000_00000;
xrxmac_sw_rst = 32'h000_00000;
xtxmac_status = 32'h000_00000;
xrxmac_status = 32'h0000_0000;
xrxmac_status = 32'h0000_0000;
xmac_ctrl_stat = 32'h0000_0000;
xtxmac_stat_msk = 32'h0000_0fff;
xrxmac_stat_msk = 32'h000f_ffff;
xmac_c_s_msk = 32'h0000_0007;
xmac_config = 32'h0280_0004;
xmac_ipg = 32'h002d_0a03;
xmac_min = 32'h0400_2040;
xmac_max = 32'h0000_05ee;
rxmac_bt_cnt = 32'h0000_0000;
rxmac_bc_frm_cnt = 21'hxx_xxxx;
rxmac_mc_frm_cnt = 21'hxx_xxxx;
rxmac_frag_cnt = 32'hxxxx_xxxx;
rxmac_hist_cnt1 = 21'hxx_xxxx;
rxmac_hist_cnt2 = 21'hxx_xxxx;
rxmac_hist_cnt3 = 32'hxxxx_xxxx;
rxmac_hist_cnt4 = 32'hxxxx_xxxx;
rxmac_hist_cnt5 = 32'hxxxx_xxxx;
rxmac_hist_cnt6 = 32'hxxxx_xxxx;
rxmac_mpszer_cnt = 32'hxxxx_xxxx;
mac_crc_er_cnt = 32'hxxxx_xxxx;
mac_cd_vio_cnt = 32'hxxxx_xxxx;
mac_al_er_cnt = 32'hxxxx_xxxx;
txmac_frm_cnt = 32'h0000_0000;
txmac_byte_cnt = 32'h0000_0000;
xmac_sm_reg = 32'hxxxx_xxxx;
xmac_addr0 = 32'hxxxx_xxxx;
xmac_addr1 = 32'hxxxx_xxxx;
xmac_addr2 = 32'hxxxx_xxxx;
xmac_addr_cmpen_lsb = 32'h0000_0000;
xmac_addr_cmpen_msb = 32'h0000_0000;
xmac_addr3 = 32'hxxxx_xxxx;
xmac_addr4 = 32'hxxxx_xxxx;
xmac_addr5 = 32'hxxxx_xxxx;
xmac_addr6 = 32'hxxxx_xxxx;
xmac_addr7 = 32'hxxxx_xxxx;
xmac_addr8 = 32'hxxxx_xxxx;
xmac_addr9 = 32'hxxxx_xxxx;
xmac_addr10 = 32'hxxxx_xxxx;
xmac_addr11 = 32'hxxxx_xxxx;
xmac_addr12 = 32'hxxxx_xxxx;
xmac_addr13 = 32'hxxxx_xxxx;
xmac_addr14 = 32'hxxxx_xxxx;
xmac_addr15 = 32'hxxxx_xxxx;
xmac_addr16 = 32'hxxxx_xxxx;
xmac_addr17 = 32'hxxxx_xxxx;
xmac_addr18 = 32'hxxxx_xxxx;
xmac_addr19 = 32'hxxxx_xxxx;
xmac_addr20 = 32'hxxxx_xxxx;
xmac_addr21 = 32'hxxxx_xxxx;
xmac_addr22 = 32'hxxxx_xxxx;
xmac_addr23 = 32'hxxxx_xxxx;
xmac_addr24 = 32'hxxxx_xxxx;
xmac_addr25 = 32'hxxxx_xxxx;
xmac_addr26 = 32'hxxxx_xxxx;
xmac_addr27 = 32'hxxxx_xxxx;
xmac_addr28 = 32'hxxxx_xxxx;
xmac_addr29 = 32'hxxxx_xxxx;
xmac_addr30 = 32'hxxxx_xxxx;
xmac_addr31 = 32'hxxxx_xxxx;
xmac_addr32 = 32'hxxxx_xxxx;
xmac_addr33 = 32'hxxxx_xxxx;
xmac_addr34 = 32'hxxxx_xxxx;
xmac_addr35 = 32'hxxxx_xxxx;
xmac_addr36 = 32'hxxxx_xxxx;
xmac_addr37 = 32'hxxxx_xxxx;
xmac_addr38 = 32'hxxxx_xxxx;
xmac_addr39 = 32'hxxxx_xxxx;
xmac_addr40 = 32'hxxxx_xxxx;
xmac_addr41 = 32'hxxxx_xxxx;
xmac_addr42 = 32'hxxxx_xxxx;
xmac_addr43 = 32'hxxxx_xxxx;
xmac_addr44 = 32'hxxxx_xxxx;
xmac_addr45 = 32'hxxxx_xxxx;
xmac_addr46 = 32'hxxxx_xxxx;
xmac_addr47 = 32'hxxxx_xxxx;
xmac_addr48 = 32'hxxxx_xxxx;
xmac_addr49 = 32'hxxxx_xxxx;
xmac_addr50 = 32'hxxxx_xxxx;
xmac_addr51 = 32'hxxxx_xxxx;
xmac_addr52 = 32'hxxxx_xxxx;
xmac_addr53 = 32'hxxxx_xxxx;
xmac_addr54 = 32'hxxxx_xxxx;
xmac_addr55 = 32'hxxxx_xxxx;
xmac_addr56 = 32'hxxxx_xxxx;
xmac_addr57 = 32'hxxxx_xxxx;
xmac_addr58 = 32'hxxxx_xxxx;
xmac_addr59 = 32'hxxxx_xxxx;
xmac_addr60 = 32'hxxxx_xxxx;
xmac_addr61 = 32'hxxxx_xxxx;
xmac_addr62 = 32'hxxxx_xxxx;
xmac_addr63 = 32'hxxxx_xxxx;
xmac_addr64 = 32'hxxxx_xxxx;
xmac_addr65 = 32'hxxxx_xxxx;
xmac_addr66 = 32'hxxxx_xxxx;
xmac_addr67 = 32'hxxxx_xxxx;
xmac_addr68 = 32'hxxxx_xxxx;
xmac_addr69 = 32'hxxxx_xxxx;
xmac_addr70 = 32'hxxxx_xxxx;
xmac_addr71 = 32'hxxxx_xxxx;
xmac_addr72 = 32'hxxxx_xxxx;
xmac_addr73 = 32'hxxxx_xxxx;
xmac_addr74 = 32'hxxxx_xxxx;
xmac_addr75 = 32'hxxxx_xxxx;
xmac_addr76 = 32'hxxxx_xxxx;
xmac_addr77 = 32'hxxxx_xxxx;
xmac_addr78 = 32'hxxxx_xxxx;
xmac_addr79 = 32'hxxxx_xxxx;
xmac_addr80 = 32'hxxxx_xxxx;
xmac_addr81 = 32'hxxxx_xxxx;
xmac_addr82 = 32'hxxxx_xxxx;
xmac_addr83 = 32'hxxxx_xxxx;
xmac_addr84 = 32'hxxxx_xxxx;
xmac_addr85 = 32'hxxxx_xxxx;
xmac_addr86 = 32'hxxxx_xxxx;
xmac_addr87 = 32'hxxxx_xxxx;
xmac_addr88 = 32'hxxxx_xxxx;
xmac_addr89 = 32'hxxxx_xxxx;
xmac_addr90 = 32'hxxxx_xxxx;
xmac_addr91 = 32'hxxxx_xxxx;
xmac_addr92 = 32'hxxxx_xxxx;
xmac_addr93 = 32'hxxxx_xxxx;
xmac_addr94 = 32'hxxxx_xxxx;
xmac_addr95 = 32'hxxxx_xxxx;
xmac_addr96 = 32'hxxxx_xxxx;
xmac_addr97 = 32'hxxxx_xxxx;
xmac_addr98 = 32'hxxxx_xxxx;
xmac_fc_addr0 = 32'hxxxx_xxxx;
xmac_fc_addr1 = 32'hxxxx_xxxx;
xmac_fc_addr2 = 32'hxxxx_xxxx;
xmac_add_filt0 = 32'hxxxx_xxxx;
xmac_add_filt1 = 32'hxxxx_xxxx;
xmac_add_filt2 = 32'hxxxx_xxxx;
xmac_add_filt12_mask = 32'hxxxx_xxxx;
xmac_add_filt00_mask = 32'hxxxx_xxxx;
xmac_hash_tbl0 = 32'hxxxx_xxxx;
xmac_hash_tbl1 = 32'hxxxx_xxxx;
xmac_hash_tbl2 = 32'hxxxx_xxxx;
xmac_hash_tbl3 = 32'hxxxx_xxxx;
xmac_hash_tbl4 = 32'hxxxx_xxxx;
xmac_hash_tbl5 = 32'hxxxx_xxxx;
xmac_hash_tbl6 = 32'hxxxx_xxxx;
xmac_hash_tbl7 = 32'hxxxx_xxxx;
xmac_hash_tbl8 = 32'hxxxx_xxxx;
xmac_hash_tbl9 = 32'hxxxx_xxxx;
xmac_hash_tbl10 = 32'hxxxx_xxxx;
xmac_hash_tbl11 = 32'hxxxx_xxxx;
xmac_hash_tbl12 = 32'hxxxx_xxxx;
xmac_hash_tbl13 = 32'hxxxx_xxxx;
xmac_hash_tbl14 = 32'hxxxx_xxxx;
xmac_hash_tbl15 = 32'hxxxx_xxxx;
xmac_host_info0 = 32'h0000_0000;
xmac_host_info1 = 32'h0000_0000;
xmac_host_info2 = 32'h0000_0000;
xmac_host_info3 = 32'h0000_0000;
xmac_host_info4 = 32'h0000_0000;
xmac_host_info5 = 32'h0000_0000;
xmac_host_info6 = 32'h0000_0000;
xmac_host_info7 = 32'h0000_0000;
xmac_host_info8 = 32'h0000_0000;
xmac_host_info9 = 32'h0000_0000;
xmac_host_info10 = 32'h0000_0000;
xmac_host_info11 = 32'h0000_0000;
xmac_host_info12 = 32'h0000_0000;
xmac_host_info13 = 32'h0000_0000;
xmac_host_info14 = 32'h0000_0000;
xmac_host_info15 = 32'h0000_0000;
xmac_host_info16 = 32'h0000_0000;
xmac_host_info17 = 32'h0000_0000;
xmac_host_info18 = 32'h0000_0000;
xmac_host_info19 = 32'h0000_0000;
xmac_host_info20 = 32'h0000_0000;
xmac_host_info21 = 32'h0000_0000;
xmac_host_info22 = 32'h0000_0000;
xmac_host_info23 = 32'h0000_0000;
xmac_host_info24 = 32'h0000_0000;
xmac_host_info25 = 32'h0000_0000;
xmac_host_info26 = 32'h0000_0000;
xmac_host_info27 = 32'h0000_0000;
xmac_host_info28 = 32'h0000_0000;
xmac_host_info29 = 32'h0000_0000;
xmac_host_info30 = 32'h0000_0000;
xmac_host_info31 = 32'h0000_0000;
xmac_pa_data0 = 32'hxxxx_xxxx;
xmac_pa_data1 = 32'hxxxx_xxxx;
xmac_debug_sel = 32'h0000_00xx;
xmac_debug_reg = 32'hxxxx_xxxx;
task put_fdata(integer mport, bit [47:0] data) {
task get_fdata(integer mport, var bit[47:0] data) {
task get_data (bit [32:0] addr, var bit [31:0] data,
var bit [31:0] data_mask, var bit data_valid) {
data_mask = 32'hffff_ffff;
data_mask = 32'h0000_0003;
data_mask = 32'h0000_0003;
data_mask = 32'h0000_0fff;
data_mask = 32'h0000_ffff;
data_mask = 32'h0000_ffff;
data_mask = 32'h0000_0fff;
data_mask = 32'h000f_ffff;
data_mask = 32'h0000_0007;
XMAC_CONFIG :{ data = xmac_config;
data_mask = 32'hff99ffff;
printf("Updating XMAC Config Reg\n");
data_mask = 32'h0000_ffff;
data_mask = 32'h3ff3_fff8;
data_mask = 32'h0000_3fff;
data_mask = 32'h003f_ffff;
data_mask = 32'h001f_ffff;
data_mask = 32'h001f_ffff;
data_mask = 32'h001f_ffff;
data_mask = 32'h001f_ffff;
data_mask = 32'h001f_ffff;
data_mask = 32'h000f_ffff;
data_mask = 32'h0007_ffff;
data_mask = 32'h0001_ffff;
data_mask = 32'h0000_00ff;
data_mask = 32'h0000_00ff;
data_mask = 32'h0000_00ff;
data_mask = 32'h0000_00ff;
TxMAC_FRM_CNT :{ data = txmac_frm_cnt;
data_mask = 32'h001f_ffff;
TxMAC_BYTE_CNT :{ data = txmac_byte_cnt;
XMAC_SM_REG :{ data = xmac_sm_reg;
XMAC_ADDR0 :{ data = xmac_addr0;
data_mask= 32'h0000_ffff;
XMAC_ADDR1 :{ data = xmac_addr1;
XMAC_ADDR2 :{ data = xmac_addr2;
XMAC_ADDR_CMPEN_LSB :{ data =xmac_addr_cmpen_lsb;
XMAC_ADDR_CMPEN_MSB :{ data =xmac_addr_cmpen_msb;
XMAC_ADDR3 :{ data = xmac_addr3;
XMAC_ADDR4 :{ data = xmac_addr4;
XMAC_ADDR5 :{ data = xmac_addr5;
XMAC_ADDR6 :{ data = xmac_addr6;
XMAC_ADDR7 :{ data = xmac_addr7;
XMAC_ADDR8 :{ data = xmac_addr8;
XMAC_ADDR9 :{ data = xmac_addr9;
XMAC_ADDR10 :{ data = xmac_addr10;
XMAC_ADDR11 :{ data = xmac_addr11;
XMAC_ADDR12 :{ data = xmac_addr12;
XMAC_ADDR13 :{ data = xmac_addr13;
XMAC_ADDR14 :{ data = xmac_addr14;
XMAC_ADDR15 :{ data = xmac_addr15;
XMAC_ADDR16 :{ data = xmac_addr16;
XMAC_ADDR17 :{ data = xmac_addr17;
XMAC_ADDR18 :{ data = xmac_addr18;
XMAC_ADDR19 :{ data = xmac_addr19;
XMAC_ADDR20 :{ data = xmac_addr20;
XMAC_ADDR21 :{ data = xmac_addr21;
XMAC_ADDR22 :{ data = xmac_addr22;
XMAC_ADDR23 :{ data = xmac_addr23;
XMAC_ADDR24 :{ data = xmac_addr24;
XMAC_ADDR25 :{ data = xmac_addr25;
XMAC_ADDR26 :{ data = xmac_addr26;
XMAC_ADDR27 :{ data = xmac_addr27;
XMAC_ADDR28 :{ data = xmac_addr28;
XMAC_ADDR29 :{ data = xmac_addr29;
XMAC_ADDR30 :{ data = xmac_addr30;
XMAC_ADDR31 :{ data = xmac_addr31;
XMAC_ADDR32 :{ data = xmac_addr32;
XMAC_ADDR33 :{ data = xmac_addr33;
XMAC_ADDR34 :{ data = xmac_addr34;
XMAC_ADDR35 :{ data = xmac_addr35;
XMAC_ADDR36 :{ data = xmac_addr36;
XMAC_ADDR37 :{ data = xmac_addr37;
XMAC_ADDR38 :{ data = xmac_addr38;
XMAC_ADDR39 :{ data = xmac_addr39;
XMAC_ADDR40 :{ data = xmac_addr40;
XMAC_ADDR41 :{ data = xmac_addr41;
XMAC_ADDR42 :{ data = xmac_addr42;
XMAC_ADDR43 :{ data = xmac_addr43;
XMAC_ADDR44 :{ data = xmac_addr44;
XMAC_ADDR45 :{ data = xmac_addr45;
XMAC_ADDR46 :{ data = xmac_addr46;
XMAC_ADDR47 :{ data = xmac_addr47;
XMAC_ADDR48 :{ data = xmac_addr48;
XMAC_ADDR49 :{ data = xmac_addr49;
XMAC_ADDR50 :{ data = xmac_addr50;
XMAC_ADDR51 :{ data = xmac_addr51;
XMAC_ADDR52 :{ data = xmac_addr52;
XMAC_ADDR53 :{ data = xmac_addr53;
XMAC_ADDR54 :{ data = xmac_addr54;
XMAC_ADDR55 :{ data = xmac_addr55;
XMAC_ADDR56 :{ data = xmac_addr56;
XMAC_ADDR57 :{ data = xmac_addr57;
XMAC_ADDR58 :{ data = xmac_addr58;
XMAC_ADDR59 :{ data = xmac_addr59;
XMAC_ADDR60 :{ data = xmac_addr60;
XMAC_ADDR61 :{ data = xmac_addr61;
XMAC_ADDR62 :{ data = xmac_addr62;
XMAC_ADDR63 :{ data = xmac_addr63;
XMAC_ADDR64 :{ data = xmac_addr64;
XMAC_ADDR65 :{ data = xmac_addr65;
XMAC_ADDR66 :{ data = xmac_addr66;
XMAC_ADDR67 :{ data = xmac_addr67;
XMAC_ADDR68 :{ data = xmac_addr68;
XMAC_ADDR69 :{ data = xmac_addr69;
XMAC_ADDR70 :{ data = xmac_addr70;
XMAC_ADDR71 :{ data = xmac_addr71;
XMAC_ADDR72 :{ data = xmac_addr72;
XMAC_ADDR73 :{ data = xmac_addr73;
XMAC_ADDR74 :{ data = xmac_addr74;
XMAC_ADDR75 :{ data = xmac_addr75;
XMAC_ADDR76 :{ data = xmac_addr76;
XMAC_ADDR77 :{ data = xmac_addr77;
XMAC_ADDR78 :{ data = xmac_addr78;
XMAC_ADDR79 :{ data = xmac_addr79;
XMAC_ADDR80 :{ data = xmac_addr80;
XMAC_ADDR81 :{ data = xmac_addr81;
XMAC_ADDR82 :{ data = xmac_addr82;
XMAC_ADDR83 :{ data = xmac_addr83;
XMAC_ADDR84 :{ data = xmac_addr84;
XMAC_ADDR85 :{ data = xmac_addr85;
XMAC_ADDR86 :{ data = xmac_addr86;
XMAC_ADDR87 :{ data = xmac_addr87;
XMAC_ADDR88 :{ data = xmac_addr88;
XMAC_ADDR89 :{ data = xmac_addr89;
XMAC_ADDR90 :{ data = xmac_addr90;
XMAC_ADDR91 :{ data = xmac_addr91;
XMAC_ADDR92 :{ data = xmac_addr92;
XMAC_ADDR93 :{ data = xmac_addr93;
XMAC_ADDR94 :{ data = xmac_addr94;
XMAC_ADDR95 :{ data = xmac_addr95;
XMAC_ADDR96 :{ data = xmac_addr96;
XMAC_ADDR97 :{ data = xmac_addr97;
XMAC_ADDR98 :{ data = xmac_addr98;
XMAC_FC_ADDR0 :{ data = xmac_fc_addr0;
XMAC_FC_ADDR1 :{ data = xmac_fc_addr1;
XMAC_FC_ADDR2 :{ data = xmac_fc_addr2;
XMAC_ADD_FILT0 :{ data = xmac_add_filt0;
XMAC_ADD_FILT1 :{ data = xmac_add_filt1;
XMAC_ADD_FILT2 :{ data = xmac_add_filt2;
XMAC_ADD_FILT12_MASK: { data = xmac_add_filt12_mask;
XMAC_ADD_FILT00_MASK:{ data = xmac_add_filt00_mask;
XMAC_HASH_TBL0 :{ data = xmac_hash_tbl0;
XMAC_HASH_TBL1 :{ data = xmac_hash_tbl1;
XMAC_HASH_TBL2 :{ data = xmac_hash_tbl2;
XMAC_HASH_TBL3 :{ data = xmac_hash_tbl3;
XMAC_HASH_TBL4 :{ data = xmac_hash_tbl4;
XMAC_HASH_TBL5 :{ data = xmac_hash_tbl5;
XMAC_HASH_TBL6 :{ data = xmac_hash_tbl6;
XMAC_HASH_TBL7 :{ data = xmac_hash_tbl7;
XMAC_HASH_TBL8 :{ data = xmac_hash_tbl8;
XMAC_HASH_TBL9 :{ data = xmac_hash_tbl9;
XMAC_HASH_TBL10 :{ data = xmac_hash_tbl10;
XMAC_HASH_TBL11 :{ data = xmac_hash_tbl11;
XMAC_HASH_TBL12 :{ data = xmac_hash_tbl12;
XMAC_HASH_TBL13 :{ data = xmac_hash_tbl13;
XMAC_HASH_TBL14 :{ data = xmac_hash_tbl14;
XMAC_HASH_TBL15 :{ data = xmac_hash_tbl15;
XMAC_HOST_INFO0 :{ data = xmac_host_info0;
XMAC_HOST_INFO1 :{ data = xmac_host_info1;
XMAC_HOST_INFO2 :{ data = xmac_host_info2;
XMAC_HOST_INFO3 :{ data = xmac_host_info3;
XMAC_HOST_INFO4 :{ data = xmac_host_info4;
XMAC_HOST_INFO5 :{ data = xmac_host_info5;
XMAC_HOST_INFO6 :{ data = xmac_host_info6;
XMAC_HOST_INFO7 :{ data = xmac_host_info7;
XMAC_HOST_INFO8 :{ data = xmac_host_info8;
XMAC_HOST_INFO9 :{ data = xmac_host_info9;
XMAC_HOST_INFO10 :{ data = xmac_host_info10;
XMAC_HOST_INFO11 :{ data = xmac_host_info11;
XMAC_HOST_INFO12 :{ data = xmac_host_info12;
XMAC_HOST_INFO13 :{ data = xmac_host_info13;
XMAC_HOST_INFO14 :{ data = xmac_host_info14;
XMAC_HOST_INFO15 :{ data = xmac_host_info15;
XMAC_HOST_INFO16 :{ data = xmac_host_info16;
XMAC_HOST_INFO17 :{ data = xmac_host_info17;
XMAC_HOST_INFO18 :{ data = xmac_host_info18;
XMAC_HOST_INFO19 :{ data = xmac_host_info19;
XMAC_HOST_INFO20 :{ data = xmac_host_info20;
XMAC_HOST_INFO21 :{ data = xmac_host_info21;
XMAC_HOST_INFO22 :{ data = xmac_host_info22;
XMAC_HOST_INFO23 :{ data = xmac_host_info23;
XMAC_HOST_INFO24 :{ data = xmac_host_info24;
XMAC_HOST_INFO25 :{ data = xmac_host_info25;
XMAC_HOST_INFO26 :{ data = xmac_host_info26;
XMAC_HOST_INFO27 :{ data = xmac_host_info27;
XMAC_HOST_INFO28 :{ data = xmac_host_info28;
XMAC_HOST_INFO29 :{ data = xmac_host_info29;
XMAC_HOST_INFO30 :{ data = xmac_host_info30;
XMAC_HOST_INFO31 :{ data = xmac_host_info31;
XMAC_PA_DATA0 : { data = xmac_pa_data0;
data_mask = 32'h0000_0000;
XMAC_PA_DATA1 : { data = xmac_pa_data1;
data_mask = 32'h0000_0000;
XMAC_DEBUG_SEL : { data = xmac_debug_sel;
data_mask = 32'h0000_00FF;
XMAC_DEBUG_REG : { data = xmac_debug_reg;
data_mask = 32'h0000_0000;
task put_data (bit [32:0] addr, bit [31:0] data)
XTxMAC_SW_RST : xtxmac_sw_rst = data;
XRxMAC_SW_RST : xrxmac_sw_rst = data;
XTxMAC_STATUS : xtxmac_status = data;
XRxMAC_STATUS : xrxmac_status = data;
XMAC_CTRL_STAT : xmac_ctrl_stat = data;
XTxMAC_STAT_MSK : xtxmac_stat_msk = data;
XRxMAC_STAT_MSK : xrxmac_stat_msk = data;
XMAC_C_S_MSK : xmac_c_s_msk = data;
XMAC_CONFIG : xmac_config = data;
XMAC_IPG : xmac_ipg = data;
XMAC_MIN : xmac_min = data;
XMAC_MAX : xmac_max = data;
RxMAC_BT_CNT : rxmac_bt_cnt = data;
RxMAC_BC_FRM_CNT : rxmac_bc_frm_cnt= data;
RxMAC_MC_FRM_CNT : rxmac_mc_frm_cnt= data;
RxMAC_FRAG_CNT : rxmac_frag_cnt = data;
RxMAC_HIST_CNT1 : rxmac_hist_cnt1 = data;
RxMAC_HIST_CNT2 : rxmac_hist_cnt2 = data;
RxMAC_HIST_CNT3 : rxmac_hist_cnt3 = data;
RxMAC_HIST_CNT4 : rxmac_hist_cnt4 = data;
RxMAC_HIST_CNT5 : rxmac_hist_cnt5 = data;
RxMAC_HIST_CNT6 : rxmac_hist_cnt6 = data;
RxMAC_MPSZER_CNT : rxmac_mpszer_cnt= data;
MAC_CRC_ER_CNT : mac_crc_er_cnt = data;
MAC_CD_VIO_CNT : mac_cd_vio_cnt = data;
MAC_AL_ER_CNT : mac_al_er_cnt = data;
TxMAC_FRM_CNT : txmac_frm_cnt = data;
TxMAC_BYTE_CNT : txmac_byte_cnt = data;
XMAC_SM_REG : xmac_sm_reg = data;
XMAC_ADDR0 : xmac_addr0 = data;
XMAC_ADDR1 : xmac_addr1 = data;
XMAC_ADDR2 : xmac_addr2 = data;
XMAC_ADDR_CMPEN_LSB : xmac_addr_cmpen_lsb =data;
XMAC_ADDR_CMPEN_MSB : xmac_addr_cmpen_msb =data;
XMAC_ADDR3 : xmac_addr3 = data;
XMAC_ADDR4 : xmac_addr4 = data;
XMAC_ADDR5 : xmac_addr5 = data;
XMAC_ADDR6 : xmac_addr6 = data;
XMAC_ADDR7 : xmac_addr7 = data;
XMAC_ADDR8 : xmac_addr8 = data;
XMAC_ADDR9 : xmac_addr9 = data;
XMAC_ADDR10 : xmac_addr10 = data;
XMAC_ADDR11 : xmac_addr11 = data;
XMAC_ADDR12 : xmac_addr12 = data;
XMAC_ADDR13 : xmac_addr13 = data;
XMAC_ADDR14 : xmac_addr14 = data;
XMAC_ADDR15 : xmac_addr15 = data;
XMAC_ADDR16 : xmac_addr16 = data;
XMAC_ADDR17 : xmac_addr17 = data;
XMAC_ADDR18 : xmac_addr18 = data;
XMAC_ADDR19 : xmac_addr19 = data;
XMAC_ADDR20 : xmac_addr20 = data;
XMAC_ADDR21 : xmac_addr21 = data;
XMAC_ADDR22 : xmac_addr22 = data;
XMAC_ADDR23 : xmac_addr23 = data;
XMAC_ADDR24 : xmac_addr24 = data;
XMAC_ADDR25 : xmac_addr25 = data;
XMAC_ADDR26 : xmac_addr26 = data;
XMAC_ADDR27 : xmac_addr27 = data;
XMAC_ADDR28 : xmac_addr28 = data;
XMAC_ADDR29 : xmac_addr29 = data;
XMAC_ADDR30 : xmac_addr30 = data;
XMAC_ADDR31 : xmac_addr31 = data;
XMAC_ADDR32 : xmac_addr32 = data;
XMAC_ADDR33 : xmac_addr33 = data;
XMAC_ADDR34 : xmac_addr34 = data;
XMAC_ADDR35 : xmac_addr35 = data;
XMAC_ADDR36 : xmac_addr36 = data;
XMAC_ADDR37 : xmac_addr37 = data;
XMAC_ADDR38 : xmac_addr38 = data;
XMAC_ADDR39 : xmac_addr39 = data;
XMAC_ADDR40 : xmac_addr40 = data;
XMAC_ADDR41 : xmac_addr41 = data;
XMAC_ADDR42 : xmac_addr42 = data;
XMAC_ADDR43 : xmac_addr43 = data;
XMAC_ADDR44 : xmac_addr44 = data;
XMAC_ADDR45 : xmac_addr45 = data;
XMAC_ADDR46 : xmac_addr46 = data;
XMAC_ADDR47 : xmac_addr47 = data;
XMAC_ADDR48 : xmac_addr48 = data;
XMAC_ADDR49 : xmac_addr49 = data;
XMAC_ADDR50 : xmac_addr50 = data;
XMAC_ADDR51 : xmac_addr51 = data;
XMAC_ADDR52 : xmac_addr52 = data;
XMAC_ADDR53 : xmac_addr53 = data;
XMAC_ADDR54 : xmac_addr54 = data;
XMAC_ADDR55 : xmac_addr55 = data;
XMAC_ADDR56 : xmac_addr56 = data;
XMAC_ADDR57 : xmac_addr57 = data;
XMAC_ADDR58 : xmac_addr58 = data;
XMAC_ADDR59 : xmac_addr59 = data;
XMAC_ADDR60 : xmac_addr60 = data;
XMAC_ADDR61 : xmac_addr61 = data;
XMAC_ADDR62 : xmac_addr62 = data;
XMAC_ADDR63 : xmac_addr63 = data;
XMAC_ADDR64 : xmac_addr64 = data;
XMAC_ADDR65 : xmac_addr65 = data;
XMAC_ADDR66 : xmac_addr66 = data;
XMAC_ADDR67 : xmac_addr67 = data;
XMAC_ADDR68 : xmac_addr68 = data;
XMAC_ADDR69 : xmac_addr69 = data;
XMAC_ADDR70 : xmac_addr70 = data;
XMAC_ADDR71 : xmac_addr71 = data;
XMAC_ADDR72 : xmac_addr72 = data;
XMAC_ADDR73 : xmac_addr73 = data;
XMAC_ADDR74 : xmac_addr74 = data;
XMAC_ADDR75 : xmac_addr75 = data;
XMAC_ADDR76 : xmac_addr76 = data;
XMAC_ADDR77 : xmac_addr77 = data;
XMAC_ADDR78 : xmac_addr78 = data;
XMAC_ADDR79 : xmac_addr79 = data;
XMAC_ADDR80 : xmac_addr80 = data;
XMAC_ADDR81 : xmac_addr81 = data;
XMAC_ADDR82 : xmac_addr82 = data;
XMAC_ADDR83 : xmac_addr83 = data;
XMAC_ADDR84 : xmac_addr84 = data;
XMAC_ADDR85 : xmac_addr85 = data;
XMAC_ADDR86 : xmac_addr86 = data;
XMAC_ADDR87 : xmac_addr87 = data;
XMAC_ADDR88 : xmac_addr88 = data;
XMAC_ADDR89 : xmac_addr89 = data;
XMAC_ADDR90 : xmac_addr90 = data;
XMAC_ADDR91 : xmac_addr91 = data;
XMAC_ADDR92 : xmac_addr92 = data;
XMAC_ADDR93 : xmac_addr93 = data;
XMAC_ADDR94 : xmac_addr94 = data;
XMAC_ADDR95 : xmac_addr95 = data;
XMAC_ADDR96 : xmac_addr96 = data;
XMAC_ADDR97 : xmac_addr97 = data;
XMAC_ADDR98 : xmac_addr98 = data;
XMAC_FC_ADDR0 : xmac_fc_addr0 = data;
XMAC_FC_ADDR1 : xmac_fc_addr1 = data;
XMAC_FC_ADDR2 : xmac_fc_addr2 = data;
XMAC_ADD_FILT0 : xmac_add_filt0 = data;
XMAC_ADD_FILT1 : xmac_add_filt1 = data;
XMAC_ADD_FILT2 : xmac_add_filt2 = data;
XMAC_ADD_FILT12_MASK: xmac_add_filt12_mask = data;
XMAC_ADD_FILT00_MASK: xmac_add_filt00_mask = data;
XMAC_HASH_TBL0 : xmac_hash_tbl0 = data;
XMAC_HASH_TBL1 : xmac_hash_tbl1 = data;
XMAC_HASH_TBL2 : xmac_hash_tbl2 = data;
XMAC_HASH_TBL3 : xmac_hash_tbl3 = data;
XMAC_HASH_TBL4 : xmac_hash_tbl4 = data;
XMAC_HASH_TBL5 : xmac_hash_tbl5 = data;
XMAC_HASH_TBL6 : xmac_hash_tbl6 = data;
XMAC_HASH_TBL7 : xmac_hash_tbl7 = data;
XMAC_HASH_TBL8 : xmac_hash_tbl8 = data;
XMAC_HASH_TBL9 : xmac_hash_tbl9 = data;
XMAC_HASH_TBL10 : xmac_hash_tbl10 = data;
XMAC_HASH_TBL11 : xmac_hash_tbl11 = data;
XMAC_HASH_TBL12 : xmac_hash_tbl12 = data;
XMAC_HASH_TBL13 : xmac_hash_tbl13 = data;
XMAC_HASH_TBL14 : xmac_hash_tbl14 = data;
XMAC_HASH_TBL15 : xmac_hash_tbl15 = data;
XMAC_HOST_INFO0 : xmac_host_info0 = data;
XMAC_HOST_INFO1 : xmac_host_info1 = data;
XMAC_HOST_INFO2 : xmac_host_info2 = data;
XMAC_HOST_INFO3 : xmac_host_info3 = data;
XMAC_HOST_INFO4 : xmac_host_info4 = data;
XMAC_HOST_INFO5 : xmac_host_info5 = data;
XMAC_HOST_INFO6 : xmac_host_info6 = data;
XMAC_HOST_INFO7 : xmac_host_info7 = data;
XMAC_HOST_INFO8 : xmac_host_info8 = data;
XMAC_HOST_INFO9 : xmac_host_info9 = data;
XMAC_HOST_INFO10 : xmac_host_info10 = data;
XMAC_HOST_INFO11 : xmac_host_info11 = data;
XMAC_HOST_INFO12 : xmac_host_info12 = data;
XMAC_HOST_INFO13 : xmac_host_info13 = data;
XMAC_HOST_INFO14 : xmac_host_info14 = data;
XMAC_HOST_INFO15 : xmac_host_info15 = data;
XMAC_HOST_INFO16 : xmac_host_info16 = data;
XMAC_HOST_INFO17 : xmac_host_info17 = data;
XMAC_HOST_INFO18 : xmac_host_info18 = data;
XMAC_HOST_INFO19 : xmac_host_info19 = data;
XMAC_HOST_INFO20 : xmac_host_info20 = data;
XMAC_HOST_INFO21 : xmac_host_info21 = data;
XMAC_HOST_INFO22 : xmac_host_info22 = data;
XMAC_HOST_INFO23 : xmac_host_info23 = data;
XMAC_HOST_INFO24 : xmac_host_info24 = data;
XMAC_HOST_INFO25 : xmac_host_info25 = data;
XMAC_HOST_INFO26 : xmac_host_info26 = data;
XMAC_HOST_INFO27 : xmac_host_info27 = data;
XMAC_HOST_INFO28 : xmac_host_info28 = data;
XMAC_HOST_INFO29 : xmac_host_info29 = data;
XMAC_HOST_INFO30 : xmac_host_info30 = data;
XMAC_HOST_INFO31 : xmac_host_info31 = data;
XMAC_PA_DATA0 : xmac_pa_data0 = data;
XMAC_PA_DATA1 : xmac_pa_data1 = data;
XMAC_DEBUG_SEL : xmac_debug_sel = data;
XMAC_DEBUG_REG : xmac_debug_reg = data;