Вы находитесь на странице: 1из 74

Medalist i3070 In-circuit Test System

Syntax Reference

E
edit (edit) E-3
else (BT-Basic) E-4
enable (CONFIGURATION) E-5
enable loop counter (VCL) E-8
end (BT-Basic) E-9
end bank (CONFIGURATION) E-10
end chain (ITL) E-11
end capture (VCL) E-12
end compress (VCL) E-13
end controllerloop (VCL) E-14
end data (ANALOG) E-15
end data (VCL) E-16
end devices (ITL) E-17
end disables (ITL) E-18
end frame (VCL) E-19
end homingloop (VCL) E-20
end if (BT-Basic) E-21
end include (BT-Basic) E-22
end loop (BT-Basic) E-23
end module (CONFIGURATION) E-24
end nodes (ITL) E-25
end <test type> (ITL) E-26
end on failure (ANALOG) E-27
end parameters (SAFEGUARD) E-28
end pcf (VCL) (ITL) E-29
end repeat (VCL) (ITL) E-30
end segment (VCL) E-31
end sub (VCL) E-32
end subtest (ANALOG) E-33
end subvector (VCL) E-34
end test (ANALOG) E-35
end <test type> (ITL) E-36
end timing set (VCL) E-37
end unit (VCL) (ITL) E-38
end vector (VCL) E-39
enter (BT-Basic) E-40
enter using (BT-Basic) E-43
eod (VCL) E-46
errl (BT-Basic) E-47
errm$ (BT-Basic) E-48
errmlong$ (BT-Basic) E-49
errn (BT-Basic) E-50
events every (VCL) E-51

© Agilent Technologies 2013 E-1


events every internal (DEBUG) E-53
execute (BT-Basic) E-54
execute (SOFTKEY) E-56
execute (VCL) E-57
execute to end (DEBUG) E-61
execute to fail (DEBUG) E-62
execute to vector (DEBUG) E-63
exit (misc) E-64
exit if (BT-Basic) E-65
exit if pass (VCL) E-66
exit test (ANALOG) E-67
exor (BT-Basic) E-68
exp (BT-Basic) E-69
expand homingloop at (DEBUG) E-70
external devices (CONFIGURATION) E-71
extract version (BT-Basic) E-73

E-2 Syntax Reference


edit (edit)

edit (edit)

Title: EDIT AT A SPECIFIED LINE


The edit function positions the cursor at the beginning of the specified line and, optionally,
at a specific column in that line.

Syntax
edit
edit <line number>
edit <line number>,<column>
<line number> and <column> are <numeric expression>s

Parameters
<line number> The (integer) number of the line where the cursor is to be
positioned. If omitted, line #1 is assumed.
<column> The (integer) number of the column where the cursor is to be
positioned in the specified line. If omitted, column #1 is assumed.

Examples
edit 154 ! Positions cursor at line 154, column 1
edit ! Positions cursor at line 1, column 1
Line = 132 \ edit Line ! Positions cursor at line 132, column 1
edit 10,5 ! Positions cursor at line 10, column 5

General Information
The edit function is not programmable.

Syntax Reference E-3


else (BT-Basic)

else (BT-Basic)

Title: CONDITIONAL BRANCH


else is an optional keyword used in a structured- if. It marks the alternative group of
statements which can be conditionally executed. Refer to the description of if
then/else/end if for information about the else function.

E-4 Syntax Reference


enable (CONFIGURATION)

enable (CONFIGURATION)

Title: ENABLE A SPECIFIC FEATURE OF A TEST SYSTEM


The enable function enables features on a Medalist In- Circuit Test System. This function is
valid in the standard configuration file or in board configuration files, but it must not
appear in the testhead configuration file. For more information on configuration files, see
Configuration Files in System Configuration.

Syntax
enable <option>
<option> can be: advanced boundary scan
advanced boundary scan differential
1149.6 boundary scan
asru speedup
cover extend
drivethru
dual well shared wiring
express fixturing
flash70
flash isp
multiple board versions
paneltest
pld isp
polarity check
silicon nails
throughput multiplier
testjet

! The following are applicable to Mux systems only


all high accuracy resources
combo test
common delimiter
connect check
incircuit test
magic
powered testing

The testjet parameter applies to both TestJet and VTEP on Mux systems. On UnMux
NOTE
systems, VTEP is enabled by default and the testjet parameter is not needed.

Parameters
<option> Identifies the option to be enabled. Some of these options must be
purchased before they can be used with your test system.

Example
Excerpt from a board configuration file:
target i3070
enable combo test
enable express fixturing

Syntax Reference E-5


enable (CONFIGURATION)

General Information
Only one option is allowed per enable function. Table E- 1 summarizes what each option
enables.

Table E-1 Using Enable Options

Option What it enables


1149.6 boundary scan Enables 1149.6 interconnect testing.
advanced boundary scan Enables you to test chains of boundary scan parts, such as testing the
interconnections without nailed access.
advanced boundary scan The additional keyword differential enables testing of differential DC on
differential the boundary scan devices.
asru speedup (ASRU-N only) Instructs IPG to add the ASRU speedup (as) option to applicable
tests during test genaration. During execution, the Digitized Measurement
Circuit (DMC) on the ASRU-N card is used to accelerate the test time.
cover extend Enables testing of devices using Cover-Extend Technology. To use this option,
the advanced boundary scan option must also be enabled.
drivethru Enables the testing of digital devices through series resistors using Agilent
Vectorless Test EP (VTEP) technology. You can use Agilent DriveThru in
combination with Access Consultant to identify and selectively remove
non-essential probing locations.
dual well shared wiring Enables Dual-Well Shared Wiring.
express fixturing Allows Agilent SimPlate Express fixtures for your board test. If this option is not
enabled, only an Agilent SimPlate Fixture can be used.
flash isp Enables flash isp software, which supports new data formats. Only supported
with ControlXTP cards.
flash70 Enables flash memory programming mode.
multiple board versions Enables Agilent Multiple Board Versions.
paneltest Enables software that helps you develop tests for multiple-board panels on one
fixture.
pld isp Enables native PLD programming on the Test System and supports CPLD
programming with STAPL, SVF, Jam and JBC file types. Only supported with
ControlXTP cards.
polarity check Enables Polarity Check testing.
silicon nails Enables automatic generation of silicon nails ITL test files derived from library
tests and customized to the board topology on user selected devices.
throughput multiplier Enables testing of up to four boards simultaneously (one per module),
increasing board throughput. Can only be used in combination with the
paneltest option.

E-6 Syntax Reference


enable (CONFIGURATION)

Table E-1 Using Enable Options (continued)

Option What it enables


testjet Enables the VTEP or TestJet testing technique on your board.
Note: On UnMux systems, VTEP is enabled by default and the testjet
parameter is not needed.
The following are applicable to Mux systems only:
all high accuracy resources For double density, high accuracy HybridPlus Cards, this option enables
channel resources to be routed to pins that would otherwise be used for
extended grounding on XG-50 fixtures. Because the resource assignments
change, this option cannot be used with XG-50 fixtures.
combo test Enables both in-circuit and functional testing on your board.
common delimiter Enables interoperability between UNIX® and Windows® systems.
connect check Enables Agilent Connect Check.
incircuit test Enables automatic in-circuit test generation for systems which do not have it.
magic Enables automatic generation of tests and diagnosis of clusters of passive
analog parts with limited nodal access via AgilentMagicTest technology.
powered testing Allows limited powered testing on an Agilent 3072 system (a maximum of two
HybridPlus Cards, and one HybridPlus Card, or one HybridPlus and one
AccessPlus Card per module).

