Three testbenches pass under Questa but fail under Verilator, and are quarantined in jobs/jobs.json under _verify.tops_untested:
| top |
verilator symptom |
tb_idma_transpose_nd |
the ND response never fires once the first case drains |
tb_idma_transpose_b2b |
the first geometry never completes, watchdog trip |
tb_idma_mxrand |
transfer 1 never completes, even at NumXfers=1 and low StallPct |
All three pass under Questa on current devel, at every data width. They were re-measured while landing #204: the failures are Verilator-specific, not defects in the design under test, and the quarantine reasons in jobs.json were rewritten to say so rather than blaming causes that had been disproved.
That leaves real coverage switched off in the public flow. tb_idma_mxrand in particular is the only randomised compute testbench with stall injection, and it was the test that found #190, so having it absent from the Verilator suite is the more costly of the three.
Worth determining whether the cause is shared. "Never completes" in all three suggests one Verilator-specific scheduling or timing difference rather than three unrelated bugs; a single fix may un-quarantine all of them.
Starting points:
- all three drive the compute path, which the passing Verilator legs do not exercise in the same way
- the time base was recently aligned across flows, so a residual timescale or
--timing difference is worth ruling out first
- comparing a Questa and a Verilator waveform of the first stalled transfer should localise it quickly
Not a release blocker; #204 and #203 both landed with Questa coverage of these tops.
Three testbenches pass under Questa but fail under Verilator, and are quarantined in
jobs/jobs.jsonunder_verify.tops_untested:tb_idma_transpose_ndtb_idma_transpose_b2btb_idma_mxrandNumXfers=1and lowStallPctAll three pass under Questa on current devel, at every data width. They were re-measured while landing #204: the failures are Verilator-specific, not defects in the design under test, and the quarantine reasons in
jobs.jsonwere rewritten to say so rather than blaming causes that had been disproved.That leaves real coverage switched off in the public flow.
tb_idma_mxrandin particular is the only randomised compute testbench with stall injection, and it was the test that found #190, so having it absent from the Verilator suite is the more costly of the three.Worth determining whether the cause is shared. "Never completes" in all three suggests one Verilator-specific scheduling or timing difference rather than three unrelated bugs; a single fix may un-quarantine all of them.
Starting points:
--timingdifference is worth ruling out firstNot a release blocker;
#204and#203both landed with Questa coverage of these tops.