The FFT core provides four architecture options to offer a trade-off between core size and transform time.
- Pipelined Streaming I/O
- Allows continuous data processing.
- Radix-4 Burst I/O
- Loads and processes data separately, using an iterative approach. It is smaller in size than the pipelined solution, but has a longer transform time.
- Radix-2 Burst I/O
- Uses the same iterative approach as Radix-4, but the butterfly is smaller. This means it is smaller in size than the Radix-4 solution, but the transform time is longer.
- Radix-2 Lite Burst I/O
- Based on the Radix-2 architecture, this variant uses a time-multiplexed approach to the butterfly for an even smaller core, at the cost of longer transform time.
The following figure illustrates the trade-off of throughput versus resource use for the four architectures. As a rule of thumb, each architecture offers a factor of 2 difference in resource from the next architecture. The example is for an even power of 2 point size. This does not require the Radix-4 architecture to have an additional Radix-2 stage.
All four architectures can be configured to use a fixed-point interface with one of three fixed-point arithmetic methods (unscaled, scaled, or block floating-point) or might instead use a floating-point interface.
Figure 1. Resource versus Throughput for Architecture Options