Syntax Reference E-7


enable loop counter (VCL)

enable loop counter (VCL)

Title: ENABLE TRUE COUNTED HOMINGLOOPS


The enable loop counter function is used at or near the beginning of the Declaration
section of a test to enable true counted homingloops. The function operates in conjunction
with the times parameter in the homingloop function.
• Without enable loop counter, the times is used only by the SAFEGARD safety analysis
routines. If the loop fails to exit, it runs until test timeout occurs.
• With enable loop counter, if the loop fails to exit after it has run the number of times
specified by the times parameter, the test fails.
The enable has no effect on homingloops that do not use the times parameter.

Syntax
enable loop counter

Parameters
(none)

Examples
! in the Declaration section of the test
enable loop counter
. . .
! in the Vector Execution section
. . .
homingloop 8 times ! fails after 8 passes if the exit has not occurred
. . .
execute V1 exit if pass
. . .
end homingloop

General Information
The enable is built into the system hardware.

E-8 Syntax Reference


end (BT-Basic)

end (BT-Basic)

Title: MARK THE PHYSICAL END OF A PROGRAM


The end function marks the physical location in memory where the program ends, and
separates the main program from the subprograms, if any, that follow. If end is used, it must
be the last function in the main program.
If the end is executed, it behaves exactly like the stop function. The stop function must be
used if the program is to stop execution at any other point in the program.

Syntax
end

Parameters
(none)

Examples
if Error=1 then \ print "TEST FAILED" \ stop \ end if
print "TEST WAS SUCCESSFUL"
end

General Information
(none)

Syntax Reference E-9


end bank (CONFIGURATION)

end bank (CONFIGURATION)

Title: END BANK CONFIGURATION


The end bank function delimits a bank configuration block in the testhead configuration
files. For every end bank function there must be a corresponding bank function.
See the syntax description of the bank function.

Syntax
end bank

E-10 Syntax Reference


end chain (ITL)

end chain (ITL)

Title: MARKS END OF CHAIN


The end chain statement marks the end of a chain block Refer to the chains statement for
more information.

Syntax
end chain

Parameters
(none)

Examples
chain "u1_u4"
tdi "TDI"
tdo "TDO"
tms "TMS"
tck "TCK"
devices
"u1", "../demo_original/custom/74bct8374", "DW_PACKAGE", no
. . .
end devices
end chain

General Information
(none)

Syntax Reference E-11


end capture (VCL)

end capture (VCL)

Title: END A CAPTURE BLOCK


The end capture function marks the end of a capture block in the Vector Execution section
of a test. Refer to the capture (VCL) function for details.

Syntax
end capture

Parameters
(none)

Examples
unit "Capture"
execute V8
capture
execute V3
pcf
"1100011"
"0101100"
end pcf
execute V5
end capture

General Information
(none)

E-12 Syntax Reference


end compress (VCL)

end compress (VCL)

Title: END OF A COMPRESS (CRC) BLOCK


The end compress function is used in a digital unit to end a compression block; that is, a
block of vectors whose response states are to be added to the CRCs for that test. The block
is started by the compress function.

Syntax
end compress

Parameters
(none)

Examples
! in the Vector Execution section
. . .
unit "Compressor"
. . .
execute V01
execute V02 sync
. . .
compress
execute V01
execute V02 sync
count V03
end compress
. . .
end unit
. . .

General Information
(none)

Syntax Reference E-13


end controllerloop (VCL)

end controllerloop (VCL)

Title: END A CONTROLLER LOOP


The end controllerloop function is used in a digital unit to mark the end of a controller
loop; the start of the loop is marked by the controllerloop function. Refer to the
description of the controllerloop function for a description of the loops.

Syntax
end controllerloop

Parameters
(none)

Examples
! in the Vector Execution section
. . .
unit
. . .
controllerloop ! Measure voltage on
! TP12
execute V1
execute V2
end controllerloop
execute V3
. . .
end unit
. . .

General Information
(none)

E-14 Syntax Reference


end data (ANALOG)

end data (ANALOG)

Title: MARK THE END OF AN ANALOG DATA BLOCK


The end data function marks the end of an analog data block. Every data (ANALOG)
function must have a corresponding end data function.
See the syntax description of the data (ANALOG) function.

Syntax
end data

Syntax Reference E-15


end data (VCL)

end data (VCL)

Title: TERMINATE A DATA BLOCK


The end data function marks the end of a VCL data block. Every data (VCL) function must
have a corresponding end data function.
See the syntax description of the data (VCL) function.

Syntax
end data

E-16 Syntax Reference


end devices (ITL)

end devices (ITL)

Title: END OF DEVICE BLOCK


The end devices statement marks the end of a devices block. Refer to the devices
statement for more information.

Syntax
end devices

Parameters
(none)

Examples
devices
"u1", "../demo_original/custom/74bct8374", "DW_PACKAGE", no
. . .
end devices

General Information
(none)

Syntax Reference E-17


end disables (ITL)

end disables (ITL)

Title: END OF DISABLES BLOCK


The end disables statement marks the end of a disables block. Refer to the disables
statement for more information.

Syntax
end disables

Parameters
(none)

Examples
disables
node "IN_26" hybrid
node "IN_28" hybrid
pcf order is nodes "IN_26","IN_28"
unit "disable"
pcf
"11"
end pcf
end unit
end disables

General Information
(none)

E-18 Syntax Reference


end frame (VCL)

end frame (VCL)

Title: IDENTIFY THE END OF A FRAME BLOCK


The end frame function identifies the end of a block of pcf vectors used in testing
boundary- scan devices. Every frame function must have an accompanying end frame
function. For more information, see the frame function.

Syntax
end frame

Parameters
(none)

Examples
frame
pcf
use pcf order Sscan
"00ZX" ! captured for diagnostics
"10ZX" ! captured for diagnostics
"00ZX" ! captured for diagnostics
. . .
. . .
"01ZX" ! captured for diagnostics
"11ZX" ! captured for diagnostics
end pcf
end frame

General Information
This function can only be used with the Agilent InterconnectPlus software option.

Syntax Reference E-19


end homingloop (VCL)

end homingloop (VCL)

Title: END HOMING LOOP


The end homingloop function is used in the Vector Execution section of a digital test to
mark the end of a homing loop, both the counted and uncounted loops. Refer to the
homingloop function for more information.

Syntax
end homingloop

Parameters
(none)

Examples
homingloop 4 times
execute Clock0
execute Clock1 exit if pass
end homingloop

General Information
(none)

E-20 Syntax Reference


end if (BT-Basic)

end if (BT-Basic)

Title: END CONDITIONAL BRANCH


The end if function marks the end of a structured- if. Refer to the description of if
then/else/end if for information about the end if function.

