What's new

Full changelogEngine 1.18.3

ADC Resolution & Noise Budget

Signal & Timing

What one LSB is worth, and what your source resistance costs in noise and settling.

Inputs

Usually the reference voltage
V
Including any divider or filter resistor
Ω
10 kΩ
Noise is summed over this; behind one RC pole, use 1.57 × fc
Hz
10 kHz
°C
From the ADC datasheet; a few pF to tens of pF
F
10 pF
s
1 µs
Hz
5 kHz
Hz
100 kHz

Results

2 passed
1 LSB

Not judged: one LSB is a definition, VFS / 2^N, with no pass or fail. The source noise and settling checks below test the front end.

3.3 V ÷ 2^12

805.7µV
Time to settle 12 bits
901ns
Effective bits from noise

N reduced by the source noise floor

20.3
All results (5)
Ideal SNR

6.02 N + 1.76

74.0dB
Source thermal noise

√(4kTR·BW) = 0.002 LSB

1.28µV
Noise density of the source
12.8nV/√Hz
kT/C noise of the sampler

0.03 LSB at CS = 10 pF

20.3µV
Acquisition time constant

RS · CS

100ns
Source thermal noise is 1.28 µV RMS = 0.002 LSB, below half an LSB.
Acquisition settles in 901 ns of the 1 µs available (9.0 time constants of 100 ns).

The anti-alias filter must attenuate everything above 50 kHz by at least 74 dB.

This front end at each resolution
Resolution1 LSBIdeal SNRSource noiseSettling time
8 bits12.9 mV49.9 dB99.5 µ LSB624 ns
10 bits3.22 mV62.0 dB398 µ LSB762 ns
12 bits806 µV74.0 dB1.59 m LSB901 ns
14 bits201 µV86.0 dB6.37 m LSB1.04 µs
16 bits50.4 µV98.1 dB25.5 m LSB1.18 µs
18 bits12.6 µV110.1 dB102 m LSB1.32 µs
20 bits3.15 µV122.2 dB408 m LSB1.46 µs
24 bits197 nV146.2 dB6.52 LSB1.73 µs

Accuracy

Verified against

2 independent cases. See the working.

This is a design aid. The engineer remains responsible for the design and for checking the standard itself.

Parameter sweep

Vary one input over a range and see the answer and verdict at each step, as a table and a curve.Pro

Worst-case corners

Put a tolerance on each input and get the worst-case band around the answer.Pro

Circuit

The principle

An ADC's datasheet resolution is an upper bound. What you get depends on the noise at the input, and on whether the sampling capacitor can charge through your source resistance in time. Both are set by your circuit, not by the converter.

Quantisation step
1  LSB=VFS2N1\;\t{LSB} = \frac{V_{FS}}{2^{N}}
Ideal signal-to-noise ratio
SNR=6.02 N+1.76  dBSNR = 6.02\,N + 1.76\;\t{dB}
For a full-scale sine wave with only quantisation noise. Every extra bit is 6.02 dB.
Effective number of bits
ENOB=SNDR[dB]−1.766.02ENOB = \frac{SNDR_{[\t{dB}]} - 1.76}{6.02}
Johnson–Nyquist (thermal) noise of a resistor
vn=4kBTR Δf,vnHz=4kBTRv_{n} = \sqrt{4 k_B T R\, \Delta f}, \qquad \frac{v_n}{\sqrt{\t{Hz}}} = \sqrt{4 k_B T R}
A 10 kΩ resistor at room temperature gives 12.8 nV/√Hz, about 1.3 µV RMS in a 10 kHz bandwidth.
Sampling (kT/C) noise
vn,kTC=kBTCSv_{n,kTC} = \sqrt{\frac{k_B T}{C_S}}
Independent of R: 64 µV RMS on 1 pF, 20 µV on 10 pF. Hence the large sampling capacitors in high-resolution ADCs.
Acquisition settling
tacq≥RSCSln⁡ ⁣(2 N+1)t_{acq} \geq R_S C_S \ln\!\left(2^{\,N+1}\right)
12 bits needs about 9 time constants, 16 bits about 12.
Averaging gain
ΔSNR=10log⁡10(n)  dB  ⇒  ΔENOB=log⁡2n2\Delta SNR = 10\log_{10}(n)\;\t{dB} \;\Rightarrow\; \Delta ENOB = \frac{\log_2 n}{2}
Nyquist
fs>2fmaxf_{s} > 2 f_{max}
The anti-alias filter must push everything above fs/2 below the noise floor.
  • VFSV_{FS}full-scale input span, usually the reference voltage
  • RSR_Stotal source resistance including any divider or filter resistor
  • CSC_Sthe ADC's internal sampling capacitor, a few pF to tens of pF
  • kBk_BBoltzmann constant, 1.381 × 10⁻²³ J/K
  • Δf\Delta fnoise bandwidth; 1.57 × fc for a single pole
More detail

Three common front-end faults

  • Too much source resistance. It adds thermal noise and stops the sampling capacitor charging in time. The usual fix is a C0G capacitor at the pin, 10–100× CS, which supplies the charge; the source only tops it up between conversions.
  • No real anti-alias filter. Anything above fs/2 folds into the band and cannot be told apart from signal. One RC is not enough above about 12 bits.
  • Reference noise. The result is a ratio to the reference, so reference noise goes straight to the output. Decouple the reference and keep it away from switching loads.
Work out 1 LSB first. At 12 bits on 3.3 V it is 800 µV, which leaves room. At 20 bits it is 3 µV, and trace resistance, thermocouple effects at solder joints (µV/°C) and amplifier 1/f noise matter more than the ADC.

Layout

Keep the input trace short, away from switching nodes and over a solid return plane. Put the anti-alias capacitor at the pin and return it to the ADC's analogue ground, not a distant power ground. On a mixed-signal MCU, feed the analogue supply through a ferrite or small LDO and decouple it locally.

Related: Voltage Divider (source impedance into an ADC), RC / RL Filter & Time Constant (anti-alias and settling).

Engine version ⁨1.18.3⁩