We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 11354

6.2 System Generator for DSP - FFT (xlfft) with the option scale_mode = 1/N for FFT of 1/2N for an IFFT, overflow still occurs


General Description: 

Running with scale_mode = 1/2N, I still see overflow in the Simulink simulation. I expected never to see overflow with this scale_mode setting. 

This does not seem to be restricted to any particular FFT size or memory type. 


Simulation mismatches between the HDL model and the Simulink model can occur due to an overflow in the following two cases: 


1. 1/N Scaling selected and Invalidate Transform is checked. 


2. 1/2N Scaling, Invalidate Transform is checked and an IFFT is computed on the most negative value you can specify in the input data format. For example, if the input data type is a Fix_16_15, negative one causes an overflow to occur; however, the core will not detect it. This occurs only when an inverse transform is computed.


For all Spartan-3, Virtex-II and Virtex-II Pro users, the FFTx block provides a more comprehensive, higher performance, and resource efficient solution, and it should be used instead of the FFT block. The only reason to target the FFT block is if you require slice-based multipliers in your design. 


In this scenario, the FFT output is correct except when overflow occurs. Hence, to work around this issue, please check the "Invalidate Transform on overflow" option.

AR# 11354
Date Created 08/29/2007
Last Updated 05/14/2014
Status Archive
Type General Article