<<

EE247 Lecture 12 • Administrative issues § Midterm exam Oct. 20th o You can only bring one 8x11 paper with your own written notes (please do not copy) o No books, class or any other kind of handouts/notes, calculators, , PDA, cell phones.... o Midterm includes material covered to end of lecture 14

– EE247 final exam date has changed to: December 13th, 12:30-3:30 pm (group 2)- please check your other class finals to ensure no conflict

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 1

EE247 Lecture 12 Today: – Summary switched-capacitor filters – Comparison of various filter topologies – Data converters

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 2 SC Filter Summary

ü Pole and zero frequencies proportional to

– Sampling frequency fs – Capacitor ratios Ø High accuracy and stability in response Ø Long time constants realizable without large R, C ü Compatible with transconductance amplifiers – Reduced circuit complexity, power dissipation ü Amplifier bandwidth requirements less stringent compared to CT filters (low frequencies only) L Issue: Sampled-data filters à require anti- prefiltering

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 3

Summary Filter Performance versus Filter Topology

Max. Usable SNDR Freq. Freq. Bandwidth tolerance tolerance w/o tuning + tuning Opamp-RC ~10MHz 60-90dB +-30-50% 1-5%

Opamp- ~ 5MHz 40-60dB +-30-50% 1-5% MOSFET-C Opamp- ~ 5MHz 50-90dB +-30-50% 1-5% MOSFET-RC Gm-C ~ 100MHz 40-70dB +-40-60% 1-5%

Switched ~ 10MHz 40-90dB <<1% _ Capacitor

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 4 Data Converters

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 5

Material Covered in EE247 ü Filters – Continuous-time filters • Biquads & ladder type filters • Opamp-RC, Opamp-MOSFET-C, gm-C filters • Automatic frequency tuning – Switched capacitor (SC) filters • Data Converters – D/A converter architectures – A/D converter • ADC- Flash, Pipeline ADCs,…. • Oversampled converters • Self-calibration techniques • Systems utilizing analog/digital interfaces – Wireline communication systems- ISDN, XDSL… – communication systems- Wireless LAN, Cellular telephone,… – Disk drive – Fiber-optics systems

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 6 Data Converter Topics • Basic Operation of Data Converters – Uniform sampling and reconstruction – Uniform amplitude quantization • Characterization and Testing • Common ADC/DAC Architectures • Selected Topics in Converter Design – Practical Implementations – Desensitization to Analog Circuit Non-Idealities • Figures of Merit and Performance Trends

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 7

Suggested Reference Texts

• R. v. d. Plassche, CMOS Integrated Analog-to-Digital and Digital-to-Analog Converters, 2nd ed., Kluwer, 2003.

• B. Razavi, Data Conversion System Design, IEEE Press, 1995.

• S. Norsworthy et al (eds), Delta-Sigma Data Converters, IEEE Press, 1997. Extensive treatment of oversampled converters including stability, tones, bandpass converters.

• J. G. Proakis, D. G. Manolakis, Digital Processing, Prentice Hall, 1995.

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 8 Converter Applications

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 9

Example: Typical Cell Phone

Contains in integrated form: • 4 Rx filters • 4 Tx filters Dual Standard, I/Q • 4 Rx ADCs • 4 Tx DACs • 3 Auxiliary ADCs Audio, Tx/Rx power control, Battery charge • 8 Auxiliary DACs control, display, ... Total: Filters à 8 ADCs à 7 DACs à 12

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 10 Data Converter Basics

Analog Input

Analog • DSP is wonderful, but... Preprocessing Filters • Real world are analog: A/D ? – Continuous time Conversion – Continuous amplitude 000 DSP ...001... • DSP can only process: 110 – Discrete time D/A Conversion ? – Discrete amplitude à Need for data conversion from Analog Postprocessing Filters analog to digital and digital to

analog Analog Output

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 11

A/D & D/A Conversion

A/D Conversion

D/A Conversion

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 12 Data Converters

