Skip to content

Analog-to-Digital Conversion

A digital-to-analog converter (DAC) maps an nn-bit input word to a corresponding analog voltage or current. Its core generates one of finitely many analog levels; an output hold and reconstruction network may then form a continuous-time waveform.

Conversion Chain and Fundamental Quantities

Section titled “Conversion Chain and Fundamental Quantities”

Complete DAC signal path. The core selects an analog level from a digital word and precision reference; buffering, zero-order hold and optional reconstruction filtering determine the delivered continuous-time waveform.

Complete DAC signal path. The core selects an analog level from a digital word and precision reference; buffering, zero-order hold and optional reconstruction filtering determine the delivered continuous-time waveform.

The complete signal path performs three distinct operations:

  • Decode and switch: the registered digital word controls weighted analog elements referred to a precision voltage or current.

  • Generate and buffer: the DAC core produces a voltage or current; an output stage drives the specified load while preserving accuracy and compliance.

  • Hold and reconstruct: each code is normally held until the next update. A low-pass filter suppresses staircase images and switching energy when a smooth waveform is required.

QuantitySymbolMeaning
Bit depthnnNumber of input bits; gives 2n2^n possible codewords.
Input codeDDInteger represented by the applied binary word.
ReferenceVref,IrefV_{ref},I_{ref}Precision analog scale from which output weights are derived.
Zero-code outputVZV_ZOutput assigned to the minimum code before error is included.
Nominal spanVFSV_{FS}Scale used in the ideal transfer equation.
One LSB / stepΔ\DeltaIdeal output increment for a one-code increase.
Update rate / periodfu,Tuf_u,T_uNew words accepted per second and their spacing; Tu=1/fuT_u=1/f_u.
Settling timetst_sTime after an update to enter and remain in a stated final-value band.
Compliance range—Output-voltage interval over which a current DAC or buffer remains accurate.
Glitch impulseAgA_gTime integral of transient error during a code transition.

DAC quantities used throughout this section.

For unsigned straight-binary code

D=∑k=0n−1bk2k,bk∈{0,1},0≤D≤2n−1,D=\sum_{k=0}^{n-1}b_k2^k, \qquad b_k\in\{0,1\}, \qquad 0\le D\le2^n-1,

a common ideal unipolar transfer is

Vo(D)=VZ+D2nVFS,Δ=VLSB=VFS2n.\boxed{V_o(D)=V_Z+\frac{D}{2^n}V_{FS}}, \qquad \boxed{\Delta=V_{LSB}=\frac{V_{FS}}{2^n}}.

For VZ=0V_Z=0 and VFS=VrefV_{FS}=V_{ref},

Vo=Vref(bn−12+bn−24+⋯+b02n).\boxed{V_o=V_{ref}\left(\frac{b_{n-1}}2+\frac{b_{n-2}}4+ \cdots+\frac{b_0}{2^n}\right)}.

The reference is the measuring scale, not generally the supply rail.

Ideal DAC transfer and binary weighting. An n-bit converter has 2^(n) output levels but only 2^(n) − 1 intervals between its end codes.

Ideal DAC transfer and binary weighting. An nn-bit converter has 2n2^n output levels but only 2n−12^n-1 intervals between its end codes.

There are 2n2^n output levels but only 2n−12^n-1 transitions between end codes:

ideal step=VFS2n,maximum code=2n−1,maximum ideal output=VZ+(2n−1)Δ.\begin{gathered} \boxed{\text{ideal step}=\dfrac{V_{FS}}{2^n}},\qquad \boxed{\text{maximum code}=2^n-1},\\[4pt] \boxed{\text{maximum ideal output}=V_Z+(2^n-1)\Delta}. \end{gathered}

Thus a unity-scaled unipolar DAC reaches Vref−1 LSBV_{ref}-1\,\mathrm{LSB}, not VrefV_{ref}. Some data sheets instead call measured endpoint-to-endpoint distance the full-scale range and divide by 2n−12^n-1; a numerical solution must state the convention used.

For a required nominal step no larger than Δreq\Delta_{req},

