busybear testbench: check (almost) all the CSRs

This commit is contained in:
Noah Boorstin 2021-02-16 20:03:24 -05:00
parent 006f8c6c71
commit 5835641c6c
2 changed files with 20 additions and 7 deletions
wally-pipelined
src/privileged
testbench

View File

@ -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);

View File

@ -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