Files
NawfalMotii79-PLFM_RADAR/9_Firmware
Jason e1abeecaa9 test(fpga): PR-AD AD.2 — USB driver TB rewrite + cross-comparison parity TB
tb/tb_usb_data_interface.v was on the obsolete pre-PR-G streaming
protocol (1-bit cfar_detection, 4-state FSM) — green CI gave false
confidence because TB and DUT were equally out of date. This rewrite
exercises the new v2 bulk FSM and adds a cross-comparison TB that
asserts byte-for-byte equality between the FT601 and FT2232H drivers
fed identical stimulus.

tb/tb_usb_data_interface.v — full rewrite (~370 LOC):
  - Mirrors tb_usb_protocol_v2.v test groups for the FT601 path
  - BE-aware byte capture using a single capture_idx integer with
    blocking arithmetic + one non-blocking egress_count update
    (four separate non-blocking assigns dropped 3 of 4 lanes — race
    caught during development)
  - 31/0 PASS, egress_count = 56330 bytes (matches FT2232H exactly)

tb/tb_usb_drivers_parity.v — new (~376 LOC):
  - Instantiates both drivers in one TB, fed identical clk/reset/
    streaming inputs, drained concurrently
  - Captures each driver's byte stream into a 65536-byte ring buffer
  - assert_parity task finds first byte mismatch index
  - 3 scenarios: header-only (10 B), status packet (34 B), full
    frame (56330 B)
  - 9/0 PASS — drivers are now byte-equal across all scenarios.
    Any future v2 protocol change on FT2232H must land on FT601 in
    the same PR or this guard fires.

run_regression.sh — adds "USB Drivers Parity (PR-AD AD.2
cross-comparison)" entry in Phase 1 (changed-modules block).

Regression: 44/0/0 (43 baseline + 1 parity test).
2026-05-18 13:28:40 +05:45
..