journal 2026-04-29

P11 hardens the TT-wrapped P06 CPU

p11tinytapeoutcpulibrelane

P11 took the P06 FSM CPU wrapper through a standalone harden.

The RTL journal covered the pin-packing decision: UART TX, halted, and the low six bits of R7 fit into uo_out; debug PC and wider internal state do not. This follow-up records the physical result.

Command:

make harden PROJECT=11_tt_cpu

Result: PASS.

checkresult
Run directoryprojects/11_tt_cpu/librelane/runs/RUN_2026-04-29_11-37-33
Final GDSprojects/11_tt_cpu/librelane/runs/RUN_2026-04-29_11-37-33/final/gds/tt_um_librelane_p06_cpu.gds
Metricsprojects/11_tt_cpu/librelane/runs/RUN_2026-04-29_11-37-33/final/metrics.csv
Setup timingPASS, worst setup slack 7.32 ns
Route DRCPASS
Magic DRCPASS
KLayout DRCPASS
LVSPASS on the project page, but local metric field is UNKNOWN
AntennaPASS on the project page, but local metric field is UNKNOWN

The standalone run targets a TT 2x2-ish wrapper shape and confirms the P06 CPU can sit behind the fixed TT user-project pin frame. It still does not replace Tiny Tapeout’s official CI flow.

What remains: a real TT submission would package this wrapper in the TT template and let the shuttle flow harden it against the real mux and slot constraints.