Bad Fast Fourier Transfer (FFT) data captures can cause you to misunderstand the true performance of your analog-to-digital converter (ADC). Some engineers like to coherently sample and capture data (which means to have the analog input frequency and clock frequency locked in phase with a reference frequency), while others don’t necessarily need to. However, in either setup, you may need to refresh some details in order to present good data in a design review.
Although there seems to be a lot of material about coherent and noncoherent sampling methods online, there’s little guidance as to why you might use one sampling method versus the other. Most of the information that is available doesn’t include the steps necessary in order to accurately take a measurement. There are details to keep in mind.
In this article, we will discuss the differences between coherent and noncoherent sampling in terms of an ADC test setup.
Coherent sampling typically means you can take the 10-MHz reference output used for the sample clock on one signal generator and connect it to the 10-MHz reference used for the analog input signal on the other signal generator. Simply connecting the two signal generators together doesn’t mean that they are phase-locked automatically, so for the reference lock to actually lock, you will also need to select, enable, or initiate the signal generator with the 10-MHz reference input in the signal generator’s menu selection. The signal generator will typically display a message such as EXTREF, indicating that the two signal generators are reference-locked together (Figure 1).
Figure 1 This is a typical test measurement setup for FFT data capture.
Next, select No Windowing or Rectangular Windowing in the FFT capture, enter the ADC sampling rate, and set the number of FFT points in the data-capture program or graphical user interface (GUI). Make sure that the data-capture board hardware can handle the number of FFT points, then determine and calculate the exact analog input frequency and enter that frequency in the signal generator; you may also have to enter the frequency in the data-capture software. Figure 2 shows an example of a valid coherent-sampled FFT data capture using the Texas Instruments (TI) ADC12DJ5200RF.
Figure 2 Here’s an example FFT plot of the ADC12DJ5200RF using coherent sampling.
Coherent sampling ensures that all of the FFT points are “bin centered” – in other words, that the fundamental and harmonic energy only reside in one bin or point in the FFT and will be placed at that exact location for measurement calculations such as the signal-to-noise ratio (SNR) and spurious-free dynamic range (SFDR). Figure 3 is a zoomed-in plot of the FFT around the fundamental bin. Note that the fundamental level, -1 dBFS, is the same as what is represented in the FFT plot.
Figure 3 The fundamental level is the same as what is represented in the FFT plot, as you can see in this closeup.
Now it’s time to do a bit of math. The ADC12DJ5200RF, which we used in the example FFT plots above, has an ADC sampling frequency (Fs) of 5,200 MSPS, 65,536 FFT points, and an analog input frequency of 1,011 MHz. Going through the calculations, this equals an analog input of 1011.102295 MHz. Enter this frequency into the signal generator and data-capture software.
One way to perform these calculations would be to download TI’s high-speed data converter pro software, which is a GUI for evaluating TI high-speed data converter and analog front-end platforms. This software will automatically calculate the exact coherent frequency when you select Auto Calculation of Coherent Frequencies under Test Parameters in the bottom-left corner.
Here is the math for calculating the coherent input frequency. You will need to know three main parameters:
- Fs – the sampling frequency of the ADC
- N – the number of points in the FFT. N must be a number that can be represented with a power of 2, such as 1,024, 2,048 or 4,096.
- Fin – the analog input frequency
Plugging in the values for the ADC12DJ5200RF into these parameters, you will have:
- Fs = 5,200 MHz
- N = 65,536
- Fin = 1,011 MHz
The first thing you’ll need to calculate is the FFT bin size or frequency resolution, commonly known as the resolution bandwidth (RBW). RBW is the smallest difference between two frequency bins displayed on an FFT plot, expressed as Equation 1:
Next, calculate the FFT bin number corresponding to a Fin of 1,011 MHz (Equation 2):
As you can see, the bin number is not an integer value, which means that the energy of the 1,011-MHz signal is not contained in a single FFT bin; it is also leaking into adjacent bins. In order to get coherent sampling, you will need to bin-center the input signal – in other words, contain all energy to a single bin. To obtain a bin-centered (coherent) signal, you must round the bin number to an integer number. In our example, rounding the bin number will give you a value of 12,742.
Next, recalculate the Fin based on the rounded bin number to obtain the coherent input frequency (Equation 3):
The Fin value calculated in Equation 3 will be coherent, but you can further improve the FFT performance measurement by choosing a bin number that is a prime number. Doing so can eliminate signal-quantization periodicity; in other words, you can prevent the ADC from hitting the same codes along the input signal over and over in a periodical manner. Choosing a prime number as a bin number also prevents the harmonics from landing on top of each other, an effect shown in Figure 4.
Figure 4 This plot shows coherent sampling without using a prime bin number.
Next, you will need to modify Equation 3 and round the bin number integer value to the nearest prime number. Now, you can redo the calculation to find Fin (Equation 4):
Again using the example, the nearest prime bin number obtained earlier, 12,742, would become 12,743. Plugging in the example values into Equation 4, the recalculated Fin using the nearest prime bin number becomes:
Figure 5 shows an improved FFT measurement by choosing a prime bin number. Notice that none of the higher-order harmonics fold on top of each other as they did in Figure 4, thus enabling a more accurate evaluation of the ADC.
Figure 5 These are the coherent sampling results when using a prime bin number.
Noncoherent sampling is when your analog input frequency and clock frequency are not reference-locked together. If you are using a setup similar to that shown in Figure 1, there is no need to use the 10-MHz reference connection to lock the two signal generators together. Instead, you should “smear” the analog input frequency. For example, if you want to sample a 100-MHz analog input signal, smearing means that you would instead use something close to 100 MHz that is a prime number: 99.1235 MHz or 101.1235 MHz. Smearing ensures that the ADC doesn’t sample on the exact sample point along the sine-wave input signal each time, but instead “walks” along the signal and samples many points.
In your FFT data-capture program, using a windowing option like Blackman-Harris will ensure that the FFT capture spreads out the samples appropriately on the edges and prevents discontinuity between FFT captures. See the “Why we window” section later in this article for more information. Figure 6 illustrates a valid noncoherent-sampled FFT data capture.
Figure 6 This is an FFT plot of the ADC12DJ5200RF using noncoherent sampling.
Noncoherent sampling ensures that all FFT points are smeared appropriately. The fundamental and harmonic energy reside in more than one bin or point in the FFT capture and are available for measurement calculations such as SNR and SFDR.
Figure 7 is a zoomed-in plot of the FFT around the fundamental bin. The fundamental level is different – roughly -3.5 dBFS – versus the value listed in the parametric table to the left, roughly -1 dBFS. The harmonic levels would appear differently as well. Again, this is because the FFT capture includes data from multiple bins.
Figure 7 This is a closeup of the fundamental bin of the FFT plot of the ADC12DJ5200RF using noncoherent sampling.
Why we window
When computing an FFT, you should assume that an integer number of cycles of the signal should fit in the number of samples analyzed in the FFT. In other words, if you were to take the sampled waveform and put the sampled waveform end to end, you would create a continuous sampled signal. Figure 8 shows a coherent signal example that completes five cycles in a 1,024-sample data set. Notice how the sine wave’s start and end points blend into each other seamlessly, creating a continuous signal without any interruptions, jumps, or discontinuities.
Figure 8 This coherent signal completes five cycles in a 1,024-sample data set.
Figure 9 shows a noncoherent sine-wave signal. You can see that the start and end points of the sine wave do not coincide with each other, and if placed end to end will cause huge discontinuity. The resulting signal will end up being noncoherent, and you will see the signal power smeared across bins in the FFT measurement.
Figure 9 The start and end points of the noncoherent sine-wave signal do not coincide with each other.
As you can see, this is where applying a window function can make the difference between a coherent and noncoherent signal. Window functions have specific shapes associated with them; however, there are several different functions from which to choose. By default, TI’s high-speed data converter pro software uses the Blackman-Harris window function. Multiplying the window function with the noncoherent signal and zeros at both ends, removes any discontinuity and creates a more accurate FFT plot. Figure 10 shows an outline of the Blackman-Harris window function.
Figure 10 This graph shows an outline of the Blackman-Harris window function.
When multiplying a noncoherent signal like that shown in Figure 9 with the window function shown in Figure 10, the output signal will be the windowed version of the noncoherent signal (Figure 11). You can see that both ends are zeroed out and that there is no discontinuity between end points.
Figure 11 This is the output signal of the noncoherent signal multiplied with the window function.
Common FFT follies
Figures 12, 13 and 14 emphasize some invalid FFT data captures that could lead to an inaccurate understanding of ADC performance. Our aim is to aid those designers new to ADC testing from an evaluation module or a system-level design standpoint who use FFT data captures to determine the overall performance of a signal-chain design.
The first FFT signature type is known as an “FFT burp,” illustrated in Figure 12. This FFT signature shows a wide skirt around the fundamental frequency and occurs when the designer intends to coherently sample but does not have the correct analog input frequency, or uses incorrect calculations. Notice that the SNR/SFDR performance is far from the ADC’s data-sheet performance specification.
Figure 12 The FFT burp shows a wide skirt around the fundamental frequency.
Figure 13 shows another FFT signature type called the “FFT picket-fence” effect, which occurs when the user is almost accurate noncoherently sampling at the exact same place along the analog input signal. The issue here is that the analog input frequency is not a prime number, and therefore is not smeared enough in frequency to walk along the input signal at various points. In this case, the Fs = 5,200 MSPS and the analog frequency is exactly 1000.0000 MHz, which is not prime. Using a prime number like 1011.1235 MHz, for example, will ensure enough smearing to accurately sample the analog input signal.
Figure 13 The FFT picket-fence effect occurs when the user is almost accurate noncoherently sampling at the exact same place along the analog input signal.
The third signature type is called “FFT binning.” FFT binning is similar to an FFT picket fence, but is a direct multiple of the sampling rate. For example, Fs = 5,200 MSPS and the analog input frequency is exactly one-fifth the sample frequency, or 1040.0000 MHz (Figure 14).
What happens here is that, again, the same points along the analog input signal are sampled, but at such a rate that all of the harmonics fold on top each other – HD2 and HD3 in Figure 14, as well as the fundamental and HD4. You can easily fix the FFT binning effect by using a random prime number such as 1041.1359 MHz.
Figure 14 FFT binning is similar to an FFT picket fence, but is a direct multiple of the sampling rate.
We hope that this article has helped dispel any confusion on coherent sampling versus noncoherent sampling test methods and proper FFT data capture. The next time you are in the lab collecting data on your signal-chain ADC design, you can have confidence in presenting accurate measurements and rectify any FFT burping, picket fence, and binning follies.
- Coherent Sampling Calculator Online Calculation Tool, IKCEST Disaster Risk Reduction Knowledge Service.
- Ramirez, Robert W., 1985, The FFT, Fundamentals and Concepts, Prentice-Hall, ISBN: 0133143864, 9780133143867
- Signal Chain Basics #60: Tracking down spurious signals in high-speed ADCs
- Survival guide to high-speed A/D converter digital outputs
- RAQ #137: An ADC with bizarre FFT results