mirror of
https://github.com/NawfalMotii79/PLFM_RADAR.git
synced 2026-06-08 14:44:56 +00:00
5f3002a4d1
Hand-merged files modified on both fix/pre-bringup-audit-p0 and feat/fft-2048-upgrade. Wave 1 (commit60e49c7) took 20 files from fft verbatim; this wave resolves the overlap. - run_regression.sh: 3-way merge. Adopts fft's ${RECEIVER_RTL[@]} array refactor and drops the self-blessing golden pair from p0. Skip count bumped to 5. - usb_data_interface.v (FT601/200T): p0 FSM + clock-loss watchdog kept wholesale; widened stream_control 3 -> 6 bits to carry fft's extended mode bits through the CDC sync chain and the 0xFF status word. - mti_canceller.v: fft's BRAM-inferred 512-range-bin implementation as the base, with p0's F-6.3 saturation counter grafted onto the d1 pipeline stage. Overflow detection uses the top-two-bits disagreement on diff_{i,q}_full (DATA_WIDTH+1 signed). - radar_receiver_final.v: fft's 2048-pt / 512-bin structure + p0 diagnostic plumbing (ADC overrange sticky+CDC, DDC diagnostics, tx_frame_start edge detector replacing chirp_counter frame sync, mti_saturation_count, range_decim_watchdog). - radar_system_top.v: clean 3-way merge, orthogonal regions (+38 / -27). - usb_data_interface_ft2232h.v (FT2232H/50T): fft's per-frame bulk BRAM rewrite kept wholesale. Ported two p0 items that are orthogonal to the write FSM: * ft_clk-loss watchdog (heartbeat + 2FF ASYNC_REG sync + 16-bit timeout) ORed into a 2FF sync'd ft_effective_reset_n for the FSM. * rd_cmd_complete flag so RD_DEASSERT can distinguish a legitimate 3-byte completion from an ft_rxf_n abort that also zeros rd_byte_cnt. Deliberately NOT taken from2401f5f: cic_decimator_4x_enhanced.v and ddc_400m.v reset-strategy changes. Those conflict with p0's shipped registered-sync-reset + max_fanout=25 distribution, which is already timing-clean on the production build.