Summary Last Lecture

Similar documents
EE247 Lecture 12. EECS 247 Lecture 12: Data Converters- Testing 2010 H. K. Page 1

EE247 Lecture 12. EE247 Lecture 12

Amplitude Quantization

EE247 Lecture 12. Midterm exam Tues. Oct. 23rd

EE247 Lecture 14. To avoid having EE247 & EE 142 or EE290C midterms on the same day, EE247 midterm moved from Oct. 20 th to Thurs. Oct.

Discrete Fourier Transform

Data Converter Topics. Suggested Reference Texts

EE247 Lecture 11. EECS 247 Lecture 11: Intro. to Data Converters & Performance Metrics 2009 H. K. Page 1. Typical Sampling Process C.T. S.D. D.T.

Frequency Domain Representation of Signals

New Features of IEEE Std Digitizing Waveform Recorders

The Fundamentals of Mixed Signal Testing

TUTORIAL 283 INL/DNL Measurements for High-Speed Analog-to- Digital Converters (ADCs)

6 Sampling. Sampling. The principles of sampling, especially the benefits of coherent sampling

System on a Chip. Prof. Dr. Michael Kraft

EE247 Lecture 24. EE247 Lecture 24

Summary Last Lecture

Analog-to-Digital Converters

Lecture #6: Analog-to-Digital Converter

Chapter 5 Window Functions. periodic with a period of N (number of samples). This is observed in table (3.1).

EE247 Lecture 26. This lecture is taped on Wed. Nov. 28 th due to conflict of regular class hours with a meeting

The Case for Oversampling

Summary Last Lecture

The need for Data Converters

Data Converters. Specifications for Data Converters. Overview. Testing and characterization. Conditions of operation

Analyzing A/D and D/A converters

APPLICATION NOTE 3942 Optimize the Buffer Amplifier/ADC Connection

Signal Processing for Digitizers

ADC and DAC Standards Update

Lecture 9, ANIK. Data converters 1

Tones. EECS 247 Lecture 21: Oversampled ADC Implementation 2002 B. Boser 1. 1/512 1/16-1/64 b1. 1/10 1 1/4 1/4 1/8 k1z -1 1-z -1 I1. k2z -1.

When and How to Use FFT

ENGINEERING FOR RURAL DEVELOPMENT Jelgava, EDUCATION METHODS OF ANALOGUE TO DIGITAL CONVERTERS TESTING AT FE CULS

NPTEL. VLSI Data Conversion Circuits - Video course. Electronics & Communication Engineering.

Discrete Fourier Transform (DFT)

EE247 Lecture 26. EE247 Lecture 26

EE247 Lecture 22. Figures of merit (FOM) and trends for ADCs How to use/not use FOM. EECS 247 Lecture 22: Data Converters 2004 H. K.

Noise Power Ratio for the GSPS

Enhancing Analog Signal Generation by Digital Channel Using Pulse-Width Modulation

EE247 Lecture 26. EE247 Lecture 26

Data Converter Fundamentals

Improving histogram test by assuring uniform phase distribution with setting based on a fast sine fit algorithm. Vilmos Pálfi, István Kollár

User-friendly Matlab tool for easy ADC testing

CHAPTER. delta-sigma modulators 1.0

Testing A/D Converters A Practical Approach

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

EE 435. Lecture 32. DAC Design. Parasitic Capacitances. The String DAC

EE 435. Lecture 34. Spectral Performance Windowing Quantization Noise

Hideo Okawara s Mixed Signal Lecture Series. DSP-Based Testing Fundamentals 6 Spectrum Analysis -- FFT

Analog to Digital Conversion

Laboratory Manual 2, MSPS. High-Level System Design

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

A VCO-based analog-to-digital converter with secondorder sigma-delta noise shaping

Distortion Analysis T S. 2 N for all k not defined above. THEOREM?: If N P is an integer and x(t) is band limited to f MAX, then

DAC & ADC Testing Fundamental

FUNDAMENTALS OF ANALOG TO DIGITAL CONVERTERS: PART I.1

Reconfigurable Low-Power Continuous-Time Sigma-Delta Converter for Multi- Standard Applications

Analog-to-Digital Converter Survey & Analysis. Bob Walden. (310) Update: July 16,1999

ESE 531: Digital Signal Processing

