AMS Class

Binary vs redundant SAR

One sampled input, one comparator, one capacitor array. Only the weights differ.

Resolution
bits
Model notes

ADCToolbox. The conversion, capacitor mismatch, calibration and spectrum analysis are ports of ADCToolbox 0.9.1 and agree with it to 0.001 ENOB.

Conversion. Comparison j adds weight wj to the DAC level kept so far and keeps it when the input is not lower. The code is the sum of the kept nominal weights.

Weights. Binary: wj = 2N−1−j. Redundant: integers shrinking by a radix of 1.8 that add up to 2N − 1; at 16 bits this is the weight set of the ADCToolbox examples. A comparison that wrongly drops its weight is recovered while the input stays within the later weights plus one LSB.

Capacitor mismatch. Weight wj is built from wj/wmin unit capacitors, each with relative mismatch σ, so its relative error is σ/√units. New chip draws another set of errors.

Comparator noise. Gaussian, drawn anew for every decision. The stepped conversion uses one draw; New noise replaces it.

Calibration. Sine-fit weight calibration: a least-squares fit of the bit columns plus an offset to a unit sine at the known frequency 499/4096 fs, rescaled to the nominal weight sum. The spectra use a second tone at 613/4096 fs, so the weights are tested on data they were not fitted to.

Spectrum. 4096 conversions of a −0.5 dBFS sine, rectangular window. ENOB = (SNDR − 1.76) / 6.02. The largest spur is labelled with its harmonic order when it is one.

Input frequency. None of these errors depend on it: every conversion works on a held sample, so another tone frequency only moves the harmonics.

V
14/14
Impairments, same for both
10.0 %
0.20 LSB
Binary SAR
wj+1 = wj / 2
12 comparisons · no redundancy
code 2815 ideal 2821 off by −6 LSB lost at comparison 5
Redundant SAR
wj+1 wj / 1.8
14 comparisons · first step has 456 LSB of margin
code 2820 ideal 2821 off by −1 LSB recoverable
Vx1204810245122561286432168421
Vx1182010115623121739654301795321
BinarySuccessive approximationresidue, log scale reachableVin lostwrong bit
04−416−1664−64256−2561024 LSB−1024Vin1102130415161718191101111121314
RedundantSuccessive approximationresidue, log scale reachableVin lostwrong bit
04−416−1664−64256−2561024 LSB−1024Vin110213140516070819110011112013114
BinaryUncalibrated ENOB 8.76 · SFDR 62.3 dB
−120−100−80−60−40−20000.10.20.30.40.5 fsdBFS−62.8 dBFS
BinaryCalibrated ENOB 10.95 · SFDR 87.7 dB
−120−100−80−60−40−20000.10.20.30.40.5 fsdBFS−88.2 dBFS
RedundantUncalibrated ENOB 9.19 · SFDR 64.4 dB
−120−100−80−60−40−20000.10.20.30.40.5 fsdBFSH3 −64.9 dBFS
RedundantCalibrated ENOB 11.72 · SFDR 96.7 dB
−120−100−80−60−40−20000.10.20.30.40.5 fsdBFS−97.2 dBFS