You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Anchor: φ²+φ⁻²=3 · R5-honest · Defense 2026-06-15 Target submission: TTSKY26c (TTSKY26a deadline 2026-05-11 missed) Scope: 3 changes, one PR, zero floorplan impact, preserves G0–G2 GREEN status.
Change A — Eliminate the last legacy * (R-SI-1 absolute)
File: src/gf16_mul.v:30 Problem: One residual Verilog * operator violates the spirit of R-SI-1 (zero new multipliers, ternary/XOR-popcount only). Fix: Replace with a 16×16 → 4-bit ROM lookup-table (256 entries × 4 bit = 1024 bit ≈ 150 cells on SKY130). Acceptance:
grep -n '\*' src/gf16_mul.v returns zero hits (excluding comments)
Existing tb_gf16_mul.v passes 100/100 vectors against the new LUT
OpenLane2 cell count for the module ≤ pre-change baseline (LUT replaces * cells)
R-SI-1 status flips from "one legacy" → "absolute" in docs/INVARIANTS.md
Change C — Wallace-tree popcount in gf16_dot4.v (+60% f_max)
File: src/gf16_dot4.v Problem: Linear XOR chain has O(N) depth → caps f_max at ~50 MHz. Fix: Replace XOR chain with a Wallace-tree popcount (O(log N) depth). Acceptance:
Combinational depth (Yosys stat -tech sky130) ≤ 0.6× baseline
New file: scripts/eqy_check.sh Problem: Coq proves t27 spec correct; t27c emits Verilog; but src/*.v is hand-written. Today there is no formal proof that the hand-written RTL is equivalent to the t27c output. This is the missing link from "Coq-proven spec" to "silicon". Fix: Wire Yosys EQY (Equivalence checking, open-source) between:
build/t27c/*.v (output of t27c gen-verilog from .t27/.tri specs)
src/*.v (hand-written modules under audit) Acceptance:
scripts/eqy_check.sh exits 0 for gf16_mul, gf16_add, gf16_dot4, trinity_gf16_tile
CI workflow .github/workflows/eqy.yml blocks merge on failure
docs/EQY_CHECK.md documents the t27c version pinned + how to reproduce
Evidence JSON written to evidence/eqy_<sha>.json per run (R5-honest)
P0: CROWN-ASIC architecture upgrade — A+C+N block
Anchor: φ²+φ⁻²=3 · R5-honest · Defense 2026-06-15
Target submission: TTSKY26c (TTSKY26a deadline 2026-05-11 missed)
Scope: 3 changes, one PR, zero floorplan impact, preserves G0–G2 GREEN status.
Change A — Eliminate the last legacy
*(R-SI-1 absolute)File:
src/gf16_mul.v:30Problem: One residual Verilog
*operator violates the spirit of R-SI-1 (zero new multipliers, ternary/XOR-popcount only).Fix: Replace with a 16×16 → 4-bit ROM lookup-table (256 entries × 4 bit = 1024 bit ≈ 150 cells on SKY130).
Acceptance:
grep -n '\*' src/gf16_mul.vreturns zero hits (excluding comments)tb_gf16_mul.vpasses 100/100 vectors against the new LUT*cells)docs/INVARIANTS.mdChange C — Wallace-tree popcount in
gf16_dot4.v(+60% f_max)File:
src/gf16_dot4.vProblem: Linear XOR chain has O(N) depth → caps f_max at ~50 MHz.
Fix: Replace XOR chain with a Wallace-tree popcount (O(log N) depth).
Acceptance:
stat -tech sky130) ≤ 0.6× baselinetb_gf16_dot4.vvectors passChange N — Yosys EQY formal equivalence: t27c-generated RTL ↔ hand-written
src/*.vNew file:
scripts/eqy_check.shProblem: Coq proves t27 spec correct; t27c emits Verilog; but
src/*.vis hand-written. Today there is no formal proof that the hand-written RTL is equivalent to the t27c output. This is the missing link from "Coq-proven spec" to "silicon".Fix: Wire Yosys EQY (Equivalence checking, open-source) between:
build/t27c/*.v(output oft27c gen-verilogfrom.t27/.trispecs)src/*.v(hand-written modules under audit)Acceptance:
scripts/eqy_check.shexits 0 forgf16_mul,gf16_add,gf16_dot4,trinity_gf16_tile.github/workflows/eqy.ymlblocks merge on failuredocs/EQY_CHECK.mddocuments the t27c version pinned + how to reproduceevidence/eqy_<sha>.jsonper run (R5-honest)Why this PR first
cfc234e) DRC/LVS workAcceptance gate for the whole PR
info.yamlunchanged (tiles: 2x2, top_modulett_um_ghtag_trinity_gf16)docs/PR_AC_N_NASA.mdwith 12-probe tableevidence/for each acceptance bulletOut of scope (will be P1 / P2 issues)
φ²+φ⁻²=3 · CROWN-ASIC · TRINITY · R5-HONEST
Parent: #3 (CROWN-ASIC architecture roadmap)