ON THE VALIDITY OF THE NOISE MODEL OF QUANTIZATION FOR THE FREQUENCY-DOMAIN AMPLITUDE ESTIMATION OF LOW-LEVEL SINE WAVES

EE247 Lecture 11. Example: Switched-capacitor filters in CODEC integrated circuits. Switched-capacitor filter design summary

A Faster Method for Accurate Spectral Testing without Requiring Coherent Sampling

Measurement of RMS values of non-coherently sampled signals. Martin Novotny 1, Milos Sedlacek 2

! Multi-Rate Filter Banks (con t) ! Data Converters. " Anti-aliasing " ADC. " Practical DAC. ! Noise Shaping

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences

Solution to Homework 5

Michael F. Toner, et. al.. "Distortion Measurement." Copyright 2000 CRC Press LLC. <

Discrete Fourier Transform, DFT Input: N time samples

The Fundamentals of FFT-Based Signal Analysis and Measurement Michael Cerna and Audrey F. Harvey

Electronics A/D and D/A converters

Direct Digital Synthesis Primer

ADC Based Measurements: a Common Basis for the Uncertainty Estimation. Ciro Spataro

THE APPLICATION WAVELET TRANSFORM ALGORITHM IN TESTING ADC EFFECTIVE NUMBER OF BITS

The Importance of Data Converter Static Specifications Don't Lose Sight of the Basics! by Walt Kester

Noise Measurements Using a Teledyne LeCroy Oscilloscope

National Instruments Flex II ADC Technology The Flexible Resolution Technology inside the NI PXI-5922 Digitizer

ESE 531: Digital Signal Processing

ME scope Application Note 01 The FFT, Leakage, and Windowing

Fundamentals of Data Converters. DAVID KRESS Director of Technical Marketing

Waveshaping Synthesis. Indexing. Waveshaper. CMPT 468: Waveshaping Synthesis

EECS 452 Midterm Exam Winter 2012

Analog to Digital Converters Testing

Maxim > Design Support > Technical Documents > Tutorials > A/D and D/A Conversion/Sampling Circuits > APP 748

Advantages of Analog Representation. Varies continuously, like the property being measured. Represents continuous values. See Figure 12.

ADC1206S040/055/ General description. 2. Features. 3. Applications. Single 12 bits ADC, up to 40 MHz, 55 MHz or 70 MHz

EE247 Lecture 27. EE247 Lecture 27

LARGE SCALE ERROR REDUCTION IN DITHERED ADC

Channel Characteristics and Impairments

Reconfigurable 6 GHz Vector Signal Transceiver with I/Q Interface

Characterizing Distortion in Successive-Approximation Analog-to-Digital Converters due to Off-Chip Capacitors within the Voltage Reference Circuit

EE247 Lecture 23. Advanced calibration techniques. Compensating inter-stage amplifier non-linearity Calibration via parallel & slow ADC

Analog-to-Digital i Converters

Electronic Noise. Analog Dynamic Range

Design and Implementation of a Sigma Delta ADC By: Moslem Rashidi, March 2009

Nonuniform multi level crossing for signal reconstruction

EECS 452 Midterm Exam (solns) Fall 2012

DYNAMIC BEHAVIOR MODELS OF ANALOG TO DIGITAL CONVERTERS AIMED FOR POST-CORRECTION IN WIDEBAND APPLICATIONS

FFT Analyzer. Gianfranco Miele, Ph.D

f o Fig ECE 6440 Frequency Synthesizers P.E. Allen Frequency Magnitude Spectral impurity Frequency Fig010-03

Summary Last Lecture

AD9772A - Functional Block Diagram

Transcription:

EE247 Lecture 3 Data Converters Static testing (continued).. Histogram testing Dynamic tests Spectral testing Reveals ADC errors associated with dynamic behavior i.e. ADC performance as a function of frequency Direct Discrete Fourier Transform (DFT) based measurements utilizing sinusoidal signals DFT measurements including windowing EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page Summary Last Lecture Data converters Static converter error sources Offset Full-scale error Differential non-linearity (DNL) Integral non-linearity (INL) Measuring DNL & INL Servo-loop Code density testing (histogram testing) EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 2

