ASL Series Programming Guide

December 10, 2016 | Author: Webber You | Category: N/A
Share Embed Donate


Short Description

Download ASL Series Programming Guide...

Description

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

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF