Professional Documents
Culture Documents
Prerequisites........................................................................................................................... 4-1
Required Tools and Materials................................................................................................ 4-1
Overview...................................................................................................................................... 4-2
Viewing the Data in the wirelist File ..................................................................................... 4-2
The Wirelist Syntax ..................................................................................................................... 4-4
global ..................................................................................................................................... 4-4
end global............................................................................................................................... 4-5
ground .................................................................................................................................... 4-5
end ground ............................................................................................................................. 4-5
relay ....................................................................................................................................... 4-6
end relay................................................................................................................................. 4-6
strapping................................................................................................................................. 4-7
tie ........................................................................................................................................... 4-7
end strapping.......................................................................................................................... 4-7
unused .................................................................................................................................... 4-8
end unused ............................................................................................................................. 4-8
test .......................................................................................................................................... 4-8
device ................................................................................................................................... 4-10
end device ............................................................................................................................ 4-11
clock..................................................................................................................................... 4-12
asru module.......................................................................................................................... 4-12
timing module ...................................................................................................................... 4-13
stimulus module ................................................................................................................... 4-13
functional ............................................................................................................................. 4-15
include.................................................................................................................................. 4-15
subtest .................................................................................................................................. 4-15
end subtest............................................................................................................................ 4-16
wire ...................................................................................................................................... 4-16
group .................................................................................................................................... 4-21
end group ............................................................................................................................. 4-22
serial..................................................................................................................................... 4-22
interface ............................................................................................................................... 4-22
end interface......................................................................................................................... 4-23
Sample Wirelist File .................................................................................................................. 4-24
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the Board Files syntax structure and
the file structure, including the syntax of the
keywords
Prerequisites
There are no prerequisites associated with using this
chapter.
Overview This chapter describes the structure of the Board 1 Modify the board file from Agilent Board
Configuration Format (BCF) syntax of the board file. Consultant.
The board file contains a description of the devices on
the board to be tested, their interconnections, and the a Modify entry forms.
test and fixture options. b Compile board file by clicking the left mouse
button on Final Compile/Verify.
NOTE
There are optional board file statements that are NOTE
not described in this chapter. These statements are See Chapter 2, Agilent Board Consultant in Test
available with optional software packages such as Development Tools for more information on
the Agilent PanelTest option. For information modifying entry forms.
about such statements, refer to the documentation
in the optional package.
2 Modify the board file from Agilent IPG Test
Modifying or Viewing the Data in the board File Consultant.
a Click the left mouse button on Edit.
NOTE
b Drag the mouse pointer to select View/Edit board
You should not edit board test files with shell File.
editors such as vi. These editors do not update the
file's header information, such as the time-stamp, IPG Test Consultant opens a BT-BASIC window
that Agilent 3070 programs use. Instead, use the and loads the board file into the BT-BASIC
BT-BASIC editor to edit board test files. workspace for you to edit.
NOTE
Board Consultant is described in Chapter 3,
Creating Board Information in Test and Fixture
Development.
Board File Overview The board file contains the electrical description of a ■ Use Board Consultant to create and edit the entire
circuit board. This includes the information in Table board file. (Board Consultant is explained in
1-1. Chapter 3, Creating Board Information in Test
and Fixture Development.)
Table 1-1 Information in board file
■ Manually create the file using the structure and
Information Description syntax described in this chapter. If you manually
create your board file, we recommend that you
fixture options fixture parameters for the use the check board statement to check the
Fixture Generation Software syntax before you compile the file.
device options test parameters for Agilent
IPG NOTE
For information on using CAMCAD, refer to the
component values and device specifications for IPG
documentation for that software package.
tolerances
connectivity topology information for IPG
information
Name Description
Board Used to edit the board file. Completing the board and board_xy files is part of the data capture process
Consultant described in Chapter 3, Creating Board Information in Test and Fixture Development.
Check Reads and verifies the syntax of the board file.
Board
IPG Uses device, topology, and test option information from the board.o file to generate device tests.
Fixture The Board Placement and Probe Select programs of the Fixture Generation Software read the board.o file
Generation to find the fixture options and any critical pins. Critical pins are entered in the Critical Pins Form of Board
Software Consultant; Fixture Options are part of the Global Options of Board Consultant. This information is passed on
to fixture.o. Module Pin Assignment also reads the board.o file for any general purpose relay
assignments.
Board_xy Uses the topology and fixture options to generate the board_xy.o file.
Compiler
NOTE
BCF Syntax This section is provided to help you understand the See Chapter 3, Creating Board Information in
Board Configuration Format (BCF) syntax of the board Test and Fixture Development for recommended
Structure file. Each keyword of the syntax is described in the next node naming and pin numbering conventions.
section.
The BCF syntax is divided into these categories: Special Symbols
■ Special Symbols There are two sets of special characters that you cannot
■ Comments use in part numbers and device names in the board file:
■ Identifiers ■ Characters that have special meaning in BCF.
■ Numerals ■ Characters that have special meaning in the shell.
■ Keywords The first set of special characters, BCF special
characters, and their meanings are described in Table
A BCF file is an ASCII file that is compiled by a 3070 1-3.
Family system and contains a description of the
topology of the board to be tested. Table 1-3 BCF special characters
You can use upper or lower case characters in the BCF
Character Description
syntax. The case that you use is preserved in the board
file; however, the device names in the board.o and . Separates the identifier for a device and pin.
board.l files will be lower case. Any device names
retrieved from board.o, such as in the test statement , Used as a delimiter, same as a space.
in the testplan, will be lower case. Note that quotes on ; Used to terminate a statement.
reference designators are optional.
% Used to separate a parent device from a child
device and panelized test.
: Used to separate a parent device from a child
device and panelized test.
The second set of special characters, shell characters, Suffix Description Exponent
are:
M Mega 106
* . " ' ` [ ] < > | & $ \
k kilo 103
/ blank ; ? ^ ( ) :
m milli 10-3
# - (in first character position)
u micro 10-6
Do not use these characters in part numbers and device
names. The underscore (_) works well in place of the n nano 10-9
period (.). p pico 10-12
Do not use the tilde (~) in device names, node names, or
failure messages.
NOTE
Comments
Refer to Chapter 2, Syntax Conventions and
A comment begins with an exclamation mark (!) and Definitions in Board Test Fundamentals for more
continues to the end of a physical line. For example: information on numeric constants.
resistor
R1 10 10 10 f; ! comment
R2 10 10 10 f message; ! comment
Identifiers (Reference Designators and Node $AGILENT3070_ROOT/standard. The Pin_Map can also
Names) be part of the board file. The pin name mapping table is
described more thoroughly under Pin_Map in the next
An identifier is the name of a device, pin, or node that section. Pin mapping takes place only once for both the
you are entering into Agilent Board Consultant. board and board_xy files.
Identifiers of devices and pins are called reference
designators. Identifiers for nodes are called node names. Keywords
Board Consultant accepts:
Keywords are not case-sensitive. BCF syntax keywords
■ Node names up to 40 characters long indicate:
■ Device designators up to 48 characters long ■ Headings
■ Device, global, test, GP relay, and fixture options
■ Pin names up to 8 characters long
■ The end of the device options
■ Path names up to 1024 characters long ■ Node messages
■ A Pin_Map table
Identifiers are not case-sensitive; the upper and
■ The end of a Pin_Map
lowercase of a letter is considered the same letter.
■ Component descriptions
Reference designators and node names can be
■ Node name for unconnected pins
optionally listed with quotes (e.g. “U101”). Note that
you must use quotes if the identifier contains any special ■ Node connections
■ Device connections
characters (e.g. "U 101"). We recommend not using
■ Critical pins
special characters in identifier names.
■ Cross checking
You can use a Pin_Map to translate device pin names. ■ Disabling information
This is useful when your CAD data file uses pin names ■ The end of a BCF file
other than what Board Consultant accepts. For example,
A component description keyword marks the beginning
your CAD data file may have specified transistor pins as
1, 2, and 3, instead of E, B, and C as required by Board of a list of component descriptions. The description can
Consultant. In this case, you can use a Pin_Map to consist of several elements (component name, value,
tolerances, etc.) which must be separated by at least one
translate the 1, 2, and 3 to E, B, and C. The Pin_Map can
space. The pins of a component are defined by the
be placed in the board_defaults file and can reside in
the local board directory, or under
Connections keyword, or the Devices keyword, or both. $AGILENT3070_ROOT/standard directory. The 3070
For example: system looks first under the local board directory and, if
capacitor
a board_defaults file does not exist, it then looks
C101 10.00p 10.00 10.00 F PN"0203-0098"; under the $AGILENT3070_ROOT/standard directory
which contains a board_defaults file. The Pin_Map
The component description keywords can appear in any table may exist in the board_defaults file or the board
order, however, they must precede the connections and file. The board file can be pin-mapped only once.
the devices keywords. After the board file is pin-mapped a flag will be set to
Each component description must follow the same identify that the file has already been pin-mapped.
syntax rules as its associated Board Consultant entry. Programs which read the board file first look for a
Pin_Map table in the board file. If a Pin_Map table does
There are two BCF configuration tools that you can use not exist in the board file, these programs look in the
to translate component information from a CAD data board_defaults file for a Pin_Map table.
file that is incomplete or does not match the syntax. The
two tools are described in Table 1-5. The BCF keywords are summarized in Table 1-6 and
explained in detail in the next section of this chapter.
Table 1-5 BCF configuration tools
Table 1-6 BCF keywords
Tool Description
Keyword Description
board_defaults Fills in information missing in the
board file by using the defaults capacitor Indicates a capacitor description.
contained in the card options Indicates card preference for resource
board_defaults file. assignment.
pin name mapping Uses the Pin_Map table to connections Lists the device.pins connected to
(keyword is translate pin names into names each node.
Pin_Map) required by the 3070 Family.
connector Indicates a connector description.
Table 1-6 BCF keywords (continued) Table 1-6 BCF keywords (continued)
DEVICE OPTIONS Device Options on page 1-21 CRITICAL PINS Critical Pins on page 1-67
FAMILY OPTIONS Family Options on page 1-25 INTERNAL Internal Structure on page 1-68
STRUCTURE
CARD OPTIONS Card Options on page 1-28
CROSS Cross Checked Devices on
FIXED NODE Fixed Node Options on CHECKED page 1-68
OPTIONS page 1-29 DEVICES
GP RELAY GP Relay Options on page 1-30 CROSS Cross Checked Nodes on
OPTIONS CHECKED page 1-68
LIBRARY Library Options on page 1-32 NODES
OPTIONS DISABLING Disabling Information
OVERRIDE Override on page 1-32 INFORMATION (Preconditioning) on page 1-68
Global Options The global options are used by the Fixture Generation
software and IPG. These are the global options that are
The Global Options module contains test and fixture used in BCF; the default values can be changed in the
information. This information is described in Table 1-9 board_defaults file.
on page 1-14. If a value is not specified for an option,
the value specified in the board_defaults file is used.
• EXPRESS
• NO-WIRE
• CASSETTE
• XG-50
• XG-50
CASSETTE
• QuickPress
• JOT
Fixture Size The fixture size. <size> can be: FULL Fixture Size
<size> • BANK1
BANK1;
• BANK2
• FULL
Device Options
The device options described in Table 1-10 on
page 1-22 affect how tests are generated for each
component. IPG uses these options to develop
component tests. These options remain in effect for all
component tests unless overridden, with the OVERRIDE
keyword, for an individual component. These are the
device options that are used in BCF; the default values
can be changed in the board_defaults file.
Card Options
The card options specify which card or cards the Table 1-12 CARD OPTIONS
fixturing software uses to assign resources for a
particular logic family in digital testing. If no card Option Description
options are specified, the fixturing software assigns
<Family-id> Name of the logic family. The name must
HybridPlus Card resources only. The Card Options are
correspond to a logic family named in the
described in Table 1-12 on page 1-28.
family options.
Example 1-1 CARD OPTIONS syntax HYBRID; Only Hybrid Card resources should be
assigned. This is the default if no
CARD OPTIONS
<Family-id> preference for a logic family is specified.
<preference list>
CHANNEL; Only ChannelPlus Card resources should
<Family-id> is a <string constant> be assigned.
Fixed Nodes Section Syntax: <Family-id> Name of the logic family associated with
the node. The name should correspond to
<node-id> Family <Family-id> is <value>;
a logic family named in a device library.
Example of Fixed Node Options: ALL refers to all families.
FIXED NODE OPTIONS
<value> Can be 1, 0, or X to indicate the logic level.
VCC Family TTL is 1;
V+ Family ALL is 1;
GND Family ALL is 0;
VCC Supply 1 at 5.0 volts, 1.2 amps;
GND Ground;
Example:
GPRELAY OPTIONS
GP "U1-2", "U1-3";
CONTROL; ACCESS;
GP N10 is HIGH,N11;
CONTROL, ACCESS;
GP EXT1 is HIGH;
ACCESS;
Option Description
<node_id> Name of a node.
is HIGH Assigns the high contact of the GP relay pair to the node.
is LOW Assigns the low contact of the GP relay pair to the node.
<second node_id> Name of the second node of a node pair. The node name must be preceded by a comma.
CONTROL; Only Control Card GP relays should be assigned.
ACCESS; Only AccessPlus Card GP relays should be assigned.
CONTROL; ACCESS; A preference of a Control Card GP relay over an AccessPlus Card GP relay. This is the default if
no card preference is specified. Semicolons as separators indicate a preference.
ACCESS; CONTROL; A preference of an AccessPlus Card GP relay over a Control Card GP relay. Semicolons as
separators indicate a preference.
CONTROL, ACCESS; No card preference for selection of GP relay. Commas as separators indicate equal preference.
ACCESS, CONTROL; No card preference for selection of GP relay. Commas as separators indicate equal preference.
Example:
LIBRARY OPTIONS
custom_lib
“$AGILENT3070_ROOT/library/ttl"
“$AGILENT3070_ROOT/library/cmos";
Override
Use the OVERRIDE keyword to change one or more
device options for a specific component; include only
the options you wish to change. The override statement
must be placed immediately after the device definition
line for that component. The device options that can be
overridden are:
The device definition keywords are: specify if the capacitor is to be tested with Agilent
■ CAPACITOR
Polarity Check and not to be tested with an analog
■ CONNECTOR in-circuit capacitor test. If you specify Polarity Check,
■ DIODE you must also indicate which pin (1 or 2) is the negative
■ FET pin. The CAPACITOR syntax is shown in Example 1-6.
■ FUSE The options are described in Table 1-15.
■ INDUCTOR
■ JUMPER
■ NODE LIBRARY
■ PIN LIBRARY
■ POTENTIOMETER
■ RESISTOR
■ SWITCH
■ TRANSISTOR
■ ZENER
NOTE
Multiple Board Versions includes version labels
and not placed (NP) parameters in the device
definitions that are not included in the following
sections; see Chapter 5, Multiple Board Versions
in Optional Board Test Applications for details.
Capacitor
The CAPACITOR keyword indicates a list of capacitor
entries. The entries must include the capacitor name, its
capacitance, plus and minus tolerances, and the
capacitor type (fixed or variable). The capacitor part
number and failure message are optional. You can also
CAPACITOR
<device> <value> <+tol> <-tol> <type>;
<device> <value> <+tol> <-tol> <type> <options>;
<device> <value> <+tol> <-tol> <type> <component>;
<device> <value> <+tol> <-tol> <type> <options> <component>;
Examples:
CAPACITOR
C1 10p 10 10 NT F;
"C4" 0.01n 10 5 V PN"0667-9384" "varies integration time";
Option Description
<device> Name of the capacitor (48 characters maximum).
<value> Value of the capacitor.
<+tol> and <-tol> The plus and minus tolerances as percentages of the capacitor value; both are positive numbers.
F The capacitor value is fixed.
V The capacitor value is variable.
<options> PC <#> Indicates that the device will be tested with Polarity Check and an analog in-circuit capacitor
test; NT specifies that the device will not be tested; PC <#> NT specifies that the device will be tested
with Polarity Check only.
PN<part number> The part number of the capacitor (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the capacitor (40 Characters maximum, must be in quotes).
Examples:
CONNECTOR
A1 NT;
"J5" TJ"J5 located on top edge";
Examples:
DIODE
"D1" .8 .4;
D2 .8 .4 NT;
"D3" .8 .4 PN"1801-9016";
D4 .8 .4 "part of bridge rectifier";
"D5" .8 .4 NT PN"1801-9016";
Option Description
<device> Name of the diode (48 characters maximum).
<hi-value> The upper test limit, in volts, for the diodes forward bias voltage.
<lo-value> The lower test limit, in volts, for the diodes forward bias voltage.
NT The device will not be tested.
PN<part number> Part number of the diode (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> A failure message associated with the diode (40 characters maximum, must be in quotes).
FET
The FET keyword indicates a list of FET entries. The
device description includes: FET name, high and low
resistance limits, type, and an optional failure message.
Each entry is terminated by a semicolon. The FET
options are described in Table 1-18 on page 1-41.
Examples:
FET
"Q1" 200 100 N;
Q2 200 100 P NT;
"Q4" 200 100 P "Q4 is located at B7";
Option Description
<device> Name of the FET (48 characters maximum).
<hi-res> The high resistance limit in ohms.
<lo-res> The low resistance limit in ohms.
N Specifies an N-channel FET.
P Specifies a P-channel FET.
NT The device is not tested.
PN<part number> Part number of the FET (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the FET (40 characters maximum, must be in quotes).
Fuse
The FUSE keyword indicates a list of fuse entries. The
device description includes: the fuse name, its
maximum allowed current for testing, and optionally its
part number or failure message. The Fuse options are
described in Table 1-19 on page 1-43.
<device> <max-current>;
<device> <max-current> <options>;
<device> <max-current> <component>;
<device> <max-current> <options> <component>;
<device> is a <string constant>
Examples:
FUSE
"F1" 1.5;
F2 1.25 NT "fuse for +5 V supply";
Option Description
<device> Name of the fuse (48 characters maximum).
<max-current> Maximum value of current in amps.
NT Device is not tested.
PN<part number> Part number of the fuse (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the fuse (40 characters maximum, must be in quotes).
Inductor
The INDUCTOR keyword indicates a list of inductor
entries. The device description includes: the inductor
name, its inductance, plus and minus tolerances, its
series resistance, the inductor type (fixed or variable).
It can optionally include the part number, or a failure
message. Each entry is terminated by a semicolon. The
Inductor options are described in Table 1-20 on
page 1-45.
Examples:
INDUCTOR
L1 10p 5 5 10 F;
"L2" 10u 5 5 10 V NT PN"349211A" "Tuning inductor"
Option Description
<dev> Name of the inductor (48 characters maximum).
<val> The value of the inductor, in Henries.
<+tol> and <-tol> Specify the plus and minus tolerances of the inductor, as a percentage of its value; both are
specified as positive numbers.
<series-R> The value of the series resistance, in ohms, of the inductor.
F The inductor is fixed.
V The inductor is variable.
NT The device is not tested.
PN<part number> Part number of the inductor (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the inductor (40 characters maximum, must be in quotes).
Jumper
The JUMPER keyword indicates a list of jumper entries.
The device description includes: the jumper name, if it
is closed or open, and optionally its part number, or a
failure message or both. The Jumper options are
described in Table 1-21 on page 1-47.
<device> <type>;
<device> <type> <options>;
<device> <type> <component>;
<device> <type> <options> <component>;
<device> is a <string constant>
Examples:
JUMPER
"JMP1" CLOSED;
JMP2 O NT;
"JMP3" OPEN NT PN"123-456" "Jumper installed later";
Option Description
<device> Name of the jumper (48 characters maximum).
O or OPEN The jumper is open.
C or CLOSED The jumper is closed.
NT The device is not tested.
PN<part number> Part number of the jumper (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the jumper (40 characters maximum, must be in quotes).
Node Library
The NODE LIBRARY keyword indicates a list of
node-oriented library entries. The device description
includes the device name. To specify that no test should
be generated for the device set the no test (NT) flag. You
can optionally include the device's library path name
and a failure message. The part number of the device is
only optional if you set the no test flag. Other options
include setting the status of flags such as safeguard off.
The Node Library options are described in Table 1-22
on page 1-48.
<device>;
<device> <options>;
<device> <component>;
<device> <options> <component>;
<device> is a <string constant>
Example:
NODE LIBRARY
filter PN"custom_lib/filter"NS"functional device";
whole NS"functional device";
Option Description
<device> Name of the node-oriented library device (48 characters maximum).
NT The device is not tested.
NS Safeguard information is not needed for this device.
Option Description
PN<part number> Part number of the device (24 characters maximum, no spaces allowed, must be in quotes). If not
specified, the part number is assumed to be the device name.
PN<path/part_number> The path for library for the specified device (must be in quotes).
<failure message> Failure message associated with the device (40 characters maximum, must be in quotes).
PIN LIBRARY
<device>;
<device> <options>;
<device> <options> PN<part number>;
<device> <options> PN<part number> <interconnect test>;
<device> <options> PN<part number> <interconnect test> <failure message>;
Example:
PIN LIBRARY
U28 PN"74wb989";
AND2 PN"7400" "AND2 located at A-3";
RP1 NT PN"/net/parts/library/852-93444" "RP1 FAILED";
CHA PN"/net/cluster/library/line"NS"Channel A FAILED";
U21 PN"su812" TS"1149_1" SCAN LIB BSDL "su812bsdl" PKG"dip22"
U1 NT PN"8374" TS"1149_1" TAPONLY BSDL"74ct8374" PKG"DW_PACKAGE"
Option Description
<device> Name of the device (48 characters maximum).
NT The device is not tested (VCL and boundary-scan tests are not generated).
NS Safeguard information is not needed for the VCL device.
TJ The device will be tested with TestJet.
LIB The device will also be tested with a library test. This is used for boundary scan and TestJet.
CC The device will be tested with Connect Check.
PN<part number> Part number of the VCL device (24 characters maximum, no spaces allowed, must be in quotes).
This field is optional if the device is not tested.
PN<path/part_number> The library path name for the VCL device. This field is optional if the device is not tested.
TS"1149_1" Specifies that test standard 1149_1 will be used for the InterconnectPlus test.
TAPONLY The device might be used as part of a boundary-scan-part chain, but no interconnect or connect
tests will be generated (Test Access Points ONLY).
Option Description
INTERCONNECTONLY Pins on the device can be used in the interconnect test for the boundary-scan-part chain; no
connect tests are generated.
SCAN Interconnect and connect tests will be generated.
<bsdl_id> Part number of the device library file and optional pathname.
<pkg_type> The package type of the device.
<failure message> Failure message associated with the device (40 characters maximum, must be in quotes).
Potentiometer
The POTENTIOMETER keyword indicates a list of
potentiometer entries. The device description includes:
the potentiometer name, its resistance, plus and minus
tolerances, and optionally its part number, or a failure
message, or both. The Potentiometer options are
described in Table 1-24 on page 1-54.
Examples:
POTENTIOMETER
"R109" 10k 50 50;
R2 1000 10 10 "located at P11";
"R63" 100 5 5 NT"part of voltage divider";
Option Description
<device> Name of the potentiometer (48 characters maximum).
<value> The value of the potentiometer.
<+tol> and <-tol> Plus and minus tolerances of the potentiometer; both are specified as positive numbers.
NT The device is not tested.
PN<part number> Part number of the potentiometer (24 characters maximum, no spaces allowed, must be in
quotes).
<failure message> Failure message associated with the potentiometer (40 characters maximum, must be in quotes).
Resistor
The RESISTOR keyword indicates a list of resistor
entries. The device description includes: the resistor
name, its resistance, plus and minus tolerances, the
resistor type (fixed or variable), and optionally its part
number and failure message. The Resistor options are
described in Table 1-25 on page 1-56.
Examples:
RESISTOR
"R1" 10k 5 5 F;
R2 10M 25 25 V PN"09837-88394";
"R3" 10M 25 25 V NT PN"09837-88394" "DO NOT adjust resistor";
Option Description
<device> Name of the resistor (48 characters maximum).
<value> The value of the resistor, in ohms.
<+tol> and <-tol> Specify the plus and minus tolerances of the resistor; both are specified as positive numbers.
F The resistor is fixed.
V The resistor is variable.
NT The device is not tested.
PN<part number> Part number of the resistor (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the resistor (40 characters maximum, must be in quotes).
Examples:
SWITCH
"SW1"12; ! Switch 1 closed pin 1 to pin 2.
SW2 1 OFF; ! Switch 2 open, no closed contacts.
SW3 1 2 NT "Channel Selector";! Switch 3 closed and not tested.
Option Description
<device> Name of the switch (48 characters maximum)
<common-pin> The COMMON pin in the switch.
<contact-pin> The CONTACT pin in the switch.
OFF The switch is OFF; the contacts are open.
NT The device is not tested.
PN<part number> Part number of the switch (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the switch (40 characters maximum, must be in quotes).
Transistor
The TRANSISTOR keyword indicates a list of
transistor entries. The device description includes: the
transistor name, its high and low beta values, its type
(npn or pnp), and optionally a part number, or a failure
message, or both. The Transistor options are described
in Table 1-27 on page 1-60.
TRANSISTOR
<device> <hi-beta> <lo-beta> <type>;
<device> <hi-beta> <lo-beta> <type> <options>;
<device> <hi-beta> <lo-beta> <type> <component>;
<device> <hi-beta> <lo-beta> <type> <options> <component>;
Examples:
TRANSISTOR
"Q1" 200 50 N;
Q2 200 50 P "Q2 located at C5";
"Q3" 200 50 N PN"1854-0056" "pre-amp";
"Q4" 250 50 P NT "Not Tested in-circuit";
Option Description
<device> Name of the transistor (48 characters maximum).
<hi-beta> and <lo-beta> Specify the high and low limits for the transistor beta.
N The transistor is an NPN.
P The transistor is a PNP.
NT The device is not tested.
PN<part number> Part number of the transistor (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the transistor (40 characters maximum, must be in quotes).
Zener
The ZENER keyword indicates a list of zener entries.
The device description includes: the zener name, its
voltage, plus and minus tolerances, and optionally a part
number, or failure message, or both. The Zener options
are described in Table 1-28 on page 1-61.
ZENER
<device> <voltage> <+tol> <-tol>;
<device> <voltage> <+tol> <-tol> <options>;
<device> <voltage> <+tol> <-tol> <component>;
<device> <voltage> <+tol> <-tol> <options> <component>;
Example:
ZENER
"CR50" 5.6 5 5 "located at A7";
Option Description
<device> Name of the zener (48 characters maximum).
<voltage> The breakdown voltage, in volts, of the zener.
<+tol> and <-tol> Specify the plus and minus tolerances of the zener, as a percentage of the zener's value; both
are specified as positive numbers.
Option Description
NT The device is not tested.
PN<part number> Part number of the zener (24 characters maximum, no spaces allowed, must be in quotes).
<failure message> Failure message associated with the zener (40 characters maximum, must be in quotes).
Undefined Nodes
This is a temporary block for devices which have not NODES lists all nodes that are not listed under Devices
been defined by a device definition. Undefined devices or Connections.
must be resolved before the board file can be compiled.
Example 1-21 NODES syntax:
Example 1-20 UNDEFINED syntax:
NODES
UNDEFINED <node_id>
<device name> NT <node_id>
<device name> Specifies the name of the <node_id> Specifies the name of the node.
device which has been referenced in a
connection statement, but has not been Examples:
defined by a device definition. NODES
VCC "Main Power Bus";
Example: V+ "Aux Power Bus";
UNDEFINED BIAS "Converter Reference Level";
U11 NT;
CR4 NT;
Keyword Pin
Diode A(node), C(athode)
Zener A(node), C(athode)
Transistor E(mitter), B(ase), C(ollector)
FET S(ource), G(ate), D(rain)
Connector Flexible
Switch Flexible
NOTE
Each PIN_MAP entry must be terminated by a
semicolon.
Dangling Pins (DANGLING PIN) shows an empty string ("") for its
node.
Dangling pins are pins that are not defined as being
connected or unconnected. Dangling pins can appear in Example 1-25
both the CONNECTIONS and DEVICES blocks. If a
board translator, such as translate cad cannot find a DEVICES
connection definition for a pin, this pin is defined as RP1
dangling. The DANGLING PINS category in the 1.VCC
CONNECTIONS block lists all the device.pins that are 2.VCC
3.VCC
not defined in the CONNECTIONS block. A dangling 4.VCC
pin in the DEVICES block appears as a pair of empty 5.DATA0
quotes (""). Dangling pins are treated as unconnected 6.DATA1
pins. For examples, see both Device Definitions on 7.DATA2
page 1-33 and Connections on page 1-66. 8.DATA3;
R2
1.NC
Devices 2."" ! A dangling pin
The DEVICES keyword starts a list of the nodes
connected to each device pin. It is the complementary Critical Pins
representation of CONNECTIONS. The board file can
contain the DEVICES list, or the CONNECTIONS list, The CRITICAL PINS keyword starts a list of the device
or both. pins that require short wire length due to sensitive or
high speed measurements.
The device pin and the node name are separated by a
period (.). All pin.node combinations must be separated Example 1-26
by at least one blank, and each device pin.node set is
terminated by a semicolon. CRITICAL PINS
U102.12
Pins that are defined as unconnected show the Y1.3;
UNCONNECTED PIN id for their nodes. Any pin that
was not defined as connected or unconnected
The order of the statements specifies the order in which Device Node Preconditioning
the operations are done. For example, refer to the
You can specify to disable or condition a node or a list
ordering of the following statements:
of nodes of a node-oriented device. Preconditioning
disable device U1 for U3 information about each node is defined in the device's
disable device U2 for U3 test. The Device Node Preconditioning options are
disable device U4 for U3
described in Table 1-30 on page 1-71.
Disabling will occur for U1 first, followed by U2, and
finally disabling U4, for testing device U3.
If you are adding a DISABLING INFORMATION
block, it must be located as the last block in the board
file, before the END statement. The DISABLING
INFORMATION block uses the previous definitions
listed in the DEVICES, NODES, and CONNECTIONS
blocks.
Each of these preconditioning statements is described in
the following sections.
Examples:
disable nodes lda on custom_dev
condition nodes out1, out2, out3 on U1 for U2, U3
disable nodes "out1" on "U1" for U5, U6
Option Description
<node-id> Node of a node library that will be preconditioned for the device under test.
<device> A digital device under test that requires preconditioning for testing.
ALL All devices tested require preconditioning.
ALL BUT All devices tested, except those listed, require preconditioning.
<node library> Digital device defined as a node library. This device will be preconditioned for the device under
test.
Option Description
<pin-id> Specifies a pin of a pin library that will be preconditioned for the device under test.
<device> This is a digital device under test that requires preconditioning for testing.
ALL All devices tested require preconditioning.
ALL BUT All devices tested, except those listed, require preconditioning.
<pin library> The digital device that has been defined as a pin library. This device will be preconditioned for the
device under test.
condition device <library> for <device Table 1-32 Board-level device preconditioning options
list>
disable device <library> for <device list> Option Description
<device list> can be: <device> Device under test requires preconditioning
ALL for testing.
ALL BUT <device>, <device>, . . . <device>
<device> ALL All devices tested require preconditioning.
<device>, <device>
<device>, <device>, . . . <device> ALL BUT All devices tested, except those listed,
require preconditioning.
<device> and <library> are <string constants>
<library> Digital device that has been defined as
Examples: either a pin library or a node library. This
disable device U1 for U2, U3
device will be preconditioned for the device
condition device U5 for U2
disable device "U1" for "U2", "U3" under test.
Examples:
set "en_out" to "1" family TTL for U1, U2, U3
set en_out to 0 for U4
set "LGB" family CMOS to T for U5, U6
Option Description
<node-id> Specifies a node on the board that will be preconditioned for the device under test.
<state> The state that the node will be set to. T toggles the state of the node.
ALL All devices tested require preconditioning of the node.
Option Description
ALL BUT All devices tested, except those listed, require preconditioning.
<family-id> Name of the logic family associated with the node.
Boundary Scan Chains Boundary Scan Override turned on the global options
and you need to list the board object file (board.o).
This section lists the boundary scan chains. To make this
section appear in the board file, you need to have
Example:
BOUNDARY SCAN CHAIN
u1_u4
TDI C_TDI
TDO C_TDO
TCK C_TCK
TMS C_TMS
DEVICES
u1, u2, u3, u4;
End
The End keyword marks the end of the board file, the
pin mapping table, and the device options. It has no
parameters. If more commands follow the End keyword,
they are ignored by the system.
HEADING
"This is an example of a 3070 Family BCF syntax";
GLOBAL OPTIONS
Fixture Type EXPRESS;
Fixture Size BANK2;
Top Probes Allowed OFF;
Heavy Probe Force 8;
Light Probe Force 4;
Mechanical Density Threshold 800;
Vacuum Density Threshold 104;
Autofile 2395;
Test Strategy COMBINATIONAL;
WireWrapping AUTO;
Metric Units OFF;
Common Lead Resistance 0.1;
!(ohms) from probe to component.
Common Lead Inductance 1u;
!(Henries) from probe to component.
Capacitance Compensation ON;
IPG Digital Resistance Threshold 50;
!(ohms)
Preconditioning Levels 2;
Additional Board Voltage 20;
Boundary Scan Overdrive OFF;
Boundary Scan Disable ON;
Boundary Scan Chain Override ON;
DEVICE OPTIONS
Tolerance Multiplier 5.0;
Remote Sensing ON;
Fuse Threshold 3.0;
Diode Current 1m;
Zener Current .5m;
Adjust ACCURATE;
Upstream Disable ON;
Upstream Condition OFF;
END
FAMILY OPTIONS
TTL
Drive High3.5;
Drive Low 0.2;
Receive High 2.0;
Receive Low 0.8;
Edge Speed 100;
Open Input Default X;
Load NONE;
FIXED NODE OPTIONS
gnd Family ttl is 0;
vcc1 Family ttl is 1;
gnd GROUND;
vcc1 Supply 1 At 5 Volts, 0.5 Amps;
GPRELAY OPTIONS
GP "U102-7", "gnd";
CONTROL; ACCESS;
LIBRARY OPTIONS
custom_lib
/standard/library/ttl
/standard/library/cmos;
CARD OPTIONS
TTL
CHANNEL; HYBRID;
UNCONNECTED PIN NC;
CAPACITOR
C101 2.2u 10 10 f "C101 failed";
OVERRIDE Tolerance Multiplier 1.0;
C102 10u 10 10 f "C102 failed";
OVERRIDE Tolerance Multiplier 1.0;
CONNECTOR
CONN101 NT "Ground connector";
DIODE
LED101 800m 300m "Monitors output pulses";
JUMPER
J101 Closed "Jumper 101 failed";
NODE LIBRARY
pulse_width NS "Measure pulse width of the output signal";
PIN LIBRARY
U101 PN"74ls02" "quad NOR gate";
U102 PN"ne555" "P101 must be centered";
POTENTIOMETER
P101 50k 10 10 "Clock Frequency Adjust";
RESISTOR
R101 10k 5 5 f "Time constant for one-shot";
R102 2.2k 5 5 f;
R103 1k 5 5 f;
OVERRIDE Remote Sensing On;
R104 10k 10 10 f "Reference for timer";
OVERRIDE Tolerance Multiplier 1.0;
R105 47 5 5 f "Pull-up";
SWITCH
S101 1 2 "Clock signal switch";
TRANSISTOR
Q101 100 40 n "2n4401";
NODES
VCC1 "Main Power Bus";
GND "Ground";
PIN_MAP
CAPACITOR
P 1
N 2;
DIODE
1 A
2 C;
POTENTIOMETER
3 W;
TRANSISTOR
1 E
2 B
3 C;
END
CONNECTIONS
"c101-2"
C101.2
R101.2
U101.5
U101.6;
clock1
S101.1
U102.3;
gnd
C102.2
CONN101.1
CONN101.2
CONN101.3
CONN101.4
CONN101.5
CONN101.6
CONN101.7
CONN101.8
Q101.E
U101.7
U102.1;
input1
S101.2
U101.3;
"led101-c"
J101.2
LED101.C;
output1
J101.1
Q101.C
R103.2;
"r102-2"
Q101.B
R102.2;
"r105-2"
LED101.A
R105.2;
"u101-1"
C101.1
U101.1;
"u101-4"
R102.1
U101.2
U101.4;
"u102-2"
C102.1
P101.W
U102.2
U102.6;
"u102-7"
P101.1
R104.2
U102.7;
vcc1
R101.1
R103.1
R104.1
R105.1
U101.14
U102.4
U102.8;
NC
U101.8
U101.9
U101.10
U101.11
U101.12
U101.13
U102.5
P101.2;
DEVICES
C101
1."u101-1"
2."c101-2";
C102
1."u102-2"
2.gnd;
CONN101
1.gnd
2.gnd
3.gnd
4.gnd
5.gnd
6.gnd
7.gnd
8.gnd;
LED101
A."r105-2"
C."led101-c";
J101
1.output1
2."led101-c";
U101
1."u101-1"
2."u101-4"
3.input1
4."u101-4"
5."c101-2"
6."c101-2"
7.gnd
8.NC
9.NC
10.NC
11.NC
12.NC
13.NC
14.vcc1;
U102
1.gnd
2."u102-2"
3.clock1
4.vcc1
5.NC
6."u102-2"
7."u102-7"
8.vcc1;
P101
1."u102-7"
2.NC
W."u102-2";
R101
1.vcc1
2."c101-2";
R102
1."u101-4"
2."r102-2";
R103
1.vcc1
2.output1;
R104
1.vcc1
2."u102-7";
R105
1.vcc1
2."r105-2";
S101
1.clock1
2.input1;
Q101
B."r102-2"
C.output1
E.gnd;
CRITICAL PINS
s101.1
q101.C;
DISABLING INFORMATION
SET "u101-1" TO 1 FOR ALL;
SET "u101-4" TO 0 FAMILY TTL FOR u102;
CONDITION PINS 2,4,5 ON u101 for ALL;
DISABLE DEVICE u102 for u101;
BOUNDARY SCAN CHAINS
u1_u4
TDI C_TDI
TDO C_TDO
TCK C_TCK
TMS C_TMS
DEVICES
u1, u2, u3, u4;
END
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the structure and syntax of the
board_xy file
Prerequisites
There are no prerequisites associated with using this
chapter.
Overview This chapter describes the structure and syntax of the Modifying/ Viewing the Data in the board_xy File
board_xy file. This file contains X-Y data, such as
device pin and probe locations, of the circuit board to be NOTE
tested.
Do not edit board test files with shell editors such
as vi. These editors do not update the file's header
NOTE
information, such as the time-stamp, that Agilent
Using the board_xy file in the test generation 3070 programs use. Instead, use the BT-BASIC
process and to customize your test fixture files is editor to edit board test files.
described in Chapter 3, Creating Board
Information in Test & Fixture Development.
1 Modify the board_xy File from Board Consultant.
The Fixture Generation Software uses the X-Y data a Modify entry forms.
from the board_xy.o file to produce the fixture.o
file. b Compile board_xy file by clicking on Final
Compile/Verify.
The test generation (IPG) step of the test generation
process uses the node and location specifications of the
board_xy.o file.
NOTE
See Chapter 2, Agilent Board Consultant in Test
NOTE Development Tools for more information on
modifying entry forms.
Optional board_xy file statements are not
described in this chapter. These statements are
available with optional software packages such as
the PanelTest option. For information about such
statements, refer to the documentation in the
optional package.
What is a board_xy The board_xy file contains X-Y data of the circuit OUTLINE
board to be tested. This data includes X-Y coordinates TOOLING
File? of the device pins, board outline, keepout areas, and KEEPOUT
NODE
tooling pin holes. X-Y locations of device.pins are listed ALTERNATES
in the OTHER section. X-Y locations that are associated EXTRAS
with a node are listed in the NODE section. Also OTHER
included in the board_xy file are probe type and ALTERNATES
location attributes. This data is in a special format used EXTRAS
by the 3070 family of board test systems. You can use GROUP
DEVICES
data from a CAD system, or from a digitize process. END
CamCAD translates X-Y location information into the
format used by the 3070 Family, and stores that data in The board_xy file may specify the data listed in Table
the <file>.brd and <file>.bxy files. You must then 2-1.
rename the <file>.brd and <file>.bxy files to board
and board_xy, respectively.
NOTE
CamCAD is explained in Chapter 3, Creating
Board Information in Test & Fixture
Development.
Data Description
Board OUTLINE The points that define the corners, at the maximum extents, of the board. The coordinates of the
points can be listed in either a clockwise or counterclockwise direction starting at the lower left
corner.
TOOLING hole A list of all tooling hole locations.
locations
Board PLACEMENT The position of the board on the test fixture as X and Y offsets from the fixture origin to the board
origin. The placement specification also includes a rotation of the board.
KEEPOUT areas Areas where no personality pins or probes should be placed due to something (such as a device
on the board) blocking that area of the fixture. Keepout areas are specified as coordinates of the
outside points (at least three) of a polygon that describes the area. The coordinates of the points
can be listed in either a clockwise or counterclockwise direction starting at the lower left corner.
NO_PROBE nodes and Nodes and locations that cannot, or should not, be probed by the fixture.
locations
NO_MANUAL nodes Nodes and locations that are not accessible with the guided probe.
and locations
NO_ACCESS nodes Nodes and locations that cannot, or should not, be probed by the fixture, and are not accessible
and locations with the guided probe. EXTRA locations cannot be specified as NO_ACCESS.
LONG probes Nodes that require long probes for dual-stage testing (not allowed for the SimPlate fixture).
50MIL probes Specifies a 50 mil probe. In the case of long probes, 100 mil probes will be used even if 50 mil is
specified.
Data Description
CRITICAL nodes and Nodes and locations that require short wire lengths due to sensitive or high-speed
locations measurements. Nodes probed from the top side of an Express Cassette fixture cannot be
specified as CRITICAL.
MANDATORY locations Forces the use of the location with this attribute. You can specify multiple MANDATORY locations
on a node; all mandatory locations on a node will be wired to the same personality pins. If Probe
Select cannot use the mandatory location, it will use another of the alternates and issue a notice.
PREFERRED locations This location should be used unless it causes a mechanical conflict such as density or
accessibility. PREFERRED overrides all electrical considerations. You can specify more than one
location as PREFERRED. Probe Select will choose from these preferred locations first before
selecting an alternate location.
EXTRA locations Locations that are labeled as EXTRA will not be used for probe locations but will be passed on to
fixture.o as alternates so that they can be considered for use in the future.
TOP locations Probe locations that are only accessible from the top side of the board under test. Nodes which
are probed from the top side of the fixture cannot be specified as CRITICAL.
UNRELIABLE locations Probe locations that should only be used if no others are available. These locations are physically
unreliable.
BOTH locations Probe locations that are accessible from the top and bottom sides of the board under test.
GROUP Groups of device.pins that are to be wired together. Groups must be labeled MANDATORY.
Programs that Use The test and fixture generation process for the Agilent Because X-Y locations are not used for the SimPlate
No-Wire Technology, XG-50, SimPlate Express, XG-50 fixture, you can use asterisks, **, in place of X-Y
the board_xy File Cassette, and the Express Cassette fixtures requires a locations in the board_xy file. See the syntax definition
board_xy file. You can optionally use a board_xy file of the ALTERNATES - (OTHER),
to generate the fixture files and reports for the SimPlate EXTRAS - (OTHER), and GROUPS statements later in
fixture to specify nodes that cannot, or should not, be this chapter.
probed.
The programs listed in Table 2-2 create or use the
If you want to develop an edge connector only test or board_xy and board_xy.o files during the test and
use Groups for special wiring, you must provide a fixture generation process.
board_xy file no matter which fixture you are using.
Program Description
CamCAD Translates X-Y location information into the format used by the 3070 Family, and stores that data in the
<file>.brd and <file>.bxy files. (You must rename the <file>.brd and <file>.bxy files to
board and board_xy, respectively.)
BOARD Determines the position (X-Y placement) of the board on the fixture using the board outline coordinates
PLACEMENT from the board_xy file. You can manually specify a board placement in the board_xy file. If Board
Placement finds a placement specified in board_xy it will use it; otherwise, Board Placement will place the
board automatically.
PROBE Uses location and probe information from board_xy, and board information from board to determine the
SELECT best type of probe and probing location for each node. You can influence the selection of probes and
locations by editing the board_xy file.
Program Description
IPG Uses node accessibility information when writing device tests.
PLOT Creates a file from the data in the board_xy file that you can copy to a plotter to verify the data in the
GENERATOR board_xy file.
WEB
SERVICE
board_xy File This section describes the syntax of the board_xy file. would specify units as inches, and scale as 0.01. The
The syntax of the board_xy file is not case sensitive and SCALE and UNITS values will be used when the
Syntax each line of information (not list headings) must end board_xy file is compiled to convert all units to tenth
with a semicolon. Node and device.pin names cannot mils for the board_xy.o file. If you don't specify any
contain colons (:) or tildes (~). The board_xy syntax scale, a scale of 1 will be used.
includes these keywords:
Scale Syntax:
■ SCALE scale <value>;
■ UNITS <value> = scale factor for the numeric
■ INCLUDE values read from the input file.
■ PLACEMENT
Example:
■ OUTLINE
■ TOOLING scale .01;
■ KEEPOUT
■ NODE Units
■ ALTERNATES (NODE)
■ EXTRAS (NODE) The UNITS keyword specifies the units of the X and Y
■ OTHER coordinates. The SCALE and UNITS values will be
■ ALTERNATES (OTHER) used when the board_xy file is compiled to convert all
■ EXTRAS (OTHER) units to tenth mils for the board_xy.o file. If you don't
■ GROUP specify any units, inches will be used.
■ DEVICES Units Syntax:
■ END
UNITS <unit>;
Scale
<unit> can be:
The SCALE keyword specifies a scale factor that the inches
input coordinates will be multiplied by, to put them in mils
the specified units. For example, if the input data is in cm
hundredths of inches (500 = 5.00 inches), then you mm
Include Placement
The INCLUDE keyword allows the contents of a Use the PLACEMENT keyword to instruct Board
specified file to be inserted at that point in the file. Placement where to position the board on the fixture.
Include statements can be nested to any depth; this is
useful for incorporating standard options and NOTE
configurations into new board files. When the new file For more information, see Chapter 4, Generating
is stored, the information from the include file becomes Tests and Fixture Files in Test & Fixture
part of the new file, and the link to the include file is Development.
lost. The include filename can be a relative or an
absolute pathname. The filename must be enclosed in
quotes. The PLACEMENT keyword specifies the position of
the board as X and Y offsets from the fixture origin to
Include Syntax: the board origin. The PLACEMENT keyword also
INCLUDE <filename>; specifies the rotation of the board. The placement
specification in the board_xy file must include all three
<filename> is a <string expression> parameters X offset, Y offset, and rotation. The rotation
Example: is applied first, then the X and Y offsets. Placement
options are described in Table 2-3.
INCLUDE "/board/std_options";
Outline
Table 2-3 PLACEMENT options The OUTLINE keyword specifies a series of points that
define the corners, at the maximum extents, of the
Option Description board. List the bottom left corner of the board first; then
continue listing the coordinates of the corners in either a
<x_offset> x_offset of the board origin with respect to
clockwise or counterclockwise around the board.
the fixture origin.
You do not need to list the origin again at the end; the
<y_offset> y_offset of the board origin with respect to compiler automatically completes the polygon. Circular
the fixture origin. board outlines must be entered as polygons. Table 2-4
<rotation> Rotation of the board in degrees. The describes Outline options.
positive X axis is 0 degrees. See Figure
2-1. Example 2-2 OUTLINE syntax
OUTLINE
Figure 2-1 <x_coord>, <y_coord>
<x_coord>, <y_coord>
<x_coord>, <y_coord>
. . . . , . . . .
. . . . , . . . .
<x_coord>, <y_coord>;
Example:
OUTLINE
0, 0
150000, 0
150000, 120000
60000, 120000
60000, 110000
0, 110000;
Figure 2-2
Tooling
The TOOLING keyword marks the beginning of a list of
all tooling holes. This list is needed to avoid conflicts
with personality pins. Tooling options are described in
(0, 0) (150000, 0) Table 2-5.
TOOLING
<size> <x_coord>, <y_coord>;
<size> <x_coord>, <y_coord>;
<size> <x_coord>, <y_coord>;
. . . . . . , . . . .
. . . . . . , . . . .
<size> <x_coord>, <y_coord>;
Example:
TOOLING
3750 2010,2000;
3750 2000,13000;
Option Description
<size> Diameter of the tooling pin hole. This value can be 2000 or 3750.
<x_coord> x_coordinate of the tooling hole.
<y_coord> y_coordinate of the tooling hole.
ALTERNATES
<alternate_info>;
. . .
<alternate_info>;
<alternate_info> can be:
<x_coord>, <y_coord>
<x_coord>, <y_coord> <options>
<x_coord> & <y_coord> are <numeric constants>
NO_PROBE
NO_ACCESS
UNRELIABLE
PREFERRED
MANDATORY
CRITICAL
EXTRA
Example:
NODE Data0
ALTERNATES
23400,56700 BOTH;
34500,67800 MANDATORY;
45600,78900 NO_PROBE;
55600,78900 PREFERRED NO_MANUAL;
65600,78900 NO_ACCESS;
Option Description
<x_coord> x_coordinate of the node with respect to the board origin.
<y_coord> y_coordinate of the node with respect to the board origin.
TOP Location is accessible only from the top side of the board.
BOTH Location is accessible from the top and bottom sides of the board.
50MIL Forces the use of a 50 mil probe instead of a 100 mil probe for that location. If the same location
is specified as LONG, a 100 mil probe is used even if 50 mil is specified and a notice is issued.
NO_PROBE This location cannot, or should not, be probed.
NO_MANUAL Location is not accessible with the guided probe.
Option Description
NO_ACCESS Location should not, or cannot, be probed by the fixture, and is not accessible with the guided
probe.
UNRELIABLE Location that should be used only if no other locations are available. These locations are
physically unreliable.
PREFERRED This location should be used unless it causes a mechanical conflict such as density or
accessibility; preferred overrides all electrical considerations. You can specify more than one
location as preferred; Probe Select will choose from the preferred locations first. If a preferred
location cannot be used, Probe Select will use another alternate location.
MANDATORY Forces the use of the location with this attribute. You can specify multiple mandatory locations
on a node; all mandatory locations on a node will be wired to the same personality pins. You can
force the use of a top side location by specifying it as mandatory. If Probe Select cannot use the
mandatory location, it will use another alternate location and issue a notice.
CRITICAL Location requires a short wire due to a sensitive or high-speed measurement.
EXTRA Locations that are labeled as extra will not be used for probe locations but will be passed on to
fixture.o as alternates so that they can be considered for use in the future.
Extras - (Node) considered for future use. The Extras options are
described in Table 2-9 on page 2-20.
The EXTRAS keyword, when used in conjunction with
NODE keyword, declares extra probe locations
associated with that node, but not associated with a
device.pin. Extra locations are not used for probes, but
are passed on to fixture.o as alternates to be
EXTRAS
<extra_info>;
<extra_info>;
. . .
<extra_info>;
Example:
NODE Data0
EXTRAS
12300,45600;
23400,56700 BOTH;
34500,67800 TOP;
45600,78900 50MIL;
55600,78900 NO_MANUAL
Option Description
<x_coord> <y_coord> X and Y coordinates of the node with respect to the board origin.
NO_MANUAL Location is not accessible with the guided probe.
TOP Location is accessible only from the top side of the board.
BOTH Location is accessible from the top and bottom sides of the board.
50MIL Forces the use of a 50 mil probe instead of a 100 mil probe for that location. If the same location
is specified as LONG, a 100 mil probe is used even if 50 mil is specified and a notice is issued.
Alternates - (Other)
The ALTERNATES keyword, when used in conjunction
with the OTHER keyword, marks the beginning of a list
containing X-Y locations, and their accessibility, which
ALTERNATES
<alternate_info>;
. . .
<alternate_info>;
<alternate_info> can be:<x_coord>, <y_coord>
<x_coord>, <y_coord> <dev.pin>
<x_coord>, <y_coord> <options>
<x_coord>, <y_coord> <dev.pin> <options>
<x_coord> and <y_coord> are <numeric constants>
<dev.pin> is a <string constant>
<options> can be:
<side>
<size>
<status>
<side> <size>
<side> <status>
<size> <status>
<side> <size> <status>
<side> can be:
TOP
BOTH
NO_PROBE
NO_ACCESS
UNRELIABLE
PREFERRED
MANDATORY
CRITICAL
EXTRA
Example:
OTHER
ALTERNATES
10000, 20000 U101.1 NO_PROBE;
10000, 21000;
10000, 22000 U101.3 UNRELIABLE;
10000, 23000 U101.4 NO_ACCESS;
20000, 23000 U101.5 MANDATORY;
OTHER
ALTERNATES
7000, 9000 U5.1;
** U6.1;
Option Description
<x_coord> X andY coordinates of the node with respect to the board origin. For the SimPlate fixture you can specify
<y_coord> a default location by using asterisks (**) for the X and Y coordinates.
TOP Location is accessible only from the top side of the board.
BOTH Location is accessible from the top and bottom sides of the board.
50MIL Forces the use of a 50 mil probe instead of a 100 mil probe for that location. If the same location is
specified as LONG, a 100 mil probe is used even if 50 mil is specified and a notice is issued.
NO_PROBE This location cannot, or should not, be probed by the fixture.
NO_MANUAL Location is not accessible with the guided probe.
Option Description
NO_ACCESS Location should not, or cannot, be probed by the fixture, and is not accessible with the guided probe.
UNRELIABLE Location that should be used only if no other location is available. These locations are physically
unreliable.
PREFERRED This location should be used unless it causes a mechanical conflict such as density or accessibility;
PREFERRED overrides all electrical considerations. You can specify more than one location as
PREFERRED; Probe Select will choose from preferred locations first. If a preferred location cannot be
used, Probe Select will use another alternate location.
MANDATORY Forces the use of the location with this attribute. You can specify multiple MANDATORY locations on a
node; all mandatory locations on a node are wired to the same personality pins. You can force the use of
a top side location by specifying it as MANDATORY. If Probe Select cannot use the mandatory location, it
uses another alternate location and issues a notice.
CRITICAL Location requires a short wire due to a sensitive or high-speed measurement.
EXTRA Locations that are labeled as EXTRA will not be used for probe locations but will be passed on to
fixture.o as alternates so that they can be considered for use in the future.
Extras - (Other)
The EXTRAS keyword, when used in conjunction with
the OTHER keyword, marks the beginning of a list
containing X-Y locations of extra device.pins and their
accessibility. These locations will be passed on to
fixture.o as alternates to be considered for probing
locations in the future. The Extras options are described
in Table 2-11 on page 2-25.
EXTRAS
<extra_info>;
. . .
<extra_info>;
<extra_info> can be:
<x_coord>, <y_coord>
<x_coord>, <y_coord> <options>
<x_coord>, <y_coord> <dev.pin>
<x_coord>, <y_coord> <dev.pin> <options>
<x_coord> & <y_coord> are <numeric constants>
<dev.pin> is a <string constant>
<options> can be:
<side>
<size>
<side> <size>
NO_MANUAL
<side> can be:
TOP
BOTH
<size> can be:50MIL
Examples:
OTHER
EXTRAS
10000, 20000 U101.1 TOP;
10000, 21000;
10000, 22000 U101.3 BOTH;
10000, 23000 U101.4 NO_MANUAL;
20000, 23000 U101.5 50MIL;
OTHER
EXTRAS
4000, 5000 U7.1;
** U8.1;
Option Description
<x_coord> <y_coord> X and Y coordinates of the node with respect to the board origin. For the SimPlate fixture you can
specify a default location by using asterisks (**) for the X and Y coordinates.
NO_MANUAL Location is not accessible with the guided probe.
TOP Location is accessible only from the top side of the board.
BOTH Location is accessible from the top and bottom sides of the board.
50MIL Forces the use of a 50 mil probe instead of a 100 mil probe for that location. If the same location
is specified as LONG, a 100 mil probe is used even if 50 mil is specified and a notice is issued.
TWISTED of the board; top side devices are not listed. This is for
COAX TestJet and for Board Graphics.
<dev.pin> is a <string constant>
Example:
Examples:
DEVICES
GROUP TWISTED MANDATORY u3 bottom;
u1.1, u2.1; u20 bottom;
u2.2, u3.2;
GROUP COAX MANDATORY
u1.4, u2.4; End
The END keyword marks the end of the board_xy file.
End Syntax:
Table 2-12 GROUP options END
Option Description
TWISTED The grouped locations be wired with a
twisted-pair cable.
COAX The grouped locations be wired with a
coaxial cable.
Devices
The DEVICES keyword marks the beginning of a list of
devices that were designated as being on the bottom side
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the structure and syntax of the
testorder file
Prerequisites
There are no prerequisites associated with using this
chapter.
Introduction The testorder file contains a list of all tests that are a You can edit the testorder file also to influence test
part of this board. The entry for each test includes the generation as shown in Table 3-1.
type of test (resistor, digital, mixed...), the name of the
test, and optional test attributes such as permanent, Table 3-1 Test generation commands
nulltest, and power.
Command Description
The testorder file is an output of IPG. You can,
however, manually create or edit this file. IPG Instructs IPG which tests to not
re-generate during incremental runs. IPG
The testorder file is an input to: IPG, IPG Test will not re-generate tests that are labeled
Consultant, Testplan Generator (TPG), and Module Pin with the permanent keyword.
Assignment (MPA).
Testplan Instructs TPG which tests to include in the
The tests in each category (analog in-circuit, digital...)
Generator testplan. The optional testplan
will be executed in the order in which they are listed in
the testorder file. However, the different categories of (TPG) generation on/off statement also
tests may be listed in different orders depending on how instructs TPG whether or not to generate
the file was generated. a new testplan.
You can edit the testorder file prior to generating the IPG Test Provides a list of tests for which to
testplan to force a testing order. For instance, if the Consultant schedule generation and compilation. IPG
test for R1 would charge a capacitor which would cause Test Consultant will not schedule
the test for R2 to fail, you can force R2 to be tested prior generation or compilation for any tests not
to R1. To do this, edit the testorder file to list resistor listed in the testorder file.
R2 before resistor R1.
Module Pin Provides a list of tests for which resources
Assignment need to be assigned. MPA will not assign
(MPA) resources to any tests not listed in the
testorder file.
Modifying/Viewing the Data in the testorder File d Edit the testorder file.
This chapter describes the syntax of the testorder file
NOTE and shows an example file at the end.
Do not edit board test files with shell editors such
as vi. These editors do not update the file's header NOTE
information, such as the time-stamp, that Agilent Optional testorder file statements (available with
3070 programs use. Instead, use the BT-BASIC optional software packages such as the PanelTest
editor to edit board test files. Option) are not described in this chapter. For
information about such statements, refer to the
documentation in the optional package.
1 Modify the testorder file from IPG Test
Consultant.
a Click the left mouse button on Edit.
b Drag the mouse pointer to select View/Edit
testorder File.
IPG Test Consultant opens a BT-BASIC window
and loads the testorder file into the BT-BASIC
workspace for you to edit.
Testorder Syntax The syntax of the testorder consists of two Statement List
statements; the <statement list> statement, and the
testplan generation on/off statement.
The <statement list> statement consists of one
syntax for all test types. The Statement List options are
described in Table 3-1 on page 3-2.
NOTE
Multiple Board Versions adds skip statements
and version parameters to the testorder file to
control the testing of devices on the versions of a
PC board. These statements and parameters are
not included in this chapter; see Chapter 5,
Multiple Board Versions in Optional Board Test
Applications for details.
<statement list>
Examples:
test jumper "j1"; preshorts
test shorts "shorts"
test capacitor "c1"; characterize
test capacitor "c2"; characterize, permanent
test resistor "r2"
test resistor "r3"; comment
test analog functional "vr1"; power
test digital "u1"; nulltest
test digital "u2"
test connect "u3"; permanent
test analog functional "op_amp"; "special_directory"
test mixed "d_to_a"; permanent
test mixed "u10"; digital, analog, serial, comment
test mixed "u11"; digital, serial
testplan generation on
testplan generation off
Example:
testplan generation off
test mixed "d_to_a"; permanent
test analog functional "vr2"
test analog functional "op_amp"; permanent
.
.
.
test capacitor "c1"
test capacitor "c2"; characterize
test shorts "shorts"
test pins "pins"
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the structure and syntax of the
wirelist file
Prerequisites
There are no prerequisites associated with using this
chapter.
Overview The wirelist.o file contains the fixture wire Viewing the Data in the wirelist File
connections from nodes to the module interface pins.
This file is an output of Module Pin Assignment (MPA) NOTE
and is stored under the local board directory.
Do not edit board test files with editors such as vi.
During fixture generation, MPA assigns nodes to These editors do not update the file's header
module interface pins. These assignments are stored in information, such as the time-stamp, that Agilent
the wirelist.o file. These assignments are listed as 3070 programs use. Use the BT-BASIC editor to
wires from the nodes to the brc location of the interface edit board test files.
pins. Each listing includes the type of resource for the
interface pin.
Viewing the wirelist File from IPG Test Consultant
The wirelist.o file is structured in blocks. There is
one wirelist test block for each test in the testorder a Click the left mouse button on Edit.
file. Each block contains the wire assignments used for
b Drag the mouse pointer to select View/Edit wirelist
that test.
File.
The fixture generation process creates only the object
IPG Test Consultant opens a BT-BASIC window
file, wirelist.o; it does not generate a source file.
and loads the wirelist file into the BT-BASIC
However, you can create a source file, wirelist, from
workspace.
the object file.
Viewing the wirelist File Manually
a Open a BT-BASIC window.
b msi to the board test directory.
c Generate a wirelist source file from the
wirelist.o object file if the wirelist source
file doesn’t exist. Type:
list object "wirelist.o" to "wirelist"
NOTE
MPA is explained in Chapter 4, Generating Tests
and Fixture Files in Test & Fixture Development.
The Wirelist Syntax This section describes the syntax of the wirelist file. ■ wire
■ serial
■ group
ADVICE ■ end group
We recommend you do not edit the wirelist file. ■ strapping
■ end strapping
■ asru module
The multiplexing done by MPA in allocating resources ■ tie
■ ground
for a test is relatively complex. Manually editing this
■ end ground
file could cause problems later on in the board ■ unused
development process. If a modification is required on ■ end unused
the board, use Fixture Consultant to make the changes, ■ interface
modify the specific test, or modify the information in ■ end interface
Board Consultant. Then use IPG Test Consultant to ■ stimulus module
update the board and fixture information. Let the
software manage the system's resources. global
The keywords used in the wirelist syntax are: The global statement marks the beginning of a wirelist
global block. There can be only one global block in a
■ global
■ end global wirelist file; the global block is listed prior to any test
■ relay blocks.
■ end relay
■ test
The end global statement terminates the global block.
■ end test See the definition of the end global statement in this
■ device chapter.
■ end device
■ clock
■ timing module
■ functional
■ include
■ subtest
■ end subtest
relay
Example:
global
relay
wire "R1-2" to 11818 general
wire "BB6-8" to 11819 general
end relay
relay
wire "Node_3" to 10152 general using access
wire "Node_2" to 10151 general using access
end relay
end global
Option Description
<test type> Type of test (digital, analog, mixed, shorts, testjet test. . .)
<test name> Test name.
<mixed option> In a mixed test, specifies the type of resources used. If no option is specified, digital, analog is the
default.
<version label> Version for Multiple Board Versions.
device <device designator>; <side> mux <address number> port <port number>
<device Device under test. <port> Number of the port on the mux
designator> card.
the beginning of the device block. See the definition of <type> can be:
the device statement in this chapter. internal
external
Example 4-13 end device syntax
Example:
end device test digital "U101"
Example: timing module 0
clock internal
device "u150"; top mux 2 port 5 wire "U101-4" to 20221 drive
wire "gnd" to 22365 g .
wire "u150-1" to 22321 g .
wire "u150-2" to 22322 g .
. . . end test
end device
clock
Table 4-3 clock options
The clock statement describes the type of clock used
for a test. The clock statement is only valid within a Option Description
wirelist test block. If no clock statement is present in
the wirelist test block, it is assumed that no clock is <internal> Clock is generated internally.
needed. This statement is required for the digital, and <external> Clock is generated externally.
mixed test types. The clock statement must follow the
test statement, and precede any wire or subtest
statements. The Clock options are described in Table asru module
4-3 on page 4-12.
The asru module statement specifies which module
Example 4-14 clock syntax contains the master asru card used for the test. It allows
SIGLAB signals to be routed between the master asru
clock <type> and hybrid pin cards of any module. asru module can
only be used with ASRU revision C cards and is valid
only for analog, analog functional, and mixed tests. The
statement must follow any functional and test Example 4-16 timing module syntax
statements, and precede any wire or subtest
statements. timing module <module number>
<module number> represents the module that contains <module number> is an <integer from 0 to 3>
the master asru cards.
Example:
Example 4-15 asru module syntax test digital "ram test"
timing module 3
asru module <module number> clock internal
wire "D0" to 21441 drive
<module number> is: <integer from 0 to 3> wire "D0" to 21441 receive
.
Example: .
test analog "r1" .
asru module 1 wire "D3" to 21470 drive
wire "r1.1" to 10968 s wire "D3" to 21470 receive
wire "r1.2" to 11367 i end test
end test
stimulus module
timing module The stimulus module statement specifies the pin card
The timing module statement specifies which module to be wired to ground for each module. It is only valid
is the master timing module for the test. This statement for the connectcheck test type.
is only valid for digital, and mixed test types. The Stimulus module statements must follow functional
timing module statement must follow any functional and test statements, and precede wire statements. The
and test statements, and precede any wire or subtest options are described in Table 4-4 on page 4-15.
statements.
<module number> represents the module that provides
the master timing for the test.
statement can only be used within a wirelist test block, beginning of the subtest. See the definition of the
and must be terminated by the end subtest statement. subtest statement in this chapter.
The end subtest statement terminates the subtest. See
the syntax description of the end subtest statement in Example 4-21 end subtest syntax
this chapter.
end subtest
Example 4-20 subtest syntax Example:
subtest <subtest name> test analog "central_analog_components"
wire "R1-2" to 11422 i
wire "R1-2" to 11431 b
<subtest name> is a string constant wire "BB6-8" to 11442 g
wire "BB6-10" to 11451 l
Example: subtest "card 0"
test analog "central_analog_components" wire "BB6-3" to 11976 a
wire "R1-2" to 11422 i wire "BB6-3" to 11918 s
wire "R1-2" to 11431 b end subtest
wire "BB6-8" to 11442 g subtest "card 1"
wire "BB6-10" to 11451 l wire "BB6-4" to 11976 a
subtest "card 0" wire "BB6-4" to 11917 s
wire "BB6-3" to 11976 a end subtest
wire "BB6-3" to 11918 s end test
end subtest
subtest "card 1"
wire "BB6-4" to 11976 a
wire
wire "BB6-4" to 11917 s The wire statement describes a wire for a test or subtest.
end subtest
end test
Each wire statement identifies a node and a brc that are
wired together. It also indicates the resource type used.
A wire that is specified within a wirelist test block is
end subtest used for that test and all subtests. A wire that is specified
The end subtest statement terminates a subtest in a within a subtest is only used for that subtest. The
general resource is allowed only inside a block
wirelist test block. The subtest statement marks the
delimited by the relay and end relay statements.
Each <brc> can be connected to one of two X-bus paths by the digital compiler of tests which use the
on double-density pin cards if the resource type used is ControlXTP Card, to instruct MPA to assign brc’s in the
s, i, l, a, b, aux, detector high, detector low, or source. same testhead module. See in module <x> (DIGITAL).
One path is called the primary X-bus, which typically is
the path used. The other path is called the alternate CAUTION
X-bus, which can be used if the primary X-bus path is
not available. Each primary X-bus has one alternate.
The following list shows the primary X-bus and its
✸ Do NOT add in module <x> syntax to wire
syntax. Program errors will result.
corresponding alternate in the form (primary, alternate):
(X1, X3), (X2, X4), (X3, X5), (X4, X6), (X5, X7),
(X6, X8), (X7, X1), (X8, X2). Specifying alternate
changes the signal path from using the primary X-bus to
using its alternate X-bus.
Adding via <group brc> to <via brc> in the wiring
statement specifies an extended path using an external
connection in the fixture or fixture adapter between two
brcs. Both brcs must previously be defined in a tie
statement. The extended signal path is as follows:
<node> to <brc>, <brc> to <group brc>, <group brc> to
external connection, external connection to <via brc>,
<via brc> to pin card resource. The <group brc> must be
in the same channel as the <brc> to use this extended
path. If alternate is specified when the statement
contains via <group brc> to <via brc>, the
alternate X-bus applies only to the <via brc>, not <brc>.
The Wire options are described in Table 4-5 on
page 4-20.
The in module <x> syntax is used by the On-Board
Programming (OBP) software in conjunction with the
ControlXTP card. The in module <x> syntax is added
serial2
serial3
serial4
serial5
serial6
serial7
serial8
serial9
serial10
serial11
serial12
serial clock
serial clock receive
clock
clock receive
clock receive frequency
fast clock
trigger
ext <ext#>
acc <acc#> <connection>
general
ground
ccguard
ccground
ccrefnode
ccrefret
<x> can be: letter from A to Z - always at the end of specified wire <node> ... in module <x> statement
<card type> can be:
access
analog
channel
control
hybrid
<ext#> can be: 1, 2, 3, 4, 5, 6, 7, or 8
<acc#> is a numeric constant
<class> can be:
Option Description
<node_name> The name of the node specified in the board file. For Connect Check, ~ccmux specifies that the
wire needs to be connected to the mux card.
<brc> The bank-row-column designation of the module interface pin connected to a node.
Option Description
<group brc> A brc located in the same channel as <brc>. The <group brc> allows the signal to be routed to an
external connection in the fixture which is then tied to another resource of the same card or
another double-density pin card.
<via brc> This brc connects a resource to an external connection, which routes the signal path to a <group
brc> on the same card or another double-density pin card.
<resource> The type of resource the wire connects to for the test or global block. Some resources can be
specified to use a different bus with the on keyword. Available only to the L resource is an
alternate bus called the XL-bus, which can be specified by adding on xl after the l resource
syntax. In digital or mixed signal tests, the drive resource can be routed through the receive bus.
Similarly, the receive resource can be routed through the drive bus. Typically these types of
assignments are used for fixture adapter applications.
The ccguard, ccground, ccrefnode, and ccrefret resources are for an Connect Check
test.
in module <x> <x> can have a value from A to Z. All wires (brc) with the same letter are placed by the MPA
(Module Pin Assignment program) in the same module (0 or 1 or 2 or 3).
Please refer to the sample wirelist file in Sample information associated with serial test card resources.
Wirelist File on page 4-24 for additional examples of The end group statement terminates the group block.
wire statements.
Example 4-23 group syntax
group
group <group id>
The group statement marks the beginning of a wirelist
group block. A group block contains all connection <group id> is a string constant
Example:
Example 4-24 end group syntax
group
end group serial clock
wire "/BOARD_CLKDR" to 12209 serial clock
Example: wire "/BOARD_CLKRC" to 12202 serial clock
receive
group "stream1"
end group
serial sbus using 2
wire "GND" to 12216 serial1
wire "/1MBINIT*" to 12221 serial2 interface
end group
The interface statement marks the beginning of the
serial wirelist interface block. The interface block contains
information used for fixture interfaces; this includes a
The serial statement defines all of the serial stream list of wire statements and a pairs/end pairs block.
attributes of a group block's associated wire statements.
The list of wire statements define the node-to-brc
This statement can only be specified within a group
mapping of wires. Each wire statement has a resource
block and must follow the group statement.
type of none. The pairs/end pairs block contains tie
statements for pairs of brc’s.
Example:
interface"
wire "Node_1" to 10200 none
wire "Node_2" to 10201 none
pairs
tie 10101 to 10222
tie 10102 to 10221
end interface
end interface
The end interface statement terminates the wirelist
interface block.
end interface
Example:
interface"
wire "Node_1" to 10200 none
global
relay
wire "R1-2" to 11818 general
wire "BB6-8" to 11819 general
end relay
relay
wire "Node_3" to 10152 general using access
wire "Node_2" to 10151 general using access
end relay
strapping
tie 21021 to 210121
tie 21023 to 210123
tie 21001 to 210101
tie 21041 to 210141
tie 21043 to 210143
end strapping
end global
test analog "r20"
wire "R20-1" to 101117 s
wire "R20-2" to 101116 i
wire "U20-2" to 101118 g
wire "R17-2" to 10118 l on xl
wire "R20-1" to 10117 a alternate
wire "R20-2" to 10116 b alternate
end test
test analog "r21"
wire "R21-1" to 21025 s via 21021 to 210121
wire "R21-2" to 20923 i
end test
test analog "r19"
asru module 1
wire "R19-1" to 11001 s
end test
test analog "central_analog_components"
wire "R1-2" to 11422 i
wire "R1-2" to 11431 b
wire "BB6-8" to 11442 g
wire "BB6-10" to 11451 l
wire "CH1_H" to 22277 acc18 high direct
wire "CH1_L" to 22278 acc18 low direct
wire "GND" to 22228 acc13 low
wire "CONTR" to 22227 acc 13 high
subtest "card 0"
wire "BB6-3" to 11976 a
wire "BB6-3" to 11918 s
end subtest
subtest "card 1"
wire "BB6-4" to 11976 a
wire "BB6-4" to 11917 s
end subtest
end test
test analog "side_analog_components"
wire "R19-2" to 11512 g
wire "R19-1" to 11501 gl
wire "R20-1" to 11521 s
wire "R20-1" to 11530 a
wire "R20-2" to 11541 i
wire "R20-2" to 11550 b
end test
test digital "ttl_logic"
timing module 2
clock external
wire "U1-1" to 20201 drive
wire "U1-1" to 20602 clock receive
wire "U1-2" to 20221 drive
wire "U1-2" to 20606 trigger
wire "U1-3" to 20206 drive
wire "U1-3" to 20207 receive
end group
group "stream2"
serial ttl4 using 331
wire "GND" to 12264 serial1
wire "/3MBINIT*" to 12268 serial2
wire "/4MBINIT*" to 12275 serial2
end group
group
serial clock
wire "/BOARD_CLKDR" to 12209 serial clock
wire "/BOARD_CLKRC" to 12202 serial clock receive
end group
end test
test testjet "testjet"
timing module 3
device "u50"; top mux 1 port 1
wire "gnd" to 22365 g
wire "u50-1" to 22321 g
wire "u50-2" to 22322 g
wire "u50-3" to 22323 g
wire "u50-4" to 22324 g
wire "u50-5" to 22361 g
wire "u50-6" to 22362 g
wire "u50-7" to 22363 g
wire "u50-8" to 22364 g
end device
device "u100"; bottom mux 2 port 1
wire "gnd" to 22365 g
wire "u100-1" to 22321 g
wire "u100-2" to 22322 g
wire "u100-3" to 22323 g
wire "u100-4" to 22324 g
wire "u100-5" to 22361 g
wire "u100-6" to 22362 g
wire "u100-7" to 22363 g
wire "u100-8" to 22364 g
end device
end test
test polarity "polarity"
timing module 1
device "c1"; top mux 1 port 1
wire "node_1" to 22321 s
wire "node_1" to 22322 a
wire "node_2" to 22365 i
wire "node_2" to 22366 b
end device
device "c2"; bottom mux 2 port 1
wire "node_3" to 22421 s
wire "node_3" to 22422 a
wire "node_4" to 22465 i
wire "node_4" to 22466 b
end device
end test
test connectcheck "connectcheck"
timing module 2
bottom mux 1
ground module 0 card 5 ! Which card to wire to ground, in each module,
ground module 1 card 3 ! for Connect Check tests.
wire "+5V" to 22362 ccguard ! Four guard wires connected to a
wire "+5V" to 22364 ccguard ! guarded node.
wire "+5V" to 22366 ccguard
wire "+5V" to 22368 ccguard
wire "ground" to 22370 ccground ! Five guard wires connected to
wire "ground" to 22372 ccground ! the board ground node.
wire "ground" to 22374 ccground
wire "ground" to 22376 ccground
wire "ground" to 22378 ccground
device "u101"
wire "~ccmux" to 20278 ccrefnode! Wire to the mux card.
wire "ground" to 20262 ccrefret! Wire to the board ground node.
wire "node_1" to 21631 g
wire "node_2" to 21645 g
.
.
.
end device
end test
Objectives
When you finish reading this chapter, you should be
able to:
■ Describe the structure and syntax of the fixture
file.
■ Explain the use of the fixture defaults file.
■ Understand and use fixture components files.
NOTE
Overview This chapter describes the structure and syntax of the Do not edit board test files with editors such as vi.
fixture, the fixture defaults files and the fixture These editors do not update the file's header
component files. information, such as the time-stamp, that Agilent
3070 programs use. Use the BT-BASIC editor to
NOTE edit fixture files.
The fixture file is used by the Fixture Generation
Software and is explained in Chapter 6, The following sections explain how to modify the
Completing and Debugging Tests in Test & fixture files.
Fixture Development.
Modify the Fixture File from Agilent Fixture
The Fixture Generation Software produces the Consultant
fixture.o file and the reports and files necessary to
a Change probe locations.
build a test fixture.
b Unblock resources.
The fixture file can be initialized with a fixture defaults
file, if desired. The probe attributes can be changed by c Modify wiring.
making changes to the fixture component files.
d Add fixture electronics.
The Fixture Generation Software creates only the object b Select View/Edit Fixture File.
file, fixture/fixture.o; it does not generate a source IPG Test Consultant opens a BT-BASIC window
file. However, you can create a source file, and loads the fixture file into the BT-BASIC
fixture/fixture, from the object file. workspace for you to edit. If only the fixture.o
What is a Fixture The fixture file is made up of two or more blocks. The Example 5-1
first block is the fixture description block; it contains
File? information about fixture keepouts, holes, and other OPTIONS
options that effect the fixture. The fixture description Fixture Type
Fixture Size
block is followed by one or more board description Fixture Part Number
blocks. Board description blocks are not allowed within Top Probes Allowed
a fixture defaults file. Each board description block Density Threshold
contains board_xy information, board placement, probe Heavy Probe Force
attributes, and node attributes for a board to be tested on Light Probe Force
the fixture. The last block is called the protected unit Autofile
Metric Units
block. This optional block contains wiring and node WireWrapping
information typically used to describe connections and KEEPOUT
attributes for fixture electronics or for other custom INCLUDE
applications. HOLES
BOARD
INCLUDE
NOTE PLACEMENT
The fixture file, fixture.o, is created by the OUTLINE
fixture generation software, which is run by IPG TOOLING
KEEPOUT
Test Consultant, during board test development.
NODE
For more information, see Chapter 4, Generating ALTERNATES
Tests and Fixture Files in Test & Fixture OTHER
Development. ALTERNATES
GROUP
END BOARD
Example 5-1 shows an example fixture file with two BOARD
boards and a protected area that can be used for fixture INCLUDE
PLACEMENT
electronics:
OUTLINE
TOOLING
KEEPOUT
NODE WIRES
PINS END UNIT
PROBES END
ALTERNATES
WIRES
OTHER Fixture Description Block
ALTERNATES
GROUP The fixture description block of the fixture file
END BOARD contains global information about the fixture. This
PROTECTED UNIT information includes: fixture options, fixture keepout
NODE areas, and fixture holes. Fixture description block
PINS information is listed at the beginning of the file.
WIRES
OTHER Fixture options are listed in the OPTIONS block. This
PINS includes the information shown in Table 5-1.
Information Description
Fixture Type Type of fixture to be used. This option can be: SIMPLATE, EXPRESS, NO-WIRE, CASSETTE,
XG-50, XG-50 CASSETTE, QUICKPRESS, or JOT.
Fixture Size Size of the fixture to be used. This option can be: BANK1, BANK2, or FULL
Fixture Handler Identifies the type of fixture handling hardware; otherwise, it is not present. Options include QPT
(QuickPress) or JOT.
Fixture Part Exact type of fixture to be used. Unlike the other options, this number is automatically placed in the file
Number by the software.
Top Probes Indicates if top side probes can be used. This option can be ON or OFF.
Allowed
Information Description
Density Threshold Specifies the maximum probe force in ounces per square inch allowed on the board. A value of 80
would limit the number of eight ounce probes to ten per square inch.
Heavy Probe Probe force, in ounces, of the heavy weight probes that are to be used in the fixture.
Force
Light Probe Force Probe force, in ounces, of the light weight probes that are to be used in the fixture.
Autofile A numeric code that is wired into the test fixture for automatic identification of the fixture.
Metric Units The fixture reports are to be printed with metric units. This option can be ON or OFF.
WireWrapping Type of wirewrapping that will be performed on the fixture. This option can be AUTO, SEMI AUTO,
WIRELESS, or MANUAL.
KEEPOUT Defines an area of the fixture where pins and probes cannot be placed.
HOLES Lists optional hardware holes in a probe plate of the fixture.
Board Description Block Each board description contains information such as:
The board description block contains information about ■ The placement of the board on the fixture.
each board to be tested on the fixture. If a fixture is used ■ The X-Y coordinates of the board outline vertices.
to test only one board, there will be only one board
description in the file; if, however, the fixture is used to ■ A list of tooling holes.
test more than one board, there will be a board ■ A list of nodes and their attributes.
description block for each board in the fixture file.
■ A list of fixture components that have not been
assigned to any nodes.
This information is read from the board_xy.o file, for We leave it to you to determine whether the pins you
each board, and is modified by the fixture generation select are valid and that they do not conflict with any
software. keepout areas, tooling pins, or other obstructions.
In addition, this block is used by the 3070 software to
NOTE describe BSI nodes for boards with ScanWorks actions.
Board description blocks are not allowed in You should not remove these nodes. The BSI Pin Data
fixture default files. Format is:
_<BSI Channel>_<BSI Signal Name>_<Performance
Port Address>_<BSI Pin Number>
Protected Unit Description Block
Typical nodes look like:
The protected unit description block is used to reserve
personality pins and external nodes in the fixture for _BSI1_SW_GND_L2_12
_BSI1_TP1_TCK_L2_11
custom applications. Because all information in this
block is protected, it will not be removed or modified by Any nodes with this format should not be deleted.
the fixture generation software. Typically, you use this
block to describe nodes that will be used for fixture
electronics or to describe other wiring in the fixture that
must not change when IPG Test Consultant is run during
board test development or an ECO. This block lets you:
■ Describe external nodes used in custom fixture
electronics. These nodes can be wired to probes or
personality pins used by a board test. You can also
specify wire lengths and color to be used.
■ Reserve personality pins for custom electronics or
other external functionality in the board test.
Because these resources are reserved, the fixture
generation software will not automatically
re-assign them in board tests.
Programs that Use Several programs retrieve and modify data from the
fixture.o file during the fixture generation process.
the Fixture File
Table 5-2 Programs that use the Fixture/Fixture Defaults files
Program Description
BOARD PLACEMENT Creates the fixture directory and the fixture.o file. Alternatively, the Board Placement uses a
fixture defaults file to create the fixture.o file. Board Placement decides the X-Y placement of
the board on the fixture using the board outline coordinates from the board_xy.
You can manually specify board placement in the board_xy file. If Board Placement finds a
placement specified in board_xy it will use it; otherwise, it will check the fixture default file
object, if it exists, and use the placement specified. If the fixture default object does not exist,
Board Placement will place the board automatically.
PROBE SELECT Uses probe location information from the board_xy file, node and electrical information from the
boards file, and probe attribute information from the fixture component files to determine
the best type of probe and probing location for each node. You can influence the selection of
probes and locations by editing the board_xy file and the fixture component files.
MODULE PIN Assigns module card resources, such as sources, detectors, drivers, and receivers, to the
ASSIGNMENT (MPA) probes. MPA assigns resources close to the probes to minimize wire lengths. It stores these
assignments in a file called wirelist.o. Only the object wirelist, wirelist.o, is maintained in
the local board directory. To create a source wirelist, type:
list object "wirelist.o" to "wirelist"
on the BT-BASIC command line and press Return.
Table 5-2 Programs that use the Fixture/Fixture Defaults files (continued)
Program Description
FIXTURE TOOLING Adds power supply wiring and places all pin and wire assignment information into the
fixture.o file. Fixture tooling creates the reports and files necessary for building your test
fixture. Fixture tooling will also use the probe drill descriptions found in the fixture component files
to annotate the drill files.
PLOT GEN Uses the fixture.o file to generate plots of the fixture.
Fixture File Syntax This section describes the syntax of the fixture file. The board description block can contain keywords:
■ BOARD
NOTE ■ INCLUDE
The syntax of the fixture file is not case-sensitive. ■ PLACEMENT
■ OUTLINE
■ TOOLING
Each line of information, except list headings, must end ■ KEEPOUT
with a semicolon. Board, node, and device.pin names ■ NODE
must not contain colons (:) or tildes (~). The fixture ■ PINS - (NODE)
description block can contain these keyword list ■ PROBES - (NODE)
headings: ■ ALTERNATES - (NODE)
■ OPTIONS ■ TRANSFERS - (NODE)
■ HOLES ■ WIRES - (NODE)
■ KEEPOUT ■ OTHER
■ INCLUDE ■ PINS - (OTHER)
■ DEFAULT PLACEMENT ■ PROBES - (OTHER)
■ ALTERNATES - (OTHER)
The OPTIONS block contains keywords: ■ TRANSFERS - (OTHER)
■ Fixture Type ■ WIRES - (OTHER)
■ Fixture Size ■ GROUP
■ Fixture Part Number ■ END BOARD
■ Top Probes Allowed
■ Heavy Probe Force The protected unit description block can contain
■ Light Probe Force keywords:
■ Density Threshold
■ Autofile ■ PROTECTED UNIT
■ Wirewrapping ■ NODE
■ Metric Units ■ PINS - (NODE)
■ WIRES - (NODE)
Example 5-2 Fixture Type syntax Table 5-3 Fixture Type options (continued)
Identifies the exact type of fixture to be used. Unlike the Heavy probe force <force>;
other options, the fixture part number is automatically <force> is a <numeric constant>
placed in the file by the software. The Fixture Part
Number options are accessible via Agilent’s website.
Light Probe Force
Top Probes Allowed Light probe force specifies the force, in ounces, of the
light weight probes to be used in the fixture.
Top Probes Allowed specifies whether top electrical
probes are allowed in the fixture. This attribute has no <force> Specifies the spring force of the probe, in
effect on TestJet probes. ounces.
ON specifies that top probes are allowed (the fixture
Example 5-6 Light probe force Syntax
must have a top plate). OFF specifies that top probes are
not allowed. If you don't specify this, the system will Light probe force <force>;
assume OFF. <force> is a <numeric constant>
<force> Specifies the spring force of the probe, in For example, suppose you are using probes which are
ounces. rated at 8 oz. of force each and the density threshold is
set to 80. This means that you can have a maximum of
10 probes per square inch on the board. The probes per Semi Auto if the fixture is to be wired with either, an
square inch value is calculated by Probe Select. automatic, or a semi-automatic machine. If the fixture
will be wired by hand, you need to specify MANUAL. If
<value> Specifies the maximum force in ounces per
you use AUTO, the fixture wiring report will be sorted by
square inch from the probes within that area to probe the
color, gauge, and length of wire. Locations will be
board.
specified in X-Y coordinates. If you specify MANUAL, the
fixture wiring report will be sorted to avoid having to
Example 5-7 Density Threshold syntax
wire areas that are already covered by other wires.
Density Threshold <value>; Locations will be specified in brc (bank-row-column),
<value> is a <numeric constant> format.
Specifying WIRELESS tells Probe Select not to block
Autofile P-Pins. Fixture tooling also produces a nets file that can
be used to produce files for most auto-routing
Autofile specifies the identification number that should
equipment.
be wired into the fixture for auto-identification. This
allows the correct board program(s) to be loaded when <option> Specifies the format of the fixture reports.
the operator loads the fixture. AUTO implies a fully automatic, or a semi-automatic
wire-wrapping system. MANUAL implies that the operator
<code> This is the identification number of the fixture,
must find the location and apply the wire-wrap.
it is an integer value in the range from 11 to 4094. If you
do not specify an autofile, Fixture Tooling will
Example 5-9 WireWrapping syntax
automatically assign a unique one.
WireWrapping <option>;
Example 5-8 Autofile syntax
<option> can be:
Autofile <code>;
AUTO
<code> is an <integer>
MANUAL
SEMI AUTO
WireWrapping WIRELESS
relative to the board origin and can change if the board Fixture Size BANK2
orientation changes. Also, each fixture keepout area is . . . .
. . . .
specified following the OPTIONS statement but before
Wirewrapping MANUAL;
the first BOARD statement. A board keepout area is KEEPOUT BOTH
specified only after a BOARD statement. For more 20000, 20000
information about board keepouts, see the KEEPOUT 40000, 20000
statement listed in Board Description Block on 40000, 40000
page 5-6 section. The Keepout options are described in 20000, 40000;
BOARD board1
Table 5-4 on page 5-16.
. . .
. . .
Example 5-12 KEEPOUT syntax
Example:
OPTIONS
Fixture Type EXPRESS;
The board description block is organized as follows: Example 5-15 BOARD syntax
Board Example:
The BOARD keyword marks the start of the description of INCLUDE "/board/std_options";
all the pieces of the specified board.
<board_id> specifies the name of the board to be
described.
Example:
OUTLINE
0, 0
150000, 0
150000, 120000
60000, 120000
60000, 110000
0, 110000;
(0, 0) (150000, 0)
Option Description
<x_coord> X_coordinate, in tenth mils, of outline
point.
<y_coord> Y_coordinate, in tenth mils, of outline
point.
Tooling
The TOOLING keyword marks the beginning of a list of
all tooling holes. The list is needed to avoid conflicts
with personality pins. The Tooling options are described Keepout - (Board)
in Table 5-8 on page 5-21.
The KEEPOUT keyword specifies a series of points that
define a polygon (at least three non-colinear points) that
Example 5-19 TOOLING syntax
describes an area of the fixture (above or below the
TOOLING board's placement) where no personality pins or probes
<size> <x_coord>,<y_coord>; can be placed. The points can be listed in either a
<size> <x_coord>,<y_coord>; clockwise or counterclockwise direction starting at the
<size> <x_coord>,<y_coord>; lower left corner of the area. Each KEEPOUT keyword
. . . . . . . . . . specifies one keepout area.
. . . . . . . . . .
<size> <x_coord>,<y_coord>; Each keepout area can specify a side attribute. This
attribute indicates which probe plate of the fixture
<size> <x_coord>,<y_coord> are <numeric contains the keepout area. If no side attribute is
constants>
specified, the keepout area applies to the bottom probe
Example: plate.
TOOLING Board keepouts should not be confused with fixture
3750 30650, 30700; keepouts. A board keepout area can change relative to
3750 72500, 36250;
the fixture tooling origin if the board placement
changes. A fixture keepout remains fixed relative to
Table 5-8 TOOLING options the fixture tooling origin and does not change if the
board placement is modified. For information about
Option Description fixture keepouts, refer to Keepout - (Fixture) on
<size> Diameter of tooling hole in ten thousandths page 5-15. The Keepout options are described in Table
of an inch. This value can be 2000 or 3750. 5-9 on page 5-22.
Option Description
<x_coord> X_coordinate of a keepout point.
<y_coord> Y_coordinate of a keepout point.
Option Description
<node-id> Node name.
CRITICAL The shortest possible wire must be used for the node.
<supply> The power supply connected to the specified node; supplies are in the range 1 to 24.
<V> Programmed voltage of the power supply.
Option Description
<I> Programmed current of the power supply.
<mux> Allows the power supplies to be multiplexed through the relays to the boards-under-test. This option is
useful in some cases of multiple board fixtures and multiple board panels. The MULTIPLEXED keyword
forces fixture tooling to insert personality pins into the fixture to access the asru card supplies. However,
fixture tooling is not allowed to wire the pins to the power nodes. Parallel supplies can also use the
multiplexing option.
GROUND The node is used for ground.
POWER The node is used for power.
<dx> Offset, in tenth mils, in the X direction. It is <dev.pin> The device-pin on which the specified
added to the X-coordinate of the node is to be placed.
personality pin's base location. Use this TOP The probe is to be on the top side of the
when specifying special personality pins fixture.
with the OVERRIDE option.
LWT The probe is light force, if LWT is not
OVERRIDE Marks a pin that would normally be specified then the probe is assumed to be
BLOCKED, but will be used. heavy force. This attribute is assigned only
by Probe Select.
Probes
The PROBES keyword, when used in conjunction with Example 5-23 PROBES syntax
the NODE keyword in a board description block, marks
the beginning of a list of probes connected to the PROBES
<probe_id> <x_coord>,<y_coord> <options>;
specified node. Probes are numbered starting with one. <probe_id>;
Probe numbers may be greater than the number of
Example:
ALTERNATES
25820, 96740 U1.5;
28820, 96740 U2.5 TOP;
31820, 96740 U3.5 50MIL;
Transfers
The TRANSFERS keyword, when used in conjunction
with the NODE keyword in a board description block,
marks the beginning of a list of transfer probes used to
carry signals from the bottom of the fixture to the top
plate. It should only exist if top-probes-allowed is set to
ON. The Transfers options are described in Table 5-14
on page 5-28.
TRANSFERS
<transfer_info>;
<transfer_info>;
. . .
<transfer_info>;
Option Description
<probe_id> A number from 1 to N where N is number of probes in the fixture. The probe_id will be prefixed by
a T (to indicate that it is a transfer probe).
<x_coord> X_coordinate, in tenth mils, of the node with respect to the board origin.
<y_coord> Y_coordinate, in tenth mils, of the node with respect to the board origin.
Wires pin, or pin to pin. As wires are added to the fixture, they
provide information associating other components of
The WIRES keyword, when used in conjunction with the
the fixture with the specified node. When listing the
NODE keyword in a board description block, marks the
wires attributes: color, gauge, and length, you must list
beginning of a list of wires, used to connect other
all, or none, of them; you cannot list just one or two of
components of the specified node together. Wires may
them. If the wire is included in a GROUP, the WIRES
be specified as connected from: pin to probe, probe to
statement includes the group designation and the type of
WIRES
<wire_info>;
<wire_info>;
. . .
<wire_info>;
Example:
WIRES
P23 to T56;
11656 to T56;
10834 to P12;
22301 to P814 Coax 28 1.00, G1;
22377 to P814 "Tw-pr" 28 1.00, G2;
Options Description
<probe_id> Probe that one end of the wire connects to.
<pin_id> Bank-row-column position of the pin that one end of the wire is connected to.
<color> Color of the wire, this is an arbitrary name of up to 20 characters.
<gauge> Gauge of the wire.
<length> Length of the wire.
<type> Type of wire to be used on the group — twisted pair or coaxial.
<group des> The group. Fixture Tooling assigns group designators as G# where # is a number. The first group
is assigned G1; the second group is assigned G2, and so on.
Syntax: Example:
OTHER PINS
13456 DRILLED;
The OTHER keyword has no parameters. 13457 SOCKETED;
11608 -15;
Pins 10417 BLOCKED;
12110 OVERRIDE -10 20;
The PINS keyword, when used in conjunction with the
OTHER keyword in a board description block, marks the
beginning of a list of personality pins that have some Table 5-16 PINS options
attributes, or which have not been assigned to any
Option Description
nodes. The Pins options are described in Table 5-16 on
page 5-31. <pin_id> Name of the device-pin.
Example 5-27 PINS syntax <dy> Offset, in tenth mils, used for personality
pins that are bent to avoid probes on the
PINS board. The offset is added to the
<pin_id>; personality pin base location to get its
<pin_id> <dy>;
actual fixture location.
<pin_id> <status>;
<pin_id> <status> <dy>; <dx> Offset, in tenth mils, in the X direction. It
<pin_id> OVERRIDE <dy>;
<pin_id> OVERRIDE <dy> <dx>;
is added to the X-coordinate of the
personality pin's base location. Use this
<pin_id> is a <string expression> when specifying special personality pins
<dy> and <dx> are <numeric constants> with the OVERRIDE option.
<status> can be: DRILLED Refers to a location that has been drilled,
DRILLED but does not have a pin installed.
SOCKETED
BLOCKED SOCKETED Refers to a location that has a personality
pin installed.
Option Description
<probe_id> The name of the probe. Probes and transfer pins are automatically numbered in the same sequence by
Test Consultant, using numbers from 1 to N where N is the total number of probes and transfer pins in the
fixture. The probe_id for a regular probe will by prefixed by a P; the probe_id for a transfer pin will be
prefixed by a T. Probes are always assigned numbers before transfer pins are assigned numbers. For
example, The 3070 will assign probes numbers P1 - P100, and transfer pins T101 - T150. When
assigning probe names manually, be sure to assign numbers not already assigned to probes or
transfer pins.
<x_coord> X_coordinate, in tenth mils, of the probe with respect to the board origin.
<y_coord> Y_coordinate, in tenth mils, of the probe with respect to the board origin.
TOP Probe is on the top side of the fixture.
LWT Light weight probe. Probe Select uses the density threshold and probe force specifications from Global
Options to determine the need for light weight probes.
Option Description
50MIL 50 mil probe instead of a 100 mil probe.
75MIL 75 mil probe instead of a 100 mil probe.
LONG Long probe for dual stage testing.
contain a probe receptacle. The Alternates options are <options> can be:
described in Table 5-18. TOP
<dev.pin>
Table 5-18 ALTERNATES options TOP <dev.pin>
<size>
Option Description <x_coord>, <y_coord> are <numeric constants>
<dev.pin> is a <string constant>
<x_coord> X_coordinate, in tenth mils, of the node
with respect to the board origin. <size> can be:
• A transfer probe was defined previously. should run Board Place again. (WARNING
Each transfer probe should appear in the FDF2)
FDF source once in a TRANSFERS statement.
It may appear in WIRES statements as often To avoid these errors, assign numbers at T10000 and
as necessary. (ERROR FDF29) above (numbers up to 1 million are available).
• Transfer probe conflicts with a personality
pin. The board has been placed in such a The Transfers options are described in Table 5-19.
position that a transfer probe interferes
with a personality pin directly below it.
This wastes both resources. Perhaps you
Option Description
<transfer_id> Probes and transfer pins are automatically numbered in the same sequence by Test Consultant using
numbers from 1 to N where N is the total number of probes and transfer pins in the fixture. The probe_id
for a regular probe will by prefixed by a P; the probe_id for a transfer pin will be prefixed by a T. Probes
are always assigned numbers before transfer pins are assigned numbers. For example, The 3070 will
assign probes numbers P1 - P100, and transfer pins T101 - T150. When you assign transfer pin
numbers manually, we recommend you start at T10000 so that you are sure to assign a number that
is not yet used.
<x_coord> X_coordinate, in tenth mils, of the node with respect to the board origin.
<y_coord> Y_coordinate, in tenth mils, of the node with respect to the board origin.
<probe_type> Whether or not a probe is installed.
DRILLED Implies that only a hole exists at that location.
SOCKETED Implies that a regular transfer probe is installed.
Example 5-30 TRANSFERS syntax and its other end are moved to that node, in the NODE list.
Table 5-20 describes Wires options.
TRANSFERS
<probe_id> <transfer_info>; Example 5-31 WIRES syntax
<probe_id> <transfer_info>;
. . .
WIRES
<probe_id> <transfer_info>;
<wire_info>;
<wire_info>;
<probe_id> is a <string expression>
. . .
<transfer_info> can be: <wire_info>;
Wires
The WIRES keyword, when used in conjunction with the
OTHER keyword in a board description block, marks the
beginning of a list of wires that connect fixture
components that are not on a node. A wire may only be
specified as connected from pin to pin. If either of its
ends connects to a component that is on a node, the wire
NODE <node_id>
NODE <node_id> <usage>
NODE <node_id> CRITICAL
NODE <node_id> <usage> CRITICAL
Option Description
<node-id> External node name.
CRITICAL The shortest possible wire must be used for the node.
<supply> The power supply connected to the specified node; supplies are in the range 1 to 24.
<V> Programmed voltage of the power supply.
<I> Programmed current of the power supply.
<mux> Allows the power supplies to be multiplexed through the relays to the boards-under-test. This
option is useful in some cases of multiple board fixtures and multiple board panels. The
MULTIPLEXED keyword forces fixture tooling to insert personality pins into the fixture to access
the asru card supplies. However, fixture tooling is not allowed to wire the pins to the power nodes.
Parallel supplies can also use the multiplexing option.
GROUND The node is used for ground.
POWER The node is used for power.
<dy> Offset, in tenth mils, used for personality Example 5-36 WIRES syntax
pins that are bent to avoid probes on the
board. The offset is added to the WIRES
<wire_info>;
personality pin base location to get its
<wire_info>;
actual fixture location. This offset is in the Y . . .
direction only. <wire_info>;
<id> can be: <probe_id> Name of probe that one end of the wire
is connected to.
<pin_id>
<probe_id> <pin_id> Bank-row-column position of the pin
that one end of the wire is connected
<color> is a <string constant>
<gauge> is an <integer> to. If pin_id to pin_id wiring is specified,
<length> is a <numeric constant> both pins must only appear in the
<probe_id> & <pin_id> are <string protected unit section.
expressions>
TERMINAL Specifies that one end of the wire is to
Examples:
be left unconnected in the wiring
WIRES instructions. This open ended wire can
P23 to T56;
later be used to connect to fixture
11646 to TERMINAL;
10834 to P12; electronics or some other custom
P14 to TERMINAL BLACK 28 10.0; application.
<color> Color of the wire, this is an arbitrary
name of up to 20 characters.
<gauge> Gauge of the wire.
<length> Length of the wire.
Table 5-25 PINS options (continued) that external node, in the node list of the protected unit.
Table 5-26 on page 5-45 describes Wires options.
Option Description
<dx> Specifies an offset, in tenth mils, in the X Example 5-38 WIRES syntax
direction. It is added to the X-coordinate of WIRES
the personality pin's base location. Use <wire_info>;
this when specifying special personality <wire_info>;
pins with the OVERRIDE option. . . .
<wire_info>;
DRILLED Refers to a location that has been drilled,
<wire_info> can be:
but does not have a pin installed.
<pin_id> to <pin_id>
SOCKETED Refers to a location that has a personality <pin_id> to TERMINAL
pin installed. TERMINAL to <pin_id>
<pin_id> to <pin_id> <color> <gauge>
BLOCKED Refers to a personality pin which cannot <length>
be used due to interference with a probe. <pin_id> to TERMINAL <color> <gauge>
<length>
OVERRIDE Is used to mark a pin that would normally TERMINAL to <pin_id> <color> <gauge>
be BLOCKED. <length>
<pin_id> is a <string expressions>
<color> is a <string constant>
Wires <gauge> is an <integer>
<length> is a <numeric constant>
The WIRES keyword, when used in conjunction with the
Examples:
OTHER keyword in a protected unit, marks the beginning
of a list of wires that connect fixture components that WIRES
are not on an external node. A wire can only be 21325 to 20125 black 28 8.00;
TERMINAL to 14125 BLUE 28 5.00;
specified as connected from pin to pin or pin to terminal.
If either of its ends connects to a component is an
external node, the wire and its other end are moved to
End
Table 5-26 WIRES options The END keyword identifies the end of the fixture file.
END syntax:
Option Description
END
<pin_id> Pin that one end of the wire connects to. If
pin_id to pin_id wiring is specified, both pins The END keyword has no parameters.
must only appear in the protected unit
section.
TERMINAL One end of the wire is to be left
unconnected in the wiring instructions. This
open ended wire can later be used to
connect to fixture electronics or some other
custom application.
<color> Color of the wire, this is an arbitrary name of
up to 20 characters.
<gauge> Gauge of the wire.
<length> Length of the wire.
End Unit
Marks the end of the protected unit description block.
END UNIT syntax:
END UNIT
PROBES
P12 34750, 84820 LWT;
P23 16080, 12946 Y1.3 TOP;
ALTERNATES
25820, 96740 U1.5;
28820, 96740 U2.5 75MIL;
31820, 96740 U3.5 50MIL;
TRANSFERS
T56 98700,38760;
. . .
WIRES
P23 to T56;
11656 to T56;
10834 to P12;
NODE VCC
POWER
1 5 8 MULTIPLEXED;
2 5 8;!! Two supplies in parallel
PINS
10101;
10102;
10103;
PROBES
P121 98750, 76920;
P122 84500, 67800;
P123 94000, 12789;
ALTERNATES
12320, 56780;
23450, 67890;
WIRES
10101 to P121;
10102 to P122;
10103 to P123;
NODE +5BATT
PINS
22377;
PROBES
P814 48750, 36920;
WIRES
12101 to P814 "Tw-pr" 28 1.00 G1;
NODE 16.0MHZ
PINS
22378;
PROBES
P3 68750, 56920;
WIRES
11101 to P3 "Tw-pr" 28 1.00 G1;
NODE U1-1
PINS
22301;
PROBES
P813 58750, 46920;
WIRES
10201 to P813 Coax 28 1.00 G2;
. . .
NODE U1-2
PINS
22302;
PROBES
P4 38750, 26920;
WIRES
14201 to P4 Coax 28 1.00 G2;
. . .
OTHER
PINS
13456 DRILLED;
13457 SOCKETED;
11608 -15;
10417 BLOCKED;
PROBES
P1 66970, 32670;
P2 66800, 32500;
P3 22520, 76920;
P4 22400, 76800;
P359 68970, 34670;
P248 24520, 78920 TOP;
ALTERNATES
92200, 85600 50MIL;
TRANSFERS
T57 10780, 34920 SOCKETED;
90880, 65840;
WIRES
10126 to 11326 black 28 8.00;
. . .
GROUP G1 TWISTED
NODE "+5BATT"
PIN
22377;
PROBE
P814;
NODE "16.0MHZ"
PIN
22378;
PROBE
P3;
. . .
GROUP G2 COAX
NODE "U1-1"
PIN
22301;
PROBE
P813;
NODE "U1-2"
PIN
22302;
PROBE
P4;
END BOARD
END
Fixture Defaults File The fixture defaults file is an optional file that provides ■ may copy a standard template into a file named
a template to initialize the fixture object. This gives the fixture_defaults in the board directory and
test developer more control over fixture options; ensures modify it for use with the specific board; or
the fixture object meets the requirements of the board
■ may manually create a file named
being tested; and reduces the need for interactive fixture
fixture_defaults in the board directory.
development.
There are 18 fixture templates in the
Without a fixture defaults file, the development process
$AGILENT3070_ROOT/standard/fixture/defaults/
initializes the fixture object by moving data and options
directory, named after the type and size of fixture they
into the fixture object from the .hp3070 file, the config
support. They include the following:
object file, the board object file, and the board_xy object
file. The test developer might add other information, • express_bank1
such as fixture keepouts, by manually listing, editing • express_bank2
and recompiling the initialized fixture file during an • express_full
interactive development cycle. When a fixture defaults • express_dual_well
file is used, data from the usual sources will be ignored • no_wire_bank1
(except the .hp3070 file) and information in the fixture • no_wire_bank2
defaults object file is used instead. • no_wire_full
The fixture defaults file is created and compiled before • no_wire_dual_well
Test Consultant begins the automatic test generation • cassette_bank1
process. The test developer • cassette_bank2
■ may use an Agilent-supplied standard fixture • JOT_bank1
defaults file template; • JOT_bank2
• JOT_full
■ may modify an Agilent-supplied standard • JOT_dual_well
template for general use;
• QPT_bank1
• QPT_bank2
• QPT_full
• QPT_dual_well
ADVICE
A fixture defaults file must be compiled before it can be
The size and type specified in any fixture default
used. Use the following BT-BASIC command to
file must match what is in the board file. If they do
compile the file when in the standard/fixture/defaults
not match, an error will be generated when the
subdirectory:
Board Placement program is executed.
compile <template name>; defaults
ADVICE
Failure to compile the fixture defaults file will
cause the software to ignore the optional fixture
defaults files. This was done for backward
compatibility.
Sample Fixture This section describes the syntax of the fixture defaults
file.
Defaults File
Example 5-40 Fixture defaults (express_full) format
! To activate this fixture default file, compile it with the fixture compiler
! using the default option. The BT-basic command is
!
! compile <fixture>; fixture,defaults
!
! You can override the global fixture default files by making a copy of the
! applicable file and placing it in the board directory as “fixture_defaults”
! with the desired changes. You must then compile the file using the command
! above before the software will use it to initialize the fixture.
!
!
! Mandatory fields for a default file
!
OPTIONS
Fixture Type EXPRESS;
Fixture Size FULL;
Top Probes Allowed OFF;
!
! Optional fields for a default file
!
!OPTIONS
! Fixture Part Number
! Autofile
! The customer may also include fixture keepouts to reserve space for fixture
! electronics or hardware. Fixture keepouts must use fixture coordinates
! which uses the left most fixture alignment pin as the origin. A typical
! example might be
!
KEEPOUT
200000, 15000
200000, 35000
240000, 35000
240000, 15000;
!
! New feature
!
! This allows you to define your own default placement instead of using the
! placement built into Board Placement.
!
! Precedence for using placements is from highest to lowest: board_xy placement,
! the Default Placement noted below, and last, the built in placement used by
! Board Placement.
END
■ Fixture Type refers to the type of fixture. Options ■ The optional fields include those settings that are
include Cassette, Express, No-Wire, software-generated and include the following:
QuickPress, and JOT. ■ Fixture Part Number identifies the type of
■ Fixture Size specifies the area of the testhead that fixture. This number is automatically placed in the
the fixture will cover. Options include file by the software.
Dual_well, Full, Bank1, and Bank2. ■ Autofile specifies the identification number that
■ Fixture Handler identifies the fixture handling auto-identifies the fixture. If you do not specify an
hardware. This option will not be present in the autofile, Fixture Tooling will automatically assign
file if no fixture handler is used. Options include a unique one.
QPT (QuickPress) or JOT.
Keepout
■ Top Probes Allowed specifies if probes will be
used for testing the top of the board. The Keepout - (Fixture) option specifies the area of the
fixture in which probes cannot be placed.
■ Density Threshold is the maximum amount of
probe force allowed to probe the board.
Default Placement
■ Heavy Probe Force specifies the force, in ounces,
of the heavy weight probes. This option identifies where the board is placed on the
fixture, and overrides the built-in default placement for
■ Light Probe Force specifies the force, in ounces, board placement, but not the placement specified in the
of the light weight probes. board_xy.
Dividing Lines
The fixture defaults file can contain dividing lines to
improve the readability of the file. A dividing line is
defined to be:
■ a blank line or
■ a line of dashes preceded by an exclamation point.
Comments
Any items preceded by an exclamation point are treated
as a comment.
User-Modifiable The standard fixturing software in the Agilent3070 is parameters. The result of this is that nodal access is
well suited to the majority of boards being tested by the increased by allowing closer probe spacing.
Fixture system. However, in some cases the standard parameters
Two options are available for determining the minimum
Components used to generate fixture build files may not be optimal.
probe spacing. If the board config file does not specify
New probe types are being introduced to the test
enable advanced fixturing, then the standard
industry as loaded board technology advances. Fixture
(conservative) probe spacing algorithm will be used. If
vendors are providing enhancements to fixture kits to
the board config file specifies enable advanced
suit the special needs of advanced users. Both of these
fixturing, the advanced (aggressive) probe spacing
trends have created requirements for more flexibility in
algorithm will be used. Contact your fixture vendor to
defining fixtures and fixture components.
ensure they can construct a fixture with the tighter
To meet this need, the Agilent3070 test system offers an spacing. The standard probe spacing and the advanced
advanced fixturing feature called User-Modifiable probe spacing provided by the Agilent-supplied
Fixture Components. This feature moves key attributes component files are shown in the Table 5-27- Table
of fixture kits, probes and tooling pins into files that can 5-29 at the end of this section. The algorithms for each
be edited by the test developer to create custom type of spacing are shown in Understanding Probe
fixturing applications. Spacing in Chapter 3 of the Test and Fixture
Development documentation.
The user-modifiable fixture and probes files, also called
fixture component files, are files that define specific In most cases, you will know before hand that special
attributes of fixture kits, probes and tooling pins. The components are needed. For example, if you are
test developer may create custom versions of these files targeting a non-Agilent standard size probe, you know
to redefine attributes as needed for particular that all the probes have different characteristics. Or, if
applications. you have a board that is physically too large for the
standard Agilent fixture kits, you can work with your
Fixture component files are used to define oversize
fixture vendor to define a custom oversize fixture for the
fixture kits and change the minimum spacing between
board. In these situations, copy the appropriate fixture
probes. For example to use probes without sockets, you
component files to a specific sub-directory in the local
could modify the 100-, 75- and 50-mil component files
board directory and modify them as needed.
with updated probe sizes, probe spacing and drilling
In other cases, you may discover during test In general terms, the test developer will copy a standard
development that probe spacing is too close or that fixture component file for the component requiring
tooling pins are blocking resources. Correcting this modification into the local board directory, and then edit
requires the test developer to copy and modify the this file to change one or more of the attributes. This is
appropriate component files, then restart test very much like copying a standard digital library to the
development from the process step, described in local board directory and modifying it for use with this
Chapter 4, Generating Tests and Fixture Files in the board.
Test and Fixture Development documentation.
ADVICE
CAUTION All probes on the fixture using a given modified
✸You will need to remove the /<board
name>/fixture directory before restarting the test
probe file are affected. There is not a way to
modify a single probe’s attributes. However, if a
development process. given probe has minimal usage, for example 50
Mil probes, you could minimize the impact by
modifying that probe file.
CAUTION
■ acceptable - use this probe type only as needed See Example 5-41 on page 5-63 through Example 5-45
on page 5-64 for default syntax.
■ minimize - don't use this probe type unless
absolutely necessary Tooling Pin Fixture Component Files Syntax
■ unavailable - do not use this probe type at all There are six fields defined in the fixture component
WireWrapCount - Describes the number of wrapped files for tooling pins:
wires that this probe can accommodate.
NOTE
DiameterMils - Diameter in thousandths of an inch of
the probe socket. Used by Probe Select. All fields are used by Fixture Tooling except
where noted.
Name- Comment field - not used by the software (for right of the left edge and 8.5275" up from the bottom of
compatibility with "special" software) a standard Agilent3070 fixture.
DiameterMils - Diameter in thousandths of an inch of
the pin. Used by Probe Select. NOTE
Logically, the probe plate size should be larger
CollisionDiameterMils - Diameter in thousandths of
than the maximum board size which should be
an inch of the clear space required for this pin. Used by
larger than the probe area. However, the software
Probe Select.
will NOT check for these relationships.
ProbePlateHoleMils - Diameter in thousandths of an
inch for probe plate hole.
ProbePlateMinX - The location of the left edge of the
ProbePlateDrill - Size and style of drill for drilling probe plate referenced to "fixture zero".
the probe plate
ProbePlateMaxX - The location of the right edge of the
SupportPlateDrill - Size and style of drill for drilling probe plate referenced to "fixture zero".
the support plate
ProbePlateMinY - The location of the lower (front)
See Tooling Pin Fixture component defaults in Example edge of the probe plate referenced to "fixture zero".
5-46 on page 5-64 and Example 5-47 on page 5-64.
ProbePlateMaxY - The location of the upper (top) edge
Fixture Kit Component File Syntax of the probe plate referenced to "fixture zero".
BoardMaxX - The maximum width of a board that will fit
There are ten fields defined in the fixture component
on this fixture (not referenced to fixture zero).
files for fixture kits:
BoardMaxY - The maximum height of a board that will
All fields are used by all fixturing software.
fit on this fixture (not referenced to fixture zero).
Note: Probe Plate and Probe Area dimensions are
ProbeAreaMinX - The location of the left edge of the
referenced to the "fixture zero" of a standard
area in which probes can be placed in this fixture,
Agilent3070 fixture. Fixture zero should be thought of
referenced to "fixture zero".
as a fixed location on the testhead. The dimensions
describe the fixture dimensions in relation to that fixed
location. For reference, fixture zero is 0.1889" to the
Comments
Any items preceded by an exclamation point are treated
as a comment.
Sample Fixture This section describes the syntax of the fixture Example 5-43 75MilProbe file
components files.
Components Files Name: 75 mil
Example 5-41 100MilLongProbe file Usage: preferred
DiameterMils: 52
WireWrapCount: 3
Name: LONG
CollisionDiameterMils: 88
Usage: preferred
ProbePlateDrill: 0.055in.,Long,Flute
DiameterMils: 79
SupportPlateDrill: 2.30mm,Long,Flute
WireWrapCount: 3
GroundPlateDrill: 0.0625in,Std.,Flute
CollisionDiameterMils: 121
GroundPlateClearance: 0.080in,Std.,Flute
ProbePlateDrill: 2.10mm,Long,Flute
SupportPlateDrill: 2.60mm,Std.,Flute
GroundPlateDrill: 0.0625in,Std.,Flute Example 5-44 50MilProbe file
GroundPlateClearance: 0.080in,Std.,Flute
Name: 50 mil
Example 5-42 100MilProbe file Usage: minimize
DiameterMils: 36
WireWrapCount: 1
Name: 100 mil
CollisionDiameterMils: 62
Usage: preferred
ProbePlateDrill: 0.037in,Long,Flute
DiameterMils: 66
SupportPlateDrill: .043,in.,Std,Flute
WireWrapCount: 3
GroundPlateDrill: 0.0625in,Std.,Flute
CollisionDiameterMils: 104
GroundPlateClearance: 0.080in,Std.,Flute
ProbePlateDrill: 1.75mm,Long,Flute
SupportPlateDrill: 2.30mm,Long,Flute
GroundPlateDrill: 0.0625in,Std.,Flute
GroundPlateClearance: 0.080in,Std.,Flute
Table 5-27 Probe to Probe Spacing Table 5-28 Probe to Tooling Pin Spacing
Probe Size Standard Advanced Probe/Tooling Pin size Standard Advanced
Long 100-Mil to Long 100.0 100.0 Long to 0.375” Tooling 291.0 289.5
100-Mil to Long 100-Mil 95.0 91.5 100-Mil to 0.375” Tooling 285.0 283.0
100-Mil to 100-Mil 85.0 85.0 75-Mil to 0.375” Tooling 278.0 276.0
75-Mil to Long 100-Mil 87.0 83.5 50-Mil to 0.375” Tooling 270.0 268.0
75-Mil to 100-Mil 80.0 77.0 39-Mil to 0.375” Tooling 270.0 266.0
75-Mil to 75-Mil 70.0 70.0 Long to 0.200” Tooling 160.0 149.5
50-Mil to Long 100-Mil 80.0 70.5 100-Mil to 0.200” Tooling 152.5 143.0
50-Mil to 100-Mil 72.0 64.0 75-Mil to 0.200” Tooling 147.5 136.0
50-Mil to 75-Mil 66.0 57.0 50-Mil to 0.200” Tooling 127.5 128.0
50-Mil to 50-Mil 49.0 49.0 39-Mil to 0.200” Tooling 127.5 123.0
39-Mil to Long 100-Mil 62.5 62.5
39-Mil to 100-Mil 56.0 56.0
39-Mil to 75-Mil 49.0 49.0
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the structure and syntax of the log
records
NOTE
Because log records are simply strings of ASCII
characters, you can load a log record file into the
BT-BASIC workspace and examine it. Or, if you
are familiar with the shell, you can examine log
records with the more command or an editor such
as vi. See Chapter 2, Datalogging in Information
Management to determine where the log files are
located.
About Log Record All standard log records generated by your test system Although there can be any number of @BLOCK log
contain a prefix that consists of the @ symbol followed records generated, only one type of log record can begin
Prefixes by several descriptive characters that uniquely identify with an @BLOCK prefix.
the type of record. For example, prefix @BLOCK indicates
The records are described in Table 6-1.
that the record describes a block, or group of tests.
NOTE
To keep log records to a manageable size, avoid
making custom prefixes excessively long.
Hierarchy of Log This section shows how groups of log records are statement). The results of the resistor test appear in an
arranged to form log data files. To keep the examples record (which is preceded by an @BLOCK record
Records simple, each record is represented by its prefix and not
@A-RES
to identify the beginning of a block of tests), like this:
by the actual data it contains. The internal structure of @BATCH
each log record is explained later in Interpreting the @BTEST
Log Records on page 6-10. @BLOCK
@A-RES
Log records are arranged in a hierarchy of records and
subrecords, where a subrecord is simply an additional Thus, the @A-RES record appears as a subrecord of an
record which further describes whatever precedes it. For @BLOCK record, which is a subrecord of an @BTEST
example, a group of log records (presumably a log data record, which is a subrecord of an @BATCH record.
file) might begin with an @BATCH record containing To make the structure of records and subrecords more
information to identify a batch of boards that were obvious, we will begin indenting the examples, like this:
tested:
@BATCH
@BATCH @BTEST
And the @BATCH record might be followed by an @BTEST @BLOCK
@A-RES
record to identify the testing of an individual board:
@BATCH
This way of presenting examples clearly shows the
@BTEST hierarchy of records and subrecords. Note that these
indents are for illustration purposes only; they do not
Because the @BTEST record further describes the @BATCH appear within actual log data files.
record by identifying a unique board within the batch, it
is a subrecord of—i.e., subordinate to—the @BATCH Suppose we test two more boards, each with one resistor
record. The @BATCH record by itself is incomplete; it test. The log data file now looks like this:
becomes complete only when followed by an @BTEST @BATCH
record. @BTEST
@BLOCK
Suppose the board described in the @BTEST subrecord @A-RES
had a resistor test performed on it (by a resistor @BTEST
@BLOCK
@A-RES
@BTEST
@BLOCK
@A-RES
NOTE
Interpreting the Log Up until now, all of the examples have shown only the Look in the descriptions of the individual log
record prefixes, and not the test data each record records for the names of the fields associated with
Records contains. This section describes the format of data as it each log record.
appears within log records and then expands upon the
preceding section by showing how actual log records
are grouped into log data files. If we replace the names of the fields with typical data,
an @A-CAP record might look like this:
NOTE {@A-CAP|1|1.246700E+01|C1}
Although the following examples illustrate the If a field is optional, the separator character must still
structure of actual log records, the samples shown appear as a place holder. For example, if the @A-CAP
are not necessarily complete. Refer to the record above had no value assigned to the measured
descriptions of the individual log records for value field, it would look like this:
complete details. {@A-CAP|1||C1}
Type Description
bool a boolean, which can have either a true value (1 or Y) or a false value (0 or N)
fp floating point number, which is an integer optionally followed by a decimal point and any number of consecutive
digits, all optionally followed by the letter E (upper- or lowercase) and an integer
int integer number, which is an optional sign character (+ or -) followed by one or more consecutive digits
str string value, which is any number of characters of any type (unless otherwise noted)
If left empty, most fields default to some predefined {@NODE\node list|item 1|item 2| . . etc.}
value. The log record descriptions denote these beneath Substituting values in place of the field names gives us:
DEFAULT as:
{@NODE\2|Node53|+5Volts}
■ 0, 1, etc. a default numeric value
The first entry in a list tells how many items appear in
■ "" a null string the list. Thus, the 2 following the \ indicates there are
Fields for which a default value would be two items in the list: Node53 and +5Volts.
meaningless—that is, fields in which a reported value is Some log records are followed by one or more
mandatory—have a question mark (?) beneath DEFAULT. subrecords containing additional information. For
Some log records contain a data list. In this case, the example, the @PF record can be followed by an @PIN
initial separator character (to indicate that a list follows) record which contains a list of pins:
is a backslash, \, and individual items within the list are {@PF|2
separated by a vertical bar. For example, the @NODE log {@PIN\2|11434|22216}
record contains a list of node identifiers: }
A Note About Truncated Records Note that Pushbutton Q-STATS does not make use of
process steps. However, if you are generating custom
If you are using custom datalogging routines, be aware log records and ever expect to use the optional
that the presence of a truncation character, an ASCII 4 Q-STATS II quality management software (which does
(CTRL-D), in the data will be interpreted to mean that use process steps), you may want to begin acquiring
the log data was unexpectedly interrupted and that the process step information now.
current log record has ended.
Character Description
If you use custom log records or custom datalogging
{ Begins a log record routines, be sure that none of these characters appear in
normal data unless they are within a literal field.
} Ends a log record
| Begins a normal data field Rules of Formatting
~ Begins a literal field The following list contains the formatting rules used to
build log records (or subrecords).
\ Begins a list of fields
■ Each log record begins with { followed by a series
of printable characters that uniquely identify the
log record type. The convention for log record
types supplied by Agilent is that they begin with
@. No other log records should begin with this
character.
■ The record type is followed by one or more data • The characters which are to be interpreted
fields. literally
■ Each data field begins with one of the following ■ Each log record ends with }
characters:
■ Some record types can contain nested subrecords.
| — Begins a normal data field, which must not A record becomes a subrecord when it occurs
contain special characters unless they appear after the preceding record's data fields but before
within a literal field. A normal data field is ended the final } for the preceding record.
by the appearance of the next special character. If
you are creating custom log records: Since a
special character ends a data field, every data field
should be followed by some special character to
terminate it.
\— Begins a data field that contains a list, which
must not contain any special characters unless
they appear within a literal field. This character is
followed by:
• A number showing how many items are in the
list
• The items (data) in the list. Each item is itself a
data field, and usually begins with |.
~ — Begins a literal field, which is the only way
to include special characters inside a log record
and not have them interpreted as special. This
character is followed by:
• A number showing how many characters are in
the field
• A single |
Example 6-3
{@A-FUS|1|1.246700E+01}
Example 6-5
{@A-JUM|1|1.246700E+01}
Example 6-13
{@A-SWI|1|1.246700E+01}
Example 6-15
{@AID|890615094418|12306743}
■ Generated by: alarm program ■ Subrecords: @AID Logged for any real-time alarm
that is detected; identifies the board that caused
the real-time alarm.
Example 6-16
{@ALM|1|1|890516145512|proc_bd|2|10|15|alpha|1}
■ Generated by: digitizer, report analog Record @BATCH: identify a batch of boards
statement
This record identifies a unique batch of boards; i.e., a
Example 6-17 number of boards which are treated as a group for test
purposes.
{@ARRAY|""|1|5|1024}
Format: {@BATCH|UUT type|UUT type rev|fixture id|testhead number|testhead type|process step|batch id|operator
id|controller|testplan id|testplan rev|parent panel type|parent panel type rev}
Field Type Default Comments
UUT type str "" The type of unit under test, not including the revision. This can be a board
type or a panel type.
UUT type rev str "" The board type revision or panel type revision.
fixture id int 0 The decimal autofile code.
testhead number int 1 (th$) a positive integer.
testhead type str "" Which type of testhead. (This is currently not used.)
process step str "" Which step in the manufacturing process.
batch id str "" ID of current batch of boards.
operator id str "" Which operator.
controller str "" Which controller.
testplan id str "" Name of testplan.
Format: {@BATCH|UUT type|UUT type rev|fixture id|testhead number|testhead type|process step|batch id|operator
id|controller|testplan id|testplan rev|parent panel type|parent panel type rev}
Field Type Default Comments
testplan rev str "" Revision of testplan.
parent panel type str "" Type of the panel that contains this board.
parent panel type rev str "" Revision of the type of panel that contains this board.
version label str "" Multiple Board version.
■ Generated by: log board statement record which in turn has only one @BTEST
subrecord.
■ Subrecords:
• other The log and log using statements can
• @BTEST Generated for each board within a
be used to generate other subrecords.
batch. When one log data file is generated per
board tested, the file has only one @BATCH ■ Corresponds to: 01 and 04 records on an 3065
system.
Example 6-18
{@BATCH|998457-146|0|2550|1||btest|891131172938|pete|achilles|MaxWellBT|7|A_panel|2}
Example 6-21
{@BS-O|9C|43}
{@BS-O|9C|41|9C|58}
Example 6-22
{@BS-S|S{@NODE\2|179|112}}
■ Generated by:
NOTE
• log board start statement begins this
The test status constants (above) are defined in the
record.
test plan, and are used by statistical analysis and
quality control programs such as PushButton • log board end statement ends this record.
QStats and other packages. These tools respond ■ Corresponds to: 02 and 03 records on a 3065
primarily to the category of PASS/FAIL/BOGUS, system.
though they do sometimes recognize that the
value 2 is special. Pins test failure can be a bad Pushbutton Q-STATS and Q-STATS II interpret a
board, or a problem with the fixture. test status of 1 through 10 as a failing board, while
Example 6-23
{@BTEST|99538-135|8|891131172855|43|0|failures||n|n|891131172938|4|99538-130
. . .
{test results subrecords}
. . .
}
Subrecords:
Subrecord Generated by
@BLOCK test and test analog statements
@RPT any of the report statements; i.e., report (ANALOG), report (BT-BASIC), or report
(SHORTS)
Subrecord Generated by
@TS test shorts statement
other The log and log using statements can be used to generate other subrecords
Format: {@DPIN|device name|node pin list} or {@DPIN|device name|node pin list|thru devnode list} with DriveThru
Field Type Default Comments
device str "" Name of device, or test designator when device name is not available.
name
node pin str or ""/0 List of items. Items alternate to give two separate items of information about each pin.
list int The odd items are the node id strings. Following them (even items) are the optional
device pin strings to indicate which pins of this device are connected to the node
id's. Device pins should be included whenever possible. The number of list items
will always be even—i.e., twice the number of device pins.
thru str or "" This field is a list of DriveThru devices and nodes, ordered in pairs. Two items alternate
devnode list int information about each driven through device and node. The odd items are the node id
strings. Following them (even items) are the device id strings to indicate which device
is connected to the node id's. The number of list items will always be even—i.e., twice
the number of nodes driven through.
■ Generated by:
• test statement
Tests for digital devices produce an @DPIN
record as a subrecord for @D-T (digital powered
test) and for @TJET (TestJet test) whenever pins
are being logged.
• probe statement, probe failures statement
These statements may produce @DPIN records,
but as subrecords of the @PRB record when
logging pins.
Example 6-25
{@DPIN|U12\4|Node17|8|GND|3}
!No DriveThru Node{@DPIN|U6809\6|TCLK|18|U6809-12|12|BDRV|18}
!With DriveThru Node
Record @D-PLD: results of PLD programming -- and the outcome of the action performed. Each block
success or failure record also contains a digital sub-record describing the
outcome of the digital test portion of the test. Each
Data logging for PLD ISP is supported and controlled D-PLD record may contain NOTE and EXPRT
similarly to that of other test data types. Log record sub-records.
control is enabled via the BT-BASIC logging functions,
A record is produced for a successful run with log
such as “log is”, “log out”, and “log failure”.
level all or a failing execution with log level is
Log records produced for a PLD ISP test type are failures. Otherwise no log is produced with the
grouped into a digital test block record (@BLOCK). possible exception of using the log devices
Every play statement in the digital test generates a mechanism.
sub-record within the block that describes information
Format: {@D-PLD|<Filename> | <Action> | <Action return code> | <Result message string> | <Player program
counter> | }
Field Type Default Comments
Filename str ““ Identifies the name of the compiled program file used by the test.
Action str ““ Identifies the STAPL source action taken by the play statement. SVF and Jam files use
a default name because procedural actions are not supported in these file types.
Action int 0 Specifies the return code as a result of running the action. A zero (or empty parameter)
return code designates a passing condition.
Result str ““ Describes the error condition code.
message
string
Player int 0 Indicates the JBC opcode index where the failure occurred.
program
counter
D-PLD may also have one or more @NOTE subrecords use of note header commands within the STAPL source
as shown in Table 6-33. This record is generated by the file.
Example 6-26
The following example shows a record produced from a STAPL read ID code test program:
{@BLOCK|d3_18v04|00
{@D-PLD|digital/idtest.jam.jbc|read_idcode||||
{@EXPRT|Expected is: |1BBBB44444444445555555AAAA4321}
{@EXPRT|Got >> nd : |01BBB44444444445555555AAAA4321}
{@NOTE|CREATOR|Altera Chain Interrogation Version 2.02--Debug pipe mode}
{@NOTE|DATE|2001/04/30}
{@NOTE|ALG_VERSION|1}
{@NOTE|STAPL_VERSION|JESD71}
{@NOTE|MAX_FREQ|10000000}
}
{@D-T|0|384||0|d3_18v04}
}
■ Generated by: test statement log level is statement is set to indictments (or
some higher level). When these conditions are met, the
■ Subrecords: @DPIN is generated when logging pins
@GRP record groups the indict (@INDICT) records to
to list the failing device pins.
show those that are believed to be faulty.
■ Corresponds to: 36 record on a 3065 system.
As shown in the example below, the group record is
nested as a subrecord of MAGICCLUSTER (@M-CL) records
Example 6-27
and other group (@GRP) records. Indict (@INDICT)
{@D-T|1|1|39|3|U18}
NOTE
Flash ISP tests are logged like a normal digital
test.
Example 6-29
MagicTest examples:
{@INDICT|MT\1|r40809|+5.179527E+03|||R}
{@INDICT|MT\1|c40233|+6.937080E+03|+8.442845E-10||RC-P}
{@INDICT|MT\1|R40554|+5.653664E+05||+1.074852E+01||RL-P}
{@INDICT|MT\1|c40812}
DriveThru examples:
{@INDICT|DT\1|r12}
{@INDICT|DT\3|rp6:r2|c412|r22}
{@LIM3|22|1.500000E+00|2.000000E+00} {@M-CL|1|cluster_C4
{@GRP|OR
{@GRP|AND
Record @M-CL: MAGICCLUSTER record {@GRP|OR
{@INDICT|MT\1|R1}
This record is used with MagicTest to return the status {@INDICT|MT\1|R2}
of a cluster test. This record is generated when the }
MagicTest cluster test fails, and when the log level {@GRP|OR
is statement is set to failures (or some higher level). {@INDICT|MT\1|R3}
This record is nested within the @BTEST record and {@INDICT|MT\1|C4}
}
indicates the pass/fail status of an analog cluster test.
}
MAGICCLUSTER records sometimes contain the following {@GRP|AND
subrecords: GROUP (@GRP) records, INDICT (@INDICT) {@INDICT|MT|0.333\1|R4|4.234291E+01|||R}
records, or no subrecords. {@GRP|OR
{@INDICT|MT|0.167\1|C2}
Table 6-39 @M-CL {@INDICT|MT|0.167\1|R5}
}
Format: {@M-CL|status|cluster_name} }
{@GRP|AND
Field Type Default Comments {@INDICT|MT|0.333\1|R6}
{@GRP|OR
status int 0 0 = passed {@INDICT|MT\1|R3}
1 = failed {@INDICT|MT\1|C4}
7 = indeterminate }
}
test due to
}
measurement error }
cluster_name str "" Name of this cluster.
Example 6-33
{@NETV|890530102019|alpha|beta|1}
■ Generated by:
• probe statement
• probe failures statement
Example 6-34
{@NODE\2|Node53|+5Volts}
Example 6-35
{@PCHK|01|c34}
Example 6-36
{@PF||1|4
{@PIN\4|10472|12235|21612|11302}
}
{@PIN\5|11571|20314|12065|20508|11443}
containing a list of failing pins.
■ Generated by:
NOTE
• probe statement
One probe record is generated for each device
• probe failures statement
tested.
■ Subrecords: @DPIN is generated when logging pins Each probe failures statement generates
to list failing device pins subrecords to report all of the failing nodes.
Example 6-38 Corresponds to: 51 record on a 3065 system.
{@PRB|1|2|U23
{@DPIN|\2|Node63||Node22|} Record @RETEST: indicate a log clear for retest
}
The presence of this record indicates that a log clear
for retest occurred. A log clear for retest
removes data which was logged and later found to be
bogus by a pinsfailed function being true.
Format: {@RETEST|datetime}
Field Type Default Comments
datetime str "" Date and time of a log clear for retest in YYMMDDHHMMSS format
(datetime$).
■ Generated by: log clear for retest statement Record @RPT: messages logged by report
Example 6-39 This record contains the text string produced by
executing any of the report statements—i.e., report
{@RETEST|890819184413}
Format: {@RPT|message}
Field Type Default Comments
message str "" The string given in a report statement.
Example 6-40
{@RPT|U91 failed}
Example 6-41
NOTE
Example of output from failing mixed test func1. This The contents of two fields, process and fail
location, depend not only on the failure but also
test has three processes: RECEIVE, FILTER, and FBMON.
The first two processes are failing, while the last passes. on whether there is a debug object present for that
test. Alternating between having and not having a
{@BLOCK|func1|1 debug object will cause inconsistent naming
{@D-T|1|4161|41|0|func1} schemes to be used by statistical quality control
{@S-PROC|RECEIVE|1|82|3|19}
{@S-PROC|FILTER|1|996|12|3}
packages, such as Pushbutton Q-STATS. Thus,
{@S-PROC|FBMON|7|0} once a test is in production, it probably is best to
} always have the debug object present.
Example of output from passing mixed test func2. In Note to the System Administrator: You can
this test all processes are passing. control this by specifying yes or no for the
Mcomp.Debug variable in the .hp3070 file
{@BLOCK|func2|0
{@D-T|0|384||0|stl01} associated with the user login.
{@S-PROC|RECEIVE|0}
{@S-PROC|FILTER|0}
{@S-PROC|CAR1|0}
{@S-PROC|CAR2|0}
{@S-PROC|FBMON|0}
}
Example 6-42
{@TJET|01|0008|u34}
■ Generated by: test shorts statement ■ Corresponds to: 06 record on an 3065 system
when preceded by a 42 record whose field 5-8 has
the value 01.
Example 6-44
{@TS-D\4|Node7|1.398537E+02|Node15|4.138792E+01}
■ Generated by: test shorts statement Record @TS-P: phantoms found while shorts
■ Corresponds to: 42 record on a 3065 system with testing
a value of either 2 or 3 in field 3-4. This record describes phantoms found while shorts
testing.
Example 6-45
{@TS-O|Node85|Node14|-1.510000E+00}
Format: {@TS-P|deviation}
Field Type Default Comments
deviation fp 0 The difference M - T, where M is the measured value and T is the threshold.
■ Generated by: test shorts statement Record @TS-S: results of shorts testing from a
■ Corresponds to: 42 record on a 3065 system with source node
a value of 4 in field 3-4. This record describes a shorts test from a source node.
Example 6-46
{@TS-P|-1.243853E+02}
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the content the board defaults files
Prerequisites
There are no prerequisites associated with using this
chapter.
Overview The board defaults file, board_defaults, provides Two versions of board defaults files are in the standard
Board Consultant with values to use in the board file directory:
when those values are not provided by data files or by
■ The board_defaults file, $AGILENT3070_ROOT/
data entry.
standard/board_defaults, contains values that
Board Consultant looks for a board_defaults file in are typical for a combinational test strategy.
the local board directory. If there is no board_defaults
■ The edge_board_defaults file, $AGILENT3070_
file in the local board directory, Board Consultant looks
ROOT/standard/edge_board_defaults,
under $AGILENT3070_ROOT/standard.
contains values that are typical for an
edge-connector-only test strategy.
NOTE
You can copy one of the standard board defaults files to
With Agilent 3070 software revision 3070
your local directory, modify it to fit your exact needs,
04.00pa, an environment variable was created so
and re-save it as board_defaults. However there are
that files can be easily transferred between
some restrictions when modifying the default file:
UNIX® and MS Windows® controllers, which
have different file systems. The environment ■ Entries are not allowed for nodes, internal
variable, $AGILENT3070_ROOT, replaces the upper devices, device options, or critical pins.
path names on both systems. For example, the
■ Cross-checking of the default board is not
$AGILENT3070_ROOT factory default value is
allowed.
C:/Agilent3070. In this document, only path
names using the environment variable are used. If If you are developing an edge-connector-only test, you
you must use actual path names, refer to older should copy the edge_board_defaults file to your
versions of the documentation. Please see The local board directory and rename it board_defaults
Root Directory Environment Variable in before performing data entry.
Administering Agilent 3070 MS Windows Systems
for further information.
The board_defaults Example 7-1 Board defaults specified in the board_defaults file
File HEADING Open Input DefaultX;
"These are the board defaults"; Load NONE;
GLOBAL OPTIONS TTL
Fixture Type EXPRESS; Drive High 3.5;
Fixture Size FULL; Drive Low 0.2;
Top Probes AllowedOFF; Receive High 2;
Heavy Probe Force8; Receive Low 0.8;
Light Probe Force4; Edge Speed 100;
Mechanical Density Threshold800; Open Input DefaultX;
Vacuum Density Threshold104; Load UP;
Test Strategy COMBINATIONAL; ECL
WireWrapping MANUAL; Drive High -0.5;
Metric Units OFF; Drive Low -2.7;
Common Lead Resistance0.5; Receive High -1.2;
Common Lead Inductance1u; Receive Low -1.5;
Capacitance CompensationON; Edge Speed 150;
DEVICE OPTIONS Open Input Default0;
Tolerance Multiplier5; Load DOWN;
Remote Sensing ON; CARD OPTIONS
Fuse Threshold 10; CMOS
Diode Current 5m; HYBRID;
Zener Current 10m; TTL
Adjust FAST; HYBRID;
Upstream Disable OFF; ECL
Upstream ConditionOFF; HYBRID;
FAMILY OPTIONS
CMOS LIBRARY OPTIONS
Drive High 4; “$AGILENT3070_ROOT/library/ttl"
Drive Low 0.8; “$AGILENT3070_ROOT/library/lsi"
Receive High 3.6; “$AGILENT3070_ROOT/library/cmos"
Receive Low 1.3; “$AGILENT3070_ROOT/library/ecl"
Edge Speed 50; “$AGILENT3070_ROOT/library/setup"
The edge_ Example 7-2 Board defaults specified in the edge_board_defaults file
board_defaults File HEADING Receive Low 1.3;
"These are the board defaults for Edge Speed 50;
edge connector use only"; Open Input Default X;
GLOBAL OPTIONS Load NONE;
Fixture Type EXPRESS; TTL
Fixture Size FULL; Drive High 3.5;
Top Probes Allowed OFF; Drive Low 0.2;
Heavy Probe Force 8; Receive High 2;
Light Probe Force 4; Receive Low 0.8;
Mechanical Density Threshold800; Edge Speed 100;
Vacuum Density Threshold 104; Open Input Default X;
Test Strategy EDGE CONNECTOR Load UP;
ONLY; ECL
WireWrapping MANUAL; Drive High -0.5;
Metric Units OFF; Drive Low -2.7;
Common Lead Resistance 0.5; Receive High -1.2;
Common Lead Inductance 1u; Receive Low -1.5;
Capacitance Compensation ON; Edge Speed 150;
DEVICE OPTIONS Open Input Default 0;
Tolerance Multiplier5; Load DOWN;
Remote Sensing ON; CARD OPTIONS
Fuse Threshold 10; CMOS
Diode Current 5m; HYBRID;
Zener Current 10m; TTL
Adjust FAST; HYBRID;
Upstream Disable OFF; ECL
Upstream Condition OFF; HYBRID;
FAMILY OPTIONS LIBRARY OPTIONS
CMOS “$AGILENT3070_ROOT/library/ttl"
Drive High 4; “$AGILENT3070_ROOT/library/lsi"
Drive Low 0.8; “$AGILENT3070_ROOT/library/cmos"
Receive High 3.6; “$AGILENT3070_ROOT/library/ecl"
Objectives
When you finish reading this chapter, you should be
able to:
■ Understand the Part Description Language (PDL),
which is the language used to describe devices in
a part description library.
Prerequisites
There are no prerequisites associated with using this
chapter.
About Part Overview This statement describes a fixed resistor (f) denoted r1.
Its nominal value is 10k ohms, and it has a tolerance of
Description Part Description Language has statements that describe +/- 5%. nr means the resistor is not individually
Language devices. These statements are stored in files, one file per replaceable; it is a child device within a parent device. If
part, in library directories. When you use the Part r1 fails during board test, a replaceable device that
Description Editor it automatically creates files precedes it in the hierarchy must be replaced.
containing the required PDL statements. Thus, test
developers will usually not need to know much about Each part description library has PDL statements like
PDL. these stored in a file. The next section provides
examples that show how these statements are used
Structure of Part Description Language together to form libraries.
Like other programming languages, PDL has a specific Look in directory $AGILENT3070_ROOT/library/
syntax. To read files containing descriptions of parts template/part_library for examples of part
written in PDL, you must understand this syntax. description library files. For complete descriptions of
Sometimes PDL describes the relationship between a the syntax of PDL, see Reference Description of PDL
parent device and its child devices. For example, on page 8-16.
external pins 1
device "u1" pins 2
NOTE
With Agilent 3070 software revision 3070
describes the connection between the external pin 1 on
04.00pa, an environment variable was created so
the parent device and pin 2 on child device u1.
that files can be easily transferred between
In other cases, PDL has keywords followed by UNIX® and MS Windows® controllers, which
parameters (some of which may be optional) that have different file systems. The environment
describe a child device. For example, the keyword variable, $AGILENT3070_ROOT, replaces the upper
resistor would be followed by a list of parameters that path names on both systems. For example, the
describe a specific resistor, like this: $AGILENT3070_ROOT factory default value is
resistor "r1", 10k, 5, 5, f, nr
C:/Agilent3070. In this document, only path
names using the environment variable are used. If
you must use actual path names, refer to older Examples of Part Description Libraries
versions of the documentation. Please see The
Root Directory Environment Variable in Shown below are several examples of how PDL is used
Administering Agilent 3070 MS Windows Systems to create entries in a part description library.
for further information.
Simple Example: A Resistor Pack
Suppose you were writing a part description library for
the resistor pack shown in Figure 8-1.
Notice that the internal devices in the figure above have describe connections between internal devices and
arbitrarily assigned pin numbers. These are needed to external pins.
Before you can use a part description library in a board A part description library file (named rpack_type123,
test, you must invoke the Pin Library Device Entry as shown in the board file) describing this device might
Form in Board Consultant (described in Chapter 2, look like this:
Agilent Board Consultant in Test Development Tools)
and make a corresponding entry there. Use the form to Example 8-2
specify the associations between device pins on the
parent part and nodes at the board level. ! Excerpt from part description library
!
After using the Pin Library Device Entry Form, the resistor "r1", 10k, 5, 5, f, nr
board file entry for the example above might look like resistor "r2", 10k, 5, 5, f, nr
this: resistor "r3", 10k, 5, 5, f, nr
external pins 1
device "r1" pins 1
Example 8-1 external pins 2
device "r2" pins 1
! Excerpt from board file external pins 3
! device "r3" pins 1
PIN LIBRARY external pins 4
rp1 PN"RPACK_TYPE123" device "r1" pins 2
CONNECTIONS device "r2" pins 2
NODE_A device "r3" pins 2
rp1.1;
NODE_B
rp1.2; Because they cannot be individually replaced, the
NODE_C internal resistors—r1 through r3—are denoted nr for
rp1.3; non-replaceable. The number following the external
NODE_D pins statement is a designator that refers to a pin
rp1.4;
number on the package, which must be an external node
that is accessible for probing.
Each pair of entries beneath the connections keyword
associates a pin on the library device with a node to be
tested. For example, NODE_A is associated with rp1.1,
which is pin 1 on rp1, NODE_B is associated with pin 2
on rp1 (rp1.2), etc.
IPG will use the part description library and information rp1%r1 nr;
entered in Board Forms to create three analog test files
during the test development process. These files are: Although this expanded listing is useful for verifying
■ rp1%r1 the contents of the board file, it is not a valid source file
because it contains percent signs, which are not allowed
■ rp1%r2 in device names. You must not replace your original
■ rp1%r3 board source file with this file.
If a resistor inside the resistor pack fails during testing, The pin designators were numbers in the preceding
the failure message associated with it will identify example, but they also could have been strings to denote
which one failed—for example, rp1%r1—and that the pins on a device whose pin designators are not strictly
entire package—rp1—must be replaced. numeric. For example, the entry in the board file:
If desired, you can list the compiled board file to Example 8-4
examine its contents. This lets you verify that the library
test was created. You use the BT-BASIC list object ! Excerpt from board file
statement to create a source listing of an object file. !
PIN LIBRARY
For example, executing rp1 PN"RPACK_TYPE123"
CONNECTIONS
list object 'board.o'
NODE_A
produces a source file listing that includes the rp1."R1"; ! Note the use of strings
following: ! for pin designators that
! were numbers in the
NODE_B ! previous example.
Example 8-3 rp1."R2";
NODE_C
resistor rp1."R3";
rp1%r1 10k 5 5 f; NODE_D
rp1%r1 10k 5 5 f; rp1."COMMON";
rp1%r1 10k 5 5 f;
internal structure rp1;
rp1%r1 nr; matches this part description library:
rp1%r1 nr;
Example 8-5
How Child Devices Inherit Traits From Parent Using Inherited Traits to Model Devices
Devices Figure 8-3 shows one section of a hypothetical device
called PK1. Suppose PK1 already has a library test (but
If you enter an asterisk (*) as a designator for a child
not a part description library) written for it. That library
device in a part description library, that occurrence of
the child device will be aliased or associated with its test describes the device so that IPG can generate a test
parent device. An aliased child device inherits several for PK1. But the library test does not help when
traits from its parent, including the parent's name, modeling the effect that PK1 has on adjacent circuitry.
replaceability attribute, testability attribute,
SAFEGUARD attribute, device options, and
(optionally) failure message. Except for a failure
message, you should never specify any of these options
for an aliased device. You can alias one child device per
part description library.
NOTE
If you have one part description library inside
another part description library, each of them can
have one aliased device, etc.
Because of pull-up resistor r1 inside driver_xyz, it library entry for this device in the board file might look
appears as if a 5K resistor is connected across pins 4 and like this:
10 of device PK1. The resistor provides a shunt
resistance across any external circuitry connected Example 8-7
between VCC and pin 4 of PK1. If IPG does not know
about the presence of r1, it may not be able to write an ! Excerpt from board file
accurate test for circuitry external to PK1. !
PIN LIBRARY
You can fix this problem by writing a part description pk1 PN"pk1_internal"
library that describes the analog characteristics of PK1 CONNECTIONS
. . .
as they relate to device driver_xyz. Suppose we call
NODE_D
this library test pk1_internal. An excerpt from the
Example 8-9
Simplifying Data Entry Because a part description library contains the same
information you enter to describe devices, it provides a
Creating a part description library for each part you use
shortcut you can use to keep from manually entering all
can greatly reduce the amount of data you must
this redundant information. Instead of repeatedly
manually enter in Board Consultant (or in Board
describing resistor R789 in the Resistor Device Entry
Forms). For example, suppose your company uses 500
Form, you can create a single part description library
different resistors to build its circuit boards. Each of
and then simply refer to it by name in the Pin Library
these resistors has characteristics such as its nominal
Device Entry Form. After you have done this, entering
value, its plus and minus tolerances, and whether it is
only one item—the name of the library device—in the
fixed or variable.
Pin Library Device Entry Form is equivalent to entering
Suppose one of these resistors is type R789. Each time the full characteristics of the device in the Resistor
you use a type R789 resistor on a board, you must Device Entry Form.
re-enter its characteristics—nominal value, fixed or
Suppose resistor type R789 is denoted as r1 on a board
variable, tolerances—in the Resistor Device Entry
to be tested. The library entry for r1/R789 in the board
Form. If you use the same type R789 resistor 50 times
file might look like this:
on a single board (as a pull-up resistor, perhaps), you
must describe its characteristics 50 times.
Example 8-10 alternate name with this occurrence of the child device.
This lets this instance of the aliased child device inherit
! Excerpt from board file the name of the parent device from the board file. The
! corrected file now looks like this:
PIN LIBRARY
r1 PN"R789"
CONNECTIONS Example 8-12
NODE_A
r1.1; ! Excerpt from part description library
NODE_B !
r1.2; resistor *, 10, 5, 5, f
! Notice the asterisk as a
! device designator
Initially, you might think the PDL file for the example ! throughout this example.
should look like this: external pins 1
device * pins 1
Example 8-11 external pins 2
device * pins 2
! Excerpt from part description library
! If this library device fails, the cause will be accurately
resistor "r1", 10, 5, 5, f identified as r1.
external pins 1
device "r1" pins 1 Although this simple example showed a resistor, you
external pins 2 can use this method to reduce the amount of data
device "r1" pins 2
entered for other devices. The more complex the device,
the more effort you can save by creating a part
But describing resistor r1 this way causes a problem. A description library for it.
failing test will identify the cause of the failure as
r1%r1; that is, this file describes a child device within a
You probably will not want to create part description
parent device, which does not match the real case of a libraries for all devices, especially those that are
single device with no internal devices. described elsewhere. For example, the description of a
voltage regulator IC probably belongs in an analog
To prevent this anomaly, enter an asterisk (*) instead of functional library test, and not here.
a device designator. The asterisk associates an alias or
A Shortcut for Denoting Non-Testable Devices Note that you also can make a part description library
device untestable by specifying the nt option for each
Suppose you have created a part description library for a device inside the library. But then you can never test that
parent device that contains child devices that should not library device. The best way to control the testability of
be tested. Perhaps you are using a part description a library device is by modifying the testability of the
library to model the internal characteristics of a device. parent device in the board file.
Here, the part description library is used solely to
improve the accuracy of tests of the surrounding Restrictions on Nested Entries
circuitry and you do not want to test the library device
itself. A part description library can contain other library
devices if the nesting or layering of libraries within
The best way to denote an entire part description library
libraries does not exceed 16. For example, one part
as untestable is to specify NT for the parent device in the
description library can contain any number of library
board file, which makes its contents (the child devices)
devices. But those library devices may contain other
non-testable. The following excerpt from a library entry
library devices, which may contain other library
in the board file shows NT used to declare a library
devices, etc. This nesting of library entries must not
device and its child devices as non-testable.
exceed 16 levels.
Example 8-13 Another restriction on nesting is that you cannot use an
asterisk (*) to alias a part description library device that
! Excerpt from board file is inside another part description library. For example,
! the following statement is not valid
PIN LIBRARY
vr1 NT PN"LM_XYZ" pin library *, pn"part_description_library"
. . .
when the part number (pn) references another part
description library. This restriction is necessary because
This global definition for testability in the board file inherited traits may cause problems when nested part
overrides the individual definitions for testability in a description libraries contain duplicate designators for
PDL file. None of the child devices will be tested, but devices.
IPG will still use the characteristics of the child devices
when writing other tests.
Reference The following topics list the full syntax of the ■ You can specify that a pin on a child device is
statements that comprise PDL. Because part description simultaneously connected to more than one pin on
Description of PDL library files are automatically created whenever you use its parent device—that is, you can manually
the Part Description Editor, you do not need to specify:
understand PDL syntax to this level of detail in order to external pins 1,2
use part description libraries. device "r1" pins 2
! Pin 2 of "r1" connects to two external pins
The syntaxes below are shown in the same format used
for the programming statements described in the Syntax The Part Description Editor lets you specify only the
Reference documentation. With the exception of items following association between pins:
enclosed in quotes—that is, string constants—PDL
external pins 1
syntax is case-sensitive. Thus, C1 and c1 are both valid, device "r1" pins 2
but NT is not a valid alternate for nt. ! Pin 2 of "r1" connects to one external pin
Example 8-14
Syntax:
capacitor <designator>, <value>, <+tol>, <-tol>, <type>
capacitor <designator>, <value>, <+tol>, <-tol>, <type>, <options>
capacitor <designator>, <value>, <+tol>, <-tol>, <type>, <message>
capacitor <designator>, <value>, <+tol>, <-tol>, <type>, <options>, <message>
capacitor *, <value>, <+tol>, <-tol>, <type>
capacitor *, <value>, <+tol>, <-tol>, <type>, <message>
Example:
capacitor "c1", 10u, 10, 10, f, nr
capacitor "c23", 100p, 20, 20, v, pn"123-456", "Varies integration time"
capacitor *, 100p, 20, 20, v! Asterisk lets child device inherit traits from parent device
Parameter Description
<designator> A unique name that identifies a specific capacitor; for example, c1. A <designator> cannot be longer
than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its parent
device. You can alias one child device per part description library.
<value> The nominal value of the capacitor in farads.
<+tol>, <-tol> The plus and minus tolerances as percentages of the capacitor value. Both are positive numbers.
<type> Can be f or v to denote whether the capacitor is fixed or variable.
nt (no test) Instructs IPG not to write a test for the capacitor.
nr Denotes the capacitor as non-replaceable; that is, the capacitor is a child device inside a parent device
and cannot be individually replaced. If you specify nr for a capacitor and its test fails, you will be told to
replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the capacitor. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the capacitor. A <message> cannot be longer than 40 characters.
Example 8-15
Syntax:
connector <designator>
connector <designator>, <options>
connector <designator>, <message>
connector <designator>, <options>, <message>
connector *
connector *, <message>
<designator> and <message> are <string constants>
Parameter Description
<designator> A unique name that identifies a specific connector; for example, j10. A <designator> cannot be
longer than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its parent
device. You can alias one child device per part description library.
Parameter Description
nt (no test) Instructs IPG not to write a test for the connector. If you leave the <options> field blank, the
options default to nt.
nr Because a connector is not testable, this option is not used.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the connector. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the connector. A <message> cannot be longer than 40 characters.
diode
The diode keyword precedes a list of parameters shown
in Table 8-3 on page 8-21 that describes an individual
diode.
Example 8-16
Syntax:
diode <designator>, <high value>, <low value>
diode <designator>, <high value>, <low value>, <options>
diode <designator>, <high value>, <low value>, <message>
diode <designator>, <high value>, <low value>, <options>, <message>
diode *, <high value>, <low value>
diode *, <high value>, <low value>, <message>
<designator> and <message> are <string constants>
<high value>, <low value> are <numeric constants>
Example:
diode "cr1", nt
diode "cr2", .8, .4, pn"D123-3", "Located next to transformer t1"
diode *, .8, .4 ! Asterisk lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific diode; for example, cr1. A <designator> cannot be longer than 48
characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its parent
device. You can alias one child device per part description library.
Parameter Description
<high value> Specifies the upper test limit, in volts, for the voltage drop across the diode when it is forward biased.
<low value> Specifies the lower test limit, in volts, for the voltage drop across the diode when it is forward biased.
nt (no test) Instructs IPG not to write a test for the diode.
nr Denotes the diode as non-replaceable; that is, the diode is a child device inside a parent device and cannot
be individually replaced. If you specify nr for a diode and its test fails, you will be told to replace its parent.
If you leave the <options> field blank, the options default to nr.
pn<part The part number—such as the vendor's part number or your internal part number—of the diode. A part
number> number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the diode. A <message> cannot be longer than 40 characters.
external pins
The external pins keyword precedes a list of pins on
a part description library device that are accessible via
the fixture. Unless the external pin is denoted
noconnect because it does not connect to anything,
external pins is followed by a list of child devices
and pins to which the external pin(s) connects.
Parameters are shown in Table 8-4 on page 8-24
Example 8-17
Syntax:
external pins<pin list>; noconnect
external pins<pin list>
<device pin list>
<pin list> can be:
<pin name>
<pin name>, . . . <pin name>
<device pin list> consists of: device <device name> pin <pin name>
<device name> is a <string constant>
<pin name> can be a <numeric constant> or a <string constant>
Example:
external pins 5 ! External pin 5 on the parent device is connected
device "r5" pins 2 ! to pin 2 on child device r5.
external pin 8; noconnect ! The pin does not connect to a child device.
external pins 1, 20 ! External pins 1 and 20 on the parent device are
device "c3" pins 1 ! connected to pins on three child devices.
device "cr1" pins "a"
device "r9" pins 2
Parameter Description
<pin name> The name or number of one or more external pins on a part description library device.
noconnect Denotes the pin as accessible via the fixture but not connected to anything inside the library
device.
<device pin list> A list of pins associated with <device name>.
<device name> The identifier of a child device associated with the external pin.
fet
The fet keyword precedes a list of parameters shown in
Table 8-5 on page 8-25 that describes an individual
field-effect transistor.
Example 8-18
Syntax:
fet <designator>, <high value>, <low value>, <type>
fet <designator>, <high value>, <low value>, <type>, <options>
fet <designator>, <high value>, <low value>, <type>, <message>
fet <designator>, <high value>, <low value>, <type>, <options>, <message>
fet *, <high value>, <low value>, <type>
fet *, <high value>, <low value>, <type>, <message>
n
p
<options> can be one or more of the following, separated by commas:
nt
nr
pn<part number>
<part number> is a <string constant>
Examples:
fet "qf1", 200, 100, n
fet "qf2", 300, 150, p, pn"234", "qf2 is located near j3"
fet *, 300, 150, p ! Asterisk lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific field-effect transistor; for example, qf1. A <designator>
cannot be longer than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
<high value> Specifies, in ohms, the high test limit for the channel resistance (Ron).
<low value> Specifies, in ohms, the low test limit for the channel resistance (Ron).
<type> Can be n or p to denote whether the FET is an n-channel or p-channel device.
nt (no test) Instructs IPG not to write a test for the FET.
nr Denotes the FET as non-replaceable; that is, the FET is a child device inside a parent device and
cannot be individually replaced. If you specify nr for a FET and its test fails, you will be told to
replace its parent. If you leave the <options> field blank, the options default to nr.
Parameter Description
pn<part number> The part number—such as the vendor's part number or your internal part number—of the FET. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the FET. A <message> cannot be longer than 40 characters.
fuse
The fuse keyword precedes a list of parameters shown
in Table 8-6 on page 8-27 that describes an individual
fuse.
Example 8-19
Syntax:
fuse <designator>, <max current>
fuse <designator>, <max current>, <options>
fuse <designator>, <max current>, <message>
fuse <designator>, <max current>, <options>, <message>
fuse *, <max current>
fuse *, <max current>, <message>
<designator> and <message> are <string constants>
<max current> is a <numeric constant>
<options> can be one or more of the following, separated by commas:
nt
nr
pn<part number>
<part number> is a <string constant>
Example:
fuse "f1", 2, nr
fuse "f3", 1.5, pn"89-124", "Fuse for +5 volt supply"
fuse *, 1.5 ! Asterisk lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific fuse; for example, f1. A <designator> cannot be longer
than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
Parameter Description
<max current> The maximum permissible current in amps.
nt (no test) Instructs IPG not to write a test for the fuse.
nr Denotes the fuse as non-replaceable; that is, the fuse is a child device inside a parent device and
cannot be individually replaced. If you specify nr for a fuse and its test fails, you will be told to
replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the fuse. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the fuse. A <message> cannot be longer than 40 characters.
inductor
The inductor keyword precedes a list of parameters
shown in Table 8-7 on page 8-30 that describes an
individual inductor.
Example 8-20
Syntax:
inductor <designator>, <value>, <+tol>, <-tol>, <resistance>, <type>
inductor <designator>, <value>, <+tol>, <-tol>, <resistance>, <type>, <options>
inductor <designator>, <value>, <+tol>, <-tol>, <resistance>, <type>, <message>
inductor <designator>, <value>, <+tol>, <-tol>, <resistance>, <type>, <options>, <message>
inductor *, <value>, <+tol>, <-tol>, <resistance>, <type>
inductor *, <value>, <+tol>, <-tol>, <resistance>, <type>, <message>
<designator> and <message> are <string constants>
<value>, <+tol>, <-tol>, <resistance> are <numeric constants>
<type> can be:
f
v
<options> can be one or more of the following, separated by commas:
nt
nr
pn<part number>
<part number> is a <string constant>
Example:
inductor "l1", 1.5, 5, 5, 10, f
inductor "l2", 20u, 10, 10, 2, v, "pn8A9", "Tuning inductor"
inductor *, 20u, 10, 10, 2, v! * lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific inductor; for example, l1. A <designator> cannot be longer
than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
<value> The nominal value of the inductor in Henries.
<+tol>, <-tol> The plus and minus tolerances as percentages of the inductor value. Both are positive numbers.
<resistance> The series resistance of the inductor in ohms.
<type> Can be f or v to denote whether the inductor is fixed or variable.
nt (no test) Instructs IPG not to write a test for the inductor.
nr Denotes the inductor as non-replaceable; that is, the inductor is a child device inside a parent device
and cannot be individually replaced. If you specify nr for an inductor and its test fails, you will be told
to replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the inductor. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the inductor. A <message> cannot be longer than 40 characters.
Example 8-21
Syntax:
internal node<node name>
<device pin list>
internal node<node name>; nomanual
<device pin list>
<node name> can be a <numeric constant> or a <string constant>
<device pin list> consists of: device <device name> pins <pin name>
<device name> is a <string constant>
<pin name> can be a <numeric constant> or a <string constant>
Example:
internal node "c7r15" ! Internal node is a connection between pin 1 of
device "c7" pins 1 ! c7 and pin 2 of r15.
device "r15" pins 2
internal node "c4c6r12r13" ! Internal node connects together the pins
device "c4" pins 1 ! on four devices.
device "c6" pins 2
device "r12" pins 2
device "r13" pins 1
Parameter Description
<node name> The identifier of an internal node inside a part description library device. This is a node that is not
accessible via the fixture.
<device pin list> A list of pins associated with <device name>.
<device name> The identifier of a device associated with the internal node.
<pin name> The name (or number) of the pin(s) associated with <device name>.
nomanual Denotes the node as inaccessible to the operator; that is, manual probing is not possible
jumper
The jumper keyword precedes a list of parameters
shown in Table 8-9 on page 8-34 that describes an
individual jumper.
Example 8-22
Syntax:
jumper <designator>, <status>
jumper <designator>, <status>, <options>
jumper <designator>, <status>, <message>
jumper <designator>, <status>, <options>, <message>
jumper *, <status>
jumper *, <status>, <message>
<designator> and <message> are <string constants>
<status> can be:
open
closed
Examples:
jumper "jp1", closed
jumper "jp2", open, nt, "Jumper will be installed later."
jumper *, open ! Asterisk lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific jumper; for example, jp1. A <designator> cannot be longer
than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
<status> Can be open or closed to denote the status of the jumper when it is tested.
nt (no test) Instructs IPG not to write a test for the jumper.
nr Denotes the jumper as non-replaceable; that is, the jumper is a child device inside a parent device
and cannot be individually replaced. If you specify nr for a jumper and its test fails, you will be told to
replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the jumper. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the jumper. A <message> cannot be longer than 40 characters.
pin library identifiers for these other library devices. Parameters are
shown in Table 8-10 on page 8-35
The library keyword precedes a list of component
designators that identify other pin library devices that
appear in a part description library. For example, a
custom device called device1 might contain child
devices that are library devices. Thus, the part
description library for device1 must also include
Example 8-23
Syntax:
pin library <designator>, pn<part number>
pin library <designator>, pn<part number>, <message>
pin library <designator>, <options>, pn<part number>
pin library <designator>, <options>, pn<part number>, <message>
pin library *, pn<part number>
pin library *, pn<part number>, <message>
Parameter Description
<designator> A unique name that identifies a specific pin library device. A <designator> cannot be longer than
48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
Parameter Description
nr Denotes the library device as non-replaceable; that is, the library device is a child device inside a
parent device and cannot be individually replaced. If you specify nr for a library device and its
test fails, you will be told to replace its parent. If you leave the <options> field blank, the options
default to nr.
ns Denotes no safeguard for this library device—that is, SAFEGUARD is disabled.
nt (no test) Instructs IPG not to write a test for the library device.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the library
device. A part number is used for reference purposes only and cannot be longer than 24
characters.
<message> A message associated with the library device. A <message> cannot be longer than 40
characters.
potentiometer
The potentiometer keyword precedes a list of
parameters shown in Table 8-11 on page 8-37 that
describes an individual potentiometer.
Example 8-24
Syntax:
potentiometer <designator>, <value>, <+tol>, <-tol>
potentiometer <designator>, <value>, <+tol>, <-tol>, <options>
potentiometer <designator>, <value>, <+tol>, <-tol>, <message>
potentiometer <designator>, <value>, <+tol>, <-tol>, <options>, <message>
potentiometer *, <value>, <+tol>, <-tol>
potentiometer *, <value>, <+tol>, <-tol>, <message>
<designator> and <message> are <string constants>
<value>, <+tol>, <-tol> are <numeric constants>
<options> can be one or more of the following, separated by commas:
nt
nr
pn<part number>
<part number> is <string constant>
Example:
potentiometer "p1", 1M, 20, 20, nr
potentiometer "p2", 10k, 10, 10, nt, pn"R2A-34", "Gain adjustment"
potentiometer *, 10K, 10, 10! * lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific potentiometer; for example, p1. A <designator> cannot be
longer than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
Parameter Description
<value> The nominal value of the potentiometer in ohms.
<+tol>, <-tol> The plus and minus tolerances as percentages of the potentiometer value. Both are positive
numbers.
nt (no test) Instructs IPG not to write a test for the potentiometer.
nr Denotes the potentiometer as non-replaceable; that is, the potentiometer is a child device inside a
parent device and cannot be individually replaced. If you specify nr for a potentiometer and its test
fails, you will be told to replace its parent. If you leave the <options> field blank, the options default to
nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the
potentiometer. A part number is used for reference purposes only and cannot be longer than 24
characters.
<message> A message associated with the potentiometer. A <message> cannot be longer than 40 characters.
resistor
The resistor keyword precedes a list of parameters
shown in Table 8-12 on page 8-40 that describes an
individual resistor.
Example 8-25
Syntax:
resistor <designator>, <value>, <+tol>, <-tol>, <type>
resistor <designator>, <value>, <+tol>, <-tol>, <type>, <options>
resistor <designator>, <value>, <+tol>, <-tol>, <type>, <message>
resistor <designator>, <value>, <+tol>, <-tol>, <type>, <options>, <message>
resistor *, <value>, <+tol>, <-tol>, <type>
resistor *, <value>, <+tol>, <-tol>, <type>, <message>
<designator> and <message> are <string constants>
<value>, <+tol>, <-tol> are <numeric constants>
<type> can be:
f
v
<options> can be one or more of the following, separated by commas:
nt
nr
pn<part number>
<part number> is a <string constant>
Example:
resistor "r1", 4.7, 5, 5, f
resistor "r2", 5k, 10, 10, v, pn"325-5", "Located near connector"
resistor *, 5k, 10, 10, v! Asterisk lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific resistor; for example, r1. A <designator> cannot be
longer than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its
parent device. You can alias one child device per part description library.
<value> The nominal value of the resistor in ohms.
<+tol>, <-tol> The plus and minus tolerances expressed as percentages of the resistor value. Both are positive
numbers.
<type> Can be f or v to denote whether the resistor is fixed or variable.
nt (no test) Instructs IPG not to write a test for the resistor.
nr Denotes the resistor as non-replaceable; that is, the resistor is a child device inside a parent device
and cannot be individually replaced. If you specify nr for a resistor and its test fails, you will be told to
replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the resistor. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the resistor. A <message> cannot be longer than 40 characters.
switch
The switch keyword precedes a list of parameters
(shown in Table 8-13 on page 8-42) that describe an
individual switch.
Example 8-26
Syntax:
switch <designator>, <common pin>, <contact pin>
switch <designator>, <common pin>, <contact pin>, <options>
switch <designator>, <common pin>, <contact pin>, <message>
switch <designator>, <common pin>, <contact pin>, <options>, <message>
switch *, <common pin>, <contact pin>
switch *, <common pin>, <contact pin>, <message>
Parameter Description
<designator> A unique name that identifies a specific switch; for example, s1. A <designator> cannot be longer than
48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its parent
device. You can alias one child device per part description library.
<common pin> Specifies the common pin in a switch.
<contact> Specifies the contact pin in a switch. This can be OFF (the switch is open) or the identifier of a pin to
which the common pin is connected during the test.
<contact pin> The identifier of a pin to which the common pin is connected during the test.
nt (no test) Instructs IPG not to write a test for the switch.
nr Denotes the switch as non-replaceable; that is, the switch is a child device inside a parent device and
cannot be individually replaced. If you specify nr for a switch and its test fails, you will be told to replace
its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the switch. A part
number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the switch. A <message> cannot be longer than 40 characters.
transistor
The transistor keyword precedes a list of parameters
shown in Table 8-14 on page 8-44 that describes an
individual bipolar transistor.
Example 8-27
Syntax:
transistor <designator>, <high value>, <low value>, <type>
transistor <designator>, <high value>, <low value>, <type>, <options>
transistor <designator>, <high value>, <low value>, <type>, <message>
transistor <designator>, <high value>, <low value>, <type>, <options>, <message>
transistor *, <high value>, <low value>, <type>
transistor *, <high value>, <low value>, <type>, <message>
Example:
transistor "q1", 200, 50, n, nr
transistor "q2", 100, 20, p, "pn1245-25", "Part of preamplifier"
transistor *, 100, 20 ! Asterisk lets child device inherit traits from parent device.
Parameter Description
<designator> A unique name that identifies a specific bipolar transistor; for example, q1. A <designator> cannot be
longer than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its parent
device. You can alias one child device per part description library.
<high value> The upper test limit specified as a DC beta value.
<low value> The lower test limit specified as a DC beta value.
<type> Can be n or p to denote whether the bipolar transistor is an npn or a pnp device.
nt (no test) Instructs IPG not to write a test for the transistor.
nr Denotes the transistor as non-replaceable; that is, the transistor is a child device inside a parent device
and cannot be individually replaced. If you specify nr for a transistor and its test fails, you will be told to
replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the transistor. A
part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the transistor. A <message> cannot be longer than 40 characters.
zener
The zener keyword precedes a list of parameters shown
in Table 8-15 on page 8-45 that describes an individual
Zener diode.
Example 8-28
Syntax:
zener <designator>, <value>, <+tol>, <-tol>
zener <designator>, <value>, <+tol>, <-tol>, <options>
zener <designator>, <value>, <+tol>, <-tol>, <message>
zener <designator>, <value>, <+tol>, <-tol>, <options>, <message>
zener *, <value>, <+tol>, <-tol>
zener *, <value>, <+tol>, <-tol>, <message>
<designator> and <message> are <string constants>
<value>, <+tol>, <-tol> are <numeric constants>
Parameter Description
<designator> A unique name that identifies a specific Zener diode; for example, ds1. A <designator> cannot be
longer than 48 characters.
* Specifying an asterisk as a <designator> aliases a child device, which lets it inherit traits from its parent
device. You can alias one child device per part description library.
Parameter Description
<value> The nominal value in volts.
<+tol>, <-tol> The plus and minus tolerances expressed as percentages of the Zener value. Both are positive
numbers.
nt (no test) Instructs IPG not to write a test for the Zener diode.
nr Denotes the Zener diode as non-replaceable; that is, the Zener diode is a child device inside a parent
device and cannot be individually replaced. If you specify nr for a Zener diode and its test fails, you will
be told to replace its parent. If you leave the <options> field blank, the options default to nr.
pn<part number> The part number—such as the vendor's part number or your internal part number—of the Zener diode.
A part number is used for reference purposes only and cannot be longer than 24 characters.
<message> A message associated with the Zener diode. A <message> cannot be longer than 40 characters.
Numerics A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Index
R W
Records wirelist.o file
test digital, 6-50 list the object, 4-2
reference description of PDL, 8-16 wirewrapping, 5-6
restrictions on nested entries in part description libraries, 8-15
rotating the board
syntax in the board_xy file, 2-10