DSPRelated.com
Forums

Over-sampling with TMS320LF2407A

Started by Ajay November 25, 2004
The Systems and Peripherals guide for the above processor states the
following for the ADC:

------------------------------------
It is also possible to sample the same channel multiple times, allowing
the user to perform "over-sampling", which gives increased
resolution over traditional single sampled conversion results.
------------------------------------

How do I achieve this?

"Ajay" <ajaydsouza@gmail.com> wrote in message
news:1101383800.174434.70430@f14g2000cwb.googlegroups.com...
> The Systems and Peripherals guide for the above processor states the > following for the ADC: > > ------------------------------------ > It is also possible to sample the same channel multiple times, allowing > the user to perform "over-sampling", which gives increased > resolution over traditional single sampled conversion results. > ------------------------------------ > > How do I achieve this? >
Could you possibly supply the context in which the claim was made? I don't have those guides. - Thanks - Mike
Ajay,

The simplest way is to sample one channel many times and get the 
arithmetic average. Although it is not worth it usually because the 24xx 
has an extremely lousy ADC.

Vladimir Vassilevsky

DSP and Mixed Signal Design Consultant

http://www.abvolt.com

Ajay wrote:
> The Systems and Peripherals guide for the above processor states the > following for the ADC: > > ------------------------------------ > It is also possible to sample the same channel multiple times, allowing > the user to perform "over-sampling", which gives increased > resolution over traditional single sampled conversion results. > ------------------------------------ > > How do I achieve this? >
"Ajay" <ajaydsouza@gmail.com> schrieb im Newsbeitrag
news:1101383800.174434.70430@f14g2000cwb.googlegroups.com...
> The Systems and Peripherals guide for the above processor states the > following for the ADC: > > ------------------------------------ > It is also possible to sample the same channel multiple times, allowing > the user to perform "over-sampling", which gives increased > resolution over traditional single sampled conversion results. > ------------------------------------ > > How do I achieve this?
Hello Ajay, the idea is that you can calculate values beyond the resolution of your ADC, because you average over more than 1 LSB. Maybe you already have enough noise of more than 1 LSB on your signal. Otherwise just add a little "bit" noise or even better a triangle signal with exactly the averaged measurement period. Example: 16 times average You measure 1000, 999, 1001, 1000, ....... Then you calculate signal_avg = sum / 16 = 1000.314 You can achieve in an ideal case sqrt(N) = sqrt(16) = 4 times more resolution. This is a 2bit improvement. Extra Bits = log2(sqrt(N)) You must be aware that this only improves differential nonlinearity(ADC resolution) but not integral nonlinearity. Best Regards, Helmut
It is in section 7.2.1 on page 7-4 of document spru357b i.e.
TMS320LF/LC240xA
DSP Controllers
Reference Guide
System and Peripherals

Regards,
Ajay

Mike Yarwood wrote:
> "Ajay" <ajaydsouza@gmail.com> wrote in message > news:1101383800.174434.70430@f14g2000cwb.googlegroups.com... > > The Systems and Peripherals guide for the above processor states
the
> > following for the ADC: > > > > ------------------------------------ > > It is also possible to sample the same channel multiple times,
allowing
> > the user to perform "over-sampling", which gives increased > > resolution over traditional single sampled conversion results. > > ------------------------------------ > > > > How do I achieve this? > > > Could you possibly supply the context in which the claim was made? I
don't
> have those guides. - Thanks - Mike
What I do not understand is e.g.

Correct me if I am wrong.
I sample the input 16 times. However, to improve the resolution, I do a
division by 4. Thereby, I have a 2 bit improvement?

But in such a situation will my input be the same value as in the first
case? Or now, will I do my calculations based on the new value which
will be approx. 4 times the original input?

The proper way to perform such oversampling is to put a decimating
lowpass filter just after your ADC. Because of the oversampling, noise
will spread over _wider_ spectrum area and hence when you apply a lowpass
filter you will get higher signal/noise ratio cutting out this (_wider_)
noise.

Nordic regards,
Yuri
Ajay wrote:

> What I do not understand is e.g. > > Correct me if I am wrong. > I sample the input 16 times. However, to improve the resolution, I do a > division by 4. Thereby, I have a 2 bit improvement? > > But in such a situation will my input be the same value as in the first > case? Or now, will I do my calculations based on the new value which > will be approx. 4 times the original input?
Appropriate dither improves the resolution. Resolution can improve at most with the square root of the number of measurements. Add together 16 measurements (assuming you have enough headroom so they can't overflow). The available resolution might be as much as 4 times -- 2 bits -- better than the ADC itself. Since the sum has 4 more bits, shift off two (with sign extension) to get the final result. Dividing by 4 also works with truncation toward zero. If truncation is toward negative infinity, the result of division is good for positive numbers, but might have to be adjusted for negative results. Arithmetic shifting (shifting with sign extension) is simpler. Rounding improves the result somewhat. Simply add 1 before shifting or dividing. Note "might be" improved. A great deal depends on signal stability and on implicit (noise) dither. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
"Ajay" <ajaydsouza@gmail.com> schrieb im Newsbeitrag
news:1101700947.039264.239830@z14g2000cwz.googlegroups.com...
> What I do not understand is e.g. > > Correct me if I am wrong. > I sample the input 16 times. However, to improve the resolution, I do a > division by 4. Thereby, I have a 2 bit improvement? > > But in such a situation will my input be the same value as in the first > case? Or now, will I do my calculations based on the new value which > will be approx. 4 times the original input? >
Hello Ajay, I had a result with fractions of an lsb in mind. If you think without that fraction, then you have indeed to divide by 4 or shift right only two bits. The result is then always 4 times that of your single ADC reading. Best Regards, Helmut
"Ajay" <ajaydsouza@gmail.com> wrote in message news:<1101383800.174434.70430@f14g2000cwb.googlegroups.com>...
> The Systems and Peripherals guide for the above processor states the > following for the ADC: > > ------------------------------------ > It is also possible to sample the same channel multiple times, allowing > the user to perform "over-sampling", which gives increased > resolution over traditional single sampled conversion results. > ------------------------------------ > > How do I achieve this?
Just sample and average, for instance, say your a/d has a resolution of 1 "unit". And you take two samples like 16 17 and then you average them, 16.5! Amazing! You have more resolution. TI has an application note concerning oversampling hints and tips, as does a few other a/d manufacturers. Oversampling helps with noisy systems, either to achieve the published a/d resolution or to surpass it. This technique is very commonly used. steve