Every latch on two dies兩顆晶粒上的每一個閂鎖

Toolbox study #4 (mechanism M4). Eight shims — the campaigns' largest family, including the two the M2 retirement experiments just proved irreducible — are one phenomenon: a transparent latch racing its own closing edge. Unlike strengths or delays, latches are pure topology: four graph fingerprints, zero physical priors. The scan enumerates 11,379 latch structures, finds the OAM array by accident, and re-discovers the campaign's hand-located sites — validated against ground truth, misses explained.

工具箱研究 #4(機制 M4)。八顆 shim —— 戰役最大宗,包括 M2 試拔實驗剛證明不可約的那兩顆 —— 是同一個現象:透明閂鎖和自己的關門沿賽跑。與強度、延遲不同,閂鎖是純拓撲:四個圖指紋、零物理先驗。掃描列舉出 11,379 個閂鎖結構、順手把 OAM 陣列整批點名,並重新發現戰役手工定位的站點 —— 對 ground truth 驗證,漏抓有解釋。

M4 · transparent latches m4_latch_scan.py 2A03 JSON 2C02 JSON 2026-07-18

The problem問題 Eight shims, one physics八顆 shim,一種物理

A transparent latch follows its input while the enable is high and holds on the closing edge. In zero-delay settling, "the closing edge" and "the data changing" collapse into the same instant — so every race resolves by graph accident instead of physics. The campaigns paid for this eight times: DL (φ2 transparency at $4016/7), DmcLatch (data vs closing clock), Dmc4015Abort, FrameIrq (a settle-internal pulse caught by an RS pair), Dbl2007, OamDmaPpuBus — and, as of this morning's retirement experiments, the transient halves of OpenBus (a DOR precharge pulse escaping through an open pad driver) and OamBlankEdge (a rendering-disable edge writing $FF into OAM cells). The M2 census proved those last two are not arbitration problems: the fights happen while a driver is conducting, at sub-settle granularity. Every arrow points here.

透明閂鎖在致能高時跟隨輸入、在關門沿保持。零延遲收斂裡,「關門沿」和「資料改變」塌縮成同一瞬間 —— 所以每場賽跑都由圖的偶然決定,不由物理決定。戰役為此付了八次學費:DL($4016/7 的 φ2 透明)、DmcLatch(資料 vs 關門時脈)、Dmc4015AbortFrameIrq(settle 內脈衝被 RS 對咬住)、Dbl2007OamDmaPpuBus —— 以及今晨試拔實驗剛定讞的:OpenBus 的瞬態半邊(DOR precharge 脈衝經敞開的 pad 驅動洩出)與 OamBlankEdge(關渲染邊沿把 $FF 寫進 OAM cell)。M2 普查證明了後兩者不是裁決問題:打架發生時有驅動器在導通,粒度在 settle 之內。所有箭頭都指向這裡。

The method方法 Four fingerprints, zero priors四個指紋,零先驗

This is the purest census in the toolbox: no layer weights, no era constants, no calibration — connectivity only.

這是工具箱裡最純的一次普查:沒有層權重、沒有時代常數、沒有校準 —— 只有連接性。

Self-validation is part of the method. The campaigns hand-located these structures the hard way; the scan must re-find them or explain why not. A detector that cannot re-find known mines has no business proposing new ones. 自我驗證是方法的一部分。戰役用最辛苦的方式手工定位過這些結構;掃描必須重新找到它們,或解釋為什麼沒有。連已知的雷都找不回來的偵測器,沒資格提名新的。

Results結果 11,379 latches — and the OAM array, found by accident11,379 個閂鎖 —— 以及被順手點名的 OAM 陣列

2A03 (CPU+APU)2C02 (PPU)
pure pass-fed cells (single / mux)純 pass 饋入 cell(單饋 / 多工)1,247 (557 / 690)1,247 (704 / 543)
gated-drive latches (feed + refresh)帶驅動閂鎖(饋入 + 刷新)2,0036,126
cross-coupled static (SR + pull-up)交叉耦合靜態(SR + 上拉)25209
cross-coupled dynamic (no pull-up)交叉耦合動態(無上拉)02,114
tight closing-edge races (shared support 1–4)緊湊關門賽跑(共享支撐 1–4)654819
pass-feedback loopspass 回授環415268
2A03 latch classes
2A03 latch structures.2A03 閂鎖結構。
2C02 latch classes
2C02: note the 2,114 dynamic pairs — the OAM.2C02:注意那 2,114 對動態 cell —— OAM。
2A03 race fingerprint
2A03 race tightness: 654 cells share 1–4 support nodes between enable and data.2A03 賽跑緊湊度:654 個 cell 的 enable/data 共享 1–4 個支撐節點。
2C02 race fingerprint
2C02: 819 tight races.2C02:819 場緊湊賽跑。
2A03 validation
2A03 validation scoreboard.2A03 驗證計分板。
2C02 validation
2C02 validation scoreboard.2C02 驗證計分板。

So what所以呢 The retirement road now runs through here退役之路現在從這裡走

Update · 2026-07-18後續 · 2026-07-18 Attacking glitch immunity — what mechanized, and the honest wall攻毛刺免疫 —— 什麼機制化了,以及那道誠實的牆

The primitive grew a third verdict, Transparent: while the enable is in its transparent phase the cell tracks the settled data, overwriting a mid-settle capture glitch. That is inertial delay stated in binary — the settled value at the right phase beats the wrong-phase transient — and it is the principled cure for the DL input latch (transparent through φ2, but the netlist captures once and keeps whatever transient resolved that instant). It carries optional behavioral scoping (an address window + a divergence threshold), because the DL race is only the measured $4016/$4017 sites with a ≥2-bit capture signature.

原語長出第三種判決 Transparent:致能在透明相位時,cell 追隨 settled 資料,蓋掉 mid-settle 捕捉的毛刺。這就是二值化的慣性延遲 —— 對相位的 settled 值勝過錯相位的瞬態 —— 也是 DL 輸入閂鎖的原理解(它在 φ2 全程透明,但網表只捕捉一次、把那一刻解出來的瞬態留下)。它可帶行為 scoping(位址窗 + 分歧門檻),因為 DL 賽跑只發生在實測的 $4016/$4017 站點、且要 ≥2 位元的捕捉指紋。

Then the experiments spoke, and the result is a clean map of a boundary — three verdicts, three fates:

然後實驗說話了,結果是一張邊界的清楚地圖 —— 三種判決、三種命運:

ShimshimVerdict判決Experiment實驗Fate命運
OpenBus (err1, last byte)none — not a latch無 —— 不是閂鎖full M4 stack + no OpenBus shim → FAIL(1)M4 全 stack + 拔 OpenBus shim → FAIL(1)hard boundary真邊界
DL (err6, capture glitch)TransparentAC OpenBus and ppu_open_bus both PASS without itAC OpenBus ppu_open_bus 拔掉都 PASS
OamBlankEdgeHold4 arms all PASS, shim never fires in isolation四臂全 PASS、孤立零開火

Honest limits誠實極限 What this scan cannot say這次掃描說不了的事