FFT IP Core: User Guide

ID 683374
Date 11/06/2017
Document Table of Contents

3.5. FFT IP Core Parameters

Table 8.  Basic Parameters
Parameter Value Description
Transform Length 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, or 65536. Variable streaming also allows 8, 16, 32, 131072, and 262144. The transform length. For variable streaming, this value is the maximum FFT length.
Transform Direction Forward, reverse, bidirectional The transform direction.
I/O Data Flow Streaming
Variable Streaming
Buffered Burst
Burst If you select Variable Streaming and Floating Point, the precision is automatically set to 32, and the reverse I/O order options are Digit Reverse Order.
I/O Order Bit Reverse Order, Digit Reverse Order, Natural Order, N/2 to N/2 The input and output order for data entering and leaving the FFT (variable streaming FFT only). The Digit Reverse Order option replaces the Bit Reverse Order in variable streaming floating point variations.
Data Representation Fixed point or single floating point, or block floating point The internal data representation type (variable streaming FFT only), either fixed point with natural bit-growth or single precision floating point. Floating-point bidirectional IP cores expect input in natural order for forward transforms and digit reverse order for reverse transforms. The output order is digit reverse order for forward transforms and natural order for reverse transforms.
Data Width 8, 10, 12, 14, 16, 18, 20, 24, 28, 32 The data precision. The values 28 and 32 are available for variable streaming only.
Twiddle Width 8, 10, 12, 14, 16, 18, 20, 24, 28, 32 The twiddle precision. The values 28 and 32 are available for variable streaming only. Twiddle factor precision must be less than or equal to data precision.

The FFT IP core's advanced parameters.

Table 9.  Advanced Parameters
Parameter Value Description
FFT Engine Architecture Quad Output, Single Output Choose between one, two, and four quad-output FFT engines working in parallel. Alternatively, if you have selected a single-output FFT engine architecture, you may choose to implement one or two engines in parallel. Multiple parallel engines reduce transform time at the expense of device resources, which allows you to select the desired area and throughput trade-off point.

Not available for variable streaming or streaming FFTs.

Number of Parallel FFT Engines 1, 2, 4
DSP Block Resource Optimization On or Off Turn on for multiplier structure optimizations. These optimizations use different DSP block configurations to pack multiply operations and reduce DSP resource requirements. This optimization may reduce FMAX because of the structure of the specific configurations of the DSP blocks when compared to the basic operation. Specifically, on Stratix V devices, this optimization may also come at the expense of accuracy. You can evaluate it using the MATLAB model provided and bit wise accurate simulation models. If you turn on DSP Block Resource Optimization and your variation has data precision between 18 and 25 bits, inclusive, and twiddle precision less than or equal to 18 bits, the FFT MegaCore function configures the DSP blocks in complex 18 x 25 multiplication mode.
Enable Hard Floating Point Blocks On or off For Arria 10 devices and single-floating-point FFTs only.