Histogram Testing Histogram testing Quantize input with known pdf (e.g. ramp or sinusoid) Measure output pdf Derive INL and DNL from deviation of measured pdf from expected result EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 3 Histogram Test Setup V REF f S Ramp V REF ADC PC Time Slow (wrt conversion time) linear ramp applied to ADC DNL derived directly from total number of occurrences of each code @ the output of the ADC EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 4

A/D Histogram Test Using Ramp Signal Example: Ramp slope: μv/μsec LSB =mv Each ADC code msec f s =khz T s =μsec n = samples/code Digital Output ADC Input/Output Analog input n/f s Ramp Time EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 5 A/D Histogram Test Using Ramp Signal Example: Ramp slope: μv/usec LSB =mv Each ADC code msec f s =khz T s =μsec Digital Output ADC Input/Output Analog input n = samples/code Measurement resolution n n/f s Time Ramp # of Samples Per code Digital Output EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 6

Ramp Histogram Example: Ideal 3-Bit ADC Digital Output Code 7 6 5 4 3 2 ADC characteristics ideal converter Code Count 2 8 6 4 2 8 6 4 2 2 3 4 5 6 7 8 ADC Input Voltage [Δ] 2 3 4 5 6 7 ADC output code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 7 Ramp Histogram Example: Real 3-Bit ADC Including Non-Idealities 7 ADC characteristics ideal converter 2 8 Digital Output Code 6 5 4 3 2 -.4 LSB DNL +.4 LSB INL Code Count 6 4 2 8 6 +.4 LSB DNL 4 2 2 3 4 5 6 7 8 ADC Input Voltage [Δ] 2 3 4 5 6 7 ADC output code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 8

Example: 3 Bit ADC DNL Extracted from Histogram - Remove Over-range bins ( and full-scale) 2- Compute average count/bin (6/6= in this case) Code Count, End bins removed 4 2 8 6 4 2 2 3 4 5 6 7 ADC output code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 9 Example: 3 Bit ADC Process of Extracting from Histogram 3- Normalize: - Divide histogram by average count/bin ideal bins have exactly the average count, which, after normalization, would be Normalized Code Count Non-ideal bins would have.2 a normalized value greater of smaller than 2 3 4 5 6 7 ADC output code.4.2.8.6.4 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page

Example: 3 Bit ADC DNL Extracted from Histogram 4- Subtract from the normalized code count 5- Result DNL (+-.4Lsb in this case) DNL = Counts / Mean(Counts) -.4.3.2. -. -.2 -.3 -.4 2 3 4 5 6 7 ADC output code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page Example: 3-Bit ADC Static Characteristics Extracted from Histogram DNL histogram used to reconstruct the exact converter characteristic (having measured only the histogram) Digital Output 7 6 5 4 3 2 Reconstructed ADC Transfer Characteristic Width of all codes derived from measured DNL (Code=DNL + LSB) 2 3 4 5 6 7 ADC Input Voltage EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 2

Example: 3 Bit ADC DNL & INL Extracted from Histogram Digital Output Code 7 6 5 4 3 2 ADC characteristics Ideal converter -.4 LSB DNL +.4 LSB INL +.4 LSB DNL 2 3 4 5 6 7 ADC Input Voltage [Δ] DNL [LSB] INL [LSB].5 -.5-2 3 4 5 6.5 -.5-2 3 4 5 6 Digital Output Code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 3 ADC Histogram Testing Sinusoidal Inputs Ramp signal generators linear to only 8 tobits Need to find input signal with better purity Solution: Use sinusoidal test signal (may need to filter out harmonics) Problem: Ideal ADC histogram not flat but has bath-tub shape Code Count 5 ADC Output- Raw Histogram 2 3 4 ADC output code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 4

ADC Histogram Test Using Sinusoidal Signals At sinusoid midpoint crossings: dv/dt max. least # of samples At sinusoid amplitude peaks: dv/dt min. highest # of samples Digital Output Time ADC Input/Output Analog input Sinusoid # of Samples Per code Digital Output EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 5 Correction for Sinusoidal PDF References: [] M. V. Bossche, J. Schoukens, and J. Renneboog, Dynamic Testing and Diagnostics of A/D Converters, IEEE Transactions on Circuits and Systems, vol. CAS-33, no. 8, Aug. 986. [2] IEEE Standard 57 Is it necessary to know the exact amplitude and offset of sinusoidal input? No! EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 6

