Forked P126 into P127 and added a shadow scheduler ready-mask model. This records source-use metadata for the integer slot, memory holding record, and control holding record, then samples which held records are source-ready under the P125 architectural busy-bit scoreboard.
Verification:
| check | result |
|---|---|
make check-tools | PASS |
| P127 Verilator build | PASS |
| P127 BusyBox shell profile | PASS |
P127-FILE-OK at cycle | 218,572,930 |
| Astro site build | PASS |
The important numbers:
scheduler samples : 43,660,332
any ready : 37,181,060
none ready : 6,479,272
single ready : 37,181,060
dual ready : 0
triple ready : 0
integer ready : 14,855,374
memory ready : 9,758,720
control ready : 12,566,966
two-issue opportunities : 0
This is the right negative result to record. The model can see ready work, but the held classes still do not coexist. P128 should model queue/lifetime depth before pretending a multi-issue picker has useful choices.