• Stand alone data converters – Used in variety of systems – Example: AD9235 12bit/ 65Ms/s ADC- Applications: • Ultrasound equipment • IF sampling in wireless receivers • Hand-held scopemeters • Low cost digital oscilloscopes

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 13

Data Converters • Embedded data converters – Cost, reliability, and performance à integration of data conversion interfaces along with DSPs – Main challenges • Feasibility of integrating sensitive analog functions in technologies optimized for digital performance • Down scaling of supply voltage • Interference & spurious signal pick-up from on-chip digital circuitry • Portable applications dictate low power consumption

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 14 D/A Converter Transfer Characteristics

MSB LSB • For an ideal digital-to-analog converter with uniform, binary b1 b2 b3 bn ……..… digital encoding & a unipolar output range from 0 to VFS V D/A 0 NNbi V=V=Dbi´=2Ni- ,bi0or1 0FSååi i==12 i1 whereN= #ofbits Example:N3= VFS = fullscaleoutput 210 D= LSBstepsize V0 =D(b1.2++b2.2b3.2 ) V D= FS 2N

Note:VV0(bi= 1,alli) =FS -D æö1 =VFS ç÷1- èø2N

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 15

Ideal D/A Transfer Characteristic Analog • Ideal DAC Output VFS introduces Ideal Response no error! • One-to-one mapping

from input VFS /2 to output Step Height (1LSB=D)

VFS /8

Digital Input 001 010 011 100 101 110 111 Code

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 16 A/D Converter Transfer Characteristic

• For an ideal analog-to-digital MSB LSB converter with uniform, binary b1 b2 b3 bm digital encoding & a unipolar ……..… input range for 0 to VFS V A/D in wherem= #ofbits VFS = fullscaleoutput D=stepsize V D= FS 2m

Note:DV(bi= 1,alli) ®FS -D æö1 ®VFS ç÷1- èø2m

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 17

Ideal A/D Transfer Characteristic Digital Output • Ideal ADC introduces error

àmax error = 111 (+ -1/2D) 110 m D= VFS /2 101 m= # of bits 100

• This error is 011 called 010 ``quantization 001 error`` 1LSB Analog 000 input D 2D 3D 4D 5D 6D 7D

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 18 Data Converter Performance Metrics

• Data Converters are typically characterized by static, time-domain, & performance metrics : – Static • Monotonicity • Offset • Full-scale error • Differential nonlinearity (DNL) • Integral nonlinearity (INL) – Dynamic • Delay, settling time • Aperture uncertainty • - harmonic content • Signal-to-noise ratio (SNR), Signal-to-(noise+distortion) ratio (SNDR) • Idle channel noise • & spurious-free dynamic range (SFDR)

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 19

What is a discrete time signal? qA signal that changes only at discrete time instances? qA continous time signal time multiplied with a train of infinitely narrow unit pulses? qA vector whose element indices correspond to discrete [1.2 2.0 2.5 0.1 ...] instances in time? qAll of the above?

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 20 Discrete Time Signals • A sequence of numbers (or vector) with discrete index time instants • Intermediate signal values not defined (not the same as equal to zero!) • Mathematically convenient, non-physical • We will use the term "sampled data" for related signals that occur in real, physical interface circuits

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 21

Typical Sampling Process CT Þ SD Þ DT

Continuous time Time Physical Signals Sampled Data (e.g. T/H signal)

Clock

"Memory Discrete Time Content"

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 22 Uniform Sampling

y(kT)=y(k)

t= 1T 2T 3T 4T 5T 6T ... k= 1 2 3 4 5 6 ... • Samples spaced T seconds in time

• Sampling Period T Û Sampling Frequency fs=1/T • Problem: Multiple continuous time signals can yield exactly the same discrete time signal (aliasing)

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 23

Summary Data Converters • ADC/DACs need to sample/reconstruct to convert from continuous time to discrete time signals and back • We distinguish between purely mathematical discrete time signals and "sampled data signals" that carry information in actual circuits • Question: How do we ensure that sampling/reconstruction fully preserve information?

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 24 Aliasing

