Flash ADCs

Download as pdf or txt
Download as pdf or txt
You are on page 1of 60

Department of Electrical and Computer Engineering

Flash ADCs

Vishal Saxena, Boise State University


([email protected])

© Vishal Saxena -1-


Flash ADC Architecture

Vi • Reference ladder
VFS consists of 2N equal
7

size resistors
6 • Input is compared
6Δ to 2N-1 reference
5
voltages

Encoder

• Massive parallelism
2Δ • Very fast ADC
1
architecture
Δ
0 • Latency = 1 Ts =
Do 0 1/fs
• Throughput = fs
• Complexity = 2N

© Vishal Saxena -2-


Thermometer Code

VFS Vi Strobe Thermometer code


fs
0

2N-1
comparators

© Vishal Saxena -3-


Thermometer Code

VFS Vi Strobe Thermometer code b2 b1 b0

fs
0 1
111

1 0
110

1 1
010

1 1
001

000
N
2 -1 1-of-n code
comparators
ROM encoder

© Vishal Saxena -4-


Flash ADC Challenges

• VDD = 1.8 V
• 10-bit → 1023 comparators
• VFS = 1 V → 1 LSB = 1 mV
• DNL < 0.5 LSB → Vos < 0.5 LSB
• 0.5 mV = 3-5 σ → σ = 0.1-0.2 mV

• 2N-1 very large comparators


• Large area, large power consumption
• Very sensitive design
• Limited to resolutions of 4-8 bits

© Vishal Saxena -5-


Flash ADC Challenges

• DNL < 0.5 LSB


• Large VFS relaxes
offset tolerance
os, max

• Small VFS benefits


conversion speed
(settling, linearity of
building blocks)

© Vishal Saxena -6-


ADC Input Capacitance

A Vth2
σ  Vth  
2
Cg  10 fF / μm2
WL

• N = 6 bits → 63 comparators
N (bits) # of comp. Cin (pF)
• VFS = 1 V → 1 LSB = 16 mV
6 63 3.9
• σ = LSB/4 → σ = 4 mV
8 255 250
• AVT0 = 10 mV·μm → L = 0.24 μm,
10 1023 ??!
W = 26 μm

• Small Vos leads to large device sizes, hence large area and power
• Large comparator leads to large input capacitance, difficult to drive and difficult to
maintain tracking bandwidth

© Vishal Saxena -7-


Fully-Differential Architecture

• VFS doubled
• 3-dB gain in SNR
• Better CMRR
• Noise immunity
• Input feedthrough

Encoder
cancelled
• Cin nonlinearity
partially removed
• Effect of Vcmi diff.
mitigated

© Vishal Saxena -8-


Flash ADC Design Considerations

• Use a dedicated S/H (or T/H) for better dynamic performance


– Can be avoided when using the A/D inside a ΔΣ loop
• Large input range for the quantizer has several benefits
– Increased step-size (VLSB) relaxes offset requirements on the comparators
– Reduced matching requirements result in small input cap to the S/H, easier to
drive
– Reduced input cap results in smaller clock routing parasitics – power savings in
clock drivers
• Comparator Design
– See comparator design slides

© Vishal Saxena -9-


Flash ADC: Reference Ladder

• Differential reference ladder


• Decaps on the reference taps
– large RC time-constant will not allow
reference restoration after kickback noise
– Small R will lead to power dissipation
– Optimize RC

• Subtract references from the input in


a differential manner
– Several topologies

• Several architectures for the digital


backend
– May need to pipeline digital logic at high
sampling rates >500 MS/s

© Vishal Saxena -10-


Reference Generator (for Vrefp and Vrefm)

© Vishal Saxena -11-


Flash ADC: Reference Subtraction

© Vishal Saxena -12-


Reference Subtraction: Scheme I

• Employ reference ladder for subtraction


• Choose current (I) such that differential
voltage drop across R = 1 VLSB
• Ladder is part of the signal path
– Comparator input cap load the resistor taps
– Excess delay

© Vishal Saxena -13-


Reference Subtraction: Scheme II

• Source followers to buffer vin


