"Faking" extra resolution with an 8 bit DAC

If you run the pwm at the same speed as the sample rate. (or an integer multiple thereof) the ripple is no-longer an issue.

--
?? 100% natural

--- news://freenews.netfront.net/ - complaints: news@netfront.net ---
Reply to
Jasen Betts
Loading thread data ...

I did how ever miss read that original post, I guess a DAC was in question.. In which case, dithering the DAC output with a little filter on it passed through a unity amp will yield some good results.

It'll slow down the output response time how ever, unless you have a switchable filter from one of the IO's to allow for fast change of a larger value. Its a matter of just switching it back in once you're at a steady state or in a narrow region. Seems like it would be cheaper to employ a higher res DAC if it gets to that level.

Jamie

Reply to
Jamie

Thank you all for your suggestions!

Reply to
Bitrex

Sample rate of what?

John

Reply to
John Larkin

Trick: add analog noise ahead of an ADC, several bits maybe, and digitally average it out. Makes more bits and improves linearity.

Different trick: use a dac to add pseudo-random noise to the ADC input, and subtract that out digitally. That smears the data acquisition over many ADC codes without adding a lot of net noise. That improves ADC DNL, like for pulse-height histogramming.

John

Reply to
John Larkin

one

The trick is called "dither" and is in the text-books, John Watkinson's "The Art of Digital Audio" from 1988 (ISBN 0-240-51270-7) devotes a couple of pages to the subject.

The second trick is in there too - attributed to B.A.Blesser, citing Digital Audio, published in 1983 and edited by B.A. Blesser, B. Locanthi, and T.G.Stockham jnr.

Stockham was tolerably famous - apparently he founded Soundstream

formatting link

-- Bill Sloman, Nijmegen

Reply to
Bill Sloman

Most ADC's these days have significant noise -- often with a standard deviation of several or even tens of steps. So you can pretty much count on getting the analog noise for no extra charge. I've used this with good success in control systems, where short-term resolution was important but absolute accuracy didn't need to be better than the published ENOB of the converter. Just sample as fast as you can push the ADC, take the average ADC output at each control interval, and run with it.

I like your "different trick", though. Dunno if I'll ever need it, but it sounds good.

Yet another trick: run a high resolution slow ADC in parallel with a lower resolution fast ADC. Then after conversion run their outputs through matched low- and high-pass filters, such that you get the DC resolution of the slow ADC while capturing transients with the fast ADC. I haven't done this yet, but one day...

--
Tim Wescott
Wescott Design Services
 Click to see the full signature
Reply to
Tim Wescott

True, especially for 16 bit ADCs, or most any ADC inside a microprocessor. I've built dither generators into ADC systems and wound up not stuffing them!

I've used this

The nuclear pulse-height people like that one. The DAC can have several LSBs below the ADC resolution, and they sometimes dither a lot, like 20% of the ADC range, not just a few LSBs.

That would be good for control loops that have to be both fast and precise. One advantage is that customers almost always test things for accuracy by applying static inputs. So, if you mismatch things and get a little bit of settling tails, you probably won't get caught.

John

Reply to
John Larkin

Is that noise really random, or just not correlated until you look in the right place?>

--
These are my opinions, not necessarily my employer's.  I hate spam.
Reply to
Hal Murray

n, 13 Feb 2011 22:22:00 -0800, Tim Wescott

That depends on the system, but it's certainly possible to get enough Johnson noise from a resistor to smear out the least significant bits of a fast high resolution A/D converter.

Back in 1985 we got a bit of a shock when the lumpiness of the lines we were drawing in photoresist with an electron-beam microfabricator turned out to be coming from the Johnson noise in the input stage of the amplifier that turned our D/A converter output into a current to drive the scan coils. That was fixable - with a lower-noise op amp - but electron-beam resists have gotten faster since then ...

-- Bill Sloman, Nijmegen

Reply to
Bill Sloman

I don't know. But the built-in noise of 12-16 bit ADCs usually seems to dither away their quantization and DNL pretty well.

I did one dither thing to get utility-grade electrical metering (which needs like a 20,000:1 dynamic range) from a crummy 8-bit ADC. The dither generator was a uP port pin feeding an RC lowpass, into the current-shunt opamp. That's sort of a delta-sigma noise source. I didn't have code space for a proper random bitstream generator, so I just swept a pointer through the program itself, plucking the MS bit of all my own opcodes. The lowpassed waveform was ugly but it worked fine.

John

Reply to
John Larkin

oops, I misread the original, also forgot that this has to be done with real parts, not ideal ones.

?? 100% natural

Reply to
Jasen Betts

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.