• The frequencies fx and Nfs ± fx, N integer, are indistinguishable in the discrete • Undesired frequency interaction and translation due to sampling is called aliasing • If aliasing occurs, no operation downstream of the sampling process can recover the original continuous time signal! • Let's look at this in the frequency domain...

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 25

Sampling Sine Waves Time domain

fs = 1/T Voltage

time y(nT)

Frequency domain

fs - fin fs + fin Amplitude f f fin s 2fs …

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 26 Frequency Domain Interpretation

Signal scenario Continuous before sampling Time Amplitude f in fs /2 fs 2fs …….. f Signal scenario after sampling à DT

àSignals @ Discrete Time nfS ± fmax__signal fold back into band of interest àAliasing Amplitude 0.5 f/fs

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 27

Brick Wall Anti-Aliasing Filter

Amplitude Filter

Continuous Time

0 fs 2fs ... f

Discrete Time

0 0.5 f/fs

Sampling at Nyquist rate (fs=2fsignal) à required brick-wall anti-aliasing filters

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 28 How to Avoid Aliasing

• Must obey sampling theorem:

fmax_Signal < fs/2 • Two possibilities: 1. Sample fast enough to cover all spectral components, including "parasitic" ones outside band of interest

2. Limit fmax_Signal through filtering

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 29

How to Avoid Aliasing

1- Push Frequency domain sampling frequency to x2 of the highest freq. Amplitude fin f à Oversampled fs_old 2fs_old …….. s_new f converters almost!

2- Pre-filter signal to Frequency domain eliminate signals above 1/2 sampling Amplitude f frequency- then in fs /2 fs 2fs f sample

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 30 Practical Anti-Aliasing Filter

Amplitude Filter

Continuous Time

0 fs/2 fs 2fs ... f

• Practical filter: Nonzero "transition band" • In order to make this work, we need to sample faster than 2x the signal bandwidth • ""

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 31

Practical Anti-Aliasing Filter

Desired Parasitic Signal Tone

Continuous Attenuation Time

0 B fs/2 fs-B fs ... f

Discrete Time

0 B/fs 0.5 f/fs

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 32 Data Converter Classification

• fs > 2fmax Nyquist Sampling – "Nyquist Converters" – Actually always slightly oversampled

• fs >> 2fmax Oversampling – "Oversampled Converters" – Anti alias filtering is often trivial – Oversampling is also used to reduce quantization noise, see later in the course...

• fs < 2fmax Undersampling (sub-sampling)

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 33

Sub-Sampling Amplitude BP Filter Continuous Time

0 fs ... f

Discrete Time

0 0.5 f/fs • Sub-sampling à sampling at a rate less than Nyquist rate à aliasing • For signals centered @ an à Not destructive! • Sub-sampling can be exploited to mix a narrowband RF or IF signal down to lower frequencies

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 34 Where Are We Now? Analog Input

• We now know how to Analog Anti-Aliasing Preprocessing Filter

preserve signal A/D Sampling information in CTàDT Conversion (+Quantization) 000 transition DSP ...001... 110 D/A Conversion ? • How do we go back Analog from DTà CT? Postprocessing Analog Output

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 35

Ideal Reconstruction x(k) x(t) Þ

• The DSP books tell us: ¥ sin(2pBt) x(t) = å x(k)× g(t - kT ) g(t) = k=-¥ 2pBt

• Unfortunately not all that practical...

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 36 Zero-Order Hold Reconstruction

1 • How about just creating 0.6 a staircase, i.e. hold each discrete time value 0.2 until new information becomes available Amplitude -0.2 • What does this do the frequency content of the -0.6 signal?

sampled data after ZOH -1 • Let's analyze this in two 0 1 2 3 -5 Time x 10 steps...

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 37

1) DTà CT: Infinite Zero Padding

Time Domain Frequency Domain

DT sequence ......

0.5 f/fs

Zero padded ...... DT sequence

0.5/i 1.5/i 2.5/i f/fs Infinite Interpolation: ...... CT Signal!

0.5fs 1.5fs 2.5fs f

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 38 2) Effect of Hold Pulse

