Product Information
Description
Fast Fourier Transforms are an efficient class of algorithms for the digital
computation of the N-point Fourier transform (DFT). In general, their input sequence
are assumed to be complex. In many real applications, the data sequences to be processed
are real valued. Even though the data is real, complex-valued DFT algorithm can
still be used. One simple approach creates a complex sequence from the real sequence;
that is, real data for the real components and zeros for the imaginary components,
The complex FFT can then be applied directly.
However, this method is not efficient as it consumes 2N memory locations (Real
& Imaginary) for N point sequence. When input is purely real, their symmetric properties
compute DFT very efficiently. One such optimized real FFT algorithm for 2N-point
real data sequence is packing algorithm. The original 2N-point sequence is packed
as N-point complex sequence and N -point complex FFT is performed on the complex
sequence. Finally the resulting N -point complex output is unpacked into another
N+1 point complex sequence, which corresponds to spectral bin 0 to N of 2N-point
real input sequence. Spectral bin 0 to N is sufficient, as the remaining bins N+1
to 2N-1 are complex conjugates of spectral bins N-1 to 1.
The real FFT requires 2N+2 memory locations to compute the
FFT for 2N-point real valued sequence, which is highly preferable in contrast to
the complex FFT that consumes 4N-locations for 2N-point real valued sequence. Moreover
using this strategy, the complex FFT size can be reduced by half, at the FFT cost
function of O(N) operations to pack the input and unpack the output. Hence, the
real FFT algorithm computes the FFT of a real input sequence almost twice as fast
as the general FFT algorithm.
This FFT library contains generic FFT module (32-bit implementation) for real/complex
FFT.
Note:
- Documentation of FFT Modules is archived in the self-extracting zip file,
and the pdf files can be found in c:\tidcs\c28\dsp_tbox\fft\doc directory.
- Software Test Bench (STB) support library must be downloaded to use the
STB examples.