nmin=⌈log⁡2 ⁣(VFSΔreq)⌉.\boxed{n_{min}=\left\lceil \log_2\!\left(\frac{V_{FS}}{\Delta_{req}}\right)\right\rceil}.

Each added bit doubles the levels and halves the ideal step at fixed span.

CodingTypical endpoint/zero mappingInterpretation
Straight binary00…0→00\ldots0\to minimum; 11…1→11\ldots1\to maximumAll bits have positive weights; usual unipolar coding.
Offset binaryMidscale 10…0→010\ldots0\to0Straight binary shifted by half scale; common bipolar interface.
Two’s complement00…0→000\ldots0\to0; MSB is signSigned integer Ds=−bn−12n−1+∑k=0n−2bk2kD_s=-b_{n-1}2^{n-1}+\sum_{k=0}^{n-2}b_k2^k.
ThermometerNumber of ones sets levelAdjacent ideal codes switch one unit element; used internally for monotonic MSBs.
Gray codeAdjacent words differ by one bitReduces simultaneous input transitions but normally requires decoding.

Common DAC input-code conventions.

For an ideal bipolar two’s-complement DAC with signed integer −2n−1≤Ds≤2n−1−1-2^{n-1}\le D_s\le2^{n-1}-1 and bipolar magnitude VBFSV_{BFS},

Vo=Ds2n−1VBFS.\boxed{V_o=\frac{D_s}{2^{n-1}}V_{BFS}}.

The most-negative code reaches −VBFS-V_{BFS}, whereas the most-positive code is one LSB below +VBFS+V_{BFS}. Offset binary gives the same ordered levels after the midscale code is subtracted.

Zero-Order Hold and Reconstruction Filtering

Section titled “Zero-Order Hold and Reconstruction Filtering”

A clocked DAC accepts code D[k]D[k] at update instants kTukT_u and normally holds the corresponding analog level until the next update:

vZOH(t)=∑k=−∞∞Vo[k][u(t−kTu)−u(t−(k+1)Tu)].v_{ZOH}(t)=\sum_{k=-\infty}^{\infty}V_o[k] \bigl[u(t-kT_u)-u(t-(k+1)T_u)\bigr].

A DAC normally holds each code for one update period T_(u). The reconstruction filter passes the wanted baseband and suppresses update images, steps and switching energy; it cannot correct static DAC nonlinearity.

A DAC normally holds each code for one update period TuT_u. The reconstruction filter passes the wanted baseband and suppresses update images, steps and switching energy; it cannot correct static DAC nonlinearity.

The hold pulse h0(t)=u(t)−u(t−Tu)h_0(t)=u(t)-u(t-T_u) has frequency response

HZOH(f)=Tue−jπfTusin⁡(πfTu)πfTu.\boxed{H_{ZOH}(f)=T_u e^{-j\pi fT_u} \frac{\sin(\pi fT_u)}{\pi fT_u}}.

The staircase therefore has sinc amplitude droop and spectral images near integer multiples of fuf_u. A reconstruction low-pass filter passes the desired baseband and attenuates these images. For baseband bandwidth BB, choosing fu>2Bf_u>2B leaves a practical filter transition band; oversampling relaxes it.

Update rate, settling time and output bandwidth are different. A DAC may accept codes rapidly yet fail to settle accurately after every full-scale change. Conversely, wide small-signal bandwidth does not guarantee adequate full-scale slew rate.

Let V[D]V[D] be settled output and Δ=VFS/2n\Delta=V_{FS}/2^n. The actual step is

SD=V[D+1]−V[D],0≤D≤2n−2,S_D=V[D+1]-V[D],\qquad 0\le D\le2^n-2,

so

DNL[D]=SDΔ−1.\boxed{DNL[D]=\frac{S_D}{\Delta}-1}.

After the stated zero/gain treatment,

INL[D]=V[D]−Vline[D]Δ,\boxed{INL[D]=\frac{V[D]-V_{line}[D]}{\Delta}},

where VlineV_{line} is an endpoint or best-fit reference line.

Representative DAC static errors. DNL measures each actual step relative to one ideal LSB; INL measures output departure from a specified straight reference line after the stated offset/gain treatment.