......

Tp

Ts • Using the of a rectangular impulse we get: T sin(pfT ) H ( f ) = p p Ts pfTp

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 39

Hold Pulse Tp=Ts 1

0.9 Tp sin(pfTp ) 0.8 | H ( f ) |=

0.7 Ts pfTp

0.6

0.5 abs(H(f)) 0.4

0.3

0.2

0.1

0 0 0.5 1 1.5 2 2.5 3 f/fs

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 40 Hold Pulse Tp=0.5Ts 1

0.9 Tp sin(pfTp ) 0.8 | H ( f ) |=

0.7 Ts pfTp

0.6

0.5 abs(H(f)) 0.4

0.3

0.2

0.1

0 0 0.5 1 1.5 2 2.5 3 f/fs

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 41

ZOH Spectral Distortion 1

Continuous Time 0.5 X(k) Pulse Train Spectrum 0 0 0.5 1 1.5 2 2.5 3 1 ZOH 0.5 ZOH ("Sinc Distortion") 0 0 0.5 1 1.5 2 2.5 3 1 ZOH output, Spectrum of 0.5 Staircase Approximation 0 0 0.5 1 1.5 2 2.5 3

f/fs

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 42 Filter 1 0.9 Again: 0.8 • A brick wall 0.7 filter would be 0.6 nice 0.5

0.4 • Oversampling 0.3 helps to 0.2 reduce filter 0.1 order 0 0 0.5 1 1.5 2 2.5 3

f/fs

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 43

Summary

• Sampling theorem fs > 2fmax, usually dictates anti-aliasing filter • If theorem is met, CT signal can be recovered from DT without loss of information • ZOH and smoothing filter reconstruct CT from DT signal • Oversampling helps reduce order & complexity of anti-aliasing & smoothing filters

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 44 Next Topic

Analog Input

Analog Anti-Aliasing • Done with Preprocessing Filter "Quantization in time" A/D Sampling Conversion (+Quantization) 000 DSP ...001... 110 • Next: Quantization in D/A D/A+ZOH amplitude Conversion Analog Smoothing Postprocessing Filter

Analog Output

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 45

Amplitude Quantization • Amplitude quantization à quantization “noise” • Static ADC/DAC performance measures – Offset – Gain – INL – DNL

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 46 Ideal ADC ("Quantizer")

A/D Characteristics [1] • Quantization step D (= 1 LSB) 7 ADC characteristics ideal converter 6 • E.g. N = 3 Bits 5 4 • Full-scale input range: 3 -0.5D … (2N-0.5)D 2 Digital Output Code 1 0

-1 0 1 2 3 4 5 6 7 8 • Quantization error: bounded by –D/2 … +D/2 1 for inputs within full-scale range 0.5

ADC Model 0 Vin Dout + -0.5 Quantization error [LSB]

-1 eq (Vin ) -1 0 1 2 3 4 5 6 7 8 ADC Input Voltage [1/D]

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 47

Quantization Error PDF

• Uniformly distributed from • Zero mean –D/2 … +D/2 provided that • Variance – Busy input +D /2e22D – Amplitude is many LSBs e2 ==ò de – No overload -D /2 D 12

• Not Gaussian! • white if the joint pdf of the input at different Pdf 1/D sample times is smooth

Ref: W. R. Bennett, “Spectra of quantized signals,” Bell Syst. Tech. J., vol. 27, pp. 446-72, July 1988.

B. Widrow, “A study of rough amplitude quantization by means of Nyquist sampling -D/2 +D/2 error ,” IRE Trans. Circuit Theory, vol. CT-3, pp. 266-76, 1956.

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 48 Signal-to-Quantization Noise Ratio

• If certain conditions are met (!) the quantization error can be viewed as being "random", and is often referred to as “noise” • In this case, we can define a peak “signal-to-quantization noise ratio”, SQNR, for sinusoidal inputs: 2 12æöN D e.g. N SQNR ç÷ 8 50 dB 22ç÷ SQNR=èø=´1.522N 12 74 dB D2 16 98 dB 20 122 dB 12 =+6.02N1.76 dBAccurate for N>3 • Actual converters do not quite achieve this performance due to other errors, including – Electronic noise – Deviations from the ideal quantization levels

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 49

