ads1251 non-linearity test. [SOLVED] - Page 1
Forum section: electronics / general

author: MasterT
author_rank: Frequent Contributor
timestamp: March 03, 2018, 04:22:19 pm
content: I played with TI ads1251, and running simple linearity test I observed huge deviation. To double check that my primitive test set-up is correct, I install second ADC - mcp3550-60 in parallel, below is the result. As you can see, microchip (blue line) is doing pretty well, shows only some intentionally introduced FS offset. But TI ads1251 (red line) is wildly non-linear. I verify my data a few times with different sample rate, w/o any luck.Both adc have "-" input connected to reference voltage, interface is processed by arduino.The question is, what possibly could be wrong with TI ADC?

author: ogden
author_rank: Super Contributor
timestamp: March 03, 2018, 05:11:42 pm
content: Quote from: MasterT on March 03, 2018, 04:22:19 pmPlease tell what is shown in your graph. There's no legend of X & Y axis.Most likely there's nothing wrong with TI ADC, in case it is genuine.There are zillion ways to trash your ADC readings.0) read datasheets, check "typical application circuit". make sure you know how particular ADC is supposed to be used.1) don't connect *inputs* of two ADCs together.2) implement input buffering or at least individual antialiasing RC filter for each ADC3) reference buffering/filtering. some ADCs are fine with just capacitor, other needs low impedance opamp buffer4) noiseless power supply and it's decoupling - so noise from digital parts of your circuit does not leak into analog part of ADC

author: MasterT
author_rank: Frequent Contributor
timestamp: March 03, 2018, 06:53:09 pm
content: Quote from: ogden on March 03, 2018, 05:11:42 pmI attached pdf, data on the picture in mV.Part is genuine, bought from reputable US mo(user)nster, arrived in air-tight humidity controlled bag.0). No argument, would re-read again.1). Second ADC was brought in the circuit after non-linearity was discovered, so it couldn't be the cause.2). It is connected to low impedance source, voltage stability verified with multi-meter 4 & 5 digits down to 10-th microvolts.3). Reference is stable MCP1501 - 20mA current capacity.4). Linear - double regulated PS, absolutely sure that power supply is very good.What left is digital to analog leakage, since mcp3550 has an internal oscillator - no interference on analog side. Ads1251 does require external clock, and I'm feeding it out from arduino pwm pin, 50% duty 200k - 8 MHz, may be an issue there. What bother me , its a magnitude, adc outputs 10-bits !!! code, worse than arduino uno could using internal SAR.I was hoping someone has a positive experience with ads1251 and could say "did a project, get 19-21 bits using same part".

author: ogden
author_rank: Super Contributor
timestamp: March 03, 2018, 07:24:08 pm
content: Quote from: MasterT on March 03, 2018, 06:53:09 pmOh, I missed that. We used to check ADC performance in ADC counts and PPM as well, not abstract mV w/o information about full-scale voltage. Please tell me how could I know - your 4040 mV is full-range or just 1/4 of whole range?QuoteGood to know. You shall be very confident here, otherwise results are trash.QuoteWhat components between reference and ADC? Any capacitor there as well? You must put low ESR capacitors close to every voltage input of ADC, including reference.QuoteYes, May be. Put 100 .. 330 ohm series resistors on all digital (clock/data) lines between ADC and MCU. Maybe before that try slower data transfers and see - it changes results or not.Reading:http://www.analog.com/media/en/training-seminars/tutorials/MT-031.pdfQuoteSomething is wrong. Can't be. Double-check everything including software.QuoteRest assured that those chips can deliver specified performance. TI is not that kind of company that could fail with chips specs so miserably. In case you have option to consult TI field application engineer or just support - do it. Most likely there's something about your circuit like... dunno... ground loop or software error or something else. You just have to go through everything and double-check everything.

author: ogden
author_rank: Super Contributor
timestamp: March 03, 2018, 07:35:57 pm
content: To clear your doubts about performance of the chips and get some kind of sanity check, it is always good idea to buy original reference design board,in this caselike:http://www.ti.com/tool/ads1232refAlways remember to check - additional (comms) board is needed or not. Particular board have USB on-board, so most likely nothing else is needed to get it running.