Representative DAC static errors. DNL measures each actual step relative to one ideal LSB; INL measures output departure from a specified straight reference line after the stated offset/gain treatment.

SpecificationDefinitionConsequence
Zero-code errorV[0]−Videal[0]V[0]-V_{ideal}[0]Nearly constant translation; may consume output headroom.
Offset errorBipolar zero displacement under stated codingCreates output at nominal zero code.
Gain errorEnd-scale slope error after zero removalError grows with code; reference calibration may reduce it.
DNLActual step minus one ideal LSBDetermines local step uniformity and monotonicity margin.
INLOutput departure from specified straight lineLimits absolute waveform accuracy and creates distortion.
MonotonicityOutput never reverses as code increasesEssential in control loops and programmable bias.
TUEWorst unadjusted output error under stated conditionsCombines specified uncalibrated static terms.
Temperature driftError change, often ppm/∘^\circCSets calibration stability over temperature.

Principal static DAC specifications.

For an increasing-output DAC,

DNL[D]≥−1 LSB⇒SD≥0\boxed{DNL[D]\ge-1\,\mathrm{LSB}\Rightarrow S_D\ge0}

guarantees nondecreasing output; DNL>−1DNL>-1 guarantees every step is positive. A positive DNL above +1+1 does not itself break monotonicity. A DAC cannot have an unavailable input code; the relevant failure is a zero, reverse or badly sized analog step.

DAC transition behavior. Settling time includes delay, slew and ringing; glitch impulse measures transient error area when internal switches do not change simultaneously.

DAC transition behavior. Settling time includes delay, slew and ringing; glitch impulse measures transient error area when internal switches do not change simultaneously.

QuantityMeaningImportant distinction
Update rate fuf_uMaximum accepted codewords per secondDoes not guarantee full-scale settling at every update.
Propagation delayInput latch to start of output responseOnly one component of settling time.
Slew rateMaximum large-signal output slopeLimits rapid large-amplitude transitions.
Settling time tst_sTime to enter and remain in stated bandMust name step, load and band, e.g. ±0.5\pm0.5 LSB.
Glitch impulse AgA_gIntegrated transient error at transitionOften worst at major carry such as 0111→10000111\to1000.
Digital feedthroughTransient without a code changeCouples through switches, package and substrate.
Output noise densityRandom output noise per Hz\sqrt{\mathrm{Hz}}Integrate over effective noise bandwidth.
SFDRFundamental-to-largest-spur ratioCaptures worst spur, not total noise.
THD / SINADHarmonic distortion / signal to noise plus distortionMeasures waveform fidelity.

Dynamic DAC specifications.

Settling contains dead time, slew-limited motion, linear settling and ringing. Crossing final value is insufficient: output must remain in the specified band. Glitch energy comes from unequal switch delay, charge injection and simultaneous bit changes. A deglitching sample-and-hold adds delay, droop and its own noise. For approximately white output-noise density ene_n over bandwidth BNB_N,

Vn,rms≃enBN.\boxed{V_{n,rms}\simeq e_n\sqrt{B_N}}.

Principal DAC architecture families. Practical ICs often combine families, for example thermometer-coded current-source MSBs with binary LSBs.

Principal DAC architecture families. Practical ICs often combine families, for example thermometer-coded current-source MSBs with binary LSBs.

No architecture is universally best. Selection depends on resolution, monotonicity, update and settling rate, glitch energy, output type and compliance, static power, silicon area, reference loading and calibration.

Normalized four-bit binary-weighted resistor DAC. Each switch applies V_(ref) or ground; exponentially increasing branch resistances create the binary current weights.

Normalized four-bit binary-weighted resistor DAC. Each switch applies VrefV_{ref} or ground; exponentially increasing branch resistances create the binary current weights.

For branch resistances R,2R,…,2n−1RR,2R,\ldots,2^{n-1}R feeding an ideal virtual ground,

IΣ=VrefR(bn−1+bn−22+⋯+b02n−1).I_\Sigma=\frac{V_{ref}}{R}\left(b_{n-1}+\frac{b_{n-2}}2+ \cdots+\frac{b_0}{2^{n-1}}\right).

