pipeline ADC missing codes

I've been researching this and see a lot of papers and appnotes that are mostly the same.

We conjecture that some capacitive-DAC pipeline ADCs do not act as if they have a single sample-and-hold in the front end, but are more complex and have, essentially, multiple s/h elements. One consequence is that the presence of very high frequency components of the signal can cause missing codes if the sample aperatures are not absolutely identical. I think we may be seeing this happen.

Sometimes we deliberately add dither noise to improve ADC histograms, but it could be that very high frequency noise has the opposite effect.

I've seen data sheets and appnotes that suggest adding series resistors or RCs to fast ADC inputs. I assumed that was to offset some charge injection thing, but maybe not. Those might be lowpass filters.

Has anybody run into this effect?

Reply to
jlarkin
Loading thread data ...

Not sure what you mean by "high frequency" noise. If you are talking about out of band noise, that is never a good idea. There is no need for dithering "noise" to be out of band. If the signal and noise are in band the ADC should work as indicated in the data sheet. If the part does not work as advertised, discuss your results with the maker.

It's that simple.

Reply to
Rick C

On a sunny day (Thu, 16 Sep 2021 07:23:38 -0700) it happened snipped-for-privacy@highlandsniptechnology.com wrote in snipped-for-privacy@4ax.com:

Well you sample at 2f and have a nyquist filter at 1f?

formatting link
Scope ADCs do not use a filter ADFAIK...

Reply to
Jan Panteltje

The issue isn't aliasing, it's missing codes.

In fact we're not volating Nyquist with our main signal, but we think a little very-HF noise is making the ADC miss codes.

Just wondering if anyone has seen this.

Reply to
jlarkin

So your conjecture is that the sampled charge is being passed down the pipeline from capacitor to capacitor as the SAR process goes along, till nothing is left at the end, and that capacitance variations between stages might make the more significant bits get decided wrong?

It's a plausible mechanism, but it seems like that would get taken care of in the self-calibration step because it ought to be a fixed-pattern effect.

If it's not fixed-pattern, I'd be more inclined to suspect capacitive feedthrough in the sampling switch, or maybe junk getting into the reference path, maybe via ground inductance.

It might conceivably be the interaction of the ADC input's kickout spike with the instantaneous bias condition of the op amp--lots of amps with boosted output stages have lower open-loop Zout during rapid slewing, IIUC.

The RC on the input covers a multitude of sins, for sure. ;)

Cheers

Phil Hobbs

Reply to
Phil Hobbs

No, I was thinking that at the very input, there are multiple s+h elements and they don't sample at exactly the same time.

I have seen diagrams that imply, in some ADCs, the same capacitive ladder that is used for digitizing is also the s+h.

And even if the first stage is pure flash, the first few bits could follow a different path from the residual part.

I'm imagining mechanisms, but the missing codes are very real.

We can't imagine any of the classic noise mechanisms causing missing codes. Some bins have a million hits and an adjacent bin has 14. This is an 80 MHz 10-bit ADC being clocked at 40 MHz.

Reply to
jlarkin

Yikes. If there are a bunch of samplers all connected to the input pins, they can't all be sampling at once or the pipeline wouldn't be doing anything useful.

How many missing codes are there?

Are they at the MSB carries?

Do they go away if you put caps on the inputs?

Is the part self-calibrating?

Cheers

Phil Hobbs

Reply to
Phil Hobbs

On a sunny day (Thu, 16 Sep 2021 08:20:49 -0700) it happened snipped-for-privacy@highlandsniptechnology.com wrote in snipped-for-privacy@4ax.com:

How can you have RF noise if you use a Nyquist filter?

Reply to
Jan Panteltje

Maybe 1/3 or 1/2 of the 1024. It's bad. Sometimes two adjacent bins are missing.

They are scattered all over the code space. If we digitize a linear ramp, it's worse at low codes, which might suggest some oscillation in the signal source, or something inside the ADC.

There is a cap on the input! Adding a series resistor seems to help.

