+tree el2_veer_lockstep_wrapper
-module el2_veer_lockstep_wrapper

////////////////////////////////// MAIN CORE //////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

//////////////////////////////// rvrangecheck /////////////////////////////////
// 'start_addr' and 'region' are tied to module parameters
-node el2_veer_lockstep_wrapper.veer*rangecheck.start_addr
-node el2_veer_lockstep_wrapper.veer*rangecheck.region

/////////////////////////////////// el2_veer //////////////////////////////////
-node el2_veer_lockstep_wrapper.veer.trace_rv_i_address_ip[0]
-node el2_veer_lockstep_wrapper.veer.trace_rv_trace_pkt.trace_rv_i_address_ip[0]
-node el2_veer_lockstep_wrapper.veer.*hprot[3:1] // Tied to 3'001

/////////////////////////////////// el2_dbg ///////////////////////////////////
// Tied to '0
-node el2_veer_lockstep_wrapper.veer.dbg.abstractcs_reg[31:13]
-node el2_veer_lockstep_wrapper.veer.dbg.abstractcs_reg[11]
-node el2_veer_lockstep_wrapper.veer.dbg.abstractcs_reg[7:4]
-node el2_veer_lockstep_wrapper.veer.dbg.dmcontrol_reg[29]
-node el2_veer_lockstep_wrapper.veer.dbg.dmcontrol_reg[27:2]
-node el2_veer_lockstep_wrapper.veer.dbg.dmstatus_reg[31:20]
-node el2_veer_lockstep_wrapper.veer.dbg.dmstatus_reg[15:14]
-node el2_veer_lockstep_wrapper.veer.dbg.dmstatus_reg[6:4]
-node el2_veer_lockstep_wrapper.veer.dbg.haltsum0_reg[31:1]
-node el2_veer_lockstep_wrapper.veer.dbg.sbcs_reg[31:30]
-node el2_veer_lockstep_wrapper.veer.dbg.sbcs_reg[28:23]

-node el2_veer_lockstep_wrapper.veer.dbg.dmstatus_reg[7] // Tied to '1
-node el2_veer_lockstep_wrapper.veer.dbg.dmstatus_reg[3:0] // Tied to 4'h2
-node el2_veer_lockstep_wrapper.veer.dbg.abstractcs_reg[3:0] // Tied to 4'h2
-node el2_veer_lockstep_wrapper.veer.dbg.sbcs_reg[29] // Tied to '1
-node el2_veer_lockstep_wrapper.veer.dbg.sbcs_reg[11:5] // Tied to 7'h20
-node el2_veer_lockstep_wrapper.veer.dbg.sbcs_reg[4:0] // Tied to 5'b01111

/////////////////////////////////// el2_exu ///////////////////////////////////
-node el2_veer_lockstep_wrapper.veer.exu.i_mul.crc32_poly_rev // Tied to 32'hEDB88320
-node el2_veer_lockstep_wrapper.veer.exu.i_mul.crc32c_poly_rev // Tied to 32'h82F63B78

///////////////////////////////// dec_tlu_ctl /////////////////////////////////
// Tied to '0
-node el2_veer_lockstep_wrapper.veer.dec.tlu.dcsr[14]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.dcsr[9]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.dcsr[5:4]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.dcsr_ns[14]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.dcsr_ns[9]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.dcsr_ns[5:4]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.ifu_mscause[2]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mcgc[6]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mcgc_int[6]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mcgc_ns[6]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mcountinhibit[1]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mepc_rf[0]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mie_rf[31]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mie_rf[27:12]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mie_rf[10:8]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mie_rf[6:4]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mie_rf[2:0]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mip_rf[27:12]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mip_rf[10:8]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mip_rf[6:4]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mip_rf[2:0]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mstatus_rf[31:17]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mstatus_rf[15:12]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mstatus_rf[10:8]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mstatus_rf[6:4]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mstatus_rf[2:0]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mtdata1_tsel_out[26]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mtdata1_tsel_out[18:13]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mtdata1_tsel_out[10:8]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mtdata1_tsel_out[5:3]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.mtvec_rf[1]