An inverting transimpedance stage gives

Vo=−RfIΣ.V_o=-R_fI_\Sigma.

Choosing Rf=R/2R_f=R/2 produces the normalized law

Vo=−VrefD2n.\boxed{V_o=-V_{ref}\frac{D}{2^n}}.

The circuit is direct and fast, but an nn-bit implementation needs resistor values spanning RR through 2n−1R2^{n-1}R. Ratio tolerance, switch resistance and parasitic capacitance affect branches unequally; reference current is code-dependent. This makes high-resolution matching and settling difficult.

Four-bit R–2R ladder DAC. Repeating identical sections creates binary weights while requiring only the ratio R : 2R, which greatly eases matching and IC fabrication.

Four-bit R–2R2R ladder DAC. Repeating identical sections creates binary weights while requiring only the ratio R:2RR{:}2R, which greatly eases matching and IC fabrication.

The termination and every repeated section present the same equivalent resistance when viewed toward the LSB end. Current arriving at each junction therefore divides by two, producing weights 1/2,1/4,…,1/2n1/2,1/4,\ldots,1/2^n. With the shown current-mode polarity and transimpedance scaling,

Vo=−Vref(bn−12+bn−24+⋯+b02n)=−VrefD2n.\boxed{V_o=-V_{ref}\left(\frac{b_{n-1}}2+\frac{b_{n-2}}4+ \cdots+\frac{b_0}{2^n}\right)=-V_{ref}\frac{D}{2^n}}.

Only the ratio R:2RR{:}2R must match, so process tracking is much better than for an exponential resistor set. Input resistance and switching transients are more uniform, but resistor-ratio error, switch on-resistance, op-amp settling and ladder capacitance still limit high-resolution speed. Voltage-mode ladders can reverse the orientation and buffer a Thevenin output instead of summing current.

Three-bit resistor-string DAC. A decoder-controlled analog multiplexer selects one of eight ordered taps; positive resistor segments make the ideal architecture inherently monotonic.

Three-bit resistor-string DAC. A decoder-controlled analog multiplexer selects one of eight ordered taps; positive resistor segments make the ideal architecture inherently monotonic.

A string of 2n2^n equal positive resistors creates ordered taps

Vk=k2nVref,k=0,1,…,2n−1.\boxed{V_k=\frac{k}{2^n}V_{ref}},\qquad k=0,1,\ldots,2^n-1.

A binary decoder and analog multiplexer select tap DD. Because physical tap voltages remain ordered when all segment resistances are positive, the basic architecture is inherently monotonic. DNL follows individual segment mismatch; buffer offset and switch resistance add code-dependent error.

If each segment is RR, string current is

Istring=Vref2nR.I_{string}=\frac{V_{ref}}{2^nR}.

Before buffering, tap resistance is approximately

Rout(D)=(DR)∥((2n−D)R),R_{out}(D)=(DR)\parallel\bigl((2^n-D)R\bigr),

which is largest near midscale. The exponential number of resistors, taps, switches and decoder lines limits resolution, but monotonicity and low glitch make string DACs attractive for trimming, references and display drivers.

Charge-redistribution capacitor DAC. Binary capacitor ratios replace resistor ratios; CMOS implementations offer negligible static reference current but require accurate capacitor matching and careful switching.

Charge-redistribution capacitor DAC. Binary capacitor ratios replace resistor ratios; CMOS implementations offer negligible static reference current but require accurate capacitor matching and careful switching.

For binary capacitors 2n−1C,…,C2^{n-1}C,\ldots,C plus dummy CC, total capacitance is 2nC2^nC. Charge conservation after bottom-plate switching gives

Vo=VrefD2n\boxed{V_o=V_{ref}\frac{D}{2^n}}

for the ideal polarity shown. Capacitors draw essentially no static DC reference current, integrate naturally with CMOS switches and can also sample an input, which is why charge-redistribution arrays dominate SAR ADCs.

The unsplit array area and switching energy grow exponentially with nn. Capacitor mismatch, parasitic top-plate capacitance, switch charge injection, reference settling and kT/CkT/C noise limit accuracy. Split or bridged arrays, monotonic switching sequences and calibration reduce area or switching energy.

