P123 keeps the P122 shadow ROB and adds a dispatch/issue opportunity model next to it. Architectural state is still unchanged; this is a counter rung for deciding whether there is enough backend slack to make a real issue slot worth building.
The BusyBox shell workload passed:
P123-FILE-OK @ cycle 217,921,311
post-load cycles : 217,921,168
shell window : 64,008,910
instr retired : 86,078,334
CPI : 2.5317
The new measurement is the frontend-ready/backend-busy window:
dispatch opportunities : 40,404,653
modeled dispatch allocs : 40,404,653
modeled issue drains : 40,404,652
modeled full blocks : 0
modeled max occupancy : 1
modeled occupancy 0 cycles : 67,914,985
modeled occupancy 1 cycles : 150,006,182
modeled occupancy 2+ cycles : 0
This confirms the P122 conclusion from a different angle. A larger ROB container is not enough; the core needs a dispatch/issue boundary before backend records can build useful depth. The next experiment should be a shadow issue slot that classifies why a queued operation can or cannot issue while older work is still on the serialized architectural path.