vram/MemArbiter: plumb verbose test flag into test
This commit is contained in:
parent
80391cefee
commit
719339e69f
|
@ -71,6 +71,7 @@ interface TB;
|
||||||
endinterface
|
endinterface
|
||||||
|
|
||||||
module mkArbiterTB(MemArbiter#(n, Addr) dut, Vector#(m, TestCase#(n)) tests, TB ifc);
|
module mkArbiterTB(MemArbiter#(n, Addr) dut, Vector#(m, TestCase#(n)) tests, TB ifc);
|
||||||
|
let testflags <- mkTestFlags();
|
||||||
let cycles <- mkCycleCounter();
|
let cycles <- mkCycleCounter();
|
||||||
|
|
||||||
Reg#(Bit#(TLog#(m))) idx <- mkReg(0);
|
Reg#(Bit#(TLog#(m))) idx <- mkReg(0);
|
||||||
|
@ -113,7 +114,8 @@ module mkArbiterTB(MemArbiter#(n, Addr) dut, Vector#(m, TestCase#(n)) tests, TB
|
||||||
got_grants[i] = dut.ports[i].grant();
|
got_grants[i] = dut.ports[i].grant();
|
||||||
|
|
||||||
$display("RUN %s (%0d)", tests[idx].name, idx);
|
$display("RUN %s (%0d)", tests[idx].name, idx);
|
||||||
if (got_grants != want_grants || got_conflict_out != want_conflict_out) begin
|
let err = (got_grants != want_grants || got_conflict_out != want_conflict_out);
|
||||||
|
if (err || testflags.verbose) begin
|
||||||
$display("input:");
|
$display("input:");
|
||||||
for (Integer i=0; i<valueOf(n); i=i+1)
|
for (Integer i=0; i<valueOf(n); i=i+1)
|
||||||
$display(" ", $format("%0d", i), ": ", req_s(reqs[i]));
|
$display(" ", $format("%0d", i), ": ", req_s(reqs[i]));
|
||||||
|
@ -125,8 +127,8 @@ module mkArbiterTB(MemArbiter#(n, Addr) dut, Vector#(m, TestCase#(n)) tests, TB
|
||||||
|
|
||||||
$display(" want grants: ", fshow(tests[idx].want_grants));
|
$display(" want grants: ", fshow(tests[idx].want_grants));
|
||||||
$display(" want granted: ", fshow(want_conflict_out));
|
$display(" want granted: ", fshow(want_conflict_out));
|
||||||
dynamicAssert(False, "wrong arbiter output");
|
|
||||||
end
|
end
|
||||||
|
dynamicAssert(!err, "wrong arbiter output");
|
||||||
|
|
||||||
dynamicAssert(cycles == 1, "arbiter took more than 0 cycles");
|
dynamicAssert(cycles == 1, "arbiter took more than 0 cycles");
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue