No. 124 / project of 147 on the ladder

Shadow integer issue slot

introduces — one-entry shadow integer issue slot; queued-instruction class counters; dependency/control/memory block accounting

harden statelast run2026-05-06
signoff
  • DRCNOT RUN
  • LVSNOT RUN
  • antennaNOT RUN

P124 turns P123’s dispatch opportunity window into a one-entry shadow integer issue slot. It decodes the queued fetch instruction, accepts simple integer work, and counts why other queued instructions cannot issue yet. Architectural execution is still unchanged.

checkresult
Verilator buildPASS
BusyBox shell workload reaches P124-FILE-OKPASS
Issue-slot counters emittedPASS
Hardened layoutNOT RUN
issue-slot countervalue
candidates40,458,763
accepted simple integer ops9,802,160
issued/drained ops9,802,160
hold cycles11,295,134
full blocks3,289,938
dependency blocks11,304,142
memory-class blocks6,658,522
control-flow blocks9,327,439
system/fence blocks76,562
FP blocks0
unknown blocks0
metricP123P124
post-load cycles217,921,168218,328,141
shell window cycles64,008,91064,450,052
retired instructions86,078,33486,212,975
CPI2.53172.5324
S_FETCH cycles7,615,3067,623,828
S_MEM cycles27,640,59427,688,623

This is not a speedup claim. The useful result is the classification: roughly 9.80M queued instructions look like simple integer issue-slot work, while the larger blockers are dependency, control-flow, and memory classes.

That points the next rung at source-ready bookkeeping and separate memory/control holding records. A bigger ROB is still the wrong lever while everything shares one issue lane.

shell phases label P124 shell workload cycles 218,328,141 cpi 2.53
  1. kernel banner to /init 116,719,392 53.6%
  2. /init to shell banner 1,055,100 0.5%
  3. shell banner to first command 35,475,530 16.3%
  4. echo command 1,649 0%
  5. uname -a 2,219,212 1%
  6. ls /bin /usr/share 31,947,808 14.7%
  7. cat sample file 3,038,278 1.4%
  8. touch/write/cat/rm /tmp file 10,972,643 5%
  9. 8x ash loop with file I/O 16,269,782 7.5%
  10. final marker 680 0%
state breakdown label P124 shadow issue-slot workload cycles 218,328,141 cpi 2.53
  1. fetch 3.5% 7,623,828
  2. execute 39.5% 86,237,767
  3. mem 12.8% 27,967,435
  4. walker 1.2% 2,682,867
  5. writeback 39.5% 86,212,975
  6. mul/div 3.5% 7,601,553