author: MasterT
author_rank: Frequent Contributor
timestamp: March 03, 2018, 11:01:50 pm
content: Quote from: ogden on March 03, 2018, 07:24:08 pm1. Scale is not relevant for linearity testing. I mention that "-" negative input connected to Ref. voltage, and MCP1501 is 4.096V.2. 100pF capacitor to ground. DS for MCP1501 states, that IC doesn't require output decoupling capacitor at all.3. Test results getting much worse with single 1k on clock line, see last column on second page in the attachment.It's not reflected on image, to prevent re-scaling.4. It's not my first adc on test bench. Same software has no issue with ads1232, nau7802, mcp34xx/35xx/5. I agree here, could be fault on my part. ADC is on a beadboard, and something can easily goes wrong. At this point, I could only say, that ADC is not hobby friendly Any decent audio codec (wm8731, pcm1803 - tested in same breadboard condition) works much better, and I2S clock-data bus is no way less noisy.Updates.Hell, unbelievable. Ringing on both inputs line 50-100 mV, I just can't imagine that sigma-delta 24-bits adc could be so noisy. It's not some kind of RF 400 MHz sampling adc. So I put 47 OHm on both inputs, 0.1 uF ceramic in between, plus 0.1 uF on reference and non-linearity almost gone. At least down to 15- bits - enough for breadboard.Thanks for advising, it was under number 2 in your list.

author: ogden
author_rank: Super Contributor
timestamp: March 04, 2018, 07:04:46 am
content: Quote from: MasterT on March 03, 2018, 11:01:50 pmIndeed! 1k iswaytoo much. Even 330ohm can be danger territory for fast clocks, especially on breadboard. Try 100 ohms. Always check slew rate of digital signals using scope, especially if you slow them down with series resistors.QuoteNo. They are not noisy. I just can't imagine you did run ADC w/o filter/antialiasing capacitor on it's inputEvery ADC, especially those w/o input buffer *requires* proper low impedance signal source, antialiasing RC filter on it's inputs. This is clearly written in ADC documentation as well.You shall check how "noisy" is buffer-less SAR ADC input thenGlad you did find what's wrong.

author: MasterT
author_rank: Frequent Contributor
timestamp: March 04, 2018, 01:14:35 pm
content: Quote from: ogden on March 04, 2018, 07:04:46 amRight, sigma delta adc usually are not noisy. Because they have PGA, differential S/H - two capacitors anti-phase charging, or at least small 1-3 pF S/H capacitor.It's not the case for ads1251. I was able to locate old Burr-Brown data sheet, that shows 20 pF in single ended architecture. BTW, new ads1250-/51/52/53 Data Sheets (downloadable from TI) doesn't include this diagram. Now I know why the picture was withdrawn. Because of poor design, we have 20 kHz ADC (audio range, not RF !, this is why I bought it in the first place) that demands robust RF buffering on its front end, same way as SAR. And it 's not big deal to buffer common 1-2 MHZ sampling rate SAR, arduino DUE (ARM-7) for example have one, but don't forget 24-bits. It's make huge difference. DS for ads1251 shows OPA4350 as a recommended buffer. I don't think, that 38 MHz /0.2 usec settling time OPA gonna to be a good choice. I'd think, 200 MHz /20-30 nanosec at least, and it'st for audio range sigma-deltaN.B.I'm worry about Chinese hackers, that may get hands on manufacturing documentation of this adc. It would de-rail Chine capability of producing good quality ADC for a century. As they say, don't steal, and you are not going out of the business.It's a pity, too late to give such advise to Burr-Brown.

author: ogden
author_rank: Super Contributor
timestamp: March 04, 2018, 05:38:21 pm
content: Quote from: MasterT on March 04, 2018, 01:14:35 pmPlease tell why you think so - that ADC resolution have anything to do with buffer opamp GBW.QuoteIt's not GBW that's important in particular OPAMP choice but it's low noise and quite good PSRR specs. ADS1251 is 20kSps ADC. You don't need 38MHz, nor 200MHz GBW opamp to buffer 10KHz signal (per Nyquist).

author: MasterT
author_rank: Frequent Contributor
timestamp: March 04, 2018, 06:39:11 pm
content: Quote from: ogden on March 04, 2018, 05:38:21 pmGBW is very important in this case. ADS1251 is switching 20 pF capacitor with 8 MHz clock, so OPA must keep up with this aggressive switching-capacitive load and settle to within 0.0001 % in 125 /2 = 62.5 nanoseconds. Plus OPA must be high linearity (0.000025 % ) & low offset (1 uV) When you realize, that such OPA doesn't exist, than you understand that ether ADC isn't 24-bits or it's not 20 ksps. You've been fooled. Bought a things that can't be interfaced.

