No. 132 / project of 147 on the ladder

Dispatch payload record

introduces — shadow dispatch payload ownership; payload invariant counters; queue metadata capture

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

P132 gives the dispatch queue module a shadow payload record. On arrival fire, it captures decoded metadata: PC, opcode, rd, rs1, rs2, and source-use bits. Architectural execution is still unchanged.

checkresult
Verilator buildPASS
BusyBox shell workload reaches P132-FILE-OKPASS
Payload counters emittedPASS
Payload invariant errorsPASS
Hardened layoutNOT RUN
payload countervalue
accepts22,654,694
services22,654,627
flush clears66
append without storage0
invariant errors0
module countervalue
samples64,742,043
arrival-fire cycles22,654,694
service-fire cycles22,654,627
backpressure cycles0
dual-ready cycles0
triple-ready cycles0
per-class counterintegermemorycontrol
arrival fires13,100,4413,244,7876,309,466
service fires13,100,4413,244,7206,309,466
max occupancy111
count at end010
metricP131P132
post-load cycles218,215,879218,410,456
shell window cycles64,299,03164,505,052
retired instructions86,172,04186,240,322
CPI2.53232.5326
S_FETCH cycles7,618,0317,622,395
S_MEM cycles27,681,02127,699,391

This is not a speedup rung. The important result is that payload accepts match arrival fires, payload services match service fires, payload flush clears account for the service/accept delta, and invariant errors stay at zero.

The next step is payload-class auditing: compare the module-owned record against the older issue-slot and memory/control holding classifiers before using the payload to drive the backend.

shell phases label P132 shell workload cycles 218,410,456 cpi 2.53
  1. kernel banner to /init 116,719,823 53.6%
  2. /init to shell banner 1,075,884 0.5%
  3. shell banner to first command 35,481,630 16.3%
  4. echo command 1,649 0%
  5. uname -a 1,942,523 0.9%
  6. ls /bin /usr/share 32,889,698 15.1%
  7. cat sample file 3,038,747 1.4%
  8. touch/write/cat/rm /tmp file 10,633,411 4.9%
  9. 8x ash loop with file I/O 15,998,344 7.4%
  10. final marker 680 0%
state breakdown label P132 dispatch payload workload cycles 218,410,456 cpi 2.53
  1. fetch 3.5% 7,622,395
  2. execute 39.5% 86,265,072
  3. mem 12.8% 27,978,399
  4. walker 1.2% 2,692,413
  5. writeback 39.5% 86,240,322
  6. mul/div 3.5% 7,610,139