Agilent B1500-Programming Guide
Agilent B1500-Programming Guide
Semiconductor Device
Analyzer
Programming Guide
Agilent Technologies
Notices
© Agilent Technologies 2005, 2006, 2007 Warranty defined in FAR 52.227-19(c)(1-2) (June
1987). U.S. Government users will receive
No part of this manual may be reproduced in The material contained in this docu- no greater than Limited Rights as defined in
any form or by any means (including elec- ment is provided “as is,” and is sub-
tronic storage and retrieval or translation FAR 52.227-14 (June 1987) or DFAR
ject to being changed, without notice, 252.227-7015 (b)(2) (November 1995), as
into a foreign language) without prior agree- in future editions. Further, to the max-
ment and written consent from Agilent applicable in any technical data.
imum extent permitted by applicable
Technologies, Inc. as governed by United law, Agilent disclaims all warranties,
States and international copyright laws. either express or implied, with regard
to this manual and any information
Manual Part Number contained herein, including but not
B1500-90010 limited to the implied warranties of
merchantability and fitness for a par-
Edition ticular purpose. Agilent shall not be
liable for errors or for incidental or
Edition 1, August 2005 consequential damages in connec-
Edition 2, April 2006 tion with the furnishing, use, or per-
Edition 3, June 2007 formance of this document or of any
Edition 4, December 2007 information contained herein. Should
Agilent and the user have a separate
written agreement with warranty
Agilent Technologies, Inc. terms covering the material in this
5301 Stevens Creek Blvd document that conflict with these
Santa Clara, CA 95051 USA terms, the warranty terms in the sep-
arate agreement shall control.
Technology Licenses
The hardware and/or software described in
this document are furnished under a license
and may be used or copied only in accor-
dance with the terms of such license.
• “Programming Basics”
This chapter provides basic information to control the Agilent B1500.
• “Remote Mode Functions”
This chapter explains the functions of the Agilent B1500 in the remote mode.
• “Programming Examples”
This chapter lists the GPIB commands and explains the programming examples
for each measurement mode or function. The examples have been written in the
Microsoft Visual Basic .NET or the HP BASIC language.
• “Command Reference”
This chapter provides the complete reference of the GPIB commands of the
Agilent B1500.
• “Error Messages”
This chapter lists the error codes, and explains them.
EasyEXPERT is a trademark of Agilent Technologies. Microsoft, Windows, and Visual Basic are registered trademarks
of Microsoft Corporation. All other trademarks are the property of their respective owners.
Contents
1. Programming Basics
Before Starting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
FlexGUI Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
To Reset the Agilent B1500 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
To Read Query Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
To Perform Self-Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
To Perform Self-Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
To Perform Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
To Enable Source/Measurement Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
To Select the Measurement Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
To Force Voltage/Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11
To Set the SMU Integration Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
To Set the Measurement Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
To Pause Command Execution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
To Start Measurement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
To Force 0 V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
To Disable Source/Measurement Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
To Control ASU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
To Control SCUU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
To Read Error Code/Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
To Read Spot Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
To Read Sweep Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
To Read Time Stamp Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
To Perform High Speed Spot Measurement. . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21
Command Input Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
Header. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
Numeric Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
Terminator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Special Terminator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Separator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
Data Output Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
ASCII Data Output Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
Binary Data Output Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-36
GPIB Interface Capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-55
Status Byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-56
Programming Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-58
To Confirm the Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-59
To Confirm the Command Completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-59
To Disable the Auto Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-59
To Optimize the Measurement Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-60
To Optimize the Integration Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-60
To Disable the ADC Zero Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-60
To Optimize the Source/Measurement Wait Time . . . . . . . . . . . . . . . . . . . . . . 1-61
To Use the Internal Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-62
To Get Time Data with the Best Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . 1-62
To Use Sweep Source as a Constant Source . . . . . . . . . . . . . . . . . . . . . . . . . . 1-62
To Start Measurements Simultaneously. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-62
To Perform Quasi-Sampling Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-63
To Interrupt Command Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-63
To Use Programs for Agilent 4142B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-64
To Use Programs for Agilent 4155/4156 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-65
To Use Programs for Agilent E5260/E5270 . . . . . . . . . . . . . . . . . . . . . . . . . . 1-67
3. Programming Examples
Programming Basics for Visual Basic .NET Users . . . . . . . . . . . . . . . . . . . . . . . . 3-4
To Create Your Project Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
To Create Measurement Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
High-Speed Spot Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9
Spot Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
Pulsed Spot Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15
Staircase Sweep Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18
Pulsed Sweep Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28
Staircase Sweep with Pulsed Bias Measurements . . . . . . . . . . . . . . . . . . . . . . . 3-32
Quasi Pulsed Spot Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36
Linear Search Measurements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-39
Binary Search Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-42
Multi Channel Sweep Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-45
Sampling Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49
Quasi-static CV Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-54
High-Speed Spot C Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-59
Spot C Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-65
CV (DC Bias) Sweep Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-69
4. Command Reference
Command Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
Command Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23
AAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24
AB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24
ACH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
ACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27
ACV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27
ADJ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
ADJ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
AIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29
ALS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
ALS? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
ALW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
ALW? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
AV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
AZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
BC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
BDM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
BDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-35
BDV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-35
BGI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
BGV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38
BSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
BSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40
BSSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42
BSSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-43
BST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-44
BSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-44
BSVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
*CAL? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-46
CL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-47
CLCORR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-48
CM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-49
CMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-49
CN/CNX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-50
CORR? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-52
CORRDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-53
CORRDT? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-54
CORRL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-54
CORRL?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-55
CORRSER? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-55
CORRST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-57
CORRST?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-57
DCORR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-58
DCORR?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-59
DCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-60
DI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-60
DIAG? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-61
DO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-62
DV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-63
DZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-64
EMG? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-65
END . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-65
ERC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-65
ERM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66
ERMOD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67
ERMOD? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67
ERR? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-68
ERRX? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69
ERS? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69
ERSSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70
ERSSP?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71
FC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71
FL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-72
FMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-72
*IDN? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-74
IMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-75
IN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-75
LGI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-76
LGV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-77
LMN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-78
LOP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-78
*LRN? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-79
LSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-85
LSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-86
LSSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-87
LSSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-88
LST? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-89
LSTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-90
LSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-91
LSVM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-92
MCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-92
MDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-93
MI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-94
ML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-95
MM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-95
MSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-97
MSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-98
MT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-99
MTDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-101
MV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-102
NUB? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-103
ODSW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-103
ODSW? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-103
*OPC? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-104
OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-105
OSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-105
PA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-106
PAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-106
PAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-107
PDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-108
PI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-109
PT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-110
PTDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-111
PV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-112
PWDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-113
PWI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-114
PWV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-115
QSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-116
QSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-116
QSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-117
QSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-117
QSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-118
QST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-119
QSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-120
QSZ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-122
RC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-122
RCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-123
RI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-124
RM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-124
*RST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-125
RU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-126
RV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-126
RZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-127
SAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-128
SAP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-128
SAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-129
SCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-129
SER. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-130
SER? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-130
SIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-131
SIM? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-131
SPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-131
SPM? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-132
SPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-132
SPPER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-133
SPPER?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-133
SPRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-133
SPRM? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-134
SPST?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-134
SPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-135
SPT? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-136
SPUPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-136
SPV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-137
SPV?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-138
*SRE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-138
*SRE? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-139
SRP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-139
SSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-140
SSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-140
SSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-142
ST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-143
*STB? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-144
STGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-144
STGP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-145
TACV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-145
TC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-146
TDCV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-147
TDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-148
TDV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-149
TGMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-150
TGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-151
TGPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-153
TGSI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-154
TGSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-155
TGXO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-155
TI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-156
TM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-157
TMACV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-158
TMDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-159
TSC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-159
TSQ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-160
TSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-160
*TST? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-161
TTC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-162
TTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-163
TTV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-164
TV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-165
UNT? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-166
VAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-166
VAR? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-167
WACV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-167
WAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-168
WDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-169
WFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-170
WI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-171
WM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-172
WMACV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-173
WMDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-174
WMFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-175
WNU? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-176
WNX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-176
WS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-179
WSI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-179
WSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-181
WSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-182
WT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-183
WTACV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-184
WTDCV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-185
WTFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-186
WV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-187
WZ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-189
XE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-189
5. Error Messages
Operation Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Self-test/Calibration Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
This chapter describes basic information to control the Agilent B1500, and consists
of the following sections.
• “Before Starting”
• “Getting Started”
• “Command Input Format”
• “Data Output Format”
• “GPIB Interface Capability”
• “Status Byte”
• “Programming Tips”
Before Starting
Before starting the programming using the Agilent FLEX command, perform
following.
1. Terminate the Agilent EasyEXPERT software as follows.
FlexGUI Window
Once the Agilent B1500 receives a GPIB command, the Start EasyEXPERT button
is minimized to the Windows task bar, and the FlexGUI window shown in Figure
1-1 is opened. The FlexGUI window is the status indicator of the B1500 in the GPIB
remote state and provides the following GUI.
Tools menu Go to Local & Close Returns the B1500 to the local state and closes the
FlexGUI window. After that the Start EasyEXPERT button
appears.
Close Substitution of Go to Local & Close when the B1500 is
already in the local state. Closes the FlexGUI window.
After that the Start EasyEXPERT button appears.
Options > Enable
GPIB Capturing Enables or disables the GPIB log display function.
Help menu About FlexGUI Opens the About FlexGUI dialog box.
Model number and Shows “Agilent Technologies B1500A” and its firmware revision number.
revision number
Interface name Shows the name of the B1500 internal GPIB interface.
GPIB Instrument Shows the B1500 remote status. Has the following indicators.
Status
RMT Turns green while the B1500 is in the GPIB remote state.
LTN Turns green while the B1500 receives a GPIB command.
TLK Turns green while the B1500 sends a response.
SRQ Turns green since the service request occurs.
The last status display continues after the last communication.
Enable GPIB Enables or disables the GPIB log display function. This function can be set to ON
Capturing by checking this check box.
The GPIB log display function is useful for debugging a program. For the normal
remote operation, this function should be OFF.
GPIB Command- Displays the following information as the communication log when the GPIB log
Output Window display function is ON. No information is displayed when the function is OFF.
Elements(Respons Sets the number of elements displayed in a line to 4, 8, 16, 32, 64, or 128 elements.
e) in one Row One element is equivalent to one character of the ASCII format data.
Display Format Sets the following function ON or OFF. The function can be set to ON by checking
the check box.
Show Hex Data Displays the values given in hexadecimal.
Show Ascii Data Displays the values given in ASCII format.
Auto Clear Clears the log display area automatically every display update.
However, if an error occurs, the error message will be left in the
log display area. Also, if the display update mode is BUFFER,
the last log will be left in this area.
Cancel Cancels the setup changes and closes the dialog box.
Getting Started
This section explains the following basic operations. In this section, the HP BASIC
language is used for the examples.
• “To Reset the Agilent B1500”
• “To Read Query Response”
• “To Perform Self-Test”
• “To Perform Self-Calibration”
• “To Perform Diagnostics”
• “To Enable Source/Measurement Channels”
• “To Select the Measurement Mode”
• “To Force Voltage/Current”
• “To Set the SMU Integration Time”
• “To Set the Measurement Range”
• “To Pause Command Execution”
• “To Start Measurement”
• “To Force 0 V”
• “To Disable Source/Measurement Channels”
• “To Control ASU”
• “To Control SCUU”
• “To Read Error Code/Message”
• “To Read Spot Measurement Data”
• “To Read Sweep Measurement Data”
• “To Read Time Stamp Data”
• “To Perform High Speed Spot Measurement”
To Perform Self-Test
The B1500 starts the self-test by the *TST? command. The *TST? command also
returns the test result.
To Perform Self-Calibration
The B1500 starts the self-calibration by the *CAL? command.
To Perform Diagnostics
The B1500 starts the diagnostics by the DIAG? command, and returns the result.
You must specify the diagnostics item by the command parameter. Available
parameter values are:
1: Trigger In/Out diagnostics
3: High voltage LED diagnostics
4: Digital I/O diagnostics
To perform diagnostics 1, connect a BNC cable between the Ext Trig In terminal
and the Ext Trig Out terminal before starting the diagnostics.
To perform diagnostics 4, disconnect any cable from the digital I/O port.
NOTE The Mode No. is not assigned for the high speed spot measurement. See “To
Perform High Speed Spot Measurement” on page 1-21. The high speed spot
measurement does not need the MM command.
For the source output commands available for each measurement mode, see Table
1-3 on page 1-12.
To Force Voltage/Current
The commands listed in Table 1-2 is used to force voltage or current. These
commands start to force the voltage or current immediately when the command is
executed. They can be used regardless of the measurement mode.
See Table 1-3 for the commands available for each measurement mode. The
commands just set the source channel condition, and the source channel starts the
output by the start trigger, such as the XE command. For more details of the
commands, see Chapter 4, “Command Reference.”
Table 1-2 Voltage/Current Output Commands
Command Description
TDV Applies DC voltage from SMU, and returns the time data.
TDI Applies DC current from SMU, and returns the time data.
FC/TACV Applies AC voltage from MFCMU, and returns the time data.
TDCV Applies DC bias from MFCMU, and returns the time data.
High-speed ADC Effective for the high speed measurement. In the multi
channel sweep measurement mode (MM16), multiple
measurement channels can perform synchronous
measurements.
The number of averaging samples must be set by the
AIT or AV command.
Example The following example sets the number of samples to 10 for the high-speed A/D
converter.
OUTPUT @B1500;"AV 10,1"
The following example sets the power line cycle mode (PLC) for both the
high-speed ADC and the high-resolution ADC. And channel 1 uses the
high-resolution ADC and other channels use the high-speed ADC.
OUTPUT @B1500;"*RST"
OUTPUT @B1500;"AIT 0,2"
OUTPUT @B1500;"AIT 1,2"
OUTPUT @B1500;"AAD 1,1"
Command Description
RI Sets the current measurement range. Available for the
current measurements that use the XE command. Not
available for the high speed spot measurement.
TI, TTI Sets the current measurement channel/range, and performs
the high speed spot measurement.
RV Sets the voltage measurement range. Available for the
voltage measurements that use the XE command. Not
available for the high speed spot measurement.
TV, TTV Sets the voltage measurement channel/range, and performs
the high speed spot measurement.
RC Sets the impedance measurement range. Available for the
CV sweep/spot C measurements.
TC, TTC Sets the impedance measurement channel/range, and
performs the high speed spot measurement.
For the current measurement with the auto ranging mode, you can specify the
coverage of each measurement range. To specify the coverage, send the RM
command.
For details, see Chapter 4, “Command Reference.”
Example This example sets the voltage measurement ranging mode of channel 1 to auto.
OUTPUT @B1500;"RV 1,0"
This example sets the current measurement ranging mode of channel 1 to auto, and
specifies coverage between 9 % and 90 % of the range value or between 90 mA and
180 mA for the 200 mA range.
OUTPUT @B1500;"RI 1,0"
OUTPUT @B1500;"RM 1,3,90"
To Start Measurement
To start measurement other than the high speed spot measurement, send the XE
command.
To Force 0 V
To force 0 V immediately, send the DZ command. The B1500 memorizes the
present source output settings of the specified channel, and changes the specified
channel output to 0 V. If you do not specify the channel, the DZ command function
is effective for all channels.
To Control ASU
This function is available for the B1500 that is installed with the high resolution
SMU (HRSMU). Atto Sense and Switch Unit (ASU) has two inputs, SMU input for
the HRSMU and AUX input for the other instrument. And the ASU input to output
connection can be controlled by the following commands. When the B1500 is
turned on, the SMU input will be connected to the ASU output. However, the SMU
output switch will be off at this time.
Table 1-4 ASU Input Output Connection Control
where, chnum must be the channel number of the HRSMU connected to the ASU.
See “SAL”, “SAP”, and “SAR” on page 4-129 for the other function and control
commands of the ASU.
When the SMU side is connected to the ASU output, the source output on/off can be
controlled by the CN/CL command. And then the SAP chnum, 1 command is used
to change the output connection to the AUX side. When the AUX side is connected,
the output of the instrument connected to the AUX input is appeared to the ASU
output immediately.
To Control SCUU
SCUU (SMU CMU Unify Unit) can be used with one capacitance measurement unit
(CMU) and two SMUs (MPSMU or HRSMU). The SCUU cannot be used with the
HPSMU or when only one SMU is connected. The SCUU input to output
connection can be controlled by the following commands. When the B1500 is
turned on, the SCUU input to output connection is not made (open).
Table 1-5 SCUU Input Output Connection Control
Example 1 For the HP BASIC users, use the ENTER statement. The example stores the header
information and the measurement data included in the ASCII data set by the FMT5
command into the Head$ and Mdata variables respectively.
ENTER @B1500 USING "#,3A,12D,X";Head$,Mdata
Example 2 For the Microsoft Visual Basic .NET with Agilent T&M Programmer’s Toolkit
users, use the Read, ReadList, UnbufferedRead methods and so on. The example
stores the header information and the measurement data included in the ASCII data
set by the FMT5 command into the head and mdata variables respectively.
ret_value = B1500.Read(True)
head = Left(ret_val, 3)
mdata = Val(Right(ret_val, 12))
The time stamp function records the time from timer reset (Time=0 s) to the start of
measurement. This function is enabled by the TSC command. The timer count is
cleared/reset by the TSR command.
For example, the output data in the staircase sweep measurement will be as follows:
Block1 [,Block2] . . . . <terminator>
BlockN (N: integer) = Time1,Data1 [,Time2,Data2] ... [,Source_data]
TimeN (N: integer) is the time from timer reset to the start of DataN measurement.
Without the TSC command, you can get the time data by the following commands:
• TDV / TDI (for voltage/current output by using a SMU),
TDCV / TACV (for DC voltage/AC voltage output by using the MFCMU):
Starts source output, and returns the time data from timer reset (TSR command)
to the start of output.
Example: OUTPUT @B1500;"TDV 1,0,20"
ENTER @B1500 USING "#,5X,13D,X";Time
PRINT "Time=";Time;"sec"
• TTV / TTI (for voltage/current measurement by using a SMU),
TTC (for impedance measurement by using the MFCMU):
Executes high speed spot measurement, and returns the measurement data and
the time data from timer reset (TSR command) to the start of measurement.
Example: OUTPUT @B1500;"TTV 1,0"
ENTER @B1500 USING "#,5X,13D,X";Time
ENTER @B1500 USING "#,5X,13D,X";Mdata
PRINT "Data=";Mdata;" at ";Time;"sec"
• TSQ: Returns the time data from timer reset (TSR command) to this command.
Example: OUTPUT @B1500;"TSR" !Resets count
:
OUTPUT @B1500;"TSQ" !Returns time data
ENTER @B1500 USING "#,5X,13D,X";Time
PRINT "Time=";Time;"sec"
Line
Description
Number
;
Separator
,
SP : Space
NOTE Terminator
Terminator is necessary to enter the command to the Agilent B1500. For the
available terminators, see “Terminator” and “Special Terminator” on page 1-24.
Header
The header is the command name, always contains alpha characters, and is not
upper or lowercase sensitive. Some command names also contain an asterisk (*) or
question mark (?). The following figure shows the syntax diagram for a header.
Header Syntax Diagram
Alpha Character
(A to Z, a to z)
* ?
Numeric Data
Numeric data are the command parameters. You can enter numeric data directly
after the header or insert spaces between the header and numeric data. Some
parameters require integer data. The following figure shows the syntax diagram for
numeric data.
Numeric Data Syntax Diagram
Integer Data
The following 3 figures show the syntax diagrams for integer, fixed point, and
floating point data, respectively.
Integer Data Syntax Diagram
+
Digit
(0 to 9)
SP − SP
SP : Space
+
Digit Digit
(0 to 9) (0 to 9)
SP − SP
SP : Space
+ + *1
Digit Digit Digit
E
(0 to 9) (0 to 9) (0 to 9)
SP − e − SP
SP : Space
*1: Here must be 2 digits or less.
Terminator
The terminator completes the GPIB command entry and starts command execution.
The following figure shows the terminator syntax diagram.
Terminator Syntax Diagram
^
EOI
CR LF
LF
^
EOI
Special Terminator
If a semicolon (;) is inserted before the terminator, as shown in the following figure,
the preceding commands are not executed until the next command line is input and
another terminator is input, without a preceding semicolon. The command lines are
then executed together.
Special Terminator Syntax Diagram
; CR LF
LF
^
EOI
Separator
If you enter multiple commands, use semicolons (;) to separate the commands.
Spaces are allowed before and after the semicolons. Command execution starts
when the terminator is received, not when the semicolon is received. You can input
multiple commands of up to a total of 256 characters (including the terminator). If
you input more than 256 characters, the input buffer overflows, and an error is
indicated.
Use commas (,) to separate numeric data entries.
NOTE Do not include the reset command (*RST) or the abort command (AB) in multiple
command strings (example: OUTPUT @B1500;”*RST;CN”). If you do, the other
commands in the string (example: CN) are not executed.
Conventions
The following conventions are used in this section.
Data Output data that the B1500 sends after a measurement.
[Data] Optional output data sent when there are multiple output data
items.
For example, source data will be sent with measurement data
after the staircase sweep measurements when the source data
output is enabled by the FMT command.
<terminator> Terminator.
<CR/LF^EOI> (two bytes) or <,> (one byte) for ASCII data.
<CR/LF^EOI> (two bytes) or <^EOI> (0 byte) for binary data.
You can select by using the FMT command.
Time Stamp
The B1500 can record the time when the measurement is started, and sends the time
data (Time). This function is enabled by the TSC command. The time data will be
sent just before the measurement data.
For example, in the staircase sweep measurements, the data will be as shown below.
Block1 [,Block2] . . . . <terminator>
where, BlockN (N: integer) = Time1,Data1 [,Time2,Data2] ... [,Source_data], then
TimeN (N: integer) is the time from timer reset to the start of DataN measurement.
The timer count is cleared/reset by the TSR command (Time=0).
The time stamp function is not available for the following measurements.
Data Format
The data output format depends on the measurement mode as shown below.
High Speed Spot Data <terminator> (by TI, TV, TMACV, or TMDCV command)
Time,Data <terminator> (by TTI or TTV command)
Para1,Para2 <terminator> (by TC command)
Time,Para1,Para2 <terminator> (by TTC command)
Data is the value measured by the channel you specify in the command. Time is the
time from timer reset to the start of measurement. Para1 and Para2 are the primary
parameter and the secondary parameter (ex: Cp and G) measured by the CMU. They
are selected by the IMP command.
Para1,Para2
For the spot C measurement, Data consists of the following data:
Para1,Para2 [,Osc_level,Dc_bias]
Para1 and Para2 are the primary and secondary parameters (ex: Cp and G). They
are selected by the IMP command. See Table 4-8 on page 4-20. And Osc_level and
Dc_bias are the monitor values of the oscillator level (AC signal level) and the DC
bias respectively. They are sent if the data output is enabled by the LMN command.
Data Elements
The data (Data, Source_data, Time, Sampling_no, Data_search, Data_sense,
Osc_level, and Dc_bias) are the string as shown in Table 1-6.
The data elements depends on the FMT command setting. Details of the elements
are described on the following pages.
A: Status. One character.
B: Channel number. One character.
C: Data type. One character.
D: Data. Twelve digits or 13 digits.
E: Status. Three digits.
F: Channel number. One character.
G: Data type. One character.
B Channel number of the measurement/source channel. One character. See Table 1-11
on page 1-34.
D Measurement data, output data, time data, or sampling index. Twelve or 13 digits
depends on FMT setting, which may be one of the following:
• sn.nnnnnEsnn or sn.nnnnnnEsnn
• snn.nnnnEsnn or snn.nnnnnEsnn
• snnn.nnnEsnn or snnn.nnnnEsnn
where,
s: Sign, + or -.
n: Digit, 0 to 9.
E: Exponent symbol.
F Channel number of the source/measurement module. One character. See Table 1-11
on page 1-34.
G Data type. One character. Also see Table 1-12 on page 1-35.
Table 1-7 Source Data Status
A or EEE Explanation
W Data is for the first or intermediate sweep step.
E Data is for the last sweep step.
EEE Explanation
1 A/D converter overflowed.
2 One or more units are oscillating.
4 Another unit reached its compliance setting.
8 This unit reached its compliance setting.
16 Target value was not found within the search range.
32 Search measurement was automatically stopped.
64 Invalid data is returned. D is not used.
128 EOD (End of Data).
EEE Explanation
1 A/D converter overflowed.
2 CMU is in the NULL loop unbalance condition.
4 CMU is in the IV amplifier saturation condition.
8 Not assigned.
16 Not assigned.
32 Not assigned.
64 Invalid data is returned. D is not used.
128 EOD (End of Data).
A Explanation
X One or more channels are oscillating. Or source output did not settle before
measurement.a
G For linear or binary search measurement, the target value was not found within
the search range. Returns the source output value.
For quasi-pulsed spot measurement, the detection time was over the limit (3 s for
Short mode, 12 s for Long mode).b
S For linear or binary search measurement, the search measurement was stopped.
Returns the source output value. See status of Data_sense.
For quasi-pulsed spot measurement, output slew rate was too slow to perform the
settling detection.c Or quasi-pulsed source channel reached the current
compliance before the source output voltage changed 10 V from the start
voltage.d
a. Make the wait time or delay time longer. Or make the current compliance larger. For
pulsed measurement, make the pulse width longer, or make the pulse base value
closer to the pulse peak value. For current output by limited auto ranging, make the
output range lower.
b. Make the current compliance or start voltage larger. Or set the detection interval to
Long. If this status occurs with the Long mode, perform the spot measurement.
c. Make the current compliance larger. Or set the detection interval to Long. If this sta-
tus occurs with the Long mode, perform the spot measurement or pulsed spot mea-
surement.
d. Perform the pulsed spot measurement or spot measurement.
B or F Explanationa
C Explanation
V Voltage (V)
I Current (A)
F Frequency (Hz)
C or G Explanation
C Capacitance (F)
L Inductance (H)
R Phase (radian)
P Phase (degree)
D Dissipation factor
Q Quality factor
X Sampling index
T Time (second)
G Explanation
f Frequency (Hz)
z invalid data
Time Stamp
The B1500 can record the time when the measurement is started, and sends the time
data (Time). This function is enabled by the TSC command. The time data will be
sent just before the measurement data.
For example, in the staircase sweep measurements, the data will be as shown below.
Block1 [Block2] . . . . <terminator>
where, BlockN (N: integer) = Time1 Data1 [Time2 Data2] ... [Source_data], then
TimeN (N: integer) is the time from timer reset to the start of DataN measurement.
The timer count is cleared/reset by the TSR command (Time=0).
The time stamp function is not available for the following measurements.
Data Resolution
The 4 bytes binary data format provides the following data resolution. To use this
data format, enter the FMT3 or FMT4 command. The resolution of the SMU
measurement value will be larger than the measurement resolution of the B1500’s
high resolution A/D converter. For Range value, see “4 Bytes Data Elements” on
page 1-41.
Data Format
The data output format depends on the measurement mode as shown below.
High Speed Spot Data <terminator> (by TI, TV, TMACV, or TMDCV command)
Time Data <terminator> (by TTI or TTV command)
Para1 Para2 <terminator> (by TC command)
Time Para1 Para2 <terminator> (by TTC command)
Data is the value measured by the channel you specify in the command. Time is the
time from timer reset to the start of measurement. Para1 and Para2 are R (Ω) and X
(Ω), or G (S) and B (S) respectively measured by the CMU. They will be
automatically selected by the B1500, and will be a couple without data overflow.
Time is available for the 8 bytes binary data format (FMT13 or FMT14) and not
available for the 4 bytes binary data format (FMT3 or FMT4)
Para1 Para2
For the spot C, Data consists of the following data:
Para1 Para2 [Osc_level Dc_bias]
Para1 and Para2 are R (Ω) and X (Ω), or G (S) and B (S) respectively. They will be
automatically selected by the B1500, and will be a couple without data overflow.
And Osc_level and Dc_bias are the monitor values of the oscillator level (AC signal
level) and the DC bias respectively. They are sent if the data output is enabled by the
LMN command.
Sampling, Available for the 8 bytes binary data format (FMT13 or FMT14).
C-t Sampling
Block1 [Block2] . . . . <terminator>
Block1 is the block of the data measured at the first sampling point.
Block2 is the block of the data measured at the second sampling point.
where Block consists of the following data:
[Sampling_no] Data1 [Data2] . . . .
Sampling_no is the sampling point index, and is returned by entering the FMT
command with mode<>0. This value depends on the sampling interval setting and
the measurement time. If the measurement time is shorter than the sampling
interval, Sampling_no will be N of BlockN (N: 1, 2, 3 . . . ).
DataN (N: integer) is the data measured by one unit. The order of Data is specified
by the MM command. Sampling_no and Data values can be discarded when the
range changing is occurred while the measurement with auto or limited auto
ranging.
If the measurement time is longer than the sampling interval, Sampling_no is not N
of BlockN. For example, if the measurement time is longer than the sampling
interval and shorter than twice the sampling interval, then the Sampling_no is 2 for
Block1, and 4 for Block2. In general, the measurement time depends on the
measurement value and the A/D converter settings.
For the C-t sampling, Data consists of the following data:
Para1 Para2
Para1 and Para2 are R (Ω) and X (Ω), or G (S) and B (S) respectively. They will be
automatically selected by the B1500, and will be a couple without data overflow.
TDI, TDV, TSQ, Available for the 8 bytes binary data format (FMT13 or FMT14).
TACV, TDCV
command Time <terminator>
Time is the time from timer reset to the start of output.
A Explanation
D (SMU data) Data count. This value is expressed in 17-bit binary data. The measurement data and
the source data can be calculated by the following formula.
Measurement data = Count × Range / 50000
Source data = Count × Range / 20000
where, Count is the D value, and Range is the measurement range or output range
given by C.
For the decimal value of C, the Range value of current and capacitance data will be
10^(C-20).
If the top bit of D is 0, Count is positive and equal to the value given by the
following 16 bits.
If the top bit of D is 1, Count is negative. Calculate Count by subtracting 65536
(10000000000000000 in binary) from the value given by the following 16 bits.
Example:
If the output binary data is:
11010110000100111000100000000001
then,
Type: Measurement data (A=1)
Parameter: Current (B=1)
Range: 1 nA=10^(11-20) A (C=01011 in binary, C=11 in decimal)
Count: 5000 (D=00001001110001000)
Status: Normal condition (E=000)
Channel: SMU1 (channel number 1) (F=00001)
Measurement data = 5000 × 1E–9 / 5E+4 = 100 pA
NOTE B=1 and C=10100 means that HPSMU used 1 A range or MPSMU used 200 mA
range. Then use Range=1 to calculate the data for both HPSMU and MPSMU.
Range=0.2 is not available even if the range value is 200 mA.
D (CMU data) Data count. This value is expressed in 17-bit binary data. The measurement data and
the output data can be calculated by the following formula.
Resistance or reactance = Count × Range / 212
Conductance or susceptance = Count / (212 × Range)
OSC level monitor value = Count × Range / 50000
DC bias monitor value = Count × Range / 50000
DC bias output value = Count / 500
Output signal frequency = Count × Range / 50000
where, Count is the D value, and Range is the measurement range or output range
given by C.
For the decimal value of C, the Range value of resistance, reactance, conductance,
and susceptance data will be 10^C Ω.
If the top bit of D is 0, Count is positive and equal to the value given by the
following 16 bits.
If the top bit of D is 1, Count is negative. Calculate Count by subtracting 65536
(10000000000000000 in binary) from the value given by the following 16 bits.
Example:
If the output binary data is:
10001000000011111010000000001000
then,
Type: Measurement data (A=1)
Parameter: Resistance (or reactance) (B=0)
Range: 10 kΩ =10^4 (C=00100 in binary, C=4 in decimal)
Count: 4000 (D=00000111110100000)
Status: Normal condition (E=000)
Channel: 8 (F=01000)
Measurement data = 4000 × 10000 / 212 = 9.76 kΩ
E Explanation
F Channel number of the measurement/source channel. Five bits. See Table 1-14 on
page 1-47.
E Explanation
010 (2) For SMU: This channel reached its compliance setting.
011 (3) Measurement data is over the measurement range. Or the sweep measurement
was aborted by the automatic stop function or power compliance. Meaningless
value will be returned to D.
100 (4) For SMU: One or more channels are oscillating. Or source output did not settle
before measurement.a
110 (6) For linear or binary search measurement, the target value was not found within
the search range. Returns the source output value.
For quasi-pulsed spot measurement, the detection time was over the limit (3 s for
Short mode, 12 s for Long mode).b
111 (7) For linear or binary search measurement, the search measurement was stopped.
Returns the source output value. See status of Data_sense.
For quasi-pulsed spot measurement, output slew rate was too slow to perform the
settling detection.c Or quasi-pulsed source channel reached the current
compliance before the source output voltage changed 10 V from the start
voltage.d
a. Make the wait time or delay time longer. Or make the current compliance larger. For
pulsed measurement, make the pulse width longer, or make the pulse base value closer
to the pulse peak value. For current output by limited auto ranging, make the output
range lower.
b. Make the current compliance or start voltage larger. Or set the detection interval to
Long. If this status occurs with the Long mode, perform the spot measurement.
c. Make the current compliance larger. Or set the detection interval to Long. If this status
occurs with the Long mode, perform the spot measurement or pulsed spot measurement.
d. Perform the pulsed spot measurement or spot measurement.
F Explanationa
A Explanation
0 Data other than measurement data.
1 Measurement data.
B Explanation
0000000 (0) SMU voltage measurement or output data (V)
0000001 (1) SMU current measurement or output data (A)
0000010 (2) SMU QSCV capacitance measurement data (F)
0000011 (3) Time data (second)
0000110 (6) Sampling index
0000111 (7) CMU output signal frequency data (Hz)
0001000 (8) CMU oscillator level output data (Vac)
0001001 (9) CMU DC bias output data (Vdc)
0001010 (10) CMU oscillator level monitor data (Vac)
0001011 (11) CMU DC bias monitor data (Vdc)
0001100 (12) CMU resistance measurement data (Ω)
0001101 (13) CMU reactance measurement data (Ω)
0001110 (14) CMU conductance measurement data (S)
0001111 (15) CMU susceptance measurement data (S)
0010000 (16) SMU QSCV leakage current averaging value (A), in transition
0010001 (17) SMU QSCV voltage V0 (V), before voltage transition
0010010 (18) SMU QSCV voltage V (V), after voltage transition
0010011 (19) SMU QSCV leakage current IL0 (A), before voltage transition
0010100 (20) SMU QSCV leakage current IL (A), after voltage transition
0010101 (21) SMU QSCV charge current I (A), in transition
0010110 (22) SMU QSCV voltage averaging value (V), in transition
0010111 (23) SMU QSCV sink SMU current setup value (A)
00000000 (0) 1Ω
00000001 (1) 10 Ω
00001001 (9) 5V 10 pA 10 pF 1 GΩ
00001100 (12) 20 V 10 nA 10 nF
00010001 (17) 1 mA 1 mF
00010010 (18) 10 mA 10 mF
00010011 (19) 100 mA 100 mF
00010100 (20) 1A 1F
D Data count. This value is expressed in 4 bytes binary data. The measurement data
and the output data can be calculated by the following formula.
Resistance or reactance = Count × Range / 224
Conductance or susceptance = Count / (224 × Range)
DC bias output value = Count / 1000
Data other than the above parameters = Count × Range / 1000000
where, Count is the D value, and Range is the measurement range or output range
given by C.
For the decimal value of C, the Range value of current and capacitance data will be
10^(C-20), and the Range value of resistance, reactance, conductance, and
susceptance data will be 10^C Ω.
If the top bit of D is 0, Count is positive and equal to the value given by the
following 31 bits.
If the top bit of D is 1, Count is negative. Calculate Count by subtracting
2147483648 (10000000000000000000000000000000 in binary) from the value
given by the following 31 bits.
Example:
If the output binary data is:
1000000100001011000000000000000110000110101000000000000000000001
then,
Type: Measurement data (A=1)
Parameter: Current (B=0000001)
Range: 1 nA=10^(11-20) A (C=01011 in binary, C=11 in decimal)
Count: 100000 (D=00000000000000011000011010100000)
Status: Normal condition (E=00000000)
ADC: High speed ADC (G=000)
Channel: SMU1 (channel number 1) (F=00001)
Measurement data = 100000 × 1E–9/1E+6 = 100 pA
NOTE B=0000001 and C=00010100 means that HPSMU used 1 A range or MPSMU used
200 mA range. Then use Range=1 to calculate the data for both HPSMU and
MPSMU. Range=0.2 is not available even if the range value is 200 mA.
E Explanation
F Channel number of the measurement/source channel. Five bits. See Table 1-14 on
page 1-47.
G A/D converter. Three bits. For the source data and time data, G=000.
G Explanation
H Data count for the time data. This value is expressed in 6 bytes binary data. The time
data can be calculated by the following formula.
Time = Count / 1000000
where, Count is the decimal value of H.
If the top bit of H is 0, Count is positive and equal to the value given by the
following 47 bits.
If the top bit of H is 1, Count is negative. Calculate Count by subtracting
140737488355328 (100000000000000000000000000000000000000000000000 in
binary) from the value given by the following 47 bits.
H=100000000000000000000000000000000000000000000000 means invalid data.
Example:
If the output binary data is:
0000001100000000000000000000000000000001100001101010000000000001
then,
Type: Data other than the measurement data (A=0)
Parameter: Time (B=0000011)
Count: 100000 (H=
000000000000000000000000000000011000011010100000)
Channel: SMU1 (channel number 1) (F=00001)
Time data = 100000 / 1000000 = 0.1 second
E Explanation
00000010 (2) For SMU: One or more channels are oscillating. Or source output did not settle
before measurement.a
00000100 (4) For SMU: Another channel reached its compliance setting.
For CMU: CMU is in the IV amplifier saturation condition.
00001000 (8) For SMU: This channel reached its compliance setting.
00010000 (16) For linear or binary search measurement, the target value was not found within
the search range. Returns the source output value.
For quasi-pulsed spot measurement, the detection time was over the limit (3 s for
Short mode, 12 s for Long mode).b
00100000 (32) For linear or binary search measurement, the search measurement was stopped.
Returns the source output value. See status of Data_sense.
For quasi-pulsed spot measurement, output slew rate was too slow to perform the
settling detection.c Or quasi-pulsed source channel reached the current
compliance before the source output voltage changed 10 V from the start
voltage.d
a. Make the wait time or delay time longer. Or make the current compliance larger. For
pulsed measurement, make the pulse width longer, or make the pulse base value closer to
the pulse peak value. For current output by limited auto ranging, make the output range
lower.
b. Make the current compliance or start voltage larger. Or set the detection interval to Long.
If this status occurs with the Long mode, perform the spot measurement.
c. Make the current compliance larger. Or set the detection interval to Long. If this status
occurs with the Long mode, perform the spot measurement or pulsed spot measurement.
d. Perform the pulsed spot measurement or spot measurement.
• ABORT (IFC)
• CLEAR (DCL or SDC. same as AB command)
• LOCAL (GTL)
• LOCAL LOCKOUT (LL0)
• REMOTE
• SPOLL (Serial Poll)
• TRIGGER (GET. same as XE command)
Status Byte
Status byte bits are turned off or on (0 or 1) to represent the instrument operation
status. When you execute a serial poll, an external computer (controller) reads the
contents of the status byte, and responds accordingly. When an unmasked status bit
is set to “1”, the instrument sends an SRQ to the controller, causing the controller to
perform an interrupt service routine.
Decimal
Bit Description
Value
0 1 Data ready
Indicates whether the output buffer is empty. If an unread
data or query response exists, this bit is set to “1”. It is set
to “0” when all the stored data has been transferred to the
controller, or when the B1500 receives a *RST, BC, FMT,
or device clear command.
1 2 Wait
Indicates whether the instrument is in the wait status. This
bit is set to “1” when the B1500 has been set to the wait
state by the PA, WS, PAX, or WSX command. It is set to
“0” when the waiting condition is complete, or when the
B1500 receives a *RST or device clear command.
2 4 Not applicable. This bit is always set to “0”.
3 8 Interlock open
If the interlock circuit is open, and a voltage output or
voltage compliance setup value exceeds ±42 V, this bit is
set to “1” . It is set to “0” when the B1500 receives a serial
poll, *RST, or device clear command.
4 16 Set ready
If the B1500 receives a GPIB command or a trigger signal,
this bit is set to “0”. It is set to “1” when its operation is
completed. This bit is also set to “0” when the self-test or
calibration is started by front panel operation, and set to
“1” when it is completed.
Decimal
Bit Description
Value
5 32 Error
Indicates whether any error has occurred. If an error
occurred, this bit is set to “1”. It is set to “0” when the
B1500 receives a serial poll, *RST, ERR?, ERRX?, CA,
*TST?, *CAL?, DIAG? or device clear command.
6 64 RQS (You cannot mask this bit.)
Indicates whether an SRQ (Service Request) has occurred.
This bit is set to “1” whenever any other unmasked bit is
set to “1”. This causes the B1500 to send an SRQ to the
controller. It is set to “0” when the B1500 receives a serial
poll, *RST, or device clear command.
The status byte register can be read with either a serial poll or the *STB? query
command. Serial poll is a low-level GPIB command that can be executed by the
SPOLL command in HP BASIC, for example Status=SPOLL(@B1500).
In general, use serial polling (not *STB?) inside interrupt service routines. Use
*STB? in other cases (not in interrupt service routine) when you want to know the
value of the Status Byte.
NOTE If Bit 3 and Bit 5 are masked, they are not set to “0” by a serial poll. Also, if these
bits are masked, set to “1”, and then unmasked, a serial poll does not set them to “0”.
After a masked bit is set to “1”, removing the mask does not set Bit 6 to “1”. That is,
the B1500 does not send an SRQ to the controller. Therefore, if you remove a mask
from a bit, it is usually best to do it at the beginning of the program.
Programming Tips
This section provides the following additional information on creating measurement
programs. It is useful for checking the operation status, improving the measurement
speed, and so on.
• “To Confirm the Operation”
• “To Confirm the Command Completion”
• “To Disable the Auto Calibration”
• “To Optimize the Measurement Range”
• “To Optimize the Integration Time”
• “To Disable the ADC Zero Function”
• “To Optimize the Source/Measurement Wait Time”
• “To Use the Internal Program Memory”
• “To Get Time Data with the Best Resolution”
• “To Use Sweep Source as a Constant Source”
• “To Start Measurements Simultaneously”
• “To Interrupt Command Execution”
• “To Use Programs for Agilent 4142B”
• “To Use Programs for Agilent 4155/4156”
• “To Use Programs for Agilent E5260/E5270”
NOTE The ADC zero function is the function to cancel offset of the high resolution ADC.
This function is especially effective for low voltage measurements.
Delay time
: Measurement
Hold time Step delay time
Time
NOTE The wait time can be ignored if it is shorter than the delay time.
It is not easy to determine the best wait time. If you specify it too short, the
measurement may start before device characteristics stable. If too long, time will be
wasted.
The initial wait time may be too short for measurements of high capacitance or slow
response devices. Then set the wait time longer.
For measurements of low capacitance or fast response devices, if measurement
speed has top priority or is more important than reliability and accuracy, set the wait
time shorter.
• Sweep start value = Sweep stop value (for WI, WV, or WNX).
Also, setting number of sweep steps to 1 enables to perform a spot measurement.
NOTE Measurement setup is independent from source output setup. So, this simultaneous
measurement cannot be broken by the source output setup. Any setting of the output
ranging mode is effective for the simultaneous measurement.
Hold
Command Description
AIT Changes the A/D converter setting of the SMU during the
measurement.
ACT Changes the A/D converter setting of the MFCMU during the
measurement.
XE If the B1500 has been set to the wait status by the PA or PAX
command, the XE command can be used to release the wait
status. For details, see Chapter 4, “Command Reference.”
Category Command
Abort/pause/wait *WAI
R-box RBC
Category Command
This chapter describes the functions of the Agilent B1500 in the remote mode, and
the initial settings.
• “Measurement Modes”
• “Synchronous Output”
• “Automatic Abort Function”
• “Parallel Measurement Function”
• “Program Memory”
• “SPGU Module”
• “SMU/PG Selector”
• “Digital I/O Port”
• “Trigger Function”
• “Initial Settings”
Measurement Modes
The Agilent B1500 provides the following measurement modes.
• “Spot Measurements”
• “Pulsed Spot Measurements”
• “Staircase Sweep Measurements”
• “Multi Channel Sweep Measurements”
• “Pulsed Sweep Measurements”
• “Staircase Sweep with Pulsed Bias Measurements”
• “Quasi-Pulsed Spot Measurements”
• “Binary Search Measurements”
• “Linear Search Measurements”
• “Sampling Measurement”
• “Quasi-static CV Measurement”
• “Spot C Measurement”
• “Pulsed Spot C Measurement”
• “CV (DC bias) Sweep Measurement”
• “Pulsed Sweep CV Measurement”
• “C-f Sweep Measurement”
• “CV (AC level) Sweep Measurement”
• “C-t Sampling Measurement”
Spot Measurements
Spot measurement is performed as shown below. The measurement channel
performs one point measurement.
Channel 1 output
Setup value
Voltage or current
Channel 2 output
Setup value
Previous value
Time
DV/DI DV/DI Measurement trigger (e.g. XE)
NOTE The DV command is used to force voltage, and the DI command is used to force
current.
: Measurement
PT/PV/PI
Pulse value
Previous value
Base value
Time
Hold time Pulse width Hold time
1. The pulse source channel sets output by the PT command and the PV or PI
command. Only one channel can be used for the pulse source.
2. The pulse source channel starts output by a trigger, such as the XE command.
3. The measurement channel starts measurement as shown in Figure 2-2.
The channel performs measurement so that the pulse width and pulse period are
kept (the integration time setting is ignored). Only one channel can be used for
measurement.
4. After measurement, the pulse source forces the pulse base value, and keeps it.
If the next trigger occurs within the pulse period, pulse output is as follows.
• If the rest of the pulse period is longer than the hold time as shown in Figure
2-2, the pulse source waits for the rest, then starts the pulse output.
• If the rest of the pulse period is shorter than the hold time, the pulse source
waits for the hold time since the last trigger, then starts the pulse output.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
NOTE The PT command sets the pulse timing parameters, such as pulse width and pulse
period. The PV command sets voltage pulse, and the PI command sets current pulse.
Previous value
Delay time
Start value
Hold time
Delay time
Time
1. The staircase sweep source sets output by the WT, WM, and WV or WI
commands. Only one channel can be used for the sweep source.
2. The sweep source starts output by a trigger, such as the XE command.
3. After the hold time, the sweep source waits for the delay time.
4. After the delay time, the measurement channel starts measurement.
If you use multiple measurement channels, the channels perform measurement
in the order defined in the MM command.
5. After measurement, the sweep source waits for the rest of the step delay time if
it is set, and the sweep source changes the output value.
6. The B1500 repeats 4 and 5 for all sweep steps.
7. After the sweep measurement, the sweep source forces the start or stop value, as
specified by the WM command, and keeps it.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
NOTE The WT command sets the hold time, delay time, and step delay time. The WM
command sets the automatic abort function and the output after measurement. The
WV command sets the sweep voltage, and the WI command sets the sweep current.
The start and stop values must have the same polarity for log sweep.
To Use One more channel can be set up as a sweep source that has the output synchronized
Synchronous with the staircase sweep. Refer to “Synchronous Output” on page 2-40. After the
Sweep Source measurement, the synchronous sweep source forces the start or stop value, as
specified by the WM command, and keeps it.
Stop value
WT/WM/WV/WI
Previous value
Primary sweep
Start value
Voltage or current
Stop value
WSV/WSI
Previous value
Synchronous sweep
Start value
Time
NOTE The WSV command sets the sweep voltage, and the WSI command sets the sweep
current. You can use the same output mode (voltage or current) as the primary
sweep. The start and stop values must have the same polarity for log sweep.
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Even if the automatic abort function is disabled, the B1500 automatically stops
measurement if power compliance is enabled for the sweep source and the power
compliance or an automatic abort condition is detected.
Figure 2-5 Multi Channel Sweep Measurements using High-Resolution A/D Converter
Step delay time
Voltage or current
WT/WM/WV/WI
Stop value : Measurement
Trigger (e.g. XE)
Step delay time
Voltage or current
Stop value
WNX
1. The primary sweep source sets output by the WV or WI commands. And the nth
(n=2 to 10) sweep source sets output by the WNX command.
2. The sweep sources simultaneously start output by a trigger, such as the XE
command. However, if a sweep source sets power compliance or forces
logarithmic sweep current, the sweep sources start output in the order specified
by the n value. Then the first output is forced by the channel set by the WI or
WV command.
3. After the hold time, the sweep sources wait for the delay time.
4. After the delay time, the measurement channel starts measurement. If you use
multiple measurement channels, the channels that use the high speed ADC with
the fixed ranging mode start measurement simultaneously, then other channels
perform measurement in the order defined in the MM command.
5. After measurement, the sweep source waits for the rest of the step delay time if
it is set, and the sweep source changes the output value.
NOTE The WT command sets the hold time, delay time, and step delay time. The WM
command sets the automatic abort function and the output after measurement. The
WV/WI command sets the output of the first sweep source, and the WNX command
sets the output of the nth (n=2 to 10) sweep source. The start and stop values must
have the same polarity for log sweep.
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Even if the automatic abort function is disabled, the B1500 automatically stops
measurement if power compliance is enabled for the sweep source and the power
compliance or an automatic abort condition is detected.
Stop value
PT/WM/PWV/PWI
Pulse width
1. The pulsed sweep source sets output by the PT, WM, and PWV or PWI
commands. Only one channel can be used for the pulsed sweep source.
2. The pulsed sweep source starts output by a trigger, such as the XE command.
3. After the hold time, the measurement channel starts measurement as shown in
Figure 2-6. The channel performs measurement so that the pulse width and pulse
period are kept (the integration time setting is ignored). Only one channel can be
used for measurement.
4. After measurement, the pulsed sweep source forces the pulse base value, and
waits for the rest of the pulse period. Then the pulsed sweep source changes the
output value.
5. The B1500 repeats measurement and 4 for all sweep steps.
6. After the pulsed sweep measurement, the pulsed sweep source forces the pulse
base value, and keeps it.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
NOTE The PT command sets the hold time, pulse width, and pulse period. The WM
command sets the automatic abort function. The PWV sets the pulsed sweep
voltage, and the PWI sets the pulsed sweep current.
To Use One more channel can be set up as a staircase sweep source that has the output
Synchronous synchronized with the pulsed sweep. Refer to “Synchronous Output” on page 2-40.
Sweep Source After the measurement, the synchronous sweep source forces the start value, and
keeps it.
PT/WM/PWV/PWI
Start value
Previous value Pulsed sweep
Pulse base value
Voltage or current
Stop value
WSV/WSI
Previous value
Synchronous sweep
Start value
Time
NOTE The WSV command sets the sweep voltage, and the WSI command sets the sweep
current. You can use the same output mode (voltage or current) as the pulsed sweep.
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Even if the automatic abort function is disabled, the B1500 automatically stops
measurement if power compliance is enabled for the sweep source and the power
compliance or an automatic abort condition is detected.
Stop value
WM/WV/WI
Previous value
Staircase sweep
Start value
Voltage or current
Pulse width
: Measurement
PT/PV/PI
Pulse peak value
1. The staircase sweep source sets output by the WM, and WV or WI commands.
Only one channel can be used for the sweep source.
2. The pulsed source sets output by the PT, and PV or PI commands. Only one
channel can be used for the pulsed source.
3. The source channels start output by a trigger, such as the XE command.
4. After the hold time, the measurement channel starts measurement as shown in
Figure 2-8. The channel performs measurement so that the pulse width and pulse
period are kept (the integration time setting is ignored). Only one channel can be
used for measurement.
5. After the measurement, the sweep source changes the output value. Then the
pulsed source forces the pulse base value, and waits for the rest of the pulse
period until the next pulse output.
6. The B1500 repeats measurement and 5 for all sweep steps.
7. After the sweep measurement, the pulsed source forces the pulse base value, and
the sweep source forces the start or stop value, as specified by the WM
command, and keeps it.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
NOTE The WM command sets the automatic abort function and the output after
measurement. The WV command sets the sweep voltage, and the WI command sets
the sweep current. The start and stop values must have the same polarity for log
sweep.
The PT command sets the pulse timing parameters, such as pulse width and pulse
period. The PV command sets the voltage pulse, and the PI command sets current
pulse.
To Use One more channel can be set up as a sweep source that has the output synchronized
Synchronous with the staircase sweep. Refer to “Synchronous Output” on page 2-40.
Sweep Source
After the measurement, the synchronous sweep source forces the start or stop value,
as specified by the WM command, and keeps it.
Stop value
WT/WM/WV/WI
Previous value
Primary sweep
Start value
Voltage or current
Stop value
WSV/WSI
Previous value
Synchronous sweep
Start value
Time
NOTE The WSV command sets the sweep voltage, and the WSI command sets the sweep
current. You can use the same output mode (voltage or current) as the primary
sweep. The start and stop values must have the same polarity for log sweep.
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Even if the automatic abort function is disabled, the B1500 automatically stops
measurement if power compliance is enabled for the sweep source and the power
compliance or an automatic abort condition is detected.
X value : Measurement
BDT/BDM/BDV
Delay
Trigger (e.g. XE) time
Previous value
Start value
1. The quasi-pulse source channel sets output by the BDT, BDM, and BDV
commands. Only one channel can be used for the quasi-pulse source.
2. The quasi-pulse source starts output by a trigger, such as the XE command.
3. After the hold time, the quasi-pulse source starts the voltage transition to the
stop value (settling detection time). Also, it performs voltage measurement
(settling detection) in the interval set by the BDM command. The voltage
transition and settling detection continue until the output voltage slew rate
becomes half of the rate when settling detection started. The slew rate depends
on the cabling and the characteristics of the device. You cannot define it directly.
In normal operation, the slew rate will be slower in the following conditions:
• When the quasi-pulse source applies voltage close to the stop value.
• When the quasi-pulse source reaches its current compliance due to the
breakdown condition of the device under test.
NOTE If the slew rate was too slow when settling detection started or if the settling
detection time was too long, an error occurs and the source returns its output to the
start value immediately. See “BDM” on page 4-34.
4. After the settling detection stops, the quasi-pulse source keeps the output.
5. After the delay time, the measurement channel starts measurement.
Only one channel can be used for measurement.
6. After measurement, the quasi-pulse source immediately returns the output to the
start value and keeps it.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
NOTE If there is noise or skew on the output voltage, settling detection might stop at an
unexpected voltage.
NOTE The BDT command sets the hold time and delay time, and the BDM command sets
the settling detection interval and measurement mode (voltage or current); the BDV
command sets the output. Also |start-stop| must be 10 V or more.
Delay time
(1) Normal output
Delay time
(2) Cautious output
Hold time +D/4
+D/32 +D/64
Trigger
+D/2 : Measurement
Start
D = | Stop - Start |
Time
1. The search source sets output by the BSM, BST, and BSV or BSI commands.
Only one channel can be used for the search source.
2. The search source starts output by a trigger, such as the XE command.
3. After the hold time, the measurement channel waits for the delay time, and starts
measurement as shown in Figure 2-11. The measurement channel can be set by
the BGI or BGV command. Only one channel can be used for measurement.
4. After measurement, the search source changes the output value. The output
value depends on the output control mode, normal or cautious, selected by the
BSM command. See Figure 2-11.
5. The B1500 repeats measurement and 4 until the search stop condition is
satisfied. The search stop condition is one of the following conditions selected
by the BGI or BGV command.
NOTE The BSM command sets the search control mode, the automatic abort function, and
the output after search. The BST command sets the hold time and delay time. The
BSV/BSI command sets the search output, and the BGI/BGV command sets the
measurement channel.
To Use You can use the synchronous output channel that provides the output synchronized
Synchronous with the search source. Refer to “Synchronous Output” on page 2-40. After
Output Channel measurement, the synchronous channel forces the start+offset, stop+offset, or the
last output value, as specified by the BSM command, and keeps it.
Offset Offset
NOTE The BSSV/BSSI command sets the synchronous output. You can use the same
output mode (voltage or current) as the search source. All output values must be
covered by the output range of the search source.
Delay time
Hold time
Previous value
Start value
Time
1. The search source sets output by the LSM, LSTM, and LSV or LSI commands.
Only one channel can be used for the search source.
2. The search source starts output by a trigger, such as the XE command.
3. After the hold time, the measurement channel waits for the delay time, and starts
measurement as shown in Figure 2-13. The measurement channel can be set by
the LGI or LGV command. Only one channel can be used for the measurement.
4. After measurement, the search source changes the output value.
5. The B1500 repeats measurement and 4 until the search stop condition is
satisfied. The search stop condition is one of the following conditions selected
by the LGV or LGI command.
NOTE The LSM command sets the automatic abort function and the output after search.
The LSTM command sets the hold time and delay time. The LSV/LSI command
sets the search output, and the LGI/LGV command sets the measurement channel.
To Use You can use the synchronous output channel that provides output synchronized with
Synchronous the search source. Refer to “Synchronous Output” on page 2-40.
Output Channel
After measurement, the synchronous channel forces the start+offset, stop+offset, or
the last output value, as specified by the LSM command, and keeps it.
Offset
Offset Offset
Previous value
Primary search source
Start value
Time
NOTE The LSSV/LSSI command sets the synchronous output. You can use the same
output mode (voltage or current) as the search source. All output values must be
covered by the output range of the search source.
Sampling Measurement
Sampling measurement is performed as shown below. The sampling operation is
performed in the specified time interval until the number of measurement result data
reaches to the specified number of samples.
Channel 1 output
Setup value
Previous value
SMU Sampling interval
DV/DI
Voltage or current Bias hold time
Measurement time
Base hold time
Bias value MT/ML/MSC /MV/MI
Channel 2 output
Previous value
Base value SMU
Voltage
Measurement trigger (e.g. XE)
SIM0/SPRM/SPPER/
Peak value SPM/SPT /SPV/MSP
Previous value
Base value SPGU
Time
1. The sampling condition is set by the MT, ML, and MSC commands.
2. The SMU synchronous source channels are set by the MV/MI commands. The
channels will start output by a trigger, such as the XE command.
3. The SPGU synchronous source channels are set by the SIM 0, SPRM, SPPER,
SPM, SPT, SPV, and MSP. The channels will start output by a trigger.
4. The source channels set by the DI/DV commands will start output at the timing
of the DI/DV command execution.
5. The synchronous source channels force the base value by a trigger such as the
XE command, as follows.
The SPGUs start output in the order from lower to higher slot number, and then
the SMUs start output simultaneously.
6. After the base hold time, the synchronous source channels force the bias value or
the peak value as follows.
The SMUs start output simultaneously, and then the SPGUs start output in the
order from lower to higher slot number. However the SPGU pulse outputs are
started simultaneously.
The channels keep the output until the end of the sampling measurement.
7. And after the bias hold time, the measurement channels start measurement for
the first sampling point. The measurement channels perform the measurement in
series by the order set to the MM command.
8. After that, the following operation is repeated with Sampling interval.
• Measurement channels start measurement if they are ready to measure.
• Measurement channels keep the condition if they are busy.
This operation is repeated until the number of measurement result data reaches
to the specified number of samples.
For the linear sampling with interval < 2 ms, if the total sampling time runs over
Bias hold time + Sampling interval × number, the sampling measurement will be
stopped even if the number of measured data is less than the specified number.
For the log sampling, the B1500A holds only the data that can be plotted on the
log scale in the same distance as close as possible. Only the held data is counted
in the number of measured data.
9. After the sampling measurement, the synchronous source channels change the
output value as follows.
The SPGUs change the output in the order from higher to lower slot number, and
then the SMUs change the output simultaneously. However the SPGU pulse
outputs are stopped simultaneously.
If the SPGU operation mode is not Free Run and the total time of pulse output is
shorter than the sampling measurement time, the SPGU pulse outputs are
stopped simultaneously before the measurement is completed.
SPGU forces the post measurement output value set by the MSP command.
SMU forces the post measurement output value set by the MSC command.
10. The source channel set by the DV or DI command continues the source output.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
The index data (max. 9999999) and the time data returned with the measurement
data will be as shown in the following formula. However, long measurement or busy
status may cause unexpected time and index data.
time = t + Bias hold time + ( index -1) × Sampling interval
Where, t is the time of the sampling measurement time origin, and is the time when
the output value is changed from base to bias.
NOTE The MT command sets the bias hold time, sampling interval, number of samples,
and base hold time. If the sampling interval is less than 2 ms, the SPGU cannot be
used.
The MSC command sets the automatic abort function and the post measurement
output value of SMU.
The ML command sets the linear sampling mode or the log sampling mode.
The MV and MI commands set the SMU synchronous voltage and current source
respectively.
The SIM 0 command sets the pulse generator operation mode for all SPGU
channels.
The SPRM command sets the output operation mode for all SPGU channels, free
run (pulse output continues until SPP), pulse count, or duration.
The SPPER command sets the pulse period for all SPGU channels.
The SPM command sets the output mode of the SPGU channel, DC voltage, 2-level
pulse using source 1, 2-level pulse using source 2, or 3-level pulse using sources 1
and 2.
The SPT command sets the delay time, pulse width, leading time, and trailing time
of the SPGU channel.
The SPV command sets the pulse base and peak voltage or the DC bias voltage of
the SPGU channel.
The MSP command sets the SPGU synchronous voltage source and its post
measurement output value.
The MCC command clears the MV, MI, and MSP command setting.
To Stop Output An automatic abort function is available. Refer to “Automatic Abort Function” on
page 2-42.
Quasi-static CV Measurement
Quasi-static CV (QSCV) measurement is performed as shown. The specified SMU
performs the measurement at the sweep steps except for the sweep start voltage and
stop voltage. At each sweep step, current and voltage are measured during the
voltage transition from Nth step voltage-cvoltage/2 to Nth step voltage+cvoltage/2,
and capacitance is calculated by using the measured values. Where, cvoltage is the
capacitance measurement voltage. For the measurement operation, see Figure 2-16.
For the capacitance data calculation, see “Capacitance Data” on page 2-26.
Source parameters; start, stop, cvoltage, and step are set by the QSV command.
Time parameters; hold time, delay1, delay2, linteg, and cinteg are set by the QST
command. linteg and cinteg are the integration time for the leakage current
measurement and the capacitance measurement, respectively.
stop
(limit of sweep source output)
last step voltage
cvoltage= 2 × Vq
Trigger (XE)
delay1
1. Measurement trigger enables the sweep source output. The sweep source forces
1st step voltage-Vq, and waits for hold time. where Vq=cvoltage/2.
2. Repeats 3 and 4 for the Nth sweep step. where N is integer, 1 to step.
step is the number of sweep steps given by step = |start-stop| / |step voltage| -1.
3. The sweep source forces Nth step voltage-Vq, and waits for delay time (delay1).
4. The measurement unit measures the following items, and waits for delay time
(delay2).
IL0 Leakage current before the voltage transition
V0 Voltage before the voltage transition
I Charge current in the voltage transition to Nth step voltage+Vq
Vavg Averaging voltage in the voltage transition to Nth step voltage+Vq.
Not measured for the 4155C/4156C compatible operation mode set
by the QSC1 command.
IL Leakage current after the voltage transition
V Voltage after the voltage transition
5. After the sweep measurement, the sweep source forces the start or stop value, as
specified by the QSM command, and keeps it.
NOTE If the following condition is true, the measurement operation has the differences
shown below.
Capacitance Data
Capacitance data is given by the calculation. The calculation depends on the
operation mode set by the QSC command. There is two operation modes, Normal
and 4155C/4156C compatible.
• Capacitance Data
At each sweep step, the capacitance data is calculated by using the following
formula.
C = (I - Leak) × cinteg /(V-V0)
The QSL0,0 command disables the leakage current compensation and the
leakage current data output. Then the leakage current measurement is not
executed. The capacitance data is calculated by using the following formula.
C = I × cinteg /(V-V0)
• Leakage Current Data
At each sweep step, the leakage current data is calculated by using the following
formula. This data output is enabled by the QSL1,0 or QSL1,1 command.
Leak = IL0 + (IL - IL0) × (Vavg-V0)/(V-V0)
4155C/4156C Operation mode that provides a good compatibility with the measurement results by
Compatible Mode the 4155C/4156C
• Capacitance Data
At each sweep step, the capacitance data is calculated by using the following
formula.
C = (I - Leak) × cinteg /(V-V0)
The QSL0,0 command disables the leakage current compensation and the
leakage current data output. Then the leakage current measurement is not
executed. The capacitance data is calculated by using the following formula.
C = I × cinteg /(V-V0)
• Leakage Current Data
At each sweep step, the leakage current data is calculated by using the following
formula. This data output is enabled by the QSL1,0 or QSL1,1 command.
Leak = IL + τ × (IL0 - IL)/(2 × cinteg), where τ is the time for electrical charge
Spot C Measurement
Spot capacitance measurement is performed as shown below. The CMU
(capacitance measurement unit) applies DC bias with AC signal, and performs one
point measurement.
Before performing the measurement, select the measurement parameters by using
the IMP command. And select the output data by using the LMN command.
Previous value
Time
DCV Measurement trigger (e.g. XE)
: Measurement
PTDCV/PDCV/FC/ACV
Pulse value
Previous value
Base value
Time
Hold time Pulse width Hold time
• If the rest of the pulse period is longer than the hold time as shown in Figure
2-18, the CMU waits for the rest, then starts the pulse output.
• If the rest of the pulse period is shorter than the hold time, the CMU waits
for the hold time since the last trigger, then starts the pulse output.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the CMU output to 0 V for both AC and DC.
NOTE The PTDCV command sets the pulse timing parameters, such as pulse width and
pulse period.
The PDCV command sets pulsed DC bias (voltage) with AC signal.
The FC command sets the AC signal frequency.
The ACV command specifies the oscillator level, and applies the AC signal.
If the SCUU (SMU CMU Unify Unit) is connected to the 1 CMU and 2
MPSMUs/HRSMUs correctly, the source module is automatically selected by the
DC bias setting. The CMU is selected if it is ±25 V or less (setting resolution: 0.001
V), or the SMU is selected if it is greater than ±25 V (setting resolution: 0.005 V).
Previous value
Delay time
Start value
Hold time
Delay time
Time
NOTE The WTDCV command sets the hold time, delay time, and step delay time.
The WMDCV command sets the automatic abort function and the output after
measurement.
The WDCV command sets the DC bias sweep voltage. The start and stop values
must have the same polarity for log sweep.
The FC command sets the AC signal frequency.
The ACV command specifies the oscillator level, and applies the AC signal.
If the SCUU (SMU CMU Unify Unit) is connected to the 1 CMU and 2
MPSMUs/HRSMUs correctly, the source module is automatically selected by the
sweep range (from start to stop). The CMU is selected if it is ±25 V or less (setting
resolution: 0.001 V), or the SMU is selected if it is greater than ±25 V (setting
resolution: 0.005 V).
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Stop value
PTDCV/WMDCV/PWDCV/FC/ACV
Pulse width
NOTE The PTDCV command sets the pulse timing parameters, such as pulse width and
pulse period.
The WMDCV command sets the automatic abort function.
The PWDCV command sets the pulsed bias sweep voltage.
The FC command sets the AC signal frequency.
The ACV command specifies the oscillator level, and applies the AC signal.
If the SCUU (SMU CMU Unify Unit) is connected to the 1 CMU and 2
MPSMUs/HRSMUs correctly, the source module is automatically selected by the
sweep range (from start to stop). The CMU is selected if it is ±25 V or less (setting
resolution: 0.001 V), or the SMU is selected if it is greater than ±25 V (setting
resolution: 0.005 V).
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Previous value
Delay time
Start value
Hold time
Delay time
Time
1. The CMU sets the AC signal frequency sweep output by the WTFC, WMFC,
and WFC commands.
2. The CMU starts AC signal/DC bias output by the ACV and DCV commands.
3. The CMU starts frequency sweep by a trigger, such as the XE command.
4. After the hold time, the CMU waits for the delay time.
5. After the delay time, the CMU starts measurement.
6. After measurement, the CMU waits for the rest of the step delay time if it is set,
and the CMU changes the AC signal frequency.
7. The B1500 repeats 5 and 6 for all sweep steps.
8. After the sweep measurement, the CMU keeps the signal output of the AC signal
frequency’s start or stop value as specified by the WMFC command.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the CMU output to 0 V for both AC and DC.
NOTE The WTFC command sets the hold time, delay time, and step delay time.
The WMFC command sets the automatic abort function and the output after
measurement.
The WFC command sets the AC signal frequency sweep output.
The ACV command specifies the oscillator level, and applies the AC signal.
The DCV command applies the specified DC bias.
If the SCUU (SMU CMU Unify Unit) is connected to the 1 CMU and 2
MPSMUs/HRSMUs correctly, the source module is automatically selected by the
DC bias setting. The CMU is selected if it is ±25 V or less (setting resolution: 0.001
V), or the SMU is selected if it is greater than ±25 V (setting resolution: 0.005 V).
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Previous value
Delay time
Start value
Hold time
Delay time
Time
1. The CMU sets the AC signal level sweep output by the WTACV, WMACV,
WACV, and FC commands.
2. The CMU starts DC bias output by the DCV command.
3. The CMU starts AC signal level sweep by a trigger, such as the XE command.
4. After the hold time, the CMU waits for the delay time.
5. After the delay time, the CMU starts measurement.
6. After measurement, the CMU waits for the rest of the step delay time if it is set,
and the CMU changes the AC signal level.
7. The B1500 repeats 5 and 6 for all sweep steps.
8. After the sweep measurement, the CMU keeps the signal output of the AC signal
level’s start or stop value as specified by the WMACV command.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the CMU output to 0 V for both AC and DC.
NOTE The WTACV command sets the hold time, delay time, and step delay time.
The WMACV command sets the automatic abort function and the output after
measurement.
The WACV command sets the AC signal level sweep output.
The FC command sets the AC signal frequency.
The DCV command applies the specified DC bias.
If the SCUU (SMU CMU Unify Unit) is connected to the 1 CMU and 2
MPSMUs/HRSMUs correctly, the source module is automatically selected by the
DC bias setting. The CMU is selected if it is ±25 V or less (setting resolution: 0.001
V), or the SMU is selected if it is greater than ±25 V (setting resolution: 0.005 V).
To Stop Sweep An automatic abort function is available. Refer to “Automatic Abort Function” on
Output page 2-42.
Setup value
SMU output
Previous value
DV/DI
Sampling interval
DC bias Bias hold time
Measurement time
MTDCV/MSC / Base hold time
Bias value MDCV/FC/ACV
This operation is repeated until when the total sampling time runs over Bias hold
time + Sampling interval × number of samples. The sampling measurement will
be stopped even if the number of measurement result data is less than number.
9. After the sampling measurement, the CMU forces the base or bias value
specified by the MDCV command.
The source channel set by the DV or DI command continues the source output.
For 0 V output, enter the DZ command that is used to memorize the present
settings of the channel and change the output to 0 V.
The index data (max. 10001) and the time data returned with the measurement data
is given by the following formula. It depends on the measurement ranging mode set
by the RC command. However, long measurement or busy status may cause
unexpected time and index data.
NOTE The MTDCV command sets the bias hold time, sampling interval, number of
samples, and base hold time.
The MSC command sets the automatic abort function.
The MDCV command sets the DC bias output and the output after measurement.
The FC command sets the AC signal frequency.
The ACV command specifies the oscillator level, and applies the AC signal.
If the SCUU (SMU CMU Unify Unit) is connected to the 1 CMU and 2
MPSMUs/HRSMUs correctly, the source module is automatically selected by the
DC bias setting. The CMU is selected if it is ±25 V or less (setting resolution: 0.001
V), or the SMU is selected if it is greater than ±25 V (setting resolution: 0.005 V).
To Stop Output An automatic abort function is available. Refer to “Automatic Abort Function” on
page 2-42.
Synchronous Output
You can use synchronous output that will be synchronized to the output of the
primary sweep or search source. See Figure 2-24 and Figure 2-25. Synchronous
output is available for the following measurement modes and set by the following
commands:
The synchronous source supports the same output mode (voltage or current) as the
primary source, and does not support pulsed output.
Parameters The following parameters are used to set up a synchronous output. For details of the
commands, refer to Chapter 4, “Command Reference.”
Stop value
WT/WM/WV/WI
Previous value
Primary sweep
Start value
Voltage or current
Stop value
WSV/WSI
Previous value
Synchronous sweep
Start value
Time
Offset Offset
• WM: Staircase sweep, staircase sweep with pulsed bias, multi channel sweep,
and pulsed sweep measurements
• BSM: Binary search measurement
• LSM: Linear search measurement
• MSC: Sampling measurement and C-t sampling measurement
• QSM: Quasi-static CV measurement
• WMDCV: CV (DC bias) sweep measurement
• WMFC: C-f sweep measurement
• WMACV: CV (AC level) sweep measurement
When abort occurs After measurement is aborted, the source forces the following value. And then the
dummy data (199.999E+99) is returned for measurement points not reached.
Output after The commands listed above also can be used to set the source output after the
measurement measurement ends normally. The source output value can be one of the following
values.
• Sweep measurement: Start value or stop value
• Search measurement: Start value, stop value, or last output value
• Sampling measurement: Base value or bias value
Exceptions:
• For the sampling measurement, the SPGU output value can be set by the MSP
command, not the MSC command.
• For the C-t sampling measurement, the MFCMU output value can be set by the
MDCV command, not the MSC command.
• This function is not effective for the pulsed sweep measurement and the pulsed
sweep CV measurement.
NOTE Even if the source output value is specified, the source forces the start value or the
base value if the output is stopped by the automatic abort function, the power
compliance, or the AB command.
Program Memory
The program memory is a volatile memory that is used to store command strings
temporarily. The Agilent B1500 has a built-in program memory that can store 2,000
programs maximum, and a total of 40,000 commands.
The program memory can eliminate several processes in the program execution,
such as transferring commands, checking command syntax, and converting
commands to the internal codes. Thus, using the program memory speeds up
program execution. If frequently used command strings are stored in the program
memory, GPIB/computer activity is minimized.
To store programs Send the ST and END commands to store a program. The following procedure
stores a program (program number n) in the program memory. A multiple command
string is also available.
To call programs A memory program can invoke another memory program by storing the DO or RU
from a memory command in the memory program. Up to eight levels of nesting are available. The
program first level is always the DO or RU command sent by the external computer.
To use variables You can use variables in the memory programs. To enter the value to the variable,
send the VAR command. If the variable is referred by multiple programs or
commands, set or change the value carefully so that the program works fine without
errors. Format of the variable is %tn (t: integer I or real R, n: integer, 1 to 99).
In the following example, the first line stores a program (program 99) which uses
the %I50 variable. The second line enters 2 to %I50, and executes the program 99.
OUTPUT @B1500;"ST99;CN%I50;DV%I50,0,2;TI%I50;CL%I50;END"
OUTPUT @B1500;"VAR0,50,2;DO99"
To read programs To read the program numbers of the memory programs, send the LST? command
without a command parameter.
To read the contents of a memory program, send the LST? command with the
program number as shown below. Up to 3000 commands can be read by one
command execution.
OUTPUT @B1500;"LST? 100"
To delete To delete all memory programs, send the SCR command without a parameter.
programs
To delete a memory program, send the SCR command with the program number as
shown below.
OUTPUT @B1500;"SCR 100"
NOTE Turning off the instrument also clears the program memory. The device clear and
*RST commands do not clear the program memory.
Reset *RST
Diagnostics DIAG?
Self-test *TST?
Abort AB
SPGU Module
SPGU is the pulse generator module designed for the semiconductor parametric test
application and provides the following key functions.
• Number of output channels: 2 channels per module
• Output impedance: 50 Ω
• Output level: 0 to ± 40 V (open load), ± 20 V (50 Ω load)
• SPGU operation mode (effective for all channels installed in B1500A):
PG (pulse generator) or ALWG (arbitrary linear waveform generator)
• Channel output operation mode:
Free run, count, or duration
• PG output mode:
2-level pulse, 3-level pulse, or DC bias. For each channel.
• Pulse switch, which is more durable than mechanical relays, and better suited for
frequent switching applications.
• Automatic voltage level adjustment by specifying load impedance of DUT
Output 1 Output 2
PG 2-level PG 2-level
or 3-level or 3-level
or or
ALWG ALWG
• SPP command
• Repeat count reaches the number specified by SPRM 1 (only for count mode)
• Output time specified by SPRM 2 elapses (only for duration mode)
• A command sets the output switch OFF
• The output operation mode is changed by the SPRM command
The SPGU output can be started by the SRP command, which will cause the status
to change to active state.
PG Operation Mode
In the PG mode (pulse generator operation mode), the SPGU outputs normal 2- or
3-level pulse voltage or DC bias voltage. To set the PG mode, execute the SIM 0
command and use the commands listed in Table 2-2 to output pulse voltage or DC
bias voltage. See Figure 2-27 for information on control commands and output
timing.
Figure 2-27 SPGU Pulse Output Control Commands and Output Timing
SPUPD 801,901 SRP SPP
SPGU 801
base base
SPGU 802
base base
DV
SMU
In the example shown in Figure 2-27, channels 801 and 802 are used for pulse
output, and channels 901 and 902 are used for DC bias output. Channels 801 and
901 output at base voltage level in the specified order when the SPUPD command is
executed. Channels 802 and 902 start their output when the SRP command is
executed in the order of their channel numbers, except for pulse outputs, which are
always started simultaneously. Also note that pulse outputs stop simultaneously on
one of the following stop conditions.
Stop conditions:
• SPP command
• Repeat count reaches the number specified by SPRM 1 (only for count mode)
• Output time specified by SPRM 2 elapses (only for duration mode)
Command Description
SPM Selects the output mode of the channel, DC voltage, 2-level pulse using
source 1, 2-level pulse using source 2, or 3-level pulse using sources 1
and 2. See Figure 2-30 for details on forming 3-level pulses.
SPT Sets the delay time, pulse width, leading time, and trailing time of the
channel. See Figure 2-28 for details on the pulse setup parameters.
SPV Sets the pulse base and peak voltage or the DC bias voltage of the
channel. See Figure 2-28 for details on the pulse setup parameters.
SER or CORRSER? Sets the load impedance of device under test, or measures the load
impedance and sets it. This value is used for the automatic voltage level
adjustment.
SPUPD Applies the channel setup to the specified SPGUs. The channel outputs
the base voltage.
SPP Stops all SPGU pulse outputs. The channel outputs the base voltage.
ODSW Sets the pulse switch to enable or disable, the normal state to open or
close, the delay time for switching to start, and the state hold time.
STGP Defines the trigger output for the SPGU channel and is effective for all
channels in the same SPGU module. The trigger output is repeated at
the timing of each pulse start by the specified channel. See Figure 2-29
for an example of the trigger output by the SPGU channel 801.
SPGU 801
base base
Delay time
SPGU 802
base base
1V Output of
2-Level pulse source 1
1V Pulse period
0V Width1
Delay1
Pulse period
0V
Delay2
0V Width2
Output of
2-Level pulse source 1
3V
Pulse period
2V
Delay1 Width1 4V
Pulse period 3V
Output of
2-Level pulse source 2 2V
1V
3-Level pulse output
0V
Delay2 Width2
The SPGU output channels can be setup to be a 3-level pulse generator by using the
SPM 3 command. A 3-level pulse source can be made by defining two 2-level pulse
sources. For example, the upper example in Figure 2-30 can be made by the
following command sequence.
SPPER Period
SPM ch,3
SPT ch,1,Delay1,Width1,Leading1,Trailing1
SPV ch,1,0,1
SPT ch,2,Delay2,Width2,Leading2,Trailing2
SPV ch,2,0,-1
SPGU 801
initial value initial value
Pattern2 Pattern2 Pattern1 Pattern1
SPGU 901
initial value initial value
Pattern2 Pattern2 Pattern1 Pattern1 Pattern1
setup change (50 ns)
1 sequence
SPGU 901 pulse switch
0: Open
(normally open) 0 11 11 11 0 11 11 11 0 011 11 11 11011 11 11 110 11 11 11 110 1: Close
In the example shown in Figure 2-31, the SPGU channels 801 and 901 are used.
Both channels output Pattern2 twice and Pattern1 three times in one sequence. Then
the same pattern is set to the Pattern1 and Pattern2 of the channel 801, and two
different patterns are set to the channel 901. Between two patterns of the different
index, the setup change will cause delay time (50 ns).
The channels start their output when the SRP command is executed and repeat their
output simultaneously. And the sequence will be repeated as same as the pulse
period. The output can be stopped simultaneously by one of the following stop
conditions.
Stop conditions:
• SPP command
• Repeat count reaches the number specified by SPRM 1 (only for count mode)
• Output time specified by SPRM 2 elapses (only for duration mode)
NOTE Setup delay time and output voltage between the different patterns
When the pattern is changed to the pattern of the different index, 50 ns setup delay is
always inserted. There are no delay between the patterns of the same index.
During the pattern change, the channel keeps the last output voltage of the previous
pattern.
STGP 901,2 10 ns
Trigger Output >= 1 V
0 V (chassis common)
STGP 901,3 10 ns
Trigger Output >= 1 V
0 V (chassis common)
SPGU 901
initial value
1 sequence
SRP SPP
Command Description
SPRM Selects the operation mode, free run (output continues until SPP),
sequence count, or duration for all channels.
ALW Sets the ALWG pattern data for each channel. See Table 2-4.
ALS Sets the ALWG sequence data for the B1500A mainframe. See
Table 2-5.
SER Sets the load impedance of device under test. This value is used
for the automatic level adjustment.
SPUPD Applies the channel setup to the specified SPGUs. The channel
outputs the initial voltage.
SPP Stops all SPGU channel outputs. The channel outputs the initial
voltage.
ODSW Sets the pulse switch enable or disable and the normal state open
or close. Switch status (open or close) must be specified for each
vector data in the ALWG pattern data. See Table 2-4.
STGP Specifies the SPGU channel effective for the trigger output and
enables the function. The trigger output is repeated at the timing
of the sequence start, pattern change, or pattern start of the
specified channel. See Figure 2-32 for an example of the trigger
output by the SPGU channel 801.
:
Pattern data can be repeated until the x-th pattern. (x: number of patterns, integer)
(Total number of vector data must be ≤ 1024-x.)
a. Number of patterns must be 1 to 1000000000 (512).
b. Output level data must be 0 to 10011000100101101000000000 (40 V) or
11111111111111111111110000011000 (-1 mV) to 11111101100111011010011000000000 (-40
V) in 1111101000 (1 mV) resolution.
c. Incremental time data must be 1010 (10 nsec) to 100111111111111111111111110110
(671.088630 msec, (226-1)×10 nsec) in 1010 (10 nsec) resolution.
:
Pattern cycle data can be repeated until the x-th pattern cycle.
(x: number of pattern cycles, integer)
In the example of Figure 2-31, the total byte length of the pattern data is as follows.
SMU/PG Selector
The Agilent 16440A SMU/Pulse Generator Selector is used to switch the
measurement resources connected to DUT (device under test). The Input ports must
be connected to the measurement resources, an SMU and an SPGU or others, and
the Output port must be connected to the DUT interface. For the SMU connection,
connect the Force terminal only. The Sense terminal must be open.
Select the measurement resource with the ERSSP command which controls the
16440A selector connected through the Digital I/O connector and the Agilent
16445A selector adapter. This command sets the selector channel CH 1 or CH 2 to
the SMU connect, PGU connect, or open (no connection).
CH 1 of the selector additionally provides the PGU open status which is made by
keeping the PGU side mechanical relay close and opening the semiconductor relay.
This is effective for applications requiring frequent PGU open/connect switching
because a semiconductor relay is durable compared to a mechanical relay.
CH 1 CH 2
1 Output
DUT terminal 1
Output Input
SMU #1 Force
CH 1 Input
PGU #1 or others
1
Output
DUT terminal 2
2 Input
SMU #2 Force
PGU Input Input
PGU #2 or others
CONTROL
SMU Input Input
CH 1 Output CH 2
1
16440A Selector #1
CH 2 Output
1 16445A Selector Adapter
PGU Input CONTROL
Output Input
Up to two selectors can be used by connecting the selector control cable between the
CONTROL Output connector of the first selector and the CONTROL Input
connector of the second selector.
GND 25 13 GND
1 Do not use
Accessories
The following accessories are available to connect the Digital I/O port.
• Agilent 16493G Digital I/O connection cable
Used to connect the Digital I/O port to a D-Sub (f) 25-pin connector. This cable
should be connected between two B1500s, or between the B1500 and the
N1253A-200 BNC box. Cable length depends on the following option items:
16493G-001: Approx. 1.5 m
16493G-002: Approx. 3 m
• Agilent N1253A-100 Digital I/O T-cable
Used to connect the Digital I/O port to a D-Sub (f) 25-pin connector and a
D-Sub (m) 25-pin connector. This cable must be used to connect three or more
B1500s. Cable length is as following:
Vcc
R1
R2
to input control to DSUB pins
Vcc=5 V
from output control
R1=1 kohm
Q1 R2=100 ohm
Q1: Vce(sat)=0.3 V
Trigger Function
The Agilent B1500 can be synchronized with other equipment, such as capacitance
meters, voltmeters, ammeters, probers, handlers and so on, by using the following
terminals:
• Ext Trig In
BNC connector. Only for trigger input (to receive trigger).
• Ext Trig Out
BNC connector. Only for trigger output (to send trigger).
• Digital I/O
D-Sub 25-pin connector. Sixteen paths are available for the trigger port. Each
path can be used for either input or output. For the pin assignment and
accessories, refer to “Digital I/O Port”.
Figure 2-36 shows a connection example of the B1500 and another device.
Other device
in out
Example connection
13 out in 1
Agilent E5270
25 14
In Out
Ext Trig Digital I/O
NOTE To use the digital I/O port for the trigger input/output port, send the TGP command.
DIO 1 to DIO 16 can be used for the trigger input/output port. See Table 2-6.
Trigger Input
A trigger input operation example is shown in Figure 2-37. Measurement or source
output can be started by the input trigger sent through the port specified by the TGP
command. See Table 2-7.
Figure 2-37 Trigger Input Example, Staircase Sweep Measurement, Negative Logic
Start Measurement TGP t,1,p,1
Case 1
Start Step Output Setup TGP t,1,p,2
Case 2
Delay time or more
Case 1: With trigger for
first sweep step
Hold time (Case 2)
or more (Case 1) Case 2: With trigger for
output after sweep
: Measurement
Initial Settings The following functions are available in the initial settings:
Input Trigger The B1500 responds to the input trigger (minimum pulse width 10 μs) that changes
the signal level from high (approx. 2.4 V) to low (approx. 0.8 V). This is negative
logic. You can change it to positive logic by using the third parameter of the TGP
command.
Measurement Delay time from a trigger input to starting a step measurement. The delay time is
Trigger Delay available for the Start Step Measurement trigger (type 3). You can set the delay time
value by using the WT command (WTDCV for the CV sweep measurement).
PA/PAX/WS/WSX The commands put the B1500 in the trigger wait state. The B1500 can recover from
Commands the wait state if an external trigger is sent to a trigger input port. You can use the
commands regardless of the trigger type.
If you use the PA or PAX command to put the B1500 in the trigger wait state, send
the TM3 command before the PA or PAX command.
2 The sweep source starts to set the sweep step output. TGP t,1,p,2
TGSI m
The pulse source starts to set the pulsed output.
This trigger type is available for the staircase sweep,
pulsed spot, pulsed sweep, staircase sweep with pulsed
bias, multi channel sweep, and CV sweep measurement.
3 Waits for the measurement trigger delay, and starts the TGP t,1,p,3
sweep step measurement.
This trigger type is available for the staircase sweep,
multi channel sweep, and CV sweep measurement.
Trigger Output
A trigger output operation example is shown in Figure 2-38. When the measurement
or source output setup is completed, the output trigger is sent through the port
specified by the TGP command. See Table 2-8.
Figure 2-38 Trigger Output Example, Staircase Sweep Measurement, Negative Logic
Step delay time Source trigger delay
Delay time : Measurement
Hold time
XE
Initial Settings The following functions are available in the initial settings:
Output Trigger An edge trigger or a gate trigger will be sent when an operation is completed (see
Figure 2-39). Initially, the negative edge trigger is sent.
Source Trigger Delay time from when the source output setup is completed until an edge trigger is
Delay sent or a gate trigger level is returned. The delay time is available for the Step
Output Setup Completion trigger (type 2). You can set the delay time value by using
the WT command (WTDCV for the CV sweep measurement).
OS/OSX The command is used to send a trigger immediately from a trigger output terminal.
Commands You can use the commands regardless of the trigger type.
Using Multiple If you use the multiple measurement channels, an edge trigger will be sent or a gate
Channels trigger level will be returned when the measurement is completed by all channels.
For the multi channel sweep measurement, an edge trigger will be sent or a gate
trigger level will be returned when the source output setup is completed by all
channels, or when the measurement is completed by all channels.
High
Gate trigger (Approx. 2.4 V)
Low
(Approx. 0.8 V)
High
Edge trigger Approx. 10us (Approx. 2.4 V)
Low
(Approx. 0.8 V)
Negative logic Positive logic
2 When the source trigger delay time elapses after the TGP t,2,p,2
sweep step output setup or pulse output setup is TGSO m
completed.
Available for the staircase sweep, pulsed spot, pulsed
sweep, staircase sweep with pulsed bias, multi channel
sweep, and CV sweep measurement.
NOTE The TM command is used to select the event effective for starting measurement, or
releasing the wait time set by the PA or PAX command. Enter the TM command
before the PA or PAX command.
NOTE For easy programming, do not enter the TM command, or use the TM1, TM2, or
TM4 event mode. The TM3 event mode will complicate programming.
NOTE The HP BASIC ENTER statement pauses program execution until measurement
data is put in the data buffer, reads the data from the buffer, and then continues
program execution.
1. Connect a BNC cable between the Ext Trig In connector and a trigger output
connector of an external device.
2. Create a control program. Then the TM3 and TGP commands and HP BASIC
ENTER statement should be entered as shown in the following example:
:
OUTPUT @B1500;"MM1" ! Sets spot measurement mode
: ! Sets measurement condition
:
OUTPUT @B1500;"TM3" ! Uses external trigger
OUTPUT @B1500;"TGP -1,1,1,1" ! Sets trigger input
OUTPUT @B1500;"TGP -2,2,1,1" ! Sets trigger output
OUTPUT @B1500;"TGXO 2" ! Enables gate trigger
ENTER @B1500 USING "#,3X,12D,2X";M_data
:
NOTE The HP BASIC ENTER statement pauses program execution until measurement
data is put in the data buffer, reads the data from the buffer, and then continues
program execution.
Example This example uses the negative edge trigger (set by the TGP and
TGXO/TGMO/TGSO commands), and the Case 1 Start Step Output Setup trigger
(set by the TGSI command). The WT command sets the hold time, delay time, step
delay time, source trigger delay time, and the measurement trigger delay time.
:
OUTPUT @B1500;"MM2" ! Sets staircase sweep measurement mode
: ! Sets measurement condition
:
OUTPUT @B1500;"TM3" !Uses external trigger
OUTPUT @B1500;"TGP -1,1,2,1" !Start Measurement trigger
OUTPUT @B1500;"TGP 2,1,2,3" !Start Step Measurement trigger
OUTPUT @B1500;"TGP 1,1,2,2" !Start Step Output Setup trigger
OUTPUT @B1500;"TGP -2,2,2,1" !Measurement Completion trigger
OUTPUT @B1500;"TGP 12,2,2,3" !Step Measurement Completion trigger
OUTPUT @B1500;"TGP 11,2,2,2" !Step Output Setup Completion trigger
OUTPUT @B1500;"TGXO 1" !1:Edge trigger
OUTPUT @B1500;"TGMO 1" !1:Edge trigger
OUTPUT @B1500;"TGSO 1" !1:Edge trigger
OUTPUT @B1500;"TGSI 1" !1:Case 1
OUTPUT @B1500;"WT";Hold,Delay,Sdelay,Tdelay,Mdelay
:
FOR N=1 TO No_step
ENTER @B1500 USING "#,3X,12D,2X";M_data
PRINT "DATA";N;"=";M_data
NEXT N
:
Measurement Completion
The B1500 sets the measurement conditions, sets the trigger ports, and waits for a
Start Measurement trigger.
By the Start Measurement trigger, the B1500 starts the staircase sweep
measurement.
By the Start Step Output Setup trigger, the B1500 waits until the source trigger delay
elapses, and sends the Step Output Setup Completion trigger. If the trigger is
received during the hold time, the B1500 performs this after the hold time.
By the Start Step Measurement trigger, the B1500 waits until the measurement
trigger delay elapses, executes a step measurement, and sends the Step Measurement
Completion trigger. If the trigger is received during the delay time, the B1500
performs this after the delay time.
By the next Start Step Output Setup trigger, the B1500 changes the source output
value, and waits until the source trigger delay elapses, and sends the Step Output
Setup Completion trigger. If the trigger is received during the step delay time, the
B1500 performs this after the step delay time.
After the staircase sweep measurement, the B1500 sends the Step Measurement
Completion trigger and the Measurement Completion trigger, and puts the
measurement data in the data output buffer.
R2
to trigger
input control from Trig In (BNC)
R1
Vcc=5 V
C1 R1=220 ohm
R2=10 kohm
C1=1000 pF
Vcc
from trigger R1
output control to Trig Out (BNC)
74ABT245 or
equivalent C1 Vcc=5 V
R1=150 ohm
C1=1000 pF
Initial Settings
Agilent B1500 is initialized by turning the B1500 on, the *RST command, or the
device clear. Initial settings of the B1500 are shown in the following tables.
Table 2-9 Mainframe Settings
a. Program memory is not cleared by the *RST command or the device clear.
ADC integration time high speed ADC: auto, non parallel AIT, PAD
Pulse source setup Delay: 0 s, Width 100 ns, Leading: 20 SPT, SPV
ns, Trailing: 20 ns, Base: -0.5 V, Peak:
0.5 V
This chapter provides the following sections which show and explain programming
example.
Step 2. Launch Visual Basic .NET and create a new project. The project type must be
Agilent T&M Toolkit Projects.
Follow the Agilent T&M Toolkit New Project Wizard to create the project. For the
output type selection, select the Console Application. For the library selections,
select top four libraries at least (Agilent.TMFramework,
Agilent.TMFramework.DataAnalysis, Agilent.TMFramework.DataVisualization,
and Agilent.TMFramework.InstrumentIO).
Step 3. Click T&M Toolkit > Instrument Explorer to open Agilent Instrument Explorer. On
the explorer, click Find Instrument icon to detect the instrument automatically. Then
the instrument names will be appeared on the Agilent Instrument Explorer window
(e.g. AG B1500 (::17) below GPIB0).
Step 4. Open a module (e.g. Module1.vb) in the project. And enter a program code as
template. See Table 3-1 for example.
• Measurement devices
• Parameters/characteristics to be measured
• Measurement method
Step 6. Open the module that contains the template code as shown in Table 3-1. On the code
window, complete the perform_meas subprogram.
Step 7. Insert the code to display, store, or calculate data into the subprogram.
Table 3-1 Example Template Program Code for Visual Basic .NET
Imports Agilent.TMFramework
Imports Agilent.TMFramework.DataAnalysis
Imports Agilent.TMFramework.DataVisualization
Imports Agilent.TMFramework.InstrumentIO
Module Module1
Sub Main() ’8
Dim B1500 As New DirectIO("GPIB0::17::INSTR")
B1500.WriteLine("*RST")
MsgBox("Click OK to start measurement.", vbOKOnly, "")
Console.WriteLine("Measurement in progress. . ." & Chr(10))
Dim t() As Integer = {1, 2, 4, 6} ’SMU1, SMU2, SMU4, SMU6
Dim term As String = t(0) & "," & t(1) & "," & t(2) & "," & t(3)
B1500.WriteLine("CN " & term)
perform_meas(B1500, t)
B1500.WriteLine("CL")
B1500.Close()
MsgBox("Click OK to stop the program.", vbOKOnly, "")
Console.WriteLine("Measurement completed." & Chr(10))
End Sub ’21
Line Description
1 to 4 These lines are necessary for the Agilent instrument control programming.
8 to 21 Main subprogram establishes the connection with the Agilent B1500, resets the B1500,
opens a message box to confirm the start of measurement, and pauses program execution
until OK is clicked on the message box. By clicking OK, the program displays a message on
the console window, enables the SMUs, and calls the perform_meas subprogram that will be
used to perform measurement.
After the measurement, the program disables all SMUs, disables the connection with the
B1500, and opens a message box to confirm the end of the program. Finally, by clicking OK
on the message box, the program displays a message on the console window.
9 The above example is for the B1500 of the GPIB address 17 on the interface GPIB0.
“GPIB0” is the VISA name. Confirm your GPIB settings, and set them properly.
13 to 14 The above example uses the SMUs installed in the B1500 slots 1, 2, 4, and 6. Change the
slot numbers for matching your configuration.
B1500.WriteLine("DZ")
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err:
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
End Sub ’47
Line Description
End Module
Line Description
49 to 71 Save_data subprogram saves measurement result data into a file specified by the fname
variable and displays the data and a message on a message box. If Yes is clicked on the
message box, calls the perform_meas subprogram again. If No is clicked, returns to the
perform_meas subprogram.
[AIT] type,mode[,N]
TTI chnum[,range]
TTV chnum[,range]
You can use the above commands regardless of the measurement mode (MM
command settings). The TTI/TTV command returns the time data and the
measurement data.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 18 Declares variables and sets the value.
20 to 22 Sets the data output format and A/D converter. Also sets the SMU filter off.
23 to 28 Applies voltage to device and checks if an error occurred. If an error is detected, forces
0 V and goes to Check_err.
B1500.WriteLine("TSR") ’30
B1500.WriteLine("TTI " & t(0) & "," & mrng)
B1500.WriteLine("TSQ")
Dim ret_val As String() = B1500.ReadListAsStringArray()
Dim tend As String() = B1500.ReadListAsStringArray()
ret_val(0) = Right(ret_val(0), 12)
tend(0) = Right(tend(0), 12)
Dim mtime As Double = Val(tend(0)) - Val(ret_val(0))
Dim status As String = Left(ret_val(1), 3)
ret_val(1) = Right(ret_val(1), 12)
Dim meas As Double = Val(ret_val(1))
data(j, i) = Chr(13) & Chr(10) & meas * 1000 & ", " & status & ", " & mtime *
1000
B1500.WriteLine("DZ") ’43
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’47
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
End Sub
Line Description
30 to 41 Resets time stamp and performs the high-speed spot measurement. And stores the
returned data into the ret_val string array variable. Finally, stores the measured data into
the data array.
43 to 45 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
Spot Measurements
To perform spot measurements, use the following commands.
[AIT] type,mode[,N]
NOTE If you use multiple measurement channels, the channels start measurement in the
order defined in the MM command.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
19 to 22 Sets the data output format, time stamp data output mode, and A/D converter. Also sets
the SMU filter off.
27 to 29 Sets the measurement mode, channel measurement mode, and measurement range.
B1500.WriteLine("TSR") ’33
B1500.WriteLine("XE")
B1500.WriteLine("TSQ")
Dim ret_val As String() = B1500.ReadListAsStringArray()
Dim tend As String() = B1500.ReadListAsStringArray()
ret_val(0) = Right(ret_val(0), 12)
tend(0) = Right(tend(0), 12)
Dim mtime As Double = Val(tend(0)) - Val(ret_val(0))
Dim status As String = Left(ret_val(1), 3)
ret_val(1) = Right(ret_val(1), 12)
Dim meas As Double = Val(ret_val(1))
data(j, i) = Chr(13) & Chr(10) & meas * 1000 & ", " & status & ", " & mtime *
1000
B1500.WriteLine("DZ") ’46
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’50
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
End Sub
Line Description
33 to 44 Resets time stamp and performs the spot measurement. And stores the returned data
into the ret_val string array variable. Finally, stores the measured data into the data
array.
46 to 48 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
NOTE Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. For the Agilent B1500, note that the high-resolution ADC cannot be
used for the pulsed measurements. The AAD/AIT/AV/WT command settings are
ignored.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
19 to 21 Sets the data output format, time stamp data output mode, and SMU filter.
29 to 31 Sets the measurement mode, channel measurement mode, and measurement range.
B1500.WriteLine("TSR") ’35
B1500.WriteLine("XE")
B1500.WriteLine("TSQ")
Dim ret_val As String() = B1500.ReadListAsStringArray()
Dim tend As String() = B1500.ReadListAsStringArray()
ret_val(0) = Right(ret_val(0), 12)
tend(0) = Right(tend(0), 12)
Dim mtime As Double = Val(tend(0)) - Val(ret_val(0))
Dim status As String = Left(ret_val(1), 3)
ret_val(1) = Right(ret_val(1), 12)
Dim meas As Double = Val(ret_val(1))
data(j, i) = Chr(13) & Chr(10) & meas * 1000 & ", " & status & ", " & mtime *
1000
B1500.WriteLine("DZ") ’48
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’52
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
End Sub
Line Description
35 to 46 Resets time stamp and performs the pulsed spot measurement. And stores the returned
data into the ret_val string array variable. Finally, stores the measured data into the data
array.
48 to 50 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
NOTE If you use multiple measurement channels, the channels start measurement in the
order defined in the MM command.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 26 Declares variables used to set the source output, and sets the value.
27 to 34 Declares variables used to read the measurement data.
35 to 38 Sets the data output format, time stamp data output mode, and A/D converter. Also sets
the SMU filter off.
B1500.WriteLine("DV " & t(3) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A ’40
B1500.WriteLine("DV " & t(2) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A
B1500.WriteLine("MM 2," & t(0)) ’2: staircase sweep measurement
B1500.WriteLine("CMM " & t(0) & ",1") ’1: current measurement
B1500.WriteLine("RI " & t(0) & ",0") ’0: auto ranging
B1500.WriteLine("WT " & hold & "," & delay & "," & s_delay)
B1500.WriteLine("WM 2,1") ’ stops at any abnormal
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
ret_val = B1500.ReadListAsStringArray()
For i = 0 To nop1 - 1
data1 = ret_val(i * 3)
data2 = ret_val(i * 3 + 1)
data3 = ret_val(i * 3 + 2)
data1 = Right(data1, 12) : tm(i) = Val(data1)
st(i) = Left(data2, 3)
data2 = Right(data2, 12) : md(i) = Val(data2)
data3 = Right(data3, 12) : sc(i) = Val(data3)
data(j, i) = Chr(13) & Chr(10) & vg & ", " & sc(i) & ", " & md(i) * 1000
& ", " & tm(i) & ", " & st(i)
Next i
vg = vg + d_vg
Next j ’74
Line Description
40 to 44 Applies voltage to device. And sets the measurement mode, channel measurement
mode, and measurement range.
45 to 48 Sets the timing parameters and sweep mode of the staircase sweep source. And checks
if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
50 to 74 Sets the sweep source, applies voltage to device, resets time stamp, and performs the
staircase sweep measurement. And stores the returned data into the ret_val string array
variable. Finally, stores the measured data into the data array.
59 to 60 Checks number of returned data. If it is not correct, forces 0 V and goes to Check_nop.
B1500.WriteLine("DZ") ’76
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’80
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop:
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "") ’86
End Sub
Line Description
76 to 78 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
The following program performs the same measurement as the previous program
(Table 3-5). This program starts to read measurement data before the sweep
measurement is completed.
Table 3-6 Staircase Sweep Measurement Example 2
Line Description
1 to 25 Declares variables and set the value. Almost same as the previous program. Only the
fname value is different.
27 Sets the data output format. A comma will be sent as the data terminator.
28 to 39 Sets the measurement condition. Same as the lines 36 to 48 of the previous program.
Dim ret_val As String : Dim status As String : Dim chan As String ’41
Dim type As String : Dim rdata As Double : Dim tdata As Double
Dim sdata As Double : Dim mdata As Double : Dim mstat As String
Dim disp_data As String : Dim k As Integer = 0
B1500.TerminationCharacter = Chr(44) ’terminator=comma ’45
B1500.TerminationCharacterEnabled = True
Line Description
41 to 44 Declares the variables used to read and save the measurement data.
45 to 46 Declares that a comma is the data terminator needed to read data, and enables it.
49 to 52 Sets the sweep source, applies voltage to device, resets time stamp, and triggers the
staircase sweep measurement. Same as the lines 51 to 54 of the previous program.
54 to 63 Reads data and picks up the status, channel, data type, and data. And stores the time
data, measurement data, and source data into the variables, tdata, mdata, and sdata.
64 Checks the status of the measurement channel. And applies 0 V and goes to Check_err
if an error is detected.
65 to 71 Displays the data on the console window. And stores the data into the data array.
B1500.WriteLine("DZ") ’76
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’80
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop:
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "") ’86
End Sub
Line Description
76 to 78 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 24 Declares variables used to set the source output, and sets the value.
33 to 36 Sets the data output format, time stamp data output mode, and A/D converter. Also sets
the SMU filter off.
B1500.WriteLine("DV " & t(3) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A ’38
B1500.WriteLine("DV " & t(2) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A
B1500.WriteLine("MM 2," & t(0)) ’2: staircase sweep measurement
B1500.WriteLine("CMM " & t(0) & ",1") ’1: current measurement
B1500.WriteLine("RI " & t(0) & ",0") ’0: auto ranging
B1500.WriteLine("WT " & hold & "," & delay & "," & s_delay)
B1500.WriteLine("WM 2,1") ’ stops at any abnormal
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("WV " & t(0) & ",1,0," & vd1 & "," & vd2 & "," & nop1 & "," &
idcomp & "," & pd_comp)
B1500.WriteLine("WSV " & t(1) & ",0," & vg1 & "," & vg2 & "," & igcomp & "," &
pg_comp)
B1500.WriteLine("TSR")
B1500.WriteLine("XE")
B1500.WriteLine("*OPC?") : rep = B1500.Read(True)
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("NUB?") : rep = B1500.Read(True) ’55
If rep <> nop1 * 3 Then B1500.WriteLine("DZ") : GoTo Check_nop
ret_val = B1500.ReadListAsStringArray()
For i = 0 To nop1 - 1
data1 = ret_val(i * 3)
data2 = ret_val(i * 3 + 1)
data3 = ret_val(i * 3 + 2)
data1 = Right(data1, 12) : tm(i) = Val(data1)
st(i) = Left(data2, 3)
data2 = Right(data2, 12) : md(i) = Val(data2)
data3 = Right(data3, 12) : sc(i) = Val(data3)
data(j, i) = Chr(13) & Chr(10) & sc(i) & ", " & md(i) * 1000 & ", " & tm(i)
& ", " & st(i)
Next i ’68
Line Description
38 to 42 Applies voltage to device. And sets the measurement mode, channel measurement
mode, and measurement range.
43 to 46 Sets the timing parameters and sweep mode of the staircase sweep source. And checks
if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
48 to 68 Sets the sweep sources, applies voltage to device, resets time stamp, and performs the
staircase sweep measurement. And stores the returned data into the ret_val string array
variable. Finally, stores the measured data into the data array.
55 to 56 Checks number of returned data. If it is not correct, forces 0 V and goes to Check_nop.
B1500.WriteLine("DZ") ’70
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’74
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop:
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "") ’80
End Sub
Line Description
70 to 72 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
NOTE Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. For the Agilent B1500, note that the high-resolution ADC cannot be
used for the pulsed measurements. The AAD/AIT/AV/WT command settings are
ignored.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 26 Declares variables used to set the source output, and sets the value.
27 to 34 Declares variables used to read the measurement data.
36 to 38 Sets the data output format, time stamp data output mode, and SMU filter.
Line Description
41 to 47 Applies voltage to device. And sets the pulse timing parameters, measurement mode,
channel measurement mode, measurement range, and sweep mode.
49 to 50 Checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
51 to 73 Sets the pulsed sweep source, applies voltage to device, resets time stamp, and
performs the pulsed sweep measurement. And stores the returned data into the ret_val
string array variable. Finally, stores the measured data into the data array.
59 to 60 Checks number of returned data. If it is not correct, forces 0 V and goes to Check_nop.
B1500.WriteLine("DZ") ’75
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’79
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop:
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "") ’85
End Sub
Line Description
75 to 77 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
NOTE Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. For the Agilent B1500, note that the high-resolution ADC cannot be
used for the pulsed measurements. The AAD/AIT/AV/WT command settings are
ignored.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
12 to 26 Declares variables used to set the source output, and sets the value.
27 to 34 Declares variables used to read the measurement data.
36 to 38 Sets the data output format, time stamp data output mode, and A/D converter. Also sets
the SMU filter on.
Line Description
41 to 47 Applies voltage to device. And sets the pulse timing parameters, measurement mode,
channel measurement mode, measurement range, and sweep mode.
49 to 50 Checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
51 to 73 Sets the sweep source and the pulsed bias source, resets time stamp, and performs the
staircase sweep with pulsed bias measurement. And stores the returned data into the
ret_val string array variable. Finally, stores the measured data into the data array.
59 to 60 Checks number of returned data. If it is not correct, forces 0 V and goes to Check_nop.
B1500.WriteLine("DZ") ’75
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’79
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop:
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "") ’85
End Sub
Line Description
75 to 77 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
[AIT] type,mode[,N]
[RM] chnum,mode[,rate]
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
28 to 31 Applies voltage to device, and performs the quasi pulsed spot measurement. And
checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
B1500.WriteLine("DZ") ’39
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’43
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
33 to 37 Reads the returned data and stores it into the data1 string variable. Finally, stores the
measured data into the data array.
39 to 41 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
The LSV and LSI commands clear the previous source settings.
Send the LSI command before sending the LSSI command.
Send the LSV command before sending the LSSV command.
The LSI/LSSV commands or LSV/LSSI commands cannot be used together.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 25 Declares variables, and sets the value.
B1500.WriteLine("DV " & t(3) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A ’36
B1500.WriteLine("DV " & t(2) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A
B1500.WriteLine("XE")
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
data(j, i) = Chr(13) & Chr(10) & dsearch * 1000 & ", " & dsense * 1000000 & ",
" & status
B1500.WriteLine("DZ") ’53
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’57
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
36 to 40 Applies voltage to device, and performs the linear search measurement. And checks if
an error occurred. If an error is detected, forces 0 V and goes to Check_err.
42 to 51 Reads the returned data and stores it into the ret_val string array variable. Finally, stores
the measured data into the data array.
53 to 55 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
57 to 60 Displays a message box to show an error message if the error is detected.
The BSV and BSI commands clear the previous source settings.
Send the BSI command before sending the BSSI command.
Send the BSV command before sending the BSSV command.
The BSI/BSSV commands or BSV/BSSI commands cannot be used together.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
33 to 34 Sets the binary search sources, primary source and synchronous source.
B1500.WriteLine("DV " & t(3) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A ’36
B1500.WriteLine("DV " & t(2) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A
B1500.WriteLine("XE")
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
data(j, i) = Chr(13) & Chr(10) & dsearch * 1000 & ", " & dsense * 1000000 & ",
" & status
B1500.WriteLine("DZ") ’53
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’57
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
36 to 40 Applies voltage to device, and performs the binary search measurement. And checks if
an error occurred. If an error is detected, forces 0 V and goes to Check_err.
42 to 51 Reads the returned data and stores it into the ret_val string array variable. Finally, stores
the measured data into the data array.
53 to 55 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
57 to 60 Displays a message box to show an error message if the error is detected.
NOTE Sweep sources simultaneously start output by a trigger such as the XE command.
However, if a sweep source sets power compliance or forces logarithmic sweep
current, the sweep sources start output in the order specified by the WNX’s N value.
Then the first output is forced by the channel set by the WI or WV command.
If you use multiple measurement channels, the channels that use the high speed
ADC with the fixed ranging mode start measurement simultaneously, then other
channels start measurement in the order defined in the MM command.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 21 Declares variables used to set the source output, and sets the value.
23 to 28 Declares variables used to read the measurement data.
B1500.WriteLine("WV" & t(1) & ",1,0," & vb1 & "," & vb2 & "," & nop1 & "," &
ibcomp & "," & pbcomp) ’52
B1500.WriteLine("DV" & t(2) & ",0," & vc & ",0.1")
B1500.WriteLine("DV" & t(0) & ",0,0,0.1") ’out= 0 V, comp= 0.1 A
B1500.WriteLine("TSR")
B1500.WriteLine("XE")
B1500.WriteLine("*OPC?") : rep = B1500.Read(True) ’57
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("NUB?") : rep = B1500.Read(True)
If rep <> nop1 * 5 Then B1500.WriteLine("DZ") : GoTo Check_nop
ret_val = B1500.ReadListAsStringArray() ’62
Line Description
38 to 50 Sets the data output format, time stamp data output mode, A/D converter, SMU filter,
measurement mode, channel measurement mode, and measurement range. Also sets
the timing parameters and sweep mode of the staircase sweep source. And checks if an
error occurred. If an error is detected, forces 0 V and goes to Check_err.
52 to 56 Sets the sweep sources, applies voltage to device, resets time stamp, and performs the
multi channel sweep measurement.
57 to 61 Waits until the measurement is completed, and checks if an error occurred. If an error is
detected, forces 0 V and goes to Check_err. Also checks number of returned data. If it
is not correct, forces 0 V and goes to Check_nop.
62 Stores the returned data into the ret_val string array variable.
B1500.WriteLine("DZ") ’80
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’84
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop:
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "") ’90
End Sub
Line Description
64 to 78 Picks the measurement data out and stores it into the data array.
80 to 82 Applies 0 V from all channels and transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
84 to 90 Displays a message box to show an error message if the error is detected. Also displays
a message box to show an error message if the number of returned data is not correct.
Sampling Measurements
To make sampling measurements, use the following commands.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 22 Declares variables used to set the source output, and sets the value.
B1500.WriteLine("MT " & bias_h & "," & interval & "," & nop1 & "," & base_h) ’43
B1500.WriteLine("MV " & t(1) & ",0," & base & "," & bias & "," & icomp)
’t(1)--> High1
B1500.WriteLine("MV " & t(2) & ",0," & base & "," & bias & "," & icomp)
’t(2)--> High2
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("DV " & t(0) & ",0," & vlout & "," & ilcomp & ", 0") ’51
’t(0)--> Low
B1500.WriteLine("MM 10," & mch(0) & "," & mch(1))
B1500.WriteLine("RI " & mch(0) & "," & range(0))
B1500.WriteLine("RI " & mch(1) & "," & range(1))
B1500.WriteLine("TSR") ’56
B1500.WriteLine("XE")
B1500.WriteLine("*OPC?") : rep = B1500.Read(True)
B1500.WriteLine("ERR? 1") : err = B1500.Read(True) ’59
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("NUB?") : rep = B1500.Read(True) ’61
If rep <> nop1 * 3 Then B1500.WriteLine("DZ") : GoTo Check_nop
Line Description
36 Sets the data output format. The source output data will be also returned.
37 to 40 Sets the SMU filter and the A/D converter integration time.
43 to 49 Sets the sampling timing parameters and the constant voltage sources. And checks if an
error occurred. If an error is detected, forces 0 V and goes to Check_err.
51 to 55 Applies 0 V to the device low terminal, sets the sampling measurement mode, and sets
the current measurement range.
61 to 62 Forces 0 V and goes to Check_nop if the number of returned data is not correct (nop1).
B1500.WriteLine("DZ") ’79
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’83
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’88
MsgBox("No. of data: " & rep & " (not " & nop1 * 3 & ")", vbOKOnly, "")
End Sub
Line Description
64 to 77 Reads the returned data and stores it into the ret_val string array variable. Finally, stores
the measured data into the data array.
79 to 81 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
Quasi-static CV Measurements
To make quasi-static CV measurements, use the following commands.
Executes measurement XE
Line Description
2 to 8 Declares variables used through the project. And sets the proper values.
10 to 22 Declares variables used to set the source output, and sets the value.
24 to 38 Declares variables used to read the measurement data.
B1500.WriteLine("QSZ 0")
Dim rbx As Integer
rbx = MsgBox("Do you want to perform offset cancel?", vbYesNo, "")
If rbx = vbYes Then
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("QSZ 2")
ret_val = B1500.ReadListAsStringArray()
B1500.WriteLine("*OPC?") : rep = B1500.Read(True)
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
data1 = ret_val(0) : data1 = Right(data1, 12) : md1(0) = Val(data1)
Console.WriteLine("Offset data = " & md1(0) * 1000000000000.0 & "pF" & Chr(10))
MsgBox("Offset data = " & md1(0) * 1000000000000.0 & "pF", vbOKOnly, "")
B1500.WriteLine("QSZ 1")
End If ’74
Line Description
42 to 43 Sets the data output format and the time stamp data output mode.
45 to 47 The lines are used to enable the SMU connected to the SCUU Force2/Sense2.
59 to 74 Sets the capacitance offset cancel to OFF. And displays a message box that asks if you
perform the offset cancel. If you click Yes, the program displays a message box that
prompts you to open the measurement terminals. Clicking OK starts the offset
measurement. After the measurement, the offset data is displayed on the console
window and the message box. Finally, the capacitance offset cancel is set to ON.
B1500.WriteLine("DZ") ’104
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’108
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’113
MsgBox("No. of data: " & rep & " (not " & nop1 * 6 & ")", vbOKOnly, "")
End Sub
Line Description
76 to 87 Displays a message box that prompts you to connect DUT. Clicking OK applies voltage
to the device, resets the time stamp, and performs the quasi-static CV measurement.
89 to 102 Stores the returned data into the ret_val string array variable. Finally, stores the
measured data into the data array.
104 to 105 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
Measurement Vg (V), Cgb (pF), C-status, Ileak (pA), I-status, Time (sec)
Result Example 3, 2.3085, NCC, -0.259, NCI, 5.10526
2.8, 3.1277, NCC, 0.298, NCI, 5.41159
2.6, 3.1034, NCC, 0.241, NCI, 5.71947
2.4, 3.1334, NCC, 0.278, NCI, 6.02741
2.2, 3.1314, NCC, 0.255, NCI, 6.33532
2, 3.116, NCC, 0.232, NCI, 6.64316
1.8, 3.1193, NCC, 0.215, NCI, 6.95102
1.6, 3.1218, NCC, 0.222, NCI, 7.25891
1.4, 3.106, NCC, 0.18, NCI, 7.56681
1.2, 3.1303, NCC, 0.171, NCI, 7.87471
1, 3.1317, NCC, 0.184, NCI, 8.18262
0.8, 3.1096, NCC, 0.168, NCI, 8.49048
0.6, 3.1235, NCC, 0.185, NCI, 8.79832
0.4, 3.085, NCC, 0.148, NCI, 9.10628
0.2, 3.1028, NCC, 0.164, NCI, 9.41414
0, 3.1023, NCC, 0.149, NCI, 9.72198
-0.2, 3.0651, NCC, 0.117, NCI, 10.0301
-0.4, 3.0723, NCC, 0.141, NCI, 10.338
-0.6, 3.0654, NCC, 0.115, NCI, 10.6459
-0.8, 3.0375, NCC, 0.141, NCI, 10.9538
-1, 3.0117, NCC, 0.132, NCI, 11.2617
-1.2, 2.9459, NCC, 0.115, NCI, 11.5696
-1.4, 2.8877, NCC, 0.079, NCI, 11.8775
-1.6, 2.7965, NCC, 0.036, NCI, 12.1854
-1.8, 2.7727, NCC, 0.056, NCI, 12.4933
-2, 2.7219, NCC, 0.061, NCI, 12.8011
-2.2, 2.6781, NCC, 0.044, NCI, 13.109
-2.4, 2.6496, NCC, 0.032, NCI, 13.4169
-2.6, 2.6694, NCC, 0.076, NCI, 13.7248
-2.8, 2.6174, NCC, 0.053, NCI, 14.0327
-3, 2.5789, NCC, 0.041, NCI, 14.3406
-3.2, 2.5974, NCC, 0.046, NCI, 14.6484
-3.4, 2.6325, NCC, 0.042, NCI, 14.9564
-3.6, 2.6338, NCC, 0.002, NCI, 15.2643
-3.8, 2.706, NCC, 0.031, NCI, 15.5722
-4, 2.7984, NCC, 0.069, NCI, 15.8801
-4.2, 2.8384, NCC, 0.036, NCI, 16.188
-4.4, 2.8908, NCC, 0.044, NCI, 16.4959
-4.6, 2.9477, NCC, 0.043, NCI, 16.8038
-4.8, 2.9606, NCC, 0.034, NCI, 17.1117
-5, 2.9836, NCC, 0.012, NCI, 17.4196
-5.2, 3.0091, NCC, 0.017, NCI, 17.7275
-5.4, 3.0256, NCC, 0.039, NCI, 18.0353
-5.6, 3.0433, NCC, 0.035, NCI, 18.3433
-5.8, 3.0888, NCC, 0.068, NCI, 18.6512
-6, 3.08, NCC, 0.056, NCI, 18.9591
-6.2, 3.0803, NCC, 0.041, NCI, 19.267
-6.4, 3.0658, NCC, 0.024, NCI, 19.5749
-6.6, 3.0757, NCC, 0.014, NCI, 19.8828
-6.8, 3.0961, NCC, 0.028, NCI, 20.1907
-7, 3.0894, NCC, 0.009, NCI, 20.4986
TTC chnum,mode[,range]
Resets the time stamp TSR
You can use the above commands regardless of the measurement mode (MM
command settings). The TTC command returns the time data and the measurement
data.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’52
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If ’63
Line Description
33 to 36 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
38 to 47 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
49 to 50 Sets the frequency and the oscillator level of the MFCMU output signal.
52 to 63 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
65 Displays a message box that asks you to connect the device to the measurement
terminal. Then the CMUH and CMUL must be connected to the gate terminal and the
substrate terminal respectively.
B1500.WriteLine("DCV " & cmu_ch & "," & dc_bias) ’Forces DC bias ’66
B1500.WriteLine("IMP 100") ’Sets MFCMU measurement mode
B1500.WriteLine("LMN 1") ’AC/DC monitor data output ON
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("TSR") ’Resets time stamp
B1500.WriteLine("TTC " & cmu_ch & "," & range) ’High speed spot C measurement
B1500.WriteLine("TSQ") ’Returns time data
B1500.WriteLine("DZ") ’93
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’97
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
66 to 73 Sets the measurement condition, resets the time stamp, and performs the high-speed
spot C measurement.
75 to 91 Stores the returned data into the ret_val string array variable. Finally, stores the
measured data into the data array.
93 to 95 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
97 to 100 Displays a message box to show an error message if the error is detected.
Measurement Cp (pF), C_st, G (uS), G_st, OSC (mV), Osc_st, DC (V), Dc_st, Time
Result Example (s)
4.96641,NJC,26.1348,NJY,28.7814,NJV,4.7239,NJV,0.0146
Table 3-17 Phase Compensation and Data Correction Commands for MFCMU
Data Correction Table 3-17 lists the Agilent B1500A FLEX commands used for the phase
compensation and the open/short/load correction. Before performing the
capacitance (impedance) measurement, perform the phase compensation to adjust
the phase zero, and perform the corrections you desire.
• Phase Compensation
1. Connect the open standard. Or open the measurement terminals at the end of
the device side.
2. Execute CORR? command to perform open correction data measurement.
3. Execute CORRST command to set the open correction ON.
• Short Correction
Spot C Measurements
To perform capacitance spot measurements, use the following commands.
Measurement Cp (pF), C_st, G (uS), G_st, OSC (mV), Osc_st, DC (V), Dc_st, Time
Result Example (s)
4.96981,NJC,26.1577,NJY,28.7737,NJV,4.72556,NJV,0.0259
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
26 to 27 Sets the data output format. And enables the time stamp output.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’50
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If ’61
Line Description
31 to 34 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
36 to 45 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
47 to 48 Sets the frequency and the oscillator level of the MFCMU output signal.
50 to 61 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
63 Displays a message box that asks you to connect the device to the measurement
terminal. Then the CMUH and CMUL must be connected to the gate terminal and the
substrate terminal respectively.
B1500.WriteLine("DCV " & cmu_ch & "," & dc_bias) ’Forces DC bias ’64
B1500.WriteLine("MM 17," & cmu_ch) ’Sets measurement mode
B1500.WriteLine("IMP 100") ’Sets MFCMU measurement mode
B1500.WriteLine("LMN 1") ’AC/DC monitor data output ON
B1500.WriteLine("RC " & cmu_ch & "," & range) ’Sets measurement range
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("TSR") ’Resets time stamp
B1500.WriteLine("XE") ’Performs spot C measurement
B1500.WriteLine("*OPC?") : err = B1500.Read(True)
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("DZ") ’94
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’98
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
64 to 75 Sets the measurement condition, resets the time stamp, and performs the measurement.
And checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
77 to 92 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
94 to 96 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
98 to 101 Displays a message box to show an error message if the error is detected.
Executes measurement XE
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
12 to 29 Declares variables and sets the value.
31 to 32 Sets the data output format (data with source data). And enables the time stamp output.
33 to 34 Applies 0 V to the drain and source terminals.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’55
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If ’66
Line Description
36 to 39 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
41 to 50 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
52 to 53 Sets the frequency and the oscillator level of the MFCMU output signal.
55 to 66 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
68 Displays a message box that asks you to connect the device to the measurement
terminal. Then the CMUH and CMUL must be connected to the gate terminal and the
substrate terminal respectively.
Line Description
69 to 79 Sets the measurement condition, resets the time stamp, and performs the measurement.
69 Sets the automatic abort function to ON, and sets the post measurement output value to vg1.
70 Sets the MFCMU sweep output timing.
71 Sets the MFCMU DC bias sweep output.
80 to 84 Waits until the measurement is completed. After that, if an error is detected, forces 0 V and
goes to Check_err. Also if the number of returned data is not correct, forces 0 V and goes to
Check_nop.
86 to 105 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
B1500.WriteLine("DZ") ’107
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’111
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’116
MsgBox("No. of data: " & rep & " (not " & nop1 * 6 & ")", vbOKOnly, "")
End Sub
Line Description
107 to 109 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
111 to 114 Displays a message box to show an error message if the error is detected.
116 to 117 Displays a message box to show an error message if the number of returned data is not
correct.
Measurement Vg (V), Cp (pF), C_st, G (uS), G_st, OSC (mV), Osc_st, DC (V),
Result Example Dc_st, Time (s)
-5,4.96677,NJC,26.155,NJY,28.7732,NJV,-4.72468,NJV,0.0547
-4.5,4.66524,NJC,26.3993,NJY,28.6384,NJV,-4.2384,NJV,0.0884
-4,4.2986,NJC,26.2738,NJY,28.4891,NJV,-3.75442,NJV,0.1228
-3.5,3.88182,NJC,25.5785,NJY,28.3222,NJV,-3.27358,NJV,0.1535
-3,3.43272,NJC,24.1992,NJY,28.1426,NJV,-2.79417,NJV,0.1878
-2.5,2.99286,NJC,21.9946,NJY,27.9503,NJV,-2.31792,NJV,0.2294
-2,2.57856,NJC,18.7458,NJY,27.7505,NJV,-1.84498,NJV,0.2709
-1.5,2.20793,NJC,14.2867,NJY,27.5502,NJV,-1.37609,NJV,0.3125
-1,1.92563,NJC,7.57546,NJY,27.3772,NJV,-0.91155,NJV,0.3541
-0.5,1.79915,NJC,-1.83967,NJY,27.494,NJV,-0.45241,NJV,0.3957
0,1.77613,NJC,-2.50329,NJY,27.4588,NJV,0.0041,NJV,0.4375
0.5,1.78246,NJC,-2.73976,NJY,27.488,NJV,0.46025,NJV,0.4789
1,1.7831,NJC,-2.66401,NJY,27.6511,NJV,0.92066,NJV,0.5205
1.5,1.78149,NJC,-2.52984,NJY,27.8257,NJV,1.38437,NJV,0.5621
2,1.77384,NJC,-2.39091,NJY,27.9928,NJV,1.85152,NJV,0.6037
2.5,1.77054,NJC,-2.22722,NJY,28.1473,NJV,2.32111,NJV,0.6453
3,1.76359,NJC,-2.03388,NJY,28.283,NJV,2.79339,NJV,0.6867
3.5,1.75959,NJC,-1.58516,NJY,28.3958,NJV,3.26736,NJV,0.7281
4,1.75883,NJC,-0.542666,NJY,28.481,NJV,3.74189,NJV,0.7697
4.5,1.73431,NJC,1.73765,NJY,28.5416,NJV,4.2182,NJV,0.8113
5,1.60909,NJC,6.23405,NJY,28.5737,NJV,4.69593,NJV,0.8529
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 24 Declares variables and sets the value.
25 to 26 Sets the data output format. And enables the time stamp output.
27 to 28 Applies 0 V to the drain and source terminals.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’48
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If ’59
Line Description
30 to 33 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
35 to 43 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
45 to 46 Sets the frequency and the oscillator level of the MFCMU output signal.
48 to 59 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
61 Displays a message box that asks you to connect the device to the measurement
terminal. Then the CMUH and CMUL must be connected to the gate terminal and the
substrate terminal respectively.
B1500.WriteLine("DZ") ’87
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’91
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
62 to 75 Sets the measurement condition, resets the time stamp, and performs the measurement.
And checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
64 to 65 Sets the pulse timing parameters and the pulse voltage output of MFCMU.
77 to 85 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
87 to 89 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
Executes measurement XE
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 25 Declares variables and sets the value.
27 Sets timeout for the B1500A.
28 to 29 Sets the data output format (data with source data). And enables the time stamp output.
30 to 31 Applies 0 V to the drain and source terminals.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’51
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If
Line Description
33 to 36 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
38 to 46 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
48 to 49 Sets the frequency and the oscillator level of the MFCMU output signal.
51 to 62 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
64 Displays a message box that asks you to connect the device to the measurement
terminal. Then the CMUH and CMUL must be connected to the gate terminal and the
substrate terminal respectively.
Line Description
66 to 82 Sets the measurement condition, resets the time stamp, and performs the measurement.
68 Sets the pulsed sweep timing parameters of MFCMU.
69 Sets the pulsed sweep voltage output of MFCMU.
70 Sets the automatic abort function to ON, and sets the post measurement output value to vg1.
78 to 82 Waits until the measurement is completed. After that, if an error is detected, forces 0 V and
goes to Check_err. Also if the number of returned data is not correct, forces 0 V and goes to
Check_nop.
84 to 95 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
B1500.WriteLine("DZ") ’97
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’101
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’106
MsgBox("No. of data: " & rep & " (not " & nop1 * 6 & ")", vbOKOnly, "")
End Sub
Line Description
97 to 99 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
101 to 104 Displays a message box to show an error message if the error is detected.
106 to 107 Displays a message box to show an error message if the number of returned data is not
correct.
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 31 Declares variables and sets the value.
33 to 35 Sets the B1500A timeout and the data output format (data with source data). And
enables the time stamp output.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’57
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If
MsgBox("Connect DUT. Then click OK.", vbOKOnly, "") ’69
Line Description
37 to 40 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
41 to 42 Applies 0 V to the drain and source terminals.
44 to 52 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
54 to 55 Sets the frequency and the oscillator level of the MFCMU output signal.
57 to 68 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
69 Displays a message box that asks you to connect the device to the measurement
terminal. Then the CMUH and CMUL must be connected to the gate terminal and the
substrate terminal respectively.
Line Description
70 to 81 Sets the measurement condition, resets the time stamp, and performs the measurement.
70 Sets the automatic abort function to ON, and sets the post measurement output value to v1.
71 Sets the MFCMU sweep output timing.
72 Sets the MFCMU AC level sweep output.
82 to 86 Waits until the measurement is completed. After that, if an error is detected, forces 0 V and
goes to Check_err. Also if the number of returned data is not correct, forces 0 V and goes to
Check_nop.
88 to 107 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
B1500.WriteLine("DZ") ’109
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’113
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’118
MsgBox("No. of data: " & rep & " (not " & nop1 * 6 & ")", vbOKOnly, "")
End Sub
Line Description
109 to 111 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
113 to 116 Displays a message box to show an error message if the error is detected.
118 to 119 Displays a message box to show an error message if the number of returned data is not
correct.
Measurement Level (mV), Cp (pF), C_st, G (uS), G_st, OSC (mV), Osc_st, DC (V),
Result Example Dc_st, Time (s)
10,0.101413,NGC,0.023601,NGY,9.9799,NGV,5.00485,NGV,0.0714
20,0.102654,NGC,0.0450136,NGY,19.963,NGV,5.0049,NGV,0.13921
30,0.100627,NGC,0.0522385,NGY,29.9446,NGV,5.00488,NGV,0.15706
40,0.10053,NGC,0.0529098,NGY,39.926,NGV,5.00491,NGV,0.22501
50,0.10008,NGC,0.0562029,NGY,49.8853,NGV,5.00495,NGV,0.24298
60,0.0982925,NGC,0.0492554,NGY,59.8801,NGV,5.00515,NGV,0.26092
70,0.0992213,NGC,0.0548534,NGY,69.899,NGV,5.00502,NGV,0.32885
80,0.099067,NGC,0.0501863,NGY,79.915,NGV,5.00514,NGV,0.34679
90,0.100248,NGC,0.0512628,NGY,89.892,NGV,5.00487,NGV,0.36446
100,0.0996081,NGC,0.0519715,NGY,99.869,NGV,5.00486,NGV,0.38241
Executes measurement XE
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 31 Declares variables and sets the value.
33 to 35 Sets the B1500A timeout and the data output format (data with source data). And
enables the time stamp output.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’56
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",1") ’clears frequency list
For i = 0 To nop1 - 1
freq = f1 + i * (f2 - f1) / (nop1 - 1) ’measurement frequency
B1500.WriteLine("CORRL " & cmu_ch & "," & freq) ’adds it to frequency list
B1500.WriteLine("ERR? 1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
Next i
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If ’73
Line Description
37 to 40 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
41 to 42 Applies 0 V to the drain and source terminals.
44 to 52 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
54 Sets the oscillator level of the MFCMU output signal.
56 to 73 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
Line Description
75 Displays a message box that asks you to connect the device to the measurement terminal.
Then the CMUH and CMUL must be connected to the gate terminal and the substrate
terminal respectively.
76 to 87 Sets the measurement condition, resets the time stamp, and performs the measurement.
88 to 92 Waits until the measurement is completed. After that, if an error is detected, forces 0 V and
goes to Check_err. Also if the number of returned data is not correct, forces 0 V and goes to
Check_nop.
94 to 113 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
B1500.WriteLine("DZ") ’114
save_data(fname, title, value, data, nop1, nop2, B1500, t)
Exit Sub
Check_err: ’118
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’123
MsgBox("No. of data: " & rep & " (not " & nop1 * 6 & ")", vbOKOnly, "")
End Sub
Line Description
114 to 116 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
118 to 121 Displays a message box to show an error message if the error is detected.
123 to 124 Displays a message box to show an error message if the number of returned data is not
correct.
Measurement Freq (MHz), Cp (pF), C_st, G (uS), G_st, OSC (mV), Osc_st, DC (V),
Result Example Dc_st, Time (s)
0.5,0.102504,NGC,-0.00489649,NGY,29.9602,NGV,5.00364,NGV,0.01205
1,0.103028,NGC,0.00752516,NGY,29.9472,NGV,5.00362,NGV,0.03098
1.5,0.0941827,NGC,0.0385718,NGY,29.914,NGV,5.00384,NGV,0.04993
2,0.0925777,NGC,0.00978407,NGY,29.8359,NGV,5.00383,NGV,0.06891
2.5,0.0936848,NGC,0.0741706,NGY,29.7236,NGV,5.00383,NGV,0.08851
3,0.0926532,NGC,0.0838099,NGY,29.6289,NGV,5.00396,NGV,0.10756
3.5,0.098542,NGC,0.0313031,NGY,29.4926,NGV,5.00391,NGV,0.12654
4,0.0985281,NGC,0.0103357,NGY,29.3519,NGV,5.00376,NGV,0.14551
4.5,0.101377,NGC,0.0136298,NGY,29.1433,NGV,5.004,NGV,0.1644
5,0.100967,NGC,0.10801,NGY,28.9145,NGV,5.0038,NGV,0.1833
Executes measurement XE
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
31 to 32 Sets the data output format (data with source data). And enables the time stamp output.
rbx = MsgBox("Do you want to perform Open correction?", vbYesNo, "") ’54
If rbx = vbYes Then
B1500.WriteLine("CLCORR " & cmu_ch & ",2")
MsgBox("Open measurement terminal. Then click OK.", vbOKOnly, "")
Console.WriteLine("Wait a minute . . ." & Chr(10))
B1500.WriteLine("DCORR " & cmu_ch & ",1,100," & ref_cp & "," & ref_g)
B1500.WriteLine("CORR? " & cmu_ch & ",1") : err = B1500.Read(True)
If err <> 0 Then B1500.WriteLine("ERR? 1") : err = B1500.Read(True) :
B1500.WriteLine("DZ") : GoTo Check_err
B1500.WriteLine("CORRST " & cmu_ch & ",1,1") ’open correction ON
B1500.WriteLine("CORRST " & cmu_ch & ",2,0") ’short correction OFF
B1500.WriteLine("CORRST " & cmu_ch & ",3,0") ’load correction OFF
End If ’65
Line Description
34 to 37 Defines the channel number of the MFCMU, enables the MFCMU, makes the SCUU
connection path, and sets the A/D converter of the MFCMU.
41 to 49 Displays a message box that asks if you perform the phase compensation. If you click
Yes, the phase compensation will be performed. It will take about 30 seconds.
51 to 52 Sets the frequency and the oscillator level of the MFCMU output signal.
54 to 65 Displays a message box that asks if you perform the open correction. If you click Yes,
the open correction will be performed. It does not need a long time. The short
correction and the load correction are not performed in this example.
Line Description
67 Displays a message box that asks you to connect the device to the measurement terminal.
Then the CMUH and CMUL must be connected to the gate terminal and the substrate
terminal respectively.
68 to 76 Sets the measurement condition, resets the time stamp, and performs the measurement.
77 to 81 Waits until the measurement is completed. After that, if an error is detected, forces 0 V and
goes to Check_err. Also if the number of returned data is not correct, forces 0 V and goes to
Check_nop.
83 to 94 Stores the returned data into the ret_val string array variable. Finally, stores the measured
data into the data array.
95 to 97 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a CSV
file specified by the fname variable and displays the data on a message box.
Check_err: ’99
B1500.WriteLine("EMG? " & err) : msg = B1500.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Check_nop: ’104
MsgBox("No. of data: " & rep & " (not " & nop1 * 6 & ")", vbOKOnly, "")
End Sub
Line Description
99 to 102 Displays a message box to show an error message if the error is detected.
104 to 106 Displays a message box to show an error message if the number of returned data is not
correct.
The following program controls a SPGU to output 2-level pulse from the channel 1
and 3-level pulse from the channel 2. This program can run without the project
template (Table 3-1).
Table 3-25 SPGU Pulse Output Example
Imports Agilent.TMFramework ’1
Imports Agilent.TMFramework.DataAnalysis
Imports Agilent.TMFramework.DataVisualization
Imports Agilent.TMFramework.InstrumentIO
Module Module1 ’6
Sub Main()
Line Description
1 to 4 These lines are necessary for the Agilent instrument control programming.
10 Establishes the connection with the Agilent B1500 of the GPIB address 17 on the
interface GPIB0. “GPIB0” is the VISA name. Confirm your GPIB settings, and set
them properly.
11 Resets the B1500.
15 to 33 Declares variables and sets the value. This program uses the SPGU installed in the slot
1 of the B1500.
B1500.WriteLine("CN " & sp_ch(0) & "," & sp_ch(1)) ’ SPGU ch on ’39
B1500.WriteLine("SIM 0") ’ PG mode
B1500.WriteLine("SPRM 2," & duration) ’ Duration mode
B1500.WriteLine("ODSW " & sp_ch(0) & ", 0") ’ Disables pulse switch
B1500.WriteLine("ODSW " & sp_ch(1) & ", 0")
B1500.WriteLine("SER " & sp_ch(0) & "," & loadz) ’ Load impedance
B1500.WriteLine("SER " & sp_ch(1) & "," & loadz) ’45
B1500.WriteLine("SPPER " & period) ’ Pulse period
B1500.WriteLine("SPM " & sp_ch(0) & ",1") ’ 2-level pulse setup
B1500.WriteLine("SPT " & sp_ch(0) & ",1," & p1_del & "," & p1_wid & "," & p_lead &
"," & p_trail)
B1500.WriteLine("SPV " & sp_ch(0) & ",1," & p1_base & "," & p1_peak)
B1500.WriteLine("SPM " & sp_ch(1) & ",3") ’ 3-level pulse setup ’50
B1500.WriteLine("SPT " & sp_ch(1) & ",1," & p2_del1 & "," & p2_wid1 & "," & p_lead
& "," & p_trail)
B1500.WriteLine("SPT " & sp_ch(1) & ",2," & p2_del2 & "," & p2_wid2 & "," & p_lead
& "," & p_trail)
B1500.WriteLine("SPV " & sp_ch(1) & ",1," & p2_base1 & "," & p2_peak1)
B1500.WriteLine("SPV " & sp_ch(1) & ",2," & p2_base2 & "," & p2_peak2)
B1500.WriteLine("SPUPD" & sp_ch(0) & "," & sp_ch(1)) ’ Apply setup
Line Description
47 to 49 Sets the channel specified by sp_ch(0) to the 2-level pulse output channel using the
source 1, sets the pulse timing parameters, and sets the pulse level parameters.
50 to 54 Sets the channel specified by sp_ch(1) to the 3-level pulse output channel using the
source 1 and 2, sets the pulse timing parameters, and sets the pulse level parameters.
55 Applies the pulse setup to the channels specified by sp_ch(0) and sp_ch(1). The
channel outputs the pulse base value.
Spgu_stat: ’64
Console.Write(".")
B1500.WriteLine("SPST?") : p_stat = B1500.Read(True) ’ Check SPGU output status
If p_stat = 1 Then GoTo Spgu_stat
If p_stat = 0 Then GoTo Close
Check_err: ’70
msg = err_msg(1) : B1500.WriteLine("ERR?")
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Close: ’74
Console.WriteLine(Chr(10) & "SPGU output stopped.")
B1500.WriteLine("CL")
B1500.Close()
MsgBox("Click OK to stop the program.", vbOKOnly, "")
Console.WriteLine("Program completed." & Chr(10)) ’79
End Sub
End Module
Line Description
57 to 59 Reads error buffer. If an error is detected, changes the channel output to 0 V and goes to
Check_err.
64 to 68 Checks the SPGU pulse output status. And waits for the end status.
70 to 72 Clears the error buffer. And displays a message box to show an error message.
74 to 79 Disables all channels, and closes the connection with the Agilent B1500.
Table 3-26 and Table 3-27 show the example program that uses the internal program
memory, and does the following:
• stores a high-speed spot measurement program in the memory 1, and displays it.
• stores a pulsed spot measurement program in the memory 2, and displays it.
• executes the internal memory program 1 and 2.
• displays the measurement results on the console window.
The example program shown in Table 3-27 uses the internal variables available for
the internal program memory. The program code is given as the replaceable code of
the lines 13 to 39 shown in Table 3-26. To run the program, delete the lines 13 to 39
from the program of Table 3-26, and insert the program lines 1 to 37 of Table 3-27.
Also insert Table 3-27’s lines 39 to 49 between Table 3-26’s lines 53 and 54. The
code shown in Table 3-27 cannot run by itself.
Imports Agilent.TMFramework ’1
Imports Agilent.TMFramework.DataAnalysis
Imports Agilent.TMFramework.DataVisualization
Imports Agilent.TMFramework.InstrumentIO
Module Module1
Sub Main()
Dim B1500 As New DirectIO("GPIB0::17::INSTR") ’8
B1500.WriteLine("*RST")
Dim fmt As Integer = 1 : B1500.WriteLine("FMT" & fmt)
Dim t() As Integer = {1, 2, 4, 6} ’SMU1, SMU2, SMU4, SMU6 ’11
mem = 2 ’28
B1500.WriteLine("ST" & Mem)
B1500.WriteLine("PT" & hold & "," & width & "," & period)
B1500.WriteLine("DV" & t(3) & ",0,0,0.1")
B1500.WriteLine("DV" & t(2) & ",0,0,0.1")
B1500.WriteLine("PV" & t(1) & "," & orng & "," & v0 & "," & vg & "," & igcomp)
B1500.WriteLine("DV" & t(0) & "," & orng & "," & vd & "," & idcomp)
B1500.WriteLine("MM3," & t(0))
B1500.WriteLine("RI" & t(0) & "," & mrng)
B1500.WriteLine("XE")
B1500.WriteLine("END")
display_mem(B1500, mem) ’39
Line Description
1 to 4 These lines are necessary for the Agilent instrument control programming.
8 to 11 Establishes the connection with the Agilent B1500, resets the B1500, and sets the data
output format. Also declares the SMUs used for measurement.
13 to 16 Declares variables used to set measurement conditions and sets the value.
18 to 26 Stores program in the internal memory 1, and displays it on the console window.
28 to 39 Stores program in the internal memory 2, and displays it on the console window.
Dim term As String = t(0) & "," & t(1) & "," & t(2) & "," & t(3) ’41
B1500.WriteLine("CN" & term)
Dim i As Integer : Dim ret As Integer : Dim msg As String
Dim value As String : Dim status As String : Dim meas As Double
For i = 1 To 2
B1500.WriteLine("DO" & i)
B1500.WriteLine("*OPC?") : ret = B1500.Read(True)
B1500.WriteLine("ERR? 1") : ret = B1500.Read(True)
If ret <> 0 Then B1500.WriteLine("DZ") : GoTo Check_err
value = B1500.Read(True) : status = Left(value, 3)
value = Right(value, 12) : meas = Val(value)
Console.WriteLine("Memory " & i & ": Id = " & meas & " (A), Status = " &
status & Chr(10))
Next
B1500.WriteLine("DZ") ’54
B1500.WriteLine("CL")
B1500.Close()
Exit Sub
Check_err: ’59
B1500.WriteLine("EMG? " & ret) : msg = B1500.Read(True)
MsgBox("Instrument error: " & ret & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
End Module
Line Description
41 to 53 Enables SMUs and performs the measurement. After that, checks if an error occurred.
If an error is detected, forces 0 V and goes to Check_err. Also reads the measured data
and displays it on the console window.
54 to 57 Applies 0 V from all channels, disables SMUs, and closes the connection with the
Agilent B1500.
65 to 70 Reads the program lists stored in the internal program memory, and displays it on the
console window.
mem = 2 ’26
B1500.WriteLine("ST" & mem)
B1500.WriteLine("PT %R5,%R6,%R7")
B1500.WriteLine("DV %I3,0,0,0.1")
B1500.WriteLine("DV %I2,0,0,0.1")
B1500.WriteLine("PV %I1,%I5,%R4,%R1,%R3")
B1500.WriteLine("DV %I0,%I5,%R0,%R2")
B1500.WriteLine("MM3,%I0")
B1500.WriteLine("RI %I0,%I4")
B1500.WriteLine("XE")
B1500.WriteLine("END")
display_mem(B1500, mem) ’37
Line Description
1 to 14 Declares variables used to set measurement conditions and sets the value. To run the
program, replace the code with the lines 13 to 16 of the program shown in Table 3-26.
16 to 24 Stores program in the internal memory 1, and displays it on the console window. To run
the program, replace the code with the lines 18 to 26 of the program shown in Table
3-26.
26 to 37 Stores program in the internal memory 2, and displays it on the console window. To run
the program, replace the code with the lines 28 to 39 of the program shown in Table
3-26.
Line Description
39 to 49 Changes the value of the internal variable %R0, and performs measurement again. Can
be inserted between line 53 and line 54 of the program shown in Table 3-26.
TGSI Selects the sweep step first or last that ignores the Start Step
Output Setup trigger input set by the TGP port,1,polarity,2
command.
TGSI mode
TGSO Selects the trigger type, edge or gate, for the Step Output Setup
Completion trigger output set by the TGP port,2,polarity,2
command.
TGSO mode
TGXO Selects the trigger type, edge or gate, for the Measurement
Completion trigger output set by the TGP port,2,polarity,1
command.
TGXO mode
TGMO Selects the trigger type, edge or gate, for the Step Measurement
Completion trigger output set by the TGP port,2,polarity,3
command.
TGMO mode
The following commands are also available to send a trigger or wait for an external
trigger input. Refer to “Using Trigger Function” on page 2-68.
OS Causes the Agilent B1500 to send a trigger signal from the Ext
Trig Out terminal.
OS
OSX a Causes the Agilent B1500 to send a trigger signal from the
specified port.
OSX port[,level]
WSX a Enters a wait state until the Agilent B1500 receives an external
trigger via the specified port.
WSX port[,mode]
Programming examples using the trigger function are explained below. The
examples use a couple within the available couples of the Agilent B1500A and the
Agilent E5260/E5270 series. In this section, they are assigned as Unit1 (address
717) and Unit2 (address 722).
NOTE To run the programs shown in this section, you do not need the example code shown
in Table 3-1 (template of a project).
Imports Agilent.TMFramework ’1
Imports Agilent.TMFramework.DataAnalysis
Imports Agilent.TMFramework.DataVisualization
Imports Agilent.TMFramework.InstrumentIO
Module Module1
Sub Main() ’8
Dim unit1 As New DirectIO("GPIB0::17::INSTR")
Dim unit2 As New DirectIO("GPIB0::22::INSTR")
unit1.WriteLine("*RST")
unit2.WriteLine("*RST")
MsgBox("Click OK to start measurement.", vbOKOnly, "")
Console.WriteLine("Measurement in progress. . ." & Chr(10))
Dim t() As Integer = {1, 2, 1, 2} ’unit1[1,2], unit2[1,2]
Dim term1 As String = t(0) & "," & t(1)
Dim term2 As String = t(2) & "," & t(3)
unit1.WriteLine("CN" & term1)
unit2.WriteLine("CN" & term2)
perform_meas(unit1, unit2, t) ’20
Line Description
1 to 4 These lines are necessary for the Agilent instrument control programming.
8 to 20 Main subprogram establishes the connection with Unit1 and Unit2, resets them, opens a
message box to confirm the start of measurement, and pauses program execution until OK is
clicked on the message box. By clicking OK, the program displays a message on the console
window, enables the SMUs (in the slots 1 and 2 of both Unit1 and Unit2), and calls the
perform_meas subprogram that will be used to perform measurement.
unit1.WriteLine("CL") ’22
unit2.WriteLine("CL")
unit1.Close()
unit2.Close()
MsgBox("Click OK to stop the program.", vbOKOnly, "")
Console.WriteLine("Measurement completed." & Chr(10))
End Sub ’28
Line Description
22 to 28 After the measurement, the program disables all SMUs, closes the connection with Unit1 and
Unit2, and opens a message box to confirm the end of the program. Finally, by clicking OK
on the message box, the program displays a message on the console window.
31 to 40 Declares variables used through the project. And sets the proper values.
46 to 49 Sets the data output format, trigger mode, A/D converter, and measurement mode.
50 to 51 Unit2 applies voltage to the source and substrate terminals of a device.
data(j, i) = Chr(13) & Chr(10) & meas * 1000 & ", " & status
unit1.WriteLine("DZ") ’78
save_data(fname, title, value, data, nop1, nop2, unit1, unit2, t)
Exit Sub
Line Description
55 to 57 Unit1 waits for a trigger sent to the Ext Trig In terminal, and starts measurement by receiving
a trigger sent by Unit2.
66 to 68 Waits for the operation complete and checks if an error occurred. If an error is detected, forces
0 V and goes to Check_err.
70 to 76 Reads measurement data and stores it into the data array.
78 to 80 Applies 0 V from all channels and transfers the data stored in the data variable to the
save_data subprogram. And the subprogram will save the data into a CSV file specified by the
fname variable and displays the data on a message box.
Check_err: ’82
unit1.WriteLine("EMG? " & err) : msg = unit1.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
Sub save_data(ByVal fname As String, ByVal title As String, ByVal value As String,
ByVal data(,) As String, ByVal nop1 As Integer, ByVal nop2 As Integer, ByVal unit1
As DirectIO, ByVal unit2 As DirectIO, ByVal t() As Integer) ’89
Dim i As Integer = 0
Dim j As Integer = 0
FileOpen(1, fname, OpenMode.Output, OpenAccess.Write, OpenShare.LockReadWrite)
Print(1, value)
For j = 0 To nop2 - 1
’Print(1, Chr(13) & Chr(10) & "Unit" & j + 1) ’95
For i = 0 To nop1 - 1
Print(1, data(j, i))
Next i
Next j
FileClose(1)
End Module
Line Description
89 to 113 Save_data subprogram saves measurement result data into a file specified by the fname
variable and displays the data and a message on a message box. If Yes is clicked on the
message box, calls the perform_meas subprogram again. If No is clicked, returns to the
perform_meas subprogram.
NOTE The program needs the example code shown in Table 3-28 to run. Delete apostrophe
(’) at the beginning of the lines 95 and 104 shown in Table 3-28. And delete the lines
30 to 87 shown in Table 3-28, and insert the code shown in Table 3-29 into there.
Line Description
1 to 11 Declares variables used in the Main of Table 3-28. And sets the proper values.
12 to 14 Declares variables used to perform measurement, and sets the value.
15 to 17 Unit1 sets the data output format, A/D converter, and sweep delay time.
18 to 19 Unit1 sets the Start Measurement trigger input for the Ext Trig In terminal.
20 to 21 Unit1 sets the Step Measurement Completion trigger output for the Ext Trig Out terminal.
unit1.WriteLine("DV" & t(1) & ",0," & vs & "," & icomp) ’22
unit1.WriteLine("WV" & t(0) & ",1,0," & v1 & "," & v2 & "," & nop1 & "," & icomp)
unit1.WriteLine("MM 2," & t(0))
unit1.WriteLine("TSC 1")
Line Description
22 to 25 Unit1 applies voltage to device, and sets the sweep source, the measurement mode, and the
time stamp data output.
27 to 29 Unit2 sets the data output format, A/D converter, and sweep delay time.
30 to 32 Unit2 sets the Measurement Completion trigger output for the Ext Trig Out terminal, and
specifies the gate trigger. Unit1 will start measurement when this trigger is sent to its Ext
Trig In terminal.
33 to 34 Unit2 sets the Start Step Output Setup trigger input for the Ext Trig In terminal. Unit2 will
start step output setup when the Step Measurement Completion trigger is sent by Unit1.
35 to 38 Unit2 applies voltage to device, and sets the sweep source, the measurement mode, and the
time stamp data output.
39 Resets the time stamp.
40 Unit2 starts measurement, and sends a gate trigger to the Ext Trig Out terminal. Then Unit1
starts measurement.
42 to 46 Waits for the operation complete and checks if an error occurred. If an error is detected,
forces 0 V and goes to Check_err.
Check_err: ’73
unit1.WriteLine("EMG? " & err) : msg = unit1.Read(True)
MsgBox("Instrument error: " & err & Chr(10) & msg, vbOKOnly, "")
Exit Sub
End Sub
Line Description
This is a program written in the HP BASIC language, and performs the following.
1. Sets the Agilent B1500 for the bipolar transistor Ib-Ic measurement
2. Triggers a sweep measurement
3. Performs a step measurement and sends the Step Measurement Completion
output gate trigger
4. Waits for the Start Step Output Setup input trigger
5. Displays a measurement data (Ic)
6. Repeats 3 to 5 the number of times specified by Ib_num
7. Disables the Agilent B1500 channel output
This is a part of the program used to synchronize the Agilent B1500 operation with
the other instrument. However this program does not include the program code to
control the instrument. So add the program code to control it before running the
program. For the timing of the trigger, refer to the comments in the following
program listing.
10 ASSIGN @B1500 TO 717
20 OPTION BASE 1
30 INTEGER Collector,Base,Ib_num,Vc_num
40 !
50 Collector=2
60 Base=1
70 Ib_start=.0001
80 Ib_stop=.001
90 Ib_num=10
100 Ib_step=(Ib_stop-Ib_start)/(Ib_num-1)
110 Vb_comp=1
120 Vc=2.5
130 Ic_comp=.1
140 !
150 !Other instrument should be initialized and set up.
160 !
50 to 130 Sets the value of the variables for source setup and so on.
140 to 160 Add program lines to perform initialization and measurement
setup of the other instrument.
210 to 220 Sets the Step Measurement Completion trigger output for the Ext
Trig Out terminal, and specifies the gate trigger.
230 to 240 Sets the Start Step Output Setup trigger input for the Ext Trig In
terminal, also disables the input trigger for the first sweep step.
280 to 310 To synchronize the Agilent B1500 operation with the operation of
the other instrument, add program lines to set it to the
measurement ready and trigger wait condition.
NOTE This function is not available for binary data output format (FMT 3 and 4).
This function is not available for the quasi-pulsed spot measurement (MM 9) and
the search measurement (MM 14 and 15).
To read the time data with the best resolution (100 μs), reset the time stamp
every 100 sec or less for the FMT 1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
Enter the MM command to define the measurement mode and enter the TSC
command to set the time stamp function ON. You can get the time data with the
measurement data. The time data is the time from timer reset to the start of
measurement. To clear/reset the time stamp, enter the TSR command.
The following commands returns the time data regardless of the TSC command
setting. The time data is the time from when the time stamp is cleared until the
following command is entered.
3.815, 0
Line Description
2 to 11 Declares variables used through the project. And sets the proper values.
13 to 18 Declares variables and sets the value.
20 to 22 Sets the data output format and A/D converter. Also sets the SMU filter off.
23 to 26 Applies voltage to device.
28 to 29 Checks if an error occurred. If an error is detected, forces 0 V and goes to Check_err.
30 to 31 Performs the high-speed spot measurement. And stores the returned binary data (four
bytes) into the dat array variable.
33 to 41 Picks up the elements, status, type, mode, sign, rng, count, and chan, included in the
returned binary data.
Line Description
43 to 66 Checks the measurement range or output range setting.
68 to 74 If you want to display and save the binary data elements, delete ’ at the top of the lines.
76 to 80 Calculates the measurement data or source output data. And, stores the data into the
data array.
82 to 84 Applies 0 V from all channels. And transfers the data stored in the data variable to the
save_data subprogram (see Table 3-1). And the subprogram will save the data into a
CSV file specified by the fname variable and displays the data on a message box.
86 to 89 Displays a message box to show an error message if the error is detected.
21, 81 Add program lines if the module configuration is different from the
4142B. This example adds the variable Sub, and uses the SMU in
slot 5 instead of slot 4 for substrate.
82 to 84 Add program line to set the channel map. This example transfers the
Sub value to the variable S_ch used in the original program.
160 to 210 Executes the measurement, reads and displays the measurement
data, and disables channels.
21, 81 Add program lines if the module configuration is different from the
415x. This example adds the Sub variable, and uses the SMU in slot
5 instead of slot 4 for substrate.
82 Add program line to set the channel map. This example transfers the
Sub value to the variable B_ch used in the original program.
40, 110, This example uses the GNDU instead of the SMU1. So remove the
120 program lines that include the variable S_ch (SMU1).
170 Remove the RMD? command. This command is not required.
This chapter is the complete reference of the GPIB commands of the Agilent B1500:
• “Command Summary”
• “Command Parameters”
• “Command Reference”
Command Summary
The following table summarizes the Agilent B1500 GPIB commands.
Command Parameters
The parameters used by several commands are explained in this section.
• “Channel Number”
• “SMU Voltage Measurement Ranging Type”
• “SMU Current Measurement Ranging Type”
• “SMU Voltage Output Ranging Type”
• “SMU Current Output Ranging Type”
• “SMU Voltage Source Setup Parameters for
DV/TDV/BDV/WV/WSV/WNX/PV/PWV/LSV/BSV/MV Commands”
• “SMU Current Source Setup Parameters for
DI/TDI/WI/WSI/WNX/PI/PWI/LSI/BSI/MI Commands”
• “MFCMU Measurement Parameters”
• “MFCMU Measurement Range”
• “MFCMU Measurement Frequency”
• “MFCMU AC Level Measurement Range”
• “MFCMU DC Bias Measurement Range”
chnum a Description
a. The HPSMU occupies two slots. To specify the HPSMU, use the channel
number given by the smaller slot number. For example, use the channel
number 301 or 3 to specify the HPSMU installed in slots 3 to 4.
Ranging type
range a for measurement mode for measurement mode
without pulse that uses pulse
a. If the measurement channel forces voltage, the channel uses the voltage output range regardless
of the range value.
Ranging type
range a for measurement mode for measurement mode
without pulse that uses pulse
0 Auto ranging Measurement channel uses
8, for HRSMU+ASU 1 pA limited auto ranging the minimum range that
covers the compliance value.
9, for HRSMU 10 pA limited auto ranging
10, for HRSMU 100 pA limited auto ranging
11 1 nA limited auto ranging
12 10 nA limited auto ranging
13 100 nA limited auto ranging
14 1 μA limited auto ranging
15 10 μA limited auto ranging
16 100 μA limited auto ranging
17 1 mA limited auto ranging
18 10 mA limited auto ranging
19 100 mA limited auto ranging
20, for HPSMU 1 A limited auto ranging
-8, for HRSMU+ASU 1 pA range fixed
-9, for HRSMU 10 pA range fixed
-10, for HRSMU 100 pA range fixed
-11 1 nA range fixed
-12 10 nA range fixed
-13 100 nA range fixed
-14 1 μA range fixed
-15 10 μA range fixed
-16 100 μA range fixed
-17 1 mA range fixed
-18 10 mA range fixed
-19 100 mA range fixed
-20, for HPSMU 1 A range fixed
a. If the measurement channel forces current, the channel uses the current output range regardless
of the range value.
0 Auto ranging
5 0.5 V limited auto ranging, for MPSMU/HRSMU
50 5 V limited auto ranging, for MPSMU/HRSMU
20 or 11 2 V limited auto ranging
200 or 12 20 V limited auto ranging
400 or 13 40 V limited auto ranging
1000 or 14 100 V limited auto ranging
2000 or 15 200 V limited auto ranging, for HPSMU
range or
Ranging type
irange
0 Auto ranging
8 1 pA limited auto ranging, for HRSMU+ASU, not available for pulsed output
9 10 pA limited auto ranging, for HRSMU, not available for pulsed output
10 100 pA limited auto ranging, for HRSMU, not available for pulsed output
11 1 nA limited auto ranging, not available for pulsed output
12 10 nA limited auto ranging
13 100 nA limited auto ranging
14 1 μA limited auto ranging
15 10 μA limited auto ranging
16 100 μA limited auto ranging
17 1 mA limited auto ranging
18 10 mA limited auto ranging
19 100 mA limited auto ranging
20 1 A limited auto ranging, for HPSMU
to ± 40 ±50E-3 ±50E-3
to ± 40 ±50E-3 ±50E-3
to ± 125E-3 ±100
to ± 500E-3 ±40
to ± 1 ±20
1 R (resistance, Ω) X (reactance, Ω)
2 G (conductance, S) B (susceptance, S)
Measurement range a
range
≤ 200 kHz ≤ 2 MHz ≤ 5 MHz
0.016 0.016 V
0.032 0.032 V
0.064 0.064 V
0.125 0.125 V
0.250 0.250 V
12 12 V (MFCMU)
25 25 V (MFCMU)
100
Command Reference
This section contains detailed descriptions of all GPIB commands. The commands
are listed in alphabetical order. Each entry:
1. Defines one GPIB command
2. Describes the execution conditions, if any exist
3. Describes the syntax
4. Lists the parameters
5. Shows the query response after command execution, if there is a query
command
6. Explains any additional information
7. Provides examples
AAD
This command is used to specify the A/D converter (ADC) type, high-speed or
high-resolution, for each measurement channel.
This command setting is ignored by the pulsed spot, pulsed sweep, and staircase
sweep with pulsed bias measurements.
AB
The AB command aborts the present operation and subsequent command execution.
This command stops the operation now in progress, such as the measurement
execution, source setup changing, and so on. But this command does not change the
present condition. For example, if the B1500 just keeps to force the DC bias, the AB
command does not stop the DC bias output.
Syntax AB
Remarks If you start an operation that you may want to abort, do not send any command after
the command or command string that starts the operation. If you do, the AB
command cannot enter the command input buffer until the intervening command
execution starts, so the operation cannot be aborted. In this case, use the device clear
(HP BASIC CLEAR command) to end the operation.
Conditions after The AB command sets the B1500 as listed in the following table.
Execution
Operation before AB Setting after AB
Staircase sweep with pulsed bias measurement Sets specified start value and
base value.
ACH
The ACH command translates the specified program channel number to the
specified actual channel number at the program execution. This command is useful
when you use a control program created for an instrument, such as the 4142B,
4155B/4155C/4156B/4156C/E5260/E5270, and B1500, that has a module
configuration different from the B1500 actually you use. After the ACH command,
enter the *OPC? command to confirm that the command execution is completed.
Parameter actual : Channel number actually set to the B1500 instead of program. Integer
expression. 1 to 10 or 101 to 1002. See Table 4-1 on page 4-13.
program : Channel number used in a program and will be replaced with actual.
Integer expression.
If you do not set program, this command is the same as ACH n,n.
If you do not set actual and program, all channel number mapping is cleared.
For parameter settings, you cannot use the variables set by the VAR command.
Remarks The ACH commands must be put at the beginning of the program or before the
command line that includes a program channel number. In the program lines that
follow the ACH command, you must leave the program channel numbers. The
measurement data is returned as the data of the channel program, not actual.
Example If you want to use channels 1 to 3 instead of channels 5 to 7 respectively, enter the
Statements following statements. The measurement data is returned as the data of channel 5, not
channel 1.
OUTPUT @B1500;"ACH 1,5" !uses ch1 instead of ch5
OUTPUT @B1500;"ACH 2,6" ! ch2 ch6
OUTPUT @B1500;"ACH 3,7" ! ch3 ch7
OUTPUT @B1500;"*OPC?"
ENTER @B1500;A
!
OUTPUT @B1500;"CN 5,6,7" !leave prog ch No.
! |
OUTPUT @B1500;"DV 5,0,3" ! |
OUTPUT @B1500;"DV 6,0,0" ! |
OUTPUT @B1500;"DV 7,0,0" ! |
! |
OUTPUT @B1500;"TI 5,0" ! |
ENTER @B1500 USING "#,3X,13D,X";Data! |
PRINT "I=";Data ! |
! |
OUTPUT @B1500;"CL 5,6,7" ! V
ACT
This command sets the number of averaging samples or the averaging time set to the
A/D converter of the MFCMU.
• 0: Auto mode.
Defines the number of averaging samples given by the following
formula. Then initial averaging is the number of averaging samples
automatically set by the B1500 and you cannot change.
Number of averaging samples = N × initial averaging
• 2: Power line cycle (PLC) mode.
Defines the averaging time given by the following formula.
Averaging time = N / power line frequency
N: Coefficient used to define the number of averaging samples or the
averaging time. Integer expression.
ACV
This command sets the output signal level of the MFCMU, and starts the AC
voltage output. Output signal frequency is set by the FC command.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
results Meaning
AIT
This command is used to set the integration time or the number of averaging
samples of the A/D converter (ADC) for each ADC type.
This command setting is ignored by the pulsed spot, pulsed sweep, and staircase
sweep with pulsed bias measurements.
Execution Enter the AAD command to specify the ADC type for each measurement channel.
Conditions
type mode N
ALS
This command sets the ALWG sequence data.
To generate an arbitrary linear waveform, the SPGU channels need both sequence
data and pattern data. The sequence data must be used by and in common with all
SPGU channels installed in the B1500. And the pattern data must be set to each
SPGU channel.
See “SPGU Module” on page 2-48 for details on the ALWG output and the data
format.
Execution The SPGU operating mode must be set to ALWG with the SIM 1 command.
Conditions
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
bytes : Total number of bytes of the ALWG sequence data. Numeric
expression.
block : ALWG sequence data.
ALS?
This query command returns the ALWG sequence data of the specified SPGU
channel.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
ALW
This command sets the ALWG pattern data.
To generate an arbitrary linear waveform, the SPGU channels need both sequence
data and pattern data. The sequence data must be used by and in common with all
SPGU channels installed in the B1500. And the pattern data must be set to each
SPGU channel.
See “SPGU Module” on page 2-48 for details on the ALWG output and the data
format.
Execution The SPGU operating mode must be set to ALWG with the SIM 1 command.
Conditions
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
bytes : Total number of bytes of the ALWG pattern data. Numeric expression.
block : ALWG pattern data.
ALW?
This query command returns the ALWG pattern data of the specified SPGU
channel.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
AV
This command sets the number of averaging samples of the high-speed ADC (A/D
converter). This command is not effective for the high-resolution ADC.
This command setting is ignored by the pulsed spot, pulsed sweep, and staircase
sweep with pulsed bias measurements.
Syntax AV number[,mode]
to 10 μA 4 10 25
100 μA to 1 A 1 1 1
a. For measurement channels that force current, this is the minimum range
that covers the voltage compliance value.
AZ
This command is used to enable or disable the ADC zero function that is the
function to cancel offset of the high-resolution A/D converter. This function is
especially effective for low voltage measurements. Power on, *RST command, and
device clear disable the function.
This command is effective for the high-resolution A/D converter, not effective for
the high-speed A/D converter.
Syntax AZ mode
Remarks Set the function to OFF in cases that the measurement speed is more important than
the measurement accuracy. This roughly halves the integration time.
Syntax BC
Remarks The following conditions must be true to perform the measurement successfully:
When interval=0: A > 1 V/ms and B ≤ 3 s
When interval=1: A > 0.1 V/ms and B ≤ 12 s
where A means the slew rate when source output sweep was started, and B means
the settling detection time. See “Quasi-Pulsed Spot Measurements” on page 2-15.
These values depend on the conditions of cabling and device characteristics. And
you cannot specify the values directly.
Remarks The time forcing the stop value will be approximately 1.5 ms to 1.8 ms with the
following settings:
mode,
condition : Search mode (0: limit mode or 1: repeat mode) and search stop
condition. The meaning of condition depends on the mode setting.
mode condition
0 Limit value for the search target (target). The search stops when the
monitor data reaches target ± condition. Numeric expression. Positive
value. in A. Setting resolution: range/20000. where range means the
measurement range actually used for the measurement.
1 Repeat count. The search stops when the repeat count of the operation
that changes the source output value is over the specified value.
Numeric expression. 1 to 16.
Remarks In the limit search mode, if search cannot find the search target and the following
two conditions are satisfied, the B1500 repeats the binary search between the last
source value and the source start value.
• target is between the data at source start value and the last measurement data.
• target is between the data at source stop value and the data at:
source value = | stop − start | / 2.
If the search cannot find the search target and the following two conditions are
satisfied, the B1500 repeats the binary search between the last source value and the
source stop value.
• target is between the data at source stop value and the last measurement data.
• target is between the data at source start value and the data at:
source value = | stop − start | / 2.
BGV
The BGV command specifies the voltage monitor channel and its search parameters
for the binary search measurement (MM15). This command setting clears, and is
cleared by, the BGI command setting.
This command ignores the RV command setting.
mode condition
0 Limit value for the search target (target). The search stops when the
monitor data reaches target ± condition. Numeric expression. Positive
value. in V. Setting resolution: range/20000. where range means the
measurement range actually used for the measurement.
1 Repeat count. The search stops when the repeat count of the operation
that changes the source output value is over the specified value.
Numeric expression. 1 to 16.
Remarks In the limit search mode, if search cannot find the search target and the following
two conditions are satisfied, the B1500 repeats the binary search between the last
source value and the source start value.
• target is between the data at source start value and the last measurement data.
• target is between the data at source stop value and the data at:
source value = | stop − start | / 2.
If the search cannot find the search target and the following two conditions are
satisfied, the B1500 repeats the binary search between the last source value and the
source stop value.
• target is between the data at source stop value and the last measurement data.
• target is between the data at source start value and the data at:
source value = | stop − start | / 2.
BSI
The BSI command sets the current search source for the binary search measurement
(MM15). After search stops, the search channel forces the value specified by the
BSM command.
This command clears the BSV, BSSI, and BSSV command settings.
This command setting is cleared by the BSV command.
If Vcomp value is greater than ± 42 V, the interlock circuit must be shorted.
Parameters chnum : SMU search source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
range : Output ranging type. Integer expression. The output range will be set to
the minimum range that covers both start and stop values. For the
limited auto ranging, the instrument never uses the range less than the
specified range. See Table 4-5 on page 4-17.
start, stop : Search start or stop current (in A). Numeric expression. See Table 4-7
on page 4-19. The start and stop must have different values.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
Vcomp : Voltage compliance value (in V). Numeric expression. See Table 4-7 on
page 4-19. If you do not specify Vcomp, the previous value is set.
BSM
The BSM command specifies the search source control mode in the binary search
measurement (MM15), and enables or disables the automatic abort function. The
automatic abort function stops the search operation when one of the following
conditions occurs:
Parameters mode : Source output control mode, 0 (normal mode) or 1 (cautious mode).
If you do not enter this command, the normal mode is set. See Figure
4-1.
abort : Automatic abort function. Integer expression.
1: Disables the function. Initial setting.
2: Enables the function.
post : Source output value after the search operation is normally completed.
Integer expression.
1: Start value. Initial setting.
2: Stop value.
3: Output value when the search target value is get.
If this parameter is not set, the search source forces the start value.
1. The source channel forces the Start value, and the monitor channel executes a
measurement.
2. The source channel forces the Stop value, and the monitor channel executes a
measurement.
If the search target value is out of the range between the measured value at the
Start value and the measured value at the Stop value, the search stops.
3. The source channel forces the Stop-D/2 value (or Stop+D/2 if Start>Stop), and
the monitor channel executes a measurement.
If the search stop condition is not satisfied, the measured data is used to decide
the direction (+ or –) of the next output change. The value of the change is
always half of the previous change.
4. Repeats the output change and measurement until the search stop condition is
satisfied.
For information on the search stop condition, see “BGI” or “BGV”. If the output
change value is less than the setting resolution, the search stops.
Delay time
(1) Normal output
Delay time
(2) Cautious output
Hold time +D/4
+D/32 +D/64
Trigger
+D/2 : Measurement
Start
D = | Stop - Start |
Time
1. The source channel forces the Start value, and the monitor channel executes a
measurement.
2. The source channel forces the Start+D/2 value (or Start-D/2 if Start>Stop), and
the monitor channel executes a measurement.
If the search stop condition is not satisfied, the measured data is used to decide
the direction (+ or –) of the next output change. The value of the change is
always half of the previous change.
3. Repeats the output change and measurement until the search stop condition is
satisfied.
For information on the search stop condition, see “BGI” or “BGV”. If the output
change value is less than the setting resolution, the search stops.
Execution The BSI command must be sent before sending this command.
Conditions
Both primary and synchronous search sources will use the same output
range. So check the output range set to the BSI command to determine
the synchronous source outputs.
Vcomp : Voltage compliance value (in V). Numeric expression. If you do not
specify Vcomp, the previous value is set.
See Also Refer to Table 4-7 on page 4-19 for the source output value, output range, and the
available compliance values.
BSSV
The BSSV command sets the synchronous voltage source for the binary search
measurement (MM15). The synchronous source output will be:
Synchronous source output = polarity × BSV source output + offset
where BSV source output means the output set by the BSV command.
This command setting is cleared by the BSI/BSV command.
Execution The BSV command must be sent before sending this command.
Conditions
Icomp : Current compliance value (in A). Numeric expression. If you do not
specify Icomp, the previous value is set. Zero amps (0 A) is not a valid
value for the Icomp parameter.
See Also Refer to Table 4-6 on page 4-18 for the source output value, output range, and the
available compliance values.
BST
The BST command sets the hold time and delay time for the binary search
measurement (MM15). If you do not enter this command, all parameters are set to 0.
Parameters hold : Hold time (in seconds) that is the wait time after starting the search
measurement and before starting the delay time for the first search
point. Numeric expression.
0 to 655.35 sec. 0.01 sec resolution.
delay : Delay time (in seconds) that is the wait time after starting to force a step
output value and before starting a step measurement. Numeric
expression.
0 to 65.535 sec. 0.0001 sec resolution.
Parameters chnum : SMU search source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
range : Output ranging type. Integer expression. The output range will be set to
the minimum range that covers both start and stop values. For the
limited auto ranging, the instrument never uses the range less than the
specified range. See Table 4-4 on page 4-17.
start, stop : Search start or stop voltage (in V). Numeric expression. See Table 4-6
on page 4-18. The start and stop parameters must have different values.
0 to ± 100 for MPSMU/HRSMU, or 0 to ± 200 for HPSMU
Icomp : Current compliance value (in A). Numeric expression. See Table 4-6 on
page 4-18. If you do not specify Icomp, the previous value is set. Zero
amps (0 A) is not allowed for Icomp.
Module condition after this command is the same as the condition by the CL
command.
Execution No SMU may be in the high voltage state (forcing more than ± 42 V, or voltage
Conditions compliance set to more than ± 42 V).
Before starting the calibration, open the measurement terminals.
Syntax CA [slot]
Parameters slot : Slot number where the module under self-calibration has been installed.
1 to 10. Integer expression. If slot is not specified, the self-calibration is
performed for the mainframe and all modules.
If slot specifies the slot that installs no module, this command causes an error.
Remarks Failed modules are disabled, and can only be enabled by the RCV command.
*CAL?
This query command performs the self-calibration, and returns the results. After this
command, read the results soon.
Module condition after this command is the same as the condition by the CL
command.
Execution No SMU may be in the high voltage state (forcing more than ± 42 V, or voltage
Conditions compliance set to more than ± 42 V).
Parameters slot : Slot number where the module under self-calibration has been installed.
1 to 10. Or 0 or 11. Integer expression.
0: All modules and mainframe. Default setting.
11: Mainframe.
If slot specifies the slot that installs no module, this command causes an error.
Remarks If a SMU connected to SCUU fails the self-calibration, the SCUU cannot be
controlled. And the SSP and SSL commands are not available.
Failed modules are disabled, and can only be enabled by the RCV command.
CL
The CL command disables the specified channels.
Execution No channel may be in the high voltage state (forcing more than ± 42 V, or voltage
Conditions compliance set to more than ± 42 V). However, if you do not specify chnum for CL
command, there are no restrictions on the execution conditions.
Syntax CL [chnum[,chnum...[,chnum]...]]
A maximum of 15 channels can be set.
Parameters chnum : Channel number. Integer expression. See Table 4-1 on page 4-13.
If you specify multiple chnums, the channels will be disabled in the specified order.
If you do not specify chnum, this command disables all SMU, all SPGU, and CMU
in this order. Then, SMU will be disabled in the order from higher to lower output
range and SPGU will be disabled in the order from higher to lower setup voltage.
Remarks The CL command sets the specified module to the following conditions:
After this command, there is no additional power consumption for the idle state.
CLCORR
This command disables the MFCMU open/short/load correction function and clears
the frequency list for the correction data measurement. This command also clears
the correction data and the phase compensation data.
• Auto-calibration is ON.
• For all SMUs, the output switch has been OFF for 30 minutes.
Syntax CM mode
CMM
The CMM command sets the SMU measurement operation mode. This command is
not available for the high speed spot measurement.
Parameters chnum : SMU channel number. Integer expression. 1 to 10 or 101 to 1001. See
Table 4-1 on page 4-13.
mode : SMU measurement operation mode. Integer expression.
Execution No channel may be in the high voltage state (forcing more than ± 42 V, or voltage
Conditions compliance set to more than ± 42 V).
Syntax CN [chnum[,chnum...[,chnum]...]]
CNX [chnum[,chnum...[,chnum]...]]
A maximum of 15 channels can be set.
Parameters chnum : Channel number. Integer expression. See Table 4-1 on page 4-13.
If the output switch of the specified SMU is already set to ON, no action is
performed by this command.
If you specify multiple chnums, the channels will be enabled in the specified order.
If you do not specify chnum, this command enables all SMU, all SPGU, and CMU
in this order. Then, the modules of same kind will be enabled in the order from
lower to higher channel number 101 to 1002. The channel numbers 1 to 10
correspond to the channel numbers 101 to 1001 respectively. See Table 4-1 on page
4-13.
If you specify the HRSMU connected to the ASU, this command enables the
HRSMU and connects the path to the ASU output.
If you specify a SMU connected to the SCUU, this command enables the SMU and
connects the path to the SCUU output.
If you specify the MFCMU connected to the SCUU, this command enables the
MFCMU and connects the path to the SCUU output.
If you specify both MFCMU and SMU connected to the SCUU, this command
causes an error.
If you enter the CN/CNX command without chnum parameter to the B1500 installed
with the SCUU, this command enables the SMUs except for the SMUs connected to
the SCUU, enables the MFCMU, and connects the path to the SCUU output.
Remarks The CN/CNX command sets the specified module to the following conditions:
After this command, there is no additional power consumption for the idle state.
CORR?
This command performs the MFCMU open, short. or load correction data
measurement, and set the correction data to the B1500.
Before executing this command, set the oscillator level of the MFCMU output
signal by using the ACV command.
If you use the correction standard, execute the DCORR command before this
command. The calibration value or the reference value of the standard must be
defined before executing this command.
The correction function is set to OFF by turning off power or by the CORRST or
*RST command. The correction data is cleared by turning off power or by the
CLCORR, CORRL, or DCORR command. If the correction function is set to ON
after the *RST command, the correction function uses the memorized correction
data.
Execution To measure the open correction data, connect the open standard that has the
Conditions calibration value or reference value, or open the measurement terminals at the end of
the device side.
To measure the short correction data, connect the short standard that has the
calibration value or reference value, or connect the measurement terminals together
at the end of the device side.
To measure the load correction data, connect the load standard that has the
calibration value or reference value.
CORRDT
This command sets the MFCMU open/short/load correction data to the B1500.
The correction data is cleared by the CORR? command which performs the
correction data measurement and set it to the B1500.
CORRL
This command disables the MFCMU open/short/load correction function and adds
the specified frequency to the frequency list for the correction data measurement.
This command also clears the correction data and the phase compensation data.
CORRSER?
This query command measures the voltage at the DUT terminals connected to the
SPGU channel and returns the voltage and calculated load impedance. Setting mode
= 1 automatically executes the SER command using the calculated return value as
the input parameter.
Execution The SPGU output channel must be set up by using the following commands before
Conditions executing this command.
The DUT terminal voltage must be measured in the first pulse or ALWG sequence
output. In the PG mode, the pulse period must be more than delay + interval × count
value.
Set the command parameters properly. The DUT terminal voltage must be measured
at the output timing of the voltage effective for the automatic adjustment of the
SPGU output voltage.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
mode : Automatic execution modes of SER. Integer expression.
0: Does not execute the SER command (set the load impedance)
1: Executes the SER command (set the load impedance)
delay : Delay till start of measurement (seconds). Numeric expression.
0 (initial setting) to pulse period -5E-6 seconds, setting resolution
1E-8 seconds.
interval : Measuring interval (seconds). Numeric expression. 5E-6 (initial
setting) to 0.001 seconds, setting resolution 2E-8 seconds.
count : Measurement repetitions (times). Integer expression. 1 (initial setting)
to 65535 times.
CORRST
This command enables or disables the MFCMU open/short/load correction function.
Before setting a function to ON, perform the corresponding correction data
measurement by using the CORR? command.
The correction function is set to OFF by turning off power or by the CORRST or
*RST command. The correction data is cleared by turning off power or by the
CLCORR, CORRL, or DCORR command. If the correction function is set to ON
after the *RST command, the correction function uses the memorized correction
data.
CORRST?
This command returns the MFCMU open/short/load correction function ON or OFF.
2: Short correction
3: Load correction
DCORR
This command disables the MFCMU open/short/load correction function and sets
the open/short/load standard calibration value or reference value to the B1500. This
command also clears the correction data and the phase compensation data.
The reference values set by this command are cleared by turning off power.
DCV
This command forces DC bias (voltage, up to ± 25 V) from the MFCMU. When the
SCUU (SMU CMU unify unit) is connected, output up to ± 100 V is available by
using the SMU that can be connected to the Force1/Sense1 terminals.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If Vcomp value is greater than ± 42 V, the interlock circuit must be shorted.
Syntax DI chnum,irange,current[,Vcomp[,comp_polarity[,vrange]]]
irange : Ranging type for current output. Integer expression. The output range
will be set to the minimum range that covers current value. For the
limited auto ranging, the instrument never uses the range less than the
specified range. See Table 4-5 on page 4-17.
current : Output current value (in A). Numeric expression. See Table 4-7 on page
4-19.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
Vcomp : Voltage compliance value (in V). Numeric expression. See Table 4-7 on
page 4-19. If you do not specify this parameter, Vcomp is set to the
previous setting.
comp_
polarity : Polarity of voltage compliance. Integer expression.
0: Auto mode (default setting). The compliance polarity is
automatically set to the same polarity as current, regardless of the
specified Vcomp. If current=0 A, the polarity is set to positive.
1: Manual mode. Uses the polarity of Vcomp you specified.
vrange : Voltage compliance ranging type. Integer expression. The compliance
range will be set to the minimum range that covers Vcomp value. For
the limited auto ranging, the instrument never uses the range less than
the specified range. See Table 4-4 on page 4-17.
DIAG?
The DIAG? command starts the diagnostics, and returns the results.
Before starting the diagnostics, refer to Remarks below.
After the DIAG? command, read the results soon.
item Description
pause : Place holder to keep the compatibility with the FLEX command of
other instruments.
Remarks • Before executing DIAG? 1 (trigger in/out diagnostics), connect a BNC cable
between the Ext Trig In and Out connectors.
• After executing DIAG? 3 (high voltage LED diagnostics), confirm the status of
LED. Then enter the AB command. result returns 2.
If the LED does not blink, the B1500 must be repaired.
• Before executing DIAG? 4 (digital I/O diagnostics), disconnect any cable from
the digital I/O port.
DO
The DO command executes the B1500 internal memory programs (up to 8
programs) in the order specified.
Execution The specified programs have been stored by using the ST and END commands.
Conditions
Syntax DO pnum[,pnum[,pnum[,pnum[,pnum[,pnum[,pnum[,pnum]]]]]]]
DV
The DV command forces DC voltage from the specified SMU.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
Syntax DV chnum,vrange,voltage[,Icomp[,comp_polarity[,irange]]
DZ
The DZ command stores the settings (V/I output values, V/I output ranges, V/I
compliance values, and so on) of the specified channels, and sets the channels to 0
V. The settings can be recovered by using the RZ command. The stored settings are
cleared by using a device clear (HP BASIC CLEAR) command, *RST, RZ, CL, CA,
or *TST?.
Syntax DZ [chnum[,chnum...[,chnum]...]]
A maximum of 15 channels can be set.
Parameters chnum : Channel number. Integer expression. See Table 4-1 on page 4-13.
If you specify multiple chnums, the channel outputs will be set to 0 V in the
specified order.
If you do not specify chnum, all SMU, all SPGU, and CMU with the output switch
ON will be set to 0 V in this order. Then, SMU will be set to 0 V in the order from
higher to lower output range and SPGU will be set to 0 V in the order from higher to
lower setup voltage.
Remarks The DZ command sets the specified module to the following conditions:
Parameters errcode : Error code returned by the ERR? command. Numeric expression.
Remarks Use the ERRX? command to support all errors. The EMG? command supports the
error code 0 to 999 only.
If unsupported error is detected, 999 is returned by the ERR? command.
The EMG? 999 command returns the message associated with the last error.
END
The END command is used with the ST command to store a program in the internal
program memory. See “ST” on page 4-143.
Syntax END
ERC
The ERC command changes the output status of the digital I/O port. This command
does not change the status of the trigger ports and the input ports set by the ERM
command.
The *RST command or the device clear sets the digital I/O port (total 16 paths) to
the output port, and sets the port output level to TTL high.
Execution The digital I/O control mode must be the direct control (ERMOD 0).
Conditions
Example If you want to set TTL low level for the output ports of the digital I/O port bit 0 to 7,
Statements enter the following command.
OUTPUT @B1500;"ERC 2,255"
where the decimal value 255 means binary bit pattern 0000000011111111. This
command does not change the status of the trigger ports and the input ports.
ERM
The ERM command changes the input/output assignments of the digital I/O port
(total 16 paths). This command does not change the trigger port assignments and
settings.
The *RST command or the device clear sets the digital I/O port to the output port,
and sets the port output level to TTL high.
Execution The digital I/O control mode must be the direct control (ERMOD 0).
Conditions
Parameters iport : Decimal value of the port setting. Integer expression. 0 to 65535.
Example If you want to use the non-trigger ports of the digital I/O ports 0 to 7 as the input
Statements port, enter the following statement.
OUTPUT @B1500;"ERM 255"
where the decimal value 255 means binary bit pattern 0000000011111111.
Remarks The ERM command sets the port level to TTL high for all ports where the port
assignment is changed from output to input or from input to output.
The ERM command does not change the port assignment of the trigger ports.
ERMOD
This command selects the control mode for the digital I/O ports.
ERMOD?
This query command returns the control mode for the digital I/O ports.
Syntax ERMOD?
ERR?
The ERR? query command returns error code.
Parameters mode : Error code output mode. Integer expression. 0 (default setting) or 1.
0: Reads the contents of the error queue, and clears the queue. This
returns four error codes in order from their occurrence.
1: Reads one error code from the head of the error queue and removes
that code from the queue. This returns one error code.
Remarks Use the ERRX? command to support all errors. The ERR? command supports the
error code 0 to 999 only.
If unsupported error is detected, 999 is returned. The EMG? 999 command returns
the message associated with the last error.
This command uses the error queue which can store four error codes. This error
queue is cleared by executing the ERRX? command.
ERRX?
This query command reads one error code from the head of the error queue and
removes that code from the queue.
Parameters mode : Error code output mode. Integer expression. 0 (default setting) or 1.
0: Returns the error code and the corresponding message.
1: Returns the error code only.
Remarks This command uses the error queue which can store 30 error codes. This error queue
is cleared by executing the ERR? command.
ERS?
The ERS? command returns the status of the digital I/O port (16 paths).
Execution The digital I/O control mode must be the direct control (ERMOD 0).
Conditions
Syntax ERS?
ERSSP
This command sets the connection state of the I/O path for the Agilent 16440A
SMU/PG selector. Set for each output port on the selector.
Execution Digital I/O port must be set for dedicated selector control mode using the ERMOD 1
Conditions command.
ERSSP?
This query command returns the connection state of the I/O path for the Agilent
16440A SMU/PG selector.
FC
This command sets the output signal frequency of the MFCMU.
Execution The CN/CNX command has been executed for the specified channel (MFCMU).
Conditions
Syntax FC chnum,freq
Syntax FL mode[,chnum[,chnum...[,chnum]...]]
A maximum of ten channels can be set.
FMT
This command clears the B1500 output data buffer, and specifies the data output
format. For details about data output format, see “Data Output Format” on page
1-25. Without this command, the data output format is same as the format by the
FMT1,0 command.
Query command output data is always stored in the query buffer in ASCII format,
regardless of this command.
Parameters format : Data output format. Integer expression. 1 to 25. See Table 4-16.
mode : Data output mode. Integer expression. 0 to 10. See Table 4-17. Without
setting the mode value, only the measurement data is returned.
For the sampling measurement, the sampling index is also returned if
no zero value is set to mode.
Table 4-16 FMT format parameter
NOTE For the 4 byte binary data output format, the time stamp function is not available.
Refer to “Data Output Format” on page 1-25.
*IDN?
The *IDN? query command returns the instrument model number and the firmware
revision number.
Syntax *IDN?
Response Explanation
model B1500A
revision Firmware revision number. Example: A.01.00
IMP
The IMP command specifies the parameter measured by the MFCMU. This
command is effective for the following commands and the following measurement
mode. The MFCMU can measure two parameters.
• TC command
• TTC command
• Spot C measurement (MM17)
• DC bias sweep measurement (MM18)
• Pulsed spot C measurement (MM19)
• Pulsed sweep CV measurement (MM20)
• Frequency sweep measurement (MM22)
• AC level sweep measurement (MM23)
• C-t sampling measurement (MM26)
Execution This command is not effective for the binary data output format (FMT3, FMT4,
Conditions FMT13, and FMT14). Then one of the following couples will be measured. They
will be automatically selected by the B1500, and will be a couple without data
overflow.
Parameters mode : Measurement mode. 1 to 402. Integer expression. See Table 4-8 on
page 4-20.
Initial setting: mode=100 (Cp-G measurement)
Syntax IN [chnum[,chnum...[,chnum]...]]
A maximum of 15 channels can be set.
Parameters chnum : Channel number. Integer expression. See Table 4-1 on page 4-13.
If you specify multiple chnums, the channel outputs will be set to 0 V in the
specified order.
If you do not specify chnum, all SMU, all SPGU, and CMU will be set to 0 V in this
order. Then, SMU will be set to 0 V in the order from higher to lower output range
and SPGU will be set to 0 V in the order from higher to lower setup voltage.
Remarks The IN command sets the specified module to the following conditions:
After this command, there is no additional power consumption for the idle state.
LGI
The LGI command sets the current monitor channel for the linear search
measurement (MM14). This command setting clears, and is cleared by, the LGV
command setting.
This command ignores the RI command setting.
LMN
This command enables or disables the data monitor and data output of the MFCMU
AC voltage and DC voltage.
This command is not effective for the pulsed spot C (MM19), pulsed sweep CV
(MM20), and C-t sampling (MM26) measurement.
Syntax LOP?
02 SMU forces positive current, and does not reach voltage compliance.
03 SMU forces negative current, and does not reach voltage compliance.
10 Not applicable.
20 SMU is oscillating.
30 Not applicable.
*LRN?
The *LRN? (learn) query command returns the B1500 command parameter settings.
Parameters and type : This parameter selects the type of query response. Available values are
Query Response 0 to 110, but some numbers are not used. See below. Integer expression.
A description and the query response of each type is described below.
0: Returns the output switch ON/OFF status:
CN[chnum[,chnum . . . [,chnum] . . . ]]<CR/LF^EOI>
where chnum is the channel number for the channel whose output
switch is set to ON.
If no output switches are ON, the query response is:
CL<CR/LF^EOI>
1 to 10: Returns the source status of SMU or MFCMU.
MPA param;
SCH chnum;
MCH chnum<CR/LF^EOI>
62 : Returns the ASU connection path:
SAP chnum,path[;SAP chnum,path] . . . .
[;SAP chnum,path]<CR/LF^EOI>
63 : Returns the 1 pA auto ranging operation mode:
SAR chnum,mode[;SAR chnum,mode] . . . .
[;SAR chnum,mode]<CR/LF^EOI>
64 : Returns the operation mode of the ASU connection status indicator:
SAL chnum,mode[;SAL chnum,mode] . . . .
[;SAL chnum,mode]<CR/LF^EOI>
70 : Returns the MFCMU measurement mode:
IMP mode<CR/LF^EOI>
71 : Returns the MFCMU data output mode:
LMN mode<CR/LF^EOI>
72 : Returns the MFCMU’s ADC setting:
ACT mode, number<CR/LF^EOI>
73 : Returns the MFCMU measurement range:
RC chnum,mode,range<CR/LF^EOI>
80 : Returns the operation mode of the SCUU connection status indicator:
SSL chnum,mode<CR/LF^EOI>
81 : Returns the SCUU connection path:
SSP chnum,mode<CR/LF^EOI>
90 : Returns the MFCMU adjustment mode setting:
ADJ chnum,mode<CR/LF^EOI>
100 : Returns the DC bias sweep measurement settings:
WMDCV abort function[,output after sweep];
WTDCV hold,delay[,step delay[,S trig delay[,M trig delay]]]
[;WDCV chnum,mode,start,stop,step]<CR/LF^EOI>
LSI
The LSI command sets the current search source for the linear search measurement
(MM14). After search stops, the search channel forces the value specified by the
LSM command.
This command clears the LSV, LSSI, and LSSV command settings.
This command setting is cleared by the LSV command.
If Vcomp value is greater than ± 42 V, the interlock circuit must be shorted.
Parameters chnum : SMU search source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
range : Output ranging type. Integer expression. The output range will be set to
the minimum range that covers both start and stop values. For the
limited auto ranging, the instrument never uses the range less than the
specified range. See Table 4-5 on page 4-17.
start, stop : Search start or stop current (in A). Numeric expression. See Table 4-7
on page 4-19. The start and stop must have different values.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
step: Step current (in A). Numeric expression.
If start < stop, step must be positive, and if start > stop, step must be
negative. Maximum number of search steps is 1001.
Vcomp: Voltage compliance value (in V). Numeric expression. See Table 4-7 on
page 4-19. If you do not specify Vcomp, the previous value is set.
LSSI
The LSSI command sets the synchronous current source for the linear search
measurement (MM14). The synchronous source output will be:
Synchronous source output = polarity × LSI source output + offset
where the LSI source output is the output set by the LSI command.
This command setting is cleared by the LSV/LSI command.
See Also Refer to Table 4-7 on page 4-19 for the source output value, output range, and the
available compliance values.
LSSV
The LSSV command sets the synchronous voltage source for the linear search
measurement (MM14). The synchronous source output will be:
Synchronous source output = polarity × LSV source output + offset
where the LSV source output is the value set by the LSV command.
This command setting is cleared by the LSI/LSV command.
See Also Refer to Table 4-6 on page 4-18 for the source output value, output range, and the
available compliance values.
LST?
The LST? query command stores a catalog of internal memory programs or a
specific program listing in the output data buffer (query buffer) of the B1500.
Parameters pnum : Memory program number. Numeric expression. 0 to 2000. If you do not
specify the value, 0 is set.
LST? 0 returns the catalog of the memory programs. This is same as the
LST? command results. Then index and size are not required.
index : Command index that is the number of top command to read. Numeric
expression. If you do not specify the value, 1 is set.
index=1 specifies the first command stored in the memory program.
This command is always the ST command. And the last command is
always the END command. If the index value is greater than the
number of commands, the LST? returns the END only.
If you set index=0, the LST? returns the number of commands stored in
the memory program. For empty memory programs, the LST? returns 2
(ST and END).
size : Number of commands to read. Numeric expression. 1 to 3000. If you
do not specify the value, 3000 is set.
If you set the value greater than the number of commands from the
command specified by index to the last command (END), the LST?
command stops operation after reading the END command.
stored command (ST pnum) to the 3000th stored command. If the number of
commands are less than 3000, the LST? command reads the commands from ST to
END. See Example Statements that show an HP BASIC programming example.
LSTM
The LSTM command sets the timing parameters for the linear search measurement
(MM14). If you do not enter this command, all parameters are set to 0.
Parameters hold : Hold time (in seconds) that is the wait time after starting the search
measurement and before starting the delay time for the first search
point. Numeric expression.
0 to 655.35 sec. 0.01 sec resolution.
delay : Delay time (in seconds) that is the wait time after starting to force a step
output value and before starting a step measurement. Numeric
expression.
0 to 65.535 sec. 0.0001 sec resolution.
Parameters chnum : SMU search source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
range : Output ranging type. Integer expression. The output range will be set to
the minimum range that covers both start and stop values. Range
changing may cause 0 V output in a moment. For the limited auto
ranging, the instrument never uses the range less than the specified
range. See Table 4-4 on page 4-17.
start, stop : Search start or stop voltage (in V). Numeric expression. See Table 4-6
on page 4-18. The start and stop parameters must have different values.
0 to ± 100 for MPSMU/HRSMU,
0 to ± 200 for HPSMU
step : Step voltage (in V). Numeric expression.
If start < stop, step must be positive, and if start > stop, step must be
negative. Maximum number of search steps is 1001.
Icomp: Current compliance value (in A). Numeric expression. See Table 4-6 on
page 4-18. If you do not specify Icomp, the previous value is set. Zero
amps (0 A) is not allowed for Icomp.
Parameters chnum : Channel number of the unit to clear the settings. Integer expression. See
Table 4-1 on page 4-13.
If you do not specify chnum, the MCC command clears the settings of
all sampling channels.
MDCV
This command sets the DC bias source (MFCMU, up to ± 25 V) used for the C-t
sampling measurement (MM26). When the SCUU (SMU CMU unify unit) is
connected, output up to ± 100 V is available by using the SMU that can be
connected to the Force1/Sense1 terminals.
This command setting clears the previous MDCV command setting.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
NOTE With the SCUU, the source module is automatically selected by the setting value.
The MFCMU is used if the base, bias, and post values are below ± 25 V (setting
resolution: 0.001 V), or the SMU is used if they are greater than ± 25 V (setting
resolution: 0.005 V).
The SMU will operate with the 100 V limited auto ranging and 20 mA compliance
settings.
MI
The MI command sets the DC current source (SMU) for the sampling measurement
(MM10). This command setting clears, and is cleared by, the MV command setting.
The specified channel starts the base current output by the measurement trigger (XE
command and so on), and changes the output value to bias after the hold time
elapses. The hold time is set by the h_base parameter of the MT command.
When multiple channels are used, channel outputs start in the order from lower to
higher channel number 101 to 1001. The channel numbers 1 to 10 correspond to the
channel numbers 101 to 1001 respectively. See Table 4-1 on page 4-13.
If the DI command is executed for this channel, the channel works as the DC current
source set by the DI command.
Execution If Vcomp value is greater than ± 42 V, the interlock circuit must be shorted.
Conditions
Syntax MI chnum,irange,base,bias[,Vcomp]
ML
The ML command sets the sampling mode, linear or logarithmic. For the
logarithmic sampling, this command also specify the number of measurement data
to be returned.
If you do not execute this command, the last sampling mode is effective.
Initialization such as the *RST command sets the linear sampling mode.
Syntax ML mode
MM mode[,chnum]
Parameters mode : Measurement mode. Integer expression. 1 to 26. See Table 4-18.
chnum: Measurement channel number. Integer expression. See Table 4-1 on
page 4-13.
Table 4-18 Measurement Mode
1 Spot DI, DV
MSC
The MSC command enables or disables the automatic abort function for the
sampling measurement (MM10 and MM26). The automatic abort function stops the
measurement when one of the following conditions occurs:
Output Data The B1500 returns the data measured before any abort condition is detected.
Dummy data 199.999E+99 will be returned for the data after abort.
MSP
The MSP command specifies the SPGU channel synchronized with the sampling
measurements (MM10), and the channel output after the sampling measurement.
You can also specify the channel output before the sampling measurement for the
channel which is set to the DC bias output by the SPM command.
Using the measurement trigger (XE command, etc.), the specified channel’s output
changes to the base value (set by the SPV command) and then changes to the pulse
peak value or the DC bias value (set by the SPV command) after the base hold time
elapses (which is set by the MT command). Finally the output is changed to the post
value (set by the MSP command) after the sampling measurement.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1 on page 4-13.
Remarks The MSC command’s post parameter is not effective for the SPGU channel
synchronized with the sampling measurements (MM10).
MT
This command sets the timing parameters of the sampling measurement (MM10).
Syntax MT h_bias,interval,number[,h_base]
Parameters h_bias : Time since the bias value output until the first sampling point. Numeric
expression. in seconds. 0 (initial setting) to 655.35 s, resolution 0.01 s.
The following values are also available for interval < 0.002 s. |h_bias|
will be the time since the sampling start until the bias value output.
-0.09 to -0.0001 s, resolution 0.0001 s.
interval : Interval of the sampling. Numeric expression, 0.0001 to 65.535, in
seconds. Initial value is 0.002. Resolution is 0.001 at interval ≥ 0.002.
Linear sampling of interval < 0.002 in 0.00001 resolution is available
only when the following formula is satisfied. Also see NOTE below.
interval ≥ 0.0001 + 0.00002 × (number of measurement channels-1)
number : Number of samples. Integer expression. 1 to the following value. Initial
value is 1000.
For the linear sampling with interval < 2 ms, if the total measurement time runs
over the specified time interval × number, the sampling measurement will be
stopped even if the number of measurement result data is less than the specified
number.
For the log sampling, the B1500 holds only the data that can be plotted on the
log scale in the same distance as close as possible. Only the held data is counted
in the number of measurement result data.
5. The sampling measurement is completed. And the source channel set by the
MI/MV command forces the base or bias value specified by the MSC command.
The source channel set by the DI/DV command keeps its output.
The index data (max. 9999999) and the time data returned with the measurement
data will be as shown in the following formula. However, long measurement or busy
status may cause unexpected time data.
time data = t + h_bias + (index data -1) × interval
Where, t is the time of the sampling measurement time origin, and is the time when
the output value is changed from base to bias.
MTDCV
This command sets the timing parameters of the C-t sampling measurement
(MM26).
Parameters h_bias : Time since the bias value output until the first sampling point. Numeric
expression. in seconds. 0 (initial setting) to 655.35 s, resolution 0.01 s.
interval : Interval of the sampling. Numeric expression. in seconds. 0.008 to
655.35 s, 0.001 s resolution. Initial setting is 0.01.
number : Number of samples. Integer expression. 1 to 10001. Initial setting =
1000.
h_base: Hold time of the base value output until the bias value output. Numeric
expression. in seconds. 0 (initial setting) to 655.35 s, resolution 0.01 s.
MV
The MV command sets the DC voltage source (SMU) for the sampling
measurement (MM10). This command setting clears, and is cleared by, the MI
command setting.
The specified channel starts the base voltage output by the measurement trigger (XE
command and so on), and changes the output value to bias after the hold time
elapses. The hold time is set by the h_base parameter of the MT command.
When multiple channels are used, channel outputs start in the order from lower to
higher channel number 101 to 1001. The channel numbers 1 to 10 correspond to the
channel numbers 101 to 1001 respectively. See Table 4-1 on page 4-13.
If the DV command is executed for this channel, the channel works as the DC
voltage source set by the DV command.
Execution If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
Conditions
Syntax MV chnum,vrange,base,bias[,Icomp]
NUB?
The NUB? query command checks the number of measurement data in the output
data buffer, and stores the results in the output data buffer (query buffer).
Syntax NUB?
ODSW
This command specifies the operation of the pulse switch for the specified SPGU
channel. Set for each channel. See “SPGU Module” on page 2-48 for details on the
operation of the pulse switch.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
state : 0: pulse switch disabled (initial setting)
1: pulse switch enabled
normal: 0: normally open (switch is normally open, initial setting)
1: normally closed (switch is normally closed)
delay: Only for the PG mode. Delay time (seconds) from start of pulse output
to changeover of pulse switch. Numeric expression. 0 (initial setting) to
pulse period-1E-7 seconds, setting resolution 1E-8 seconds.
width: Only for the PG mode. Duration (seconds) to hold the switched state of
the pulse switch. Numeric expression. 1E-7 (initial setting) to pulse
period-delay seconds, setting resolution 1E-8 seconds.
The delay and width parameters are ignored in ALWG mode.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table Table 4-1.
*OPC?
The *OPC? command monitors the pending operations, and places ASCII character
1 into the output queue when all pending operations are completed. Also this
command sets/clears the operation complete (OPC) bit in the standard event status
register as follows:
• If there are no pending operations, sets the OPC bit to 1.
• If there are any pending operations, sets the OPC bit to 0.
The bit will be set to 1 when all pending operations are completed.
Syntax *OPC?
OS
The OS command causes the B1500 to send a edge trigger from the Ext Trig Out
terminal. To set the trigger logic (initial setting: negative), send the TGP command
for the Ext Trig Out terminal.
Syntax OS
Parameters port : External trigger output port number. Integer expression. -2, or 1 to 16.
-2: Ext Trig Out terminal.
1 to 16: Port 1 to 16 of the digital I/O terminal.
To use a digital I/O port, send the TGP command. The port value must
be same as the port value set to the TGP command.
level : Trigger output level. Integer expression. 0, 1, or 2.
0: Logical low.
1: Logical high.
2: Edge trigger (default setting).
If level is not specified, the B1500 sends the edge trigger. For the gate
trigger output, send OSX port,1 when starting trigger output, and send
OSX port,0 when stopping trigger output.
PA
The PA command pauses the command execution or internal memory program
execution, until the specified wait time elapses or until an event specified by the TM
command is received. The event set by the TM command only releases the paused
status. It does not start the measurement.
Parameters wait time : -99.9999 to 99.9999 seconds, with 100 μsec resolution. Numeric
expression. If wait time is not specified or negative wait time is set, the
paused status is kept until receiving an event specified by the TM
command.
Remarks The TM3 command enables an external trigger from the Ext Trig In terminal as an
event used to break the pause state set by the PA command.
The B1500 counts the wait time independent of the source wait time and the
measurement wait time set by the WAT command. So the wait time can cover them
as shown in the following program example:
OUTPUT @B1500;"CN";1
OUTPUT @B1500;"WAT";1,0,1E-3 !Source Wait Time =1ms
OUTPUT @B1500;"WAT";2,0,1E-3 !Meas Wait Time =1ms
OUTPUT @B1500;"DV";1,0,5,1E-2
OUTPUT @B1500;"PA";1E-3 !Wait Time =1ms
OUTPUT @B1500;"TI";1
ENTER @B1500 USING "#,3X,13D,X";Idata
PAD
Enables or disables parallel measurements by the multiple channels (SMU). This
command is effective for the measurement channels that use the high speed A/D
converter (ADC) and for the spot measurement (MM1), staircase sweep
measurement (MM2), or sampling measurement (MM10).
The parallel measurements are performed at first by using the measurement
channels that use the high speed ADC. And the other measurement channels
perform measurements in series as defined in the MM command by using the high
resolution ADC.
Execution The port parameter is meaningful only for the event (trigger input) set by the TM3
Conditions command. Set 1 (dummy) for the event set by the TM1, TM2, or TM4 command.
Parameters port : External trigger input port number. Integer expression. -1, or 1 to 16.
-1: Ext Trig In terminal.
1 to 16: Port 1 to 16 of the digital I/O terminal.
To use a digital I/O port, send the TGP command. The port value must
be same as the port value set to the TGP command.
wait time : -99.9999 to 99.9999 seconds, with 100 μsec resolution. Numeric
expression.
If wait time is not specified or negative wait time is set, the paused
status is kept until receiving an event specified by the TM command.
Remarks The TM3 command enables an external trigger from a trigger input terminal
specified by the port parameter as an event used to break the pause state set by the
PA command.
The B1500 counts the wait time independent of the source wait time and the
measurement wait time set by the WAT command. So the wait time can cover them
as shown in the following program example:
OUTPUT @B1500;"CN";1
OUTPUT @B1500;"WAT";1,0,1E-3 !Source Wait Time =1ms
OUTPUT @B1500;"WAT";2,0,1E-3 !Meas Wait Time =1ms
OUTPUT @B1500;"DV";1,0,5,1E-2
OUTPUT @B1500;"PAX";-1,1E-3 !Wait Time =1ms
OUTPUT @B1500;"TI";1
ENTER @B1500 USING "#,3X,13D,X";Idata
PDCV
This command sets the pulsed voltage source used for the pulsed spot C
measurement (MM19). The source will be the MFCMU, or the SMU that can be
connected to the Force1/Sense1 terminals of the SCUU (SMU CMU unify unit).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
PI
The PI command specifies the pulse current source and its parameters. This
command also clears, and is cleared by, the PV command setting.
In the staircase sweep with pulsed bias measurement mode (set by the MM 5
command), the output forced by the PI command synchronized with the staircase
sweep outputs forced by the WI or WV command.
Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. Note that the high-resolution ADC cannot be used for the pulsed
measurements. The AAD/AIT/AV/WT command settings are ignored.
If Vcomp value is greater than ± 42 V, the interlock circuit must be shorted.
Syntax PI chnum,irange,base,pulse[,Vcomp]
Parameters chnum : SMU pulsed source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
irange: Ranging type for pulse current output. Integer expression. The output
range will be set to the minimum range that covers both base and pulse
values. For the limited auto ranging, the instrument never uses the
range less than the specified range. See Table 4-5 on page 4-17.
base,
pulse : Pulse base current or peak current (in A). Numeric expression. See
Table 4-7 on page 4-19. base and pulse must have the same polarity.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
Vcomp: Voltage compliance value (in V). Numeric expression. See Table 4-7 on
page 4-19. If Vcomp is not specified, the previous value is set.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified Vcomp. If the output value is 0,
the polarity is set to positive.
PT
The PT command sets the hold time, pulse width, and pulse period for a pulse source
set by the PI, PV, PWI or PWV command. This command also sets the trigger delay
time. Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. Note that the high-resolution ADC cannot be used for the pulsed
measurements. The AAD/AIT/AV/WT command settings are ignored.
Parameters hold : Hold time (in seconds). Numeric expression. 0 to 655.35 sec. 10 ms
resolution. Initial setting = 0.
width : Pulse width (in seconds). Numeric expression. 0.5 ms to 2.0 s. 0.1 ms
resolution. Initial setting = 1 ms.
period : Pulse period (in seconds). Numeric expression. 0, -1, or 5 ms to 5.0 s.
0.1 ms resolution. Initial setting = 10 ms. Default setting = 0.
PTDCV
This command sets the hold time, pulse width, pulse period, and trigger output delay
time of the pulsed spot C measurement (MM19) or pulsed sweep CV measurement
(MM20).
Parameters hold : Hold time (in seconds). Numeric expression. 0 to 655.35 sec. 10 ms
resolution. Initial setting = 0 sec.
width : Pulse width (in seconds). Numeric expression. 8 ms to 655.35 sec. 0.1
ms resolution. Initial setting = 8 ms.
PV
The PV command specifies the pulsed voltage source and its parameters. This
command also clears, and is cleared by, the PI command setting.
In the staircase sweep with pulsed bias measurement mode (MM 5 command), the
output forced by the PV command synchronized with the staircase sweep outputs
forced by the WI or WV command.
Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. Note that the high-resolution ADC cannot be used for the pulsed
measurements. The AAD/AIT/AV/WT command settings are ignored.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
Syntax PV chnum,vrange,base,pulse[,Icomp]
Parameters chnum : SMU pulsed source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
vrange: Ranging type for the pulsed voltage output. Integer expression. The
output range will be set to the minimum range that covers both base
and pulse values. For the limited auto ranging, the instrument never
uses the range less than the specified range. See Table 4-4 on page 4-17.
base,
pulse : Pulse base voltage or pulse peak voltage (in V). Numeric expression.
See Table 4-6 on page 4-18.
0 to ± 100 for MPSMU/HRSMU, or 0 to ± 200 for HPSMU
Icomp: Current compliance value (in A). Numeric expression. See Table 4-6 on
page 4-18. If you do not set Icomp, the previous value is used.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified Icomp. If the output value is 0,
the polarity is set to positive.
PWDCV
This command sets the pulsed voltage sweep source used for the pulsed sweep CV
measurement (MM20). The sweep source will be the MFCMU, or the SMU that can
be connected to the Force1/Sense1 terminals of the SCUU (SMU CMU unify unit).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
PWI
The PWI command specifies the pulsed current sweep source and its parameters.
This command clears the settings of the PWV, WSV and WSI commands.
The settings specified by this command are cleared by the PWV command.
Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. Note that the high-resolution ADC cannot be used for the pulsed
measurements. The AAD/AIT/AV/WT command settings are ignored.
Parameters chnum : SMU pulsed sweep source channel number. Integer expression. 1 to 10
or 101 to 1001. See Table 4-1 on page 4-13.
mode : Sweep mode. Integer expression. 1 or 3.
1: Linear sweep (single stair, start to stop.)
3: Linear sweep (double stair, start to stop to start.)
range : Ranging type for pulsed current sweep. Integer expression. The output
range will be set to the minimum range that covers base, start, and stop
values. For the limited auto ranging, the instrument never uses the
range less than the specified range. See Table 4-5 on page 4-17.
base, start,
stop : Pulse base, start, or stop current (in A). Numeric expression. See Table
4-7 on page 4-19. base, start and stop must have the same polarity.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
step : Number of steps for pulsed sweep. Numeric expression. 1 to 1001.
Vcomp : Voltage compliance (in V). Numeric expression. See Table 4-7 on page
4-19. If you do not specify Vcomp, the previous value is set. If Vcomp
value is greater than ± 42 V, the interlock circuit must be shorted.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified Vcomp. If the output value is 0,
the polarity is set to positive.
PWV
The PWV command specifies the pulsed voltage sweep source and its parameters.
This command also clears the settings of the PWI, WSV and WSI commands.
The settings specified by this command are cleared by the PWI command.
Measurement channel performs measurement so that the pulse width and pulse
period are kept. The integration time is automatically set by the instrument, and you
cannot change. Note that the high-resolution ADC cannot be used for the pulsed
measurements. The AAD/AIT/AV/WT command settings are ignored.
Parameters chnum : SMU pulsed sweep source channel number. Integer expression. 1 to 10
or 101 to 1001. See Table 4-1 on page 4-13.
mode : Sweep mode. Integer expression. 1 or 3.
1: Linear sweep (single stair, start to stop.)
3: Linear sweep (double stair, start to stop to start.)
range: Ranging type for pulsed voltage sweep. Integer expression. The output
range will be set to the minimum range that covers base, start, and stop
values. For the limited auto ranging, the instrument never uses the
range less than the specified range. See Table 4-4 on page 4-17.
base, start,
stop : Pulse base, start, or stop voltage (in V). Numeric expression. See Table
4-6 on page 4-18. If the output voltage is greater than ± 42 V, the
interlock circuit must be shorted.
0 to ± 100 for MPSMU/HRSMU, or 0 to ± 200 for HPSMU
step : Number of steps for pulsed sweep. Numeric expression. 1 to 1001.
Icomp : Current compliance (in A). Numeric expression. See Table 4-6 on page
4-18. If you do not specify Icomp, the previous value is set.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified Icomp. If the output value is 0,
the polarity is set to positive.
QSC
This command sets the QSCV measurement operation for the quasi-static CV
measurement (MM13). For the QSCV measurement operation, see “Quasi-static CV
Measurement” on page 2-24.
QSM
This command enables or disables the automatic abort function for the quasi-static
CV measurement (MM13). The automatic abort function stops the measurement
when one of the following conditions occurs.
• Compliance on the measurement channel
• Compliance on the non-measurement channel
• Overflow on the AD converter
• Oscillation on any channel
This command also sets the post measurement condition for the sweep source. After
the measurement is normally completed, the sweep source forces the value specified
by the post parameter.
If the measurement is stopped by the automatic abort function, the sweep source
forces the start value.
Output Data The B1500 returns the data measured before an abort condition is detected. Dummy
data 199.999E+99 will be returned for the data after abort.
QSO
This command enables or disables the QSCV smart operation for the quasi-static
CV measurement (MM13).
Remarks The range set by this command is used for both the leakage current measurement
and the capacitance measurement.
Use the QST command to set the integration time of the capacitance measurement
and the leakage current measurement.
Parameters cinteg : Integration time for the capacitance measurement, in seconds. Numeric
expression. The available values are 0.02 to 400 s for a 50 Hz line
frequency, and 0.016667 to 333.33 s for 60 Hz. But the value is
rounded as follows:
cinteg = n / selected line frequency (n : integer. 1 to 20000.)
The initial setting is 5/ selected line frequency. So this value is 0.1 s for
a 50 Hz line frequency, and approximately 0.083 s for 60 Hz.
linteg : Integration time for the leakage current measurement, in seconds.
Numeric expression. The available values are 0.02 to 2 s for a 50 Hz
line frequency, and 0.016667 to 1.6667 s for 60 Hz. But the value is
rounded as follows:
linteg = n / selected line frequency (n : integer. 1 to 100.)
The initial setting is 5/ selected line frequency. So this value is 0.1 s for
a 50 Hz line frequency, and approx. 0.083 s for 60 Hz.
hold : Hold time (in seconds). Numeric expression. This is the time from the
start of the first sweep step to the beginning of the delay time (delay1).
0 to 655.35 sec. 0.01 sec resolution. Initial setting = 0.
delay1 : Delay time (in seconds). Numeric expression. This is the time from the
start of each sweep step to the start of the measurement.
0 to 65.535 sec. 0.0001 sec resolution. Initial setting = 0.
delay2 : Delay time (in seconds). Numeric expression. This is the time from the
end of the each sweep step to the start of the next sweep step or the end
of the sweep. delay2 is not effective for the spot measurement.
0 to 65.535 sec. 0.0001 sec resolution. Initial setting = 0.
QSV
This command specifies the voltage sweep source and its parameters for the
quasi-static CV measurement (MM13).
Execution If you do not specify the channel number for the MM command, the channel
Conditions specified by the QSV command forces the sweep voltage, and measures the
capacitance.
This value is the upper or lower limit of the sweep output voltage.
cvoltage : Capacitance measurement voltage (in V).
The minimum value is double the resolution of the output range, and
the maximum value is 10 V. The value must be ≤ |sweep step voltage|
you desire. If you set the value greater than |sweep step voltage|, the
cvoltage is automatically set to the same value as |sweep step voltage|.
See step.
NOTE In the QSCV measurement, the B1500 executes the capacitance measurement at the
sweep steps except for the sweep start voltage and stop voltage. At each sweep step,
the capacitance measurement is executed over the voltage range: output voltage ±
cvoltage/2 (V).
step : The number of steps for the voltage sweep. 1 to 1001. Integer
expression. Define the sweep step voltage at first, then calculate the
step value by using the following formula.
step = |start-stop| / |sweep step voltage|- 1
If you set step=1 and |stop−start| ≤ 10, the B1500 executes a one-point
capacitance measurement between the start and stop values. Then
cvoltage value is ignored.
Icomp : Current compliance (in A). Numeric expression. See Table4-6 on page
4-14. If you do not set Icomp, the previous value is used.
The current compliance polarity is automatically set to the same
polarity value as the output voltage, regardless of polarity of the
specified Icomp.
For easy definition, use variables to set the parameters as shown below:
Start=0 !Start voltage (V)
Stop=5 !Stop voltage (V)
Cvolt=1 !C meas voltage (V)
Svolt=1 !Sweep step voltage (V)
Nop=ABS(Start-Stop)/Svolt-1 ! Number of steps
!
OUTPUT @B1500;"QSV 1,1,0,Start,Stop,Cvolt,Nop,0.1"
QSZ
This command enables/disables the capacitance offset cancel function for the
quasi-static CV measurement (MM13). Or this command triggers the capacitance
offset measurement, and returns the measurement result.
Execution The quasi-static CV measurement setup must be completed before executing the
Conditions offset measurement.
To execute the offset measurement, open the measurement terminals at the end of
the device side.
RC
The RC command specifies the measurement range or the measurement ranging
type of the MFCMU. In the initial setting, the auto ranging is set. The range
changing occurs immediately after the trigger (that is, during the measurements).
For the high speed spot measurement, use the TC/TTC command.
The range setting is cleared by the CL, CA, IN, *TST?, *RST or a device clear (HP
BASIC CLEAR) command.
Syntax RC chnum,mode[,range]
RCV
This command enables the modules that fail the self-test or self-calibration so that it
can receive commands again.
The *OPC? command should be entered to confirm the completion of the module
recovery.
This command should only be used for servicing the B1500.
Parameters slot : Slot number where the failed module to enable has been installed. 1 to
10. Or 0 or 11. Integer expression.
0: All failed modules. Default setting.
11: Mainframe.
If slot specifies the slot that installs no module, this command causes an error.
Remarks When a SMU connected to SCUU is recovered, the MFCMU is also recovered. The
SCUU cannot be controlled if a failed module is connected.
RI
The RI command specifies the current measurement range or ranging type. In the
initial setting, the auto ranging is set. The range changing occurs immediately after
the trigger (that is, during the measurements). Current measurement channel can be
decided by the CMM command setting and the channel output mode (voltage or
current).
For the high speed spot measurement, use the TI/TTI command.
The range setting is cleared by the CL, CA, IN, *TST?, *RST or a device clear (HP
BASIC CLEAR) command.
Syntax RI chnum,range
RM
This command specifies the auto range operation for the current measurement.
Syntax RM chnum,mode[,rate]
where the rate parameter is available for mode=2 or 3.
mode Description
*RST
The *RST command resets the B1500 to the initial settings. This command does not
clear the program memory and the self-calibration data.
Syntax *RST
Remarks If you want to reset channels while a sweep measurement is being performed, you
must first send the AB command, then the *RST command.
Execution The specified programs have been stored by using the ST and END commands,
Conditions from the start program number through the stop program number.
Syntax RU start,stop
RV
The RV command specifies the voltage measurement range or ranging type. In the
initial setting, the auto ranging is set. The range changing occurs immediately after
the trigger (that is, during the measurements). Voltage measurement channel can be
decided by the CMM command setting and the channel output mode (voltage or
current).
For the high speed spot measurement, use the TV/TTV command.
The range setting is cleared by the CL, CA, IN, *TST?, *RST or a device clear (HP
BASIC CLEAR) command.
Syntax RV chnum,range
If you select the fixed range, the instrument performs measurement by using the
specified range.
For the auto or limited auto ranging, the measurement range will be set to the
minimum range that covers the measured values. However, the instrument never
uses the range less than the specified range for the limited auto ranging.
For the measurement mode that uses pulse source, if you select the auto or limited
auto ranging, the measurement channel uses the minimum range that covers the
compliance value or voltage output range.
RZ
The RZ command returns the channel to the settings that are stored by the DZ
command and clears the stored settings.
The DZ command stores the channel settings (V/I output values, V/I output ranges,
V/I compliance values, and so on), then sets the channel to 0 V.
Execution The channel setup has not been changed since the DZ command has been executed
Conditions for the specified channel. And the CL, CA, *TST?, *RST or a device clear (HP
BASIC CLEAR) command has not been executed for the specified channel.
Syntax RZ [chnum[,chnum...[,chnum]...]]
A maximum of 15 channels can be set.
Parameters chnum : Channel number. Integer expression. See Table 4-1 on page 4-13.
If you specify multiple chnums, the B1500 returns the stored settings in the order
specified.
If you do not specify chnum, this command returns the settings for all SMU, all
SPGU, and CMU that satisfy the conditions described in “Execution Conditions”
above, in this order. For the modules of same kind, the settings will be restored in
reverse order from their storage by the DZ command.
SAL
This function is available for the Agilent B1500 installed with the high resolution
SMU (HRSMU) and the atto sense and switch unit (ASU).
Disables or enables the connection status indicator (LED) of the ASU. This
command is effective for the specified channel.
Parameters chnum : Channel number of the HRSMU connected to the ASU. Integer
expression. 1 to 10 or 101 to 1001. See Table 4-1 on page 4-13.
mode : 0: Disables the indicator.
1: Enables the indicator. Default setting.
Parameters chnum : Channel number of the HRSMU connected to the ASU. Integer
expression. 1 to 10 or 101 to 1001. See Table 4-1 on page 4-13.
path : 0: The ASU output will be connected to the SMU connector side.
1: The ASU output will be connected to the AUX connector side.
SAR
This function is available for the Agilent B1500 installed with the high resolution
SMU (HRSMU) and the atto sense and switch unit (ASU).
Enables or disables the 1 pA range for the auto ranging operation. This command is
effective for the specified channel.
Parameters chnum : Channel number of the HRSMU connected to the ASU. Integer
expression. 1 to 10 or 101 to 1001. See Table 4-1 on page 4-13.
mode : 0: Enables 1 pA range for the auto ranging operation.
1: Disables 1 pA range for the auto ranging operation. Initial setting
SER
This command sets the load impedance value of the DUT connected to the specified
SPGU channel. Set for each channel.
This load impedance value is used for automatic adjustment of the SPGU output
voltage. Setting the correct value will make the voltage applied to the DUT close to
the voltage set with the SPV command. To automatically set the load impedance,
execute the CORRSER? command.
Parameters mode : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
loadZ : Load impedance value (Ω). Numeric expression. 0.1 Ω to 1 MΩ. Initial
setting: 50 Ω.
SER?
This query command returns the load impedance value of the DUT set for the
specified SPGU channel.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
Returns the load impedance value (Ω) for the specified SPGU channel.
SIM
The SIM command sets the SPGU operation mode, PG or ALWG. The setting is
effective for the all SPGU modules installed in the B1500. This command also
triggers 0 V output of the SPGU channels which output switch has been ON.
Syntax SIM?
Response mode<CR/LF^EOI>
0: PG (pulse output) mode
1: ALWG (Arbitrary linear wave output) mode
SPM
This command specifies the output mode of the specified SPGU channel. Set for
each channel.
Execution The SPGU operating mode must be set to PG with the SIM 0 command.
Conditions
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
mode : Settings for the output signal source. Integer expression.
0: DC voltage output mode.
1: 2-level pulse output mode using pulse signal source 1.
2: 2-level pulse output mode using pulse signal source 2.
3: 3-level pulse output mode using pulse signal source 1 and 2.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
SPP
The SPP command stops the SPGU output. If you use multiple outputs, this
command stops all outputs simultaneously. The output goes to the following value.
Syntax SPP
Syntax SPPER?
SPRM
This command specifies the operating mode for SPGU channel outputs. This setting
applies to all SPGU modules installed in the B1500.
Parameters mode : Operating mode of the SPGU channel output. Integer expression. 0, 1,
or 2. Initial setting 0.
0: Free Run mode. Continues outputting until the SPP command is
executed. The condition parameter is not required.
1: Count mode. Outputs the number of pulses (when set to PG mode
with the SIM 0 command), or the number of sequences (when set
to ALWG mode with the SIM 1 command) specified by the
condition parameter.
Syntax SPRM?
SPST?
This query command returns the waveform output state of the SPGU.
Syntax SPST?
SPT
This command sets the pulse timing parameter for the specified SPGU channel. Set
for each channel. For the parameters, see Figure 2-28 on page 2-52.
Execution The SPGU operating mode must be set to PG with the SIM 0 command.
Conditions
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
src : Channel signal source. Integer expression.
1: Pulse signal source 1
2: Pulse signal source 2
delay : Pulse delay time. Numeric expression. 0 to pulse period-2E-8
seconds, setting resolution 2.5E-9 seconds. Initial setting 0 second.
Setting resolution becomes 1E-8 when leading > 8E-6 seconds or
trailing > 8E-6 seconds.
width : Pulse width. Numeric expression.1E-8 to pulse period-1E-8 seconds,
setting resolution 2.5E-9 seconds. Initial setting 1E-7 seconds.
Setting resolution becomes 1E-8 when leading > 8E-6 seconds or
trailing > 8E-6 seconds.
leading : Pulse leading time. Numeric expression. 8E-9 to 0.4 seconds, setting
resolution 2E-9 seconds. Initial setting 2E-8 seconds.
Setting resolution becomes 8E-9 when leading > 8E-6 seconds or
trailing > 8E-6 seconds.
trailing : Pulse trailing time. Numeric expression. 8E-9 to 0.4 seconds, setting
resolution 2E-9 seconds. Initial setting 2E-8 seconds.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
src : Channel signal source. Integer expression.
1: Pulse signal source 1
2: Pulse signal source 2
SPUPD
The SPUPD command applies the setup of the specified SPGU channels.
The channel output is changed to the following value by this command. And the
waveform or pulse output is started by the SRP command.
If a DC bias output channel is specified in the SPUPD command, the channel starts
the DC bias voltage output. And the output is not changed by the SRP command.
SPV
This command sets the output voltage of the specified SPGU channel. Set for each
channel. For the parameters, see Figure 2-28 on page 2-52.
Execution The SPGU operating mode must be set to PG with the SIM 0 command.
Conditions
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
src : Channel signal source. Integer expression. Initial setting 1.
0: DC bias source
1: Pulse signal source 1
2: Pulse signal source 2
base : Pulse base voltage or DC output voltage. Numeric expression. -40 V to
40 V, setting resolution 1 mV. Initial setting 0 V.
peak : Pulse peak voltage. Numeric expression. -40 V to 40 V, setting
resolution 1 mV. Initial setting 0 V.
If no value is set for peak, the base value will be used for both
parameters.
The peak parameter has no effect on DC bias sources.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
src : Channel signal source. Integer expression.
0: DC bias source
1: Pulse signal source 1
2: Pulse signal source 2
*SRE
The *SRE command enables the specified bits of the status byte register for SRQ
(service requests), and masks (disables) the bits that are not specified.
Parameters bit : Sum of the decimal values corresponding to the bits to be enabled.
Integer expression. 0 to 255. See Table 4-19.
For example, to enable Bit 0 and 4 for the SRQ, the bit value must be
17 (1+16).
If bit=0, all bits, except for Bit 6, will be masked (disabled for the
SRQ). You cannot mask bit 6.
64 Bit 6 RQS
*SRE?
The *SRE? query command returns information about which bits of the status byte
register are enabled for the SRQ (service requests), and stores the results in the
output data buffer (query buffer).
Syntax *SRE?
SRP
The SRP command starts the SPGU output. If multiple outputs are defined, all
outputs are started in the order from lower to higher channel number 101 to 1002.
And all waveform or pulse outputs are started simultaneously.
Syntax SRP
SSP
This function is available for the Agilent B1500 installed with the multi frequency
capacitance measurement unit (MFCMU) and the SMU CMU unify unit (SCUU).
To use the SCUU, connect it to the MFCMU and two SMUs (MPSMU or HRSMU)
correctly. The SCUU cannot be used with the HPSMU or when only one SMU is
connected.
Controls the connection path of the SCUU. Switches the SCUU input resource
(MFCMU or SMU) to be connected to the SCUU output.
When the B1500 is turned on, the SCUU input to output connection is not made
(open). When the SCUU input to output connection is made, the measurement unit
output switch will be automatically set to ON.
Remarks When the connection is changed from SMU to MFCMU, the SMU output will be set
as follows. The other setup parameters are not changed.
Output voltage 0V
Output range 100 V
Compliance 20 mA
Series resistance OFF
When the connection is changed from MFCMU to SMU, the SMU output will be set
as follows. The other setup parameters are not changed.
Output voltage 0V
Output range 20 V
Compliance 100 μA
Series resistance Condition before the connection is changed from SMU to
MFCMU
Table 4-20 SCUU Input Output Connection Control
SSR
This command sets the connection mode of a SMU series resistor (approx. 1 MΩ)
for each channel.
If the output switch is opened, the SSR command just sets the mode, and the CN
command connects or disconnects the series resistor.
If the output switch is already closed, the SSR command connects the series resistor
to the SMU output. Then the output forces 0 V one moment.
A series resistor is mounted on each module. If you use a series resistor, the voltage
you set is applied to the near side of the series resistor. Thus, the voltage will be
divided by the series resistor and the device under test.
Execution The series resistor cannot be used for the measurements that use the high resolution
Conditions SMU (HRSMU) connected to the atto sense and switch unit (ASU) or the
measurements that use 1 A range of the high power SMU (HPSMU).
The channel must not be in the high voltage state (forcing more than ± 42 V, or
voltage compliance set to more than ± 42 V).
Parameters chnum : SMU channel number. Integer expression. 1 to 10 or 101 to 1001. See
Table 4-1 on page 4-13.
mode : Status of the series resistor. Integer expression.
0: Disconnect (initial setting).
1: Connect.
ST
The ST command is used with the END command to store a program in the internal
program memory that can store 2,000 programs maximum, and a total of 40,000
commands.
The ST command indicates the start of the program, and assigns the program
number. If the assigned program number already exists, the B1500 deletes the old
program, and stores the new one.
The END command indicates the end of the program. If the END command is not
included, the B1500 stores the commands until the program memory is full.
Use the DO or RU command to execute stored programs.
Syntax STpnum[;command[;command...[;command]...];END
or
ST pnum
[command]
[command]
:
:
[command]
END
Example Example 1:
Statements
OUTPUT @B1500;"ST1;CN1;DV1,0,5,1E-4;TI1,0;CL1"
OUTPUT @B1500;"END"
Example 2:
OUTPUT @B1500;"ST 1"
OUTPUT @B1500;"CN 1"
OUTPUT @B1500;"DV 1,0,5,1E-4"
OUTPUT @B1500;"TI 1,0"
OUTPUT @B1500;"CL 1"
OUTPUT @B1500;"END"
*STB?
The *STB? query command stores the decimal representation of the status byte in
the output data buffer (query buffer).
The *STB? command is functionally identical to the SPOLL command of BASIC,
however this command does not clear the status byte (the SPOLL command clears
the status byte).
Syntax *STB?
STGP
This command specifies the trigger output timing for the specified SPGU channel.
This setting applies commonly to all channels in the same SPGU module. See
“SPGU Module” on page 2-48 for details on the SPGU trigger.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
state : Trigger output state. Integer expression. Initial setting 0.
0 trigger output disabled.
1 Output trigger signals synchronized to the pulses (PG mode), or to
the start of the ALWG sequence.
2 Output a trigger when the ALWG pattern changes, or at start of the
first pattern.
3 Output triggers at the start of every ALWG pattern.
STGP?
This query command returns the trigger output state of the specified SPGU channel.
Parameters chnum : SPGU channel number. Integer expression. 1 to 10 or 101 to 1002. See
Table 4-1.
TACV
This command forces AC voltage from the MFCMU, and returns the time data from
timer reset to the start of output.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
The FC command has been executed to set the frequency of the AC voltage.
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TC
The TC command performs the high speed spot measurement by using the
MFCMU, and returns the measurement data. The command starts a measurement
regardless of the trigger mode (TM command) and the measurement mode (MM
command).
The MFCMU measures the primary parameter and the secondary parameter (for
example, Cp and G). Use the IMP command to select the measurement parameters.
See “IMP” on page 4-75.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
The IMP command has been executed.
Syntax TC chnum,mode[,range]
TDCV
Forces DC voltage from the MFCMU or the SMU connected to the Force1/Sense1
terminals of the SCUU (SMU CMU unify unit), and returns the time data from timer
reset to the start of output.
Execution The CN/CNX command has been executed for the specified channel (MFCMU).
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TDI
Forces current and returns the time data from timer reset to the start of output. This
command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If the compliance value is greater than ± 42 V, the interlock circuit must be shorted.
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TDV
Forces voltage and returns the time data from timer reset to the start of output. This
command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TGMO
The TGMO command selects the edge trigger or the gate trigger for the Step
Measurement Completion trigger output set by the TGP port,2,polarity,3
command. See Figure 4-2.
This command is available for the staircase sweep, multi channel sweep, and
MFCMU DC/AC/frequency sweep measurements.
Figure 4-2 Trigger Output Example, Staircase Sweep Measurement, Negative Logic
TGP
The TGP command enables the trigger function for the terminal specified by the
port parameter. For the trigger function, refer to “Trigger Function” on page 2-63.
Parameters port : Trigger port number. Integer expression. -1, -2, or 1 to 16.
-1: Ext Trig In terminal.
-2: Ext Trig Out terminal.
1 to 16: Port 1 to 16 of the digital I/O terminal.
terminal : Terminal type. Integer expression. 1 or 2.
1: Trigger input. Not available for port=-2.
2: Trigger output. Not available for port=-1.
polarity : Trigger logic. Integer expression. 1 or 2.
1: Positive logic.
2: Negative logic.
type : Trigger type. Integer expression. 0, 1, 2, or 3. Selects the function of the
trigger port. See Table 4-21.
If this parameter is not specified, type is set to 0.
Remarks The function of type=0 is effective for all trigger ports regardless of the type value.
Then the PA and WS commands are used for the Ext Trig In terminal, and the OS
command is used for the Ext Trig Out terminal. Also the PAX and WSX commands
are used for the trigger input ports set by the TGP command, and the OSX command
is used for the trigger output ports set by the TGP command.
type=1 to 3 is available for a port only. If you send the command with the same type
more than once, only the last command is effective. type=0 is set for another ports.
If you send the TGP command with terminal=1 and port=1 to 16, the signal level of
the trigger input terminal is set to physical high.
If you send the TGP command with terminal=2, the signal level of the trigger output
terminal is set to logical low.
0 1 When a trigger is received, the B1500 recovers from the wait state set by the PA,
PAX, WS, or WSX command.
2 The B1500 sends a trigger by the OS or OSX command.
See Also See Figure 4-2 on page 4-150 for a trigger output example and Figure 4-3 on page
4-154 for a trigger input example.
TGPC
The TGPC command clears the trigger setting of the specified ports.
Parameters port : Trigger port number. Integer expression. -1, -2, or 1 to 16.
-1: Ext Trig In terminal.
-2: Ext Trig Out terminal.
1 to 16: Port 1 to 16 of the digital I/O terminal.
Remarks The TGPC command sets the trigger ports as shown below.
Ext Trig In Same as after TGP -1,1,2,0 command execution.
Ext Trig Out Same as after TGP -2,2,2,0 command execution.
Digital I/O Ports No trigger function is available. The ERS? and ERC commands
are available for the port control.
This is not same as the condition set by the *RST command that sets the ports as
shown below.
Ext Trig In Same as after TGP -1,1,2,1 command execution.
Ext Trig Out Same as after TGP -2,2,2,1 command execution.
Digital I/O Ports No trigger function is available. The ERS? and ERC commands
are available for the port control.
TGSI
The TGSI command selects Case 1 or Case 2 effective for the Start Step Output
Setup trigger input set by the TGP port,1,polarity,2 command.
This command is available for the staircase sweep, multi channel sweep, pulsed
spot, pulsed sweep, staircase sweep with pulsed bias, and MFCMU
DC/AC/frequency sweep measurements.
Figure 4-3 Trigger Input Example, Staircase Sweep Measurement, Negative Logic
Start Measurement TGP t,1,p,1
Case 1
Start Step Output Setup TGP t,1,p,2
Case 2
Delay time or more
Case 1: With trigger for
first sweep step
Hold time (Case 2)
or more (Case 1) Case 2: With trigger for
output after sweep
: Measurement
TGSO
The TGSO command selects the edge trigger or the gate trigger for the Step Output
Setup Completion trigger output set by the TGP port,2,polarity,2 command. See
Figure 4-2 on page 4-150
This command is available for the staircase sweep, multi channel sweep, pulsed
spot, pulsed sweep, staircase sweep with pulsed bias, and MFCMU
DC/AC/frequency sweep measurements.
TGXO
The TGXO command selects the edge trigger or the gate trigger for the
Measurement Completion trigger output set by the TGP port,2,polarity,1
command. See Figure 4-2 on page 4-150
TI
The TI command performs the high speed spot measurement, and returns the
measurement data. The command starts a current measurement regardless of the
SMU operation mode, trigger mode (TM command), and measurement mode (MM
command).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
Syntax TI chnum[,range]
TM
The TM command specifies how events are effective for the following actions:
• Releasing the B1500 from the paused status set by the PA or PAX command
• Starting the measurement except for high speed spot measurement (when the
B1500 is not in the paused status set by the PA, PAX, WS, or WSX command)
Syntax TM mode
mode Events
2 XE command
Remarks In the TM3 event mode, if the B1500 is not in the wait status set by the PA, PAX,
WS, or WSX command, the B1500 can start the measurement by an external trigger
input. After measurement, the B1500 sends a trigger to a trigger output terminal. In
the initial setting, you can use the Ext Trig In and Out terminals. To use the digital
I/O port, enter the TGP command to set the trigger input or output terminal.
To set the trigger logic (initial setting: negative), send the TGP command for the
trigger input terminal.
TMACV
This command monitors the MFCMU AC voltage output signal level, and returns
the measurement data.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
TMDCV
This command monitors the MFCMU DC bias output, and returns the measurement
data.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
TSC
The TSC command enables or disables the time stamp function.
Execution Time stamp function is not available for the following measurement modes:
Conditions
• Quasi-pulsed spot measurement (MM 9)
• Linear search measurement (MM 14)
• Binary search measurement (MM 15)
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
mode Description
When the function is enabled, the B1500 returns the time data with the
measurement data. The time data is the time from timer reset to the start
of measurement. Refer to “Data Output Format” on page 1-25.
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
Syntax TSQ
TSR
This command clears the timer count.
This command is effective for all measurement modes, regardless of the TSC
setting.
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
Syntax TSR
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
*TST?
This query command performs the self-test and self-calibration, and returns the
execution results. After this command, read the results soon.
Module condition after this command is the same as the condition by the CL
command.
Execution No SMU may be in the high voltage state (forcing more than ± 42 V, or voltage
Conditions compliance set to more than ± 42 V).
Before this command, open the measurement terminals.
Parameters slot : Slot number where the module under self-test and self-calibration has
been installed. 1 to 10. Or 0 or 11. Integer expression.
0: All modules and mainframe. Default setting.
11: Mainframe.
option : Execution option. Integer expression. 0 or 1.
0: Returns the pass/fail result.
1: Performs the self-test and returns the result. Default setting.
The *TST? slot,0 command just returns the pass/fail result of the latest
*TST?/CA/*CAL? command or the auto calibration.
The *TST? 0,0 command returns the memorized latest pass/fail result of all
modules.
If slot specifies the slot that installs no module, this command causes an error.
Remarks If a SMU connected to SCUU fails this command, the SCUU cannot be controlled.
And the SSP and SSL commands are not available.
If the MFCMU connected to SCUU fails this command, all modules connected to
SCUU cannot be used.
Failed modules are disabled, and can only be enabled by the RCV command. To
recover the modules connected to SCUU, recover MFCMU and SMU in this order.
TTC
The TTC command performs the high speed spot measurement by using the
MFCMU, and returns the measurement data and the time data from timer reset to the
start of measurement. The command starts a current measurement regardless of the
trigger mode (TM command) and the measurement mode (MM command).
The MFCMU measures the primary parameter and the secondary parameter (for
example, Cp and G). Use the IMP command to select the measurement parameters.
See “IMP” on page 4-75.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
The IMP command has been executed.
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TTI
The TTI command performs the high speed spot measurement, and returns the
measurement data and the time data from timer reset to the start of measurement.
The command starts a current measurement regardless of the SMU operation mode,
trigger mode (TM command), and measurement mode (MM command).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
For the auto or limited auto ranging, the measurement range will be set to the
minimum range that covers the measured values. However, the instrument never
uses the range less than the specified range for the limited auto ranging.
If you do not specify the range parameter for voltage output channels, the channel
uses the minimum range that covers the compliance value.
The range parameter is meaningless for current output channels. The measurement
ranging type is always same as the output ranging type.
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TTV
The TTV command performs the high speed spot measurement, and returns the
measurement data and the time data from timer reset to the start of measurement.
The command starts a voltage measurement regardless of the SMU operation mode,
trigger mode (TM command), and measurement mode (MM command).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
This command is not effective for the 4 byte binary data output format (FMT3 and
FMT4).
range : Measurement range or ranging type. Integer expression. See Table 4-2
on page 4-14.
If you select the fixed range, the instrument performs measurement by using the
specified range.
For the auto or limited auto ranging, the measurement range will be set to the
minimum range that covers the measured values. However, the instrument never
uses the range less than the specified range for the limited auto ranging.
If you do not specify the range parameter for current output channels, the channel
uses the minimum range that covers the compliance value.
The range parameter is meaningless for voltage output channels. The measurement
ranging type is always same as the output ranging type.
Remarks To read the time data with the best resolution (100 μs), the timer must be cleared
every 100 sec or less for the FMT1, 2, or 5 data output format, or
every 1000 sec or less for the FMT 11, 12, 15, 21, 22, or 25 data output format.
TV
The TV command performs the high speed spot measurement, and returns the
measurement data. The command starts a voltage measurement regardless of the
SMU operation mode, trigger mode (TM), and measurement mode (MM).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
Syntax TV chnum[,range]
If you do not specify the range parameter for current output channels, the channel
uses the minimum range that covers the compliance value.
The range parameter is meaningless for voltage output channels. The measurement
ranging type is always same as the output ranging type.
UNT?
This command returns the model and revision numbers of mainframe and modules.
Parameters mode : Integer expression. 0 (returns information for all modules, default
setting) or 1 (returns information for mainframe and all modules).
VAR
This command defines the Agilent B1500 internal variable, and sets the value. The
variable name is automatically assigned by using the parameters you specify.
VAR?
Returns the value of the variable set by the VAR command.
WACV
This command sets the AC level sweep source used for the AC level sweep
measurement (MM23). The sweep source will be the MFCMU.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
Delay time
: Measurement
Hold time Step delay time
Time
NOTE The wait time can be ignored if it is shorter than the delay time.
NOTE It is not easy to determine the best wait time. If you specify it too short, the
measurement may start before device characteristics stable. If too long, time will be
wasted.
The initial wait time may be too short for measurements of high capacitance or slow
response devices. Then set the wait time longer.
For measurements of low capacitance or fast response devices, if measurement
speed has top priority or is more important than reliability and accuracy, set the wait
time shorter.
WDCV
This command sets the DC bias sweep source used for the DC bias sweep
measurement (MM18). The sweep source will be the MFCMU, or the SMU that can
be connected to the Force1/Sense1 terminals of the SCUU (SMU CMU unify unit).
Execution The CN/CNX command has been executed for the specified channel.
Conditions
If you want to apply DC voltage over ± 25 V, the SCUU must be connected
correctly. The SCUU can be used with the MFCMU and two SMUs (MPSMU or
HRSMU). The SCUU cannot be used if the HPSMU is connected to the SCUU or if
the number of SMUs connected to the SCUU is only one.
If the output voltage is greater than ± 42 V, the interlock circuit must be shorted.
Execution The CN/CNX command has been executed for the specified channel.
Conditions
Setting resolution: 1 mHz (1 kHz to), 10 mHz (10 kHz to), 100 mHz
(100 kHz to), 1 Hz (1 MHz to 5 MHz).
step : Number of steps for staircase sweep. Numeric expression. 1 to 1001.
Parameters chnum : SMU sweep source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
mode : Sweep mode. Integer expression. Only linear sweep (mode=1 or 3) is
available for the staircase sweep with pulsed bias.
start, stop : Start or stop current (in A). Numeric expression. See Table 4-7 on page
4-19. start and stop must have the same polarity for log sweep.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
step : Number of steps for staircase sweep. Numeric expression. 1 to 1001.
Vcomp : Voltage compliance (in V). Numeric expression. See Table 4-7.
If you do not set Vcomp, the previous value is used. If Vcomp value is
greater than ± 42 V, the interlock circuit must be shorted.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified Vcomp. If the output value is 0,
the polarity is set to positive.
If you set Pcomp, the maximum Vcomp value for the module is
allowed, regardless of the output range setting.
For the log sweep and without Pcomp, set the value available for the
minimum range that covers start and stop values.
Pcomp : Power compliance (in W). Numeric expression. Resolution: 0.001 W. If
the Pcomp value is not entered, the power compliance is not set.
0.001 to 2 for MPSMU/HRSMU, or 0.001 to 20 for HPSMU
WM
The WM command enables or disables the automatic abort function for the staircase
sweep sources and the pulsed sweep source. The automatic abort function stops the
measurement when one of the following conditions occurs:
If the measurement is stopped by the automatic abort function, the staircase sweep
sources force the start value, and the pulsed sweep source forces the pulse base
value after sweep.
Syntax WM abort[,post]
Output Data The B1500 returns the data measured before an abort condition is detected. Dummy
data 199.999E+99 will be returned for the data after abort.
WMACV
This command enables or disables the automatic abort function for the AC level
sweep measurement (MM23). The automatic abort function stops the measurement
when one of the following conditions occurs.
Output Data The B1500 returns the data measured before an abort condition is detected. Dummy
data 199.999E+99 will be returned for the data after abort.
WMDCV
This command enables or disables the automatic abort function for the DC bias
sweep measurement (MM18) and the pulsed bias sweep measurement (MM20). The
automatic abort function stops the measurement when one of the following
conditions occurs:
Output Data The B1500 returns the data measured before an abort condition is detected. Dummy
data 199.999E+99 will be returned for the data after abort.
WMFC
This command enables or disables the automatic abort function for the frequency
sweep measurement (MM22). The automatic abort function stops the measurement
when one of the following conditions occurs.
2: Stop value.
If this parameter is not set, the MFCMU forces the start value.
Output Data The B1500 returns the data measured before an abort condition is detected. Dummy
data 199.999E+99 will be returned for the data after abort.
WNU?
The WNU? query command returns the number of sweep steps specified by the
sweep command (WI, WV, PWI or PWV), and stores the results in the output data
buffer (query buffer).
Execution If you want to know the number of steps for a pulsed sweep, you must execute an
Conditions “MM 4” command before using this command, otherwise the number of steps for
the staircase sweep is reported.
Syntax WNU?
WNX
The WNX command specifies the staircase sweep source (synchronous sweep
source) that will be synchronized with the staircase sweep source (primary sweep
source) set by the WI or WV command.
You can use the maximum of ten sweep sources. There is no restrictions for the
output mode (voltage or current) of the sweep sources. If the output voltage is
greater than ± 42 V, the interlock circuit must be shorted.
Execution Available only for the multi channel sweep measurement (MM 16).
Conditions
This command must be entered after the WI or WV command that clears the WNX
command setting.
Parameters N: Sweep source number. Integer expression. 2 to 10. Sweep sources start
output simultaneously or in number order. See Remarks below.
chnum : SMU sweep source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
mode : Sweep source type. Integer expression. 1 or 2.
1: Voltage sweep source.
2: Current sweep source.
Sweep mode, linear or log, is set by the WI or WV command.
range : Ranging type for synchronous sweep output. Integer expression.
start and stop must have the same polarity for log sweep.
Sweep mode, linear or log, and the number of sweep steps are set by the
WI or WV command.
comp : Compliance (in A or V). Numeric expression. If you do not set comp,
the previous value is used.
If you set Pcomp, the maximum comp value for the module is allowed,
regardless of the output range setting.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified comp. If the output value is 0,
the polarity is set to positive.
• For voltage source (mode=1): See Icomp in Table 4-6 on page 4-18.
• For current source (mode=2): See Vcomp in Table 4-7 on page 4-19.
For the log sweep and without Pcomp, set the value available for
the minimum range that covers start and stop values.
Pcomp : Power compliance (in W). Numeric expression. Resolution: 0.001 W. If
the Pcomp value is not entered, the power compliance is not set.
0.001 to 2 for MPSMU/HRSMU, or 0.001 to 20 for HPSMU
Remarks To set multiple sweep sources, enter the WI or WV command at first, and enter the
WNX command once or more. Then the N value and the chnum value must be
unique for each WNX command. If you set the value used to the previous command,
the previous command setting is cleared, and the last command setting is effective.
Sweep sources simultaneously start output by a trigger such as the XE command.
However, if a sweep source sets power compliance or forces logarithmic sweep
current, the sweep sources start output in the order specified by the N value. Then
the first output is forced by the channel set by the WI or WV command.
If you use multiple measurement channels, the channels that use the high-speed A/D
converter with the fixed ranging mode start measurement simultaneously, then other
channels start measurement in the order defined in the MM command.
WS
The WS command causes the B1500 to enter a wait state until the B1500 receives an
external trigger from the Ext Trig In terminal. To set the trigger logic (initial setting:
negative), send the TGP command for the Ext Trig In terminal.
To end a wait state before the trigger, execute the AB or *RST command.
Syntax WS [mode]
Remarks The B1500 checks its trigger flag to confirm the present trigger status, received or
none. To clear the trigger flag:
• Enter the *RST or device clear command (HP BASIC CLEAR statement).
• Enter the TM3 command.
• Enter the TM1, TM2, or TM4 command to change the mode from TM3.
• Enter the OS command.
• Trigger the B1500 to start measurement via the Ext Trig In terminal.
• Trigger the B1500 to recover from wait state set by the WS command via the
Ext Trig In terminal.
Execution Available for the staircase sweep (MM 2), pulsed sweep (MM 4), or staircase sweep
Conditions with pulsed bias (MM5) measurement.
This command must be entered after the WI or PWI command that clears the WSI
command setting. The WV and PWV command also clears the WSI setting.
Parameters chnum : SMU synchronous sweep source channel number. Integer expression. 1
to 10 or 101 to 1001. See Table 4-1 on page 4-13.
range : Ranging type for synchronous sweep current output. Integer
expression. See Table 4-5 on page 4-17.
For the linear sweep, the B1500 uses the minimum range that covers
both start and stop values to force the staircase sweep current.
For the log sweep, the B1500 uses the minimum range that covers the
output value, and changes the output range dynamically.
Sweep mode, linear or log, is set by the WI or PWI command.
For the limited auto ranging, the instrument never uses the range less
than the specified range.
start, stop : Start or stop current (in A). Numeric expression. See Table 4-7 on page
4-19. start and stop must have the same polarity for log sweep. Sweep
mode, linear or log, and the number of sweep steps are set by the WI or
PWI command.
0 to ± 0.1 for MPSMU/HRSMU, or 0 to ± 1 for HPSMU
Vcomp : Voltage compliance (in V). Numeric expression. See Table 4-7 on page
4-19. If you do not set Vcomp, the previous value is used. If Vcomp
value is greater than ± 42 V, the interlock circuit must be shorted.
Compliance polarity is automatically set to the same polarity as the
output value, regardless of the specified Vcomp. If the output value is 0,
the compliance polarity is positive.
If you set Pcomp, the maximum Vcomp value for the module is
allowed, regardless of the output range setting.
For the log sweep and without Pcomp, set the value available for the
minimum range that covers start and stop values.
Pcomp : Power compliance (in W). Numeric expression. Resolution: 0.001 W. If
the Pcomp value is not entered, the power compliance is not set.
0.001 to 2 for MPSMU/HRSMU, or 0.001 to 20 for HPSMU
WSV
The WSV command specifies the staircase sweep voltage source (synchronous
sweep source) that will be synchronized with the staircase sweep voltage source
(primary sweep source) set by the WV command, or the pulsed sweep voltage
source (primary sweep source) set by the PWV command.
Execution Available for the staircase sweep (MM 2), pulsed sweep (MM 4), or staircase sweep
Conditions with pulsed bias (MM5) measurement.
This command must be entered after the WV or PWV command that clears the
WSV command setting. The WI and PWI command also clears the WSV setting.
Parameters chnum : SMU synchronous sweep source channel number. Integer expression. 1
to 10 or 101 to 1001. See Table 4-1 on page 4-13.
range : Ranging type for synchronous sweep voltage output. Integer
expression. See Table 4-4 on page 4-17.
The B1500 usually uses the minimum range that covers both start and
stop values to force the staircase sweep voltage. However, if you set
Pcomp and if the following formulas are true, the B1500 changes the
output range dynamically (20 V range or above). Range changing may
cause 0 V output in a moment. For the limited auto ranging, the
instrument never uses the range less than the specified range.
WSX
The WSX command causes the B1500 to enter a wait state until the B1500 receives
an external trigger from a trigger input terminal specified by the port parameter. To
set the trigger logic (initial setting: negative), send the TGP command for the
specified terminal. To end a wait state before the trigger, execute the AB or *RST
command.
Parameters port : External trigger input port number. Integer expression. -1, or 1 to 16.
-1: Ext Trig In terminal.
1 to 16: Port 1 to 16 of the digital I/O terminal.
To use a digital I/O port, send the TGP command. The port value must
be same as the port value set to the TGP command.
mode : Waiting mode. Integer expression. 1 or 2. If this parameter is not
specified, mode is set to 1.
1: Continues the operation if an external trigger was already received.
Otherwise, the B1500 immediately goes into a wait state for an external
trigger.
2: In any condition, the B1500 immediately goes into a wait state for an
external trigger.
Remarks The B1500 checks its trigger flag to confirm the present trigger status, received or
none. To clear the trigger flag:
• Enter the *RST or device clear command (HP BASIC CLEAR statement).
• Enter the TM3 command.
• Enter the TM1, TM2, or TM4 command to change the mode from TM3.
• Enter the OS command.
• Trigger the B1500 to start measurement via the trigger input terminal.
• Trigger the B1500 to recover from wait state set by the WS command via the
trigger input terminal.
Syntax WT hold,delay[,Sdelay[,Tdelay[,Mdelay]]]
Parameters hold : Hold time (in seconds) that is the wait time after starting the sweep
measurement and before starting the delay time for the first step.
0 to 655.35, with 10 ms resolution. Numeric expression.
delay : Delay time (in seconds) that is the wait time after starting to force a step
output and before starting a step measurement.
0 to 65.535, with 0.1 ms resolution. Numeric expression.
Sdelay : Step delay time (in seconds) that is the wait time after starting a step
measurement and before starting to force the next step output value.
0 to 1.0, with 0.1 ms resolution. Numeric expression.
WTACV
This command sets the hold time, delay time, and step delay time for the AC level
sweep measurement (MM23). This command is also used to set the step source
trigger delay time effective for the step output setup completion trigger and the step
measurement trigger delay time effective for the start step measurement trigger. For
the trigger function, refer to “Trigger Function” on page 2-63. If you do not enter
this command, all parameters are set to 0.
Parameters hold : Hold time (in seconds) that is the wait time after starting measurement
and before starting delay time for the first step.
0 (initial setting) to 655.35, with 10 ms resolution. Numeric
expression.
delay : Delay time (in seconds) that is the wait time after starting to force a step
output and before starting a step measurement.
0 (initial setting) to 655.35, with 0.1 ms resolution. Numeric
expression.
Sdelay : Step delay time (in seconds) that is the wait time after starting a step
measurement and before starting to force the next step output.
0 (initial setting) to 1, with 0.1 ms resolution. Numeric expression. If
this parameter is not set, Sdelay will be 0. If Sdelay is shorter than the
measurement time, the B1500 waits until the measurement completes,
then forces the next step output.
Tdelay : Step source trigger delay time (in seconds) that is the wait time after
completing a step output setup and before sending a step output setup
completion trigger.
0 (initial setting) to delay or 65.535, with 0.1 ms resolution. Numeric
expression. If this parameter is not set, Tdelay will be 0.
Mdelay : Step measurement trigger delay time (in seconds) that is the wait time
after receiving a start step measurement trigger and before starting a
step measurement.
0 (initial setting) to 65.535, with 0.1 ms resolution. Numeric
expression. If this parameter is not set, Mdelay will be 0.
WTDCV
This command sets the hold time, delay time, and step delay time for the DC bias
sweep measurement (MM18). This command is also used to set the step source
trigger delay time effective for the step output setup completion trigger and the step
measurement trigger delay time effective for the start step measurement trigger. For
the trigger function, refer to “Trigger Function” on page 2-63. If you do not enter
this command, all parameters are set to 0.
Parameters hold : Hold time (in seconds) that is the wait time after starting measurement
and before starting delay time for the first step.
0 to 655.35, with 10 ms resolution. Numeric expression.
delay : Delay time (in seconds) that is the wait time after starting to force a step
output and before starting a step measurement.
0 to 65.535, with 0.1 ms resolution. Numeric expression.
Sdelay : Step delay time (in seconds) that is the wait time after starting a step
measurement and before starting to force the next step output.
0 to 1, with 0.1 ms resolution. Numeric expression.
If this parameter is not set, Sdelay will be 0.
If Sdelay is shorter than the measurement time, the B1500 waits until
the measurement completes, then forces the next step output.
Tdelay : Step source trigger delay time (in seconds) that is the wait time after
completing a step output setup and before sending a step output setup
completion trigger.
0 to delay, with 0.1 ms resolution. Numeric expression.
If this parameter is not set, Tdelay will be 0.
Mdelay : Step measurement trigger delay time (in seconds) that is the wait time
after receiving a start step measurement trigger and before starting a
step measurement.
0 to 65.535, with 0.1 ms resolution. Numeric expression.
If this parameter is not set, Mdelay will be 0.
WTFC
This command sets the hold time, delay time, and step delay time for the frequency
sweep measurement (MM22). This command is also used to set the step source
trigger delay time effective for the step output setup completion trigger and the step
measurement trigger delay time effective for the start step measurement trigger. For
the trigger function, refer to “Trigger Function” on page 2-63. If you do not enter
this command, all parameters are set to 0.
Parameters hold : Hold time (in seconds) that is the wait time after starting measurement
and before starting delay time for the first step.
0 (initial setting) to 655.35, with 10 ms resolution. Numeric
expression.
delay : Delay time (in seconds) that is the wait time after starting to force a step
output and before starting a step measurement.
WV
The WV command specifies the staircase sweep voltage source and its parameters.
This command also clears the WI, WSI, WSV, and WNX command settings.
This command setting is cleared by the WI command. If the output voltage is greater
than ±42 V, the interlock circuit must be shorted.
Parameters chnum : SMU sweep source channel number. Integer expression. 1 to 10 or 101
to 1001. See Table 4-1 on page 4-13.
WZ?
This query command immediately confirms all channel output, and returns the
status 0 if it is within ± 2 V or 1 if it is more than ± 2 V.
XE
The XE command triggers the B1500 to start measurement, or causes the B1500 to
recover from the wait state set by the PA command. This command is not available
for the high-speed spot measurement.
NOTE After measurement, the measurement data will be entered to the output data buffer.
For data output format, refer to “Data Output Format” on page 1-25.
Execution The following execution conditions are for you who use the XE command to start
Conditions measurement. There is no execution condition when you use the XE command to
recover from the wait state.
• If any channel is set to the high voltage state (forcing more than ± 42 V, or
voltage compliance set to more than ± 42 V) after the trigger (XE), the interlock
terminal must be shorted.
Syntax XE
Operation Error
100 Undefined GPIB command.
Send the correct command.
102 Incorrect numeric data syntax.
Correct the data syntax.
103 Incorrect terminator position.
Correct the command syntax. The number of parameters will be
incorrect.
104 Incorrect serial data syntax.
120 Incorrect parameter value.
Correct the parameter value.
121 Channel number must be 1 to 10.
Correct the channel number. The channel number must be 1 to 10 for
Agilent B1500.
122 Number of channels must be corrected.
Check the MM, FL, CN, CL, IN, DZ, or RZ command, and correct the
number of channels.
123 Compliance must be set correctly.
Incorrect compliance value was set. Set the compliance value correctly.
124 Incorrect range value for this channel.
Check the range value available for the channel, and correct the range
value.
125 Search goal value must be less than compliance value.
126 Pulse base and peak must be same polarity.
The polarity of the base and peak values must be the same in the PI
command. Also the polarity of the base, start, and stop values must be
the same in the PWI command.
Self-test/Calibration Error
When the Agilent B1500 fails the self-test or self-calibration, the Agilent B1500
returns the following error code and error message.
In the error code, N indicates the slot number. If the module is installed in slot 1, and
it fails the function test, the error code will be 1760.
700 CPU failed NVRAM read/write test.
701 CPU failed FPGA read/write test.
702 CPU failed H-RESOLN ADC end signal test.
703 CPU failed H-RESOLN ADC start signal test.
704 CPU failed emergency status signal test.
705 CPU failed SRQ status signal test.
706 CPU failed high voltage status signal test.
707 CPU failed low voltage status signal test.
708 CPU failed DAC settling status signal test.
709 CPU failed measure ready status signal test.
710 CPU failed set ready status signal test.
711 CPU failed measure end status signal test.
712 CPU failed measure trigger signal test.
713 CPU failed pulse trigger signal test.
714 CPU failed abort trigger signal test.
715 CPU failed DAC set trigger signal test.
720 H-RESOLN ADC is not installed.
721 H-RESOLN ADC failed ROM/RAM test.
722 H-RESOLN ADC failed B-COM offset DAC test.
723 H-RESOLN ADC failed sampling ADC test.
724 H-RESOLN ADC failed integrating ADC test.
725 H-RESOLN ADC failed bus function test.