194f45bd05c95cb6ae89f93b84d84b3269bdcefb
Codex review containment/observability fixes (no behavior change, no redesign):
- scanout_lb: add !fs_edge_v to the diagnostic predicate so capture
matches the underflow latch's frame-start CLEAR priority exactly
(no capture on an fs_edge cycle the real latch suppresses).
- bridge: expose a destination snap_valid_q as 0x120[0] — set ON the
payload-capture edge, cleared on synced source-valid deassert — so
valid never leads the bundle by a cycle (was the middle sync stage).
- bridge: forced-synchronizer (SYNCHRONIZER_IDENTIFICATION FORCED) +
dont_merge/preserve on the underflow/read-error/valid chains;
preserve on the bundle capture regs (both domains).
- SDC: stage-0 async cuts on the three sync[0] inputs + the 37-bit
stable bundle hold-false-path + 2ns max_skew + 2ns net_delay, with
fail-closed src==37 / dst!=0 count checks (tile_ram_cdc idiom).
- tb_gs_scanout_diag: +fs_edge-suppression monitor (with coverage that
the coincidence is exercised), +valid-ordering monitor, +snapshot
stability after later misses, +production DUT (V_SOURCE_START=32,
stretch, linear) proving cold-start scan_y=32, +cause/phase packing.
32/32 checks pass.
- doc: production cold start is source row 32 (not 0), base+lookahead
may both assert, and one snapshot narrows but does not prove
starvation vs next_fetch CDC-lag.
Sim set all PASS: focused TB, tb_ps2_hps_bridge, scanout_lb
{binomial,hstretch,psm32_256}, complete f52 replay (FB byte-identical
Z 0/307200, COLOR 0/245760). No Quartus, board, push, or scanout
behavior change.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
retroDE_ps2 Planning Docs
This directory is the working design scaffold for the PS2 core.
Purpose:
- define the intended repository shape before RTL lands,
- define subsystem boundaries before implementation choices harden,
- document what each block owns, what crosses the boundary, and how we will validate it.
Recommended reading order:
- repo_layout.md
- phase0_checklist.md
- contracts/README.md
- stub_module_plan.md
- wave2_dma_gif_plan.md
- wave25_memory_backed_dma_plan.md
- wave26_multi_beat_dma_plan.md
Relationship to references/:
references/is the research library.docs/is the project-definition layer.
Rule of thumb:
- If a file explains PS2 hardware as it exists, it belongs under
references/. - If a file explains how
retroDE_ps2intends to model, partition, or validate that hardware, it belongs underdocs/.
Description
Languages
SystemVerilog
75.5%
Verilog
15.4%
Tcl
4.7%
HTML
1.1%
Python
1%
Other
2.3%