290 likes | 426 Vues
This paper discusses the comprehensive testing methodologies for Analog-to-Digital Converters (ADCs), including dynamic measurements, standards such as IEEE 1241-2000, and various fitting algorithms. The comparison of sine wave fitting techniques—3-parameter versus 4-parameter—is elaborated, along with practical challenges related to algorithm implementation in software environments like LabView and MATLAB. The work emphasizes the importance of standardization projects for improving ADC test methods, and it addresses issues such as starting values and ambiguity in results.
E N D
Testing of A/D Converters István Kollár Budapest University of Technology and Economics Dept. of Measurement and Information Systems Budapest, Hungary
Outline • Dynamic measurements: what is the input? • Standards • Standardization projects, advantages and problems • Main test methods • Sine wave fit: 3-parameter vs. 4-parameter • 4-parameter fit • Starting values • Algorithm • Programs • LabView • MATLAB • Summary
Input signals • Paradox: determine signal from erroneous data… • Solution: parametric model: • sine wave • exponential • ramp
Standardization Projects • IEEE 1057-1994 (standard for digitizing waveform recorders) • IEEE 1241-2000 (standard for terminology and test methods for analog-to-digital converters) IEC • DYNAD – dynamic characterization and testing of analogue to digital converters • EUPAS – European project for ADC-based devices standardization (in IMEKO TC4)
Location of Code Transitions Direct measurement: feedback loop Histogram – of what? Ramp vs. sine wave Nonlinearity
DFT/FFT Test Test Sine wave Coherent sampling Total harmonic distortion Spurious-free dynamic range Intermodulation distortion
Sine Wave Fitting IEEE 1241-2000 (standard for terminology and test methods for analog-to-digital converters) • Sine wave fitting Problems: detailed description, but • Complex algorithms using computer • One-step and/or iterative solutions • Non-defined or partly defined details • Not always repeatable results
Causes of Ambiguity • Starting values • Iteration details • Stop criteria • Number representation • Numerical algorithms (roundoff) Written standard + standard program(s) vs. detailed standard
3-parameter vs. 4-parameter Fit • 3-parameter: • Frequency ratio must be exactly known • Linear in the parameters (one-step solution) • 4-parameter: • More robust • Works also when the frequency ratio is exactly known • Non-linear in the parameters (iterative solution)
3-parameter Fit Linear in A, B, C A, B, C: LS solution of where is known.
4-p Fit: Starting Values Nonlinear in • Choice of is optional in the standard • Maximum of DFT (/2) • Count zero crossings (min. 5 periods) • Interpolated FFT
Algorithm I. Minimize vs. , A, B, C
Algorithm II. Algorithm: recursively find LS solution for xi of
Algorithm III. Newton-Raphson method
Algorithm IV. Newton-Gauss method Advantage:
Algorithm V. Difficulty: • Nothing guarantees decrease of cost function when applying step (second-order approximation) • Stop criterion? Good news: • In practice cf almost always decreases, especially if at least 5 periods were measured
Stop Criteria Stop if error is small enough (?): • Largest possible step is already small • Step below noise level • Step below noticeable error • Step below roundoff error Display: significant bits only
Candidate Programs • MATLAB • LabView • LabWindows • Agilent VEE • GeniDAQ • MATRIXx • Scilab • Mathematica
Sources of Program Information MATLAB, URL: http://www.mathworks.com/ LabView, URL: http://www.ni.com/labview/ LabWindows, URL: http://www.ni.com/cvi/ VEE, URL: http://www.get.agilent.com/gpinstruments/products/vee/support/ GeniDAQ, URL: http://www.advantech.com/products/GeniDAQ%20for%20Windows%20CE.asp MATRIXx, URL: http://www.windriver.com/products/html/matrixx.html Scilab, URL: http://www-rocq.inria.fr/scilab/scilab.html Mathematica, URL: http://www.wolfram.com/
Labview Programs Aim: support IEEE-STD-1057 • Original LabView source • New: stand-alone programs for PC and Macintosh
General Requirements for a Program • Theoretical • Accurate and fast realization • Careful documentation of the standard algorithms • Practical • Known environment • User-friendly and flexible interface • Availability (via internet) • Interactivity LabView is good, but Matlab is also required
Why MATLAB? • Available for several platforms in many labs and universities • IEEE double-precision numbers (64 bit) • Matrix, vector processing oriented (including DFT), implemented in C • Easy to examine and extend the code • User-interface support • Negligible cross-platform compatibility problems
The Framework • Standard mode • Curve fitting, DFT and other standardized methods, support automatic processing • Graphical mode • For visual evaluations • Compatible mode • Compatible with the LabView program • Advanced, development mode • Test-bed for new ideas
Interfaces • User interface • Graphical user interface • Self-documentation to support repeatability • ASCII file format to modify the settings easily • I/O interface • Several input file format supporting (ASCII, wave, custom) • Different output files (ASCII, mat, custom)
The Program Page http://www.mit.bme.hu/services/ieee/ADC-test/
Data Files (Common for Programs) Page: http://www.mit.bme.hu/services/ieee/ADC-test/data/
Summary • The framework • Standard, precise calculations • Flexible interfaces for different purposes • Future work • Version 3.1 is on the internet: http://www.mit.bme.hu/services/ieee/ADC-test/ • Continuous development • Interactive environment • Ideas and comments are appreciated