Static, Ideal Macro Models

ADC V D in + out eq

DAC V Din out

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 50 Cascade of Data Converters

ADC DAC V V in + out eq

DAC ADC D in D + out eq

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 51

Static Converter Errors

Deviations of characteristic from ideal – Offset – Full scale error – Differential nonlinearity, DNL – Integral nonlinearity, INL

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 52 Offset Error ADC DAC

Ref: “Understanding Data Converters,” Texas Instruments Application Report SLAA013, Mixed-Signal Products, 1995.

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 53

Full Scale Error ADC DAC Ideal full scale point Ideal full scale Actual full scale point point

Full scale error

Full scale error Actual full scale point

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 54 Offset and Full Scale Errors

• Alternative specification in % Full Scale = 100% * (LSB value)/ 2N • Gain error can be extracted from offset & full scale error • Non-trivial to build a converter with extremely good gain/offset specs • Typically gain/offset is most easily compensated by the digital pre/post-processor • More interesting: Linearity àDNL, INL

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 55

Offset and Full-Scale Error

Note: ADC characteristics 7 ideal converter à For further measurements 6 Full-scale (DNL, INL) 5 error connecting the endpoints & 4

deriving ideal 3 codes based on the non-ideal Digital Output Code 2

endpoints 1 elliminates Offset error offset and full- 0

scale error -1 0 1 2 3 4 5 6 7 8 ADC Input Voltage [LSB]

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 56 ADC Differential Nonlinearity

ADC characteristics DNL = deviation 8 ideal converter of code width from 7 D (1LSB) -0.4 LSB DNL error 6

5 à Endpoints connected 4

à Ideal 3 characterisctics derived 2 0 LSB DNL error Digital Output Code

à DNL measured 1 +0.4 LSB DNL error 0

-1 0 1 2 3 4 5 6 7 8 9 ADC Input Voltage [D]

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 57

ADC Differential Nonlinearity Examples

ADC characteristics ADC characteristics 8 ideal converter 8 ideal converter

7 7

6 6

5 5

4 4

3 3

2 2

Missing code Digital Output Code

Digital Output Code Non-monotonic 1 (+0.5/-1 LSB DNL) 1 (> 1 LSB DNL) 0 0

-1 0 1 2 3 4 5 6 7 8 9 -1 0 1 2 3 4 5 6 7 8 9 ADC Input Voltage [D] ADC Input Voltage [D]

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 58 DAC Differential Nonlinearity

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 59

Impact of DNL on Performance

• Same as a somewhat larger quantization error, consequently degrades SQNR • How much – later in the course... • People sometimes speak of "DNL noise", i.e. "additional quantization noise due to DNL"

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 60 ADC Integral Nonlinearity INL = deviation of code transition from 7 its ideal location 6

• A straight line through the 5 -1 LSB INL endpoints is usually used as reference, 4 i.e. offset and full scale errors are ignored in INL calculation 3 Digital Output Code • Ideal converter steps is found 2 for the endpoint line, then INL is measured 1

• Note that INL errors can be 0 much larger than DNL errors and vice-versa -1 0 1 2 3 4 5 6 7 8 ADC Input Voltage [D]

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 61

DAC Integral Nonlinearity

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 62 DAC DNL and INL

* Ref: “Understanding Data Converters,” Texas Instruments Application Report SLAA013, Mixed-Signal Products, 1995.

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 63

Example: INL & DNL

Large INL & Small DNL Large DNL & Small INL

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 64 Monotonicity • Monotonicity guaranteed if | INL | = 0.5 LSB The best fit straight line is taken as the reference for determining the INL. • This implies | DNL | = 1 LSB • Note: these conditions are sufficient but not necessary for monotonicity

EECS 247 Lecture 12: Data Converters © 2005 H. K. Page 65