# The practicing instrumentation engineer's guide to the DFT - Part 3: Other window types, averaging DFTs & more

-July 10, 2012

Author's note: There are many books and articles on the Fourier Transform and its implementation available. A quick survey of these resources shows that they are not geared to the needs of the "Practicing Instrumentation Engineer" but to the needs of DSP engineers who work in many fields. This article explains some of the math required to get "Calibrated" Fourier Transforms.

[Part 1 of this article looked at understanding DFT and FFT implementations. Part 2 examines spectral leakage and windowing, and discusses how windows actually work.]

Other Window Types
You have probably heard many window names like,

Hamming, Hanning, Blackman-Harris, Gaussian, Kaiser, etc, etc, etc...

These windows are classics and are still in use today for many applications. They are not so useful for Instrumentation Engineers however. This is because they all have scalloping errors greater than 1 dB [9] and as instrumentation engineers we usually want to calibrate our systems to better than 1 dB. The other problem with these windows is that they generally don't have optimal sidelobes for our modern very high dynamic range A/D converters.

Generally as instrumentation engineers we have three types of signals.

1. Pure noise where we are looking at measuring a noise figure or some other spectral density of noise. Note that almost all digitally modulated signals look like band limited noise.
2. Pure Sine wave tones or multiple tones where we are using pure Sine wave inputs to our digitizer and we are looking for magnitude response or distortion products to give us calibration constants or dynamic range tests of our instruments. The signal to noise ratio of these input signals is also assumed to be very large.
3. A combination of both - we might be looking at a noise signal that is contaminated by some spurious signals in the passband. Or we might be measuring linearity of a system and have to use a Sine wave input that is close to the noise level. Lastly we might actually be measuring Signal to Noise level - in which case we have both Signals well out of the noise and noise itself to measure.

The common thread above is - Are we measuring a signal that is relatively large out of the noise or are we measuring noise itself?

If we are measuring a signal and we need the best amplitude accuracy then we almost always have to use a Flattop window to get better than 1 dB accuracy. As discussed we want to use the proper Flattop window that has just enough sidelobe rejection to be below the dynamic range of our input waveform as this will minimize the ENBW.

If we are measuring truly random noise - then we have to ask ourselves - why use any window at all? We remember that using a window always increases the ENBW of our DFT and this will just make the conversion to spectral density more difficult. If you look at a noise signal - every point is random and window or no window you have natural discontinuities if you stack one snapshot of input noise data to another. In fact everything about a noise waveform is that every point to every other is random and discontinuous, a window won't help this.

Sometimes however people do tend to specify the Hanning window as the window to use when measuring noise. You may have to use this or another window just to be compatible with previous measurement history or calibration methods.

However, a Hanning window is useful if you are measuring a noise waveform that has a spurious tone in it as is often the case when clocks or other spurious signals leak into the measurement result. If the spurious signal is 30 dB or more above the noise level, then a window like the Hanning will reduce the discontinuities that a spurious signal will have in the waveform data and the window will help to keep the resulting sidelobes below the noise floor, thus keeping the primary noise measurement accurate. A Hanning window also has a reasonably narrow ENBW of 1.5 bins, which is a good compromise compared to other window types, such as the Flattops which have 4 to 5 or more Bins of ENBW.

In a system that we are calibrating or testing we can also play some tricks. Since we know where the test signals are and where the noise is, we can DFT multiple times with different windows to extract a flat amplitude and noise separately. Many times thus can improve results and can make the raw data easier to understand.