DNL/INL Extraction Matlab Program function [dnl,inl] = dnl_inl_sin(y); %DNL_INL_SIN % dnl and inl ADC output % input y contains the ADC output % vector obtained from quantizing a % sinusoid % Boris Murmann, Aug 22 % Bernhard Boser, Sept 22 % histogram boundaries minbin=min(y); maxbin=max(y); % histogram h = hist(y, minbin:maxbin); % cumulative histogram ch = cumsum(h); % transition levels found by: T = -cos(pi*ch/sum(h)); % linearized histogram hlin = T(2:end) - T(:end-); % truncate at least first and last % bin, more if input did not clip ADC trunc=2; hlin_trunc = hlin(+trunc:end-trunc); % calculate lsb size and dnl lsb= sum(hlin_trunc) / (length(hlin_trunc)); dnl= [ hlin_trunc/lsb-]; misscodes = length(find(dnl<-.9)); % calculate inl inl= cumsum(dnl); EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 7 Example: Test Results for DNL & INL Using Sinusoidal Histogram DNL = +.3 / - LSB, missing code if (DNL<-.9) DNL [LSB] - 5 5 2 25 3 35 4 code 2 INL = +.7 / -.69 LSB INL [LSB] - 5 5 2 25 3 35 4 code EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 8

Example: Matlab ADC Model DNL/INL Code Test % converter model B = 6; % bits range = 2^(B-) - ; % thresholds (ideal converter) th = -range:range; % ideal thresholds th(2) = th(2)+.7; % error fs = e6; fx = 494e3 + pi; % try fs/! C = round( * 2^B / (fs / fx)); DNL [LSB] DNL = +.7 / -.7 LSB.5 -.5 - -3-2 - 2 3.8 INL = +.7 LSB t = :/fs:c/fx; x = (range+) * sin(2*pi*fx.*t); y = adc(x, th) - 2^(B-); hist(y, min(y):max(y)); dnl_inl_sin(y); INL [LSB].4-3 -2-2 3 Digital Output EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 9 Histogram Testing Limitations The histogram (as any ADC test, of course) characterizes one particular converter. Test many devices to get valid statistics. Histogram testing assumes monotonicity E.g. code flips will not be detected. Dynamic sparkle codes produce only minor DNL/INL errors E.g. 23, 23,, 23,, 24, 24, look at ADC output to detect Noise not detected E.g. 9, 9, 9,, 9, 9, 9,, 9,,,, Ref: B. Ginetti and P. Jespers, Reliability of Code Density Test for High Resolution ADCs, Electron. Lett., vol. 27, pp. 223-3, Nov. 99. EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 2

Example: Hiding Problems in the Noise INL 5 missing codes DNL "smeared out" by noise! Always look at both DNL/INL INL usually does not lie... [Source: David Robertson, Analog Devices] EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 2 Why Additional Tests/Metrics? Static testing does not tell the full story E.g. no info about "noise or high frequency effects Frequency dependence (f s and f in )? In principle we can vary f s and f in when performing histogram tests Result of such sweeps is usually not very useful Hard to separate error sources, ambiguity Typically we use f s =f snom and f in << f s /2 for histogram tests For additional info Spectral testing EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 22

DAC Spectural Test or Simulation Digital Sinusoid Signal Generator Device Under Test (DUT) DAC V out Spectrum Analyzer Clock Generator Input sinusoid Need to have significantly better purity compared to DAC linearity Spectrum analyzer need to have better linearity than DUT EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 23 Direct ADC Test via DAC Device Under Test (DUT) Signal Generator V in V out Spectrum ADC DAC Analyzer Clock Generator Need DAC with much better performance compared to ADC under test Beware of DAC output six/x frequency shaping Good way to "get started"... EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 24

ADC Spectral Test via Data Acquisition Sytem Device Under Test (DUT) Signal Generator V in ADC Data Acquisition System PC Clock Generator EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 25 Analyzing ADC Outputs via Discrete Fourier Transform (DFT) x(t) x(k) Sinusoidal waveform has all its power at one single frequency An ideal, infinite resolution ADC would preserve ideal, single tone spectrum DFT used as a vehicle to reveal ADC deviations from ideality EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 26

