1. Fourier Transform

Introduction

One of the methods for characterizing A/D and D/A converters is dynamic testing. An signal (mostly a sinewave) is applied to the DUT and the captured results are analyzed with a Fourier Transform algorithm. This chapter will give some background information about the Fourier Transform algorithm.

Experiment

In real-life every signal is a sum of sinewaves. The plot below will make this more clear. E.g. select the sawtooth signal and press the button "Add sine". The more sinewaves are added, the more the signal resembles a sawtooth signal. The mathematical equation is displayed in the upper right corner of the graph. To show the spectrum of the signal, please press the "Show spectrum" button. This experiment can be repeated for a square and triangle wave.

Loading...(javascript must be enabled)


spectrum display:

Click on a point

Principle

Basically the fourier transform compares the signal (to analyse) with sines and cosines of different frequencies. A mathematical compare consist of the summation of products (e.g result = signal*sin(x) + signal*sin(2x) + ... etc.). A (discrete) fourier transform (or DFT) on sampled data (N samples) will need N * N operations. However there is a faster way to transform a signal to a spectrum. If the number of samples is a power of 2, a (radix 2) Fast Fourier Transform (FFT) can be performed. The number of operations is reduced to N * log(N). A radix 4 FFT algorithm will even be (a bit) faster, but a power of 4 samples is required.

The results of a FFT or DFT consists of imaginary and real parts. The imaginary parts are the results of the sine compare, the real parts the compare with the cosines. A compare with only sines is also known as a Discrete Sine Transform (DST). A compare with only cosines is also known as a Discrete Cosine Transform (DCT). In the plot above the imaginary and real parts can be shown. These data elements are normalized, meaning divided by N (no. of samples). The Phase is the angle between the imaginary and real parts = arctan(imaginary/real).

Aliasing and mirror frequencies

The samplefrequency must be at least 2 * signalfrequency to detect the real frequency of a signal. So the fourier transform cannot detect the real frequency of a signal if the number of samples per sine is equal or less than 2. A frequency higher than halve the samplefrequency (or less than 2 samples/sine) will be show up as mirrored signal in the spectrum. This can be shown in the plot above: Press the "Show spectrum" button and add sines. The sixth sine for the sawtooth (or the third for the square wave) will show up as mirrored frequency.

Sampled signal aliasing

Spectrum output

The results of the fourier transform will be transformed to readable data. The plot above can display the results of the fourier transform in different ways:

Vpeak
The peak voltage (or codes) is calculated by:

FFT spectrum peak

Vrms
The rms voltage (or codes) is calculated by:

FFT spectrum rms

dBc
The dBc stands for dB relative to the carrier. So the carrier is always at 0 dB. The dBc values of each spectrum bin is calculated by:

FFT spectrum dbc

Phase
The Phase of each spectrum bin is calculated by:

FFT spectrum phase

Frequency resolution
The frequency resolution or the step of the x-axis is determined by the samplefrequency and the number of samples:

FFT spectrum frequency resolution


<< Previous (Contents)  Next >> (2. Dynamic parameter calculations)