Electronic Design

  
Reprints     Printer-Friendly    Email this Article    RSS        Font Size     What's This?


[Analog/Mixed-Signal Design]
Squeeze 10-Bit Performance From An 8-Bit ADC, Part 1: Additive Dithering

Dave Van Ess  |   ED Online ID #18899  |   May 5, 2008


What’s the cost of an underused hardware resource? If you spec your microcontroller to have a 10-bit analog-to-digital converter (ADC) but only require 8 bits, you’ve paid for extra performance that just isn’t needed.

What’s the cost of an unused hardware resource? If you require 10-bit performance but only have an 8-bit ADC, your first inclination may be to add an external ADC to your system. The design becomes even more challenging when you’re designing a product that will require 8-bit performance for the standard model and 10 bits for the higher-end model.

As you’ll sell more standard models, you don’t want to burden your design with the extra cost of a higher-resolution ADC. And because of board-space limitations, adding an external ADC may not be acceptable. Fortunately, you can get 10-bit performance with an 8-bit ADC by averaging multiple samples. This process is called oversampling.

An ADC generates a digital output that’s proportional to the ratio of the input voltage to the input range. The resolution (Δ or least significant bit) is this range divided by the total number of possible steps. For example, an 8-bit ADC with a 2.048-V input range has a resolution of 8 mV (2.048 V/28 steps). Figure 1 illustrates the mapping of the analog input voltage versus the digital output, shown for a small section of this ADC.

For this ADC, the Δ is 8 mV and the output will be 0xc0 for an input of 1.536 V ±4 mV. 10-bit performance for the same input range requires a resolution of 2 mV. Getting 10-bit performance requires being able to resolve one-quarter steps.

Say you want to digitize 1.534 V to 10-bit resolution. The answer should be 767 counts (210 × 1.534 V/2.048 V) or 191.75 counts of the 8-bit ADC. Now suppose you have a digital-to-analog converter (DAC) that allows you to add a small amount of offset to the input. For instance, you can add four different values: –6, –3, +3, +6 mV.

The particular values aren’t important as long as they average to zero and have a peak-to-peak value greater than the ADC’s least significant bit, 8 mV in this case. These particular values do average to zero and have a peak-to-peak value of 12 mV. For each offset, the signal is digitized (Fig. 2).

The average of the four results is 191.75, and the sum is 767. This input has been digitized with 10-bit resolution. It takes four samples to calculate the result, or put differently, it has been “oversampled by four.” Adding a specific offset to the input to increase resolution by oversampling is known as additive “dithering” because it adds noise to your input and relies upon internal filtering to be removed. In this case, averaging the four signal removes it effectively.

Additive Dither

This dither was generated with a hypothetical DAC. Although it could be done with a DAC, it would be an expensive solution. There are other ways to generate an acceptable dither. A triangle wave is a good choice for a dither as it has an even dispersion of values and averages out to zero. It is also quite easy to construct. If the triangle wave is correctly phased with the ADC, only four samples are required. Worst-case phasing would require eight samples.

When designing your system, you must decide if you want to oversample by four at the exact phase or oversample by eight and not worry about synchronization. This is a judgment call, but in my experience, systems that don’t require synchronization will be easier to implement. If there is acceptable ADC bandwidth, I would oversample by eight and avoid synchronization.

Next month, part 2 of this column will detail a practical way to implement triangular dither and use it to increase the resolution of an ADC from 8 to 10 bits.