Discrete Fourier Transform The DFT of a block of N time samples {x(k)} = {x(), x(), x(2),,x(n-)} yields a set of N frequency bins {A m } = {A,A,A 2,,A N- } where: N- mn A m = Σ x n W N n= W N e -j2π/n m =,,2,,N- EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 27 Discrete Fourier Transform (DFT) Properties DFT of N samples spaced T s =/f s seconds: N frequency bins from DC to f s Bin m represents frequencies at m * f s /N [Hz] DFT frequency resolution: Proportional to f s /N in [Hz/bin] DFT with N = 2 k ( k is an integer) can be found using a computationally more efficient algorithm named: FFT Fast Fourier Transform EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 28

DFT Magnitude Plots Because magnitudes of DFT bins (A m ) are symmetric around f S /2, it is redundant to plot A m s for m >N/2 f s /2 f s Usually magnitudes are plotted on a log scale normalized so that a full scale sinusoidal waveform with rms value a FS yields a peak bin of dbfs: A A m [dbfs] = 2 log m a FS.N/2 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 29 fs = e6; fx = 5e3; Afs = ; N = ; Matlab Example Normalized DFT % time vector t = linspace(, (N-)/fs, N); % input signal y = Afs * cos(2*pi*fx*t); % spectrum s = 2 * log(abs(dft(y)/n/afs*2)); % drop redundant half s = s(:n/2); % frequency vector (normalized to fs) f = (:length(s)-) / N; Amplitude Magnitude [ dbfs ].5 -.5 -.2.4.6.8 Time x -4 - -2-3..2.3.4.5 f x /f s Frequency [ f / f s ] EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 3

Another Example Signal Amplitude Amplitude [ dbfs ] - 2 3 4 5 x Time -5 - -2-3 -4-5..2.3.4.5 Frequency [ f / f s ] Even though the input signal is a pure sinusoidal waveform note that the DFT results does not look like the spectrum of a sinusoid Seems that the signal is distributed among several bins EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 3 DFT Periodicity The DFT implicitly assumes that time sample blocks repeat every N samples With a non-integer number of signal periods within the observation window, the input yields significant amplitude/phase discontinuity at the block boundary This energy spreads into other frequency bins as spectral leakage Spectral leakage can be eliminated by either. Choice of integer number of sinusoids in each block 2. Windowing -.4.8.2-4 Time x DFT Perceived Signal EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 32 Signal Amplitude Signal Amplitude.5 -.5.5 -.5 Actual Signal -.4.8.2-4 Time x

Spectra Integer # of Cycles versus Non-Integer # of Cycles Integer number of cycles Non-integer number of cycles Signal Amplitude.5 -.5 -.2.4.6.8.2.4 Time x -4 Signal Amplitude.5 -.5 -.2.4.6.8.2.4 Time x -4 - Amplitude [ dbfs ] - -2-3 Amplitude [ dbfs ] -2-3 -4-5 -4..2.3.4.5 Frequency [ f / f s ] -6..2.3.4.5 Frequency [ f / f s ] EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 33 Matlab Example Integer Number of Cycles fs = e6; Afs = ; N = 2^7; cycles=7; fx=fs*cycles/n;...... y = Afs * cos(2*pi*fx*t); s = 2 * log(abs(fft(y)/n/afs*2)); Magnitude [ dbfs ] -5 - -5-2 -25-3 -35..2.3.4.5 Frequency [ f / f s ] Notice: Range of test signals limited to [( cycles)x f s /N] EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 34

Windowing Spectral leakage can be attenuated by windowing time samples prior to the DFT Windows taper smoothly down to zero at the beginning and the end of the observation window Time samples are multiplied by window coefficients on a sample-by-sample basis Convolution in frequency domain Large number choices of various windows Tradeoff: attenuation versus fundamental signal spreading to number of adjacent bins Window examples: Nuttall versus Hann EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 35 Example: Nuttall Window Time domain Frequency domain Amplitude.8.6.4.2 Magnitude (db) 2-2 -4-6 -8 2 4 6 Samples -.2.4.6.8 Normalized Frequency ( π rad/sample) Time samples are multiplied by window coefficients on a sample-by-sample basis Multiplication in the time domain convolution in the frequency domain EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 36

