ADC Dither
# ADC Dither: Use Controlled Noise to Change Quantization Statistics
Dither is a deliberately added signal, often random noise, that changes the relationship between an ADC input and its quantization thresholds. It can reduce signal-dependent quantization artifacts and help recover small changes through averaging. It also consumes noise budget and headroom, so it must be chosen for a defined purpose.
Many ADCs already have enough analog input noise to move between nearby codes. Additional dither is useful only when the converter and application benefit from it.
## 1. Apply it before the quantization decision
*Conceptual non-subtractive dither path. The summing operation occurs before quantization. Practical implementations may inject dither externally or within the converter. The drawing does not prescribe a particular waveform, amplitude or injection circuit.*
A quiet input can remain inside one quantization bin even when its true value changes slightly. Dither causes some conversions to cross neighboring thresholds. The resulting probabilities can contain information that a constant integer output does not reveal.
Adding random numbers to already digitized codes cannot retroactively recover threshold crossings that never occurred. It is a different operation from analog or internal pre-quantization dither.
## 2. Work through a simple probability example
*Analytical probabilities, not measured or simulated ADC performance. The ideal quantizer rounds to the nearest integer with thresholds at half-integers. There is no overload, nonlinearity or other noise. Dither samples are independent and uniform over −0.5 to +0.5 LSB.*
Without dither, x = 4.25 LSB always produces code 4. With the stated dither, the quantizer input is uniform from 3.75 to 4.75 LSB. The code-5 threshold is 4.5 LSB, so 25% of the probability lies above it. The expected output is 0.75 × 4 + 0.25 × 5 = 4.25 LSB.
The individual output is now random. Its standard deviation in this example is √[0.75(4 − 4.25)² + 0.25(5 − 4.25)²] ≈ 0.433 LSB. For N independent samples of the same constant input, the average’s standard deviation is 0.433/√N LSB. At N = 100 it is about 0.0433 LSB. A finite record will generally not have exactly the theoretical code proportions.
This uniform-dither example demonstrates an unbiased mean for the specified ideal quantizer. It does not establish signal-independent error variance for every waveform or dither distribution.
## 3. Choose a strategy with its costs visible
| Strategy | Intended benefit | Main cost or limitation |
|---|---|---|
| Non-subtractive dither | Randomize threshold crossings and some artifacts | Added noise remains in the output |
| Subtractive dither | Remove the known injected sequence digitally | Accurate injection, alignment and scaling are required |
| Out-of-band dither | Put much of the added energy outside the retained band | Aliasing, intermodulation and filtering must be checked |
| Averaging after conversion | Estimate a stable mean more precisely | Reduced bandwidth or slower updates |
The ideal statistical properties depend on the dither distribution, its amplitude relative to the step size, and whether subtraction is used. There is no universal amplitude setting that is best for every ADC and application. Converter architecture and existing noise also matter.
## 4. Distinguish resolution from accuracy
Averaging can produce fractional-code estimates, but it does not turn the physical ADC into a higher-bit converter for every signal. Offset, gain error, reference drift, integral nonlinearity and bandwidth limits remain. Dither can spread some localized transfer errors over different codes, yet it does not repair arbitrary front-end distortion, clipping or slew-rate limitations.
The input plus dither must remain inside the converter’s usable range. More dither can reduce certain spurs while raising integrated noise and degrading SNR. Evaluate both noise and distortion metrics; an improvement in spurious-free dynamic range does not automatically imply better SINAD or effective number of bits.
## 5. Verify the actual measurement
Sweep a stable DC input across code boundaries and compare code histograms and averaged output with dither enabled and disabled. For dynamic inputs, inspect spectra, integrated noise, spurs and overload behavior at the intended sample rate. Include the signal source, reference and dither generator in the test budget.
Check that the dither sequence has the intended statistics and does not repeat coherently with the input or sampling pattern in a harmful way. If averaging or decimation is used, document its bandwidth and settling time. Noise folding in sampling is especially relevant when dither energy is placed outside the retained band.
## References
- [Analog Devices: ADC Input Noise — The Good, the Bad, and the Ugly](https://www.analog.com/en/resources/analog-dialogue/articles/adc-input-noise.html) — code-transition noise, averaging and dither.
- [Analog Devices: AN-835, High Speed ADC Testing and Evaluation](https://www.analog.com/en/resources/app-notes/an-835.html) — dither, static nonlinearities and converter performance measurements.
- [Analog Devices: Managing Noise and Distortion in Data Converters](https://www.analog.com/en/resources/technical-articles/2022/07/16/11/45/managing-noise-in-the-signal-chain-part-2-noise-and-distortion-in-data-converters.html) — quantization and analog noise distinctions.