December 10, 2016 | Author: Webber You | Category: N/A
ASL Series Programming Guide visualATE 5.2.3 PN: 071-0490-01 August, 2005
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)
[email protected] (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—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 Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the rights in Technical Data and Computer Software Clause at DFARS 252.227-7013 or in subparagraph (c)(2) of the Commercial Computer Software - Restricted Rights Clause at FAR 52.227-19, as applicable.
Printed in August, 2005 in the U.S.A. All rights reserved. © 2005 Credence Systems Corporation Notices: Credence, Kalos, ASL x000, Sapphire 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.
CONTENTS 1 - About this Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Scope of this Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Notation Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How to Use the Programming Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Syntax Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programming Sample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . connect_vi_force . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Related Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Operation Safety Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Safety Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Electromagnetic Compatibility (EMC) System Requirements . . . . . . . . . . . . . . . . . ASL-Based Series Test System Immunity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL-Based Series Test System Emissions . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26 26 26 26 27 28 28 28 29 31 32 34 35 35 35
2 - visualATE Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 visualATE System Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Test Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Limit Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Program Creation Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Program Selection Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a New Test Program File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Directories for Test Program Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Test Program Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating Test Programs after Changing the Parent List . . . . . . . . . . . . . . . . . The ASL 1000 Tester . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instrument Cards for the ASL 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The ASL 3000RF Tester . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RF Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38 38 38 39 41 42 44 44 45 47 47 49 50
3 - ACS - AC Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Basic Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Waveform Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Additional Output Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
ASL Series Programming Guide
3
Contents
Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Waveform Generator Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_bw_ref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Waveform Memory and Clock Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . ldram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . load_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . load_address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . card.clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AC Meter Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ACS Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ACS Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sinusoid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Trapezoid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59 59 59 59 60 62 63 63 64 64 65 66 66 67 67 68 68 70 71 71 71
4 - DCC - Data Converter Card . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . select_adc_mux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . select_adc_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . select_iva_range select_ivb_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_high_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_low_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_prec_ref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_prec_ref_fine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current_force . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_servo_hi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_servo_lo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_servo_ref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_servo_trig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_servo_code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . drives_0_7_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
74 74 74 75 75 76 77 77 78 79 79 80 80 81 81 82 82
PN: 071-0490-01, August, 2005
Contents
close_switch open_switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . clear_relays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DCC Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TUE, INL, and DNL (8-bit ADC using the DCC) . . . . . . . . . . . . . . . . . . . . . . . . Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Input Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83 84 85 86 86 88 89
5 - DDD - Digital Driver and Detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Single Board Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Channel Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 ddd_disconnect_drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 ddd_set_voltage_ref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 ddd_set_hi_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 ddd_set_lo_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Clock and Timing Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 ddd_set_clock_freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 ddd_set_clock_period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 ddd_set_no_delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 ddd_set_delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 Pattern Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 ddd_load_pattern (non-loop mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 ddd_load_pattern (loop mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 ddd_end_pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 ddd_run_pattern (non-loop mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 ddd_run_pattern (loop mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 ddd_stop_pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 ddd_read_pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 ddd_compare_pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Multiple Board Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Channel Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 init — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 ddd_disconnect_drivers — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . 103 ddd_set_compare_channels — Master and Slave . . . . . . . . . . . . . . . . . . . . . 104 ddd_set_voltage_ref — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 ddd_set_hi_level — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 ddd_set_lo_level — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Clock and Timing Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 ddd_set_clock_freq — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
ASL Series Programming Guide
5
Contents
ddd_set_clock_period — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_disable_clocks — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_set_no_delay — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_set_delay — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pattern Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_load_pattern —- Master and Slave (non-loop mode) . . . . . . . . . . . . . . ddd_load_pattern —- Master and Slave (loop mode) . . . . . . . . . . . . . . . . . . ddd_end_pattern — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_set_slave_pattern — Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_set_master_pattern — Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_run_slave_pattern — Slave (non-loop function) . . . . . . . . . . . . . . . . . . . ddd_run_master_pattern — Master (non-loop function) . . . . . . . . . . . . . . . . . ddd_run_slave_pattern — Slave (loop function) . . . . . . . . . . . . . . . . . . . . . . . ddd_run_master_pattern — Master (loop function) . . . . . . . . . . . . . . . . . . . . . ddd_stop_pattern —- Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_read_pattern — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ddd_compare_pattern — Master and Slave . . . . . . . . . . . . . . . . . . . . . . . . . . DDD Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vector Format Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . No Delays with 1- and 0-Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delays with 1- and 0-Data and Zs (RT1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delays with 1- and 0-Data and Ts (RT0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delays with Zs (RT1) and Ts (RT0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delays with Zs (RT1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delays with Ts (RT0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
107 107 108 108 109 109 110 111 111 112 112 113 113 114 114 115 115 117 118 118 119 120 121 122 123
6 - DOAL - Dual Op Amp Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Theory of the DOAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Opamp Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Relay and Switch Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Channel Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measurement Circuit Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_ia_offset_dac ch1_ia_offset_dac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_output_dac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_output_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . dac_output_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_gain_dac_ch0 set_gain_dac_ch1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
126 126 127 127 128 130 130 130 131 132 132 133
PN: 071-0490-01, August, 2005
Contents
set_int_dac_ch0 set_int_dac_ch1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . convert_read_adc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . select_adc_mux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . clear_relays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_switch open_switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . clear_switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DOAL Simplified Diagrams: CH0 and CH1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Testing VOS on a Dual Opamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Testing Input Bias Current on a Dual Opamp . . . . . . . . . . . . . . . . . . . . . . . . .
133 134 134 135 136 137 137 138 140 143 143 146
7 - DVI - Dual Voltage/Current Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 DVI Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Current Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_diff_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DVI-2000 Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_diff_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . was_it_hot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
152 153 155 155 155 156 158 159 160 162 162 163 163 164 166 166 166 167 168 169 170 171 171
7
Contents
Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DVI Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DVI Programming Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Supply Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
172 174 177 177
8 - HVS - High-Voltage Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . supply_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HVS Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HVS Programming Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
180 180 180 181 182 183 183 184 184 186 187
9 - LZB - Link/Zener Blower . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_clamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . convert_read_adc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LZB Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programming Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
190 190 190 191 191 192 192 193 193 195 196
10 - MUX - Resource Multiplexer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 MUX Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User Bus Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MUX Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
200 200 201 201 201 203
PN: 071-0490-01, August, 2005
Contents
11 - MVS - Medium-Voltage Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . supply_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MVS Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
206 206 206 207 208 209 209 210 210 212
12 - OFS - Octal Floating Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . supply_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OFS Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
214 214 214 215 216 217 217 218 218 220
13 - OVI - Octal Voltage/Current Source . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . connect disconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OVI Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
222 222 222 223 225 226 226 228 229
14 - PVI - Pulsed Voltage/Current Source . . . . . . . . . . . . . . . . . . . . . . . . . 231 PVI 10 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
ASL Series Programming Guide
9
Contents
set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . charge_on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . charge_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . supply_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_switch open_switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PVI 10 Formula Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PVI 100 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_meas_mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . charge_on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . charge_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_switch open_switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . volt_meas_range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . slow_comp normal_comp fast_comp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . current_fast current_normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . voltage_fast voltage_normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . kelvin_on kelvin_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . drive_on drive_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . drive_meas_off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PVI-100 Test Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PVI 100 Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
233 234 234 235 235 236 236 237 238 240 240 240 241 242 242 243 243 244 244 245
246 247 247 248 248 249 250 252
15 - TIA - Time Interval Analyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . arm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . do_general_setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
254 254 254 255
PN: 071-0490-01, August, 2005
Contents
measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . measure_skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . read_single_pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_sampling_mux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_threshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . setup_frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . setup_single_pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . setup_skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . std_dev_freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . std_dev_time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . average . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . average_skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . convert_samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . convert_freq_samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . convert_skew_samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . read_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . read_skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setup Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . done_setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . channel_enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . clock_source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . impedance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . coupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . threshold_volts_percent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a_count b_count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . chan_a_result chan_b_result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . conversion_done[channel] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . max_limit_active min_limit_active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . max_val min_val . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TIA Calibration and Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Board Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TIA Cal File Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Frequency Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Skew Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
256 256 257 258 258 259 260 260 261 262 263 263 264 265 265 266 267 267 268 268 269 270 270 270 271 272 272 273 274 275 275 276 276 278 278 278 278 280
11
Contents
16 - TMU - Time Measurement Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 TMU Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measurement Resolution and Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Input Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arming the TMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measuring Rise Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measuring Fall Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measuring Propagation Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measuring a Periodic Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Start and Stop Holdoff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Counting Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Start Holdoff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Stop Holdoff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Start and Stop Holdoff TIME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Start and Stop Holdoff EVENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . start_trigger_setup stop_trigger_setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . arm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . read_now . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . get_status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . set_control clear_control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . close_relay open_relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . start_holdoff stop_holdoff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
284 286 288 290 291 291 291 291 292 293 293 293 293 294 295 297 297 297 298 299 300 300 301 302 303 304
17 - Additional User Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 STDF User Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MIR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MIR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MRR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MRR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PCR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PCR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SDR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SDR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
308 308 309 309 310 310 310 310 311
PN: 071-0490-01, August, 2005
Contents
WIR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WIR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WRR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WRR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WCR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WCR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PTR Get Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PTR Set Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wafer Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_missing_wafer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_missing_wafer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_completed_wafer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_wafer_in_progress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_wafer_in_progress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_sublot_name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_sublot_name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_total_wafer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_total_wafer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_wafer_list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_wafer_list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Send_eow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set_prober_control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_prober_control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get_wafer_id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Miscellaneous Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . StopProgram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RunProgram GetLotIdName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetLotIdName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetSerialNum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetSerialNum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ClearLotSummaryComments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AppendLotSummaryComments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetPlotData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetProgramName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetProgramName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OpenErrorMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CloseErrorMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SendCommStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OnNewLot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetLimitSetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetLimitSetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
311 311 311 311 312 312 312 312 313 313 313 314 315 315 316 316 317 317 318 318 319 319 320 320 322 322 322 323 323 324 324 325 325 326 327 327 328 328 329 329 330 330
13
Contents
GetDeviceName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDeviceName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetProgramModeCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetProgramModeCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetProgramRevision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetProgramRevision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetProgramTestCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetProgramTestCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetOperationStepNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetOperationStepNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetTotalPass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetTotalFail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modal Dialog Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Support Code for Modal Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetStatusDialogHasYesButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetStatusDialogHasNoButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetStatusDialogHasOKButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetStatusDialogHasCancelButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDialogEditFieldLeftSideText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDialogEditFieldRightSideText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDialogTopMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDialogBottomMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDialogEditFieldInitializationText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RunModalDialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetStatusDialogYesButtonHasBeenPushed . . . . . . . . . . . . . . . . . . . . . . . . . . GetStatusDialogNoButtonHasBeenPushed . . . . . . . . . . . . . . . . . . . . . . . . . . GetStatusDialogOKButtonHasBeenPushed . . . . . . . . . . . . . . . . . . . . . . . . . . GetStatusDialogCancelButtonHasBeenPushed . . . . . . . . . . . . . . . . . . . . . . . GetEditFieldText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code Example 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code Example 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Datalog Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->set_test_no . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->test_val . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->tests[ ].passed_fail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->set_bin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->tests[ ].display_results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . func.dlog->display_results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . pass_bins[ ] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
331 331 332 332 333 333 334 335 335 336 336 337 338 339 341 342 343 344 345 346 347 348 349 350 351 351 352 352 353 353 355 359 359 359 359 360 360 361 361 362 362 363
PN: 071-0490-01, August, 2005
Contents
A - ASL 1000 Interconnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Supplies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Grounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
366 387 389 390
B - ASL 3000 Interconnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 DUT Board Test Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Test Interface Connector Sockets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Relay Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Miscellaneous Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RF DUT Interface Pinouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 28 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Slot 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
392 393 394 395 396 397 399 401 403 405 407 409 411 413 414 416 418 420 422 424 426 428 430 432 433 435 437 439 441 443 445 448 451 454 457
15
Contents
16
PN: 071-0490-01, August, 2005
TABLES 1 - About this Guide Table 1. Table 2. Table 3.
Font Treatments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Operation Safety Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Service Safety Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2 - visualATE Overview Table 4. Table 5. Table 6. Table 7.
Directory for Test Program Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Instruments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MVNA Boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RF Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44 48 50 51
3 - ACS - AC Source 4 - DCC - Data Converter Card 5 - DDD - Digital Driver and Detector 6 - DOAL - Dual Op Amp Loop Table 8. Table 9. Table 10. Table 11.
DOAL - Relays and Switches Closed on init . . . . . . . . . . . . . . . . . . . . . DOAL - Independent Relays and Switches . . . . . . . . . . . . . . . . . . . . . . Programmable Range Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I-V Converter Ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
127 127 128 129
17
Tables
7 - DVI - Dual Voltage/Current Source 8 - HVS - High-Voltage Source 9 - LZB - Link/Zener Blower 10 - MUX - Resource Multiplexer 11 - MVS - Medium-Voltage Source 12 - OFS - Octal Floating Source 13 - OVI - Octal Voltage/Current Source 14 - PVI - Pulsed Voltage/Current Source Table 12. PVI Test Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
15 - TIA - Time Interval Analyzer 16 - TMU - Time Measurement Unit Table 13. Start and Stop Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
17 - Additional User Functions A - ASL 1000 Interconnects Table 14. Table 15. Table 16. Table 17. Table 18. Table 19. Table 20. Table 21. Table 22. Table 23. Table 24. Table 25. Table 26. Table 27. Table 28. Table 29. Table 30. Table 31. Table 32.
18
ASL 1000 Interconnects: Slot 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386
Tables
Table 33. Table 34. Table 35. Table 36. Table 37.
ASL 1000 Interconnects: Slot 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Interconnects: Slot 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Supply Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Grounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Config Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
387 387 389 391 392
B - ASL 3000 Interconnects
ASL Series Programming Guide
19
Tables
20
ASL Series Programming Guide
FIGURES 1 - About this Guide 2 - visualATE Overview Figure 1. Figure 2. Figure 3. Figure 4. Figure 5.
List File, DLL, and Test Program Limit Sets . . . . . . . . . . . . . . . . . . . . . Program Selection Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Save As New Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 1000 Hardware Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASL 3000RF Hardware Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . .
40 41 43 47 49
3 - ACS - AC Source Figure 6. Figure 7. Figure 8. Figure 9. Figure 10. Figure 11. Figure 12.
Basic Digital-to-Analog Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Waveform Memory Bit Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . ACS Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Waveform Data to Waveform Output Relationships . . . . . . . . . . . . . . . LPF Linearity Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Amplitude and Offset Level of Output Waveform . . . . . . . . . . . . . . . . . ACS Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54 55 56 57 61 62 70
4 - DCC - Data Converter Card Figure 13. DCC Sample Test Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5 - DDD - Digital Driver and Detector Figure 14. Figure 15. Figure 16. Figure 17. Figure 18. Figure 19. Figure 20.
DDD Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using No Delay with 1s and 0s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Delays with 1s, 0s, and Zs (RT1) . . . . . . . . . . . . . . . . . . . . . . . Using Delays with 1s, 0s and Ts (RT0) . . . . . . . . . . . . . . . . . . . . . . . . Using Delays with Zs (RT1) and Ts (RT0) . . . . . . . . . . . . . . . . . . . . . . Using Delays with Zs (RT1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Delays with Ts (RT0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
117 118 119 120 121 122 123
6 - DOAL - Dual Op Amp Loop Figure 21. DOAL Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Figure 22. DOAL Channel 0 Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . 141 Figure 23. DOAL Channel 1 Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . 142
7 - DVI - Dual Voltage/Current Source Figure 24. Current Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
ASL Series Programming Guide
21
Figures
Figure 25. 154 Figure 26. Figure 27. Figure 28. Figure 29.
Programmed Negative Current Value with Positive (Sourcing) Current . . Duty Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DVI Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DVI Relay Configuration for DVI-200 and DVI-300 . . . . . . . . . . . . . . . DVI Relay Configuration for DVI-2000 only . . . . . . . . . . . . . . . . . . . . .
173 174 175 176
8 - HVS - High-Voltage Source Figure 30. HVS Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 Figure 31. HVS Sample Test Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
9 - LZB - Link/Zener Blower Figure 32. LZB SImplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
10 - MUX - Resource Multiplexer Figure 33. MUX Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
11 - MVS - Medium-Voltage Source Figure 34. MVS SImplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
12 - OFS - Octal Floating Source Figure 35. OFS SImplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
13 - OVI - Octal Voltage/Current Source Figure 36. OVI Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
14 - PVI - Pulsed Voltage/Current Source Figure 37. PVI-10 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Figure 38. PVI 100 Simplified Instrument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
15 - TIA - Time Interval Analyzer 16 - TMU - Time Measurement Unit Figure 39. Figure 40. Figure 41. Figure 42. Figure 43. Figure 44. Figure 45. Figure 46.
22
TMU Conceptual Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Types of TMU Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Conceptual Diagram with Arm and Slope . . . . . . . . . . . . . . . . . . TMU Interpolation Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Input Channel Mux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Start and Stop Holdoff Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Start and Stop Holdoff Events . . . . . . . . . . . . . . . . . . . . . . . . . . . TMU Simplified Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASL Series Programming Guide
284 285 285 287 288 294 295 305
Figures
17 - Additional User Functions Figure 47. Figure 48. Figure 49. Figure 50. Figure 51. Figure 52. Figure 53. Figure 54. Figure 55. Figure 56. Figure 57. Figure 58.
Dialog Function Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with YES Button . . . . . . . . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with “NO” Button . . . . . . . . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with “OK” Button . . . . . . . . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with “Cancel” Button . . . . . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with “Left String Edit” Box . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with “Right String Edit” Box . . . . . . . . . . . . . . . . . . . Modal Dialog Box with Top String Edit Box . . . . . . . . . . . . . . . . . . . . . Modal Dialog Box with Bottom String Edit Box . . . . . . . . . . . . . . . . . . Modal Dialog Box with “Specified String Edit” Box . . . . . . . . . . . . . . . Ouput from the Code Example 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output of Example 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
338 342 343 344 345 346 347 348 349 350 355 358
A - ASL 1000 Interconnects B - ASL 3000 Interconnects Figure B-1.Test Interface Connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 Figure 59. ASL 3000RF DUT Interface— Connectors and Pin Groups . . . . . . . . 393
ASL Series Programming Guide
23
Figures
24
ASL Series Programming Guide
2 VISUALATE
OVERVIEW
This chapter provides an overview of the visualATE operating system.
ASL Series Programming Guide
37
2 - visualATE Overview
visualATE System Software The visualATE system software from Credence accommodates the following automated tester platforms: •
ASL 1000
•
ASL 3000
•
ASL 3000MS
•
ASL 3000RF
Test Programs A test program is a sequence of calls to the test functions within a DLL or “List”. As only one DLL can be linked at a time, the test functions in a test program must come from the same DLL. Not all test functions in a list need be included in the program; they may be enabled or disabled within the test program. Enabled functions execute when the test program is run, while disabled functions are skipped. Saving a test program creates a file that contains: •
One or more sets of parameter values (limit sets) for each of the included functions
•
A list of included functions that are executed in sequence when the program is run
Limit Sets A single test program can contain multiple variations on the structures (parameters, limits, and enabled/disabled status) that determine how the test functions behave. These variations are called limit sets. When functions are inserted into a test program, the existing structures for all the included functions become the default limit set for the program. Except for adding or removing test functions from the program, any editing actually alters the limit set, and not the functions themselves. The default limit set can be edited as desired, saved under a new name, or saved as the new default set for the program. Additional limit sets can be created and edited as desired. When multiple limit sets are created for a single program, the same program can be run with the various limit sets, designed for different test purposes.
38
ASL Series Programming Guide
visualATE System Software
Each limit set contains not only the altered parameters and test limits for each function, but also the function’s enabled or disabled status. Therefore, a test function may be enabled in one limit set and disabled in another set. NOTE — Editing limits in a test program file does not alter the original limits contained in the list. Functions display with their default values when inserted from the parent list, even if the same function was inserted earlier, and the values were altered within the test program.
Program Creation Steps These are the steps for creating a test program: •
Open a list file in Engineering
•
Assign a name to the test program file
•
Insert the desired functions from the list in the order they will run
•
Edit parameters and test limits for each test function
•
Create additional limit sets as desired
•
Edit parameters and test limits for each test function in each different limit set
•
Write AutoCorrelation verification limits if desired
•
Save the edited test program
•
Debug the program code in Visual C++ if required
These processes are reviewed in this chapter. Figure 1. on the following page illustrates the relationship between list files, test programs and limits. NOTE — Engineering users can also create list files from test programs, and use the new list to create additional programs. A list file must exist before any programs can be built — however, additional list files may be created from the test program once the program is written.
ASL Series Programming Guide
39
2 - visualATE Overview
parameters)
6
Figure 1. List File, DLL, and Test Program Limit Sets
40
ASL Series Programming Guide
visualATE System Software
The Program Selection Window To access the program selection window, as shown in Figure 1-2, follow these steps: 1. Log on to visualATE. 2. Select Engineering from the main menu 3. The Program Selection dialog appears 4. Double-click or highlight the name, and select Open
Figure 2. Program Selection Window NOTE — In a new install, there are no test program files shown in the window. To use the Engineering editor, test programs must be created or inserted.
ASL Series Programming Guide
41
2 - visualATE Overview
The programs that appear in this window are available for both development and production. Access to programs, however, is set by the user’s privileges. Engineering users can double-click on any test program name in the window to open the program in the Engineering editor. Production users may be able to open programs in the window or may have to enter a program name manually, depending on the System Properties set. Production users cannot create new programs or insert programs into the window. Selecting Remove opens an option window that allows the user to remove the program from the window, or remove the program from the window and delete it from the programs directory. A removed file remains available and can be reinserted later. Insert adds an existing file to the window. This brings up a browser. The inserted file is visible in Program Selection immediately. New brings up a dialog where the user chooses a list file from which to generate a program. Once programs have been identified, they will appear in this window whenever Engineering is entered. If production user access has been set to display a menu of available programs, this window will also appear when Operator is opened. However, the New and Insert tools will be disabled.
Creating a New Test Program File Creating a new program file involves opening a list file and saving it as a test program (*.prg) file. New programs must be saved before they can be opened or edited. The name assigned when the program is saved becomes the file directory name. Once the program has been named and saved, it opens in Engineering and is ready to edit. The new program opens in the Engineering editor. No functions are displayed. See Figure 3 to create a new program.
42
ASL Series Programming Guide
visualATE System Software
.
1. Navigate to the right to select and 2. Open the list file
3. Type a name for the program here and Save As New Program dialog window
Figure 3. Save As New Program
ASL Series Programming Guide
43
2 - visualATE Overview
Directories for Test Program Files Test programs generated from a list will be saved to the folder associated with the parent list. The default directory can be changed. However, if a program is saved to a different directory, visualATE may not be able to find the program or its associated list every time the program is opened. Table 4 shows the basic directory structure. Table 4. Directory for Test Program Files Directory
Description
/asl_nt/users/lists/listname
Source code for the list (*.cpp, *.h files) & “ListNAME.LST file
asl_nt/users/lists/listname/debug
Contains the DLL for the list
/asl_nt/users/lists/listname/ programs
Test programs (*.prg files) created in Engineering are stored here
/asl_nt/users/lists/listname/datalog
Files output from Operator or the Engineering Run Screen (*.dl4, *.ls4) are placed here
Editing Test Program Files The Engineering editor must be open in order to edit a test program file. To open the Engineering editor, open a program file from the Program Selection dialog. New test programs will open an editor that appears to be empty because no test functions have been inserted.
Inserting and Enabling Functions Although the editor appears blank when a new program is opened, all the functions included in the originating list file are available to be inserted. Functions run in the order they appear on screen. Function numbers are assigned automatically and sequentially and cannot be overridden. However, function run order can be changed by removing and reinserting, or copying and pasting, the functions in the desired order. Functions are inserted above the last inserted function if the mouse cursor is not moved. If the mouse cursor is placed inside of a function, then the next inserted function will be placed above the existing one. If the cursor is placed below the function bottom border, the new function will be inserted below the existing one.
44
ASL Series Programming Guide
visualATE System Software
Limit Sets A limit set is an independent collection of values for all editable fields in a program, such as parameter values, test max. and min. limit values and enable/disable settings. When a new program is created, the inserted functions bring their default values with them from the list file, and associate them with the program as a default limit set. This default limit set cannot be edited. Multiple limit sets can be defined for a single program, however, only one limit set can be active at one time. Editing values in an open program changes the values in the active limit set, while other limit sets remain unaffected. Values can be copied from one limit set and pasted into another. Adding or removing functions affects all limit sets. In a program with multiple limit sets, adding a function to the program adds all the values for that function to each limit set. The values must be edited within each limit set after the function has been inserted. Removing a function from a program removes the parameter and test values associated with that function from all the limit sets. NOTE — To run a test function in one limit set but not in another, insert the function into the program and enable it in the limit set where it will run; disable this same function in the limit sets where it is not needed.
Updating Test Programs after Changing the Parent List Test.exe requires a list and each of the test programs generated from it to have identical structures. Each file must contain the same number of functions, parameters and tests, the names must be the same, and must appear in the same order. In the test program, the structure is what is available to the test program, not what is used in the test program. Important to remember: a test program executes selected functions, it does not change the structure of the list. A structural change is anything that can be done in Create but not in Engineering (parameter names and types, number of tests, etc.). Test program structure shows in the Select Function dialog. To see a test program’s structure follow these steps: 1. 1. Open the test program 2. 2. Go to Edit -> Insert Function A dialog opens titled Select Function. All of the functions that are available to the test program are displayed. The contents of this dialog match the list elements shown when the list is opened in Create. When a list is structurally changed (functions, parameters or tests are added or removed), the new structure no longer matches the structure associated with existing test programs created from the list.
ASL Series Programming Guide
45
2 - visualATE Overview
When running a test program whose parent list has changed, Test.exe automatically updates the test program structure to match the parent list structure. When the test program is opened, a message is displayed, along with a report file that shows what has changed: the set of available functions are revised to match the updated parent list, and structurally changed functions are removed from the program. This report can be printed. Follow these steps to run the program after changing the parent list: 1. In Select Function (above), highlight the updated function and click OK 2. Repeat for each function that has been modified 3. Save the revised test program 4. Run the test program
46
ASL Series Programming Guide
The ASL 1000 Tester
The ASL 1000 Tester The ASL 1000 tester is composed of the hardware blocks in Figure 4. •
Tester CPU with test head interface board, data/control bus cable and peripherals
•
Power supply
•
Instrument cards
•
Test head assembly with backplane, interconnect board and DUT board)
Test Head
Backplane Instruments
Tester CPU with IF Card Data/Control Bus Cable
Power Supply Multi-Conductor Power Cable Interconnect Board
DUT Board
Figure 4. ASL 1000 Hardware Architecture
Instrument Cards for the ASL 1000 Each ASL 1000 test instrument is contained on a type B VME-sized card that plugs into the test head backplane. Up to 21 test instrument cards can be mounted in the backplane. Many of the instrument cards have user-accessible test points located along one edge for debugging. Minimum instrument configuration requires one DVI Dual Voltage/Current card in slot 9, and one MUX Multiplex Relay card in slot 20. Other instrument cards are added to expand the system as required. For definitions and programming instructions for each instrument, see similarly titled individual chapters in this guide.
ASL Series Programming Guide
47
2 - visualATE Overview
Table 5. ASL 1000 Instruments
48
Name
Instrument
Description
ACS
Alternating Current Source
Arbitrary waveform generator and alternating current meter
DCC
Data Converter Card
Highly flexible card for testing ADCs, DACs and other converters
DDD
Digital Driver and Detector
8-channel digital pattern generator for digital signal stimulation and readback
DOAL
Dual OpAmp Loop
High-precision opamp and comparator resource for testing amplifiers in a closed loop configuration
DVI
Dual Voltage/Current Source
Two-channel, medium-current V/I source; provides true four-quadrant force/measure operation and rapid settling time
HVS
High Voltage Source
High-voltage, low-current floating source
LZB
Link/Zener Blower
Single quadrant V/I source optimized for link and Zener blows
MVS
Medium Voltage Source
Medium-voltage, medium-current floating source
MUX
Resource Multiplexer
Relay card
OFS
Octal Floating Source
Medium-voltage, medium-current floating source
OVI
Octal Voltage/Current
Eight-channel, low-current V/I source that offers four-quadrant force/measure operation
PVI
Pulsed V/I
Medium-voltage resource that provides a very high current, time-limited current pulse in a fully floating mode
TIA
Time Interval Analyzer
Two-channel, high-precision time measurement instrument mounted in the PC case
TMU
Time Measurement Unit
Flexible card that gives a wide range of timing measurement functions for both analog and digital devices
ASL Series Programming Guide
The ASL 3000RF Tester
The ASL 3000RF Tester The ASL 3000RF tester is composed of the following hardware blocks as shown in Figure 5. •
Tester CPU with test head interface board, data/control bus cable and peripherals
•
Power supply
•
ASL standard instrument cards
•
RF Subsystem (MVNA™, RF brick)
•
Test head assembly with backplane, interconnect board and DUT site interface board
TTL Interface to Handler
Server
Test Head
Mouse P/S-2
50-pin TTL logic signals
ASL Series PC
ASL Instrument Card Cage
VGA RS 232
208 VAC
Monitor
208 VAC
208 VAC
Test I/O Data I/O DC Power
Aux RF/Gnd (4) / RF/Gnd (8) /
Voltmeter
208 VAC
RF Source
RF/Gnd
208 VAC
RF Source
Power Module
GPIB
RF Subsystem (MVNA)
RF/Gnd
Address Data
+/-5V +12V GND
32 D I/O
RF Mother Board
RF/Gnd
RF Source
Switch Control
RF Modules
208 VAC
208 VAC
208 VAC
RF/Gnd
RF Source
10 MHz
208VAC Single Phase 50A 50/60 Hz
Trig In
Ethernet
Power Distribution
Power Meter 208 VAC
Trig Out
Interconnect Board/DUT Interface
Ethernet 100bT
KBD
Keyboard
+/-5V +12V GND
IF/Gnd (4) / Digital Control Trigger I/O
DC Power
Standard Configuration
HV Interlock Removes all user power when interrupted
DUT Pogo/OSP Interface
Test Head DC +3.3 @150A +5 @ 150A -5 @ 60A +12 @ 20A +/- 16 @ 16A +/- 24 @ 10A +/- 50 @ 12.5A +/- 65 @ 16A
Figure 5. ASL 3000RF Hardware Architecture
ASL Series Programming Guide
49
2 - visualATE Overview
RF Subsystem Modulated Vector Network Analysis (MVNA) The MVNA chassis backplane supports standard compact PCI connection and a nonstandard connection. Front side boards utilize both connectors while backside boards have access only to the non-standard connector. All boards are 6U in height. The MVNA is contained in the server cabinet. Table 6.
50
MVNA Boards
Item
Name
Description
1
G4 Receiver Board
Digitizes the 2nd IF signals for RF measurements
2
I/Q Board
2 Channel AWG that drives the vector modulator in the SMIQ generator
3
Embedded Controller Board
Pentium 1GHz CPCI controller for the MVNA RF measurement subsystem
4
2nd LO Board
Generates, distributes a fixed 200 MHz LO for down conversion of the 1st IF to the 2nd
5
2nd Downcoverter Board
Down converts the first IF to the second IF (intermediate frequency)
6
Clock/Trigger Distribution Board
Distributes the 65 MHz sample clock and Trigger signals to up to 8 receiver channels
7
PCI RF Control Board
Interfaces the CPCI bus to the RF control motherboard via an LVDS link. Additionally, this board routes hardware triggers to and from the DUT test site
8
Embedded Controller Board (Rear IO)
Routes the IDE Hard Drive control signals from the Embedded Processor Controller to the RF subsystem hard disk drive.
ASL Series Programming Guide
The ASL 3000RF Tester
RF Brick The following six modules in and board types comprise the RF Brick in the test head: Table 7. RF Modules Item
Name
Description
1
RF Port Module
Bi-directional RF I/O with built in down conversion stage
2
LO Splitter Module (RF subsystem)
Distributes 1st LO signal to up to 8 ports. Has built in variable attenuation to maintain constant output power
3
IF Mux Module (RF subsystem)
Multiplexes the 1st IF signal from 4 channel to 1 channel. Each module contains two 4x1 MUXs
4
RF Mux Module
Multiplexes up to 3 RF sources to up to 8 ports. This module also contains the power combiner for two-tone measurements.
5
RF Control Mother Board
Provides the control logic and DC power to the RF Pin Electronics. The MVNA directly communicates with the RF Control Motherboard.
6
Interconnect Board (RF subsystem)
Routes signals from the mixed-signal instrument backplane to the Pogo pin DUT interface
Standard Instruments The test head also contains the full complement of ASL series instruments, contained in an instrument card cage. See Table 7. For definitions and programming instructions for each instrument, see similarly titled individual chapters in this guide.
ASL Series Programming Guide
51
2 - visualATE Overview
52
ASL Series Programming Guide
1 ABOUT THIS GUIDE This introductory section gives an overview of the ASL Mixed Signal Programmer’s Guide for the visualATE system software. This section includes: •
Scope of this guide
•
Notation conventions
•
Programming reference usages
•
Related publication
•
Operator safety summary
•
Electromagnetic Compatibility (EMC) System requirements.
ASL Series Programming Guide
25
1 - About this Guide
Scope of this Guide The ASL Series Programming Guide assembles a suite of programming references for the visualATEvisualATE operating system. This software has been designed to run the following automated tester platforms: ASL 1000™, ASL 3000™ and ASL 3000MS™.
Audience The information in this guide is for test engineers and programmers who work with ASL 1000, ASL 3000 and ASL 3000MS automated test systems running under the visualATE system software from Credence Systems Corporation. For this audience, chapters are designed to give a one-stop point of reference — the Table of Contents is where to find the chapter titled for the test instrument to program. For a quick look at the programming reference features, see the “Programming Reference Sample” later in this section.
Prerequisites visualATE software includes Microsoft Visual C++. This guide assumes the user to have a basic familiarity with C and C++ programming. For an overview of how Credence Systems incorporates the C++ environment in the visualATE and ASL platform, see the visualATE User’s Guide.
Organization The contents of this guide are organized as follows:
26
Chapter 1
ASL Platform Overview showing available test instruments.
Chapters 2 to 16
Programming references by instrument.
Chapter 17
Lists additional user functions
Appendix A
Shows ASL 1000 system interconnects.
Appendix B
Shows ASL 3000 system interconnects.
ASL Series Programming Guide
Notation Conventions
Notation Conventions Throughout this guide, font treatments are used to highlight special terms and actions. Table 1 describes these styles and their meaning. Table 1. Font Treatments Style
Purpose
Bold
Mandatory statements that must be entered exactly as they appear and valid arguments
Italics
Terms defined in the glossary or emphasized in the text
Italic Bold
Optional statement items that must be entered exactly as shown if they are used
Initial Capitalization
Section, figure, field, screen and menu names
ASL Series Programming Guide
27
1 - About this Guide
How to Use the Programming Guide Each instrument reference contains a description of the instrument, followed by programming syntax and formats. The programming syntax information identifies the function call, describes what the function does, and includes the code that actually performs the function. In addition, some references include programming examples showing how to use the function calls. Simplified diagrams of the instrument or its components are included.
Syntax Format This section shows the syntax format for visualATE programming functions. Example: All voltage range arguments read as follows: RANGE_X_UV RANGE_X_MV RANGE_X_V RANGE_X_KV where X represents the number of volts (i.e., RANGE_5_V for five volts). All current range arguments read as follows: RANGE_ X_PA RANGE_X_NA RANGE_X_UA RANGE_X_MA RANGE_X_A where X represents the number of amperes (i.e., RANGE_1_A for one amp).
Programming Sample Please note and observe the following conventions that were used in building the example of programming reference appearing on the next page. Follow the guidelines in the legend when developing a test program.
28
•
The sample programming reference is labeled with descriptions of the conventions used throughout this guide.
•
Mandatory statements are shown in bold; optional statements are shown in bold italic.
ASL Series Programming Guide
How to Use the Programming Guide
•
All items that appear in capital letters under a heading in bold must be typed exactly as shown.
•
Optional statements include a default setting; this default is used unless the programmer enters another value for the statement.
connect_vi_force This is the programming statement Description This function initially sets the voltage to 0 V. Next, the current and voltage ranges are programmed, before the source output relay is connected. Finally, the voltage source is programmed to the stated value. The default value for the correction factor (corr_factor) is 0 to 1000 pF (no argument entered). Format: Shows statement with arguments void connect_vi_force(double voltage_value, char vrange, double current_value, char irange, char corr_factor);
Valid Arguments: Mandatory arguments voltage_value voltage output range as integer, decimal or scientific notation (-45.0 V to +45.0 V) vrange RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V RANGE_20_V RANGE_45_V
Arguments must be typed as shown
ASL Series Programming Guide
29
1 - About this Guide
current_value current output range in decimal or scientific notation (0.001 µA to 1.0 A) irange RANGE_10_UA RANGE_100_UA RANGE_1_MA RANGE_10_MA RANGE_100_MA RANGE_1_A corr_factor Optional arguments in italics, type as shown No argument entered (default)
(0 to 1000 pF)
CORR0
(0 to 0.1 mF)
CORR0 & CORR1
(0 to 10 mF)
CORR0 & CORR1 & CORR2
(0 to 50 mF)
Usage: Instrument and slot always come first pmu_21->connect_vi_force(5.0, RANGE_10_V, 10e-6, RANGE_100_UA); //no correction factor (default)
Conventions •
Uppercase terms must be entered exactly as written
•
Open and close parentheses () that follow a statement contain the statement’s arguments
Bold terms within parentheses are mandatory arguments Italicized bold terms within parentheses are optional arguments
30
ASL Series Programming Guide
Related Publications
Related Publications For information on features, operation, and maintenance of ASL-based testers running under visualATE, see the following guides: visualATE5.2 User Guide
071-0489-00
Modular Digital Instrument (MDI) and Clock Board Service Supplement
071-0215-01
Multisite Asynchronous Digital Subsystem (MADS) Programming Guide
071-0568-00
Audio Video Multisite Digitizer (AVMD) Programming Reference and User’s Guide
071-0249-00
Multisite Arbitrary Waveform Generator (MAWG) Programming Reference and User’s Guide
071-0250-00
ASL Series Programming Guide
31
1 - About this Guide
Operation Safety Summary The general safety information in this summary is for both operating and servicing personnel. Specific warnings and cautions will be found throughout the guide where they apply, but may not appear in this summary Table 2. Operation Safety Summary Item
Description
Terms in this guide
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 not immediately accessible as one reads the marking or a hazard to property including the equipment itself. DANGER indicates a personal injury hazard immediately accessible as one reads the marking.
Symbols as Marked on Equipment
DANGER HIGH VOLTAGE INSIDE THIS UNIT. SERIOUS INJURY OR DEATH COULD RESULT FROM CONTACT. REFER SERVICING TO QUALIFIED PERSONNEL ONLY. ATTENTION—See the appropriate user guide
Protective ground (earth) terminal
Pinch Point.
32
ASL Series Programming Guide
Operation Safety Summary
Table 2. Operation Safety Summary (Continued) 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 power connection 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.
ASL Series Programming Guide
33
1 - About this Guide
Service Safety Summary NOTE — Also see the preceding Operation Safety Summary.
For Qualified Service Personnel Only. Table 3. Service Safety Summary Items
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.
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 test head and rack-mounted units because of their physical size, shape, weight or location. To avoid injury, don’t attempt to handle this type of equipment alone.
34
ASL Series Programming Guide
Electromagnetic Compatibility (EMC) System Requirements
Electromagnetic Compatibility (EMC) System Requirements ASL-Based Series Test System Immunity •
The use of handheld wireless communication equipment should be limited to distances in excess of ten meters from the product to avoid the possibility of erroneous data or misclassification of devices under test.
•
Accessibility of ESD sensitive devices and wiring in the vicinity of the test head requires that users wear a grounded wrist strap at all times.
•
Wrist strap ground points are provided at the test head and at numerous points on the main cabinet.
•
Other ESD abatement practices should also be implemented such as the use of ESD abatement flooring, conductive shoe straps, ESD preventive coat, ESD conductivity monitors, etc.
ASL-Based Series Test System Emissions •
Τhis product has been tested and found to produce emissions in excess of that allowed by the European Community EMC Directive. As a result, the user of this equipment may be required to take extraordinary measures to prevent interference with licensed communications. Following are actions which may be required of the user of this equipment.
•
Testing may be required at the time of installation by a European Competent Body. This testing is to be performed at the boundary of the installed facility. Measurements will be made to insure that product emissions are within established limits at the installed site.
•
Per the Annex of EN55022, a building will generally provide an attenuation of 10 dB to an interference source.
•
The customer may be required to take extraordinary additional measures to limit the interference potential of the product, such as the addition of shielding material around the product or placing the product in a shielded room.
ASL Series Programming Guide
35
1 - About this Guide
36
ASL Series Programming Guide
3 ACS - AC SOURCE The AC Source (ACS) is a programmable waveform generator featuring both fixed and programmable filters, along with four AC-to-RMS measurement channels. The ACS output channel consists of a 32K deep Waveform memory, a programmable clock, and a high-speed digital-to-analog converter (DAC) with programmable high and low reference levels. Output undergoes a signal-conditioning phase through an all-pass filter, a tank filter, or an attenuator, followed by a single-pole or 4-pole programmable low-pass filter (LPF). The ACS also provides three separate CMOS level output signals synchronized with the output Waveform.
ASL Series Programming Guide
53
3 - ACS - AC Source
Basic Theory The ACS produces waveforms by reconstructing binary data that is stored in a 32Kby-16-bit waveform memory. This stored data is presented to a 12-bit DAC at a selected clock frequency. The DAC produces a discreet DC voltage level for every binary code presented at its input. The DAC resolution is related to the number of its data bit inputs. A 12-bit DAC can support 4096 binary numbers or codes (0 to 4095). As an example, if the DAC has a full-scale output voltage of 10 V, then the resolution of its discreet DC output voltage levels (or “steps”) is as follows: 10 V/4096 = 2.4414 mV
Waveform Memory
DAC
000 2.44 mV
001 011
“0” “1” “2”
Clock
Figure 6. Basic Digital-to-Analog Action Every waveform that the ACS generates is made up of discreet DC voltage levels (steps) output at a selected frequency. The clock frequency is known as the sampling frequency (Fs). The frequency of the main output waveform is known as output frequency (Fo). The sampling frequency must be at least twice (double) the desired output frequency, and not an even multiple to avoid distortions to the output waveform. The ACS has 16 internal sampling frequencies, ranging from 64 MHz to 1.953125 kHz, from which the user may select. The user must program all waveform types except for the sinusoid form. The ldram() statement will generate the required DAC codes to produce a sinusoid wave based on the input given.
54
ASL Series Programming Guide
Waveform Memory
Waveform Memory
15
14
13
12
(11) (10) (9) (8)
11
10
(7) (6)
9
8
7
(5)
(4) (3)
6
5
(2) (1)
4
3
2
1
0
(0)
Loop Back Sync 1
Waveform
Sync 2 Sync 3
Figure 7. Waveform Memory Bit Description The ACS has a main waveform output and three auxiliary (sync bit) outputs. The main output is derived from a 12-bit DAC, which accepts binary codes that represent the desired waveform. The sync bit outputs are routed to the user test interface directly from waveform memory. These non-buffered outputs are resistor and diode-clamp protected. Waveform memory is CMOS type; therefore, the drive levels of the sync bit outputs are not fully TTL compatible (3.5 V minimum amplitude). Buffers are recommended if current drive requirements are uncertain. The main waveform DAC output is directly affected by two variables: •
the value of the binary code (amplitude) being input
•
the rate (sampling frequency) at which the DAC is instructed to convert the binary code to a DC voltage
The sync bit outputs are also affected by the Waveform memory codes and sampling frequency. A CMOS-level pulse is present on the output of every sync bit Waveform memory location that is programmed to a “1” (one). The pulse duration is the same as the sampling frequency. For longer pulse widths, program consecutive Waveform memory locations high. The difference between the main waveform output and the sync bit outputs is that the main waveform output can be programmed to create a wide variety of wave shapes, while the sync bit outputs are restricted to pulse streams. See Figure 8 and Figure 9.
ASL Series Programming Guide
55
3 - ACS - AC Source
Main DAC
Sync 1
Sync 2
(Pulses not shown to scale)
Sync 3
Figure 8. ACS Outputs Figure 8 in this section shows that Waveform data is located in the upper 12 bits of Waveform memory. This arrangement requires the user to shift Waveform data up four bits. Shift the Waveform data by multiplying the data by 16 before moving it into Waveform memory
56
ASL Series Programming Guide
Waveform Memory
.
Figure 9. Waveform Data to Waveform Output Relationships ACS Waveform memory contains a special address control bit, the Loop Back Bit (bit 0). The Loop Back Bit redirects the Waveform memory execution back to address 0 when it is programmed to a 1. In this case, the Waveform memory re-executes from address 0 to the Loop Back Bit, and repeats this action until it encounters an init() or stop() command. Figure 9 above shows both a detailed view of the sync bit action, and the Loop Back Bit action. For best results, program the address with the Loop Back Bit to contain the same waveform data as address zero (0). This helps minimize transients in the main waveform when address control is shifted back to address zero.
ASL Series Programming Guide
57
3 - ACS - AC Source
Additional Output Information The ACS output buffer has a nominal 100 Ω load drive capability. For best results, program the output amplitude and offset to 0 V and select a filter before closing the ACS output connect relay. Programming these values to 0 V prevents the buffer’s output from going to the positive rail because of an open input. A program delay of 10 ms is suggested to allow the ACS output waveform enough time to develop the full amplitude.
58
ASL Series Programming Guide
Function Calls
Function Calls Waveform Generator Commands init Description This function initializes registers, opens on-board relays and analog switches except SEL_ADC_IN0 (meter channel 1) and the filter bypass which are closed, waveform memory remains intact. Format void init(void);
Valid Arguments none Usage acs_5->init();
set_path Description This function defines the path for the output signal. The programmable LPF (ACS_MAIN_FILTER) clips with signals greater than 2.5 VP-P. When the programmable LPF is selected, the single-pole LPF is automatically set to the 500 kHz cutoff. Format void set_path(short filter, short attenuation);
Valid Arguments filter ACS_NO_FILTER
(Default)
ASL Series Programming Guide
59
3 - ACS - AC Source
ACS_LC_FILTER ACS_MAIN_FILTER ACS_BASE_FILTER ACS_100K_FILTER
196 kHz Fo with 1 kHz bandpass. Available on 10 V range only) (Programmable LPF) (Single pole cutoff @ 500 kHz) Single pole cutoff @ 100 kHz)
attenuation ACS_1_VOLT_RANGE (Default, divide by 10) ACS_10_VOLT_RANGE (Divide by 1) Usage acs_5->set_path(ACS_LC_FILTER, ACS_10_VOLT_RANGE);
set_bw_ref Description This function sets the cutoff frequency for the programmable LPF (10 kHz to 200 kHz). code1 and code2 are 12-bit (0-4095) codes and are programmed with the same values. See graph below for typical filter linearity:
60
ASL Series Programming Guide
Function Calls
Figure 10. LPF Linearity Graph Format void set_bw_ref(unsigned short code1, unsigned short code2);
Valid Arguments code1 0 to 4095 code2 0 to 4095 Usage acs_5->set_bw_ref(2048, 2048);
ASL Series Programming Guide
61
3 - ACS - AC Source
set_level Description This function sets the amplitude and offset of the output waveform. The maximum amplitude is ± 9.8 V and maximum offset is dependent on the amplitude programmed (see figure below). The scale argument selects RMS volts or peak volts, with default values of zero for both amplitude and offset. Offset is always in DC volts. The voltages entered must lie in the selected voltage range or clamping may occur (for example, clamping may result at levels above 0.7 V RMS or 0.99 PK on the ACS_1_VOLT_RANGE).
Figure 11. Amplitude and Offset Level of Output Waveform Format void set_level(float amplitude, float offset, short scale);
Valid Arguments amplitude output voltage level in decimal of scientific notation (Default is 0) offset offset DC voltage level in decimal or scientific notation (Default is 0) scale ACS_RMS_LEVEL ACS_PEAK_LEVEL
62
ASL Series Programming Guide
(Default)
Function Calls
Usage acs_5->set_level(5.0, 2.5, ACS_RMS_LEVEL);
Waveform Memory and Clock Commands ldram Description This function loads a Waveform memory with data that generates a sine wave of the selected frequency. The user selects a sampling frequency and the routine finds the nearest number. Possible sampling rates: 64 MHz/2**N. See the card.clock command on page 65, for more information. With no user input, the sampling frequency (Fs) will calculate to approximately 16*Fo. Format void ldram(float freq, float sampling freq, unsigned short cycles);
Valid Arguments freq frequency (F0) in decimal or scientific notation sampling freq sampling frequency (Fs) in decimal or scientific notation (default is approx. 16xF0) cycles Number of cycles to be loaded into memory (default is 1) Usage acs_5->ldram(1000, 4e6, 5);
ASL Series Programming Guide
63
3 - ACS - AC Source
load_data Description This function loads data at a specific address in Waveform memory. The data is obtained by multiplying the waveform data code (0 to 4095) by 16. Multiplying by 16 shifts the data to the upper 12 bits of waveform memory (see Figure 7). Format void load_data(unsigned short address, unsigned short data);
Valid Arguments address 0 to 32767 data 0 to 65535 Usage acs_5->load_data(0, 2048);
load_address Description This function sets the address pointer to a specific Waveform memory location for the static command. The pointer will return to address zero (0) after reaching the end of waveform memory on an address that has the Loop Back bit set to 1. Format void load_address(unsigned short address);
Valid Arguments address 0 to 32767 (default is 0)
64
ASL Series Programming Guide
Function Calls
Usage acs_5->load_address(12476);
card.clock Description This function sets the internal clock frequency (Fs) by dividing the 64 MHz master clock by the selected divisor. The clock frequency range is 1.953125 kHz to 64 MHz. Format void card.clock = divisor;
Valid Arguments divisor CLK_MAIN CLK_BY_2 CLK_BY_4 CLK_BY_8 CLK_BY_16 CLK_BY_32 CLK_BY_64 CLK_BY_128 CLK_BY_256 CLK_BY_512 CLK_BY_1024 CLK_BY_2048 CLK_BY_4096 CLK_BY_8192 CLK_BY_16384 CLK_BY_32768
(64 MHz) (32 MHz) (16 MHz) (8 MHz) (4 MHz) (2 MHz) (1 MHz) (500 kHz) (250 kHz) (125 kHz) (62.5 kHz) (31.25 kHz) (15.625 kHz) (7.8125 kHz) (3.90625 kHz) (1.953125 kHz)
Usage acs_5->card.clock = CLK_BY_16; //Fs set to 4 MHz
ASL Series Programming Guide
65
3 - ACS - AC Source
start Description This function starts Waveform output at the rate of the specified clock. The default setting is the internal clock, ACS_INT_CLK. Waveform memory execution continues to the end of Waveform memory, unless a Loop Back (bit 0) is programmed. In both cases, addressing is returned to address zero (0) and the waveform repeats until an init() or stop() command is encountered. Format void start(short clock source);
Valid Arguments clock source ACS_INT_CLK ACS_EXT_CLK
(Internal clock, default) (External clock)
Usage acs_5->start(ACS_EXT_CLK);
stop Description This function halts Waveform memory output. Format void stop();
Valid Arguments none Usage acs_5->stop();
66
ASL Series Programming Guide
Function Calls
AC Meter Commands set_meas_mode Description This function selects channel, voltage range and coupling for subsequent measurements. Format float set_meas_mode(short channel, short vrange, short coupling);
Valid Arguments channel ACS_CHANNEL_1 ACS_CHANNEL_2 ACS_CHANNEL_3 ACS_CHANNEL_4
(Default)
vrange ACS_1V_RMS_RANGE (Default) ACS_2V_RMS_RANGE ACS_5V_RMS_RANGE ACS_10V_RMS_RANGE ACS_20V_RMS_RANGE ACS_50V_RMS_RANGE ACS_100V_RMS_RANGE coupling ACS_AC_COUPLING ACS_DC_COUPLING
(Default)
Usage acs_5->set_meas_mode(ACS_CHANNEL_1, ACS_5V_RMS_RANGE, ACS_DC_COUPLING);
ASL Series Programming Guide
67
3 - ACS - AC Source
measure Description This function performs an RMS measurement based upon the setup defined with set_meas_mode(). The function returns the average of the stated number of samples. The default is 10 samples. The sample rate is approximately 33 µs, computer controlled. Format float measure(short samples);
Valid Arguments samples 0 to 32767
(Default is 10)
Usage result =acs_5->measure(12);
close_relay open_relay Description These functions close or open the stated on-board relays. No built-in wait time. Required delay may be programmed by using the delay() or wait.delay_10_us() statements. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay D_RMS_CH1 D_RMS_CH2 D_RMS_CH3
68
ASL Series Programming Guide
(meter channel 1 input-connect-relay) (meter channel 2 input-connect-relay) (meter channel 3 input-connect-relay)
Function Calls
D_RMS_CH4 D_SIG_OUT D_R_BIT1 D_R_BIT2 D_R_BIT3 D_CLK
(meter channel 4 input-connect-relay) (signal output-connect-relay) (sync signal 1 connect-relay) (sync signal 2 connect-relay) (sync signal 3 connect-relay) (external clock input-connect-relay)
Usage acs_5->close_relay(D_RMS_CH2); acs_5->open_relay(D_RMS_CH2);
ASL Series Programming Guide
69
3 - ACS - AC Source
ACS Simplified Diagram The Figure 12. is a simplified block diagram of the ACS instrument .
Figure 12. ACS Simplified Diagram
70
ASL Series Programming Guide
ACS Programming Examples
ACS Programming Examples Sinusoid The following code generates a 200 kHz sine wave, then measures the amplitude in Vrms: acs_5->init(); acs_5->ldram(200.0e3); // load 200 kHz acs_5->set_path(ACS_BASE_FILTER, ACS_10_VOLT_RANGE);//insert 500 //kHz filter acs_5->set_level(0, 0, ACS_PEAK_LEVEL);//0V amplitude, 0V offset, //peak mode acs_5->close_relay(D_SIG_OUT); //close output connect relay acs_5->close_relay(D_RMS_CH1);//ACS output connected to CH1 with a //wire acs_5->set_meas_mode(ACS_CHANNEL_1, ACS_10V_RMS_RANGE, ACS_AC_COUPLING); acs_5->start(); //default internal clock at ~16 X Fo acs_5->set_level(ours->amplitude, ours->offset, ACS_PEAK_LEVEL); delay(ours->meas_delay); temp = acs_5->measure(); //measure RMS, default 10 samples acs_5->init();
Trapezoid The following code generates a trapezoidal waveform: acs_5->init(); // loading of the pattern... // LOW for 2048, RAMP UP for 4096, HIGH for 2048, RAMP DOWN for 4096 short j=0; // j=0 - Low for 2048 samples for(j=0; jload_data(j, 0); } // j=2048 - Ramp up for 4096 samples for(j=2048; jload_data(j,(j-2048)*16); } //j=6144 - High for 2048 samples for(j=6144; jload_data(j, 4095*16); } //j=8192 - Ramp down for 4096 samples for(j=8192; jload_data(j, (4095-(j-8192))*16); } acs_5->load_data(j, 1); // loop back bit loaded acs_5->card.clock = CLK_BY_16;// fsampling = 4 MHz //set up ACS... acs_5->set_path(ACS_NO_FILTER,ACS_10_VOLT_RANGE); acs_5->set_ref(ours->amplitude,ours->offset); //pass in amplitude //and offset acs_5->close_relay(D_SIG_OUT); //close output connect relay burst //pattern... acs_5->start(); //start pattern burst at internal clock rate //stop pattern burst acs_5->load_option(1);
72
ASL Series Programming Guide
4 DCC - DATA CONVERTER CARD The Data Converter Card (DCC) is designed to test two types of converters: analogto-digital (ADC), and digital-to-analog (DAC) converter. The DCC features a 16-bit measurement system with a 10 µs conversion time and three voltage ranges. The 16 data-pin drivers may be used to take measurements on DUT input pins: voltage in (Vin), current in (Iin) and contact.
ASL Series Programming Guide
73
4 - DCC - Data Converter Card
Function Calls init Description This is the board initialization routine. All relays and analog switches set to default states, all DAC’s are programmed to zero (0), and all drives are set to tri-state. Format void init(void);
Valid Arguments none Usage dcc_12->init();
measure_average Description This function returns the average of the measured voltage or current as selected by the select_adc_mux function. The voltage range can be set by select_adc_range. The current range can be set by the select_iva_range or select_ivb_range. Format float measure_average(unsigned short samples);
Valid Arguments samples integer number of samples to be taken and averaged Usage result=dcc_12->measure_average(10);
74
ASL Series Programming Guide
Function Calls
select_adc_mux Description This function selects the ADC input for subsequent measurements. Format void select_adc_mux(unsigned short input);
Valid Arguments input EXT_ADC_IN1 EXT_ADC_IN2 SERVO_OUT PREC_REF_BUF FILTER_OUT DRIVE_COM_A DRIVE_COM_B DRIVE_COM_C VDAC_OUT1 VDAC_OUT2 IDAC_OUT1 IDAC_OUT2 I_IN_LO I_IN_HI DAMP_OUT DIFF_POS
(automatically selects 10 V range) (automatically selects 10 V range)
Usage dcc_12->select_adc_mux(I_IN_LO);
select_adc_range Description This function sets the voltage range for ADC voltage measurements. The default mode is autorange.
ASL Series Programming Guide
75
4 - DCC - Data Converter Card
Format void select_adc_range(unsigned short vrange);
Valid Arguments vrange(optional, default is autorange) VOLT_5_RANGE VOLT_10_RANGE VOLT_20_RANGE Usage dcc_12->select_adc_range(VOLT_10_RANGE);
select_iva_range select_ivb_range Description This function selects the current measurement range for I/V converters. Format void select_iva_range(unsigned short irange); void select_ivb_range(unsigned short irange);
Valid Arguments irange
default is autorange MICRO_1_AMP MICRO_10_AMP MICRO_100_AMP
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange.
76
ASL Series Programming Guide
Function Calls
Usage dcc_12->select_iva_range(MICRO_10_AMP); dcc_12->select_ivb_range(MICRO_1_AMP);
set_high_level Description This function sets the calibrated HIGH_REF voltage used by drive_com_a and iv_conva. Format void set_high_level(float voltage, char vrange);
Valid Arguments voltage -10 V to +20 V reference voltage in decimal or scientific notation vrange
default is autorange VOLT_10_RANGE VOLT_20_RANGE
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage dcc_12->set_high_level(7.5)//vrange left in autorange mode
set_low_level Description This function sets the calibrated LOW_REF voltage used by drive_com_b and iv_convb.
ASL Series Programming Guide
77
4 - DCC - Data Converter Card
Format void set_low_level(float voltage, char vrange);
Valid Arguments voltage -10 V to +20 V reference voltage in decimal or scientific notation vrange
default is autorange VOLT_10_RANGE VOLT_20_RANGE
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage dcc_12->set_low_level(800e-3);
set_prec_ref Description This function programs a calibrated 12-bit DAC to provide a precision output voltage that is summed with the "fine reference" (see next function) to produce a final output voltage. This output calibration is only valid if the "fine reference" is set to 0 V. Format void set_prec_ref(float voltage);
Valid Arguments voltage -10.2 V to +10.2 V reference voltage in decimal or scientific notation Usage dcc_12->set_prec_ref(5.3);
78
ASL Series Programming Guide
Function Calls
set_prec_ref_fine Description This function programs an un-calibrated 12 DAC to provide the “fine reference” for the final output voltage. Format void set_prec_ref_fine(float voltage);
Valid Arguments voltage 0 V to +10.2 mV reference voltage in decimal or scientific notation Usage dcc_12->set_prec_ref_fine(3.2e-3);
set_current_force Description This function sets the I/V converter to current force mode. The default irange is autorange. Format void set_current_force(float current, char irange);
Valid Arguments current current value in decimal or scientific notation irange
default is autorange MICRO_100_AMP MILLI_1_AMP MILLI_10_AMP
ASL Series Programming Guide
79
4 - DCC - Data Converter Card
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage dcc_12->set_current_force(500e-6, MILLI_1_AMP);
set_servo_hi Description This function sets the servo ramp-up rate. Format void set_servo_hi(unsigned short code);
Valid Arguments code HEX or binary DAC code Usage dcc_12->set_servo_hi(256);
set_servo_lo Description This function sets the servo ramp-down rate. Format void set_servo_lo(unsigned short code);
Valid Arguments code
80
ASL Series Programming Guide
Function Calls
HEX or binary DAC code Usage dcc_12->set_servo_lo(128);
set_servo_ref Description This function sets the nominal level for the servo. Format void set_servo_ref(unsigned short code);
Valid Arguments code HEX or binary DAC code Usage dcc_12->set_servo_ref(756);
set_servo_trig Description This function selects the condition for servo result comparison. Format void select_servo_trig(unsigned short condition);
Valid Arguments condition CODE_LESS CODE_GREATER CODE_LESS_LATCHED
ASL Series Programming Guide
81
4 - DCC - Data Converter Card
CODE_GREATER_LATCHED CODE_EQUAL_LATCHED PLUS_5_VOLT Usage dcc_12->select_servo_trig(CODE_GREATER);
set_servo_code Description This function loads servo register code bits. For a revision A board, bits 0 through 7 are loaded. For a revision B board, bits 0 through 6 are loaded. Format void set_servo_code(unsigned short code);
Valid Arguments code HEX or binary, 8 bits (16 bits) Usage
drives_0_7_off Description This function disconnects all 16 of the DRV lines, opens the switch MODE_DUAL and closes the relay DRIVES_0_7_OFF. Format void drives_0_7_off(void);
Valid Arguments none
82
ASL Series Programming Guide
Function Calls
Usage dcc_12->drives_0_7_off();
close_switch open_switch Description This function closes/opens the analog switches. Format void close_switch(unsigned short switch); void open_switch(unsigned short switch);
Valid Arguments switch CON_SUMM1 CON_SUMM2 DIFF_25MV DIFF_250MV VIN_LO_20V VIN_LO_NEG VIN_HI_20V VIN_HI_NEG POS_COARSE_REF POS_I_REF SW_IV_CON_A SW_IV_CON_B SW_REF_CON_A POS_VIN_HI POS_VIN_LO MODE_DUAL CON_DAMP_GND DAMP_SHORT IVA_RNG_10UA IVA_REF_GND IVA_RNG_100UA
SW_IF_10MA SW_REF_CON_B SERVO_CODE_D0 SERVO_CODE_D1 SERVO_CODE_D2 SERVO_CODE_D3 SERVO_CODE_D4 SERVO_CODE_D5 SERVO_CODE_D6 SERVO_CODE_D7 SERVO_MUX_SEL0 SERVO_MUX_SEL1 SERVO_MUX_SEL2 SW_SERVO_REF ZERO_SERVO SERVO_REF_POS SLOW_SERVO RAMP_OUT CONN_C_LO CON_C_HI ADC_IN_20V
ASL Series Programming Guide
83
4 - DCC - Data Converter Card
IVA_REF_CON SW_IF_1MA SW_IF_100UA IVB_REF_EXT SW_IV_CON_C IVB_RNG_10UA IVB_REF_GND IVB_REF_CON
ADC_IN_5V ADC_MUX_HI CONV_READ CON_SERVO_C
Usage dcc_12->close_switch(CONN_C_LO); dcc_12->open_switch(CONV_READ);
close_relay open_relay Description This function closes/opens the stated relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay CON_EXT1 CON_EXT2 CON_EXT_GND CON_FBACK1 DRIVES_0_7_OFF CON_DAMP_POS CON_DAMP_NEG CON_FBACK2 EXT_DRV1 EXT_DRV2 SW_BUS_CON_A SW_BUS_CON_B
84
ASL Series Programming Guide
Function Calls
CON_PREC_REF CON_SERVO CON_IN_DATA Usage dcc_12->close_relay(EXT_DRV1); dcc_12->open_relay(CON_SERVO);
clear_relays Description This function opens all board relays. Format void clear_relays(void);
Valid Arguments none Usage dcc_12->clear_relays();
ASL Series Programming Guide
85
4 - DCC - Data Converter Card
DCC Programming Examples TUE, INL, and DNL (8-bit ADC using the DCC)
Figure 13. DCC Sample Test Setup void tue(test_function& func) { //the two lines below must be the first two in the function tue_params *ours ours = (tue_params *)func.params; unsigned short PWRDN = 0x800; unsigned short 1, adc_value, code, max_tue_code = 0, min_tue_code = 0; float ref_dac_code, ave_inp_voltage, lsb_value, calc_lsb, error_voltage; float max_tue = 0, min_tue = 0, expected_inp_votlage; float max_dnl = 0.0, min_dnl = 0.0, dnl_value = 0.0, prev_value; unsigned short max_dnl_code, min_dnl_code, loop; float max_inl = 0.0, min_inl = 0.0, inl_value = 0.0; unsigned short max_inl_code, min_inl_code, settle_counts; float code_values[255]; float zero_error, fs_error, meas_vref_neg, meas_vref_pos; //load DIO pattern loop = 3.5 µs load _pattern(1); dcc_12->close_relay(CON_SERVO); //these 6 lines set up servo conditions dcc_12->open_switch(SERVO_REF_POS); dcc_12->select_servo_trig(CODE_LESS_LATCHED); dcc_12->set_servo_hi(0xffff); dcc_12->set_servo_lo(0xffff);
86
ASL Series Programming Guide
DCC Programming Examples
dcc_12->open_switch(MODE_DUAL); dcc_12->close_switch(SW_REF_CON_A);//these 5 lines set up high/low dcc_12->set_high_level(our->vdd); //input pin voltages dcc_12->close_switch(SW_REF_CON_B); dcc_12->set_low_level(0.0); delay(1); //power up dvi_9->set_voltage(DVI_CHANNEL_1, ours->vss, -1 ,SLOW_VOLTAGE_MODE); dvi_9->set_voltage(DVI_CHANNEL_0, ours->vdd); dvi_11->set_voltage(DVI_CHANNEL_1, ours->vref_pos); dvi_13->set_voltage(DVI_CHANNEL_0, ours->vref_neg, -1, SLOW_VOLTAGE_MODE); dcc_12->close_switch(CON_IN_DATA); dcc_12->drive_com_a(PWRDN); //high inputs dcc_12->drive_com_b(0); //low inputs dcc_12->select_adc_mux(SERVO_OUT); dio_7->connect_drivers(); dio_7->run_pattern(); dcc_12->set_servo_code(1); expected_inp_voltage = lsb_value / 2.0; ref_dac_code = expected_inp_voltage * 6553.5; //65535 = 10 V dcc_12->set_servo_ref((unsigned short) ref_dac_code); dcc_12->open_switch(ZERO_SERVO); //start servo delay(10);//initial delay for(code=0; codeset_servo_code(code + 1); expected_inp_voltage = (code * lsb_value) + (lsb_value / 2.0); ref_dac_code =expected_inp_voltage * 6553.5; //65535 = 10 V dcc_12->set_servo_ref((unsigned short) ref_dac_code); delay(1); ave_inp_voltage = dcc_12->measure_average(ours->samples); ave_inp_voltage - = meas_vref_neg; code_values[code] = ave_inp_voltage; if(code == 00) prev_value = ave_inp_voltage - lsb_value; dnl_value = ave_inp_voltage - prev_value - lsb_value; if(dnl_value > max_dnl) { max_dnl = dnl_value; max_dnl_code = code } else if(dnl_value < min_dnl) {
ASL Series Programming Guide
87
4 - DCC - Data Converter Card
min_dnl = dnl_value; min_dnl_code = code; } prev_value = ave_inp_voltage; } power_down(); calculate_values(); display_results(); }
Contact void contact(test_function& func) { //the two lines below must be the first in the function contact_params *ours; ours = (contact_params *)func.params; float cont[3]; unsigned short i; system_init(); dvi_9->set_voltage(DVI_CHANNEL_0, 0.0, VOLT_10_RANGE);//gnd vdd dvi_9->current(DVI_CHANNEL_0, 0.1);//gnd vdd dcc_12->open_switch(MODE_DUAL);//sets up ADC measure on COM A dcc_12->select_adc_mux(DRIVE_COM_A); dcc_12->set_current_force(ours->i_force);//sets up current //force module on COM B //Contact Pin 2 dcc_12->drive_com_a(0x1);//connect COM dcc_12->drive_com_b(0x1);//connect COM B delay(5); cont[0] = dcc_12->measure();//measures //Contact Pin 3 dcc_12->drive_com_a(0x2);//connect COM dcc_12->drive_com_b(0x2);//connect COM B delay(1); cont[1] = dcc_12->measure();//measures //Contact Pin 4 dcc_12->drive_com_a(0x4);//connect COM dcc_12->drive_com_b(0x4);//connect COM B delay(1); cont[2] = dcc_12->measure();//measures power_down(); display_results(); }
88
ASL Series Programming Guide
A to Pin 2 (measure) to Pin 2 (force current) contact on Pin 2 A to Pin 3 (measure) to Pin 3 (force current) contact on Pin 3 A to Pin 4 (measure) to Pin 4 (force current) contact on Pin 4
DCC Programming Examples
Input Current void logic_in(test_function& func) { //the two lines below must be the first two in the function logic_in_params *ours; ours = (contact_params *)func.params; float iinlo[3]; short i; system_init(); //power up dvi_9->set_voltage(DVI_CHANNEL_1, ours->vss); dvi_9->set_voltage(DVI_CHANNEL_0, ours->vdd); dvi_11->set_voltage(DVI_CHANNEL_1, ours->vref_pos); dvi_13->set_voltage(DVI_CHANNEL_0, ours->vref_neg); dcc_12->open_switch(MODE_DUAL); dcc_12->close_switch(SW_REF_CON_A);//connects ref voltage to CON A dcc_12->close_switch(SW_REF_CON_B);//connects ref voltage to CON B dcc_12->close_switch(IVA_REF_CON); dcc_12->close_switch(SW_IV_CON_C);//connects I/V converter to //CON C dcc_12->select_adc_mux(I_IN_HI);//connects ADC dcc_12->select_iva_range(MICRO_10_AMP); dcc_12->set_ref_a(ours->vin_lo);//sets low level for input pins dcc_12->set_ref_b(ours->vin_hi);//sets high level for input //pins //Pin *CS dcc_12->drive_com_a(0);//drives off dcc_12->drive_com_b(0);//drives off cc_12->drive_com_a(RD ⏐ WR ⏐ PWRDN);//other pins low dcc_12->drive_com_c(XCS);//Pin 13 delay(2); iinlo[0] = dcc_12->measure_average(10);//measures input low //current on /Pin 13 Chip Select //Pin *RD dcc_12->drive_com_a(0); //drives off dcc_12->drive_com_b(0); //drives off dcc_12->drive_com_a(WR ⏐ PWRDN);//other pins low dcc_12->drive_com_b(XCS);//other pins high dcc_12->drive_com_c(RD); //Pin 8 delay(2); iinlo[i] = dcc_12->measure_average(10); //Pin *RD dcc_12->drive_com_a(0); dcc_12->drive_com_b(0);
//drives off //drives off
ASL Series Programming Guide
89
4 - DCC - Data Converter Card
dcc_12->drive_com_b(XCS);//other pins high dcc_12->drive_com_a(RD ⏐ PWRDN);//other pins low dcc_12->drive_com_c(WR); //Pin 6 delay(2); iinlo[i] = dcc_12->measure_average(10); power_down(); display_results(); }
90
ASL Series Programming Guide
5 DDD - DIGITAL DRIVER AND DETECTOR The Digital Driver and Detector (DDD) is a general purpose digital instrument, designed to test a variety of digital and mixed-signal devices. The DDD has eight high-speed drive channels (14 MHz max). This section presents programming information organized in two parts: •
single-board configuration
•
multi-board configuration
•
Each section is complete with function references, including a description, format, argument code and usage guidelines.
ASL Series Programming Guide
91
5 - DDD - Digital Driver and Detector
Single Board Function Calls Channel Commands init Description This is the board initialization routine. All channels are disabled and floating, all channel reference voltages are set to 0 V based on calibration. Pattern memory remains intact. Format void init(void);
Valid Arguments none Usage ddd_7->init();
ddd_disconnect_drivers Description This routine disconnects and floats all eight channels and stops a running pattern at an indeterminate vector. The function does not set the channel reference voltages to 0 V. Format short ddd_disconnect_drivers(void);
Valid Arguments none
92
ASL Series Programming Guide
Single Board Function Calls
Usage ddd_7->ddd_disconnect_drivers();
ddd_set_voltage_ref Description This function sets the threshold voltage level for the receive comparators. Only one voltage reference can be programmed for all eight channels. When the receive data voltage is greater than the comparator voltage reference, a logic high (1) is strobed into receive memory. The range is from -2 V to +8 V. Format short ddd_set_voltage_ref(float level);
Valid Arguments level voltage level in decimal or scientific notation Usage ddd_7->ddd_set_voltage_ref(6.5);
ddd_set_hi_level Description This function sets the high level of the drive logic for all eight channels. The range is 5 V to +15 V. There is no check for the ddd_set_hi_level() being programmed lower than the ddd_set_lo_ level() is programmed — indeterminate data results if levels are programmed in this way. Format short ddd_set_hi_level(float level);
ASL Series Programming Guide
93
5 - DDD - Digital Driver and Detector
Valid Arguments level voltage level in decimal or scientific notation Usage ddd_7->ddd_set_hi_level(10.0);
ddd_set_lo_level Description This function sets the low level of the drive logic for all eight channels. The range is -5 V to +5 V. There is no check for ddd_set_lo_ level() being programmed higher than the ddd_set_hi_ level() is programmed — indeterminate data results if levels are programmed in this way. Format short ddd_set_lo_level(float level);
Valid Arguments level voltage value in decimal or scientific notation Usage ddd_7->ddd_set_lo_level(0.8);
Clock and Timing Commands ddd_set_clock_freq Description This function sets the clock frequency for the generated patterns. The frequency limits are 320 kHz to 14 MHz. This function is the inverse of ddd_set_clock_period().
94
ASL Series Programming Guide
Single Board Function Calls
Format short ddd_set_clock_freq(float freq);
Valid Arguments freq 320 kHz to 14 MHz in decimal or scientific notation Usage ddd_7->ddd_set_clock_freq(8e+6); //8 MHz
ddd_set_clock_period Description This function sets the clock period for the generated patterns. The period limits are 3.125 µs to 71.4287 ns. This function is the inverse of ddd_set_clock_freq. Format short ddd_set_clock_period(float period);
Valid Arguments period 3.12 µs to 71.4287 ns in decimal or scientific notation Usage ddd_7->ddd_set_clock_period(125e-9);//125 ns
ddd_set_no_delay Description This function sets a zero delay on all eight channels. Timing Generator 2 (TG2) is ignored.
ASL Series Programming Guide
95
5 - DDD - Digital Driver and Detector
Format short ddd_set_no_delay(void);
Valid Arguments none Usage ddd_7->ddd_set_no_delay();
ddd_set_delay Description This function sets the delay from the beginning of the vector on the selected channel edges. The leading edge is set by Timing Generator 1 (TG1), and the trailing edge is set by Timing Generator 2 (TG2). If one or more channels are programmed with delay, then all channels must be programmed with set_delay(), in ascending order: setting a delay on Channel 8 loads the delay information. If 1s and 0s are used in the pattern, then the trailing edge (TG2) setting is ignored for that channel. However, the trailing edge should always be programmed at least 5 ns after the leading edge to satisfy statement syntax. This command is also used to define when TG1 clocks data into receive memory on the stated channel. Format short ddd_set_delay(short channel, float lead, float trail);
Valid Arguments channel 1 to 8 lead leading edge delay in decimal or scientific notation (must be within vector period) trail trailing edge delay (lead edge + 5 ns) in decimal or scientific notation (must be within vector period)
96
ASL Series Programming Guide
Single Board Function Calls
Usage ddd_7->ddd_set_delay(1, 15e-9, 50e-9);
Pattern Commands ddd_load_pattern (non-loop mode) Description This function loads data at the specified vector address. Format short ddd_load_pattern(unsigned short address, char *pattern); Valid Arguments address 0 to 32767 pattern a character string representing all eight channels in descending order from Channel 8 to Channel 1 (left to right, within double quotes), composed of the following possible characters: x -driver connect switch open, receive connect switch closed 1 -drive high at TG1, TG2 is ignored 0 -drive low at TG1, TG2 is ignored T -drive high at TG1, return low at TG2 Z -drive low at TG1, return high at TG2 Usage ddd_7->ddd_load_pattern(1, “XXXX0101”);
ASL Series Programming Guide
97
5 - DDD - Digital Driver and Detector
ddd_load_pattern (loop mode) Description This function loads an alternating pattern between a starting address and an ending address. The alternating pattern consists of Pattern 1 followed by Pattern 2 in a repeating cycle. At least three vectors must be programmed. Format short ddd_load_pattern(unsigned short start_address, unsigned short stop_address, char *pattern1, char *pattern2);
Valid Arguments start_address 0 to 32764 stop_address start_address + 2 pattern1 composed the same way as ddd_load_pattern (non-loop mode) on the previous page; associated with start_address pattern2 composed the same way as ddd_load_pattern (non-loop mode); associated with start_address + 1 Usage ddd_7->ddd_load_pattern(0, 25, “XXXX0101”, “XXXX1010”);
ddd_end_pattern Description This function forces a continuously looping pattern to jump to vector address 0 after completing the execution of the number of vectors stated. This must be set before a looping pattern is burst.
98
ASL Series Programming Guide
Single Board Function Calls
Format short ddd_end_pattern(unsigned short vector count);
Valid Arguments vector count 0 to 32767 Usage ddd_7->ddd_end_pattern(25);
ddd_run_pattern (non-loop mode) Description This routine provides a single burst of a pattern from the defined start address to the defined stop address. The range between the addresses must be at least two. Format short ddd_run_pattern(short start_address, short stop_address);
Valid Arguments start_address 0 to 32765 stop_address (start_address +2) to 32767 Usage ddd_7->ddd_run_pattern(2, 10);
ASL Series Programming Guide
99
5 - DDD - Digital Driver and Detector
ddd_run_pattern (loop mode) Description With no added arguments, this function begins execution of a continuously looping pattern. Unless ddd_end_pattern is programmed before this function is used, all 32K of pattern memory is executed and address control is returned to vector address 0. Format short ddd_run_pattern();
Valid Arguments none Usage ddd_7->ddd_run_pattern();
ddd_stop_pattern Description This function stops the execution of a continuously looping pattern. Address control is returned to vector 0, and the channel levels are held at the vector 0 state. Format short ddd_stop_pattern();
Valid Arguments none Usage ddd_7->ddd_stop_pattern();
100
ASL Series Programming Guide
Single Board Function Calls
ddd_read_pattern Description This function reads the comparator results for the specified address from the receive memory. The return value contains the states of all eight channels and is in Hex format (a 2-digit number where each digit represents 4 channels). This function does not account for the 2-cycle pipeline. This command would be used to determine which channels fail. Format short ddd_read_pattern(short address);
Valid Arguments address 0 to 32767 Usage ddd_7->ddd_read_pattern(5);
ddd_compare_pattern Description This function reads the logical vector from receive memory and compares it with the provided pattern. The command returns a TRUE (1) if the input matches the provided pattern, or a FALSE (0) if there is no match. With this command, two dummy vectors must be executed after the last vector. The dummy vectors account for the 2-cycle pipeline. This command would be used to determine which vector(s) fail. Format short ddd_compare_pattern(char *pattern, unsigned short vector number);
Valid Arguments pattern
ASL Series Programming Guide
101
5 - DDD - Digital Driver and Detector
a character string representing all eight channels in descending order from Channel 8 to Channel 1 (left to right, within double quotes) composed of the following possible characters: X- don’t care 1- detect high 0- detect low vector number 0 to 32765 Usage ddd_7->ddd_compare_pattern(“1010XXXX”, 25);
102
ASL Series Programming Guide
Multiple Board Function Calls
Multiple Board Function Calls Channel Commands This section describes using multiple DDD boards in a master/slave configuration. Up to four boards can be used in this way. The remark immediately to the right of the function call shows whether the commands apply to Master, Slave or both boards. NOTE — Master board is always installed in slot 7. Slave boards may be installed in slot 10, 15, and 17.
init — Master and Slave Description -- Applies to both Master and Slave boards. This is the board initialization routine. All channels are disabled and floating, and all channel reference voltages are set to 0 V based on calibration. Pattern memory remains intact. Format void init(void);
Valid Arguments none Usage ddd_7->init();
ddd_disconnect_drivers — Master and Slave Description -- Applies to Master board This routine disconnects and floats all eight channels and stops a running pattern at an indeterminate vector. The master clock will continue to drive slave boards. The function does not set the channel reference voltages to 0 V. Format short ddd_disconnect_drivers(void);
ASL Series Programming Guide
103
5 - DDD - Digital Driver and Detector
Valid Arguments none Usage ddd_S->ddd_disconnect_drivers(); //Slave = 10, 15 or 17
ddd_set_compare_channels — Master and Slave Description This function assigns channels for read back during a pattern run. Disabled channels that are not driving a pattern are tri-state. Format short ddd_enable_receive(short channels);
Valid Arguments channels Channels 8 -> 1, HEX FORMAT: 0xFF (1111 1111) enables all channels to read 0x04 (0000 0100) enables channel 3, disables others Usage ddd_7->ddd_enable_receive(0x0F);//7 = Master; Slave = 10, 15 or 17
ddd_set_voltage_ref — Master and Slave Description This function sets the threshold voltage level for the receive comparators. Only one voltage reference can be programmed for all eight channels per board. When the receive data voltage is greater than the comparator voltage reference, a logic high (1) is strobed into receive memory. The range is from -2 V to +8 V.
104
ASL Series Programming Guide
Multiple Board Function Calls
Format short ddd_set_voltage_ref(float vref);
Valid Arguments vref voltage level in decimal or scientific notation Usage ddd_7->ddd_set_voltage_ref(6.5); //7 = Master; Slave = 10, 15 or 17
ddd_set_hi_level — Master and Slave Description This function sets the high level of the drive logic for all eight channels per board. The range is -5 V to +15 V. There is no check for ddd_set_hi_ level() being programmed lower than ddd_set_lo_level() is programmed — indeterminate data results if levels are programmed in this way. Format short ddd_set_hi_level(float high_level);
Valid Arguments high_level voltage level in decimal or scientific notation Usage ddd_7->ddd_set_hi_level(10.0); //7 = Master; Slave = 10, 15 or 17
ASL Series Programming Guide
105
5 - DDD - Digital Driver and Detector
ddd_set_lo_level — Master and Slave Description This function sets the low level of the drive logic for all eight channels per board. The range is -5 V to +15 V. There is no check for ddd_set_lo_level() being programmed higher than ddd_set_hi_ level() is programmed — indeterminate data results if levels are programmed in this way. Format short ddd_set_lo_level(float low_level);
Valid Arguments low_level voltage value in decimal or scientific notation Usage ddd_7->ddd_set_lo_level(0.8); //7 = Master; Slave = 10, 15 or 17
Clock and Timing Commands ddd_set_clock_freq — Master and Slave Description The function sets the clock frequency for the generated patterns. The frequency limits are 320 kHz to 14 MHz. The clock frequency value must be the same for all boards. This function is the inverse of ddd_set_clock_period(). Format short ddd_set_clock_freq(float freq);
Valid Arguments freq 320 kHz to 14 MHz in decimal or scientific notation
106
ASL Series Programming Guide
Multiple Board Function Calls
Usage ddd_7->ddd_set_clock_freq(8e+6); //8 MHz, 7 = Master; //Slave = 10, 15 or 17
ddd_set_clock_period — Master and Slave Description This function sets the clock period for the generated patterns. The period limits are 71.4287 ns to 3.125 µs. The clock period must be the same value for all boards. This function is the inverse of ddd_set_clock_freq(). Format short ddd_set_clock_period(float period);
Valid Arguments period 71.4287 ns to 3.125 µs in decimal or scientific notation Usage ddd_7->ddd_set_clock_period(125e-9); //125 ns, 7 = Master; //Slave = 10, 15 or17
ddd_disable_clocks — Master and Slave Description This function disables the on-board oscillator. The clock frequency must be set before running the next pattern. Format short ddd_disable_clocks();
Valid Arguments none
ASL Series Programming Guide
107
5 - DDD - Digital Driver and Detector
Usage ddd_7->ddd_disable_clocks(); //7 = Master; Slave = 10, 15 or 17
ddd_set_no_delay — Master and Slave Description This function sets a zero delay on all eight channels. Timing Generator 2 (TG2) is ignored. Format short ddd_set_no_delay(void);
Valid Arguments none Usage ddd_7->ddd_set_no_delay(); //7 = Master; Slave = 10, 15 or 17
ddd_set_delay — Master and Slave Description This function sets the delay from the beginning of the vector on the selected channel edges. If one or more channels are programmed with delay, then all channels must be programmed with set_delay(), in ascending order: setting a delay on Channel 8 loads the delay information. If 1s and 0s are used in the pattern, then the trailing edge (TG2) setting is ignored for that channel. However, the trailing edge should always be programmed at least 5 ns after the leading edge. The leading edge is set by Timing Generator 1 (TG1), and the trailing edge is set by Timing Generator 2 (TG2). This command is also used to define when TG1 clocks data into receive memory on the stated channel. Format short ddd_set_delay(short channel, float lead, float trail);
108
ASL Series Programming Guide
Multiple Board Function Calls
Valid Arguments channel 1 to 8 lead leading edge delay in decimal or scientific notation (must be within vector period) trail trailing edge delay (leading edge + 5 ns) in decimal or scientific notation (must be within vector period) Usage ddd_7->ddd_set_delay(1, 15e-9, 72e-9);//7 = Master; Slave = 10, 15 or 17
Pattern Commands ddd_load_pattern —- Master and Slave (non-loop mode) Description This function loads data at the specified vector address. Format short ddd_load_pattern(unsigned short address, char *pattern);
Valid Arguments address 0 to 32767 pattern a character string representing all eight channels in descending order from Channel 8 to Channel 1 (left to right, within double quotes), composed of the following possible characters: x- driver connect switch open, comparator connect switch closed 1- drive high at TG2 is ignored 0- drive low at TG1, TG2 is ignored
ASL Series Programming Guide
109
5 - DDD - Digital Driver and Detector
T- drive high at TG1, drive lo at TG2 Z- drive low at TG1, drive hi at TG2 Usage ddd_7->ddd_load_pattern(1, “XXXX0101”);//7 = Master; Slave = 10, 15 or 17
ddd_load_pattern —- Master and Slave (loop mode) Description This function loads an alternating pattern between a starting address and an ending address. The alternating pattern consists of Pattern 1 followed by Pattern 2 in a repeating cycle. This command substitutes for a simple programmed loop instruction. At least three vectors must be programmed. Format short ddd_load_pattern(unsigned short start_address, unsigned short stop_address, char *pattern1, char *pattern2);
Valid Arguments start_address 0 to 32764 stop_address start address + 2 pattern1 composed the same way as ddd_load_pattern (non-loop mode) on the previous page; associated with start_address pattern2 composed the same way as ddd_load_pattern (non-loop mode) on the previous page; associated with start_address + 1 Usage ddd_7->ddd_load_pattern(0, 25, “XXXX0101”, “XXXX1010”);
110
ASL Series Programming Guide
Multiple Board Function Calls
ddd_end_pattern — Master and Slave Description This function forces a continuously looping pattern to jump to vector address 0 after completing the execution of the number of vectors stated. This must be set before a looping pattern is burst. Format short ddd_end_pattern(unsigned short number_of_vectors);
Valid Arguments number_of_vectors 0 to 32767 Usage ddd_7->ddd_end_pattern(25); //7 = Master; Slave = 10, 15 or 17
ddd_set_slave_pattern — Slave Description This function initializes the board before running the pattern. The board must be set before each pattern run. Format short ddd_set_slave_pattern(void);
Valid Arguments none Usage ddd_7->ddd_set_slave_pattern(void); //Slave = 10, 15 or 17
ASL Series Programming Guide
111
5 - DDD - Digital Driver and Detector
ddd_set_master_pattern — Master Description This routine initializes the board before running the pattern. Slave boards must be set before the master board is set. Format short ddd_set_master_pattern(void);
Valid Arguments none Usage ddd_7->ddd_set_master_pattern(void);
ddd_run_slave_pattern — Slave (non-loop function) Description This function sends a single burst of a pattern from start_address to stop_address. The range between the addresses must be at least three. The slave board does not run vectors until the master board runs. Format short ddd_run_slave_pattern(short start_address, short stop_address);
Valid Arguments start_address 0 to 32765 stop_address (start_address + 3) to 32767
112
ASL Series Programming Guide
Multiple Board Function Calls
Usage ddd_15->ddd_run_slave_pattern(2, 10);//Begins polling for master //board Slave = 10, 15 or 17
ddd_run_master_pattern — Master (non-loop function) Description This function sends a single burst of a pattern from start_address to stop_address. The range between the addresses must be at least two. Execute the instruction after all slaves are polling with ddd_run_slave_pattern. Format short ddd_run_master_pattern(short start_address, short stop_address);
Valid Arguments start_address 0 to 32765 stop_address (start_address + 2) to 32767 Usage ddd_7->ddd_run_pattern(2, 10);
//All boards will run
ddd_run_slave_pattern — Slave (loop function) Description With no added arguments, this function begins polling for the master board to execute a continuously looping pattern. Unless ddd_end_pattern is programmed before using this function, all 32K of pattern memory is executed and address control is returned to vector 0. Format short ddd_run_slave_pattern();
ASL Series Programming Guide
113
5 - DDD - Digital Driver and Detector
Valid Arguments none Usage ddd_15->ddd_run_slave_pattern(); //Slave = 10, 15 or 17
ddd_run_master_pattern — Master (loop function) Description With no added arguments, this function begins executing a continuously looping pattern, and executes polling slave boards. Unless ddd_end_pattern is programmed before using this function, all 32K of pattern memory is executed and address control is returned to vector 0. Format short ddd_run_master_pattern();
Valid Arguments none Usage ddd_7->ddd_run_master_pattern();
ddd_stop_pattern —- Master and Slave Description This function stops the execution of a continuously looping pattern. Address control is returned to vector 0, and the channel levels are held at the vector 0 state. Format short ddd_stop_pattern();
114
ASL Series Programming Guide
Multiple Board Function Calls
Valid Arguments none Usage ddd_7->ddd_stop_pattern(); //7 = Master; Slave = 10, 15 or 17
ddd_read_pattern — Master and Slave Description This function reads the comparator results for the specified address from the receive memory. The return value contains the states of all eight channels and is in Hex format (a 2-digit number where each digit represents 4 channels). This function does not account for the 2-cycle pipeline. This command would be used to determine which channels fail. The ddd_enable_receive command must assign read-back channels. Format short ddd_read_pattern(short address);
Valid Arguments address 0 to 32767 Usage ddd_7->ddd_read_pattern(5); //7 = Master; Slave = 10, 15 or 17
ddd_compare_pattern — Master and Slave Description This function reads the logical vector from receive memory and compares it with the provided pattern. The command returns a TRUE (1) if the input matches the provided pattern, or a FALSE (0) if there is no match. With this command, two dummy vectors must be executed after the last vector. The dummy vectors account for the 2-cycle pipeline. This command would be used to determine which vector(s) fail.
ASL Series Programming Guide
115
5 - DDD - Digital Driver and Detector
Format short ddd_compare_pattern(char *pattern, unsigned short address);
Valid Arguments pattern a character string representing all 8 channels in descending order from Channel 8 to Channel 1, comprised of the following possible characters: X- don’t care 1- expect high 0- expect low address 0 to 32765 Usage ddd_7->ddd_compare_pattern(“1010XXXX”, 25);//7 = Master; Slave = //10, 15 or 17
116
ASL Series Programming Guide
DDD Simplified Diagram
DDD Simplified Diagram The figure below shows the simplified diagram of the DDD instrument.
Figure 14. DDD Simplified Diagram
ASL Series Programming Guide
117
5 - DDD - Digital Driver and Detector
Vector Format Examples NOTE — Use the diagrams in this section as visual aid tools only -- they are not to scale with the numerical data of the examples.
No Delays with 1- and 0-Data
V1
V2
V3
100 ns
100 ns
100 ns
V4
CH1
100 ns
CH2
TG1
TG1
TG1
TG1
Figure 15. Using No Delay with 1s and 0s ddd_set_clock_period(100e-9) ddd_set_no_delay() ddd_load_pattern(0, “XXXXXX10”); ddd_load_pattern(1, “XXXXXX01”); ddd_load_pattern(2, “XXXXXX10”); ddd_load_pattern(3, “XXXXXX01”);
In using no delays, the vector data will change states on TG1 for both channels. In this case, the change occurs at 100 ns. In this example, the TG1 markers are for Channel 2 (CH2) only. Timing Generator 2 (TG2) is ignored.
118
ASL Series Programming Guide
Vector Format Examples
Delays with 1- and 0-Data and Zs (RT1)
V1
V2
V3
V4
CH1
100 ns
100 ns
100 ns
100 ns
CH2
TG1
TG2
TG1
TG2
TG1
TG2
TG1
TG2
Figure 16. Using Delays with 1s, 0s, and Zs (RT1) ddd_set_clock_period(100e-9); ddd_set_delay(1, 0, 5e-9); ddd_set_delay(2, 15e-9, 50e-9); // channels 3 through 8 are programmed with 0 ns on TG1 and 5 ns on TG2 ddd_load_pattern(0, ddd_load_pattern(1, ddd_load_pattern(2, ddd_load_pattern(3,
“XXXXXX10”); “XXXXXXZ1”); “XXXXXX00”); “XXXXXXZ1”);
The action of Z vector data depends on the preceding vector, with Z data going low on TG1 and returning high (RT1) on TG2. In this example, the TG1 and TG2 markers are shown for CH2 only. In the first vector, CH2 is set high (1). Because TG2 is ignored with the use of 1- and 0-data, CH2 remains high into the second vector, where it is set low (0) at TG1. At TG2, the return-to-one action occurs and CH2 is set high. At TG1 in the third vector, CH2 is set low. Again, because TG2 is ignored with the use of 1- and 0-data, CH2 remains low into the fourth vector. At TG1 in the fourth vector, the Z data sets CH2 low. Already low, CH2 remains low until TG2, where it is set high.
ASL Series Programming Guide
119
5 - DDD - Digital Driver and Detector
Delays with 1- and 0-Data and Ts (RT0)
V1
V2
V3
V4
CH1
100 ns
100 ns
100 ns
100 ns
CH2 TG1
TG2
TG1
TG2
TG1
TG2
TG1
TG2
Figure 17. Using Delays with 1s, 0s and Ts (RT0) ddd_set_clock_period(100e-9); ddd_set_delay(1, 0, 5e-9); ddd_set_delay(2, 15e-9, 50e-9); // channels 3 through 8 are programmed with 0 ns on TG1 and 5 ns on TG2 ddd_load_pattern(0, ddd_load_pattern(1, ddd_load_pattern(2, ddd_load_pattern(3,
“XXXXXX10”); “XXXXXXT1”); “XXXXXX00”); “XXXXXXT1”);
The action of T vector data depends on the preceding vector, with T data going high on TG1 and returning low (RT0) on TG2. In this example, the TG1 and TG2 markers are for CH2 only. In the first vector, CH2 is set high. Since TG2 is ignored with the use of 1- and 0-data, CH2 remains high into the second vector. At TG1 in the second vector, the T data sets CH2 high. Already high, CH2 remains high until TG2, where it is set low. At TG1 in the third vector, CH2 is set low. Again, because TG2 is ignored with the use of 1- and 0data, CH2 remains low into the fourth vector, where it is set high at TG1. At TG2, the return-to-zero action occurs, and CH2 is set low.
120
ASL Series Programming Guide
Vector Format Examples
Delays with Zs (RT1) and Ts (RT0)
V1
V2
V3
V4
CH1
100 ns
100 ns
100 ns
100 ns
CH2
TG1
TG2
TG1
TG2
TG1
TG2
TG1
TG2
Figure 18. Using Delays with Zs (RT1) and Ts (RT0) ddd_set_clock_period(100e-9); ddd_set_delay(1, 0, 5e-9); ddd_set_delay(2, 15e-9, 50e-9); // channels 3 through 8 are programmed with 0 ns on TG1 and 5 ns on TG2 ddd_load_pattern(0, “XXXXXXZ0”); ddd_load_pattern(1, “XXXXXXT1”); ddd_load_pattern(2, “XXXXXXZ0”); ddd_load_pattern(3, “XXXXXXT1”);
In this example, the TG1 and TG2 markers are shown for CH2 only. The action of Z data at TG1 in the first vector depends on the preceding vector. If CH2 is low coming into the first vector, it remains low at TG1. If CH2 is high coming into the first vector, it is set low at TG1. In either case, CH2 is set high through the first vector at TG2. With T data in the second vector, CH2 remains high at TG1. At TG2, the return-to-zero action occurs, and CH2 is set low. CH2 remains low through the second vector and into the third. At TG2 in the third vector, CH2 is set high because of Z data. CH2 remains high through the third vector and into the fourth because of T data. At TG2 in the fourth vector, CH2 is set low.
ASL Series Programming Guide
121
5 - DDD - Digital Driver and Detector
Delays with Zs (RT1)
V1
V2
V3
V4
H1
100 ns
100 ns
100 ns
100 ns
H2
TG1
TG2
TG1
TG2
TG1
TG2
TG1
TG2
Figure 19. Using Delays with Zs (RT1) ddd_set_clock_period(100e-9); ddd_set_delay(1, 0, 5e-9); ddd_set_delay(2, 15e-9, 50e-9); // channels 3 through 8 are programmed with 0 ns on TG1 and 5 ns on TG2 ddd_load_pattern(0, “XXXXXXZ0”); ddd_load_pattern(1, “XXXXXXZ1”); ddd_load_pattern(2, “XXXXXXZ0”); ddd_load_pattern(3, “XXXXXXZ1”);
In this example, the TG1 and TG2 markers are shown for CH2 only. The action of Z data at TG1 in the first vector depends on the preceding vector. If CH2 is low entering the first vector, it remains low at TG1. If CH2 is high entering the first vector, it is set low at TG1. Either way, CH2 is set high through the first vector at TG2. With Z data in the second vector, CH2 remains high until TG1, when it is set low. At TG2, the return-to-one action occurs; CH2 is set high, and remains high through the second vector and into the third. At TG1, CH2 is again set low because of Z data. At TG2, CH2 is set high. This action repeats through the third and fourth vectors. Using Z data in every vector can create a DUT clock at greater than 10 MHz. In this case, the format is the inverse of the following T-format example.
122
ASL Series Programming Guide
Vector Format Examples
Delays with Ts (RT0)
V1
V2
V3
V4
1
100 ns
100 ns
100 ns
100 ns
H2
TG1
TG2
TG1
TG2
TG1
TG2
TG1
TG2
Figure 20. Using Delays with Ts (RT0) ddd_set_clock_period(100e-9); ddd_set_delay(1, 0, 5e-9); ddd_set_delay(2, 15e-9, 50e-9); // channels 3 through 8 are programmed with 0 ns on TG1 and 5 ns on TG2 ddd_load_pattern(0, “XXXXXXT0”); ddd_load_pattern(1, “XXXXXXT1”); ddd_load_pattern(2, “XXXXXXT0”); ddd_load_pattern(3, “XXXXXXT1”);
In this example, the TG1 and TG2 markers are shown for CH2 only. The action of T data at TG1 in the first vector depends on the preceding vector. If CH2 is low coming into the first vector, it is set high at TG1. If CH2 is high coming into the first vector, it remains high at TG1. In either case, CH2 is set low through the first vector at TG2. With T data in the second vector, CH2 remains low until TG1, when it is set high. At TG2, the return-to-zero action occurs; CH2 is set low. CH2 remains low through the second vector and into the third. At TG1, CH2 is again set high because of T data. At TG2, CH2 is set low. This action repeats through the third and fourth vectors. Using T data in every vector will create a DUT clock at greater than 10 MHz. In this case, this format is the inverse of the Z-format example on the previous page.
ASL Series Programming Guide
123
5 - DDD - Digital Driver and Detector
124
ASL Series Programming Guide
6 DOAL - DUAL OP AMP LOOP The Dual Op Amp Loop (DOAL) is an application specific instrument designed to test operational amplifiers and comparators.
ASL Series Programming Guide
125
6 - DOAL - Dual Op Amp Loop
Theory of the DOAL This section describes the opamp circuitry of the DOAL instrument, initialization conditions and channel measurement.
Opamp Loop The DOAL circuitry allows you to program the desired DUT output voltage. The opamp loop then provides the required stimulus to the inverting input of the DUT until the output reaches the programmed value. The DOAL instrument has two loops. In general, the loops are independent of each other, and each channel has its own unique commands. However, there are a few common components, such as the output DAC and the measurement ADC. For simplicity, this section focuses on CH0 only. CH1 operates in the same way, and is referenced throughout the function calls as shown in section "Function Calls." A DOAL opamp loop typically starts with the DUT output, which is sent to a highvoltage buffer through the HV_BUF_CONN relay. The buffer is connected to a summing amplifier through a 100 kΩ resistor. The summing amp is also connected (through another 100 kΩ resistor) to a 12-bit DAC, generally referred to as the output DAC. Initiate loop action by issuing the set_output_voltage command. The summing amp detects the difference between the DUT output and the output DAC, and generates an error signal. The error signal is then applied to a compensation circuit that consists of two 12-bit DACs in parallel. These parallel DACs are called the int DAC and the gain DAC. The int DAC is responsible for setting the pole for the compensation. The gain DAC sets the zero. You program these DACs with the set_int_dac_ch0 and set_gain_dac_ch0. To continue the loop, the compensation network is then fed back to the inverting input terminal of the DUT. The compensation passes through a buffer first, and then through either the CLOSE_LOOP or CLS_LOOP_IV relays, and finally through the DUT_NEG_ISOL relay. To complete the loop, the non-inverting input of the DUT is held at ground potential by closing a combination of two relays: the DUT_POS_ISOL relay, and either the MLG_CON_POS or the LLG_CON_POS relay. The DOAL also provides DUT output loading through a series of resistors in varying sizes, which you select as desired. The load can be ground referenced, or you can apply a bias.
126
ASL Series Programming Guide
Theory of the DOAL
Relay and Switch Action Several relays and switches are pre-set when an init function is called to initialize the DOAL. As a result, init opens all switches and relays except for those shown below: Table 8. DOAL - Relays and Switches Closed on init Relays that are closed on init
Switches that are closed on init
LOAD_REF_GND
INT_CONN
HV_BUF_CONN
INT_RESET
CONNECT_LOADS
1A_100MV
Most switches and relays are also “grouped” together so that a single command performs an open or close on both channels (CH0 and CH1). The switches and relays that are not grouped must be programmed separately. These relays and switches are listed below: Table 9. DOAL - Independent Relays and Switches Relays
Switches
DUT_NEG_OUT
IA_OFF_POL
DUT_POS_OUT
CH1_OFF_POL
IA_OFF_POL
CH0_MEAS
CH1_OFF_POL
CH1_MEAS
OUT_TO_RMS CH1_RMS_METER DUT_OUT_JMPRS CH1_OUT_JMPRS
Channel Action CH0 and CH1 share the same output DAC and use the single measurement ADC. Therefore, to test dual opamps measurements must be taken sequentially. For example, to measure the output of the IA amp for both channels, follow these steps: 1. Close the IA_AMP mux switch 2. Take the measurement
ASL Series Programming Guide
127
6 - DOAL - Dual Op Amp Loop
3. Close the CH1_IA_AMP mux switch 4. Measure again
Measurement Circuit Description The measurement circuit consists of two types of signal conditioning. The type of conditioning used depends on whether the signal to be measured is a voltage or current. If the signal is a voltage, it passes through a ground-referenced instrumentation amplifier (IA), where a gain (programmed by you) is applied. From the IA, the signal is passed by the ADC Mux to the measurement ADC. If the signal is a current, it passes through a current-to-voltage (I-V) converter, through the ADC Mux and then to the measurement ADC.
Voltage Measurement The IA has four programmable gain ranges, set by three switches as shown below: Table 10. Programmable Range Switches Switch
Action
IA_1MV
//Sets IA gain = 10000
IA_10MV
//Sets IA gain = 1000
IA_100MV
//Sets IA gain = 100
If all three switches are open the IA defaults to the 100 µA range, resulting in an amplifier gain of 100,000. The IA can be nulled; the IA offset DAC (or null DAC) provides a means of programming the IA reference pin with a bipolar signal. Programming a bipolar signal on the pin increases measurement accuracy by nulling out errors in the measurement circuit itself. The IA_OFF_POL switch sets the null DAC polarity. The amount of attenuation at the null DAC output is also programmable. The IA_OFF_100_MV switch programs the attenuation.
128
ASL Series Programming Guide
Theory of the DOAL
Current Measurement The DOAL has two types of I-V converters: medium leakage (MLG) and low leakage (LLG). Each converter is labeled according to its range capacity. Each converter also has a gain-setting relay associated with it, which increases the range capability. The IV converters are specified as follows: Table 11. I-V Converter Ranges I-V converter
X10 switch status
Full-scale range
MLG
OFF
1 µA
MLG
ON
10 µA
LLG
OFF
10 nA
LLG
ON
10 nA
An I-V converter is associated with each of the inverting and non-inverting inputs to the DUT. The MLG associated with the inverting terminal is called MLG_POS; the LLG converters are set up the same way. The I-V converter associated with the non-inverting input is referenced to ground and keeps the non-inverting input of the DUT at ground potential through its opamp action. The NEG converter is referenced to the feedback path of the opamp loop, and actually becomes part of the loop itself through its opamp action. This reference point is diode clamped; using the NEG converter as a stand-alone I-V converter yields valid results only for signals that are less than 100 mV from ground. The voltage generated by the I-V converters is passed on to the ADC Mux.
ASL Series Programming Guide
129
6 - DOAL - Dual Op Amp Loop
Function Calls NOTE — Board pointers are limited to three letters, so the DOAL board pointer is actually "oal."
init Description This is the board initialization routine. These relays will be closed after an init: LOAD_REF_GND HV_BUF_CONN CONNECT_LOADS These analog switches will be closed after an init: INT_CONN INT_RESET 1A_100MV Format void init(void);
Valid Arguments none Usage oal_8->init();
set_ia_offset_dac ch1_ia_offset_dac Description These functions program the instrumentation amplifier (IA) offset DACs. These commands are used to null the IA to improve accuracy for ranges lower than 100 mV. DAC addressing is left justified so that full scale is 65535 and zero scale is 0 to 15. Depending on the status of the IA_OFF_POL and CH1_OFF_POL switches, output is either a positive voltage (switches off) or a negative voltage (switches on).
130
ASL Series Programming Guide
Function Calls
Format void set_ia_offset_dac(unsigned short value); void ch1_ia_offset_dac(unsigned short value);
Valid Arguments value integer number from 0 to 65535 (0 to 15 are zero scale; there is no action) Usage oal_8->set_ia_offset_dac(32768); oal_8->ch1_ia_offset_dac(32768);
set_output_dac Description This function programs the output DAC to the stated voltage (value). DAC addressing is left justified so that full scale is 65535 and zero scale is 0 to 15. The status of the OUT_POL switch determines the output. Output is a positive voltage when the switch is off, and a negative voltage when the switch is on. Format void set_output_dac(unsigned short value);
Valid Arguments value integer number from 0 to 65535 (0 to 15 are zero scale; there is no action) Usage oal_8->set_output_dac(32768);
ASL Series Programming Guide
131
6 - DOAL - Dual Op Amp Loop
set_output_voltage Description This function programs the opamp loop so that the programmed voltage appears at the DUT output. If the loop is properly closed, the DOAL circuitry attempts to deliver the necessary voltage to the inverting input of the DUT. The programmed voltage then appears at the DUT output. The default value for range is autorange. Format void set_output_voltage(float value, char range = -1);
Valid Arguments value output voltage value in decimal or scientific notation range OUT_RNG_X4 NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage oal_8->set_output_voltage(1.0);
dac_output_voltage Description This function programs the output DAC to the specified voltage. The voltage must be within the range of 0 V to +10 V. Format void dac_output_voltage(float value);
132
ASL Series Programming Guide
Function Calls
Valid Arguments value output voltage value in decimal or scientific notation (0 V to +10 V) Usage oal_8->dac_output_voltage(1.0);
set_gain_dac_ch0 set_gain_dac_ch1 Description These functions program the DACs that are used to set the zero value that stabilizes the opamp loop on a per-channel basis. DAC addressing is left justified; full scale is 65535 and zero scale is 0 to 15. Format void set_gain_dac_ch0(unsigned short value); void set_gain_dac_ch1(unsigned short value);
Valid Arguments value integer number from 0 to 65535 (0 to 15 are zero scale; there is no action) Usage oal_8->set_gain_dac_ch0(500); oal_8->set_gain_dac_ch1(500);
set_int_dac_ch0 set_int_dac_ch1 Description These functions program the DACs that are used to set the pole value that stabilizes the opamp loop on a per-channel basis. DAC addressing is left justified; full scale is 65535 and zero scale is 0 to 15.
ASL Series Programming Guide
133
6 - DOAL - Dual Op Amp Loop
Format void set_int_dac_ch0(unsigned short value); void set_int_dac_ch1(unsigned short value);
Valid Arguments value integer number from 0 to 65535 (0 to 15 are zero scale; there is no action) Usage oal_8->set_int_dac_ch0(3000); oal_8->set_int_dac_ch1(3000);
convert_read_adc Description This function issues a read strobe to the measurement system ADC. The result is a left-justified 12-bit decimal value (16-bit bus) that you convert to a voltage or current. Format unsigned short convert_read_adc(void);
Valid Arguments none Usage result=oal_8->convert_read_adc
select_adc_mux Description This function sets the source of the signal that presents to the measurement system ADC.
134
ASL Series Programming Guide
Function Calls
Format void select_adc_mux(unsigned short function);
Valid Arguments function IA_AMP (ADC mux ch0 values) HV_BUF LLG_POS LLG_NEG MLG_POS MLG_NEG EXT_PICO_POS EXT_PICO_NEG CH1_IA_AMP (ADC mux ch1 values) CH1_HV_BUF CH1_LLG_POS CH1_LLG_NEG CH1_MLG_POS CH1_MLG_NEG CH1_EXT_PICO_POS CH1_EXT_PICO_NEG Usage oal_8->select_adc_mux(MLG_NEG);
measure_average Description This function performs a specified number of measurements on the high-voltage buffer. The voltage detected by the ADC is actually divided down by 4. The division is accounted for in the returned value. Format float measure_average(unsigned short samples);
ASL Series Programming Guide
135
6 - DOAL - Dual Op Amp Loop
Valid Arguments samples Integer number of samples Usage result=oal_8->measure_average(10);
close_relay open_relay Description These functions set the status of the specified relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay LOAD_SHORT DUT_INP_SHORT OUT_TO_RMS SHORT_FEEDBACK_RES FEEDBACK_TO_OUT DUT_POS_ISOL DUT_NEG_ISOL DUT_POS_OUT DUT_NEG_OUT DUT_OUT_JMPRS DUT_OUT_OUT POS_IN_JMPRS LOAD_600 LOAD_1K LOAD_2K LOAD_4K7
136
ASL Series Programming Guide
LOAD_10K LOAD_100K CONNECT_LOADS LOAD_REF_EXT LOAD_REF_GND EXT_RLY_DRV EXT_LOAD_CONN HV_BUF_CONN SPARE_BIT CH1_EXT_DRV CH1_IN_JMPRS CH1_NEG_OUT CH1_POS_OUT CH1_OUT_JMPRS CH1_RMS_METER CH1_OUT_OUT
Function Calls
Usage oal_8->close_relay(DUT_POS_OUT);
clear_relays Description This function resets all relays to the open state. Format void clear_relays(void);
Valid Arguments none Usage oal_8->clear_relays();
close_switch open_switch Description These functions set the status of the stated switches. Format void close_switch(unsigned short switch); void open_switch(unsigned short switch);
Valid Arguments switch DAC_OUT CLOSE_LOOP CLS_LOOP_IV LLG_CON_POS LLG_CON_NEG
INT_SLOW OUT_POL IA_OFF_POL CH1_OFF_POL OUT_RNG_X4
ASL Series Programming Guide
137
6 - DOAL - Dual Op Amp Loop
MLG_CON_POS BUS_8_MEAS MLG_CON_NEG ADC_ENABLE IA_OFF_100_MV STROBE POS_LKG_X10 MOD_CON_10 NEG_LKG_X10 DC_GAIN IA_POS_IN CH0_MEAS IA_NEG_IN CH1_MEAS IA_1MV //Sets IA gain = 10000 IA_10MV //Sets IA gain = 1000 IA_100MV //Sets IA gain = 100 INT_CONN INT_RESET DRV_1* DRV_2 SWITCH_NULL_14 * On systems equipped with an LCB, this switch connects to the input of the measurement I-V converter and is programmed with reverse polarity: open_switch(DRV-1) closes the connection. EE_WP EE_CLK EE_DATA Usage oal_8->close_switch(DAC_OPUT); oal_8->open_switch(DAC_OUT);
clear_switches Description This function resets all switches to the open state. Format void clear_switches(void);
Valid Arguments none
138
ASL Series Programming Guide
Function Calls
Usage oal_8->clear_switches();
ASL Series Programming Guide
139
6 - DOAL - Dual Op Amp Loop
DOAL Simplified Diagrams: CH0 and CH1 The figures below show simplified diagrams of DOAL sections.
OUT_SET_DAC
POS_LKG_X10
DAC_OUT OUT_RNG_X4
TP16
EXT_LOAD_CONN SET_INT_DAC
INT_CONN
**
TO ADC MUX
DUT_OUT_JMPRS
INT_RESET SUM AMP
WIRE LINK
RMS_METER
**
TP13
OUT_TO_RMS
CH1_IN_JMPRS
POS INPUT I/V CONVERTERS
TP4
OUT_POL
BUS_x
LLG_CON_POS
LLG_POS_CH1
75K
25K
MLG_CON_POS
MLG_POS_CH1
WIRE_LINKS BUFFER
SET_OUTPUT_DAC
DUT_OUT_2 100K
DUT_POS_ISOL
SET_GAIN_DAC
CH1_POS_IN
BUFFER 100K
FEEDBACK_TO_OUT
BUS_9
CLS_LOOP_IV
75K
MOD_CON_9 100K
*
HV_BUF TO ADC MUX
HV_BUF_CONN
TP11
BUS_10
SHORT_FEEDBACK_RES
10K
25K
MOD_CON_10
CLOSE_LOOP
LLG_NEG
IA_AMP TO ADC MUX
**
DUT_IN_SHORT
TP14 IA_NEG_IN
TP8
MLG_CON_NEG
DUT_NEG_OUT
NEG_LKG_X10
DUT_OUT_OUT
CH1_NEG_OUT
DUT_NEG_ISOL
DUT_OUT_OUT
LOAD_SHORT
DUT_NEG_ISOL
DUT_NEG_OUT
NEG INPUT I/V CONVERTERS 1k 600 LEGEND:
CH1_POS_OUT
LLG_CON_NEG
TO ADC MUX MLG_NEG
*
CH1_POS_OUT
IA_POS_IN
INST AMP
DUT_NEG_IN
CONNECT_LOADS DUT_OUT
IA_1MV IA_10MV IA_100MV
IA_1MV IA_10MV
LOAD_600 TP9
RELAY 1K
ANALOG SWITCH
2K
LOAD_2K
4.7K
LOAD_4K7
DUT_IN_SHORT DUT_NEG_IN IA_OFF_100_MV
INST AMP
IA_AMP TO ADC MUX
1K
CH1_IA_OFF_DAC IA_NEG_IN
** IA_100MV
LOAD_1K
CH1_NEG_OUT
10K
90K
10K
CH1_OFF_POL
SHORT_FEEDBACK_RES
DUT_POS_OUT
IA_AMP_CH0 TP12
IA_POS_IN
DUT_POS_OUT
LLG_POS_CH0 10K
LOAD_10K
100K
LOAD_100K
MLG_POS_CH0
10K
90K
ADC
LLG_NEG_CH0 ADC MUX CH0
CH1_OUT_2 POS_IN_JMPRS
IA_OFF_100_MV 1M
TP7
IA_OFF_POL
CH1_RMS_MTR MLG_CON_NEG CH1_OUT_JMPRS
TO ADC MUX
EXT_LOAD_CONN MLG_POS
LOAD_REF_GND
CH1_RMS_MTR
TP15 MLG_NEG
WIRE LINK
LLG_CON_POS
TO ADC MUX
HV_BUF_CH0
NEG_LKG_X10
POS_LKG_X10
LLG_POS
CH0_PICO_NEG *CONVERT
NEG INPUT I/V CONVERTERS
DUT_POS_ISOL
MLG_NEG_CH0 CH0_PICO_POS
FEEDBACK_TO_OUT
DUT_POS_IN
IA_OFFSET_DAC TP2
EXT_LOAD_CONN
MLG_CON_POS TP6
*
BUS_8
LLG_CON_NEG
TP5
LOAD_REF_EXT
CLS_LOOP_IV EXT_REF
IA_AMP_CH1
WIRE_LINKS
LLG_NEG
POS INPUT I/V CONVERTERS
CLOSE_LOOP
DAC_OUT
EXT_LOAD_CONN
LLG_POS_CH1
OUT_RNG_X4 CH1_LOAD_CONN
LOAD_SHORT
MLG_POS_CH1 MUX OUT
SET_INT_DAC
INT_CON
LLG_NEG_CH1 ADC MUX CH1
600
OUT_SET_DAC
CH1_PICO_POS
**
BUFFER
LOAD_600
MLG_NEG_CH1 1K
LOAD_1K
2K
LOAD_2K
4.7K
LOAD_4K7
10K
LOAD_10K
100K
LOAD_100K
75K
25K
INT_RESET 100K
SUM AMP
**
TP10
TP1
BUS_9
CH1_PICO_NEG
MOD_CON_9
HV_BUF_CH1
100K
SET_GAIN_DAC
BUS_10 MOD_CON_10
* **
TP3
Relays closed after init. Switches Closed After Init
100K BUFFER
1M CH1_DUT_OUT
CONNECT_LOADS CH1_OUT_OUT
CH1_OUT_OUT
*
75K
*
HV_BUF_CONN 25K
DOAL Card Simplified Diagram
Figure 21. DOAL Simplified Diagram
140
ASL Series Programming Guide
DOAL Simplified Diagrams: CH0 and CH1
BUFFER DAC_OUT CLS_LOOP_IV
12-BIT
CLOSE_LOOP
INT_CONN
OUT_RNG_X4
SET_INT_DAC POLE 25 K
TP8 MLG_CON_NEG
MLG
SET_OUTPUT_DAC
SUM AMP
INT_RESET TO ADC MUX
INT_SLOW
NEG_LKG_X10 TP11 LLG
LLG_NEG
12-BIT
100 K
MLG_NEG
TO ADC MUX
OUT_POL
75 K
MOD_CON_10
100 K
TP4
SET_GAIN_DAC ZERO
LLG_CON_NEG
BUS 10
BUFFER 12-BIT 75 K DC_GAIN
HV_BUF TO ADC MUX
25 K 1K SHORT_FEEDBACK_RES DUT_NEG_ISOL
FEEDBACK_TO_OUT HV_BUF_CONN
10 K
DUT_NEG_OUT DUT_OUT_OUT
IA_NEG_IN
DUT_OUT_OUT
TP9 TO ADC MUX 12-BIT
RMS_METER IA
IA_AMP
IA_100MV IA_10MV IA_1MV
DUT_NEG_IN
DUT_NEG_OUT DUT_INP_SHORT
10 K
90 K
DUT CH0
DUT_OUT_2
DUT_TO_RMS WIRE_JUMPERS
DUT_OUT
DUT_OUT_JMPRS
+
IA_OFFSET_DAC
DUT_POS_OUT
DUT_POS_IN CONNECT_LOADS
IA_POS_IN IA_OFF_POL
LOAD_REF_GND
LOAD_SHORT
IA_OFF_100_MV
LOAD_600
600 K
LOAD_1K
1K
LOAD_2K
2K
DUT_POS_OUT
TP6 TO ADC MUX
EXT_REF LOAD_REF_EXT
DUT_POS_ISOL MLG MLG_CON_POS
MLG_POS POS_LKG_X10 TP7 TO ADC MUX LLG_POS
LLG LLG_CON_POS
LOAD_4K7
4.7 K
LOAD_10K
10 K
LOAD_100K
100 K
RELAY ANALOG SWITCH EXT_LOAD_CONN EXT_LOAD_CONN
DOAL Card Simplified Diagram: CH0
Figure 22. DOAL Channel 0 Simplified Diagram
ASL Series Programming Guide
141
6 - DOAL - Dual Op Amp Loop
BUFFER
CLS_LOOP_IV
DAC_OUT 12-BIT
CLOSE_LOOP
INT_CONN
OUT_RNG_X4
SET_INT_DAC POLE 25 K
TP15 MLG
SET_OUTPUT_DAC
SUM AMP
INT_RESET TO ADC MUX
MLG_CON_NEG
INT_SLOW
NEG_LKG_X10 TP5 LLG
CH1_LLG_NEG
12-BIT
100 K
CH1_MLG_NEG
TO ADC MUX
OUT_POL
75 K
MOD_CON_10
100 K
TP3
SET_GAIN_DAC ZERO
LLG_CON_NEG
BUS 10
BUFFER 12-BIT
75 K
DC_GAIN
CH1_HV_BUF TO ADC MUX
25 K 1K SHORT_FEEDBACK_RES DUT_NEG_ISOL
FEEDBACK_TO_OUT HV_BUF_CONN
10 K
CH1_NEG_OUT CH1_OUT_OUT
IA_NEG_IN
CH1_OUT_OUT
TP14 TO ADC MUX
CH1_RMS_METER IA
CH1_IA_AMP 12-BIT
IA_100MV IA_10MV IA_1MV
CH1_NEG_IN
CH1_NEG_OUT DUT_INP_SHORT
CH1_POS_IN
10 K
90 K IA_OFFSET_DAC
DUT CH1
CH1_OUT_2
CH1_RMS_METER WIRE_JUMPERS
CH1_DUT_OUT
CH1_OUT_JMPRS
+
CH1_POS_OUT CONNECT_LOADS IA_POS_IN IA_OFF_100_MV
CH1_OFF_POL
LOAD_REF_GND
LOAD_SHORT
LOAD_600
600 K
CH1_POS_OUT
TP16 TO ADC MUX
LOAD_1K
1K
LOAD_2K
2K
LOAD_4K7
4.7 K
EXT_REF LOAD_REF_EXT
DUT_POS_ISOL MLG MLG_CON_POS
CH1_MLG_POS POS_LKG_X10 TP13 TO ADC MUX
LLG LLG_CON_POS
CH1_LLG_POS
LOAD_10K
10 K
LOAD_100K
100 K
RELAY ANALOG SWITCH EXT_LOAD_CONN EXT_LOAD_CONN
DOAL Card Simplified Diagram: CH1
Figure 23. DOAL Channel 1 Simplified Diagram
142
ASL Series Programming Guide
Programming Examples
Programming Examples Testing VOS on a Dual Opamp void Input_Offset_Volts(test_function& func) { // The two lines below must be the first two in the function. Input_Offset_Volts_params *ours; ours = (Input_Offset_Volts_params *)func.params; short i, tests, samples = 10; unsigned long temp; long adc_val[4]; float vos_a, vos_b; // Initialize cards system_init(); // located in user.cpp // Set up load at DUT outputs oal_8->close_relay(LOAD_REF_GND); oal_8->close_relay(LOAD_2K); oal_8->set_output_voltage(ours->output);// set DUT output voltage // Set up for 10 mV measure range oal_8->open_switch(IA_100MV);// 100 mV switch is closed after init oal_8->close_switch(IA_10MV); // Do cal with inputs shorted oal_8->close_relay(DUT_POS_ISOL); oal_8->close_relay(DUT_NEG_ISOL); oal_8->close_relay(DUT_INP_SHORT); oal_8->close_switch(IA_POS_IN); oal_8->close_switch(IA_NEG_IN); //Power up DUT dvi_9->set_voltage(DVI_CHANNEL_0, ours->v_plus); dvi_9->set_voltage(DVI_CHANNEL_1, ours->v_minus); oal_8->close_switch(CLOSE_LOOP); // Set up pole and zero in compensation network oal_8->set_int_dac_ch0(ours->pole_dac); oal_8->set_gain_dac_ch0(ours->zero_dac); oal_8->set_int_dac_ch1(ours->pole_dac); oal_8->set_gain_dac_ch1(ours->zero_dac); // Activate compensation oal_8->open_switch(INT_RESET);
ASL Series Programming Guide
143
6 - DOAL - Dual Op Amp Loop
// Set up measurement oal_8->select_adc_mux(IA_AMP); // CH0 to ADC // Null Instrumentation amp (ia) delay(2); ia_dly = 1; ia_null(0); // ia null located in User.cpp // Measure ia amp after null temp = 0L; for(i=0; iconvert_read_adc(); } adc_val[0] = temp / samples; // Remove short at inputs oal_8->open_switch(DUT_INPUT_SHORT); // Measure VOS delay(ours->meas_dly); temp = 0L; for(i=0; iconvert_read_adc(); } adc_val[1] = temp / samples; // Set up CH1 oal_8->close_relay(DUT_INP_SHORT); // Set up measurement oal_8->select_adc_mux(CH1_IA_AMP); // Ch1 to ADC // Null Instrumentation amp (ia) delay(2); ia_dly = 1; ia_null(1); // ia null located in User.cpp // Measure ia amp after null temp = 0L; for(i=0; iconvert_read_adc(); } adc_val[2] = temp / samples; // Remove short at inputs oal_8->open_switch(DUT_INPUT_SHORT);
144
ASL Series Programming Guide
Programming Examples
// Measure vos delay(ours->meas_dly); temp = 0L; for(i=0; iconvert_read_adc(); } adc_val[3] = temp / samples; // power down power_down(); // Evaluate results by converting ADC output to a voltage. // The ADC input range is ± 10 V. An input voltage of 0.0 V results in // an output code of 32768. The 10 mV range for the IA amp = gain of // 1000. This presents ± 10 V to the ADC input. Therefore, to convert // the ADC reading to the proper range, the ADC reading is divided by // 32768.0 (number of codes per half-scale range). // The result is then multiplied by 10 (ADC full-scale range), then / / divided by 1000 (IA amp gain) to obtain the actual voltage at ///the DUT. // Example: If the IA amp was nulled perfectly, and the null // voltage was zero (0 V), //the first ADC reading would be 32768 (adc_val[0] = 32768). //Now suppose the second reading was 36768 (adc_val[1] = 36768). //The difference between these readings is 4000. Dividing this //number by 32768, then multiplying by 10 then dividing by 1000 //results in a VOS value of 1.2207 mV. Dividing by 3276800.0 gives // the same result, as shown in the following lines. vos_a = (adc_val[1] - adc_val[0]) / 3276800.0; func.dlog->set_test_no(1); func.dlog->power = POWER_MILLI; func.dlog->test_val(vos_a); if(func.dlog->tests[func.dlog->current_test].passed_fail == FAILED_TEST) func.dlog->set_bin(5); if(func.dlog->tests[func.dlog->current_test].display_results) func.dlog->display_results(); vos_b = (adc_val[3] - adc_val[2]) / 3276800.0; func.dlog->set_test_no(2); func.dlog->power = POWER_MILLI; func.dlog->test_val(vos_b); if(func.dlog->tests[func.dlog->current_test].passed_fail == FIELED_TEST) func.dlog->set_bin(5); if(func.dlog->tests[func.dlog->current_test].display_results) func.dlog->display_results();
ASL Series Programming Guide
145
6 - DOAL - Dual Op Amp Loop
Testing Input Bias Current on a Dual Opamp void Ib(test_function& func) { // The two lines below must be the first two in the function. Ib_params *ours; ours = (Ib_params *)func.params; short samples = 10, i, adc_val[4][2], test; float ib_pos[2], ib_neg[2]; long temp_val[4]; // Initialize cards system_init(); // located in user.cpp dvi_9->set_current(DVI_CHANNEL_0, 0.2); dvi_11->set_current(DVI_CHANNEL_0, -0.2); // connect MLG to inputs oal_8->close_relay(DUT_POS_ISOL); oal_8->close_switch(MLG_CON_POS); oal_8->close_relay(DUT_NEG_ISOL); oal_8->close_switch(MLG_CON_NEG); oal_8->close_switch(CLS_LOOP_IV); // Set up pole and zero in compensation network oal_8->set_int_dac_ch0(ours->pole_dac); oal_8->set_gain_dac_ch0(ours->zero_dac); oal_8->set_int_dac_ch1(ours->pole_dac); oal_8->set_gain_dac_ch1(ours->zero_dac); // power up dvi_9->set_voltage(DVI_CHANNEL_0, 5.0);// V+ dvi_9->set_voltage(DVI_CHANNEL_1, 0.0); // Voal_8->set_output_voltage(1.4); // Activate compensation oal_8->open_switch(INT_RESET); delay(ours->meas_dly); temp_val[0] = temp_val[1] = temp_val[2] = temp_val[3] = 0L; oal_8->select_adc_mux(MLG_POS); wait.delay_10_us(4); // measure MLG for (i=0; iconvert_read_adc(); } oal_8->select_adc_mux(CH1_MLG_POS); wait.delay_10_us(4); for (i=0; iconvert_read_adc(); } oal_8->select_adc_mux(MLG_NEG); wait.delay_10_us(4); for (i=0; iconvert_read_adc(); oal_8->select_adc_mux(CH1_MLG_NEG); wait.delay_10_us(4); for (i=0; iconvert_read_adc(); } adc_val[0] adc_val[1] adc_val[2] adc_val[3]
= = = =
temp_val[0] temp_val[1] temp_val[2] temp_val[3]
/ / / /
samples; samples; samples; samples;
adc_val[0] ^= 0x8000; adc_val[1] ^= 0x8000; } // power down power_down(); //corr_limit = 0.0; // calculate and datalog ib values func.dlog->power = POWER_NANO; ib_pos = (short) adc_val[0]; ib_pos *= -(1.0e-6 / 32768.0); // value in A (1 µA range) do_dlog(func, 0, ib_pos, ours->fbin_ib); ib_neg = (short) adc_val[1]; ib_neg *= -(1.0e-6 / 32768.0); // value in A (1 µA range) do_dlog(func, 2, ib_neg, ours->fbin_ib); // calculate Ib Avg //corr_limit = 15e-9; do_dlog(func, 4, ((ib_pos + ib_neg)/2), ours->fbin_ib); do_dlog(func, 5, ((ib_pos[1] + ib_neg[1])/2), ours->fbin_ib); // calculate Ios //corr_limit = 3e-9;
ASL Series Programming Guide
147
6 - DOAL - Dual Op Amp Loop
do_dlog(func, 6, (ib_pos[0] - ib_neg[0]), ours->fbin_ib); do_dlog(func, 7, (ib_pos[1] - ib_neg[1]), ours->fbin_ib); // calculate and datalog Vicr values func.dlog->power = POWER_MICRO; for(i = 0; i < 2; i++) { ib_pos[i] = (short) adc_val[i][1]; ib_pos[i] *= (10.0e-6 / 32768.0); if (ib_pos[i] > 9.9e-6) ib_pos[i] = 999.9999; if (ib_pos[i] < -9.9e-6) ib_pos[i] = -999.9999; }
// value in A (10 µA range)
//corr_limit = 10e-6; do_dlog(func, 8, max(fabs(ib_neg[0]), ib_pos[0]), ours->fbin_vicr); d
148
ASL Series Programming Guide
Programming Examples
ASL Series Programming Guide
149
6 - DOAL - Dual Op Amp Loop
150
ASL Series Programming Guide
7 DVI - DUAL VOLTAGE/CURRENT SOURCE The Dual Voltage/Current Source (DVI) is a dual channel voltage/current, source. Each channel can be independently programmed, or two channels can be used together for differential measurements. The two current version available are: 300 mA and 2000 mA. Forcing resolution is 12 bits, while measurement resolution is 16 bits. There are three versions of DVI in the field: 200 mA (discontinued), 300 mA, and 2000 mA current ranges, each with calibrated +50 V range.
ASL Series Programming Guide
151
7 - DVI - Dual Voltage/Current Source
DVI Theory The DVI functions as a programmable voltage source with a programmable current limit. The DVI never exceeds this current limit. The DVI operates in one of two modes: voltage mode (force V) or current mode (force I). The operating mode depends on the relationship between the programmed voltage, and the programmed current and the load. The DVI has no “force” or “clamp” commands to control the DVI’s operational mode. Voltage and current conditions are set with the set_voltage() and set_current() statements; the operational mode is determined by the relationship between the load and these settings. The Current Mode Example shows the DVI set to two volts (2 V) and one milliamp (1 mA) with a 1.5 kΩ resistor load. Under these conditions, the DVI begins to raise the output voltage to reach the stated voltage value of 2V At 1.5 V, the programmed current value is met and the DVI stops raising the voltage. This mode of operation is called the current mode because the programmed current level has been reached. The Voltage Mode Example shows the DVI set to 1 V and 1 mA. Under these conditions (as in the previous example), the DVI raises the output voltage in order to reach the stated voltage value. Because the programmed voltage value is 1 V, the DVI cannot raise the output voltage higher enough to reach the required current. At this point, the DVI stops and presents 1 V to the load. This mode of operation is called the “voltage mode” because the programmed voltage level has been reached.
V=1.5 V = 2.0 I = 0.001
1.5K
Current Mode Example
V=1.0 V = 1.0 I = 0.001
1.5K
Voltage Mode Example
These two examples show why the programmed voltage and current values are considered limits. The word limit, as it is used here, combines the concepts of both desired output and output level clamps.
152
ASL Series Programming Guide
DVI Theory
Current Direction The direction of current through a DVI channel is governed by the difference in potential between the output of the DVI and the other side of the load connected to the DVI channel .
V = 10 I = 0.001
1.5K
+2V
Negative (sinking) current
Positive (sourcing) current
Figure 24. Current Direction
Programming a Negative Current Value Programming a current value, whether a positive or negative, sets the limits which the DVI will not exceed. The following example indicates a programmed negative value of current. This does not affect the direction of current flow. It does (as with a positive value) engage a set of calibration factors; in this case, the negative set. During calibration, gain and offset information is gathered in both the source and sink current directions. Using a non-signed value of current uses the positive current calibration factor set; using a negative value of current engages the negative calibration factor set. In most cases the differences between positive and negative cal factors are small. Using a negative current value when it is known that current flow will be negative ensures the best possible response from the DVI.
ASL Series Programming Guide
153
7 - DVI - Dual Voltage/Current Source
I V = 2.0 I = -0.001
1.5K
V
current limits set by the absolute 1mA value
Figure 25. Programmed Negative Current Value with Positive (Sourcing) Current NOTE — The DVI-200 and DVI-300 channel force and sense lines are connected together by a 1.1 kΩ resistor after the CONN_FORCE and CONN_SENSE relays. For more information, see Figure 28, DVI-200 and DVI-300 Relay Configuration.
154
ASL Series Programming Guide
Function Calls
Function Calls init Description
This is the board initialization routine. The routine opens all relays except CONN_SENSE0, CONN_FORCE0, CONN_SENSE1, CONN_FORCE1, CONN_MEAS0, and CONN_MEAS1; these relays are closed. It also sets voltage to a non-calibrated 0 V on a 10 V range, and sets current to a non-calibrated 100 µA on a 200 µA range, or 150 µA on a 300 µA range. CONN_MEAS0 and CONN_MEAS1 relays exist on DVI-2000 versions only. See Figure 29, DVI-2000 Relay Configuration, for more details. Format void init(void);
Valid Arguments
none Usage dvi_9->init();
set_voltage Description
This function programs the voltage limit and closes the channel relays CONN_FORCE and CONN_SENSE on the stated channels, in this order. The default for vrange is autorange. The default for compensation is FAST_VOLTAGE_MODE. If the voltage value is programmed greater than ± 50V, or greater than the specified range, no change to the hardware will occur and an error message will be displayed. Format short set_voltage(unsigned char channel, float value, char vrange, char compensation);
ASL Series Programming Guide
155
7 - DVI - Dual Voltage/Current Source
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 value
voltage limit in decimal or scientific notation vrange
default is autorange RANGE_1_VOLT RANGE_2_VOLT RANGE_5_VOLT RANGE_10_VOLT RANGE_20_VOLT RANGE_50_VOLT
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. compensation (Default is FAST_VOLTAGE_MODE)
FAST_VOLTAGE_MODE
(approx. 100 µs to 99% of programmed voltage)
SLOW_VOLTAGE_MODE
(approx. 300 µs to 99% of programmed voltage)
Usage dvi_9->set_voltage(DVI_CHANNEL_0, 4.0, VOLT_5_RANGE, SLOW_VOLTAGE_MODE);
set_voltage_range Description
This function programs the voltage force/measure range and closes the specified channel relays CONN_FORCE and CONN_SENSE. The default value for compensation is FAST_VOLTAGE_MODE. NOTE — This function is intended for use with the last two vrange arguments, VOLT_METER_LO and VOLT_METER_HI. If a voltage ranges needs to be set, the preferred method is to use the third argument in the set_voltage function. If the range is changed after the voltage is set, erroneous results will occur.
156
ASL Series Programming Guide
Function Calls
Format void set_voltage_range(unsigned char channel, unsigned char polarity, unsigned short vrange, unsigned char compensation);
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 polarity
POSITIVE_V_OUT
(If programmed voltage is negative, it changes to positive)
NEGATIVE_V_OUT
(If programmed voltage is positive, it changes to negative)
vrange VOLT_1_RANGE VOLT_2_RANGE VOLT_5_RANGE VOLT_10_RANGE VOLT_20_RANGE VOLT_50_RANGE VOLT_METER_LO (disconnects force line , selects 6 V range) VOLT_METER_HI (disconnects force line, selects 60 V range) compensation
FAST_VOLTAGE_MODE
(approx. 100 ms to 99% of programmed voltage)
SLOW_VOLTAGE_MODE
(approx. 300 ms to 99% of programmed voltage)
Usage dvi_9->set_voltage_range(DVI_CHANNEL_0, POSITIVE_V_OUT, VOLT_METER_LO, FAST_VOLTAGE_MODE);
ASL Series Programming Guide
157
7 - DVI - Dual Voltage/Current Source
set_diff_range Description
This function programs the range for differential voltage measurements. Format void set_diff_range(unsigned short vrange);
Valid Arguments vrange (DVI-200 and DVI-2000) RANGE_20_MV RANGE_50_MV RANGE_100_MV RANGE_200_MV RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V vrange (DVI-300) RANGE_10_MV RANGE_30_MV RANGE_100_MV RANGE_300_MV RANGE_1_V RANGE_3_V RANGE_10_V RANGE_30_V RANGE_100_V Usage dvi_9->set_diff_range(RANGE_20_MV);
158
ASL Series Programming Guide
Function Calls
set_current Description
This function programs the current limit. The default for irange is autorange. Changing between extreme ranges requires 300 µs settling time. If the current range is programmed greater than 200 mA (300 mA), or greater than the specified range, no change to tthe hardware will occur. Programming ihalf to TRUE extends the current ranging down by half for the DVI-200 and by one third for the DVI 300 (for example, RANGE_20_UA becomes RANGE_10_UA and RANGE_30_UA becomes RANGE_10_UA) when irange is specifically programmed. Format short set_current(unsigned char channel, float value, char irange, char ihalf);
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 value
current limit value in decimal or scientific notation NOTE — Due to current design of board, a current value of 0 Amp CAN NOT programmed while the voltage is programmed to 0 Volts or vice versa, For example: dvi_9-> set_voltage (DVI_CHANNEL_0, 0); dvi_9-> set_current (DVI_CHANNEL_0, 0);
but it CAN be used as: dvi_9-> set_voltage (DVI_CHANNEL_0, 5); dvi_9-> set_current (DVI_CHANNEL_0, 0);
OR dvi_9-> set_voltage (DVI_CHANNEL_0, 0); dvi_9-> set_current (DVI_CHANNEL_0, 1e-6);
irange (DVI-200)(Default is autorange) RANGE_20_UA RANGE_200_UA
ASL Series Programming Guide
159
7 - DVI - Dual Voltage/Current Source
RANGE_2_MA RANGE_20_MA RANGE_200_MA irange (DVI-300)(Default is autorange) RANGE_30_UA RANGE_300_UA RANGE_3_MA RANGE_30_MA RANGE_300_MA irange (DVI -2000) (Default is autorange) RANGE_2_UA RANGE_20_UA RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE_200_MA RANGE_2_AMP NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. ihalf (default FALSE, ignored if irange is not specifically programmed)
TRUE FALSE Usage dvi_9->set_current(DVI_CHANNEL_0, 5.0e-3, RANGE_20_MA, FALSE);
set_current_range Description
This function programs the current force/measure range. Programming ihalf to TRUE extends the current ranging down by half for the DVI-200 and by one third for the DVI 300 (for example, RANGE_20_UA becomes RANGE_10_UA and RANGE_30_UA becomes RANGE_10_UA) when irange is specifically programmed.).
160
ASL Series Programming Guide
Function Calls
Format void set_current_range(unsigned char channel, unsigned short irange, char ihalf);
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 irange (DVI-200) RANGE_20_UA RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE_200_MA irange (DVI 300) RANGE_30_UA RANGE_300_UA RANGE_3_MA RANGE_30_MA RANGE_300_MA irange (DVI 2000) RANGE_2_UA RANGE_20_UA RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE_200_MA RANGE_2_A NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. ihalf (default is FALSE)
TRUE FALSE
ASL Series Programming Guide
161
7 - DVI - Dual Voltage/Current Source
Usage dvi_9->set_current_range (DVI_CHANNEL_0, RANGE_20_MA, FALSE);
set_meas_mode Description
This function determines the mode for subsequent measurement(s). Format void set_meas_mode(unsigned char channel, unsigned char mode);
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 mode DVI_MEASURE_VOLTAGE DVI_MEASURE_CURRENT DVI_MEASURE_BUS(requires installation of wire jumper to specified bus). The default is no connection. Consult a Credence Systems Applications Engineer for support. DVI_MEASURE_TEMP (DVI 2000 only) DVI_MEASURE_DIFF Usage dvi_9->set_measure_mode(DVI_CHANNEL_0, DVI_MEASURE_CURRENT);
measure Description
This function performs a single measurement. The strobe rate is approximately 20 µs, self-timed by the ADC.
162
ASL Series Programming Guide
Function Calls
Format float measure(void);
Valid Arguments
none Usage result = dvi_9->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. The strobe rate is approximately 20 µs per sample, self-timed by the ADC. Format float measure_average(unsigned short samples);
Valid Arguments samples
integer number of samples Usage result = dvi_9->measure_average(12);
set_compensation Description
This function controls the response of the internal voltage control loop. If SLOW_VOLTAGE_MODE is specifically programmed, the voltage control is “out of control”. In this case, the resulting response in the DVI is an initial fast change in voltage before the control loop responds, slowing the rate of change of the voltage.
ASL Series Programming Guide
163
7 - DVI - Dual Voltage/Current Source
If FAST_VOLTAGE_MODE is specifically programmed, the voltage control loop is in control immediately, and the initial change in voltage much less than it is with SLOW_VOLTAGE_MODE. However, the remaining change in voltage is faster. Format void set_compensation(unsigned char channel, unsigned char compensation);
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 compensation
FAST_VOLTAGE_MODE
(approx. 100 µs to 99% of programmed voltage)
SLOW_VOLTAGE_MODE
(approx. 300 µs to 99% of programmed voltage)
Usage dvi_9->set_compensation(DVI_CHANNEL_0, SLOW_VOLTAGE_MODE);
close_relay open_relay Description
These functions close and open the stated on-board relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
164
ASL Series Programming Guide
Function Calls
Valid Arguments relay
CONN_FORCE0/1
Opens and closes the force connect relay for the appropriate channel 0/1 on DVI-200 and DVI-300. For DVI-2000, this command will open two relays*
CONN_SENSE0/1
Opens and closes the sense connect relay for the channel 0 or 1.*
BUS_FORCE0/1
Opens and closes the channel 0 force-to-bus 2 connect relay and channel 1 force-to-bus 3 connect relay.
BUS_SENSE0/1
Opens and closes the channel 0 sense-to-bus 2 connect relay, and channel 1 sense-to-bus 3 connect relay, see Figure 28, DVI200 and DVI-300 Relay Configuration.*
BUS_MEASURE0/1
Opens and closes the appropriate measure-to-bus connect relay.*
GUARD0/1
Opens and closes the appropriate guard connect relay
MOD_CHAN0/1
Opens and closes the appropriate channel modulation input from the bus connect relay.
DVI_EXT_DRV1/2
Opens and closes the #1 or #2 user programmable open collector output.
CHANNEL_SHORT
Opens and closes the relay between the channel 0 sense line and the channel 1 sense line.
CONN_BUS_MEAS
Opens and closes the ADC input-to-bus relay.
Usage dvi_9->close_relay(DVI_EXT_DRV1); dvi_9->open_relay(DVI_EXT_DRV1); *Note: For clarification, see Figure 28 and Figure 29 (Relay Configuration).
ASL Series Programming Guide
165
7 - DVI - Dual Voltage/Current Source
DVI-2000 Differences The DVI-2000 force and sense lines are connected together by a 1.1 kΩ resistor before CONN_FORCE, CONN_SENCE and CONN_MEAS. For more information, see Figure 29, DVI_2000 Relay configuration.
init Description
This is the board initialization routine. The routine opens all relays except CONN_SENSE0, CONN_FORCE0, CONN_SENSE1, CONN_FORCE1, CONN_MEAS0, and CONN_MEAS1; which are closed. It also sets voltage to a noncalibrated 0 V on a 10 V range, and sets current to a non-calibrated 100 µA on a 200 µA range. CONN_MEAS0 and CONN_MEAS1 relays exist on DVI-2000 versions only. See Figure 29, DVI-2000 Relay Configuration, for more details. Format void init (void);
Valid Arguments
none Usage dvi_9->init();
set_voltage Description
This function programs the voltage limit and closes the channel relays CONN_FORCE and CONN_SENSE on the stated channels, in this order. The default for vrange is autorange. The default for compensation is FAST_VOLTAGE_MODE. If the voltage value is programmed greater than ± 50V, or greater than the specified range, no change to the hardware will occur and an error message will be displayed.
166
ASL Series Programming Guide
DVI-2000 Differences
Format short set_voltage(unsigned char channel, float value, char vrange, char compensation);
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 value
voltage limit in decimal or scientific notation vrange (Default is autorange) RANGE_1_VOLT RANGE_2_VOLT RANGE_5_VOLT RANGE_10_VOLT RANGE_20_VOLT RANGE_50_VOLT NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. compensation (Default is FAST_VOLTAGE_MODE)
FAST_VOLTAGE_MODE
(approx. 100 µs to 99% of programmed voltage)
SLOW_VOLTAGE_MODE
(approx. 300 µs to 99% of programmed voltage)
Usage dvi_9->set_voltage(DVI_CHANNEL_0, 4.0, VOLT_5_RANGE, SLOW_VOLTAGE_MODE);
set_diff_range Description
This function programs the range for differential voltage measurements.
ASL Series Programming Guide
167
7 - DVI - Dual Voltage/Current Source
Format void set_diff_range(unsigned short vrange);
Valid Arguments vrange (DVI-200 and DVI-2000) RANGE_20_MV RANGE_50_MV RANGE_100_MV RANGE_200_MV RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange.
set_current Description
This function programs the current limit. The default for irange is autorange. Changing between extreme ranges requires 300 µs settling time. If the current range is programmed greater than 2000 mA, or greater than the specified range, no change to the hardware will occur. Programming ihalf to TRUE extends the current ranging down one factor (for example, RANGE_20_UA becomes RANGE_10_UA) when irange is specifically programmed. Format short set_current(unsigned char channel, float value, char irange, char ihalf);
Valid Arguments channel
168
ASL Series Programming Guide
DVI-2000 Differences
DVI_CHANNEL_0 DVI_CHANNEL_1 value
current limit value in decimal or scientific notation irange (Default is autorange) RANGE_2_UA RANGE_20_UA RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE_200_MA RANGE_2_AMP NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. ihalf (default FALSE, ignored if irange is not specifically programmed)
TRUE FALSE Usage dvi_9->set_current(DVI_CHANNEL_0, 5.0e-3, RANGE_2_A, FALSE);
set_current_range Description
This function programs the current force/measure range. Programming ihalf to TRUE extends the current ranging down one factor (for example, RANGE_20_UA becomes RANGE_10_UA). Format void set_current_range(unsigned char channel, unsigned short irange, char ihalf);
ASL Series Programming Guide
169
7 - DVI - Dual Voltage/Current Source
Valid Arguments channel DVI_CHANNEL_0 DVI_CHANNEL_1 irange RANGE_2_UA RANGE_20_UA RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE_200_MA RANGE_2_A NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. ihalf (default is FALSE) TRUE FALSE Usage dvi_9->set_current_range (DVI_CHANNEL_0, RANGE_2_A, FALSE);
set_meas_mode Description
This function determines the mode for subsequent measurement(s). Format void set_meas_mode(unsigned char channel, unsigned char mode);
Valid Arguments channel DVI_CHANNEL_0
170
ASL Series Programming Guide
DVI-2000 Differences
DVI_CHANNEL_1 Mode DVI_MEASURE_TEMP Usage dvi_9->set_measure_mode(DVI_CHANNEL_0, DVI_MEASURE_TEMP);
close_relay open_relay Description
These functions close and open the stated on-board relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay
CONN_MEAS0/1
Opens and closes the measure connect relay for the appropriate channel. The DVI-2000 is designed with a separate circuit for Force and Measurement which allows the user to range these circuits differently. See Figure 29, DVI-2000 Relay Configuration, for more details.
Usage dvi_9->close_relay(CONN_MEAS1); dvi_9->open_relay(CONN_MEAS0);
was_it_hot Description
This function queries the system to see if the over_temp flag has been set.
ASL Series Programming Guide
171
7 - DVI - Dual Voltage/Current Source
Format bool was_it_hot(void);
Valid Arguments
none Return Values
true - Means that the instrument is overtemperature. false - Means that the instrument is not overtemperature. Usage board_hardware_init(); do{ run tests. . . . . } while(dvi_9->was_it_hot())
Duty Cycle The instruments duty cycle depends upon the current and the impedance of the load driven. A built-in temperature sensor will shut down the supply if the heat sink temperature is excessive. The temperature may also be measured, to allow for an adaptive cool-down time between devices tested. The chart below gives the user an approximate duty cycle for a given current and load. The charts are based on 100 ms ontime.
172
ASL Series Programming Guide
DVI-2000 Differences
Duty Cycle (%)
Allowable Duty Cycle vs Current 150 5 Ohm 3 Ohm 1 Ohm 0.5 Ohm
100 50 0
0A
0.25A
5 Ohm
100
100
49.609 49.609 42.578 34.766 35.547 31.641 29.297
3 Ohm
100
100
49.609 49.609 49.609 39.453 33.984 29.297 26.172
1 Ohm
100
100
49.609 49.609 47.266 36.328 30.859 27.734 24.609
0.5 Ohm
100
100
49.609 49.609 40.234 32.422 30.079 26.172 23.828
0.5A
0.75A
1A
1.25A
1.5A
1.75A
2A
Source Current Figure 26. Duty Cycle
ASL Series Programming Guide
173
7 - DVI - Dual Voltage/Current Source
DVI Simplified Diagram The figures below shows the simplified diagram of the DVI instrument.
VOLTAGE DAC CHANNEL 0
10V REF
COMPENSATION NETWORK COMPARATOR
INTEGRATOR
HIGH VOLTAGE BUFFER Current Ranges 10uA, 20uA, 100uA, 200uA, 1mA, 2mA, 10mA, 20mA, 100mA, 200mA.
POLARITY VOLTAGE RANGE SWITCHING
TP14 SENSE CH0 Hi Voltage Hi Impedance Buffer
SLOW_MODE
VOLTAGE RANGES 1,2,5,10,20 AND 50V
INTEGRATOR
Differential Amplifier
COMPARATOR
TP5
TP6
CURRENT DAC CHANNEL 0
FORCE CH0
TP8
IMEAS CH0 VMEAS_CH0
Ranges 20mV,50mV,100mV,200mV,500mV,1V,2V,5V,10V.
CHANNEL_SHORT
TP15 TP12
Differential Amplifier
DIFF_MEAS VMEAS_CH1
16 Bit ADC
TP10 IMEAS_CH1
COMPENSATION NETWORK
VOLTAGE DAC CHANNEL 1 COMPARATOR
HIGH VOLTAGE BUFFER
INTEGRATOR
Current Ranges 10uA, 20uA, 100uA, 200uA, 1mA, 2mA, 10mA, 20mA, 100mA, 200mA.
POLARITY VOLTAGE RANGE SWITCHING
TP13 SENSE CH1 Hi Voltage Hi Impedance Buffer
SLOW_MODE
VOLTAGE RANGES 1,2,5,10,20 AND 50V
INTEGRATOR COMPARATOR
10V REF
CURRENT DAC CHANNEL 1
DVI_EXT_DRV1
* CONTROLLED BY open/close_relay();
DVI_EXT_DRV2
* RELAY ANALOG SWITCH
Figure 27. DVI Simplified Diagram
174
TP7
FORCE CH1
*
LEGEND:
Differential Amplifier
ASL Series Programming Guide
DVI Simplified Diagram
* Controlled by open/close_relay(); ** Controlled by
set_meas_mode();
Figure 28. DVI Relay Configuration for DVI-200 and DVI-300
ASL Series Programming Guide
175
7 - DVI - Dual Voltage/Current Source
Figure 29. DVI Relay Configuration for DVI-2000 only
176
ASL Series Programming Guide
DVI Programming Example
DVI Programming Example Supply Current
***************************************************** For DVI-300 only ***************************************************** void supply_i(test-function &func) { //The two lines below must be the first two in the function supply_i_params *ours; ours = (supply_i_params *)func.params; float Icc, Vcc; system_init(); //sets Channel 0 of the DVI(slot 9) to Icc dvi_9->set_current(DVI_CHANNEL_0, Icc); //sets Channel 0 of the DVI (slot 9) to Vcc voltage for Pin 16. dvi_9->set_voltage(DVI_CHANNEL_0, Vcc); //sets DVI to measure current. dvi_9->set_meas_mode(DVI_CHANNEL_0, DVI_MEASURE_CURRENT); // Setup delay delay(ours->meas_delay); //measures current and takes the average over a number of samples
ASL Series Programming Guide
177
7 - DVI - Dual Voltage/Current Source
Icc = dvi_9->measure_average(ours->samples); power_down(); //user written power-off function display_results();//user written datalogging function }
***************************************************** For DVI-2000 only ***************************************************** void supply_i(test-function &func) { //The two lines below must be the first two in the function supply_i_params *ours; ours = (supply_i_params *)func.params; float icc; system_init(); bool temp_flag = 0; // Checks DVI_2000 for overtemp after test have been run, // if DVI-2000 is hot, wait for cool down period and rerun tests. do{ if (temp_flag == 1) delay(20); //sets Channel 0 of the DVI(slot 9) to Icc dvi_9->set_current(DVI_CHANNEL_0, Icc); //sets Channel 0 of the DVI (slot 9) to Vcc voltage for Pin 16. dvi_9->set_voltage(DVI_CHANNEL_0, Vcc); //sets DVI to measure current. dvi_9->set_meas_mode(DVI_CHANNEL_0, DVI_MEASURE_CURRENT); // Setup delay delay(ours->meas_delay); //measures current and takes the average over a number of samples Icc = dvi_9->measure_average(ours->samples); power_down();
//user written power-off function
display_results();//user written datalogging function temp_flag = 1; // set temp_flag // Function to verify that the DVI-2000 was in a valid operating // state during testing. }while(dvi_9->was_it_hot(); }
178
ASL Series Programming Guide
8 HVS - HIGH-VOLTAGE SOURCE High Voltage Source (HVS) instruments are programmable high-voltage, low-current floating sources. Two versions are available, delivering either 600V or 850V maximum output. This chapter provides the HVS function calls with a brief description and their usages.
ASL Series Programming Guide
179
8 - HVS - High-Voltage Source
Function Calls init Description
This is the board initialization routine. This routine turns off the high-voltage supply and programs the current and voltage DAC to 100 µA and 0 V. Format void init(void);
Valid Arguments
none Usage hvs_15->init();
set_voltage Description
This function programs the voltage limit and sets the voltage range. The default value for vrange is autorange. Setting the hot_switch parameter to FALSE (default), the HVS will program the voltage and current DACs to zero before switching the appropriate relays for range, then a 2 ms delay will occur before setting the voltage and current DACs to their specified settings. A TRUE will bypass setting the DACs to zero and the 2 ms delay will be skipped. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_voltage(float value, char vrange, char hot_switch);
Valid Arguments value
180
ASL Series Programming Guide
Function Calls
voltage limit in decimal or scientific notation vrange RANGE_100_V RANGE_200_V RANGE_500_V RANGE_1_KV NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. hot_switch
TRUE FALSE (default Usage hvs_15->set_voltage(53.5, RANGE_100_V);
set_current Description
This function programs the current limit and current range; the default value for irange is autorange. Setting the hot_switch parameter to FALSE (default), the HVS will program the voltage and current DACs to zero before switching the appropriate relays for range, then a 2 ms delay will occur before setting the voltage and current DACs to their specified settings. A TRUE will bypass setting the DACs to zero and the 2 ms delay will be skipped. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_current(float value, char irange, char hot_switch);
Valid Arguments value
current limit in decimal or scientific notation
ASL Series Programming Guide
181
8 - HVS - High-Voltage Source
irange RANGE_10_UA RANGE_100_UA RANGE_1_MA RANGE_10_MA NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. hot_switch
TRUE FALSE (default Usage hvs_15->set_current(9.5e-3, RANGE_10_MA);
set_meas_mode Description
This function sets the measurement mode and range and turns on the high-voltage power stage. Format void set_meas_mode(unsigned short mode);
Valid Arguments mode HVS_MEASURE_VOLTAGE HVS_MEASURE_CURRENT Usage hvs_15->set_meas_mode(HVS_MEASURE_VOLTAGE);
182
ASL Series Programming Guide
Function Calls
measure Description
This function performs a single floating-point measurement with the on-board ADC. Format float measure(void);
Valid Arguments
none Usage result = hvs_15->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. Format float measure_average(unsigned short samples);
Valid Arguments samples
integer number of samples Usage result = hvs_15->measure_average(12);
ASL Series Programming Guide
183
8 - HVS - High-Voltage Source
supply_off Description
This function turns off the high-voltage power supply. Use this call at the end of a test function to insure operator safety. WARNING
Format void supply_off(void);
Valid Arguments
none Usage hvs_15->supply_off();
NOTE — Turn the inverter off when testing is not taking place to avoid noise. The 650 V power rail powers up in approximately 2 ms.
close_relay open_relay Description
These functions close and open the stated relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay HVS_FORCE_POS HVS_SHORT_POS_FS HVS_SENSE_POS_REF_COM
184
ASL Series Programming Guide
Function Calls
HVS_SENSE_POS_OUT_COM HVS_GND_POS_SENSE HVS_NEG_FORCE HVS_SHORT_NEG_FS HVS_SENSE_NEG_REF_COM HVS_SENSE_NEG_OUT_COM HVS_GND_NEG_SENSE HVS_SHORT_10K_FS HVS_REF_1 HVS_REF_2 HVS_OUT_1 HVS_OUT_2 HVS_OUT_3 HVS_OUT_4 HVS_OUT_5 HVS_OUT_6 HVS_OUT_7 HVS_OUT_8 Usage hvs_15->close_relay(HVS_OUT_1); hvs_15->open_relay(HVS_OUT_1);
ASL Series Programming Guide
185
8 - HVS - High-Voltage Source
HVS Simplified Diagram The figure below shows the simplified diagram of the HVS instrument.
TP7
TP8
HVS_FORCE_POS
POS_FORCE HVS_SHORT_10K_FS HVS_OUT_1 HVS_SHORT_POS_FS
OUT 1
10K HVS_OUT_2
OUT 2
FLOATING +650V HVS_SENSE_POS_OUT_COM 100kHz ISOLATED POWER INVERTER
FLOATING +15V FLOATING COM HVS_GND_POS_SENSE
OUT 3
HVS_OUT_4
OUT 4
HVS_OUT_5
OUT 5
HVS_OUT_6
OUT 6
HVS_OUT_7
OUT 7
HVS_SENSE_POS_REF_COM
FLOATING -15V TP6 HVS_SENSE_NEG_OUT_COM
TP2
HVS_OUT_3
HVS_GND_NEG_SENSE
OUT 8 HVS_OUT_8
ISOLATED VOLTAGE DAC
OUT_COM
HVS_SENSE_NEG_REF_COM TP3
FLOATING LOOP CONTROL
ISOLATED CURRENT DAC
REF_COM HVS_REF_1
REF_1 HVS_SHORT_NEG_FS
REF_2
TP5 HVS_REF_2
NEG_FORCE HVS_NEG_FORCE TP4 (V MEAS) ** (I MEAS)
12 BIT A/D
DATA BUS
** ** CONTROLLED BY set_meas_mode VRANGE CONTROL
IRANGE CONTROL
100V 200V 500 1000V
10uA 100uA 1mA 10mA
Figure 30. HVS Simplified Diagram
186
ASL Series Programming Guide
TP1
HVS Programming Example
HVS Programming Example For simplicity, system functions (such as datalogging) have not been included in this example.
Figure 31. HVS Sample Test Setup void diode_test() { float measurement; hvs_15->set_current(2e-6); //DUT leakage clamp hvs_15->set_voltage(0); //no voltage during relay switch hvs_15->close_relay(HVS_SHORT_POS_FS); hvs_15->close_relay(HVS_SHORT_NEG_FS); //shorting the force and sense lines allows for a one wire //connection to the DUT, eliminating unneeded leakage paths hvs_15->close_relay(HVS_SENSE_NEG_REF_COM); //short the negative output to the DUT ground hvs_15->close_relay(HVS_FORCE_POS); //enable the positive out put to connect to the DUT through one //line delay(2); //make sure all relays are settled hvs_15->set_meas_mode(HVS_MEASURE_CURRENT);//this also turns on //the high voltage delay(5); //gives the high voltage time to //come up hvs_15->set_voltage(600); delay(5);
ASL Series Programming Guide
187
8 - HVS - High-Voltage Source
measurement = hvs_15->measure();//measure_average also possible //here power_down(); //user written power-off function display_results(); //user written datalog function }
188
ASL Series Programming Guide
9 LZB - LINK/ZENER BLOWER The Link/Zener Blower (LZB) is a single-quadrant V/I source. The loading conditions determine whether the supply operates in voltage or current mode. The supply forces voltage until it reaches the programmed current. At that time, the supply becomes a current source. The output connects to the DUT via a 2-by-28 relay multiplexer. The mux can be disconnected from the source and used as a high-power matrix.
ASL Series Programming Guide
189
9 - LZB - Link/Zener Blower
Function Calls init Description
This is the board initialization routine. The function opens all relays and resets the voltage and current DACs to non-calibrated zero status. Format void init(void);
Valid Arguments
none Usage lzb_18->init();
set_voltage Description
This function programs the voltage limit. Format short set_voltage(float value);
Valid Arguments value
0 V to 40 V voltage limit in decimal or scientific notation Usage lzb_18->set_voltage(22.5);
190
ASL Series Programming Guide
Function Calls
set_clamp Description
This function programs the post-link-blow clamp voltage and helps control the voltage spikes that are created when links are opened and the load is suddenly removed. Use this function with close_relay(LZB_CON_CLAMP). Format short set_clamp(float value);
Valid Arguments value
0 V to 14 V clamp voltage in decimal or scientific notation Usage lzb_18->close_relay(LZB_CONN_CLAMP); lzb_18->set_clamp(5.0);
set_current Description
This function programs the current limit; the default for irange is autorange. Format short set_current(float value, unsigned short irange);
Valid Arguments value
0 A to 4A current limit in decimal or scientific notation irange (Default is autorange) LZB_RANGE_40_MA LZB_RANGE_400_MA LZB_RANGE_4_A
ASL Series Programming Guide
191
9 - LZB - Link/Zener Blower
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage lzb_18->set_current(1.0);
set_meas_mode Description
This function programs the measurement mode for subsequent measurements. It can be used to monitor capacitor bank voltage with LZB_ CAP_VOLTAGE. Format short set_meas_mode(unsigned short mode);
Valid Arguments mode LZB_OUTPUT_CURRENT LZB_CAP_VOLTAGE LZB_OUTPUT_VOLTAGE Usage LZB_18->set_meas_mode(LZB_OUTPUT_VOLTAGE);
measure Description
This function performs a single measurement Format float measure(void);
192
ASL Series Programming Guide
Function Calls
Valid Arguments
none Usage result = lzb_18->measure();
convert_read_adc Description
This function instructs the on-board ADC to perform a single conversion. The returned value requires conversion to floating point. Format unsigned short convert_read_adc(void);
Valid Arguments
none Usage result = lzb_18-> convert_read_adc ();
close_relay open_relay Description
This function closes and opens the stated relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay
ASL Series Programming Guide
193
9 - LZB - Link/Zener Blower
LZB_MUX_OUT_1 LZB_MUX_OUT_2 LZB_MUX_OUT_3 LZB_MUX_OUT_4 LZB_MUX_OUT_5 LZB_MUX_OUT_6 LZB_MUX_OUT_7 LZB_MUX_OUT_8 LZB_MUX_OUT_9 LZB_MUX_OUT_10 LZB_MUX_OUT_11 LZB_MUX_OUT_12 LZB_MUX_OUT_13 LZB_MUX_OUT_14 LZB_MUX_OUT_15 LZB_MUX_OUT_16 LZB_MUX_OUT_17 LZB_MUX_OUT_18 LZB_MUX_OUT_19 LZB_MUX_OUT_20 LZB_MUX_OUT_21 LZB_MUX_OUT_22 LZB_MUX_OUT_23 LZB_MUX_OUT_24 LZB_MUX_OUT_25 LZB_MUX_OUT_26 LZB_MUX_OUT_27 LZB_MUX_OUT_28 LZB_CONN_OUT LZB_CONN_GND LZB_RANGE_2 LZB_RANGE_1 LZB_CONN_CLAMP
LZB_MUX_GND_1 LZB_MUX_GND_2 LZB_MUX_GND_3 LZB_MUX_GND_4 LZB_MUX_GND_5 LZB_MUX_GND_6 LZB_MUX_GND_7 LZB_MUX_GND_8 LZB_MUX_GND_9 LZB_MUX_GND_10 LZB_MUX_GND_11 LZB_MUX_GND_12 LZB_MUX_GND_13 LZB_MUX_GND_14 LZB_MUX_GND_15 LZB_MUX_GND_16 LZB_MUX_GND_17 LZB_MUX_GND_18 LZB_MUX_GND_19 LZB_MUX_GND_20 LZB_MUX_GND_21 LZB_MUX_GND_22 LZB_MUX_GND_23 LZB_MUX_GND_24 LZB_MUX_GND_25 LZB_MUX_GND_26 LZB_MUX_GND_27 LZB_MUX_GND_28
Usage lzb_18->close_relay_relay(LZB_conn_clamp); lzb_18->open_relay_relay(LZB_conn_clamp);
194
ASL Series Programming Guide
LZB Simplified Diagram
LZB Simplified Diagram The figure below shows the simplified diagram of the LZB instrument.
TP7
CLAMP DAC
TP4
LZB_CONN_CLAMP
VCLAMP CONTROL
LZB_CONN_OUT LZB_MUX_OUT_1
OUT 1 LZB_MUX_OUT_2
OUT 2 LZB_MUX_OUT_3
OUT 3 LZB_MUX_OUT_4
OUT 4 LZB_MUX_OUT_5
OUT 5
TP1
700 mA CHARGER
TP5
LOOP CONTROL
CURRENT DAC
LZB_MUX_GND_19 LZB_MUX_OUT_6
OUT 6 LZB_MUX_OUT_7
OUT 7 OUT 8 LZB_MUX_OUT_9
OUT 9 LZB_MUX_OUT_10 (2.5 mF Nominal)
OUT 10 LZB_MUX_OUT_11
OUT 11 LZB_MUX_OUT_12
OUT 12 LZB_MUX_GND_26 LZB_MUX_OUT_13
OUT 13 OUT 14
(V MEAS)
OUT 25 LZB_MUX_OUT_26
OUT 26 LZB_MUX_OUT_27
OUT 27 LZB_MUX_OUT_28
OUT 28
LZB_MUX_GND_28
LZB_MUX_GND_14
** (I MEAS)
LZB_MUX_OUT_14
**
OUT 24 LZB_MUX_OUT_25
LZB_MUX_GND_27
LZB_MUX_GND_13 (CV MEAS) **
OUT 23 LZB_MUX_OUT_24
LZB_MUX_GND_25
LZB_MUX_GND_11
40 mA 400 mA 4A
OUT 22 LZB_MUX_OUT_23
LZB_MUX_GND_24
LZB_MUX_GND_10
TP8
OUT 21 LZB_MUX_OUT_22
LZB_MUX_GND_23
LZB_MUX_GND_9
TP3
OUT 20 LZB_MUX_OUT_21
LZB_MUX_GND_22
LZB_MUX_GND_8
TP6
OUT 19 LZB_MUX_OUT_20
LZB_MUX_GND_21
LZB_MUX_GND_7
LZB_MUX_OUT_8
IRANGE CONTROL
OUT 18 LZB_MUX_OUT_19
LZB_MUX_GND_20
LZB_MUX_GND_6
LZB_MUX_GND_12
OUT 17 LZB_MUX_OUT_18
LZB_MUX_GND_18
LZB_MUX_GND_4
LZB_MUX_GND_5
OUT 16 LZB_MUX_OUT_17
LZB_MUX_GND_17
LZB_MUX_GND_3
VOLTAGE DAC
OUT 15 LZB_MUX_OUT_16
LZB_MUX_GND_16
LZB_MUX_GND_2
TP2
LZB_MUX_OUT_15
LZB_MUX_GND_15
LZB_MUX_GND_1
12 BIT A/D
** CONTROLLED BY set_meas_mode
LZB_CONN_GND
Figure 32. LZB SImplified Diagram
ASL Series Programming Guide
195
9 - LZB - Link/Zener Blower
Programming Example The following example shows an LZB installed in Slot 18 blowing a link. float cap_voltage, output_voltage; system_inti();//should include “lzb_18->init();” to open all //relays and program to 0 V to measure cap bank //voltage, this should be close to 50 V lzb_18->set_meas_mode(LZB_CAP_VOLTAGE);//closes ADC mux for cap measure delay(1); cap_voltage=lzb_18->measure();//measures cap voltage if(cap_voltage < 40.0)//checks, aborts test if less than 40 V goto end: //LZB is set up, now connect to DUT lzb_18->close_relay(LZB_CONN_OUT);//closes output relay to mux lzb_18->close_relay(LZB_CONN_GND);//closes ground relay to mux lzb_18->close_relay(LZB_MUX_OUT_1);//closes mux relay to DUT pin //note: this is +ve connection //set current now; it also uses the high-power relays that need //time to close lzb_18->set_current(1.0);//current is programmed, but not //yet flowing; no voltage is applied in // blowing links, the clamp can help //revent overshoot when the link goes lzb_18->close_relay(LZB_CONN_CLAMP);//connects clamp circuit to output lzb_18->set_clamp(5.0); //clamps at 5 V //to check for blown link; set up to measure output voltage here lzb_18->set_meas_mode(LZB_OUTPUT_VOLTAGE); //ADC mux closed delay(5); //5 ms delay to let relays close //apply pulse to the DUT for a period of 1 ms lzb_18->set_votlage(5.0);//applies power to link, current flows wait.delay_10_us(ours->pulse_width/10); //passed param pulse width //= 1000 µs for 1 ms delay output_voltage = lzb_18->measure(); //measures output voltage lzb_18->set_voltage(0.0); //end of power pulse //if the link is blown, measured output voltage will be close to //the clamp voltage of 5 V. //if not blown, the voltage will be lower; the supply will have //been in current mode //may be preferable to measure output current and check for a low //current //if the link is not blown, the test program can take action (apply //the pulse again, etc.) //may be required at this point to blow another link //al that is required is to open the mux relays and connect to //another link, set a delay //and pulse the supply again
196
ASL Series Programming Guide
Programming Example
lzb_18->open_relay(LZB_MUX_OUT_1); lzb_18->open_relay(LZB_MUX_GND_2); lzb_18->close_relay(LZB_MUX_OUT_3); lzb_18->close_relay(LZB_MUX_GND_4); delay(5); lazb_18->set_voltage(5.0); //applies power to link, //current flows wait.delay_10_us(ours->pulse_width/10);//passed param //“pulse_width” = //1000 µs for 1 ms delay output_voltage = lzb_18->(0.0);//end of power pulse //after blowing the required links, power down the LZB end: power_down();
//includes lzb_18->init();
ASL Series Programming Guide
197
9 - LZB - Link/Zener Blower
198
ASL Series Programming Guide
10 MUX - RESOURCE MULTIPLEXER The Resource Multiplexer (MUX) has eight banks of four relays each. Each bank can be connected to the preceding and following banks, creating a 32-point relay matrix. Several banks contain relays that can be connected to system ground and user busses. The MUX can extend the functionality of other instruments by allowing resource sharing.
ASL Series Programming Guide
199
10 - MUX - Resource Multiplexer
MUX Theory The MUX board has 32, dry reed relays group into 8 banks of four. Each bank can be connected to the following or preceding bank using the intra-bank relays. Connecting all banks together results in a 32 point matrix. The MUX board is offered in 2 versions: low voltage and high voltage. The low voltage version is populated with 200 V relays that require a minimum of 350 µs to settle. The high voltage version is populated with 500 V relays and they require 1ms of settling time. The required settling time is programmed by the user with either a delay() or wait.delay_10_uS() statement. One side of the relays in a bank route directly out to the user interface; the other side of the relays are connected in common. Some banks have access to system ground (banks 2, 4, 6, 7, 8). All banks have access to one of the internal, test head user bus lines.
User Bus Lines The ASL 1000 test head contains 9, non-controlled, general purpose bus lines. These bus lines run the full length of the back plane, from slot 1 to slot 21 and are not routed to the user test interface. The only user access is through the MUX board. Some ASL instruments are pre-set to have access to certain bus lines: •
MUX - all
•
DVI - 2, 3
•
DVI2000 - 2, 3, 4, 7
•
DOAL - 8, 9, 10
•
TMU - 8
Except for the MUX, jumpers installed on the instrument board determine this pre-set nature. The ACS instrument has access to a number of the bus lines, but no jumpers have been defined. As can be seen from the related instrument block diagrams, bus connect relays must be closed to complete the path.
200
ASL Series Programming Guide
Function Calls
Function Calls init Description
This is the board initialization routine, which opens all relays. Format void init(void);
Valid Arguments
none Usage mux_14->init();
close_relay open_relay Description
These functions close and open the stated relays. The remaining relays are not affected. Relay grouping within these functions is not allowed. No built-in wait time. Appropriate wait may be programmed with the delay() or wait.delay _10_us() statement. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay MUX_1_1 MUX_1_2 MUX_1_3
MUX_6_1 MUX_6_2 MUX_6_3
ASL Series Programming Guide
201
10 - MUX - Resource Multiplexer
MUX_1_4 MUX_1_BUS9 MUX_BANK_1_2 MUX_2_1 MUX_2_2 MUX_2_3 MUX_2_4 MUX_2_BUS2 MUX_BANK_2_3 MUX_2_GND MUX_3_1 MUX_3_2 MUX_3_3 MUX_3_4 MUX_3_BUS3 MUX_3_BANK_3_4 MUX_4_1 MUX_4_2 MUX_4_3 MUX_4_4 MUX_4_BUS4 MUX_BANK_4_5 MUX_4_GND MUX_5_1 MUX_5_2 MUX_5_3 MUX_5_4 MUX_5_BUS5 MUX_BANK_5-6 MUX_5_BUS10 Usage mux_14->close_relay(MUX_1_1); mux_14->open_relay(MUX_1_1);
202
ASL Series Programming Guide
MUX_6_4 MUX_6_BUS6 MUX_BANK_6_7 MUX_6_GND MUX_7_1 MUX_7_2 MUX_7_3 MUX_7_4 MUX_7_BUS7 MUX_7_BANK_7_8 MUX_7_GND MUX_8_1 MUX_8_2 MUX_8_3 MUX_8_4 MUX_8_BUS8 MUX_BANK_8_1 MUX_8_GND
MUX Simplified Diagram
MUX Simplified Diagram The figure below shows the simplified diagram of the MUX instrument.
MUX_BANK_8_1
MUX_1_1 MUX_1_2
MUX_8_BUS8
MUX_1_BUS9 BUS_9
MUX_8_1 MUX_8_2
BUS_8
BANK 1
BANK 8 MUX_8_3
MUX_1_3 MUX_8_GND
MUX_1_4
MUX_BANK_7_8
MUX_BANK_1_2 MUX_2_1 MUX_2_2
MUX_8_4
MUX_2_BUS2
MUX_7_BUS7 BUS_7
BUS_2
MUX_7_1 MUX_7_2
BANK 2
BANK 7 MUX_2_3 MUX_2_4
MUX_3_1 MUX_3_2
MUX_7_3 MUX_2_GND
MUX_7_GND
MUX_BANK_2_3
MUX_BANK_6_7 MUX_6_BUS6
MUX_3_BUS3 BUS_3
BUS_6
MUX_7_4
MUX_6_1 MUX_6_2
BANK 3
BANK 6 MUX_6_3
MUX_3_3 MUX_3_4
MUX_6_GND MUX_BANK_3_4
MUX_4_1 MUX_4_2
MUX_6_4
MUX_BANK_5_6 MUX_5_BUS5
MUX_4_BUS4 BUS4
MUX_5_1
BUS_5
MUX_5_2
BUS_10
MUX_5_3
BANK 4
BANK 5 MUX_4_3 MUX_4_4
MUX_4_GND
MUX_BANK_4_5
MUX_5_BUS10
MUX_5_4
Figure 33. MUX Simplified Diagram
ASL Series Programming Guide
203
10 - MUX - Resource Multiplexer
204
ASL Series Programming Guide
11 MVS - MEDIUM-VOLTAGE SOURCE The Medium-Voltage Source (MVS) is a medium-voltage, medium-current floating source instrument.
ASL Series Programming Guide
205
11 - MVS - Medium-Voltage Source
Function Calls init Description
This is the board initialization routine, which turns off the high-voltage supply and programs the current and voltage DACs to 100 µA and 0 V respectively. Format void init(void);
Valid Arguments
none Usage mvs_15->init();
set_voltage Description
This function programs voltage limit and voltage range. The default value for vrange is autorange. Setting the hot_switch parameter to FALSE (default), the MVS will program the voltage and current DACs to zero before switching the appropriate relays for range, then a 2ms delay will occur before setting the voltage and current DACs to their specified settings. A TRUE will bypass setting the DACs to zero and the 2ms delay will be skipped. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_voltage(float value, char vrange, char hot_switch);
Valid Arguments value
206
ASL Series Programming Guide
Function Calls
voltage limit in decimal or scientific notation. vrange RANGE_10_V RANGE_20_V RANGE_50_V RANGE_100_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. hot_switch
TRUE FALSE (default Usage mvs_15->set_voltage(53.5, RANGE_100_V);
set_current Description
This function programs the current limit and current range. The default value for irange is autorange. Setting the hot_switch parameter to FALSE (default), the MVS will program the voltage and current DACs to zero before switching the appropriate relays for range, then a 2ms delay will occur before setting the voltage and current DACs to their specified settings. A TRUE will bypass setting the DACs to zero and the 2ms delay will be skipped. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_current(float value, char irange, char hot_switch);
Valid Arguments value
current limit in decimal or scientific notation.
ASL Series Programming Guide
207
11 - MVS - Medium-Voltage Source
irange RANGE_100_UA RANGE_1_MA RANGE_10_MA RANGE_100_MA NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. hot_switch
TRUE FALSE (default Usage mvs_15->set_current(9.5e-3, RANGE_10_MA);
set_meas_mode Description
This function sets the measurement mode and range, and turns on the high-voltage power stage. Format void set_meas_mode(unsigned short mode);
Valid Arguments mode MVS_MEASURE_VOLTAGE MVS_MEASURE_CURRENT Usage mvs_15->set_meas_mode(MVS_MEASURE_VOLTAGE);
208
ASL Series Programming Guide
Function Calls
measure Description
This function performs a single floating-point measurement with the on-board ADC. Format float measure(void);
Valid Arguments
none Usage result = mvs_15->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. Format float measure_average(unsigned short samples);
Valid Arguments samples
integer number of samples Usage result = mvs_15->measure_average(12);
ASL Series Programming Guide
209
11 - MVS - Medium-Voltage Source
supply_off Description
This function turns off the high-voltage power supply. For operator safety, use this function at the end of a test function. Format void supply_off(void);
Valid Arguments
none Usage mvs_15->supply_off();
NOTE — Turn the inverter off when testing is not taking place. The 130 V power rail powers up in approximately 2 ms.
close_relay open_relay Description
These functions close and open the stated relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay MVS_FORCE_POS MVS_SHORT_POS_FS MVS_SENSE_POS_REF_COM MVS_SENSE_POS_OUT_COM MVS_GND_POS_SENSE
210
ASL Series Programming Guide
Function Calls
MVS_NEG_FORCE MVS_SHORT_NEG_FS MVS_SENSE_NEG_REF_COM MVS_SENSE_NEG_OUT_COM MVS_GND_NEG_SENSE MVS_SHORT_10K_FS MVS_REF_1 MVS_REF_2 MVS_OUT_1 MVS_OUT_2 MVS_OUT_3 MVS_OUT_4 MVS_OUT_5 MVS_OUT_6 MVS_OUT_7 MVS_OUT_8 Usage mvs_15->close_relay(MVS_OUT_1); mvs_15->open_relay(MVS_OUT_1);
ASL Series Programming Guide
211
11 - MVS - Medium-Voltage Source
MVS Simplified Diagram The figure below shows the simplified diagram of the MVS instrument.
TP8
TP7 MVS_FORCE_POS
POS_FORCE MVS_SHORT_10K_FS MVS_OUT_1 MVS_SHORT_POS_FS
OUT 1
10K MVS_OUT_2
OUT 2
FLOATING +130V MVS_SENSE_POS_OUT_COM 100 kHz ISOLATED POWER INVERTER
FLOATING +15V FLOATING COM MVS_GND_POS_SENSE
MVS_OUT_3
OUT 3
MVS_OUT_4
OUT 4
MVS_OUT_5
OUT 5
MVS_OUT_6
OUT 6
MVS_OUT_7
OUT 7
MVS_SENSE_POS_REF_COM
FLOATING -15V
TP2
MVS_SENSE_NEG_OUT_COM MVS_GND_NEG_SENSE
OUT 8 MVS_OUT_8
ISOLATED VOLTAGE DAC
OUT_COM
MVS_SENSE_NEG_REF_COM TP3
ISOLATED CURRENT DAC
FLOATING LOOP CONTROL
REF_COM MVS_REF_1
REF_1 MVS_SHORT_NEG_FS TP6
REF_2
TP5 MVS_REF_2
NEG_FORCE MVS_NEG_FORCE TP4 (V MEAS) ** (I MEAS)
12 BIT A/D
DATA BUS
** ** CONTROLLED BY set_meas_mode VRANGE CONTROL
IRANGE CONTROL
10 V 20 V 50 V 100 V
100 µA 1 mA 10 mA 100 mA
Figure 34. MVS SImplified Diagram
212
ASL Series Programming Guide
TP1
12 OFS - OCTAL FLOATING SOURCE The Octal Floating Source (OFS) is a low-voltage, high-current floating source.
ASL Series Programming Guide
213
12 - OFS - Octal Floating Source
Function Calls init Description
This is the board initialization routine, which turns off the floating voltage supply. Format void init(void);
Valid Arguments
none Usage ofs_17->init();
set_voltage Description
This function programs the voltage limit and range. The default value for vrange is autorange. Setting the hot_switch parameter to FALSE (default), the OFS will program the voltage and current DACs to zero before switching the appropriate relays for range, then a 2ms delay will occur before setting the voltage and current DACs to their specified settings. A TRUE will bypass setting the DACs to zero and the 2ms delay will be skipped. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_voltage(float value, char vrange, char hot_switch);
Valid Arguments value
voltage limit in decimal or scientific notation
214
ASL Series Programming Guide
Function Calls
vrange
default is autorange RANGE_5_V RANGE_10_V RANGE_20_V RANGE_50_V
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. hot_switch
TRUE FALSE (default Usage ofs_17->set_voltage(33.5, RANGE_50_V);
set_current Description
This function programs the current limit and range. The default value for irange is auto-range. Setting the hot_switch parameter to FALSE (default), the OFS will program the voltage and current DACs to zero before switching the appropriate relays for range, then a 2ms delay will occur before setting the voltage and current DACs to their specified settings. A TRUE will bypass setting the DACs to zero and the 2ms delay will be skipped. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_current(float value, char irange, char hot_switch);
Valid Arguments value
current limit in decimal or scientific notation irange (Default is autorange)
ASL Series Programming Guide
215
12 - OFS - Octal Floating Source
RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE_200_MA NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. hot_switch
TRUE FALSE (default Usage ofs_17->set_current(3.5e-3, RANGE_20_MA);
set_meas_mode Description
This function sets the measurement mode and range and turns on the floating power. supply. Format void set_meas_mode(unsigned short mode);
Valid Arguments mode
OFS_MEASURE_VOLTAGE OFS_MEASURE_CURRENT Usage ofs_17->set_meas_mode(OFS_MEASURE_VOLTAGE);
216
ASL Series Programming Guide
Function Calls
measure Description
This function performs a single floating-point conversion with the on-board ADC. Format float measure(void);
Valid Arguments
none Usage result = ofs_17->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. Format float measure_average(unsigned short samples);
Valid Arguments samples
integer number of samples Usage result = ofs_17->measure_average(7);
ASL Series Programming Guide
217
12 - OFS - Octal Floating Source
supply_off Description
This function turns off the floating power supply. For user safety, use this command at the end of a test function. Format void supply_off(void);
Valid Arguments
none Usage ofs_17->supply_off();
NOTE — Turn the inverter off when testing is not taking place. The 65 V power rail powers up in approximately 2 ms.
close_relay open_relay Description
This function closes and opens the stated on-board relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay
OFS_FORCE_POS OFS_SHORT_POS_FS OFS_SENSE_POS_REF_COM OFS_SENSE_POS_OUT_COM OFS_GND_POS_SENSE
218
ASL Series Programming Guide
Function Calls
OFS_NEG_FORCE OFS_SHORT_NEG_FS OFS_SENSE_NEG_REF_COM OFS_SENSE_NEG_OUT_COM OFS_GND_NEG_SENSE OFS_SHORT_10K_FS OFS_REF_1 OFS_REF_2 OFS_OUT_1 OFS_OUT_2 OFS_OUT_3 OFS_OUT_4 OFS_OUT_5 OFS_OUT_6 OFS_OUT_7 OFS_OUT_8 Usage ofs_17->close_relay(OFS_OUT_1); ofs_17->open_relay(OFS_OUT_1);
ASL Series Programming Guide
219
12 - OFS - Octal Floating Source
OFS Simplified Diagram The figure below shows the simplified diagram of the OFS instrument.
TP8
TP7 OFS_FORCE_POS
POS_FORCE OFS_SHORT_10K_FS OFS_OUT_1 OFS_SHORT_POS_FS
OUT 1
10K OFS_OUT_2
OUT 2
FLOATING +65V OFS_SENSE_POS_OUT_COM 100 kHz ISOLATED POWER INVERTER
FLOATING +15V FLOATING COM OFS_GND_POS_SENSE
OFS_OUT_3
OUT 3
OFS_OUT_4
OUT 4
OFS_OUT_5
OUT 5
OFS_OUT_6
OUT 6
OFS_OUT_7
OUT 7
OFS_SENSE_POS_REF_COM
FLOATING -15V
TP2
OFS_SENSE_NEG_OUT_COM OFS_GND_NEG_SENSE
OUT 8 OFS_OUT_8
ISOLATED VOLTAGE DAC
OUT_COM
OFS_SENSE_NEG_REF_COM TP3
FLOATING LOOP CONTROL
ISOLATED CURRENT DAC
REF_COM OFS_REF_1
REF_1 OFS_SHORT_NEG_FS TP6
REF_2
TP5 OFS_REF_2
NEG_FORCE OFS_NEG_FORCE TP4 (V MEAS) ** (I MEAS)
12 BIT A/D
DATA BUS
** ** CONTROLLED BY set_meas_mode VRANGE CONTROL
IRANGE CONTROL
5V 10 V 20 V 50 V
200 µA 2 mA 20 mA 200 mA
Figure 35. OFS SImplified Diagram
220
ASL Series Programming Guide
TP1
13 OVI - OCTAL VOLTAGE/CURRENT SOURCE The Octal Voltage/Current (OVI) source provides eight independent V/I supplies on one instrument. All supplies have 12-bit forcing and 16-bit measuring resolution. The OVI is a system-ground-referenced instrument.
ASL Series Programming Guide
221
13 - OVI - Octal Voltage/Current Source
Function Calls init Description
This routine initializes the board. The routine closes all channel output connect relays, sets voltage to a non-calibrated 0 V on a 10 V range, and sets current to a noncalibrated 100 µA on a 200 µA range. Format void init(void);
Valid Arguments
none Usage ovi_2->init();
set_voltage Description
This function programs the voltage limit and range. The default value for vrange is autorange. NOTE — Switching between extreme ranges (1 V range to 20 V range) requires 300 µs settling time. Format void set_voltage(unsigned char channel, float value, char vrange);
Valid Arguments channel OVI_CHANNEL_0 OVI_CHANNEL_1 OVI_CHANNEL_2
222
ASL Series Programming Guide
Function Calls
OVI_CHANNEL_3 OVI_CHANNEL_4 OVI_CHANNEL_5 OVI_CHANNEL_6 OVI_CHANNEL_7 NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. value
voltage limit in decimal or scientific notation. vrange RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V RANGE_20_V Usage ovi_2->set_voltage(OVI_CHANNEL_0, 4.5, RANGE_5_V);
set_current Description
This function programs the current limit and range. The default value for irange is autorange. Switching between extreme ranges (20 µA range to 20 mA range) may
cause transitional voltage swings. CAUTION
Format void set_current(unsigned char channel, float value, char irange);
ASL Series Programming Guide
223
13 - OVI - Octal Voltage/Current Source
Valid Arguments channel OVI_CHANNEL_0 OVI_CHANNEL_1 OVI_CHANNEL_2 OVI_CHANNEL_3 OVI_CHANNEL_4 OVI_CHANNEL_5 OVI_CHANNEL_6 OVI_CHANNEL_7 NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. value
current limit value in decimal or scientific notation irange
RANGE (20 mA OVI) RANGE_20_UA RANGE_200_UA RANGE_2_MA RANGE_20_MA RANGE (30 mA OVI) RANGE_30_UA RANGE_300_UA RANGE_3_MA RANGE_30_MA Usage ovi_2->set_current (OVI_CHANNEL_0, 2.5e-3, RANGE_20_MA);
224
ASL Series Programming Guide
Function Calls
set_meas_mode Description
This function determines the mode for subsequent measurements. set_voltage vrange sets the default range for voltage measurements. To measure current, irange is used and the set_meas_mode vrange argument is ignored. Format void set_meas_mode (unsigned short channel, unsigned char mode, char vrange);
Valid Arguments channel OVI_CHANNEL_0 OVI_CHANNEL_1 OVI_CHANNEL_2 OVI_CHANNEL_3 OVI_CHANNEL_4 OVI_CHANNEL_5 OVI_CHANNEL_6 OVI_CHANNEL_7 mode OVI_MEASURE_VOLTAGE OVI_MEASURE_CURRENT vrange RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V RANGE_20_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange.
ASL Series Programming Guide
225
13 - OVI - Octal Voltage/Current Source
Usage ovi_2->set_meas_mode (OVI_CHANNEL_0, OVI_MEASURE_VOLTAGE, OVI_10_V);
measure Description
This function performs a single measurement. set_voltage vrange sets the default for voltage measurements. To measure current, the set_current irange is used, and the measure vrange argument is ignored. Format float measure (char vrange);
Valid Arguments vrange RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V RANGE_20_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage result = ovi_2->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. set_voltage vrange sets the default for voltage measurements. To measure current, the set_current irange is used, and the measure vrange argument is ignored.
226
ASL Series Programming Guide
Function Calls
Format float measure_average (unsigned short samples, char vrange);
Valid Arguments samples integer number of samples vrange RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V RANGE_20_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage result = ovi_2->measure_average(10);
ASL Series Programming Guide
227
13 - OVI - Octal Voltage/Current Source
connect disconnect Description
These functions closes and open the channel-force and sense-connect relays.
This may cause transitional voltage swings.
CAUTION
Format void connect(unsigned short channel); void disconnect(unsigned short channel);
Valid Arguments channel OVI_CHANNEL_0 OVI_CHANNEL_1 OVI_CHANNEL_2 OVI_CHANNEL_3 OVI_CHANNEL_4 OVI_CHANNEL_5 OVI_CHANNEL_6 OVI_CHANNEL_7 Usage ovi_2->connect(OVI_CHANNEL_0); ovi_2->disconnect(OVI_CHANNEL_0);
228
ASL Series Programming Guide
OVI Simplified Diagram
OVI Simplified Diagram The figure below shows the simplified diagram of the OVI instrument.
CURRENT
V DAC (1 of 8)
**
10 K 10 K
I DAC (1 of 8)
FORCE 1
100
RANGING
SUMMING & INT I CLAMP
TP1 **
SENSE 1
**
FORCE 2
100
V DAC (2 of 8)
10 K
(CH1 A) (CH1 V)
I DAC (4 of 8)
(CH2 V) (CH3 V)
(CH4 A) (CH5 A) (CH6 A)
(CH4 V) (CH5 V) (CH6 V)
(CH7 A) (CH8 A)
(CH7 V) (CH8 V)
10 K
**
FORCE 4 TP4
**
SENSE 4
**
FORCE 5
100 TP5 **
SENSE 5
**
FORCE 6
100 TP6
10 K 10 K
* CONTROLLED BY set_meas_mode (OPENED BY init) GAIN
**
SENSE 6
**
FORCE 7
100 TP7
10 K 10 K
I DAC (7 of 8)
SENSE 3
10 K
* VOLTAGE MUX
* CURRENT MUX
I DAC (6 of 8)
V DAC (7 of 8)
TP3 **
10 K
I DAC (5 of 8)
V DAC (6 of 8)
FORCE 3
100 (CH2 A) (CH3 A)
10 K V DAC (5 of 8)
SENSE 2
** 100
10 K
V DAC (3 of 8)
V DAC (4 of 8)
**
10 K
I DAC (2 of 8)
I DAC (3 of 8)
TP2
10 K
I SENSE
16-BIT A/D
**
SENSE 7
**
FORCE 8
DATA BUS 100 TP8
10 K 10 K
V DAC (8 of 8)
** CONTROLLED BY connect/disconnect (CLOSED BY init)
**
SENSE 8
I DAC (8 of 8)
Figure 36. OVI Simplified Diagram
ASL Series Programming Guide
229
13 - OVI - Octal Voltage/Current Source
230
ASL Series Programming Guide
14 PVI - PULSED VOLTAGE/CURRENT SOURCE The Pulsed Voltage/Current (PVI) instrument is available in two versions: PVI-10 and PVI-100, to generate up to 10 A and 100 A pulses, respectively. This instrument is also known as the PV3 This chapter presents programming information for the two hardware versions in separate sections, both including function calls and programming examples.
ASL Series Programming Guide
231
14 - PVI - Pulsed Voltage/Current Source
PVI 10 Function Calls This section presents function calls and features for the PVI 10 instrument.
init Description
This is the board initialization routine. The function opens all output connect switches, resets voltage and current DACs, and turns on the capacitor bank charger. Format void init(void);
Valid Arguments
none Usage pvi_4->init();
set_voltage Description
This function programs the voltage limit and range. The default for vrange is autorange. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_voltage(float value, char vrange);
Valid Arguments value
voltage limit in decimal or scientific notation vrange (Default is autorange)
232
ASL Series Programming Guide
PVI 10 Function Calls
RANGE_1_V RANGE_2_V RANGE_5_V RANGE_10_V RANGE_20_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage pvi_4->set_voltage(16.7, RANGE_20_V);
set_current Description
This function programs the current limit and range, and requires a 15 ms delay. The default for irange is autorange. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_current(float value, char irange);
Valid Arguments value
current limit in decimal or scientific notation irange
default is autorange RANGE_100_MA RANGE_300_MA RANGE_1_A RANGE_3_A RANGE_10_A
ASL Series Programming Guide
233
14 - PVI - Pulsed Voltage/Current Source
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage pvi_4->set_current(6.5, RANGE_10_A); delay(15);
set_meas_mode Description
This function sets the measurement mode for subsequent measurements. Format void set_meas_mode(unsigned short mode);
Valid Arguments mode PVI_MEASURE_VOLTAGE PVI_MEASURE_CURRENT Usage pvi_4->set_meas_mode(PVI_MEASURE_CURRENT);
measure Description
This function performs a single measurement. Format float measure(void);
234
ASL Series Programming Guide
PVI 10 Function Calls
Valid Arguments
none Usage result = pvi_4->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. Format float measure_average(unsigned short samples);
Valid Arguments samples
integer number of samples Usage result = pvi_4->measure_average(17);
charge_on Description
This function allows charging of the storage cap. The function requires a 15 ms delay. Format void charge_on(void);
Valid Arguments
none
ASL Series Programming Guide
235
14 - PVI - Pulsed Voltage/Current Source
Usage pvi_4->charge_on(); delay(15);
charge_off Description
This function stops the charging of the capacitor bank and allows the supply to be used in floating mode. The function requires a 15 ms delay. Format void charge_off(void);
Valid Arguments
none Usage pvi_4->charge_off(); delay(15);
supply_off Description
This function sets the voltage and current DACs to zero, sets both the voltage and current ranges to their lowest values, and opens all output switches. Format void charge_off(void);
Valid Arguments
none
236
ASL Series Programming Guide
PVI 10 Function Calls
Usage pvi_4->supply_off();
close_switch open_switch Description
This function closes and opens the stated on-board switches. Format void close_switch(unsigned short switch); void open_switch(unsigned short switch);
Valid Arguments switch PVI_HIGH_FORCE_1 PVI_HIGH_FORCE_2 PVI_HIGH_FORCE_3 PVI_HIGH_FORCE_4 PVI_HIGH_SENSE_1 PVI_HIGH_SENSE_2 PVI_HIGH_SENSE_3 PVI_HIGH_SENSE_4 PVI_LOW_FORCE_2 PVI_LOW_FORCE_3 PVI_LOW_FORCE_4 PVI_LOW_FORCE_5 PVI_LOW_SENSE_2 PVI_LOW_SENSE_3 PVI_LOW_SENSE_4 PVI_LOW_SENSE_5 Usage pvi_4->close_switch(PVI_HIGH_FORCE_1); pvi_4->open_switch(PVI_LOW_SENSE_5)
ASL Series Programming Guide
237
14 - PVI - Pulsed Voltage/Current Source
PVI 10 Formula Example The following example shows how to calculate the duration of a specified amount of current using the PVI 10. The calculation is based on the following formula: i = C*(∆V/∆T) where i is the user current, C is the PVI capacitor value, ∆V is the difference between the initial capacitor voltage and the user’s voltage, and ∆T is the duration of the user’s current pulse. Transposing the i and T elements, the formula becomes: ∆T = C*(∆V/i)
Inserting the PVI and user values, the formula becomes: T = 3.3 mF*((Cap Initial V - (user V + 5 V))/user I) The extra 5 V is required for PVI circuitry usage. The sample calculation below illustrates the formula. In the example, 30 V is required at 1.3 A. To figure out how long 1.3 A will be available at the required voltage, plug in the numbers as shown: ∆T = 3.3 mF*((50 V - (30 V + 5 V)) / 1.3 A) ∆T = 3.3e-3 F*((50 V - 35 V) / 1.3 A) ∆T = 3.3e-3 F*(15 V / 1.3 A) ∆T = 3.3e-3*(11.54)
T = 38.1 ms The answer of 38.1 ms means that 1.3 A will be available for 38.1 ms at a constant voltage of 30 V.
238
ASL Series Programming Guide
PVI 10 Formula Example
SENSE 1
TP14 PVI_HIGH_SENSE_1
FORCE 1
PVI_HIGH_FORCE_1 HIGH_SENSE
TP9
HIGH_FORCE PVI_HIGH_SENSE_2 TP11
PVI_HIGH_FORCE_2
PVI_HIGH_SENSE_3 TP7
PVI_HIGH_FORCE_3
PVI_HIGH_SENSE_4 TP12
TP5
TP10
PVI_HIGH_FORCE_4
TP3
LOW_SENSE
LOW SENSE
LOW_FORCE
LOW FORCE
ISOLATED VOLTAGE DAC TP4
SUPPLY CONTROL
ISOLATED CURRENT DAC
*
PVI_LOW_SENSE_2
SENSE 2
PVI_LOW_FORCE_2
FORCE 2
PVI_LOW_SENSE_3
SENSE 3
PVI_LOW_FORCE_3
FORCE 3
PVI_LOW_SENSE_4
SENSE 4
PVI_LOW_FORCE_4
FORCE 4
(3.5mF Nominal)
100mA CHARGER
+
VRANGE CONTROL 1V 2V 5V 10V 20V
*
SENSE 5
* CONTROLLED BY charge_on/charge_off (CLOSED BY init)
PVI_LOW_SENSE_5
FORCE 5 PVI_LOW_FORCE_5 TP8
TP1
IRANGE CONTROL 100mA 300mA 1A 3A 10A
ALL OUTPUT SWITCHES OPENED BY init (CV MEAS) ** (I MEAS)
TP2 ** (V MEAS)
12 BIT A/D
**
DATA BUS
** CONTROLLED BY set_meas_mode (OPENED BY init)
PVI 10 Card Simplified Diagram 051299
Figure 37. PVI-10 Block Diagram
ASL Series Programming Guide
239
14 - PVI - Pulsed Voltage/Current Source
PVI 100 Function Calls This section presents function calls and features for the PVI 100 instrument.
init Description
This is the board initialization routine. The function opens all force and sense switches, resets voltage and current DACs, and initiates capacitor bank charging. Format void init(void);
Valid Arguments
none Usage pv3_4->init();
set_voltage Description
This function programs the voltage limit and range. The default for vrange is autorange. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_voltage(float voltage_value, char vrange);
Valid Arguments voltage_value
voltage limit in decimal or scientific notation vrange
240
default is autorange
ASL Series Programming Guide
PVI 100 Function Calls
RANGE_1_V RANGE_3_V RANGE_10_V RANGE_30_V RANGE_100_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage pv3_4->set_voltage(5.0, RANGE_10_V);
set_current Description
This function programs the current limit and range. The default for irange is autorange. Requesting a value greater than the specified range or the maximum supported by the hardware will result in no change to the hardware and a runtime error message. Format void set_current(float current_value, char irange);
Valid Arguments current_value
current limit in decimal or scientific notation irange
default is autorange RANGE_100_MA RANGE_300_MA RANGE_1_A RANGE_3_A RANGE_10_A RANGE_30_A RANGE_100_A
ASL Series Programming Guide
241
14 - PVI - Pulsed Voltage/Current Source
NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage pv3_4->set_current(6.0, RANGE_10_A);
set_meas_mode Description
This function sets the measurement mode for subsequent measurements. Format void set_meas_mode(unsigned short mode);
Valid Arguments mode PV3_MEASURE_VOLTAGE PV3_MEASURE_CURRENT PV3_CHARGE_S PV3_MEASURE_TEMP Usage pv3_4->set_meas_mode(PV3_MEASURE_CURRENT);
measure Description
This function performs a single measurement. Format float measure(void);
242
ASL Series Programming Guide
PVI 100 Function Calls
Valid Arguments
none Usage result = pv3_4->measure();
measure_average Description
This function performs the stated number of measurements and returns the average. Format float measure_average(unsigned short samples);
Valid Arguments samples integer number of samples Usage result = pv3_4->measure_average(10);
charge_on Description
This function monitors the temperature of the PVI’s output driver and initiates capacitor bank charging if the temperature is below a set limit. If the temperature is above the limit, charging is delayed and the driver temperature is displayed on screen. Format void charge_on(void);
ASL Series Programming Guide
243
14 - PVI - Pulsed Voltage/Current Source
Valid Arguments
none Usage pv3_4->charge_on();
charge_off Description
This function stops the charging of the capacitor bank and allows the PVI to be used in floating mode. Format void charge_off(void);
Valid Arguments
none Usage pv3_4->charge_off();
close_switch open_switch Description
This function closes and opens the stated force and sense switches. Format void close_switch(unsigned short switch); void open_switch(unsigned short switch);
Valid Arguments switch
244
ASL Series Programming Guide
PVI 100 Function Calls
PV3_HIGH_FORCE_1 PV3_HIGH_FORCE_2 PV3_HIGH_FORCE_3 PV3_HIGH_FORCE_4 PV3_HIGH_FORCE_5 PV3_HIGH_SENSE_1 PV3_HIGH_SENSE_2 PV3_HIGH_SENSE_3 PV3_HIGH_SENSE_4 PV3_HIGH_SENSE_5 PV3_LOW_FORCE_1 PV3_LOW_FORCE_2 PV3_LOW_FORCE_3 PV3_LOW_FORCE_4 PV3_LOW_FORCE_5 PV3_LOW_SENSE_1 PV3_LOW_SENSE_2 PV3_LOW_SENSE_3 PV3_LOW_SENSE_4 PV3_LOW_SENSE_5 Usage pv3_4->close_switch(PV3_HIGH_FORCE_1); pv3_4->open_switch(PV3_LOW_SENSE_5)
volt_meas_range Description
This function allows the voltage measurement range to be set independently of the forcing range. To be effective, this function must be programmed after set_voltage. The function should not be used with forcing voltages greater than 10 V. Format void volt_meas_range(char meas_range);
Valid Arguments meas_range
ASL Series Programming Guide
245
14 - PVI - Pulsed Voltage/Current Source
RANGE_1_V RANGE_3_V NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage pv3_4->volt_meas_range(RANGE_1_V);
slow_comp normal_comp fast_comp Description
These functions change the compensation of the control loop. slow_comp can be used for loads that might not be stable at the faster settings. fast_comp can be used to maintain settling times for loads that effectively attenuate the control loop’s bandwidth. The board initialization routine (init) sets the control loop to normal_comp. Format void slow_comp(void); void normal_comp(void);
void fast_comp(void); Valid Arguments
none Usage pv3_4->slow_comp(); pv3_4->normal_comp(); pv3_4->fast_comp();
246
ASL Series Programming Guide
PVI 100 Function Calls
current_fast current_normal Description
These functions set the gain in the current section of the control loop. current_fast can be used to increase control loop bandwidth to maintain settling times, as well as to achieve faster slew rates for large voltage swings. The board initialization routine (init) sets the function to current_normal. Format void current_fast(void); void current_normal(void);
Valid Arguments
none Usage pv3_4->current_fast(); pv3_4->current_normal();
voltage_fast voltage_normal Description
These functions set the gain in the voltage section of the control loop. voltage_fast can be used to maintain the slew rate when the forcing voltage is set to 2 V or less and the PVI is driving very low impedance loads in the current compliant mode. The board initialization routine (init) sets the function to voltage_normal. Format void voltage_fast(void); void voltage_normal(void);
Valid Arguments
none
ASL Series Programming Guide
247
14 - PVI - Pulsed Voltage/Current Source
Usage pv3_4->voltage_fast(); pv3_4->voltage_normal();
kelvin_on kelvin_off Description
These functions allow the PVI to do limited kelvin-contact testing without using another VI instrument. The board initialization routine (init) sets the function to kelvin_off. Format void kelvin_on(void); void kelvin_off(void);
Valid Arguments
none Usage pv3_4->kelvin_on(); pv3_4->kelvin_off();
drive_on drive_off Description
These functions control the period of time that the PVI drives the load. drive_on initiates the drive; drive_off terminates it. With the PVI 100, the functions set_voltage and set_current can no longer be used to initiate the drive. However, set_voltage and set_current can be used to change the drive parameters after the drive has been initiated with drive_on. The drive period is limited to 300 µs on the 100 A current range. Format void drive_on(void);
248
ASL Series Programming Guide
PVI 100 Function Calls
void drive_off(void);
Valid Arguments
none Usage pv3_4->drive_on(); pv3_4->drive_off();
drive_meas_off Description
This function initiates a drive, waits for the programmed number of delay periods to pass, makes a single measurement, and then terminates the drive. Each delay period is 10 µs long. The drive period is limited to 300 µs on the 100 A current range. Format void drive_meas_off(unsigned short meas_delay);
Valid Arguments meas_delay
integer number of 10 µs-measure-delay periods to wait Usage pv3_4->drive_meas_off(20);
ASL Series Programming Guide
249
14 - PVI - Pulsed Voltage/Current Source
PVI-100 Test Points The test points shown below are available on the visible edge of the installed PVI instrument. Table 12. PVI Test Points TP
Name
Description
TP1
GND
System ground return - ground the oscilloscope here when monitoring other test points.
TP2
IDAC
Output of the current-setting DAC. The voltage at this test pointvaries from 0 V to 7.5 V for a zero-to-full-scale setting.
TP3
VDAC
Output of the voltage-setting DAC. The voltage at this test point varies from 0 V to 9 V for a zero-to-full-scale setting.
TP4
ADC
Multiplexed input to the ADC. The voltage at this test point varies from 0 V to 7.5 V for a zero-to-full-scale measurement.
TP5
VM
Voltage measurement signal before the ADC multiplexer.
TP6
IM
Current measurement signal before the ADC multiplexer.
TP7
- SENSE
Multiplexed negative voltage sense input - use this point and TP8 to monitor voltage across the load if a differential probe is available.
TP8
+SENSE
Multiplexed positive voltage sense input.
TP9
MT
Indicates when the ADC is strobed to initiate a measurement. MT is a positive true logic signal.
TP10
PT
Indicates when PVI is driving the load. Starts at drive_on command, and ends on drive_off. PT is a positive true logic signal.
TP11
ISN
Output of the current sense amplifier. The voltage at this point varies from 0 V to 7.5 V with respect to TP17 (FGND) for a zero-to-full-scale current. A differential probe is required to monitor this point.
TP12
1F
Output of the first set of FORCE switches
TP13
2F
Output of the second set of FORCE switches.
TP14
3F
Output of the third set of FORCE switches
TP15
4F
Output of the fourth set of FORCE switches.
TP16
5F
Output of the fifth set of FORCE switches.
TP17
FGND
PVI floating ground. This point is supplies a reference for TP11 (ISN). Use only when a differential probe is available.
250
ASL Series Programming Guide
PVI-100 Test Points
Do not connect test points TP7, TP8, or TP17 to the oscilloscope or other grounds. Use only a differential probe at these test points. CAUTION
ASL Series Programming Guide
251
14 - PVI - Pulsed Voltage/Current Source
PVI 100 Simplified Diagram The figure below shows the simplified diagram of the PVI instrument.
SYSTEM GROUND-REFERENCED CIRCUITRY
FLOATING GROUND-REFERENCED CIRCUITRY FORCE SWITCHES
0.5 A CURRENT LIMITER
+65 V
7000 µF CAPACITOR BANK
LATCHES OPTICALLY COUPLED SWITCH, RANGE, AND COMPENSATION CONTROLS
SYSTEM WITH BUS
+
-
-
+
+
-
DAC I SET IN
V DRIVE RANGE V SET 16 BITS
IN
-
-
+
+
OUT
-
-
CONTROL AND DRIVE
+
+
+
-
-
-
CHARGE MEAS
OUT
IN
OUT
IN
OUT
IN
CURRENT SENSE RESISTORS
ADC 15 BITS
I MEAS
I SENSE
+ DIFF -
TEMP MEAS
DRIVER TEMP SENSOR
V MEAS
V SENSE V MEAS RANGE
Figure 38. PVI 100 Simplified Instrument
252
+
+
OUT
DAC
LOAD
+
DRIVE ON/OFF
16 BITS
SENSE SWITCHES
+
ASL Series Programming Guide
+ DIFF -
15 TIA - TIME INTERVAL ANALYZER The Time Interval Analyzer (TIA) allows for real-time measurements of bit patterns and dynamic measurements of clock signals. This instrument acquires its measurements continuously into on-board memory—it can be viewed as a timing acquisition instrument that compares to traditional time measurement instruments in the same way that digitizers compare to voltmeters. Physically, the TIA instrument is installed in the CPU case. Specific Guide Tech low-level functions may be called directly from the user test program as required. For formats, valid arguments and usage, see Guide Technology’s GT650 Series Time Interval Analyzers - Operating Guide in your visualATE documentation package.
ASL Series Programming Guide
253
15 - TIA - Time Interval Analyzer
Function Calls init Description
This function loads the TIA calibration file. If the pass parameter full_cal is set TRUE, a new cal file will be generated, loaded, and saved. If full_cal is set to FALSE, the previously generated cal file will be loaded. Loading takes approximately 1 second. The user should call at program load time. Format void init(char full_cal);
Valid Arguments full_cal
TRUE FALSE (Default) Usage tia_card->init();
arm Description
This function sets the TIA arm mode. Format short arm(short source, short polarity);
Valid Arguments source TIA_INTERNAL_ARM TIA_EXTERNAL_ARM
254
ASL Series Programming Guide
Function Calls
TIA_SW_ARM TIA_ARM_OFF polarity TIA_POSITIVE_POLARITY TIA_NEGATIVE_POLARITY Returned Value 0 = error Usage tia_card->arm(TIA_INTERNAL_ARM,TIA_NEGATIVE_POLARITY);
do_general_setup Description
This function initializes the TIA setup using setup variables. The user should call before using the TIA. If force_setup is true, initialization will be done on both channels even if previously setup Format short do_general_setup(char force_setup);
Valid Arguments force_setup
TRUE FALSE (Default value) Returned Value
0 = error Usage tia_card->do_general_setup(TRUE);or, tia_card->do_general_setup();
ASL Series Programming Guide
255
15 - TIA - Time Interval Analyzer
measure Description
This function begins the measurement. The action depends on the arming mode: •
Internal arm begins measuring immediately
•
External arm begins measuring on external arm signal
•
Software arm begins measuring on software arm signal
Format short measure(void);
Valid Arguments
none Returned Argument
0= error Usage tia_card->measure();
measure_freq Description
This function measures the frequency on the selected channel. The number of measurements averaged is one less than the number of time measurement (time tags) set in the set_measure command. For example, setting three time tags gives two measurements averaged. The minimum setting is two time tags; this setting gives a single frequency measurement. If an error is detected, a frequency of 0 is returned (for example, if there are no samples, or no samples within the specified maximum and minimum limits). Format short measure_freq(double& freq);
256
ASL Series Programming Guide
Function Calls
Valid Arguments freq
Averaged measured frequency is returned in the freq variable Returned Argument
0 = error Usage tia_card->measure_freq();
measure_skew Description
This high-level function measures skew between the Channel A and Channel B time tags. The number of measurements averaged is equal to the number of time measurements (time tags) set in the set_measure command. The minimum number of time tags that can be set in set_measure is one. This single time tag gives a single skew measurement. Format short measure_skew(double& skew);
Valid Arguments skew
Averaged measured skew is returned in the skew variable Returned Argument
0 = error Usage tia_card->measure_skew();
ASL Series Programming Guide
257
15 - TIA - Time Interval Analyzer
read_single_pulse Description
This function calculates and returns width of first pulse from previously gathered data. Format double read_single_pulse(void);
Valid Arguments
none Returned Argument
measured pulse width Usage pulse_width = tia_card->read_single_pulse();
set_measure Description
This function sets the number of time measurements (time tags) to be taken for each channel. The function allocates memory based on the number of time measurements set. Format short set_measure(unsigned long channel_a_count, unsigned long channel_b_count);
Valid arguments channel_a_count
Channel A measurement count channel_b_count
Channel B measurement count
258
ASL Series Programming Guide
Function Calls
Returned Argument
0 = error Usage tia_card->set_measure(CHANNEL_A_COUNT,CHANNEL_B_COUNT);
set_sampling_mux Description
This function provides a user-controlled setup of the TIA sampling mux. It is not needed if setup_frequency, setup_skew or setup_single_pulse are used; these routines automatically set the sampling mux. Format short set_sampling_mux(short source, short mux_chan);
Valid Arguments source TIA_CHANNEL_A TIA_CHANNEL_B mux_chan TIA_CHANNEL_SAMP_MUX_A_POS_EDGE TIA_CHANNEL_SAMP_MUX_B_POS_EDGE TIA_CHANNEL_SAMP_MUX_A_NEG_EDGE TIA_CHANNEL_SAMP_MUX_B_NEG_EDGE TIA_CHANNEL_SAMP_MUX_DIV_2 TIA_CHANNEL_SAMP_MUX_DIV_4 TIA_CHANNEL_SAMP_MUX_DIV_16 TIA_CHANNEL_SAMP_MUX_DIV_32 TIA_CHANNEL_SAMP_MUX_DIV_64 TIA_CHANNEL_SAMP_MUX_DIV_256 Returned Argument
0 = error
ASL Series Programming Guide
259
15 - TIA - Time Interval Analyzer
Usage tia_card->set_sampling(TIA_CHANNEL_A,TIA_CHANNEL_SAMP_MUX_DIV_2);
set_threshold Description
This function sets the voltage thresholds for TIA measurements. Format short set_threshold(char channel,double value);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B value
voltage to be set (in volts) Returned Argument
0 = error Usage tia_card->set_threshold(CHANNEL_A); tia_card->set_threshold(CHANNEL_B);
set_timeout Description
This function sets the timeout limit for measuring samples. Format short set_timeout(double timeout);
260
ASL Series Programming Guide
Function Calls
Valid Arguments timeout
time in seconds Returned Argument
0 = error Usage tia_card->set_timeout(10);
setup_frequency Description
This function sets the TIA sampling mux for single-channel frequency measurements. It also sets TIA divider according to max_freq. If max_freq goes above 3.5 MHz, the TIA divider is set to divide by 2, 4, 16, 32, 64, or 256 as required to bring the measured frequency below 3.5 MHz. trigger_edge has no meaning when the divider is enabled. Format short setup_frequency(char channel,double max_freq, char trigger_edge = -1);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B max_freq
Maximum frequency to be measured trigger_edge TIA_POSITIVE_POLARITY TIA_NEGATIVE_POLARITY
ASL Series Programming Guide
261
15 - TIA - Time Interval Analyzer
Returned Argument
-1 = error Usage tia_card->setup_frequency(TIA_CHANNEL_A,10.0, TIA_POSITIVE_POLARITY); tia_card->setup_frequency(TIA_CHANNEL_B,5.0, TIA_NEGATIVE_POLARITY);
setup_single_pulse Description
This function sets up the TIA sampling mux, arm mode, and set_measure for single pulse width measurement of the specified input channel. The polarity argument refers to the leading edge of the input pulse. Format short setup_single_pulse(char channel,char polarity);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B polarity TIA_POSITIVE_POLARITY TIA_NEGATIVE_POLARITY Returned Argument
0 = error Usage tia_card->setup_single_pulse(TIA_CHANNEL_A,TIA_POSITIVE_POLARITY); tia_card->setup_single_pulse(TIA_CHANNEL_B,TIA_NEGATIVE_POLARITY);
262
ASL Series Programming Guide
Function Calls
setup_skew Description
This function sets up the TIA sampling mux for skew measurement. Input Channel A is measured with respect to Input Channel B. Format short setup_skew(char trigger_edge_a,char trigger_edge_b);
Valid Arguments trigger_edge TIA_POSITIVE_POLARITY TIA_NEGATIVE_POLARITY Returned Argument
0 = error Usage freq_sd = tia_card->setup_skew(TIA_POSITIVE_POLARITY,TIA_NEGATIVE_POLARITY);
std_dev_freq Description
This function calculates the standard deviation of frequency data from a previous measurement. Format double std_dev_freq(char channel, unsigned longlen=0);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B
ASL Series Programming Guide
263
15 - TIA - Time Interval Analyzer
longlen
Optional, length of data Returned Argument
Calculated standard deviation Usage time_sd = tia_card->std_dev_freq(TIA_CHANNEL_A);
std_dev_time Description
This function calculates the standard deviation of time or skew data from a previous measurement. Use TIA_CHANNEL_A for skew measurement data. Format double std_dev_time(char channel, unsigned longlen=0);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B longlen
Optional, length of data Returned Argument
Calculated standard deviation Usage tia_card->std_dev_time(TIA_CHANNEL_A);
264
ASL Series Programming Guide
Function Calls
average Description
This function returns averaged time data for the selected channel. Format double average(char channel, unsigned longlen=0);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B longlen
Optional, length of data Returned Argument
Measured frequency (averaged) Usage avg_time = tia_card->doubleaverage(TIA_CHANNEL_A);
average_skew Description
This function returns the average of measured skew data. Format short average_skew(double& average_skew, unsigned longlen);
Valid Arguments skew
Averaged measured skew is returned in the skew variable
ASL Series Programming Guide
265
15 - TIA - Time Interval Analyzer
longlen
Optional, length of data Returned Argument
0 = error Usage tia_card->average_skew(average_skew,len);
convert_samples Description
This function converts time tags to time data. If the max_limit_active or min_limit_active global variables are set TRUE, then time data outside of the max_val and/or min_val limits is discarded. In this case, the global variables a_count and/or b_count are updated with the new number of valid data samples. The global variable conversion_done[channel] is set TRUE if the conversion is successfully completed. Format void convert_samples(char channel);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Usage tia_card->convert_sample(CHANNEL_A);
266
ASL Series Programming Guide
Function Calls
convert_freq_samples Description
This function converts time tags to frequency data. If the global variables max_limit_active or min_limit_active are set TRUE, then frequency data outside of the max_val and/or min_val limits is discarded. In this case, the global variables a_count and/or b_count are updated with the new number of valid frequency samples. The global variable conversion_done[channel] is set TRUE if the conversion is successful. Format void convert_freq_samples(char channel);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Usage tia_card->convert_frequency(TIA_CHANNEL_A);
convert_skew_samples Description
This function converts time tags to skew data. If the global values max_limit_active or min_limit_active are set TRUE, then skew data outside of the max_val and/or min_val limits is discarded. In this case, the global variables a_count and/or b_count are updated with the new number of valid skew samples. The global variable conversion_done[channel] is set TRUE if the conversion is successful. Format short convert_skew_samples();
Valid Arguments
none
ASL Series Programming Guide
267
15 - TIA - Time Interval Analyzer
Returned Argument
0 = error Usage tia_card->convert_skew_sample();
frequency Description
This function calculates the average frequency using the time measurements from one channel. convert_samples (see previous page) must be run before this routine. Format double frequency(char channel);
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Returned Argument
measured frequency (averaged) Usage freq = tia_card->convert_frequency(TIA_CHANNEL_A);
read_data Description
This function reads raw time tag data from the TIA into memory. Format short read_data();
268
ASL Series Programming Guide
Function Calls
Valid Arguments
none Returned Argument
0 = error Usage tia_card->read_data();
read_skew Description
This routine calculates the average skew from previously collected data. Format short read_skew(double& skew, unsigned long len);
Valid Arguments skew
Averaged measured skew is returned in the skew variable len
Optional, length of data Returned Argument
0 = error Usage tia_card->read_skew();
ASL Series Programming Guide
269
15 - TIA - Time Interval Analyzer
Setup Variables done_setup Description
This routine sets a flag indicating that the setup had been done. Format char tia_card->m_setup[char channel].done_setup;
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Return Values
TRUE FALSE (default) Usage flag = tia_card->m_setup[TIA_CHANNEL_A].done_setup;
channel_enabled Description
This routine sets a flag to enable the channel. Use the do_general_setup routine to execute enable. Format char tia_card->m_setup[char channel].channel_enabled;
270
ASL Series Programming Guide
Setup Variables
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Return Values
TRUE FALSE (default) Usage flag = tia_card->m_setup[TIA_CHANNEL_A].channel_enabled;
clock_source Description
This routine sets a flag to select the clock source. Use the do_general_setup routine to execute the selection. Format char tia_card->m_setup[char channel].clock_source;
Return Values
TRUE FALSE (default) Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Usage flag = tia_card-m_>setup[TIA_CHANNEL_A].clock_source;
ASL Series Programming Guide
271
15 - TIA - Time Interval Analyzer
impedance Description
This routine sets a flag to select channel impedance. Use the do_general_setup routine to execute the selection. Format char tia_card->m_setup[char channel].impedance;
Values TIA_50_IMPEDANCE (default) TIA_1MEG_IMPEDANCE Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Return Values
TRUE FALSE (default) Usage flag = tia_card->m_setup[TIA_CHANNEL_A].TIA_50_IMPEDANCE;
coupling Description
This routine sets a flag to select channel coupling. Use the do_general_setup routine to execute the selection. Format
char tia_card->m_setup[char channel].coupling;
272
ASL Series Programming Guide
Setup Variables
Values TIA_AC_COUPLING (default) TIA_DC_COUPLING Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Return Values
TRUE FALSE (default) Usage flag = tia_card->m_setup[TIA_CHANNEL_A].TIA_AC_COUPLING;
threshold_volts_percent Description
This routine sets a flag to select channel threshold mode. Use the do_general_setup routine to execute the selection. Format char tia_card->m_setup[char channel].threshold_volts_percent;
Values TIA_THRESHOLD_VOLTS (default) TIA_THRESHOLD_PERCENT
Valid Arguments channel TIA_CHANNEL_A
ASL Series Programming Guide
273
15 - TIA - Time Interval Analyzer
TIA_CHANNEL_B Return Values
TRUE FALSE (default) Usage flag = tia_card->m_setup[TIA_CHANNEL_A].TIA_THRESHOLD_VOLTS;
Global Variables a_count b_count Description
These are system variables that report the number of samples taken for each channel. Format unsigned long a_count,b_count;
Valid Argument count
number of samples available for Channel A and for Channel B Usage tia_card->a_count,b_count;
274
ASL Series Programming Guide
Setup Variables
chan_a_result chan_b_result Description
This routine consists of system variables that point to the memory location of the samples taken for each channel. Format double *chan_a_result,*chan_b_result;
Valid Argument chan_result
pointer to samples available for Channel A and for Channel B Usage tia_card->chan_a_result;
conversion_done[channel] Description
This system array indicates that time tag to real-time conversion has been completed successfully (without error). Format char conversion_done[channel];
Valid Arguments channel TIA_CHANNEL_A TIA_CHANNEL_B Return Values
TRUE
ASL Series Programming Guide
275
15 - TIA - Time Interval Analyzer
FALSE Usage flag = tia_card->conversion_done[TIA_CHANNEL_A];
max_limit_active min_limit_active Description
This is a user-set flag to activate the maximum/minimim limit feature. Samples outside of the maximum or minimum limits are ignored if this flag is set. Format char max_limit_active; char min_limit_active;
Return Values
TRUE FALSE Usage flag = tia_card->min_limit_active;
max_val min_val Description
This is a user-set limit for the maximum or minimum values. Samples are compared against these values with the max/min limit feature. Format double max_val; double min_val;
276
ASL Series Programming Guide
Setup Variables
Return Value
User-set to desired limit value Usage tia_card->doublemax_val;
ASL Series Programming Guide
277
15 - TIA - Time Interval Analyzer
TIA Calibration and Programming Board Definition //Init board pointers Dvi *dvi_9; Tia *tia_card; void board_def(void) { dvi_9 = &dvi_cards[board_ptr[BOARD_9]]; tia_card = (tia*) get_PC_Board(TIA_BOARD_NAME,1); }
TIA Cal File Loading void freq_user_init(test_function& func) { freq_params *ours; ours = (freq_params *)func.params; // !!!! User initialization code below this comment (do not remov //comment) tia_card->init();
//load TIA cal file on program load, takes //approx. 1 sec.
// !!!! User initialization code above this comment (do not remove // comment) }
Frequency Measurement /******************************************** Setup TIA *********************************************/ // tia_card->display_errors = FALSE;//no error boxes from tia function tia_card->display_errors = TRUE;//error boxes from tia function tia_card->m_setup[TIA_CHANNEL_A].channel_enabled= TRUE; tia_card->m_setup[TIA_CHANNEL_A].clock_source= TIA_INTERNAL_CLOCK; tia_card->m_setup[TIA_CHANNEL_A].impedance= TIA_50_IMPEDANCE; tia_card->m_setup[TIA_CHANNEL_A].coupling= TIA_DC_COUPLING; tia_card->m_setup[TIA_CHANNEL_A].threshold_volts_percent = TIA_THRESHOLD_VOLTS;
278
ASL Series Programming Guide
TIA Calibration and Programming
if(!tia_card->do_general_setup()) box.error(“TIA general_setup error”); tia_card->m_setup[TIA_CHANNEL_A].done_setup= TRUE; if(!tia_card->set_threshold(TIA_CHANNEL_A,ours->tia_thrsh)) box.error(“TIA set_threshold”);
/******************************************** Measure Set Up *********************************************/ //setup measurement mode //set TIA timeout tia_card->set_timeout(ours->timeout); // TIA timeout //set number of time samples to be taken if(!tia_card->set_measure(ours->tia_a_sampls,0)) box.error(“TIA set_measure error”); //set arm mode if(!tia_card->arm(TIA_INTERNAL_ARM,TIA_POSITIVE_POLARITY)) box.error(“TIA arm error”); /******************************************** Measure Channel A Frequency *********************************************/ //setup //set TIA sampling mux divider for maximum frequency tia_card->setup_frequency(TIA_CHANNEL_A,ours->max_freq_1); //set min/max measurement limits if (ours->max_lim_flg) tia_card->max_limit_active = TRUE; else tia_card->max_limit_active = FALSE; if (ours->min_lim_flg) tia_card->min_limit_active = TRUE; else tia_card->min_limit_active = FALSE; tia_card->max_val = ours->max_limit; tia_card->min_val = ours->min_limit; //measure tia_card->measure_freq(mfreq); //check for timeout if(!tia_card->read_options.timeout)
ASL Series Programming Guide
279
15 - TIA - Time Interval Analyzer
{ //check standard deviation of freq measurements std_dev = tia_card->std_dev_freq(TIA_CHANNEL_A); //check number of freq samples (one less than the number of time samples taken) good_smpl_cnt = tia_card->a_count; } else { //timeout occurred std_dev = (double)0.0; good_smpl_cnt = 0; }
Skew Measurement /******************************************** Setup TIA *********************************************/ // tia_card->display_errors = FALSE;//no error boxes from tia //function tia_card->display_errors = TRUE;//error boxes from tia function tia_card->m_setup[TIA_CHANNEL_A].channel_enabled= TRUE; tia_card->m_setup[TIA_CHANNEL_A].clock_source= TIA_INTERNAL_CLOCK; tia_card->m_setup[TIA_CHANNEL_A].impedance= TIA_1MEG_IMPEDANCE; tia_card->m_setup[TIA_CHANNEL_A].coupling= TIA_DC_COUPLING; tia_card->m_setup[TIA_CHANNEL_A].threshold_volts_percent = TIA_THRESHOLD_VOLTS; tia_card->m_setup[TIA_CHANNEL_B].channel_enabled= TRUE; tia_card->m_setup[TIA_CHANNEL_B].clock_source= TIA_INTERNAL_CLOCK; tia_card->m_setup[TIA_CHANNEL_B].impedance= TIA_1MEG_IMPEDANCE; tia_card->m_setup[TIA_CHANNEL_B].coupling= TIA_DC_COUPLING; tia_card->m_setup[TIA_CHANNEL_B].threshold_volts_percent = TIA_THRESHOLD_VOLTS; tia_card->set_timeout(10e-3);// TIA times out after 10 ms if(!tia_card->do_general_m_setup()) box.error(“TIA general_m_setup error”); tia_card->setup[TIA_CHANNEL_A].done_setup= TRUE; tia_card->setup[TIA_CHANNEL_B].done_setup= TRUE;
/******************************************** Measure set up *********************************************/
280
ASL Series Programming Guide
TIA Calibration and Programming
//setup measurement mode //set number of time samples to be taken if(!tia_card->set_measure(ours->tia_sampls,ours->tia_sampls)) box.error(“TIA set_measure error”); //set arm mode //external arm required for > 3.5 MHz edge rates if (ours->ext_arm_flg) { if(!tia_card->arm(TIA_EXTERNAL_ARM,TIA_POSITIVE_POLARITY)) box.error(“TIA arm error”); } else { if(!tia_card->arm(TIA_INTERNAL_ARM,TIA_POSITIVE_POLARITY)) box.error(“TIA arm error”); } /******************************************** Measure Chan A vs Chan B skew *********************************************/ //setup //set up TIA sampling mux for positive edge skew tia_card->setup_skew
(TIA_CHANNEL_SAMP_MUX_A_POS_EDGE,TIA_CHANNEL_SAMP_MUX_B_POS_EDGE); //setup thresholds if(!tia_card->set_threshold(TIA_CHANNEL_A,ours->tia_thrsh_a)) box.error(“TIA set_threshold”); if(!tia_card->set_threshold(TIA_CHANNEL_B,ours->tia_thrsh_b)) box.error(“TIA set_threshold”); //set max/min skew limits (max limit required for > 3.5MHz edge //rates) if (ours->max_lim_flg) tia_card->max_limit_active = TRUE; else tia_card->max_limit_active = FALSE; if (ours->min_lim_flg) tia_card->min_limit_active = TRUE; else tia_card->min_limit_active = FALSE; tia_card->max_val = ours->max_limit; tia_card->min_val = ours->min_limit; //measure
ASL Series Programming Guide
281
15 - TIA - Time Interval Analyzer
tia_card->measure_skew(skew); // Function returns FALSE above if all not ok. //check for timeout if(!tia_card->read_options.timeout) { //check standard deviation of the time measurements std_dev = tia_card->std_dev_time(TIA_CHANNEL_A); //check number of samples used good_smpl_cnt = tia_card->a_count; } else { //timeout occurred std_dev = (double)0.0; good_smpl_cnt = 0; }
282
ASL Series Programming Guide
16 TMU - TIME MEASUREMENT UNIT The Time Measurement Unit (TMU) is a precise timer with the start and stop counting conditions controlled by programmable voltage threshold. comparators. This chapter includes: •
TMU theory and block diagram
•
Measurement resolution and Interpolation
•
Input channels
•
Arming the TMU
•
Programming examples
•
TMU start and stop hold off
•
Function calls
ASL Series Programming Guide
283
16 - TMU - Time Measurement Unit
TMU Theory The figure below shows the TMU conceptual diagram . Start Voltage Reference
Start Signal Inputs
Timer
Time Output
Stop
Stop Voltage Reference
Figure 39. TMU Conceptual Diagram
The TMU can collect the time between the defined voltages because the timer is controlled by programmable voltage thresholds. This is useful in measuring the following: •
The time a voltage signal takes to go from a high level to a lower level (fall time, Tf)
•
The time a voltage signal takes to go from a low level to a higher level (rise time, Tr)
•
The time required for a signal to propagate through a device (prop delay, Tp)
Figure 40 illustrates these types of measurements.
284
ASL Series Programming Guide
TMU Theory
Tf
Tr
Device Input
Device Output Tp
Figure 40. Types of TMU Measurements
In addition to these programmable voltage thresholds, the TMU has two more control conditions: slope and arm. Slope allows the user to define whether the signal to be measured is rising (a positive slope) or falling (a negative slope). Arm works as the timer gate or timer enable (see Figure 41). The voltage threshold comparators can be indicating valid start and stop conditions before an arm command is issued; however, the timer will not begin counting until an arm command occurs. After an arm command is issued, the timer begins counting with the first available valid start condition.
Start Voltage Reference
Slope
Start Signal Inputs
Timer Stop
Stop Voltage Reference
POS/NEG Time Output
Enable
Arm
Figure 41. TMU Conceptual Diagram with Arm and Slope
ASL Series Programming Guide
285
16 - TMU - Time Measurement Unit
Measurement Resolution and Interpolation The TMU uses a 100 MHz clock to generate a basic measurement resolution of 10 ns. Measurements of below 10 ns are achieved by interpolation (altering information) to add and/or subtract small amounts of time to or from the basic 10 ns interval. To interpolate, the TMU measures the change in voltage across a capacitor when the measured voltage is driven down from a known reference point by a current source. The sub-10 ns time relates to the measured voltage by the following formula: ∆T = C*(∆V/I)
where C and I are known and V is measured. The TMU uses two sets of interpolation circuitry: one for the start adjust and one for the stop adjust. The capacitor discharge is initiated by the TMU start and stop trigger events and stopped by the next available 10 ns clock, as shown in Figure 20-4 on the next page. If the start and stop measurement events fall exactly on the 10 ns clock boundaries, there is no discharge of the capacitor. In this case, the calculated time offset is zero; therefore, the basic time measurement is not adjusted. The TMU interpolation is automatic when the read() command is used. Using this command, the user does not need to do any special programming. The read_now() command returns the non-interpolated measurement with 10 ns resolution.
286
ASL Series Programming Guide
Measurement Resolution and Interpolation
100 MHz Main Clock Counting Start Trigger Stop Trigger Start Pulse Stop Pulse Start +10 V Ref
∆V for START
Stop +10 V Ref ∆V for STOP
Base Resolution Measurement
Figure 42. TMU Interpolation Process
ASL Series Programming Guide
287
16 - TMU - Time Measurement Unit
Input Channels The TMU supports three input channels, each with multiple connect relays. Two channels, CHA and CHB, are low impedance inputs (nominal 2 K). The third channel, the HIZ, is a high impedance input (nominal 2 Meg). The three channels can be used in a variety of start and stop configurations: The TMU has an analog switch mux (located between the input channels and trigger comparators) for this purpose. See Figure 43 and Table 13 on the next page. Any input channel can be used for the start and stop conditions for rise and fall measurements. Two separate channels must be used for propagation delay measurements. Do not exceed the analog mux switch maximum voltage rating of 15 V. Exceeding this rating will damage the switches. CAUTION
Signal Inputs
Start Voltage Reference Slope
CHA Start HIZ
POS/NEG Timer
Stop
Enable
CHB Arm Stop Voltage Reference
Figure 43. TMU Input Channel Mux
288
ASL Series Programming Guide
Time Output
Input Channels
Table 13. Start and Stop Configuration Start
Stop
Allowed
A
A
Yes
A
B
Yes
A
HIZ
Yes
B
B
Yes
B
A
No
B
HIZ
No
HIZ
A
No
HIZ
B
Yes
HIZ
HIZ
Yes
ASL Series Programming Guide
289
16 - TMU - Time Measurement Unit
Arming the TMU There are two ways to arm (enable) the TMU timer: the program arm statement and the external arm input. When the arm statement executes, the timer is enabled to begin counting after the first available start condition. This is acceptable for typical situations; however, certain test conditions may require a more precise arming sequence. For example, to measure a free-running periodic waveform, it is better to arm the TMU just before the specific edge of interest. In this case, the external signal can be provided by the DUT or the ACS—if the ACS creates the stimulus to which the DUT is outputting a periodic waveform. If the ACS is creating the stimulus, one of the auxiliary ACS outputs can be programmed synchronously to provide the external arm signal. Please see the ACS section in this guide for more information. The following code is an example of how to control the external arm circuitry: tmu_6->arm(TRUE, TRUE);//external arm, positive slope tmu_6->open_switch(ARM_REF_POSITIVE);//positive reference tmu_6->write_register(TMU_ARM_REF, 0x2000); //1.25 V threshold wait.delay_10_us(50);//wait 500 µS
Some of the commands are “low-level” in nature, but may be included as “high-level” commands in future revisions of visualATE software. The “open_switch(ARM_REF_POSITIVE)” command programs the voltage polarity of the reference to positive. A “close_switch(ARM_REF_POSITIVE)” would program the polarity negative. The “low-level” command, write_register, programs the external arm, threshold comparator voltage reference. This reference is derived from a 12-bit DAC that has its 12 data inputs positioned on the upper 12 bits of the TMU 16-bit address bus. The fullscale range of this DAC is 10 V. With 4096 possible DAC codes, the voltage per code is 2.44 mV. The following methods are useful for calculating the threshold value for the above example: INT(1.25 V/2.44 mV)= 512(derives the integer number of DAC codes required) 512*16 = 8192 (multiplying by 16 shifts the DAC data to the upper 12 bits)
The example uses a value of 2000, obtained by performing a hex conversion on 8192. The value of 8192 is also acceptable, because the command accepts short values. A hex value of 2000 sets the voltage reference to 1.25 V. The “low-level” command, wait.delay, allows microsecond delay times in 10 µs intervals.
290
ASL Series Programming Guide
Programming Examples
Programming Examples The following examples demonstrate how to set up for the named measurement: rise time, fall time, propagation delay, and periodic waveforms. The rise and fall time examples use CHA as both the start and stop input, with threshold levels shown as passed parameters. The propagation time example uses CHA as the start input and CHB as the stop input, with the start and stop threshold levels shown as passed parameters.
Measuring Rise Time (start level less than stop level, positive slope) tmu_6->close_relay(TMU_CHAN_A_DUT1); tmu_6->start_trigger_setup(ours->startv,POS_SLOPE,TMU_CHAN_A); tmu_6->stop_trigger_setup(ours->stopv,POS_SLOPE,TMU_CHAN_A); delay(1);//wait for trigger setup and input relays to settle tmu_6->arm(); //a wait may be required here to allow the DUT to respond result=tmu_6->read();
Measuring Fall Time (start level greater than stop level, negative slope) tmu_6->close_relay(TMU_CHAN_A_DUT1); tmu_6->start_trigger_setup(ours->startv,NEG_SLOPE,TMU_CHAN_A); tmu_6->stop_trigger_setup(ours->stopv,NEG_SLOPE,TMU_CHAN_A); delay(1);//wait for trigger setup and input relays to settle tmu_6->arm(); //a wait may be required here to allow the DUT to respond result=tmu_6->read();
Measuring Propagation Delay (start, stop and slope are channel dependent) tmu_6->close_relay(TMU_CHAN_A_DUT1); tmu_6->close_relay(TMU_CHAN_B_DUT1); tmu_6->start_trigger_setup(ours->startv,POS_SLOPE,TMU_CHAN_A); tmu_6->stop_trigger_setup(ours->stopv,POS_SLOPE,TMU_CHAN_B); delay(1);//wait for trigger setup and input relays to settle tmu_6->arm(); wait.delay_10_us(4); //required for arm hardware to settle //generate signal to be measured //a wait may be required here to allow the DUT to respond result=tmu_6->read();
ASL Series Programming Guide
291
16 - TMU - Time Measurement Unit
Measuring a Periodic Waveform
START, POS STOP, NEG
•
Set the start trigger level with the desired voltage and positive slope.
•
Set the stop trigger level with the desired voltage that represents one-half cycle and negative slope.
•
Measure the period of the half cycle.
•
Calculate the full cycle frequency by: Freq = 1/(T*2)
Time measured being zero will result in a divide-by-zero error. A way to protect against this would be as follows: meas_time=tmu_6->read();//acquire time if (meas_timeclose_relay(TMU_HIZ_DUT1); tmu_6->start_holdoff(12, TRUE); // Sets start holdoff to 12 // events, 2nd parameter needed tmu_6->stop_holdoff(10,TRUE); // Sets stop holdoff to 10 // events, 2nd parameter needed tmu_6->start_trigger_setup(2.5, POS_SLOPE, TMU_HIZ_DUT1, TMU_IN_10V); tmu_6->stop_trigger_setup(2.5, POS_SLOPE, TMU_HIZ_DUT1, TMU_IN_10V); delay(1); tmu_6->arm(); delay(1); result = tmu_6->read(); // Measurement of 10 times the period result = result/10; // Divide by stop holdoff (10) result = 1/result; // Convert to Frequency
TMU Time Holdoff Example Code The time holdoff example will use the same setup as above but now we will use time instead of events for start and stop holdoff. Since, the period is known (1us) the start holdoff can be set to 12 us and the stop holdoff to 10 us. All other setup parameters are the same as above. float result; board_hardware_init(); tmu_6->close_relay(TMU_HIZ_DUT1); tmu_6->start_holdoff(12e-6, FALSE); // Sets start holdoff to 12 us, 2nd parameter optional tmu_6->stop_holdoff(10e-6,FALSE); // Sets stop holdoff to 10 us, 2nd parameter optional tmu_6->start_trigger_setup(2.5, POS_SLOPE,TMU_HIZ_DUT1, TMU_IN_10V); tmu_6->stop_trigger_setup(2.5, POS_SLOPE, TMU_HIZ_DUT1, TMU_IN_10V); delay(1); tmu_6->arm(); delay(1); result = tmu_6->read();// Measurement of 10 times the period result = result/10;// Divide by stop holdoff (10) result = 1/result;// Convert to Frequency
296
ASL Series Programming Guide
Function Calls
Function Calls init Description
This is the board initialization routine. This function clears counters, resets trigger circuitry, resets the trigger comparator reference DACs to 0 V, and opens all on-board relays. Format void init(void);
Valid Arguments
none Usage tmu_6->init();
reset Description
This function clears counters and resets the trigger logic. If a timeout occurs, then this function can be used to reset the logic to accept a new arm statement. It does not reset the trigger comparator reference DACs to 0 V nor does it open all on-board relays. Format void reset(void);
Valid Arguments
none
ASL Series Programming Guide
297
16 - TMU - Time Measurement Unit
Usage tmu_6->reset();
start_trigger_setup stop_trigger_setup Description
These functions program the start and stop trigger comparator threshold voltage levels. If vrange is not specified, the TMU autoranges so that the threshold level programmed is no greater than 80% of range. The comparator analog switch mux has a maximum voltage rating of ±15 V. The statement requires a 100 µs delay. Format void start_trigger_setup(float level, char slope, char channel, char vrange); void stop_trigger_setup(float level, char slope, char channel, char vrange);
Valid Arguments level
threshold voltage level in decimal or scientific notation slope POS_SLOPE NEG_SLOPE channel TMU_CHAN_A TMU_CHAN_B TMU_HIZ vrange
298
default is autorange TMU_IN_2_5V(CHA, CHB, HIZ) TMU_IN_5V(HIZ) TMU_IN_10V(CHA, CHB, HIZ) TMU_IN_25V(HIZ) TMU_IN_50V(HIZ) TMU_IN_100V(HIZ) TMU_IN_250V(HIZ)
ASL Series Programming Guide
(2_5V is 2.5V)
Function Calls
TMU_IN_500V(HIZ) TMU_IN_1000V(HIZ) NOTE — When operating under versions of visualATE earlier than 5.2.3, instruments autoranged downwards even when the user specified a fixed range. Starting with visualATE 5.2.3 this behavior is resolved and instruments no longer autorange, neither upward nor downward, unless the user specifies the autorange. Usage tmu_6->start_trigger_setup(3.0, POS_SLOPE, TMU_CHAN_A,TMU_IN_10V); tmu_6->stop_trigger_setup(3.0, NEG_SLOPE, TMU_CHAN_B, TMU_IN_10V); wait.delay_10_us(10);//100 µs wait time
arm Description
This function enables the counters to begin after a valid start condition is recognized. With no arguments, the arm statement is known as a program arm as the counters are enabled upon execution of this statement. The TMU accepts an external arm signal. A 40 µs delay should be used after executing a program arm. Format void arm(unsigned char ext_en, unsigned char ext_slope, unsigned char counter_reset);
Valid Arguments ext_en
Enables external arming TRUE FALSE (default) ext_slope
Defines external trigger slope TRUE (positive slope, default) FALSE (negative slope) counter_reset
ASL Series Programming Guide
299
16 - TMU - Time Measurement Unit
Resets time counter to zero prior to start trigger TRUE(default) FALSE Usage tmu_6->arm(); // “program” arm tmu_6->arm(TRUE, FALSE, TRUE);// “external” arm NOTE — See the "Arming the TMU" section earlier in this chapter for more information on how to externally arm the TMU.
read Description
This function returns the interpolated measured time and defines the timeout value. With no arguments, the default timeout is 10 ms. See the "Read Statement Returns" section earlier in this chapter for more details on this function. Format float read(float timeout);
Valid Arguments timeout (default is 10 ms)
time in seconds to wait for valid stop trigger condition Usage meas_time = tmu_6->read(); //with default 10 ms timeout meas_time = tmu_6->read(20e-3);//with programmed 20 ms timeout
read_now Description
This function obtains the current counter value with no interpolation. The resolution is 10 ns.
300
ASL Series Programming Guide
Function Calls
Format float read_now(void);
Valid Arguments
none Usage meas_counter = tmu_6->read_now();
get_status Description
This function gets the status of the control register bits and returns it in hex format. Format unsigned short get_status(void);
Returned Values
0x0010 = TMU_IO2
bidirectional port #2
0x0020 = TMU_IO1
bidirectional port #1)
0x0040 = TMU_HIZ_STAT
HIZ on 10 V range, buffer at unity gain
0x0080 = TMU_ARM_STAT 0x0100 = TMU_HOLD_END 0x0200 = TMU_STOP
start condition recognized
0x0400 = TMU_START
stop condition recognized
0x0800 = TMU_TTL_COUNT 0x1000 = TMU_COUNTING
start condition recognized, counters running, no stop condition
0x2000 = TMU_READY
ASL Series Programming Guide
301
16 - TMU - Time Measurement Unit
0x4000 = TMU_END_CNT 0x8000 = TMU_ARMED
TRUE = counters not started, FALSE = either is counting or not armed
Usage if ((tmu_6->get_status()) & TMU_ARMED) {
//user code here }
set_control clear_control Description
This function sets or clears the control register bits. Format void set_control(unsigned short bit); void clear_control(unsigned short bit);
Valid Arguments bit TMU_OUT_IO
asserting this with set_control enables IO1 & IO2 as outputs, resetting with clear_control enables them as inputs
TMU_SET_IO1
user programmable I/O bit 1, can be read with get_status. When enabled as output, high state set with set_control, low state set with clear_control
TMU_SET_IO2
user programmable I/O bit 2, can be read with get_status. When enabled as output, the high state is set with set_control, the low state is set with clear_control
Usage tmu_6->set_control(TMU_OUT_IO);// enable IO1 & IO2 as outputs
302
ASL Series Programming Guide
Function Calls
tmu_6->set_control(TMU_SET_IO1);// drive IO1 high tmu_6->clear_control(TMU_SET_IO1);// drive IO1 low
close_relay open_relay Description
This function closes or opens stated on-board relays. Format void close_relay(unsigned short relay); void open_relay(unsigned short relay);
Valid Arguments relay Preferred Statements
Alternatives
TMU_CHAN_A_DUT1
TMU_CHAN_A_DUT or TMU_START_DUT
TMU_CHAN_A_DUT2
TMU_START_DUT2
TMU_CHAN_A_BUS
TMU_START_BUS
TMU_CHAN_B_DUT1
TMU_CHAN_B_DUT or TMU_STOP_DUT
TMU_CHAN_B_DUT2
TMU_STOP_DUT2
TMU_HIZ_DUT1
TMU_HIZ_DUT
TMU_HIZ_DUT2 TMU_HIZ_DUT3 TMU_HIZ_DUT4 TMU_EXT_DRV1
user programmable open collector output #1
TMU_EXT_DRV2
user programmable open collector output #2
TMU_EXT_DRV3
user programmable open collector output #3
TMU_MEAS_BUS
ADC input-to-bus connect relay
ASL Series Programming Guide
303
16 - TMU - Time Measurement Unit
Usage tmu_6->close_relay(TMU_HIZ_DUT1); tmu_6->open_relay(TMU_HIZ_DUT1);
start_holdoff stop_holdoff Description
The TMU supports two types of holdoff, time or event based. Start holdoff may used alone or with the stop holdoff but mixed types of holdoff are not allowed, i.e. Start holdoff in time and stop holdoff in events. Time values can be in the range of 640ns to 655ms in 160ns increments. If the programmed time is not an exact multiple of 160ns, it will be rounded of to the nearest 160ns. Events may be programmed from 5-4095. The second parameter is optional when working with time holdoff and only needed when using the event holdoff feature. Format void start_holdoff(float time, unsigned char count_events); void stop_holdoff(float time, unsigned char count_events);
Valid Arguments time
Either the absolute time value or a count of events. count_events
TRUE FALSE (Default) Usage float holdoff_val; tmu_6->start_holdoff(holdoff_val);
NOTE — See TMU Start and Stop EVENTS sections earlier in this chapter for more examples using start and stop holdoff function calls.
304
ASL Series Programming Guide
Function Calls
TMU Simplified Diagram The figure below shows the simplified diagram of the TMU instrument.
Figure 46. TMU Simplified Diagram
ASL Series Programming Guide
305
16 - TMU - Time Measurement Unit
306
ASL Series Programming Guide
17 ADDITIONAL USER FUNCTIONS This chapter provides some additional STDF, wafer, and miscellaneous User Functions for visualATE users.
ASL Series Programming Guide
307
17 - Additional User Functions
STDF User Functions The visualATE supports the Standard Test Data Format (STDF™). STDF is a simple, flexible, portable data format from which existing data files and formats can be easily converted. The information can be post-processed into other formats as it may be required by the user. The following summarized STDF Set and get user functions are available for post processing of all visualATE supported STDF variables. For details, contact the Credence support personnel. NOTE — The STDF support is limited to a post process of the completed dl4 datalog file, as such the STDF APIs are per file not per record.
MIR Get Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
308
unsigned char Get_MIR_STAT_NUM(void); char Get_MIR_MODE_COD(void); char Get_MIR_RTST_COD(void); char Get_MIR_PROT_COD(void); unsigned short Get_MIR_BURN_TIM(void); char Get_MIR_CMOD_COD(void); char *Get_MIR_LOT_ID(void); char *Get_MIR_PART_TYP(void); char *Get_MIR_NODE_NAM(void); char *Get_MIR_TSTR_TYP(void); char *Get_MIR_JOB_NAM(void); char *Get_MIR_JOB_REV(void); char *Get_MIR_SBLOT_ID(void); char *Get_MIR_OPER_NAM(void); char *Get_MIR_EXEC_TYP(void); char *Get_MIR_EXEC_VER(void); char *Get_MIR_TEST_COD(void); char *Get_MIR_TST_TEMP(void); char *Get_MIR_USER_TXT(void); char *Get_MIR_AUX_FILE(void); char *Get_MIR_PKG_TYP(void); char *Get_MIR_FAMLY_ID(void); char *Get_MIR_DATE_COD(void); char *Get_MIR_FACIL_ID(void); char *Get_MIR_FLOOR_ID(void); char *Get_MIR_PROC_ID(void); char *Get_MIR_OPER_FRQ(void); char *Get_MIR_SPEC_NAM(void); char *Get_MIR_SPEC_VER(void); char *Get_MIR_FLOW_ID(void); char *Get_MIR_SETUP_ID(void); char *Get_MIR_DSGN_REV(void);
ASL Series Programming Guide
STDF User Functions
CONTROL_API CONTROL_API CONTROL_API CONTROL_API
char char char char
*Get_MIR_ENG_ID(void); *Get_MIR_ROM_COD(void); *Get_MIR_SERL_NUM(void); *Get_MIR_SUPR_NAM(void);
MIR Set Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void void
Set_MIR_STAT_NUM(unsigned char value); Set_MIR_MODE_COD(char value); Set_MIR_RTST_COD(char value); Set_MIR_PROT_COD(char value); Set_MIR_BURN_TIM(unsigned short value); Set_MIR_CMOD_COD(char value); Set_MIR_LOT_ID(char *value); Set_MIR_PART_TYP(char *value); Set_MIR_NODE_NAM(char *value); Set_MIR_TSTR_TYP(char *value); Set_MIR_JOB_NAM(char *value); Set_MIR_JOB_REV(char *value); Set_MIR_SBLOT_ID(char *value); Set_MIR_OPER_NAM(char *value); Set_MIR_EXEC_TYP(char *value); Set_MIR_EXEC_VER(char *value); Set_MIR_TEST_COD(char *value); Set_MIR_TST_TEMP(char *value); Set_MIR_USER_TXT(char *value); Set_MIR_AUX_FILE(char *value); Set_MIR_PKG_TYP(char *value); Set_MIR_FAMLY_ID(char *value); Set_MIR_DATE_COD(char *value); Set_MIR_FACIL_ID(char *value); Set_MIR_FLOOR_ID(char *value); Set_MIR_PROC_ID(char *value); Set_MIR_OPER_FRQ(char *value); Set_MIR_SPEC_NAM(char *value); Set_MIR_SPEC_VER(char *value); Set_MIR_FLOW_ID(char *value); Set_MIR_SETUP_ID(char *value); Set_MIR_DSGN_REV(char *value); Set_MIR_ENG_ID(char *value); Set_MIR_ROM_COD(char *value); Set_MIR_SERL_NUM(char *value); Set_MIR_SUPR_NAM(char *value);
MRR Get Functions CONTROL_API char Get_MRR_DISP_COD(void); CONTROL_API char *Get_MRR_USR_DESC(void);
ASL Series Programming Guide
309
17 - Additional User Functions
CONTROL_API char *Get_MRR_EXC_DESC(void);
MRR Set Functions CONTROL_API void Set_MRR_DISP_COD(char value); CONTROL_API void Set_MRR_USR_DESC(char *value); CONTROL_API void Set_MRR_EXC_DESC(char *value);
PCR Get Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
unsigned unsigned unsigned unsigned unsigned
long long long long long
Get_PCR_PART_CNT(void); Get_PCR_RTST_CNT(void); Get_PCR_ABRT_CNT(void); Get_PCR_GOOD_CNT(void); Get_PCR_FUNC_CNT(void);
PCR Set Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
void void void void void
Set_PCR_PART_CNT(unsigned Set_PCR_RTST_CNT(unsigned Set_PCR_ABRT_CNT(unsigned Set_PCR_GOOD_CNT(unsigned Set_PCR_FUNC_CNT(unsigned
SDR Get Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
310
char char char char char char char char char char char char char char char char
*Get_SDR_HAND_TYP(void); *Get_SDR_HAND_ID(void); *Get_SDR_CARD_TYP(void); *Get_SDR_CARD_ID(void); *Get_SDR_LOAD_TYP(void); *Get_SDR_LOAD_ID(void); *Get_SDR_DIB_TYP(void); *Get_SDR_DIB_ID(void); *Get_SDR_CABL_TYP(void); *Get_SDR_CABL_ID(void); *Get_SDR_CONT_TYP(void); *Get_SDR_CONT_ID(void); *Get_SDR_LASR_TYP(void); *Get_SDR_LASR_ID(void); *Get_SDR_EXTR_TYP(void); *Get_SDR_EXTR_ID(void);
ASL Series Programming Guide
long long long long long
value); value); value); value); value);
STDF User Functions
SDR Set Functions void void void void void void void void void void void void void void void void
Set_SDR_HAND_TYP(char *value); Set_SDR_HAND_ID(char *value); Set_SDR_CARD_TYP(char *value); Set_SDR_CARD_ID(char *value); Set_SDR_LOAD_TYP(char *value); Set_SDR_LOAD_ID(char *value); Set_SDR_DIB_TYP(char *value); Set_SDR_DIB_ID(char *value); Set_SDR_CABL_TYP(char *value); Set_SDR_CABL_ID(char *value); Set_SDR_CONT_TYP(char *value); Set_SDR_CONT_ID(char *value); Set_SDR_LASR_TYP(char *value); Set_SDR_LASR_ID(char *value); Set_SDR_EXTR_TYP(char *value); Set_SDR_EXTR_ID(char *value);
WIR Get Functions CONTROL_API char *Get_WIR_WAFER_ID(void);
WIR Set Functions CONTROL_API void Set_WIR_WAFER_ID(char *value);
WRR Get Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
unsigned long Get_WRR_PART_CNT(void); unsigned long Get_WRR_RTST_CNT(void); unsigned long Get_WRR_ABRT_CNT(void); unsigned long Get_WRR_GOOD_CNT(void); unsigned long Get_WRR_FUNC_CNT(void); char *Get_WRR_WAFER_ID(void); char *Get_WRR_FABWF_ID(void); char *Get_WRR_FRAME_ID(void); char *Get_WRR_MASK_ID(void); char *Get_WRR_USR_DESC(void); char *Get_WRR_EXC_DESC(void);
WRR Set Functions CONTROL_API void Set_WRR_PART_CNT(unsigned long value); CONTROL_API void Set_WRR_RTST_CNT(unsigned long value); CONTROL_API void Set_WRR_ABRT_CNT(unsigned long value);
ASL Series Programming Guide
311
17 - Additional User Functions
CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
void void void void void void void void
Set_WRR_GOOD_CNT(unsigned long value); Set_WRR_FUNC_CNT(unsigned long value); Set_WRR_WAFER_ID(char *value); Set_WRR_FABWF_ID(char *value); Set_WRR_FRAME_ID(char *value); Set_WRR_MASK_ID(char *value); Set_WRR_USR_DESC(char *value); Set_WRR_EXC_DESC(char *value);
WCR Get Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
float Get_WCR_WAFR_SIZ(void); float Get_WCR_DIE_HT(void); float Get_WCR_DIE_WID(void); unsigned char Get_WCR_WF_UNITS(void); char Get_WCR_WF_FLAT(void); short Get_WCR_CENTER_X(void); short Get_WCR_CENTER_Y(void); char Get_WCR_POS_X(void); char Get_WCR_POS_Y(void);
WCR Set Functions CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API CONTROL_API
void void void void void void void void void
Set_WCR_WAFR_SIZ(float value); Set_WCR_DIE_HT(float value); Set_WCR_DIE_WID(float value); Set_WCR_WF_UNITS(unsigned char value); Set_WCR_WF_FLAT(char value); Set_WCR_CENTER_X(short value); Set_WCR_CENTER_Y(short value); Set_WCR_POS_X(char value); Set_WCR_POS_Y(char value);
PTR Get Functions CONTROL_API char *Get_PTR_C_RESFMT(void); CONTROL_API char *Get_PTR_C_LLMFMT(void); CONTROL_API char *Get_PTR_C_HLMFMT(void);
PTR Set Functions CONTROL_API void Set_PTR_C_RESFMT(char *value); CONTROL_API void Set_PTR_C_LLMFMT(char *value); CONTROL_API void Set_PTR_C_HLMFMT(char *value);
312
ASL Series Programming Guide
Wafer Functions
Wafer Functions The following functions write and read data from the Wafer Sort Control dialog box. They will overwrite any data that was previously entered by the operator. The names are descriptive, making them very straightforward to use.
Get_missing_wafer Description
Returns a string that contains the missing wafer information stored in the Wafer Sort Control dialog box. Format BOOL Get_missing_wafer (STRING &missing_wafer);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING MissingW_String; BOOL iret = Get_missing_wafer (MissingW_String);
Set_missing_wafer Description
Sets the string that contains the missing wafer information stored in the Wafer Sort Control dialog box. Format BOOL Set_missing_wafer (STRING &missing_wafer);
Return values
TRUE - If successful.
ASL Series Programming Guide
313
17 - Additional User Functions
FALSE - If unsuccessful. Usage STRING MissingW_String; BOOL iret = Set_missing_wafer (MissingW_String);
Get_completed_wafer Description
Returns a string that contains the completed wafer information stored in the wafer sort control dialog box. Format BOOL Get_Completed_wafer (STRING &completed_wafer);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING CompletedW_String; BOOL iret = Get_completed_wafer (CompletedW_String);
Set_completed_wafer Description
Sets the string that contains the completed wafer information stored in the wafer sort control dialog box. Format BOOL Set_completed_wafer (STRING &completed_wafer);
Return values
TRUE - If successful.
314
ASL Series Programming Guide
Wafer Functions
FALSE - If unsuccessful. Usage STRING Completed_String; BOOL iret = Set_completed_wafer (CompletedW_String);
Get_wafer_in_progress Description
Returns a string that contains the wafer currently being tested as stored in the wafer sort control dialog box. Format BOOL Get_wafer_in_progress (STRING &wafer_in_progress);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Current_Wafer; BOOL iret = Get_wafer_in_progress (Current_Wafer);
Set_wafer_in_progress Description
Sets a string that contains the wafer to be tested as shown in the wafer sort control dialog box. Format BOOL Set_wafer_in_progress (STRING &wafer_in_progress);
Return values
TRUE - If successful.
ASL Series Programming Guide
315
17 - Additional User Functions
FALSE - If unsuccessful. Usage STRING Current_Wafer; BOOL iret = Set_wafer_in_progress (Current_Wafer);
Get_sublot_name Description
Returns a string that contains the sublot name as shown in the wafer sort control dialog box. Format BOOL Get_sublot_name (STRING &sub_lot_name);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING SubLot_Name; BOOL iret = Get_sublot_name (SubLot_Name);
Set_sublot_name Description
Sets a string that contains the sublot name as shown in the wafer sort control dialog box. Format BOOL Set_sublot_name (STRING &sub_lot_name);
Return values
TRUE - If successful.
316
ASL Series Programming Guide
Wafer Functions
FALSE - If unsuccessful. Usage STRING SubLot_Name; BOOL iret = Set_sublot_name (SubLot_Name);
Get_total_wafer Description
Returns a string that contains the total wafer count as shown in the wafer sort control dialog box. Format BOOL Get_total_wafer (STRING &total_wafer);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Total_wafers; BOOL iret = Get_total_wafer (Total_wafers);
Set_total_wafer Description
Sets a string that contains the total wafer count as shown in the wafer sort control dialog box. Format BOOL Set_total_wafer (STRING &total_wafer);
Return values
TRUE - If successful.
ASL Series Programming Guide
317
17 - Additional User Functions
FALSE - If unsuccessful. Usage STRING Total_wafers; BOOL iret = Set_total_wafer (Total_wafers);
Get_wafer_list Description
Returns a string that contains the wafer list as shown in the wafer sort control dialog box. Format BOOL Get_wafer_list (STRING &wafer_list);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Wafer_List; BOOL iret = Get_wafer_list (Wafer_List);
Set_wafer_list Description
Sets a string that contains the wafer list as shown in the wafer sort control dialog box. Format BOOL Set_wafer_list (STRING &wafer_list);
Return values
TRUE - If successful.
318
ASL Series Programming Guide
Wafer Functions
FALSE - If unsuccessful. Usage STRING Wafer_List; BOOL iret = Set_wafer_list (Wafer_List);
Send_eow Description
Sends an EOW to the prober. Format BOOL Send_eow ();
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage BOOL iret = Send_eow ();
Set_prober_control Description
Sets a flag to indicate that the control of wafer indexing is from a prober. Format BOOL Set_prober_control (BOOL prober_ctrl);
Return values
TRUE - If successful. FALSE - If unsuccessful.
ASL Series Programming Guide
319
17 - Additional User Functions
Usage STRING IP_Flag; BOOL iret = Set_prober_control (IP_Flag);
Get_prober_control Description
Returns a flag to check if the prober correctly has wafer indexing control. Format BOOL Get_prober_control (BOOL prober_ctrl);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING IP_Flag; BOOL iret = Get_prober_control (IP_Flag);
Get_wafer_id Description
Returns a string that contains the wafer id. Format BOOL Get_wafer_id (STRING &wafer_id);
Return values
TRUE - If successful. FALSE - If unsuccessful.
320
ASL Series Programming Guide
Wafer Functions
Usage STRING Wafer_Id; BOOL iret = Get_wafer_id (Wafer_Id);
ASL Series Programming Guide
321
17 - Additional User Functions
Miscellaneous Functions StopProgram Description
Tells the user interface to stop running the current program. A TRUE Return from this function does not guarantee that the program will stop, merely that the user interface understands not to send any more run requests to TEST.EXE. Format BOOL StopProgram (void);
Returns values
TRUE - If the successful. FALSE - If the stop program command is not valid at the time when this function is called. Usage BOOL iret = StopProgram();
RunProgram Description
Tells the user interface to start/stop running the current program. Does the same thing as if the user had started the program by clicking the run button. A TRUE return from this function does not guarantee that the program will stop, merely that the user interface understands to send a run/stop request to TEST.EXE at the next opportunity. Format BOOL RunProgram (void);
Returns values
TRUE - If the successful.
322
ASL Series Programming Guide
Miscellaneous Functions
FALSE - If the stop program command is not valid at the time when this function is called. Usage BOOL iret = RunProgram();
GetLotIdName Description Returns the current lot ID name. This function will return false if there is no active program. When in engineering mode, the UI will generally return "Default" as the lot ID. Format BOOL GetLotIDName (STRING &name);
Returns values
TRUE - If the successful. FALSE - If the user interface can not get the current lot ID name. Usage STRING LotId; BOOL iret = GetLotIdName(LotId);
SetLotIdName Description
Sets the current lot ID name. This function will return False if there is no active program. Format BOOL SetLotIDName (STRING &name);
ASL Series Programming Guide
323
17 - Additional User Functions
Returns values
TRUE - If successful. FALSE - If the user interface can not set the current lot ID name. Usage STRING LotId; BOOL iret = SetLotIdName(name);
GetSerialNum Description
Returns the current serial number. This function will return false if there is no active program. Format BOOL GetSerialNum (STRING &serialno);
Return values
TRUE - If successful. FALSE - If the user interface can not get the current serial number. Usage STRING Curr_Serial_Num; BOOL iret = GetSerialNum(Curr_Serial_Num);
SetSerialNum Description
Sets the current serial number. This function will return false if there is no active program. Format BOOL SetSerialNum (STRING &serialno);
324
ASL Series Programming Guide
Miscellaneous Functions
Return values
TRUE - If successful. FALSE - If the user interface can not get the current serial number. Usage STRING Curr_Serial_Num; BOOL iret = SetSerialNum(Curr_Serial_Num);
ClearLotSummaryComments Description
Clears the lot summary comment field. Format BOOL ClearLotSummaryComments (void);
Return values
TRUE - If the successful. FALSE - If there is no active program. Usage BOOL iret = ClearLotSummaryComments (void);
AppendLotSummaryComments Description
Appends a string to the lot summary comment field. Note: the comments are printed below the Bin count on the screen. Keep in mind the comments might not show because there isn't enough room on the screen to show all the data. The comments should show clearly when a hard copy of the summary is Printed. Format BOOL AppendLotSummaryComments (void);
ASL Series Programming Guide
325
17 - Additional User Functions
Return values
TRUE - If successful. FALSE - If there is no active program. Usage STRING User_Comments; BOOL iret = AppendLotSummaryComments (User_Comments);
SetPlotData Description
Passes a DLogPlotData object into the datalog for a given test number. This object contains plotting information that will be placed in the datalog file. Each test with such data will be marked by a bitmap in the left region of the datalog. When the user clicks this bitmap, the plot will be displayed. NOTE — plot_data is not deleted automatically once it is passed into this function.
DO NOT DELETE plot_data after passing it into this function. Extensive use of this function is discouraged because of memory leak Only for short engineering debug. DO NOT use in production CAUTION
Format BOOL SetPlotData (short test_i, DLogPlotData *plot_data, short site_i = 1);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage
See Example_UI setplot.cpp for example code.
326
ASL Series Programming Guide
Miscellaneous Functions
GetProgramName Description
This function returns the name of the program from visualATE. This is the name that appears in the list box that appears when the user hits the ENGINEERING button in visualATE. Format BOOL GetProgramName (STRING &program_name);
Return values
TRUE - If successful. FALSE - If the user interface can not get the current program name. Usage STRING Program_Name; BOOL iret = GetProgramName (Program_Name);
SetProgramName Description
This function sets the name of the program from visualATE. This is the name that appears in the list box that appears when the user hits the Engineering button in visualATE. Format BOOL SetProgramName (STRING &program_name);
Return values
TRUE - If successful. FALSE - If the user interface can not set the current program name. Usage STRING Program_Name;
ASL Series Programming Guide
327
17 - Additional User Functions
BOOL iret = SetProgramName (Program_Name);
OpenErrorMessage Description
Used to create an instance of the error box message and add the message to the c:\asl_nt\system\config\ErrorMessages.txt file. Format BOOL OpenErrorMessage (STRING &smessage);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Error_Message; BOOL iret = OpenErrorMessage (Error_Message);
CloseErrorMessage Description
Used to close an instance of the error box message and add the message to the c:\asl_nt\system\config\ErrorMessages.txt file. Format BOOL CloseErrorMessage (STRING &smessage);
Return values TRUE - If successful. FALSE - If unsuccessful. Usage STRING Error_Message;
328
ASL Series Programming Guide
Miscellaneous Functions
BOOL iret = CloseErrorMessage (Error_Message);
SendCommStatus Description
Sends a string to the comm status box (in the bottom right hand portion of the screen). Format BOOL SendCommStatus(STRING &smessage);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Status_Message; BOOL iret = CloseErrorMessage (Status_Message);
OnNewLot Description
Starts a new lot as if the user selected "new lot" from the tool bar menu. An error "must save current lot before starting a new one...." will occur if OnNewLot() is called from within this function because the database for the current lot is open. A better place to call OnNewLot() is in user_next_device() or from handler driver code. Format BOOL OnNewLot (STRING name);
Return values
TRUE - If successful. FALSE - If unsuccessful.
ASL Series Programming Guide
329
17 - Additional User Functions
Usage STRING Lot_Name; BOOL iret = OnNewLot (Lot_Name);
GetLimitSetName Description
Returns the Current Limit Set name from visualATE. Format BOOL GetLimitSetName (STRING &limitset_name);
Return values
TRUE - If successful. FALSE - If the user interface can not get the current program name. Usage STRING Limit_Set_Name; BOOL iret = GetLimitSetName (Limit_Set_Name);
SetLimitSetName Description
Sets the Current Limit Set name from visualATE. Format BOOL SetLimitSetName (STRING &limitset_name);
Return values
TRUE - If successful. FALSE - If the user interface can not get the current program name.
330
ASL Series Programming Guide
Miscellaneous Functions
Usage STRING Limit_Set_Name; BOOL iret = SetLimitSetName (Limit_Set_Name);
GetDeviceName Description
This function returns the name of the Device from visualATE. Use SetDeviceName before using GetDeviceName. This function gets a user assigned variable which is not used by visualATE. The user must set the Devicename variable before calling this function. CAUTION
Format BOOL GetDeviceName (STRING &device_name);
Return values
TRUE - If successful. FALSE - If the user interface can not get the current device name. Usage STRING Device_Name; BOOL iret = GetDeviceName (Device_Name);
SetDeviceName Description
This function sets the name of the Device from visualATE. Format BOOL SetDeviceName (STRING &device_name);
Return values
TRUE - If successful.
ASL Series Programming Guide
331
17 - Additional User Functions
FALSE - If the user interface can not set the current device name. Usage STRING Device_Name; BOOL iret = SetDeviceName (Device_Name);
GetProgramModeCode Description
Returns a variable for general purpose use. Use SetProgramModeCode before using GetprogramModeCode. This function gets a user assigned variable which is not used by visualATE. The user must set the PrograModeCode variable before calling this CAUTION function. Format BOOL GetProgramModeCode (STRING &program_mode);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Gp_Variable; BOOL iret = GetProgramModeCode (Gp_Variable);
SetProgramModeCode Description
Sets a variable for general purpose use. Format BOOL SetProgramModeCode (STRING &program_mode);
332
ASL Series Programming Guide
Miscellaneous Functions
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Gp_Variable; BOOL iret = SetProgramModeCode (Gp_Variable);
GetProgramRevision Description
Returns a variable for general purpose use. Use SetProgramRevision before using GetProgramRevision. This function gets a user assigned variable which is not used by visualATE. The user must set the ProgramRevision variable before calling this CAUTION function. Format BOOL GetProgramRevision (STRING &program_revision);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Prog_Rev; BOOL iret = GetProgramRevision (Prog_Rev);
SetProgramRevision Description
Sets a variable for general purpose use.
ASL Series Programming Guide
333
17 - Additional User Functions
Format BOOL SetProgramRevision (STRING &program_revision);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Prog_Rev; BOOL iret = SetProgramRevision (Prog_Rev);
GetProgramTestCode Description
Returns a variable for general purpose use. Use SetProgramTestCode before using GetProgramTestCode. This function gets a user assigned variable which is not used by visualATE. The user must set the ProgramTestCode variable before calling this CAUTION function. Format BOOL GetProgramTestCode (STRING &program_test_code);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Gp_Var; BOOL iret = GetProgramTestCode (Gp_Var);
334
ASL Series Programming Guide
Miscellaneous Functions
SetProgramTestCode Description
Sets a variable for general purpose use. Format BOOL SetProgramTestCode (STRING &program_test_code);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Gp_Var; BOOL iret = SetProgramTestCode (Gp_Var);
GetOperationStepNumber Description
Returns a variable for general purpose use. Use SetOperationStepNumber before using GetOperationStepNumber. This function gets a user assigned variable which is not used by visualATE. The user must set the OperationStepNumber variable before CAUTION calling this function. Format BOOL GetOperationStepNumber (STRING &step_number);
Return values
TRUE - If successful. FALSE - If unsuccessful.
ASL Series Programming Guide
335
17 - Additional User Functions
Usage STRING Gp_Var; BOOL iret = GetOperationStepNumber (Gp_Var);
SetOperationStepNumber Description
Sets a variable for general purpose use. Format BOOL SetOperationStepNumber (STRING &step_number);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Gp_Var; BOOL iret = SetOperationStepNumber (Gp_Var);
GetTotalPass Description
Returns total number of passed parts. If site = 0, the total is for all sites. Otherwise, the total is for the specified site. Format BOOL GetTotalPass (int &total_pass, int site = 0);
Return values
TRUE - If successful. FALSE - If unsuccessful.
336
ASL Series Programming Guide
Miscellaneous Functions
Usage STRING Total_Pass; BOOL iret = GetTotalPass (Total_Pass, 0);
GetTotalFail Description
Returns total number of failed parts. If site = 0, the total is for all sites. Otherwise, the total is for the specified site. Format BOOL GetTotalFail (int &total_fail, int site = 0);
Return values
TRUE - If successful. FALSE - If unsuccessful. Usage STRING Total_Fail; BOOL iret = GetTotalFail (Total_Fail, 0);
ASL Series Programming Guide
337
17 - Additional User Functions
Modal Dialog Overview The Modal Dialog facilitates interaction between the user and a visualATE Test Program through a pop-up window that can contain the following features: •
An OK button (the "ENTER" key is equivalent)
•
A Cancel button (the "upper right corner X " is equivalent)
•
A YES button
•
A NO button
•
A read/write edit field (39 characters max, scrollable w/left and right arrow keys)
•
Top & bottom text fields (39 characters max, scrollable with up and down arrow keys)
•
Left & right text fields (17 characters max)
See example below:
Figure 47. Dialog Function Window
The Modal Dialog functions used to describe the window characteristics are considered setup commands in that they do not cause a dialog window to be generated. Once the window has been described in terms of what buttons will exist and what text will be used, a separate function must be issued to perform the actual construction and display of the box. After the Modal Dialog box has been generated, the displayed buttons and text edit field may be interrogated for user interaction.
338
ASL Series Programming Guide
Modal Dialog Overview
Support Code for Modal Dialog Code must be added to the files generated by Create in order to use Modal Dialog. These files are: •
user.cpp
•
user.h
•
Any user written test function where Modal Dialog is required
The code is: ModalDialogDescription mdb;(creates class object and allocates memory) #include "ModalDialogDescription.h" (contains Modal Dialog command definitions) #include "ui.h"(contains RunModalDialog command definition) RunModalDialog;(invokes the Modal Dialog resource)
In the file, user.cpp, 1 line must be added as follows: //======================================================= // USER.CPP //======================================================== #include "asl.h" // Disable warning C4244 "conversion from 'const double' to //'float', possible loss of data" #pragma warning (disable : 4244) #include "USER.H" //************** Add the following line *************** ModalDialogDescription mdb; //create class object, allocate memory //***************************************************** extern "C" __declspec(dllexport) void user_init (void); extern "C" __declspec(dllexport) void user_load (void); extern "C" __declspec(dllexport) void user_start_lot (void); extern "C" __declspec(dllexport) void user_wait_sot (void); extern "C" __declspec(dllexport) void user_start_test (void); extern "C" __declspec(dllexport) void user_end_test (void); extern "C" __declspec(dllexport) void user_next_device (void); extern "C" __declspec(dllexport) void user_end_lot (void); extern "C" __declspec(dllexport) void user_exit (void); extern "C" __declspec(dllexport) void user_F12 (void); //{ASL_CREATE BEGIN BOARDS_FROM_LIST_PROPERTIES //To change code between these comments, use the List Properties dialog. void board_ptr_init(void) { } .
ASL Series Programming Guide
339
17 - Additional User Functions
. .
In the user.h file, 3 lines must be added as follows: //========================================================== // USER.H //========================================================= // {ASL_CREATE BEGIN BOARDS_FROM_LIST_PROPERTIES // To change code between these comments, use the List Properties // dialog. void board_ptr_init(void); void board_hardware_init(void); // ASL_CREATE END BOARDS_FROM_LIST_PROPERTIES} // This file must be present even if no user code is placed below //************** Add the following three lines *************** #include "ModalDialogDescription.h" //Modal Dialog command //definitions #include "ui.h" //Modal Dialog "run" command definition extern ModalDialogDescription mdb; //externally declare class //object //************************************************************
In the user written test function, 1 line must be added as follows: //========================================================== // modaldialogtest.cpp (User function) // void modaldialogtest_user_init(test_function& func) // void modaldialogtest(test_function& func) //========================================================== #include "asl.h" // Disable warning C4244 "conversion from 'const double' to // 'float', possible loss of data" #pragma warning (disable : 4244) #include "modaldialogtest.h" // !!!! User #includes and externs can be placed between the // comments // !!!! //************************************************************** void modaldialogtest_user_init(test_function& func) { modaldialogtest_params *ours; ours = (modaldialogtest_params *)func.params; // // // //
340
!!!! User initialization code below this comment (do not remove comment) !!!! User initialization code above this comment (do not remove comment)
ASL Series Programming Guide
Modal Dialog Overview
} //************************************************************** void modaldialogtest(test_function& func) { // The two lines below must be the first two in the function. modaldialogtest_params *ours; ours = (modaldialogtest_params *)func.params; . .//any Modal Dialog setup commands... . //********************* Add this line ******************** BOOL rtrn = RunModalDialog (&mdb);//invoke the Modal Dialog resource //******************************************************** } //modaldialogtest
The functions used to setup and construct the Modal Dialog are described on the following pages.
SetStatusDialogHasYesButton Description
This function will insert a YES button on the Modal Dialog box. Default is no button. See the Figure 48. Format void SetStatusDialogHasYesButton(BOOL status);
Valid Arguments:
status 1 = TRUE 0 = FALSE (default)
ASL Series Programming Guide
341
17 - Additional User Functions
Usage mdb.SetStatusDialogHasYesButton(1);
Figure 48. Modal Dialog Box with YES Button
SetStatusDialogHasNoButton Description
This function will insert a NO button on the Modal Dialog box. Default is no button. See Figure 49. Format void SetStatusDialogHasNoButton(BOOL status)
Valid Arguments
status 1 = TRUE 0 = FALSE (default) Usage mdb.SetStatusDialogHasNoButton(1);
342
ASL Series Programming Guide
Modal Dialog Overview
Figure 49. Modal Dialog Box with “NO” Button
SetStatusDialogHasOKButton Description
This function will insert an OK button on the Modal Dialog box. Default is no button. See Figure 50. Format void SetStatusDialogHasOKButton(BOOL status);
Valid Arguments:
status 1 = TRUE 0 = FALSE (default) Usage mdb.SetStatusDialogHasOKButton(1);
ASL Series Programming Guide
343
17 - Additional User Functions
Figure 50. Modal Dialog Box with “OK” Button
SetStatusDialogHasCancelButton Description
This function will insert a CANCEL button on the Modal Dialog box. Default is no button. See Figure 51. Format void SetStatusDialogHasCancelButton(BOOL status);
Valid Arguments:
status 1 = TRUE 0 = FALSE (default) Usage mdb.SetStatusDialogHasCancelButton(1);
344
ASL Series Programming Guide
Modal Dialog Overview
Figure 51. Modal Dialog Box with “Cancel” Button
SetDialogEditFieldLeftSideText Description
This function will display the specified character string in the left text field. See Figure 52. Format void SetDialogEditFieldLeftSideText(const char *s);
Valid Arguments:
character string max 17 alpha-numeric characters Usage db.SetDialogEditFieldLeftSideText("Left, up to 17");
ASL Series Programming Guide
345
17 - Additional User Functions
Figure 52. Modal Dialog Box with “Left String Edit” Box
SetDialogEditFieldRightSideText Description
This function will display the specified character string in the right text field. See Figure 53. Format void SetDialogEditFieldRightSideText(const char *s),
Valid Arguments:
character string max 17 alpha-numeric characters Usage mdb. SetDialogEditFieldRightSideText("Right, up to 17");
346
ASL Series Programming Guide
Modal Dialog Overview
Figure 53. Modal Dialog Box with “Right String Edit” Box
SetDialogTopMessage Description
This function will display the specified character string in the top text field. The text field can be scrolled by using the up and down arrow keys. See Figure 54. Format void SetDialogTopMessage(const char *s);
Valid Arguments:
character string max 39 alpha-numeric characters Usage mdb. SetDialogTopMessage("Top field, up to 39 characters.........");
ASL Series Programming Guide
347
17 - Additional User Functions
Figure 54. Modal Dialog Box with Top String Edit Box
SetDialogBottomMessage Description
This function will display the specified character string in the bottom text field. The text field can be scrolled by using the up and down arrow keys. See Figure 55. Format void SetDialogBottomMessage(const char *s);
Valid Arguments:
character string max 39 alpha-numeric characters Usage
mdb.SetDialogBottomMessage("Bottom field, up to 39 characters......");
348
ASL Series Programming Guide
Modal Dialog Overview
Figure 55. Modal Dialog Box with Bottom String Edit Box
SetDialogEditFieldInitializationText Description
This function will display the specified character string in the edit text field. The text field can be scrolled by using the left and right arrow keys. See Figure 56. Format void SetDialogEditFieldInitializationText(const char *s);
Valid Arguments:
character string max 39 alpha-numeric characters Usage mdb.SetDialogEditFieldInitializationText("...default info, up to 39 characters");
ASL Series Programming Guide
349
17 - Additional User Functions
Figure 56. Modal Dialog Box with “Specified String Edit” Box
RunModalDialog Description
This function invokes the Modal Dialog resource and constructs the box based upon the information programmed with the SetStatusDialogHas statements. A FALSE return value indicates that the dialog was not displayed or that information from the dialog was not successfully returned. Use of the return is not mandatory. Format BOOL RunModalDialog(&user_defined_class_object);
Valid Arguments
class object as defined by user Valid Returns
1 = TRUE 0 = FALSE Usage BOOL rtrn = RunModalDialog(&mdb); //return used RunModalDialog(&mdb);//return not used
350
ASL Series Programming Guide
Modal Dialog Overview
GetStatusDialogYesButtonHasBeenPushed Description
This function returns the button activation status: a 1 (TRUE) if the YES button has been pushed, a 0 (FALSE) if the button has not been pushed. Format BOOL GetStatusDialogYesButtonHasBeenPushed(void);
Valid Arguments:
none Usage BOOL rtrn = mdb.GetStatusDialogYesButtonHasBeenPushed();
GetStatusDialogNoButtonHasBeenPushed Description
This function returns the button activation status: a 1 (TRUE) if the NO button has been pushed, a 0 (FALSE) if the button has not been pushed. Format BOOL GetStatusDialogNoButtonHasBeenPushed(void);
Valid Arguments:
none Usage BOOL rtrn = mdb.GetStatusDialogNoButtonHasBeenPushed();
ASL Series Programming Guide
351
17 - Additional User Functions
GetStatusDialogOKButtonHasBeenPushed Description
This function returns the button activation status: a 1 (TRUE) if the OK button has been pushed, a 0 (FALSE) if the button has not been pushed. Format BOOL GetStatusDialogOKButtonHasBeenPushed(void);
Valid Arguments:
none Usage BOOL rtrn = mdb.GetStatusDialogOKButtonHasBeenPushed();
GetStatusDialogCancelButtonHasBeenPushed Description
This function returns the button activation status: a 1 (TRUE) if the Cancel button has been pushed, a 0 (FALSE) if the button has not been pushed. Format BOOL GetStatusDialogCancelButtonHasBeenPushed(void);
Valid Arguments:
none Usage BOOL rtrn = mdb.GetStatusDialogCancelButtonHasBeenPushed();
352
ASL Series Programming Guide
Modal Dialog Overview
GetEditFieldText Description
This function returns the character string appearing the text edit field. Format const char *GetEditFieldText(void);
Valid Arguments:
none Usage const char rtrn = mdb.GetEditFieldText();
Code Example 1 The following is a test function that defines and generates a Modal Dialog with all buttons and all text fields under control of visualATE pass parameters. //======================================================= // modaldialogtest.cpp (User function) // void modaldialogtest_user_init(test_function& func) // void modaldialogtest(test_function& func) //=============================================================== #include "asl.h" // Disable warning C4244 "conversion from 'const double' to // 'float', possible loss of data" #pragma warning (disable : 4244) #include "modaldialogtest.h" #include "ModalDialogDescription.h" #include "ui.h" // !!!! User #includes and externs can be placed between the // comments // !!!! // ************************************************************** void modaldialogtest_user_init(test_function& func) { modaldialogtest_params *ours; ours = (modaldialogtest_params *)func.params;
ASL Series Programming Guide
353
17 - Additional User Functions
// !!!! User initialization code below this comment (do not remove // comment) // !!!! User initialization code above this comment (do not remove // comment) } //************************************************************** void modaldialogtest(test_function& func) { //******The two lines below must be the first two in the function.******** modaldialogtest_params *ours; ModalDialogDescription mdb; //create a class object and //allocate memory mdb.SetStatusDialogHasOKButton (ours->ok); mdb.SetStatusDialogHasCancelButton (ours->cancel); mdb.SetStatusDialogHasYesButton (ours->yes); mdb.SetStatusDialogHasNoButton (ours->no); mdb.SetDialogEditFieldInitializationText (ours->EditFieldText); mdb.SetDialogEditFieldLeftSideText (ours->lefttext); mdb.SetDialogEditFieldRightSideText (ours->righttext); mdb.SetDialogTopMessage (ours->toptext); mdb.SetDialogBottomMessage (ours->bottomtext); BOOL iret = RunModalDialog (&mdb); //invoke the Modal Dialog //resource }//modaldialogtest
354
ASL Series Programming Guide
Modal Dialog Overview
Following is the output from the above code example.
Figure 57. Ouput from the Code Example 1
Code Example 2 The following is a test function that defines and generates a Modal Dialog with interrogation of the buttons and of the text edit field. //=============================================================== // modaldialogtest2.cpp (User function) // // void modaldialogtest2_user_init(test_function& func) // void modaldialogtest2(test_function& func) // //===============================================================
ASL Series Programming Guide
355
17 - Additional User Functions
#include "asl.h" // Disable warning C4244 "conversion from 'const double' to // 'float', possible loss of data" #pragma warning (disable : 4244) #include "modaldialogtest2.h" // !!!! User #includes and externs can be placed between the // comments // !!!! //*************************************************************** void modaldialogtest2_user_init(test_function& func) { modaldialogtest2_params *ours; ours = (modaldialogtest2_params *)func.params; // !!!! User initialization code below this comment (do not remove comment) // !!!! User initialization code above this comment (do not remove comment) } //*************************************************************** void modaldialogtest2(test_function& func) {
// ******The two lines below must be the first two in the function.******** modaldialogtest2_params *ours; ours = (modaldialogtest2_params *)func.params; //-------setup the Modal Dialog and construct box-----------mdb.SetStatusDialogHasOKButton (ours->ok); mdb.SetStatusDialogHasCancelButton (ours->cancel); mdb.SetStatusDialogHasYesButton (ours->yes); mdb.SetStatusDialogHasNoButton (ours->no); mdb.SetDialogEditFieldInitializationText (ours->EditFieldInitText); mdb.SetDialogEditFieldLeftSideText (ours->lefttext); mdb.SetDialogEditFieldRightSideText (ours->righttext); mdb.SetDialogTopMessage (ours->toptext); mdb.SetDialogBottomMessage (ours->bottomtext); BOOL rtrn=RunModalDialog (&mdb); //invoke the Modal Dialog //resource //------interrogate the Modal Dialog and datalog results---------if(!rtrn) //check if successfull { func.dlog->power = POWER_UNIT; func.dlog->set_test_no(1); func.dlog->test_val ((float)0); //if not, output 0
356
ASL Series Programming Guide
Modal Dialog Overview
} else { func.dlog->power = POWER_UNIT; func.dlog->set_test_no(1);//if so, output 1 func.dlog->test_val((float)1); func.dlog->set_test_no(2); float v = (float) atoi (mdb.GetEditFieldText()); //get user // input and func.dlog->test_val(v); //convert to numeric for this example. func.dlog->set_test_no(3); if (mdb.GetStatusDialogOKButtonHasBeenPushed()) //ok? func.dlog->test_val((float)1);//if so, 1 else func.dlog->test_val((float)0);//if not, 0 func.dlog->set_test_no(4); if (mdb.GetStatusDialogCancelButtonHasBeenPushed())//Cancel? func.dlog->test_val((float)1);//if so, 1 else func.dlog->test_val((float)0);//if not, 0 func.dlog->set_test_no(5); if (mdb.GetStatusDialogYesButtonHasBeenPushed()) //yes? func.dlog->test_val((float)1);//if so, 1 else func.dlog->test_val((float)0);//if not, 0 func.dlog->set_test_no(6); if (mdb.GetStatusDialogNoButtonHasBeenPushed()) //no? func.dlog->test_val((float)1);//if so, 1 else func.dlog->test_val((float)0);//if not, 0 } }//modaldialogtest2
ASL Series Programming Guide
357
17 - Additional User Functions
The following is the output from the above code example.
Figure 58. Output of Example 2
358
ASL Series Programming Guide
Datalog Functions
Datalog Functions Functions func.dlog->power Description
Sets the display scaling for the value, min and max columns in the datalog output. Display over-range is indicated by “Display Error” in the result column. This function call must be made before any results are displayed and is active for all tests following until changed. Format func.dlog->power=scale
Valid Arguments: scale POWER_TERA (e12) POWER_GIGA (e9) POWER_MEGA (e6) POWER_KILO (e3) POWER_UNIT (e0, no scaling) POWER_MILLI (e-3) POWER_MICRO (e-6) POWER_NANO (e-9) POWER_PICO (e-12) POWER_FEMTO (e-15) POWER_HEX (HEX)
Usage func.dlog->power = POWER_MILLI;
func.dlog->set_test_no Description
Sets the current sub-test number that determines which pass-bin limits will be used to verify the result of the test. Valid numbers are 01 through 999.
ASL Series Programming Guide
359
17 - Additional User Functions
Format short set_test_no(test_number);
Valid Arguments: test_number 1 to 999
Usage func.dlog->set_test_no(237);
func.dlog->test_val Description
Passes the test result for data logging and comparison against the limits defined by set_test_no(). The type should either be float or unsigned short. The compiler will require explicit casting of the value if the type is not obvious from the variable. Format test_val(result);
Valid Arguments: result
measured or calculated value in numerical or variable form Usage func.dlog->test_val(measured_voltage);
func.dlog->tests[ ].passed_fail Description
Determines if the referenced test passed or failed the verification performed by test_val(). The tests are referenced by placing the numeric value of (test_num -1) within the brackets. This is an offset of one due to array element number beginning with zero. This function is used in conjunction with func.dlog->set_bin().
360
ASL Series Programming Guide
Datalog Functions
Format func.dlog->tests[short (test_num – 1)].passed_fail;
Valid Arguments: test_number 1 to 999
Usage if (func.dlog->tests[5].passed_fail == FAILED_TEST) func.dlog->set_bin(16); //if fail, then bin 16. Test number in variable test_num.
func.dlog->set_bin Description
Sets the fail bin. This function is used in conjunction with func.dlog->tests[ ].passed_fail. Valid numbers are from 5 to 32. Format set_bin(short fail_bin);
Valid Arguments: fail_bin 5 to 32
Usage
see func.dlog->tests[ ].passed_fail above.
func.dlog->tests[ ].display_results Description
Determines if datalog is enabled for the referenced test as noted by (test_num – 1). Returns1 for true, 0 for false. This function is used in conjunction with func.dlog>display_results().
ASL Series Programming Guide
361
17 - Additional User Functions
Format func.dlog->tests[short (test_num – 1)].display results;
Valid Arguments: test_num 1 to 999
Usage if (func.dlog->tests[5].display_results) func.dlog->display_results();
func.dlog->display_results Description
Displays the results. This function is used in conjunction with func.dlog->tests[ ].display_results which determines if datalog is enabled. Format display_results(void);
Valid Arguments none
Usage
see func.dlog->tests[ ].display_results above.
pass_bins[ ] Description
A four element array that returns a TRUE or FALSE depending on the state of elements 0 – 3 representing Bin1 through Bin4. If the current bin is Bin1, then pass_bins[0] will return a TRUE. This is useful in deciding whether to run subsequent tests.
362
ASL Series Programming Guide
Datalog Functions
Format boolean pass_bins[short x];
Valid Arguments: x 0 to 3
Usage if(pass_bins[0]) //if current bin is Bin1, then run the following tests; else, bail out. { Icc_test(); Vio_test(); } else Exit_Program(); //user written function
Code Example Code //---set up and use the datalogger--------------------------------func.dlog->power = POWER_MICRO; //set range to micro func.dlog->set_test_no(1); //set test # in this function to 1 func.dlog->test_val(meas_ftime); //pass the test result if(func.dlog->tests[func.dlog>current_test].passed_fail==FAILED_TEST) func.dlog->set_bin(16); //if fail, bin 16 if(func.dlog->tests[func.dlog->current_test].display_results) func.dlog->display_results(); //if datalog is on, display results //-----------------------------------------------------------------
The above datalog example uses a special element in the place of (test_num – 1) within the tests[ ].passed_fail function and the tests[ ].display_results function. This element, current_test, contains the value of (test_num – 1).
Test Limits The limits are stored in the structure func.dlog for each sub-test and for each of the 4 pass bins as: float min_limit = func.dlog->tests[test_num 1].f_min_limit_val[bin_num - 1]);
ASL Series Programming Guide
363
17 - Additional User Functions
float max_limit = func.dlog->tests[test_num - 1].f_max_limit_val[bin_num 1]);
364
ASL Series Programming Guide
A ASL 1000 INTERCONNECTS The tables on the following pages describe the connections and pins configured in the 21-slot ASL 1000 test card cage. Each table lists the connections for one slot; tables are arranged in numerical order, from Slot 1 to Slot 21.
ASL Series Programming Guide
365
366
ASL Series Programming Guide
B20
B22
J2
J2
B30
B18
J2
B32
B31
J2
J2
B29
J2
J2
B27
J2
B28
B25
J2
J2
B23
J2
B24
B21
J2
B26
B19
J2
J2
B17
J2
J2
Pin
Conn.
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
DRV_14
3 FORCE
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
-SENSE
DRV_1
4 FORCE
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
4 FORCE
TMU EXT DRV3
IO1
EXT_IN_2
DRV_0
EXT CLK IN
RMS IN 3
IO2
SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE RMS IN 1
DRV_15
3 FORCE
EXT_FBACK_1
DRV_13
2 FORCE
TMU EXT DRV2
DRV_12
2 FORCE
1 FORCE
DRV_10
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
2 FORCE
TMU EXT DRV1
DAC_AGND PREC_REF_FORCE
DRV_11
TMU HIZ DUT4
5 FORCE
DCC
EXT_GND_REF
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Slots Table 14. ASL 1000 Interconnects: Slot 1
A29 A30 A31 A32
J2
J2
J2
J2
J2
A28
A19
J2
J2
A18
J2
A27
A17
J2
J2
C32
J2
A26
C31
J2
A25
C30
J2
J2
C29
J2
J2
C28
J2
A24
C27
J2
J2
C26
J2
A23
C25
J2
A22
C24
J2
J2
C23
J2
J2
C22
J2
A20
C21
J2
A21
C20
J2
J2
C19
J2
J2
C17 C18
J2
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
ASL Series Programming Guide
367 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
Slots
Table 15. ASL 1000 Interconnects: Slot 2
368 Pin
B32 B30 B28 B26 B24 B22 B20 B18
B31 B29 B27 B25 B23 B21 B19 B17
Conn
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
ASL Series Programming Guide
J3
J3
J3
J3
J3
J3
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
IO2
EXT_IN_2
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
DRV_0
TMU EXT DRV3
IO1
4 FORCE
EXT CLK IN
RMS IN 3
SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE RMS IN 1
DRV_14
3 FORCE
EXT_FBACK_1
DRV_15
3 FORCE
TMU EXT DRV1
DRV_13
2 FORCE
TMU EXT DRV2
DRV_12
2 FORCE
1 FORCE
DRV_10
2 FORCE
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
DRV_11
TMU HIZ DUT4
5 FORCE
DCC
EXT_GND_REF
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 16. ASL 1000 Interconnects: Slot 3
Pin
A32 A31 A30 A29 A28 A27 A26 A25 A24 A23 A22 A21 A20 A19 A18 A17
C32 C31 C30 C29 C28 C27 C26 C25 C24 C23 C22 C21 C20 C19 C18 C17
Conn
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
J3
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
ASL Series Programming Guide
369 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PV1 & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
GND
CH2-6
CH2-5
GND
EXT_TRIG
GND
CH2-4
CH2-3
GND
CH2-2
CH2-1
GND
GND
CH1-6
CH1-5
GND
EXT_CLK
GND
CH1-4
CH1-3
GND
CH1-2
CH1-1
GND
PRO-DIG
Slots
Table 17. ASL 1000 Interconnects: Slot 4
370 B27 B29 B31
B18 B20 B22 B24 B26 B28 B30 B32
J5 J5
J5 J5 J5 J5 J5 J5 J5 J5
B25
J5 J5
B21 B23
B19
J5
J5
B17
J5
J5
Pin
Conn
ASL Series Programming Guide CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
IO2
EXT_IN_2
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
DRV_0
TMU EXT DRV3
IO1
4 FORCE
EXT CLK IN
RMS IN 3
SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE RMS IN 1
DRV_14
3 FORCE
EXT_FBACK_1
DRV_15
3 FORCE
TMU EXT DRV1
DRV_13
2 FORCE
TMU EXT DRV2
DRV_12
2 FORCE
1 FORCE
DRV_10
2 FORCE
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
DRV_11
TMU HIZ DUT4
5 FORCE
DCC
EXT_GND_REF
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 18. ASL 1000 Interconnects: Slot 5
ASL Series Programming Guide
C6 C7 C8 C9 C10 C11 C12 C13 C14 C15 C16
A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13
J5 J5 J5 J5 J5 J5 J5 J5 J5 J5 J5
J5 J5 J5 J5 J5 J5 J5 J5 J5 J5 J5 J5 J5
A15
C5
J5
A16
C4
J5
J5
C3
J5
J5
C2
J5
A14
C1
J5
J5
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
371 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
Slots
Table 19. ASL 1000 Interconnects: Slot 6
372
ASL Series Programming Guide B16
B1 B3 B5 B7
J5
J5
J5
J5
J5
B15
B14
J5
J5
B12
J5
B13
B10
J5
J5
B8
J5
B9
B6
J5
B11
B4
J5
J5
B2
J5
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
3 FORCE
3 FORCE
DRV_6
DRV_5 DRV_7
1 FORCE
-SENSE
DRV_2 DRV_4
1 FORCE
DRV_3
4 FORCE 1 FORCE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
DRV_0
TMU EXT DRV3
IO1
EXT_IN_2
4 FORCE
EXT CLK IN
RMS IN 3
IO2
SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE RMS IN 1
DRV_15 DRV_14
3 FORCE
EXT_FBACK_1
DRV_13
2 FORCE
TMU EXT DRV2
DRV_10 DRV_12
2 FORCE
TMU EXT DRV1
DAC_AGND PREC_REF_FORCE
2 FORCE
1 FORCE
DCC
EXT_GND_REF
DRV_11
5 FORCE
CHANNEL 8
CHANNEL 7
CHANNEL 6
CHANNEL 5
CHANNEL 4
CHANNEL 3
CHANNEL 2
CHANNEL 1
DDD(M)
5 FORCE
TMU HIZ DUT3 TMU HIZ DUT4
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
Table 20.
J5
Pin
Conn
A - ASL 1000 Interconnects
ASL 1000 Interconnects: Slot 7
ASL Series Programming Guide C14 C15 C16
J1
J1
J1
C13
C8 EXT CLOCK
J1
J1
C7 EXT GND SENS
J1
C12
C6 EXT ADC STB
J1
J1
C5 EXT IN1
J1
C11
C4 EXT IN2
J1
J1
C3 EXT DRV2
J1
C9
C2 EXT IN3
J1
C10
C1 EXT DRV1
J1
J1
A16
J1
J1
A15
A10
J1
J1
A9
J1
A14
A8 EXT DATA
J1
J1
A7 CH1 SENSE
J1
A13
A6 CH1 GUARD
J1
J1
A5 CH1 FORCE
J1
A11
A4
J1
A12
A3 CH0 SENSE
J1
J1
A2 CH0 GUARD
J1
A1 CH0 FORCE
DVI
J1
Pin
J1
Conn
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
373
CH1 OUT OUT
CH1 DUT OUT
CH1 RMS MTR
CH1 FEEDBACK
CH1 EXT DRV
CH1 LOAD CONN
CH1 OUT 2
DUT OUT OUT
EXT REF
DUT OUT
RMS METER
CH0 FEEDBACK
EXT RLY DRV
EXT LOAD CONN
DUT OUT 2
CH1 POS IN
CH1 NEG IN
CH1 PICO NEG
CH1 NEG OUT
CH1 PICO POS
CH1 POS OUT
EXT DRV 2
DUT POS IN
EXT DRV 1
DUT NEG IN
EXT PICO NEG
DUT NEG OUT
EXT PICO POS
DUT POS OUT
DOAL
CH2 FEEDBACK
CH3 FEEDBACK
CH2 3 BYPASS
CH2 DUT POS
CH2 DUT NEG
CH2 PICO POS
CH2 PICO POS
CH3 DUT POS
CH2 3 CONNECT
CH3 DUT NEG
CH3 PICO NEG
CH3 PICO POS
LCB
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
Slots
Table 21. ASL 1000 Interconnects: Slot 8
374 B13
B12 B11 CH1 MEAS B10 B5 B6 B7 B8 B9
J1
J1 J1 J1 J1 J1 J1 J1 J1
CH1 GUARD
ASL Series Programming Guide EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT DRV1
EXT DATA
CH1 SENSE
B15 B14
J1
CH1 FORCE
CHO MEAS
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
J1
B17
B18
J1
B16
B19
J1
J1
B20
J1
J1
Pin
Connector
A - ASL 1000 Interconnects
Table 22. ASL 1000 Interconnects: Slot 9
ASL Series Programming Guide C27 C28 C29
J1 J1 J1
C32
C26
J1
J1
C25
J1
C31
C24 EXT CLOCK
J1
C30
C23 EXT GND SENS
J1
J1
C22 EXT ADC STB
J1
J1
C21 EXT IN1
J1
C18 EXT IN3
J1 C19 EXT DRV2
C17 EXT DRV1
J1
C20 EXT IN2
A32
J1
J1
A31
J1
J1
A29
A28
J1
A30
A27
J1
J1
A26
J1
A25
J1
A22 CH1 GUARD
J1
J1
A21 CH1 FORCE
J1
A23 CH1 SENSE
A20
J1
A24 EXT DATA
A19 CH0 SENSE
J1
J1
A18 CH0 GUARD
J1
A17 CH0 FORCE
DVI
J1
Pin
J1
Conn
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
CHANNEL 8
CHANNEL 7
CHANNEL 6
CHANNEL 5
CHANNEL 4
CHANNEL 3
CHANNEL 2
CHANNEL 1
DDD(S)
375
CH1 OUT OUT
CH1 DUT OUT
CH1 RMS MTR
CH1 FEEDBACK
CH1 EXT DRV
CH1 LOAD CONN
CH1 OUT 2
DUT OUT OUT
EXT REF
DUT OUT
RMS METER
CH0 FEEDBACK
EXT RLY DRV
EXT LOAD CONN
DUT OUT 2
CH1 POS IN
CH1 NEG IN
CH1 PICO NEG
CH1 NEG OUT
CH1 PICO POS
CH1 POS OUT
EXT DRV 2
DUT POS IN
EXT DRV 1
DUT NEG IN
EXT PICO NEG
DUT NEG OUT
EXT PICO POS
DUT POS OUT
DOAL
CH4 FEEDBACK
CH1 FEEDBACK
CH1 4 BYPASS
CH4 DUT POS
CH4 DUT NEG
CH4 PICO POS
CH4 PICO POS
CH1 DUT POS
CH1 4 CONNECT
CH1 DUT NEG
CH1 PICO NEG
CH1 PICO POS
LCB
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_REF2
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
Slots
Table 23. ASL 1000 Interconnects: Slot 10
376 Pin
B21 B22 B23 B24 B25 B26 B27 B28
B21 B22 B23 B24 B25 B26 B27 B28
Conn
J4
J4
J4
J4
J4
J4
J4
J4
J1
J1
ASL Series Programming Guide
J1
J1
J1
J1
J1
J1
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
DRV_0
TMU EXT DRV3
IO1
IO2
4 FORCE
EXT CLK IN
RMS IN 3
RMS IN 1
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
3 FORCE
TMU EXT DRV2
DRV_15
3 FORCE
1 FORCE
DRV_13
2 FORCE
1 FORCE
DRV_12
2 FORCE
EXT DRV1
DRV_10
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
2 FORCE
TMU EXT DRV1
PREC_REF_FORCE DIFF_IN_NEG
DRV_11
TMU HIZ DUT4
5 FORCE
EXT_GND_REF
DCC
DAC_AGND
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
CH1 MEAS
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 MEAS
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 24. ASL 1000 Interconnects: Slot 11
ASL Series Programming Guide
A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 A16
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
C16
A5
J4
C15
A4
J4
J4
A3
J4
J4
A2
J4
C14
A1
J4
J4
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
377 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
GND
CH2-6
CH2-5
GND
EXT_TRIG
GND
CH2-4
CH2-3
GND
CH2-2
CH2-1
GND
GND
CH1-6
CH1-5
GND
EXT_CLK
GND
CH1-4
CH1-3
GND
CH1-2
CH1-1
GND
PRO-DIG
Slots
Table 25. ASL 1000 Interconnects: Slot 12
378 Pin
B20 B19 B18 B17 B16 B15 B14 B13
B12 B11 B10 B5 B6 B7 B8 B9
Conn
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
ASL Series Programming Guide
J4
J4
J4
J4
J4
J4
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
DRV_0
TMU EXT DRV3
IO1
IO2
4 FORCE
EXT CLK IN
RMS IN 3
RMS IN 1
SERVO_TRIGGER
EXT_FBACK_1
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
TMU EXT DRV2
DRV_14
3 FORCE
TMU EXT DRV1
DRV_15
3 FORCE
1 FORCE
DRV_13
2 FORCE
1 FORCE
DRV_12
2 FORCE
EXT DRV1
DRV_10
DRV_9
2 FORCE
TMU HIZ DUT4
5 FORCE
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
DRV_11
TMU HIZ DUT3
DCC
EXT_GND_REF
5 FORCE
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
5 FORCE
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
CH1 MEAS
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 MEAS
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 26. ASL 1000 Interconnects: Slot 13
C21 C22 C23 C24 C25 C26 C27 C28 C29 C30 C31 C32
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
J4
C20
J4
C19
J4
A32
J4
J4
A31
J4
C17
A30
J4
C18
A29
J4
J4
A28
J4
J4
A27
J4
A24
J4
A26
A23
J4
A25
A22
J4
J4
A21
J4
J4
A19 A20
J4
J4
J4
A17 A18
J4
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
ASL Series Programming Guide
379 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
Slots
Table 27. ASL 1000 Interconnects: Slot 14
380 B5 CH1 FORCE B7
J6
J6
ASL Series Programming Guide B13 CH5 FORCE B15 CH4 FORCE
B2 B4 CH2 SENSE B6 B8 CH0 SENSE B10 CH7 SENSE B12 CH6 SENSE B14 CH5 SENSE B16 CH4 SENSE
J6
J6
J6
J6
J6
J6
J6
J6
J6
J6
J6
CH1 SENSE
CH3 SENSE
B9 CH7 FORCE B11 CH6 FORCE
J6
CH0 FORCE
CH2 FORCE
B3
J6
OVI
B1 CH3 FORCE
Pin
J6
Conn
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
DRV_14
3 FORCE
DRV_6
DRV_7
3 FORCE -SENSE
DRV_4 DRV_5
DRV_2
1 FORCE
1 FORCE
DRV_3
4 FORCE
1 FORCE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
4 FORCE
TMU EXT DRV3
IO1
IO2
DRV_0
EXT CLK IN
RMS IN 3
SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE RMS IN 1
DRV_15
3 FORCE
EXT_FBACK_1
DRV_13
2 FORCE
TMU EXT DRV2
DRV_12
2 FORCE
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
DRV_10
TMU EXT DRV1
DAC_AGND PREC_REF_FORCE
2 FORCE
1 FORCE
DCC
EXT_GND_REF
DRV_11
TMU HIZ DUT4
5 FORCE
CHANNEL 8
CHANNEL 7
CHANNEL 6
CHANNEL 5
CHANNEL 4
CHANNEL 3
CHANNEL 2
CHANNEL 1
DDD(S)
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 28. ASL 1000 Interconnects: Slot 15
A8 A9 A10 A11 A12 A13 A14 A15 A16
J6 J6 J6 J6 J6 J6 J6 J6
A2
J6
J6
A1
J6
A7
C16
J6
A6
C15
J6
J6
C14
J6
J6
C13
J6
A5
C12
J6
J6
C11
J6
A3
C10
J6
A4
C9
J6
J6
C8
J6
J6
C7
J6
C4
J6 C5
C3
J6
C6
C2
J6
J6
C1
J6
J6
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
ASL Series Programming Guide
381 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
Slots
Table 29. ASL 1000 Interconnects: Slot 16
382
ASL Series Programming Guide B29 B31
J6
B23
J6
J6
B21
J6
B25
B19
J6
B27
B17
J6
J6
B32
J6
J6
B28 B30
B26
J6
J6
B24
J6
J6
B20 B22
J6
B18
J6 J6
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
3 SENSE
CH1 GUARD
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
DIFF_IN_NEG
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
DRV_0
TMU EXT DRV3
IO1
EXT_IN_2
4 FORCE
EXT CLK IN
RMS IN 3
IO2
SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
RMS IN 1
DRV_14
3 FORCE
EXT_FBACK_1
DRV_15
3 FORCE
TMU EXT DRV2
DRV_13
2 FORCE
1 FORCE
DRV_12
2 FORCE
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DRV_10
TMU EXT DRV1
DAC_AGND PREC_REF_FORCE
2 FORCE
1 FORCE
DCC
EXT_GND_REF
DRV_11
TMU HIZ DUT4
5 FORCE
CHANNEL 8
CHANNEL 7
CHANNEL 6
CHANNEL 5
CHANNEL 4
CHANNEL 3
CHANNEL 2
CHANNEL 1
DDD(S)
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
CH0 MEAS
CH1 FORCE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 30. ASL 1000 Interconnects: Slot 17
ASL Series Programming Guide A14 A15 A16
J3 J3
A8
J3
A13
A7
J3
J3
A6
J3
J3
A5
J3
A12
A4
J3
J3
A3
J3
A11
A2
J3
J3
A1
J3
A9
C16
J3
A10
C15
J3
J3
C14
J3
J3
C13
J3
C8
J3
C12
C7
J3
J3
C6
J3
C11
C5
J3
J3
C4
J3
C9
C3
J3
C10
C2
J3
J3
C1
J3
J3
Pin
Conn
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
EXT IN3
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
383 -SENSE
3 FORCE
1 FORCE
1 FORCE
1 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
1 FORCE
1 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
2 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
EXT CLK IN
RMS IN 3
RMS IN 1
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
TMU EXT DRV3
IO1
IO2
TMU EXT DRV2
TMU EXT DRV1
TMU HIZ DUT4
TMU HIZ DUT3
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
DRV_6
DRV_7
DRV_5
DRV_4
DRV_2
DRV_3
DRV_1
DRV_0
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
SERVO_TRIGGER
EXT_FBACK_1
DRV_14
DRV_15
DRV_13
DRV_12
DRV_10
DRV_11
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
EXT_GND_REF
DCC
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
Slots
Table 31. ASL 1000 Interconnects: Slot 18
384 Pin
B2 B4 B6 B8 B10 B12 B14 B16
B1 B3 B5 B7 B9 B11 B13 B15
Conn
J3 J3 J3 J3 J3 J3 J3 J3
J3 J3
ASL Series Programming Guide J3 J3 J3 J3 J3 J3
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
CH0 SENSE
CH1 SENSE
CH2 SENSE
CH3 SENSE
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
CH1 FORCE
CH2 FORCE
CH3 FORCE
OVI
EXT CLOCK
EXT GND SENS
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
4 FORCE
TMU EXT DRV3
IO1
IO2
DRV_0
EXT CLK IN
RMS IN 3
RMS IN 1
EXT_FBACK_1 SERVO_TRIGGER
4 FORCE
4 FORCE
4 FORCE
3 FORCE
3 FORCE
2 FORCE
2 FORCE
TMU EXT DRV1
DRV_14
3 FORCE
TMU EXT DRV2
DRV_15
3 FORCE
1 FORCE
DRV_13
2 FORCE
1 FORCE
DRV_12
2 FORCE
EXT DRV1
DRV_10
DRV_9
2 FORCE
TMU HIZ DUT4
5 FORCE
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DAC_AGND
DRV_11
TMU HIZ DUT3
DCC
EXT_GND_REF
5 FORCE
TMU HIZ DUT2
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
5 FORCE
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
4 SENSE
3 SENSE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
CH1 MEAS
EXT DATA
CH1 SENSE
CH1 GUARD
CH1 FORCE
CH0 MEAS
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
A - ASL 1000 Interconnects
Table 32. ASL 1000 Interconnects: Slot 19
ASL Series Programming Guide
A9 A8 A7 A6 A5 A4 A3 A2 A1
C16 C15 C14 C13 C12 C11 C10 C9 C8 C7 C6 C5 C4
J2 J2 J2 J2 J2 J2 J2 J2 J2
J2 J2 J2 J2 J2 J2 J2 J2 J2 J2 J2 J2 J2
C1
A10
J2
J2
A11
J2
C2
A12
J2
J2
A13
J2
C3
A14
J2
J2
A15
A16
J2 J2
Pin
Connector
Table 34. ASL 1000 Interconnects: Slot 21
385 MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
Slots
Table 33. ASL 1000 Interconnects: Slot 20
386 B11 CH1 FORCE B9 B7 B5 B3 B1
J2 J2 J2 J2 J2 J2
ASL Series Programming Guide B12 CH1 SENSE B10 CH0 SENSE B8 B6 B4 B2
J2 J2 J2 J2 J2 J2 J2
CH4 SENSE
CH5 SENSE
CH6 SENSE
CH7 SENSE
B16 CH3 SENSE B14 CH2 SENSE
J2
CH4 FORCE
CH5 FORCE
CH6 FORCE
CH7 FORCE
CH0 FORCE
B15 CH3 FORCE B13 CH2 FORCE
OVI
J2
Pin
J2
Conn
3 FORCE
3 FORCE
2 FORCE
2 FORCE
EXT CLOCK
DRV_2 DRV_4 DRV_5 DRV_7
1 FORCE 1 FORCE 1 FORCE 3 FORCE
DRV_6
DRV_3
4 FORCE
-SENSE
DRV_1
EXT_DRV_1
EXT_DRV_2
EXT_ADC_IN2
EXT_ADC_IN1
PREC_REF_SENSE
EXT_IN_2
4 FORCE
TMU EXT DRV3
IO1
IO2
DRV_0
EXT CLK IN
RMS IN 3
RMS IN 1
EXT_FBACK_1 SERVO_TRIGGER
4 FORCE
4 FORCE
EXT GND SENS 4 FORCE
EXT ADC STB
EXT IN1
EXT IN2
EXT DRV2
TMU EXT DRV2
DRV_14
3 FORCE
TMU EXT DRV1
DRV_15
3 FORCE
1 FORCE
DRV_13
2 FORCE
1 FORCE
DRV_12
2 FORCE
CH1 MEAS
DRV_10
2 FORCE
DRV_9
DRV_8
DIFF_IN_REF
EXT_FBACK_2
DIFF_IN_POS
EXT_IN_1
DIFF_IN_NEG
PREC_REF_FORCE
DRV_11
TMU HIZ DUT4
5 FORCE
EXT_GND_REF
DCC
DAC_AGND
5 FORCE
TMU HIZ DUT3
5 FORCE
TMU HIZ DUT1
TMU CHAN A DUT1
TMU CHAN A DUT2
TMU CHAN B DUT1
TMU CHAN B DUT2
EXT ARM IN
TMU
TMU HIZ DUT2
SYNC 2
RMS IN 4
RMS IN 2
SYNC 3
SYNC 1
ACS OUT
ACS
5 FORCE
5 FORCE
5 SENSE
EXT DRV1
EXT DATA
CH1 SENSE
CH1 GUARD
4 SENSE
3 SENSE
CH0 MEAS
CH1 FORCE
2 SENSE
1 SENSE
-FORCE
PVI & PV3
CH0 SENSE
CH0 GUARD
CH0 FORCE
DVI
MUX_1_1
MUX_1_2
MUX_1_3
MUX_1_4
MUX_2_1
MUX_2_2
MUX_2_3
MUX_2_4
MUX_3_1
MUX_3_2
MUX_3_3
MUX_3_4
MUX_4_1
MUX_4_2
MUX_4_3
MUX_4_4
MUX_5_1
MUX_5_2
MUX_5_3
MUX_5_4
MUX_6_1
MUX_6_2
MUX_6_3
MUX_6_4
MUX_7_1
MUX_7_2
MUX_7_3
MUX_7_4
MUX_8_1
MUX_8_2
MUX_8_3
MUX_8_4
MUX
HVS_OUT_1
HVS_OUT_2
HVS_OUT_3
HVS_OUT_4
HVS_OUT_5
HVS_OUT_6
HVS_OUT_7
HVS_OUT_8
HVS_OUT_COM
HVS_REF_COM
HVS_POS_FORCE
HVS_REF1
HVS_NEG_FORCE
HVS_REF2
HVS
MVS_OUT_1
MVS_OUT_2
MVS_OUT_3
MVS_OUT_4
MVS_OUT_5
MVS_OUT_6
MVS_OUT_7
MVS_OUT_8
MVS_OUT_COM
MVS_REF_COM
MVS_POS_FORCE
MVS_REF1
MVS_NEG_FORCE
MVS_REF2
MVS
DUT 1 (-15V)
DUT 2 (RLY DRV)
DUT 3 (+15V)
DUT 5 (GND)
DUT 6
DUT 8
DUT 10
DUT 11 (RLY DRV)
DUT 12
DUT 13 (RLY DRV)
DUT 14
DUT16
PRO
OFS_OUT_1
OFS_OUT_2
OFS_OUT_3
OFS_OUT_4
OFS_OUT_5
OFS_OUT_6
OFS_OUT_7
OFS_OUT_8
OFS_OUT_COM
OFS_REF_COM
OFS_POS_FORCE
OFS_REF1
OFS_NEG_FORCE
OFS_REF2
OFS
OUT_14
OUT_13
OUT_12
OUT_11
OUT_10
OUT_9
OUT_8
OUT_7
OUT_6
OUT_5
OUT_4
OUT_3
OUT_2
OUT_1
OUT_28
OUT_27
OUT_26
OUT_25
OUT_24
OUT_23
OUT_22
OUT_21
OUT_20
OUT_19
OUT_18
OUT_17
OUT_16
OUT_15
LZB
GND
CH2-6
CH2-5
GND
EXT_TRIG
GND
CH2-4
CH2-3
GND
CH2-2
CH2-1
GND
GND
CH1-6
CH1-5
GND
EXT_CLK
GND
CH1-4
CH1-3
GND
CH1-2
CH1-1
GND
PRO-DIG
A - ASL 1000 Interconnects
Supplies
Supplies Table 35. Supply Pins Connectors
Pin
DCV
J5
C32, A32
+5V
J5
C20, A20
+5V
J4
B31
+5V
J5
C30, A30
+24V
J5
C29, A29
+65V
J5
C28, A28
+50V
J5
C27, A27
+16V
J4
B29
+16V
J5
C26, A26
Analog Ground Sense
J5
C25, A25
-5V
J5
C24, A24
-16V
J1
B29
-16V
J5
C23, A23
-50V
Comments
ASL Series Programming Guide
387
A - ASL 1000 Interconnects
Table 35. Supply Pins (Cont.) J5
C22, A22
-65V
J5
C19, A19
-24V
J5
C18, A18
+12V
J1
B31
+12V
388
ASL Series Programming Guide
Grounds
Grounds Table 36. Grounds Connector
Pin
GND
J5 J5 J5 J1 J4 J6 J6 J6 J6 J6 J6 J6 J6
C31, A31 C21, A21 C17, A17 B2, B4 B2, B4 C32, A32 C30, A30 C28, A28 C26, A26 C24, A24 C22, A22 C20, A20 C18, A18
GND GND GND GND GND GND GND GND GND GND GND GND GND
ASL Series Programming Guide
389
A - ASL 1000 Interconnects
Config Table 37. Config Pins Conn.
Pin
MCB
LCB
J1
B1
CH3_NEG_IN
J1
B3
CH3_POS_IN
J1
B30
CH4_POS_IN
J1
B32
CH4_NEG_IN
J4
B1
CH2_NEG_IN
J4
B3
CH2_POS_IN
J4
B30
CH1_POS_IN
J4
B32
CH1_NEG_IN
J6
C31
MCB_CHB_ON
J6
A31
MCB_CHA_GAIN
J6
C29
MCB_CHA_ON
J6
A29
MCB_CHB_GAIN
J6
C27
MCB_CHB_OFF
J6
A27
J6
C25
MCB_CHA_OFF
J6
A25
MCB_CHB_SW
CH2_POS_GAIN
J6
C23
J6
A23
MCB_CHA_SW
CH1_NEG_GAIN
J6
C21
J6
A21
MCB_CHB_IN
CH1_POS_GAIN
J6
C19
MCB_CHB_OUT
J6
A19
MCB_CHA_IN
J6
C17
MCB_CHA_OUT
J6
A17
390
CH3_NEG_GAIN
CH3_POS_GAIN
CH2_NEG_GAIN
ASL Series Programming Guide
CH4_NEG_GAIN
CH4_POS_GAIN
B ASL 3000 INTERCONNECTS The tables on the following pages describe the connections and pins configured in the ASL 3000 test head cage. Each table lists the connections for one slot; tables are arranged in numerical order, from Slot 1 to Slot 31.
ASL Series Programming Guide
391
B - ASL 3000 Interconnects
DUT Board Test Interface Figure B-1 shows the test interface with the latching mechanisms (4 latches) on what are called a latch plate assembly. On this assembly are the latches, tied together by a cable and actuated by two handles. The Latch Plate also has 3 gross alignment bushings. These bushings accept .500 diameter pins that are normally located on mating equipment. In the center of the latch plate is the POGO Retainer plate which helps hold the pogo blocks in a set position and also is used to locate/mount the OSP connectors. The POGO blocks are labeled PB1 through PB11 in a clockwise position. The OSP's are paired by odds and evens. In addition to the dedicated 8 RF OSP connections there are 4 auxiliary connections labeled AUX 1 through AUX 4.
Figure B-1. Test Interface Connectors
392
ASL Series Programming Guide
DUT Board Test Interface
Test Interface Connector Sockets The test interface connector sockets consist of pogo blocks labeled PB1-11, OSP connections, and auxiliary connections as previously described. See Figure 59 for an illustration of the pin/row labels on the pogo blocks.
Figure 59. ASL 3000RF DUT Interface— Connectors and Pin Groups
ASL Series Programming Guide
393
B - ASL 3000 Interconnects
Relay Drivers The following tables of control bits (CBits) are open collector drivers intended for driving relays on the DUT Card. They may also be used for other digital applications. Readback capability is available when driven with TTL levels. CBit0 CBit1 CBit2 CBit3 CBit4 CBit5 CBit6 CBit7 CBit8 CBit9 CBit10 CBit11 CBit12 CBit13 CBit14 CBit15
394
PB11-A2 PB11-A3 PB11-A4 PB11-A5 PB11-A6 PB11-A7 PB11-A8 PB11-A9 PB11-A10 PB11-A11 PB11-A12 PB11-A13 PB11-A14 PB11-A15 PB11-A16 PB11-A17
CBit16 CBit17 CBit18 CBit19 CBit20 CBit21 CBit22 CBit23 CBit24 CBit25 CBit26 CBit27 CBit28 CBit29 CBit30 CBit31
PB11-B2 PB11-B3 PB11-B4 PB11-B5 PB11-B6 PB11-B7 PB11-B8 PB11-B9 PB11-B10 PB11-B11 PB11-B12 PB11-B13 PB11-B14 PB11-B15 PB11-B16 PB11-B17
ASL Series Programming Guide
CBit32 CBit33 CBit34 CBit35 CBit36 CBit37 CBit38 CBit39 CBit40 CBit41 CBit42 CBit43 CBit44 CBit45 CBit46 CBit47
PB11-C2 PB11-C3 PB11-C4 PB11-C5 PB11-C6 PB11-C7 PB11-C8 PB11-C9 PB11-C10 PB11-C11 PB11-C12 PB11-C13 PB11-C14 PB11-C15 PB11-C16 PB11-C17
CBit48 CBit49 CBit50 CBit51 CBit52 CBit53 CBit54 CBit55 CBit56 CBit57 CBit58 CBit59 CBit60 CBit61 CBit62 CBit63
PB11-D2 PB11-D3 PB11-D4 PB11-D5 PB11-D6 PB11-D7 PB11-D8 PB11-D9 PB11-D10 PB11-D11 PB11-D12 PB11-D13 PB11-D14 PB11-D15 PB11-D16 PB11-D17
DUT Board Test Interface
Miscellaneous Signals Voltages +65V +50V +24V +16V +12V +5V +3.3V -5V -16V -24V -50V -65V GND
PB10-C17 PB4-E18 PB4-A18 PB1-A18 PB1-D17 PB1-C17 PB3-C17 PB5-A18 PB5-D18 PB1-A16 PB1-A14 PB1-A12 PB1-A1 PB1-B1 PB1-C2 PB1-D2 PB1-E1 PB2-A1 PB2-C1 PB2-D1 PB2-E1 PB3-A1 PB3-C2 PB3-D2 PB3-E1 PB4-A17 PB5-A17 PB6-A17 PB7-A17 PB8-B2 PB9-A1 PB9-C1 PB9-D1 PB9-E1 PB10-A1 PB10-C1 PB10-D1 PB10-E1 PB11-A1
Sense Ana Gnd Sense PB1-C1 Sync ASYNC0_in ASYNC1_in ASYNC2_in ASYNC3_in ASYNC4_in ASYNC0_out ASYNC1_out ASYNC2_out ASYNC3_out ASYNC4_out
PB1-A2 PB1-A4 PB1-A6 PB1-A8 PB1-A10 PB1-B2 PB1-B4 PB1-B6 PB1-B8 PB1-B10
PB10-C18 PB4-F18 PB4-C18 PB1-B18 PB1-D18 PB1-C18 PB3-C18 PB5-C18 PB5-E18 PB1-B16 PB1-B14 PB1-B12 PB1-A3 PB1-B3 PB1-C3 PB1-D3 PB1-E18 PB2-A18 PB2-C2 PB2-D2 PB2-E18 PB3-A18 PB3-C3 PB3-D3 PB3-E18 PB4-B1 PB5-B1 PB6-B17 PB7-B17 PB8-C18 PB9-A18 PB9-C2 PB9-D2 PB9-E18 PB10-A18 PB10-C2 PB10-D2 PB10-E18 PB11-A18
PB1-D1
PB6-E18 PB3-C1 PB2-C17
PB6-F18 PB3-D1 PB2-C18
PB1-A5 PB1-B5 PB1-C4 PB1-D4 PB1-F1 PB2-B1 PB2-C3 PB2-D3 PB2-F1 PB3-B1 PB3-C4 PB3-D4 PB3-F1 PB4-B18 PB5-B18 PB6-C17
PB1-A7 PB1-B7 PB1-C5 PB1-D5 PB1-F18 PB2-B18 PB2-C4 PB2-D4 PB2-F18 PB3-B18 PB3-C5 PB3-D5 PB3-F18 PB4-C17 PB5-C17 PB6-D17
PB9-B1 PB9-C3 PB9-D3 PB9-F1 PB10-B1 PB10-C3 PB10-D3 PB10-F1 PB11-B1
PB9-B18 PB9-C4 PB9-D4 PB9-F18 PB10-B18 PB10-C4 PB10-D4 PB10-F18 PB11-B18
PB7-A18 PB7-B18 PB6-C18 PB6-D18 PB9-C17 PB9-C18
PB1-A9 PB1-B9 PB1-C6 PB1-D6
PB1-A11 PB1-B11 PB1-C7 PB1-D7
PB1-A13 PB1-A15 PB1-B13 PB1-B15 PB1-C8 PB1-C9 PB1-D8 PB1-D9
PB1-A17 PB1-B17 PB1-C10 PB1-D10
PB1-C11 PB1-C12 PB1-D11 PB1-D12
PB1-C13 PB1-C14 PB1-C15 PB1-C16 PB1-D13 PB1-D14 PB1-D15 PB1-D16
PB2-C5 PB2-D5
PB2-C6 PB2-D6
PB2-C7 PB2-D7
PB2-C8 PB2-D8
PB2-C9 PB2-D9
PB2-C10 PB2-C11 PB2-D10 PB2-D11
PB2-C12 PB2-C13 PB2-C14 PB2-C15 PB2-C16 PB2-D12 PB2-D13 PB2-D14 PB2-D15 PB2-D16
PB3-C6 PB3-D6
PB3-C7 PB3-D7
PB3-C8 PB3-D8
PB3-C9 PB3-D9
PB3-C10 PB3-D10
PB3-C11 PB3-C12 PB3-D11 PB3-D12
PB3-C13 PB3-C14 PB3-C15 PB3-C16 PB3-D13 PB3-D14 PB3-D15 PB3-D16
PB9-C9 PB9-D9
PB9-C10 PB9-C11 PB9-D10 PB9-D11
PB9-C12 PB9-C13 PB9-C14 PB9-C15 PB9-C16 PB9-D12 PB9-D13 PB9-D14 PB9-D15 PB9-D16
PB10-C5 PB10-C6 PB10-C7 PB10-C8 PB10-D5 PB10-D6 PB10-D7 PB10-D8
PB10-C9 PB10-D9
PB10-C10 PB10-C11 PB10-D10 PB10-D11
PB10-C12 PB10-C13 PB10-C14 PB10-C15 PB10-C16 PB10-D12 PB10-D13 PB10-D14 PB10-D15 PB10-D16
PB11-C1 PB11-C18 PB11-D1 PB11-D18
PB11-E18 PB11-F18
PB4-D1 PB4-D18 PB4-E17 PB4-F1 PB5-D17 PB5-E17 PB5-F1 PB5-F18 PB6-E17 PB6-F17
PB9-C5 PB9-D5
PB9-C6 PB9-D6
Test Head External Signals Ext_Sig 1+ PB3-D17 Ext_Sig 1- PB3-D18 Ext_Sig 2+ PB2-D17 Ext_Sig 2- PB2-D18 Ext_Sig 3+ PB6-A18 Ext_Sig 3- PB6-B18 Ext_Sig 4+ PB8-A1 Ext_Sig 4- PB8-A2 Ext_Sig 5+ PB10-D17 Ext_Sig 5- PB10-D18 Ext_Sig 6+ PB9-D17 Ext_Sig 6- PB9-D18
PB9-C7 PB9-D7
PB9-C8 PB9-D8
RF I/O Pins RF_RSVD00 RF_RSVD01 RF_RSVD02 RF_RSVD03 RF_RSVD04 RF_RSVD05 RF_RSVD06 RF_RSVD07 RF_RSVD08 RF_RSVD09 RF_RSVD10 RF_RSVD11 RF_RSVD12 RF_RSVD13 RF_RSVD14 RF_RSVD15 RF_RSVD16
PB11-E2 PB11-E3 PB11-E4 PB11-E5 PB11-E6 PB11-E7 PB11-E8 PB11-E9 PB11-E10 PB11-E11 PB11-E12 PB11-E13 PB11-E14 PB11-E15 PB11-E16 PB11-E17 PB11-F2
RF_RSVD17 RF_RSVD18 RF_RSVD19 RF_RSVD20 RF_RSVD21 RF_RSVD22 RF_RSVD23 RF_RSVD24 RF_RSVD25 RF_RSVD26 RF_RSVD27 RF_RSVD28 RF_RSVD29 RF_RSVD30 RF_RSVD31 MVNA_TRG_IN MVNA_TRG_OUT
PB11-F3 PB11-F4 PB11-F5 PB11-F6 PB11-F7 PB11-F8 PB11-F9 PB11-F10 PB11-F11 PB11-F12 PB11-F13 PB11-F14 PB11-F15 PB11-F16 PB11-F17 PB11-E1 PB11-F1
Note -The DUT Interlock Signal is on J1-B5, see slot 9
ASL Series Programming Guide
395
B - ASL 3000 Interconnects
RF DUT Interface Pinouts The following section is an extensive list providing pinout/interconnect information for the ASL 3000RF tester, including the RF subsystem and ASL Series instrument cards. NOTE — Tie Slot9, IO9 to +12 V at the DUT board. This acts as a status indicator to show that the DUT board is inserted, and enables ±50 V and ±65 V at the DUT site if the DUT board is docked.
The above step is not required if you do not require these functions. The tables in this appendix describe the connections and pins configured in the ASL test head cage. Slot numbers are listed sequentially, and pin assignments appear in tables. Pinout tables appear in two or more parts for each slot, with the exception of slots 9 and 20, which require a single table section. There is no connection table for Slot 22—this is a virtual slot.
396
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 1 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB4-D17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB4-D15
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB4-D13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB4-D11
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB4-D9
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB4-D7
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB4-D5
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB4-D3
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
2 FORCE
CH1 NEG IN
2 FORCE
DRV_10 DRV_12 DRV_13
3 FORCE
CH1 POS IN
3 FORCE
DRV_15 DRV_14
15
PB4-D16
CH3 SENSE
EXT DRV1
1 FORCE
13
PB4-D14
CH2 SENSE
EXT IN3
1 FORCE
11
PB4-D12
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB4-D10
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB4-D8
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB4-D6
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB4-D4
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB4-D2
CH4 SENSE
EXT CLOCK
4 FORCE
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE
TMU EXT DRV3
-SENSE
DRV_7 CH1 OUT OUT DRV_6
Slot 1 Continued
ASL Series Programming Guide
397
B - ASL 3000 Interconnects
ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
16
PB4-D17
14
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
PB4-D15
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE HVS_REF1
OFS
LZB
OFS_REF2
OUT_15
Pin
MVS_REF1
OFS_NEG_FO OUT_16 RCE
12
PB4-D13
MUX_8_2
10
PB4-D11
MUX_8_1
DUT 14
OFS_REF1
8
PB4-D9
MUX_7_4
6
PB4-D7
MUX_7_3
4
PB4-D5
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
2
PB4-D3
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OUT_17 OUT_18
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
OUT_20
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB4-D16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB4-D14
MUX_4_3
HVS_OUT_7
MVS_OUT_7
11
PB4-D12
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
9
PB4-D10
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
7
PB4-D8
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
5
PB4-D6
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB4-D4
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB4-D2
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
OUT_8
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
398
DUT 8
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 2 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB4-F17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB4-F16
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB4-F15
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB4-F14
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB4-F13
CH7 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB4-F12
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
26
PB4-F11
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
25
PB4-F10
CH4 FORCE
EXT DATA
5 FORCE
24
PB4-F9
5 FORCE
23
PB4-F8
5 FORCE
22
PB4-F7
5 FORCE
CH1 NEG OUT DRV_11
21
PB4-F6
2 FORCE
CH1 PICO NEG
DRV_10
20
PB4-F5
2 FORCE
CH1 NEG IN
DRV_12
19
PB4-F4
2 FORCE
18
PB4-F3
3 FORCE
CH1 POS IN
DRV_15
17
PB4-F2
3 FORCE
16
PB4-E16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB4-E15
CH2 SENSE
EXT IN3
1 FORCE
14
PB4-E14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB4-E13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
12
PB4-E12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB4-E11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB4-E10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB4-E9
CH4 SENSE
EXT CLOCK
8
PB4-E8
4 FORCE
CH1 OUT 2
DRV_0
7
PB4-E7
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB4-E6
4 FORCE
CH1 EXT DRV
DRV_3
5
PB4-E5
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB4-E4
1 FORCE
CH1 RMS MTR DRV_4
3
PB4-E3
1 FORCE
CH1 DUT OUT DRV_5
2
PB4-E2
3 FORCE
1
PB4-E1
-SENSE
CH1 FORCE
4 FORCE
EXT DRV 1
DIFF_IN_POS
DUT POS IN
EXT_FBACK_2
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
TMU HIZ DUT3
CH1 POS OUT DRV_8
TMU HIZ DUT4
CH1 PICO POS
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
Slot 2 Continued
ASL Series Programming Guide
399
B - ASL 3000 Interconnects
ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
32
PB4-F17
31
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
PB4-F16
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE HVS_REF1
OFS
LZB
OFS_REF2
OUT_15
Pin
MVS_REF1
OFS_NEG_FO OUT_16 RCE
30
PB4-F15
MUX_8_2
29
PB4-F14
MUX_8_1
DUT 14
OFS_REF1
28
PB4-F13
MUX_7_4
27
PB4-F12
MUX_7_3
26
PB4-F11
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
25
PB4-F10
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
24
PB4-F9
MUX_6_4
OUT_23
23
PB4-F8
MUX_6_3
OUT_24
22
PB4-F7
MUX_6_2
OUT_25
21
PB4-F6
MUX_6_1
OUT_26
20
PB4-F5
MUX_5_4
OUT_27
19
PB4-F4
MUX_5_3
OUT_28
18
PB4-F3
MUX_5_2
17
PB4-F2
MUX_5_1
16
PB4-E16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB4-E15
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB4-E14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB4-E13
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
12
PB4-E12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB4-E11
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB4-E10
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
DUT 8
OUT_17 OUT_18
OUT_20
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
9
PB4-E9
MUX_3_1
8
PB4-E8
MUX_2_4
OUT_9
7
PB4-E7
MUX_2_3
OUT_10
6
PB4-E6
MUX_2_2
OUT_11
5
PB4-E5
MUX_2_1
OUT_12
4
PB4-E4
MUX_1_4
OUT_13
3
PB4-E3
MUX_1_3
OUT_14
2
PB4-E2
MUX_1_2
1
PB4-E1
MUX_1_1
400
ASL Series Programming Guide
OUT_8
RF DUT Interface Pinouts
Slot 3 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB4-B17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB4-B15
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB4-B13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB4-B11
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB4-B9
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB4-B7
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB4-B5
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB4-B3
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
DRV_10
2 FORCE
CH1 NEG IN
DRV_12
CH1 POS IN
DRV_15
2 FORCE
DRV_13
3 FORCE 3 FORCE
DRV_14
15
PB4-B16
CH3 SENSE
EXT DRV1
1 FORCE
13
PB4-B14
CH2 SENSE
EXT IN3
1 FORCE
11
PB4-B12
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
9
PB4-B10
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB4-B8
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB4-B6
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB4-B4
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB4-B2
CH4 SENSE
EXT CLOCK
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE
TMU EXT DRV3
-SENSE
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
401
B - ASL 3000 Interconnects
Slot 3 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB4-B17
MUX_8_4
HVS_REF2
MVS_REF2
14
PB4-B15
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB4-B13
MUX_8_2
HVS_REF1
MVS_REF1
10
PB4-B11
MUX_8_1
8
PB4-B9
MUX_7_4
6
PB4-B7
MUX_7_3
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV)
4
PB4-B5
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB4-B3
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
DUT 10
OUT_17 OUT_18 OUT_19 OUT_20
OFS_REF_COM OFS_OUT_COM
OUT_21 OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB4-B16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB4-B14
MUX_4_3
HVS_OUT_7
MVS_OUT_7
11
PB4-B12
MUX_4_2
HVS_OUT_6
MVS_OUT_6
9
PB4-B10
MUX_4_1
HVS_OUT_5
MVS_OUT_5
7
PB4-B8
MUX_3_4
HVS_OUT_4
MVS_OUT_4
5
PB4-B6
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB4-B4
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB4-B2
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
DUT 6
OFS_OUT_6
OUT_3
DUT 5 (GND)
OFS_OUT_5
OUT_4
OFS_OUT_4
OUT_5
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
402
DUT 8
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 4 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB4-C16
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB4-C15
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB4-C14
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB4-C13
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB4-C12
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB4-C11
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB4-C10
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB4-C9
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB4-C8
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB4-C7
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB4-C6
5 FORCE
CH1 NEG OUT DRV_11
21
PB4-C5
2 FORCE
CH1 PICO NEG
DRV_10
20
PB4-C4
2 FORCE
CH1 NEG IN
DRV_12
19
PB4-C3
2 FORCE
18
PB4-C2
3 FORCE
CH1 POS IN
DRV_15
17
PB4-C1
3 FORCE
16
PB5-A16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB5-A15
CH2 SENSE
EXT IN3
1 FORCE
14
PB5-A14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB5-A13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB5-A12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB5-A11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB5-A10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB5-A9
CH4 SENSE
EXT CLOCK
8
PB5-A8
4 FORCE
CH1 OUT 2
DRV_0
7
PB5-A7
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB5-A6
4 FORCE
CH1 EXT DRV
DRV_3
5
PB5-A5
1 FORCE
CH1 FEEDBACK
DRV_2
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4
PB5-A4
1 FORCE
CH1 RMS MTR DRV_4
3
PB5-A3
1 FORCE
CH1 DUT OUT DRV_5
2
PB5-A2
3 FORCE
1
PB5-A1
-SENSE
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
403
B - ASL 3000 Interconnects
Slot 4 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
32 31
OFS
LZB
OFS_REF2
OUT_15
PRO-DIG
PB4-C16
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
PB4-C15
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB4-C14
MUX_8_2
HVS_REF1
29
PB4-C13
MUX_8_1
28
PB4-C12
MUX_7_4
27
PB4-C11
MUX_7_3
26
PB4-C10
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
GND
25
PB4-C9
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
EXT_CLK
24
PB4-C8
MUX_6_4
OUT_23
GND
23
PB4-C7
MUX_6_3
OUT_24
CH1-5
22
PB4-C6
MUX_6_2
OUT_25
CH1-6
21
PB4-C5
MUX_6_1
OUT_26
GND
20
PB4-C4
MUX_5_4
OUT_27
19
PB4-C3
MUX_5_3
OUT_28
18
PB4-C2
MUX_5_2
17
PB4-C1
MUX_5_1
16
PB5-A16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB5-A15
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB5-A14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
13
PB5-A13
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB5-A12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
11
PB5-A11
MUX_3_3
HVS_OUT_3
MVS_OUT_3
10
PB5-A10
MUX_3_2
HVS_OUT_2
MVS_OUT_2
HVS_OUT_1
MVS_OUT_1
Pin
MVS_REF1
DUT 14
CH1-1
OFS_REF1
OUT_17
CH1-2
OUT_18
GND
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
CH1-3
OUT_20
CH1-4
DUT 11 (RLY DRV)
DUT 8
GND
OFS_NEG_FO OUT_16 RCE
OFS_OUT_8
OUT_1
GND
OFS_OUT_7
OUT_2
CH2-1
DUT 6
OFS_OUT_6
OUT_3
CH2-2
DUT 5 (GND)
OFS_OUT_5
OUT_4
GND
OFS_OUT_4
OUT_5
CH2-3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
CH2-4
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
GND
DUT 1 (-15V)
OFS_OUT_1
OUT_8
EXT_TRIG
9
PB5-A9
MUX_3_1
8
PB5-A8
MUX_2_4
OUT_9
GND
7
PB5-A7
MUX_2_3
OUT_10
CH2-5
6
PB5-A6
MUX_2_2
OUT_11
CH2-6
5
PB5-A5
MUX_2_1
OUT_12
GND
4
PB5-A4
MUX_1_4
OUT_13
3
PB5-A3
MUX_1_3
OUT_14
2
PB5-A2
MUX_1_2
1
PB5-A1
MUX_1_1
404
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 5 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB4-A16
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB4-A14
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB4-A12
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB4-A10
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB4-A8
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB4-A6
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB4-A4
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB4-A2
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
2 FORCE
CH1 NEG IN
2 FORCE
DRV_10 DRV_12 DRV_13
3 FORCE
CH1 POS IN
3 FORCE
DRV_15 DRV_14
15
PB4-A15
CH3 SENSE
EXT DRV1
1 FORCE
13
PB4-A13
CH2 SENSE
EXT IN3
1 FORCE
11
PB4-A11
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB4-A9
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB4-A7
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB4-A5
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB4-A3
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB4-A1
CH4 SENSE
EXT CLOCK
4 FORCE
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE
TMU EXT DRV3
-SENSE
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
405
B - ASL 3000 Interconnects
Slot 5 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
16
PB4-A16
14
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
PB4-A14
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE HVS_REF1
OFS
LZB
OFS_REF2
OUT_15
Pin
MVS_REF1
OFS_NEG_FO OUT_16 RCE
12
PB4-A12
MUX_8_2
10
PB4-A10
MUX_8_1
DUT 14
OFS_REF1
8
PB4-A8
MUX_7_4
6
PB4-A6
MUX_7_3
4
PB4-A4
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
2
PB4-A2
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OUT_17 OUT_18
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
OUT_20
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB4-A15
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB4-A13
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
11
PB4-A11
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
9
PB4-A9
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
7
PB4-A7
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
5
PB4-A5
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB4-A3
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB4-A1
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
406
OUT_8
MUX_2_4
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 6 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB5-B17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB5-B16
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB5-B15
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB5-B14
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB5-B13
CH7 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB5-B12
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
26
PB5-B11
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
25
PB5-B10
CH4 FORCE
EXT DATA
5 FORCE
24
PB5-B9
5 FORCE
23
PB5-B8
5 FORCE
22
PB5-B7
5 FORCE
CH1 NEG OUT DRV_11
21
PB5-B6
2 FORCE
CH1 PICO NEG
DRV_10
20
PB5-B5
2 FORCE
CH1 NEG IN
DRV_12
19
PB5-B4
2 FORCE
18
PB5-B3
3 FORCE
CH1 POS IN
DRV_15
17
PB5-B2
3 FORCE
16
PB5-C16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB5-C15
CH2 SENSE
EXT IN3
1 FORCE
14
PB5-C14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB5-C13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
CH1 FORCE
EXT DRV 1
DIFF_IN_POS
DUT POS IN
EXT_FBACK_2
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
TMU HIZ DUT3
CH1 POS OUT DRV_8
TMU HIZ DUT4
CH1 PICO POS
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB5-C12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB5-C11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB5-C10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB5-C9
CH4 SENSE
EXT CLOCK
8
PB5-C8
4 FORCE
CH1 OUT 2
DRV_0
7
PB5-C7
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB5-C6
4 FORCE
CH1 EXT DRV
DRV_3
5
PB5-C5
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB5-C4
1 FORCE
CH1 RMS MTR DRV_4
3
PB5-C3
1 FORCE
CH1 DUT OUT DRV_5
2
PB5-C2
3 FORCE
1
PB5-C1
-SENSE
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
407
B - ASL 3000 Interconnects
Slot 6 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 32
PB5-B17
MUX_8_4
HVS_REF2
MVS_REF2
31
PB5-B16
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
30
PB5-B15
MUX_8_2
HVS_REF1
MVS_REF1
29
PB5-B14
MUX_8_1
28
PB5-B13
MUX_7_4
27
PB5-B12
MUX_7_3
26
PB5-B11
MUX_7_2
HVS_REF_COM
MVS_REF_COM
25
PB5-B10
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
24
PB5-B9
MUX_6_4
OUT_23
23
PB5-B8
MUX_6_3
OUT_24
22
PB5-B7
MUX_6_2
OUT_25
21
PB5-B6
MUX_6_1
OUT_26
20
PB5-B5
MUX_5_4
OUT_27
19
PB5-B4
MUX_5_3
OUT_28
18
PB5-B3
MUX_5_2
17
PB5-B2
MUX_5_1
16
PB5-C16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB5-C15
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB5-C14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
13
PB5-C13
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB5-C12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
11
PB5-C11
MUX_3_3
HVS_OUT_3
MVS_OUT_3
10
PB5-C10
MUX_3_2
HVS_OUT_2
MVS_OUT_2
9
PB5-C9
MUX_3_1
HVS_OUT_1
MVS_OUT_1
8
PB5-C8
MUX_2_4
OUT_9
7
PB5-C7
MUX_2_3
OUT_10
6
PB5-C6
MUX_2_2
OUT_11
5
PB5-C5
MUX_2_1
OUT_12
4
PB5-C4
MUX_1_4
OUT_13
3
PB5-C3
MUX_1_3
OUT_14
2
PB5-C2
MUX_1_2
1
PB5-C1
MUX_1_1
408
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
OUT_19
OFS_REF_COM
OUT_21
OFS_OUT_COM
OUT_22
DUT 11 (RLY DRV)
ASL Series Programming Guide
DUT 10
DUT 8
OUT_17 OUT_18 OUT_20
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
DUT 6
OFS_OUT_6
OUT_3
DUT 5 (GND)
OFS_OUT_5
OUT_4
OFS_OUT_4
OUT_5
DUT 3 (+15V)
OFS_OUT_3
OUT_6
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
DUT 1 (-15V)
OFS_OUT_1
OUT_8
RF DUT Interface Pinouts
Slot 7 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB5-D15
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB5-D13
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB5-D11
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB5-D9
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB5-D7
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB5-D5
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB5-D3
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB5-D1
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
2 FORCE
CH1 NEG IN
2 FORCE
DRV_10 DRV_12 DRV_13
3 FORCE
CH1 POS IN
3 FORCE
DRV_15 DRV_14
15
PB5-D16
CH3 SENSE
EXT DRV1
1 FORCE
13
PB5-D14
CH2 SENSE
EXT IN3
1 FORCE
11
PB5-D12
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
9
PB5-D10
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
7
PB5-D8
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB5-D6
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB5-D4
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB5-D2
CH4 SENSE
EXT CLOCK
4 FORCE
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE 3 FORCE
CH1 DUT OUT DRV_5 TMU EXT DRV3
-SENSE
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
409
B - ASL 3000 Interconnects
Slot 7 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB5-D15
MUX_8_4
HVS_REF2
MVS_REF2
14
PB5-D13
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB5-D11
MUX_8_2
HVS_REF1
MVS_REF1
10
PB5-D9
MUX_8_1
8
PB5-D7
MUX_7_4
6
PB5-D5
MUX_7_3
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV)
4
PB5-D3
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB5-D1
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
DUT 10
OUT_17 OUT_18 OUT_19 OUT_20
OFS_REF_COM OFS_OUT_COM
OUT_21 OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB5-D16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB5-D14
MUX_4_3
HVS_OUT_7
MVS_OUT_7
11
PB5-D12
MUX_4_2
HVS_OUT_6
MVS_OUT_6
9
PB5-D10
MUX_4_1
HVS_OUT_5
MVS_OUT_5
7
PB5-D8
MUX_3_4
HVS_OUT_4
MVS_OUT_4
5
PB5-D6
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB5-D4
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB5-D2
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
DUT 6
OFS_OUT_6
OUT_3
DUT 5 (GND)
OFS_OUT_5
OUT_4
OFS_OUT_4
OUT_5
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
410
DUT 8
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 8 ASL 3000 PVI(1) & I/O
Connector-
OVI
ACS
DVI
TMU
DDD(M)
DOAL(1)
LCB
PV3(1) Pin 32
PB5-F17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT
31
PB5-F26
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS CH3 PICO POS
30
PB5-F15
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT
29
PB5-F14
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
CH3 PICO NEG
28
PB5-F13
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
CH3 DUT NEG
27
PB5-F12
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
CH2 3 CONNECT
26
PB5-F11
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
CH3 DUT POS
25
PB5-F10
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
24
PB5-F9
5 FORCE
TMU HIZ DUT3
CH1 POS OUT
23
PB5-F8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB5-F7
5 FORCE
CH1 NEG OUT
21
PB5-F6
2 FORCE
CH1 PICO NEG
CH2 PICO POS
20
PB5-F5
2 FORCE
CH1 NEG IN
CH2 DUT NEG
19
PB5-F4
2 FORCE
18
PB5-F3
3 FORCE
CH1 POS IN
CH2 DUT POS
17
PB5-F2
3 FORCE
16
PB5-E16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB5-E15
CH2 SENSE
EXT IN3
1 FORCE
14
PB5-E14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
CH2 3 BYPASS
13
PB5-E13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
CH3 FEEDBACK
12
PB5-E12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
11
PB5-E11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
10
PB5-E10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
9
PB5-E9
CH4 SENSE
EXT CLOCK
8
PB5-E8
4 FORCE
CH1 OUT 2
7
PB5-E7
4 FORCE
CH1 LOAD CONN
4 FORCE
SYNC 2
TMU EXT DRV1
DUT OUT 2
TMU EXT DRV2
EXT LOAD CONN
EXT CLK IN
CH2 PICO POS
DUT OUT OUT
6
PB5-E6
4 FORCE
CH1 EXT DRV
5
PB5-E5
1 FORCE
CH1 FEEDBACK
4
PB5-E4
1 FORCE
CH1 RMS MTR
3
PB5-E3
1 FORCE
CH1 DUT OUT
2
PB5-E2
3 FORCE
1
PB5-E1
-SENSE
TMU EXT DRV3
ASL Series Programming Guide
CH1 OUT OUT
411
CH2 FEEDBACK
B - ASL 3000 Interconnects
Slot 8 Continued ASL 3000 I/O
Connector-
32
PB5-F17
31
DCC
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
EXT_GND_RE MUX_8_4 F
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
PB5-F26
DAC_AGND
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB5-F15
PREC_REF_F ORCE
MUX_8_2
HVS_REF1
29
PB5-F14
DIFF_IN_NEG
MUX_8_1
28
PB5-F13
EXT_IN_1
MUX_7_4
27
PB5-F12
DIFF_IN_POS
MUX_7_3
26
PB5-F11
EXT_FBACK_2 MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
25
PB5-F10
DIFF_IN_REF
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
24
PB5-F9
DRV_8
MUX_6_4
OUT_23
23
PB5-F8
DRV_9
MUX_6_3
OUT_24
22
PB5-F7
DRV_11
MUX_6_2
OUT_25
21
PB5-F6
DRV_10
MUX_6_1
OUT_26
20
PB5-F5
DRV_12
MUX_5_4
OUT_27
19
PB5-F4
DRV_13
MUX_5_3
OUT_28
18
PB5-F3
DRV_15
MUX_5_2
17
PB5-F2
DRV_14
MUX_5_1
16
PB5-E16
EXT_FBACK_1 MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB5-E15
SERVO_TRIG GER
HVS_OUT_7
MVS_OUT_7
Pin
MUX_4_3
MVS_REF1
OFS_NEG_FO OUT_16 RCE DUT 14
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OUT_18 OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
DUT 8
OUT_17
OUT_20
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
14
PB5-E14
EXT_IN_2
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB5-E13
PREC_REF_S ENSE
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
12
PB5-E12
EXT_ADC_IN1 MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB5-E11
EXT_ADC_IN2 MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB5-E10
EXT_DRV_2
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
9
PB5-E9
EXT_DRV_1
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
8
PB5-E8
DRV_0
MUX_2_4
OUT_9
7
PB5-E7
DRV_1
MUX_2_3
OUT_10
6
PB5-E6
DRV_3
MUX_2_2
OUT_11
5
PB5-E5
DRV_2
MUX_2_1
OUT_12
4
PB5-E4
DRV_4
MUX_1_4
OUT_13
3
PB5-E3
DRV_5
MUX_1_3
OUT_14
2
PB5-E2
DRV_7
MUX_1_2
1
PB5-E1
DRV_6
MUX_1_1
412
ASL Series Programming Guide
OUT_8
RF DUT Interface Pinouts
Slot 9 ASL 3000 I/O
DVI Connector-Pin
16
PB6-C2
CH0 FORCE
14
PB6-C4
CH0 GUARD
12
PB6-C6
CH0 SENSE
10
PB6-C8
8
PB6-C10
CH1 FORCE
6
PB6-C12
CH1 GUARD
4
PB6-C14
CH1 SENSE
2
PB6-C16
EXT DATA
15
PB6-C11
EXT DRV1
13
PB6-C13
EXT IN3
11
PB6-C15
EXT DRV2
9
PB6-C9
EXT IN2
7
PB6-C7
EXT IN1
5
PB6-C5
EXT ADC STB
3
PB6-C3
EXT GND SENS
1
PB6-C1
EXT CLOCK
Note: Tie Slot9, IO9 to +12V at the DUT board. This acts as a status indicator to show that the DUT board is inserted, and enables ±50V and ±65V at the DUT site if the DUT board is docked..
ASL Series Programming Guide
413
B - ASL 3000 Interconnects
Slot 10 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
LCB
PV3(1) Pin 32
PB6-B15
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT
31
PB6-B16
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS CH1 PICO POS
30
PB6-B13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT
29
PB6-B14
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
CH1 PICO NEG
28
PB6-B11
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
CH1 DUT NEG
27
PB6-B12
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
CH1 4 CONNECT
26
PB6-B9
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
CH1 DUT POS
25
PB6-B10
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
24
PB6-B7
5 FORCE
TMU HIZ DUT3
CH1 POS OUT
23
PB6-B8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB6-B5
5 FORCE
CH1 NEG OUT
21
PB6-B6
2 FORCE
CH1 PICO NEG
CH4 PICO POS
20
PB6-B3
2 FORCE
CH1 NEG IN
CH4 DUT NEG
19
PB6-B4
2 FORCE
18
PB6-B1
3 FORCE
CH1 POS IN
CH4 DUT POS
17
PB6-B2
3 FORCE
16
PB6-A16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB6-A15
CH2 SENSE
EXT IN3
1 FORCE
14
PB6-A14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
CH1 4 BYPASS
13
PB6-A13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
CH1 FEEDBACK
12
PB6-A12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
11
PB6-A11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
10
PB6-A10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
9
PB6-A9
CH4 SENSE
EXT CLOCK
4 FORCE
8
PB6-A8
4 FORCE
CH1 OUT 2
7
PB6-A7
4 FORCE
CH1 LOAD CONN
6
PB6-A6
4 FORCE
CH1 EXT DRV
5
PB6-A5
1 FORCE
CH1 FEEDBACK
4
PB6-A4
1 FORCE
CH1 RMS MTR
3
PB6-A3
1 FORCE
CH1 DUT OUT
2
PB6-A2
3 FORCE
1
PB6-A1
-SENSE
414
ASL Series Programming Guide
SYNC 2
TMU EXT DRV1
DUT OUT 2
TMU EXT DRV2
EXT LOAD CONN
EXT CLK IN
CH4 PICO POS
DUT OUT OUT
TMU EXT DRV3 CH1 OUT OUT
CH4 FEEDBACK
RF DUT Interface Pinouts
Slot 10 Continued ASL 3000 I/O
Connector-
32
PB6-B15
31
DCC
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
EXT_GND_RE MUX_8_4 F
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
PB6-B16
DAC_AGND
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB6-B13
PREC_REF_F ORCE
MUX_8_2
HVS_REF1
29
PB6-B14
DIFF_IN_NEG
MUX_8_1
28
PB6-B11
EXT_IN_1
MUX_7_4
27
PB6-B12
DIFF_IN_POS
MUX_7_3
26
PB6-B9
EXT_FBACK_2 MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
25
PB6-B10
DIFF_IN_REF
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
24
PB6-B7
DRV_8
MUX_6_4
OUT_23
23
PB6-B8
DRV_9
MUX_6_3
OUT_24
22
PB6-B5
DRV_11
MUX_6_2
OUT_25
21
PB6-B6
DRV_10
MUX_6_1
OUT_26
20
PB6-B3
DRV_12
MUX_5_4
OUT_27
19
PB6-B4
DRV_13
MUX_5_3
OUT_28
18
PB6-B1
DRV_15
MUX_5_2
17
PB6-B2
DRV_14
MUX_5_1
16
PB6-A16
EXT_FBACK_1 MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB6-A15
SERVO_TRIG GER
HVS_OUT_7
MVS_OUT_7
Pin
MUX_4_3
MVS_REF1
OFS_NEG_FO OUT_16 RCE DUT 14
OFS_REF1
OUT_17
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OUT_18 OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
DUT 8
OUT_20
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
14
PB6-A14
EXT_IN_2
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB6-A13
PREC_REF_S ENSE
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
12
PB6-A12
EXT_ADC_IN1 MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB6-A11
EXT_ADC_IN2 MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB6-A10
EXT_DRV_2
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
9
PB6-A9
EXT_DRV_1
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
8
PB6-A8
DRV_0
MUX_2_4
OUT_9
7
PB6-A7
DRV_1
MUX_2_3
OUT_10
6
PB6-A6
DRV_3
MUX_2_2
OUT_11
5
PB6-A5
DRV_2
MUX_2_1
OUT_12
4
PB6-A4
DRV_4
MUX_1_4
OUT_13
3
PB6-A3
DRV_5
MUX_1_3
OUT_14
2
PB6-A2
DRV_7
MUX_1_2
1
PB6-A1
DRV_6
MUX_1_1
ASL Series Programming Guide
OUT_8
415
B - ASL 3000 Interconnects
Slot 11 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB6-D15
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB6-D13
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB6-D11
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB6-D9
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB6-D7
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
EXT DRV 1
DIFF_IN_POS
6
PB6-D5
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
4
PB6-D3
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB6-D1
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
2 FORCE
CH1 NEG IN
2 FORCE
DRV_10 DRV_12 DRV_13
3 FORCE
CH1 POS IN
3 FORCE
DRV_15 DRV_14
15
PB6-D16
CH3 SENSE
EXT DRV1
1 FORCE
13
PB6-D14
CH2 SENSE
EXT IN3
1 FORCE
11
PB6-D12
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB6-D10
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB6-D8
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB6-D6
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB6-D4
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB6-D2
CH4 SENSE
EXT CLOCK
4 FORCE
SYNC 2
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE -SENSE
416
TMU EXT DRV1
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 11 Continued ASL 3000 I/O
MUX(1)
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB6-D15
MUX_8_4
HVS_REF2
MVS_REF2
14
PB6-D13
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB6-D11
MUX_8_2
HVS_REF1
MVS_REF1
10
PB6-D9
MUX_8_1
8
PB6-D7
MUX_7_4
6
PB6-D5
MUX_7_3
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV)
4
PB6-D3
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB6-D1
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
DUT 10
OUT_17 OUT_18 OUT_19 OUT_20
OFS_REF_COM OFS_OUT_COM
OUT_21 OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB6-D16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB6-D14
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
11
PB6-D12
MUX_4_2
HVS_OUT_6
MVS_OUT_6
9
PB6-D10
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 6
OFS_OUT_6
OUT_3
DUT 5 (GND)
OFS_OUT_5
7
PB6-D8
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OUT_4
OFS_OUT_4
OUT_5
5
PB6-D6
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB6-D4
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB6-D2
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
ASL Series Programming Guide
417
B - ASL 3000 Interconnects
Slot 12 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB7-B15
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB7-B16
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB7-B13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB7-B14
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB7-B11
CH7 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB7-B12
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
26
PB7-B9
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
25
PB7-B10
CH4 FORCE
EXT DATA
5 FORCE
24
PB7-B7
5 FORCE
23
PB7-B8
5 FORCE
22
PB7-B5
5 FORCE
CH1 NEG OUT DRV_11
21
PB7-B6
2 FORCE
CH1 PICO NEG
DRV_10
20
PB7-B3
2 FORCE
CH1 NEG IN
DRV_12
19
PB7-B4
2 FORCE
18
PB7-B1
3 FORCE
CH1 POS IN
DRV_15
17
PB7-B2
3 FORCE
16
PB7-A16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB7-A15
CH2 SENSE
EXT IN3
1 FORCE
14
PB7-A14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB7-A13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
CH1 FORCE
EXT DRV 1
DIFF_IN_POS
DUT POS IN
EXT_FBACK_2
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
TMU HIZ DUT3
CH1 POS OUT DRV_8
TMU HIZ DUT4
CH1 PICO POS
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB7-A12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB7-A11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB7-A10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB7-A9
CH4 SENSE
EXT CLOCK
8
PB7-A8
4 FORCE
CH1 OUT 2
DRV_0
7
PB7-A7
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB7-A6
4 FORCE
CH1 EXT DRV
DRV_3
5
PB7-A5
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB7-A4
1 FORCE
CH1 RMS MTR DRV_4
3
PB7-A3
1 FORCE
CH1 DUT OUT DRV_5
2
PB7-A2
3 FORCE
1
PB7-A1
-SENSE
418
4 FORCE
ASL Series Programming Guide
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 12 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 32
PB7-B15
MUX_8_4
HVS_REF2
MVS_REF2
31
PB7-B16
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
30
PB7-B13
MUX_8_2
HVS_REF1
MVS_REF1
29
PB7-B14
MUX_8_1
28
PB7-B11
MUX_7_4
27
PB7-B12
MUX_7_3
26
PB7-B9
MUX_7_2
HVS_REF_COM
MVS_REF_COM
25
PB7-B10
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
24
PB7-B7
MUX_6_4
OUT_23
23
PB7-B8
MUX_6_3
OUT_24
22
PB7-B5
MUX_6_2
OUT_25
21
PB7-B6
MUX_6_1
OUT_26
20
PB7-B3
MUX_5_4
OUT_27
19
PB7-B4
MUX_5_3
OUT_28
18
PB7-B1
MUX_5_2
17
PB7-B2
MUX_5_1
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV) DUT 10
DUT 8
OUT_17 OUT_18 OUT_19 OUT_20
OFS_REF_COM
OUT_21
OFS_OUT_COM
OUT_22
16
PB7-A16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB7-A15
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB7-A14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB7-A13
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
12
PB7-A12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB7-A11
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB7-A10
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
9
PB7-A9
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
8
PB7-A8
MUX_2_4
OUT_9
7
PB7-A7
MUX_2_3
OUT_10
6
PB7-A6
MUX_2_2
OUT_11
5
PB7-A5
MUX_2_1
OUT_12
4
PB7-A4
MUX_1_4
OUT_13
3
PB7-A3
MUX_1_3
OUT_14
2
PB7-A2
MUX_1_2
1
PB7-A1
MUX_1_1
ASL Series Programming Guide
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
419
OUT_8
B - ASL 3000 Interconnects
Slot 13 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB7-C18
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB7-C16
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB7-C14
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB7-C12
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB7-C10
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB7-C8
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB7-C6
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB7-C4
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
DRV_10
2 FORCE
CH1 NEG IN
DRV_12
CH1 POS IN
DRV_15
2 FORCE
DRV_13
3 FORCE 3 FORCE
DRV_14
15
PB7-C17
CH3 SENSE
EXT DRV1
1 FORCE
13
PB7-C15
CH2 SENSE
EXT IN3
1 FORCE
11
PB7-C13
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
9
PB7-C11
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
7
PB7-C9
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB7-C7
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB7-C5
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB7-C3
CH4 SENSE
EXT CLOCK
4 FORCE
SYNC 2
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE -SENSE
420
TMU EXT DRV1
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 13 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB7-C18
MUX_8_4
HVS_REF2
MVS_REF2
14
PB7-C16
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB7-C14
MUX_8_2
HVS_REF1
MVS_REF1
10
PB7-C12
MUX_8_1
8
PB7-C10
MUX_7_4
6
PB7-C8
MUX_7_3
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV)
4
PB7-C6
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB7-C4
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
DUT 10
OUT_17 OUT_18 OUT_19 OUT_20
OFS_REF_COM OFS_OUT_COM
OUT_21 OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB7-C17
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB7-C15
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
11
PB7-C13
MUX_4_2
HVS_OUT_6
MVS_OUT_6
9
PB7-C11
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 6
OFS_OUT_6
OUT_3
DUT 5 (GND)
OFS_OUT_5
7
PB7-C9
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OUT_4
OFS_OUT_4
OUT_5
5
PB7-C7
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB7-C5
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB7-C3
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
ASL Series Programming Guide
421
B - ASL 3000 Interconnects
Slot 14 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB6-F15
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB6-F16
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB6-F13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB6-F14
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB6-F11
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB6-F12
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB6-F9
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB6-F10
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB6-F7
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB6-F8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB6-F5
5 FORCE
CH1 NEG OUT DRV_11
21
PB6-F6
2 FORCE
CH1 PICO NEG
DRV_10
20
PB6-F3
2 FORCE
CH1 NEG IN
DRV_12
19
PB6-F4
2 FORCE
18
PB6-F1
3 FORCE
CH1 POS IN
DRV_15
17
PB6-F2
3 FORCE
16
PB6-E16
CH3 SENSE
EXT DRV1
1 FORCE
15
PB6-E15
CH2 SENSE
EXT IN3
1 FORCE
14
PB6-E14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB6-E13
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB6-E12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB6-E11
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB6-E10
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB6-E9
CH4 SENSE
EXT CLOCK
8
PB6-E8
4 FORCE
CH1 OUT 2
DRV_0
7
PB6-E7
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB6-E6
4 FORCE
CH1 EXT DRV
DRV_3
5
PB6-E5
1 FORCE
CH1 FEEDBACK
DRV_2
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4
PB6-E4
1 FORCE
CH1 RMS MTR DRV_4
3
PB6-E3
1 FORCE
CH1 DUT OUT DRV_5
2
PB6-E2
3 FORCE
1
PB6-E1
-SENSE
422
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 14 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 32
PB6-F15
MUX_8_4
HVS_REF2
MVS_REF2
31
PB6-F16
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
HVS_REF1
MVS_REF1
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
30
PB6-F13
MUX_8_2
29
PB6-F14
MUX_8_1
OFS_REF1
28
PB6-F11
MUX_7_4
27
PB6-F12
MUX_7_3
26
PB6-F9
MUX_7_2
HVS_REF_COM
MVS_REF_COM
25
PB6-F10
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
24
PB6-F7
MUX_6_4
OUT_23
23
PB6-F8
MUX_6_3
OUT_24
22
PB6-F5
MUX_6_2
OUT_25
21
PB6-F6
MUX_6_1
OUT_26
20
PB6-F3
MUX_5_4
OUT_27
19
PB6-F4
MUX_5_3
OUT_28
18
PB6-F1
MUX_5_2
17
PB6-F2
MUX_5_1
16
PB6-E16
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB6-E15
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV) DUT 10
OUT_19 OUT_20
OFS_REF_COM OFS_OUT_COM
DUT 8
OUT_17 OUT_18
OUT_21 OUT_22
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
14
PB6-E14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB6-E13
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
12
PB6-E12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB6-E11
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB6-E10
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
9
PB6-E9
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
8
PB6-E8
MUX_2_4
OUT_9
7
PB6-E7
MUX_2_3
OUT_10
6
PB6-E6
MUX_2_2
OUT_11
5
PB6-E5
MUX_2_1
OUT_12
4
PB6-E4
MUX_1_4
OUT_13
3
PB6-E3
MUX_1_3
OUT_14
2
PB6-E2
MUX_1_2
1
PB6-E1
MUX_1_1
ASL Series Programming Guide
423
OUT_8
B - ASL 3000 Interconnects
Slot 15 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB7-D17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB7-D15
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB7-D13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB7-D11
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB7-D9
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB7-D7
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB7-D5
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB7-D3
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
DRV_10
2 FORCE
CH1 NEG IN
DRV_12
2 FORCE
DRV_13
3 FORCE
CH1 POS IN
3 FORCE 15
PB7-D28
CH3 SENSE
EXT DRV1
1 FORCE
13
PB7-D16
CH2 SENSE
EXT IN3
1 FORCE
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
11
PB7-D14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB7-D12
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB7-D10
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB7-D8
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB7-D6
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB7-D4
CH4 SENSE
EXT CLOCK
4 FORCE
DUT OUT OUT EXT_DRV_1 CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE -SENSE
424
EXT CLK IN
4 FORCE
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 15 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB7-D17
MUX_8_4
HVS_REF2
MVS_REF2
14
PB7-D15
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB7-D13
MUX_8_2
HVS_REF1
MVS_REF1
10
PB7-D11
MUX_8_1
8
PB7-D9
MUX_7_4
6
PB7-D7
MUX_7_3
4
PB7-D5
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB7-D3
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
OUT_17
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OUT_18 OFS_POS_FORCE
DUT 11 (RLY DRV) DUT 10
OUT_19 OUT_20
OFS_REF_COM
OUT_21
OFS_OUT_COM
OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB7-D28
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB7-D16
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
11
PB7-D14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
9
PB7-D12
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
7
PB7-D10
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
5
PB7-D8
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB7-D6
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB7-D4
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
ASL Series Programming Guide
425
B - ASL 3000 Interconnects
Slot 16 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB7-F17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB7-F18
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB7-F15
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB7-F16
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB7-F13
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB7-F14
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB7-F11
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB7-F12
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB7-F9
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB7-F10
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB7-F7
5 FORCE
CH1 NEG OUT DRV_11
21
PB7-F8
2 FORCE
CH1 PICO NEG
20
PB7-F5
2 FORCE
CH1 NEG IN
19
PB7-F6
2 FORCE
18
PB7-F3
3 FORCE
17
PB7-F4
3 FORCE
16
PB7-E18
CH3 SENSE
EXT DRV1
1 FORCE
15
PB7-E17
CH2 SENSE
EXT IN3
1 FORCE
14
PB7-E16
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
13
PB7-E15
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB7-E14
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB7-E13
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB7-E12
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB7-E11
CH4 SENSE
EXT CLOCK
8
PB7-E10
4 FORCE
CH1 OUT 2
DRV_0
7
PB7-E9
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB7-E8
4 FORCE
CH1 EXT DRV
DRV_3
5
PB7-E7
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB7-E6
1 FORCE
CH1 RMS MTR DRV_4
3
PB7-E5
1 FORCE
CH1 DUT OUT DRV_5
2
PB7-E4
3 FORCE
1
PB7-E3
-SENSE
426
4 FORCE
ASL Series Programming Guide
DRV_9
DRV_10 DRV_12 DRV_13
CH1 POS IN
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 16 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 32
PB7-F17
MUX_8_4
HVS_REF2
MVS_REF2
31
PB7-F18
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
HVS_REF1
MVS_REF1
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
30
PB7-F15
MUX_8_2
29
PB7-F16
MUX_8_1
OFS_REF1
28
PB7-F13
MUX_7_4
27
PB7-F14
MUX_7_3
26
PB7-F11
MUX_7_2
HVS_REF_COM
MVS_REF_COM
25
PB7-F12
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
24
PB7-F9
MUX_6_4
OUT_23
23
PB7-F10
MUX_6_3
OUT_24
22
PB7-F7
MUX_6_2
OUT_25
21
PB7-F8
MUX_6_1
OUT_26
20
PB7-F5
MUX_5_4
OUT_27
19
PB7-F6
MUX_5_3
OUT_28
18
PB7-F3
MUX_5_2
17
PB7-F4
MUX_5_1
16
PB7-E18
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB7-E17
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OFS_POS_FORCE
DUT 11 (RLY DRV) DUT 10
OUT_19 OUT_20
OFS_REF_COM OFS_OUT_COM
DUT 8
OUT_17 OUT_18
OUT_21 OUT_22
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
14
PB7-E16
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB7-E15
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
12
PB7-E14
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB7-E13
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB7-E12
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
9
PB7-E11
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
8
PB7-E10
MUX_2_4
OUT_9
7
PB7-E9
MUX_2_3
OUT_10
6
PB7-E8
MUX_2_2
OUT_11
5
PB7-E7
MUX_2_1
OUT_12
4
PB7-E6
MUX_1_4
OUT_13
3
PB7-E5
MUX_1_3
OUT_14
2
PB7-E4
MUX_1_2
1
PB7-E3
MUX_1_1
ASL Series Programming Guide
427
OUT_8
B - ASL 3000 Interconnects
Slot 17 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB7-F1
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB7-E2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB7-D1
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB7-C2
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB8-B1
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB8-D1
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB8-E2
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB8-F1
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
DRV_10
2 FORCE
CH1 NEG IN
DRV_12
2 FORCE
DRV_13
3 FORCE
CH1 POS IN
3 FORCE 15
PB7-F2
CH3 SENSE
EXT DRV1
1 FORCE
13
PB7-E1
CH2 SENSE
EXT IN3
1 FORCE
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
11
PB7-D2
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB7-C1
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB8-C1
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB8-D2
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB8-E1
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB8-F2
CH4 SENSE
EXT CLOCK
4 FORCE
EXT CLK IN
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE -SENSE
428
DUT OUT OUT EXT_DRV_1
4 FORCE
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 17 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB7-F1
MUX_8_4
HVS_REF2
MVS_REF2
14
PB7-E2
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB7-D1
MUX_8_2
HVS_REF1
MVS_REF1
10
PB7-C2
MUX_8_1
8
PB8-B1
MUX_7_4
6
PB8-D1
MUX_7_3
4
PB8-E2
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB8-F1
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
OUT_17
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OUT_18 OFS_POS_FORCE
DUT 11 (RLY DRV) DUT 10
OUT_19 OUT_20
OFS_REF_COM
OUT_21
OFS_OUT_COM
OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB7-F2
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB7-E1
MUX_4_3
HVS_OUT_7
MVS_OUT_7
11
PB7-D2
MUX_4_2
HVS_OUT_6
MVS_OUT_6
9
PB7-C1
MUX_4_1
HVS_OUT_5
MVS_OUT_5
7
PB8-C1
MUX_3_4
HVS_OUT_4
MVS_OUT_4
5
PB8-D2
MUX_3_3
HVS_OUT_3
MVS_OUT_3
3
PB8-E1
MUX_3_2
HVS_OUT_2
MVS_OUT_2
1
PB8-F2
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
DUT 6
OFS_OUT_6
OUT_3
DUT 5 (GND)
OFS_OUT_5
OUT_4
OFS_OUT_4
OUT_5
DUT 3 (+15V)
OFS_OUT_3
OUT_6
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
DUT 1 (-15V)
OFS_OUT_1
OUT_8
MUX_2_4
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
ASL Series Programming Guide
429
B - ASL 3000 Interconnects
Slot 18 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB8-B3
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB8-B4
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB8-B5
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB8-B6
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB8-B7
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB8-B8
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB8-B9
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB8-B10
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB8-B11
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB8-B12
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB8-B13
5 FORCE
CH1 NEG OUT DRV_11
21
PB8-B14
2 FORCE
CH1 PICO NEG
DRV_10
20
PB8-B15
2 FORCE
CH1 NEG IN
DRV_12
19
PB8-B16
2 FORCE
18
PB8-B17
3 FORCE
CH1 POS IN
DRV_15
17
PB8-B18
3 FORCE
16
PB8-C2
CH3 SENSE
EXT DRV1
1 FORCE
15
PB8-C3
CH2 SENSE
EXT IN3
1 FORCE
14
PB8-C4
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB8-C5
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB8-C6
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB8-C7
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB8-C8
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB8-C9
CH4 SENSE
EXT CLOCK
8
PB8-C10
4 FORCE
CH1 OUT 2
DRV_0
7
PB8-C11
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB8-C12
4 FORCE
CH1 EXT DRV
DRV_3
5
PB8-C13
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB8-C14
1 FORCE
CH1 RMS MTR DRV_4
3
PB8-C15
1 FORCE
CH1 DUT OUT DRV_5
2
PB8-C16
3 FORCE
1
PB8-C17
-SENSE
430
4 FORCE
ASL Series Programming Guide
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 18 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 32
PB8-B3
MUX_8_4
HVS_REF2
MVS_REF2
31
PB8-B4
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
30
PB8-B5
MUX_8_2
HVS_REF1
MVS_REF1
29
PB8-B6
MUX_8_1
28
PB8-B7
MUX_7_4
27
PB8-B8
MUX_7_3
26
PB8-B9
MUX_7_2
HVS_REF_COM
MVS_REF_COM
25
PB8-B10
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
24
PB8-B11
MUX_6_4
OUT_23
23
PB8-B12
MUX_6_3
OUT_24
22
PB8-B13
MUX_6_2
OUT_25
21
PB8-B14
MUX_6_1
OUT_26
20
PB8-B15
MUX_5_4
OUT_27
19
PB8-B16
MUX_5_3
OUT_28
18
PB8-B17
MUX_5_2
17
PB8-B18
MUX_5_1
16
PB8-C2
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB8-C3
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB8-C4
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
13
PB8-C5
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
OUT_17
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12
OUT_18 OFS_POS_FORCE
DUT 11 (RLY DRV) DUT 10
OFS_REF_COM OFS_OUT_COM
DUT 8
OUT_19 OUT_20 OUT_21 OUT_22
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
12
PB8-C6
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
11
PB8-C7
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
10
PB8-C8
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
9
PB8-C9
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
8
PB8-C10
MUX_2_4
OUT_9
7
PB8-C11
MUX_2_3
OUT_10
6
PB8-C12
MUX_2_2
OUT_11
5
PB8-C13
MUX_2_1
OUT_12
4
PB8-C14
MUX_1_4
OUT_13
3
PB8-C15
MUX_1_3
OUT_14
2
PB8-C16
MUX_1_2
1
PB8-C17
MUX_1_1
ASL Series Programming Guide
431
OUT_8
B - ASL 3000 Interconnects
Slot 19 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB8-A4
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB8-A6
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB8-A8
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB8-A10
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB8-A12
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB8-A14
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB8-A16
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB8-A18
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
DRV_10
2 FORCE
CH1 NEG IN
DRV_12
2 FORCE
DRV_13
3 FORCE
CH1 POS IN
3 FORCE 15
PB8-A3
CH3 SENSE
EXT DRV1
1 FORCE
13
PB8-A5
CH2 SENSE
EXT IN3
1 FORCE
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
11
PB8-A7
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB8-A9
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB8-A11
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB8-A13
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB8-A15
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB8-A17
CH4 SENSE
EXT CLOCK
4 FORCE
EXT CLK IN
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE -SENSE
432
DUT OUT OUT EXT_DRV_1
4 FORCE
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 19 Continued ASL 3000 MUX(1)
I/O
HVS
MVS(2)
PRO(2) DUT16
OFS
LZB
Connector-Pin 16
PB8-A4
MUX_8_4
HVS_REF2
MVS_REF2
14
PB8-A6
MUX_8_3
HVS_NEG_FORCE
MVS_NEG_FORCE
12
PB8-A8
MUX_8_2
HVS_REF1
MVS_REF1
10
PB8-A10
MUX_8_1
8
PB8-A12
MUX_7_4
DUT 14
OFS_REF2
OUT_15
OFS_NEG_FORCE
OUT_16
OFS_REF1
OUT_17
OFS_POS_FORCE
OUT_19
OFS_REF_COM
OUT_21
DUT 13 (RLY DRV) HVS_POS_FORCE
MVS_POS_FORCE
DUT 12 DUT 10
6
PB8-A14
MUX_7_3
4
PB8-A16
MUX_7_2
HVS_REF_COM
MVS_REF_COM
2
PB8-A18
MUX_7_1
HVS_OUT_COM
MVS_OUT_COM
OUT_18
DUT 11 (RLY DRV)
OUT_20 OFS_OUT_COM
OUT_22
MUX_6_4
OUT_23
MUX_6_3
OUT_24
MUX_6_2
OUT_25
MUX_6_1
OUT_26
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB8-A3
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB8-A5
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 8
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
11
PB8-A7
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
9
PB8-A9
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
7
PB8-A11
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
5
PB8-A13
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
3
PB8-A15
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
1
PB8-A17
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_9
MUX_2_3
OUT_10
MUX_2_2
OUT_11
MUX_2_1
OUT_12
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
Slot 20 ASL 3000 I/O
OUT_8
MUX_2_4
MUX(1) Connector-Pin
32
PB8-E18
MUX_8_4
31
PB8-E17
MUX_8_3
30
PB8-E16
MUX_8_2
29
PB8-E15
MUX_8_1
28
PB8-E14
MUX_7_4
27
PB8-E13
MUX_7_3
26
PB8-E12
MUX_7_2
25
PB8-E11
MUX_7_1
ASL Series Programming Guide
433
B - ASL 3000 Interconnects
ASL 3000 I/O
MUX(1) Connector-Pin
24
PB8-E10
MUX_6_4
23
PB8-E9
MUX_6_3
22
PB8-E8
MUX_6_2
21
PB8-E7
MUX_6_1
20
PB8-E6
MUX_5_4
19
PB8-E5
MUX_5_3
18
PB8-E4
MUX_5_2
17
PB8-E3
MUX_5_1
16
PB8-F17
MUX_4_4
15
PB8-F18
MUX_4_3
14
PB8-F15
MUX_4_2
13
PB8-F16
MUX_4_1
12
PB8-F13
MUX_3_4
11
PB8-F14
MUX_3_3
10
PB8-F11
MUX_3_2
9
PB8-F12
MUX_3_1
8
PB8-F9
MUX_2_4
7
PB8-F10
MUX_2_3
6
PB8-F7
MUX_2_2
5
PB8-F8
MUX_2_1
4
PB8-F5
MUX_1_4
3
PB8-F6
MUX_1_3
2
PB8-F3
MUX_1_2
1
PB8-F4
MUX_1_1
Note: MUX in Slot 20 is a required instrument for the ASL 1000 only.
434
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 21 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 16
PB8-D17
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
14
PB8-D15
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
12
PB8-D13
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
10
PB8-D11
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
8
PB8-D9
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
6
PB8-D7
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
4
PB8-D5
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
2
PB8-D3
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
DRV_9
5 FORCE
CH1 NEG OUT DRV_11
2 FORCE
CH1 PICO NEG
DRV_10
2 FORCE
CH1 NEG IN
DRV_12
2 FORCE
DRV_13
3 FORCE
CH1 POS IN
3 FORCE 15
PB8-D18
CH3 SENSE
EXT DRV1
1 FORCE
13
PB8-D16
CH2 SENSE
EXT IN3
1 FORCE
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
11
PB8-D14
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
9
PB8-D12
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
7
PB8-D10
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
5
PB8-D8
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
3
PB8-D6
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
1
PB8-D4
CH4 SENSE
EXT CLOCK
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4 FORCE
CH1 OUT 2
DRV_0
4 FORCE
CH1 LOAD CONN
DRV_1
4 FORCE
CH1 EXT DRV
DRV_3
1 FORCE
CH1 FEEDBACK
DRV_2
1 FORCE
CH1 RMS MTR DRV_4
1 FORCE
CH1 DUT OUT DRV_5
3 FORCE
TMU EXT DRV3
-SENSE
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
435
B - ASL 3000 Interconnects
Slot 21 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
16 14
OFS
LZB
OFS_REF2
OUT_15
PRO-DIG
PB8-D17
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
PB8-D15
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
12
PB8-D13
MUX_8_2
HVS_REF1
10
PB8-D11
MUX_8_1
8
PB8-D9
MUX_7_4
6
PB8-D7
MUX_7_3
4
PB8-D5
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
GND
2
PB8-D3
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
EXT_CLK
Pin
MVS_REF1
DUT 14
CH1-1
OFS_REF1
OUT_17
CH1-2
OUT_18
GND
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
GND
OFS_NEG_FO OUT_16 RCE
OFS_POS_FO OUT_19 RCE
CH1-3
OUT_20
CH1-4
DUT 11 (RLY DRV)
MUX_6_4
OUT_23
GND
MUX_6_3
OUT_24
CH1-5
MUX_6_2
OUT_25
CH1-6
MUX_6_1
OUT_26
GND
MUX_5_4
OUT_27
MUX_5_3
OUT_28
MUX_5_2 MUX_5_1 15
PB8-D18
MUX_4_4
HVS_OUT_8
MVS_OUT_8
13
PB8-D16
MUX_4_3
HVS_OUT_7
MVS_OUT_7
11
PB8-D14
MUX_4_2
HVS_OUT_6
MVS_OUT_6
9
PB8-D12
MUX_4_1
HVS_OUT_5
MVS_OUT_5
7
PB8-D10
MUX_3_4
HVS_OUT_4
MVS_OUT_4
DUT 8
OFS_OUT_8
OUT_1
GND
OFS_OUT_7
OUT_2
CH2-1
DUT 6
OFS_OUT_6
OUT_3
CH2-2
DUT 5 (GND)
OFS_OUT_5
OUT_4
GND
OFS_OUT_4
OUT_5
CH2-3
5
PB8-D8
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
CH2-4
3
PB8-D6
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
GND
1
PB8-D4
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
EXT_TRIG
MUX_2_4
OUT_9
GND
MUX_2_3
OUT_10
CH2-5
MUX_2_2
OUT_11
CH2-6
MUX_2_1
OUT_12
GND
MUX_1_4
OUT_13
MUX_1_3
OUT_14
MUX_1_2 MUX_1_1
436
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 23 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB10-E2
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB10-E3
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB10-E6
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB10-E7
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB10-E10
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB10-E11
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB10-E14
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB10-E15
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB10-A17
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB10-A16
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB10-A13
5 FORCE
CH1 NEG OUT DRV_11
21
PB10-A12
2 FORCE
CH1 PICO NEG
DRV_10
20
PB10-A9
2 FORCE
CH1 NEG IN
DRV_12
19
PB10-A8
2 FORCE
18
PB10-A5
3 FORCE
17
PB10-A4
3 FORCE
16
PB10-E4
CH3 SENSE
EXT DRV1
1 FORCE
15
PB10-E5
CH2 SENSE
EXT IN3
1 FORCE
14
PB10-E8
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB10-E9
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
DRV_9
DRV_13 CH1 POS IN
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB10-E12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB10-E13
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB10-E16
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB10-E17
CH4 SENSE
EXT CLOCK
8
PB10-A15
4 FORCE
CH1 OUT 2
DRV_0
7
PB10-A14
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB10-A11
4 FORCE
CH1 EXT DRV
DRV_3
5
PB10-A10
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB10-A7
1 FORCE
CH1 RMS MTR DRV_4
3
PB10-A6
1 FORCE
CH1 DUT OUT DRV_5
2
PB10-A3
3 FORCE
1
PB10-A2
-SENSE
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
437
B - ASL 3000 Interconnects
Slot 23 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
32
OFS
LZB
OFS_REF2
OUT_15
MDI
PB10-E2
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
31
PB10-E3
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB10-E6
MUX_8_2
HVS_REF1
29
PB10-E7
MUX_8_1
28
PB10-E10
MUX_7_4
27
PB10-E11
MUX_7_3
26
PB10-E14
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
IO_9
25
PB10-E15
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
IO_9_RTN
24
PB10-A17
MUX_6_4
OUT_23
IO_7
23
PB10-A16
MUX_6_3
OUT_24
IO_7_RTN
22
PB10-A13
MUX_6_2
OUT_25
IO_5
21
PB10-A12
MUX_6_1
OUT_26
IO_5_RTN
20
PB10-A9
MUX_5_4
OUT_27
IO_3
19
PB10-A8
MUX_5_3
OUT_28
IO_3_RTN
18
PB10-A5
MUX_5_2
IO_1
17
PB10-A4
MUX_5_1
IO_1_RTN
Pin
MVS_REF1
OFS_NEG_FO OUT_16 RCE DUT 14
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
DUT 8
OUT_17
IO_13
OUT_18
IO_13_RTN
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
IO_15 IO_15_RTN
OUT_20
IO_11 IO_11_RTN
16
PB10-E4
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB10-E5
MUX_4_3
HVS_OUT_7
MVS_OUT_7
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
IO_14
14
PB10-E8
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
IO_14_RTN
OFS_OUT_6
OUT_3
IO_12
13
PB10-E9
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
12
PB10-E12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
IO_12_RTN
11
PB10-E13
MUX_3_3
HVS_OUT_3
MVS_OUT_3
10
PB10-E16
MUX_3_2
HVS_OUT_2
9
PB10-E17
MUX_3_1
HVS_OUT_1
OUT_8
IO_8_RTN
8
PB10-A15
MUX_2_4
OUT_9
IO_6
7
PB10-A14
MUX_2_3
OUT_10
IO_6_RTN
6
PB10-A11
MUX_2_2
OUT_11
IO_4
OFS_OUT_5
OUT_4
OFS_OUT_4
OUT_5
IO_10
DUT 3 (+15V)
OFS_OUT_3
OUT_6
IO_10_RTN
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
IO_8
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
5
PB10-A10
MUX_2_1
OUT_12
IO_4_RTN
4
PB10-A7
MUX_1_4
OUT_13
IO_2
3
PB10-A6
MUX_1_3
OUT_14
IO_2_RTN
2
PB10-A3
MUX_1_2
IO_0
1
PB10-A2
MUX_1_1
IO_0_RTN
438
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 24 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB10-F3
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB10-F2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB10-F7
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB10-F6
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB10-F11
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB10-F10
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB10-F15
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB10-F14
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB10-B16
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB10-B17
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB10-B12
5 FORCE
CH1 NEG OUT DRV_11
21
PB10-B13
2 FORCE
CH1 PICO NEG
DRV_10
20
PB10-B8
2 FORCE
CH1 NEG IN
DRV_12
19
PB10-B9
2 FORCE
18
PB10-B4
3 FORCE
CH1 POS IN
DRV_15
17
PB10-B5
3 FORCE
16
PB10-F5
CH3 SENSE
EXT DRV1
1 FORCE
15
PB10-F4
CH2 SENSE
EXT IN3
1 FORCE
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
14
PB10-F9
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
13
PB10-F8
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB10-F13
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB10-F12
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB10-F17
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB10-F16
CH4 SENSE
EXT CLOCK
8
PB10-B14
4 FORCE
CH1 OUT 2
DRV_0
7
PB10-B15
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB10-B10
4 FORCE
CH1 EXT DRV
DRV_3
5
PB10-B11
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB10-B6
1 FORCE
CH1 RMS MTR DRV_4
3
PB10-B7
1 FORCE
CH1 DUT OUT DRV_5
2
PB10-B2
3 FORCE
1
PB10-B3
-SENSE
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
439
B - ASL 3000 Interconnects
Slot 24 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
32 31
OFS
LZB
OFS_REF2
OUT_15
MDI
PB10-F3
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
PB10-F2
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB10-F7
MUX_8_2
HVS_REF1
29
PB10-F6
MUX_8_1
28
PB10-F11
MUX_7_4
27
PB10-F10
MUX_7_3
26
PB10-F15
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
IO_9
25
PB10-F14
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
IO_9_RTN
24
PB10-B16
MUX_6_4
OUT_23
IO_7
23
PB10-B17
MUX_6_3
OUT_24
IO_7_RTN
22
PB10-B12
MUX_6_2
OUT_25
IO_5
21
PB10-B13
MUX_6_1
OUT_26
IO_5_RTN
20
PB10-B8
MUX_5_4
OUT_27
IO_3
19
PB10-B9
MUX_5_3
OUT_28
IO_3_RTN
18
PB10-B4
MUX_5_2
IO_1
17
PB10-B5
MUX_5_1
IO_1_RTN
Pin
MVS_REF1
OFS_NEG_FO OUT_16 RCE DUT 14
OFS_REF1
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
16
PB10-F5
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB10-F4
MUX_4_3
HVS_OUT_7
MVS_OUT_7
DUT 8
OUT_17
IO_13
OUT_18
IO_13_RTN
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
IO_15 IO_15_RTN
OUT_20
IO_11 IO_11_RTN
OFS_OUT_8
OUT_1
IO_14
OFS_OUT_7
OUT_2
IO_14_RTN
14
PB10-F9
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
IO_12
13
PB10-F8
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
IO_12_RTN
12
PB10-F13
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
IO_10
11
PB10-F12
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
IO_10_RTN
10
PB10-F17
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
IO_8
9
PB10-F16
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
IO_8_RTN
8
PB10-B14
MUX_2_4
OUT_9
IO_6
7
PB10-B15
MUX_2_3
OUT_10
IO_6_RTN
6
PB10-B10
MUX_2_2
OUT_11
IO_4
5
PB10-B11
MUX_2_1
OUT_12
IO_4_RTN
4
PB10-B6
MUX_1_4
OUT_13
IO_2
3
PB10-B7
MUX_1_3
OUT_14
IO_2_RTN
2
PB10-B2
MUX_1_2
IO_0
1
PB10-B3
MUX_1_1
IO_0_RTN
440
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 25 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB9-B2
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB9-B3
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB9-B6
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB9-B7
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB9-B10
CH7 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB9-B11
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB9-B14
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB9-B15
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB9-E17
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB9-E16
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB9-E13
5 FORCE
CH1 NEG OUT DRV_11
21
PB9-E12
2 FORCE
CH1 PICO NEG
DRV_10
20
PB9-E9
2 FORCE
CH1 NEG IN
DRV_12
19
PB9-E8
2 FORCE
18
PB9-E5
3 FORCE
CH1 POS IN
DRV_15
17
PB9-E4
3 FORCE
16
PB9-B4
CH3 SENSE
EXT DRV1
1 FORCE
15
PB9-B5
CH2 SENSE
EXT IN3
1 FORCE
14
PB9-B8
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB9-B9
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
12
PB9-B12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB9-B13
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB9-B16
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB9-B17
CH4 SENSE
EXT CLOCK
8
PB9-E15
4 FORCE
CH1 OUT 2
DRV_0
7
PB9-E14
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB9-E11
4 FORCE
CH1 EXT DRV
DRV_3
5
PB9-E10
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB9-E7
1 FORCE
CH1 RMS MTR DRV_4
3
PB9-E6
1 FORCE
CH1 DUT OUT DRV_5
2
PB9-E3
3 FORCE
1
PB9-E2
-SENSE
CH1 FORCE
4 FORCE
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
441
B - ASL 3000 Interconnects
Slot 25 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
MDI
32
PB9-B2
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
IO_15
31
PB9-B3
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB9-B6
MUX_8_2
HVS_REF1
29
PB9-B7
MUX_8_1
28
PB9-B10
MUX_7_4
27
PB9-B11
MUX_7_3
26
PB9-B14
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
IO_9
25
PB9-B15
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
IO_9_RTN
24
PB9-E17
MUX_6_4
OUT_23
IO_7
23
PB9-E16
MUX_6_3
OUT_24
IO_7_RTN
22
PB9-E13
MUX_6_2
OUT_25
IO_5
21
PB9-E12
MUX_6_1
OUT_26
IO_5_RTN
20
PB9-E9
MUX_5_4
OUT_27
IO_3
19
PB9-E8
MUX_5_3
OUT_28
IO_3_RTN
18
PB9-E5
MUX_5_2
IO_1
17
PB9-E4
MUX_5_1
IO_1_RTN
Pin
MVS_REF1
DUT 14
OFS_NEG_FO OUT_16 RCE
IO_15_RTN
OFS_REF1
OUT_17
IO_13
OUT_18
IO_13_RTN
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
16
PB9-B4
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB9-B5
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB9-B8
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 8
OUT_20
IO_11 IO_11_RTN
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
IO_14 IO_14_RTN
DUT 6
OFS_OUT_6
OUT_3
IO_12
DUT 5 (GND)
OFS_OUT_5
OUT_4
IO_12_RTN
OFS_OUT_4
OUT_5
IO_10
13
PB9-B9
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB9-B12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
11
PB9-B13
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
IO_10_RTN
10
PB9-B16
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
IO_8
9
PB9-B17
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
IO_8_RTN
8
PB9-E15
MUX_2_4
OUT_9
IO_6
7
PB9-E14
MUX_2_3
OUT_10
IO_6_RTN
6
PB9-E11
MUX_2_2
OUT_11
IO_4
5
PB9-E10
MUX_2_1
OUT_12
IO_4_RTN
4
PB9-E7
MUX_1_4
OUT_13
IO_2
3
PB9-E6
MUX_1_3
OUT_14
IO_2_RTN
2
PB9-E3
MUX_1_2
IO_0
1
PB9-E2
MUX_1_1
IO_0_RTN
442
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 26 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB9-A3
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB9-A2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB9-A7
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB9-A6
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB9-A11
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB9-A10
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB9-A15
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB9-A14
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB9-F16
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB9-F17
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB9-F12
5 FORCE
CH1 NEG OUT DRV_11
21
PB9-F13
2 FORCE
CH1 PICO NEG
DRV_10
20
PB9-F8
2 FORCE
CH1 NEG IN
DRV_12
19
PB9-F9
2 FORCE
18
PB9-F4
3 FORCE
17
PB9-F5
3 FORCE
16
PB9-A5
CH3 SENSE
EXT DRV1
1 FORCE
15
PB9-A4
CH2 SENSE
EXT IN3
1 FORCE
DRV_9
DRV_13 CH1 POS IN
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
14
PB9-A9
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
13
PB9-A8
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB9-A13
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB9-A12
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB9-A17
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
CH4 SENSE
EXT CLOCK
4 FORCE
9
PB9-A16
8
PB9-F14
4 FORCE
EXT CLK IN
CH1 OUT 2
DUT OUT OUT EXT_DRV_1 DRV_0
7
PB9-F15
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB9-F10
4 FORCE
CH1 EXT DRV
DRV_3
5
PB9-F11
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB9-F6
1 FORCE
CH1 RMS MTR DRV_4
3
PB9-F7
1 FORCE
CH1 DUT OUT DRV_5
2
PB9-F2
3 FORCE
1
PB9-F3
-SENSE
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
443
B - ASL 3000 Interconnects
Slot 26 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
MDI
32
PB9-A3
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
IO_15
31
PB9-A2
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB9-A7
MUX_8_2
HVS_REF1
29
PB9-A6
MUX_8_1
28
PB9-A11
MUX_7_4
27
PB9-A10
MUX_7_3
26
PB9-A15
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
IO_9
25
PB9-A14
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
IO_9_RTN
24
PB9-F16
MUX_6_4
OUT_23
IO_7
23
PB9-F17
MUX_6_3
OUT_24
IO_7_RTN
22
PB9-F12
MUX_6_2
OUT_25
IO_5
21
PB9-F13
MUX_6_1
OUT_26
IO_5_RTN
20
PB9-F8
MUX_5_4
OUT_27
IO_3
19
PB9-F9
MUX_5_3
OUT_28
IO_3_RTN
18
PB9-F4
MUX_5_2
IO_1
17
PB9-F5
MUX_5_1
IO_1_RTN
Pin
MVS_REF1
DUT 14
OFS_NEG_FO OUT_16 RCE
IO_15_RTN
OFS_REF1
OUT_17
IO_13
OUT_18
IO_13_RTN
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
16
PB9-A5
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB9-A4
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB9-A9
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 8
OUT_20
IO_11 IO_11_RTN
OFS_OUT_8
OUT_1
OFS_OUT_7
OUT_2
IO_14 IO_14_RTN
DUT 6
OFS_OUT_6
OUT_3
IO_12
DUT 5 (GND)
OFS_OUT_5
OUT_4
IO_12_RTN
OFS_OUT_4
OUT_5
IO_10
13
PB9-A8
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB9-A13
MUX_3_4
HVS_OUT_4
MVS_OUT_4
11
PB9-A12
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
IO_10_RTN
10
PB9-A17
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
IO_8
9
PB9-A16
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
IO_8_RTN
8
PB9-F14
MUX_2_4
OUT_9
IO_6
7
PB9-F15
MUX_2_3
OUT_10
IO_6_RTN
6
PB9-F10
MUX_2_2
OUT_11
IO_4
5
PB9-F11
MUX_2_1
OUT_12
IO_4_RTN
4
PB9-F6
MUX_1_4
OUT_13
IO_2
3
PB9-F7
MUX_1_3
OUT_14
IO_2_RTN
2
PB9-F2
MUX_1_2
IO_0
1
PB9-F3
MUX_1_1
IO_0_RTN
444
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 27 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB1-E16
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB1-E17
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB1-E14
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB1-E15
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB1-E12
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB1-E13
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB1-E10
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB1-E11
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB1-E8
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB1-E9
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB1-E6
5 FORCE
CH1 NEG OUT DRV_11
21
PB1-E7
2 FORCE
CH1 PICO NEG
20
PB1-E4
2 FORCE
CH1 NEG IN
19
PB1-E5
2 FORCE
18
PB1-E2
3 FORCE
17
PB1-E3
3 FORCE
16
PB1-F17
CH3 SENSE
EXT DRV1
1 FORCE
15
PB1-F16
CH2 SENSE
EXT IN3
1 FORCE
DRV_9
DRV_10 DRV_12 DRV_13
CH1 POS IN
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
14
PB1-F15
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
13
PB1-F14
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB1-F13
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB1-F12
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB1-F11
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB1-F10
CH4 SENSE
EXT CLOCK
8
PB1-F9
4 FORCE
CH1 OUT 2
DRV_0
7
PB1-F8
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB1-F7
4 FORCE
CH1 EXT DRV
DRV_3
5
PB1-F6
1 FORCE
CH1 FEEDBACK
DRV_2
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4
PB1-F5
1 FORCE
CH1 RMS MTR DRV_4
3
PB1-F4
1 FORCE
CH1 DUT OUT DRV_5
2
PB1-F3
3 FORCE
1
PB1-F2
-SENSE
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
445
B - ASL 3000 Interconnects
Slot 27 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
CLK
32
PB1-E16
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
Prescale_Out1 _RTN
31
PB1-E17
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
OFS_NEG_FO OUT_16 RCE
Prescale_Out1
30
PB1-E14
MUX_8_2
HVS_REF1
OFS_REF1
OUT_17
DSP3_Clk_Out _RTN
29
PB1-E15
MUX_8_1
OUT_18
DSP3_Clk_Out
28
PB1-E12
MUX_7_4
OFS_POS_FO OUT_19 RCE
DSP3_Clk_In_ RTN
27
PB1-E13
MUX_7_3
26
PB1-E10
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
DSP1_Clk_Out _RTN
25
PB1-E11
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
DSP1_Clk_Out
24
PB1-E8
MUX_6_4
OUT_23
DSP1_Clk_In_ RTN
23
PB1-E9
MUX_6_3
OUT_24
DSP1_Clk_In
22
PB1-E6
MUX_6_2
OUT_25
DSP3_Clk_Out _En
21
PB1-E7
MUX_6_1
OUT_26
DSP1_Clk_Out _En
20
PB1-E4
MUX_5_4
OUT_27
DUT_IO_1
19
PB1-E5
MUX_5_3
OUT_28
18
PB1-E2
MUX_5_2
10MHz_Ref_In _RTN
17
PB1-E3
MUX_5_1
10MHz_Ref_In _RTN
16
PB1-F17
MUX_4_4
Pin
MVS_REF1
DUT 14 DUT 13 (RLY DRV)
HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE DUT 11 (RLY DRV)
HVS_OUT_8
MVS_OUT_8
OUT_20
DUT 8
OFS_OUT_8
OUT_1
DSP3_Clk_In
DUT_IO_0
Prescale_Out0 _RTN
15
PB1-F16
MUX_4_3
HVS_OUT_7
MVS_OUT_7
OFS_OUT_7
OUT_2
Prescale_Out0
14
PB1-F15
MUX_4_2
HVS_OUT_6
MVS_OUT_6
DUT 6
OFS_OUT_6
OUT_3
DSP2_Clk_Out _RTN
13
PB1-F14
MUX_4_1
HVS_OUT_5
MVS_OUT_5
DUT 5 (GND)
OFS_OUT_5
OUT_4
DSP2_Clk_Out
12
PB1-F13
MUX_3_4
HVS_OUT_4
MVS_OUT_4
OFS_OUT_4
OUT_5
DSP2_Clk_In_ RTN
11
PB1-F12
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
DSP2_Clk_In
10
PB1-F11
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
DSP0_Clk_Out _RTN
9
PB1-F10
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
DSP0_Clk_Out
8
PB1-F9
MUX_2_4
OUT_9
DSP0_Clk_In_ RTN
7
PB1-F8
MUX_2_3
OUT_10
DSP0_Clk_In
6
PB1-F7
MUX_2_2
OUT_11
DSP2_Clk_Out _En
5
PB1-F6
MUX_2_1
OUT_12
DSP0_Clk_Out _En
4
PB1-F5
MUX_1_4
OUT_13
DUT_Clk_In_R TN
3
PB1-F4
MUX_1_3
OUT_14
DUT_Clk_In
446
ASL Series Programming Guide
RF DUT Interface Pinouts
ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
CLK
2
PB1-F3
MUX_1_2
10MHz_Ref_O ut_RTN
1
PB1-F2
MUX_1_1
10MHz_Ref_O ut
Pin
ASL Series Programming Guide
447
B - ASL 3000 Interconnects
Slot 28 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB3-F2
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB3-F3
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB3-F6
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB3-F7
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB3-F10
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB3-F11
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB3-F14
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB3-F15
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB3-B16
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB3-B17
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB3-B12
5 FORCE
CH1 NEG OUT DRV_11
21
PB3-B13
2 FORCE
CH1 PICO NEG
DRV_10
20
PB3-B8
2 FORCE
CH1 NEG IN
DRV_12
19
PB3-B9
2 FORCE
18
PB3-B4
3 FORCE
CH1 POS IN
DRV_15
17
PB3-B5
3 FORCE
16
PB3-F4
CH3 SENSE
EXT DRV1
1 FORCE
15
PB3-F5
CH2 SENSE
EXT IN3
1 FORCE
14
PB3-F8
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB3-F9
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB3-F12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB3-F13
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB3-F16
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB3-F17
CH4 SENSE
EXT CLOCK
8
PB3-B14
4 FORCE
CH1 OUT 2
DRV_0
7
PB3-B15
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB3-B10
4 FORCE
CH1 EXT DRV
DRV_3
5
PB3-B11
1 FORCE
CH1 FEEDBACK
DRV_2
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4
PB3-B6
1 FORCE
CH1 RMS MTR DRV_4
3
PB3-B7
1 FORCE
CH1 DUT OUT DRV_5
2
PB3-B2
3 FORCE
1
PB3-B3
-SENSE
448
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 28 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
BTB
32
PB3-F2
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
Q_2-_in
31
PB3-F3
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB3-F6
MUX_8_2
HVS_REF1
29
PB3-F7
MUX_8_1
28
PB3-F10
MUX_7_4
27
PB3-F11
MUX_7_3
26
PB3-F14
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
I_2+_in
25
PB3-F15
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
I_2_Vos_in
24
PB3-B16
MUX_6_4
OUT_23
Q_1-_in
23
PB3-B17
MUX_6_3
OUT_24
SPARE_10
22
PB3-B12
MUX_6_2
OUT_25
Q_1+_in
21
PB3-B13
MUX_6_1
OUT_26
Q_1_Vos_in
20
PB3-B8
MUX_5_4
OUT_27
I_1-_in
19
PB3-B9
MUX_5_3
OUT_28
SPARE_9
18
PB3-B4
MUX_5_2
I_1+_in
17
PB3-B5
MUX_5_1
I_1_Vos_in
16
PB3-F4
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB3-F5
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB3-F8
MUX_4_2
HVS_OUT_6
MVS_OUT_6
13
PB3-F9
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB3-F12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
Pin
MVS_REF1
DUT 14
OFS_NEG_FO OUT_16 RCE
SPARE_12
OFS_REF1
OUT_17
Q_2+_in
OUT_18
Q_2_Vos_in
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
DUT 8
OUT_20
I_2-_in SPARE_11
OFS_OUT_8
OUT_1
Q_2-_out
OFS_OUT_7
OUT_2
SPARE_8
DUT 6
OFS_OUT_6
OUT_3
Q_2+_out
DUT 5 (GND)
OFS_OUT_5
OUT_4
SPARE_7
OFS_OUT_4
OUT_5
I_2-_out
11
PB3-F13
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
SPARE_6
10
PB3-F16
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
I_2+_out
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
9
PB3-F17
MUX_3_1
OUT_8
SPARE_5
8
PB3-B14
MUX_2_4
OUT_9
Q_1-_out
7
PB3-B15
MUX_2_3
OUT_10
SPARE_4
6
PB3-B10
MUX_2_2
OUT_11
Q_1+_out
5
PB3-B11
MUX_2_1
OUT_12
SPARE_3
4
PB3-B6
MUX_1_4
OUT_13
I_1-_out
3
PB3-B7
MUX_1_3
OUT_14
SPARE_2
2
PB3-B2
MUX_1_2
I_1+_out
1
PB3-B3
MUX_1_1
SPARE_1
ASL Series Programming Guide
449
B - ASL 3000 Interconnects
Slot 28 Continued ASL 3000 I/O
AWG
AVD Uclk - Rtn (gnd)
Connector-Pin
450
32
PB3-F2
RESERVED
31
PB3-F3
RESERVED
Uclk -
30
PB3-F6
RESERVED
Uclk + Rtn (gnd)
29
PB3-F7
RESERVED
Uclk +
28
PB3-F10
EXT_TRIGGER_2
27
PB3-F11
EXT_TRIGGER_1
26
PB3-F14
RESERVED
25
PB3-F15
RESERVED
Vref 1 LS
24
PB3-B16
RESERVED
Vref 1 HF
23
PB3-B17
RESERVED
Vref 1 HS
22
PB3-B12
RESERVED
21
PB3-B13
RESERVED
20
PB3-B8
RESERVED
19
PB3-B9
RESERVED
Vref 0 LS
18
PB3-B4
RESERVED
Vref 0 HF
17
PB3-B5
RESERVED
Vref 0 HS
16
PB3-F4
CHNL_RTN_8
Ext Trig 1
15
PB3-F5
CHNL_OUT_8
Ext Trig 0
14
PB3-F8
CHNL_RTN_7
13
PB3-F9
CHNL_OUT_7
12
PB3-F12
CHNL_RTN_6
11
PB3-F13
CHNL_OUT_6
CH1-
10
PB3-F16
CHNL_RTN_5
CH1+ Rtn (gnd)
9
PB3-F17
CHNL_OUT_5
CH1+
8
PB3-B14
CHNL_RTN_4
7
PB3-B15
CHNL_OUT_4
6
PB3-B10
CHNL_RTN_3
5
PB3-B11
CHNL_OUT_3
CH0-
4
PB3-B6
CHNL_RTN_2
CH0+ Rtn (gnd)
3
PB3-B7
CHNL_OUT_2
CH0+
2
PB3-B2
CHNL_RTN_1
1
PB3-B3
CHNL_OUT_1
CH1- Rtn (gnd)
CH0- Rtn (gnd)
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 29 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB3-E3
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB3-E2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB3-E7
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB3-E6
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB3-E11
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB3-E10
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB3-E15
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB3-E14
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB3-A17
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB3-A16
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB3-A13
5 FORCE
CH1 NEG OUT DRV_11
21
PB3-A12
2 FORCE
CH1 PICO NEG
20
PB3-A9
2 FORCE
CH1 NEG IN
19
PB3-A8
2 FORCE
DRV_9
DRV_10 DRV_12 DRV_13
18
PB3-A5
3 FORCE
17
PB3-A4
3 FORCE
16
PB3-E5
CH3 SENSE
EXT DRV1
1 FORCE
15
PB3-E4
CH2 SENSE
EXT IN3
1 FORCE
14
PB3-E9
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
13
PB3-E8
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB3-E13
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB3-E12
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB3-E17
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB3-E16
CH4 SENSE
EXT CLOCK
8
PB3-A15
4 FORCE
CH1 OUT 2
DRV_0
7
PB3-A14
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB3-A11
4 FORCE
CH1 EXT DRV
DRV_3
5
PB3-A10
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB3-A7
1 FORCE
CH1 RMS MTR DRV_4
3
PB3-A6
1 FORCE
CH1 DUT OUT DRV_5
2
PB3-A3
3 FORCE
1
PB3-A2
-SENSE
4 FORCE
CH1 POS IN
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
451
B - ASL 3000 Interconnects
Slot 29 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
BTB
32
PB3-E3
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
Q_2-_in
31
PB3-E2
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB3-E7
MUX_8_2
HVS_REF1
29
PB3-E6
MUX_8_1
28
PB3-E11
MUX_7_4
27
PB3-E10
MUX_7_3
26
PB3-E15
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
I_2+_in
25
PB3-E14
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
I_2_Vos_in
24
PB3-A17
MUX_6_4
OUT_23
Q_1-_in
23
PB3-A16
MUX_6_3
OUT_24
SPARE_10
22
PB3-A13
MUX_6_2
OUT_25
Q_1+_in
21
PB3-A12
MUX_6_1
OUT_26
Q_1_Vos_in
20
PB3-A9
MUX_5_4
OUT_27
I_1-_in
19
PB3-A8
MUX_5_3
OUT_28
SPARE_9
18
PB3-A5
MUX_5_2
I_1+_in
17
PB3-A4
MUX_5_1
I_1_Vos_in
16
PB3-E5
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB3-E4
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB3-E9
MUX_4_2
HVS_OUT_6
MVS_OUT_6
13
PB3-E8
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB3-E13
MUX_3_4
HVS_OUT_4
MVS_OUT_4
Pin
MVS_REF1
DUT 14
OFS_NEG_FO OUT_16 RCE
SPARE_12
OFS_REF1
OUT_17
Q_2+_in
OUT_18
Q_2_Vos_in
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
DUT 8
OUT_20
I_2-_in SPARE_11
OFS_OUT_8
OUT_1
Q_2-_out
OFS_OUT_7
OUT_2
SPARE_8
DUT 6
OFS_OUT_6
OUT_3
Q_2+_out
DUT 5 (GND)
OFS_OUT_5
OUT_4
SPARE_7
OFS_OUT_4
OUT_5
I_2-_out
11
PB3-E12
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
SPARE_6
10
PB3-E17
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
I_2+_out
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
9
PB3-E16
MUX_3_1
OUT_8
SPARE_5
8
PB3-A15
MUX_2_4
OUT_9
Q_1-_out
7
PB3-A14
MUX_2_3
OUT_10
SPARE_4
6
PB3-A11
MUX_2_2
OUT_11
Q_1+_out
5
PB3-A10
MUX_2_1
OUT_12
SPARE_3
4
PB3-A7
MUX_1_4
OUT_13
I_1-_out
3
PB3-A6
MUX_1_3
OUT_14
SPARE_2
2
PB3-A3
MUX_1_2
I_1+_out
1
PB3-A2
MUX_1_1
SPARE_1
452
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 29 Continued ASL 3000 I/O
AWG
AVD Uclk - Rtn (gnd)
Connector-Pin 32
PB3-E3
RESERVED
31
PB3-E2
RESERVED
Uclk -
30
PB3-E7
RESERVED
Uclk + Rtn (gnd)
29
PB3-E6
RESERVED
Uclk +
28
PB3-E11
EXT_TRIGGER_2
27
PB3-E10
EXT_TRIGGER_1
26
PB3-E15
RESERVED
25
PB3-E14
RESERVED
Vref 1 LS
24
PB3-A17
RESERVED
Vref 1 HF
23
PB3-A16
RESERVED
Vref 1 HS
22
PB3-A13
RESERVED
21
PB3-A12
RESERVED
20
PB3-A9
RESERVED
19
PB3-A8
RESERVED
Vref 0 LS
18
PB3-A5
RESERVED
Vref 0 HF
17
PB3-A4
RESERVED
Vref 0 HS
16
PB3-E5
CHNL_RTN_8
Ext Trig 1
15
PB3-E4
CHNL_OUT_8
Ext Trig 0
14
PB3-E9
CHNL_RTN_7
13
PB3-E8
CHNL_OUT_7
12
PB3-E13
CHNL_RTN_6
11
PB3-E12
CHNL_OUT_6
CH1-
10
PB3-E17
CHNL_RTN_5
CH1+ Rtn (gnd)
9
PB3-E16
CHNL_OUT_5
CH1+
8
PB3-A15
CHNL_RTN_4
7
PB3-A14
CHNL_OUT_4
6
PB3-A11
CHNL_RTN_3
5
PB3-A10
CHNL_OUT_3
CH0-
4
PB3-A7
CHNL_RTN_2
CH0+ Rtn (gnd)
3
PB3-A6
CHNL_OUT_2
CH0+
2
PB3-A3
CHNL_RTN_1
1
PB3-A2
CHNL_OUT_1
CH1- Rtn (gnd)
CH0- Rtn (gnd)
ASL Series Programming Guide
453
B - ASL 3000 Interconnects
Slot 30 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB2-F2
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB2-F3
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB2-F6
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB2-F7
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB2-F10
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB2-F11
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB2-F14
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB2-F15
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB2-B2
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB2-B3
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB2-B6
5 FORCE
CH1 NEG OUT DRV_11
21
PB2-B7
2 FORCE
CH1 PICO NEG
DRV_10
20
PB2-B10
2 FORCE
CH1 NEG IN
DRV_12
19
PB2-B11
2 FORCE
18
PB2-B14
3 FORCE
CH1 POS IN
DRV_15
17
PB2-B15
3 FORCE
16
PB2-F4
CH3 SENSE
EXT DRV1
1 FORCE
15
PB2-F5
CH2 SENSE
EXT IN3
1 FORCE
14
PB2-F8
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
13
PB2-F9
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
DRV_9
DRV_13 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
IO2
EXT RLY DRV
EXT_IN_2
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
12
PB2-F12
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB2-F13
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB2-F16
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB2-F17
CH4 SENSE
EXT CLOCK
8
PB2-B4
4 FORCE
CH1 OUT 2
DRV_0
7
PB2-B5
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB2-B8
4 FORCE
CH1 EXT DRV
DRV_3
5
PB2-B9
1 FORCE
CH1 FEEDBACK
DRV_2
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
4
PB2-B12
1 FORCE
CH1 RMS MTR DRV_4
3
PB2-B13
1 FORCE
CH1 DUT OUT DRV_5
2
PB2-B16
3 FORCE
1
PB2-B17
-SENSE
454
ASL Series Programming Guide
TMU EXT DRV3
DRV_7 CH1 OUT OUT DRV_6
RF DUT Interface Pinouts
Slot 30 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
BTB
32
PB2-F2
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
Q_2-_in
31
PB2-F3
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB2-F6
MUX_8_2
HVS_REF1
29
PB2-F7
MUX_8_1
28
PB2-F10
MUX_7_4
27
PB2-F11
MUX_7_3
26
PB2-F14
MUX_7_2
HVS_REF_CO MVS_REF_CO DUT 10 M M
OFS_REF_CO OUT_21 M
I_2+_in
25
PB2-F15
MUX_7_1
HVS_OUT_CO MVS_OUT_CO M M
OFS_OUT_CO OUT_22 M
I_2_Vos_in
24
PB2-B2
MUX_6_4
OUT_23
Q_1-_in
23
PB2-B3
MUX_6_3
OUT_24
SPARE_10
22
PB2-B6
MUX_6_2
OUT_25
Q_1+_in
21
PB2-B7
MUX_6_1
OUT_26
Q_1_Vos_in
20
PB2-B10
MUX_5_4
OUT_27
I_1-_in
19
PB2-B11
MUX_5_3
OUT_28
SPARE_9
18
PB2-B14
MUX_5_2
I_1+_in
17
PB2-B15
MUX_5_1
I_1_Vos_in
16
PB2-F4
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB2-F5
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB2-F8
MUX_4_2
HVS_OUT_6
MVS_OUT_6
13
PB2-F9
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB2-F12
MUX_3_4
HVS_OUT_4
MVS_OUT_4
Pin
MVS_REF1
DUT 14
OFS_NEG_FO OUT_16 RCE
SPARE_12
OFS_REF1
OUT_17
Q_2+_in
OUT_18
Q_2_Vos_in
DUT 13 (RLY DRV) HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
DUT 11 (RLY DRV)
DUT 8
OUT_20
I_2-_in SPARE_11
OFS_OUT_8
OUT_1
Q_2-_out
OFS_OUT_7
OUT_2
SPARE_8
DUT 6
OFS_OUT_6
OUT_3
Q_2+_out
DUT 5 (GND)
OFS_OUT_5
OUT_4
SPARE_7
OFS_OUT_4
OUT_5
I_2-_out
11
PB2-F13
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
SPARE_6
10
PB2-F16
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
I_2+_out
9
PB2-F17
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
SPARE_5
8
PB2-B4
MUX_2_4
OUT_9
Q_1-_out
7
PB2-B5
MUX_2_3
OUT_10
SPARE_4
6
PB2-B8
MUX_2_2
OUT_11
Q_1+_out
5
PB2-B9
MUX_2_1
OUT_12
SPARE_3
4
PB2-B12
MUX_1_4
OUT_13
I_1-_out
3
PB2-B13
MUX_1_3
OUT_14
SPARE_2
2
PB2-B16
MUX_1_2
I_1+_out
1
PB2-B17
MUX_1_1
SPARE_1
ASL Series Programming Guide
455
B - ASL 3000 Interconnects
Slot 30 Continued ASL 3000 I/O
AWG
AVD Uclk - Rtn (gnd)
Connector-Pin
456
32
PB2-F2
RESERVED
31
PB2-F3
RESERVED
Uclk -
30
PB2-F6
RESERVED
Uclk + Rtn (gnd)
29
PB2-F7
RESERVED
Uclk +
28
PB2-F10
EXT_TRIGGER_2
27
PB2-F11
EXT_TRIGGER_1
26
PB2-F14
RESERVED
25
PB2-F15
RESERVED
Vref 1 LS
24
PB2-B2
RESERVED
Vref 1 HF
23
PB2-B3
RESERVED
Vref 1 HS
22
PB2-B6
RESERVED
21
PB2-B7
RESERVED
20
PB2-B10
RESERVED
19
PB2-B11
RESERVED
Vref 0 LS
18
PB2-B14
RESERVED
Vref 0 HF
17
PB2-B15
RESERVED
Vref 0 HS
16
PB2-F4
CHNL_RTN_8
Ext Trig 1
15
PB2-F5
CHNL_OUT_8
Ext Trig 0
14
PB2-F8
CHNL_RTN_7
13
PB2-F9
CHNL_OUT_7
12
PB2-F12
CHNL_RTN_6
11
PB2-F13
CHNL_OUT_6
CH1-
10
PB2-F16
CHNL_RTN_5
CH1+ Rtn (gnd)
9
PB2-F17
CHNL_OUT_5
CH1+
8
PB2-B4
CHNL_RTN_4
7
PB2-B5
CHNL_OUT_4
6
PB2-B8
CHNL_RTN_3
5
PB2-B9
CHNL_OUT_3
CH0-
4
PB2-B12
CHNL_RTN_2
CH0+ Rtn (gnd)
3
PB2-B13
CHNL_OUT_2
CH0+
2
PB2-B16
CHNL_RTN_1
1
PB2-B17
CHNL_OUT_1
CH1- Rtn (gnd)
CH0- Rtn (gnd)
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 31 ASL 3000 PVI(1) & I/O
Connector-
OVI
DVI
ACS
TMU
DDD(M)
DOAL(1)
DCC
PV3(1) Pin 32
PB2-E3
CH3 FORCE
CH0 FORCE
-FORCE
ACS OUT
EXT ARM IN
CHANNEL 1
DUT POS OUT EXT_GND_RE F
31
PB2-E2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS DAC_AGND
30
PB2-E7
CH1 FORCE
CH0 SENSE
2 SENSE
SYNC 3
TMU CHAN B DUT1
CHANNEL 3
DUT NEG OUT PREC_REF_F ORCE
29
PB2-E6
CH0 FORCE
3 SENSE
RMS IN 2
TMU CHAN A DUT2
CHANNEL 4
EXT PICO NEG
DIFF_IN_NEG
28
PB2-E11
CH7 FORCE
CH1 FORCE
4 SENSE
RMS IN 4
TMU CHAN A DUT1
CHANNEL 5
DUT NEG IN
EXT_IN_1
27
PB2-E10
CH6 FORCE
CH1 GUARD
5 SENSE
CHANNEL 6
EXT DRV 1
DIFF_IN_POS
26
PB2-E15
CH5 FORCE
CH1 SENSE
5 FORCE
TMU HIZ DUT1 CHANNEL 7
DUT POS IN
EXT_FBACK_2
25
PB2-E14
CH4 FORCE
EXT DATA
5 FORCE
TMU HIZ DUT2 CHANNEL 8
EXT DRV 2
DIFF_IN_REF
24
PB2-A3
5 FORCE
TMU HIZ DUT3
CH1 POS OUT DRV_8
23
PB2-A2
5 FORCE
TMU HIZ DUT4
CH1 PICO POS
22
PB2-A7
5 FORCE
CH1 NEG OUT DRV_11
21
PB2-A6
2 FORCE
CH1 PICO NEG
DRV_10
20
PB2-A11
2 FORCE
CH1 NEG IN
DRV_12
19
PB2-A10
2 FORCE
18
PB2-A15
3 FORCE
17
PB2-A14
3 FORCE
16
PB2-E5
CH3 SENSE
EXT DRV1
1 FORCE
15
PB2-E4
CH2 SENSE
EXT IN3
1 FORCE
14
PB2-E9
CH1 SENSE
EXT DRV2
2 FORCE
RMS IN 1
IO2
EXT RLY DRV
EXT_IN_2
13
PB2-E8
CH0 SENSE
EXT IN2
2 FORCE
RMS IN 3
IO1
CH0 FEEDBACK
PREC_REF_S ENSE
DRV_9
DRV_13 CH1 POS IN
DRV_15 DRV_14
SYNC 2
TMU EXT DRV1
DUT OUT 2
EXT_FBACK_1
TMU EXT DRV2
EXT LOAD CONN
SERVO_TRIG GER
12
PB2-E13
CH7 SENSE
EXT IN1
3 FORCE
RMS METER
EXT_ADC_IN1
11
PB2-E12
CH6 SENSE
EXT ADC STB
3 FORCE
DUT OUT
EXT_ADC_IN2
10
PB2-E17
CH5 SENSE
EXT GND SENS
4 FORCE
EXT REF
EXT_DRV_2
9
PB2-E16
CH4 SENSE
EXT CLOCK
8
PB2-A5
4 FORCE
CH1 OUT 2
DRV_0
7
PB2-A4
4 FORCE
CH1 LOAD CONN
DRV_1
6
PB2-A9
4 FORCE
CH1 EXT DRV
DRV_3
5
PB2-A8
1 FORCE
CH1 FEEDBACK
DRV_2
4
PB2-A13
1 FORCE
CH1 RMS MTR DRV_4
3
PB2-A12
1 FORCE
CH1 DUT OUT DRV_5
2
PB2-A17
3 FORCE
1
PB2-A16
-SENSE
4 FORCE
EXT CLK IN
DUT OUT OUT EXT_DRV_1
TMU EXT DRV3
ASL Series Programming Guide
DRV_7 CH1 OUT OUT DRV_6
457
B - ASL 3000 Interconnects
Slot 31 Continued ASL 3000 I/O
Connector-
MUX(1)
HVS
MVS(2)
PRO(2)
OFS
LZB
BTB
32
PB2-E3
MUX_8_4
HVS_REF2
MVS_REF2
DUT16
OFS_REF2
OUT_15
Q_2-_in
31
PB2-E2
MUX_8_3
HVS_NEG_FO MVS_NEG_FO RCE RCE
30
PB2-E7
MUX_8_2
HVS_REF1
29
PB2-E6
MUX_8_1
28
PB2-E11
MUX_7_4
HVS_POS_FO MVS_POS_FO DUT 12 RCE RCE
OFS_POS_FO OUT_19 RCE
I_2-_in
31
PB2-E2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS
31
PB2-E2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS
31
PB2-E2
CH2 FORCE
CH0 GUARD
1 SENSE
SYNC 1
TMU CHAN B DUT2
CHANNEL 2
EXT PICO POS
24
PB2-A3
MUX_6_4
OUT_23
Q_1-_in
23
PB2-A2
MUX_6_3
OUT_24
SPARE_10
22
PB2-A7
MUX_6_2
OUT_25
Q_1+_in
21
PB2-A6
MUX_6_1
OUT_26
Q_1_Vos_in
20
PB2-A11
MUX_5_4
OUT_27
I_1-_in
19
PB2-A10
MUX_5_3
OUT_28
SPARE_9
18
PB2-A15
MUX_5_2
I_1+_in
17
PB2-A14
MUX_5_1
I_1_Vos_in
16
PB2-E5
MUX_4_4
HVS_OUT_8
MVS_OUT_8
15
PB2-E4
MUX_4_3
HVS_OUT_7
MVS_OUT_7
14
PB2-E9
MUX_4_2
HVS_OUT_6
MVS_OUT_6
13
PB2-E8
MUX_4_1
HVS_OUT_5
MVS_OUT_5
12
PB2-E13
MUX_3_4
HVS_OUT_4
MVS_OUT_4
Pin
MVS_REF1
DUT 14
OFS_NEG_FO OUT_16 RCE
SPARE_12
OFS_REF1
OUT_17
Q_2+_in
OUT_18
Q_2_Vos_in
DUT 13 (RLY DRV)
DUT 8
OFS_OUT_8
OUT_1
Q_2-_out
OFS_OUT_7
OUT_2
SPARE_8
DUT 6
OFS_OUT_6
OUT_3
Q_2+_out
DUT 5 (GND)
OFS_OUT_5
OUT_4
SPARE_7
OFS_OUT_4
OUT_5
I_2-_out
11
PB2-E12
MUX_3_3
HVS_OUT_3
MVS_OUT_3
DUT 3 (+15V)
OFS_OUT_3
OUT_6
SPARE_6
10
PB2-E17
MUX_3_2
HVS_OUT_2
MVS_OUT_2
DUT 2 (RLY DRV)
OFS_OUT_2
OUT_7
I_2+_out
9
PB2-E16
MUX_3_1
HVS_OUT_1
MVS_OUT_1
DUT 1 (-15V)
OFS_OUT_1
OUT_8
SPARE_5
8
PB2-A5
MUX_2_4
OUT_9
Q_1-_out
7
PB2-A4
MUX_2_3
OUT_10
SPARE_4
6
PB2-A9
MUX_2_2
OUT_11
Q_1+_out
5
PB2-A8
MUX_2_1
OUT_12
SPARE_3
4
PB2-A13
MUX_1_4
OUT_13
I_1-_out
3
PB2-A12
MUX_1_3
OUT_14
SPARE_2
2
PB2-A17
MUX_1_2
I_1+_out
1
PB2-A16
MUX_1_1
SPARE_1
458
ASL Series Programming Guide
RF DUT Interface Pinouts
Slot 31 Continued ASL 3000 I/O
AWG
AVD Uclk - Rtn (gnd)
Connector-Pin 32
PB2-E3
RESERVED
31
PB2-E2
RESERVED
Uclk -
30
PB2-E7
RESERVED
Uclk + Rtn (gnd)
29
PB2-E6
RESERVED
Uclk +
28
PB2-E11
EXT_TRIGGER_2
27
PB2-E10
EXT_TRIGGER_1
26
PB2-E15
RESERVED
25
PB2-E14
RESERVED
Vref 1 LS
24
PB2-A3
RESERVED
Vref 1 HF
23
PB2-A2
RESERVED
Vref 1 HS
22
PB2-A7
RESERVED
21
PB2-A6
RESERVED
20
PB2-A11
RESERVED
19
PB2-A10
RESERVED
Vref 0 LS
18
PB2-A15
RESERVED
Vref 0 HF
17
PB2-A14
RESERVED
Vref 0 HS
16
PB2-E5
CHNL_RTN_8
Ext Trig 1
15
PB2-E4
CHNL_OUT_8
Ext Trig 0
14
PB2-E9
CHNL_RTN_7
13
PB2-E8
CHNL_OUT_7
12
PB2-E13
CHNL_RTN_6
11
PB2-E12
CHNL_OUT_6
CH1-
10
PB2-E17
CHNL_RTN_5
CH1+ Rtn (gnd)
9
PB2-E16
CHNL_OUT_5
CH1+
8
PB2-A5
CHNL_RTN_4
7
PB2-A4
CHNL_OUT_4
6
PB2-A9
CHNL_RTN_3
5
PB2-A8
CHNL_OUT_3
CH0-
4
PB2-A13
CHNL_RTN_2
CH0+ Rtn (gnd)
3
PB2-A12
CHNL_OUT_2
CH0+
2
PB2-A17
CHNL_RTN_1
1
PB2-A16
CHNL_OUT_1
CH1- Rtn (gnd)
CH0- Rtn (gnd)
ASL Series Programming Guide
459
B - ASL 3000 Interconnects
460
ASL Series Programming Guide