Reprints   Printer-Friendly  Email this Article  RSS    Font Size   What's This?


  • Cadence Comes At Power From Two Perspectives
  • Collaboration Results In First IEEE 1149.7 cJTAG Semiconductor IP Core
  • Engineering A Hall Of Famer
  • Yield Enhancement Software To Aid Solar Cell Fabs
  • Audio Engine Codec Library Expands With Dolby Pro Logic Additions
  • Accellera Rolls New Version of Analog, Mixed-Signal Standard
  • 45-nm Via-Programmable ASICs Add High-Speed I/O Transceivers To Feature Mix
  • Verification Evolves Into Lean, Mean Bug-Stomping Machines
    1) Build A Smart Battery Charger Using A Single-Transistor Circuit
    (203 views today)
    2) Power Architecture Group Defines High-Speed Serial Trace Spec
    (142 views today)
    3) Evident Technologies Debuting Nanocrystal LEDs
    (139 views today)
    4) TI Working To Develop IEEE 1149.7 2-Pin Debug Spec
    (134 views today)
    5) White LEDs Clear Another Brightness Bar
    (130 views today)
    ALL TOP 20



    Reader Comments

    You do win extra resolution with the technique described here. But it might not be useful resolution because you still suffer from the original A-to-D converter's integral nonlinearity and differential nonlinearity. Most A-to-D converters do successive approximation so it does not cost much to build in an extra bit (indeed some micros allow you to trade bits against conversion time). But they set a maximum limit to the bit count because the bits beyond that point are lost in error or noise. You go from an 8 bit converter with an error of up to +/-1 count to a 10 bit converter with an error of up to +/-4 counts.

    Oh and sometimes (with power-optimised designs) that last bit is bouncing around in thermal noise. So you can use averaging to get extra resolution even without injecting your own offset.

    Danish -May 29, 2008

    Interesting way to increase the effective bits. My signal processing theory is a little rusty, but can't you also increase effective bits by purely over sampling and then using a low pass filter and rounding the result to the correct number of bits for the amount of over sampling? I think the requirement is 4 times over sampling for every extra bit of resolution. So to get 10 bits (2 extra bits) from an 8 bit ADC, you would need 4 times over sampling for the 9 th bit and additional 4 times over sampling to get the 10 th bit. So that makes for a grand total of 4X times 4X for a final sampling rate of 16X. When I was a kid I had a 1 bit ADC and a 1 bit DAC and had written some software that would record on the 1 bit ADC and playback on the DAC. Using a sampling frequency in the 1 MHz range, I was able to record and playback music from the radio. It sounded terrible, because I didn't know anything about filtering at the time, but it worked.

    When it comes right down to it though, if you are trying to save money, then the options of buying a 16X faster ADC, a DAC, an ADC with extra bits, or building a triangle wave generator. I think you might find that buying a microcontroller with an ADC that has extra bits is the cheapest option.

    stancilmor -May 16, 2008

    Shouldn't the title of this article be: Squeeze 10-Bit Performance From An 8-Bit ADC, Part 1: Additive Dithering

    The title implies your going to show me how to improve DAC performance, but it is actually about improving ADC performance. Or did I miss something?

    JJones -May 14, 2008

    I forgot to mention, the article was informative and appreciated.

    DrWho -May 14, 2008

    While I can see your point in the article I am wondering, is the using of a 10 bit DAC one of specs or one of no choice. It's like the ADC side of things with microcontrollers, you only need 8 bits but all the manufacturers are making them with 10 bit resolution to ensure that their product is as capable as their competitors. If one has a 10 bit DAC then they all will have 10 bit DACs. The end result is that having more bits than needed isn't necessarily a waste of money but a reality of what is available.

    DrWho -May 14, 2008

    POST YOUR COMMENTS HERE
    Name:

    Email:
    Your Comments:

    Enter the text from the image below


    Please refresh the page if you have trouble reading this text.

    Search Electronic Design
         
      
     
    Email Newsletter
    Sponsored By:
    Electronic Design UPDATE provides readers with late-breaking news, opinions from industry experts, and timely technology stories. It's a unique opportunity to get your product message in front of engineers, engineering managers, and corporate managers while they're reading about critical information online.

    Enter Email to Subscribe
      

    Electronic Design Europe Electronic Design China EEPN Power Electronics Auto Electronics Microwaves & RF RF Design
    Schematics Find Power Products Military Electronics Featured Vendors EE Events Free Design Resources