author: Kleinstein
author_rank: Super Contributor
timestamp: March 04, 2018, 08:53:43 pm
content: The OPA needs to be fast to get the required low driving impedance. However the requirements are not as strict as one might think: even if the OP shows ringing and needs more time for settling, this ringing is to a large part linear. So the ADC will see a small difference, but mainly in time and not in voltage.The alternative way to provide the low impedance through the OPA is to have a passive RC filter to provide the low impedance at short times. In this case the amplifier only needs to drive the load (e.g. something like 100 Ohms and maybe a few 100 nF). This is still not easy and may limit the BW, more than the 20 kHz sampling rate.

author: dmills
author_rank: Super Contributor
timestamp: March 04, 2018, 09:06:15 pm
content: Charge transfer ADCs (Which most of the DS designs as well as most pipelined designs are), have a sampling capacitor switched across the input as a track and hold sort of affair.Your sample rate may only be barely ultrasonic but the edge rate of those current pulses can easily put energy up into the hundreds of MHz region and low GHz is not out of the question, yes you should sweat return loss at RF even for an audio band ADC!Common practise with audio parts is to swamp the input with several nF of fixed cap right at the ADC pins and drive that via a few tens of ohms from the buffer amp, this keeps the current loop small and gives the ringing a chance to decay before the next sample.Modern ADCs are more RF then you might expect.Regards, Dan.Regards, Dan.

author: ogden
author_rank: Super Contributor
timestamp: March 05, 2018, 09:59:29 am
content: Quote from: MasterT on March 04, 2018, 06:39:11 pmRight. That's why you rarely put "naked" opamp buffer before ADC but place RC filter behind it as well.Quote from: dmills on March 04, 2018, 09:06:15 pmWhy would you need to put 38MHz GBW opamp (which have it's quirks by iself, especially on breadboard) in front of 20ksps ADC if generic low noise 1MHz opamp+RC filter can give same results. That's the question.

author: dmills
author_rank: Super Contributor
timestamp: March 05, 2018, 10:14:02 am
content: 1MHz opamp driving a sampling switch at the modulator frequency of 1.33MHz (Clk/6)?The sampler will be drawing current pulses having components up into the tens of MHz.Could work but would need the passive filter to have significant output cap and probably a rather low cutoff, a quicker opamp would not exactly hurt anything here, as it is the opamp has no loop gain right around where the sampler is doing its thing.Regards, Dan.

author: MasterT
author_rank: Frequent Contributor
timestamp: March 05, 2018, 01:53:38 pm
content: Quote from: ogden on March 05, 2018, 09:59:29 amHave a look at this doc:http://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/14/4478.PA_2D00_001--Optimize_5F00_SAR_5F00_converter_5F00_design-REV-b.pdfThough, they are lighting up interface to 16-bits, and made a lot of assumptions, it provides a perspective.

author: ogden
author_rank: Super Contributor
timestamp: March 05, 2018, 05:10:53 pm
content: Quote from: MasterT on March 04, 2018, 06:39:11 pmNo. It is not. You shall familiarize yourself with delta-sigma ADC's such as ads1251, internals. They do not have sampling capacitor, they are always connected to signal source.Quote from: dmills on March 05, 2018, 10:14:02 amYou shall check what actually is delta-sigma ADC, as well.Quote from: MasterT on March 05, 2018, 01:53:38 pmads1251 is not SAR adc.Maxim delta-sigma appnote.

author: dmills
author_rank: Super Contributor
timestamp: March 05, 2018, 06:05:50 pm
content: Thats only true of a single bit continuous time SDM, conceptually simple, but usually NOT what people really build in high performance converters.There are some continuous time SDM around that do the sampling at the output side of an analog integrator but they are a bit uncommon because the clock rate matters due to the fixed gm/C or similar integrator.The vast majority of the sigma delta chips on the market have some form of sample and hold or track and hold at the input.Regards, Dan.

author: ogden
author_rank: Super Contributor
timestamp: March 05, 2018, 08:01:20 pm
content: Quote from: dmills on March 05, 2018, 06:05:50 pmGood to know. Any pointers to information about that? Ok, ads1251 datasheet is one of such"In order to provide low system noise, common-mode rejection of 98dB, and excellent power-supply rejection, the design topology is based on a fully differential switched-capacitor architecture.". It does explain why they suggest to use OPA4350 when opamd directly drives ADC w/o any input capacitor in between. On the other hand LTC2400 typical application have optional 5k series resistor to decrease input current, thou it's not 20ksps ADC, but still delta-sigma.