Understand perfect pseudo-differential input ADCs
Keywords:pseudo-differential? filter? common mode rejection?
There's another almost identical configuration that can be improved in this way: correlated double sampling, or CDS. The process is exactly the same; take one sample that consists of a signal plus an error, and then take a second sample that contains only the error. In some systems this error might be the input offset or low frequency noise from an analogue front end. Subtracting two successive readings is a common technique for removing DC offset but, as we've deduced and will soon see, it doesn't do a good job of removing higher frequency noise. If the error signal is AC rather than DC, using time alignment filters on the data streams can really help to suppress it.
Let's look at some actual examples. No fancy design tools are needed to use this technique. The PSoC Creator Filter customiser was use to create some initial filters and present the results; a spreadsheet was used to speed up manipulation of the coefficients.
First, a two-channel system. Let's take a 24-tap Blackman filter to start with, with cut-off at 0.125 F_{s} and a passband gain of 2 (because half the energy is going to go into each subfilter C does that make sense?).
Table 1: Coefficient development for two-channel system. |
Stopband attenuation is better than 82 dB down, relative to DC, from Fs/4 upwards. The response, plotted from the coefficients in the first column of table 1, looks like figure 1. If we take every other coefficient (columns 2 or 3 of table 1) and plot the response for the same sample rate, we get figure 2 (the amplitude response is essentially identical for either half, though the phase and delay plots will look different). The response comes back up again because we have effectively halved the sample rate by leaving out alternate coefficients. Apart from the 6 dB gain difference, the left hand halves of figures 1 and 2 are essentially identical.
Figure 1: Response of starting 24-tap filter up to 0.5 F_{sin} . |
Figure 2: Equivalent response of each channel up to 0.5 F_{sin}. |
To get the frequency response of the difference between the two channels, we simply plot the response of the difference between the two subfilter coefficient sets. The alternate zero coefficient values are aligned with the zero sample values (when the ADC is sampling the other channel). Analysing this gives figure 3, which is nothing other than the highpass complement of figure 1. That's precisely what happens when you invert the sign of every other coefficient in a lowpass filter. One last detail C this plot is evaluated at the ADC's sample rate F_{s}, but actually, we are only taking output samples from the filters at F_{s}/2 So the important part of the response is the left-hand side, shown in figure 4. We have achieved a rejection of better than 75 dB for all valid passband frequencies between zero and half the output sample rate.
Figure 3: Response of the difference between channels up to 0.5 F_{sin}. |
Related Articles | Editor's Choice |
Visit Asia Webinars to learn about the latest in technology and get practical design tips.