Forked P127 into P128 and added a shadow per-class scheduler queue
model. Integer, memory, and control work each get a capacity-4 queue.
The model drains at most one class per S_WB cycle with fixed priority.
It does not change architectural execution.
Verification:
| check | result |
|---|---|
make check-tools | PASS |
| P128 Verilator build | PASS |
| P128 BusyBox shell profile | PASS |
P128-FILE-OK at cycle | 218,746,544 |
| Chart generation | PASS |
The important numbers:
queue samples : 43,664,857
single ready : 43,664,857
dual ready : 0
triple ready : 0
integer enqueues : 9,815,302
memory enqueues : 3,250,159
control enqueues : 6,287,452
max occupancy I/M/C : 1 / 1 / 1
full drops I/M/C : 0 / 0 / 0
This keeps the backend story honest. The queue depth exists, but the modeled lifetime still never produces same-cycle multi-class readiness. P129 should split scheduler arrival from backend service more explicitly instead of adding a two-issue picker to a model with no choices.