How the FFT Creates Frequency Data
The Fourier transform integral converts data from the time domain into the frequency domain. However, this integral assumes the possibility of deriving a mathematical description of the waveform to be transformed—but real-world signals are complex and defy description by a simple equation. The Fast Fourier Transform (FFT) algorithm operates on sampled data, and provides time-to-frequency domain transformations without the need to derive the waveform equation.
The Fast Fourier Transform (FFT) is an implementation of the Discrete Fourier Transform, the math algorithm used for transforming data from the time domain to the frequency domain. Before an analyzer uses the FFT algorithm, it samples the input signal with an analog-to-digital converter (the Nyquist sampling theorem states that if samples are taken twice as fast as the highest frequency component in the signal, the signal can be reconstructed exactly). This transforms the continuous (analog) signal into a discrete (digital) signal.
Because the input signal is sampled, an exact representation of this signal is not available in either the time domain or the frequency domain. However, by spacing the samples closely, the analyzer provides an excellent approximation of the input signal.
Using the FFT in an analyzer
As with the swept-tuned analyzer, the input to the analyzer is a continuous analog voltage. The voltage might come directly from an electronic circuit (for example, a local oscillator) or through a transducer (for example, when measuring vibration). Whatever the source of the input signal, the FFT algorithm requires digital data. Therefore, the analyzer must convert the analog voltage in to a digital representation. So the first steps in building an FFT analyzer are to build a sampler and an analog-to-digital converter (ADC) in order to create the digitized stream of samples that feeds the FFT processor.
The FFT algorithm works on sampled data in a special way. Rather than acting on each data sample as the ADC converts it, the FFT waits until a number of samples (N) have been taken and transforms the complete block of data. The sampled data representing the time-domain waveform is typically called a time record of size-N samples.
But the FFT analyzer cannot compute a valid frequency-domain result until at least one time record is acquired—this is analogous to the initial settling time in a parallel-filter analyzer. After this initial time record is filled, the FFT analyzer is able to determine very rapid changes in the frequency domain. A typical size for N might be 1024 samples in one time record.
During the FFT process, the FFT algorithm transforms the N time domain samples into N/2 equally spaced lines in the frequency domain. Each line contains both amplitude and phase information—
this is why half as many lines are available in the frequency domain (actually, slightly less than half the number of lines are used, because some data is corrupted by anti-aliasing filters).See Also