P100 turns the Harvard map into measured RTL signals. The core still has one lower shared memory service, but the harness now sees instruction and data demand separately.
Functional result: PASS. The BusyBox shell workload reached
P100-FILE-OK.
| metric | P99 | P100 |
|---|---|---|
| shell window cycles | 66,998,698 | 66,518,626 |
| post-load cycles | 222,509,604 | 221,990,140 |
| memory stall cycles | 59,928,278 | 59,819,129 |
| fetch stall cycles | 27,399,253 | 27,346,150 |
| load stall cycles | 10,718,661 | 10,729,427 |
| retired instructions | 86,648,693 | 86,512,027 |
| CPI | 2.5680 | 2.5660 |
The important new counters:
| side | want cycles | grant cycles | not granted by lower policy |
|---|---|---|---|
| instruction | 99,366,119 | 99,366,119 | 0 |
| data | 59,349,365 | 26,952,797 | 32,396,568 |
Both sides wanted lower service for 28,051,030 cycles. The lower shared service completed 66,499,787 handshakes and spent 59,819,129 cycles stalled.
That says the current policy strongly favors instruction-side progress: good for keeping Linux alive, but it leaves data-side work queued behind the same shared lower service. P101 should keep these counters and split translation next, so we can separate memory data movement from page-walk/refill interference.