8d7b6e04a0
Add (* USE_DSP = "no" *) attribute to FIR lowpass adder tree registers (add_l1, add_l2, add_l3, accumulator_reg) to prevent Vivado from inferring DSP48E1 slices for pure addition operations. Each fir_lowpass_parallel_enhanced instance was using 47 DSPs (32 for multiply + 15 for the adder tree). The 15 adder-tree DSPs per instance (30 total for I/Q pair) performed only PCIN+A:B additions with no multiplier usage. On the XC7A50T with only 120 DSP48E1 slices, this caused 100% DSP utilization and forced FFT butterfly complex multipliers to spill into 18-level fabric carry chains (WNS=-1.103ns). Moving these 36-bit additions to fabric CARRY4 chains (~9 CARRY4 per add, ~2ns propagation) is well within the 10ns clock period and frees ~30 DSPs for the FFT engine to use native DSP48E1 multipliers. Regression: 23/23 FPGA tests PASS (attribute is synthesis-only).