ba74bbd5aa
Per-vertex GS fog end-to-end (gs_stub emit incl. persp_emit5, gs_prim_list_feeder XYZ2->XYZF2 on PRIM.FGE, gs_make_sh3_scheduler_fixture.py F/FGE packing), new fog TBs, fidelity attribution tooling. Functional baseline before removing the dead bilinear lerp8 clamps (Codex: 161-node comb loop -> -0.042ns setup fail). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4.2 KiB
4.2 KiB
Ch368 Audit Log - Runtime CLUT Adjacent-Frame Motion
Scope
Add the adjacent SH3 capture frame to the established 24-draw runtime-CLUT path, then prove A/B motion with the same native-640x480 persistent-Z, board-versus-simulation, and replay-color gates used by Ch367.
Frame-B Capacity Measurement
- Frame B is the 24-draw shared-texture cluster from capture
20260624224121, emitted aszsrtb24: eight ordered 204-record epochs, one texture fill, seven CRC-verified reuses, and runtime palette staging before every epoch. - At request depth 2048, epoch 3 saturated the request FIFO and dropped 151 fragments. This is a bounded-capacity failure, not a board candidate.
- A complete depth-4096 integration run passed all eight epochs with exact Z and color scoreboards: Z
0/307200, color0/108435, zero drops, and 664,865 accepted fragments. - Per-epoch request-FIFO high water: 1060, 1074, 1431, 2198, 68, 3610, 2993, and 3340. The measured maximum is 3610, leaving 486 entries of headroom at depth 4096.
Production Change
- The DE25 top changes only
u_zc_emitrequest depth from 2048 to 4096. No clock, SDC, or protocol change is involved. The existingzc_g_dropscounter remains the fail-closed board guard. - Focused regressions pass after the source change:
tb_gs_lpddr_zc_emit,tb_clut_stage_cdc, andtb_top_psmct32_runtime_clut. The completezsrtb24depth-4096 integration run is the capacity and exactness proof for this value.
First GUI Fit And Response-Ready Cut
- The first 4096-entry GUI fit failed setup only: WNS
-0.063 ns, TNS-0.126 ns; hold and every other signoff class remained clean. The six failing paths terminated at the EMIF write-response FIFO. - The two launch families were the Z-RMW
breadyand write-arbitergrantcontrols, both feeding the arbiter's livem_breadymux. The arbiter now registers response-ready from the final W handshake, removing that live grant/client-ready cone while retaining the selected transaction through B acceptance. - The response-path regression is clean:
tb_gs_lpddr_wr_arbpasses its priority/transaction checks andtb_gs_lpddr_zc_emitpasses three complete Z/color drains. The fullzsrtb24depth-4096 integration gate also passes after the cut: 664,865 accepted fragments, zero drops, Z0/307200, and color0/108435. - At that point, the pending gate was one full Quartus 26.1 GUI compile; the board remained on the Ch367-proven RBF until STA was clean.
Corrective GUI Fit And Silicon Proof
- Quartus 26.1 STA completed at 15:53 with timing requirements met: setup
+0.076 ns, hold0.000 ns, recovery+1.045 ns, minimum pulse width+0.200 ns, and zero TNS. The fitted request FIFO is a 4096 x 74 dual-clock M20K implementation using 16 M20Ks. Core SHA-256:b146503317ba8268fee06a83b2650cdf57cb79e64da3b6b5aa6a22e9b356cf60. - The RBF was SHA-verified on the DE25 and loaded through
core_loader.sh;fpga0reportedoperating. - Frame B board gate passed all eight 204-record epochs: one texture fill plus seven resident CRC reuses, eight
runtime palette copies, fresh drains, and zero drops. Its board framebuffer is byte-identical to integration
simulation at SHA-256
3191d75983e72a158f91f15cc1f57b6ff7c5e40d5bbb4a49957db06db4e2fded; replay-color is exact at307200/307200pixels.
A/B Motion Closure
- The host ran
A -> B -> A -> Bwith a fresh color/Z preclear, texture fill, runtime palette staging, and eight ordered drains for every frame. All 32 epochs reported zero drops. - The four board boundary dumps alternate exactly: A dumps 0 and 2 hash to
6614d7211b9a668cfeda12e4fa2d6f469d3ee4d3a10bdf56c0119b35f93c7803; B dumps 1 and 3 hash to3191d75983e72a158f91f15cc1f57b6ff7c5e40d5bbb4a49957db06db4e2fded. Each equals its matching integration framebuffer byte-for-byte. - Independent replay-color checks are exact for both alternating frames: A is
307200/307200over 346,425 fragments and B is307200/307200over 664,865 fragments.
Result
Ch368 is closed on silicon: native-640x480 persistent-Z runtime-CLUT motion between two adjacent authentic SH3 captures, with deterministic A/B/A/B board outputs, exact integration framebuffers, and exact replay-color evidence.