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>
2.5 KiB
2.5 KiB
Ch405 — authentic alpha-fan overlays (pre-fit gate)
Objective
Add the 53 chronological PSMT8 alpha-fan draws at capture indices 196494
through 198058 after the accepted 75-epoch Ch404 opaque composite. These are
large translucent overlays using authentic ZTE=1, GEQUAL, ZMSK=1, and
PSMZ16S: they test the accumulated depth buffer, blend on pass, and must not
modify Z.
RTL change
- Carry architectural
TEST.ZTEandZBUF.ZMSKalongside each perspective fragment throughgs_stubandtop_psmct32_raster_demo_braminto the existing external LPDDR Z/color ROP. - Replace the de25 wrapper's former
ZTE=1/ZMSK=0constants with those sidebands. - Increase the production async request FIFO from 4,096 to 16,384 entries. The alpha writer preserves exact destination order and can be slower than the unthrottled raster producer, so the fixture bounds each epoch to one triangle. Measured worst-triangle occupancy is 12,953 entries, leaving 3,431 entries of observed headroom.
Fixture
zsrt139c3: 212 one-triangle alpha epochs, preserving all 212 triangles expanded from the 53 authentic fan draws.zsrt139c4: Ch403 base + Ch404 detail tail + Ch405 alpha tail, 287 epochs.- Authentic TEST/ZBUF header words are restored in the accepted base fixtures; their geometry, colors, textures, palettes, and record counts are unchanged.
- Host/testbench epoch ceilings rise from 128 to 512.
Pre-fit evidence
- The unbounded three-epoch diagnostic correctly failed closed at epoch 75: 169,213 request drops and FIFO high-water 4,096/4,096. It is retained only as the measurement that justified bounded bursts.
- Worst-tail three-epoch test (empty Z): 43,680 fed/passed, zero drops, high-water 12,953/16,384, exact color and Z, PASS.
- Checkerboard-Z test: 43,680 fed, 21,839 passed, zero drops, high-water 11,389/16,384, exact color, exact unchanged Z at all 307,200 pixels, PASS.
- Full Ch404 baseline replay with authentic headers reached its exact accepted epoch-74 counts (667,279 fed / 351,074 passed) with zero drops before the intentionally unbounded diagnostic alpha epoch.
- Host runner compiles cleanly; generated production assets total about 174 MiB.
Status
Ready for owner Quartus 26.1 GUI compile. Do not deploy the prior
28659ebf... RBF as Ch405; the new RBF must contain the 16K request FIFO and
TEST/ZMSK sidebands. After a timing/resource-clean fit, deploy and run
zsrt139c4, then compare the board framebuffer byte-for-byte with RTL.