– reduced swing, varies with PVT

• Ladder is part of the signal path


– Comparator input cap load the resistor taps
– Excess delay

© Vishal Saxena -14-


Reference Subtraction: Scheme III
• Differential difference amplifier for
subtracting the reference
– followed by a zero crossing detector

• Relaxes the impedance requirements on


the ladder
• Mismatch in differential pairs and tail
current sources results in comparator
offset
– current trimming (see the reference below)

• Finite BW of the amplifier causes excess


delay

© Vishal Saxena -15-


Reference Subtraction: Scheme IV

• Switched-capacitor reference
subtraction
– Pay attention to charge injection

• ADC can handle large input swing


• Slow when auto-zeroing preamp is
used
– Large settling time constant
– Reference subtraction in background

© Vishal Saxena -16-


Example: Fully-Differential Comparator

• Double-balanced, fully-differential preamp


• Switches (M7, M8) added to stop input propagation during regeneration
• Active pull-up PMOS added to the latch

© Vishal Saxena -17-


Flash ADC: Errors

© Vishal Saxena -18-


Flash ADC Errors

• SHA-less
• Signal and
clock propa-
gation delay
• 2N-1 PAs +

Encoder
latches must
be matched
• Synchronized
strobe signal
is critical

Going parallel is fast, but also gives rise to inherent problems…

© Vishal Saxena -19-


Preamp Input Common Mode

PA 1 PA j PA j+1

S1 Sj

Vi

VR1 VRj
1 j
VR  VR

Input CM difference creates systematic mismatch (offset, gain, Cin, tracking BW,
and CMRR) among preamps

© Vishal Saxena -20-


Sampling Aperture Error

M3 M4 M5 M6

Cgd1 Cgd2 Φ
Φ Mode
M1 M2 VR
Vin Vo+ Vo- “high” Track
RS M9
Cgs1 Cgs2
“low” Regen

CS M7 M8

• Preamp delay and Vth of sampling switch (M9) are both signal-dependent → signal-
dependent sampling point (aperture error)
• A major challenge of distributing clock signals across 2N-1 comparators in flash ADC
with minimum clock skew (routing, Vth mismatch of M9, etc.)

© Vishal Saxena -21-


Nonlinear Input Capacitance

in
S
out
out

in
in out

Signal-dependent input bandwidth (1/RSCin) introduces distortion

© Vishal Saxena -22-


Input Signal Feedthrough

Vi
M3 M4

M1 M2 VRj
Vin RS
Cgs1 Cgs2

Feedthrough of Vin to the reference ladder through the serial connection of Cgs1 and
Cgs2 disturbs the reference voltages

© Vishal Saxena -23-


Comparator Metastability

Assuming that the input is uniformly


distributed over VFS, then

Δ
BER 
1LSB

Vo t   Vi 0   A V1A V2  expt  gm /CL 

• Cascade preamp stages (typical flash comparator has 2-3 PA stages)


• Use pipelined multi-stage latches; PA can be pipelined too
• Avoid branching off comparator logic outputs

© Vishal Saxena -24-


Comparator Metastability

Logic levels can be misinterpreted by digital gates (branching off, diff. outputs)

© Vishal Saxena -25-


Bubbles (Sparkles) in Thermometer Code

Vi 1 1 0

1 0
100

0 1
011

1 0
010

Static/dynamic comparator errors cause bubbles in thermometer code

© Vishal Saxena -26-


Bubbles (Sparkles)

Comparator offset Timing error

© Vishal Saxena -27-


Bubble-Tolerant Boundary Detector

• 3-input NAND
• Detect “011” instead
of “01” only
• “Single” bubble
correction
• Biased correction

Ref: J. G. Peterson, “A monolithic video A/D converter,” IEEE Journal of Solid-State


Circuits, vol. 14, pp. 932-937, issue 6, 1979.

© Vishal Saxena -28-


Built-In Bias

A B C D
0 0 0 0
0 0 0 0 “011” “001”
Case
0 0 1 0 Det. Det.
0 0 0 1 A  
1
1 0 0 1
2 B Fail 
0 1 1 0
3 1 1 1 0 C  Fail
1 0 1 1
1 1 1 1 D Fail Fail
1 1 1 1

