DSPRelated.com
Forums

TMS320F2812 ADC

Started by Ajay June 29, 2005
Hello,

I am currently validating the ezDSP board (TMS320LF2812). I have found
that the ADC results are not very accurate and also fluctuate in every
reading.

Even an averaged result of 1000 samples (though not for a practical
application) still shows a variation of atleast +/-5 points.

Things I have tried:
1. Used very high precision analog input sources.
2. Put a capacitor in the input circuit
3. Tied VREFLO to AGND
4. Reduced the HSPCLK to 25Mhz (by setting register)
5. Have used the ADCCalibration method and code (spra989a) as found on
the TI Website.

In all of the above situations I still find a fluctuation.
Even your sample code of point 3 shows major fluctuations in the input
values.


Is there something that I am missing? Please suggest how do I ensure
that I get better and more accurate readings.
I'm currently in a major fix because of this.

Thanks and regards,
Ajay D'Souza

Hello,

> Is there something that I am missing? Please suggest how do I ensure > that I get better and more accurate readings. > I'm currently in a major fix because of this.
I have the same problems with the ADC and I don't think that we both are missing something. It seems, that it is like this with these ADCs. What I don't understand is, how did they get such results in the calibration paper, which you have cited? Greetings, Pawel Szczupak
Pawel Szczupak wrote:
> Hello, > >> Is there something that I am missing? Please suggest how do I ensure >> that I get better and more accurate readings. >> I'm currently in a major fix because of this. > > > I have the same problems with the ADC and I don't think that we both are > missing something. It seems, that it is like this with these ADCs. What > I don't understand is, how did they get such results in the calibration > paper, which you have cited? > > Greetings, > Pawel Szczupak
What yo you both read with the input shorted with a short piece if wire? I suspect ground loops somewhere. From here, I can't suggest where to look. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Ajay wrote:

> Hello, > > I am currently validating the ezDSP board (TMS320LF2812). I have found > that the ADC results are not very accurate and also fluctuate in every > reading. > > Even an averaged result of 1000 samples (though not for a practical > application) still shows a variation of atleast +/-5 points. > > Things I have tried: > 1. Used very high precision analog input sources. > 2. Put a capacitor in the input circuit > 3. Tied VREFLO to AGND > 4. Reduced the HSPCLK to 25Mhz (by setting register) > 5. Have used the ADCCalibration method and code (spra989a) as found on > the TI Website. > > In all of the above situations I still find a fluctuation. > Even your sample code of point 3 shows major fluctuations in the input > values. > > > Is there something that I am missing? Please suggest how do I ensure > that I get better and more accurate readings. > I'm currently in a major fix because of this. > > Thanks and regards, > Ajay D'Souza >
The best description I've heard of that ADC is "12 bits going on 8" -- but it sounds like you're not even getting that much performance out of it. -- ------------------------------------------- Tim Wescott Wescott Design Services http://www.wescottdesign.com
Jerry Avins wrote:

> Pawel Szczupak wrote: > >> Hello, >> >>> Is there something that I am missing? Please suggest how do I ensure >>> that I get better and more accurate readings. >>> I'm currently in a major fix because of this. >> >> >> >> I have the same problems with the ADC and I don't think that we both >> are missing something. It seems, that it is like this with these ADCs. >> What I don't understand is, how did they get such results in the >> calibration paper, which you have cited? >> >> Greetings, >> Pawel Szczupak > > > What yo you both read with the input shorted with a short piece if wire? > I suspect ground loops somewhere. From here, I can't suggest where to look. > > Jerry
-- and all the other usual care and feeding of ADCs. Does TI have any design/layout guidelines for this? -- ------------------------------------------- Tim Wescott Wescott Design Services http://www.wescottdesign.com
ADC calibration (using spra989a) looks like it only effects accuracy
not noise, in any case they claim with ADC calibration you can expect
.5% accuracy with the 2812 A/D, which is 1 in 200 which is 7+ bit
accuracy which means the last 32 counts are worthless anyway. So I
doubt TI did anything special to reduce noise more then that.

Its very difficult to incorporate a true 12 bit A/D convertor inside a
DSP, the die material that is best to make a high speed DSP is usually
the worse to make a accurate A/D. Analog devices 12 bit microconvertors
are the only ones I know of that have done it (I get zero bits flipping
while measuring a fixed reference), but they only have a fairly slow
ARM processor, not a true DSP, the microcovertors are more like a 12
bit A/D with a processor added on as an afterthought, while the TI 2812
is a fast DSP with a 12 bit A/D added on as an afterthought.

Anyway, if you need 12 bits you need an external A/D.

On 29 Jun 2005 01:55:33 -0700, "Ajay" <ajaydsouza@gmail.com> wrote in
comp.dsp:

> Hello, > > I am currently validating the ezDSP board (TMS320LF2812). I have found > that the ADC results are not very accurate and also fluctuate in every > reading. > > Even an averaged result of 1000 samples (though not for a practical > application) still shows a variation of atleast +/-5 points. > > Things I have tried: > 1. Used very high precision analog input sources. > 2. Put a capacitor in the input circuit > 3. Tied VREFLO to AGND > 4. Reduced the HSPCLK to 25Mhz (by setting register) > 5. Have used the ADCCalibration method and code (spra989a) as found on > the TI Website. > > In all of the above situations I still find a fluctuation. > Even your sample code of point 3 shows major fluctuations in the input > values. > > > Is there something that I am missing? Please suggest how do I ensure > that I get better and more accurate readings. > I'm currently in a major fix because of this. > > Thanks and regards, > Ajay D'Souza
The reply from 'steve' is pretty good about why the ADC is not very good. The calibration works best if you do it continuously. That is read all 16 channels, calculate the calibration slope and offset from the 2.5 and 0.5 volt channels, and immediately apply them to adjust the values of the other 14 channels read at the same time as the two calibration channels. Note also that the latest version of the data sheet shows how you can use a precision source to generate your own reference voltages and feed them into the ADC. Only available with later revisions of the silicon. Haven't tried this one yet. -- Jack Klein Home: http://JK-Technology.Com FAQs for comp.lang.c http://www.eskimo.com/~scs/C-faq/top.html comp.lang.c++ http://www.parashift.com/c++-faq-lite/ alt.comp.lang.learn.c-c++ http://www.contrib.andrew.cmu.edu/~ajo/docs/FAQ-acllc.html
This is what I tried since the last post here.

I have averaged 12 samples of all the inputs including the references
and then have done the calibration as per the Calibration Paper I
posted above.

With 12 samples I find an accuracy of around +/-8 points in 4095.

I also realize that if I push it upto 255 samples I can get an accuracy
of +/-2 points but it is a costly overhead.

Still working out on the overhead of doing this constant averaging ever
read cycle and calibration every 12th cycle.

steve wrote:
> ADC calibration (using spra989a) looks like it only effects accuracy > not noise, in any case they claim with ADC calibration you can expect > .5% accuracy with the 2812 A/D, which is 1 in 200 which is 7+ bit > accuracy which means the last 32 counts are worthless anyway. So I > doubt TI did anything special to reduce noise more then that. > > Its very difficult to incorporate a true 12 bit A/D convertor inside a > DSP, the die material that is best to make a high speed DSP is usually > the worse to make a accurate A/D. Analog devices 12 bit microconvertors > are the only ones I know of that have done it (I get zero bits flipping > while measuring a fixed reference), but they only have a fairly slow > ARM processor, not a true DSP, the microcovertors are more like a 12 > bit A/D with a processor added on as an afterthought, while the TI 2812 > is a fast DSP with a 12 bit A/D added on as an afterthought. > > Anyway, if you need 12 bits you need an external A/D.
I wonder if anyone has tried the F2812 ADC with a custom board laid out to optimize ADC "care and feeding"? My evaluation of the ezDSP board indicated that the ADC was useless beyond 7-8 bits. But I wonder if it could be a lot better on a carefully designed PCB, with all the right things done with digital/analog power isolation, ground convergence at a single point, and fast&stiff op-amps driving the inputs through a final RC filter? But I have been inclined to use an external ADC with F2812, just because I don't want to waste the effort designing such a PCB, just to find out it's not much better. Good day! -- _______________________________________________________________________ Christopher R. Carlen Principal Laser/Optical Technologist Sandia National Laboratories CA USA crcarleRemoveThis@BOGUSsandia.gov NOTE, delete texts: "RemoveThis" and "BOGUS" from email address to reply.
"Chris Carlen" <crcarleRemoveThis@BOGUSsandia.gov> wrote in message
news:dctea601fek@news1.newsguy.com...
> steve wrote: > > ADC calibration (using spra989a) looks like it only effects accuracy > > not noise, in any case they claim with ADC calibration you can expect > > .5% accuracy with the 2812 A/D, which is 1 in 200 which is 7+ bit > > accuracy which means the last 32 counts are worthless anyway. So I > > doubt TI did anything special to reduce noise more then that. > > > > Its very difficult to incorporate a true 12 bit A/D convertor inside a > > DSP, the die material that is best to make a high speed DSP is usually > > the worse to make a accurate A/D. Analog devices 12 bit microconvertors > > are the only ones I know of that have done it (I get zero bits flipping > > while measuring a fixed reference), but they only have a fairly slow > > ARM processor, not a true DSP, the microcovertors are more like a 12 > > bit A/D with a processor added on as an afterthought, while the TI 2812 > > is a fast DSP with a 12 bit A/D added on as an afterthought. > > > > Anyway, if you need 12 bits you need an external A/D. > > > > I wonder if anyone has tried the F2812 ADC with a custom board laid out > to optimize ADC "care and feeding"? > > My evaluation of the ezDSP board indicated that the ADC was useless > beyond 7-8 bits. > > But I wonder if it could be a lot better on a carefully designed PCB, > with all the right things done with digital/analog power isolation, > ground convergence at a single point, and fast&stiff op-amps driving the > inputs through a final RC filter? > > But I have been inclined to use an external ADC with F2812, just because > I don't want to waste the effort designing such a PCB, just to find out > it's not much better. > > > Good day! > > > -- > _______________________________________________________________________ > Christopher R. Carlen > Principal Laser/Optical Technologist > Sandia National Laboratories CA USA > crcarleRemoveThis@BOGUSsandia.gov > NOTE, delete texts: "RemoveThis" and "BOGUS" from email address to reply.
Yes, i have designed a custon board with all the precautions and care for the ADC and it's still a crock of sh*t. I'm currently designing out the part and will do what I should have done in the first place and split the digital and analog.. I'm now updating to an Analog device adc and another micro.... a quick breadboard implemented this week shows better performance than the TI part.. I guess it's only to be expected.. all that fast digital around just aint gonna cut it..