/////////////////////////////// el2_dec_pmp_ctl ///////////////////////////////
// Tied to '0
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.*pmpcfg_ff.din[6:5]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.*pmpcfg_ff.dout[6:5]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.*csr_wdata[6:5]

// Aggregation of four 'el2_pmp_cfg_pkt_t' entries
// Each 'pmpcfg' entry has 'pmpcfg[6:5]' tied to '0
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.pmp_pmpcfg_rddata[30:29]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.pmp_pmpcfg_rddata[22:21]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.pmp_pmpcfg_rddata[14:13]
-node el2_veer_lockstep_wrapper.veer.dec.tlu.pmp.pmp_pmpcfg_rddata[6:5]

////////////////////////////////// LOCKSTEP ///////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

//////////////////////////////// rvrangecheck /////////////////////////////////
// 'start_addr' and 'region' are tied to module parameters
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core*rangecheck.start_addr
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core*rangecheck.region

////////////////////////////// el2_veer_lockstep //////////////////////////////
-node el2_veer_lockstep_wrapper.lockstep.trace_rv_i_address_ip[0]
-node el2_veer_lockstep_wrapper.lockstep.*trace_rv_i_address_ip[0]

/////////////////////////////////// el2_veer //////////////////////////////////
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.trace_rv_i_address_ip[0]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.trace_rv_trace_pkt.trace_rv_i_address_ip[0]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.*hprot[3:1] // Tied to 3'001

/////////////////////////////////// el2_dbg ///////////////////////////////////
// Tied to '0
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.abstractcs_reg[31:13]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.abstractcs_reg[11]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.abstractcs_reg[7:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmcontrol_reg[29]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmcontrol_reg[27:2]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmstatus_reg[31:20]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmstatus_reg[15:14]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmstatus_reg[6:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.haltsum0_reg[31:1]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.sbcs_reg[31:30]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.sbcs_reg[28:23]

-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmstatus_reg[7] // Tied to '1
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.dmstatus_reg[3:0] // Tied to 4'h2
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.abstractcs_reg[3:0] // Tied to 4'h2
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.sbcs_reg[29] // Tied to '1
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.sbcs_reg[11:5] // Tied to 7'h20
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dbg.sbcs_reg[4:0] // Tied to 5'b01111

/////////////////////////////////// el2_exu ///////////////////////////////////
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.exu.i_mul.crc32_poly_rev // Tied to 32'hEDB88320
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.exu.i_mul.crc32c_poly_rev // Tied to 32'h82F63B78

///////////////////////////////// dec_tlu_ctl /////////////////////////////////
// Tied to '0
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.dcsr[14]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.dcsr[9]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.dcsr[5:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.dcsr_ns[14]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.dcsr_ns[9]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.dcsr_ns[5:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.ifu_mscause[2]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mcgc[6]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mcgc_int[6]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mcgc_ns[6]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mcountinhibit[1]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mepc_rf[0]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mie_rf[31]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mie_rf[27:12]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mie_rf[10:8]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mie_rf[6:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mie_rf[2:0]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mip_rf[27:12]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mip_rf[10:8]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mip_rf[6:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mip_rf[2:0]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mstatus_rf[31:17]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mstatus_rf[15:12]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mstatus_rf[10:8]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mstatus_rf[6:4]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mstatus_rf[2:0]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mtdata1_tsel_out[26]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mtdata1_tsel_out[18:13]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mtdata1_tsel_out[10:8]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mtdata1_tsel_out[5:3]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.mtvec_rf[1]

/////////////////////////////// el2_dec_pmp_ctl ///////////////////////////////
// Tied to '0
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.*pmpcfg_ff.din[6:5]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.*pmpcfg_ff.dout[6:5]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.*csr_wdata[6:5]

// Aggregation of four 'el2_pmp_cfg_pkt_t' entries
// Each 'pmpcfg' entry has 'pmpcfg[6:5]' tied to '0
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.pmp_pmpcfg_rddata[30:29]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.pmp_pmpcfg_rddata[22:21]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.pmp_pmpcfg_rddata[14:13]
-node el2_veer_lockstep_wrapper.lockstep.xshadow_core.dec.tlu.pmp.pmp_pmpcfg_rddata[6:5]