Inspecting more neighboring comparator outputs improves performance

© Vishal Saxena -29-


Majority Voting Logic
*
C j  C j1C j  C jC j1  C j1C j1

A B C D
0 0 0 0
0 0 0 0 “011” Majority
Case
0 0 1 0 Det. voting
0 0 0 1 A  
1
1 0 0 1
2 B Fail 
0 1 1 0
3 1 1 1 0 C  
1 0 1 1
1 1 1 1 D Fail Fail
1 1 1 1

Ref: C. W. Mangelsdorf, “A 400-MHz input flash converter with error correction,” IEEE
Journal of Solid-State Circuits, vol. 25, pp. 184-191, issue 1, 1990.

© Vishal Saxena -30-


Gray Encoding

G1  T1 T3  T5 T7
G2  T2 T6
G3  T4

Only one transition


b/t adjacent codes

• One comparator output is ONLY used once → No branching!


• Gray encoding fails benignly in the presence of bubbles
• Codes are also robust over metastability errors

© Vishal Saxena -31-


Gray Encoding

G1  T1 T3  T5 T7
Conversion of Gray code to binary code is quite time-
G2  T2 T6 consuming → “quasi” Gray code
G3  T4

Ref: Y. Akazawa, et al., “A 400MSPS 8b flash AD conversion LSI,” in IEEE


International Solid-State Circuits Conference, Dig. Tech. Papers, 1987, pp. 98-99.

© Vishal Saxena -32-


Flash ADC: Binary Decoders

© Vishal Saxena -33-


Gray Encoded ROM Decoder

© Vishal Saxena -34-


Wallace Tree Adder (1s Adder)

© Vishal Saxena -35-


Folded Wallace Tree Decoder

© Vishal Saxena -36-


MUX-based Decoder

© Vishal Saxena -37-


Comparison of Decoder Schemes

• Mostly custom design at higher speeds


• Pipeline the digital backend at high-sampling rates to meet clock timing
• Tpd<TCK-(tpcq+tsetup)
• Tcd>thold-tccq

© Vishal Saxena -38-


Flash ADC: Other Techniques

© Vishal Saxena -39-


Offset Averaging (1)

© Vishal Saxena -40-


Offset Averaging (2)

© Vishal Saxena -41-


Flash ADC with Averaging

© Vishal Saxena -42-


Offset Calibration

© Vishal Saxena -43-


Comparator with Offset Correcting DAC

© Vishal Saxena -44-


High-Performance Flash with Calibration (1)

© Vishal Saxena -45-


Comparator Redundancy (1)

© Vishal Saxena -46-


Comparator Redundancy (2)

© Vishal Saxena -47-


Stochastic Flash ADC

• Fully synthesized ADC using ‘digital’ comparator


cells (large offsets)
• Use more than 1 comparator for a reference
threshold
– Use ‘detection theory’ to make accurate decisions
around a threshold, by using more than one
observation
• Low speed designs (<20 MS/s)

© Vishal Saxena -48-


Flash ADC: Case Study

© Vishal Saxena -49-


Case Study: Distortion Compensating Flash ADC

© Vishal Saxena -50-


T/H Distortion

© Vishal Saxena -51-


Pre-distorted References

© Vishal Saxena -52-


ADC Architecture

© Vishal Saxena -53-


T/H Circuit

© Vishal Saxena -54-


Comparator

© Vishal Saxena -55-


Non-linear Reference Generator

© Vishal Saxena -56-


ADC Testing

© Vishal Saxena -57-


Test Results

© Vishal Saxena -58-


Title

© Vishal Saxena -59-


References
1. Rudy van de Plassche, “CMOS Integrated Analog-to-Digital and Digital-to-Analog
Converters,” 2nd Ed., Springer, 2005.
2. M. Gustavsson, J. Wikner, N. Tan, CMOS Data Converters for
Communications, Kluwer Academic Publishers, 2000.

© Vishal Saxena -60-

You might also like