Don't know. It's an ADC10080.

We didn't have time to investigate this in detail; the resistor fix was good enough to let us ship. I plan to get back to this when I have time. I was just wondering if anyone else had opinions.

If a man will begin with certainties, he shall end with doubts, but if he will be content to begin with doubts he shall end in certainties. Francis Bacon

Reply to
John Larkin

Nothing's perfect.

If a man will begin with certainties, he shall end with doubts, but if he will be content to begin with doubts he shall end in certainties. Francis Bacon

Reply to
John Larkin

However, the datasheet is very specific in its claim that there are no missing codes. So either the devices are broken and don't meet their specification or something about the design is provoking the problem. I don't see how the DNL plots in the data sheet could have been obtained with a device behaving as you describe.

John

Reply to
John Walliker

On a sunny day (Thu, 16 Sep 2021 10:38:09 -0700) it happened John Larkin <jlarkin@highland_atwork_technology.com> wrote in snipped-for-privacy@4ax.com:

Reference decoupling? Supply decoupling?

I am not sure about that topograghy, but personally I would go for a FLASH type converter maybe like the AD9410, more in my video way of thinking

Reply to
Jan Panteltje

Yikes, so noted.

One thing that plagues some ADCs is internal slew limiting. To get the I_Q headline spec, they starve internal circuitry of bias current so that it goes all nonlinear on fast edges.

I'll be very interested to hear the forensic results.

Cheers

Phil Hobbs

Reply to
Phil Hobbs

There are a million ways to screw up a design. There are much fewer ways to get it right. It could be something as simple as power decoupling... or something else all together.

Without investigating fully they are likely to never know.

Reply to
Rick C

torsdag den 16. september 2021 kl. 19.16.28 UTC+2 skrev Jan Panteltje:

sometimes signals are naughty and sneak in through the backdoor

Reply to
Lasse Langwadt Christensen

No, I can't imagine that TI would sell parts this bad. It's the same on multiple boards.

Reply to
John Larkin

<A lot of snippage>

Agreed. They're not dumb.

Is there a TI evaluation board that would allow you to compare the performance to your own design? It probably wouldn't be practical to compare the same chip because things are so tiny and difficult to rework nowadays, but you could at least see if the chip works as advertised in (presumably) the best possible assembly.

Board layouts for many high-speed converters are critically layout-sensitive. Also, some bypass caps are better than others. But you do a lot of high-speed stuff and probably know this, if you didn't you'd be out of business by now.

Reply to
Steve Goldstein

I never did a pipeline converter so take what I say with a grain of salt... I think they have to do a bunch of tricky stuff, like there are sometimes extra duplicate stages added part-way along the pipeline so that the first stage comparator doesn't need to be accurate to as good as 1 lsb, only the 1st stage DAC must. So when the first stage gets its decision wrong, some subsequent stage will have extra range, or be duplicated, and then error-correcting logic fixes the msb based on the later bits. Without that feature, missing codes could result.

I think they need to pay a lot of attention to metastability too, i.e. the bit that gets passed to the logic that generates the output code had better be the same as the bit that gets passed to the DAC for that stage of the converter, which means they need to use the same latch, not a different identical one, to drive both, and probably a lot of other measures. Metastability would cause big errors though, not what you're seeing.

You could look in JSSC or patents to find some of the tricks they use in old parts like that one.

If you can identify whether there is a pattern to the codes that are missing (are they adjacent to a major bit transition for example) that might help someone to figure it out.

Reply to
Chris Jones

Out of 1024 codes, something like half of them are unreasonable. There are random clusters of one or two empty or nearly empty histogram bins with a big neighbor getting their hits.

It seems to be related to the input signal we are applying, possibly some too-high-to-see oscillation. TI support is clueless.

We plan some mindless experiments, change parts here and there and see what happens to the statistics.

Reply to
jlarkin

John, did you ever get to the bottom of this mystery?

Cheers

Phil Hobbs

Reply to
Phil Hobbs

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.