Finally past the CLINT issues.

This commit is contained in:
Ross Thompson 2021-08-06 16:41:34 -05:00
parent 839822d3b1
commit fda9985382

View File

@ -254,6 +254,12 @@ module testbench();
NumCSRM++; NumCSRM++;
end end
end end
// override on special conditions
if (ExpectedMemAdrM == 'h10000005) begin
$display("%t: Overwriting read data from CLINT.", $time);
force dut.hart.ieu.dp.ReadDataM = ExpectedMemReadDataM;
end
end // if (checkInstrM) end // if (checkInstrM)
end end
@ -292,10 +298,9 @@ module testbench();
force dut.hart.ieu.dp.regf.wd3 = ExpectedRegValueM; force dut.hart.ieu.dp.regf.wd3 = ExpectedRegValueM;
end end
else if (ExpectedMemAdrM == 'h10000005) begin if (ExpectedMemAdrM == 'h10000005) begin
$display("%t: Overwriting read data from CLINT.", $time); $display("%t: releasing force of ReadDataM.", $time);
force dut.hart.ieu.dp.ReadDataW = ExpectedMemReadDataW; release dut.hart.ieu.dp.ReadDataM;
force dut.hart.ieu.dp.regf.wd3 = ExpectedRegValueM;
end end
end end
@ -326,11 +331,6 @@ module testbench();
release dut.hart.ieu.dp.regf.wd3; release dut.hart.ieu.dp.regf.wd3;
end end
else if (ExpectedMemAdrW == 'h10000005) begin
$display("%t: releasing force of ReadDataW.", $time);
release dut.hart.ieu.dp.ReadDataW;
release dut.hart.ieu.dp.regf.wd3;
end
if(`DEBUG_TRACE > 1) begin if(`DEBUG_TRACE > 1) begin
$display("Reg Write Address: %02d ? expected value: %02d", dut.hart.ieu.dp.regf.a3, ExpectedRegAdrW); $display("Reg Write Address: %02d ? expected value: %02d", dut.hart.ieu.dp.regf.a3, ExpectedRegAdrW);