ArchitectureMain meritScaling costDominant limits
Binary weighted RRDirect, simple and fastResistor spread 2n−1:12^{n-1}{:}1Ratio and switch-resistance error
R–2R2ROnly RR and 2R2R; regular layoutO(n)O(n) sectionsRatio, parasitic settling, op-amp
Resistor stringInherently monotonic, low glitch2n2^n segments and tapsSegment mismatch, mux, tap resistance
Capacitor arrayNear-zero static current, CMOS friendlyBinary area/energy without splittingMatching, parasitics, kT/CkT/C, reference settling

Comparison of passive-element DAC architectures.

Prevention: (1) place an analog anti-alias LPF before the sampler; (2) set its passband to the wanted signal and attenuate components above fs/2f_s/2; (3) sample above the theoretical Nyquist rate; (4) leave a guard band for filter roll-off. Once two analog frequencies produce the same sample sequence, no digital filter can separate them.

Oversampling (fs≫2fmf_s\gg 2f_m) relaxes the analog filter, spreads quantization noise over a wider spectrum and enables digital decimation. Accidental undersampling violates fs≥2fmf_s\ge 2f_m and aliases destructively. Bandpass sampling can sample a narrow RF band below twice its highest carrier if a valid condition is met and a sharp preselector prevents other bands from folding in — this is not permission to violate the Nyquist condition for arbitrary baseband signals.

Telephone speech is limited to ≈3.4 kHz\approx3.4\,kHz, so fNyquist=2(3.4)=6.8 kHzf_{\text{Nyquist}}=2(3.4)=6.8\,kHz. Standard telephony uses 8 kHz8\,kHz, giving a 4 kHz4\,kHz Nyquist frequency and a transition band between 3.43.4 and 4 kHz4\,kHz.

Sampling waveforms: dashed input, ideal impulse samples (stems), and a flat-top (held) staircase; natural sampling would gate the input with finite-width pulses whose tops follow the signal.

Sampling waveforms: dashed input, ideal impulse samples (stems), and a flat-top (held) staircase; natural sampling would gate the input with finite-width pulses whose tops follow the signal.

Ideal / impulse sampling multiplies the signal by an impulse train xs(t)=x(t)∑nδ(t−nTs)x_s(t)=x(t)\sum_n\delta(t-nT_s): exact values, but a mathematical model. Natural sampling gates the signal with finite-width pulses whose tops follow the input; realizable but the ADC input still changes. Flat-top sampling uses a sample-and-hold to keep one constant value over the aperture — the standard ADC waveform; finite hold width gives a sinc-shaped aperture effect. This predictable passband droop can be corrected when necessary with aperture equalization (inverse-sinc compensation) over the signal band.

TypePulse topStatusMain issue
IdealZero-width impulseModel onlyNot realizable
NaturalFollows inputRealizableInput still changing
Flat-topConstant held valueStandard ADCAperture / sinc droop

Comparison of the three sampling methods.

A sample-and-hold (S/H) circuit captures the input voltage at a selected instant and holds it nearly constant while the ADC completes conversion.

Sample-and-hold: analog switch charges hold capacitor C_(H) during track, a high-impedance buffer isolates it during hold; the output tracks then holds each sampled value.

Sample-and-hold: analog switch charges hold capacitor CHC_H during track, a high-impedance buffer isolates it during hold; the output tracks then holds each sampled value.

  • Sample/track mode: switch closed, CHC_H charges toward vi(t)v_i(t); output follows the input.

  • Hold mode: switch open, CHC_H retains charge; the buffer draws little charge through its high input impedance and presents low output impedance to drive the ADC, so vo≈vi(ts)v_o\approx v_i(t_s).

Why required: an ADC takes finite time to compare and encode. If the input changes during that interval, different bit decisions correspond to different input values; holding removes this dynamic conversion error.