Syntax Reference E-21


end include (BT-Basic)

end include (BT-Basic)

Title: TERMINATE AN INCLUDE BLOCK


The end include function terminates an include block, which is used to temporarily merge
the lines from a file into the program currently in the workspace.
See the include (BT- Basic) function for details.

Syntax
end include

Parameters
(none)

Examples
include "mixed/gain/basic"
end include
include "mixed/noise/basic | TstName$ = "noise"
end include

General Information
(none)

E-22 Syntax Reference


end loop (BT-Basic)

end loop (BT-Basic)

Title: END UNCOUNTED LOOP


end loop is used with the loop function to delineate a series of statements which form an
uncounted loop. Refer to the description of the loop function for details about end loop.

Syntax Reference E-23


end module (CONFIGURATION)

end module (CONFIGURATION)

Title: END MODULE CONFIGURATION


The end module function delimits a module configuration block in the board and testhead
configuration files. For every end module function there must be a corresponding module
function.
See the syntax description of the module function.

Syntax
end module

E-24 Syntax Reference


end nodes (ITL)

end nodes (ITL)

Title: MARKS END OF NODES BLOCK


The end nodes statement marks the end of a nodes block. Refer to the nodes statement for
more information.

Syntax
end nodes

Parameters
(none)

Examples
nodes
silicon node "U1_2" test "u1.2","u2.23"
node "IN_05" test "u1.1"
. . .
end nodes

General Information
(none)

Syntax Reference E-25


end <test type> (ITL)

end <test type> (ITL)


The end <test type> statement marks the end of a test block. The <test type> can be
powered shorts, interconnect, buswire, connect, or custom. The <test type> specified must
match that specified to begin the block.

Syntax
end <test type>
<test type> can be: powered shorts
interconnect
buswire
connect
custom

Parameters
<test type> Provides the name of the test type. This must match the test type
specified at the beginning of the test block.

Examples
See the ITL sample files in Boundary- Scan Testing.

General Information
(none)

E-26 Syntax Reference


end on failure (ANALOG)

end on failure (ANALOG)

Title: MARK THE END OF AN on failure (ANALOG) FUNCTION


The end on failure function, in conjunction with a corresponding on failure (ANALOG)
function, delimits a structured on failure loop. Refer to the on failure / end on failure
(ANALOG) function description for more information.
See the off failure (ANALOG) function description.

Syntax
end on failure

Parameters
(none)

Example
on failure
report "PART #: 0180-1533****LOCATION: A5"
report Stock$
end on failure
clear connect s to "Filter"; i to "GND"
capacitor 1u, 10.6, 11.5

General Information
(none)

Syntax Reference E-27


end parameters (SAFEGUARD)

end parameters (SAFEGUARD)

Title: MARK END OF A PARAMETER BLOCK


The end parameters function marks the end of a parameters block in a safeguard file. Refer
to the parameters (SAFEGUARD) function for details.

Syntax
end parameters

Parameters
(none)

Examples
parameters "default"
backdrive current of 125m for "0", 270m for "1"
. . .
thermal resistance 60
end parameters

General Information
(none)

E-28 Syntax Reference


end pcf (VCL) (ITL)

end pcf (VCL) (ITL)

Title: END OF PCF BLOCK


The end pcf function marks the end of a PCF block in the Vector Execution section of the
VCL test (see the pcf function for a description of the PCF block).
In ITL, this is used in the disables section of any of the chain tests and/or in the silicon nail
type test as part of the actual test vector sequence definition.

Syntax
end pcf

Parameters
(none)

Examples
! in the Vector Execution section
. . .
unit "Data_Check"
. . .
pcf
use timing set Drive_receive ! For Mux systems only
"101011110LLLLLLHXX"
"001100001LLLLLHLHH"
"011100110LLLLLHHLL"
end pcf
. . .
end unit
. . .

General Information
(none)

Syntax Reference E-29


end repeat (VCL) (ITL)

end repeat (VCL) (ITL)

Title: END REPEAT LOOP


The end repeat function is used in the Vector Execution section of a digital test to mark the
end of a repeat loop. See the repeat times function for more information about the loop.
In ITL, repeat loops only appear in the disables section.

Syntax
end repeat

Parameters
(none)

Examples
repeat 1023 times
execute Address
end repeat

General Information
(none)

E-30 Syntax Reference


end segment (VCL)

end segment (VCL)

Title: TERMINATE A SEGMENT


The end segment function marks the end of a segment in the Vector Execution section of a
test. See the segment function for more information about segments.

Syntax
end segment

Parameters
(none)

Examples
! in the Vector Execution section
. . .
segment 2048
repeat 32768 times ! program and test FlashRAM
homingloop 25 times
. . .
execute Write
execute Data_Write drive data S_Record_Address ! variable vector
. . .
execute Verify
execute Data_Read receive data S_Record_Data exit if pass
! variable vector
execute End_Cycle
. . .
end homingloop
next Address1
next Data1
end repeat
end segment
. . .

General Information
(none)

Syntax Reference E-31


end sub (VCL)

end sub (VCL)

Title: END VCL SUBROUTINE


The end sub function is an alternative form of the subend function. It marks the end of a
digital subroutine and causes the exit from the subroutine.
Refer to the description of the subend (VCL) function.

E-32 Syntax Reference


end subtest (ANALOG)

end subtest (ANALOG)

Title: MARK THE END OF AN ANALOG SUBTEST


The end subtest function marks the end of an analog subtest. Every subtest function must
have a corresponding end subtest function.
See the syntax description of the subtest function.

Syntax
end subtest

Syntax Reference E-33


end subvector (VCL)

end subvector (VCL)

Title: END OF SUBVECTOR IN A VECTOR BLOCK


(Mux systems only)
The end subvector function marks the end of a subvector in a vector block in the Vector
Definition section of a digital test. The subvector function marks the beginning of the
subvector.

Syntax
end subvector

Parameters
(none)

Examples
! vector definition section
vector V4
use timing set A
subvector
set Din to "0011
set Dout to "0000"
end subvector
subvector
set Din to "1100"
set Dout to "1111"
end subvector
end vector

General Information
(none)

E-34 Syntax Reference


end test (ANALOG)

end test (ANALOG)

Title: MARK THE END OF AN ANALOG IN-CIRCUIT TEST BLOCK


The end test function is used in an explicit analog test block to mark the end of the test
block. end test must be used in conjunction with a corresponding test analog function.
Refer to the description of the test analog (ANALOG) function for more information about
analog in- circuit tests and test blocks.

Syntax
end test

Parameters
(none)

Example
test analog
clear connect s to "Enable"; i to "Vout"
diode 800m, 400m, ar1, co1.5
end test

General Information
(none)

Syntax Reference E-35


end <test type> (ITL)

end <test type> (ITL)


The end <test type> statement marks the end of a test block. The <test type> can be
powered shorts, interconnect, buswire, connect, or custom. The <test type> specified must
match that specified to begin the block.

Syntax
end <test type>
<test type> can be: powered shorts
interconnect
buswire
connect
custom

Parameters
<test type> Provides the name of the test type. This must match the test type
specified at the beginning of the test block.

Examples
See the ITL sample files.

