diff --git a/wally-pipelined/src/privileged/csrs.sv b/wally-pipelined/src/privileged/csrs.sv index e8520320d..b0fa13b8e 100644 --- a/wally-pipelined/src/privileged/csrs.sv +++ b/wally-pipelined/src/privileged/csrs.sv @@ -77,7 +77,7 @@ module csrs #(parameter assign WriteSCOUNTERENM = CSRSWriteM && (CSRAdrM == SCOUNTEREN); // CSRs - flopenl #(`XLEN) STVECreg(clk, reset, WriteSTVECM, CSRWriteValM, `RESET_VECTOR, STVEC_REGW); + flopenl #(`XLEN) STVECreg(clk, reset, WriteSTVECM, CSRWriteValM, zero, STVEC_REGW); flopenr #(`XLEN) SSCRATCHreg(clk, reset, WriteSSCRATCHM, CSRWriteValM, SSCRATCH_REGW); flopenr #(`XLEN) SEPCreg(clk, reset, WriteSEPCM, NextEPCM, SEPC_REGW); flopenl #(`XLEN) SCAUSEreg(clk, reset, WriteSCAUSEM, NextCauseM, zero, SCAUSE_REGW); diff --git a/wally-pipelined/testbench/testbench-busybear.sv b/wally-pipelined/testbench/testbench-busybear.sv index 69c485b08..fa9b64473 100644 --- a/wally-pipelined/testbench/testbench-busybear.sv +++ b/wally-pipelined/testbench/testbench-busybear.sv @@ -247,21 +247,34 @@ module testbench_busybear(); end `define CHECK_CSR(CSR) \ `CHECK_CSR2(CSR, dut.priv.csr) + `define CSRM dut.priv.csr.genblk1.csrm + `define CSRS dut.priv.csr.genblk1.csrs.genblk1 //`CHECK_CSR(FCSR) + `CHECK_CSR2(MCAUSE, `CSRM) `CHECK_CSR(MCOUNTEREN) `CHECK_CSR(MEDELEG) - `CHECK_CSR(MIDELEG) + `CHECK_CSR(MEPC) //`CHECK_CSR(MHARTID) + `CHECK_CSR(MIDELEG) `CHECK_CSR(MIE) - `CHECK_CSR2(MISA, dut.priv.csr.genblk1.csrm) - `CHECK_CSR2(MSCRATCH, dut.priv.csr.genblk1.csrm) - //`CHECK_CSR(MSTATUS) + //`CHECK_CSR(MIP) + `CHECK_CSR2(MISA, `CSRM) + `CHECK_CSR2(MSCRATCH, `CSRM) + `CHECK_CSR(MSTATUS) + `CHECK_CSR2(MTVAL, `CSRM) `CHECK_CSR(MTVEC) - `CHECK_CSR2(SATP, dut.priv.csr.genblk1.csrs.genblk1) + //`CHECK_CSR2(PMPADDR0, `CSRM) + //`CHECK_CSR2(PMPCFG0, `CSRM) + `CHECK_CSR2(SATP, `CSRS) + `CHECK_CSR2(SCAUSE, `CSRS) `CHECK_CSR(SCOUNTEREN) + `CHECK_CSR(SEPC) `CHECK_CSR(SIE) - //`CHECK_CSR(SSTATUS) + `CHECK_CSR2(SSCRATCH, `CSRS) + `CHECK_CSR(SSTATUS) + `CHECK_CSR2(STVAL, `CSRS) + `CHECK_CSR(STVEC) logic speculative; initial begin