SpecificationMeaning
Acquisition timeTime after switch closure to settle within the error band
Aperture delayDelay from sampling command to actual disconnection
Aperture jitterUncertainty in the sampling instant (critical at high finf_{in})
Droop rateRate the held voltage changes due to leakage
Hold step / pedestalOutput jump from switch charge injection at hold
FeedthroughInput/clock coupling to output during hold
Settling accuracyError band reached before conversion begins

Sample-and-hold specifications.

For a sinusoidal input, RMS aperture jitter σt\sigma_t imposes the approximate SNR limit

Quantization maps every held sample to the nearest member of a finite set of amplitude levels.

Uniform quantizer: staircase input-output characteristic (top) and e_(q) = x − x_(q) bounded by ±Δ/2, with resets at the same thresholds (bottom).

Uniform quantizer: staircase input-output characteristic (top) and eq=x−xqe_q=x-x_q bounded by ±Δ/2\pm\Delta/2, with resets at the same thresholds (bottom).

With the convention eq=x−xqe_q=x-x_q, rounding to the nearest reconstruction level gives the following ideal bounds and mean-square model.

Some data sheets use endpoint spacing VFS/(2n−1)V_{FS}/(2^n-1); use the convention stated in the question. Modelling eqe_q as uniform and uncorrelated gives σq2=1Δ∫−Δ/2Δ/2e2 de=Δ2/12\sigma_q^2=\frac{1}{\Delta}\int_{-\Delta/2}^{\Delta/2}e^2\,\mathrm{d}e=\Delta^2/12.

For a bipolar range −Vp-V_p to +Vp+V_p: VFS=2VpV_{FS}=2V_p, Δ=2Vp/2n\Delta=2V_p/2^n. Signal power for x(t)=Vpsin⁡ωtx(t)=V_p\sin\omega t is S=Vp2/2S=V_p^2/2, and noise power Nq=112(2Vp/2n)2N_q=\frac{1}{12}(2V_p/2^n)^2. Therefore

SNq=Vp2/2(1/12)(2Vp/2n)2=32 22n.\frac{S}{N_q}=\frac{V_p^2/2}{(1/12)(2V_p/2^n)^2}=\frac{3}{2}\,2^{2n}.

Every added bit ideally improves SQNR by ≈6 dB\approx6\,dB. A sub-full-scale sine has the same step but less power, so its SQNR falls by the back-off in dB.

FeatureUniformNonuniform
Step sizeConstantSmall near zero, larger at high amplitude
ConceptDirect uniform ADCCompressor + uniform ADC, or variable thresholds
Weak-signal SQNRPoorerBetter
Main useGeneral measurementSpeech PCM

Uniform versus nonuniform quantization.

Companding combines compression at the transmitter with complementary expansion at the receiver, approximating nonuniform quantization while using a uniform quantizer internally. Speech spends much time at low amplitudes; compression enlarges the relative spacing of weak samples, reducing their fractional quantization error.

Companding chain: compressor and uniform quantizer/encoder at the transmitter; decoder and complementary expander at the receiver.

Companding chain: compressor and uniform quantizer/encoder at the transmitter; decoder and complementary expander at the receiver.

μ\mu-law is used in North American / Japanese PCM; A-law in European / international E1 systems. The exact SQNR benefit depends on signal level and implementation; companding redistributes quantization error but does not eliminate quantization noise.

μ-law and piecewise A-law compression curves: A-law is linear for 0 ≤ |x| < 1/A and logarithmic above 1/A; both enlarge low-level input spacing relative to the linear (dashed) response.

μ\mu-law and piecewise A-law compression curves: A-law is linear for 0≤∣x∣<1/A0\le\left\lvert x\right\rvert<1/A and logarithmic above 1/A1/A; both enlarge low-level input spacing relative to the linear (dashed) response.

FeatureA-lawμ\mu-law
ParameterA=87.6A=87.6μ=255\mu=255
RegionEurope / internationalN. America / Japan
Approximation-segment-segment
Small-signal compressionSlightly lessSlightly greater

A-law versus μ\mu-law companding.

An ADC compares a held analog value with reference levels and encodes the result as a digital word. For an ideal unipolar converter, the nominal input range is 0≤Vin<Vref0\le V_{in}<V_{ref} and the unsigned output range is 0≤D≤2n−10\le D\le 2^n-1.