General Information
(none)

E-36 Syntax Reference


end timing set (VCL)

end timing set (VCL)

Title: END TIMING SET DEFINITION


(Mux systems only)
The end timing set function is used in the Timing section of a VCL test to mark the end
of a timing set.
Refer to the description of the timing set function for more information about timing sets.

Syntax
end timing set

Parameters
(none)

Examples
! in the Timing section
. . .
timing set T1 is 10 events
drive vector at event 2
receive vector at event 7
at event 0 set CS1 to "1"
at event 3 set ACK to "0"
at event 5 set RDWR to "1"
end timing set
. . .

General Information
(none)

Syntax Reference E-37


end unit (VCL) (ITL)

end unit (VCL) (ITL)

Title: END DIGITAL UNIT


The end unit function marks the end of a digital unit in the Vector Execution section of the
test (see the unit function).
In ITL, this is used in the disables section and in the silicon nails test.

Syntax
end unit

Parameters
(none)

Examples
unit "Testing Preset Line of the Flip-Flop"
execute Clear_high
execute Preset_low
execute Testpreset
end unit

General Information
(none)

E-38 Syntax Reference


end vector (VCL)

end vector (VCL)

Title: END OF VECTOR BLOCK


The end vector function marks the end of a vector block in the Vector Definition section of
a digital test. The vector function marks the beginning of the block.

Syntax
end vector

Parameters
(none)

Examples
! define a vector named "Clock_A_hi"
vector Clock_A_hi
set A_Clk to "11101"
end vector

General Information
(none)

Syntax Reference E-39


enter (BT-Basic)

enter (BT-Basic)

Title: ENTER DATA


The enter function enables sequential input of data from files or devices, using free- field
format. For imaged formatting of the data, refer to the enter using function.
The input device or file is specified in the function's <data source> parameter. A device is
assumed to be a part of the file system. The file or device can be addressed either by its
<file id> or by an @<name> associated with that <file id> by an assign to function. If
<file id> is used, the file or device opens for the access and then closes when the access
is completed. If an @<name> is used, the file or device is opened when the @<name> is first
assigned, and the file or device then remains open for sequential access; that is, each new
access to the file or device starts where the previous access stopped.
The input data are assigned, in the order in which they are input, to the variables listed in
the function. The input data must correspond, item for item, to the types—numeric or
string—of the listed variables. The data items being input must be separated from each other
by a delimiter, as described below.
The enter function accesses data sequentially, starting at the first record and reading the
data record by record. As the data is read, the system tracks its current read position by
moving a pointer through the data. Assuming that the file was not closed, the next access to
the data then starts at the current position of the pointer—that is, at the beginning of the
next record. If you wish to skip the pointer over one record, you can do so by omitting the
variable list from the enter function. To return the pointer to the beginning of the first
record, close the file or device and then reopen it.
The rules applying to the input data are listed next. They are the same as the rules listed
for the input function, except that input must have at least one item in its variable list.

Numerical Input
1 Numbers must contain only valid characters, in the proper order.
2 The delimiter between numbers can be a comma, a space, or a RETURN (EOL or EOR).
Extra spaces before or after the delimiter are ignored.
3 A null input can be made to any one numeric variable—i.e., the variable retains its
current value—by omitting the number and inputting just a comma (with or without
spaces).
4 When all input variables are satisfied, any remaining input, up to the next EOR, is read
and discarded. The input then terminates.
5 A blank line (a null record) also terminates the input. Any remaining input variables
retain their current values.
6 Input data can cross record boundaries, but an individual item cannot.

E-40 Syntax Reference


enter (BT-Basic)

String Input
1 The RETURN (EOL or EOR) is a delimiter between strings. After the input, the input
variable is the same length as the string assigned to it (the dimensioned length of the
string cannot be exceeded—see the next step).
2 If an input string is longer than the dimensioned length of the variable to which it is
assigned, the extra characters are assigned to the next variable, if there is one.
3 When all input variables are satisfied, any remaining input, up to the next EOR, is read
and discarded. The input then terminates.
4 A blank line (a null record) also terminates the input. Any remaining input variables
retain their current contents.
5 Input data can cross record boundaries, but an individual item cannot.

String and Numerical Input


• When both strings and numbers are to be input, the rules listed above apply. During the
input, if a number follows a string on the same line, then the string must be the same
length as the dimensioned length of the string variable to which it is assigned.

Syntax
enter <data source>
enter <data source>;<variable list>
enter <data source>,,<error variable>
enter <data source>,,<error variable>;<variable list>
<data source> can be: <name>
<file id>
<name> is a <label>
<file id> is a <string expression>
<error variable> is a <numeric variable>
[Note the double comma preceding <error variable>]
<variable list> can be: <variable>
<variable>,<variable>
<variable>,<variable>, . . . <variable>
<variable> can be numeric or string
[Use <array id>(*) to specify a complete array]

Parameters
<data source> The source of the data to be input, which can be either a file or
device. If a <file id> is specified, the file or device is opened to
read the data and then closed, regardless of whether or not the
input operation was successful. If an @<name> is specified, the file
or device remains open for further access. If used, the @<name>
must have previously been assigned.
<error variable> The identifier of an error variable.
<variable list> A list of the names of the variables to which the input data are to
be assigned. Any type of variable, including substrings, can appear
in the list. If a complete array is specified, each element is treated
like a separate input variable.
If the list is omitted, one record of data is read and discarded.

Syntax Reference E-41


enter (BT-Basic)

Examples
enter "/dev/tape" ; A$, B
assign @Tape to "/dev/tape"
enter @Tape,,Failure; A$, B
enter @Tape ! skips one record
Data$ = "/b6903a/test_data"
enter Data$ ; A, Board$, Tests(*), R_values(*)
! Also see the examples of the "input" function.

General Information
(none)

E-42 Syntax Reference


enter using (BT-Basic)

enter using (BT-Basic)

Title: ENTER IMAGED DATA


