This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Samuel,
First, I'll post your question transcribed from your doc:
Dear sir,
When using the ADS1248IPWR in our application, we can not get the reasonable explication about the aliasing. Our external analog filter and circuits are show as below.
Fig 1. External analog filter and circuits
And
But when we add the noise signal by signal generator from 32K, 64K, 96K, 128K…800K(400mvpp). we got the temperature fluctuation as flow.(PS: ADS1248 work @20 sps,16 gain, and S type TC @800℃)
Fig 2. temperature fluctuation
According to the signal attenuation, the noise @64KHz and 128KHz has much smaller amplitude than @32KHz, but they have greater temperature fluctuation. @64K, it similar has 0.33mV voltage change.
My question are:
Is there any character inside ADS1248 cause the issue? Is there any reasonable explication for the issue?
Samuel,
The extra noise certainly comes from the AC noise that you're injecting into the input. However, along with some modest anti-aliasing filtering the digital filter will not help filter out at the frequencies you're using. Like all delta sigma ADCs the device samples the input at a much higher frequency to get a lower data rate. The ADC sampling frequency is at the modulator rate.
In the ADS1248, the device has a modulator rate that varies with data rate. You can see it in this table:
The normal frequency response for the ADS1248 with a data rate of 20SPS looks like this:
However, this pattern replicates itself at multiples of the modulator frequency. I don't have the exact plot for the ADS1248, but it looks something like this:
So at each multiple of the modulator frequency, the transfer function of the input is 1. Meaning that frequencies at multiples of the modulator rate are not rejected. In that case, you rely entirely on the analog anti-aliasing filtering for this rejection. Many of your test frequencies, 32kHz, 64kHz, 96kHz, and 128kHz are all multiples of the modulator frequency.
Normally, I would have expected the noise to drop off linearly with each change multiple because of the analog RC filtering. However there may be some nonlinearity introduced from the diodes and the switch on the front end. Also, I'm not sure how close you are to the exact multiple of 32kHz, so there might be some variation the response. I would also check input frequencies that are not multiples of the modulator rate.
Joseph Wu
Dear Joseph
Thank you very much for your nice answer. However, it seems the phenomenon is not well explained.
As you told us, according to aliasing, if the modulation clock is 32KHZ, the multiple of 32Khz components will aliased to 0 hz. One worry of you is how close we feed the signal to multiple of 32khz. We already test this carefully, adjusting the frequency near the 32khz, 64khz, 96khz, 128khz, 160khz,..., and found the response is similar to what we already show to you.
From the picture we show to you, it seems the modulator frequency is 64khz. Since if we assume modulator frequency to be 64khz, the phenomenon can be explained more reasonably. At multiples of 64Khz(64khz, 128khz, 196khz,..), the disturbance is dominant and drop linearly(here, the response of the PGA is also added, so seems not linearly, but more likely to be proportional to 1/f^2). Could you please help check this? Under 20sps, it the modulator work under 64KHZ?
B/R
Samuel
Samuel,
Based on the design of the digital filter and the data rate, ADS1248 modulator clock does run at 32kHz. The table in the datasheet is correct.
However, I'd like to point out that it doesn't require much change in the source frequency to for the digital filter to hit a relative peak or notch in the filter. Below is a picture of the first modulator frequency replication. It shows the frequency response of digital filter around 32kHz ± 200Hz. Again, I've drawn this just to illustrate the replication at the modulator frequency.
Here, I assuming that the oscillator clock is exactly 4.096MHz, If the noise signal is 32kHz, then the digital filter fails to filter it and we rely on the RC filtering at the front end. If the input noise frequency is off by 50Hz, the rejection drops by an additional 70dB. A change of 0.16% in the input frequency makes a large change in the noise rejection.
Note this filter response replicates at multiples of the modulator clock frequency and the deviation to the notch stays the same. At higher frequencies, the percentage change to the notch is even smaller.
Additionally, if you're using the internal oscillator, there is some variance to the relative clock frequency. The digital filter will vary with this internal oscillator error. Looking at the electrical characteristics table, the internal oscillator can vary by ±5%. In this case, you may or may not see the noise depending on the change in internal oscillator.
Regardless, I would check the result by making small changes in the noise frequency and see if the noise rejection varies.
Joseph Wu
Dear Joseph
As we already told you in the last message that we already adjust the frequency near the multiples of 32khz, and the phenomenon is the same as we already show to you. So, deviation of frequency shall not be the root cause of the phenomenon.
What we do is as follows: we use external 4.096Mhz oscillator, and with 50ppm tolerance. We use AFG3022C signal generator to feed the disturbance. At each multiple of 32KHZ, e.g., at 32KHZ, we adjust the frequency of the signal generator around 32KHZ, with resolution of 1HZ, and sweep between 32KHZ-50HZ to 32KHZ +50HZ. The maximum output disturbance is what we show you in the picture. And what 's more, we found at 32KHZ -50HZ and 32Khz+50HZ, the output become very flat, which means the digital filter works. And we can even found that the output fluctuation at several frequency points follows the rule of the digital filter curve(drop as frequency deviates from 32KHZ).
So, could you give us some more reasonable explaination?
Some more thinking and guess from our side:
We still assume the modulator works at 64KHZ. However, if everything is ideal, then there shall be no output fluctuation(or shall be much lower than what showed in the picture, since the digital filter have very high suppression at 32KHZ if modulator frequency is 64KHZ). So, we must found some reasonable root cause for this phenomenon.
One thing we do is: we doubt whether the 32khz added disturbance contain 64KHZ harmonics. To verify this, we increase the 32KHZ by 25hz. So, if harmonic is the problem, then if added disturbance is 32K+25, then harmonic shall be 64K+50hz. Since 64K+50 fall in to the notch, it will be significantly suppressed. However, we found the decrease is only 3 to 4 time, which seem harmonic is not the key factor. And we even measure the 32k disturbance and measure it with oscillascope and do FFT analysis, however, we found the harmonic is very low, almost negligible. So, it seems harmonic is not the key reason.
Second thing we do is: we doubt whether intermodulation is the problem maker of the output fluctuation at 32KHZ. Since, disturbance 32KHZ and maybe some internal 32KHZ(derived from external 4.096MHZ) may modulate each other, and generate 0HZ and 64KHZ component. And these component will fully contribute to the output. This seems possible, we do not find any violates till now.
Anyhow, all the above we do is thinking and guess, we need you to give us some more precise explanation to make our design more confident.
One guess is, the modulator works at 32khz, but samples twice(with 180 phase difference with each other)?
B/R
Samuel
Dear Bob
Yes, adding more filtering(lower the cutoff frequency, using second order filters) can make the noise suppression better. However, every measure has its pros and cons. Adding more filtering means more stable time needed when doing multiplexing among channels, thus make the refresh time longer. This is also a key index which we can not sacrifice too much.
The phenomenon we measured(32KHZ output fluctuation lower than that of 64KHZ) from ADS1248 now is different from what we and even your think in mind, or precisely, is different from what the theoretical results tells. If modulation clock is 32KHZ, then by adding the same amplitude of noise of 32KHZ and 64KHZ, the 64KHZ output fluctuation must not be so higher than that of 32KHZ(64KHZ have more suppresion than 32KHZ by the external RC filter, and for the PGA, 64KHZ GAIN must not higher than that of 32KHZ). However, what the real phenomenon shows is exactly different from the theoretical result tells. Then there must some explanation for this.
Another ponint i want to emphasize is that, you said 32KHZ+-50HZ and multiples are not realistic in field, but i want to tell you that we must take care of such point of frequencies. The reason is, we already faced a lot of real field cases, in which frequency inverters is the main disturbance source. And the frequency inverter works between several tens of kiloHZ to several hundreds of kiloHZ. 32KHZ and its multiples falls exactly in this sensitive frequency range.
Our situation now is that, by adding the fitering already showed in the first message, we can get an accepted noise suppresion result in the field. However, what we worry about is, as you see the 64KHZ fluctuation showed now is much higher than that of 32KHZ, and if this characteristic or feature is not a reliable one(e.g., in some other samples of ADS1248, or in another batch of ADS1248, 32KHZ output fluctuation will be similar, ot higher than that of 64KHZ ), then maybe the suppression in such batch of ADS1248 will be get lower, which will cause problem in the field. That's what we want you to give us a reasonable explanation of the phenomenon, and thus make us feel more confident for our design.
Thank you very much for you strong support, and looking forward to see your reply!
B/R
Sameul
Dear Bob
For the external noise, what we observed is way large than what you said 200mv, the maximum peak to peak value we observed is even 5V! However, if we do proper filtering, the milivolts TC signal can be measured accurately!
The 10+year experience can not prove that this is not important. Everything is changing in the nowday world. So, there is always new problems we need to tackle. Yes, in the field, you can have some more measures to avoid such problem, e.g., make the invertor cable far from the TC to reduce the coupling; using TC transducer for each TC channel(then more filtering can be added since there is only one channel), and convert them to 4 - 20ma signal to send to the DCS modules; etc. However, to make the product more competive, we need to solve this problem in the 8 channel TC module, to make the field problem solving more efficient, more cost effective, more reliable. That's why we need this information. And we think TI as a famous semiconductor company know how know why in this point, wand we can rely on you to make it clear!
Thank you very mcuh for your strong support! Looking forward to see your reply.
B/R
Sameul
Samuel,
I made measurements with different high frequency inputs. Before I describe what I found, I did have a few comments on the problems that I saw.
If the PGA gain is large, then the input must be small. If both the input is large and the PGA is in high gain, the PGA will over-range. The output of the PGA will certainly no longer be a sine wave and the digital filter will not be able to reject the input as if it were a specific frequency. If the PGA is over-ranged there may be other non-linear effects. Overload recovery may require extra time to come out of either rail. This recovery may not be symmetric going into and coming out of either positive or negative rail. Also, as the input signal increases in frequency, the amplifiers may be slew limited. Higher frequency inputs may need to be smaller to stay within the PGA range of linear operations. The point is that even if you have an input sine wave, the PGA must be able to put out a sine wave if you want the digital filter to reject the input signal.
Additionally, when you couple in the high-frequency input, it must have a DC bias voltage. Even with a DC blocking capacitor, the only thing that determines the DC operating point of the input frequency is the leakage currents on the input circuitry. Without the biasing, the input sine wave may have an unusual bias point which may not be in the operating range of the PGA. In the measurements that I made, I used a signal generator for the sine wave, but I also used the VBIAS input to set the input at the midpoint between AVDD and AVSS.
Regardless, if you put in a input signal that starts as a pure sine wave, there may non-linear effects that may cause the input come out of the PGA as something else, limiting the ability of the digital filter to reject the signal.
Going back to the tests that I performed, I set the ADC to 20SPS for a data rate with the PGA gain of 16. The input I put into the device is limited to 100mVpp. I started with a DC coupling capacitor, but in the end, this seemed unnecessary and I was able to directly drive in the signal. I used the ADS12
I also checked into the design. The modulator runs at 32kHz and this is confirmed through the design reviews and the numbers based on filter length and data rates. However the input signal is double sampled at 32kHz. But this should have minimal effect on the frequency response. The double sampled input done at both the positive and negative edge of the modulator clock and the charge is integrated in the modulator in the same polarity. There may be some minor changes to frequency response because of small delays in the non-overlapping sampling clock, but this should be minimal.
I used the ADS1248EVM to take data. Inputs were AIN1 and AIN0 and the input filtering is removed, using 0Ω resistors on the front. There is a 4.096MHz oscillator installed on the EVM as a clock source. The oscillator is circled in red below.
For the input source, I use an Agilent 33120A. After applying a 100mV, 32kHz input signal, I found that either the oscillator or the input source is a little off in frequency. If the source is truly 32kHz, then the modulator frequency is about 31.99986 kHz. Regardless, an input signal of 32kHz will alias back to a frequency of about 0.14Hz. Again, I use the VBIAS to DC couple the source to the input.
Input 0.14Hz:
Input 32kHz:
Input 64kHz:
Input 96kHz:
Input 128kHz:
This data is similar to the data you see. The odd harmonics of the modulator frequency (32kHz, 96kHz) are small while the even harmonics (64kHz, 128kHz) are larger and better formed. Collecting more data over a range of frequencies, I get these results:
Input Frequency (kHz) |
Codes pp (approximate) |
0 |
6500000 |
32 |
15000 |
64 |
380000 |
96 |
5000 |
128 |
88000 |
160 |
2500 |
192 |
33000 |
224 |
1500 |
256 |
16000 |
288 |
1000 |
320 |
9000 |
352 |
800 |
384 |
5000 |
416 |
600 |
448 |
3500 |
480 |
600 |
512 |
2500 |
I’m not sure why the odd harmonics are more rejected than the even harmonics. It could be because of the method of sampling during the modulator clock or it could be some other mechanism that I don’t know about in the design. I’ve replicated this experiment at a lower gain and I get similar results. The digital filter response is correct based on the filter design, but I’m not sure how the input signal is windowed based on the time within the modulator clock period.
Regardless, there are two things that I think are important to consider based on these results. First, the input high frequency voltage must have a DC bias. Allowing the input to simply couple into the circuit with a DC blocking capacitor may give poor results because the input signal may not stay within the input voltage range of the PGA. Second, the input voltage must be small enough to both be in the input range of the PGA and be slow enough not to create non-linearities in the PGA output voltage. Problems with either of these input conditions will cause problems with how the digital filter rejects the high frequency input.
If you think that there are high frequency noise that are large, I think that adding higher order filters to the input would be important.
Joseph Wu
Dear Joseph
Thank you so much for your so detailed explanation! Really appreciate your support for us!
First of all, for your concern about DC coupling, we do exactly the same as what you did in the experiment. So, no problem here. For input signal range, we also make it in the dynamic range of the PGA. Also, no problem here.
We doubt whether the duty cycle of the 32Khz modulator clock is the root cause of phenomenon. If modulator clock duty cycle is exactly 50%, then the 32Khz and its odd multiples, shall be deeply suppressed to a very minimal value. However, here the results show that odd multiples of 32Khz still have some fluctuations. And the duty cycle of the 32KHZ modulator click can explain this well. Do you think so?
B/R
Shihuan
Shihuan,
I did a quick check on the measurements near 32kHz and I found that as I move in 10Hz increments around that point, the measurement that I see is a local maximum at 32kHz. It also basically fits the same shape as a replication of the DC frequency response from 0 to 100Hz. Starting with 32kHz, I get this data:
At 32.010kHz, I get this
At 32.020kHz, I get this:
Putting together a series of data, I get this result if I normalize the 32kHz frequency result and change to a dB scale:
There are two things that this tells me. First, there is a local maximum at 32kHz and that the local miminums are close to the expected values at ±50Hz and ±60Hz from the 32kHz frequency with the replication at the mod clock frequency. It doesn’t show the exact same frequency response, but the noise floor is too high from the input source. Second, if the modulator was running at 64kHz, the 32kHz would certainly be a zero showing. Based on those two results, (and I know the filter length and data rate based on the accumulation), The modulator is certainly running at 32kHz.
Now I’m not exactly sure why the odd harmonics are suppressed. I’ve talked to some of the designers here and there are a couple of possibilities. First, the double sampling of the input during a single modulator clock might have something to do with it. This is also complicated by the fact that the sampling is not just a simple double sample, but there are multiple phases in the sample that allow for faster settling. Also, there may be non-linear effects in the PGA that cause other artifacts in the sampling and therefore the frequency response. It was also suggested that because the PGA input is basically using a function generator to apply an input signal on AINP, while holding AINN constant, that the common-mode rejection is not 0. This might cause other artifacts from the PGA if the common-mode signal is not able to keep up with the PGA. In my best guess, I still think that the windowing from double sampling and a less than 50% sample for each half of the full modulator clock may be the cause.
Regardless, the best solution is to implement an anti-aliasing filter at the front end. If this does come from a non-linear effect from sampling or from some artifact from the PGA, filtering would remove this rather easily.
Joseph Wu