Uploaded by JYHJIUN Tsai

071-0961-00 dseries mixedsigmultiwave apps(non-watermark)

advertisement
Diamond™ Series
Mixed Signal (MultiWave)
Applications
Student Guide
PN: 071-0961-00, January 2008
Credence Systems Corporation
1421 California Circle
Milpitas, CA 95035
Tele: (408) 635-4300
Fax: (408) 635-4985
Customer Service Center
(503) 466-7678 (North America and International)
(800) 328-7045 (Toll-free within the United States)
call_center@credence.com (Internet email)
(503) 466-7814 (Fax)
Legal Notice
No part of this publication may be reproduced or transmitted in any form, or transcribed, stored in a retrieval system, or
translated into any language or computer language, in any form or by any means—electronic, mechanical, magnetic,
optical, chemical, manual or otherwise, or distributed to third parties—without the prior written permission of Credence
Systems Corporation.
Credence Systems Corporation makes no representations or warranties with respect to the contents hereof and specifically
disclaims any implied warranties of merchantability or fitness for any particular purpose. Furthermore, Credence reserves
the right to revise this publication and to make changes from time to time in the content hereof without obligation of
Credence to notify any person of such revision or changes.
Restricted Rights Legend
This publication is “commercial technical data” as defined in DFAR 252.227-7015 and FAR 12.211 and will be protected in
accordance with DFAR 252.227-7015 and FAR 12.211. The Government’s rights to use, modify, reproduce, release,
perform, display or disclose this publication are restricted by paragraph (b)(2) of the Technical Data-Commercial Items
clause at DFAR 252.227-7015
Printed in January 2008 in the U.S.A. All rights reserved.
© 2008 Credence Systems Corporation
Notices:
Credence, Kalos, ASL 1000, ASL 3000, Sapphire, Diamond and other Credence products and services mentioned herein
as well as their respective logos are trademarks or registered trademarks of Credence Systems Corporation in the United
States and other countries. Gemini is a registered trademark of Micro-Probe, Inc. and is licensed for use to Credence
Systems Corporation.
The following are trademarks or registered trademarks of their respective companies or organizations:
UNIX / X/Open Company Ltd.
Sun Microsystems, Sun Workstation, OpenWindows, SunOS, NFS, Sun-4, SPARC, SPARCstation, Java, Solaris / Sun
Microsystems
Ethernet / Xerox Corporation
Microsoft, Windows, Windows NT / Microsoft Corporation
All other brand or product names are trademarks or registered trademarks of their respective companies.
Revision History
This table lists the revision history for this publication for the current revision and the previous two revisions (if applicable).
2
Date
Part Number
Notes
01-2008
071-0961-00
First production release.
PN: 071-0961-00, January 2008
CONTENTS
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Completion Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Related Courses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Course Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Day 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Day 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Day 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Reader Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Safety Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Caution Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Warning Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Danger Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1 - Personnel Safety and Equipment Protection . . . . . . . . . . . . . . . . . . . . . 13
Personnel Safety and Equipment Considerations . . . . . . . . . . . . . . . . . . . . . . . . . .
Operator Safety Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Service Safety Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Electromagnetic Compatibility Immunity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Static Electricity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Materials to Avoid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Materials to Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working With Static-Sensitive Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fire Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
15
16
17
17
17
18
18
18
2 - Mixed Signal Help Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Online Help Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3 - Hardware Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Hardware Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DD1096-16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DPS16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DIB Utility Instrument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
26
26
27
27
28
28
29
3
Contents
MultiWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4 - Software Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Software Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linux OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diamond Series Directory Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Test Programming Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Integrated Test Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Program Developer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Compiling and Linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analog Wavetool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Create Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Algorithm Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Online Debug and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Offline Debug and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Operator Interface Control Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DSP Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AWT Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simulate ADC DNL/INL Ramp Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
36
37
38
40
41
42
43
44
46
47
48
49
50
52
58
5 - Defining Mixed Signal Resources and Signals . . . . . . . . . . . . . . . . . . . 59
Defining Tester Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mapping Signals to Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining STIL Signals and SignalGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Signals and SignalGroups Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
61
62
64
6 - DIBU for Mixed Signal Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
DIBU Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Programming the DIBU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CSCDIBStatus CSCDIBUPerSignalInterface::getDIBStatus . . . . . . . . . . . . . . .
setCBits(vector< unsigned long long > & cBitValue ) . . . . . . . . . . . . . . . . . . . .
setCBits ( const unsigned long long cBitValue ) . . . . . . . . . . . . . . . . . . . . . . . .
unsigned long long getCBits ( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
unsigned long long getCBits ( std::vector< unsigned long long > & cBitValue )
unsigned long long readCBits ( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
unsigned long long readCBits ( std::vector< unsigned long long > & BitValue )
connect ( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
disconnect ( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CSCConnectStatus getConnectStatus () . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
turnOnSupply ( CSCSupplyMode supplyMode ) . . . . . . . . . . . . . . . . . . . . . . . .
turnOffSupply () . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CSCSupplyStatus getSupplyStatus ( ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CSCDIBUChannelType getChannelType ( ) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Debugging DIBU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DIBU Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
72
74
74
75
75
75
75
75
76
76
76
76
76
76
76
76
78
82
PN: 071-0961-00, January 2008
Contents
7 - MultiWave Instrument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
MultiWave Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Arbitrary Waveform Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
High Precision (Audio) Generator Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Waveform Digitizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
High Precision (Audio) Digitizer Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
High Frequency (Video) Generator Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
High Frequency Video Digitizer Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
PMU Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
MultiWave Resource Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Example project.res File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
MultiWave Signal Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Example project.sig File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
MultiWave API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
CSCMultiWaveDDSPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . . . . . 98
CSCMultiWaveClockPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . . . . 98
CSCMultiWaveOutputCtrlPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . 99
CSCMultiWaveInputCtrlPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . 101
CSCMultiWaveMemoryPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . 105
CSCMultiWaveMuxPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . . . . 106
CSCMultiWaveArmCtrlPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . 107
CSCMultiWavePmuPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . . . . 107
MultiWave Trigger Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Definition of Waveform Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
CSCMultiWaveArbitraryWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
CSCMultiWaveSineWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
CSCMultiWaveRampWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Low Frequency AWG Programming Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Low Frequency Digitizer Programming Overview . . . . . . . . . . . . . . . . . . . . . . . . . 116
High Frequency AWG Programming Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
High Frequency Digitizer Programming Overview . . . . . . . . . . . . . . . . . . . . . . . . 118
Precision Kelvin PMU Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Programming Clocks on MultiWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Clock Setup for HF AWG and HF DIG Mode . . . . . . . . . . . . . . . . . . . . . . . . . 120
Clock Setup for LF AWG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Clock Setup for LF DIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Debugging MultiWave Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
MultiWave Loopback Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
8 - VIS16 Instrument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
VIS16 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 Resource Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 Signal Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CSCVISInterface Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CSCVISPerSignalInterface Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
128
133
134
135
135
137
5
Contents
Debugging VIS16 Tests—Visualize Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Debugging VIS16 Tests—Shmoo and Margin . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 Loopback Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 Through Voltage Regulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
144
146
148
149
9 - Triggering Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Triggering Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DD1096-16 Triggers Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VIS16 Triggers Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MultiWave Triggers Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Triggering Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Triggering MultiWave with a DD1096 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
152
153
153
155
158
159
10 - Digital Source and Capture in Mixed Signal . . . . . . . . . . . . . . . . . . . . 161
Digital Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Digital Capture Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DCM Capture Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DCM Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
162
163
164
167
11 - DAC Tests Using MultiWave DIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Analog Waveform Capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Typical Waveform Digitizer Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Scaling and Level Shifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analog-to-Digital Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Storage and Digital Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . . .
DAC Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Static Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dynamic Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DAC Testing Using a Digitizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linearity Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Common Formulas and Computations for Static DAC Tests . . . . . . . . . . . . . .
Dynamic Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Common Formulas and Computations for Dynamic DAC Tests . . . . . . . . . . .
Sampling Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Spectral Leakage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aliasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Digitizer Example Code Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Trigger Implementation to Start Digitizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DAC Tests Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
170
170
171
171
171
172
173
173
174
175
175
176
177
178
179
182
183
185
186
190
12 - ADC Tests Using MultiWave AWG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Waveform Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Typical Waveform Source Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analog Waveform Source Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Waveform Memory and Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
194
194
195
195
PN: 071-0961-00, January 2008
Contents
Digital-to-Analog Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Scaling and Level Shifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ADCs Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Typical ADC Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Static Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dynamic Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ADC Testing Using an Analog Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linearity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ADC Static Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Integral Non-Linearity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Histograms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dynamic Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AWG Example Code Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Waveform Generation Using Internal Sinewave . . . . . . . . . . . . . . . . . . . . . . .
Waveform Generation Using the rampWave . . . . . . . . . . . . . . . . . . . . . . . . . .
Trigger Implementation to Start AWG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dynamic ADC Test Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Static ADC Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
195
196
196
197
197
198
199
200
200
200
205
206
207
208
209
209
210
214
216
13 - Advanced Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Advanced Waveform Capture Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Notch Filter for Audio Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Oversampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Equivalent Time Sampling or Undersampling . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sampling Theory Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Method 1—Whole UTP Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Method 2—Skip Minimum Cycles Method . . . . . . . . . . . . . . . . . . . . . . . . . . .
Method 3—Minimum Sample Time Method . . . . . . . . . . . . . . . . . . . . . . . . . .
220
220
221
225
227
227
228
228
A - Devices Data Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
LT1121 Data Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
AD5541 Data Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
MAX195 Data Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
B - Loadboard Schematic Extracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
C - VHDM Connector Pinouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
D - Loadboard Design Rules for MultiWave . . . . . . . . . . . . . . . . . . . . . . . . 299
AWG Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Digitizer Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PMU Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AGND/DGND Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GND_SENSE Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Signal and Layer Arrangement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MultiWave Instrument Connection Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
299
299
300
300
300
301
302
7
Contents
E - Diamond Series Basic Program Development . . . . . . . . . . . . . . . . . . 307
Generating the STIL File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Starting Integrated Test Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the Resource Definition File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the Signal Map File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the C++ Header File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the Header File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the C++ Source File for a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the C++ Source File for a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the C++ Source File for user_main() . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the C++ Source File for user_main() . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the Job File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Building the Job File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading the Job File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enabling Datalog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running the Job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the Binning Definitions File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating the Binning Map File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the Binning C++ Source File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Binning to user_main() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Binning to the Job file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recompiling the Job File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reloading the Job File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
308
311
313
317
320
321
322
323
324
325
326
331
333
334
337
338
341
344
346
348
351
353
F - Credence Unified Robot Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Production Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Test System API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Test System Communications Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GPIB ANSI Connector/IEEE 488 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . .
RS-232 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CURI_CONF.XML Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Default Equipment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Equipment Entries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Example Code Using Direct Communications Access . . . . . . . . . . . . . . . . . .
uf_series_maps.XML Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A (String):XY Travel (Absolute Distance) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
H:Multisite Location No. Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I:Index Size Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Writing CURI Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a Handler Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Putting It All Together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ready to Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using NI SPY to Log GPIB Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
355
355
356
357
358
359
360
362
362
363
372
373
373
374
374
379
379
385
385
387
PN: 071-0961-00, January 2008
Preface
This course is designed to provide the student with the skills necessary to develop and
debug a mixed signal test program on the Diamond™ Series test system. Training
includes creating a test using C++ and STIL files, and running and debugging a test using
software tools.
This is a three day classroom course.
Prerequisites
Before attending this course, students must have:
•
Attended the Diamond Series Basic Applications course
•
Knowledge of semiconductor testing concepts
•
Ability to read and interpret device specification sheets
•
Knowledge of mixed signal testing
Note — Those students with no previous mixed signal testing experience must take a
course in Mixed Signal Test Methodology before attending this course.
In addition, it is recommended that students have:
•
C or C++ programming experience
•
Familiarity with Unix or Linux operating system
Completion Requirements
Completion certificates are awarded based upon:
•
Completion of all laboratory assignments
•
Class participation
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
9
Preface
Related Courses
Other related courses include:
•
Diamond Series Digital Applications
•
Diamond Series APG Applications
•
Diamond Series RF and Baseband Applications
•
Diamond Series Basic Maintenance
Course Schedule
Day 1
•
Diamond Series Online Help
•
Diamond Series Hardware Overview
•
Diamond Series Software Overview
•
Signal definition in mixed signal
•
DIBU overview
•
MultiWave overview
•
VIS16 overview
•
Triggering overview
•
DCM overview
•
DAC test
•
ADC test
•
Advanced sampling techniques
Day 2
Day 3
10
PN: 071-0961-00, January 2008
Preface
Document Conventions
Reader Notes
Notes to the reader are identified by the word Note in bold font. Reader notes either
precede or follow the information to which they apply, depending on context.
Note — The bolded Note draws attention to issues other than personnel safety or
equipment protection.
Safety Statements
Safety statements in this manual are indicated by a Caution, Warning, or Danger note to
alert users about specific types of hazards.
Caution Statement
Caution — The caution statement provides information essential to avoiding loss of
data, program failure, or equipment damage.
•
This statement is not used for a personal injury hazard. The hazard can only
result in property damage or loss.
•
Hazard is not immediate.
•
Safety is contingent upon following the message instructions.
Warning Statement
Warning — The warning statement provides information essential to the safety of
the operator.
•
Hazard is not immediately accessible.
•
One level of protection is present between a person and the hazard.
•
Hazard can result in personal injury.
Danger Statement
Danger — The danger statement indicates that an imminent hazard exists.
•
Hazard is immediately accessible.
•
Hazard will result in personal injury.
•
Safety is dependent upon awareness and skill.
•
No safeguards are provided.
Diamond ™ Series Mixed signal Applications– Student Guide
11
Preface
Notes
12
PN: 071-0961-00, January 2008
1
Personnel Safety and Equipment
Protection
Goal
Familiarity with general electrical and safety concepts.
Objectives
After completing this unit, students should be able to:
•
Discuss the symbols and components used in maintaining safety
•
Learn general electrostatic discharge guidelines
In This Module
______
______
Instructor Presentation
Knowledge Check
15
5
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
13
1 – Personnel Safety and Equipment Protection
Personnel Safety and Equipment Considerations
The safety considerations specified in this document meet the SEMI S2-93 safety
standards as well as those of Underwriters Laboratories (UL), Factory Mutual, Canadian
Standards Association (CSA), and VDE (Verband Deutscher Elektrotechniker
(Association of German Electrical Engineers)).
Product safety information is intended to:
•
Help prevent damage or injury to data, equipment, and personnel
•
Observe government-mandated requirements for safety issues
•
Comply with safety requirements in countries where Credence products are sold
These requirements apply to instructions, operators, maintenance, and service for
semiconductor test systems and associated apparatus manufactured by Credence
Systems Corporation.
14
PN: 071-0961-00, January 2008
Operator Safety Summary
Operator Safety Summary
The operator safety information shown in Table 1 is intended for operating and service
personnel. Specific warnings and cautions throughout this manual may not appear in this
summary.
Table 1. Operator Safety Summary
Terms and Symbols
Description
Terms in this manual
Caution statements identify conditions or practices that could result in
damage to the equipment or other property.
Warning statements identify conditions or practices that could result in
personal injury or loss of life.
Terms as marked on
equipment
Caution indicates a personal injury hazard or a property hazard
including the equipment itself not immediately accessible when reading
the marking.
Danger indicates a personal injury hazard immediately accessible
when reading the marking.
Symbols as marked on
equipment
Danger—High Voltage
Attention
Protective ground (earth) terminal
Power source and
ground
This equipment operates from a power source that applies dangerous
voltage between the supply conductors, and between any supply
conductor and ground.
If the ground connection is interrupted, all accessible conductive parts
could render an electric shock.
If a power cord is not provided with the product, refer to qualified
service personnel.
Do not remove covers
or panels
To avoid personal injury, do not remove product covers or panels.
Do not operate the product without the covers and panels installed.
Refer installation to qualified service personnel.
Do not operate in
explosive atmospheres
To avoid explosion, do not operate this equipment in an explosive
atmosphere unless it has been specifically certified for such operation.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
15
1 – Personnel Safety and Equipment Protection
Service Safety Summary
The service safety summary in Table 2 is for qualified service personnel only (also see
"Operator Safety Summary" on page 15).
Table 2. Service Safety Summary
Statement
Description
Do not service alone
Do not service or adjust this product internally unless another person
capable of rendering first aid and resuscitation is present.
Use care when
servicing with power on
Dangerous voltages and currents may exist at several points in this
product or in the equipment with which this product is used.
To avoid personal injury, do not touch exposed connections and
components while power is on.
Disconnect power before removing protective covers and making
internal changes.
Do not wear jewelry
Remove jewelry prior to servicing.
Rings, necklaces, watchbands, and other metallic objects could come
into contact with dangerous voltages or currents.
Power source
This product is intended to operate from a single-phase AC power
source with 90-264 VAC, 50/60 Hz. The power source can be L1-L2Ground or L-N-Ground.
Refer to the installation instructions before attempting to connect the
product to a power source.
Grounding the product
The product is grounded through the protective grounding conductor of
the power cord (or service wiring in lieu of a power cord).
To avoid electrical shock, the grounding conductor must be connected
to a properly wired receptacle or junction box.
Replace covers
To avoid injury to other personnel, replace covers before leaving the
equipment unattended.
Lifting
Two or more persons may be needed to lift and maneuver equipment
such as a testhead and rack-mounted units because of their physical
size, shape, weight, or location.
To avoid injury, do not attempt to handle this type of equipment alone.
16
PN: 071-0961-00, January 2008
Electromagnetic Compatibility Immunity
Electromagnetic Compatibility Immunity
Do not use hand-held wireless communication devices within 10 meters (32.8 feet) of the
test system to avoid the possibility of erroneous data or misclassification of devices under
test.
Accessibility of electro static discharge (ESD) sensitive devices and wiring in the vicinity
of the testhead requires that users wear a grounded wrist strap at all times. A wrist strap
ground points are located on the system.
Other ESD abatement practices should also be implemented, such as the use of ESD
abatement flooring, conductive shoe straps, ESD preventive coat, and ESD wrist strap
connectivity monitors.
Static Electricity
Many electronic devices used in test-station circuitry can be damaged by static discharge.
Test-station accessories include a static-discharge wrist strap, which the operator or
service technician should always wear when working with static-sensitive devices such as
circuit boards.
Although the wrist strap discharges static buildup, it presents a high impedance to ground
to limit the current should the wearer come in contact with a high voltage source.
Therefore, despite wearing the strap, it is possible to generate a static charge through
improper procedures and retain it long enough to damage the equipment or compromise
a device test.
Materials to Avoid
The following materials can damage static-sensitive devices:
•
Polystyrene foam items such as Styrofoam cups and packaging materials
•
Clear plastic bags
•
White or gray packaging foam
•
Clear bubble pack
•
Non-conductive plastic containers such as plastic trays and parts bins
•
Plastic items such as vinyl combs, brushes, and notebooks
•
Transparent tape
•
Clear plastic sheets such as page covers
•
Clear film products such as Kodagraphs
•
Candy wrappers and peanut bags
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
17
1 – Personnel Safety and Equipment Protection
Materials to Use
The following materials can be used with static-sensitive devices:
•
Wood
•
Cotton cloth
•
Pink poly bags
•
Metallized bags
•
Conductive plastics
•
Metal tools
•
Silverstat solder suckers
Working With Static-Sensitive Devices
All circuit boards that contain semiconductors (such as transistors, FETs, ICs, and CMOS
ASICs) should be moved between the test system and a shipping container or static free
work area only in conductive containers (such as metallized bags).
Place an unprotected circuit board on an antistatic mat or install it in the system. Do not
handle it without wearing a wrist strap.
To handle circuit boards with the least risk of damage to devices, take the following
precautions:
1. Wear a wrist strap connected to a convenient ground.
2. Set a conductive container (metallized bag) on an antistatic mat.
3. Remove the circuit board and place it in the metallized bag.
4. Move the bagged circuit board to a shipping container or to the next static controlled
work area. The user does not need to wear the wrist strap for this step.
Fire Protection
Locate fire extinguishers, approved for electrical equipment, within easy reach of the
system. If overhead sprinklers are installed in the test area, direct sprinkler heads away
from the testhead and power server to minimize water damage in case of fire.
For added protection, provide a separate storage area for system documentation,
software tapes and disks, and spare parts.
18
PN: 071-0961-00, January 2008
Electromagnetic Compatibility Immunity
Knowledge Check
1. What is ESD?
2. What are some of the safeguards for ESD?
3. When is it necessary to observe ESD precautions?
4. When is a system most vulnerable to ESD hazard?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
19
1 – Personnel Safety and Equipment Protection
Check Your Work
Review the answers and have the instructor sign off this module.
20
PN: 071-0961-00, January 2008
2
Mixed Signal Help Resources
Goal
Access and use Online Help and API documentation.
Objectives
After completing this unit, students should be able to use the ITE Online Help
to answer questions about how to program the Diamond Series test system
in the mixed signal context
In This Module
______
Lab Exercise
15
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
21
2 – Mixed Signal Help Resources
Lab Exercise
Online Help Lab
This lab uses the ITE Online Help to answer questions about the Diamond Series test
system when used in mixed signal context.
Note — The API documentation is found in Online Help at: Diamond Series Online Help >
Programming Reference > API Documentation.
To complete this lab:
Launch ITE from the home directory and use the Help > Online Help menu to answer the
following questions:
1. What is the name of the API class used to program MultiWave instrument?
2. What is the signal mapping for a multiwave instrument?
3. What are the choices for the path on a multiwave AWG/digitizer?
4. What is the name of the API class used to make DSP computations?
5. What API is used to set the modulation gate on a VIS16?
22
PN: 071-0961-00, January 2008
6. What is the size of the capture memory (DCM) on a DD1096-16?
Check Your Work
Review the work and have the instructor sign off this module.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
23
2 – Mixed Signal Help Resources
Notes
24
PN: 071-0961-00, January 2008
3
Hardware Overview
Goal
Understand the hardware in use during the course.
Objectives
After completing this unit, students should be able to:
•
Describe the mixed signal instrument features and specifications
•
Understand the MultiWave instrument
•
Understand the DCM used inside the DD1096 instrument
In This Module
______
______
Instructor Presentation
Knowledge Check
40
5
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
25
3 – Hardware Overview
Hardware Overview
Figure 1. Diamond Series Test Systems
Instruments
There are several different instrument cards that can be installed into the testhead.
Additional instruments may be added in the future. At this time, the available instruments
include:
•
DD1096-16 (DPIN96)
•
VIS16
•
VIS2
•
DPS16
•
DIBU
•
MultiWave (replacement for MSAWG and MSDIG)
Figure 2. Diamond Series Instrumentation
26
PN: 071-0961-00, January 2008
Hardware Overview
DD1096-16
The DD1096-16 (DPIN96) is a 96 channel digital subsystem instrument.
Figure 3. DD1096-16 Instrument
VIS16
The features of the VIS16 voltage/current source are:
•
Single-Ended
•
All channels four quadrant source/measure current/voltage
•
Voltage Force/Meas ranges: from ±2 V to ±60 V
•
Current Force/Meas: from ±300 nA up to 300 mA
•
Per channel AWG and digitizer
•
Timers and TMU per channel
•
Gangable by pair
•
Differential measurements between adjacent channels
Figure 4. VIS16 Instrument
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
27
3 – Hardware Overview
VIS2
The VIS2 is a dual channel voltage and current (VI) source. Some of the features of the
VIS16 voltage/current source are:
•
All channels four quadrant source/measure current/voltage
•
Voltage Force/Meas ranges: +100 V/-100 V four quadrants
•
Current Force/Meas: from 200 nA up to 20 A pulsed (5 A continuous)
•
Per channel AWG and digitizer
•
Timers and TMU per channel
•
Gangable by pair
•
Differential measurements between adjacent channels
Figure 5. VIS2 Instrument
DPS16
The DPS16 is a 16 channel Device Power Supply (DPS). It has the following features:
•
6 V voltage range
•
2 A current per channel, gangable to 16 A
•
Current ranges: -100 µA to 2 A per channel
Figure 6. DPS16 Instrument
28
PN: 071-0961-00, January 2008
Hardware Overview
DIB Utility Instrument
The DIB Utility instrument contains:
•
•
•
•
•
Loadboard reference clocks:
–
400 MHz calibration reference clock—Used for calibration routines
–
10 MHz reference clock—Synchronizes device or equipment reference clocks to
the system reference clock
–
DUT clock (CLK_DUT)—Synchronizes the system clocks to an externally
supplied clock
Loadboard power supplies:
–
±5 V @ 3 A user power supply
–
+5 V @ 5 A relay power supply
–
+12 V @ 2 A user power supply
–
+24 V @ 2 A isolated power supply (floating from ground)
Loadboard utilities:
–
Control bits (CBITs)—64 bits that control relays and logic on the loadboard
–
DIB present—Detects whether or not the loadboard is connected
–
Calibration bus (6 wire)—Provides the link to the external meter
–
DIB ground sense—Provides the loadboard ground sense
Loadboard busses:
–
ID programmable read only memory (IDPROM) bus
–
General Purpose Inter-IC (I2C) bus
–
Serial Peripheral interface (SPI) bus
–
General Purpose Input Output (GPIO) bus
–
Scope Test Point (TP) bus
Power supplies for third party cPCI instruments:
–
48 V system power
–
+5 V @ 10 A power supply
–
±12 V @ 2 A power supply
The DIB Utility instrument must reside in slot 9.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
29
3 – Hardware Overview
MultiWave
The MultiWave instrument is a quad channel arbitrary waveform generator and digitizer
unit.
Figure 7. MultiWave Instrument
Four wide bandwidth generator channels and four wide bandwidth digitizer channels are
integrated into a single board. In addition to the converter path every I/O channel has a
separate high precision Kelvin PMU for parallel DC parametric tests.
Figure 8 shows how these products apply to today’s device technologies.
Figure 8. Range of Applications By Device Type
24
Audio
22
20
Effective Bits
18
16
14
ADSL
3G BB
Modem
DVD/DTV
12
Video
Graphics
2G BB
10
8
1 MHz
10 MHz
100 MHz
Bandwidth (Log Scale)
The MultiWave is a multi-band, multi-channel arbitrary analog waveform generator
(AWG) and digitizer (DIG). It offers both high frequency and high resolution performance.
30
PN: 071-0961-00, January 2008
Hardware Overview
Figure 9. MultiWave Block Diagram
Channel 7
Channel 5
Programmable
Ref Clock #1
High
Gain/Filter/
DA Resolution
Amplifier
Gain/Filter/
DA Hi
High-Speed
CLK
Speed
Amplifier
PMU select
ADC
ADC
PMU
Trigger
MUX
DUT Interface
PMU
Amplifier
Gain/Filter/
Amplifier
Gain/Filter/
Amplifier
High
Res
AD HiResolution
ADC
High-Speed
AD
Clock2
PMU
DA
SRAM
Input
mode
SRAM
+ Supply
Monitoring
48 V
DIG ch1
DIG ch2
DIG ch3
Filter
selection
GB
clock
Filter
selection
Range
selection
Input
MUX
DIG ch4
InputTransiver Data
GigaBit
mode
GigaBit Transiver Trigger
DA
Channel 6
High
Resolution
High-Speed
Channel 4
SRAM
GB
clock
High
Speed
AD HiResolution
DAC
DAC AD
High-Speed
Amplifier Control
selection
CLK
Hi Res
select
DAC
High
Gain/Filter/
DA Resolution
Amplifier
Gain/Filter/
DA
High-Speed
Amplifier
GigaSampler CLK
Gain/Filter/
Amplifier
Range
selection
DC / DC
Channel 3
Channel 1
GB
clock
GigaSampler CLK
Gain/Filter/
Amplifier
SRAM
Gain/Filter/
PMU
PMU
AD
High
Resolution
Filter
selection
GB
Filter
clock
selection
GB
clock
Channel
FPGA
Control
GigaSampler CLK
selection
Gain/Filter/
SRAM
Amplifier
Gain/Filter/
Ref Clock
Generators
350 .. 400 MHz
PMU
ADC
Range
selection
SRAM
Channel 0
Output
mode
PMU
DAC
SRAM
PMU
SRAM
PCI
Channel 2
Trigger
AWG
ch1
Output
GigaBit
Transiver Data
mode
GigaBit Transiver Trigger
Range
selection
Channel
FPGA
Clock1
Channel
FPGA
Output MUX
Output
MUX
AWG ch2
AWG ch3
Bus Interface
FPGA
AWG ch4
GigaBit Transiver Data
The MultiWave is made of four fully independent channels source and four fully
independent channels measure. It has a very flexible triggering system with 10 input lines
and 10 output lines. High-speed or high resolution are selectable per channel and it has a
set of differential filters on each AWG/digitizer.
Each channel (one AWG and one digitizer) has its own PMU to perform static
measurements. Each MultiWave channel also has it's own sampling clock derived from
two on-board master clocks.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
31
3 – Hardware Overview
Notes
32
PN: 071-0961-00, January 2008
Hardware Overview
Knowledge Check
1. Which set of instruments are used to test a DAC?
2. Which set of instruments are used to test an ADC?
3. Which instrument can drive relays?
4. What is the memory depth for the digital capture on DD1096-16?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
33
3 – Hardware Overview
Check Your Work
Review the answers and have the instructor sign off this module.
34
PN: 071-0961-00, January 2008
4
Software Overview
Goal
Understand the software use for mixed signal tests.
Objectives
After completing this unit, students should be able to:
•
Understand software available for program generation
•
Understand software available for program debugging
•
Review the Diamond Series software structure
•
Learn about the Analog Wavetool and DSP library
•
Refresh on ITE and OIC
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Labs
50
5
1
Minutes
Minutes
Hour
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
35
4 – Software Overview
Software Overview
The Diamond Series software has several components to consider:
•
Linux® operating system
•
Diamond’s Integrated Test Environment (ITE) and directory structure
•
AWT for mixed signal analysis
•
OIC Tool
•
DSP library
Linux OS
The Linux OS provides Unix-like functionality to systems with traditional PC-based
hardware. The Diamond Series uses Red Hat® Enterprise Linux 3 with the K Desktop
Environment (KDE).
Figure 10. Linux with KDE
36
PN: 071-0961-00, January 2008
Diamond Series Directory Structure
Diamond Series Directory Structure
The Diamond Series software resides in the /usr/dmd/ directory (see Figure 11). The
$DMD environmental variable points to the /usr/dmd/<version>/system directory. Note
that MultiWave is supported with version 1.5.2 or later.
Figure 11. Sapphire D Software Directory Structure
/usr/dmd
/v1.2.3
/v1.3.0
/setup
/bin
/cal
/doc
/current
/3rd_party
/cal
/sample
/sys
/system
/include
/lib
/template
The contents of the /usr/dmd directory are:
/vx.x.x
One version of the software.
/current
Soft link that points to the current version of software.
/3rd_party
Contains third party software.
/cal
Contains system calibration files.
/setup
Contains scripts to setup user accounts.
/system/bin
Contains executable files, such as ite, oic, and syscon.
/system/cal
Soft link that points to the /usr/dmd/cal directory.
/system/doc
Contains documentation files.
/system/include
Contains header files (.h) that define C++ classes.
CscDmd.h must be included in all C++ source files.
/system/lib
Contains shared library files (.so).
/system/sample
Contains OIC source code and C++ examples of
generating a custom summary.
/system/sys
Contains text files, such as dmd.alias, NewLot.xml,
offline_cfg.txt, and user.makefile.
/system/template
Contains C++ examples of user_shmoo() and
user_command() functions.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
37
4 – Software Overview
Test Programming Environment
Figure 12. Diamond Series Software System
Source Files
C++
Source
Files
Program
Developer
C++
Compiler
Tester Files
STIL
Source
Files
Resource
Definiton
File
Signal Map
File
Job File
offline_cfg.txt
STIL
Compiler
Integrated Test
Environment
Shared
Object File
(.so)
Pattern
Object File
(. pat)
Runtime
Object File
(.rto)
Job Linker
Test Executive
Test System Hardware
38
PN: 071-0961-00, January 2008
Test Programming Environment
Below is a description of each of the software components shown in Figure 12:
•
•
•
Source files:
–
C++ source file—ASCII file that uses standard C++ statements and API function
calls to define the operation and flow of device tests
–
STIL source file—ASCII file that contains signal, timing, level, and pattern
information
Tester files:
–
Resource definition file—ASCII file that maps resource names to instruments and
slots
–
Signal map file—ASCII file that maps DUT signal names to resource channels
–
Job file—ASCII file that defines the job elements
–
offline_cfg.txt—ASCII file that defines the offline hardware configuration
C++ compiler—Compiles C++ source files into shared object file:
–
•
Shared object file (.so)—Binary C++ file
STIL compiler—Compiles STIL source files into pattern and runtime object files:
–
Pattern object file (.pat)—Binary pattern data file
–
Runtime object file (.rto)—Binary file that contains signal, timing, and level
information
•
Job linker—Links the pattern and runtime object files into the job
•
Test executive—Links shared object files into the job and coordinates job load and
execution
•
Integrated Test Environment (ITE)—GUI that edits tester files, loads the job, and
executes the test flow
•
Program Developer—GUI based on SlickEdit® that edits ASCII files and debugs C++
source code
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
39
4 – Software Overview
Integrated Test Environment
Figure 13. Integrated Test Environment GUI
Menus
Icons
Tabs
Work Area
File Manager
Test Executive
To start ITE, type ite& at the Linux prompt.
Right-click on a file to view the available actions as shown in Figure 13. Each file type has
a different set of actions, such as Edit and Edit in Program Developer.
The work area is divided into three main tabs:
•
Design—Views and edits the tester files.
•
Test—Provides controls to execute, datalog, and debug the test program.
•
Tools—Displays Shmoo and Margin Tool.
Additional tools, such as Pattern Tool and STIL Tool, are available through the Tools
menu.
40
PN: 071-0961-00, January 2008
Integrated Test Environment
Program Developer
Figure 14. Program Developer
Program Developer can be opened in the following ways:
•
Type vs& at the Linux prompt.
•
Right-click on a file and select Edit in Program Developer from ITE.
•
Select Tester > Start Debug... from ITE.
The features of Program Developer are:
•
Source code debugger
•
Language-sensitive editor (STIL and C++)
•
Argument completion
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
41
4 – Software Overview
Compiling and Linking
Figure 15. Build Dialog
Select Build > Build Tool from ITE to open the Build Dialog.
Select Generate Makefile to create a makefile from the selected job file. The makefile
defines the file dependencies for compiling. Generate Makefile must be run after initial job
creation and any time a change is made to the job file.
Select Make to run the makefile. Running make compiles the source files and links the
files together for the job.
Make invokes:
42
•
STIL compiler (dsc)—Compiles STIL source files.
•
Job linker—Links the compiled STIL object files, resource definition file, and signal
map file into the job.
•
C++ compiler (g++)—Compiles the C++ source files into a shared object library.
PN: 071-0961-00, January 2008
Integrated Test Environment
Analog Wavetool
The Analog Wavetool (AWT) is an integral part of developing and debugging mixed signal
test programs, as well as analysis of waveform data. It is really important to become
proficient in its use. This course demonstrates the AWT under a variety of circumstances.
A few of the AWT’s most common applications are:
•
Creating waveforms for use with AWGs
•
Verifying the correct use of the DSP Library in a test program through simulation of
the chosen algorithm
•
Online debug of mixed signal test through the viewing of a captured waveform and its
subsequent DSP processing
•
Offline debug and analysis of waveforms to extract useful information
Figure 16. Analog Wavetool
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
43
4 – Software Overview
Create Waveforms
The AWT can be used to create waveform files from sampling parameters.
Figure 17. Waveform Creation Dialog Box
Waveform
Types
Waveform
Parameters
Waveform
Preview
44
PN: 071-0961-00, January 2008
Integrated Test Environment
The AWT display acts much like an oscilloscope or spectrum analyzer, as shown in
Figure 18.
Figure 18. AWT Waveform Display
The waveforms can be saved for use with various Credence AWGs.
Figure 19. AWT File Save Options
Credence AWAV
Format
Credence AWG
Format
Text Files
Parallel Vectors
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
45
4 – Software Overview
Algorithm Simulation
The AWT can be used to develop DSP algorithms offline. Every DSP Library function is
available through the buttons at the bottom of the screen.
For example, to capture a waveform, take the waveform’s FFT, and compare the
magnitude of bin 43 to that of another waveform. This process can be duplicated offline
using the AWT. This allows the corresponding DSP code to be written offline.
Figure 20. Algorithm Development Using AWT
46
PN: 071-0961-00, January 2008
Integrated Test Environment
Online Debug and Analysis
The AWT can be used to view waveforms during online test debug. In this example
(Figure 21), the datalog offers little information about the nature of the failing test. Using
the AWT, it is obvious that the waveform is clipped.
Figure 21. Online Debug Using AWT
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
47
4 – Software Overview
Offline Debug and Analysis
Since waveforms can be saved in the .AWAV format without any loss of resolution,
analysis can be done offline in cases where test system time or availability is limited.
Figure 22 shows a typical baseband gain test signal. The data might be analyzed in either
the time or the frequency domain.
Figure 22. Offline Debug Using AWT
48
PN: 071-0961-00, January 2008
Operator Interface Control Tool
Operator Interface Control Tool
The Operator Interface Control (OIC) is a job management user interface for production
test. This is the universal robot also known as CURI. It presents similar data, but in
another format.
Figure 23. Operator Interface Control
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
49
4 – Software Overview
DSP Library
The Credence DSP Library is a general purpose library of functions for performing Digital
Signal Processing on signals captured from a device or other sources of data. Originally
developed for the Vista/Duo/Quartet/Octet series of VLSI test systems, it has evolved into
a powerful cross-platform tool that works with all Credence mixed signal test systems,
including Sapphire and ASL products. As a result, it is mature, comprehensive, and
optimized for high throughput.
The DSP Library can run on dedicated DSP processors like the TI 32000 family, as well
as on various host computers such as PCs or SPARCs.
On the Diamond Series, the DSP library runs on the Linux host as a shared object (.so)
file. Functions fall into one of several broad categories:
•
Frequency domain measurement and utility functions
•
Time domain measurement and utility functions
•
Relational and statistical domain measurement functions
•
General DSP utility functions
The DSP library functions use the concept of a DspWaveform. A DspWaveform object
contains both waveform data (a set of magnitudes) and metadata (information about the
data such as number of samples or sampling rate).
Figure 24. DSP Library Use Model Block Diagram
Capture Memory
Dsp
Library
Functions
DspWaveform
The DSP Library is explored in more detail in the lab exercises.
For debugging DSP algorithms, waveforms captured during test programs, or for
designing input waveforms for device testing, the Diamond Series software includes the
Analog Wavetool (AWT). The AWT is a powerful cross-platform graphical tool. The AWT
is also used on other Credence test system platforms.
50
PN: 071-0961-00, January 2008
DSP Library
Knowledge Check
1. What is the editor of choice for ASCII files?
2. What is the path to the current ITE version?
3. What are the three main purposes of AWT?
4. What formats are supported by AWT?
5. Can an algorithm be used offline?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
51
4 – Software Overview
Lab Exercise
AWT Lab
This lab is a basic introduction to the usefulness of the AWT. This lab leads students
through the steps for creating waveforms and performing some basic operations.
1. Type awt & from a command prompt to start AWT. The & character runs the
command in background mode so that the command shell can continue to be used.
Alternately it can be started from ITE by selecting Tools > Analog WaveTool. The
AWT displays as shown in Figure 25.
Figure 25. AWT—Main Window
52
PN: 071-0961-00, January 2008
DSP Library
2. Click on the File/New tab, or the small waveform icon. This opens the waveform
creation dialog box. There are several types of waveforms that can be created (sine,
pulse, sawtooth, and others) from this window.
3. Select sine (it is selected by default) to get the waveform parameters appropriate for
that type of waveform. Notice, in particular, the following settings:
Number of Cycles: 7
Number of Samples: 1024
Sample Interval: 10 ns
Waveform Amplitude: 1.0
These settings create a sine wave with seven cycles, using 1024 samples spaced
10 ns apart. The peak amplitude is 1.0 V.
4. Click OK. The waveform is created
Figure 26. AWT—Waveform Parameters
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
53
4 – Software Overview
5. The sine wave can now be seen. Drag the cursor down into the waveform pane to
track the waveform values or change the Points drop-down menu (see Figure 27)
User Units. The X-axis values change from sample number to nanoseconds (in 10 ns
intervals).
Figure 27. First Waveform Example
54
PN: 071-0961-00, January 2008
DSP Library
6. Create a second waveform.
a. Open up the new waveform dialog box.
b. Make the following two changes to the default settings:
•
Number of Cycles: 14
•
Waveform Amplitude 0.1
7. Click OK to create the waveform
The waveform (as shown in Figure 28) has twice as many cycles and one-tenth the
amplitude of the other waveform
Figure 28. Second Waveform Example
8. Select the WF Arith/Add buttons at the bottom of AWT. This adds the two waveforms
together, point by point. Notice that the waveform has a slightly tilted character,
indicating that it contains some harmonic distortion.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
55
4 – Software Overview
9. Create another waveform.
a. Open the new waveform dialog box.
b. Select Gaussian Noise.
c. Change the Standard Deviation to 100 µV.
d. Click OK to create.
10. Click the WF Arith/Add button to add the new waveform to the existing one. The
waveform should be similar to the one shown in Figure 29.
Figure 29. Third Waveform Example
Notice that no noise is visible. This is because its magnitude is so small relative to the
waveform amplitude.
56
PN: 071-0961-00, January 2008
DSP Library
11. Click the WF Trans/Spectrum button. This performs an FFT and some scaling so
that the waveform components can be viewed in the frequency domain.
Figure 30. FFT and Scaling
The AWT is used extensively to make DSP calculations and for waveform creation/
observation.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
57
4 – Software Overview
Simulate ADC DNL/INL Ramp Test
Use this procedure to simulate a ADC DNL/INL ramp test.
1. Create ramp 1024 samples, amplitude 1023 “New Waveform” (Simulates 10 bit ramp
0..1023).
2. Modify ramp to get 8 identical samples per code step.
3. Push a copy of the wave to stack.
“wf Math -> Interleave“ combines both waveforms takes alternating one sample from
each wave.
4. Push a copy to the stack and interleave.
5. Push a copy to the stack and interleave.
6. Create the “New Waveform” Noise signal with 8192 samples and 0.3 Standard
Deviation, Mean 0.0.
7. Add “wf Arith -> Add” Noise signal to ramp.
8. Push a copy to the stack.
9. Calculate INL/DNL from “wf Meas -> INL/DNL (ramp)” ramp.
•
Number of segments 1, 10 ADC bits, 1 ramp/segment
•
Ramp magnitude: 1023, Vref 1023.0, Starting offs 0.0
10. Evaluate results.
11. Select copy of interleaved/noisy waveform.
12. Calculate 10 bit “wf Math Histogram” histogram.
13. Compare DNL with histogram.
14. Calculate another 5 bit histogram from 10 bit histogram result.
15. How does this shape look like?
Check Your Work
Review the answers and have the instructor sign off this module.
58
PN: 071-0961-00, January 2008
5
Defining Mixed Signal Resources and
Signals
Goal
Define Tester resources and create Signal and SignalGroups.
Objectives
After completing this unit, students should be able to:
•
Define tester resource in the resource definition file
•
Map signal to resource channel
•
Define Signal and SignalGroups in STIL
•
Be able to compile the project
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab Exercise
15
5
40
Minutes
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
59
5 – Defining Mixed Signal Resources and Signals
Defining Tester Resources
The resource definition assigns user-defined names to tester resources. This is done by
editing the tpTemplate.res file. This file is created by default the first time the user creates
an empty test program.
The sections inside the file are:
•
Resource—User defined name for the selected resource
•
Type—Resource type: DIBU, MULTI_WAVE, VIS16, DPS16, DD1096-16
•
Chassis—Chassis number, 0 for a Diamond 10 test system and (0..3) for a Diamond
40 test system
•
Slot—Slot number
Example resource definition file:
ResDef {
Resource "DPIN96_0" {
Type "DPIN96" Version 0;
Location {
Chassis 0;
Slot 0;
}
Resource "MULTIWAVE01_5" {
Type "MULTI_WAVE" Version 0;
Location {
Chassis 0;
Slot 5;
}
60
PN: 071-0961-00, January 2008
Mapping Signals to Channel
Mapping Signals to Channel
The signal map assigns signal names to user-defined resources and channels for each
site. To do this edit the tpTemplate.res file. This file is created by default the first time the
user creates an empty test program.
The sections inside the file are the following :
•
SiteCount—Number of sites in use for this test program
•
Signal—User defined signal
•
Resource—User defined resource defined in the resource definition file
•
Channel—Channel number used for the signal (declared by site)
Example:
SigMap {
SiteCount = 2;
Signal "Gen1_site" {
S 0 { R "MULTIWAVE01_5;C 0 }
S 1 { R "MULTIWAVE01_5;C 4 }
}
}
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
61
5 – Defining Mixed Signal Resources and Signals
Defining STIL Signals and SignalGroups
The STIL Signals block defines individual signal names and types. STIL signal names
must match the signal names declared in the signal map file. Only on signals block is
allowed per STIL file.
The syntax is:
Signals {
SignalName In|Out|InOut|Supply|Pseudo;
}
Example:
Signals {
trigger InOut;
Dig1_site Supply;
Gen1_site Supply;
}
Depending on the instrument, different types of signals are available. Table 3 lists the
summary for the different instruments and the associated signal types.
Table 3. instruments and Associated Signal Types
Instruments
Signal Types
MultiWave
Supply
VIS16
Supply
VIS2
Supply
DPS16
Supply
DIBU
Supply
DD1096-16
In/Out/InOut/Pseudo
The SignalGroups are declared the same way with the syntax below:
SignalGroups {
GroupName = ’sigref_expr’;
}
GroupName is the name of the SignalGroup. Sigref_exp is the list of signals or previously
defined SignalGroups that constitutes the signal group. Each name in the expression are
concatenated using the + sign.
62
PN: 071-0961-00, January 2008
Defining STIL Signals and SignalGroups
Knowledge Check
1. What signal type can a MultiWave resource have?
2. What STIL statement creates a ALL_Dig signalGroup made of Dig1_site and
Dig2_site?
3. Which file extension contains the Resource Definition?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
63
5 – Defining Mixed Signal Resources and Signals
Lab Exercise
Defining Signals and SignalGroups Lab
This lab creates the resource definition, signal definition, signals.stil, timing.stil and
example.stil files necessary for the test development. Refer to Appendix B to see the
loadboard schematic.
With a dual site loadboard fitted and working with MultiWave, VIS16, and DIBU, the
MultiWave, VIS16, DD1096-16, and DIBU resources are necessary.
1. Launch ITE in the ./training_mxsl/lab directory
2. Edit the Resource Definition in training_mxsl.res file to map the following resources.
Table 4. Resource Definition
Resource
Type
Chassis
Slot
DPIN96_0
DD1096-16
0
0
MULTIWAVE01_5
MultiWave
0
5
VIS16_3
VIS16
0
3
DIBU_9
DIBU
0
9
3. Validate and save when done.
4. Edit the Signal Mapping in training_mxsl.sig to map the signals in Table 5.
Table 5. Signal Map (Sheet 1 of 2)
64
Signal
Resource
Site0
Site1
Gen1_site
MULTIWAVE01_5
0
4
Dig1_site
MULTIWAVE01_5
1
5
Gen2_site
MULTIWAVE01_5
2
6
Dig2_site
MULTIWAVE01_5
3
7
LT1121_IN
VIS16_3
3
14
LT1121_OUT
VIS16_3
4
15
Bypass_VI
DIBU_9
0
1
Bypass_Multi
DIBU_9
2
3
PN: 071-0961-00, January 2008
Defining STIL Signals and SignalGroups
Table 5. Signal Map (Sheet 2 of 2)
Signal
Resource
Site0
Site1
DIBSENSE
DIBU_9
160
160
Relay5V
DIBU_9
130
130
Minus5V
DIBU_9
129
129
Plus5V
DIBU_9
128
128
trigger
DPIN96_0
12
12
5. Open a terminal.
6. Change to the tp directory.
7. Change to the patterns directory.
8. Create a file named signals.stil. This is where the Signals and the SignalGroups will
be defined.
9. Edit the signals.stil file and fill in this way:
a. Define the Gen1_site, Gen2_site, Dig1_site, Dig2_site, LT1121_IN, and
LT1121_OUT signals as Supply.
b. Define the Bypass_VI, Bypass_multi, Relay5V, Plus5V, Minus5V, and DIBSENSE
as Supply.
c. Define the trigger signal as InOut.
d. Add a SignalGroup ALL_Supplies containing ’Plus5V + Minus5V +
Relay5V’.
e. Add a SignalGroup ALL_ Relays containing ’Bypass_Multi + Bypass_VI’.
f.
Add a SignalGroup ALL_ Meas containing ’Dig1_site + Dig2_site’.
g. Add a SignalGroup ALL_ Src containing ’Gen1_site + Gen2_site’.
h. Add a SignalGroup ALL_ Multi containing ’ALL_Src + ALL_Meas’.
i.
Add a SignalGroup ALL_LT1121 containing ’LT1121_IN + LT1121_OUT’.
j.
Add a SignalGroup ALL_Dig containing ’trigger’.
k. Save all.
10. Create a file named timing.stil. This file is used to program the timing for the only
digital pingroup present for the ALL_dig test as shown:
Spec "frequency_spec" {
Category "frequency_cat" {
period_spec {Max ’100ns’; Typ ’50ns’; Min ’10ns’}
}
}
Selector "Min_freq_selector" {
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
65
5 – Defining Mixed Signal Resources and Signals
period_spec Min;
}
Selector "Typ_freq_selector" {
period_spec Typ;
}
Selector "Max_freq_selector" {
period_spec Max;
}
Timing "grossFuncTiming" {
WaveformTable "wftSimple" {
Period ’period_spec’;
Waveforms {
ALL_Dig {01 {’period_spec * 0.5’ D/U;}}
ALL_Dig {LHX { ’period_spec * 0.9’ L/H/X;}}
}
}
}
11. Create a file named levels.stil. This file is used to program the levels for the only
digital pingroup present for the ALL_dig test as shown:
Spec "level_spec" {
Category "level_cat" {
vdd_spec {Max ’6.0V’; Typ ’5.0V’; Min ’3.0V’}
}
}
Selector "Min_vdd_selector" {
vdd_spec Min;
}
Selector "Typ_vdd_selector" {
vdd_spec Typ;
}
Selector "Max_vdd_selector" {
vdd_spec Max;
}
DCLevels "grossLevels" {
All_Dig {
VIH ’vdd_spec-0.2’;
VIL ’0.2’;
VOL ’vdd_spec/2’;
VOH ’vdd_spec/2’;
}
}
12. Return to ITE.
13. Edit a Pattern example.stil inside the Program Developer:
a. Add an Include for signals/signalgroups as shown below:
Include signals.stil
66
PN: 071-0961-00, January 2008
Defining STIL Signals and SignalGroups
b. Add an include for the Timing as shown below:
Include timing.stil
c. Add an include for the Level as shown below:
Include levels.stil
d. Add the patternBurst and patternExec.
e. Add these steps to the pattern:
PatternBurst "ExamplePatBurst" {
PatList {
"ExamplePat"
}
}
PatternExec "ExampleExec" {
Selector "Typ_freq_selector";
Category "frequency_cat";
Timing "grossFuncTiming";
Selector "Typ_vdd_selector";
Category "level_cat";
DCLevels "grossLevels";
PatternBurst "ExamplePatBurst";
}
Pattern ExamplePat {
W "wftSimple";
V { ALL_Dig = 0;}
V { ALL_Dig = 0;}
V { ALL_Dig = 0;}
V { ALL_Dig = 0;}
Loop 512 { V { ALL_Dig = 0;}
V { ALL_Dig = 1;}
V { ALL_Dig = 0;}
V { ALL_Dig = 1;}
}
V { ALL_Dig = 0;}
f.
Save the file.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
67
5 – Defining Mixed Signal Resources and Signals
14. Create the training_mxsl.job job file and add all relevant sections in Main tab.
Figure 31. Main Tab
Hint — The equations.stil pattern does not contain pattern info, but variables used as
globals inside the test program can be changed from STIL Tool utility (SpecBlock
section).
68
PN: 071-0961-00, January 2008
Defining STIL Signals and SignalGroups
15. Set the STIL & APG tab as shown in Figure 32.
Figure 32. STIL & APG Tab
16. Set the Test Program tab as shown in Figure 33.
Figure 33. Test Program Tab
17. Create the makefile.
18. Compile the project.
19. Verify that the job will load.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
69
5 – Defining Mixed Signal Resources and Signals
Check Your Work
Review the work and have the instructor sign off this module.
70
PN: 071-0961-00, January 2008
6
DIBU for Mixed Signal Tests
Goal
Develop and debug code for the DIBU instrument.
Objectives
After completing this unit, students should be able to:
•
Understand the capabilities of the DIBU instrument
•
Exercise the user power supplies and CBits
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab Exercise
15
5
40
Minutes
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
71
6 – DIBU for Mixed Signal Tests
DIBU Hardware
The DIBU is an instrument used for several purposes:
•
Loadboard reference clocks are not accessible to the user.
•
Loadboard power supplies—Used to power an active filter to be inserted in the
MultiWave loopback lab. The +5 V relay also is used to insert/de-insert the filter.
•
Loadboard utilities—Use the CBits to switch the relays. This part is an open collector
so it has to be connected through the relay coil to the +5 V relay.
•
Loadboard busses—not available.
•
Power supplies for third party cPCI instruments—Provisioned for future extension or
third parties.
The DIB Utility instrument must reside in slot 9. The DIB resources are considered as
supply in the STIL signal definition.
72
PN: 071-0961-00, January 2008
DIBU Hardware
Figure 34. DIB Instrument Block Diagram
cscTester->DIBU()->Signal()->
Backplane
Backplane
Interface
Interface
DIB Utility
cscTester ()->DIBU()->Signal ()->
cPCI Bus
cPCI Bus
Utility
Utility
Power
Power
Supplies
Supplies
Backplane
Interface
Backplane
and
Interface
Instrument
and
Control
Instrument
+5 V+5
@V3@A3 A
-5 V @
-5 V3@A3 A
+5 V
+5 Rly
V Rly@
@55 A
A
+12 +12
V@
2
A
V@ 2A
+24 +24
V@
2A
V@ 2A
Floating
Floating
CBIT CBIT
(64)(64)
CBIT
CBIT
Drivers
Drivers
IDPROM Bus
DUT
DUT
Interface
Interface
turnOnSupply()
turnOnSupply ()
turnOffSupply()
turnOffSupply
()
turnOnCBits()
turnOnCBits()
turnOffCBits()
turnOffCBits()
setCBits()
setCBits()
getCBits()
getCBits()
readCBits()
readCBits()
IDPROM Bus
I2C Bus2
Control
I C Bus
SPI Bus
I/O
I/O
Buffers
Buffers
SPI Bus
GPIO Bus
GPIO Bus
Scope TP Bus
Scope TP Bus
DIB Present#
DIB Present#
48 V System/
V System
3.3 V48cPCI
getDIBStatus()
getDIBStatus()
Power
cPCI
+5 V @ 10 A
cPCI
Backplane
+5 V @ 10 A
Backplane
Power
+12 V @ 2 A
Power
-12 V+12
@V2@A2 A Supplies
Supplies
-12 V @ 2 A
400 MHz Calibration Reference
Clock
400 MHz Calibration Reference Clock
10 MHz Reference Clock
10 MHz Reference Clock
CLK_DUT
CLK_DUT
Calibration Bus (6 wire)
CAL_FH,
Calibration
Bus CAL_SH,
(6 wire)GRD_H, CAL_FL, CAL_SL, GRD_L
DIB Ground
SenseGRD_H, CAL_FL, CAL_SL, GRD_L
CAL_FH,
CAL_SH,
connect()
disconnect()
connect()
disconnect()
DIB Ground Sense
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
73
6 – DIBU for Mixed Signal Tests
Programming the DIBU
The cscTester->DIBU()->Signal()-> API selects the DIBU functions. This API accesses
the functions listed in Table 6.
Table 6. cscTester->DIBU()->Signal() Functions
API Function
Description
getDIBStatus ()
Returns the DIB status DIB_PRESENT or DIB_ABSENT
setCBits ()
Sets the CBIT (Utility Control Bits) value for the specified
signal or signal group
getCBits ()
Readback the CBIT status
readCBits ()
Readback the CBIT status
turnOnCBits ()
Turn on the CBIT
turnOffCBits ()
Turn off the CBIT
connect ()
Connect the CALBUS to the defined signal name or
signalGroup name
disconnect ()
Disconnect the CALBUS to the defined signal name or
signalGroup name
getConnectStatus ()
Readback the status of the calbus relay for a defined signal
turnOnSupply
Turns on supply on signal or signalGroup
turnOffSupply ()
Turns off supply on signal or signalGroup
getSupplyStatus ()
Reads back the supply status for a given signal
getChannelType ()
Reads back the channel type of a defined signal
CSCDIBStatus CSCDIBUPerSignalInterface::getDIBStatus
Returns DIB_PRESENT if the DIB sense line associated with the specified signal detects
the presence of a DIBU, otherwise DIB_ABSENT is returned.
If more than one DIBU is installed, a signal group may be used to check the status of
multiple DIBU DIB_PRESENT lines. In this case, DIB_PRESENT is returned if all the DIB
sense lines associated with the specified signal group detect the presence of a DIBU,
otherwise DIB_ABSENT is returned. If DIB_ABSENT is returned at least one of the DIB's
associated with the specified signal group is not present.
The channel associated with the specified signal must be assigned to the DIB_PRESENT
channel (Channel 160); otherwise, an error is returned.
74
PN: 071-0961-00, January 2008
Programming the DIBU
setCBits(vector< unsigned long long > & cBitValue )
Sets the CBIT (Utility Control Bits) value for the specified signal or signal group. It is
similar to setCBits() in that respect, but this function takes a vector of unsigned long long,
which is used to pass in a value for more than 64 channels. The first element holds bit0 to
bit63, the second element holds bit64 to bit127 and so on.
setCBits ( const unsigned long long cBitValue )
Applies the specified value to the CBIT's (Utility Control Bits) for the specified signal or
signal group on the first active site. No mask can be applied, so subsequent calls to this
API override previous CBIT settings. This function can be used to control up to 64 CBIT
signals at once. Each signal is pulled up with a 69 kOhm resistors to P12V and grounded
with 18 kOhm resistors. Logic inversion occurs before the open collector driver, therefore,
setting the CBIT value to 0 corresponds to setting open collector output grounded, which
creates 0 V on the output. Setting the CBit value to 1 corresponds to a Hi-Z state of open
collector, which creates approximately 2.5 V at the output.
unsigned long long getCBits ( )
Reads back the CBIT (Utility Control Bits) values for the specified signal or signal group
on the first active site.
Note — If invoked for a signal that is not associated with CBIT channels, an error
exception is thrown.
unsigned long long getCBits ( std::vector< unsigned long
long > & cBitValue )
Reads back the CBIT (Utility Control Bits) values for the specified signal or signal group
on the first active site. It is similar to getCBits() but this function returns a vector of
unsigned long long, which is used to return the values of more than 64 signals. The first
64-bit element holds bits0 to bit63, the second element holds bit64 to bit127 and so on.
Note — The CBIT values for the first 64 signals are also returned by the function.
unsigned long long readCBits ( )
Reads back the CBIT (Utility Control Bits) values using the sense line of the CBIT driver
for the specified signal or signal group on the first active site. This output comes from a
comparator with a fixed threshold (around 1.65 V). Therefore, the value returned may be
different than that returned by getCBits(). When this function is used to monitor the state
of the CBIT as a relay driver, the utility supply P12V must be enabled to supply a pull up
voltage. If P12V is not enabled and there is no external circuitry that biases the line, the
readback will always return a 0. virtual unsigned long long getCBits ()=0
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
75
6 – DIBU for Mixed Signal Tests
unsigned long long readCBits ( std::vector< unsigned long
long > & BitValue )
Reads back the CBIT (Utility Control Bits) values using the sense line of the CBIT driver
for the specified signal or signal group on the first active site. It is similar to readCBits(),
but this function returns a vector of unsigned long long, which is used to return the values
of more than 64 signals. The first 64-bit element holds bits0 to bit63, the second element
holds bit64 to bit127 and so on.
connect ( )
Connects the Calbus relays for the specified signal or signal group.
disconnect ( )
Disconnects the Calbus relays for the specified signal or signal group.
CSCConnectStatus getConnectStatus ()
Reads back the status of the Calbus relay for the specified signal or signal group on the
first active site. If a signal group is specified, the first signal element of the first active site
is used to get the status.
turnOnSupply ( CSCSupplyMode supplyMode )
Turns on (enables) the utility power supply for the specified signal or signal group. If
KEEP_ON mode is specified, the power supply is left on at EOT. In this case, turn the
power supply off in the user_unload() function.
turnOffSupply ()
Turns off (disables) the utility power supply for the specified signal or signal group.
CSCSupplyStatus getSupplyStatus ( )
Reads back the status of the utility power supply for the specified signal or signal group
on the first active site. If a signal group is specified, the first signal element of the first
active site is used to get the status.
CSCDIBUChannelType getChannelType ( )
Returns the DIBU channel type assigned to the specified signal or signal group on the
first active site. If a signal group is specified, the first signal element of the first active site
is used to get the status.
76
PN: 071-0961-00, January 2008
Programming the DIBU
The different resources available in the DIBU are listed in Table 7.
Table 7. Resource Assignment on DIBU
Resource
Channel
CBIT_0 ... CBIT_63
0..63
P5V
128
N5V
129
R5V
130
P12V
131
P24V
132
DIBSENSE
160
CALBUS
176
GPIO_0 ... GPIO_7
192..199
IDPROM
224
I2C_0
225
SPI_0
240
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
77
6 – DIBU for Mixed Signal Tests
Debugging DIBU
Visualize Tool is used to debug the setup of DIBU. The tool allows modification of
hardware while paused on a test.
Select Tools > Visualize from ITE to bring up Visualize Tool.
To begin:
1. Select Show > DIBU from Visualize Tool to display the DIBU Settings window.
Figure 35. Visualize Tool—DIBU Selection
2. Select the signals to be displayed.
3. Click Show to view them in Visualize Tool (see Figure 36).
78
PN: 071-0961-00, January 2008
Debugging DIBU
Figure 36. Visualize Tool—DIBU
Visualize Tool displays the current hardware settings of DIBU hardware.
Individual values can be modified and applied to the test system hardware while paused
on a test. White cells can be modified; gray cells cannot.
To modify a hardware value and re-run the test:
1. Change the value of a cell and press Enter. The cell changes color to yellow to
indicate that the value has been modified, but the hardware has not been updated.
2. Click the Set button to update hardware. Green cells indicate that the hardware was
successfully changed. Red cells indicate the hardware was not successfully changed.
3. Click the Get button to read back the hardware values.
4. Select Retest from the Execution tab to re-run the test with the new hardware
settings. Continuing from the pause and re-running the program resets the hardware
values.
5. Select Show Members from the right-click menu to expand a pin group.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
79
6 – DIBU for Mixed Signal Tests
Notes
80
PN: 071-0961-00, January 2008
Debugging DIBU
Knowledge Check
1. How many CBITs are available on the DIBU?
2. Which C++ API returns the DIBU status?
3. List three resources available on the DIBU:
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
81
6 – DIBU for Mixed Signal Tests
Lab Exercise
DIBU Lab
This lab uses some of the API dedicated to DIBU to use the loadboard power supplies
and the CBITs to change relay state.
To complete the lab:
1. In Program Developer, open the mxsl_training.cpp file and uncomment the DIBU_lab
function in user_main.
2. Modify the cbit_delay and pwr_delay parameters inside the equations.stil file. This file
is located in the patterns directory. The parameters are to be defined in spec section.
Spec "dibu_spec" {
Category "dibu_cat" {
cbit_delay = ’3ms’;
pwr_delay = ’3ms’;
}
}
3. Write a piece of code to check the DIBU presence at the very beginning of the
DIBU_lab function.
4. Read the code that is exercising the relays and power supplies. Ask the instructor if
something remains unclear.
5. Write the code to switch off relays and power supplies, and check their final status.
6. Compile the job.
7. Load and validate on the hardware.
8. Pause on one of the tests and use Visualize to observe and change the hardware
state.
Check Your Work
Review the work and have the instructor sign off this module.
82
PN: 071-0961-00, January 2008
7
MultiWave Instrument
Goal
Develop and debug code for the MultiWave instrument.
Objectives
After completing this unit, students should be able to:
•
Understand the capabilities of the MultiWave instrument
•
Execute loopback tests using the AWG and DIG parts
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab Exercise
90
5
2
Minutes
Minutes
Hours
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
83
7 – MultiWave Instrument
MultiWave Hardware
The MultiWave instrument is a multi-channel arbitrary waveform generator and digitizer
unit.
Four wide bandwidth generator channels and four wide bandwidth digitizer channels are
integrated into a single board. In addition to the converter path every I/O channel has a
separate high precision Kelvin PMU for parallel DC parametric tests. The MultiWave
instrument is designed for the Diamond Series test system and enables high performance
mixed signal tests from high precision audio to high-speed video applications. Sample
rates range from 0..250 MS/s with resolutions from 16-bit for video and up to 24-bit for
high precision audio tests. A flexible trigger routing with 10 trigger inputs and 10 trigger
outputs per instrument allows event synchronization to other system components, (digital
pattern).
Figure 37. MultiWave Block Diagram
Channel 7
DC / DC
Programmable
Ref Clock #1
CLK
Hi Speed
GigaSampler CLK
select
ADC
ADC
High
Gain/Filter/Control
AD Resolution
Amplifierselection
Gain/Filter/
AD
High-Speed
Hi Res
SRAM
Amplifier
ADC
PMU
DUT Interface
Trigger
MUX
Clock2
PMU
Gain/Filter/
Amplifier
Gain/Filter/
Amplifier
GigaSampler CLK
Gain/Filter/
AD
Amplifier
Gain/Filter/
AD
Amplifier
SRAM
DAC
PMU
Control
selection
CLK
Gain/Filter/
select
DA
Amplifier
Gain/Filter/
DA
Amplifier
PMU
GigaSampler CLK
Gain/Filter/
Amplifier
Gain/Filter/
Amplifier
84
DA
DA
PMU
ADC
GB
Filter
clock
selection
Filter
selection
GB
clock
Range
selection
High
AD Resolution
AD
High-Speed
Channel 1
SRAM
Input
mode
DIG ch2
DIG ch3
Input
MUX
DIG ch4
GigaBit Transiver Data
Channel 6
Filter
selection
GB
clock
Filter
selection
48 V
DIG ch1
PMU
SRAM
GB
clock
Hi Res
High
DAC
Resolution
High-Speed
+ Supply
Monitoring
Channel 3
Range GigaBit
Input
Transiver Trigger
selection
mode
High
Resolution
High-Speed
High
Resolution
Hi Speed
High-Speed
DAC
Channel 5
SRAM
Channel
FPGA
PMU
High
DA Resolution
DA
High-Speed
SRAM
Range
selection
Channel 2
Channel 0
GigaBit Transiver Data
Output
mode
PCI
Channel 4
Output
MUX
Trigger
AWG ch1
Range GigaBit
Output
Transiver Trigger
selection
mode
AWG ch2
Bus Interface
FPGA
AWG ch3
AWG ch4
SRAM
GB
clock
PMU
DAC
Channel
FPGA
Clock1
Gain/Filter/
Amplifier
Gain/Filter/
Amplifier
Channel
FPGA
Output MUX
Ref Clock
Generators
350 .. 400 MHz
SRAM
PMU
GigaBit Transiver Data
GigaBit Transiver Trigger
PN: 071-0961-00, January 2008
Arbitrary Waveform Generator
Arbitrary Waveform Generator
The four arbitrary waveform generator channels are designed to generate AC or DC
signals in a wide frequency range. Each generator path can be software configured as
high precision or high frequency signal path on-the-fly.
High Precision (Audio) Generator Path
Table 8. AWG High Precision (Audio) Generator Path Features (Sheet 1 of 3)
Feature
Specification
AWG Channels/Unit
4
DAC Resolution
24 bit
Min
Sampling Rate
Max Output Level Absolute
Differential
Typ
16 kS/s
Bandwidth AC
Note
Max
768 kS/s
Resolution: 0.01 Hz
500 kHz
-11.00 V
Output Impedance
+11.00 V
< 5 Ohm
Output Modes
Single Pos, Single
Neg, Differential
Amplitude Scaling
Realtime scaling
Kelvin Output
Force/Sense for
pos. and neg.
output
DC Output Accuracy
DC Baseline Positive/
Negative
Range
Resolution
Accuracy3)
±10.00 V
1.3 µV
±(0.1% + 800 µV)
±5.00 V
650 nV
±(0.1% + 800 µV)
±2.5 V
325 nV
±(0.1% + 800 µV)
±1.25 V
163 nV
±(0.1% + 800 µV)
±10.00 V
305 µV
±(0.1% + 800 µV)
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
85
7 – MultiWave Instrument
Table 8. AWG High Precision (Audio) Generator Path Features (Sheet 2 of 3)
Feature
Specification
Note
Common Mode Voltage
±10.00 V
Can be applied
from external node,
Total voltage not to
exceed ±11.0 V@
no load
Filter
Selectable LP Filter (-3 dB)
1.4 kHz
6 pole Butterworth
5.0 kHz
6 pole Butterworth
10 kHz
4 pole Butterworth
25 kHz
4 pole Butterworth
110 kHz
4 pole Butterworth
Bypass
AC Performance
Min
Typ
Max
Fsignal= 1kHz
fclk =384 kHz
LPF = 1.4 kHz
-1 dB FS
differential
THD
-110 dB
SFDR
110 dB
115 dB
SNR (0.1-25kHz)
103 dB
107 dB
Fsignal <25 kHz
fclk =384 kHz
LPF = 25 kHz
-1 dB FS
differential
THD
-100 dB
SFDR
110 dB
SNR (0.1-25 kHz)
103 dB
Fsignal <100 kHz
fclk =384 kHz
LPF = 110 kHz
-1 dB FS
differential
THD
-98 dB
SFDR
105 dB
86
-100 dB
PN: 071-0961-00, January 2008
Arbitrary Waveform Generator
Table 8. AWG High Precision (Audio) Generator Path Features (Sheet 3 of 3)
Feature
Specification
SNR (0.1-100 kHz)
Note
92 dB
Waveform Digitizer
The 4 waveform digitizer channels are designed to sample AC or DC signals in a wide
frequency range from high precision audio to high-speed video applications. Each
digitizer path can be software configured as high precision or high frequency signal path
on-the-fly.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
87
7 – MultiWave Instrument
High Precision (Audio) Digitizer Path
Table 9. High Precision (Audio) Digitizer Path AWF Features (Sheet 1 of 2)
Feature
Specification
Digitizer Channels / Unit
4
ADC Resolution
24 bit
Min
Sampling Rate
differential
Typ
48 kS/s
Bandwidth AC
Max Input Level
Note
Max
2.5 MS/s
Resolution: 0.01 Hz
500 kHz
-11.00 V
Input Bias Current
+11.00 V
<1 µA
Input Modes
Single Pos, Single
Neg, Differential
Range
Resolution
Accuracy **
Input Voltage Range
(AC+DC)
±10.00 V
1.3 µV
±(0.1% + 800 µV)
Single Ended
±5.00 V
650 nV
±(0.1% + 800 µV)
±2.5 V
325 nV
±(0.1% + 800 µV)
±1.25 V
163 nV
±(0.1% + 800 µV)
Range
Resolution
Accuracy
Input Voltage Range
(AC+DC)
±20.00 Vpp
2.6 µV
±(0.1% + 800 µV)
Differential (Vpos-Vneg)
±10.00 Vpp
1.3 µV
±(0.1% + 800 µV)
±5.00 Vpp
650 nV
±(0.1% + 800 µV)
±2.50 Vpp
325 nV
±(0.1% + 800 µV)
low or high input
connected to GND
Input differential
connected
Filter
Selectable LP Filter
(-3 dB)
1 kHz Notch
-35 dB Attenuation
25 kHz
4 pole Butterworth
100 kHz
4 pole Butterworth
250 kHz
4 pole Butterworth
Bypass
88
PN: 071-0961-00, January 2008
Arbitrary Waveform Generator
Table 9. High Precision (Audio) Digitizer Path AWF Features (Sheet 2 of 2)
Feature
Specification
Note
AC Performance
Min
Typ
Max
Fsignal= 1kHz
Condition
ODR = 78 kHz
LPF = 25kHz
-1 dB
FS differential
THD
-98 dB
SFDR
115
SNR (0.1-25kHz)
106
- 95 dB
High Frequency (Video) Generator Path
Table 10. High Frequency (Video) Generator Path AWG Features (Sheet 1 of 2)
Feature
Specification
AWG Channels / Unit
4
DAC Resolution
16 bit
Min
Sampling Rate
0
Bandwidth AC
100 MHz
Slew Rate
Note
differential
Typ
Max
250 MS/s
120 MHz
Resolution: 0.01 Hz
±1 V range
750 V/µs
Max Output Level
Absolute
-3.4 V
Output Impedance
47 Ohm
+3.4 V
50 Ohm
no load
53 Ohm
Output Modes
Single Pos, Single
Neg, Differential
Amplitude Scaling
Realtime scaling
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
89
7 – MultiWave Instrument
Table 10. High Frequency (Video) Generator Path AWG Features (Sheet 2 of 2)
Feature
Specification
Note
Range
Resolution
Accuracy
±3.4 V (4.0 V)
128 µV
±(0.1% + 3 mV)
±4 V Range, Max
output level is
±3.4 V@ no load
± 2.0 V
64 µV
±(0.1% + 3 mV)
no load
± 1.0 V
32 µV
±(0.1% + 3 mV)
no load
± 0.5 V
16 µV
±(0.1% + 3 mV)
no load
DC Baseline Positive/
Negative
±3.4
153 µV
±(0.1% + 3 mV)
Common Mode Output
Voltage
±3.0 V
DC Output Accuracy
±(0.1% + 3 mV)
Can be applied
from external node,
Total output voltage
not to exceed
±3.4 V @ no load
Filter
Selectable LP Filter
(-3 dB)
1.2 MHz
5 pole Butterworth
12 MHz
5 pole Butterworth
50 MHz
5 pole Butterworth
Bypass
AC Performance
Min
Typ
Max
Fsignal= 1 MHz
fclk=100 MHz,
Load = 50 Ohm,
LPF= 1.2 MHz,
-1 dB FS
THD
-92 dB
SFDR
83 dB
90 dB
SNR (0.1-25 MHz)
78 dB
80 dB
90
Condition
-85 dB
PN: 071-0961-00, January 2008
Arbitrary Waveform Generator
High Frequency Video Digitizer Path
Table 11. High Frequency Video Digitizer Path AWG Features (Sheet 1 of 2)
Feature
Specification
Digitizer Channels / Unit
4
ADC Resolution
16 bit
Min
Notes
differential
Typ
Max
Sampling Rate
1 MS/s
130 MS/s
Bandwidth AC
100 MHz
Max Input Level Absolute
-3.5 V
Input Impedance
47 Ohm
50 Ohm
53 Ohm
Single ended
termination mode
94 Ohm
100 Ohm
106 Ohm
Differential
terminated mode
10 µA
15 µA bias
current
high impedance
mode
150 MHz
Resolution: 0.01 Hz
±3.3 V range
+3.5 V
Input Modes
Single Pos, Single
Neg, Differential
Range
Resolution
Accuracy
Input Voltage Range
(AC+DC)
±3.33 V
100 µV
±(0.5% + 10 mV)
Single Ended
±1.00 V
30 µV
±(0.5% + 5 mV)
±0.5 V
15 µV
±(0.5% + 3 mV)
Input Voltage Range
(AC+DC)
±6.66 V
200 µV
±(0.5% + 10 mV)
Input differential
connected/pos
Differential (Vpos-Vneg )
±2.00 V
60 µV
±(0.5% + 5 mV)
±1.00 V
30 µV
±(0.5% + 3 mV)
Differential (VposVneg ) range/2.0
and neg peak
voltage not to
exceed
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
Low or high input
connected to GND
91
7 – MultiWave Instrument
Table 11. High Frequency Video Digitizer Path AWG Features (Sheet 2 of 2)
Feature
Specification
Notes
Filter
Selectable LP Filter
(-3dB)
1.2 MHz
5 pole Butterworth
12 MHz
5 pole Butterworth
50 MHz
5 pole Butterworth
Bypass
Min
AC Performance
Typ
Max
Condition
Fsignal= 1 MHz
fclk= 100 MHz,
LPF = 1.2 MHz,
-1 dB
THD
-92 dB
SFDR
90 dB
SNR (0.1-25 MHz)
75 dB
FS differential
PMU Data
Table 12. PMU Data Features (Sheet 1 of 3)
Feature
Specifications
Notes
PMU Channels / Unit
8
Shared between
differential P and N
node
Kelvin Force/Sense
Connections
Mode
Range
Resolution
Accuracy
Voltage Force
-4.0 V .. +14.00 V
16 bit
±(0.1%+5 mV)
Current Force
±2.0 µA
16 bit
±(0.1%+10 nA)
± 20.0 µA
16 bit
±(0.1%+100 nA)
±200.0 µA
16 bit
±(0.1%+1 µA)
± 2.0 mA
16 bit
±(0.1%+10 µA)
± 25.0 mA
16 bit
±(0.1%+100 µA)
-4.0 V .. +14.00 V
16 bit
±(0.1%+5 mV)
Voltage Measurement
92
PN: 071-0961-00, January 2008
Arbitrary Waveform Generator
Table 12. PMU Data Features (Sheet 2 of 3)
Feature
Specifications
Notes
Current Measurement
±2.0 µA
16 bit
±(0.1%+10 nA)
± 20.0 µA
16 bit
±(0.1%+100 nA)
±200.0 µA
16 bit
±(0.1%+1 µA)
± 2.0 mA
16 bit
±(0.1%+10 µA)
± 25.0 mA
16 bit
±(0.1%+100 µA)
Protection Circuit
Over Voltage
±80 V
Maximum external
over voltage
Over Current
Protection
260 mA
limiting current
<1 ms
instrument
disconnection time
**
Memory Configuration
Organization
HF mode
LF mode
Note
AWG Memory/Channel
36 bit x 1 Meg
2 MSample
1 MSample
Memory shared
between HF and
LF mode
Capture Memory/
Channel
36 bit x 1 Meg
2 MSample
1 MSample
Memory shared
between HF and
LF mode
Triggering AWG/Digitizer
Trigger Sources
Trigger Conditions
Software
Trigger from software command
Backplane Event
Trigger
For example, trigger from digital
pattern or other tester hardware
DUT Board
Trigger
Trigger event from DUT board signal
Rising Edge
Falling Edge
Both Edges
Gate
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
93
7 – MultiWave Instrument
Table 12. PMU Data Features (Sheet 3 of 3)
Feature
Specifications
Trigger Modes
Single Step
Continuous
94
Notes
Single sample step on every trigger
(AWG and Capture)
Continuous
wave I/O
mode
PN: 071-0961-00, January 2008
MultiWave Resource Definition
MultiWave Resource Definition
In order to use MultiWave in a project, the instrument has to be listed in the resource
definition file of the project. The correct chassis and slot where the instrument resides in
the test system has to be entered and a resource name for the instrument has to be
assigned. There are two ways to do this use the ITE *.res editor or use the Program
Developer ASCII editor to write the resources with the defined format.
Example project.res File
RESDEF 1.00 { }
Header {
Title "Resource definition for Multiwave test";
Date "Fri Oct 27 10:55:51 CEST 2006";
}
ResDef {
Resource "MULTIWAVE01" {
Type "MULTI_WAVE" Version 0;
Location {
Chassis 0;
Slot 3;
}
//
Location
} // Resource
} // ResDef
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
95
7 – MultiWave Instrument
MultiWave Signal Mapping
Each MultiWave board contains 8 resources (C 0..7). The resources are mapped to the
physical channels as shown in Table 13.
Table 13. MultiWave Instrument
Resource in “.sig“ File
Physical MultiWave channel
C0
DAC Channel 0 (AWG)
C1
ADC Channel 0 (Digitizer)
C2
DAC Channel 1 (AWG)
C3
ADC Channel 1 (Digitizer)
C4
DAC Channel 2 (AWG)
C5
ADC Channel 2 (Digitizer)
C6
DAC Channel 3 (AWG)
C7
ADC Channel 3 (Digitizer)
Example project.sig File
SIGMAP 1.00 { }
Header {
Title "Signal mapping for Multiwave test";
Date "Mon May 8 14:52:45 CEST 2006";
}
SigMap {
SiteCount = 1;
// single mode
Signal "Gen_1" {
S 0 { R "MULTIWAVE01";
}
Signal "Dig_1" {
S 0 { R "MULTIWAVE01";
}
Signal "Gen_2" {
S 0 { R "MULTIWAVE01";
}
Signal "Dig_2" {
S 0 { R "MULTIWAVE01";
}
Signal "Gen_3" {
S 0 { R "MULTIWAVE01";
}
Signal "Dig_3" {
S 0 { R "MULTIWAVE01";
96
C
0; }
C
1; }
C
2; }
C
3; }
C
4; }
C
5; }
PN: 071-0961-00, January 2008
MultiWave Signal Mapping
}
Signal "Gen_4" {
S 0 { R "MULTIWAVE01"; C
}
Signal "Dig_4" {
S 0 { R "MULTIWAVE01"; C
}
} // SigMap
6; }
7; }
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
97
7 – MultiWave Instrument
MultiWave API
CSCMultiWaveDDSPerSignalInterface Class
Contains the basic DDS reference clock setup used to drive the on board PLL master
clocks.
Each MultiWave boards has two DDS channels and two PLL master clock units. Each
channel sample clock can be derived from the two PLL master clocks with independent
per channel clock dividers. The DDS frequency has a range of 350–385 MHz. The PLL
multiplies the DDS clock with a factor of 10 to 3.5-3.85 GHz, which forms the two master
clocks.
setRefFrequency(CSCClockSelection clock_e, double refFrequ)
Setup DDS frequency for master clock generation. Two DDS units are available per board
clock_e:
CLOCK_1, CLOCK_2
Master clock source
refFrequ:
350..385 MHz
DDS frequency -> x10 = PLL frequency
powerUpRefClock(CSCClockSelection clock_e, bool enable)
Power up of onboard DDS chip. Auto enabled during program load
clock_e:
CLOCK_1,CLOCK_2
Master clock source
enable:
true, false
Power up/down reference clock
enableRefClock(CSCClockSelection clock_e, bool enable)
Enable clock output of DDS. Auto enabled during program load
clock_e:
CLOCK_1,CLOCK_2
Master clock source
enable:
true, false
enable/disable reference clock
CSCMultiWaveClockPerSignalInterface Class
setClockDivider(CSCClockSelection clock_e, unsigned long divider)
Setup master clock divider for individual channels
clock_e:
CLOCK_1,CLOCK_2
Master clock source
divider:
1..(2^32-1)
per channel divider ratio
setClockEnable(bool enable)
Alternative sample clock setup programs all clock settings in one command:
enable:
98
true, false
Enable/disable divider output
PN: 071-0961-00, January 2008
MultiWave API
setClock(CSCClockSelection clock, double freq, unsigned long divider, bool
enable)
Enables and programs DDS frequency (PLL freq/10) and setup divider for sample clock
clock_e:
CLOCK_1,CLOCK_2
Master clock source
freq:
3.5 GHz .. 3.9 GHz
Master clock PLL frequency/10
Converter Sample Clock Range:
LF - AWG: 0 .. 25 MHZ (ICLK)
Output Data Rate ODR = ICLK / 32
LF - DIG: 1 MHz .. 20 MHz (ICLK)
Output Data Rate = ICLK / OSR
OSR (Over Sampling Ratio) see setLfOSRMode()
for more details
HF- AWG: 1 MHz .. 250 MHz
HF - DIG: 1 MHz .. 130 MHz
divider:
1..(2^32-1)
divider ratio to generate sample clock
enable:
true, false
enable/disable master clock
CSCMultiWaveOutputCtrlPerSignalInterface Class
Contains all functionality to control the generator path settings. Four high-speed and four
high precision generator paths are available per MultiWave board. The analog highspeed and high precision paths share the same DUT output lines and can be alternatively
selected in the test program upon demand.
apply (CSCMultiwaveRipples waveObject)
Apply a Waveformobject to generator.
waveObject:
pointer to a waveform object
setHfClock(bool enable)
enable:
true, false
enable/disable sample clock for HF Generator
setLfClock(bool enable)
enable:
true, false
enable/disable sample clock for LF Generator
CSCRunStatus status getAWGStatus()
status:
READY, BUSY
AWG is ready or busy
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
99
7 – MultiWave Instrument
setHfFilter(CSCFilterSelections filter)
Select a low pass filter for the high-speed generator path. The -3 dB attenuation point of
the filter is located at the frequencies listed below:
filter:
BYPASS
No Low Pass Filter
F_1P2_MHZ
1.2 MHz LP (5 pole Butterworth)
F_12_MHZ
12 MHz LP (5 pole Butterworth)
F_50_MHZ
50 MHz LP (5 pole Butterworth)
setLfFilter(CSCFilterSelections filter)
Select a low pass filter for the high precision, low frequency generator path. The -3dB
attenuation point of the filter is located at the frequencies listed below.
filter:
BYPASS
No LP Filter
F_1P4_KHZ
1.4 kHz LP (6 pole Butterworth)
F_5_KHZ
5 kHz LP (6 pole Butterworth)
F_10_KHZ
10 kHz LP (4 pole Butterworth)
F_25_KHZ
25 kHz LP (4 pole Butterworth)
F_110_KHZ
100 kHz LP (4 pole Butterworth)
setHfRange(double range)
Setup the high-speed generator range.
Note — Range refers to maximum amplitude to be generated without external load. With
a load of 50 Ohm for optimal line termination only half of the amplitude applies on the
generator output.
range:
x <= 0.5 V
±0.5 V range
(0.25 V @ 50 Ohm load)
0.5 < x <= 1 V
±1.0 V range
(0.5 V @ 50 Ohm load)
1 < x <= 2 V
±2.0 V range
(1 V @ 50 Ohm load)
x>2V
±3.4 V range
(1.7 V @ 50 Ohm load)
setHfBaseline(double pos, double neg )
alternative: setHfDcBase(double neg,double pos)
Setup DC baseline voltage for positive and negative high frequency generator output
terminal.
Note — Baseline voltage setting applies for open load.
100
pos:
±3.4 V
positive baseline
neg:
±3.4 V
negative baseline
PN: 071-0961-00, January 2008
MultiWave API
setLfRange(double range)
Setup the high precision, low frequency generator range.
range:
x <= 1.25
1.25 V input range
1.25 < x <= 2.5
2.50 V input range
2.5 < x <= 5.0
5.00 V input range
x > 5.0
10.00 V input range
setLfBaseline(double pos, double neg )
alternative: setLfDcBase(double neg,double pos)
Setup DC baseline voltage for positive and negative low frequency generator output
terminal.
pos:
-10.0 .. +10.0 V
positive baseline
neg:
-10.0 .. +10.0 V
negative baseline
start()
Start generator
stop()
Stop generator
CSCMultiWaveInputCtrlPerSignalInterface Class
Contains all functionality to control the digitizer input path settings. Four high-speed and
four high precision digitizer paths are available per MultiWave instrument. The analog
high-speed and high precision paths share the same DUT input lines and can be
alternatively selected in the test program upon demand.
powerUpLf(bool powerUp)
Enable/disable Low Frequency ADC. Auto powered up during program load.
powerUp:
true, false
resetLf()
Reset Lf Path.
setHfClock(bool enable)
enable:
true, false
Enable/disable sample clock for HF ADC
setLfClock(bool enable)
enable:
true, false
Enable/disable sample clock for LF ADC
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
101
7 – MultiWave Instrument
setLfOSRMode(unsigned long divider, CSCFilterTypeSettings mode)
Setup the AD-Converter operating mode. The converter core is build up as a SigmaDelta-Converter. The converter has a decimation unit and a built in FIR filter. The output
data rate (FODR) depends on the converter clock (FICLK) and the OverSampling Ratio
(OSR).
FICLK = FODR * OSR
The Passband Frequency depends on the OverSampling Ratio and one of the two FIR
filter settings.
Table 14 shows the possible settings and the achievable output data rates and baseband.
Table 14. Converter Settings
Decimation
Mode
Output Data Rate
Pass Band
Frequency
8
FULLY_FILTERED
0.125*ICLK
0.05*ICLK
16
FULLY_FILTERED
0.0625*ICLK
0.025*ICLK
32
FULLY_FILTERED
0.03125*ICLK
0.0125*ICLK
64
FULLY_FILTERED
0.015625*ICLK
0.00625*ICLK
128
FULLY_FILTERED
0.0078125*ICLK
0.003125*ICLK
256
FULLY_FILTERED
0.00390625*ICLK
0.0015625*ICLK
4
PARTIAL FILTERED
0.25*ICLK
0.0675*ICLK
8
PARTIAL FILTERED
0.125*ICLK
0.028125*ICLK
16
PARTIAL FILTERED
0.0625*ICLK
0.0140625*ICLK
32
PARTIAL FILTERED
0.03125*ICLK
0.00703125*ICLK
64
PARTIAL FILTERED
0.015625*ICLK
0.003515625*ICLK
128
PARTIAL FILTERED
0.0078125*ICLK
0.0017578125*ICLK
ICLK (converter clock derived from board master clock): 1 MHz .. 20 MHz
102
PN: 071-0961-00, January 2008
MultiWave API
setHfLowPassFilter(CSCFilterSelections filter)
Select a low pass filter for the high-speed digitizer path. The -3 dB attenuation point of the
filter is located at the frequencies listed below.
filter:
BYPASS
No LP Filter
F_1P2_MHZ
1.2 MHz LP (5 pole Butterworth)
F_12_MHZ
12 MHz LP (5 pole Butterworth)
F_50_MHZ
50 MHz LP (5 pole Butterworth)
setLfLowPassFilter(CSCFilterSelections filter)
Select a low pass filter for the high precision, low frequency digitizer path. The -3 dB
attenuation point of the filter is located at the frequencies listed below.
filter:
BYPASS
No LP Filter
NOTCH
1 kHz, 40 dB Notch filter
F_25_KHZ
25 kHz LP (4 pole Butterworth)
F_100_KHZ
100 kHz LP (4 pole Butterworth)
F_250_KHZ
250 kHz LP (4 pole Butterworth)
setHfRange(double range , CSCChannelConfiguration mode )
Setup the high frequency digitizer range.
range:
mode:
x <= 0.5
0.5 V input range
0.5 < x <= 1.0
1.0 V input range
x > 1.0
3.3 V input range
SINGLE_ENDED
x 1.0 scaling
DIFFERENTIAL
x 0.5 attenuator for correct scaling
setLfRange(double range, CSCChannelConfiguration mode)
Setup the high precision, low frequency digitizer range.
range:
mode:
x <= 1.25
1.25 V input range
1.25 < x <= 2.5
2.50 V input range
2.5 < x <= 5.0
5.00 V input range
x > 5.0
10.00 V input range
SINGLE_ENDED
x 1.0 scaling
DIFFERENTIAL
x 0.5 attenuator for correct scaling
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
103
7 – MultiWave Instrument
setHfInputTermination(CSCChannelConfiguration mode)
mode:
SINGLE_ENDED
Both P and N are terminated with 50 Ohm to ground
DIFFERENTIAL
P and N are terminated with 100 Ohm differential
setHfTermMinus(CSCDIGHighFreqTermination term)
term:
DIG_HF_TERMINATION_50
50 Ohm input impedance
DIG_HF_TERMINATION_500
High impedance input
setHfTermPlus(CSCDIGHighFreqTermination term)
term:
DIG_HF_TERMINATION_50
50 Ohm input impedance
DIG_HF_TERMINATION_500
High impedance input
start()
Start digitizing
stop()
Stop digitizing
CSCRunStatus status getStatus()
Readback actual digitizer status
status:
READY
Digitizer ready
BUSY
Digitizer is busy sampling data
bool waitForCaptureFinish ( double t)
This functions waits until the digitizer has finish running sample job. The command is
applied site by site inside a serial loop for multi site applications.
104
t:
Time in seconds for timeout (by default 5.0)
true
Digitizer(s) finished
false
Digitizer(s) did not finish in selected time
PN: 071-0961-00, January 2008
MultiWave API
CSCMultiWaveMemoryPerSignalInterface Class
Contains the memory management functions of the generator and digitizer paths.
createWaveform(CSCMultiWaveArbitraryWave *wave)
Allocate waveform in capture memory.
wave:
Pointer to waveform object to be allocated in capture memory
removeWaveform(CSCMultiWaveArbitraryWave *wave)
Free memory space in generator or capture memory.
wave:
Pointer to waveform object to be removed from generator or capture memory
loadWaveform(CSCMultiWaveArbitraryWave *wave)
Download data into generator memory from waveform object.
wave:
Pointer to waveform object
getWaveform(CSCMultiWaveArbitraryWave *wave)
Upload data from capture memory and store data in waveform object.
wave:
Pointer to waveform object
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
105
7 – MultiWave Instrument
CSCMultiWaveMuxPerSignalInterface Class
Contains the board resources connection commands of to the DUT connector.
connect(CSCLinkPath path, CSCMuxPath mode)
path:
SIGNAL_PATH_LF
Low frequency path
SIGNAL_PATH_HF
High frequency path
PMU_PATH
PMU path
GND_SENSE
Ground sense path
mode:
possible connections for SIGPATH_LF:
MUX_DIFFERENTIAL
Connect P and N terminals
MUX_SINGLE_P
Connect P terminal, N is grounded
MUX_SINGLE_N
Connect N terminal, P is grounded
MUX_VCM_SENSE_INTERN Common mode AWG voltage AGND or GND_S (see
GND_SENSE)
MUX_VCM_SENSE_EXTERN Common mode AWG voltage from DUT connector
MUX_KELVIN_P
Not verified yet / P and P_Sense in LF AWG mode
MUX_KELVIN_N
Not verified yet / N and N_Sense in LF AWG mode
MUX_KELVIN_DIFF
Not verified yet / F/S for P and N in LF AWG mode
MUX_DISCONNECT
Remove all connections
possible connections for SIGPATH_HF:
MUX_DIFFERENTIAL
Connect P and N terminals
MUX_SINGLE_P
Connect P terminal, N is grounded
MUX_SINGLE_N
Connect N terminal, P is grounded
MUX_VCM_SENSE_INTERN Common mode AWG voltage AGND or GND_S (see
GND_SENSE)
MUX_VCM_SENSE_EXTERN Common mode AWG voltage from DUT connector
MUX_DISCONNECT
Remove all connections
possible connections for PMUPATH:
106
MUX_KELVIN_P
PMU connected to P terminals with Kelvin F/S connection
MUX_KELVIN_N
PMU connected to N terminals with Kelvin F/S connection
MUX_SINGLE_P
PMU connected to P Force terminal, internal F/S link closed
PN: 071-0961-00, January 2008
MultiWave API
MUX_SINGLE_N
PMU connected to N Force terminal, internal F/S link closed
MUX_DISCONNECTRemove all connections
possible connections for GND_SENSE:
MUX_EXTERN
Channel ground referenced to Ch_GND_Sense on DUT
connector
MUX_INTERN
Channel ground referenced to AGND
MUX_DISCONNECTRemove all connections
CSCMultiWaveArmCtrlPerSignalInterface Class
Contains the arming of the generator and digitizer channels. The basic channel setup is
written to the hardware.
armAWG(CSCMultiWaveArbitraryWave *wave)
Prepare AWG setup: amplitude scaling, amplitude vs. range check, memory handling,
and fill internal data pipeline
wave:
Pointer to waveform object to be generated
The waveform object can be a type of arbitrary wave, sine or ramp wave.
armDIG(CSCMultiWaveArbitraryWave *wave)
Prepare digitizer setup: memory handling, sample length
wave:
Pointer to waveform object to be digitized.
CSCMultiWavePmuPerSignalInterface Class
Contains the setup and measurement functions for the per channel PMU functionality.
Each MultiWave board contains 8 PMU circuits. The PMU is shared between the positive
and negative channel inputs and outputs.
setForceMode(CSCForceMode mode)
Setup the PMU operation mode
mode:
VFVM
Force voltage and measure voltage
VFIM
Force voltage and measure current
IFVM
Force current and measure voltage
IFIM
Force current and measure current
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
107
7 – MultiWave Instrument
setVForce(double voltage, double range)
Set PMU force voltage
voltage:
-4..+14 V
Force voltage setting
range:
-4..+14 V
Only 1 force range exists, use same value as force setting
setIForce(double current, double range)
Set PMU force current
current:
-25 mA..+25 mA
force current, not to exceed actual range setting
range:
x <= 2 µA
2 µA range
2 µA < x <= 20 µA
20 µA range
20 µA < x <= 200 µA 200 µA range
200 µA < x <= 2 mA
2 mA range
x > 2 mA
25 mA range
setMultiple(unsigned long count)
Set number of single measurements done on each PMU trigger. The measurement result
is the average value over all single measurements. The internal PMU sample rate is
100 kHz.
count:
0..2^16
setVClampPositive(double clamp)
Set positive voltage clamp. Notice: Negative value not to exceed positive clamp value.
clamp:
-5..+15 V
setVClampNegative(double clamp)
Set negative voltage clamp. Notice: Negative value not to exceed positive clamp value.
clamp:
-5..+15 V
linkFS(bool linkIt)
linkIt
true, false
close, open internal PMU Force/Sense link
turnOn()
Enable PMU circuit
turnOff()
Disable PMU circuit
108
PN: 071-0961-00, January 2008
MultiWave API
trigger()
Start PMU measurement
double getMeasValueV()
return voltage measurement value
double getMeasValueI()
return current measurement value
setVMeasRange(double range)
alternative: setExpectedVoltage(double range)
Set voltage measurement range.
range:
0 <= x <= 10
0..+10 V measurement range
x < 0, x > 10
-4..+14 V measurement range
setIMeasRange(double range)
alternative: setExpectedCurrent(double range)
Set current measurement range
range:
x <= 2 µA
2 µA range
2 µA < x <= 20 µA
20 µA range
20 µA < x <= 200 µA
200 µA range
200 µA < x <= 2 mA
2 mA range
x > 2 mA
25 mA range
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
109
7 – MultiWave Instrument
MultiWave Trigger Modes
The Trigger Modes are based on the resource. The methods listed below apply the same
way to Output and Input. They are part of CSCMultiWaveOutputCtrlPerSignalInterface
and CSCMultiWaveInputCtrlPerSignalInterface. Since they share the same events they
are grouped in this section.
They are mostly used with the eventRouting to create a coherent triggering method.
forceEvent (CSCTriggerForceEvent event)
Force an event through software command.
event:
FE_STEP_TRIGGER, FE_RAMP_UPC, FE_RAMP_DOWN, FE_START
selectStartInput(CSCtriggerQualification triggerQualification)
Setup Generator start source. The start source can be either controlled from SOFTWARE
through the command forceEvent() from a back plane event or through the DUT interface
trigger line.
triggerQualification:
TQ_SOFTWARE(default), TQ_GATE_LB, TQ_GATE_BP,
TQ_GATE_INVERTED_LB, TQ_GATE_INVERTED_BP,
TQ_RISING_EDGE_LB, TQ_RISING_EDGE_BP,
TQ_FALLING_EDGE_LB, TQ_FALLING_EDGE_BP,
TQ_ANY_EDGE_LB, TQ_ANY_EDGE_BP
selectStepTrigger(CSCtriggerQualification triggerQualification)
Setup the control signal for the single trigger mode. A single sample is generated or
digitized when a trigger occurs. The trigger source can be either from SOFTWARE, from
the backplane trigger line, or from the DUT interface trigger line. The TQ_DISABLE
mode, which is the default value, switches back to normal generator/sample mode.
triggerQualification:
110
TQ_SOFTWARE generates trigger for next generator sample
with software command forceEvent(FE_STEP_TRIGGER),
TQ_RISING_EDGE_LB, TQ_RISING_EDGE_BP,
TQ_FALLING_EDGE_LB, TQ_FALLING_EDGE_BP,
TQ_ANY_EDGE_LB, TQ_ANY_EDGE_BP, TQ_DISABLE
(default)
PN: 071-0961-00, January 2008
MultiWave API
AWG single step trigger by software control example:
//prepare Multiwave awg to be triggered in step by software
cscTester->MultiWave()->Signal("myAWGChannel")
->selectStepTrigger(TQ_SOFTWARE);
//arm awg
cscTester->MultiWave()->Signal("myAWGChannel")->armAWG(&awgWave);
// start AWG
cscTester->MultiWave()->Signal("myAWGChannel")->start();
//make 10 steps by sw trigger
for (i=0;i<10;i++){
CSCUtil::wait ( 1 ms );
cscTester->MultiWave()->Signal("myAWGChannel")
->forceEvent(FE_STEP_TRIGGER);
}...
// stop AWG
cscTester->MultiWave()->Signal("myAWGChannel")->stop();
AWG hardware trigger example:
// start AWG on trigger condition on rising edge of loadboard line event
cscTester->MultiWave()->Signal("myAWGChannel")
->selectStartInput(TQ_RISING_EDGE_LB);
cscTester->MultiWave()->Signal("myAWGChannel")
->armAWG(&awgWave);
... // wait for the hardware trigger line
// stop AWG
cscTester->MultiWave()->Signal("myAWGChannel")->stop();
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
111
7 – MultiWave Instrument
Definition of Waveform Object
CSCMultiWaveArbitraryWave
This object is used to generate and digitize arbitrary waveforms. Random data can be
downloaded to the per channel generator memory. Also captured data from the digitizer
memory is uploaded using the arbitrary waveform object.
setDspWaveform (DspWaveform *wave)
Set pointer to waveform data.
wave:
Pointer to waveform data
setPath (CSCSignalPath path)
Select the generator or digitizer signal path. This is necessary due to the different data
format in the memory for data up and download.
path:
LOW_FREQUENCY , HIGH_FREQUENCY
setIncrement (unsigned long increment)
Set the number of ADC samples skipped during waveform recording.
For example, 1 store every sampled data, 4: store every 4th converter sample and skip
three samples
increment:
1..max nr of samples
Note — For arbitrary generator mode the increment must be set to 1. This means every
sample is generated.
void setAmplitude (double amplitude)
Setup the amplitude of the waveform to be generated. The amplitude must not exceed
the range setting of the generator.
amplitude:
0..range
void setLength (unsigned long length)
Setup the length of the sample array.
length:
1..1M
setLoop (double mode)
Setup the loop mode for waveform generation.
mode:
0..n
Number of waveform cycles to generate
0 (LOOP_FOREVER)
Endless waveform generation
For example, 1.3 generates 1.3 x the waveform
112
PN: 071-0961-00, January 2008
MultiWave API
setOffset (unsigned long offset)
Set start position in the waveform data for generator mode.
offset:
0.. nr of samples
CSCMultiWaveSineWave
Each generator channel contains a sine wave table with a length of 1024 samples in the
onboard FPGA. This allows generation of sine waves without downloading data to the
onboard memory.
setPath (CSCSignalPath path)
Select the generator signal path. This is necessary due to the different data format of the
sine wave table.
path:
LOW_FREQUENCY , HIGH_FREQUENCY
setAmplitude (double)
Setup the amplitude of the waveform to be generated. The amplitude must not exceed
the range setting of the generator.
amplitude:
0..range
setIncrement (unsigned long increment)
Set the increment value of the data pointer of the sine waveform data. With the help of the
increment it is possible to generate different sine output frequencies without touching the
converter sample clock.
For example, increment of 3 triples the output frequency compared to increment 1. Only
every 3rd sample of the internal sine wave table gets generated.
increment:
1..1023
setLoop (double mode)
Setup the loop mode for waveform generation.
mode:
0..n
Number of waveform cycles to generate
0 (LOOP_FOREVER)endless waveform generation
For example 1.3 generates 1.3 x the waveform
setPhaseOffset (double phOffset)
Set the start position for sine waveform generation in the internal sine wave table.
double
phOffset:
0..2*PI
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
113
7 – MultiWave Instrument
CSCMultiWaveRampWave
This wave object is used to generate a triangle waveform on the generator output. This
signal can be used for threshold tests on DUT inputs. A special loop ramp mode will be
available soon.
setPath (CSCSignalPath path)
Select the generator or digitizer signal path. This is necessary due to the different data
format in the memory for data up and download.
path:
LOW_FREQUENCY , HIGH_FREQUENCY
setLoop (double mode)
Setup the loop mode for waveform generation.
mode:
0..n
Number of waveform cycles to generate
0 (LOOP_FOREVER)endless waveform generation
For example, 1.3 generates 1.3 x the waveform
setMax (double maxU)
Set maximum voltage of triangle.
setMin (double minU)
Set minimum voltage of triangle.
setSlewRatePositive (double pos)
Set slew rate of rising triangle slope.
pos:
-gen range … + gen range
V/converter update
Converter update can be sample clock or external trigger event.
setSlewRateNegative (double neg)
Set slew rate of falling triangle slope.
neg: -gen range … + gen range
V/converter update
Converter update can be sample clock or external trigger event.
setStartDirection (rampDirection_t direction)
Set ramp direction for start of triangle.
direction: DIRECTION_POSITIVE, DIRECTION_NEGATIVE
setStartOffset (double start)
Set start voltage level for triangle generation.
start:
114
-generator range..
+ generator range
PN: 071-0961-00, January 2008
Low Frequency AWG Programming Overview
Low Frequency AWG Programming Overview
Four identical LF DAC channels per MultiWave instrument.
Figure 38. Low Frequency AWG Programming
setLfFilter(lpfilter )
armAWG(&wave)
wave: DspWaveform *wave
loadWaveform(&wave)
wave: DspWaveform *wave
start()
stop()
Data
normalized to
-1.0 ..+1.0
24 bit
Output Data Rate:
ODR = ICLK/32
lpfilter:
F_1P4_KHZ, F_5_KHZ,
F_10_KHZ, F_25_KHZ,
F_110_KHZ, BYPASS
LF
DAC
X
NOTE:
Sum of LfBaseline, external V_COMM/
GND_S and LF_DAC voltage not to
exceed ±11.0 V at AWG output
setLfRange(range)
range:
1.25 V, 2.5 V, 5.0 V, 10.0 V
DAC_CHx_P_S
DAC_CHx_P
+
LP_Filter
Fsample = ICLK/32
connect(path, mode)
path:
SIGNAL_PATH_HF,
SIGNAL_PATH_LF
mode:
MUX_SINGLE_P,
MUX_SINGLE_N,
MUX_KELVIN_P,
DAC_CHx_N
MUX_KELVIN_N,
MUX_KELVIN_DIFF,
DAC_CHx_N_S
MUX_DIFFERENTIAL
MUX_DISCONNECT
Range
+
ICLK: 0..25 MHz
Divider
/N
Real Time Scaling:
waveObj.setAmplitude(ampl)
ampl: not to exeed range setting
max. +/-10.0 V
x10
DAC_CHx_VCOMM
DDS1
(CLK1)
setClock(clk, pllFreq, divider , enable )
clk:
pllFreq:
divider:
enable:
CLOCK_1, CLOCK_2
3.5 GHz .. 3.9 GHz
140..2^32
true, false
setLfBaseline(pos, neg)
pos,neg: -10.0 V .. +10.0 V
3.5 .. 4.0 GHz
DDS2
(CLK2)
350..400 MHz
LF DAC Connections
DAC_CHx_P_S
DAC_CHx_P
+
DAC_CHx_N
connect(path,mode)
path:
SIGNAL_PATH_LF
mode:
MUX_VCM_SENSE_EXTE
RN
MUX_VCM_SENSE_INTE
RN
connect(path,mode)
path:
GND_SENSE
mode:
MUX_INTERN
MUX_EXTERN
AGND
DAC_CHx_GND_S
AGND
DUT Interface
DAC_CHx_N_S
DAC_CHx_VCOMM
DAC_CHx_GND_S
A_GND
DAC_CHx
(x = 0,1,2,3)
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
115
7 – MultiWave Instrument
Low Frequency Digitizer Programming Overview
Four identical LF ADC channels per MultiWave instrument.
Figure 39. Low Frequency Digitizer Programming
connect(path,mode)
path:
mode:
DUT Interface
setLfLowPassFilter(lpfilter)
SIGNAL_PATH_HF,
SIGNAL_PATH_LF
lpfilter :
NOTCH (1kHz,-40dB),
F_22_KHZ, F_100_KHZ,
F_250_KHZ, BYPASS
MUX_SINGLE_P,
MUX_SINGLE_N,
MUX_DIFFERENTIAL
MUX_DISCONNECT
armAcp(&wave)
wave: DspWaveform *wave
start()
stop()
ADC_CHx_P
x1
x 0.5
Range
getWaveform(&wave)
wave: DspWaveform *wave
LF
ADC
LP_Filter
Data
ADC_CHx_N
ICLK: 1 MHz..20 MHz
AGND
ADC_CHx_GND_S
AGND
connect(path,mode)
path:
GND_SENSE
mode:
MUX_INTERN
MUX_EXTERN
setLfRange(range, mode)
range:
1.25 V, 2.5 V, 5 V, 10 V
mode:
SINGLE_ENDED (x1), DIFFERENTIAL (x0.5)
4
8
16
32
64
128
mode:
FULLY_FILTERED
FULLY_FILTERED
FULLY_FILTERED
FULLY_FILTERED
FULLY_FILTERED
FULLY_FILTERED
Outp Data Rate:
0.125*ICLK
0.0625*ICLK
0.03125*ICLK
0.015625*ICLK
0.0078125*ICLK
0.00390625*ICLK
Pass Band Frequ:
0.05*ICLK
0.025*ICLK
0.0125*ICLK
0.00625*ICLK
0.003125*ICLK
0.0015625*ICLK
PART_FILTERED
PART_FILTERED
PART_FILTERED
PART_FILTERED
PART_FILTERED
PART_FILTERED
0.25*ICLK
0.125*ICLK
0.0625*ICLK
0.03125*ICLK
0.015625*ICLK
0.0078125*ICLK
0.0675*ICLK
0.028125*ICLK
0.0140625*ICLK
0.00703125*ICLK
0.003515625*ICLK
0.0017578125*ICLK
setClock(clk, pllFreq, divider , enable )
/N
x10
setLfOSRMode(decimation, mode )
decimation:
8
16
32
64
128
256
Divider
DDS1
(CLK1)
3.5 .. 3.9 GHz
clk:
pllFreq:
divider :
enable:
CLOCK_1, CLOCK_2
3.5 GHz .. 3.9 GHz
175..2^32
true, false
DDS2
(CLK2)
350..390 MHz
Digitizer Connections
ADC_CHx_P_S
Differential
Single_N
Single_P
ADC_CHx_P .
ADC_CHx_N .
ADC_CHx_N_S
ICLK: 1 MHz ..20 MHz
ADC_CHx_GND_S
A_GND
ADC_CHx
116
(x = 0,1,2,3)
PN: 071-0961-00, January 2008
High Frequency AWG Programming Overview
High Frequency AWG Programming Overview
Four identical HF DAC channels per MultiWave instrument.
Figure 40. High Frequency AWG Programming
setHfFilter(lpfilter )
armAWG(&wave)
wave: DspWaveform *wave
loadWaveform(&wave)
wave: DspWaveform *wave
lpfilter :
F_1P2_MHZ, F_12_MHZ,
F_50_MHZ, BYPASS
start()
stop()
NOTE:
Sum of HfBaseline, external V_COMM/
GND_S and HF_DAC voltage not to
exceed ±3.4 V at HF AWG output
setHfRange(range)
range:
0.5 V, 1.0 V, 2.0 V, 3.4 V
50R
DAC_CHx_P
Data
normalized to
-1.0 ..+1.0
16 bit
+
X
HF-DAC
connect(path,mode)
path:
SIGNAL_PATH_HF,
SIGNAL_PATH_LF
mode:
MUX_SINGLE_P,
MUX_SINGLE_N,
DAC_CHx_N
MUX_DIFFERENTIAL
MUX_DISCONNECT
Range
LP_Filter
+
50R
1 MHz..250 MHz
Divider
Real Time Scaling:
waveObj.setAmplitude(ampl)
ampl: not to exeed range setting
max. ±3.4 V
setHfBaseline(pos, neg)
pos,neg: -3.5 V .. +3.4 V
/N
x10
DDS1
(CLK1)
3.5 .. 3.9 GHz
DAC_CHx_VCOMM
connect(path,mode)
path:
SIGNAL_PATH_HF
mode:
MUX_VCM_SENSE_EXTERN
MUX_VCM_SENSE_INTERN
DDS2
(CLK2)
350..390 MHz
connect(path,mode)
path:
GND_SENSE
mode:
MUX_INTERN
MUX_EXTERN
setClock(clk, pllFreq, divider, enable )
clk:
pllFreq:
divider:
enable:
CLOCK_1, CLOCK_2
3.5 GHz .. 3.9 GHz
14..2^32
true, false
AGND
DAC_CHx_GND_S
AGND
DUT Interface
HF DAC Connections
DAC_CHx_P .
+
DAC_CHx_N .
DAC_CHx_VCOMM
DAC_CHx_GND_S
A_GND
DAC_CHx
(x = 0,1,2,3)
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
117
7 – MultiWave Instrument
High Frequency Digitizer Programming Overview
Four identical HF ADC channels per MultiWave instrument.
Figure 41. High Frequency Digitizer Programming
connect(path,mode)
path:
SIGNAL_PATH_HF,
SIGNAL_PATH_LF
mode:
DUT Interface
Note: Close this relay if operating
in MUX _SINGLE _N mode
MUX_SINGLE_P,
MUX_SINGLE_N,
MUX_DIFFERENTIAL
MUX_DISCONNECT
setHfTermPlus(term)
term:
DIG_HF_TERMINATION_50,
DIG_HF_TERMINATION_500
setHfLowPassFilter(lpfilter)
lpfilter :
F_1P2_MHZ, F_12_MHZ,
F_50_MHZ, BYPASS
armAcp(&wave)
wave: DspWaveform *wave
ADC_CHx_P
getWaveform(&wave)
wave: DspWaveform *wave
start()
stop()
50R
x1
x 0.5
AGND
AGND
Range
Data
HF ADC
LP_Filter
50R
1..130 MHz
setHfRange(range, mode)
range:
0.5 V, 1.0 V, 3.0 V
mode:
SINGLE_ENDED (x1), DIFFERENTIAL (x0.5)
ADC_CHx_N
setHfInputTermination(mode)
setHfTermMinus(term)
mode: SINGLE_ENDED, DIFFERENTIAL term:
DIG_HF_TERMINATION_50,
DIG_HF_TERMINATION_500
Note: Close this relay if operating
in MUX _SINGLE _P mode
Divider
/N
x10
Digitizer Connections
ADC_CHx_P_S Differential
Single_N
3.5 .. 3.9 GHz
Single_P
DDS1
(CLK1)
ADC_CHx_P .
DDS2
(CLK2)
350..390 MHz
ADC_CHx_N .
setClock(clk , pllFreq, divider, enable )
ADC_CHx_N_S
clk:
pllFreq:
divider:
enable:
A_GND
CLOCK_1, CLOCK_2
3.5 GHz .. 3.9 GHz
26..3900
true, false
ADC_CHx_GND_S
ADC_CHx
118
(x = 0,1,2,3)
PN: 071-0961-00, January 2008
Precision Kelvin PMU Overview
Precision Kelvin PMU Overview
Eight PMU cores, four AWG channels, and four DIG channels per MultiWave instrument.
These are shared between the CHx_P and CHx_N nodes.
Figure 42. Precision Kelvin PMU
setForceMode(mode)
mode:
VFIM
force voltage, measure current
IFVM
force current, measure voltage
VFVM
force voltage, measure voltage
IFIM
force current, measure current
setVClampPositive (pClamp)
pClamp: -4.0 V .. +14.0 V
setVClampNegative(nClamp)
nClamp: -4.0 V .. +14.0 V
connect(path,mode)
path:
mode:
setVForce(voltage,range)
voltage,range: -4.0 V..+14.0 V
setIForce(current,range)
current,range:
-2.0..+2.0 uA
-20.0..+20.0 uA
-200.0..+200.0 uA
-2.0..+2.0 mA
-25.0..+25.0 mA
turnOn()
turnOff()
muxed
ADC_CHx_P_S
DAC_CHx_P_S
ADC_CHx_P .
DAC_CHx_P .
ADC_CHx_N .
DAC_CHx_N .
ADC_CHx_N_S
DAC_CHx_N_S
F
F
S
S
F
F
S
S
DAC_CHx_VCOM
ADC_CHx_GND_S
DAC_CHx_GND_S
A_GND
A_GND
ADC_CHx
muxed
8 x PMU P/N muxed
(x = 0,1,2,3)
DAC_CHx
LO_SENSE
ADC/DAC_CHx_P
Force
ADC/DAC_CHx_P_Sense
linkFS(mode)
mode: true,false
ENABLE
F
S
S
F
F
ADC/DAC_CHx_N
HI_SENSE
ADC/DAC_CHx_N_Sense
measV = getMeasValueV();
measI = getMeasValueI();
ADC
trigger()
F
PMU_PATH
MUX_SINGLE_P
MUX_SINGLE_N
MUX_KELVIN_P
MUX_KELVIN_N
MUX_DISCONNECT
S
S
(x = 0,1,2,3)
setMultiple(noOfMeas)
noOfMeas: 0..2^16
setVMeasRange(vRange)
vRange:
0.0 V .. +10.0 V
-4.0 V .. +14.0 V
setIMeasRange(iRange)
iRange:
-2.0..+2.0 uA
-20.0..+20.0 uA
-200.0..+200.0 uA
-2.0..+2.0 mA
-25.0..+25.0 mA
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
AGND
ADC/
DAC_CHx_GND_Sense
connect(path,mode)
path:
mode:
AGND
GND_SENSE
MUX_INTERN
MUX_EXTERN
119
7 – MultiWave Instrument
Programming Clocks on MultiWave
Clock Setup for HF AWG and HF DIG Mode
The divider output is directly connected to the sample clock of the generator/digitizer.
The converter output data rate is equal to the divider output:
FDIV = FODR
The valid range for the divider/converter sample clock for the HF AWG is:
FDIV = FODR = 1 MHz .. 250 MHz
The valid range for the divider/converter clock for the HF DIG is:
FDIV = FODR = 1 MHz .. 130 MHz
Clock Setup for LF AWG
The AWG has a fixed sample clock to output a data rate ratio of 32. The divider output
clock is 32x higher than the final output data rate of the AWG channel. This is related to
the 32 bit word length of each AWG sample.
FDIV = FODR*32
The valid range for the converter bit clock FDIV (BCLK) for the LF AWG is:
FDIV = 0 .. 25 MHz
This leads to a LF AWG converter output sample rate of:
FODR = 0 .. 781.25 kHz
Clock Setup for LF DIG
The ADC of the LF DIG path is a sigma-delta converter design.
The effective output data rate and the pass band bandwidth can be user programmed to
optimize the analog performance. The user can choose between 7 different oversampling
ratios from 4 – 256 and 2 different predefined FIR filter settings.
The behavior of the LF ADC can be changed by the command:
setLfOSRMode( unsigned long osRatio, CSCFilterTypeSettings firSetting);
osRatio: 4,8,16,32,64,128,256
The effective output data rate is related to the set over sampling ratio:
FDIV = FODR * osRatio
Note — For a osRatio of 32 in LF DIG mode, the effective data rate is equal to the LF
AWG if the same divider clock is used for the AWG and ADC channel.
120
PN: 071-0961-00, January 2008
Programming Clocks on MultiWave
The valid range for the converter clock FDIV (ICLK) for the LF DIG is:
FDIV = FODR * osRatio = 1 MHz .. 20.0 MHz
Table 15. Choose OSR Based on Expected Effective Sampling Frequency
OSR
FIR Mode
Output Data
Sample Rate
Sample Rate Min
(ICLK = 1 MHz)
Sample Rate Max
(ICLK = 20 MHz)
8
FULLY_FILTERED
0.125 * ICLK
125 kHz
2.5 MHz
16
FULLY_FILTERED
0.0625 * ICLK
62.5 kHz
1.25 MHz
32
FULLY_FILTERED
0.03125 * ICLK
31.25 kHz
625 kHz
64
FULLY_FILTERED
0.015625 * ICLK
15.625 kHz
312.5 kHz
128
FULLY_FILTERED
0.0078125 * ICLK
7.8125 kHz
156.25 kHz
256
FULLY_FILTERED
0.00390625 * ICLK
3.90625 kHz
78.125 kHz
4
PART_FILTERED
0.25 * ICLK
250 kHz
5.0 MHz
8
PART_FILTERED
0.125 * ICLK
125 kHz
2.5 MHz
16
PART_FILTERED
0.0625 * ICLK
62.5 kHz
1.25 MHz
32
PART_FILTERED
0.03125 * ICLK
31.25 kHz
625 kHz
64
PART_FILTERED
0.015625 * ICLK
15.625 kHz
312.5 kHz
128
PART_FILTERED
0.0078125 * ICLK
7.8125 kHz
156.25 kHz
Setup LF AWG and LF DIG with effective data rate of 210 kHz example:
1. Setup DIG clock:
Pick LF ADC setting from Table 16 which covers the desired sample frequency of
210 kHz and a preferred sample rate higher than 10 MHz
Table 16. ADC Setup to Pick
osrRatio
FIR mode
Outp Data Rate
ODR Min
ODR Max
64
FULLY_FILTERED
0.015625 * ICLK
15.625 kHz
312.5 kHz
...->setLfOSRMode( 64, FULLY_FILTERED);
2. Calc FDIV (ICLK) for the chosen ADC setting (divider output clock):
FDIV = 210 kHz * 64 = 13.440 MHz
64 is the over sampling ratio for the chosen ADC mode above
3. Pick a PLL frequency which is in the valid PLL locking range of 3.5-3.9 GHz and
calculate the necessary divider ratio:
(double) divider = 3.8 GHz / 13.440 MHz = 282.73;
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
121
7 – MultiWave Instrument
4. The divider has to be an integer number. Therefore pick the next integer number:
(long) ldivider = (long) divider;
5. Recalculate the PLL frequency with the rounded divider:
fpll= 13.440 MHz * (double) ldivider = 3.79008 GHz;
6. Setup the DIG clock setting with the derived values:
cscTester->MultiWave()->Signal(signal_dig)->Clock->setClock(CLOCK_1,
3,79008e9, 282, true);
7. Setup AWG clock for coherent sampling.
8. Calculate FDIV for a sample rate of 210 kHz:
FDIV = 210 kHz * 32 = 6.72 MHz
32 is the fixed ratio of bit clock to sample clock.
9. Choose the same PLL as used for the DIG channel and calculate the required divider
for the AWG channel:
dividerAWG = 3.790008/6.72 MHz = 564
10. Setup the AWG clock setting with the derived values:
cscTester->MultiWave()->Signal(signal_awg)->Clock->setClock(CLOCK_1,
3,79008e9, 564, true);
Debugging MultiWave Tests
Version 1.5.2 or earlier of visualize does not support MultiWave.
Currently, the only way to debug MultiWave is by mean of a scope and STILTool utility.
STILTool allows the user to modify parameters of instruments setup without recompiling.
It is recommended that tests have parameters located in a STIL file so they can be
modified during a debugging session.
AWT is the second entry point for debugging. The digitized waveform can be observed,
modified, and evaluated through algorithms available to the cpp program in the same
manner as AWT handles them. They share the same DSP library.
122
PN: 071-0961-00, January 2008
Programming Clocks on MultiWave
Knowledge Check
1. How many resources (DIG and AWG) are available on a MultiWave?
2. What is the resolution of the AWG part in high resolution mode?
3. What is the sampling frequency range in AWG high frequency mode?
4. What is the purpose of the PMU?
5. Is the PMU shared among N and P on a differential pin?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
123
7 – MultiWave Instrument
Lab Exercise
MultiWave Loopback Lab
This lab creates two kind of loopback tests, high frequency and low frequency.
To complete this lab the student must be able to create a generic function to program the
loopback. The source is the onboard sinewave.
1. Open ITE and load the training_mxsl.job file.
2. Use the patterns/equations.stil file variable to get specs for the 1 MHz sinewave and
1 kHz waveform to be created.
3. Create two tests named HF_loopback_multiwave and LF_loopback_multiwave with
the predefined functions listed below. Use the direct loopback connections available
from the loadboard from Gen2_site to Dig2_site on Single N MUX. Refer to the
loadboard schematic in Appendix B, "Loadboard Schematic Extracts," on page 287.
The functions have been developed as macros so the user does not need to write all
APIs. In the section below the digitizer is referred as digCh and the AWG is referred
as genCh.
a. Clock setup for AWG and Digitizer:
•
setupAwgClock(genCh,CLOCK_1,fpll,divider,SIGNAL_PATH_HF)
•
setupDigClock(digCh,CLOCK_1,fpll,divider,SIGNAL_PATH_HF) (choose LF
for 1 KHz and HF for 1 MHz)
b. MUXing connection for AWG and Digitizer:
•
AwgDigConnect(genCh,SIGNAL_PATH_HF,MUX_SINGLE_N)
•
AwgDigConnect(digCh,SIGNAL_PATH_HF,MUX_SINGLE_N)
c. Memory preparation for AWG (loading data) and Digitizer (allocate memory for
capture):
•
CSCMultiWaveSineWave sinWave("hf_sine") - sinWave or rampWave or
arbWave
•
AwgSineWaveSetup(genCh,sinWave,HIGH_FREQUENCY,bin,LOOP_FOREVE
R,amplitude_src*2,0.0) (internal sinewave is used with increment equal to bin
from spec)
Hint — Choose the LOOP_FOREVER loop count to be able to observe the sinewave
with the scope when paused on the tests.
124
•
CSCMultiWaveArbitraryWave digWave("hf_capture")
•
DigWaveSetup(digCh,digWave,HIGH_FREQUENCY,1,capture_fft *2)
PN: 071-0961-00, January 2008
Programming Clocks on MultiWave
d. Analog path setup for AWG and Digitizer:
•
AwgSetup(genCh,SIGNAL_PATH_HF,F_1P2_MHZ,amplitude_src*2,offset_src)
•
DigSetup(digCh,SIGNAL_PATH_HF,F_1P2_MHZ, range_meas,
SINGLE_ENDED, DIG_HF_TERMINATION_50,0,FULLY_FILTERED)
(FULLY_FILTERED is referring to the LF mode only and the
DIG_HF_TERMINATION is for HF mode only)
e. Start execution and stop on end of capture:
•
startAwg(genCh,sinWave)
•
startDig(digCh,digWave)
•
stopDigEOC(digCh,SIGNAL_PATH_HF,1.0) with a 1.0 second is the timeout
4. Upload captured data:
•
DigUpload(digCh,digWave)
5. DSP processing and test results
a. Test amplitude, snr, and thd with appropriate DSP function.
b. Save the data in an awav file to be read later with AWT.
int sitenum = *cscIter;
DspWaveform *acpDspWave = digWave.getDspWaveform();
char my_char[256];
sprintf(my_char,"./waves/hf_multiwave_loopback_site%d.awav",sitenum);
acpDspWave->writeAwavFile(my_char,true);
Hint — Steps 4, 5, and 6 have to be executed within a CSC_SERIAL_BLOCK_BEGIN/
END since this is running in multisite.
6. Release the MultiWave (stop clocks, disconnect output MUX and remove memory
segment allocated to capture):
•
stopAwg(genCh,SIGNAL_PATH_HF)
•
AwgDigConnect(genCh,SIGNAL_PATH_HF, MUX_DISCONNECT);
•
AwgDigConnect(digCh,SIGNAL_PATH_HF, MUX_DISCONNECT);
•
DigClean(digCh,digWave);
7. Insert the two tests for loopback
8. Compile, load, and run test program.
9. Check the waveforms with AWT (or a scope) and use STILTool to modify the test
parameters of frequency and amplitude.
10. Use Visualize tool to setup the filter in the loopback path and see the effect of the
active filter (calculated cutoff frequency 15.6 kHz).
a. Place a dummy test_var after the AWG has been started.
b. Open visualize on the site of interest when paused on this dummy test.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
125
7 – MultiWave Instrument
c. Set plus 5 V, Minus 5 V, and 5 V relay power supplies ON.
d. Set relay bypass_multi to 1 -> filter is bypassed.
e. Set relay bypass_multi to 1 -> filter is in the path.
f.
Compare the results with and without the filter.
Check Your Work
Review the work and have the instructor sign off this module.
126
PN: 071-0961-00, January 2008
8
VIS16 Instrument
Goal
Develop and debug code for the VIS16 instrument.
Objectives
After completing this unit, students should be able to:
•
Understand the main capabilities of the VIS16
•
Execute loopback tests using the VIS16
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab Exercise
1
5
90
Hour
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
127
8 – VIS16 Instrument
VIS16 Hardware
The VIS16 is a versatile instrument aimed at powering devices (forcing voltage) or testing
other special functions of a mixed signal device (typically current DACs or low dropout
regulators).
It can force current or voltages and has an additional path to generate voltage modulated
waveform. It has also the measure side or digitizer embedded making it a perfect
candidate for mixed signal application,
Figure 43 shows a block diagram of a single VIS16 voltage/current source.
Figure 43. VIS16 Block Diagram—Basic Operation
HI_S_KEL
FS-LINK
setCompensation()
COMP_VERY_SLOW
setVoltageSlewRate() COMP_SLOW
COMP_NORMAL
setVoltage() SLEW_NORM
COMP_VERY_FAST IRange
SLEW_SLOW
300 nA, 3 µA, 300 µA
VForce
3 mA, 30 mA,
setCurrent()
300 mA/100 mA
IPos
setCurrentBipolar()
INeg
FS-CLAMP
cscTester->VIS()->Signal()->
Kelvin
Detect
HI_F
HI_F_KEL GUARD
gateOn()
gateOff()
LO_F_KEL
128
I
FS-LINK
FS-CLAMP
measure()
measureBySite()
getMeasData()
getMeasDataBySite()
getMeasSampleData()
clearMeasSampleData()
setMeasDataAutoClear() setMeasFilter()
0, 5 kHz, 21 kHz
ADC
(16 bit)
LO_S_KEL
Kelvin
Detect
GND
setMeasDelay()
0 – 6.7 s
setMeasFrequency ()
1 Hz – 250 kHz
setMeasSampleCount ()
SAMPLE_AVERAGE 1 – 65536
SAMPLE_CAPTURE 1 – 4096
HI_S
LO_F
LO_S
connect()
disconnect()
close()
open()
V
VRange
2 V, 6 V, 20 V, 60 V
I
V
Diff
V
setMeasMode()
MEAS_CURRENT
MEAS_VOLTAGE
MEAS_DIFF_V
V (chan N+1)
setDiffVMeasRange()
20 mV, 200 mV, 2 V, 5 V
Note — One channel shown
PN: 071-0961-00, January 2008
VIS16 Hardware
The VIS16 voltage/current source has 16 sources. Each source can force ±20 V @
±300 mA or ±60 V @ ±100 mA.
The VIS16 voltage/current source has the following features: triggers and timers, Time
Measurement Unit (TMU), modulation generator, and digitizer.
Figure 44 shows a block diagram of the VIS16 features. Figure 45 shows a detailed block
diagram of triggers and timers.
Figure 44. VIS16 Block Diagram—Features
cscTester->VIS()->Signal()->
Triggers
and Timers
Triggers
and Timers
VGate
OGateHi
VForce
HI_S
SlewRate
IPos
Compensation
Kelvin
Detect
IRange
INeg
GUARD
IGate
LO_F
Triggers
and Timers
Triggers
and Timers
Kelvin
Detect
GND
Modulation Generator
MGate
HI_F
OGateLo
Modulation
Generator:
- Sine
- Ramp
- Wave
I
V
Triggers
and Timers
VRange
loadWaveform()
setGeneratorWaveform()
cscTester->VIS()->createSineWave()
cscTester->VIS()->createRampWave()
cscTester->VIS()->createArbitraryWave()
Time Measurement Unit
cmp1
cmp2
cmp1
cmp2
Digitizer
Digitizer
Memory
1 k X 16
LO_S
I
ADC
(16 bit)
Control
V
Diff
V
Measure:
- Pulsewidth Internal &
- Frequency External
- Risetime Trigger Bus
- Falltime
cscTester->TMS()
V (chan N+1)
MeasFilter
Trigger at Measure
Trigger Edge:
- Positive
- Negative
- Any
cscTester->EventRouting()
Internal Trigger
Bus [15..0]
External Trigger
Bus [7..0]
setADCTriggerControl()
Note — One channel shown
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
129
8 – VIS16 Instrument
Figure 45. Triggers and Timers Block Diagram
cscTester->EventRouting()->createRoute()
cscTester->EventRouting()->createRoute()->setSource()
cscTester->EventRouting()->createRoute()->addDestination()
cscTester->EventRouting()->apply()
cscTester->EventRouting()->clearRoutes()
External Trigger
Bus [7..0]
Internal Trigger
GATE_ON
Bus [15..0]
GATE_OFF
GATE_TIMER
Delay
trigger()
stopTimers()
Duration
setVGate()
setIGate()
setOGateHi()
setOGateLo()
setMGate()
setGenerator()
setVGateTimer()
setIGateTimer()
setOGateHiTimer()
setOGateLoTimer()
setMGateTimer()
setGeneratorTimer()
cscTester->VIS()->Signal()->
Table 17. VIS16 Specifications (Sheet 1 of 4)
Specification
Channels Per Instrument
16
Basic Voltage/Current Range
±60V
100 mA per channel, gangable to 200 mA
±20V
300 mA per channel, gangable to 600 mA
Force Voltage
Range
Resolution
Accuracy
±2 V
16 bit
±0.03% FSR
±6 V
16 bit
±0.03% FSR
±20 V
16 bit
±0.03% FSR
±60 V
16 bit
±0.03% FSR
130
PN: 071-0961-00, January 2008
VIS16 Hardware
Table 17. VIS16 Specifications (Sheet 2 of 4)
Specification
Current Clamp
Range
Resolution
Accuracy
±300 nA
16 bit
±0.2% FSR +1 nA/V
±3 µA
16 bit
±0.05% FSR +1 nA/V
±300 µA
16 bit
±0.05% FSR
±3 mA
16 bit
±0.05% FSR
±30 mA
16 bit
±0.05% FSR
±300 mA (100 mA)
16 bit
±0.05% FSR
Range
Resolution
Accuracy
±2 V
16 bit
±0.03% FSR
±6 V
16 bit
±0.03% FSR
±20 V
16 bit
±0.03% FSR
±60 V
16 bit
±0.03% FSR
Range
Resolution
Accuracy
±300 nA
16 bit
±0.2% FSR +1 nA/V
±3 µA
16 bit
±0.05% FSR +1 nA1/V
±300 µA
16 bit
±0.05% FSR
±3 mA
16 bit
±0.05% FSR
±30 mA
16 bit
±0.05% FSR
±300 mA (100 mA)
16 bit
±0.05% FSR
Measure Voltage
Measure Current
Modulation/Generator (Per Channel)
SGT,CGT,MGT,OGT_HI/LO, Measurement Strobe
Range
DC .. 10 kHz
Resolution
16 bit
Waveforms
sine, triangle, Arbitrary
Waveform Memory
up to 8 k Samples
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
131
8 – VIS16 Instrument
Table 17. VIS16 Specifications (Sheet 3 of 4)
Specification
Timer
6 Timers for Programmable Gates (Per Channel)
SGT,CGT,MGT,OGT_HI/LO, Measurement Strobe
Range
Resolution
100 ns ... 6.7 s
100 ns
Digitizer (Per Channel)
Capture Memory
up to 8 k Samples
Sample Frequency
100 k Samples/s
Resolution
16 bit
Time Measurement Per Channel
Range
Resolution
1 µs ... 65 ms
100 ns
65 ms ... 6.5 s
1 µs
Differential Voltage Measurement*
Range
Accuracy
20 mV
0.5% FSR
(Offset calibration procedure at operating voltage required on
application board.)
200 mV
0.1% FSR
2.00 V
0.1% FSR
5V
0.1% FSR
CMRR
70 dB
* Available between
CH0 ->CH1
CH8 ->CH9
CH2 ->CH3
CH10 ->CHl1
CH4 ->CH5
CH12 ->CHl3
CH6 ->CH7
CHI4 ->CH15
Comparator
Mode
Voltage / Current
Resolution
14 bit
Accuracy
0.5% FSR
132
PN: 071-0961-00, January 2008
VIS16 Hardware
Table 17. VIS16 Specifications (Sheet 4 of 4)
Specification
Propagation Delay
Maximum 1.0 µs
Interface to Digital Synchronization Bus
VIS16 Resource Definition
In order to use VIS16 in a project, the instrument has to be listed in the resource definition
file of the project. The correct chassis and slot where the instrument resides in the test
system has to be entered and a resource name for the instrument has to be assigned.
There are two ways to do this use the ITE *.res editor or use Program Developer ASCII
editor to write the resources with the defined format.
Example project.res file:
RESDEF 1.00 { }
Header {
Title "Resource definition for VIS16";
Date "Mon Jun 25 06:49:34 PDT 2007";
}
ResDef {
Resource "VIS16_3" {
Type "VIS16" Version 0;
Location {
Chassis 0;
Slot 3;
}
//
Location
} // Resource
} // ResDef
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
133
8 – VIS16 Instrument
VIS16 Signal Mapping
Each VIS16 board contains 16 resources (C 0..15). The resources are mapped to the
physical channels as shown in Table 18.
Table 18. VIS16 Board
Resource in .sig File
Physical VIS16 Channel
C0
VI0
C1
VI1
C2
VI2
C3
VI3
C4
VI4
C5
VI5
C6
VI6
C7
VI7
C8
VI8
C9
VI9
C 10
VI10
C 11
VI11
C 12
VI12
C 13
VI13
C 14
VI14
C 15
VI15
Example project.sig file:
SIGMAP 1.00 { }
Header {
Title "Signal mapping for VIS16 test";
Date "Mon May 8 14:52:45 CEST 2006";
}
SigMap {
SiteCount = 2;
Signal "LT1121_IN" {
S 0 { R "VIS16_3"; C 12; }
S 1 { R "VIS16_3"; C 14; }
} // Signal
Signal "LT1121_OUT" {
134
PN: 071-0961-00, January 2008
VIS16 Signal Mapping
S 0 { R "VIS16_3"; C 13; }
S 1 { R "VIS16_3"; C 15; }
} // Signal
} // SigMap
Additional channels 16 – 23 are allocated to ganged channels (16 is equivalent to
channel 0 and 1 together). Ganged channels are only allowed by pair of even and
adjacent odd channels.
VIS16 API
The list presented below is aimed at showing the most used API. (It is not a complete list.)
For a complete set of available API refer to the software online help.
CSCVISInterface Class
Contains the API necessary to control all VIS16 related actions.
deleteAllWaveforms
Delete all waveform objects. Deletes all existing VISWaveforms.
deleteWaveform (const string &name)
Delete waveform object. Deletes the specified waveform if it exists. The waveform can be
of any type.
name:
Name of the waveform.
setRampMaxValue(const string &name, double value)
Sets up the maximum value for a given ramp waveform.
name:
Name of the ramp waveform.
value:
Maximum value for the ramp.
setRampMinValue(const string &name, double value)
Sets up the minimum value for a given ramp waveform.
name:
Name of the ramp waveform.
value:
Minimum value for the ramp.
setRampSlewRate(const string &name, double rate)
Sets up the slew rate value for a given ramp waveform.
name:
Name of the ramp waveform.
rate:
Slew rate for the ramp.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
135
8 – VIS16 Instrument
setSineFrequency(const string &name, double freq)
Sets up the frequency value for a given sinewave waveform.
name:
Name of the sine waveform.
freq:
Frequency for the sinewave.
setSinePhaseOffset(const string &name, double phase)
Sets up the phase offset value for a given sinewave waveform.
name:
Name of the sine waveform.
phase:
Phase for the sinewave.
setWaveformAmplitude(const string &name, double amp)
Sets up the amplitude valuefor a given sinewave or arbitrary waveform.
name:
Name of the waveform.
amp:
Amplitude for the waveform.
setWaveformData(const string &name, DspWaveform *wave)
Sets up the data for a given arbitrary waveform.
name:
Name of the waveform.
wave:
Data to be used for the given waveform name.
setWaveformRange(const string &name, double range)
Sets up the range to use for the given waveform.
name:
Name of the waveform.
range:
Range for the waveform.
setWaveformRepeat(const string &name, unsigned long count)
Sets up the repeat count to execute the waveform. 0 will repeat infinitely while any
number greater than 0 will repeat the waveform x times. This applies to arbitrary, ramp
and sinewave waveform.
name:
Name of the waveform.
count:
Amplitude for the waveform.
setWaveformSampleFrequency(const string &name, double frequency)
Sets up the sampling rate for the arbitrary waveform. Range for sampling frequency is
1 Hz - 250 kHz.
name:
Name of the waveform.
frequency: Sampling frequency.
136
PN: 071-0961-00, January 2008
VIS16 Signal Mapping
setWaveformSingleStep(const string &name, bool single)
Sets up the single step mode. When enabled, the waves (sine, ramp or arbitrary) are
stepped by one sample every time it receives a trigger event. This trigger event has to be
generated through the EventRouting API.
name:
Name of the waveform.
single:
True, false.
setWaveformStartPos(const string &name, unsigned long pos)
Sets up the start position inside the waveform as a start point. This way several portions
of a single waveform could be used to make generate different waveforms.
name:
Name of the waveform.
pos:
Sample number where to start.
setWaveformStopPos(const string &name, unsigned long pos)
Sets up the stop position inside the waveform as a stop point. This way several portions
of a single waveform could be used to make generate different waveforms.
name:
Name of the waveform.
pos:
Sample number where to stop.
CSCVISPerSignalInterface Class
void clearMeasSampleData()
This function is used to remove all acquired samples to start with a memory filled with 0s.
open(const CSCVISConns connection)
This function is used to disconnect a specific portion of the VIS.
connection:
VIS_HI_FORCE,VIS_HI_SENSE,VIS_HI_GUARD,VIS_LO_FORCE,VIS_LO_SENSE,VI
S_BUS_FORCE,VIS_BUS_SENSE,VIS_DIFF_CHAN_SHORT,VIS_KELVIN_LINK,VIS_
KELVIN_CLAMP,VIS_MODULATION
close(const CSCVISConns connection)
This function is used to connect a specific portion of the VIS.
connection:
VIS_HI_FORCE,VIS_HI_SENSE,VIS_HI_GUARD,VIS_LO_FORCE,VIS_LO_SENSE,VI
S_BUS_FORCE,VIS_BUS_SENSE,VIS_DIFF_CHAN_SHORT,VIS_KELVIN_LINK,VIS_
KELVIN_CLAMP,VIS_MODULATION
connect()
This function makes the connection of force/sense and guard on high and low side of the
VIS.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
137
8 – VIS16 Instrument
disconnect()
This function makes the disconnection of force/sense and guard on high and low side of
the VIS.
doKelvinTest()
Check the connection to the DUT. This test only detects severe problems like broken
prober needles.
gateOff()
Turns off the source voltage gate and the clamp gate.
gateOn()
Turns on the source voltage gate and the clamp gate
loadWaveform(const string &wave)
Load arbitrary waveform data of given name to the selected channel.
Name:
Name of the waveform to be loaded.
double measure()
This function makes the measurement happen. It returns the result for the selected
channel. It can only be used in single site.
double measureBySite(const unsigned long siteNum)
This function makes the measurement by site in multisite context.
void resetAlarms()
This function resets the alarm status on the VIS16 instrument.
void setADCTriggerControl(CSCTimerTrigger triggerSource)
Defines trigger input used to start ADC measurement.
triggerSource: TIMER_SOFTWARE (default), TIMER_RISING, TIMER_FALLING,
TIMER_ANY
setCompensation(const CSCCompensationSetting compensation)
Sets up the compensation for the VIS16 channel.
compensation:
COMP_VERY_SLOW, COMP_SLOW, COMP_NORMAL,
COMP_FAST, COMP_VERY_FAST
setCurrent(const double current, const double range)
Programs the current clamp and range to apply to the channel.
138
current:
Value of current clamp expected.
range:
Range in which to apply the defined current.
PN: 071-0961-00, January 2008
VIS16 Signal Mapping
setCurrentBipolar(const double currentPos, const double currentNeg, const
double range)
This function is used if we want to apply an assymetric current clamp on the given
channel.
currentPos:
Value of current clamp expected on the positive side.
currentNeg:
Value of current clamp expected on the positive side.
range:
Range in which to apply the defined current.
setDiffVMeasRange(const double range)
The VIS allows the differential measurements between two adjacent channels.
range:
20 mV, 200 mV, 2 V, 5 V
setGeneratorWaveform(const string &name)
This functions defines which already loaded waveform is used by the given channel.
name:
Waveform name.
setGenerator(const CSCGateControl gate)
This functions will connect the generator gate to the specified gate condition.
gate:
GATE_ON, GATE_OFF, GATE_TIMER.
setGeneratorTimer(const double delay, const double duration, const
CSCTimerTrigger triggerSource)
When using a gate timer, the timer has to be defined in terms of delay and duration.
delay:
delay between trigger and timer execution (0 to 6.7 s).
duration:
duration for the timer (0 to 6.7 s).
triggerSource:
TIMER_SOFTWARE, TIMER_EXTERNAL, TIMER_NOCHANGE.
setIGate(const CSCGateControl gate)
Sets the current gate state for the given channel or channel group.
gate:
GATE_ON, GATE_OFF, GATE_TIMER, GATE_NOCHANGE.
setMGate(const CSCGateControl gate)
Sets the modulation gate state for the given channel or channel group.
gate:
GATE_ON, GATE_OFF, GATE_TIMER.
setOGateHi(const CSCGateControl gate)
Sets the output gate high state for the given channel or channel group.
gate:
GATE_ON, GATE_OFF, GATE_TIMER, GATE_UNCHANGED.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
139
8 – VIS16 Instrument
setOGateLo(const CSCGateControl gate)
Sets the output gate low state for the given channel or channel group.
gate:
GATE_ON, GATE_OFF, GATE_TIMER, GATE_UNCHANGED
setVGate(const CSCGateControl gate)
Sets the voltage gate state for the given channel or channel group.
gate:
GATE_ON, GATE_OFF, GATE_TIMER, GATE_UNCHANGED
setIGateTimer(const double delay, const double duration, const CSCTimerTrigger
triggerSource)
Sets the delay and duration of the current gate timer.
delay:
Delay between trigger and timer execution (0 to 6.7 s).
duration:
Duration for the timer (0 to 6.7 s).
triggerSource:
TIMER_SOFTWARE, TIMER_EXTERNAL.
setMGateTimer(const double delay, const double duration, const CSCTimerTrigger
triggerSource)
Sets the delay and duration of the modulation gate timer.
delay:
Delay between trigger and timer execution (0 to 6.7 s).
duration:
Duration for the timer (0 to 6.7 s).
triggerSource:
TIMER_SOFTWARE, TIMER_EXTERNAL, TIMER_NOCHANGE.
setOGateHiTimer(const double delay, const double duration, const
CSCTimerTrigger triggerSource)
Sets the delay and duration of the high output gate timer.
delay:
Delay between trigger and timer execution (0 to 6.7 s).
duration:
Duration for the timer (0 to 6.7 s).
triggerSource:
TIMER_SOFTWARE, TIMER_EXTERNAL, TIMER_NOCHANGE.
setOGateLoTimer(const double delay, const double duration, const
CSCTimerTrigger triggerSource)
Sets the delay and duration of the low output gate timer.
140
delay:
Delay between trigger and timer execution (0 to 6.7 s).
duration:
Duration for the timer (0 to 6.7 s).
triggerSource:
TIMER_SOFTWARE, TIMER_EXTERNAL, TIMER_NOCHANGE.
PN: 071-0961-00, January 2008
VIS16 Signal Mapping
setVGateTimer(const double delay, const double duration, const CSCTimerTrigger
triggerSource)
Sets the delay and duration of the voltage gate timer.
delay:
Delay between trigger and timer execution (0 to 6.7s).
duration:
Duration for the timer (0 to 6.7 s).
triggerSource: TIMER_SOFTWARE, TIMER_EXTERNAL, TIMER_NOCHANGE.
setILimitHi(double current, double range)
Sets the current comparator high limit.
current:
Value
range:
Range
setVLimitHi(double voltage, double range)
Sets the voltage comparator high limit.
voltage:
Value
range:
Range
setLimitHi(const double limit)
Sets the limit high for a VIS test.
limit:
Limit high
setILimitLo(double current, double range)
Sets the current low comparator value.
current:
Value
range:
Range
setVLimitLo(double current, double range)
Sets the voltage low comparator value.
voltage:
Value
range:
Range
void setLimitLo(const double limit)
Sets the limit low for a VIS test.
limit:
Limit low
setMeasDataAutoClear(bool auto)
Controls if the measurement and sample counter are automatically reset after each
measurement.
auto:
True, False
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
141
8 – VIS16 Instrument
setMeasDelay(const double delayTime)
Sets the delay between the trigger to make the measurement and the time it occurs on
the hardware.
delayTime:
0 to 6.7 s
setMeasFilter(const double bandwidth)
Sets the measure filter bandwidth.
bandwidth:CONDITION VIS16_NO_FILTER (0 Hz), CONDITION VIS16_FAST_FILTER
(21 kHz), CONDITION VIS16_SLOW_FILTER (5 kHz)
setMeasFrequency(const double frequency)
Sampling frequency for the measurements.
frequency:
1 Hz to 250 kHz
setMeasMode(const CSCMeasMode mode)
Sets the measure mode for the given signal or SignalGroup.
mode:
MEAS_VOLTAGE, MEAS_CURRENT, MEAS_DIFF_V
setMeasPeriodic(const unsigned long periodic)
Sets the number of period to make the acquisition on.
periodic:
1 to 26
setMeasSampleCount(const unsigned long numberOfSamples, const
CSCSampleMode sampleMode)
Sets the parameters for sampling: number of samples and sampling mode.
numberOfSamples:
1 to 65536 in Average mode; 1 to 4096 in Capture mode.
sampleMode:
SAMPLE_AVERAGE, SAMPLE_CAPTURE
setMemoryConfiguration(unsigned long waveMem, unsigned long measMem,
unsigned long sampleMem, unsigned long tmuMem)
Advanced users can decide to split the allocated memory for waveform, measurement in
a different manner than the default. Blocks of 1k are allowed, 8k to share total per
channel.
waveMem:
Memory for generator waveforms.
measMem:
Memory for measurement results.
sampleMem: Sample Memory for measurement samples.
tmuMem:
Memory for TMU timer events.
setSupplyMode(CSCSupplyMode supplyMode)
Control if VIS is used as a supply that is kept on after eot().
142
PN: 071-0961-00, January 2008
VIS16 Signal Mapping
setVoltage(const double voltage, const double range)
Writes the specified VIS force output DAC voltage value to the hardware for the specified
signal or signal group.
voltage:
Value
range:
Range
setVoltageSlewRate(const CSCSlewRateSetting slewRate)
Selects the slew rate of the source output signal. For stable operation at complex loads
(inductive or capacitive) the source provides the possibility of programming the slew rate
and settling time. This allows the program to avoid overshoot and oscillation on those
loads. The slew rate is controlled by a hardware switch, not by the software.
slewRate:
SLEW_FAST, SLEW_NORMAL, SLEW_SLOW
stopTimers()
Resets timers.
trigger()
Triggers the ADC conversion to start or triggers the timers to start if GATE_TIMER mode
is selected.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
143
8 – VIS16 Instrument
Debugging VIS16 Tests—Visualize Tool
Visualize Tool is used to debug the levels and setup of VIS16. The tool allows
modification of levels and hardware setup while paused on a test.
Select Tools > Visualize from ITE to bring up Visualize Tool.
To begin:
1. Select Show > VIS from Visualize Tool to display the VIS Settings window (see
Figure 46).
Figure 46. VIS Setting Window
2. Select the signals to display.
3. Click Show to view them in Visualize Tool (see Figure 47).
144
PN: 071-0961-00, January 2008
Debugging VIS16 Tests—Visualize Tool
Figure 47. Visualize Tool—VIS16
Visualize Tool displays the current hardware settings of VIS16 hardware.
Individual values can be modified and applied to the test system hardware while paused
on a test. White cells can be modified. Gray cells cannot.
To modify a hardware value and re-run the test:
1. Change the value of a cell and press Enter. The cell changes color to yellow to
indicate that the value has been modified, but the hardware has not been updated.
2. Select Set to update hardware. Green cells indicate that the hardware was
successfully changed. Red cells indicate the hardware was not successfully changed.
3. Select Get to read back the hardware values.
4. Select Retest from the Execution tab to re-run the test with the new hardware
settings. Continuing from the pause and re-running the program resets the hardware
values.
5. Select Show Members in the right-click menu to expand a pin group.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
145
8 – VIS16 Instrument
Debugging VIS16 Tests—Shmoo and Margin
Shmoo and Margin tool can be used to debug a test using VIS, but they are limited to the
measurement result.
The parameters that can be varied are limited to:
•
setVoltage (force voltage value)
•
setCurrent (force currentvalue)
•
LimitLo
•
LimitHi
•
measDelay
•
measSampleCount
Figure 48. VIS16 Shmoo and Margin Parameters
This does not re-run a complete test with a new set of values but modifies the parameters
exercised and depending on the method selected re-executes the appropriate test. For
example, if functional is selected as a method then the functional test is re-executed.
The only mean to re-execute a full sequence is to use a user_shmoo section where the
user can define what needs to be done for each new set of parameters of the
margin/shmoo.
146
PN: 071-0961-00, January 2008
Debugging VIS16 Tests—Shmoo and Margin
Knowledge Check
1. How many resources are available on a VIS16?
2. What are the current ranges available on the VIS16?
3. What are the voltage ranges available on the VIS16?
4. How would you create a voltage made of 1 V DC and 1 V sinewave modulation?
5. What is the purpose of the kelvin test?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
147
8 – VIS16 Instrument
Lab Exercise
VIS16 Loopback Lab
This lab creates several loopback tests on VIS used in different modes.
To complete this lab the student must be able to create tests using spec from STIL, the
different modes for the VIS16, and the advanced capture modes.
1. Open ITE and load the job file.
2. Add a new test VIS16_loopback for VIS16 with Program Developer
a. Turn on the ±5 V and +5 V relay user supplies.
b. Disconnect relay Bypass_VI to allow direct loopback.
c. Setup LT1121_IN as a voltage source forcing 5 V, slew rate SLEW_FAST, and
compensation COMP_FAST.
d. Set current range to 300 mA, measure mode to MEAS_CURRENT.
e. Setup LT1121_OUT as a current source sinking 10 mA on the 30 mA range.
Note — Between force and measure the user can vary the setup using the vi_setup
variable inherited from the STIL file.
f.
Set the measure mode to MEAS_VOLTAGE.
g. Check the voltage at LT1121_OUT and the current at LT1121_IN.
Hint — For test time efficiency the user can trigger the measure on two VIS16
instruments in one instruction and then retrieve results per site and per VIS as described
below.
cscTester->VIS()->Signal("ALL_LT1121")->trigger();
double result_VIsrc, result_VImeas = 0.0;
CSC_SERIAL_BLOCK_BEGIN
result_VImeas = cscTester->VIS()->Signal("LT1121_OUT")
->getMeasData();
result_VIsrc = cscTester->VIS()->Signal("LT1121_IN")
->getMeasData();
test_var("V LT1121OUT loopback @10mA", 4.9, 5.1 ,result_VImeas,
"V", 400);
test_var("I LT1121IN loopback @10mA", 9.5e-3, 10.5e3,result_VIsrc, "A", 401);
148
PN: 071-0961-00, January 2008
Debugging VIS16 Tests—Shmoo and Margin
CSC_SERIAL_BLOCK_END
h. Reset the load to 0 mA.
i.
Create a ramp from 0 to 5 V in 5 ms on LT1121_IN using the
setupGeneratorRamp(src,0.0,5.0,5e-3); //ramp 0 to 5 V in 5 ms.
j.
Start the ramp with gate timer of 0 s and a duration of 100 ms.
k. Measure 100 samples in SAMPLE_CAPTURE mode on LT1121_OUT with
sampling frequency of 10 kHz.
l.
Trigger for all source and measure signals.
m. Save the result as an VI_timer{sitenum}.awav using the savedouble2awav
function. Check it with AWT.
Hint — Use int sitenum = *cscIter as parameter of the function.
n. Stop generator and modulation gate.
o. Modify the gate timer to start after 3.4 ms and trigger for all signals.
p. Measure 100 samples in SAMPLE_CAPTURE mode on LT1121_OUT.
q. Save the result as an awav using the savedouble2awav function and check it with
AWT.
r.
Stop the generator.
s. Disconnect everyting.
t.
Compare the two awav files.
What do you expect as a phase shift in term of sample number?
VIS16 Through Voltage Regulator
1. Add a new test VIS16_LT1121 to allow connection of LT1121_IN to LT1121_OUT
through the 5 V voltage regulator (LT1121).
a. Connect relay Bypass_VI to connect the VI through the regulator.
b. Setup LT1121_IN as voltage source (6 V force, 6 V range, SLEW _FAST,
MEAS_CURRENT mode, 300 mA clamp) and connect.
c. Setup LT1121_OUT to current source 1 mA force (3 mA range,
SAMPLE_AVERAGE_MODE, 12 as samples count).
d. Test Vout on LT1121_OUT.
e. Test Iin on LT1121_IN.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
149
8 – VIS16 Instrument
f.
Sink 10 and 20 mA out of the regulator on the 30 mA range and check that
LT1121_OUT keeps the correct regulated value (5 V). Use the
SAMPLE_AVERAGE on 12 samples to make the measurement on LT1121_OUT.
g. Sink back 0 mA on LT1121_OUT and disconnect.
h. Then source 0 V on LT1121_IN and disconnect.
Check Your Work
Review the work and have the instructor sign off this module.
150
PN: 071-0961-00, January 2008
9
Triggering Methods
Goal
Understanding the general theory in triggering to make a mixed signal test.
Objectives
After completing this unit, students should be able to:
•
Make proper trigger definition
•
Use triggers to realize optimized tests
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab Exercise
30
5
2
Minutes
Minutes
Hours
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
151
9 – Triggering Methods
Triggering Hardware
All instruments in a Diamond Series are connected together through a backplane. On this
backplane 10 lines are dedicated to triggers and 8 are available to the user.
The event routing class allows the user to setup routes. Typically there is a set of events
available on each board that will send/receive events to/from the backplane.
The case presented in Figure 49 is a simple digital pin triggering event on the MultiWave
and VIS16 instrument.
Figure 49. Routing Example in Dual Site
DD1096
DD1096
DD1096
[TRGA]
Multiwave Awg
[TRGB]
Multiwave Dig
[TRGC]
VIS16
Routing
DD1096
Mutiwave Awg
Multiwave Dig
VIS16
Doing such routing translates in code to:
cscTester->EventRouting()->createRoute("adcTriggerLine", REGISTERED,
DISALLOW_LOCAL);
cscTester->EventRouting()->Route("adcTriggerLine")->setSource
("dpin1", EVTTYPE_DPIN96_COMP_HI);
cscTester->EventRouting()->Route("adcTriggerLine")
->addDestination("vis16", EVTTYPE_VIS16_ADC_TRIG);
cscTester->EventRouting()->Route("adcTriggerLine")
->addDestination("multi_awg", EVTTYPE_MW_AWG_START);
cscTester->EventRouting()->Route("adcTriggerLine")
->addDestination("multi_dig", EVTTYPE_MW_DIG_START);
cscTester->EventRouting()->apply()
All single EVTTYPE are located in $DMD/include/*.h.
As the number of routes is limited to 8, the user might need to reconfigure the routes. This
is possible by defining all routes that might be needed for the program and then using the
enable/disable method followed by the apply method.
The EventSource can also be a logical combination of individual EVTTYPE leading to
very complex scheme. Logical equations available are: OR, AND, and NOT.
152
PN: 071-0961-00, January 2008
DD1096-16 Triggers Available
DD1096-16 Triggers Available
In most of the mixed signal devices the digital interface is the main location to trigger. It
means that most of the devices trigger analog measurements or analog sourcing based
on synchros or triggers emerging from the digital world (STIL pattern).
Table 19 is the list of allowed routings for the DD1096.
Table 19. Triggers Available as Source for DD1096
Event Type
Definition
EVTTYPE_DPIN96_COMP_HI
Comparator high result
Note — DD1096-16 currently supports only one event source per hardware unit routed to
the backplane. For multi-site operation the same signal pin has to be defined in the signal
map for multiple sites
VIS16 Triggers Available
For the VIS16, there are multiple sources and destinations available for the triggers. The
possible sources are listed in Table 20.
Table 20. Triggers Available as Source on VIS16
Event Type
Definition
EVTTYPE_VIS16_COMP_V_HI
High voltage comparator result
EVTTYPE_VIS16_COMP_V_LO
Low voltage comparator result
EVTTYPE_VIS16_COMP_V_HYST
Hysteresis voltage comparator result
EVTTYPE_VIS16_COMP_I_HI
High current comparator result
EVTTYPE_VIS16_COMP_I_LO
Low current comparator result
EVTTYPE_VIS16_COMP_I_HYST
Hysteresis current comparator result
The possible destinations are listed in Table 21.
Table 21. Triggers Available as Destination on VIS16 (Sheet 1 of 2)
Event Type
Definition
EVTTYPE_VIS16_OGT_HI
Output gate hi
EVTTYPE_VIS16_OGT_LO
Output gate lo
EVTTYPE_VIS16_V_GATE
Voltage gate
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
153
9 – Triggering Methods
Table 21. Triggers Available as Destination on VIS16 (Sheet 2 of 2)
Event Type
Definition
EVTTYPE_VIS16_I_GATE
Current gate
EVTTYPE_VIS16_M_GATE
Modulation gate
EVTTYPE_VIS16_GENERATOR
Arbitrary generator start
EVTTYPE_VIS16_STEP_TRIG
Step triggering
EVTTYPE_VIS16_ADC_TRIG
ADC trigger
EVTTYPE_VIS16_TMU_START
TMU start
EVTTYPE_VIS16_TMU_STOP
TMU stop
EVTTYPE_VIS16_TMU_ARM,
TMU arm
Note — The triggers can be combined with the timers on VIS16 and the sequence can be
pretty complex. For example, start the generator and the ADC trigger by the same
DD1096 comparator high, and delay the ADC trigger to be sure the setup time is
respected.
//example to setup route1 and 2 to measure a rise time
// comp_lo on VIS16 -> tmu_start on VIS16
// comp_hi on VIS16 -> tmu_start on VIS16
cscTester->EventRouting()->createRoute("route1", REGISTERED,
DISALLOW_LOCAL);
cscTester->EventRouting()->Route("route1")->setSource(signal,
EVTTYPE_VIS16_COMP_V_LO);
cscTester->EventRouting()->Route("route1")->addDestination(signal,
EVTTYPE_VIS16_TMU_START);
cscTester->EventRouting()->createRoute("route2", REGISTERED,
DISALLOW_LOCAL);
cscTester->EventRouting()->Route("route2")->setSource(signal,
EVTTYPE_VIS16_COMP_V_HI);
cscTester->EventRouting()->Route("route2")->addDestination(signal,
EVTTYPE_VIS16_TMU_STOP);
cscTester->EventRouting()->apply();
154
PN: 071-0961-00, January 2008
MultiWave Triggers Available
MultiWave Triggers Available
For MultiWave, there are multiple destinations available for the triggers. They can allow
various actions such as single measurements, AWG start, digitizer start, and so on.
The possible destinations are listed in Table 22.
Table 22. Triggers Available as Destination on MultiWave
Event Type
Definition
EVTTYPE_MW_DIG_TRIG
Triggers the digitizer in single step mode
EVTTYPE_MW_AWG_TRIG
Triggers the AWG in single step mode
EVTTYPE_MW_DIG_START
Starts or gates the digitizer
EVTTYPE_MW_AWG_START
Starts or gates the AWG
//create new trigger
cscTester->EventRouting()
->createRoute("my_route",REGISTERED,DISALLOW_LOCAL);
//add source
cscTester->EventRouting()->Route("my_route")->setSource("trigger",
EVTTYPE_DPIN96_COMP_HI);
//add destinations
cscTester->EventRouting()>Route("my_route")
->addDestination(genCh,EVTTYPE_MW_AWG_TRIG);
cscTester->EventRouting()->Route("my_route")
->addDestination(digCh,EVTTYPE_MW_DIG_TRIG);
cscTester->EventRouting()->apply();
//mode single sample per trigger
cscTester->MultiWave()->Signal(genCh)->OutputCtrl()
->selectStartInput(TQ_SOFTWARE);
cscTester->MultiWave()->Signal(genCh)->OutputCtrl()
->selectStepTrigger(TQ_RISING_EDGE_BP);
cscTester->MultiWave()->Signal(digCh)->InputCtrl()
->selectStartInput(TQ_SOFTWARE);
cscTester->MultiWave()->Signal(digCh)->InputCtrl()
->selectStepTrigger(TQ_FALLING_EDGE_BP);
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
155
9 – Triggering Methods
Notes
156
PN: 071-0961-00, January 2008
MultiWave Triggers Available
Knowledge Check
1. How many routes are available on the backplane?
2. What logical operators are supported in a source event?
3. What is the EVTTYPE representing the result of the voltage comparator high on a
VIS16?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
157
9 – Triggering Methods
Lab Exercise
Triggering Lab
This lab creates a test that ramps 0 to 10 V with a given slew rate and allows the user to
measure the rise time using a TMU.
To complete this lab the student must be able to create tests using spec from STIL, create
a ramp on a VIS16 and use the TMU. In addition, the triggering method is used to start
the measurements.
1. Open ITE and load the job file.
2. Edit the CPP code and add a new test VIS16_Ramp_TMS.
3. Create the spec from parameters present in the equations_ref.stil to define the
minimum, maximum, and duration of the ramp. Use the level threshold definition the
same way for both start and stop level.
4. Use channel LT1121_IN to define a ramp 0->10 V in 5 ms (range 20 V, 30 mA). The
predefined code setupGeneratorRamp can be used.
5. Define two triggers routes. One route to have source event on the TMU from
comparator low result and the destination event on TMU from comparator high result
on TMU. You can use the setupEventRoutingTMS for this purpose.
6. Set the comparator levels to be the level threshold values (for example, 1 V and 6 V)
7. Define the polarity of the TMS given the fact that the rise time is to be measured.
10 V
high
low
0 V
Comparator low
Rise time
Comparator high
8. Start the modulation and generator gate.
9. Trigger the start of measurement.
158
PN: 071-0961-00, January 2008
MultiWave Triggers Available
10. Make sure the measurement ended properly (timeout if the TMS remains busy). An
example of code is shown below:
//timeout function
int count = 0;
while((count < 2000) && cscTester->TMS()->Signal("LT1121_IN")->IC()
->isBusy())
{
cscUtil->wait(1e-3);
count++;
};
if(count >= 1000) { // Timeout detected
cscExec->Test()->variable(1.0, "s");
}
else {
double value = 0.0;
value = cscTester->TMS()->Signal("LT1121_IN")->IC()->
getMeasData();
cscExec->Test()->variable(value, "s");
}
11. Readback the TMS value and test it using test_var function.
12. Stop Generator.
13. Clear routes.
Note — The wave can be observed with a scope on J111 or J211 (site 0 and site1
respectively).
Triggering MultiWave with a DD1096
This lab creates a test that uses loopback to step a ramp from the MultiWave source and
measure in step on MultiWave measure. The source and measure steps are controlled in
phase by the DD1096 comparator high result (one dedicated channel is used for both
sites).
To complete this lab the student must be able to create tests using a pattern generation,
and create a ramp on a MultiWave and source/capture in steps using dedicated routes.
1. Open ITE and load the job file.
2. Edit the CPP code and copy the HF_loopback_multiwave test to
HF_quasi_static_by_trigger.
3. Change the waveform to be loaded from internal sine to an arbitrary waveform taken
from ./waves/myRamp.awav file.
4. Keep everything identical to the loopback setup until the AWG setup.
5. Before the AWG starts, add a section to control the trigger pin as a source for trigger
and AWG and DIG as destinations for Step triggers.
6. Add a start trigger to be software on both AWG and DIG.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
159
9 – Triggering Methods
7. Keep the loopback setup again until the digitizer starts.
8. After the DIG starts, execute the ExampleExec PatternExec to make the pattern to
execute and the sampling start.
9. Wait for the capture to be completed and save the resulting waveform in an awav file.
10. Stop AWG and digitizer, disable step trigger, and clear routes.
Note — In version 1.5.2 of software the result on measure side is not as expected due to
an FPGA issue. As a consequence a scope is needed to observe the MultiWave AWG
output (J108 or J208 to observe with a scope).
Check Your Work
Review your answers and have the instructor sign off this module.
160
PN: 071-0961-00, January 2008
10
Digital Source and Capture in Mixed Signal
Goal
Learn to use the capture memory for Mixed Signal tests.
Objectives
After completing this unit, students should be able to:
•
Understand how to source digital data with DD1096
•
Understand the features of the Digital Capture memory
•
Create a loopback test using digital source and digital capture
In This Module
______
______
Instructor Presentation
Lab Exercise
20
1
Minutes
Hour
Resources
Diamond Series Documentation Set
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
161
10 – Digital Source and Capture in Mixed Signal
Digital Source
The instrument uses the DD1096 to source a digital wave. Use AWT to generate the
binary data for the converter and then copy and paste inside a STIL pattern to properly
drive data to the DUT. The various sources offered by the DD1096 can be used.
Either write a straight STIL file to generate the code for the converters and it could be a
very long pattern or use the advanced features (mainly scan and APG modes) of the
DD1096.
In the example used later in the lab, scan mode is used because it offers the flexibility to
load any waveform and the writing of such a pattern (even for serial input devices)
remains short provided a limited number of samples are used.
To generate a ramp instead of a sinewave and measure all the codes, the APG might be
an alternative in terms of STIL statements.
Write a source data in scan mode STIL example:
//Signals definition
Signals {
"dig_loopback_in" In {ScanIn;}
"dig_loopback_out"Out{ScanOut;}
}
//Macro definition
MacroDefs {
DACStep {
W "wftSimple";
V {ALL_dig_DAC = H
V {ALL_dig_DAC = L
Shift {
V { dig_loopback_in
}
V {ALL_dig_DAC = H
V {ALL_dig_DAC = L
}
}
0
0
1
1
0
0
1;}
1;}
= #; dig_loopback_out = L;}
0
0
1
1
0
0
1;}
1;}
//Pattern
Pattern DACPat {
W
V
V
V
V
"wftSimple";
{ ALL_dig_DAC
{ ALL_dig_DAC
{ ALL_dig_DAC
{ ALL_dig_DAC
Macro
Macro
Macro
Macro
Macro
162
DACStep
DACStep
DACStep
DACStep
DACStep
{
{
{
{
{
=
=
=
=
X
X
X
X
0
0
0
0
1
1
1
1
dig_loopback_in
dig_loopback_in
dig_loopback_in
dig_loopback_in
dig_loopback_in
X
X
X
X
1;
1;
1;
1;
=
=
=
=
=
}
}
}
}
1000000000000000;}
1000000011001001;}
1000000110010010;}
1000001001011011;}
1000001100100100;}
PN: 071-0961-00, January 2008
Digital Source
V
V
V
V
}
{
{
{
{
ALL_dig_DAC
ALL_dig_DAC
ALL_dig_DAC
ALL_dig_DAC
=
=
=
=
X
X
X
X
0
0
0
0
1
1
1
1
X
X
X
X
1;
1;
1;
1;
}
}
}
}
Digital Capture Memory
The Data Capture memory (DCM) is a 16 M capture space for non-deterministic vector
capture. Applications include ADC testing and memory reads. It is the same memory that
is used by the digital subsystem to capture pass/fail data.
Figure 50. DCM Conceptual Diagram
ADC
11011001
To DCM
In the case of ADC testing the data can be sent to the host for processing by the DSP
library. Other applications for DCM memory include:
•
Readback of EEPROM or other memory data
•
Readback of device or loadboard IDs
•
Learn mode
There are some restrictions to know when designing a loadboard.
•
The bus wide is maximum of 48 bits.
•
The bus has to be located on a single Omni for a given site for optimization using
DCM_HW, while the DCM_SW is able to re-assemble spread bits over Omnis or over
instruments.
Best practice—Choose bus mapped over pins (0..47) or (48..95) and located on a single
instrument.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
163
10 – Digital Source and Capture in Mixed Signal
DCM Capture Example
Typical calls for an ADC test look like:
Register the capture set with a name, start, and stop labels list and signal list.
cscTester->DCM()->add(“ADC_test”, “s1”, “s2”, “ADC”);
The specified capture set takes effect on the next pattern burst:
cscTester->DCM()->enable(“ADC_test”);
Returns the number of samples captured:
samples = cscTester->DCM()->getCapturedCycleCount();
Retrieves the captured data:
cscTester->DCM()
->getCapturedDataBySite(sitenum,"ADC",start_idx,
number_of_samples,data,DCM_HW);
Table 23. DCM Capture Code Implementation
API
Functionality
add()
Registers a capture set
enable()
Enable DCM on next pattern burst
getCapturedCycleCount()
Returns how many cycles were captured
getCapturedDataBySite()
Retrieves the captured data
release()
Frees the DCM memory
disable()
Turn off data capture on next pattern burst
getNames()
Get a list of all potential capture sets
getEnableName()
Get the current enables capture set
Below is a full example of a capture code for a 16 bits serial out device:
void Digital_loopback_Test()
{
vector <string> start_label_list, stop_label_list;
cscExec->Test()->setCurrentName("Digital Loopback Test (16 bits serial)");
cscExec->Test()->setCurrentNumber(200);
//fill label lists
start_label_list.push_back("DLBPat.label1");
stop_label_list.push_back("DLBPat.label2");
164
PN: 071-0961-00, January 2008
Digital Source
//setup DCM
cscTester->DCM()>add("my_capture_lb",start_label_list,stop_label_list,"dig_loopback_out");
cscTester->DCM()->enable("my_capture_lb");
cscTester->DCLevels()->Signal("ALL_lb")->enableComparator();
cscTester->DCLevels()->Signal("ALL_lb")->setForcePattern();
//execute the pattern burst
cscExec->PatternExec("DLBExec")->execute();
long int numcapt = cscTester->DCM()->getCapturedCycleCount();
printf("Capture length = %d \n",numcapt);
CSC_SERIAL_BLOCK_BEGIN
int sitenum = *cscIter, i, j;
unsigned long int myData[numcapt];
//retrieve data
cscTester->DCM()
->getCapturedDataBySite(sitenum,"dig_loopback_out",0,numcapt,myData,DCM_HW);
double data[numcapt];
vector<double> my_data_double;
for(i=0;i<numcapt/20;i++)
data[i]=0;
//serial out (16bits with significant bits 2 to 18) to integer
for (i=0;i<numcapt;i+=20) {
for (j=2;j<18;j++) {
data[i/20] += myData[i+j] * pow(2.0,double(17-j));
}
}
for (i=0;i<numcapt/20;i++) {
my_data_double.push_back((double)data[i]);
}
DspWaveform *dspData
= new
DspWaveform(DspWaveform::wftRRect,"myWave",my_data_double,NULL);
char my_char[256];
sprintf(my_char,"./waves/digital_capture_site%d.awav",sitenum);
//save as awav
dspData->writeAwavFile(my_char,true);
// get characteristics
double snr,thd,sinad,magn,fund,spur,maxSpur;
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
165
10 – Digital Source and Capture in Mixed Signal
dspData->ratiosMeas( 5,NULL,&snr,&thd,&sinad,&magn,NULL);
//use test_var function to evaluate the results
test_var("Ampl digitizer", 32767.0, 32768.0,magn, "V", 201);
test_var("SNR", 6.02*15+1.76, 6.02*17+1.76 ,snr, "dB", 202);
CSC_SERIAL_BLOCK_END
//release DCM
cscTester->DCM()->release("my_capture_lb");
}
166
PN: 071-0961-00, January 2008
Digital Source
Lab Exercise
DCM Lab
This lab is aimed at emulating a digital source for a DAC and retrieving a digital output
from an ADC. To do this some files and functions have been prepared. The sourced data
(on dig_loopback_in) is serialized with 16 significant bits and 20 bits total. The user has to
extract the 16 significant bits to be able to do DSP computation.
For the following labs, change directory to ./training_dacadc/lab. The res and sig files are
already defined for the DAC and ADC to be used.
1. Open Program Developer by typing vs & in a command prompt or launching program
developer from ITE.
2. Go inside the ./patterns directory and open the digital_loopback.stil file.
Note — This pattern is using a scan mode to generate the serial_data necessary to feed
the DAC. dig_loopback_in is the source and dig_loopback_out_out is used as a pure
output to capture the fails. This is why a L is used. Any expected L failing are actually 1
and passing will be 0 so the data will be coded properly.
3. Create a new test Digital_Loopback_Test with the following actions:
a. Create a cpp <vector> start_label_list made of pattern_name.label1 and a vector
stop_label_list made of pattern_name.label2.
b. Setup and enable a DCM capture from start_label_list to stop_label_list on
dig_loopback_out pin.
c. Execute the DLBLevelsExec patternExec with comparators enabled on ALL_lb
pingroup to setup levels and timing
d. Use the cscTester->Seq()->setStartAdress and cscTester->Seq()->start
commands to execute the pattern without P/F status. The pattern is expected to
fail and we are only interested in the captured data.
e. Count the numbers of captured data using API.
f.
Retrieve the data and save as awav using DSP waveform API
g. Test the Amplitude and SNR (Amplitude = 65535 and SNR = 6.02 x Neff + 1.76)
with Neff being 16.
4. Add the test in the user_main section.
5. Add the digital_loopback.stil file in the job file.
6. Compile the job file.
7. Load and execute the test.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
167
10 – Digital Source and Capture in Mixed Signal
8. You can aso check the result in AWT by opening the generated awav file.
9. Optionally, use AWT to create another waveform like a ramp on 1024 pts.
a. For that purpose generate a waveform.
b. Select File > Save As command and select SWAV Parallel Files (*.swav) in the
Files of Type menu.
c. Select number of bits 16 in Natural Binary. The other options can remain.
d. Copy and paste the generated parallel code instead of the existing code.
e. Recompile the pattern, reload the test program and re-run the test.
The AWT generated file should be similar to the one just created.
Check Your Work
Review your answers and have the instructor sign off this module.
168
PN: 071-0961-00, January 2008
11
DAC Tests Using MultiWave DIG
Goal
Learn to use MultiWave to perform typical DAC tests.
Objectives
After completing this unit, students should be able to:
•
Review typical DAC tests and methods
•
Be able to build tests for DAC using MultiWave digitizer
•
Understand the triggering concept to sync digital and analog
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab
1
5
90
Hour
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
169
11 – DAC Tests Using MultiWave DIG
Analog Waveform Capture
This chapter concentrates on using the Diamond Series MultiWave Digitizer (DIG).
Starting with a high level view of what digitizing is all about, and then focus on how to use
the MultiWave digitizer to test DACs.
This chapter also contains information on common tests that utilize the digitizer, as well
as a review of some sampling theory concepts needed to realize the best possible
performance from the instrument.
The lab exercise at the end of this chapter provides the student with the opportunity to
use the various features of the MultiWave digitizer and to see how common tests are
accomplished.
Typical Waveform Digitizer Architecture
Figure 51 depicts a typical waveform digitizer architecture. It consists of five blocks or
stages:
•
Input scaling and level shifting
•
Input filtering
•
Analog-to-digital conversion
•
Storage into digital memory
•
Digital Signal Processing
Figure 51. Waveform Digitizer Architecture
Analog
Signal
170
Scaling
and Level
Shifting
Anti-Alias
Filter
ADC
Waveform
Storage
Digital
Signal
Processing
PN: 071-0961-00, January 2008
Analog Waveform Capture
Input Scaling and Level Shifting
The primary purpose of this block is to match the signal to the digitizer’s input. This is
done with a combination of scaling and level shifting, as shown in Figure 52.
Figure 52. Waveform Scaling Issues—Courtesy Soft Test Inc.
Amplitude
Vinfs
ADC
Input
Signal
Vinzs
ADC
Output
All Ones
ADC
Output
All Zeroes
ADC
Output
All Ones
ADC
Output
All Ones
Time
In addition, the input signal may be single-ended or differential.
Input Filtering
Before an analog signal can be properly digitized, it should be filtered to restrict its
bandwidth. The filters used for this purpose are usually called anti-alias filters. Anti-alias
filters are generally fixed frequency, analog filters.
In addition, some digitizers have a notch, or band-reject, filter in the signal path. This
allows the user to remove the test frequency from the signal and use the entire dynamic
range of the digitizer to find the small distortion and noise components present.
Analog-to-Digital Conversion
The process of analog-to-digital conversion consists of both sampling and quantization.
Because of the wide range of signals that need to be digitized by an ATE system, a single
ADC may not suffice. For example, audio signals require high precision at low sampling
frequencies, while video signals require less precision at higher frequencies.
There are several different ADC device architectures. Each has their own pros and cons.
Most waveform digitizers use either Successive-Approximation Register (SAR) or Sigma
Delta ADCs.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
171
11 – DAC Tests Using MultiWave DIG
Quantization is part of the process of digitization. An ADC is capable of producing a finite
set of outputs, and quantization refers to the many-to-one mapping of an analog input to a
digital output.
The other part of digitization is sampling, meaning when this quantization is to occur.
4XDQWL]DWLRQ
Figure 53. Digitization Consists of Sampling and Quantizing
Sampling
Quantization Error puts an upper limit on just how good a particular device or instrument
can be. The more bits a digitizer has the more possible quantization levels, and the more
accurate the representation of the corresponding analog input signal.
The Quantization Error Q is bounded by plus or minus one-half an LSB. How Q limits the
Signal to Noise ratio of an ADC is detailed later.
Figure 54. Quantization Error Illustration
Quantized
Ideal
Storage and Digital Signal Processing
Most mixed-signal test systems have dedicated memories for storing captured data,
separate from vector or program memory. This memory is often called waveform memory,
and contains captured waveform data that is then processed by the test system to
calculate various parametric values such as distortion, gain, and so on.
This memory may be dedicated or general purpose, and may reside on the instrument,
controller, CPU, or a shared resource.
172
PN: 071-0961-00, January 2008
DAC Description
DAC Description
A Digital-to-Analog Converter (DAC) is a device whose output is analog signal. The tests
performed might also be done on other types of analog ICs. The tests fall into one of two
categories:
•
Static tests
•
Dynamic tests
Both tests are important and indicate how well the device performs its intended
application. Certain applications may value one test type over another for technical and
cost considerations.
Static Tests
Static tests are a measure of a device’s linearity. This could also be viewed as the
accuracy of its transfer function. For example, a unity gain buffer has a transfer function
similar to that shown in Figure 55.
Analog Output 0–5 V
Figure 55. Unity Gain Buffer Transfer Function
Analog Intput 0–5 V
Many DACs have the same type of transfer function, but the X-axis is the digital input.
Analog Output 0–5 V
Figure 56. DAC Transfer Function
In the case of the transfer
function y = mx + b, the
variable b represents the
DC offset error, while m
represents the gain.
Digital Input 0x00–0xFF
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
173
11 – DAC Tests Using MultiWave DIG
There are four basic measures of linearity:
•
Gain
•
Offset
•
Integral non-linearity
•
Differential non-linearity
These tests are normally done by stimulating the device in such a way that it outputs a
ramp, or linear transfer function. Because these tests are often done slowly, without
dynamic considerations, they are generally considered static tests.
Linearity tests are detailed later in this chapter.
Dynamic Tests
Dynamic tests look at the operation of the device under conditions that more closely
approximate the application. For most DACs, the signals generated by the device is a
sine wave.
Figure 57. Dynamic Testing and Frequency Domain Analysis
The most common dynamic tests are:
•
Signal-to-Noise Ratio (SNR)
•
Total Harmonic Distortion (THD)
•
Signal-to-Noise and Distortion (SINAD)
The captured data for these tests is usually processed using frequency domain analysis,
utilizing a Fast Fourier Transform (FFT). More details follow later in the chapter.
174
PN: 071-0961-00, January 2008
DAC Testing Using a Digitizer
DAC Testing Using a Digitizer
Linearity Testing
Static testing is often called linearity testing, and can further be broken down into Integral
Non-Linearity (INL) and Differential Non-Linearity (DNL). Two other common
measurements are Offset and Gain.
INL is a measure of the absolute error at a given point relative to the ideal transfer
function. DNL is a measure of the step size error from one output to the next.
INL and DNL tests are usually conducted using signals that represent ramps. It steps
through each value of possible inputs and measures the resulting outputs. It can then
compare the observed transfer function to an ideal one predicted by the specification, and
come up with measurements for offset, gain, INL, and DNL.
Figure 58. Linearity Errors in DACs Summary—Courtesy Soft Test, Inc.
Gain Error
Ideal full scale output
Actual full scale output
Actual full scale—offset error
Analog output (V)
Non-monotonic
Actual output
Optimum output
INL = Actual output—Optimum point on line
Straight line
between endpoints
Device FSR
Actual LSB Step
Calculated Device LSB size
DNL = Actual step—Calculated size
0
Offset Error
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
Digital code input
175
11 – DAC Tests Using MultiWave DIG
Common Formulas and Computations for Static DAC Tests
Full Scale Range: V FSR = V FS – V ZS
Where VFS is the full scale voltage measurement and VZS is the zero scale measurement.
FSR
measured
LSB: LSB = --------------------------
2bits – 1
Offset Error Voltage: V OFFSET = V ZS [ measured ] – V ZS [ ideal ]
Offset Error:
Units
Conversion
%FS
VOFFSET
------------------------- ⋅ 100
FSR IDEAL
ppm
V OFFSET
------------------------- ⋅ 10 6
FSR IDEAL
LSB
V OFFSET
------------------------LSB IDEAL
The offset error voltage is often normalized to another unit. Typical units in the device
specification are %FS, ppm, and LSB.
Gain Error Voltage: Gain Error Voltage = ( V FS – V ZS ) – V FSR [ ideal ]
Gain Error: GainError = ( FSR ACTUAL – FSR IDEAL )
Normalized to the unit of choice.
Differential Nonlinearity: = ( V code[i] – V code[i-1] ) – 1LSB
DNL an INL are usually normalized to LSBs. Then the formula is:
( V code[i] – V code[i-1] ) – LSB
DNL code [ i ] = -------------------------------------------------------------LSB
n=i
Integral Nonlinearity: INL [ i ] =
∑ DNL [ n ]
n=1
Note — The above formula for INL is based on the end-point or straight-line method. An
alternative to this is the best fit method, which uses a curve fitting algorithm such as the
sum of least squares.
The Credence DSP library does not contain a high level function for either one of these
methods. The user must decide which one to implement and write it explicitly. The lab
exercise requires writing some code to calculate linearity.
176
PN: 071-0961-00, January 2008
DAC Testing Using a Digitizer
Dynamic Testing
Dynamic testing is usually done using sinusoidal test signals, and result processing is
done using Frequency Domain techniques. Common dynamic tests include Signal-toNoise Ratio (SNR), Signal-to-Distortion Ratio (SDR), and Signal-to-Noise-and-Distortion
Ratio (SNDR).
Distortion and Noise testing looks at the output of a signal and how it differs from the
ideal. All devices add at least some small amount of unwanted signal content to their
outputs, in addition to the desired output signal.
Linear Systems theory tells us that a circuit with an input at frequency Fi can only output
signals containing Fi. In the real world that is not true. Signal content is classified into
these three categories:
•
Signals at same frequency as input
•
Signals at integer multiples of input frequency
•
Everything else
Fi
Fi
Harmonics are integer multiples of the original frequency. They are a result of the nonlinearities of the DUT. While in theory these harmonics extend out to infinite frequencies,
most users are interested in the first 5 to 10 harmonics.
Figure 59. Harmonic Distortion in DACs
Fi
Fi
2*Fi
3*Fi
n*Fi
Noise is categorized as everything in the frequency spectrum that is not signal or
harmonic distortion. Some sources of noise include:
•
Gaussian (random) noise
•
Quantization noise
•
Correlated noise
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
177
11 – DAC Tests Using MultiWave DIG
Common Formulas and Computations for Dynamic DAC Tests
⎛
⎞
⎜
⎟
⎜
⎟
⎜ Magnitude Fundamental ⎟
Signal-to-Noise Ratio: 20 log ⎜ ---------------------------------------------------------⎟
⎜ ( Fs ) ⁄ 2
⎟
⎜
2⎟
( Magni tude Noise ) ⎟
⎜
⎝
⎠
∑
0
⎛
⎞
⎜
⎟
⎜
⎟
⎜
⎟
⎜ Magnitude Fundamental ⎟
--------------------------------------------------------------------Signal-to-Distortion Ratio: 20 log ⎜
⎟
⎜ Fs
⎟
-----2
⎜
⎟
⎜
2⎟
( Magnitude Harmonics ) ⎟
⎜
⎝
⎠
∑
0
Signal-to-Noise-and-Distortion Ratio:
⎛
⎞
⎜
⎟
⎜
⎟
⎜
⎟
⎜
⎟
Magnitude Ft
20 log ⎜ ------------------------------------------------------------------------------------⎟
F
⎜ -----s
⎟
⎜ 2
⎟
⎜
2⎟
( Magnitude Noise + Distortion ) ⎟
⎜
⎝
⎠
∑
0
178
PN: 071-0961-00, January 2008
Sampling Theory
Sampling Theory
Sampling theory is an important part of mixed signal testing. A complete introduction to
the subject is beyond the scope of this class. There are many additional resources that
cover the topics of sampling and Fourier transforms.
An important concept in mixed signal testing is the concept of coherence. One of the
characteristics of performing an FFT on a sampled signal is that the Fourier Transform
assumes the signal is a continuous function that exists for all time. In reality, a captured
signal can be thought of as a continuous signal stretching from minus infinity to infinity,
multiplied by a time window that represents the amount of time over which the samples
have been taken as shown in Figure 58.
Figure 60. A Time Sampled Waveform
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
179
11 – DAC Tests Using MultiWave DIG
The FFT assumes that the signal passed into it is a windowed representation of a
continuous waveform. When the window corresponds to an integer number of waveform
cycles, the sampling is said to be coherent. Coherent sampling has the following
advantages:
•
Signal FFT displays frequency content in a set of discrete bins
•
FFT magnitudes are undistorted by the process of sampling
For example, 1 KHz waveform to be sampled over three cycles of the signal:
Call the waveform frequency Ft (or Fi) by convention (test frequency, or frequency of
interest). Use the variable M to denote the number of cycles.
Figure 61. Test Frequency
)
0
.003
t
1
Ft
The sampling period, or unit test period (UTP) is: UTP = M ⋅ ----Sample this waveform by capturing 16 equally spaced points along the waveform as
shown in Figure 62.
Figure 62. Equally Spaced Samples
1
Fs
Define the UTP in terms of sampling: UTP = N ⋅ ----Where N is the number of samples and Fs is the frequency sampling is performed.
M
3
16
N
By substitution, define the coherence equation as: ----- = ----- or ------------ = ------------------Ft
180
Fs
1000
5333.33
PN: 071-0961-00, January 2008
Sampling Theory
Take the Fast Fourier Transform (FFT) of the signal as shown in Figure 63.
Figure 63. A Frequency Spectrum
Waveform
WaveformininTime
time
FFT
FFTMagnitude
Magnitude
1000
1000
0
0.001 0.002
0.002
0.001
0.003
0.003
Coherent sampling results in a spectrum where frequency content falls into N/2 bins,
each equally spaced by Fs/N (sometimes called Fres, of FF, or for Fourier Frequency).
Figure 64. FFT Using AWT
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
181
11 – DAC Tests Using MultiWave DIG
Spectral Leakage
The importance of coherent sampling is illustrated by showing an example of noncoherent sampling as shown in Figure 65 with these parameters:
•
Same time domain signal sampled (3 cycles @ 1000 Hz)
•
Sampling rate Fs is set to 5.555 KHz, with N = 16
•
Note that the coherence equation is not met
Figure 65. Spectral Leakage
Waveform
WaveformininTime
time
FFT
FFTMagnitude
Magnitude
1000
1000
0.001 0.002
0.002 0.003
0.003
0 0.001
Note that the time domain waveform shows no noticeable difference. The frequency plot,
however, shows a characteristic known as spectral leakage (or spreading, or skirting).
The primary problem cause by leakage is an artificially high SNR measurement, as
shown in the lab.
182
PN: 071-0961-00, January 2008
Sampling Theory
Aliasing
When a set of amplitude samples is converted into the frequency domain, the frequency
information returned from the FFT can be ambiguous regarding frequency, because more
than one sinusoid might fit the sample points.
Figure 66. Spectral Ambiguity, or Aliasing—Courtesy Soft Test, Inc.
Signal
Replica
Time
Amplitude
Replica
Signal
Replica
Replica
Replica
Frequency
Ft - Fs
Ft
Ft + Fs
Ft + 2Fs
Ft + 3Fs
A sample set contains the original test signal frequency (Ft), replicated at frequencies
every k times the sample frequency in both the positive and negative directions:
F replica = k ⋅ F s ± F t , k = integer
Notice how the sampled waveform has identical components at additional frequencies;
these replicas extend to infinity. The information returned by an FFT can be analyzed
using the low pass data, the band of frequencies out to Fs/2, ignoring the replicas.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
183
11 – DAC Tests Using MultiWave DIG
Figure 67. Continuous Nature of Discrete Spectra
Amplitude
Fs/2
Fs
3Fs/2
Nyquist Band
Mirror
Image
Signal
Mirror
Image
Replica
Mirror
Image
Frequency
Ft - F s
F s - Ft
Fs - F t
Fs + F t
2Fs - F t
Note that the replicas extend to infinity in both directions. A sampled signal with a
component higher than those in the band of interest, but lower than the sample frequency
Fs can end up aliased into the frequency band of interest. This can be a problem. If the
input signal being sampled contains signal components greater than Fs/2, those signal
components are folded into the frequency data for the original signal, distorting the
spectral information.
The spectrum from Fs/2 to Fs is not a replica, it is a mirror image. As is the spectrum from
3Fs/2 to 2Fs, and each even numbered spectrum. The odd numbered spectra are
replicas.
184
PN: 071-0961-00, January 2008
Digitizer Example Code Implementation
Digitizer Example Code Implementation
The following code example shows several of the Digitizer APIs in use.
Setup of the DIG waveform:
CSCMultiWaveArbitraryWave digWave("hf_capture");
digWave.setPath(HIGH_FREQUENCY);
digWave.setLength(8192*2);
digWave.setIncrement(1);
Allocate DIG memory:
cscTester->MultiWave()->Signal("Dig_1")->Memory()
->createWaveform(&digWave);
Sample clock setup:
double fsample = (4.43e6/46.0)* 1024.0;
long divider = (long)(3.85e9/fsample);
fsample *= divider;
//fi=4.43Mhz, N=1K , M=46
DDS selection and divider per channel:
cscTester->MultiWave()->Signal(signal)->Clock()
->setClock(CLOCK_1,fsample, divider, true);
cscTester->MultiWave()->Signal(signal)->InputCtrl()
->setHfClock(true);
DIG setup:
cscTester->MultiWave()->Signal(signal)->InputCtrl()
->setHfLowPassFilter(F_1P2_MHZ);
cscTester->MultiWave()->Signal(signal)->InputCtrl()
->setHfInputTermination(SINGLE_ENDED )
cscTester->MultiWave()->Signal(signal)->InputCtrl()
->setHfTermMinus(DIG_HF_TERMINATION_50);
cscTester->MultiWave()->Signal(signal)->InputCtrl()
->setHfTermPlus(DIG_HF_TERMINATION_50);
cscTester->MultiWave()->Signal(signal)->InputCtrl()
->setHfRange(range_meas, DIFFERENTIAL);
Turn On DIG:
cscTester->MultiWave()->Signal(signal)->ArmCtrl()
->armDIG(&digWave);
cscTester->MultiWave()->Signal(signal)->InputCtrl()->start();
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
185
11 – DAC Tests Using MultiWave DIG
Trigger Implementation to Start Digitizing
The trigger implementation on Diamond Series allows the user to decide when to start
and stop the digitizer and/or when to step digitizer.
This flexibility is available by the definition of up to 8 routes made of source and
destinations.
Common routes are:
•
A route from digital world to start the digitizer—Most of the mixed signal devices need
a digital sequence to setup the mode and access the analog cells so some samples
are taken without a need for them.
•
- A route from digital world to analog—To sample by step (case of digital ramp on a
serial DAC for example).
The digital pin triggers the start of the digitizer as shown in Figure 68.
Figure 68. Start Digitizer in Continuous Mode on Rising Edge
trigger
Effective sampling
Converter clock
//Event routing to the backplane
//create new trigger
cscTester->EventRouting()->
createRoute("my_route1",REGISTERED,DISALLOW_LOCAL);
//add source
cscTester->EventRouting()->Route("my_route1")->
setSource("trigger",EVTTYPE_DPIN96_COMP_HI);
//add destination-start digitizer
cscTester->EventRouting()->Route("my_route1")->
addDestination(digCh,EVTTYPE_MW_DIG_START);
186
PN: 071-0961-00, January 2008
Trigger Implementation to Start Digitizing
//apply route
cscTester->EventRouting()->apply();
//mode start awg per trigger-1 trigger only needed cpp must control arm
cscTester->MultiWave()->Signal(digCh)->InputCtrl()->
selectStartInput(TQ_RISING_EDGE_BP);
..->arm(); //.... waiting for trigger pulse
Every trigger pulse from DPIN digitizes a single sample as shown in Figure 69.
Figure 69. Start Digitizer in Step Mode on Rising Edge
trigger
Effective sampling
Converter clock
//Event routing to the backplane
//create new trigger
cscTester->EventRouting()->
createRoute("my_route2",REGISTERED,DISALLOW_LOCAL);
//add source
cscTester->EventRouting()->Route("my_route2")->
setSource("trigger",EVTTYPE_DPIN96_COMP_HI);
//add destination-start digitizer
cscTester->EventRouting()->Route("my_route2")->
addDestination(digCh,EVTTYPE_MW_DIG_TRIG);
//appply route
cscTester->EventRouting()->apply();
//mode single sample per trigger-1trigger needed per sample cpp must arm
and start
cscTester->MultiWave()->Signal(digCh)->InputCtrl()->
selectStartInput(TQ_SOFTWARE);
cscTester->MultiWave()->Signal(digCh)->InputCtrl()->
selectStepTrigger(TQ_RISING_EDGE_BP);
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
187
11 – DAC Tests Using MultiWave DIG
Note — When you are done using the triggers you should deselect them using the
following commands:
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStartInput(TQ_SOFTWARE);
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStepTrigger(TQ_DISABLE);
188
PN: 071-0961-00, January 2008
Trigger Implementation to Start Digitizing
Knowledge Check
1. What are the four basic measurements of linearity for a DAC?
2. What is the consequence of non-coherent sampling on the digitized waveform
spectrum?
3. Which API statement would you use to sample with the digitizer in steps from the
backplane on falling edge?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
189
11 – DAC Tests Using MultiWave DIG
Lab Exercise
DAC Tests Lab
This lab is creates a typical DAC test using MultiWave as DIG, the DD1096 instrument,
and the available DSP library.
1. Open the test program ./training_dacadc/lab with ITE.
Note — On digital side: pattern is running at 50 ns period, 121 cycles in 1024 samples, 20
periods to make a sample so Fs = 1 / (50 * 20) = 1.0 MHz ; Ft = Fs * M/1024 = 118 kHz.
On the analog side the same sampling frequency is used to digitize so bin 121 is
expected.
2. Add a function called DynamicDACTest including the following steps:
a. Set up the clock to have a sampling frequency on digitizer 20 times less than
digital pattern [selected to be 50 ns] so 1.0 MHz:
setupDigClock(digCh,CLOCK_1,fpll,divider_dig,SIGNAL_PATH_LF)
b. Connect the digitizer to match the loadboard configuration:
AwgDigConnect(digCh,SIGNAL_PATH_LF,MUX_SINGLE_P
c. Set up bypass as filter, the measure range large enough to cope with maximum
output of the DAC (use stil equation DAC_spec->DAC_cat_118k->range_meas):
DigSetup(digCh,SIGNAL_PATH_LF,BYPASS, range_meas, SINGLE_ENDED,
DIG_HF_TERMINATION_50, OSR ,FULLY_FILTERED);
d. Reserve the memory for the waveform:
•
CSCMultiWaveArbitraryWave digWave("lf_capture")
•
DigWaveSetup(digCh,digWave,LOW_FREQUENCY,1,capture_fft *2)
e. Route the trigger pin as source and the digitizer as destination in start mode
using: EventRouting_digital2digitizer("trigger",digCh,"CONT")
f.
startDig(digCh,digWave).
g. Setup levels on Vref and Vdd for AD5541 using:
setup_levels_DAC("AD5541_VDD", 5.0,"AD5541_VREF",amplitude_src)
h. Execute DACdynLevelsExec patternExec and the pattern with statements:
cscTester->seq()->setStartAddress and cscTester->Seq()->start()
i.
stopDigEOC(digCh,SIGNAL_PATH_LF,1.0);
j.
Upload data using DigUpload(digCh,digWave).
k. Process amplitude with ratioMeas DSP function.
190
PN: 071-0961-00, January 2008
Trigger Implementation to Start Digitizing
l.
Save the captured waveform a awav file.
m. Test results.
n. Disconnect, clean digitizer memory, and clean trigger routes using:
•
AwgDigConnect(digCh,SIGNAL_PATH_LF, MUX_DISCONNECT)
•
DigClean(digCh,digWave);
•
cscTester->EventRouting()->clearRoutes()
o. Power down device with power_down() function.
p. Compile, run and debug test.
Check Your Work
Review your answers and have the instructor sign off this module.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
191
11 – DAC Tests Using MultiWave DIG
Notes
192
PN: 071-0961-00, January 2008
12
ADC Tests Using MultiWave AWG
Goal
Learn to use the MultiWave to perform typical ADC tests.
Objectives
After completing this unit, students should be able to:
•
Review typical ADC tests and methods
•
Understand the triggering concept to sync digital and analog
•
Write tests for ADC using MultiWave
In This Module
______
______
______
Instructor Presentation
Knowledge Check
Lab Exercise
1
5
90
Hour
Minutes
Minutes
Resources
Diamond Series Documentation Set
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
193
12 – ADC Tests Using MultiWave AWG
Waveform Generation
This chapter concentrates on using the Diamond Series MultiWave AWG. Starting with a
high level view of what generation is all about, and then focus on how to perform test
using the MultiWave AWG.
This chapter also contains information on common tests that use the MultiWave AWG. In
addition, it includes a review of sampling theory concepts that are needed to realize the
best possible performance from the instrument.
The lab exercise at the end of this chapter provides the student with the opportunity to
use the various features of the MultiWave AWG, and to see how common tests are
accomplished.
Typical Waveform Source Architecture
Figure 70 depicts a typical waveform digitizer architecture. It consists of four blocks or
stages:
•
Waveform memory and clocking
•
Digital-to-analog conversion
•
Filtering
•
Scaling and level shifting
Figure 70. Generic Waveform Generation—Courtesy of Soft Test, Inc.
Gain
Adjust
Full Scale
Reference
DC Offset
–
+
Modulation
D/A Converter
–
+
Continuous Time
Purifying Filters
Waveform
Data Storage
Memory
Sample
Clock
194
Signal
Output
–
+
Differential
Output
PN: 071-0961-00, January 2008
Waveform Generation
Analog Waveform Source Concepts
Waveform Memory and Clocking
The waveform data is stored in memory. In many cases it is frequency and amplitude
independent. The memory contains nothing more than a set of unitless magnitudes that
can be clocked at various speeds and amplified by certain amounts to get a variety of
waveforms with the same general shape.
Figure 71. Waveform Memory and Clocking
D/A Converter
Waveform
Data Storage
Memory
Sample
Clock
Digital-to-Analog Conversion
The memory data is clocked into the DAC, and an analog signal is produced. This signal
must be conditioned before sending it off to the DUT. It has a nominal amplitude based on
the internal specifications of the DAC. In addition, it maintains a zero-order hold, it keeps
one analog value steady until the succeeding clock cycle.
The DACs in waveform generators may have various speeds and resolutions, depending
on the target application. For example, audio requires low bandwidth but high resolution,
while video requires high-speed but low resolution. The Diamond Series MultiWave can
addresses both ends of the target applications with its dual path architecture.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
195
12 – ADC Tests Using MultiWave AWG
Output Filtering
Because the AWG DAC output is stepped, a reconstruction filter is often added to the
output. This filter smooths the steps from the waveform.
Figure 72. AWG Reconstruction Filter
0.5
y( n)
w( n)
− 0.5
0
0.01
n
Reconstruction
Filter
Ft
Fs
An effect known as sin(x)/x distortion can lessen the signal output power. Some AWGs
have a special sin(x)/x filter on the output. Others such as the MultiWave use a high
sampling ratio (many samples per cycle) to minimize this effect.
High resolution AWGs often have a bandpass filter to further clean up the output signal.
Figure 73. AWG Bandpass Filter
1.298
y( n )
1.5
1.5
1.5
1
1
0.5
0.5
0
y( n )
0.5
0.5
1
− 1.236 1.5
0
1
0
200
400
0
600
n
800
1000
999
− 1.5 1.5
0
0
200
400
600
n
800
1000
999
Purifying Filter
Ft
Scaling and Level Shifting
The signal is amplified to its desired output value. In addition, any required DC offset is
added.
196
PN: 071-0961-00, January 2008
Waveform Generation
ADCs Description
There are several prevalent designs for ADCs, mostly trading off resolution and speed.
Sigma-delta converters are becoming the dominant architecture for lower speed
applications because of their low cost.
For high-speed applications, flash (or derivatives of the flash design) are the most
popular.
Figure 74. Speed Versus Resolution in Modern ADCs
Sigma-Delta
Resolution
SAR
Subranging
Flash
Bandwidth
Typical ADC Tests
An ADC is a device whose input is an analog signal. The tests performed on this device
might also be done on other types of analog ICs. These tests fall into one of two
categories:
•
Static tests
•
Dynamic tests
Both tests are important and indicate how well the device performs its intended
application. Certain applications may value one test type over another, both for technical
and cost considerations.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
197
12 – ADC Tests Using MultiWave AWG
Static Tests
Static testing of an ADC is more complicated than static DAC testing. For one thing, the
unknown quantity to find is an input value, not an output. In addition, the nature of analog
inputs suggests that this input value is not a single value, but a range of values that varies
due to noise. There are four basic linearity measures:
•
Gain
•
Offset
•
Integral non-linearity
•
Differential non-linearity
The typical technique for ADC static testing is the histogram technique. Linearity tests are
detailed later in this chapter.
Digital Output 0x00-0xFF
Figure 75. ADC Transfer Function
Analog Input 0-5 V
198
PN: 071-0961-00, January 2008
Waveform Generation
Dynamic Tests
Dynamic tests look at the operation of the device under conditions that more closely
approximate the application. For most ADCs the signal sent into the device is a sine
wave. The most common dynamic tests are:
•
Signal-to-Noise Ratio (SNR)
•
Signal-to-Distortion (SDR)—Sometimes referred to as Total Harmonic Distortion
(THD).
•
Signal-to-Noise and Distortion (SNDR)—Sometimes referred to as Signal-to-Noise
and Distortion (SINAD).
The captured data for these tests is usually processed using frequency domain analysis,
utilizing a Fast Fourier Transform (FFT).
Figure 76. Dynamic Testing and Frequency Domain Analysis
Distorted Sine Signal
1
0
0.002
0.004
0.006
0.008
-1
Distorted Sine Signal viewed in the Frequency Domain
1
1000Hz
2000Hz
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
199
12 – ADC Tests Using MultiWave AWG
ADC Testing Using an Analog Source
Linearity
There are several good texts covering the details of ADC static testing. This chapter
shows the typical calculations for these tests and the terminology used.
ADC Static Terminology
Figure 77. Transition Voltages
Transition Voltages
VT1
VT2
VT3
Figure 78. Code Width
Code Widths
VT1
200
VT2
VT3
PN: 071-0961-00, January 2008
ADC Testing Using an Analog Source
Figure 79. Full Scale Transition Range and LSB Size
Example:
VZST = 28 mV
VFST = 5.01 V
FSTR = 4.982 V
FSTR
•
•
Same as average code width
Divide FSTR by (2 bits – 2)
(2 bits – 2) steps
Example:
FSTR = 4.982 V
# Bits = 10
LSBDUT = 4.875 mV
FSTR
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
201
12 – ADC Tests Using MultiWave AWG
Full scale range (FSR) of an ADC is somewhat ambiguous since the device outputs a
valid code even if stimulated with a voltage outside of its range.
Figure 80. Full Scale Range
FSTR
FSR
Example:
FSTR = 4.982 V
# Bits = 10
LSBDUT = 4.875 mV
FSR = 4.982 + 2(0.004875 ) = 4.9917 V
202
PN: 071-0961-00, January 2008
ADC Testing Using an Analog Source
Figure 81. Offset and Gain Error Voltages
Ideal Zero
VZST
VZST -½ LSB
Example:
VZST = 28 mV
LSBDUT = 4.875 mV
Offset = 28 mv – ½(4.875 mV) = 25.5625 mV
FSTR
FSR
Example:
FSTR = 4.982 V
# Bits = 10
LSBDUT = 4.875 mV
FSRDUT = 4.982 + 2(0.004875 ) = 4.9917 V
FSRIDEAL = 5.0 V
Gain Error Voltage = 4.9917 V – 5.0 V = -8.3 mV
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
203
12 – ADC Tests Using MultiWave AWG
Differential non-linearity (DNL) is a measure of the relative error in code widths
throughout the device. A missing code has a DNL of -1.
Figure 82. DNL and No Missing Codes
FF
FF
Missing Code
Code Width n
Code Width n + 1
CW Too Wide
00
00
Analog Vin
204
Analog Vin
PN: 071-0961-00, January 2008
ADC Testing Using an Analog Source
Integral Non-Linearity
The Integral Non-Linearity (INL) test measures absolute deviation of the transfer function
from the ideal. The generally accepted method measures the deviation of the center of
code from its ideal position.
DNL i + DNL i – 1
INL i = INL i – 1 + --------------------------------------2
Another method uses the summation of DNL errors:
INL i = ΣDNL i
Figure 83. INL of an ADC
5.1
Actual Code
Centers
Y (Code)
Ideal Code
Centers
Z (Code)
-0.1
0
Code
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
256
205
12 – ADC Tests Using MultiWave AWG
Histograms
The most common method for accomplishing linearity measurements in ADCs is to use
the histogram method. Instead of needing to know all of the specific transition voltages,
use a ramp made up of very small input steps, and count how many times each code
occurs (known as hits per code).
Figure 84. Histograms
8
Ideal Histogram
Hits Per Code
6
4
2
0
0
3
8
6
9
Code
12
15
12
15
Actual Histogram
Hits Per Code
6
4
2
0
0
3
6
9
Code
The DSP Library contains a complete set of functions for both ramp histograms and sine
histograms.
206
PN: 071-0961-00, January 2008
ADC Testing Using an Analog Source
Dynamic Tests
The dynamic tests for an ADC are very similar to those for a DAC, and use the same
calculations (shown below).
Signal-to-Noise Ratio:
⎛
⎞
⎜
⎟
⎜
⎟
⎜
⎟
Magnitude Ft
20 log ⎜ ---------------------------------------------------------⎟
⎜ ( Fs ) ⁄ 2
⎟
⎜
2⎟
( Magni tude Noise ) ⎟
⎜
⎝
⎠
∑
0
Signal-to-Distortion Ratio:
⎛
⎞
⎜
⎟
⎜
⎟
⎜
⎟
⎜
⎟
Magnitude Ft
20 log ⎜ ----------------------------------------------------------------------⎟
⎜ Fs
⎟
-----⎜ 2
⎟
⎜
2⎟
(
Magnitude
)
Harmonics ⎟
⎜
⎝
⎠
∑
0
Signal-to-Noise-and-Distortion Ratio:
⎛
⎞
⎜
⎟
⎜
⎟
⎜
⎟
⎜
⎟
Magnitude Ft
20 log ⎜ ------------------------------------------------------------------------------------⎟
F
⎜ -----s
⎟
⎜ 2
⎟
⎜
2⎟
( Magnitude Noise + Distortion ) ⎟
⎜
⎝
⎠
∑
0
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
207
12 – ADC Tests Using MultiWave AWG
AWG Example Code Implementation
The following code example shows several of the AWG APIs in use.
Load the awav file:
DspWaveform *awgDspWave = new DspWaveform();
awgDspWave->readAwavFile("./waves/diffGainAWG.awav");
CSCMultiWaveArbitraryWave
awgWave("awg_diffGain");
Setup of the AWG waveform:
awgWave.setDspWaveform(awgDspWave);
awgWave.setPath(HIGH_FREQUENCY);
awgWave.setIncrement(1);
awgWave.setLoop(LOOP_FOREVER);
awgWave.setAmplitude( 1.0 V);
Load AWG memory:
cscTester->MultiWave()->Signal("Gen_1")->Memory()
->loadWaveform(&awgWave);
Sample clock setup
double fsample = (4.43e6/46.0)* 1024.0;
long divider = (long)(3.85e9/fsample);
fsample *= divider;
DDS selection and divider per channel
cscTester->MultiWave()->Signal(signal)->Clock()
->setClock(CLOCK_1,fsample, divider, true);
cscTester->MultiWave()->Signal(signal)->OutputCtrl()
->setHfClock(true);
AWG setup
cscTester->MultiWave()->Signal(signal)->ConnectionCtrl()
->connect(SIGNAL_PATH_HF,MUX_DIFFERENTIAL);
cscTester->MultiWave()->Signal(signal)->OutputCtrl()
->setHfFilter(F_12_MHZ); // BYPASS F_1P2_MHZ
cscTester->MultiWave()->Signal(signal)->OutputCtrl()
->setHfRange(1.0 V);
Turn On AWG
cscTester->MultiWave()->Signal(signal)->ArmCtrl()
->armAWG(&awgWave);
cscTester->MultiWave()->Signal(signal)->OutputCtrl()->start();
208
PN: 071-0961-00, January 2008
AWG Example Code Implementation
Waveform Generation Using Internal Sinewave
The MultiWave has an internal sinewave with 1024 points defined. By setting the clock
and the increment properly virtually any frequency can be created without a awav file.
Example:
CSCMultiWaveSineWave sinWave("sin_wave");
sinWave.setPath(LOW_FREQUENCY);
sinWave.setIncrement(bin);
sinWave.setLoop(LOOP_FOREVER);
sinWave.setAmplitude( 1.0 V);
//you can change the frequency Ft by changing the bin (M/N=Ft/Fs)and
keeping others unchanged
//sinWave.setIncrement(bin+3);
//sinWave.setIncrement(bin+6);
//sinWave.setIncrement(bin+9);
Waveform Generation Using the rampWave
MultiWave has a ramp generator that can be used to generate ramp signals on-the-fly.
Example:
CSCMultiWaveRampWave rampWave("lf_ramp");
rampWave.setPath(HIGH_FREQUENCY);
rampWave.setMax(5.0);
rampWave.setMin(0.0);
rampWave.setLoop(LOOP_FOREVER);
rampWave.setSlewRatePositive(10.0);
rampWave.setSlewRateNegative(5);
rampWave.setStartDirection(CSCMultiWaveRampWave::DIRECTION_POSITIVE);
rampWave.setStartOffset(0);
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
209
12 – ADC Tests Using MultiWave AWG
Trigger Implementation to Start AWG
The trigger implementation on Diamond Series allows the user to decide when to start
and stop the AWG and/or when to step AWG.
This flexibility is given by defining up to 8 routes made of source and destinations.
These routes include:
•
A route from digital world to address a typical AWG triggered start—Most of the mixed
signal devices need a digital sequence to setup the mode and access to the analog
cells so some samples will be taken without a need for them
•
A route from digital world to analog—To sample by step (case of ramp on a serial
DAC for example).
Trigger from DPIN triggers AWG start as shown in Figure 85.
Figure 85. Start AWG in Continuous Mode on Rising Edge
Trigger
Effective sampling
Converter clock
//Event routing to the backplane
//create new trigger
cscTester->EventRouting()->
createRoute("my_route1",REGISTERED,DISALLOW_LOCAL);
//add source
cscTester->EventRouting()->Route("my_route1")->
setSource("trigger",EVTTYPE_DPIN96_COMP_HI);
//add destination-start awg
cscTester->EventRouting()->Route("my_route1")->
addDestination(awgCh,EVTTYPE_MW_AWG_START);
//apply route
cscTester->EventRouting()->apply();
210
PN: 071-0961-00, January 2008
Trigger Implementation to Start AWG
//mode start awg per trigger-1 trigger only needed cpp must control arm
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStartInput(TQ_RISING_EDGE_BP);
Every trigger pulse from DPIN generates a single sample as shown in Figure 86.
Figure 86. Start AWG in Step Mode on Rising Edge
Trigger
Effective sampling
Converter clock
//Event routing to the backplane
//create new trigger
cscTester->EventRouting()->
createRoute("my_route2",REGISTERED,DISALLOW_LOCAL);
//add source
cscTester->EventRouting()->Route("my_route2")->
setSource("trigger",EVTTYPE_DPIN96_COMP_HI);
//add destination-start awg
cscTester->EventRouting()->Route("my_route2")->
addDestination(awgCh,EVTTYPE_MW_AWG_TRIG);
//appply route
cscTester->EventRouting()->apply();
//mode single sample per trigger-1trigger needed per sample cpp must arm
and start
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStartInput(TQ_SOFTWARE);
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStepTrigger(TQ_RISING_EDGE_BP);
Note — When done using the triggers deselect them using the following commands:
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
211
12 – ADC Tests Using MultiWave AWG
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStartInput(TQ_SOFTWARE);
cscTester->MultiWave()->Signal(awgCh)->OutputCtrl()->
selectStepTrigger(TQ_DISABLE);
212
PN: 071-0961-00, January 2008
Trigger Implementation to Start AWG
Knowledge Check
1. What is the filter placed at the end of the conversion chain of an AWG called?
2. What type of ADC allows the fastest sampling among SAR, Flash, and sigma-delta?
3. Which API statement is used to start the AWG from a trigger backplane rising edge?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
213
12 – ADC Tests Using MultiWave AWG
Lab Exercise
Dynamic ADC Test Lab
In this lab, students will sample a sinewave with a ADC.
Note — Pattern is running at 900 ns period, 24 periods to acquire a sample so Fs = 1 /
(900e-9 * 24) = 49.296 kHz; Ft = Fsdig * M/1024 around 1 kHz so Mdig = 23 and effective
Ft = 1.0398582 kHz.
On the analog side the user will need to generate a 1.0398582 kHz wave with 1024
samples. They have to solve the equation Ft = Mana/1024*Fsana = Mdig/1024*Fsdig
So Mana * Fsana = Mdig * Fsdig -> Mdig = 23 and Fsdig is fixed.
For ease, choose the Fsana equal to Fsdig so Mana = Mdig = 23.
1. Add the DynamicADCTest function doing a 1 kHz signal on AWG LF and digitizing the
waveform at 900 ns period on the digital side.
a. Setup levels on Vref, Vss, and Vdd for MAX195 using:
setup_levels_ADCsetup_levels_ADC("MAX195_VDD",5.0,"MAX195_VSS",5.0,"MAX195_VREF_alt",cscExec->Spec("ADC_spec")>Category("ADC_cat_1k")->getExprValue("range_src",SPEC_TYP))
b. Set up the AWG to source 1 kHz with a Fs of 49.296 kHz on Low Frequency mode
(use the internal sinewave for it) by referring to period_spec equation:
•
CSCMultiWaveSineWave awgWave("lf_src");
•
AwgSineWaveSetup(awgCh,awgWave,LOW_FREQUENCY,23,LOOP_FOREV
ER,range_src/2*0.98,0.0); //98% fullscale
c. Set up AWG with lowpass F_1P4_KHz as filter, the source range can be as large
as Vref of the ADC:
AwgSetup(awgCh,SIGNAL_PATH_LF,F_1P4_KHZ,range_src/2,range_src/2)
d. Connect AWG using:
AwgDigConnect(awgCh,SIGNAL_PATH_LF,MUX_SINGLE_P)
Note — Refer to Appendix A, "Devices Data Sheets," on page 231 for the MAX195
datasheet. The setup is unipolar so range_src and offset_src have to be the same so
waveform is positive only
e. Route the trigger pin as source and the AWG as destination in start mode:
EventRouting_digital2awg("trigger",awgCh,"CONT")
f.
startAwg(awgCh,awgWave)
g. Enable DCM on pin MAX195_DOUT from ADCPat.label1 to ADCPat.label2.
214
PN: 071-0961-00, January 2008
Trigger Implementation to Start AWG
h. Execute ADCdynLevelsExec patternExec and the pattern with statements:
cscTester->seq()->setStartAddress and cscTester->Seq()->start()
2. Count the number of captured data.
3. Retrieve the data and save as awav.
4. Reorder data knowing that 24 bits are retrieved and only bits 8 to 24 are in use and
LSB is coming out first.
5. Process amplitude, SNR, and THD with ratioMeas DSP function.
6. Test results.
Sample code below for Steps 2. through 6.
CSC_SERIAL_BLOCK_BEGIN
int sitenum = *cscIter, i, j
unsigned long int myData[numcapt];
cscTester->DCM()
->getCapturedDataBySite(sitenum,"MAX195_DOUT",0,numcapt,myData,DCM_HW);
double data[numcapt];
vector<double> my_data_double;
for(i=0;i<numcapt/24;i++)
data[i]=0.0;
for (i=0;i<numcapt;i+=24) {
for (j=8;j<24;j++) {
data[i/24] += myData[i+j] * pow(2.0,double(23-j));
}
}
for (i=0;i<numcapt/24;i++) {
my_data_double.push_back((double)data[i]);
}
for (i=0;i<numcapt/24;i++) {
my_data_double.push_back((double)data[i]);
}
DspWaveform *dspData
=
new DspWaveform(DspWaveform::wftRRect,"myWave",my_data_double,NULL);
char my_char[256];
sprintf(my_char,"./waves/ADC_capture_static_site%d.awav",sitenum);
dspData->writeAwavFile(my_char,true);
//DSP processing
double snr,thd,sinad,magn,fund,spur,maxSpur;
dspData->ratiosMeas( 5,NULL,&snr,&thd,&sinad,&magn,NULL);
//use test_var function to evaluate the results
test_var("Ampl ADC", 30000, 33000 ,magn, "", 200);
test_var("SNR", 60.00, 110.00 ,snr, "dB", 201);
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
215
12 – ADC Tests Using MultiWave AWG
test_var("THD", 80.00, 110.00 ,thd, "dB", 202);
CSC_SERIAL_BLOCK_END
7. Stop AWG, disconnect, disable DCM memory, and clean trigger routes.
8. Power down device.
9. Compile, run, and debug test.
Hint — For debug different tools can be used such as STIL Tool (or Visualize) to change
the timing/levels and Pattern Tool to re-execute the sequence.
Static ADC Test
This lab creates typical ADC test using MultiWave as AWG, the DCM hardware and the
DSP library available in static (linearity tests)
1. Add a function called StaticADCTest doing a ramp 0 to Vref on AWG LF and digitizing
the waveform at 900 ns period on the digital side.
a. Setup levels on Vref, Vss, and Vdd for MAX195 using setup_levels_ADC
function.
b. Set up the AWG clock to a given frequency (choose the STIL equation
ADC_spec->ADC_cat_1k->Fs).
c. Set up AWG with BYPASS as filter, the source range can be as large as Vref of
the ADC (use STIL equation ADC_spec->ADC_cat_1k->range_src).
d. Connect AWG using AwgDigConnect function.
e. Route the trigger pin as source and the AWG as destination in step mode
EventRouting_digital2awg function.
f.
Start AWG.
g. Enable DCM on pin MAX195_DOUT from ADCStatPat.label1 to
ADCStatPat.label2.
h. Execute ADCStatLevelsExec patternExec and the pattern with statements
cscTester->seq()->setStartAddress and cscTester->Seq()->start().
2. Count the numbers of captured data.
3. Retrieve the data and save as awav.
4. Reorder data knowing that 24 bits are retrieved and only bits 8 to 24 are in use and
LSB is coming out first.
5. Save data as awav for further DSP processing.
6. Stop AWG, disable AWG step mode, disconnect, disable DCM memory, and clean
trigger routes.
7. Power down device.
8. Compile, run, and debug test.
216
PN: 071-0961-00, January 2008
Trigger Implementation to Start AWG
Hint — For debug different tools can be used such as STIL tool (or visualize) to change
the timing/levels and Pattern Tool to re-execute the sequence.
Check Your Work
Review your answers and have the instructor sign off this module.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
217
12 – ADC Tests Using MultiWave AWG
Notes
218
PN: 071-0961-00, January 2008
13
Advanced Sampling
Goal
Understand advanced waveform capture techniques such as oversampling,
equivalent time sampling, and notch filtering.
Objectives
After completing this unit, students should be able to:
•
Learn about the oversampling on digitizer
•
Review the notch filter technique for testing audio devices
•
Understand the equivalent time sampling technique for high-speed applications
In This Module
______
______
______
Instructor Presentation
Lab
Knowledge Check
30
50
5
Minutes
Minutes
Minutes
Resources
Diamond Series Online Help
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
219
13 – Advanced Sampling
Advanced Waveform Capture Topics
Notch Filter for Audio Applications
To improve the fidelity of the SNR measurement, the signal can be measured through a
notch filter on the MultiWave digitizer.
The advantage of the notch filter is that it reduces the amplitude of a fixed frequency
(1 kHz on Multiwave) of a fixed aount (30 dB). This technique increases the effective
dynamic range of the instrument.
The magnitude of the signal’s fundamental needs to be measured with a normal filter first.
A second measurement is then made with the notch filter in the path to measure the noise
with an adapted range on the ADC.
The in-band noise spectrum is digitized by the MultiWave high-precision ADC, with the
signal fundamental notched out and the ADC’s voltage range zoomed-in to the amplitude
of the small-scale noise signal.
Figure 87. Spectrum With and Without Notch Filter
220
PN: 071-0961-00, January 2008
Advanced Waveform Capture Topics
Oversampling
Video and baseband measurements achieve optimal fidelity using a built-in oversampling
technique. An anti-aliasing filter removes noise above the desired Nyquist frequency. The
signal is oversampled to reduce quantization noise. A 1/n decimator filters and
downsamples the data. The power meter calculates the magnitude of the fundamental.
The data is optionally sent to the processor for additional DSP
Lower resolution measurements do not require the oversampling technique.
Figure 88. Built-in Oversampling System
DUT
Signal In
LPF
HF
ADC
Decimator
Power
Meter
Digitized
Data Out
11011001
The oversampling technique provides a way to lower the theoretical noise floor and
improve the fidelity of the SNR measurement.
The signal-to-quantization noise ratio is:
SNRQ = 6.02n +1.76 dB
Where n = bits of resolution.
Figure 89. Signal to Noise Ratio Due to Quantization Error
Sampling
Q
u
a
n
t Quantized
i
z
Ideal
a
t
i
o
n
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
221
13 – Advanced Sampling
Quantization noise has a uniform distribution. It is spread evenly throughout the Nyquist
region. SNRQ is a constant amount based only on the number of bits in the ADC
converter.
Figure 90. NQ Distribution Versus Sampling Frequency
NQ
The area under
these curves is
constant: AFs/2
A
A/K
FS/2
KFS/2
f
The signal-to-quantization noise ratio is constant for a given ADC. The value at any one
frequency is reduced when the sampling frequency is increased, because the noise
energy is spread across more bins.
Figure 91. Using Oversampling to Reduce NQ
Mag
A
Atten
0
Fs/2
f
Mag
A
Fs /2
Quantization Noise
f
Fs/2
Digital LP Filter
f
Result
No Oversampling
Mag
Atten
0
Mag
A/K
Reduced
Noise
Magnitude
A/K
KFs/2 f
Quantization Noise
Fs/2
Digital LP Filter
f
Fs /2
f
Result
With Oversampling
222
PN: 071-0961-00, January 2008
Advanced Waveform Capture Topics
Figure 92. Oversampling, Digital Filtering, and Decimation
DUT Signal In
LPF
HF
ADC
Analog
Anti-alias
Filter
Oversampling
ADC
Decimator
Power
Meter
Digital LP
Filter and
Down
Sampler
Magnitude
Measurement
of the
Fundamental
Digitized
Data Out
11011001
The signal of interest is in the baseband extending from 0 to FN/2 Hz. Oversampling is
normally done at integral multiples of the Nyquist rate, and usually a power of 2. Analog
anti-alias filtering prevents interference from noise above the baseband.
Figure 93. Oversampling Example
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
223
13 – Advanced Sampling
Decimation is done by low pass digital filtering the 4x oversampled signal and then
downsampling by 4. Downsampling by 4 means every 4th sample is retained. This
reduces the number of samples for later DSP calculations.
Figure 94. Decimation
Digital low pass filter
Atten
FN/2 FN
4
FOVS/2
f
FOVS
Downsampler
Baseband Signal
Mag
FN/2 FN
224
2FN
4FN
f
PN: 071-0961-00, January 2008
Equivalent Time Sampling or Undersampling
Equivalent Time Sampling or Undersampling
Equivalent time sampling (ETS) allows for capturing waveforms that have sampling
requirements above the maximum clock rate of the capture instrument, but still within the
bandwidth of the sampling circuit.
Consider a waveform with the following sampling parameters:
M = 71
N = 512
Ft = 14.992 MHz 1/Fs = 9.25 ns
Figure 95. A Waveform to Capture Using ETS
By concatenating several unit test periods (UTPs) together, it can be seen that each
desired sample point in the first UTP, has other equivalent, points in other UTPs.
Figure 96. Equivalent Points in Different UTPs
UTP #1
UTP #2
Equivalent Points
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
225
13 – Advanced Sampling
This is the key to undersampling, or equivalent time sampling. Sample once in each UTP
(or at any other cycle), and build a database of points that are the same as if captured in
real time (known as the reconstructed waveform).
Figure 97. One ETS Technique is to Skip an Entire UTP
UTP #n
Desired 1/Fs
UTP #n + 1
Actual Sample n + 1
Desired Sample n+1
Equivalent 1/Fs
Sample n
Figure 87 depicts equivalent time sampling by choosing various cycle-skipping
F ⋅F
Ft + k ⋅ Fs
t
s
algorithms. The general formula is: F sETS = -----------------------
Figure 98. Skip Only k Cycles
226
PN: 071-0961-00, January 2008
Equivalent Time Sampling or Undersampling
Lab Exercise
Sampling Theory Lab
Suppose a waveform with the following sampling parameters:
•
Ft = 500 kHz
•
M = 21
•
N = 1024
•
Fs = 24.380952 MHz
Capturing this waveform using the LF path on the digitizer is a problem. Due to the fact
that Digitizer highest sample rate is 2.5 Msps. Since the digitizer LF Path has a high input
bandwidth use equivalent time sampling to achieve this waveform capture.
Method 1—Whole UTP Method
In this method the adjusted Fs is the desired Fs plus 1 UTP:
Calculate the adjusted Fs:____________________
Calculate the approximate capture time: ____________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
227
13 – Advanced Sampling
Method 2—Skip Minimum Cycles Method
F ⋅F
Ft + k ⋅ Fs
t
s
- where k is the
In the skip minimum cycles method use the formula F sETS = -----------------------
number of cycles to skip.
How many cycles must be skipped? _______________
Calculate the adjusted Fs:____________________
Calculate the approximate capture time: ____________________
Method 3—Minimum Sample Time Method
In the minimum sample time method capture at the digitizer full speed and use the
reorder function to obtain the original desired waveform.
Calculate the adjusted Fs:____________________
Calculate the approximate capture time: ____________________
How much time can the reorder function use in order to keep this as the most efficient
method for capture? _______________________
What Digitizer Mode should be selected for this particular set of sampling
parameters? __________
228
PN: 071-0961-00, January 2008
Equivalent Time Sampling or Undersampling
Knowledge Check
1. Compare the SNR and SDR values using the Notch Filter to those without the filter.
Are they better or worse?
Why?
2. Why is the input bandwidth of the Digitizer so important when using equivalent time
sampling?
3. What happens if the Digitizer is triggered before the AWG output is stable?
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
229
13 – Advanced Sampling
Check Your Work
Review your answers and have the instructor sign off this module.
230
PN: 071-0961-00, January 2008
A
Devices Data Sheets
LT1121 Data Sheet
LT1121/LT1121-3.3/LT1121-5
Micropower Low Dropout
Regulators with Shutdown
U
FEATURES
DESCRIPTIO
■
The LT®1121/LT1121-3.3/LT1121-5 are micropower low
dropout regulators with shutdown. These devices are
capable of supplying 150mA of output current with a
dropout voltage of 0.4V. Designed for use in batterypowered systems, the low quiescent current, 30RA operating and 16RA in shutdown, makes them an ideal choice.
The quiescent current is well-controlled; it does not rise in
dropout as it does with many other low dropout PNP
regulators.
■
■
■
■
■
■
■
■
■
■
■
■
■
0.4V Dropout Voltage
150mA Output Current
30RA Quiescent Current
No Protection Diodes Needed
Adjustable Output from 3.75V to 30V
3.3V and 5V Fixed Output Voltages
Controlled Quiescent Current in Dropout
Shutdown
16RA Quiescent Current in Shutdown
Stable with 0.33RF Output Capacitor
Reverse Battery Protection
No Reverse Current with Input Low
Thermal Limiting
Available in the 8-Lead SO, 8-Lead PDIP, 3-Lead
SOT-23 and 3-Lead TO-92 Packages
U
APPLICATIO S
■
■
■
Low Current Regulator
Regulator for Battery-Powered Systems
Post Regulator for Switching Supplies
Other features of the LT1121/LT1121-3.3/LT1121-5 include the ability to operate with very small output capacitors. They are stable with only 0.33RF on the output while
most older devices require between 1RF and 100RF for
stability. Small ceramic capacitors can be used, enhancing
manufacturability. Also the input may be connected to
ground or a reverse voltage without reverse current flow
from output to input. This makes the LT1121 series ideal
for backup power situations where the output is held high
and the input is at ground or reversed. Under these
conditions only 16RA will flow from the output pin to
ground.
, LT, LTC and LTM are registered trademarks of Linear Technology Corporation.
All other trademarks are the property of their respective owners.
U
TYPICAL APPLICATIO
5V Battery-Powered Supply with Shutdown
Dropout Voltage
0.5
IN
OUT
1
LT1121-3.3
5V
5
3.3VOUT
150mA
+
SHDN
GND
3
VSHDN (PIN 5) OUTPUT
<0.25
OFF
>2.8
ON
NC
ON
0.4
1RF
SOLID TANTALUM
DROPOUT VOLTAGE (V)
8
0.3
0.2
0.1
LT1121 • TA01
0
0
20
40 60 80 100 120 140 160
OUTPUT CURRENT (mA)
LT1121 • TA02
1121fe
1
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
231
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
W W
W
AXI U
U
ABSOLUTE
RATI GS (Note 1)
Input Voltage
LT1121 ............................................................. ±30V
LT1121HV ............................................. +36V, – 30V
Output Pin Reverse Current ................................. 10mA
Adjust Pin Current ............................................... 10mA
Shutdown Pin Input Voltage (Note 2) ........ 6.5V, – 0.6V
Shutdown Pin Input Current (Note 2) .................. 20mA
Output Short-Circuit Duration ......................... Indefinite
Operating Junction Temperature Range (Note 3)
LT1121C-X ........................................... 0°C to 125°C
LT1121I-X ....................................... – 40°C to 125°C
Storage Temperature Range ................. – 65°C to 150°C
Lead Temperature (Soldering, 10 sec).................. 300°C
W
U
U
PACKAGE/ORDER I FOR ATIO
TOP VIEW
OUT 1
8 IN
NC/ADJ* 2
7 NC**
GND 3
6 NC**
NC 4
5 SHDN
N8 PACKAGE
8-LEAD PDIP
S8 PACKAGE
8-LEAD PLASTIC SO
TJMAX = 150°C, VJA ~ 120°C/ W (N8, S8)
TJMAX = 150°C, VJA ~ 70°C/ W (AS8)
* PIN 2 = NC FOR LT1121-3.3/LT1121-5
= ADJ FOR LT1121
** PINS 6 AND 7 ARE FLOATING (NO
INTERNAL CONNECTION) ON THE
STANDARD S8 PACKAGE.
PINS 6 AND 7 CONNECTED TO GROUND
ON THE A VERSION OF THE LT1121 (S8 ONLY).
CONNECTING PINS 6 AND 7 TO THE
GROUND PLANE WILL REDUCE THERMAL
RESISTANCE. SEE THERMAL RESISTANCE
TABLES IN THE APPLICATIONS INFORMATION
SECTION.
ORDER PART NUMBER
LT1121CN8
LT1121CN8-3.3
LT1121CN8-5
LT1121IN8
LT1121IN8-3.3
LT1121IN8-5
LT1121CS8
LT1121CS8-3.3
LT1121CS8-5
LT1121HVCS8
LT1121IS8
LT1121IS8-3.3
LT1121IS8-5
LT1121HVIS8
LT1121ACS8
LT1121ACS8-3.3
LT1121ACS8-5
LT1121AHVCS8
LT1121AIS8
LT1121AIS8-3.3
LT1121AIS8-5
LT1121AHVIS8
BOTTOM VIEW
FRONT VIEW
TAB IS
GND
3
OUTPUT
2
GND
1
VIN
IN
GND
OUT
ST PACKAGE
3-LEAD PLASTIC SOT-223
Z PACKAGE
3-LEAD PLASTIC TO-92
TJMAX = 150°C, VJA ~ 50°C/ W
TJMAX = 150°C, VJA ~ 150°C/ W
S8 PART
MARKING
ORDER PART
NUMBER
ST PART
MARKING
ORDER PART
NUMBER
121I3
121I5
121HVI
1121A
121A3
121A5
1121
121AHV
11213 121AI
11215 121AI3
1121HV 121AI5
1121I
21AHVI
LT1121CST-3.3
LT1121IST-3.3
LT1121CST-5
LT1121IST-5
11213
121IS3
11215
1121I5
LT1121CZ-3.3
LT121IZ-3.3
LT1121CZ-5
LT1121IZ-5
Order Options Tape and Reel: Add #TR
Lead Free: Add #PBF Lead Free Tape and Reel: Add #TRPBF
Lead Free Part Marking: http://www.linear.com/leadfree/
Consult LTC Marketing for parts specified with wider operating temperature ranges.
1121fe
2
232
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
ELECTRICAL CHARACTERISTICS
The ● denotes specifications which apply over the operating temperature
range, otherwise specifications are at TA = 25°C.
PARAMETER
CONDITIONS
Regulated Output Voltage
(Note 4)
LT1121-3.3
LT1121-5
LT1121 (Note 5)
Line Regulation
Load Regulation
TYP
MAX
UNITS
●
3.300
3.300
3.350
3.400
V
V
VIN = 5.5V, IOUT = 1mA, TJ = 25°C
6V < VIN < 20V, 1mA < IOUT < 150mA
●
4.925
4.850
5.000
5.000
5.075
5.150
V
V
VIN = 4.3V, IOUT = 1mA, TJ = 25°C
4.8V < VIN < 20V, 1mA < IOUT < 150mA
●
3.695
3.640
3.750
3.750
3.805
3.860
V
V
LT1121-3.3
)VIN = 4.8V to 20V, IOUT = 1mA
●
1.5
10
mV
LT1121-5
)VIN = 5.5V to 20V, IOUT = 1mA
●
1.5
10
mV
LT1121 (Note 5)
)VIN = 4.3V to 20V, IOUT = 1mA
●
1.5
10
mV
LT1121-3.3
)ILOAD = 1mA to 150mA, TJ = 25°C
)ILOAD = 1mA to 150mA
●
– 12
– 20
– 25
– 40
mV
mV
)ILOAD = 1mA to 150mA, TJ = 25°C
)ILOAD = 1mA to 150mA
●
– 17
– 28
– 35
– 50
mV
mV
)ILOAD = 1mA to 150mA, TJ = 25°C
)ILOAD = 1mA to 150mA
●
– 12
– 18
– 25
– 40
mV
mV
0.13
0.16
0.25
V
V
0.30
0.35
0.50
V
V
0.37
0.45
0.60
V
V
0.42
0.55
0.70
V
V
RA
LT1121-5
LT1121 (Note 5)
Dropout Voltage
(Note 6)
MIN
3.250
3.200
VIN = 3.8V, IOUT = 1mA, TJ = 25°C
4.3V < VIN < 20V, 1mA < IOUT < 150mA
ILOAD = 1mA, TJ = 25°C
ILOAD = 1mA
●
ILOAD = 50mA, TJ = 25°C
ILOAD = 50mA
●
ILOAD = 100mA, TJ = 25°C
ILOAD = 100mA
●
ILOAD = 150mA, TJ = 25°C
ILOAD = 150mA
●
Ground Pin Current
ILOAD = 0mA
●
30
50
(Note 7)
ILOAD = 1mA
●
90
120
RA
ILOAD = 10mA
●
350
500
RA
ILOAD = 50mA
●
1.5
2.5
mA
ILOAD = 100mA
●
4.0
7.0
mA
ILOAD = 150mA
●
7.0
14.0
mA
150
300
nA
1.2
0.75
2.8
V
V
Adjust Pin Bias Current (Notes 5, 8)
TJ = 25°C
Shutdown Threshold
VOUT = Off to On
VOUT = On to Off
●
●
Shutdown Pin Current (Note 9)
VSHDN = 0V
●
6
10
RA
Quiescent Current in Shutdown (Note 10)
VIN = 6V, VSHDN = 0V
●
16
22
RA
Ripple Rejection
VIN – VOUT = 1V (Avg), VRIPPLE = 0.5VP-P,
fRIPPLE = 120Hz, ILOAD = 0.1A
Current Limit
VIN – VOUT = 7V, TJ = 25°C
Input Reverse Leakage Current
VIN = –20V, VOUT = 0V
Reverse Output Current (Note 11)
LT1121-3.3
LT1121-5
LT1121 (Note 5)
50
58
200
●
VOUT = 3.3V, VIN = 0V
VOUT = 5V, VIN = 0V
VOUT = 3.8V, VIN = 0V
Note 1: Stresses beyond those listed under Absolute Maximum Ratings
may cause permanent damage to the device. Exposure to any Absolute
Maximum Rating condition for extended periods may affect device
reliability and lifetime.
0.25
16
16
16
dB
500
mA
1.0
mA
25
25
25
RA
RA
RA
Note 2: The shutdown pin input voltage rating is required for a low
impedance source. Internal protection devices connected to the shutdown
pin will turn on and clamp the pin to approximately 7V or – 0.6V. This
range allows the use of 5V logic devices to drive the pin directly. For high
1121fe
3
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
233
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
ELECTRICAL CHARACTERISTICS
impedance sources or logic running on supply voltages greater than 5.5V,
the maximum current driven into the shutdown pin must be limited to less
than 20mA.
Note 3: For junction temperatures greater than 110°C, a minimum load of
1mA is recommended. For TJ > 110°C and IOUT < 1mA, output voltage
may increase by 1%.
Note 4: Operating conditions are limited by maximum junction
temperature. The regulated output voltage specification will not apply for
all possible combinations of input voltage and output current. When
operating at maximum input voltage, the output current range must be
limited. When operating at maximum output current the input voltage
range must be limited.
Note 5: The LT1121 (adjustable version) is tested and specified with the
adjust pin connected to the output pin.
Note 6: Dropout voltage is the minimum input/output voltage required to
maintain regulation at the specified output current. In dropout the output
voltage will be equal to: (VIN – VDROPOUT).
Note 7: Ground pin current is tested with VIN = VOUT (nominal) and a
current source load. This means that the device is tested while operating in
its dropout region. This is the worst case ground pin current. The ground
pin current will decrease slightly at higher input voltages.
Note 8: Adjust pin bias current flows into the adjust pin.
Note 9: Shutdown pin current at VSHDN = 0V flows out of the shutdown pin.
Note 10: Quiescent current in shutdown is equal to the sum total of the
shutdown pin current (6RA) and the ground pin current (9RA).
Note 11: Reverse output current is tested with the input pin grounded and
the output pin forced to the rated output voltage. This current flows into
the output pin and out of the ground pin.
U W
TYPICAL PERFOR A CE CHARACTERISTICS
Guaranteed Dropout Voltage
0.6
0.6
50
ILOAD = 150mA
DROPOUT VOLTAGE (V)
0.5
0.4
TJ f 25°C
0.3
0.2
0.1
QUIESCENT CURRENT (RA)
0.7
TJ f 125°C
DROPOUT VOLTAGE (V)
Quiescent Current
Dropout Voltage
0.7
ILLOAD = 100mA
0.5
0.4
0.3
ILOAD = 50mA
0.2
ILOAD = 1mA
VIN = 6V
RLOAD = h
40
VSHDN = OPEN
30
20
VSHDN = 0V
10
0.1
= TEST POINTS
0
0
0
–50
40 60 80 100 120 140 160
OUTPUT CURRENT (mA)
20
50
25
0
75
TEMPERATURE (°C)
–25
100
1121 G27
120
TJ = 25°C
RLOAD = h
VSHDN = OPEN
60
40
20
80
VSHDN = OPEN
60
40
20
VSHDN = 0V
0
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
9
10
1121 G04
80
VSHDN = OPEN
60
40
20
VSHDN = 0V
0
0
TJ = 25°C
RLOAD = h
VOUT = VADJ
100
QUIESCENT CURRENT (RA)
100
QUIESCENT CURRENT (RA)
100
125
LT1121
Quiescent Current
120
TJ = 25°C
RLOAD = h
80
100
1121 G11
LT1121-5
Quiescent Current
120
50
0
75
25
TEMPERATURE (°C)
1121 G14
LT1121-3.3
Quiescent Current
QUIESCENT CURRENT (RA)
0
–50 –25
125
VSHDN = 0V
0
0
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
9
10
1121 G02
0
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
9
10
1121 G03
1121fe
4
234
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
U W
TYPICAL PERFOR A CE CHARACTERISTICS
LT1121-3.3
Output Voltage
LT1121-5
Output Voltage
3.83
5.08
3.38
IOUT = 1mA
IOUT = 1mA
5.06
3.81
3.34
5.04
3.79
3.32
3.30
3.28
3.26
3.24
50
25
0
75
TEMPERATURE (°C)
–25
100
5.02
5.00
4.98
3.69
50
0
75
25
TEMPERATURE (°C)
–25
100
800
TJ = 25°C
GROUND PIN CURRENT (RA)
800
RLOAD = 330<
ILOAD = 10mA*
300
*FOR VOUT = 3.3V
200
RLOAD = 3.3k
ILOAD = 1mA*
100
600
500
RLOAD = 500<
ILOAD = 10mA*
400
300
*FOR VOUT = 5V
200
RLOAD = 5k
ILOAD = 1mA*
100
0
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
9
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
1121 G10
10
TJ = 25°C
RLOAD = 33<
ILOAD = 100mA*
4
3
RLOAD = 66<
ILOAD = 50mA*
2
1
1
2
300
*FOR VOUT = 3.75V
200
3 4 5 6 7
INPUT VOLTAGE (V)
9
10
1121 G09
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
1121 G08
TJ = 25°C
9 VOUT = VADJ
6
RLOAD = 50<
ILOAD = 100mA*
5
4
3
RLOAD = 100<
ILOAD = 50mA*
2
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
RLOAD = 25<
ILOAD = 150mA*
7
6
5
RLOAD = 38<
ILOAD = 100mA*
4
3
RLOAD = 75<
ILOAD = 50mA*
2
1
*FOR VOUT = 5V
0
10
10
RLOAD = 33<
ILOAD = 150mA*
7
9
LT1121
Ground Pin Current
8
0
8
RLOAD = 3.8k
ILOAD = 1mA*
0
10
TJ = 25°C
1
*FOR VOUT = 3.3V
0
GROUND PIN CURRENT (mA)
GROUND PIN CURRENT (mA)
6
5
9
9
RLOAD = 22<
ILOAD = 150mA*
7
RLOAD = 380<
ILOAD = 10mA*
400
LT1121-5
Ground Pin Current
9
8
500
1121 G06
LT1121-3.3
Ground Pin Current
10
600
0
0
10
RLOAD = 150<
ILOAD = 25mA*
100
0
0
0
TJ = 25°C
700 VOUT = VADJ
RLOAD = 200<
ILOAD = 25mA*
GROUND PIN CURRENT (mA)
GROUND PIN CURRENT (RA)
500
125
100
LT1121
Ground Pin Current
TJ = 25°C
700
RLOAD = 130<
ILOAD = 25mA*
50
25
0
75
TEMPERATURE (°C)
–25
1121 G24
LT1121-5
Ground Pin Current
700
400
3.67
–50
125
1121 G23
LT1121-3.3
Ground Pin Current
600
3.73
4.94
1121 G22
800
3.75
3.71
4.92
–50
125
IOUT = 1mA
3.77
4.96
GROUND PIN CURRENT (RA)
3.22
–50
ADJ PIN VOLTAGE (V)
3.36
OUTPUT VOLTAGE (V)
OUTPUT VOLTAGE (V)
LT1121
Adjust Pin Voltage
8
9
10
1121 G05
0
*FOR VOUT = 3.75V
0
1
2
3 4 5 6 7
INPUT VOLTAGE (V)
8
9
10
1121 G07
1121fe
5
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
235
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
U W
TYPICAL PERFOR A CE CHARACTERISTICS
Shutdown Pin Threshold
(On-to-Off)
Ground Pin Current
2.0
VIN = 3.3V (LT1121-3.3)
VIN = 5V (LT1121-5)
12 V = 3.75V (LT1121)
IN
DEVICE IS OPERATING
10 IN DROPOUT
TJ = 25°C
6
TJ = –55°C
4
2
1.8
1.6
SHUTDOWN THRESHOLD (V)
TJ = 125°C
8
2.0
ILOAD = 1mA
1.8
SHUTDOWN THRESHOLD (V)
GROUND PIN CURRENT (mA)
14
Shutdown Pin Threshold
(Off-to-On)
1.4
1.2
1.0
0.8
0.6
0.4
0
20
0
–50
40 60 80 100 120 140 160
OUTPUT CURRENT (mA)
50
0
75
25
TEMPERATURE (°C)
–25
100
1121 G29
6
5
4
3
2
1
–25
50
25
0
75
TEMPERATURE (°C)
100
15
10
5
0
1
7
3
8
2
5
6
4
SHUTDOWN PIN VOLTAGE (V)
9
10
5
150
100
50
125
1121 G13
50
25
0
75
TEMPERATURE (°C)
100
125
400
350
VIN = 7V
350 VOUT = 0V
300
300
250
200
150
100
250
200
150
100
50
0
100
–25
1121 G25
VOUT = 0V
50
50
25
0
75
TEMPERATURE (°C)
200
Current Limit
CURRENT LIMIT (mA)
SHORT-CIRCUIT CURRENT (mA)
OUTPUT PIN CURRENT (RA)
400
15
125
250
1121 G28
30
100
300
Current Limit
20
50
0
75
25
TEMPERATURE (°C)
350
0
–50
0
125
VIN = 0V
VOUT = 5V (LT1121-5)
V
25 OUT = 3.3V (LT1121-3.3)
VOUT = 3.8V (LT1121)
–25
400
1121 G15
–25
0.4
LT1121
Adjust Pin Bias Current
20
Reverse Output Current
0
–50
0.6
1121 G17
ADJUST PIN BIAS CURRENT (nA)
7
0
–50
0.8
0
–50
125
25
VSHDN = 0V
8
ILOAD = 1mA
1.0
Shutdown Pin Input Current
SHUTDOWN PIN INPUT CURRENT (mA)
SHUTDOWN PIN CURRENT (RA)
9
1.2
1121 G16
Shutdown Pin Current
10
ILOAD = 150mA
1.4
0.2
0.2
0
1.6
0
1
4
2
5
3
INPUT VOLTAGE (V)
6
7
1121 G20
0
–50
–25
50
25
0
75
TEMPERATURE (°C)
100
125
1121 G19
1121fe
6
236
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
U W
TYPICAL PERFOR A CE CHARACTERISTICS
Reverse Output Current
Ripple Rejection
40
LT1121-3.3
30
60
58
56
54
52
LT1121-5
0
1
2
3 4 5 6 7 8
OUTPUT VOLTAGE (V)
9
50
40
30
0
–25
50
25
0
75
TEMPERATURE (°C)
COUT = 1RF
SOLID TANTALUM
)ILOAD = 1mA TO 150mA
OUTPUT VOLTAGE
DEVIATION (V)
–5
LT1121*
125
10
LT1121-3.3
–15
–20
100
1k
10k
FREQUENCY (Hz)
100k
1M
1121 G26
LT1121-5
Load Transient Response
Load Regulation
–10
100
1121 G18
1121 G01
0
60
10
50
–50
10
LT1121-5
Load Transient Response
VIN = 6V
0.2 CIN = 0.1RF
C
= 1RF
0.1 OUT
OUTPUT VOLTAGE
DEVIATION (V)
0
COUT = 47RF
SOLID TANTALUM
70
20
20
10
0
–0.1
–0.2
VIN = 6V
0.2 CIN = 0.1RF
COUT = 3.3RF
0.1
0
–0.1
–0.2
LT1121-5
–30
–35
* ADJ PIN TIED TO
OUTPUT PIN
–40
–50
–25
50
0
75
25
TEMPERATURE (°C)
100
125
1121 G21
LOAD CURRENT
(mA)
–25
LOAD CURRENT
(mA)
LOAD REGULATION (mV)
80
RIPPLE REJECTION (dB)
LT1121
(VOUT = VADJ)
50
IOUT = 100mA
90 VIN = 6V + 50mVRMS RIPPLE
VIN = VOUT (NOMINAL) + 1V
+ 0.5VP-P RIPPLE AT f = 120Hz
62
IOUT = 100mA
RIPPLE REJECTION (dB)
OUTPUT PIN CURRENT (RA)
TJ = 25°C
90 VIN = 0V
CURRENT FLOWS
80 INTO OUTPUT PIN
70
60
Ripple Rejection
100
64
100
150
100
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
TIME (ms)
1121 G30
150
100
50
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
TIME (ms)
1121 G31
1121fe
7
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
237
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
U
U
U
PI FU CTIO S
Input Pin: Power is supplied to the device through the
input pin. The input pin should be bypassed to ground if
the device is more than six inches away from the main
input filter capacitor. In general the output impedance of a
battery rises with frequency so it is usually adviseable to
include a bypass capacitor in battery-powered circuits. A
bypass capacitor in the range of 0.1RF to 1RF is sufficient.
The LT1121 is designed to withstand reverse voltages on
the input pin with respect to both ground and the output
pin. In the case of a reversed input, which can happen if a
battery is plugged in backwards, the LT1121 will act as if
there is a diode in series with its input. There will be no
reverse current flow into the LT1121 and no reverse
voltage will appear at the load. The device will protect both
itself and the load.
Output Pin: The output pin supplies power to the load. An
output capacitor is required to prevent oscillations. See
the Applications Information section for recommended
value of output capacitance and information on reverse
output characteristics.
Shutdown Pin: This pin is used to put the device into
shutdown. In shutdown the output of the device is turned
off. This pin is active low. The device will be shut down if
the shutdown pin is pulled low. The shutdown pin current
with the pin pulled to ground will be 6RA. The shutdown
pin is internally clamped to 7V and – 0.6V (one VBE). This
allows the shutdown pin to be driven directly by 5V logic
or by open collector logic with a pull-up resistor. The pullup resistor is only required to supply the leakage current
of the open collector gate, normally several microamperes. Pull-up current must be limited to a maximum of
20mA. A curve of shutdown pin input current as a function
of voltage appears in the Typical Performance Characteristics. If the shutdown pin is not used it can be left open
circuit. The device will be active, output on, if the shutdown
pin is not connected.
Adjust Pin: For the adjustable LT1121, the adjust pin is the
input to the error amplifier. This pin is internally clamped
to 6V and – 0.6V (one VBE). It has a bias current of 150nA
which flows into the pin. See Bias Current curve in the
Typical Performance Characteristics. The adjust pin reference voltage is 3.75V referenced to ground. The output
voltage range that can be produced by this device is 3.75V
to 30V.
1121fe
8
238
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
U
W
U U
APPLICATIO S I FOR ATIO
The LT1121 is a micropower low dropout regulator with
shutdown, capable of supplying up to 150mA of output
current at a dropout voltage of 0.4V. The device operates
with very low quiescent current (30RA). In shutdown the
quiescent current drops to only 16RA. In addition to the
low quiescent current the LT1121 incorporates several
protection features which make it ideal for use in batterypowered systems. The device is protected against both
reverse input voltages and reverse output voltages. In
battery backup applications where the output can be held
up by a backup battery when the input is pulled to ground,
the LT1121 acts like it has a diode in series with its output
and prevents reverse current flow.
Adjustable Operation
The adjustable device is specified with the adjust pin tied
to the output pin. This sets the output voltage to 3.75V.
Specifications for output voltage greater than 3.75V will be
proportional to the ratio of the desired output voltage to
3.75V (VOUT/3.75V). For example: load regulation for an
output current change of 1mA to 150mA is –12mV typical
at VOUT = 3.75V. At VOUT = 12V, load regulation would be:
(
) (
© 12V ¹
º • –12mV = –38mV
ª
« 3.75V »
)
Thermal Considerations
The adjustable version of the LT1121 has an output
voltage range of 3.75V to 30V. The output voltage is set by
the ratio of two external resistors as shown in Figure 1. The
device servos the output voltage to maintain the voltage at
the adjust pin at 3.75V. The current in R1 is then equal to
3.75V/R1. The current in R2 is equal to the sum of the
current in R1 and the adjust pin bias current. The adjust pin
bias current, 150nA at 25°C, flows through R2 into the
adjust pin. The output voltage can be calculated according
to the formula in Figure 1. The value of R1 should be less
than 400k to minimize errors in the output voltage caused
by the adjust pin bias current. Note that in shutdown the
output is turned off and the divider current will be zero.
Curves of Adjust Pin Voltage vs Temperature and Adjust
Pin Bias Current vs Temperature appear in the Typical
Performance Characteristics. The reference voltage at the
adjust pin has a slight positive temperature coefficient of
IN
VOUT
OUT
LT1121
R2
SHDN
ADJ
+
R1
GND
1121 • F01
(
approximately 15ppm/°C. The adjust pin bias current has
a negative temperature coefficient. These effects are small
and will tend to cancel each other.
)
(
)
VOUT = 3.75V 1 + R2 + IADJ • R2
R1
VADJ = 3.75V
IADJ = 150nA AT 25°C
OUTPUT RANGE = 3.75V TO 30V
Figure 1. Adjustable Operation
Power handling capability will be limited by maximum
rated junction temperature (125°C). Power dissipated by
the device will be made up of two components:
1. Output current multiplied by the input/output voltage
differential: IOUT • (VIN – VOUT), and
2. Ground pin current multiplied by the input voltage:
IGND • VIN.
The ground pin current can be found by examining the
Ground Pin Current curves in the Typical Performance
Characteristics. Power dissipation will be equal to the sum
of the two components listed above.
The LT1121 series regulators have internal thermal limiting designed to protect the device during overload conditions. For continuous normal load conditions the maximum junction temperature rating of 125°C must not be
exceeded. It is important to give careful consideration to
all sources of thermal resistance from junction to ambient.
Additional heat sources mounted nearby must also be
considered.
Heat sinking, for surface mount devices, is accomplished
by using the heat spreading capabilities of the PC board
and its copper traces. Copper board stiffeners and plated
through holes can also be used to spread the heat generated by power devices. Tables 1 through 5 list thermal
resistances for each package. Measured values of thermal
resistance for several different board sizes and copper
areas are listed for each package. All measurements were
1121fe
9
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
239
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
U
W
U U
APPLICATIO S I FOR ATIO
taken in still air, on 3/32" FR-4 board with 1oz copper. All
NC leads were connected to the ground plane.
Table 1. N8 Package*
COPPER AREA
TOPSIDE
BACKSIDE
THERMAL RESISTANCE
BOARD AREA (JUNCTION-TO-AMBIENT)
2500 sq mm
2500 sq. mm
2500 sq. mm
80°C/W
1000 sq mm
2500 sq. mm
2500 sq. mm
80°C/W
225 sq mm
2500 sq. mm
2500 sq. mm
85°C/W
1000 sq mm
1000 sq. mm
1000 sq. mm
91°C/W
Table 5. TO-92 Package
THERMAL
RESISTANCE
Package alone
220°C/W
Package soldered into PC board with plated
through holes only
175°C/W
Package soldered into PC board with 1/4 sq. inch of
copper trace per lead
145°C/W
Package soldered into PC board with plated through holes
in board, no extra copper trace, and a clip-on type
heat sink:
Thermalloy type 2224B
Aavid type 5754
160°C/W
135°C/W
* Device is mounted on topside. Leads are through hole and are soldered
to both sides of board.
Calculating Junction Temperature
Table 2. S8 Package
COPPER AREA
TOPSIDE*
BACKSIDE
THERMAL RESISTANCE
BOARD AREA (JUNCTION-TO-AMBIENT)
2500 sq. mm 2500 sq. mm
2500 sq. mm
1000 sq. mm 2500 sq. mm
2500 sq. mm
120°C/W
120°C/W
225 sq. mm
2500 sq. mm
2500 sq. mm
125°C/W
100 sq. mm
1000 sq. mm
1000 sq. mm
131°C/W
* Device is mounted on topside.
COPPER AREA
BACKSIDE
BOARD AREA
2500 sq. mm
1000 sq. mm 2500 sq. mm
2500 sq. mm
60°C/W
225 sq. mm
2500 sq. mm
2500 sq. mm
68°C/W
100 sq. mm
60°C/W
2500 sq. mm
2500 sq. mm
74°C/W
* Pins 3, 6, and 7 are ground.
** Device is mounted on topside.
2500 sq. mm 2500 sq. mm
THERMAL RESISTANCE
BOARD AREA (JUNCTION-TO-AMBIENT)
2500 sq. mm
50°C/W
1000 sq. mm 2500 sq. mm
2500 sq. mm
50°C/W
225 sq. mm
2500 sq. mm
2500 sq. mm
58°C/W
100 sq. mm
2500 sq. mm
2500 sq. mm
64°C/W
BACKSIDE
1000 sq. mm 1000 sq. mm
1000 sq. mm
57°C/W
1000 sq. mm
1000 sq. mm
60°C/W
0
* Tab of device attached to topside copper
P = 100mA • (7V – 3.3V) + (5mA • 7V)
= 0.405W
If we use an SOT-223 package, then the thermal resistance
will be in the range of 50°C/W to 65°C/W depending on
copper area. So the junction temperature rise above
ambient will be less than or equal to:
0.405W • 60°C/W = 24°C
Table 4. SOT-223 Package
(Thermal Resistance Junction-to-Tab 20°C/W)
TOPSIDE*
IOUT MAX • (VIN MAX – VOUT) + (IGND • VIN)
so,
2500 sq. mm 2500 sq. mm
COPPER AREA
Power dissipated by the device will be equal to:
where, IOUT MAX = 100mA
VIN MAX = 7V
IGND at (IOUT = 100mA, VIN = 7V) = 5mA
Table 3. AS8 Package*
TOPSIDE**
Example: given an output voltage of 3.3V, an input voltage
range of 4.5V to 7V, an output current range of 0mA to
100mA, and a maximum ambient temperature of 50°C,
what will the maximum junction temperature be?
The maximum junction temperature will then be equal to
the maximum junction temperature rise above ambient
plus the maximum ambient temperature or:
TJMAX = 50°C + 24°C = 74°C
Output Capacitance and Transient Performance
The LT1121 is designed to be stable with a wide range of
output capacitors. The minimum recommended value is
1RF with an ESR of 3< or less. For applications where
space is very limited, capacitors as low as 0.33RF can be
used if combined with a small series resistor. Assuming
1121fe
10
240
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
U
W
U U
APPLICATIO S I FOR ATIO
Table 6. Suggested Series Resistor Values
SUGGESTED SERIES
OUTPUT CAPACITANCE
RESISTOR
0.33RF
2<
0.47RF
1<
0.68RF
1<
>1RF
None Needed
Protection Features
The LT1121 incorporates several protection features which
make it ideal for use in battery-powered circuits. In addition to the normal protection features associated with
monolithic regulators, such as current limiting and thermal limiting, the device is protected against reverse input
voltages, reverse output voltages, and reverse voltages
from output to input.
Current limit protection and thermal overload protection
are intended to protect the device against current overload
conditions at the output of the device. For normal operation, the junction temperature should not exceed 125°C.
The input of the device will withstand reverse voltages of
30V. Current flow into the device will be limited to less than
1mA (typically less than 100RA) and no negative voltage
will appear at the output. The device will protect both itself
and the load. This provides protection against batteries
that can be plugged in backwards.
For fixed voltage versions of the device, the output can be
pulled below ground without damaging the device. If the
input is open circuit or grounded the output can be pulled
below ground by 20V. The output will act like an open
circuit, no current will flow out of the pin. If the input is
powered by a voltage source, the output will source the
short-circuit current of the device and will protect itself by
thermal limiting. For the adjustable version of the device,
the output pin is internally clamped at one diode drop
below ground. Reverse current for the adjustable device
must be limited to 5mA.
In circuits where a backup battery is required, several
different input/output conditions can occur. The output
voltage may be held up while the input is either pulled to
ground, pulled to some intermediate voltage, or is left
open circuit. Current flow back into the output will vary
depending on the conditions. Many battery-powered circuits incorporate some form of power management. The
following information will help optimize battery life. Table
7 summarizes the following information.
The reverse output current will follow the curve in Figure
2 when the input pin is pulled to ground. This current flows
through the output pin to ground. The state of the shutdown pin will have no effect on output current when the
input pin is pulled to ground.
In some applications it may be necessary to leave the input
to the LT1121 unconnected when the output is held high.
This can happen when the LT1121 is powered from a
rectified AC source. If the AC source is removed, then the
input of the LT1121 is effectively left floating. The reverse
output current also follows the curve in Figure 2 if the input
pin is left open. The state of the shutdown pin will have no
effect on the reverse output current when the input pin is
floating.
100
OUTPUT PIN CURRENT (RA)
that the ESR of the capacitor is low (ceramic) the suggested series resistor is shown in Table 6. The LT1121 is
a micropower device and output transient response will be
a function of output capacitance. See the Transient Response curves in the Typical Performance Characteristics.
Larger values of output capacitance will decrease the peak
deviations and provide improved output transient response. Bypass capacitors, used to decouple individual
components powered by the LT1121, will increase the
effective value of the output capacitor.
TJ = 25°C
90 VIN < VOUT
CURRENT FLOWS
80
INTO OUTPUT PIN
70 TO GROUND
LT1121
(VOUT = VADJ)
60
50
40
LT1121-3.3
30
20
LT1121-5
10
0
0
1
2
3 4 5 6 7 8
OUTPUT VOLTAGE (V)
9
10
1121• F02
Figure 2. Reverse Output Current
1121fe
11
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
241
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
U
W
U U
APPLICATIO S I FOR ATIO
5
VOUT = 3.3V (LT1121-3.3)
VOUT = 5V (LT1121-5)
4
INPUT CURRENT (RA)
When the input of the LT1121 is forced to a voltage below
its nominal output voltage and its output is held high, the
reverse output current will still follow the curve in Figure
2. This condition can occur if the input of the LT1121 is
connected to a discharged (low voltage) battery and the
output is held up by either a backup battery or by a second
regulator circuit. When the input pin is forced below the
output pin or the output pin is pulled above the input pin,
the input current will typically drop to less than 2RA (see
Figure 3). The state of the shutdown pin will have no effect
on the reverse output current when the output is pulled
above the input.
3
2
1
0
0
1
3
2
INPUT VOLTAGE (V)
4
5
1121 F03
Figure 3. Input Current
Table 7. Fault Conditions
INPUT PIN
SHDN PIN
OUTPUT PIN
< VOUT (Nominal)
Open (Hi)
Forced to VOUT (Nominal)
Reverse Output Current ~ 15RA (See Figure 2)
Input Current ~ 1RA (See Figure 3)
< VOUT (Nominal)
Grounded
Forced to VOUT (Nominal)
Reverse Output Current ~ 15RA (See Figure 2)
Input Current ~ 1RA (See Figure 3)
Open
Open (Hi)
Forced to VOUT (Nominal)
Reverse Output Current ~ 15RA (See Figure 2)
Open
Grounded
Forced to VOUT (Nominal)
Reverse Output Current ~ 15RA (See Figure 2)
f 0.8V
Open (Hi)
f 0V
Output Current = 0
f 0.8V
Grounded
f 0V
Output Current = 0
> 1.5V
Open (Hi)
f 0V
Output Current = Short-Circuit Current
– 30V < VIN < 30V
Grounded
f 0V
Output Current = 0
1121fe
12
242
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
U
PACKAGE DESCRIPTIO
N8 Package
8-Lead PDIP (Narrow 0.300)
(LTC DWG # 05-08-1510)
.400*
(10.160)
MAX
8
7
6
5
1
2
3
4
.255 ± .015*
(6.477 ± 0.381)
.300 – .325
(7.620 – 8.255)
.065
(1.651)
TYP
.008 – .015
(0.203 – 0.381)
(
+.035
.325 –.015
+0.889
8.255
–0.381
.130 ± .005
(3.302 ± 0.127)
.045 – .065
(1.143 – 1.651)
)
.120
(3.048) .020
MIN (0.508)
MIN
.018 ± .003
.100
(2.54)
BSC
(0.457 ± 0.076)
N8 1002
NOTE:
1. DIMENSIONS ARE
INCHES
MILLIMETERS
*THESE DIMENSIONS DO NOT INCLUDE MOLD FLASH OR PROTRUSIONS.
MOLD FLASH OR PROTRUSIONS SHALL NOT EXCEED .010 INCH (0.254mm)
S8 Package
8-Lead Plastic Small Outline (Narrow 0.150)
(LTC DWG # 05-08-1610)
.189 – .197
(4.801 – 5.004)
NOTE 3
.045 ±.005
.050 BSC
8
.245
MIN
7
6
5
.160 ±.005
.150 – .157
(3.810 – 3.988)
NOTE 3
.228 – .244
(5.791 – 6.197)
.030 ±.005
TYP
1
RECOMMENDED SOLDER PAD LAYOUT
.010 – .020
× 45°
(0.254 – 0.508)
.008 – .010
(0.203 – 0.254)
2
.053 – .069
(1.346 – 1.752)
0°– 8° TYP
.016 – .050
(0.406 – 1.270)
.014 – .019
(0.355 – 0.483)
TYP
INCHES
(MILLIMETERS)
2. DRAWING NOT TO SCALE
3. THESE DIMENSIONS DO NOT INCLUDE MOLD FLASH OR PROTRUSIONS.
MOLD FLASH OR PROTRUSIONS SHALL NOT EXCEED .006" (0.15mm)
NOTE:
1. DIMENSIONS IN
3
4
.004 – .010
(0.101 – 0.254)
.050
(1.270)
BSC
SO8 0303
1121fe
13
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
243
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
U
PACKAGE DESCRIPTIO
ST Package
3-Lead Plastic SOT-223
(LTC DWG # 05-08-1630)
.248 – .264
(6.30 – 6.71)
.129 MAX
.114 – .124
(2.90 – 3.15)
.059 MAX
.264 – .287
(6.70 – 7.30)
.248 BSC
.130 – .146
(3.30 – 3.71)
.039 MAX
.059 MAX
.181 MAX
.033 – .041
(0.84 – 1.04)
.0905
(2.30)
BSC
.090
BSC
RECOMMENDED SOLDER PAD LAYOUT
10° – 16°
.010 – .014
(0.25 – 0.36)
10°
MAX
.071
(1.80)
MAX
10° – 16°
.024 – .033
(0.60 – 0.84)
.181
(4.60)
BSC
.012
(0.31)
MIN
.0008 – .0040
(0.0203 – 0.1016)
ST3 (SOT-233) 0502
1121fe
14
244
PN: 071-0961-00, January 2008
LT1121/LT1121-3.3/LT1121-5
U
PACKAGE DESCRIPTIO
Z Package
3-Lead Plastic TO-92 (Similar to TO-226)
(LTC DWG # 05-08-1410)
.180 ± .005
(4.572 ± 0.127)
.060 ± .005
(1.524± 0.127)
DIA
.90
(2.286)
NOM
.180 ± .005
(4.572 ± 0.127)
.500
(12.70)
MIN
.050 UNCONTROLLED
(1.270) LEAD DIMENSION
MAX
.016 ± .003
(0.406 ± 0.076)
.050
(1.27)
BSC
5°
NOM
.015 ± .002
(0.381 ± 0.051)
Z3 (TO-92) 0801
.060 ± .010
(1.524 ± 0.254)
3
2
.098 +.016/–.04
(2.5 +0.4/–0.1)
2 PLCS
TO-92 TAPE AND REEL
REFER TO TAPE AND REEL SECTION OF
LTC DATA BOOK FOR ADDITIONAL INFORMATION
.140 ± .010
(3.556 ± 0.127)
1
10° NOM
1121fe
Information furnished by Linear Technology Corporation is believed to be accurate and reliable.
However, no responsibility is assumed for its use. Linear Technology Corporation makes no representation that the interconnection of its circuits as described herein will not infringe on existing patent rights.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
15
245
A – Devices Data Sheets
LT1121/LT1121-3.3/LT1121-5
RELATED PARTS
PART NUMBER
DESCRIPTION
COMMENTS
LT1120
125mA Low Dropout Regulator with 20RA IQ
Includes 2.5V Reference and Comparator
LT1129
700mA Micropower Low Dropout Regulator
50RA Quiescent Current
LT1175
500mA Negative Low Dropout Micropower Regulator
45RA IQ, 0.26V Dropout Voltage, SOT-223 Package
LT1521
300mA Low Dropout Micropower Regulator with Shutdown
15RA IQ, Reverse Battery Protection
LT1529
3A Low Dropout Regulator with 50RA IQ
500mV Dropout Voltage
LT1611
Inverting 1.4MHz Switching Regulator
5V to – 5V at 150mA, Low Output Noise, SOT-23 Package
LT1613
1.4MHz Single-Cell Micropower DC/DC Converter
SOT-23 Package, Internally Compensated
LTC1627
High Efficiency Synchronous Step-Down Switching Regulator
Burst ModeTM Operation, Monolithic, 100% Duty Cycle
LT1682
Doubler Charge Pump with Low Noise Linear Regulator
Low Output Noise: 60RVRMS (100kHz BW)
LT1762 Series
150mA, Low Noise, LDO Micropower Regulator
25RA Quiescent Current, 20RVRMS Noise
LT1763 Series
500mA, Low Noise, LDO Micropower Regulator
30RA Quiescent Current, 20RVRMS Noise
LT1764 Series
3A Fast Transient Response LDO
300mV Dropout, 40RVRMS Noise
LT1962 Series
300mA, Low Noise, LDO Micropower Regulator
30RA Quiescent Current, 20RVRMS Noise
LT1963 Series
1.5A Fast Transient Response LDO
300mV Dropout, 40RVRMS Noise
Burst Mode is a trademark of Linear Technology Corporation.
1121fe
16
246
Linear Technology Corporation
LT 0407 REV E • PRINTED IN USA
1630 McCarthy Blvd., Milpitas, CA 95035-7417
(408)432-1900 ● FAX: (408) 434-0507 ● www.linear-tech.com
© LINEAR TECHNOLOGY CORPORATION 1994
PN: 071-0961-00, January 2008
AD5541 Data Sheet
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
247
A – Devices Data Sheets
(VDD = 5 V ⴞ 10%, VREF = 2.5 V, AGND = DGND = 0 V. All specifications
A
MIN to TMAX, unless otherwise noted.)
AD5541/AD5542–SPECIFICATIONS T = T
Parameter
Min
STATIC PERFORMANCE
Resolution
Relative Accuracy, INL
Typ
Max
16
Differential Nonlinearity
± 0.5
± 0.5
± 0.5
± 0.5
Gain Error
–1.5
Gain Error Temperature Coefficient
Zero Code Error
± 0.1
0.3
± 1.0
± 2.0
± 4.0
± 1.0
± 1.5
±5
±7
± 0.05
Zero Code Temperature Coefficient
AD5542
Bipolar Resistor Matching
1.000
± 0.0015 ± 0.0076
±1
±5
±7
± 0.2
Bipolar Zero Offset Error
Bipolar Zero Temperature Coefficient
OUTPUT CHARACTERISTICS
Output Voltage Range
0
–VREF
Output Voltage Settling Time
Slew Rate
Digital-to-Analog Glitch Impulse
Digital Feedthrough
DAC Output Impedance
Power Supply Rejection Ratio
DAC REFERENCE INPUT
Reference Input Range
Reference Input Resistance2
LOGIC INPUTS
Input Current
VINL, Input Low Voltage
VINH, Input High Voltage
Input Capacitance3
Hysteresis Voltage3
VREF – 1 LSB
VREF – 1 LSB
1
25
10
10
6.25
± 1.0
2.0
9
7.5
VDD
±1
0.8
Bits
LSB
LSB
LSB
LSB
LSB
LSB
LSB
ppm/°C
LSB
LSB
ppm/°C
Unipolar Operation
AD5542 Bipolar Operation
to 1/2 LSB of FS, CL = 10 pF
CL = 10 pF, Measured from 0% to 63%
1 LSB Change Around the Major Carry
All 1s Loaded to DAC, VREF = 2.5 V
Tolerance Typically 20%
ΔVDD ± 10%
V
kΩ
kΩ
Unipolar Operation
AD5542, Bipolar Operation
MHz
mV p-p
dB
pF
pF
0.3
1.5
5.50
1.1
6.05
TA = 25°C
V
V
μs
V/μs
nV-s
nV-s
kΩ
LSB
1.3
1
92
75
120
4.50
L, C Grades
B, J Grades
A Grade
Guaranteed Monotonic
J Grade
TA = 25°C
RFB/RINV, Typically RFB = RINV = 28 kΩ
Ratio Error
TA = 25°C
0.4
10
Test Condition
Ω/Ω
%
LSB
LSB
ppm/°C
μA
V
V
pF
V
2.4
REFERENCE
Reference –3 dB Bandwidth
Reference Feedthrough
Signal-to-Noise Ratio
Reference Input Capacitance
POWER REQUIREMENTS
VDD
IDD
Power Dissipation
±1
±2
Unit
All 1s Loaded
All 0s Loaded, VREF = 1 V p-p at 100 kHz
Code 0000 Hex
Code FFFF Hex
V
mA
mW
NOTES
1
Temperature ranges are as follows: A, B, C Versions: –40°C to +85°C. J, L Versions: 0°C to 70°C.
2
Reference input resistance is code-dependent, minimum at 8555 hex.
3
Guaranteed by design, not subject to production test.
Specifications subject to change without notice.
–2–
248
REV. A
PN: 071-0961-00, January 2008
AD5541/AD5542
(VDD = 5 V ⴞ 5%, VREF = 2.5 V, AGND = DGND = 0 V. All specifications TA = TMIN to TMAX, unless
TIMING CHARACTERISTICS1, 2 otherwise noted.)
Parameter
Limit at TMIN, TMAX
All Versions
Unit
Description
fSCLK
t1
t2
t3
t4
t5
t6
t7
t8
t9
t10
t11
t12
25
40
20
20
15
15
35
20
15
0
30
30
30
MHz max
ns min
ns min
ns min
ns min
ns min
ns min
ns min
ns min
ns min
ns min
ns min
ns min
SCLK Cycle Frequency
SCLK Cycle Time
SCLK High Time
SCLK Low Time
CS Low to SCLK High Setup
CS High to SCLK High Setup
SCLK High to CS Low Hold Time
SCLK High to CS High Hold Time
Data Setup Time
Data Hold Time
LDAC Pulsewidth
CS High to LDAC Low Setup
CS High Time Between Active Periods
NOTES
1
Guaranteed by design. Not production tested.
2
Sample tested during initial release and after any redesign or process change that may affect this parameter. All input signals are measured with tr = tf = 5 ns (10% to
90% of VDD) and timed from a voltage level of (V IL + VIH)/2.
Specifications subject to change without notice.
t1
SCLK
t2
t6
t3
t5
t7
t4
CS
t 12
t8
t9
DIN
DB15
DB0
t 11
t 10
LDAC*
*AD5542 ONLY. MAY BE TIED PERMANENTLY LOW IF REQUIRED.
Figure 1. Timing Diagram
REV. A
–3–
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
249
A – Devices Data Sheets
AD5541/AD5542
ABSOLUTE MAXIMUM RATINGS*
Maximum Junction Temperature, (TJ max) . . . . . . . . . 150°C
Package Power Dissipation . . . . . . . . . . . . . (TJ max – TA)/θJA
Thermal Impedance θJA
SOIC (SO-8) . . . . . . . . . . . . . . . . . . . . . . . . . . 149.5°C/W
SOIC (R-14) . . . . . . . . . . . . . . . . . . . . . . . . . . 104.5°C/W
Lead Temperature, Soldering
Vapor Phase (60 sec) . . . . . . . . . . . . . . . . . . . . . . . . 215°C
Infrared (15 sec) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220°C
(TA = 25°C unless otherwise noted)
VDD to AGND . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to +6 V
Digital Input Voltage to DGND . . . . . –0.3 V to VDD + 0.3 V
VOUT to AGND . . . . . . . . . . . . . . . . . . –0.3 V to VDD + 0.3 V
AGND, AGNDF, AGNDS to DGND . . . . . –0.3 V to +0.3 V
Input Current to Any Pin Except Supplies . . . . . . . . ± 10 mA
Operating Temperature Range
Industrial (A, B, C Versions) . . . . . . . . . . . –40°C to +85°C
Commercial (J, L Versions) . . . . . . . . . . . . . . . 0°C to 70°C
Storage Temperature Range . . . . . . . . . . . . –65°C to +150°C
*Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the
device at these or any other conditions above those listed in the operational
sections of this specification is not implied. Exposure to absolute maximum rating
conditions for extended periods may affect device reliability.
ORDERING GUIDE
Model
INL
DNL
Temperature Range
Package Description
Package Option
AD5541CR
AD5541LR
AD5541BR
AD5541JR
AD5541AR
± 1 LSB
± 1 LSB
± 2 LSB
± 2 LSB
± 4 LSB
± 1 LSB
± 1 LSB
± 1 LSB
± 1.5 LSB
± 1 LSB
–40°C to +85°C
0°C to 70°C
–40°C to +85°C
0°C to 70°C
–40°C to +85°C
8-Lead Small Outline IC
8-Lead Small Outline IC
8-Lead Small Outline IC
8-Lead Small Outline IC
8-Lead Small Outline IC
SO-8
SO-8
SO-8
SO-8
SO-8
AD5542CR
AD5542LR
AD5542BR
AD5542JR
AD5542AR
± 1 LSB
± 1 LSB
± 2 LSB
± 2 LSB
± 4 LSB
± 1 LSB
± 1 LSB
± 1 LSB
± 1.5 LSB
± 1 LSB
–40°C to +85°C
0°C to 70°C
–40°C to +85°C
0°C to 70°C
–40°C to +85°C
14-Lead Small Outline IC
14-Lead Small Outline IC
14-Lead Small Outline IC
14-Lead Small Outline IC
14-Lead Small Outline IC
R-14
R-14
R-14
R-14
R-14
Die Size = 80 × 139 = 11,120 sq mil; Number of Transistors = 1,230.
CAUTION
ESD (electrostatic discharge) sensitive device. Electrostatic charges as high as 4000 V readily
accumulate on the human body and test equipment and can discharge without detection. Although
the AD5541/AD5542 features proprietary ESD protection circuitry, permanent damage may occur
on devices subjected to high-energy electrostatic discharges. Therefore, proper ESD precautions
are recommended to avoid performance degradation or loss of functionality.
–4–
250
WARNING!
ESD SENSITIVE DEVICE
REV. A
PN: 071-0961-00, January 2008
AD5541/AD5542
AD5541 PIN FUNCTION DESCRIPTIONS
Mnemonic
Pin No.
Description
VOUT
AGND
REF
1
2
3
CS
SCLK
4
5
DIN
6
DGND
VDD
7
8
Analog Output Voltage from the DAC.
Ground Reference Point for Analog Circuitry.
This is the voltage reference input for the DAC. Connect to external 2.5 V reference.
Reference can range from 2 V to VDD.
This is a logic input signal. The chip select signal is used to frame the serial data input.
Clock Input. Data is clocked into the input register on the rising edge of SCLK. Duty cycle
must be between 40% and 60%.
Serial Data Input. This device accepts 16-bit words. Data is clocked into the input register on
the rising edge of SCLK.
Digital Ground. Ground reference for digital circuitry.
Analog Supply Voltage, 5 V ± 10%.
AD5541 PIN CONFIGURATION
SOIC
VOUT 1
8
AD5542 PIN CONFIGURATION
SOIC
VDD
CS 4
5
14 VDD
RFB 1
7 DGND
AD5541
TOP VIEW
REF 3 (Not to Scale) 6 DIN
AGND 2
13 INV
VOUT 2
12 DGND
AGNDF 3
AD5542
TOP VIEW 11 LDAC
REFS 5 (Not to Scale) 10 DIN
SCLK
AGNDS 4
REFF 6
9
NC
CS 7
8
SCLK
NC = NO CONNECT
AD5542 PIN FUNCTION DESCRIPTIONS
Mnemonic
Pin No.
Description
RFB
VOUT
AGNDF
AGNDS
REFS
1
2
3
4
5
REFF
6
CS
SCLK
7
8
NC
DIN
9
10
LDAC
11
DGND
INV
12
13
VDD
14
Feedback Resistor. In bipolar mode connect this pin to external op amp output.
Analog Output Voltage from the DAC.
Ground Reference Point for Analog Circuitry (Force).
Ground Reference Point for Analog Circuitry (Sense).
This is the voltage reference input (sense) for the DAC. Connect to external 2.5 V reference.
Reference can range from 2 V to VDD.
This is the voltage reference input (force) for the DAC. Connect to external 2.5 V reference.
Reference can range from 2 V to VDD.
This is a logic input signal. The chip select signal is used to frame the serial data input.
Clock input. Data is clocked into the input register on the rising edge of SCLK. Duty cycle
must be between 40% and 60%.
No Connect.
Serial Data Input. This device accepts 16-bit words. Data is clocked into the input register on
the rising edge of SCLK.
LDAC Input. When this input is taken low, the DAC register is simultaneously updated with
the contents of the input register.
Digital Ground. Ground reference for digital circuitry.
Connected to the Internal Scaling Resistors of the DAC. Connect INV pin to external op amps
inverting input in bipolar mode.
Analog Supply Voltage, 5 V ± 10%.
REV. A
–5–
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
251
A – Devices Data Sheets
AD5541/AD5542
TERMINOLOGY
Relative Accuracy
For the DAC, relative accuracy or integral nonlinearity (INL)
is a measure of the maximum deviation, in LSBs, from a straight
line passing through the endpoints of the DAC transfer function.
A typical INL versus code plot can be seen in Figure 2.
Differential Nonlinearity
Differential nonlinearity is the difference between the measured
change and the ideal 1 LSB change between any two adjacent
codes. A specified differential nonlinearity of ± 1 LSB maximum
ensures monotonicity. Figure 3 illustrates a typical DNL versus
code plot.
Gain Error
Gain error is the difference between the actual and ideal analog
output range, expressed as a percent of the full-scale range.
It is the deviation in slope of the DAC transfer characteristic
from ideal.
Digital-to-Analog Glitch Impulse
Digital-to-analog glitch impulse is the impulse injected into the
analog output when the input code in the DAC register changes
state. It is normally specified as the area of the glitch in nV-s
and is measured when the digital input code is changed by 1 LSB
at the major carry transition. A plot of the glitch impulse is shown
in Figure 15.
Digital Feedthrough
Digital feedthrough is a measure of the impulse injected into the
analog output of the DAC from the digital inputs of the DAC,
but is measured when the DAC output is not updated. CS is
held high, while the CLK and DIN signals are toggled. It is
specified in nV-s and is measured with a full-scale code change
on the data bus, i.e., from all 0s to all 1s and vice versa. A typical plot of digital feedthrough is shown in Figure 14.
Power Supply Rejection Ratio
This is a measure of the change in gain error with changes in
temperature. It is expressed in ppm/°C.
This specification indicates how the output of the DAC is affected
by changes in the power supply voltage. Power-supply rejection
ratio is quoted in terms of % change in output per % change in
VDD for full-scale output of the DAC. VDD is varied by ± 10%.
Zero Code Error
Reference Feedthrough
Zero code error is a measure of the output error when zero code
is loaded to the DAC register.
This is a measure of the feedthrough from the VREF input to the
DAC output when the DAC is loaded with all 0s. A 100 kHz,
1 V p-p is applied to VREF. Reference feedthrough is expressed
in mV p-p.
Gain Error Temperature Coefficient
Zero Code Temperature Coefficient
This is a measure of the change in zero code error with a change
in temperature. It is expressed in mV/°C.
–6–
252
REV. A
PN: 071-0961-00, January 2008
Typical Performance Characteristics– AD5541/AD5542
0.50
VDD = 5V
VREF = 2.5V
0.25
DIFFERENTIAL NONLINEARITY – LSB
INTEGRAL NONLINEARITY – LSB
0.50
0
–0.25
–0.50
VDD = 5V
VREF = 2.5V
0.25
0
–0.25
–0.50
–0.75
0
8192
16384 24576 32768 40960 49152 57344 65536
CODE
16384 24576 32768 40960 49152 57344 65536
CODE
0.75
0.25
VDD = 5V
VREF = 2.5V
DIFFERENTIAL NONLINEARITY – LSB
INTEGRAL NONLINEARITY – LSB
8192
Figure 5. Differential Nonlinearity vs. Code
Figure 2. Integral Nonlinearity vs. Code
0
–0.25
–0.50
–0.75
–1.00
–60
0
–40
–20
0
20
40
60
80
100
120
VDD = 5V
VREF = 2.5V
0.50
0.25
0
–0.25
–0.50
–60
140
–40
–20
20
40
60
80
100
120
140
Figure 6. Differential Nonlinearity vs. Temperature
Figure 3. Integral Nonlinearity vs. Temperature
0.75
0.50
VDD = 5V
TA = 25ⴗC
VREF = 2.5V
TA = 25ⴗC
0.50
LINEARITY ERROR – LSB
0.25
LINEARITY ERROR – LSB
0
TEMPERATURE – ⴗC
TEMPERATURE – ⴗC
DNL
0
–0.25
DNL
0.25
0
INL
–0.25
–0.50
INL
–0.75
–0.50
2
3
4
5
SUPPLY VOLTAGE – V
6
0
7
2
3
4
REFERENCE VOLTAGE – V
5
6
Figure 7. Linearity Error vs. Reference Voltage
Figure 4. Linearity Error vs. Supply Voltage
REV. A
1
–7–
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
253
A – Devices Data Sheets
AD5541/AD5542
0.75
0
VDD = 5V
VREF = 2.5V
ZERO-CODE ERROR – LSB
GAIN ERROR – LSB
VDD = 5V
VREF = 2.5V
–0.25
–0.50
–0.75
–60
–40
–20
0
20
40
60
80
100
120
0.50
0.25
0
–60
140
–40
–20
20
0
TEMPERATURE – ⴗC
Figure 8. Gain Error vs. Temperature
60
80
100
120
140
Figure 11. Zero-Code Error vs. Temperature
450
250
VDD = 5V
VLOGIC = 5V
VREF = 2.5V
TA = 25ⴗC
400
SUPPLY CURRENT – ␮A
SUPPLY CURRENT – ␮A
40
TEMPERATURE – ⴗC
200
350
REFERENCE
VOLTAGE
VDD = 5V
300
SUPPLY
VOLTAGE
VREF = 2.5V
250
200
150
–40
0
–20
20
40
60
80
100
150
120
0
1
2
TEMPERATURE – ⴗC
Figure 9. Supply Current vs. Temperature
5555H
6
VDD = 5V
VREF = 2.5V
TA = 25ⴗC
8555H
REFERENCE CURRENT – ␮A
SUPPLY CURRENT – ␮A
5
300
VDD = 5V
VREF = 2.5V
TA = 25ⴗC
350
300
250
200
250
0555H
BIPOLAR MODE
200
150
UNIPOLAR MODE
100
50
0
1
3
2
DIGITAL INPUT VOLTAGE – V
4
5
0
Figure 10. Supply Current vs. Digital Input Voltage
8192
16384 24576 32768 40960 49152
CODE
57344
65536
Figure 13. Reference Current vs. Code
–8–
254
4
Figure 12. Supply Current vs Reference Voltage or Supply
Voltage
400
150
3
VOLTAGE – V
REV. A
PN: 071-0961-00, January 2008
AD5541/AD5542
VREF = 2.5V
VDD = 5V
TA = 25ⴗC
100
90
CLOCK (5V/DIV)
2µs/DIV
100
90
CS (5V/DIV)
10pF
50pF
100pF
VOUT (50mV/DIV)
VREF = 2.5V
VDD = 5V
TA = 25ⴗC
10
10
200pF
0%
0%
VOUT (0.5V/DIV)
2␮s/DIV
Figure 16. Large Signal Settling Time
Figure 14. Digital Feedthrough
VREF = 2.5V
VDD = 5V
TA = 25ⴗC
100
90
VREF = 2.5V
VDD = 5V
TA = 25ⴗC
100
90
VOUT (1V/DIV)
CS (5V/DIV)
VOUT (0.1V/DIV)
VOUT (50mV/DIV)
GAIN = –216
1LSB = 8.2mV
10
10
0%
0%
0.5␮s/DIV
2µs/DIV
Figure 17. Small Signal Settling Time
Figure 15. Digital-to-Analog Glitch Impulse
GENERAL DESCRIPTION
The AD5541/AD5542 are single, 16-bit, serial input, voltage
output DACs. They operate from a single supply ranging from
2.7 V to 5 V and consume typically 300 mA with a supply of
5 V. Data is written to these devices in a 16-bit word format, via
a 3- or 4-wire serial interface. To ensure a known power-up state,
these parts were designed with a power-on reset function. In unipolar mode, the output is reset to 0 V, while in bipolar mode, the
AD5542 output is set to –VREF. Kelvin sense connections for
the reference and analog ground are included on the AD5542.
Digital-to-Analog Section
The DAC architecture consists of two matched DAC sections.
A simplified circuit diagram is shown in Figure 18. The DAC
architecture of the AD5541/AD5542 is segmented. The four
MSBs of the 16-bit data word are decoded to drive 15 switches,
E1 to E15. Each of these switches connects one of 15 matched
resistors to either AGND or VREF. The remaining 12 bits of the
data word drive switches S0 to S11 of a 12-bit voltage mode
R-2R ladder network.
R
R
VOUT
2R
2R
2R
2R
2R
2R
2R
S0
S1
S11
E1
E2
E15
VREF
12-BIT R-2R LADDER
FOUR MSB's DECODED INTO
15 EQUAL SEGMENTS
Figure 18. DAC Architecture
REV. A
With this type of DAC configuration, the output impedance
is independent of code, while the input impedance seen by
the reference is heavily code dependent. The output voltage
is dependent on the reference voltage as shown in the following equation.
VOUT =
VREF × D
2N
where D is the decimal data word loaded to the DAC register
and N is the resolution of the DAC. For a reference of 2.5 V,
the equation simplifies to the following.
VOUT =
2.5 × D
65, 536
giving a VOUT of 1.25 V with midscale loaded, and 2.5 V with
full-scale loaded to the DAC.
The LSB size is VREF/65,536.
Serial Interface
The AD5541 and AD5542 are controlled by a versatile 3-wire
serial interface, which operates at clock rates up to 25 MHz and
is compatible with SPI, QSPI, MICROWIRE, and DSP interface
standards. The timing diagram can be seen in Figure 1. Input
data is framed by the chip select input, CS. After a high-to-low
transition on CS, data is shifted synchronously and latched into
the input register on the rising edge of the serial clock, SCLK.
Data is loaded MSB first in 16-bit words. After 16 data bits
have been loaded into the serial input register, a low-to-high
transition on CS transfers the contents of the shift register to the
DAC. Data can only be loaded to the part while CS is low.
–9–
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
255
A – Devices Data Sheets
AD5541/AD5542
The AD5542 has an LDAC function that allows the DAC latch
to be updated asynchronously by bringing LDAC low after CS
goes high. LDAC should be maintained high while data is written
to the shift register. Alternatively, LDAC may be tied permanently
low to update the DAC synchronously. With LDAC tied permanently low, the rising edge of CS will load the data to the DAC.
+2.5V
0.1␮F
0.1␮F
RFB
SERIAL
INTERFACE
VDD
0.1␮F
0.1␮F
SERIAL
INTERFACE
10␮F
VDD
REF(REFF*)
CS
REFS*
AD820/
OP196
AD5541/AD5542
DIN
OUT
SCLK
LDAC*
DGND
AGND
UNIPOLAR
OUTPUT
RFB
* AD5542 ONLY
DGND
VREF × (65,535/65,536)
VREF × (32,768/65,536) = 1/2 VREF
VREF × (1/65,536)
0V
Figure 20. Bipolar Output (AD5542 Only)
Table II. Bipolar Code Table
DAC Latch Contents
MSB
LSB
Analog Output
1111 1111 1111 1111
1000 0000 0000 0001
1000 0000 0000 0000
0111 1111 1111 1111
0000 0000 0000 0000
+VREF × (32,767/32,768)
+VREF × (1/32,768)
0V
–VREF × (1/32,768)
–VREF × (32,768/32,768) = –VREF
VOUT – BIP =
[(V
OUT –UNI
where
VOUT–UNI
D
VREF
VGE
VZSE
INL
D
216
)
)
1 + 2 + RD / A
(
)]
Output Amplifier Selection
For bipolar mode, a precision amplifier should be used, supplied
from a dual power supply. This will provide the ± VREF output.
In a single-supply application, selection of a suitable op amp
may be more difficult as the output swing of the amplifier does
not usually include the negative rail, in this case AGND. This
can result in some degradation of the specified performance
unless the application does not use codes near zero.
× (VREF + VGE ) + VZSE + INL
= Unipolar Mode Worst-Case Output
= Code Loaded to DAC
= Reference Voltage Applied to Part
= Gain Error in Volts
= Zero Scale Error in Volts
= Integral Nonlinearity in Volts
Bipolar Output Operation
With the aid of an external op amp, the AD5542 may be configured to provide a bipolar voltage output. A typical circuit of
such operation is shown in Figure 20. The matched bipolar offset resistors RFB and RINV are connected to an external op amp to
achieve this bipolar output swing, typically RFB = RINV = 28 kΩ.
Table II shows the transfer function for this output operating
mode. Also provided on the AD5542 are a set of Kelvin connections to the analog ground inputs.
The selected op amp needs to have very low-offset voltage, (the
DAC LSB is 38 μV with a 2.5 V reference), to eliminate the
need for output offset trims. Input bias current should also be
very low as the bias current multiplied by the DAC output
impedance (approximately 6K) will add to the zero code error.
Rail-to-rail input and output performance is required. For fast
settling, the slew rate of the op amp should not impede the
settling time of the DAC. Output impedance of the DAC is
constant and code-independent, but in order to minimize gain
errors, the input impedance of the output amplifier should be
as high as possible. The amplifier should also have a 3 dB bandwidth of 1 MHz or greater. The amplifier adds another time
constant to the system, hence increasing the settling time of the
output. A higher 3 dB amplifier bandwidth results in a shorter
effective settling time of the combined DAC and amplifier.
Force Sense Amplifier Selection
These amplifiers will be single-supply, low-noise amplifiers. A
low-output impedance at high frequencies is preferred as they
need to be able to handle dynamic currents of up to ± 20 mA.
–10–
256
)(
(
+ VOS 2 + RD – VREF 1 + RD
where
VOS = External Op Amp Input Offset Voltage
RD = RFB and RIN Resistor Matching Error
A = Op Amp Open-Loop Gain
Assuming a perfect reference, the worst case output voltage may
be calculated from the following equation.
Unipolar Mode Worst-Case Output
VOUT –UNI =
–5V
EXTERNAL
OP AMP
AGNDF AGNDS
Table I. Unipolar Code Table
1111 1111 1111 1111
1000 0000 0000 0000
0000 0000 0000 0001
0000 0000 0000 0000
BIPOLAR
OUTPUT
OUT
AD5541/AD5542
LDAC
Figure 19. Unipolar Output
Analog Output
INV
Assuming a perfect reference, the worst-case bipolar output
voltage may be calculated from the following equation.
Bipolar Mode Worst-Case Output
EXTERNAL
OP AMP
DAC Latch Contents
MSB
LSB
+5V
REFS
RINV
DIN
These DACs are capable of driving unbuffered loads of 60 kΩ.
Unbuffered operation results in low-supply current, typically
300 μA, and a low-offset error. The AD5541 provides a unipolar
output swing ranging from 0 V to VREF. The AD5542 can be
configured to output both unipolar and bipolar voltages. Figure
19 shows a typical unipolar output voltage circuit. The code
table for this mode of operation is shown in Table I.
SCLK
+2.5V
REFF
CS
Unipolar Output Operation
+5V
10␮F
+5V
REV. A
PN: 071-0961-00, January 2008
AD5541/AD5542
Reference and Ground
AD5541/AD5542 to 68HC11 Interface
As the input impedance is code-dependent, the reference pin
should be driven from a low-impedance source. The AD5541/
AD5542 operates with a voltage reference ranging from 2 V to
VDD. References below 2 V will result in reduced accuracy.
The DAC’s full-scale output voltage is determined by the
reference. Tables I and II outline the analog output voltage
or particular digital codes. For optimum performance, Kelvin
sense connections are provided on the AD5542.
Figure 22 shows a serial interface between the AD5541/AD5542
and the 68HC11 microcontroller. SCK of the 68HC11 drives
the SCLK of the DAC, while the MOSI output drives the
serial data lines SDIN. CS signal is driven from one of the
port lines. The 68HC11 is configured for master mode; MSTR
= 1, CPOL = 0, and CPHA = 0. Data appearing on the MOSI
output is valid on the rising edge of SCK.
If the application doesn’t require separate force and sense lines,
they should be tied together close to the package to minimize
voltage drops between the package leads and the internal die.
68HC11/
68L11*
Power-On Reset
PC6
LDAC**
PC7
CS
MOSI
SCK
These parts have a power-on reset function to ensure the output
is at a known state upon power-up. On power-up, the DAC
register contains all zeros, until data is loaded from the serial
register. However, the serial register is not cleared on power-up,
so its contents are undefined. When loading data initially to the
DAC, 16 bits or more should be loaded to prevent erroneous
data appearing on the output. If more than 16 bits are loaded,
the last 16 are kept, and if less than 16 are loaded, bits will remain
from the previous word. If the AD5541/AD5542 needs to be
interfaced with data shorter than 16 bits, the data should be
padded with zeros at the LSBs.
DIN
AD5541/
AD5542*
SCLK
*ADDITIONAL PINS OMITTED FOR CLARITY.
**AD5542 ONLY
Figure 22. AD5541/AD5542 to 68HC11/68L11 Interface
AD5541/AD5542 to MICROWIRE Interface
Figure 23 shows an interface between the AD5541/AD5542 and
any MICROWIRE-compatible device. Serial data is shifted out
on the falling edge of the serial clock and into the AD5541/
AD5542 on the rising edge of the serial clock. No glue logic is
required as the DAC clocks data into the input shift register on
the rising edge.
Power Supply and Reference Bypassing
For accurate high-resolution performance, it is recommended that
the reference and supply pins be bypassed with a 10 μF tantalum
capacitor in parallel with a 0.1 μF ceramic capacitor.
MICROWIRE*
AD5541/AD5542–ADSP-2101/ADSP-2103 Interface
Figure 21 shows a serial interface between the AD5541/AD5542
and the ADSP-2101/ADSP-2103. The ADSP-2101/ADSP-2103
should be set to operate in the SPORT transmit alternate framing
mode. The ADSP-2101/ADSP-2103 is programmed through the
SPORT control register and should be configured as follows:
Internal Clock Operation, Active Low Framing, 16-Bit Word
Length. Transmission is initiated by writing a word to the Tx register after the SPORT has been enabled. As the data is clocked out
on each rising edge of the serial clock, an inverter is required
between the DSP and the DAC, because the AD5541/AD5542
clocks data in on the falling edge of the SCLK.
Figure 23. AD5541/AD5542 to MICROWIRE Interface
AD5541/AD5542 to 80C51/80L51 Interface
A serial interface between the AD5541/AD5542 and the 80C51/
80L51 microcontroller is shown in Figure 24. TxD of the
microcontroller drives the SCLK of the AD5541/AD5542, while
RxD drives the serial data line of the DAC. P3.3 is a bit programmable pin on the serial port which is used to drive CS.
The 80C51/80L51 provides the LSB first, while the AD5541/
AD5542 expects the MSB of the 16-bit word first. Care should
be taken to ensure the transmit routine takes this into account.
When data is to be transmitted to the DAC, P3.3 is taken low.
Data on RxD is valid on the falling edge of TxD, so the clock must
be inverted as the DAC clocks data into the input shift register on the rising edge of the serial clock. The 80C51/80L51
transmits its data in 8-bit bytes with only eight falling clock
edges occurring in the transmit cycle. As the DAC requires a
16-bit word, P3.3 must be left low after the first eight bits are
transferred, and brought high after the second byte is transferred. LDAC on the AD5542 may also be controlled by
the 80C51/80L51 serial port output by using another bit
programmable pin, P3.4.
CS
DT
DIN
AD5541/
AD5542*
80C51/
80L51*
SCLK
*ADDITIONAL PINS OMITTED FOR CLARITY.
**AD5542 ONLY
P3.4
LDAC**
P3.3
CS
RxD
DIN
TxD
SCLK
AD5541/
AD5542*
*ADDITIONAL PINS OMITTED FOR CLARITY.
**AD5542 ONLY
Figure 21. AD5541/AD5542 to ADSP-2101/ADSP-2103
Interface
REV. A
AD5541/
AD5542*
LDAC**
TFS
SCLK
SCLK
*ADDITIONAL PINS OMITTED FOR CLARITY.
Microprocessor interfacing to the AD5541/AD5542 is via a
serial bus that uses standard protocol compatible with DSP
processors and microcontrollers. The communications channel
requires a 3-wire interface consisting of a clock signal, a data
signal and a synchronization signal. The AD5541/AD5542
requires a 16-bit data word with data valid on the rising edge of
SCLK. The DAC update may be done automatically when all
the data is clocked in or it may be done under control of LDAC
(AD5542 only).
FO
CS
DIN
SCLK
MICROPROCESSOR INTERFACING
ADSP-2101/
ADSP-2103*
CS
SO
Figure 24. AD5541/AD5542 to 80C51/80L51 Interface
–11–
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
257
A – Devices Data Sheets
AD5541/AD5542
Decoding Multiple AD5541/AD5542s
The digital inputs of the AD5541/AD5542 are Schmitttriggered, so they can accept slow transitions on the digital input
lines. This makes these parts ideal for industrial applications
where it may be necessary that the DAC is isolated from the
controller via optocouplers. Figure 25 illustrates such an interface.
5V
REGULATOR
10␮F
POWER
The CS pin of the AD5541/AD5542 can be used to select one
of a number of DACs. All devices receive the same serial clock
and serial data, but only one device will receive the CS signal at
any one time. The DAC addressed will be determined by the
decoder. There will be some digital feedthrough from the digital
input lines. Using a burst clock will minimize the effects of digital feedthrough on the analog signal channels. Figure 26 shows a
typical circuit.
0.1␮F
AD5541/AD5542
SCLK
C3713–8–10/99
APPLICATIONS
Optocoupler interface
CS
VDD
DIN
10k⍀
SCLK
DIN
VDD
VOUT
SCLK
VDD
SCLK
ENABLE
VDD
AD5541/AD5542
AD5541/AD5542
EN
CS
CODED
ADDRESS
DECODER
DIN
10k⍀
SCLK
CS
CS
VOUT
VOUT
DGND
AD5541/AD5542
VDD
CS
DIN
10k⍀
VOUT
SCLK
DIN
DIN
GND
AD5541/AD5542
CS
DIN
Figure 25. AD5541/AD5542 in an Optocoupler Interface
VOUT
SCLK
Figure 26. Addressing Multiple AD5541/AD5542s
OUTLINE DIMENSIONS
Dimensions shown in inches and (mm).
8-Lead SO
(SO-8)
14-Lead SO
(R-14)
0.1574 (4.00)
0.1497 (3.80)
8
5
1
4
0.1574 (4.00)
0.1497 (3.80)
0.2440 (6.20)
0.2284 (5.80)
PIN 1
PIN 1
0.0196 (0.50)
ⴛ 45ⴗ
0.0099 (0.25)
0.0500 (1.27)
BSC
0.0098 (0.25)
0.0040 (0.10)
SEATING
PLANE
8
1
7
0.050 (1.27)
BSC
0.0688 (1.75)
0.0532 (1.35)
0.0688 (1.75)
0.0532 (1.35)
0.0192 (0.49)
0.0138 (0.35)
8ⴗ
0.0098 (0.25) 0ⴗ 0.0500 (1.27)
0.0160 (0.41)
0.0075 (0.19)
0.0098 (0.25)
0.0040 (0.10)
–12–
258
14
0.2440 (6.20)
0.2284 (5.80)
0.0196 (0.50)
ⴛ 45ⴗ
0.0099 (0.25)
PRINTED IN U.S.A.
0.3444 (8.75)
0.3367 (8.55)
0.1968 (5.00)
0.1890 (4.80)
8ⴗ
0.0192 (0.49) SEATING 0.0099 (0.25) 0ⴗ 0.0500 (1.27)
0.0138 (0.35) PLANE
0.0160 (0.41)
0.0075 (0.19)
REV. A
PN: 071-0961-00, January 2008
MAX195 Data Sheet
19-0377; Rev 1; 12/97
KIT
ATION
EVALU
BLE
A
IL
A
V
A
16-Bit, 85ksps ADC with 10µA Shutdown
The MAX195, with an external reference (up to +5V),
offers a unipolar (0V to VREF) or bipolar (-VREF to VREF)
pin-selectable input range. Separate analog and digital
supplies minimize digital-noise coupling.
The chip select (CS) input controls the three-state serialdata output. The output can be read either during conversion as the bits are determined, or following conversion at
up to 5Mbps using the serial clock (SCLK). The end-ofconversion (EOC) output can be used to interrupt a
processor, or can be connected directly to the convert
input (CONV) for continuous, full-speed conversions.
The MAX195 is available in 16-pin DIP, wide SO, and
ceramic sidebraze packages.
________________________Applications
Portable Instruments
Audio
Industrial Controls
Robotics
Multiple Transducer Measurements
Medical Signal Acquisition
Vibrations Analysis
Digital Signal Processing
__________________Pin Configuration
____________________________Features
♦ 16 Bits, No Missing Codes
♦ 90dB SINAD
♦ 9.4µs Conversion Time
♦ 10µA (max) Shutdown Mode
♦ Built-In Track/Hold
♦ AC and DC Specified
♦ Unipolar (0V to VREF) and Bipolar (-VREF to VREF)
Input Range
♦ Three-State Serial-Data Output
♦ Small 16-Pin DIP, SO, and Ceramic SB Packages
______________Ordering Information
PART
TEMP. RANGE
MAX195BCPE
0°C to +70°C
MAX195BCWE
MAX195ACDE
MAX195BC/D
MAX195BEPE
MAX195BEWE
MAX195AEDE
MAX195AMDE
MAX195BMDE
0°C to +70°C
0°C to +70°C
0°C to +70°C
-40°C to +85°C
-40°C to +85°C
-40°C to +85°C
-55°C to +125°C
-55°C to +125°C
PIN-PACKAGE
16 Plastic DIP
16 Wide SO
16 Ceramic SB
Dice*
16 Plastic DIP
16 Wide SO
16 Ceramic SB
16 Ceramic SB**
16 Ceramic SB**
* Dice are specified at TA = +25°C, DC parameters only.
** Contact factory for availability and processing to MIL-STD-883.
________________Functional Diagram
AIN
REF
13
MAIN DAC
12
Σ
TOP VIEW
BP/UP/SHDN 1
16 VDDA
CLK 2
15 VSSA
SCLK 3
VDDD 4
CALIBRATION
DACs
14 AGND
MAX195
CLK
SCLK
DGND 6
11 VSSD
CONV
10 RESET
9
CONV
VDDD
DGND
VSSD
VDDA
AGND
VSSA
MAX195
2
12 REF
CS 8
COMPARATOR
4
6
11
16
14
15
SAR
13 AIN
DOUT 5
EOC 7
MAX195
_______________General Description
The MAX195 is a 16-bit successive-approximation analog-to-digital converter (ADC) that combines high
speed, high accuracy, low power consumption, and a
10µA shutdown mode. Internal calibration circuitry corrects linearity and offset errors to maintain the full rated
performance over the operating temperature range without external adjustments. The capacitive-DAC architecture provides an inherent 85ksps track/hold function.
BP/UP/SHDN
CS
RESET
3
5
9
1
8
10
CONTROL LOGIC
DOUT
THREE-STATE BUFFER
7
EOC
DIP/Wide SO/Ceramic SB
________________________________________________________________ Maxim Integrated Products
1
For free samples & the latest literature: http://www.maxim-ic.com, or phone 1-800-998-8800.
For small orders, phone 408-737-7600 ext. 3468.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
259
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
ABSOLUTE MAXIMUM RATINGS
VDDD to DGND .....................................................................+7V
VDDA to AGND......................................................................+7V
VSSD to DGND.........................................................+0.3V to -6V
VSSA to AGND .........................................................+0.3V to -6V
VDDD to VDDA, VSSD to VSSA ..........................................±0.3V
AIN, REF ....................................(VSSA - 0.3V) to (VDDA + 0.3V)
AGND to DGND ..................................................................±0.3V
Digital Inputs to DGND...............................-0.3V, (VDDA + 0.3V)
Digital Outputs to DGND............................-0.3V, (VDDA + 0.3V)
Continuous Power Dissipation (TA = +70°C)
Plastic DIP (derate 10.53mW/°C above +70°C) ............842mW
Wide SO (derate 9.52mW/°C above +70°C)..................762mW
Ceramic SB (derate 10.53mW/°C above +70°C)...........842mW
Operating Temperature Ranges
MAX195_C_E ........................................................0°C to +70°C
MAX195_E_E .....................................................-40°C to +85°C
MAX195_MDE..................................................-55°C to +125°C
Storage Temperature Range .............................-65°C to +160°C
Lead Temperature (soldering, 10sec) .............................+300°C
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
ELECTRICAL CHARACTERISTICS
(VDDD = VDDA = +5V, VSSD = VSSA = -5V, fCLK = 1.7MHz, VREF = +5V, TA = TMIN to TMAX, unless otherwise noted. Typical
values are at TA = +25°C.)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
ACCURACY (Note 1)
Resolution
Differential Nonlinearity
Integral Nonlinearity
RES
DNL
INL
Unipolar/Bipolar Offset Error
16
Bits
MAX195A
±1
MAX195B
±2
MAX195A
±0.003
MAX195B
±0.004
MAX195A, VREF = 4.75V
±3
MAX195B, VREF = 4.75V
±4
Unipolar/Bipolar Offset Tempco
0.4
VREF = 4.75V
±0.0075
Bipolar Full-Scale Error
VREF = 4.75V
±0.018
0.1
Power-Supply Rejection
Ratio (VDDA and VSSA only)
VDDA = 4.75V to 5.25V, VREF = 4.75V
65
VSSA = -5.25V to -4.75V, VREF = 4.75V
65
%FSR
LSB
ppm/°C
Unipolar Full-Scale Error
Full-Scale Tempco
LSB
%FSR
%FSR
ppm/°C
dB
ANALOG INPUT
Unipolar
Input Range
Bipolar
Input Capacitance
0
VREF
-VREF
VREF
Unipolar
250
Bipolar
125
V
pF
DYNAMIC PERFORMANCE (fs = 85kHz, bipolar range AIN = -5V to +5V, 1kHz) (Note 1)
Signal-to-Noise plus Distortion
Ratio (Note 2)
Total Harmonic Distortion (up to
the 5th harmonic) (Note 2)
SINAD
TA = +25°C
THD
TA = +25°C
Peak Spurious Noise (Note 2)
90
-97
TA = +25°C
16 (tCLK)
dB
-90
dB
-90
dB
Conversion Time
tCONV
Clock Frequency
(Notes 3, 4)
fCLK
1.7
MHz
Serial Clock Frequency
fSCLK
5
MHz
2
260
87
9.4
µs
_______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
ELECTRICAL CHARACTERISTICS (continued)
(VDDD = VDDA = +5V, VSSD = VSSA = -5V, fCLK = 1.7MHz, VREF = +5V, TA = TMIN to TMAX, unless otherwise noted. Typical
values are at TA = +25°C.)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
DIGITAL INPUTS (CLK, CS, CONV, RESET, SCLK, BP/UP/SHDN)
CLK, CS, CONV, RESET, SCLK
Input High Voltage
VIH
VDDD = 5.25V
CLK, CS, CONV, RESET, SCLK
Input Low Voltage
VIL
VDDD = 4.75V
2.4
V
CLK, CS, CONV, RESET, SCLK
Input Capacitance (Note 3)
CLK, CS, CONV, RESET, SCLK
Input Current
Digital inputs = 0 or 5V
BP/UP/SHDN
Input High Voltage
VIH
BP/UP/SHDN
Input Low Voltage
VIL
BP/UP/SHDN
Input Current, High
IIH
BP/UP/SHDN = VDDD
BP/UP/SHDN
Input Current, Low
IIL
BP/UP/SHDN = 0V
BP/UP/SHDN
Mid Input Voltage
VIM
BP/UP/SHDN Voltage,
Floating
VFLT
BP/UP/SHDN Max Allowed
Leakage, Mid Input
0.8
V
10
pF
±10
µA
VDDD - 0.5
0.5
V
4.0
µA
-4.0
1.5
µA
VDDD - 1.5
2.75
BP/UP/SHDN = open
BP/UP/SHDN = open
V
-100
V
V
+100
nA
0.4
V
±10
µA
10
pF
DIGITAL OUTPUTS (DOUT, EOC)
Output Low Voltage
VOL
VDDD = 4.75V, ISINK = 1.6mA
Output High Voltage
VOH
VDDD = 4.75V, ISOURCE = 1mA
DOUT Leakage Current
ILKG
DOUT = 0 or 5V
VDDD - 0.5
V
Output Capacitance (Note 2)
POWER REQUIREMENTS
VDDD
4.75
5.25
V
VSSD
-5.25
-4.75
V
V
VDDA
By supply-rejection test
4.75
5.25
VSSA
By supply-rejection test
-5.25
-4.75
V
VDDD Supply Current
IDDD
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V
2.5
4
mA
VSSD Supply Current
ISSD
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V
0.9
2
mA
VDDA Supply Current
IDDA
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V
3.8
5
mA
VSSA Supply Current
ISSA
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V
3.8
5
mA
_______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
3
261
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
ELECTRICAL CHARACTERISTICS (continued)
(VDDD = VDDA = +5V, VSSD = VSSA = -5V, fCLK = 1.7MHz, VREF = +5V, TA = TMIN to TMAX, unless otherwise noted. Typical
values are at TA = +25°C.)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
80
mW
POWER REQUIREMENTS (cont.)
Power Dissipation
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V
VDDD Shutdown Supply Current
(Note 5)
IDDD
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V,
BP/UP/SHDN = 0V
1.6
5
µA
VSSD Shutdown Supply Current
ISSD
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V,
BP/UP/SHDN = 0V
0.1
5
µA
VDDA Shutdown Supply Current
IDDA
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V,
BP/UP/SHDN = 0V
0.1
5
µA
VSSA Shutdown Supply Current
ISSA
VDDD = VDDA = 5.25V, VSSD = VSSA = -5.25V,
BP/UP/SHDN = 0V
0.1
5
µA
Note 1:
Note 2:
Note 3:
Note 4:
Note 5:
Accuracy and dynamic performance tests performed after calibration.
Guaranteed by design, not tested.
Tested with 50% duty cycle. Duty cycles from 25% to 75% at 1.7MHz are acceptable.
See External Clock section.
Measured in shutdown mode with CLK and SCLK low.
TIMING CHARACTERISTICS
(VDDD = VDDA = +5V, VSSD = VSSA = -5V, unless otherwise noted.)
PARAMETER
SYMBOL CONDITIONS
TA = +25°C
TYP
TA = 0°C to
+70°C
MIN
MAX
TA = -40°C to
+85°C
MIN
MAX
TA = -55°C to
+125°C
MIN
MAX
UNITS
CONV Pulse Width
tCW
CONV to CLK Falling
Synchronization (Note 2)
tCC1
10
10
10
ns
CONV to CLK Rising
Synchronization (Note 2)
tCC2
40
40
40
ns
20
30
35
ns
Data Access Time
tDV
CL = 50pF
80
80
90
ns
Bus Relinquish Time
tDH
CL = 10pF
40
40
40
ns
CLK to EOC High
tCEH
CL = 50pF
300
300
350
ns
CLK to EOC Low
tCEL
CL = 50pF
300
300
350
ns
CLK to DOUT Valid
tCD
CL = 50pF
100
350
100
375
100
400
ns
SCLK to DOUT Valid
tSD
CL = 50pF
20
140
20
160
20
160
ns
CS to SCLK Setup Time
tCSS
75
75
75
ns
CS to SCLK Hold Time
tCSH
-10
-10
-10
ns
Acquisition Time
tAQ
2.4
2.4
2.4
µs
Calibration Time
tCAL
8.2
8.2
8.2
ms
14,000 x tCLK
RESET to CLK Setup Time
tRCS
-40
-40
-40
ns
RESET to CLK Hold Time
tRCH
120
120
120
ns
Start-Up Time (Note 6)
tSU
Exiting
shutdown
50
µs
Note 6: Settling time required after deasserting shutdown to achieve less than 0.1LSB additional error.
4
262
_______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
PIN
1
NAME
FUNCTION
Bipolar/Unipolar/Shutdown Input. Three-state input selects bipolar or unipolar input range, or shutdown.
BP/UP/SHDN
0V = shutdown, +5V = unipolar, floating = bipolar.
2
CLK
3
SCLK
Conversion Clock Input
Serial Clock Input is used to shift data out between conversions. May be asynchronous to CLK.
4
VDDD
+5V Digital Power Supply
5
DOUT
Serial Data Output, MSB first
6
DGND
Digital Ground
7
EOC
8
CS
9
CONV
Convert-Start Input—active low. Conversion begins on the falling edge after CONV goes low if the input
signal has been acquired; otherwise, on the falling clock edge after acquisition.
10
RESET
Reset Input. Pulling RESET low places the ADC in an inactive state. Rising edge resets control logic and
begins calibration.
11
VSSD
-5V Digital Power Supply
12
REF
Reference Input, 0 to 5V
13
AIN
Analog Input, 0 to VREF unipolar or ±VREF bipolar range
14
AGND
Analog Ground
15
VSSA
-5V Analog Power Supply
16
VDDA
+5V Analog Power Supply
MAX195
______________________________________________________________Pin Description
End-of-Conversion/Calibration Output—normally low. Rises one clock cycle after the beginning of conversion
or calibration and falls one clock cycle after the end of either. May be used as an output framing signal.
Chip-Select Input—active low. Enables the serial interface and the three-state data output (DOUT).
_______________Detailed Description
The MAX195 uses a successive-approximation register
(SAR) to convert an analog input to a 16-bit digital
code, which outputs as a serial data stream. The data
bits can be read either during the conversion, at the
CLK clock rate, or between conversions asynchronous
with CLK at the SCLK rate (up to 5Mbps).
The MAX195 includes a capacitive digital-to-analog
converter (DAC) that provides an inherent track/hold
input. The interface and control logic are designed for
easy connection to most microprocessors (µPs), limiting
the need for external components. In addition to the
SAR and DAC, the MAX195 includes a serial interface, a
sampling comparator used by the SAR, ten calibration
DACs, and control logic for calibration and conversion.
The DAC consists of an array of 16 capacitors with
binary weighted values plus one “dummy LSB” capacitor (Figure 1). During input acquisition in unipolar
mode, the array’s common terminal is connected to
AGND and all free terminals are connected to the input
signal (AIN). After acquisition, the common terminal is
disconnected from AGND and the free terminals are
disconnected from AIN, trapping a charge proportional
to the input voltage on the capacitor array.
The free terminal of the MSB (largest) capacitor is connected to the reference (REF), which pulls the common
terminal (connected to the comparator) positive.
Simultaneously, the free terminals of all other capacitors in the array are connected to AGND, which drives
the comparator input negative. If the analog input is
near VREF, connecting the MSB’s free terminal to REF
only pulls the comparator input slightly positive.
However, connecting the remaining capacitor’s free terminals to ground drives the comparator input well
below ground, so the comparator input is negative, the
comparator output is low, and the MSB is set high. If
the analog input is near ground, the comparator output
is high and the MSB is low.
Following this, the next largest capacitor is disconnected from AGND and connected to REF, and the comparator determines the next bit. This continues until all
bits have been determined. For a bipolar input range,
the MSB capacitor is connected to REF rather than AIN
during input acquisition, which results in an input range
of VREF to -VREF.
_______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
5
263
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
MSB
LSB
32,768C
16,384C
4C
2C
DUMMY
C
C
AIN
REF
AGND
Figure 1. Capacitor DAC Functional Diagram
tCAL
CLK
tRCH
tRCS
RESET
EOC
CALIBRATION
BEGINS
CALIBRATION
ENDS
MAX195
OPERATION HALTS
Figure 2. Initiating Calibration
Calibration
In an ideal DAC, each of the capacitors associated with
the data bits would be exactly twice the value of the
next smaller capacitor. In practice, this results in a
range of values too wide to be realized in an economically feasible size. The capacitor array actually consists
of two arrays, which are capacitively coupled to reduce
the LSB array’s effective value. The capacitors in the
MSB array are production trimmed to reduce errors.
Small variations in the LSB capacitors contribute
insignificant errors to the 16-bit result.
Unfortunately, trimming alone does not yield 16-bit performance or compensate for changes in performance
due to changes in temperature, supply voltage, and
other parameters. For this reason, the MAX195 includes
a calibration DAC for each capacitor in the MSB array.
These DACs are capacitively coupled to the main DAC
6
264
output and offset the main DAC’s output according to
the value on their digital inputs. During calibration, the
correct digital code to compensate for the error in each
MSB capacitor is determined and stored. Thereafter,
the stored code is input to the appropriate calibration
DAC whenever the corresponding bit in the main DAC
is high, compensating for errors in the associated
capacitor.
The MAX195 calibrates automatically on power-up. To
reduce the effects of noise, each calibration experiment
is performed many times and the results are averaged.
Calibration requires about 14,000 clock cycles, or
8.2ms at the highest clock (CLK) speed (1.7MHz). In
addition to the power-up calibration, bringing RESET
low halts MAX195 operation, and bringing it high again
initiates a calibration (Figure 2).
_______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
tCC1
tCC2
CLK
tCEL
tCEH
EOC
*
CONV
tCW
TRACK/HOLD
tAQ
CONVERSION
ENDS
CONVERSION
BEGINS
* THE FALLING EDGE OF CONV MUST OCCUR IN THIS REGION
Figure 3. Initiating Conversions—At least 3 CLK cycles since end of previous conversion.
If the power supplies do not settle within the MAX195’s
power-on delay (500ns minimum), power-up calibration
may begin with supply voltages that differ from the final
values and the converter may not be properly calibrated. If so, recalibrate the converter (pulse RESET low)
before use. For best DC accuracy, calibrate the
MAX195 any time there is a significant change in supply voltages, temperature, reference voltage, or clock
characteristics (see External Clock section) because
these parameters affect the DC offset. If linearity is the
only concern, much larger changes in these parameters can be tolerated.
Because the calibration data is stored digitally, there is
no need either to perform frequent conversions to maintain accuracy or to recalibrate if the MAX195 has been
held in shutdown for long periods. However, recalibration is recommended if it is likely that ambient temperature or supply voltages have significantly changed
since the previous calibration.
Digital Interface
The digital interface pins consist of BP/UP/SHDN, CLK,
SCLK, EOC, CS, CONV, and RESET.
BP/UP/SHDN is a three-level input. Leave it floating to
configure the MAX195’s analog input in bipolar mode
(AIN = -VREF to VREF) or connect it high for a unipolar
input (AIN = 0V to VREF). Bringing BP/UP/SHDN low
places the MAX195 in its 10µA shutdown mode.
A logic low on RESET halts MAX195 operation. The rising edge of RESET initiates calibration as described in
the Calibration section above.
Begin a conversion by bringing CONV low. After conversion begins, additional convert start pulses are
ignored. The convert signal must be synchronized with
CLK. The falling edge of CONV must occur during the
period shown in Figures 3 and 4. When CLK is not
directly controlled by your processor, two methods of
ensuring synchronization are to drive CONV from EOC
(continuous conversions) or to gate the conversion-start
signal with the conversion clock so that CONV can go
low only while CLK is low (Figure 5). Ensure that the
maximum propagation delay through the gate is less
than 40ns.
The MAX195 automatically ensures four CLK periods
for track/hold acquisition. If, when CONV is asserted, at
least three clock (CLK) cycles have passed since the
end of the previous conversion, a conversion will begin
on CLK’s next falling edge and EOC will go high on the
following falling CLK edge (Figure 3). If, when convert
is asserted, less than three clock cycles have passed,
a conversion will begin on the fourth falling clock edge
_______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
7
265
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
tCC1
tCC2
CLK
tCEL
tCEH
EOC
*
CONV
tCW
tAQ
TRACK/HOLD
CONVERSION
ENDS
CONVERSION
BEGINS
* THE FALLING EDGE OF CONV MUST OCCUR IN THIS REGION
Figure 4. Initiating Conversions—Less than 3 CLK cycles since end of previous conversion.
after the end of the previous conversion and EOC will
go high on the following CLK falling edge (Figure 4).
External Clock
The conversion clock (CLK) should have a duty cycle
between 25% and 75% at 1.7MHz (the maximum clock
frequency). For lower frequency clocks, ensure the minimum high and low times exceed 150ns. The minimum
clock rate for accurate conversion is 125Hz for temperatures up to +70°C or 1kHz at +125°C due to leakage
of the sampling capacitor array. In addition, CLK
should not remain high longer than 50ms at temperatures up to +70°C or 500µs at +125°C. If CLK is held
high longer than this, RESET must be pulsed low to initiate a recalibration because it is possible that state
information stored in internal dynamic memory may be
lost. The MAX195’s clock can be stopped indefinitely if
it is held low.
If the frequency, duty cycle, or other aspects of the
clock signal’s shape change, the offset created by coupling between CLK and the analog inputs (AIN and
REF) changes. Recalibration corrects for this offset and
restores DC accuracy.
Output Data
The conversion result, clocked out MSB first, is available on DOUT only when CS is held low. Otherwise,
DOUT is in a high-impedance state. There are two ways
to read the data on DOUT. To read the data bits as they
are determined (at the CLK clock rate), hold CS low
during the conversion. To read results between conversions, hold CS low and clock SCLK at up to 5MHz.
If you read the serial data bits as they are determined,
EOC frames the data bits (Figure 6). Conversion begins
with the first falling CLK edge, after CONV goes low
and the input signal has been acquired. Data bits are
shifted out of DOUT on subsequent falling CLK edges.
Clock data in on CLK’s rising edge or, if the clock
speed is greater than 1MHz, on the following falling
edge of CLK to meet the maximum CLK-to-DOUT timing specification. See the Operating Modes and
SPI™/QSPI™ Interfaces section for additional information. Reading the serial data during the conversion
results in the maximum conversion throughput,
because a new conversion can begin immediately after
the input acquisition period following the previous conversion.
SPI/QSPI are trademarks of Motorola Corp.
8
266
_______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
START
MAX195
CONV
CLK
START
CLK
CONV
SEE DIGITAL INTERFACE SECTION
Figure 5. Gating CONV to Synchronize with CLK
CS
CONV
tCW
CLK
(CASE 1)
CLK
(CASE 2)
tCEH
tCEL
EOC
tCD
tDV
DOUT
B15 FROM PREVIOUS
CONVERSION
B15
B14
B13
B12
B2
B1
MSB
B0
LSB
CONVERSION
BEGINS
B15
tDH
CONVERSION
ENDS
CASE 1: CLK IDLES LOW, DATA LATCHED ON RISING EDGE (CPOL = 0, CPHA = 0)
CASE 2: CLK IDLES LOW, DATA LATCHED ON FALLING EDGE (CPOL = 0, CPHA = 1)
NOTE: ARROWS ON CLK TRANSITIONS INDICATE LATCHING EDGE
Figure 6. Output Data Format, Reading Data During Conversion (Mode 1)
If you read the data bits between conversions, you can:
1) count CLK cycles until the end of the conversion, or
2) poll EOC to determine when the conversion is
finished, or
3) generate an interrupt on EOC’s falling edge.
Note that the MSB conversion result appears at DOUT
after CS goes low, but before the first SCLK pulse.
Each subsequent SCLK pulse shifts out the next conversion bit. The 15th SCLK pulse shifts out the LSB.
Additional clock pulses shift out zeros.
_______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
9
267
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
tCONV
EOC
tCSS
CS
tCSH
SCLK
(CASE 1)
SCLK
(CASE 2)
SCLK
(CASE 3)
B15
DOUT
B14
B13
B12
B11
MSB
tDV
B3
B2
B1
B0
LSB
tSD
tDH
CASE 1: SCLK IDLES LOW, DATA LATCHED ON RISING EDGE (CPOL = 0, CPHA = 0)
CASE 2: SCLK IDLES LOW, DATA LATCHED ON FALLING EDGE (CPOL = 0, CPHA = 1)
CASE 3: SCLK IDLES HIGH, DATA LATCHED ON FALLING EDGE (CPOL = 1, CPHA = 0)
NOTE: ARROWS ON SCLK TRANSITIONS INDICATE LATCHING EDGE
Figure 7. Output Data Format, Reading Data Between Conversions (Mode 2)
+5V
-5V
0.1μF
10μF
1
2
CONVERSION
CLOCK
3
4
5
6
7
8
0.1μF
BP/UP/
SHDN
VDDA
CLK
VSSA
SCLK MAX195 AGND
VDDD
AIN
DOUT
REF
DGND
VSSD
EOC
RESET
CS
CONV
10μF
16
15
14
13
ANALOG
INPUT
12
11
REFERENCE
(0V TO VDDA)
10
9
Figure 8. MAX195 in the Simplest Operating Configuration
10
268
Data is clocked out on SCLK’s falling edge. Clock
data in on SCLK’s rising edge or, for clock speeds
above 2.5MHz, on the following falling edge to meet
the maximum SCLK-to-DOUT timing specification
(Figure 7). The maximum SCLK speed is 5MHz. See
the Operating Modes and SPI/QSPI Interfaces section
for additional information. When the conversion clock
is near its maximum (1.7MHz), reading the data after
each conversion (during the acquisition time) results
in lower throughput (about 70ksps max) than reading
the data during conversions, because it takes longer
than the minimum input acquisition time (four cycles
at 1.7MHz) to clock 16 data bits at 5Mbps. After the
data has been clocked in, leave some time (about
1µs) for any coupled noise on AIN to settle before
beginning the next conversion.
Whichever method is chosen for reading the data, conversions can be individually initiated by bringing CONV
low, or they can occur continuously by connecting EOC
to CONV. Figure 8 shows the MAX195 in its simplest
operational configuration.
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
Table 1. Low-ESR Capacitor Suppliers
COMPANY
CAPACITOR
FACTORY FAX [COUNTRY CODE]
USA TELEPHONE
Sprague
595D series,
592D series
1-603-224-1430
603-224-1961
AVX
TPS series
1-207-283-1941
800-282-4975
Sanyo
OS-CON series,
MVGX series
81-7-2070-1174
619-661-6835
Nichicon
PL series
1-708-843-2798
708-843-7500
+5V
BRIDGE
INSTRUMENTATION
AMPLIFIER
VDDA
AIN
MAX195
REF
47μF
LOW ESR
0.1μF
CERAMIC
AGND
Figure 9. Ratiometric Measurement Without an Accurate Reference
__________Applications Information
Reference
The MAX195 reference voltage range is 0V to VDDA.
When choosing the reference voltage, the MAX195’s
equivalent input noise (40µV RMS in unipolar mode,
80µVRMS in bipolar mode) should be considered. Also, if
VREF exceeds VDDA, errors will occur due to the internal
protection diodes that will begin to conduct, so use caution when using a reference near VDDA (unless VREF
and VDDA are virtually identical). V REF must never
exceed its absolute maximum rating (VDDA + 0.3V).
The MAX195 needs a good reference to achieve its
rated performance. The most important requirement is
that the reference must present a low impedance to the
REF input. This is often achieved by buffering the reference through an op amp and bypassing the REF input
with a large (1µF to 47µF), low-ESR capacitor in parallel
with a 0.1µF ceramic capacitor. Low-ESR capacitors
are available from the manufacturers listed in Table 1.
The reference must drive the main conversion DAC
capacitors as well as the capacitors in the calibration
DACs, all of which may be switching between GND and
REF at the conversion clock frequency. The total
capacitive load presented can exceed 1000pF and,
unlike the analog input (AIN), REF is sampled continuously throughout the conversion.
The first step in choosing a reference circuit is to
decide what kind of performance is required. This often
suggests compromises made in the interests of cost
and size. It is possible that a system may not require an
accurate reference at all. If a system makes a ratiometric measurement such as Figure 9’s bridge circuit, any
relatively noise-free voltage that presents a low impedance at the REF input will serve as a reference. The
+5V analog supply suffices if you use a large, lowimpedance bypass capacitor to keep REF stable during switching of the capacitor arrays. Do not place a
resistance between the +5V supply and the bypass
capacitor, because it will cause linearity errors due to
the dynamic REF input current, which typically ranges
from 300µA to 400µA.
Figure 10 shows a more typical scheme that provides
good AC accuracy. The MAX874’s initial accuracy can
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
11
269
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
+15V
+5V
0.1μF
2
0.1μF
1k
VIN
16
VDDA
2k
COMP
2
6
0.1μF
7
1000pF
MAX874
VOUT
1N914
8
4.096V
3
12
MAX427
REF
10Ω
47μF
LOW ESR
4
0.1μF
GND
MAX195
10Ω
6
0.1μF
1N914
VSSA
AGND
15
14
0.1μF
4
-15V
-5V
Figure 10. Typical Reference Circuit for AC Accuracy
VIN ≥ 8V
2
IN
MAX6241
OUT
12
6
MAX195
REF
2.2μF
3
1μF
TRIM
NR
5
GND
4
10k
2.2μF
0.1μF
AGND
14
Figure 11. High-Accuracy Reference
be improved by trimming, but the drift is too great to
provide good stability over temperature. The MAX427
buffer provides the necessary drive current to stabilize
the REF input quickly after capacitance changes.
The reference inaccuracies contribute additional fullscale error. A reference with less than 1⁄216 total error
(15 parts per million) over the operating temperature
range is required to limit the additional error to less
than 1LSB. The MAX6241 achieves a drift specification
12
270
of 1ppm/°C (typ). This allows reasonable temperature
changes with less than 1LSB error. While the
MAX6241’s initial-accuracy specification (0.02%)
results in an offset error of about ±14LSB, the reference
voltage can be trimmed or the offset can be corrected
in software if absolute DC accuracy is essential. Figure
11’s circuit provides outstanding temperature stability
and also provides excellent DC accuracy if the initial
error is corrected.
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
+5V
+15V
VDDA
MAX195
10Ω
AIN
INPUT
SIGNAL
1N914
DIODE
CLAMPS
VSSA
-15V
-5V
Figure 12. Analog Input Protection for Overvoltage or Improper Supply Sequence
REF and AIN Input Protection
The REF and AIN signals should not exceed the
MAX195 supply rails. If this can occur, diode clamp the
signal to the supply rails. Use silicon diodes and a 10Ω
current-limiting resistor (Figures 10 and 12) or Schottky
diodes without the resistor.
When using the current-limiting resistor, place the resistor between the appropriate input (AIN or REF) and any
bypass capacitor. While this results in AC transients at
the input due to dynamic input currents, the transients
settle quickly and do not affect conversion results.
Improperly placing the bypass capacitor directly at the
input forms an RC lowpass filter with the current-limiting
resistor, which averages the dynamic input current and
causes linearity errors.
Analog Input
The MAX195 uses a capacitive DAC that provides an
inherent track/hold function. The input impedance is
typically 30Ω in series with 250pF in unipolar mode and
50Ω in series with 125pF in bipolar mode.
Input Range
The analog input range can be either unipolar (0V to
VREF) or bipolar (-VREF to VREF), depending on the
state of the BP/UP/SHDN pin (see Digital Interface section). The reference range is 0V to VDDA. When choosing the reference voltage, the equivalent MAX195 input
noise (40µVRMS in unipolar mode, 80µVRMS in bipolar
mode) should be considered.
Input Acquisition and Settling
Four conversion-clock periods are allocated for acquiring the input signal. At the highest conversion rate, four
clock periods is 2.4µs. If more than three clock cycles
have occurred since the end of the previous conversion, conversion begins on the next falling clock edge
after CONV goes low. Otherwise, bringing CONV low
begins a conversion on the fourth falling clock edge
after the previous conversion. This scheme ensures the
minimum input acquisition time is four clock periods.
Most applications require an input buffer amplifier. If
the input signal is multiplexed, the input channel should
be switched near the beginning of a conversion, rather
than near the end of or after a conversion (Figure 13).
This allows time for the input buffer amplifier to respond
to a large step change in input signal. The input amplifier must have a high enough slew rate to complete the
required output voltage change before the beginning of
the acquisition time.
At the beginning of acquisition, the capacitive DAC is
connected to the amplifier output, causing some output
disturbance. Ensure that the sampled voltage has settled to within the required limits before the end of the
acquisition time. If the frequency of interest is low, AIN
can be bypassed with a large enough capacitor to
charge the capacitive DAC with very little change in
voltage (Figure 14). However, for AC use, AIN must be
driven by a wideband buffer (at least 10MHz), which
must be stable with the DAC’s capacitive load (in parallel with any AIN bypass capacitor used) and also must
settle quickly (Figure 15 or 16).
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
13
271
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
IN1
IN2
A0
A1
MAX195
4-TO-1
MUX
IN3
AIN
OUT
IN4
EOC
CLK
CONVERSION
ACQUISITION
EOC
A0
A1
CHANGE MUX INPUT HERE
Figure 13. Change multiplexer input near beginning of conversion to allow time for slewing and settling.
1k
+5V
+15V
0.1μF
2
1000pF
1N914
7
10Ω
6
IN
AIN
3 MAX400
100Ω
4
1N914
0.1μF
-15V
1.0μF
-5V
Figure 14. MAX400 Drives AIN for Low-Frequency Use
14
272
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
ing. Also, to reduce linearity errors due to finite amplifier
gain, use an amplifier circuit with sufficient loop gain at
the frequencies of interest (Figures 14, 15, 16).
DC Accuracy
If DC accuracy is important, choose a buffer with an
offset much less than the MAX195’s maximum offset
(±3LSB = ±366µV for a ±4V input range), or whose
offset can be trimmed while maintaining good stability
over the required temperature range.
MAX195
Digital Noise
Digital noise can easily be coupled to AIN and REF. The
conversion clock (CLK) and other digital signals that are
active during input acquisition contribute noise to the conversion result. If the noise signal is synchronous to the
sampling interval, an effective input offset is produced.
Asynchronous signals produce random noise on the input,
whose high-frequency components may be aliased into
the frequency band of interest. Minimize noise by presenting a low impedance (at the frequencies contained in the
noise signal) at the inputs. This requires bypassing AIN to
AGND, or buffering the input with an amplifier that has a
small-signal bandwidth of several megahertz, or preferably both. AIN has a bandwidth of about 16MHz.
Recommended Circuits
Figure 14 shows a good circuit for DC and low-frequency use. The MAX400 has very low offset (10µV) and
drift (0.2µV/°C), and low voltage noise (10nV/√Hz) as
well. However, its gain-bandwidth product (GBW) is
much too low to drive AIN directly, so the analog input
is bypassed to present a low impedance at high frequencies. The large bypass capacitor is isolated from
the amplifier output by a 100Ω resistor, which provides
additional noise filtering. Since the ±15V supplies
exceed the AIN range, add protection diodes at AIN
(see REF and AIN Input Protection section).
Figure 15 shows a wide-bandwidth amplifier (MAX427)
driving a wideband video buffer, which is capable of
driving AIN and a small bypass capacitor (for noise
reduction) directly. The video buffer is inside the
MAX427’s feedback loop, providing good DC accuracy, while the buffer’s low output impedance and highcurrent capability provide good AC performance. AIN is
diode-clamped to the ±5V rails to prevent overvoltage.
The MAX427’s 15µV maximum offset voltage, 0.8µV/°C
maximum drift, and less than 5nV/√Hz noise specifications make this an excellent choice for AC/DC use.
Offsets resulting from synchronous noise (such as the
conversion clock) are canceled by the MAX195’s calibration scheme. However, because the magnitude of
the offset produced by a synchronous signal depends
on the signal’s shape, recalibration may be appropriate
if the shape or relative timing of the clock or other digital signals change, as might occur if more than one
clock signal or frequency is used.
Distortion
Avoid degrading dynamic performance by choosing an
amplifier with distortion much less than the MAX195’s
THD (-97dB, or 0.0014%) at frequencies of interest. If
the chosen amplifier has insufficient common-mode
rejection, which results in degraded THD performance,
use the inverting configuration (positive input grounded) to eliminate errors from this source. Low temperature-coefficient, gain-setting resistors reduce linearity
errors caused by resistance changes due to self-heat-
1k
0.1μF
2
100pF
0.1μF
7
1N914
1
2
6
IN
+5V
+15V
+15V
3 MAX427
1k
ELANTEC
EL2003
10Ω
7
AIN
4
4
0.1μF
-15V
1N914
0.0033μF
0.1μF
-15V
-5V
Figure 15. AIN Buffer for AC/DC Use
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
15
273
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
If ±15V supplies are unavailable, Figure 16’s circuit
works very well with the ±5V analog supplies used by
the MAX195. The MAX410 has a minimum ±3.5V common-mode input range, with a similar output voltage
swing, which allows use of a reference voltage up to
3.5V. The offset voltage (250µV) is about 2LSB. The
drift (1µV/°C), unity-gain bandwidth (28MHz), and low
voltage noise (2.4nV/√Hz) are appropriate for 16-bit
performance.
510Ω
+5V
0.1μF
2
7
22Ω
6
IN
AIN
3 MAX410
4
0.01μF
0.1μF
-5V
Figure 16. ±5V Buffer for AC/DC Use Has ±3.5V Swing
QSPI
PCS0
CS
CONV
SCK
MISO
CLK MAX195
DOUT
SCLK
GPT
*OC3
*IC1
*OC2
BP/UP/SHDN
EOC
RESET
* THE USE OF THESE SIGNALS ADDS FLEXIBILITY AND FUNCTIONALITY
BUT IS NOT REQUIRED TO IMPLEMENT THE INTERFACE.
Figure 17. MAX195 Connection to QSPI Processor Clocking
Data Out During Conversions
16
274
Operating Modes and SPI/QSPI Interfaces
The two basic interface modes are defined according
to whether serial data is received during the conversion
(clocked with CLK, SCLK unused) or in bursts between
conversions (clocked with SCLK). Each mode is presented interfaced to a QSPI processor, but is also compatible with SPI.
Mode 1 (Simultaneous
Conversion and Data Transfer)
In this mode, each data bit is read from the MAX195
during the conversion as it is determined. SCLK is
grounded and CLK is used as both the conversion
clock and the serial data clock. Figure 17 shows a
QSPI processor connected to the MAX195 for use in
this mode and Figure 18 is the associated timing diagram.
In addition to the standard QSPI interface signals, general I/O lines are used to monitor EOC and to drive
BP/UP/SHDN and RESET. The two general output pins
may not be necessary for a given application and, if I/O
lines are unavailable, the EOC connection can be omitted as well.
The EOC signal is monitored during calibration to
determine when calibration is finished and before
beginning a conversion to ensure the MAX195 is not in
mid-conversion, but it is possible for a system to ignore
EOC completely. On power-up or after pulsing RESET
low, the µP must provide 14,000 CLK cycles to complete the calibration sequence (Figure 2). One way to
do this is to toggle CLK and monitor EOC until it goes
low, but it is possible to simply count 14,000 CLK
cycles to complete the calibration. Similarly, it is
unnecessary to check the status of EOC before beginning a conversion if you are sure the last conversion is
complete. This can be done by ensuring that every
conversion consists of at least 20 CLK cycles.
Data is clocked out of the MAX195 on CLK’s falling
edge and can be clocked into the µP on the rising
edge or the following falling edge. If you clock data in
on the rising edge (SPI/QSPI with CPOL = 0 and CPHA
= 0; standard MicroWire™: Hitachi H8), the maximum
CLK rate is given by:
⎛
⎞
1
fCLK(max) = 1/ 2 ⎜
⎟
⎝ t CD + t SD ⎠
where tCD is the MAX195’s CLK-to-DOUT valid delay
and tSD is the data setup time for your µP.
MicroWire is a trademark of National Semiconductor Corp.
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
CS, CONV
CLK
EOC
B15 FROM PREVIOUS
CONVERSION
DOUT
B15
tDV
B14
B2
B1
B0
B15
tDH
tCD
DATA LATCHED:
Figure 18. Timing Diagram for Circuit of Figure 17 (Mode 1)
If clocking data in on the falling edge (CPOL = 0,
CPHA = 1), the maximum CLK rate is given by:
1
fCLK(max) =
t CD + t SD
QSPI
PCS0
GPT
Do not exceed the maximum CLK frequency given in
the Electrical Characteristics table. To clock data in on
the falling edge, your processor hold time must not
exceed tCD minimum (100ns).
While QSPI can provide the required 20 CLK cycles as
two continuous 10-bit transfers, SPI is limited to 8-bit
transfers. This means that with SPI, a conversion must
consist of three 8-bit transfers. Ensure that the pauses
between 8-bit operations at your selected clock rate
are short enough to maintain a 20ms or shorter conversion time, or the leakage of the capacitive DAC may
cause errors.
Complete source code for the Motorola 68HC16 and
the MAX195 evaluation kit (EV kit) using this mode is
available with the MAX195 EV kit.
CS
SCK
SCLK
MISO
DOUT
OC3
MAX195
BP/UP/SHDN
IC1
EOC
OC2
RESET
CONV
IC3
CLK
74HC32
1.7MHz
1.3μs
START
Figure 19. MAX195 Connection to QSPI Processor Clocking
Data Out with SCLK Between Conversions
Mode 2 (Asynchronous Data Transfer)
This mode uses a conversion clock (CLK) and a serial
clock (SCLK). The serial data is clocked out between
conversions, which reduces the maximum throughput
for high CLK rates, but may be more convenient for
some applications. Figure 19 is a block diagram with a
QSPI processor (Motorola 68HC16) connected to the
MAX195. Figure 20 shows the associated timing diagram. Figure 21 gives an assembly language listing for
this arrangement.
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
17
275
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
588ns
CLK
START
EOC
CS
239ns
4.19MHz
SCLK
B15
DOUT
1.3μs
CONVERSION TIME
9.4μs
17μs*
B14 B13
B3 B2
5.1μs
B1
B0
4μs
* INTERRUPT LATENCY OF THE PROCESSOR
Figure 20. Timing Diagram for Circuit of Figure 19 (Mode 2)
An OR gate is used to synchronize the “start” signal to
the asynchronous CLK, as described in the External
Clock section. As with Mode 1, the QSPI processor must
run CLK during calibration and either count CLK cycles
or, as is done here, monitor EOC to determine when calibration is complete. Also, EOC is polled by the µP to
determine when a conversion result is available. When
EOC goes low, data is clocked out at the highest QSPI
data rate (4.19Mbps). After the data is transferred, a
new conversion can be initiated whenever desired.
The timing specification for SCLK-to-DOUT valid (tSD)
imposes some constraints on the serial interface. At
SCLK rates up to 2.5Mbps, data is clocked out of the
MAX195 by a falling edge of SCLK and may be
clocked into the µP by the next rising edge (CPOL = 0,
CPHA = 0). For data rates greater than 2.5Mbps (or for
lower rates, if desired) it is necessary to clock data out
of the MAX195 on SCLK’s falling edge and to clock it
into the µP on SCLK’s next falling edge (CPOL = 0,
CPHA = 1). Also, your processor hold time must not
exceed tSD minimum (20ns). As with CLK in mode 1,
maximum SCLK rates may not be possible with some
interface specifications that are subsets of SPI.
18
276
Supplies, Layout, Grounding
and Bypassing
For best system performance, use printed circuit
boards with separate analog and digital ground planes.
Wire-wrap boards are not recommended. The two
ground planes should be tied together at the lowimpedance power-supply source and at the MAX195
(Figure 22.) If the analog and digital supplies come
from the same source, isolate the digital supply from
the analog supply with a low-value resistor (10Ω).
Constraints on sequencing the four power supplies are
as follows.
• Apply VDDA before VDDD.
• Apply VSSA before VSSD.
• Apply AIN and REF after VDDA and VSSA are present.
• The power supplies should settle within the
MAX195’s power-on delay (minimum 500ns) or you
should recalibrate the converter (pulse RESET low)
before use.
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
Figure 21. MAX195 Code Listing for 68HC16 Module and Circuit of Figure 19
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
19
277
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
Figure 21. MAX195 Code Listing for 68HC16 Module and Circuit of Figure 19 (continued)
20
278
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
Figure 21. MAX195 Code Listing for 68HC16 Module and Circuit of Figure 19 (continued)
Be sure that digital return currents do not pass through
the analog ground and that return-current paths are low
impedance. A 5mA current flowing through a PC board
ground trace impedance of only 0.05Ω creates an error
voltage of about 250µV, or about 2LSBs error with a
±4V full-scale system.
The board layout should ensure as much as possible
that digital and analog signal lines are kept separate.
Do not run analog and digital (especially clock) lines
parallel to one another. If you must cross one with the
other, do so at right angles.
The ADC’s high-speed comparator is sensitive to highfrequency noise on the VDDA and VSSA power supplies. Bypass these supplies to the analog ground
plane with 0.1µF in parallel with 1µF or 10µF low-ESR
capacitors. Keep capacitor leads short for best supplynoise rejection.
Shutdown
The MAX195 may be shut down by pulling BP/UP/
SHDN low. In addition to lowering power dissipation to
10µW (100µW max) when the device is not in use, you
can save considerable power by shutting the converter
down for short periods between conversions. There is
no need to perform a reset (calibration) after the converter has been shut down unless the time in shutdown
is long enough that the supply voltages or ambient temperature may have changed.
The time required for the converter to “wake up” and
settle depends heavily on the amount of additional error
acceptable. For 0.5LSB additional error, 3.2µs is sufficient settling time and also allows enough time for reacquisition of the analog input signal. 50µs settling is
required for less than 0.1LSB error. Figure 23 is a
graph of theoretical power consumption vs. conversions per second for the MAX195 that assumes the
conversion clock is 1.7MHz and the converter is shut
down as much as possible between conversions.
Stop CLK before shutting down the MAX195. CLK must
be stopped without generating short clock pulses. Short
CLK pulses (less than 150ns), or shutting down the
MAX195 without stopping CLK, may adversely affect the
MAX195’s internal calibration data. In applications
where CLK is free-running and asynchronous, use the
circuit of Figure 24 to stop CLK cleanly.
To minimize the time required to settle and perform a
conversion, shut the converter down only after a conversion is finished and the desired mode (unipolar or
bipolar) has been set. This ensures that the sampling
capacitor array is properly connected to the input signal. If shut down in mid-conversion, when awakened,
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
21
279
A – Devices Data Sheets
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
10Ω
VDDD
0.1μF
MAX195
0.1μF
10μF
DGND
AGND
10μF
5V
0.1μF
10μF
POWER DISSIPATION (mW)
5V
MAX195-FIG23
100
50μs WAKE-UP DELAY
0.01LSB ERROR
VDDA
10μF
10
20μs WAKE-UP DELAY
0.25LSB ERROR
1
0.1
3.2μs WAKE-UP DELAY
0.5LSB ERROR
0.1μF
VSSA
0.01
1
VSSD
10
100
1000
10,000 100,000
CONVERSIONS PER SECOND
10Ω
Figure 22. Supply Bypassing and Grounding
Figure 23. Power Dissipation vs. Conversions/sec When
Shutting the MAX195 Down Between Conversions
the MAX195 finishes the old conversion, allows four
clock (CLK) cycles for input acquisition, then begins
the new conversion.
The theoretical minimum ADC noise is caused by quantization error and is a direct result of the ADC’s resolution: SNR = (6.02N + 1.76)dB, where N is the number
of bits of resolution. A perfect 16-bit ADC can, therefore, do no better than 98dB. An FFT plot of the output
shows the output level in various spectral bands. Figure
25 shows the result of sampling a pure 1kHz sinusoid at
85ksps with the MAX195.
By transposing the equation that converts resolution to
SNR, we can, from the measured SNR, determine the
effective resolution or the “effective number of bits” the
ADC provides: N = (SNR - 1.76) / 6.02. Substituting
SINAD for SNR in this formula results in a better measure of the ADC’s usefulness. Figure 26 shows the
effective number of bits as a function of the MAX195’s
input frequency calculated from the SINAD.
If your intended sample rate is much lower than the
MAX195’s maximum of 85ksps, you can improve your
noise performance by taking more samples than necessary (oversampling) and averaging them in software.
Figure 27 is a histogram showing 16,384 samples for
the MAX195 without averaging, with an ideal “noiseless
conversion,” and with a running average of five samples. The standard deviation is 0.621LSB without averaging and 0.382LSB with the running average. If fewer
data points are needed, normal averaging (e.g., five
data points averaged to produce one data point) can be
used instead of a running average, with similar results.
_____________Dynamic Performance
High-speed sampling capability, 85ksps throughput,
and wide dynamic range make the MAX195 ideal for
AC applications and signal processing. To support
these and other related applications, Fast Fourier
Transform (FFT) test techniques are used to guarantee
the ADC’s dynamic frequency response, distortion, and
noise at the rated throughput. Specifically, this involves
applying a low-distortion sine wave to the ADC input
and recording the digital conversion results for a
specified time. The data is then analyzed using an FFT
algorithm, which determines its spectral content.
Conversion errors are then seen as spectral elements
other than the fundamental input frequency.
Signal-to-Noise Ratio and
Effective Number of Bits
Signal-to-Noise Ratio (SNR) is the ratio between the
RMS amplitude of the fundamental input frequency to
the RMS amplitude of all other ADC output signals. The
output band is limited to frequencies above DC and
below one-half the ADC sample rate. This usually (but
not always) includes distortion as well as noise components. For this reason, the ratio is sometimes referred to
as Signal-to-Noise + Distortion (SINAD).
22
280
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
MAX195
1/2 74HC73
MAX195
J
CLOCK SHUTDOWN
Q
CLK
K
+5V
BP/UP/SHDN
CK
2 x CLK
CK
(2 x CLK)
Q
(CLK)
J
(CLOCK SHUTDOWN)
Figure 24. Circuit to Stop Free-Running Asynchronous CLK
Even better than oversampling and averaging is oversampling and digital filtering. Averaging is just a rough
(but computationally simple) type of digital filter. Finite
impulse response (and other) digital filter algorithms are
readily available, and are useful even with slow processors if the data rate is low or the data does not need to
be processed in real-time. When using averaging, be
sure to average an odd number of samples to avoid
small offset errors caused by asymmetrical rounding.
SIGNAL AMPLITUDE (dB)
-10
fIN = 1kHz
fS = 85kHz
TA = +25°C
-30
-50
-70
-90
-110
-130
-150
0
5
10
15
20
25
FREQUENCY (kHz)
Figure 25. MAX195 FFT Plot
30
35
40
Whether simple averaging or more complex digital filtering is used, the effect of oversampling is to spread
the noise across a wider bandwidth. Digital filtering or
averaging then eliminates the portion of this noise that
lies above the filter’s passband, leaving less noise in
the passband than if oversampling was not used. An
additional benefit of oversampling is that it simplifies
the design or choice of an anti-aliasing pre-filter for the
input. You can use a filter with a more gradual rolloff,
because the sample rate is much higher than the frequency of interest.
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
23
281
A – Devices Data Sheets
fS = 85kHz
TA = +25°C
15
100
MAX195-26
16
MAX195-28
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
fS = 85kHz
TA = +25°C
95
SINAD (dB)
EFFECTIVE BITS
90
14
13
12
85
80
75
70
11
65
10
0.1
60
1
10
100
0.1
FREQUENCY (kHz)
16
IDEAL
CONVERSION
14
VREF = +4.5V
VAIN = +2.25V
UNIPOLAR MODE
85ksps
MAX195 FG27
OCCURRENCES OF OUTPUT CODE (THOUSANDS)
100
This is expressed as follows:
18
12
10
8
6
NO AVERAGING
RUNNING
AVERAGE OF
5 SAMPLES
4
2
0
8021 8022 8023 8024 8025 8026 8027
OUTPUT CODE (HEXADECIMAL)
Figure 27. Histogram of 16,384 Conversions Shows Effects of
Noise and Averaging
Total Harmonic Distortion
If a pure sine wave is input to an ADC, AC integral nonlinearity (INL) of an ADC’s transfer function results in
harmonics of the input frequency being present in the
sampled output data.
Total Harmonic Distortion (THD) is the ratio of the RMS
sum of all the harmonics (in the frequency band above
DC and below one-half the sample rate, but not including the DC component) to the RMS amplitude of the
fundamental frequency.
282
10
Figure 28. Signal-to-Noise + Distortion vs. Frequency
Figure 26. Effective Bits vs. Input Frequency
24
1
FREQUENCY (kHz)
THD = 20log
⎛ V22 + V32 + V4 2 + ...+ V 2 ⎞
N ⎠
⎝
V1
where V1 is the fundamental RMS amplitude, and V 2
through VN are the amplitudes of the 2nd through Nth
harmonics. The THD specification in the Electrical
Characteristics includes the 2nd through 5th harmonics. In the MAX195, this distortion is caused primarily
by the changes in on-resistance of the AIN sampling
switches with changing input voltage. These resistance changes, together with the DAC’s capacitance
(which can also vary with input voltage), cause a
varying time delay for AC signals, which causes significant distortion at moderately high frequencies
(Figure 28).
Spurious-Free Dynamic Range
Spurious-free dynamic range is the ratio of the fundamental RMS amplitude to the amplitude of the next
largest spectral component (in the frequency band
above DC and below one-half the sample rate).
Usually, this peak occurs at some harmonic of the input
frequency. However, if the ADC is exceptionally linear,
it may occur only at a random peak in the ADC’s noise
floor.
Transfer Function
Figures 29 and 30 show the MAX195’s transfer functions. In unipolar mode, the output data is in binary format and in bipolar mode it is offset binary.
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
11 . . . 111
11 . . . 110
11 . . . 101
11 . . . 100
11 . . . 011
11 . . . 010
BP/UP/SHDN
VSSA
CLK
VDDA
SCLK
AGND
00 . . . 110
00 . . . 101
00 . . . 100
00 . . . 011
00 . . . 010
00 . . . 001
00 . . . 000
MAX195
___________________Chip Topography
AIN
REF
VREF - (1LSB)
0V
0.273"
(6.93mm)
VDDD
Figure 29. MAX195 Unipolar Transfer Function
DOUT
11 . . . 111
11 . . . 110
11 . . . 101
DGND
VSSD
EOC
10 . . . 010
10 . . . 001
10 . . . 000
01 . . . 111
01 . . . 110
CS
CONV
RESET
0.144"
(3.66mm)
TRANSISTOR COUNT: 7966
SUBSTRATE CONNECTED TO VDDA
00 . . . 010
00 . . . 001
00 . . . 000
-VREF
0V
VREF - (1LSB)
Figure 30. MAX195 Bipolar Transfer Function
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
25
283
A – Devices Data Sheets
________________________________________________________Package Information
PDIPN.EPS
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
26
284
______________________________________________________________________________________
PN: 071-0961-00, January 2008
16-Bit, 85ksps ADC with 10µA Shutdown
SOICW.EPS
______________________________________________________________________________________
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
MAX195
___________________________________________Package Information (continued)
27
285
A – Devices Data Sheets
___________________________________________Package Information (continued)
SBN.EPS
MAX195
16-Bit, 85ksps ADC with 10µA Shutdown
Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are
implied. Maxim reserves the right to change the circuitry and specifications without notice at any time.
28 ____________________Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600
© 1998 Maxim Integrated Products
286
Printed USA
is a registered trademark of Maxim Integrated Products.
PN: 071-0961-00, January 2008
B
Loadboard Schematic Extracts
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
287
B – Loadboard Schematic Extracts
288
PN: 071-0961-00, January 2008
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
289
B – Loadboard Schematic Extracts
Notes
290
PN: 071-0961-00, January 2008
C
VHDM Connector Pinouts
Figure 99. DD1096-16 VHDM Connector Pinout
DUT B Connector
Pin
A
B
GND
1
N/C
GND
N/C
GND
2
CH 90
CH 78
CH 79
5
CH 72
CH 73
GND
6
CH 66
CH 67
GND
7
CH 60
CH 61
GND
8
CH 54
CH 55
GND
9
CH 48
CH 49
GND
10
SCOPE TP4
N/C
A
B
C
CH 65
GND
CH 58
GND
CH 51
GND
SCOPE TP3
CH 64
CH 57
CH 50
CH 71
GND
GND
GND
GND
CH 70
CH 63
CH 56
CH 77
GND
GND
GND
GND
CH 76
CH 69
CH 62
CH 83
GND
GND
GND
GND
CH 82
CH 75
CH 68
CH 89
GND
GND
GND
GND
CH 88
CH 81
CH 74
CH 95
GND
GND
GND
GND
CH 94
CH 87
CH 80
GND SENSE F
GND
GND
GND
GND
N/C
CH 93
CH 86
F
GND
GND
GND
GND
GND
N/C
CH 92
CH 85
E
GND
GND
GND
GND
4
N/C
CH 91
CH 84
D
GND
GND
GND
3
C
CH 59
GND
CH 52
GND
GND SENSE D
CH 53
GND
GND SENSE E
LB SENSE
E
F
DUT A Connector
Pin
GND
1
SCOPE TP1
GND
SCOPE TP2
GND
2
CH 42
3
CH 43
CH 36
CH 30
CH 31
5
CH 24
CH 25
GND
6
CH 18
CH 19
GND
7
CH 12
CH 13
GND
8
CH 6
CH 7
GND
9
CH 0
CH 1
GND
10
N/C
N/C
CH 10
CH 3
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
CH 11
GND
CH 4
GND
N/C
CH 17
GND
GND
GND
N/C
CH 16
CH 9
CH 2
CH 23
GND
GND
GND
GND
CH 22
CH 15
CH 8
CH 29
GND
GND
GND
GND
CH 28
CH 21
CH 14
CH 35
GND
GND
GND
GND
CH 34
CH 27
CH 20
CH 41
GND
GND
GND
GND
CH 40
CH 33
CH 26
CH 47
GND
GND
GND
GND
CH 46
CH 39
CH 32
GND SENSE C
GND
GND
GND
GND
N/C
CH 45
CH 38
GND
GND
GND
GND
GND
N/C
CH 44
CH 37
GND
GND
GND
GND
4
N/C
GND
GND
D
GND
CH 5
GND
GND SENSE A
GND SENSE B
291
C – VHDM Connector Pinouts
Figure 100. DPS16 VHDM Connector Pinout
DUT B Connector
Pin
A
B
GND
1
N/C
GND
N/C
GND
2
VSENSE- 15
VSENSE- 13
IDDQ SW 13
5
VSENSE- 12
IDDQ SW 12
GND
6
VSENSE- 11
IDDQ SW 11
GND
7
VSENSE- 10
IDDQ SW 10
GND
8
VSENSE- 9
IDDQ SW 9
GND
9
VSENSE- 8
IDDQ SW 8
GND
10
N/C
N/C
A
B
C
OUTPUT 10
GND
OUTPUT 9
GND
OUTPUT 8
GND
N/C
OUTPUT 10
OUTPUT 9
VSENSE+ 8
OUTPUT 11
GND
GND
GND
GND
OUTPUT 11
OUTPUT 10
VSENSE+ 9
OUTPUT 12
GND
GND
GND
GND
OUTPUT 12
OUTPUT 11
VSENSE+ 10
OUTPUT 13
GND
GND
GND
GND
OUTPUT 13
OUTPUT 12
VSENSE+ 11
OUTPUT 14
GND
GND
GND
GND
OUTPUT 14
OUTPUT 13
VSENSE+ 12
OUTPUT 15
GND
GND
GND
GND
OUTPUT 15
OUTPUT 14
VSENSE+ 13
N/C
GND
GND
GND
GND
N/C
OUTPUT 15
VSENSE+ 14
F
GND
GND
GND
GND
GND
N/C
VSENSE+ 15
IDDQ SW 14
E
GND
GND
GND
GND
4
N/C
IDDQ SW 15
VSENSE- 14
D
GND
GND
GND
3
C
OUTPUT 9
GND
OUTPUT 8
GND
N/C
OUTPUT 8
GND
N/C
N/C
DUT A Connector
Pin
GND
1
N/C
GND
N/C
GND
2
VSENSE- 7
3
IDDQ SW 7
VSENSE- 6
VSENSE- 5
IDDQ SW 5
5
VSENSE- 4
IDDQ SW 4
GND
6
VSENSE- 3
IDDQ SW 3
GND
7
VSENSE- 2
IDDQ SW 2
GND
8
VSENSE- 1
IDDQ SW 1
GND
9
VSENSE- 0
IDDQ SW 0
GND
10
292
N/C
N/C
N/C
N/C
OUTPUT 2
OUTPUT 1
OUTPUT 1
OUTPUT 0
OUTPUT 1
GND
OUTPUT 0
GND
N/C
OUTPUT 2
GND
GND
GND
OUTPUT 3
GND
GND
GND
VSENSE+ 0
GND
OUTPUT 3
OUTPUT 2
VSENSE+ 1
OUTPUT 4
GND
GND
GND
GND
OUTPUT 4
OUTPUT 3
VSENSE+ 2
OUTPUT 5
GND
GND
GND
GND
OUTPUT 5
OUTPUT 4
VSENSE+ 3
OUTPUT 6
GND
GND
GND
GND
OUTPUT 6
OUTPUT 5
VSENSE+ 4
OUTPUT 7
GND
GND
GND
GND
OUTPUT 7
OUTPUT 6
VSENSE+ 5
N/C
GND
GND
GND
GND
N/C
OUTPUT 7
VSENSE+ 6
F
GND
GND
GND
GND
GND
N/C
VSENSE+ 7
IDDQ SW 6
E
GND
GND
GND
GND
4
N/C
GND
GND
D
GND
OUTPUT 0
GND
N/C
N/C
PN: 071-0961-00, January 2008
Figure 101. VIS16 VHDM Connector Pinout
DUT B Connector
Pin
A
B
C
AGND
1
N/C
LO_S_CH15
GUARD_CH15
3
LO_S_CH14
4
LO_S_CH13
LO_S_CH12
GUARD_CH12
HI_F_CH14
HI_F_CH13
HI_S_CH12
HI_F_CH14
LO_F_CH13
HI_F_CH13
LO_F_CH12
HI_F_CH12
LO_F_CH11
HI_F_CH15
LO_F_CH14
LO_F_CH13
LO_F_CH12
LO_F_CH11
HI_F_CH15
HI_F_CH14
HI_S_CH13
N/C
LO_F_CH15
LO_F_CH14
LO_F_CH13
LO_F_CH12
LO_F_CH11
HI_F_CH15
HI_S_CH14
GUARD_CH13
N/C
LO_F_CH15
LO_F_CH14
LO_F_CH13
LO_F_CH12
5
HI_S_CH15
GUARD_CH14
LO_F_CH13
AGND
N/C
LO_F_CH15
LO_F_CH14
F
AGND
N/C
LO_F_CH15
LO_F_CH14
E
AGND
N/C
LO_F_CH15
2
D
AGND
HI_F_CH13
LO_F_CH12
HI_F_CH12
LO_F_CH11
HI_F_CH12
LO_F_CH11
6
LO_S_CH11
GUARD_CH11
HI_S_CH11
HI_F_CH11
HI_F_CH11
HI_F_CH11
LO_F_CH10
LO_F_CH10
LO_F_CH10
LO_F_CH10
LO_F_CH10
7
LO_S_CH10
GUARD_CH10
LO_F_CH9
8
LO_S_CH9
GUARD_CH9
LO_F_CH8
9
LO_S_CH8
HI_F_CH10
LO_F_CH9
HI_S_CH9
LO_F_CH8
GUARD_CH8
AGND
10
HI_S_CH10
LO_F_CH9
HI_F_CH9
LO_F_CH8
HI_S_CH8
AGND
HI_F_CH10
LO_F_CH9
HI_F_CH9
LO_F_CH8
HI_F_CH8
AGND
CALS_SL
CALS_FL
N/C
CAL_LO_GRD
A
B
C
HI_F_CH10
LO_F_CH9
HI_F_CH9
LO_F_CH8
HI_F_CH8
AGND
CALS_SH
HI_F_CH8
AGND
CALS_FH
CAL_HI_GRD
N/C
DUT A Connector
Pin
AGND
1
N/C
2
LO_S_CH7
GUARD_CH6
AGND
N/C
LO_F_CH7
HI_S_CH7
LO_F_CH6
N/C
LO_F_CH7
HI_F_CH7
LO_F_CH6
N/C
LO_F_CH7
HI_F_CH7
LO_F_CH6
LO_S_CH6
4
LO_F_CH5
LO_F_CH5
LO_F_CH5
LO_F_CH5
LO_F_CH5
LO_S_CH5
GUARD_CH5
HI_S_CH5
HI_F_CH5
HI_F_CH5
HI_F_CH5
5
LO_S_CH4
LO_F_CH3
6
LO_S_CH3
LO_S_CH2
8
LO_S_CH1
GUARD_CH1
LO_F_CH0
9
LO_S_CH0
10
COVER_LOW
Notes:
HI_F_CH3
HI_F_CH2
HI_F_CH1
HI_S_CH0
HI_F_CH1
HI_F_CH0
P3V3
HI_F_CH1
LO_F_CH0
HI_F_CH0
DGND
SDA0
HI_F_CH2
LO_F_CH1
LO_F_CH0
DGND
HI_F_CH3
LO_F_CH2
LO_F_CH1
LO_F_CH0
HI_F_CH4
LO_F_CH3
LO_F_CH2
HI_F_CH2
HI_S_CH1
LO_F_CH4
LO_F_CH3
LO_F_CH1
HI_F_CH6
HI_F_CH4
HI_F_CH3
HI_S_CH2
DGND
COVER_HIGH
N/C
LO_F_CH4
LO_F_CH2
LO_F_CH0
GUARD_CH0
DGND
HI_S_CH3
LO_F_CH1
HI_F_CH6
HI_F_CH4
LO_F_CH3
LO_F_CH2
GUARD_CH2
LO_F_CH1
LO_F_CH4
HI_S_CH4
LO_F_CH3
GUARD_CH3
LO_F_CH2
7
LO_F_CH4
GUARD_CH4
HI_F_CH6
HI_F_CH7
LO_F_CH6
3
LO_F_CH4
HI_S_CH6
F
AGND
N/C
LO_F_CH7
GUARD_CH7
LO_F_CH6
E
AGND
N/C
LO_F_CH7
D
AGND
HI_F_CH0
DGND
SCL0
N/C
1. COVER_LOW must be tied to ground
2. COVER_HIGH must be tied to P3V3 (3.3 V)
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
293
C – VHDM Connector Pinouts
Figure 102. DIBU VHDM Connector Pinout
DUT B Connector
Pin
A
B
IGND
1
SCOPE_TP2
SCOPE_TP3
N/C
IGND
2
CBIT_0
CBIT_6
CBIT_1
CBIT_7
CBIT_2
CBIT_8
CBIT_3
CBIT_9
CBIT_4
8
9
CBIT_10
CBIT_16
IGND
CBIT_5
CBIT_11
IGND
IGND
DP_CLKDUT
DP_CLKDUT#
IGND
IGND
N/C
N/C
IGND
10
CBIT_15
IGND
IGND
7
CBIT_14
IGND
IGND
6
CBIT_13
IGND
IGND
5
CBIT_12
IGND
IGND
4
IGND
IGND
IGND
3
C
IGND
CBIT_17
IGND
N/C
IGND
N/C
CAL_FL
N/C
GRD_L
A
B
C
D
IGND
IGND
SPI_DUT_SCK
N/C
IGND
IGND
SPI_DUT_MOSI
HI_F_CH7
IGND
IGND
SPI_DUT_MISO
HI_F_CH6
IGND
IGND
E
F
IGND
CBIT18
CBIT_24
N/C
IGND
CBIT_19
HI_F_CH7
CBIT_25
IGND
CBIT_20
HI_F_CH6
CBIT_26
IGND
SPI_DUT_CS
HI_F_CH5
CBIT_21
IGND
IGND
IGND
HI_F_CH4
CBIT_22
SPI_DUT_IO_PWR
IGND
IGND
IGND
HI_F_CH3
CBIT_23
I2C_DUT_IO_PWR
IGND
IGND
IGND
HI_F_CH2
I2C_DUT_SCL
I2CIDPROM_SCL
IGND
IGND
IGND
HI_F_CH1
I2C_DUT_SDA
I2CIDPROM_SDA
IGND
IGND
IGND
HI_F_CH0
I2CIDPROM_P3V3
IGND
IGND
CAL_SH
N/C
HI_F_CH5
CBIT_27
HI_F_CH4
CBIT_28
HI_F_CH3
CBIT_29
HI_F_CH2
CBIT_30
HI_F_CH1
CBIT_31
N/C
IGND
CAL_FH
GRD_H
N/C
DUT C Connector
Pin
IGND
1
CBIT_32
IGND
CBIT_42
N/C
IGND
2
CBIT_33
3
CBIT_43
CBIT_34
CBIT_35
CBIT_45
5
CBIT_36
CBIT_46
IGND
6
CBIT_37
CBIT_47
IGND
7
CBIT_38
CBIT_48
IGND
8
CBIT_39
CBIT_49
IGND
9
CBIT_40
CBIT_50
IGND
10
294
CBIT_41
CBIT_51
N/C
N/C
HI_F_CH0
N/C
HI_F_CH1
CBIT_61
IGND
CBIT_52
IGND
N/C
HI_F_CH2
CBIT_60
IGND
IGND
IGND
IGND
N/C
P5V0_U_RLY
HI_F_CH1
IGND
HI_F_CH3
CBIT_59
IGND
IGND
IGND
IGND
N/C
P5V0_U_RLY
HI_F_CH2
IGND
HI_F_CH4
CBIT_58
IGND
IGND
IGND
IGND
N/C
P5V0_U_RLY
HI_F_CH3
IGND
HI_F_CH5
CBIT_57
IGND
IGND
IGND
IGND
N/C
P5V0_U_RLY
HI_F_CH4
IGND
HI_F_CH6
CBIT_56
IGND
IGND
IGND
IGND
N/C
HI_F_CH5
P12V0_U
IGND
HI_F_CH7
CBIT_55
IGND
IGND
IGND
IGND
N/C
HI_F_CH6
P12V0_U
IGND
CBIT_54
N/C
IGND
IGND
IGND
IGND
N/C
HI_F_CH7
N/C
IGND
F
IGND
IGND
IGND
IGND
IGND
N/C
IGND
CBIT_44
E
IGND
IGND
IGND
IGND
4
IGND
IGND
IGND
D
IGND
CBIT_62
IGND
CBIT_53
CBIT_63
N/C
PN: 071-0961-00, January 2008
DUT A Connector
Pin
A
B
IGND
1
SCOPE_TP0
IGND
SCOPE_TP1
N/C
IGND
2
3
N/C
IGND
IGND
CAL_REFCLK400 CAL_REFCLK400#
4
N/C
5
GPIO 0
N/C
GPIO 3
P5V0_U
N5V0_U
Notes:
N5V0_U
N/C
P5V0_U_RLY
N/C
P24V0_U
IGND
P5V0_U_RLY
HI_F_CH1
IGND
P5V0_U
P24V0_U
IGND
HI_F_CH0
P5V0_U
IGND
N5V0_U
P24V0_U
IGND
IGND
IGND
N/C
IGND
P5V0_U_RLY
N/C
P5V0_U
IGND
IGND
IGND
IGND
10
N/C
GPIO 7
N/C
P5V0_U_RLY
HI_F_CH4
IGND
IGND
IGND
9
IGND
IGND
GPIO 6
IGND
HI_F_CH5
P12V0_U
N/C
GPIO 5
IGND
8
IGND
IGND
IGND
GPIO2
IGND
IGND
IGND
E
F
IGND
IGND
IGND
N/C
DP_REFCLK10
DP_REFCLK10#
N/C
IGND
IGND
IGND
HI_F_CH7
N/C
N/C
HI_F_CH7
N/C
IGND
IGND
IGND
HI_F_CH6
P12V0_U
N/C
DIB_PRESENT#
HI_F_CH6
N/C
GPIO 4
CPIO 1
N/C
IGND
IGND
7
IGND
N/C
D
IGND
IGND
IGND
6
C
P5V0_U
IGND
N5V0_U
N5V0_U
IGND
LB_GNDSNS_IN
HI_F_CH5
IGND
HI_F_CH4
N/C
IGND
P24V0_U_RTN
HI_F_CH3
IGND
P24V0_U_RTN
HI_F_CH2
IGND
P24V0_U_RTN
HI_F_CH1
IGND
P5V0_U
IGND
N5V0_U
N/C
1. DIB_PRESENT# must be tied to ground for the power supplies to work
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
295
C – VHDM Connector Pinouts
Figure 103. Mixed Signal Digitizer and AWG VHDM Connector Pinout
DUT B Connector
Pin
A
B
GND
1
N/C
GND
N/C
GND
2
N/C
N/C
IO PIN 6
5
N/C
UPIN 6
GND
6
N/C
UPIN 5
GND
7
N/C
IOPIN 5
GND
8
N/C
IOPIN 4
GND
9
N/C
UPIN 4
GND
10
N/C
N/C
N/C
N/C
N/C
N/C
N/C
ANALOG BUS P
A
B
C
N/C
GND
GND
GND
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
G SENSE EXT 6
GND
GND
GND
GND
G SENSE EXT 7
N/C
N/C
F
GND
GND
GND
GND
GND
N/C
N/C
IO PIN 7
E
GND
GND
GND
GND
4
N/C
UPIN 7
N/C
D
GND
GND
GND
3
C
N/C
GND
N/C
GND
ANALOG BUS M
N/C
GND
G SENSE EXT 4
G SENSE EXT 5
E
F
DUT A Connector
Pin
GND
1
N/C
GND
N/C
GND
2
N/C
3
UPIN 3
N/C
N/C
5
IOPIN 2
N/C
N/C
UPIN 1
7
N/C
IOPIN 1
GND
8
N/C
IOPIN 0
GND
9
N/C
UPIN 0
GND
10
296
N/C
N/C
N/C
N/C
N/C
GND
N/C
GND
N/C
N/C
GND
GND
GND
N/C
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
N/C
N/C
N/C
N/C
GND
GND
GND
GND
GND
N/C
N/C
UPIN 2
N/C
GND
GND
GND
GND
6
N/C
GND
G SENSE EXT 3 G SENSE EXT 2
GND
GND
N/C
GND
GND
GND
HS OUT M
N/C
IOPIN 3
GND
GND
GND
GND
4
HS OUT P
GND
GND
D
GND
N/C
GND
G SENSE EXT 0
G SENSE EXT 1
PN: 071-0961-00, January 2008
Figure 104. MultiWave VHDM Pinout
DUT B Connector
Pin
A
B
AGND
1
2
GIGA_SMP_CLK _N_CH2
AGND
AGND
GIGA_SMP_CLK_P_CH2
AGND
AGND
ADC_CH3_P_S
AGND
3
4
AGND
AGND
ADC_CH3_P
AGND
AGND
DAC_CH3_P_S
AGND
DAC_CH3_P
6
7
8
9
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
DAC_CH3_N
SPI _RESET
3. 3V / 2A
A
B
C
ADC_CH3_GND_S
AGND
AGND
DAC_CH3_GND_S
AGND
AGND
DAC_CH3_VCOMM
AGND
AGND
AGND
ADC_CH2_N_S
AGND
AGND
ADC_CH2_N
AGND
AGND
DAC_CH2_N_S
AGND
AGND
DAC_CH2_N
AGND
E X T_TRIGGE R _CH3
AGND
AGND
AGND
AGND
AGND
AGND
AGND
F
AGND
GIGA_SMP_CLK_P_CH3
ADC_CH3_N
AGND
AGND
DAC_CH3_N_S
AGND
AGND
AGND
DAC_CH2_P_S
AGND
AGND
DAC_CH2_P
AGND
10
GIGA_SMP_CLK _N_CH3
AGND
AGND
ADC_CH3_N_S
AGND
ADC_CH2_P_S
AGND
AGND
ADC_CH2_P
E
AGND
AGND
AGND
AGND
D
AGND
AGND
AGND
5
C
AGND
ADC_CH2_GND_S
AGND
AGND
DAC_CH2_GND_S
AGND
AGND
DAC_CH2_VCOMM
AGND
AGND
AGND
SPI _SCLK
E X T_TRIGGE R _CH2
AGND
DGND
AGND
SPI_SDI
SPI_SDO
DUT A Connector
Pin
AGND
1
GIGA_SMP_CLK _N_CH0
AGND
GIGA_SMP_CLK_P_CH0
AGND
2
3
4
5
6
7
8
9
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
DAC_CH1_P_S
AGND
AGND
DAC_CH1_P
AGND
AGND
ADC_CH0_P_S
AGND
AGND
AGND
AGND
AGND
AGND
AGND
AGND
DAC_CH0_P
AGND
AGND
E X T_TRIGGE R _CH1
AGND
AGND
N/ C
GIGA_SMP_CLK _N_CH1
AGND
AGND
DAC_CH1_N_S
AGND
AGND
DAC_CH1_N
AGND
AGND
ADC_CH0_N_S
AGND
AGND
AGND
AGND
ADC_CH1_GND_S
AGND
AGND
DAC_CH1_GND_S
AGND
AGND
DAC_CH1_VCOMM
AGND
AGND
E X T_TRIGGE R _CH0
AGND
AGND
ADC_CH0_GND_S
AGND
ADC_CH0_N
AGND
AGND
DAC_CH0_N_S
AGND
AGND
AGND
DAC_CH0_N
AGND
DAC_CH0_GND_S
AGND
AGND
DA C_CH0_V COMM
AGND
AGND
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
AGND
GIGA_SMP_CLK_P_CH1
ADC_CH1_N_S
AGND
AGND
ADC_CH1_N
SDA0
F
AGND
AGND
AGND
3. 3V / 2A
E
AGND
AGND
ADC_CH0_P
AGND
AGND
DAC_CH0_P_S
AGND
AGND
AGND
10
AGND
AGND
ADC_CH1_P_S
AGND
AGND
ADC_CH1_P
D
AGND
DGND
AGND
SCL0
N/ C
297
C – VHDM Connector Pinouts
Notes
298
PN: 071-0961-00, January 2008
D
Loadboard Design Rules for MultiWave
The MultiWave instrument provides 4 analog generator and 4 analog capture channels.
Each channel can be dynamically switched within a test program to use high resolution
(audio) or high-frequency (video) mode. Each channel can be either used in single ended
or differential operation. Additionally every instrument channel connects to a high
precision Kelvin PPMU for precise DC force and measurement capabilities.
AWG Channels
Each AWG source channel of the MultiWave instrument offers the following impedance
options:
•
50 Ω source impedance in high-frequency mode
•
<2 Ω source impedance in high-resolution mode
In high-resolution source mode, sense connections are available to optimize the
accuracy of the signals generated at the DUT.
Digitizer Channels
Each digitizer channel of the MultiWave instrument offers the following impedance
options:
•
50 Ω single-ended input impedance in high-frequency mode
•
100 Ω differential input impedance in high-frequency mode
•
High input impedance in high-frequency mode (Ibias <15 µA)
•
High input impedance in high-resolution mode (Ibias <1 µA)
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
299
D – Loadboard Design Rules for MultiWave
PMU Channels
A per-pin precision Kelvin PMU is available on the MultiWave instrument for each AWG
and digitizer channel. The PMU is used for high precision DUT voltage and current
forcing and measuring.
Eight parallel PMU cores (4 AWG Ch. + 4 Dig Ch.) are integrated on each MultiWave unit.
The PMU access of the positive and negative node of each channel is multiplexed.
Each PMU channel offers the following connection modes:
•
SINGLE_P—xxx_CHx_P connected to PMU (non Kelvin mode)
•
SINGLE_N—xxx_CHx_N connected to PMU (non Kelvin mode)
•
KELVIN_P—xxx_CH_P/xxx_CH_P_S connected to PMU, Kelvin mode, force and
sense needs to be shorted on the loadboard close to the DUT
•
KELVIN_N—xxx_CH_N/xxx_CH_N_S connected to PMU, Kelvin mode, force and
sense needs to be shorted on the loadboard close to the DUT
x
is the channel number 0..3 (4 ADC channels and 4 DAC channels per unit)
xxx
can be either ADC or DAC channel
AGND/DGND Connection
Connections between DUT_GND and MultiWave instrument AGND (analog ground)
should be designed as a solid ground plane.
The DGND (digital ground) connection of the MultiWave instrument should not be used.
This connection is reserved as a power return of the optional GBS (Giga Bit Sampler)
frontend clock.
GND_SENSE Connections
The GROUND_SENSE line of each used AWG and DIG channel should be connected to
the DUT_GROUND plane as close as possible to the appropriate DUT.
300
PN: 071-0961-00, January 2008
Signal and Layer Arrangement
Signal and Layer Arrangement
Signals on the loadboard using the high frequency mode should be routed as 50 Ohm
traces.
It is recommended to route analog and digital lines on separate signal layers. Digital
traces should be separated from an analog signal layer through a solid ground plane.
For high precision PMU force and high precision AWG mode it is recommended to use
Kelvin connections. Therefore high sense and high force lines should be routed as a
differential signal pair.
Force and Sense should be shorted together as close as possible to the force node.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
301
D – Loadboard Design Rules for MultiWave
MultiWave Instrument Connection Modes
Figure 105. Single Ended Digitizer Connection (LF-Mode)
Loadboard
MultiWave
ADC_CHx_P
DUT
+
_DIG
ADC_CHx_GND_S
AGND
PMU GND_SENSE
DUT_GND
Figure 106. Single Ended Digitizer Connection (HF-Mode)
Loadboard
DUT
50R
MultiWave
ADC_CHx_P
50R
ADC_CHx_N
ADC_CHx_GND_S
+
_DIG
PMU GND_SENSE
AGND
DUT_GND
302
PN: 071-0961-00, January 2008
MultiWave Instrument Connection Modes
Figure 107. Differential Digitizer Connection (LF-Mode)
Loadboard
MultiWave
ADC_CHx_P
+
_DIG
DUT
ADC_CHx_N
ADC_CHx_GND_S
PMU GND_SENSE
AGND
DUT_GND
Figure 108. Differential Digitizer Connection (HF-Mode)
Loadboard
MultiWave
ADC_CHx_P
DUT
50R
50R
ADC_CHx_N
50R
+
_DIG
50R
ADC_CHx_GND_S
PMU GND_SENSE
AGND
DUT_GND
Figure 109. Single Ended AWG Connection (LF-Mode)
Loadboard
MultiWave
Baseline_P
DAC_CHx_P_S
DUT
DAC_CHx_P
AWG
DAC_CHx_GND_S
AGND
PMU GND_SENSE
DUT_GND
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
303
D – Loadboard Design Rules for MultiWave
Figure 110. Single Ended AWG Connection (HF-Mode)
Loadboard
MultiWave
Baseline_P
DAC_CHx_P
DUT
50R
AWG
50R
DAC_CHx_GND_S
AGND
PMU GND_SENSE
DUT_GND
Figure 111. Differential AWG Connection (LF-Mode)
Loadboard
MultiWave
Baseline_P
DAC_CHx_P_S
DAC_CHx_P
DUT
AWG
DAC_CHx_N
DAC_CHx_N_S
DAC_CHx_GND_S
Baseline_N
AGND
PMU GND_SENSE
DUT_GND
Figure 112. Differential AWG Connection (HF-Mode)
Loadboard
MultiWave
Baseline_P
50R
DAC_CHx_P
50R
DUT50R
DAC_CHx_N
50R
DAC_CHx_GND_S
AGND
AWG
Baseline_N
PMU GND_SENSE
DUT_GND
304
PN: 071-0961-00, January 2008
MultiWave Instrument Connection Modes
Figure 113. AWG Channels—PPMU Connection
Loadboard
MultiWave
DAC_CHx_P_S
P/N MUX
HIGH_SENSE
DAC_CHx_P
HIGH_FORCE
DUT
DAC_CHx_N
PPMU
DAC_CHx_N_S
DAC_CHx_GND_S
LOW_SENSE
AGND
DUT_GND
Figure 114. Digitizer Channels—PPMU Connection
Loadboard
MultiWave
ADC_CHx_P_S
P/N MUX
HIGH_SENSE
ADC_CHx_P
DUT
HIGH_FORCE
ADC_CHx_N
PPMU
ADC_CHx_N_S
ADC_CHx_GND_S
LOW_SENSE
AGND
DUT_GND
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
305
D – Loadboard Design Rules for MultiWave
Notes
306
PN: 071-0961-00, January 2008
E
Diamond Series Basic Program
Development
This appendix details the steps required to generate an executable job under the
Diamond Series software. An Icc test is used as the example.
These steps include:
•
Navigating the various windows and environments
•
Coding, compiling, executing, and datalogging a test
Each step shows an example of what the student will see.
Figure 115. Test System to DUT Connection
Vcc
VIS16 CH0 Force
VIS16 CH0 Sense
DUT
Gnd
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
307
E – Diamond Series Basic Program Development
Generating the STIL File
The first step is to generate the STIL file. Program Developer (a customized version of
Slick Edit v8) is used to edit the STIL file.
To generate the STIL file:
1. Enter vs signals.stil & into a terminal window to start Program Developer as
shown in Figure 116.
Figure 116. Starting Program Developer
308
PN: 071-0961-00, January 2008
Generating the STIL File
The Program Developer GUI opens as shown in Figure 117.
Figure 117. Program Developer GUI
Menus
Icons
Work Area
File Manager
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
309
E – Diamond Series Basic Program Development
2. Edit the Signals STIL file:
a. Enter STIL 1.0; as the first line in the file. This statement specifies the STIL
version number.
b. Create a Signals block below the STIL statement. The example in Figure 118
creates one signal called vcc. The vcc signal is a Supply signal.
Figure 118. Signals STIL File
3. Save the edits.
310
PN: 071-0961-00, January 2008
Starting Integrated Test Environment
Starting Integrated Test Environment
To start the Integrated Test Environment (ITE):
1. Navigate to the desired directory and enter ite &.
Figure 119. Command Window
This starts ITE.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
311
E – Diamond Series Basic Program Development
Figure 120. ITE Main Window
Menus
Icons
Work Area
File Manager
312
PN: 071-0961-00, January 2008
Generating the Resource Definition File
Generating the Resource Definition File
The Resource Definition file assigns user defined names to test system resources.
The Icc test uses a VIS instrument located in slot 3 of the Diamond Series test system.
This must be noted in the Resource Definition File.
To generate the Resource Definition file:
1. Select File > New > Resource Def File.
Figure 121. New Pull-down Menu
The New Resource Def File window opens as shown in Figure 122.
Figure 122. New Resource Def File Window
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
313
E – Diamond Series Basic Program Development
2. Enter the new file name and press OK. An empty Resource Def file opens in the ITE
GUI as shown in Figure 123.
Figure 123. New Empty Resource Def File
This DUT Icc example uses a VIS16 instrument in chassis 0, slot 3.
314
PN: 071-0961-00, January 2008
Generating the Resource Definition File
3. Specify the Resource, Type, Chassis, and Slot fields as required.
4. Press Save before closing the window.
Figure 124. Resource, Type, Chassis, and Slot Fields
Figure 125 shows the code inserted into the Resource Def File based on the input to
the ITE GUI.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
315
E – Diamond Series Basic Program Development
Figure 125. Resource Def File Code
316
PN: 071-0961-00, January 2008
Generating the Signal Map File
Generating the Signal Map File
The Signal Map file assigns signal names to user defined resources and channels for
each site.
To generate the Signal Map file:
1. Select File > New > Signal Map File.
Figure 126. New Pull-down Menu
The New Signal Map File window opens as shown in Figure 127.
Figure 127. New Signal Map File Window
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
317
E – Diamond Series Basic Program Development
2. Enter the new file name and press OK. An empty Signal Map file opens in the ITE
GUI as shown in Figure 128.
Figure 128. New Signal Map File
318
PN: 071-0961-00, January 2008
Generating the Signal Map File
3. Specify the Signal, Resource, and Channel fields as required. The signal name must
match the signal name in the STIL Signals block. The resource name was defined in
the Resource Definition file.
4. Press Save before closing the window.
Figure 129. Resource, Type, Chassis, and Slot Fields
Below is the code inserted into the Signal Map file based on the input to the ITE GUI.
Figure 130. Signal Map File Code
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
319
E – Diamond Series Basic Program Development
Generating the C++ Header File
To generate the C++ Header file:
1. Enter vs example.h & (where example.h is the C++ header file name) into the
terminal window.
2. Press Enter.
Figure 131. Generating a C++ Header File
320
PN: 071-0961-00, January 2008
Generating the C++ Header File
Editing the Header File
To edit the C++ Header file:
1. Enter #ifndef, #define, and #endif preprocessor commands to ensure that the
body of the header file is not included multiple times.
2. Enter using namespace std; to include the C++ standard library into the current
declarative region.
3. Enter #include CscDmd.h to include the predefined variables required by the
Diamond Series software.
4. Enter the header code and save the file.
Figure 132. Example Header Code
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
321
E – Diamond Series Basic Program Development
Generating the C++ Source File for a Test
To generate the C++ Source file for the test:
1. Enter vs icc.cpp & (where icc.cpp is the C++ Source file name) into a terminal
window as shown in Figure 133.
2. Press Enter.
Figure 133. Generating a C++ Source File
322
PN: 071-0961-00, January 2008
Editing the C++ Source File for a Test
Editing the C++ Source File for a Test
To edit the C++ Source file for a test:
1. Enter the function structure and instrument statements required for the desired test
and save the file.
2. Include the C++ Header file using the #include statement.
3. Create a function that contains the instrument statements required for the desired
test. The example in Figure 134 depicts an Icc measurement on the vcc signal.
Figure 134. C++ Source File
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
323
E – Diamond Series Basic Program Development
Generating the C++ Source File for user_main()
To generate the C++ Source file:
1. Enter vs user_main.cpp & into a terminal window as shown in Figure 135.
2. Press Enter.
Figure 135. Generating a user_main C++ Source File
324
PN: 071-0961-00, January 2008
Editing the C++ Source File for user_main()
Editing the C++ Source File for user_main()
To edit the C++ Source file for user_main():
1. Include the C++ Header file using the #include statement.
2. Create a function prototype for each test function.
3. Create the user_main() function. This function calls the test functions and then
returns. User_main() is the starting point of the test program.
4. Enter user_main code and save the file.
Figure 136. C++ Source File Example
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
325
E – Diamond Series Basic Program Development
Generating the Job File
The Job file defines the parameters of the job.
To generate the Job file:
1. Switch to ITE and generate the Job file by selecting File > New > Job File.
Figure 137. New Pull-down Menu
2. Enter the job file name and press OK in the New Job File window as shown in
Figure 138.
Figure 138. New Job File Window
326
PN: 071-0961-00, January 2008
Generating the Job File
An empty Job file opens in ITE. The Job file is divided into four tabs:
•
Main
•
Advanced
•
STIL
•
Test Program
Figure 139. Job File Tabs
Job File Tabs
3. Use the file chooser to select the Resource Definition, Signal Map, and STIL files in
the Main tab.
4. Type in the name of the Test Program library on the Main tab. This is the library file
that is created when the C++ files are compiled.
5. Press Save when done.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
327
E – Diamond Series Basic Program Development
Figure 140. Job File—Main Tab
328
PN: 071-0961-00, January 2008
Generating the Job File
6. Use the file chooser to select the C++ source files and include directories in the Test
Program tab.
7. Press Save when done.
Figure 141. Job File—Test Program Tab
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
329
E – Diamond Series Basic Program Development
Figure 142 shows the code inserted into the Job file based on the input to the ITE GUI.
Figure 142. Job File Code Example
330
PN: 071-0961-00, January 2008
Building the Job File
Building the Job File
To build the job file:
1. Select Build > Build Tool... to build the job file.
Figure 143. Build Pull-down Menu
2. Enter or browse to the Job file in the Job File field.
3. Enter or browse to the Make file in the Makefile field.
4. Press the Generate Makefile button to compile the makefile from the Job file. The
makefile defines the compiler dependencies.
Figure 144. Build Dialog Window
Generate Makefile Button
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
331
E – Diamond Series Basic Program Development
5. Press the make button to compile the STIL and C++ source files. If errors occur
during the make process, correct them before preceding.
Figure 145. make Button
make
Button
332
PN: 071-0961-00, January 2008
Loading the Job File
Loading the Job File
To load the job file:
1. Double-click on the Job name in the ITE file chooser window. The Execution tab
appears after the job is loaded.
Figure 146. Job File—Execution Tab
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
333
E – Diamond Series Basic Program Development
Enabling Datalog
To enable datalogging:
1. Select Tester > Datalog Control to enable datalogging.
Figure 147. Tester Pull-down Menu
334
PN: 071-0961-00, January 2008
Enabling Datalog
The Datalog Control opens the ITE GUI.
Figure 148. Datalog Control
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
335
E – Diamond Series Basic Program Development
2. Select the All Tests > Test check box to datalog all tests.
3. Select the Events > All check box to datalog all events as shown in Figure 149.
Figure 149. Real Time Datalog Options
336
PN: 071-0961-00, January 2008
Running the Job
Running the Job
To run the job:
1. Select the Execution tab and press Run to run the job.
Figure 150. Job File—Execution Tab
Run Button
The results of the test are shown in the Test Executive window.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
337
E – Diamond Series Basic Program Development
Generating the Binning Definitions File
The Binning Definition file assigns user defined names to soft bins.
To generate the Binning Definition file:
2. Select File > New Binning Def File to generate a new Binning Definition file.
Figure 151. New Pull-down Menu
3. Enter the Binning Def file name and press OK in the New Binning Def File window
(see Figure 152).
Figure 152. New Binning Def File Window
338
PN: 071-0961-00, January 2008
Generating the Binning Definitions File
An empty Binning Definition file opens in the ITE GUI.
Figure 153. New Binning Definition File
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
339
E – Diamond Series Basic Program Development
4. Specify the name, attribute, number, and description for each soft bin. Press Save
before closing the window.
Figure 154. Soft Bin Attributes
Figure 155 shows the code that is inserted into the Binning Definition file based on the
input to the ITE GUI.
Figure 155. Binning Definition Code Example
340
PN: 071-0961-00, January 2008
Generating the Binning Map File
Generating the Binning Map File
The Binning Map file maps hard bin numbers to soft bin numbers.
To generate the Binning Map file:
1. Select File > New > Binning Map File to generate the Binning Map file.
Figure 156. New Pull-down Menu
2. Enter the Binning Map file name and press OK in the New Binning Map File window
(see Figure 157).
Figure 157. New Binning Map File Window
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
341
E – Diamond Series Basic Program Development
An empty Binning Map file opens in the ITE GUI.
Figure 158. New Binning Map File
Insert Soft Bins Button
3. Press the Insert Soft Bins button to import the soft bin names from the Binning
Definition file.
4. Select the Binning Definition file and press OK. The Soft Bin Name column is
automatically filed in.
5. Specify the hard bin number for each soft bin name.
342
PN: 071-0961-00, January 2008
Generating the Binning Map File
6. Save before closing window. An example of a complete Binning file is shown in
Figure 159.
Figure 159. Completed New Binning Map File
Figure 160 shows the code inserted into the Binning Map file based on the input to the
ITE GUI.
Figure 160. Binning Map File Code Example
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
343
E – Diamond Series Basic Program Development
Editing the Binning C++ Source File
To edit the Binning C++ Source file:
1. Enter vs binning.cpp & at the terminal window prompt to open the new file in
Program Developer.
Figure 161. Opening Program Developer
344
PN: 071-0961-00, January 2008
Editing the Binning C++ Source File
2. Include the C++ header file by using the #include statement.
3. Create a function that contains the statements required to bin the device.
4. Save the file before closing the window.
Figure 162. Binning C++ Source File
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
345
E – Diamond Series Basic Program Development
Adding Binning to user_main()
To add binning the user_main():
1. Open the C++ Source file that contains the user_main() function.
Figure 163. C++ Source File
2. Add a function prototype for the new function.
3. Call the new function from the user_main() function.
4. Save the file before closing the window.
346
PN: 071-0961-00, January 2008
Adding Binning to user_main()
Figure 164. user_main() File with Binning
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
347
E – Diamond Series Basic Program Development
Adding Binning to the Job file
To add binning to the Job file:
1. Select the Job file in the file manager window.
2. Right-click on the Job file and select Edit to open the job file in ITE.
Figure 165. Job File Right-Click Menu
348
PN: 071-0961-00, January 2008
Adding Binning to the Job file
3. Select the Main tab.
4. Add the Binning Definition file in the Bin Definition field using the file chooser.
5. Add the Binning Map file in the Bin Map field using the file chooser.
Figure 166. Job File—Main Tab
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
349
E – Diamond Series Basic Program Development
6. Select the Test Program tab and add the Binning C++ Source file using the file
chooser.
7. Save the file before closing the window.
Figure 167. Job File—Test Program Tab
File Chooser
350
PN: 071-0961-00, January 2008
Recompiling the Job File
Recompiling the Job File
To recompile the Job file:
1. Select Build > Build Tool... to recompile the Job file.
Figure 168. Build Pull-down Menu
2. Press the Generate Makefile button to recreate the makefile.
Figure 169. Generate Makefile Button
Generate Makefile Button
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
351
E – Diamond Series Basic Program Development
3. Press the make button to compile the STIL and C++ Source files.
Figure 170. make Button
make
Button
352
PN: 071-0961-00, January 2008
Reloading the Job File
Reloading the Job File
To reload the Job file:
1. Double-click on the Job name in the ITE file chooser window to load the job.
Figure 171. Loaded Job File
2. A dialog box appears asking about reloading files (see Figure 172). Press Yes to
reload the test program.
Figure 172. Reloading Files Message
3. Press Run to run the job and view the binning results.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
353
E – Diamond Series Basic Program Development
Figure 173. Running the Job
354
PN: 071-0961-00, January 2008
F
Credence Unified Robot Interface
Overview
The Credence Unified Robot Interface (CURI) has the following features:
•
Defines and implements a unified production integration environment across
Credence platforms
•
Implements a unified robot interface
The interface that integrates the CURI system includes:
•
Single API for all test systems
Support standard Credence programming environments (DLL interface for native
code base test systems)
•
API acts as bridge to unified driver set
•
Unified driver set requirements
The CURI software applications are installed from the CURI software CD and located in
the cred_apps folder.
For integration assistance or additional information contact the Credence Integration
Software Group at isg_help@credence.com
Production Robot
Handlers and probers are the most common examples of robots. Robots have to
following features:
•
•
Any equipment that can issue a ready to test event, including: (In the event of multiple
test start options, able to distinguish site.)
–
Parallel synchronous test
–
Parallel asynchronous test
–
Combination of above
Any equipment that can accept test system directed operations, including:
–
Chuck device (normally with binning information)
–
Pause test
–
Resume test
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
355
F – Credence Unified Robot Interface
–
Stop test
–
Abort test
–
User defined robot operations
Figure 174. System to Robot Flow
Independent
Test Systems
Test System
API
Unified
Controller
Robots
EG
Diamond Series
Test System
Unified
Native DLL
TEL
Robot
Controller
TSK
MCT
Mirare
Seiko
Test System API
The test system API must have the following features:
356
•
Can begin automated test (including Start test, End test, and Lot/Wafer/Site
information)
•
New features can be added without change in interface specification
•
Independent of global infrastructure
•
Customizable at multiple levels, including:
–
Customer can add a link to the end lot for data transfer
–
ISG can add new robot
–
Test system operating system can support new common features
PN: 071-0961-00, January 2008
Test System Communications Protocol
Test System Communications Protocol
The first step in understanding the prober/handler interface software, is to understand the
handshaking that occurs between the test system and the handler or prober.
Figure 175. Test System to Handler Communication Flow
Test System
Handler
Send Bin/Test Complete
Load Next Device(s)
Send Test Start
Query for Active Sites
Send Active Sites
Run Device Test
Figure 176. Normal Prober Operation
Test System
Prober
Send Bin/Test Complete
Index to Next Die
Send Test Start
Query for X/Y Coords
Send X/Y Coords
Query for Active Sites
Send Active Sites
Run Device Test
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
357
F – Credence Unified Robot Interface
Figure 177. Operation at End-of-Wafer
Test System
Prober
Send Bin/Test Complete
Send End-of-Wafer
Unload Tested Wafer
Call end_of_wafer()
Load New Wafer
Index to First Die
Send Test Start
Go to Figure 176
"Normal Prober Operation"
The software uses maps to store the wafer ID, X/Y coordinates, and other information.
GPIB ANSI Connector/IEEE 488 Interface
There is only one GPIB port on the test system (labelled GPIB). Since GPIB connectors
can be stacked on top of each other, it is possible to connect more than one piece of
equipment to the port.
The test system supports polling the GPIB port.
The following GPIB addresses are reserved for use by the test system:
•
21—Fluke
•
20—DC5010
•
19—ACS
•
13—1151 #2
•
12—1151 #1
•
0—GPIB controller board
Table 24. 24-Pin GPIB Bus Pin Out (Sheet 1 of 2)
358
Pin #
Signal Names
Signal Description
1
DIO1
Data Input/Output Bit 1
2
DIO2
Data Input/Output Bit 2
3
DIO3
Data Input/Output Bit 3
4
DIO4
Data Input/Output Bit 4
5
EIO
End-Or-Identify
6
DAV
Data Valid
PN: 071-0961-00, January 2008
Test System Communications Protocol
Table 24. 24-Pin GPIB Bus Pin Out (Sheet 2 of 2)
Pin #
Signal Names
Signal Description
7
NRFD
Not Ready For Data
8
NDAC
Not Data Accepted
9
IFC
Interface Clear
10
SRQ
Service Request
11
ATN
Attention
12
Shield
Chassis Ground
13
DIO5
Data Input/Output Bit 5
14
DIO6
Data Input/Output Bit 6
15
DIO7
Data Input/Output Bit 7
16
DIO8
Data Input/Output Bit 8
17
REN
Remote Enable
18
Shield
Ground (DAV)
19
Shield
Ground (NRFD)
20
Shield
Ground (NDAC)
21
Shield
Ground (IFC)
22
Shield
Ground (SRQ)
23
Shield
Ground (ATN)
24
Single
GND Single Ground
RS-232 Interface
The RS-232 cable requires only three wires to be connected: pins 2, 3 and 7. Pins 2 and
3 are transmit and receive lines. They should be wired straight across (not the null
modem configuration). Pin 2 on one end of the cable should go to pin 2 on the other end
of the cable, and similarly for pin 3.
RS-232 interrupts can be enabled or disabled. The RS-232 ports on the test system are
labelled Prober 1 and Prober 2. Prober 1 is used with the testhead.
Table 25. RS-232—EIA232 Pinout (Sheet 1 of 2)
DB-25
1
DCE
DB-9
Name
Protective Ground
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
359
F – Credence Unified Robot Interface
Table 25. RS-232—EIA232 Pinout (Sheet 2 of 2)
DB-25
DCE
DB-9
Name
2
TXD
3
Transmitted Data
3
RXD
2
Received Data
4
RTS
7
Request To Send
5
CTS
8
Clear To Send
6
DSR
6
Data Set Ready
7
GND
5
Signal Ground
8
CD
1
Received Line Signal Detector
9
Reserved for data set testing
10
Reserved for data set testing
11
Unassigned
12
SCF
Secondary Rcvd Line Signl Detctr
13
SCB
Secondary Clear to Send
14
SBA
Secondary Transmitted Data
15
DB
Transmisn Signl Elemnt Timng
16
SBB
Secondary Received Data
17
DD
Receiver Signal Element Timing
18
Unassigned
19
SCA
20
DTR
21
CG
22
Secondary Request to Send
4
Data Terminal Ready
Signal Quality Detector
9 Ring Indicator
23
CH/CI
Data Signal Rate Selector
24
DA
Transmit Signal Element Timing
25
Unassigned
OIC
The Operator Interface Control (OIC) is a Graphical User Interface (GUI) that provides a
convenient way of operating the Diamond Series test system.
360
PN: 071-0961-00, January 2008
OIC
The architecture for communicating with the test system is that of a Client-Server TCP/IP
interface between the OIC and the Diamond Series Test Executive.
For more information on the Diamond Series OIC, refer to chapter 24.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
361
F – Credence Unified Robot Interface
CURI_CONF.XML Settings
The CURI_CONF settings are composed of four sections:
•
Default Equipment (1)
•
Equipment entries (multiple)
•
Config/Communications list (multiple allowed, only one is distro)
•
CommunicationsAccess (multiple allowed, only one is distro)
The curi_conf.xml file is located at \cred_apps\config\curi_conf.xml.
Default Equipment
Table 26. Default Equipment
Equipment Name
Library
Config Ref
Mapping Equipment
"Simulator" on page 363
simulator
Default configuration
False
"Simulate Probe" on page 363
simulator
Default configuration
True
"TSK UF Series" on page 364
uf200
Default configuration
True
"Electroglas Series" on page 365
EG_40xx
Default configuration
True
"TEL Series" on page 365
tel_P8
Default configuration
True
"TTL Test" on page 366
dio96_test
Default configuration
False
"Ismeca TTL" on page 366
ismeca_ttl
Default configuration
False
"NEC TTL" on page 366
nec_ttl
Default configuration
False
"Epson Series" on page 367
epson
Default configuration
False
"Aetrium TR Series" on page 367
aetrium
Default configuration
False
"EH3300" on page 367
eh3300
Default configuration
False
"Delta Flex" on page 368
flex
Default configuration
False
"HT8080" on page 368
ht8080
Default configuration
False
"MCT" on page 368
mct
Default configuration
False
"MultiTest 9510" on page 369
mt9510
Default configuration
False
"Mirae 5500" on page 369
mr5500
Default configuration
False
"Rasco Series" on page 369
rasco
Default configuration
False
"GPIB 4863" on page 370
gpib4863
Default configuration
False
"Hot Keys" on page 370
hotkeys
Default configuration
False
362
PN: 071-0961-00, January 2008
CURI_CONF.XML Settings
Equipment Entries
Table 27. Simulator
Equipment Name
Library
Simulator
Simulator
Settings
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
SkipHardBin
11
SkipSoftBin
111
Note — * default value
Table 28. Simulate Probe
Equipment Name
Library
Config Ref
Mapping
Equipment
Default Configuration
True
ErrorHardBin
*7
ErrorSoftBin
*9999
SkipHardBin
11
SkipSoftBin
111
Token
Value
Equipment Sets Lot ID
*True
Equipment Sets Map ID
*True
Equipment Sets SubLot ID
*True
Simulator
Simulate Probe
Settings
boolSetting
Note — * default value
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
363
F – Credence Unified Robot Interface
Table 29. TSK UF Series
Equipment
Name
Library
uf200
Tsk Uf Series
Settings
boolSetting
stringSetting
Config Ref
Mapping Equipment
Default
Configuration
True
ErrorHardBin
*7
ErrorSoftBin
*9999
Token
Value
AutoStart
*True
OCRWfrID
*True
BIN_WITH
_CATEGORY
*True
Token
Value
BIN_TYPE
*Hard
CATEGORY
_DATA
*BINARY_MODE_0
BINARY_MODE_1
ORIGIN
*ORIGIN_TOP_LEFT,
ORIGIN_TOP_RIGHT,
ORIGIN_BOTTOM_LEFT,
ORIGIN_BOTTOM_RIGHT
Note — * default value
364
PN: 071-0961-00, January 2008
CURI_CONF.XML Settings
Table 30. Electroglas Series
Equipment Name
Electroglas
Series
Library
EG_40xx
Settings
boolSetting
Config Ref
Mapping
Equipment
Default
Configuration
True
ErrorHardBin
*7
ErrorSoftBin
*9999
Token
Value
Equipment Sets
Lot ID
*True
Equipment Sets
Map ID
*True
Equipment Sets
SubLot ID
*True
Note — * default value
Table 31. TEL Series
Equipment Name
Library
tel_P8
TEL Series
Settings
boolSetting
Config Ref
Mapping
Equipment
Default
Configuration
True
ErrorHardBin
*7
ErrorSoftBin
*9999
Token
Value
Equipment Sets
Lot ID
*True
Equipment Sets
Map ID
*True
Equipment Sets
SubLot ID
*True
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
365
F – Credence Unified Robot Interface
Table 32. TTL Test
Equipment Name
Library
dio96_test
TTL Test
Settings
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
3
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
0
ErrorSoftBin
*9999
Note — * default value
Table 33. Ismeca TTL
Equipment Name
Library
ismeca_ttl
Ismeca TTL
Settings
Note — * default value
Table 34. NEC TTL
Equipment name
Library
nec_ttl
NEC TTL
Settings
Note — * default value
366
PN: 071-0961-00, January 2008
CURI_CONF.XML Settings
Table 35. Epson Series
Equipment Name
Library
epson
Epson Series
Settings
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Note — * default value
Table 36. Aetrium TR Series
Equipment Name
Library
aetrium
Aetrium TR Series
Settings
Note — * default value
Table 37. EH3300
Equipment Name
Library
eh3300
EH3300
Settings
Note — * default value
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
367
F – Credence Unified Robot Interface
Table 38. Delta Flex
Equipment Name
Library
flex
Delta Flex
Settings
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Note — * default value
Table 39. HT8080
Equipment Name
Library
ht8080
HT8080
Settings
Note — * default value
Table 40. MCT
Equipment Name
Library
mct
MCT
Settings
Note — * default value
368
PN: 071-0961-00, January 2008
CURI_CONF.XML Settings
Table 41. MultiTest 9510
Equipment Name
Library
mt9510
MultiTest 9510
Settings
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Note — * default value
Table 42. Mirae 5500
Equipment Name
Library
mr5500
Mirae 5500
Settings
Note — * default value
Table 43. Rasco Series
Equipment name
Library
rasco
Rasco Series
Settings
Note — * default value
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
369
F – Credence Unified Robot Interface
Table 44. GPIB 4863
Equipment Name
Library
gpib4863
GPIB-4863
Settings
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Config Ref
Mapping
Equipment
Default
Configuration
False
ErrorHardBin
*7
ErrorSoftBin
*9999
Token
Value
CTRL
*True
ALT
*True
SHIFT
*True
OS
*True
Token
Value
KEY
G
Note — * default value
Table 45. Hot Keys
Equipment Name
Library
hotkeys
Hot Keys
Settings
boolSetting
stringSetting
Note — * default value
370
PN: 071-0961-00, January 2008
CURI_CONF.XML Settings
Table 46. Default Communications List
Access
Name
Library
GPIB
curi_ni_gpib 1
\r\n
Com3
RS232
Standard
Comm Port
curi_rs232
\r\n
NI USB
DAQ DIO
TTL
curi_ni_daq
_dio96
ASL PCI
PORT
ASL_XP curi_asl_ttl
_TTL
False
ASL AT
PORT
ASL_NT curi_asl_ttl
_TTL
False
65000
Standard
IP Port
TCPIP
curi_tcpip
Standard
USB Port
USB
curi_usb
Access ID
NI GPIB
USB
Primary Termin TARGET
IP_ADDR IbcTMO IbcEOT Default
Address ation
_FQN
11
1
False
False
False
localhost 127.0.0.1
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
False
False
371
F – Credence Unified Robot Interface
Table 47. Communications Access
Access
AutoLoad
Name
Primary GPIB
Address Link
ConfigRef
True
Default
Communications Configuration
List
Termination Default
Ibc
TMO
Ibc
EOT
Access
Library
Name
DriverID
1
GPIB
curi_ni_gpib
NI GPIB USB B
\r\n
False
11
1
3
Scope
curi_comms
_loopback
NI GPIB USB B
\r\n
False
11
1
5
Meter
curi_comms
_loopback
NI GPIB USB B
\r\n
False
11
1
Invoke
Command
tieTo
MustWait
useDire
ctCmd
Read
commsRead
False
Write
commsWrite
False
Query
commsQuery
False
Poll
directCommand
True
Purge
clearComms
False
WaitFor
commsWaitEvent True
SERIAL_
POLL
Example Code Using Direct Communications Access
try {
cscExec->Robot()->invokeCommand("GPIB Link:Meter:Query", "*IDN?", false);
std::string idnReply = cscExec->Robot()->get("GPIB Link:Meter:Query");
std::cout << "*IDN? : " << idnReply << std::endl;
} catch (...) {
std::cout << "*IDN? : " << "Query Failed" << std::endl;
}
372
PN: 071-0961-00, January 2008
uf_series_maps.XML Commands
uf_series_maps.XML Commands
A (String):XY Travel (Absolute Distance)
A
Y
±
105 104 103 102 101 100 X
±
105 104 103 102 101 100 CR LF
(Unit: 100 µm or 10-4 inch)
Upon receiving this command, Chuck is set to Z-DOWN. It travels from the current
position by the demanded X/Y amounts, and then Chuck height is returned to that before
receiving this command.
X+ is leftward, and Y+ backward
Command receive
"A"
No
Command error
Yes
No
STB=74
Probing
going on?
Target Position
within probing area?
SRQ send
Yes
No
Chuck in
Z-DOWN?
Z-DOWN
Yes
Travel to the
target position
No
Z-UP
Finish at Z-UP
: STB = 67
Finish at Z-DOWN : STB = 65
Chuck in
Z-DOWN
before the travel?
SRQ send
Note — 1) The Probing going on period is from the positioning of the start die till the wafer
last die testing end. 2) A specified travel distance over 1/2 index (but less than one index)
in X or Y direction changes the die coordinate value by ±1 after the travel.
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
373
F – Credence Unified Robot Interface
H:Multisite Location No. Request
H
CR
LF
When Prober has received this command and it is allowed as Talker, it outputs the
channel location number registered in the device data.
Response
Channel Location Number
I:Index Size Setting
I
Y
104
103
102
101
100
X
104
103
102
101
100
CR
LF
(Unit: 100 µm or 10-4 inch)
At receiving this command, the index sizes of die are changed accordingly.
Command receive
"I"
No
Command error
Waiting
for lot process
start?
Yes
Setup of
X/Y index sizes
STB = 77
SRQ send
Note — After execution of this command, wafer alignment and probe-pad alignment
become necessary.
374
PN: 071-0961-00, January 2008
uf_series_maps.XML Commands
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SITECONF [
<!-- Definition of Site Configuration Map -->
<!ELEMENT SITECONF (Config, Map+)>
<!ELEMENT Config (#PCDATA| EquipmentInfo)*>
<!ATTLIST Config
equipID ID #IMPLIED
DefaultEquipment CDATA #IMPLIED
>
<!ELEMENT EquipmentInfo (#PCDATA)>
<!ATTLIST EquipmentInfo
EquipmentName CDATA #IMPLIED
>
<!ELEMENT Map (BoxParam)+>
<!ATTLIST Map
MapReference CDATA "siteGrouping"
EquipRef IDREF #IMPLIED
FirstSite (0 | 1) "0"
NumSites
CDATA "1"
BoxWidth
CDATA "1"
BoxDepth
CDATA "1"
>
<!ELEMENT BoxParam (#PCDATA)>
<!ATTLIST BoxParam
Site
CDATA #REQUIRED
Xoffset
CDATA #REQUIRED
Yoffset
CDATA #REQUIRED
>
]>
Note — H returns a Map Reference 2 digit code
<SITECONF>
<Config equipID="TSK" DefaultEquipment="UF200" >
<EquipmentInfo EquipmentName="TSK UF Series"/>
</Config>
<Map MapReference="01" EquipRef="TSK" NumSites="2" BoxWidth="2" BoxDepth="2" >
Offset
-1
1
1
0
0
0
<BoxParam Site="0" Xoffset="0" Yoffset="0"/>
<BoxParam Site="1" Xoffset="-1" Yoffset="1"/>
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
375
F – Credence Unified Robot Interface
</Map>
<Map MapReference="26" EquipRef="TSK" NumSites="16" BoxWidth="2" BoxDepth="1" >
Offset
0
1
0
0
8
-1
1
9
-2
2
10
-3
3
11
-4
4
12
-5
5
13
-6
6
14
-7
7
15
<BoxParam Site="0" Xoffset="0" Yoffset="0"/>
<BoxParam Site="1" Xoffset="0" Yoffset="-1"/>
<BoxParam Site="2" Xoffset="0" Yoffset="-2"/>
<BoxParam Site="3" Xoffset="0" Yoffset="-3"/>
<BoxParam Site="4" Xoffset="0" Yoffset="-4"/>
<BoxParam Site="5" Xoffset="0" Yoffset="-5"/>
<BoxParam Site="6" Xoffset="0" Yoffset="-6"/>
<BoxParam Site="7" Xoffset="0" Yoffset="-7"/>
<BoxParam Site="8" Xoffset="1" Yoffset="0"/>
<BoxParam Site="9" Xoffset="1" Yoffset="-1"/>
<BoxParam Site="10" Xoffset="1" Yoffset="-2"/>
<BoxParam Site="11" Xoffset="1" Yoffset="-3"/>
<BoxParam Site="12" Xoffset="1" Yoffset="-4"/>
<BoxParam Site="13" Xoffset="1" Yoffset="-5"/>
<BoxParam Site="14" Xoffset="1" Yoffset="-6"/>
<BoxParam Site="15" Xoffset="1" Yoffset="-7"/>
</Map>
<Map MapReference="X9" EquipRef="TSK" NumSites="72" BoxWidth="12" BoxDepth="6"
FirstSite="1" >
376
Offset
-9
-8
-7
-6
-5
-4
-3
-2
-1
0
1
2
1
34
36
35
24
22
20
18
16
15
12
2
4
0
29
32
33
25
23
19
17
11
13
1
3
5
-1
28
27
30
31
26
21
14
8
6
7
9
10
-2
46
45
43
44
38
52
59
65
67
66
64
63
-3
41
42
40
48
49
54
56
62
60
72
70
68
-4
39
37
47
50
51
53
55
57
58
61
71
69
PN: 071-0961-00, January 2008
uf_series_maps.XML Commands
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
Site="1" Xoffset="0" Yoffset="0"/>
Site="2" Xoffset="1" Yoffset="1"/>
Site="3" Xoffset="1" Yoffset="0"/>
Site="4" Xoffset="2" Yoffset="1"/>
Site="5" Xoffset="2" Yoffset="0"/>
Site="6" Xoffset="-1" Yoffset="-1"/>
Site="7" Xoffset="0" Yoffset="-1"/>
Site="8" Xoffset="-2" Yoffset="-1"/>
Site="9" Xoffset="1" Yoffset="-1"/>
Site="10" Xoffset="2" Yoffset="-1"/>
Site="11" Xoffset="-2" Yoffset="0"/>
Site="12" Xoffset="0" Yoffset="1"/>
Site="13" Xoffset="-1" Yoffset="0"/>
Site="14" Xoffset="-3" Yoffset="-1"/>
Site="15" Xoffset="-1" Yoffset="1"/>
Site="16" Xoffset="-2" Yoffset="1"/>
Site="17" Xoffset="-3" Yoffset="0"/>
Site="18" Xoffset="-3" Yoffset="1"/>
Site="19" Xoffset="-4" Yoffset="0"/>
Site="20" Xoffset="-4" Yoffset="1"/>
Site="21" Xoffset="-4" Yoffset="-1"/>
Site="22" Xoffset="-5" Yoffset="1"/>
Site="23" Xoffset="-5" Yoffset="0"/>
Site="24" Xoffset="-6" Yoffset="1"/>
Site="25" Xoffset="-6" Yoffset="0"/>
Site="26" Xoffset="-5" Yoffset="-1"/>
Site="27" Xoffset="-8" Yoffset="-1"/>
Site="28" Xoffset="-9" Yoffset="-1"/>
Site="29" Xoffset="-9" Yoffset="0"/>
Site="30" Xoffset="-7" Yoffset="-1"/>
Site="31" Xoffset="-6" Yoffset="-1"/>
Site="32" Xoffset="-8" Yoffset="0"/>
Site="33" Xoffset="-7" Yoffset="0"/>
Site="34" Xoffset="-9" Yoffset="1"/>
Site="35" Xoffset="-7" Yoffset="1"/>
Site="36" Xoffset="-8" Yoffset="1"/>
Site="37" Xoffset="-8" Yoffset="-4"/>
Site="38" Xoffset="-5" Yoffset="-2"/>
Site="39" Xoffset="-9" Yoffset="-4"/>
Site="40" Xoffset="-7" Yoffset="-3"/>
Site="41" Xoffset="-9" Yoffset="-3"/>
Site="42" Xoffset="-8" Yoffset="-3"/>
Site="43" Xoffset="-7" Yoffset="-2"/>
Site="44" Xoffset="-6" Yoffset="-2"/>
Site="45" Xoffset="-8" Yoffset="-2"/>
Site="46" Xoffset="-9" Yoffset="-2"/>
Site="47" Xoffset="-7" Yoffset="-4"/>
Site="48" Xoffset="-6" Yoffset="-3"/>
Site="49" Xoffset="-5" Yoffset="-3"/>
Site="50" Xoffset="-6" Yoffset="-4"/>
Site="51" Xoffset="-5" Yoffset="-4"/>
Site="52" Xoffset="-4" Yoffset="-2"/>
Site="53" Xoffset="-4" Yoffset="-4"/>
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
377
F – Credence Unified Robot Interface
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
<BoxParam
Site="54"
Site="55"
Site="56"
Site="57"
Site="58"
Site="59"
Site="60"
Site="61"
Site="62"
Site="63"
Site="64"
Site="65"
Site="66"
Site="67"
Site="68"
Site="69"
Site="70"
Site="71"
Site="72"
Xoffset="-4" Yoffset="-3"/>
Xoffset="-3" Yoffset="-4"/>
Xoffset="-3" Yoffset="-3"/>
Xoffset="-2" Yoffset="-4"/>
Xoffset="-1" Yoffset="-4"/>
Xoffset="-3" Yoffset="-2"/>
Xoffset="-1" Yoffset="-3"/>
Xoffset="0" Yoffset="-4"/>
Xoffset="-2" Yoffset="-3"/>
Xoffset="2" Yoffset="-2"/>
Xoffset="1" Yoffset="-2"/>
Xoffset="-2" Yoffset="-2"/>
Xoffset="0" Yoffset="-2"/>
Xoffset="-1" Yoffset="-2"/>
Xoffset="2" Yoffset="-3"/>
Xoffset="2" Yoffset="-4"/>
Xoffset="1" Yoffset="-3"/>
Xoffset="1" Yoffset="-4"/>
Xoffset="0" Yoffset="-3"/>
</Map>
</SITECONF>
378
PN: 071-0961-00, January 2008
Writing CURI Drivers
Writing CURI Drivers
Creating a Handler Interface
Table 48. Commands
Command
Multitest
Command
Start handler
STA!
Stop handler
STO!
Reset to local mode
LOC!
Set handler ID
ID
%16S
Set SQB mask
SQBM
%D
Binning category site 1
A BIN
%(1..2)D
Binning category site 2
B BIN
%(1..2)D
Binning category site 1
and site 2
A BIN
%(1..2)D B BIN
Assignments to Contact
Sites is Allowed
Binning category site 3
(QUAD only)
C BIN
%(1..2)D
Binning category site 4
(QUAD only)
D BIN
%(1..2)D
Example:
A BIN 1 C BIN 13 B BIN 14
D BIN 2
Arguments
Note
MT9510 ONLY
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
Any Combination and
Sequence of Bin
379
F – Credence Unified Robot Interface
Figure 178. Handler Interface
CURI
User Defined Driver Code
Auto Test
User
Init?
Yes
User
Initialize
Start?
Start
Function?
Yes
Start Handler
Commands
User
Start
No
Test System
Ready?
Yes
Ready to Test?
Test
Program
All Sites
Complete?
Yes
Yes
User Send
Bin Info
Binning
Commands
Testing?
No
End Auto
380
PN: 071-0961-00, January 2008
Writing CURI Drivers
User defined code example:
/*!
* \file sqb_protocol.cpp
*
* \copyright 2006, Credence Systems Corporation, Integration Software Group
*
* A typical setup in the configuration file would be as follows:
*
<Equipment EquipmentName="MultiTest 9510" Library="sqb_protocol">
<CommunicationsList>
<GPIB_IF PrimaryAddress="10"/>
</CommunicationsList>
<Settings>
<ErrorHardBin> 7 </ErrorHardBin>
<ErrorSoftBin> 9999 </ErrorSoftBin>
<stringSetting token="Sites Supported" value="4"/>
<boolSetting token="Serial Poll Sets Sites Ready" value="true"/>
</Settings>
</Equipment>
*
*/
#if (defined(WIN32) || defined(_WINDOWS))
#include "stdafx.h"
#endif
#include <cmos_curi_platform.h>
#include <cmos_curi_types.h>
#include <cmos_curi_equipment.h>
#define CHUCK_DOWN 0
#define CHUCK_UP
1
#define SRQ_VALID 0x40
#define SRQ_SITE_MASK 0x0F
//////////////////////////////////////////////////////////////////////////
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
//////////////////////////////////////////////////////////////////////////
class theHandler : public curi::plugins::equipment {
private:
bool m_usePollForSitesReady;
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
381
F – Credence Unified Robot Interface
public:
theHandler(curi::plugins::equipment_controller& cCtrl,
const std::string& name,
const std::string& rev);
bool
bool
bool
bool
InitEquipment(void);
StartAutoTest(void);
GetSitesReady(i2iMap &activeDuts, InterfaceControlEvent & evt);
BinOut(const binInfoArray& binMap);
};
//////////////////////////////////////////////////////////////////////////
CMOS_CURI_REGISTER_EQUIPMENT
curi_register_equipment(curi::plugins::equipment_controller& cCtrl)
{
theHandler *handler = new theHandler(cCtrl, "SQB Protocol", "1.0");
return handler;
}
CMOS_CURI_CLEAR_EQUIPMENT curi_clear_equipment(curi::plugins::equipment*
thisRobot)
{
if (NULL == thisRobot) return false;
delete (theHandler *) thisRobot;
return true;
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
theHandler::theHandler(curi::plugins::equipment_controller& cCtrl,
const std::string& name,
const std::string& rev) : equipment(cCtrl)
{
driverID(name);
driverRevision(rev);
m_usePollForSitesReady = false;
}
//////////////////////////////////////////////////////////////////////////
//
// User Initialization function.
//
// Here we query the configuration file to see how many sites the equipment
// supports. If the configuration file does not set the "Sites Supported"
// setting, the default to single site mode.
//
bool theHandler::InitEquipment(void)
{
long l_nSites = 1;
382
PN: 071-0961-00, January 2008
Writing CURI Drivers
// Get the number of sites from the configuration file as there
// is no way to read it back from the handler.
if (!ctrl().getL("Sites Supported", l_nSites)) l_nSites = 1;
ctrl().sitesSupported(l_nSites);
// We can use two methods for querying for sites ready, the first is using
// the serial poll (only if sites supported is 4 or lower), the second is to
// use the SQB? & SITES? commands.
m_usePollForSitesReady = false;
if (l_nSites < 5) ctrl().getB("Serial Poll Sets Sites Ready",
m_usePollForSitesReady);
return true;
}
//////////////////////////////////////////////////////////////////////////
//
// User Start Function
//
// As per the sqb protocol, on a start condition we can issue the "STA!"
// Command.
//
bool theHandler::StartAutoTest(void)
{
// As this is a start, lets clear the communications first.
if (!ctrl().clearAllComms()) return false;
// Return the condition of the write command.
return ctrl().curiWrite("STA!");
}
//////////////////////////////////////////////////////////////////////////
//
// Ready To Test? function.
//
//
bool theHandler::GetSitesReady(i2iMap &activeDuts, InterfaceControlEvent & evt)
{
long l_spoll = 0;
if (!ctrl().directCommand("SEROAL_POLL", l_spoll)) return false;
if ((l_spoll & SRQ_VALID) != SRQ_VALID) return false;
unsigned long l_sitesReady = 0;
if (m_usePollForSitesReady) l_sitesReady = l_spoll & SRQ_SITE_MASK;
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
383
F – Credence Unified Robot Interface
else { // Use Slower SQB method.
std::string l_reply("");
if (!ctrl().curiQuery("SQB?", l_reply)) return false;
if (l_reply.length() < 1) return false;
l_sitesReady = (unsigned long)(l_reply[0]) & SRQ_SITE_MASK;
}
if (!l_sitesReady) return false;
long idx;
unsigned long mask;
bool l_haveSite = false;
for (idx = 0, mask = 0x01; idx < ctrl().sitesSupported(); idx++, mask <<= 1)
{
if (l_spoll & mask) {
l_haveSite = true;
activeDuts[idx] = 1;
}
}
if (l_haveSite) evt = START_DEVICE;
return l_haveSite;
}
//////////////////////////////////////////////////////////////////////////
//
// User Send Bin Info function
//
// Build up the output buffer using the defined protocol.
//
// eg, site 1, bin 4
//
site 3, bin 2
//
// Output A BIN 4 C BIN 2
//
bool theHandler::BinOut(const binInfoArray& binMap)
{
char binBuffer[256];
std::string binOut("");
char l_spacer[2];
memset(l_spacer, 0, sizeof(l_spacer));
binInfoArray::const_iterator binIter;
for (binIter = binMap.begin(); binIter != binMap.end(); binIter++) {
sprintf(binBuffer, "%c%c BIN %d", l_spacer, ('A' + binIter>second.siteNumber), binIter->second.hardBin);
binOut += binBuffer;
l_spacer[0] = ' ';
}
384
PN: 071-0961-00, January 2008
Writing CURI Drivers
return ctrl().curiWrite(binOut);
}
Putting It All Together
The Serial Polling service request feature mechanism is a very fast means to get the
information about contact sites ready for test via the IEEE communication. The slower
way is polling with the SQB? request command. This mechanism is always active, but the
test system is not obliged to use it.
Additionally bit 7 is set whenever one of the bits 0...3 changes to active state. Bit 7 states
that the test system can start to test the device under test (DUT). This is additional
information, if the test system cannot utilize bits 0...3.
•
Bit 0 set = CS 1 ready for test
•
Bit 1 set = CS 2 ready for test
•
Bit 7 set = Start of test active
Ready to Test
Table 49. User Defined Ready to Test
Multitest
Command
Response
Note
Contact sites
ready for test
SQB?
%1S[0..?]
MT93xx only:
For any combinations of CS Ready
For Test
Example of responses:
0 No CS Ready For Test
1 CS 1 Ready For Test
3 CS 1 and CS @ Ready For Test
? CS 1 TO CS 4 Ready For Test
Handler ID
ID?
%24S
Current
temperature of
contact sites CS
TMP?
%S4:1%S4:1
Command
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
Format is contact site temp,
contact site temp.
Dual: CS ICS 2
Quad: CS1 + CS 2CS 3 + CS 4
Example: +100.1,+099.9
385
F – Credence Unified Robot Interface
Figure 179. Ready to Test
CURI
User Defined Driver Code
Test Program
Device Interface
Load
kph_initialize?
Yes
User Defined
Initialize
Start?
kph_start?
Yes
User Defined
Start
No
No
Test System
Ready?
Yes
No
All Sites
Complete?
Yes
Yes
Yes
User Defined
Ready to Test?
User Defined
Send Bin Info
Continue
Testing?
No
End Lot
386
PN: 071-0961-00, January 2008
Using NI SPY to Log GPIB Communication
Using NI SPY to Log GPIB Communication
NI SPY uses National Instruments 488.2 software version 2.2.5 or higher.
Note — To use NI SPY to log GPIB communications, version 1.4.2 or later of the
Diamond Series software must be installed.
To log GPIB communications to using NI SPY:
1. Issue the nispy command to start the NI SPY program.
2. Select Options from the Spy pull-down menu.
Figure 180. Spy Pull-Down Menu
3. Enter 999999 for Call history depth, select Full Buffer from the NI Spy Options
window, and press Ok.
Figure 181. NI Spy Options
Diamond ™ Series Mixed Signal (MultiWave) Applications – Student Guide
387
F – Credence Unified Robot Interface
4. Start capture by pressing the Start Capture button (see Figure 182).
Figure 182. Start Capture Button
After the Start Capture option is set, the Ni-SPY application starts logging any GPIB
communication between the test system and the prober/handler.
If the test system is started with the prober/handler DLL loaded. Figure 183 shows the
Ni-SPY log.
Figure 183. NI Spy Capture Log
Note — To save the data to a file:
1. Select Stop Capture from the Spy pull-down menu.
2. Select Save from the File pull-down menu.
Figure 184. Spy Pull-Down Menu
on
Start Capture F8
Stop Capture Ctrl+Break
Options
388
PN: 071-0961-00, January 2008
Download