The enter using function enables sequential input of data from files and devices, using
imaged format. For free- field formatting of the data, refer to the enter function.
The input device or file is specified in the function's <data source> parameter. A device is
assumed to be a part of the file system. The file or device can be addressed either by its
<file id> or by an @<name> associated with that <file id> by an assign to function. If
<file id> is used, the file or device opens for the access and then closes when the access
is completed. If an @<name> is used, the file or device is opened when the @<name> is first
assigned and remains open so that each access to the file or device can start where the
previous access stopped.
The specifications which format and interpret the input data are referenced by means of the
function's <image data> parameter. This parameter can itself contain the formatting
specifications, or it can reference an image function which contains the specifications. The
variable list contains the identifiers of the variables where the input data are to be stored.
The input data are assigned, in order, to the variables listed in the function. The input data,
as formatted by the image specifications, must correspond, item for item, to the
types—numeric or string—of the listed variables, and there must be sufficient data to fill all
of the listed variables.
The enter using function accesses data sequentially, starting at the first record. Only one
record is read, unless the image <line spec> (/) is used to enable record boundaries to be
crossed. If all of the listed variables have been filled before the end of the current record
has been reached, then the data continues to be read until an EOR (End Of Record) is read.
However, this data is discarded. If the input is from an GPIB device, and the inhibit- EOL
spec (#) is included in the image specifications, reading terminates as soon as all the listed
variables are filled.
As the data is read, the system tracks its current read position by moving a pointer through
the data. Assuming that the file or device was not closed, the next access to that data starts
at the current position of the pointer; that is, at the beginning of the next record. If you
wish to skip the pointer over one or more records, you can do so by omitting the variable
list from the enter using function. One record is skipped, unless the image specification
<line spec> (/) is used to skip more than one record. To return the pointer to the
beginning of the first record, close the file or device and then reopen it.
The input data must comply with the following rules, any violation of which causes an
execution error:
1 Each item of data must be the same type (numeric or string) as the variable to which it
is to be assigned.
2 Numbers must contain only valid characters, in the proper order.

Syntax Reference E-43


enter using (BT-Basic)

3 An input string cannot be longer than the dimensioned length of the variable to which it
is assigned. After the input, the actual length of the variable is the same as the length of
the string assigned to it. (The standard rules for assigning a string to a substring apply.)
4 Delimiters (commas, etc.) in the input are ignored. The image specifications determine the
start and end of each data item.
5 Input data can cross record boundaries, but an individual item cannot.
6 Sufficient data must be input to fill the variables in the variable list. After that, data
continues to be read until an EOL (End Of Line) is encountered, unless a suppress EOL
(#) is contained in the image specifications.

Syntax
enter <data source> using <image data>
enter <data source> using <image data>;<variable list>
enter <data source>,,<error variable> using <image data>
enter <data source>,,<error variable> using <image data>;<variable list>
<data source> can be: <name>
<file id>
<name> is a <label>
<file id> is a <string expression>
<image data> can be: <image id>
<image specifications>
<image id> is a <label>
<image specifications> is a <string expression>
<error variable> is a <numeric variable>
[Note the double comma preceding <error variable>]
<variable list> can be: <variable>
<variable>,<variable>
<variable>,<variable>, . . . <variable>
<variable> can be numeric or string
[Use <array id>(*) to specify a complete array]

Parameters
<data source> The source of the data to be input, which can be either a file or a
device. If a <file id> is specified, the file or device is opened to
access the data and then closed, regardless of whether or not the
input operation was successful. If an @<name> is specified, the file
or device remains open for further access. If used, the @<name>
must have previously been assigned.
<image id> The identifier of the image function containing the specifications
to be used to format the input data.
<image specifications> The list of specifications to be used to format the input data.
Refer to the image function for a complete description of the
specifications.
<error variable> The identifier of an error variable.
<variable list> A list of the names of the variables to which the input data are to
be assigned. Any type of variable, including substrings, can appear
in the list. If a complete array is specified, sufficient data must be
supplied to fill all elements in that array.

E-44 Syntax Reference


enter using (BT-Basic)

If the variable list is omitted, the read pointer advances one or


more records, as determined by the image specifications. The data
skipped during the advance is ignored.

Examples
These examples show different ways of writing the enter using function. See the image
function for examples showing how the image specifications format the input data.

enter "/dev/8" using L1; A,B,C ! file id and image reference


L1: image dd.dd, sd.de, z.d ! image function
!
! A B C
! input = -1.42+4.234 2.1 -1.42 4.234 2.1
assign @Tape to "/dev/8"
enter @Tape using L1; A,B,C ! @<name> & image reference
enter @Tape using "dd.dd, sd.de, z.d"; A,B,C
! "image" specifications in a string expression
Form$ = "dd.dd, sd.de, z.d"
enter @Tape using Form$; A,B,C
! Same as preceding example
Input$ = "/dev/8"
enter Input$ using Form$; A,B,C
enter @Tape,,Failure using Form$; A,B,C ! Error variable
L2: image 12a, 30(ddd), 30(sd.ddde)
enter @Tape using L2; Board$, Tests(*), R_values(*)
! Input to arrays

General Information
(none)

Syntax Reference E-45


eod (VCL)

eod (VCL)

Title: END OF DATA ACTION


The eod function indicates how the system will complete the last data segment when the
data ends prematurely. This is only available for Flash ISP programming.

Syntax
eod last
eod reuse
eod unused
eod user <address>
eod user hexadecimal <address>

Parameters
<address> The address to which FF’s are written.
last Write data word FF’s to the last address in the device.
reuse Write data word FF’s to a previous location containing FF’s
unused Write data word FF’s to an unused memory location.
user Write data word FF’s to an user- defined address.

Examples
flash assignments
file "1Mbits.srec" srecord
ata Data to groups DataBus
address Address to groups AddressBus
eod reuse
end flash assignments

General Information
(none)

E-46 Syntax Reference


errl (BT-Basic)

errl (BT-Basic)

Title: RETURN LINE NUMBER


The errl function returns the program line number at which the most recent runtime error
occurred. When run is executed, or the program is edited, the function is reset to zero.

Syntax
errl

Parameters
(none)

Examples
if errn then print "Error on Line"; errl

General Information
This function is useful in error trapping routines.

Syntax Reference E-47


errm$ (BT-Basic)

errm$ (BT-Basic)

Title: RETURN ERROR MESSAGE


The errm$ function returns a string containing the short version of the system error
message associated either with the most recent runtime error, or with a specific runtime
error number. When run is executed, or the program is edited, the function is reset to zero.
The errmlong$ function returns the long versions of the error messages.

Syntax
errm$
errm$ ( <error number> )
<error number> is a <numeric expression>

Parameters
<error number> The error number of the selected runtime error. If omitted, this
parameter defaults to the number of the most recent runtime
error.

Examples
if errn <> 0 then print "Error: "; errm$
log is "/test/file3", Err
if Err <> 0 then print errm$
print errm$(248)

General Information
This function is useful with the error trapping routines.

E-48 Syntax Reference


errmlong$ (BT-Basic)

errmlong$ (BT-Basic)

Title: RETURN ERROR MESSAGE


The errmlong$ function returns a string containing the long version of the system error
message associated either with the most recent runtime error, or with a specific runtime
error number. When run is executed, or the program is edited, the function is reset to zero.
The errm$ function returns the short versions of the error messages.

Syntax
errmlong$
errmlong$ ( <error number> )
<error number> is a <numeric expression>

Parameters
<error number> The error number of the selected runtime error. If omitted, this
parameter defaults to the number of the most recent runtime
error.

Examples
if errn <> 0 then print "Error: "; errmlong$
log is "/test/file3", Err
if Err <> 0 then print errmlong$
print errmlong$(248)

General Information
This function is useful with the error trapping routines.

Syntax Reference E-49


errn (BT-Basic)

errn (BT-Basic)

Title: RETURN ERROR NUMBER


The errn function returns the error number of the most recent runtime error. When run is
executed, or the program is edited, the function resets to zero.

Syntax
errn

Parameters
(none)

Examples
if errn=248 then print "Operator pressed STOP"

General Information
This function is useful in error trapping routines.

E-50 Syntax Reference


events every (VCL)

events every (VCL)

Title: SET THE PERIOD OF THE REFERENCE CLOCK


The events every function is used in the Timing section of a VCL test to specify the period
of the testhead reference clock, and to declare the resource which is to synchronize the
reference clock. This function must be the first function in the Timing section, because all
other timing in the test is controlled by the reference clock.
The reference clock is derived from a frequency synthesizer with a phase- lock loop. It can
be synchronized either to the test system's internal clock, or to an external clock; the
external clock can be derived from the board under test, or from any other external source,
routed through the fixture. The synchronizing source is selected by the events every
function:
• internal uses the frequency synthesizer phase locked to the internal clock.
• pll (phase locked) uses the frequency synthesizer phase locked to an external clock.
If pll is specified, the external clock source node must be specified in an outputs
reference clock function, in the Declaration section of the test.

Syntax
events every <event spacing> internal
events every <event spacing> pll <clock time> period edge <polarity>
<event spacing> and <clock time> are <numeric constants>
<polarity> can be: rising
falling

Parameters
<event spacing> The time between events (i.e., the period of the reference clock) in
seconds. The range is:
50 ns (20 MHz) <= event spacing <= 6.25 us (160 kHz)
<clock time> The period, in seconds, of the external clock. The two clock
periods can be equal, or they can be multiples, or sub- multiples,
of powers of 2. The range of the external clock is:
25 ns (40 MHz) <= clock time <= 6.25 us (160 kHz)
<polarity> Specifies the external clock edge to which the reference clock, and
the events, are to be synchronized.

Syntax Reference E-51


events every (VCL)

Examples
! Timing section of VCL test #1
events every 200n internal ! uses internal clock
timing set Read_Word is 14 events ! timing set duration is 2800 ns
. . .
end timing set
. . .
! Timing section of VCL test #2
events every 300n pll 150n period edge rising
timing set Read_Word is 14 events ! timing set duration is 4200 ns
. . .
end timing set
. . .

General Information
When pll is selected, the actual period is different from the calculated period if the
external clock's actual period is different from that specified in the function.

E-52 Syntax Reference


events every internal (DEBUG)

events every internal (DEBUG)

Title: CHANGE THE PERIOD OF THE REFERENCE CLOCK


(Mux systems only)
The events every internal function temporarily changes the period of the reference clock,
which controls test timing by establishing the spacing between events in the timing sets (see
Advanced Testing With VCL in Digital Testing).
The events every internal function in debug is similar to the events every function in
VCL, except that the debug function cannot be used if the test timing is synchronized to an
external clock, or uses vector cycle and receive delay timing.

Syntax
events every <event spacing> internal
<event spacing> is a <numeric expression>

Parameters
<event spacing> The time between events (i.e., the period of the reference clock) in
seconds. See your system's specifications for the range of event
spacing.

Examples
events every 200n internal

General Information
safeguard none must be specified before the events every internal function can be used.

Syntax Reference E-53


execute (BT-Basic)

execute (BT-Basic)

Title: EXECUTE COMMANDS OUTSIDE OF BT-Basic


The execute function is used to execute commands outside of BT- Basic (or executable
programs) from within a BT- Basic window. This function can be used in either of two ways:
1 Executing this function without parameters on the command line changes the current
window into a shell window in which commands outside of BT- Basic can be executed.
This assumes that nowindow is the default in your .hp3070 environment file; if the default
is window, a new shell window opens.When you are finished with the shell window, enter
exit to restore the BT- Basic window.
2 Executing this function on the command line and specifying a command outside of
BT- Basic causes the specified command to execute (subject to the options listed below).

Syntax
execute
execute <command>
execute, <error variable>
execute <command>, <error variable>
execute <option list>
execute, <error variable>;<option list>
execute <command>;<option list>
execute <command>, <error variable>;<option list>
execute <command>; append
execute <command>; append, <option list>
execute <command>, <error variable>; append, <option list>

<command> is a string expression


<error variable> is a <numeric variable>
<option list> can be one or more of the following, separated by commas:
<window>
<wait>
<window> can be:
window
nowindow
<wait> can be:
wait
nowait
failwait

Parameters
<command> A string expression that identifies a valid command outside of
BT- Basic or an executable program.
<error variable> The identifier of an error variable.
<option list> A list of optional parameters that determine how the function
works. How these parameters work is also affected by how their
defaults are defined in the .hp3070 environment file associated
with each login. The options are:
<window> – Specifies whether or not a new window is
automatically opened when the command is executed. Values are:

E-54 Syntax Reference


execute (BT-Basic)

• window – A new window is opened.


• nowindow – Suppresses the opening of a new window.
<wait> – Specifies how the command executes. Values are:
• failwait – The command executes and, if a failure occurs, the
results remain on the screen so you can examine them.
• nowait – The command executes and does not pause for you to
examine the results.
• wait – The command executes and the results remain on the
screen so you can examine them.
append A keyword that causes the output from a command outside of
BT- Basic or program to be appended to the work area of the
BT- Basic window from which the execute function was invoked.
NOTE: When using append, the only permissible values for <option
list> are nowindow and nowait.

Examples
! Invoke a shell window in which commands outside of BT-Basic can be executed
execute
! Execute a command outside of BT-Basic in a new window
! and immediately return to BT-Basic
execute "rm my_file"; window
! Execute a command outside of BT-Basic in the current window
! and pause only if the command fails; includes an error variable
execute "rmdir test", Error; failwait
! Execute a command outside of BT-Basic in the current window
! and pause to display the results
execute "ls"; wait
execute "ls"; append ! The directory listing resulting from the "ls"
! command is appended to the work area of the
! current BT-Basic window.

General Information
(None)

Syntax Reference E-55


execute (SOFTKEY)

execute (SOFTKEY)

Title: EXECUTE A FUNCTION ON THE COMMAND LINE


The execute softkey (f4) executes the function or line currently in the command line of the
workstation screen. The cursor can be at any character in the command line when execute
is pressed; this is especially useful when editing statements which have been executed
previously and have been recalled from the command stack by the recall plus softkey. If
the command line is blank, the last line in the recall stack is executed.

Examples
execute "notepad my_file" ! Start the Windows Notepad application and load
! the file "my_file" in it.

E-56 Syntax Reference


execute (VCL)

execute (VCL)

Title: EXECUTE A VECTOR


The execute function is used in a digital unit, or in a digital subroutine, to execute a single
vector. (Vectors with counters must be executed by the preset counter or count
statements.)
In addition to identifying the vector to be executed, the function can optionally include some
combination of secondary keywords, as shown in the syntax format below. Refer also to the
separate descriptions of the compress, exit if pass and sync statements for more details.

Table E-2 Secondary Keywords for execute

Keyword Description
arm Arm the time interval counter (i.e., frequency, pulse width, and time interval) on the
ASRU card to start timing. The setup must first be made in the analog portion of a
mixed test.
capture Add the states of the capture pins to the capture RAM.
compress Add the received response (from all pins that are not off) to the CRC; cannot be used
in a controller loop, homing loop or unit disable test.
drive Drives pin states from the specified variable.
drive data Drives the current set of pin states from the specified data block.
exit if pass Exit a homing loop when the device is in the required state (i.e., the received outputs
match the expected response in the current vector).
piped Specifies the piped vectors in homing loops (see The Pipe in Digital Testing).
receive Receives the pin states defined in the specified variable.
receive data Receives the pin states defined by the current setting in the specified data block.
sync Generate the sync pulse which appears at a BNC connector on the side of the
testhead.
trigger acv Trigger the AC voltmeter on the ASRU card. The setup must first be made in the analog
portion of a mixed test.
trigger arb Trigger the ARBitrary waveform generator. This function is the same as trigger
source but can be used more than once between continue analog
statements—but, see General Information on page E-60.
trigger dcv Trigger the DC voltmeter on the ASRU card. The setup must first be made in the analog
portion of a mixed test.
trigger detector Same as trigger dcv.

Syntax Reference E-57


execute (VCL)

Table E-2 Secondary Keywords for execute (continued)

Keyword Description
trigger digitizer Trigger the digitizer. This function is the same as trigger acv but can be used more
than once between continue analog statements—but, see General Information
on page E-60.
trigger external Trigger the external port set up in the analog portion of a mixed test.
trigger source Trigger the source (i.e., sine, triangle, and square wave) on the ASRU card. The setup
must first be made in the analog portion of a mixed test.
wait Causes the test to wait for a trigger on the wait lines before resuming.

Because of the purpose of each option, only certain combinations can be used. Allowable
combinations of options are:
1 These options can be used alone or with any other options:
• drive
• drive data
• receive
• receive data
• sync
• wait
2 These options can be used alone or with options in 1:
• exit if pass
• piped
3 These options can be used alone, or with options in 1, or with any combination allowed
in 4:
• capture
• compress
4 These options can be used only in mixed tests; they can also be used with options in 1
and 3. Each one can be used only once after each return from the analog test to the
digital test. They can be used alone or in any combination of the following:
• arm
• trigger acv or trigger arb or trigger dcv or trigger detector
• trigger external
• trigger source or trigger digitizer (cannot be used with trigger acv or trigger arb)

E-58 Syntax Reference


execute (VCL)

Syntax
execute <vector id>
execute <vector id> <options>
<vector id> is a <label>
<options> can be any one, or any allowable combination, of:
arm
capture
compress
drive <variable>
drive data <data block id>
drive <variable>
drive data <data block id>
exit if pass
piped
receive <variable>
receive data <data block id>
receive <variable>
receive data <data block id>
sync
trigger acv
trigger arb
trigger dcv
trigger detector
trigger digitizer
trigger external
trigger source
wait
<variable> can be: <numeric variable id>
<numeric array id> (<element>)
<...id> is a <label>

Parameters
<vector id> The identifier of the vector to be executed. The vector can be
defined in the Vector Definition section of the test, or it can be a
formal vector in a subroutine—see the sub (VCL) function. A vector
with a counter cannot be executed by the execute function: use
preset counter or count.
If the compress secondary keyword is used, then all outputs to be
compressed must be on (i.e., set to 1 or 0 when the vector is
executed); outputs not to be compressed, must be set to X (off).
<variable> The simple variable or array element that contains the pattern of
bits to be driven to, or received from, a group of pins.
<data block id> The data block that contains the pattern of bits to be driven to, or
received from, a group of pins.
<label> This is the same as a BT- Basic <label>. It can contain up to 32
characters, but with no spaces. The first character must be an
uppercase letter and the remaining characters can be letters,
numbers, or underscores (_).

Syntax Reference E-59


execute (VCL)

Examples
! in the Vector Definition section
. . .
vector Clock_hi
set Cl to "10"
end vector
. . .
! in the Vector Execution section
. . .
execute Clock_hi
! random examples of vector execution statements:
execute DataE0
execute Data_00 sync
execute Data1 sync compress
execute Pulse_sync compress trigger detector sync
execute V6 arm trigger external wait
execute V7 trigger source trigger detector compress
execute V20 drive A(22)
execute V21 receive A(6)
execute V22 drive A(14) receive X(14) drive B(14) ! must use the same indices
execute V23 drive data Hex_record_Addresses
homing loop
execute V101
execute V102 exit if pass
execute V103
execute V104 piped
execute V105
end homing loop
homing loop
execute V101
execute V102
execute V103
execute V105
end homing loop

General Information
Multiple trigger arb and trigger digitizer options can be specified without executing a
continue analog function between them. However, make certain that there is at least one
active vector executed between the trigger options, to reset the trigger drivers on the ASRU
card—a trigger cannot be initiated if its driver has not been reset. Consider the following
example:
execute V1 trigger arb
wait 20m
execute V1 trigger arb
A wait consists of some number of no- op vectors that execute keeps on all drivers,
including the trigger drivers on the ASRU card. Therefore, because the trigger drivers have
not been reset, the second trigger does not occur. To avoid the problem, place at least one
vector that is not a no- op vector either before or after the wait. If you do not, the compiler
issues a warning.

E-60 Syntax Reference


execute to end (DEBUG)

execute to end (DEBUG)

Title: EXECUTE TEST TO END


The execute to end function executes the test currently being debugged. The function
executes the test once to the end of the test, regardless of any failures. When the test
terminates, all drivers are three- stated.

Syntax
execute to end

Parameters
(none)

Examples
execute to end

General Information
(none)

Syntax Reference E-61


execute to fail (DEBUG)

execute to fail (DEBUG)

Title: EXECUTE TEST TO FAILURE


The execute to fail function executes the test currently being debugged. The function
executes the test once, either until the first failure occurs or, if the test does not fail, to the
end of the test. When a digital test terminates, all drivers are three- stated.

Syntax
execute to fail

Parameters
(none)

Examples
execute to fail

General Information
(none)

E-62 Syntax Reference


execute to vector (DEBUG)

execute to vector (DEBUG)

Title: EXECUTE TEST TO SPECIFIED VECTOR


The execute to vector function executes the test currently being debugged. The function
executes the test once, from the beginning of the test until the specified vector is executed.
When the test stops, all driver states are maintained.

Syntax
execute to vector <vector>
<vector> is an <numeric expression>

Parameters
<vector> An integer value representing the number of the vector where the
test stops.

Examples
execute to vector 5
Vector_Number = 234.78
execute to vector Vector_Number ! specifies number 235

General Information
safeguard none must be specified before this function can be used.

Syntax Reference E-63


exit (misc)

exit (misc)

Title: LOG USER OUT OF THE SYSTEM


The exit function performs all the functions the stop function performs and then logs the
user out of the active program. All unclosed files are automatically closed and anything
currently in the workspace (and not saved elsewhere) is no longer accessible.

Syntax
exit

Parameters
(none)

Examples
exit

General Information
(none)

E-64 Syntax Reference


exit if (BT-Basic)

exit if (BT-Basic)

Title: EXIT UNCOUNTED LOOP


The exit if function is used to determine when to exit an uncounted loop. Refer to the
description of the loop function for details about exit if.

Syntax Reference E-65


exit if pass (VCL)

exit if pass (VCL)

Title: EXIT HOMING LOOP


The exit if pass function is a secondary keyword used by the vector execution statements
execute, preset counter and count. It is used to exit a homing loop. If the actual response
received from the device under test matches the expected response for the vector, a pass is
recorded and the exit is made from the homing loop. At this point, it is assumed that the
device has been brought to a known state and testing can proceed. The exit is not made if
the actual response is different from the expected response in the vector with the exit if
pass keyword.

Refer to the descriptions of the vector execution statements listed above and to the
homingloop function for more information.

E-66 Syntax Reference


exit test (ANALOG)

exit test (ANALOG)

Title: EXIT AN ANALOG TEST BLOCK


The exit test function is used within an analog test block to quit the test block and return
to the testplan. After exiting an analog test block, testplan execution continues at the
function following the test (BT- Basic) function that executed that analog test block. exit
test (ANALOG) is functionally similar to BT- Basic's subexit function.

The exit test function is most useful within an on failure loop. The on failure loop can
be part of an analog test block.
It is similar to BT- Basic's if-then loop. For example, when a test block contains more than
one measurement, such as for a potentiometer, you could stop the test if the first
measurement fails. This would avoid the unnecessary second measurement.
The exit test function opens all relays including GP relays. This is important to note
because relays are not normally opened at the end of analog tests.

Syntax
exit test

Parameters
(none)

Example
on failure
report "Part Number: 2100-0165--Location: J5"
exit test
end on failure
clear connect s to "ADJ"; i to "R16_N"; g to "GND"
potentiometer "LEG1", 5k, 13.2, 12.5, ad, Val
clear connect s to "ADJ"; i to "R16_S"; g to "+5V"
potentiometer "LEG2", 10k-Val, 15.5, 14.3

General Information
(none)

Syntax Reference E-67


exor (BT-Basic)

exor (BT-Basic)

Title: EXCLUSIVE-OR
The exor operator is used to evaluate Boolean expressions. It returns a value of 1 if either
the expression on the left or the expression on the right, but not both, is true (non- zero). If
both expressions are true, or if both are false (zero), the operator returns a value of zero.
This operator has a priority of 1.

Syntax
<numeric expression> exor <numeric expression>

Parameters
<numeric expression> The quantities to be evaluated.

Examples
print 12 exor -123.4 ! prints 0
print 0 exor 345 ! prints 1
print 0*20 exor 0 ! prints 0
A = 25 \ print A exor 0 ! prints 1

General Information
(none)

E-68 Syntax Reference


exp (BT-Basic)

exp (BT-Basic)

Title: EXPONENTIAL
The exp function returns the constant naperian e (2.71828182846) raised to the power of the
function's argument.

Syntax
exp(<numeric expression>)

Parameters
<numeric expression> The argument of the function:
argument <= 709.78

Examples
print exp(1) ! prints 2.71828182846
print exp(-3) ! prints .0497870683679

General Information
(none)

Syntax Reference E-69


expand homingloop at (DEBUG)

expand homingloop at (DEBUG)

Title: INCLUDE ALL HOMINGLOOP VECTORS ON THE DISPLAY


The expand homingloop at function displays all homingloop machine vectors including the
piped vectors for each pass through the homingloop.
Without this function digital debug displays only the first pass through the loop. See The
Pipe in Digital Testing for an explanation of homingloops and piped vectors.

Syntax
expand homingloop at <vector>
<vector> is a <numeric expression>

Parameters
<vector> The vector number of the last piped vector in a homingloop. This
cannot be a user- specified vector (i.e., a vector containing the
piped keyword).

Examples
expand homingloop at 35

General Information
To determine the number of the last piped vector, look at the header on the display which
indicates the machine vector numbers. The piped vectors are indicated with the letter p and
not a number. The machine vector number of the last piped vector is easily calculated from
the header.
Once a homingloop has been expanded, the information in the header (including machine
vector numbers, user vector numbers and VCL source line numbers) are not correct for the
vectors following the expanded homingloop. If a test contains several homingloops, expand
only one homingloop at a time. Do not attempt to modify, add or delete any vectors
following an expanded homingloop.

E-70 Syntax Reference


external devices (CONFIGURATION)

external devices (CONFIGURATION)

Title: CONFIGURE EXTERNAL DEVICE CONNECTIONS ON UTILITY CARD


The external devices statement declares external device connections on the optional
Utility Card.
Note the following:
• All external devices slots in a module must be declared (for example, either declare xd1
to xd3 or declare xd1, xd2, xd3 for module 3).
• The device name must be unique across the board.
• One device name must refer to one physical device.
• A device name may be mapped to up to three device slots in a module.
• Device names and their corresponding device slots must be the same in the system and
board config files.
• A device may span multiple slots.
• To use more than one external device simultaneously, a device group must be defined. See
the syntax description for the group statement.
• When using external devices with a panelized board, the external device must be assigned
to a board number. See the syntax description for the board... uses statement.

Syntax
external devices <xd_range> on card <card_id>
<xd_range> can be: <xd_id>, <xd_id>, <xd_id>
<xd_id> to <xd_id>
<xd_id> is xd<integer>
<card_id> is an <integer>

Parameters
<xd_id> The identifier for the external device connection (xd1 to xd12; see
Table E- 3).
<card_id> The identifier for the Utility Card.

Table E-3 Device slot IDs

Utility Card
Slot 1 Slot 2 Slot 3
Module 3 xd1 xd2 xd3
Module 2 xd4 xd5 xd6
Module 1 xd7 xd8 xd9
Module 0 xd10 xd11 xd12

Syntax Reference E-71


external devices (CONFIGURATION)

Examples
In system config:
module 3
...
external devices xd1 to xd3 on card 10
connect "flash" external to xd1
connect "IC" external to xd2 to xd3
...
end module

In board config:
module 3
...
external devices xd1 to xd3 on card 10
connect "flash" external to xd1 library "ABC.dll"
connect "IC" external to xd2 to xd3 library "ic.dll"
...
end module

General Information
None.

E-72 Syntax Reference


extract version (BT-Basic)

extract version (BT-Basic)

Title: COPY VERSION OF board AND board_xy FILE


When using multiple board versions, extract version allows you to make a separate board
directory for a version of a board. You may want to do this either to keep the version
separate or to create a new base board. This command creates new board and board_xy files
called board.ver and board_xy.ver that include information for the specified version only.

Syntax
extract version ! Extracts the base board to local.

extract version " " ! Extracts the base board to local.

extract version <version label>


! Extracts the specified version from local to local.

extract version <version label> from <board file id>, <board_xy file id>
! Extracts the specified version from elsewhere to local.

extract version <version label> from <board file id>, <board_xy file id> to/over
<board file id>, <board_xy file id>
! Extracts specified version from anywhere to anywhere.

Parameters
<version label> The name of the version to extract.
<board file id> When this parameter follows "from", it specifies the location of the
version of the board file to extract; when it follows "to/over", it
specifies the name of the target board.ver file.
<board_xy file id> When this parameter follows "from", it specifies the location of the
version of the board_xy file to extract; when it follows "to/over", it
specifies the name of the target board_xy.ver file.

Examples
extract version "version_3"

extract version "version_3" from "ABC/board", "ABC/board_xy"

extract version "version_3" from "ABC/board", "ABC/board_xy" to


"DEF/board.ver", "DEF/board_xy.ver"

General Information
(none)

Syntax Reference E-73


extract version (BT-Basic)

E-74 Syntax Reference