Windowed Data Signal before windowing Time samples are multiplied by window coefficients on a sampleby-sample basis Signal after windowing Windowing removes the discontinuity at block boundaries Signal Amplitude Windowed Signal Amplitude.5 -.5 -.2.4.6 Time.8-3 x 2 - -2.2.4.6 Time.8 x -3 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 37 Nuttall Window DFT Only first 2 bins shown Response attenuated by -2dB for bins > 5 Lots of windows to choose from (go by name of inventor- Blackman, Harris ) Various window trade-off attenuation versus width (smearing of sinusoids) Normalized Amplitude [db] -2-4 -6-8 - -2 2 4 6 8 2 4 6 8 2 DFT Bin EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 38

DFT of Windowed Signal Spectrum Before/After Windowing Window gives ~ db attenuation of sidelobes Signal energy smeared over several (approximately ) bins Spectrum not Windowed [ dbfs ] Windowed Spectrum [ dbfs ] - Before windowing -2-3 -4-5 -6-7..2.3.4.5 Frequency [ f x / f s ] -2-4 -6 After windowing -8 - -2-4..2.3.4.5 Frequency [ f x / f s ] EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 39 Window Nuttall versus Hann Amplitude.8.6.4.2 Time domain 2 4 6 Samples Magnitude (db) -5 Frequency domain Nuttall Hann -.2.4 Normalized Frequency ( π rad/samp Matlab code: N=64; wvtool(nuttallwin(n),hann(n)); EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 4

Integer Cycles versus Windowing Integer number of cycles Signal energy for a single sinusoid falls into single DFT bin Requires careful choice of f x Ideal for simulations Measurements need to lock f x to f s (PLL)- not always possible Windowing No restrictions on f x no need to have the signal locked to f s Good for measurements w/o having the capability to lock f x to f s Signal energy and its harmonics distributed over several DFT bins handle smeared-out harmonics with care! Requires more samples for a given accuracy EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 4 Example: ADC Spectral Testing ADC with B bits Full scale input =2 B = ; delta = 2/2^B; y = cos(2*pi*fx/fs*[:n-]); y=round(y/delta)*delta; s = abs(fft(y)/n*2); f = (:length(s)-) / N; EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 42

ADC Output Spectrum Input signal bin: Bx @ bin # (N * f x /f s + ) (Matlab arrays start at ) A signal = dbfs SNR? Ampliutde [dbfs] -2-4 -6-8 - N=248-2..2.3.4.5 f /f s EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 43 Simulated ADC Output Spectrum Noise bins: all except signal bin bx = N*fx/fs + ; As = 2*log(s(bx)) %set signal bin to s(bx) = ; An = *log(sum(s.^2)) SNR = As - An Matlab SNR = 62dB ( bits) Computed SQNR = 6.2xN+.76dB=6.96dB f /f -2 s..2.3.4.5 Note: In a real circuit including thermal/flicker noise the measured total noise is the sum of quantization & noise associated with the circuit EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 44 Amplitude [dbfs] -2-4 -6-8 - N=248

Why is Noise Floor Not @ -62dB? DFT bins act like an analog spectrum analyzer with bandwidth per bin of f s /N -2 N=248 Assuming noise is uniformly distributed, noise per bin: (Total noise)/n/2 The DFT noise floor is at: -log (N/2) [db] below the actual noise floor Amplitude [dbfs] -4-6 -8-3dB For N=248: -log (N/2) =-3 [db] -2..2.3.4.5 f /f s EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 45 DFT Plot Annotation Need to annotate DFT plot such that actual noise floor can be readily computed by one of these 3 ways:. Specify how many DFT points (N) are used 2. Shift DFT noise floor by log (N/2) [db] 3. Normalize to "noise power in Hz bandwidth then noise is in the form of power spectral density EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 46

Signal S DC Distortion D Noise N Spectral Performance Metrics ADC Including Non-Idealities Ideal ADC adds: Quantization noise Real ADC typically adds: Thermal and flicker noise Harmonic distortion associated with circuit nonlinearities EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 47 ADC Spectral Performance Metrics SNR Signal S DC Distortion D Noise N Signal-to-noise ratio SNR = (Signal Power) / (Noise Power) In Matlab: Noise power includes power associated with all bins except: DC Signal Signal harmonics EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 48

ADC Spectral Performance Metrics SDR & SNDR & SFDR SDR Signal-to-distortion ratio = (Signal Power) / (Total Distortion Power) SNDR Signal-to- (noise+distortion) = S / (N+D) SFDR Spurious-free dynamic range = (Signal )/(Largest Harmonic) Typically SFDR > SDR EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 49 Harmonic Components At multiples of f x Aliasing: f signal = f x =.8 f s f 2 = 2 f =.36 f s f 3 = 3 f =.54 f s.46 f s f 4 = 4 f =.72 f s.28 f s f 5 = 5 f =.9 f s. f s f 6 = 6 f =.8 f s.8 f s EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 5

Relationship INL & SFDR/SNDR ADC Transfer Curve Output Output Real INL Input INL Input Quadratic shaped transfer function: Gives rise to even order harmonics Cubic shaped transfer function: Gives rise to odd order harmonics EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 5 Spectrum versus INL, DNL.3 DNL and INL of Bit converter DNL [LSB] -.3 Good DNL and poor INL suggests distortion 2 INL [LSB] - -2 INL Not fully symmetric 2 3 4 5 6 7 8 9 bin # EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 52

Relationship INL & SFDR/SNDR Depends on "shape" of INL Rule of Thumb: SFDR 2log(2 B /INL) E.g. LSB INL, b SFDR 6dB Beware, this is of course only true under the same conditions at which the INL was taken, i.e. typically low input frequency EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 53 SNR Degradation due to DNL [Source: Ion Opris] Uniform quantization error pdf was assumed for ideal quantizer over the range of: +/- Δ/2 Let's now add uniform DNL over +/- Δ/2 and repeat math... Joint pdf for two uniform pdfs Triangular shape EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 54

SNR Degradation due to DNL Integrate triangular pdf: +Δ 2 2 2 e Δ e = 2 ( e) de = Δ 6 Compare to ideal quantizer: SNR = 6.2 N.25 [db] 3dB +Δ / 2 2 2 2 e Δ e = de = Δ / 2 Δ 2 SNR = 6.2 N +.76 [db] Error associated with DNL reduces overall SNR EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 55 SNR Degradation due to DNL More general case: Uniform quantization error ±.5Δ Uniform DNL error ± DNL [LSB] Convolution yields trapezoid SQNR becomes: N 2 2 Δ 2 2 SQNR = 2 Δ DNL + 2 3 2 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 56

SNR Degradation due to DNL Degradation in db: SQNR _ deg =.76 log 8 2 DNL + 2 3 8 Valid only for cases where with no missing codes 6 SNR Degradation 4 [db] 2.2.4.6.8 DNL [LSB] EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 57 25 Uniform DNL? # of occurrences 2 5 5 -.5 -.4 -.3 -.2 -...2.3.4.5 DNL DNL distribution of 2-bit ADC test chip Not quite uniform... EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 58

Effective Number of Bits (ENOB) Is a 2-Bit converter with 68dB SNDR really a 2-Bit converter? Effective Number of Bits (ENOB).76dB ENOB = SNDR 6.2dB 68.76 = =.Bits 6.2 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 59 ENOB At best, we get "ideal" ENOB only for zero thermal noise, zero DNL, zero INL Low noise design is costly 4x penalty in power per (ENOB-) bit or 6dB extra SNDR Rule of thumb for good performance /power tradeoff: ENOB < N- EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 6

ENOB Survey R. H. Walden, "Analog-to-digital converter survey and analysis," IEEE J. on Selected Areas in Communications, pp. 539-5, April 999 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 6 Example: ADC Spectral Tests SFDR SDR SNR Ref: W. Yang et al., "A 3-V 34-mW 4-b 75-Msample/s CMOS ADC with 85-dB SFDR at Nyquist input," IEEE J. of Solid-State Circuits, Dec. 2 EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 62

Summary ADC Testing Need to find "decision levels", i.e. input voltages at all code boundaries One way: Adjust voltage source to find exact code trip points "code boundary servo More versatile: Histogram testing Apply a signal with known distribution (ramp or sinusoid) and analyze digital code distribution at ADC output Spectral testing Reveals ADC errors associated with dynamic behavior i.e. ADC performance as a function of frequency Direct Discrete Fourier Transform (DFT) based measurements Feasable when input signal can be locked to sampling frequency Resticts input signal frequency DFT measurements including windowing EECS 247 Lecture 3: Data Converters- Static & Dynamic Testing 27 H. K. Page 63