Fix all 10 CDC bugs from report_cdc audit, add overflow guard in range_bin_decimator
CDC fixes across 6 RTL files based on post-implementation report_cdc analysis:
- P0: sync stm32_mixers_enable and new_chirp_pulse to clk_120m via toggle CDC
in radar_transmitter, add ft601 reset synchronizer and USB holding
registers with proper edge detection in usb_data_interface
- P1: add ASYNC_REG to edge_detector, convert new_chirp_frame to toggle CDC,
fix USB valid edge detect to use fully-synced signal
- P2: register Gray encoding in cdc_adc_to_processing source domain, sync
ft601_txe and stm32_mixers_enable for status_reg in radar_system_top
- Safety: add in_bin_count overflow guard in range_bin_decimator to prevent
downstream BRAM corruption
All 13 regression test suites pass (159 individual tests).
This commit is contained in:
@@ -5,8 +5,8 @@ module edge_detector_enhanced (
|
||||
output wire rising_falling_edge
|
||||
);
|
||||
|
||||
reg signal_in_prev;
|
||||
reg signal_in_prev2;
|
||||
(* ASYNC_REG = "TRUE" *) reg signal_in_prev;
|
||||
(* ASYNC_REG = "TRUE" *) reg signal_in_prev2;
|
||||
|
||||
always @(posedge clk or negedge reset_n) begin
|
||||
if (!reset_n) begin
|
||||
|
||||
Reference in New Issue
Block a user