Thus Vin≤0V_{in}\le0 clamps to the minimum code, while Vin≥VrefV_{in}\ge V_{ref} clamps to the maximum code 2n−12^n-1; in particular, Vin=VrefV_{in}=V_{ref} cannot produce the nonexistent code 2n2^n.

For a sinusoidal test, the standard ENOB relation is

SpecificationMeaning
ResolutionOne LSB or 1/2n1/2^n of full-scale span
Conversion timeTime from conversion start to valid output
ThroughputMaximum complete conversions per second
Offset errorHorizontal shift of the transfer characteristic
Gain errorFull-scale slope error measured after offset removal
DNL / INLCode-bin width error / deviation from ideal line
Missing codeAn output code never produced
SNR / SINAD / ENOBNoise, noise+distortion, effective resolution

Core ADC specifications.

Taxonomy of the five principal ADC architectures.

Taxonomy of the five principal ADC architectures.

An nn-bit flash ADC uses a resistor ladder, 2n−12^n-1 comparators and a priority encoder: the ladder creates all thresholds, comparators compare VinV_{in} simultaneously to give a thermometer code, and the encoder produces binary. It is the fastest type (one comparison interval) but comparator count, input capacitance, power and cost grow exponentially — an 8-bit flash needs 255255 comparators. Used in oscilloscopes, radar and direct RF/IF sampling.

Flash ADC: resistor ladder and a bank of parallel comparators feed a priority encoder.

Flash ADC: resistor ladder and a bank of parallel comparators feed a priority encoder.

A counter from zero drives a DAC; a comparator checks VDACV_{DAC} against VinV_{in} and counting stops when VDAC≥VinV_{DAC}\ge V_{in}. Worst case needs ≈2n−1\approx 2^n-1 clock periods and conversion time depends on input amplitude — simple but slow.

Counter ADC: a counter drives a DAC whose output is compared with V_(in) in a feedback loop.

Counter ADC: a counter drives a DAC whose output is compared with VinV_{in} in a feedback loop.

A SAR ADC performs a binary search on the held input: the S/H freezes VinV_{in}; the SAR tentatively sets the MSB; the DAC converts the trial code; if VDAC≤VinV_{DAC}\le V_{in} the bit is kept, else cleared; the next bit is tested down to the LSB. It takes a fixed nn cycles regardless of amplitude, giving a strong speed-resolution-power balance (MCUs, instrumentation).

SAR ADC: comparator, feedback DAC and successive-approximation register run an MSB-to-LSB binary search on the held input.

SAR ADC: comparator, feedback DAC and successive-approximation register run an MSB-to-LSB binary search on the held input.

Two integration phases: integrate unknown VinV_{in} for a fixed TintT_{int}, then apply an opposite reference and count TdeintT_{deint} to return to zero.

The result depends on time and reference accuracy, not the absolute RCRC; integrating over whole mains periods gives excellent 50/60 Hz50/60\,Hz rejection. Slow — widely used in digital multimeters.

Dual-slope ADC: integrator, zero comparator and control/counter integrate up on V_(in) then down on V_(ref).

Dual-slope ADC: integrator, zero comparator and control/counter integrate up on VinV_{in} then down on VrefV_{ref}.

Oversampling far above Nyquist, a feedback loop forcing average 1-bit DAC output to track the input, noise shaping that pushes quantization noise to high frequencies, and a digital decimation LPF removing out-of-band noise. Very high resolution for audio, sensors and precision measurement, with latency.

First-order sigma-delta ADC: summing node, integrator, 1-bit quantizer, 1-bit DAC feedback and a digital decimation filter.

First-order sigma-delta ADC: summing node, integrator, 1-bit quantizer, 1-bit DAC feedback and a digital decimation filter.

TypeSpeedResolutionApplication
FlashVery highLow–medOscilloscope, RF DAQ
CounterLowMediumLow-cost control
SARMed–highMed–highMCU, instrumentation
Dual slopeLowHighDigital multimeter
Sigma-deltaLow BWVery highAudio, sensor, precision

ADC architecture comparison (speed / resolution trade-offs).