Publication number 16557-97001
First edition, April 1998
For Safety information, Warranties, and Regulatory
information, see the pages behind the Index
Copyright Hewlett-Packard Company 1987, 1990, 1993, 1994, 1998
All Rights Reserved
HP 16557D State/Timing Logic
Analyzer
ii
In This Book
Programming the HP 16557D
1
This guide, combined with the
HP 16500/16501A Programmer’s
, provides you with the information
Guide
needed to program the HP 16557D logic
analyzer module. Each module has its
own reference to supplement the
mainframe manual since not all
mainframes will be configured with the
same modules.
This manual is organized in three parts.
Part 1 consists of chapters 1 and 2 which
contain general information and
instructions to help you get started.
Chapter 1 also contains:
Mainframe system commands that are
•
frequently used with the logic analyzer
module
HP 16557D logic analyzer command
•
tree
Alphabetic command-to-subsystem
•
directory
Chapter 2 contains module-level
commands.
Part 2 consists of chapters 3 through 16
which contain the subsystem commands
for the logic analyzer and chapter 17
which contains information on the
SYSTem:DATA and SYSTem:SETup
commands for this module.
2
3
4
5
6
7
8
9
10
11
12
13
Module Lev el Commands
MACHine Subsystem
WLISt Subsystem
SFORmat Subsystem
STRigger ( S TR ace) Subsystem
SLISt Subsystem
SWAVeform Subsystem
SCHart Subsystem
COMPare Subsystem
TFORmat Subsystem
TTRigger (TTR ace) Subsystem
TWAVeform Subsystem
14
TLISt Subsystem
iii
Part 3, chapter 18, contains program examples of actual tasks that show you
how to get started in programming the HP 16557D logic analyzer. These
examples are written in HP BASIC 6.2; however, the program concepts can
be used in any other popular programming language.
Error messages for the HP 16557D are included in generic system error
messages and are in the
HP 16500/16501A Programmer’s Guide
.
iv
15
SYMBol Subsystem
16
17
18
SPA Subsystem
DATA and S ETup Commands
Programming Examples
Index
v
vi
Contents
Part 1 General Information
1 Programming the HP 16557D
Selecting the Module 1–3
Programming the Logic Analyzer 1–3
Mainframe Commands 1–5
Command Set Organization 1–8
Module Status Reporting 1–12
MESE<N> 1–13
MESR<N> 1–15
Data Format 17–3
SYSTem:DATA 17–4
Section Header Description 17–6
Section Data 17–6
Data Preamble Description 17–7
Acquisition Data Description 17–12
Time Tag Data Description 17–14
SYSTem:SETup 17–14
Contents–8
Part 3 Programming Examples
18 Programming Examples
Making a Timing Analyzer Measurement 18–3
Making a State Analyzer Measurement 18–5
Making a State Compare Analyzer Measurement 18–9
Transferring the Logic Analyzer Configuration 18–14
Checking for Measurement Completion 18–18
Sending Queries to the Logic Analyzer 18–19
Index
Contents
Contents–9
Contents–10
Part 1
1 Introduction to Programming
2 Module Level Commands
General Information
1
Programming the HP 16557D
Introduction
This chapter introduces you to the basic command structure used to
program the logic analyzer. Also included is an example program that
sets up the timing analyzer for a basic timing measurement.
Additional program examples are in chapter 18.
1–2
Programming the HP 16 557D
Selecting the Module
Selecting the Module
Before you can program the logic analyzer, you must first "select" it. This
directs your commands to the logic analyzer.
To select the module, use the system command :SELect followed by the
numeric reference for the slot location of the logic analyzer (1 through 10
referring to slots A through J respectively). For example, if the logic analyzer
is in slot E, then the command:
:SELect 5
would select this module. For more information on the select command,
refer to the
your HP Sales Office.
HP 16500/16501A Programmer’s Guide
. It is available through
Programming the Logic Analyzer
A typical logic analyzer program will do the following:
select the appropriate module
•
name a specified analyzer
•
specify the analyzer type
•
assign pods
•
assign labels
•
sets pod thresholds
•
specify a trigger condition
•
set up the display
•
specify acquisition type
•
start acquiring data
•
1–3
Programming the HP 16557D
Programming the Logic Analy z er
The following example program sets up the logic analyzer to make a simple
timing analyzer measurement.
The three Xs (XXX) after the "OUTPUT" statements in the previous example
refer to the device address required for programming over either HP-IB or
RS-232-C. Refer to your controller manual and programming language
reference manual for information on initializing the interface.
Program Comments
Line 10 selects the logic analyzer in slot C.
Line 20 names machine (analyzer) 1 "TIMING".
Line 30 specifies machine 1 is a timing analyzer.
Line 40 assigns pods 1 and 2 to machine 1.
Line 50 sets up the Timing Format menu by assigning the label COUNT, and
assigning a polarity and channels to the label.
Line 60 selects the trigger pattern for the timing analyzer.
Line 70 sets the range to 100 ns (10 times s/div).
Line 80 changes the onscreen display to the Timing Waveforms menu.
Line 90 inserts the label "COUNT" in the Timing Waveform menu.
Line 100 specifies the Single run mode.
Line 110 starts data acquisition.
For more information on the specific logic analyzer commands, refer to
chapters 2 through 17.
1–4
Programming the HP 16 557D
Mainframe Commands
Mainframe Comm ands
These commands are part of the HP 16500/16501A mainframe system and
are mentioned here only for reference. For more information on these
commands, refer to the
CARDcage? Query
The CARDcage query returns a string of integers which identifies the
modules that are installed in the mainframe. The returned string is in two
parts. The first five two-digit numbers identify the card type. The
identification number for the HP 16557D logic analyzer is 34. A "−1" in the
first part of the string indicates no card is installed in the slot.
The five single-digit numbers in the second part of the string indicate which
card has the controlling software for the module; that is, where the master
card is located.
HP 16500/16501A Programmer’s Guide
.
Example
12,11,−1,−1,34,2,2,0,0,5
A returned string of
oscilloscope time base card (ID number 11) is loaded in slot B and the
oscilloscope acquisition card (ID number 12) is loaded in slot A. The next
two slots (C and D) are empty (−1). Slot E contains a logic analyzer module
(ID number 34).
The next group of numbers (
installed in slots A and B with the master card in slot B. The "0" indicates an
empty slot, or the module software is not recognized or is not loaded. The
last digit (5) in this group indicates a one-card module is loaded in slot E.
Complete information for the CARDcage query is in the
Programmer’s Guide
12,11,-1,-1,34,2,2,0,0,5
2,2,0,0,5
.
) indicate that a two-card module is
means that an
HP 16500/16501A
1–5
Programming the HP 16557D
Mainframe C om m ands
MENU Command/query
The MENU command selects a new displayed menu. The first parameter (X)
specifies the desired module. The optional, second parameter specifies the
desired menu in the module. The second parameter defaults to 0 if it is not
specified. The query returns the currently selected and displayed menu.
For the HP 16557D Logic Analyzer:
X,0 — State/Timing
•
Configuration
X,1 — Format 1
•
X,2 — Format 2
•
X,3 — Trigger 1
•
X,4 — Trigger 2
•
X,5 — Waveform 1
•
X,6 — Waveform 2
•
X,7 — Listing 1
•
If a machine is turned off, its menus are not available. The Mixed Display is
available only when one or both analyzers are state analyzers.
SELect Command/query
The SELect command selects which module or intermodule will have parser
control. SELect 0 selects the intermodule, SELect 1 through 5 selects
modules A through E respectively. Values −1 and −2 select software options
1 and 2. The SELect query returns the currently selected module.
STARt Comman d
The STARt command starts the specified module. If the specified module is
configured for intermodule (group run), STARt will start all modules
configured as part of the intermodule run.
X,8 — Listing 2
•
X,9 — Mixed Display
•
X,10 — Compare 1
•
X,11 — Compare 2
•
X,12 — Chart 1
•
X,13 — Chart 2
•
X,14 — SPA 1
•
X,15 — SPA 2
•
1–6
Programming the HP 16 557D
Mainframe Commands
STOP Command
The STOP command stops the specified module. If the specified module is
configured as part of an intermodule run, STOP will stop all associated
modules.
STARt and STOP are overlapped commands. Overlapped commands allow
execution of subsequent commands while the logic analyzer operations
initiated by the overlapped command are still in progress. For more
information, see *OPC and *WAI commands in Chapter 5 of the
HP 16500/16501A Programmer’s Guide
RMODe Command/query
The RMODe command specifies the run mode (single or repetitive) for a
module. If the selected module is configured for intermodule, the
intermodule run mode will be set by this command. The RMODe query
returns the current setting.
SYSTem:ERRor? Query
The SYSTem:ERRor query returns the oldest error in the error queue. In
order to return all the errors in the error queue, a simple FOR/NEXT loop can
be written to query the queue until all errors are returned. Once all errors
are returned, the query will return zeros.
.
SYSTem:PRINt Command/query
The SYSTem:PRINt command initiates a print of the screen or listing buffer
over the current printer communication interface. The SYSTem:PRINt query
sends the screen or listing buffer data over the current controller
communication interface.
MMEMory Subsystem
The MMEMory Subsystem provides access to both internal disc drives for
loading and storing configurations.
INTermodule Subsystem
The INTermodule Subsystem commands are used to specify intermodule
arming between multiple modules.
1–7
Programming the HP 16557D
Command Set Organization
Command Set Organization
The command set for the HP 16557D is divided into module-level commands
and subsystem commands. Module-level commands are listed in Chapter 2,
"Module Level Commands" and each of the subsystem commands are covered
in their individual chapters starting with Chapter 3, "MACHine Subsystem."
Each of these chapters contains a description of the subsystem, syntax
diagrams, and the commands in alphabetical order. The commands are
shown in long form and short form using upper and lowercase letters. For
example, LABel indicates that the long form of the command is LABEL and
the short form is LAB. Each of the commands contain a description of the
command and its arguments, the command syntax, and a programming
example.
Figure 1-1 on the following page shows the command tree for the HP 16557D
logic analyzer module. The (x) following the SELect command at the top of
the tree represents the slot number where the logic analyzer module is
installed. The number may range from 1 through 10, representing slots A
through J, respectively.
1–8
Figure 1-1
Programming the HP 16 557D
Command Set Organization
HP 16557D Command Tree
1–9
Programming the HP 16557D
Command Set Organization
Table 1-1
Alphabetical Command-to-Subsystem Direct ory
CommandWhere Used
ACCumulateSCHart, SWAVef or m , TWAVeform
ACQModeTFORmat
ACQuisit io nSTRigger, SWAVeform, TTRig ger ,
TWAVeform
ARMMACHine
ARMLineModule Leve l Co m m ands
ASSignMACHine
AUTorangeSPA
BASESYMBol
BRANchSTRigger, TTRigger
BUCKetSPA
CENterSCHart, SWAVef or m , TWAVeform
CLEarCOMPare, STRigger, TT Ri gger
CLOCkSFORmat
CLRPatternSLISt, SWAVeform, TLISt, TWAVeform
CLRStatSW AVeform, TWAVeform
CMASkCOM Pare
COLu mnSLISt, TLISt
COPYCOMPare
DATACOMPare, SLISt, T LISt
DBLockModule Level Commands
DELaySWAVeform, TWAVeform, WLISt
EDGETTRigger
FINDCOMPare, STRigger, TTRigger
HAXisSCHart
HIGHSPA
HISTatisticSPA
HISTogramSPA
INSertSWAVeform, TW AVeform, WLISt
LABelSFORmat, SPA, TFORmat
LEVelarmMACHine
LINECOMPare, SLISt, TLISt, WLISt
LOWSPA
MASTerSFORmat
MENUCOMPare
MINusTWAVeform, WLISt
MLENgthSPA , ST Ri gger , S WAVeform, TTRigger,
TWAVeform
MMODeSLISt, TLISt, TWAV eform
MODESPA
CommandWhere Used
MOPQualSFORmat
MQUalSFORmat
NAMEMACHine
OCONditionTLISt, TWAVeform
OMARkerSPA
OPA T ternSLISt, TLISt, T WAVe form
OSEarchSLISt, TLISt, TWAVeform
OSTa teSLISt, TLISt, WLISt
OTAGSLISt, TLISt
OTHerSPA
OTIMeTWAVeform, WLISt
OVERlaySLISt, TWAVeform, WLISt
OVERViewSPA
OVSTatisticSPA
PATTernSYMBol
PLUSTWAVe form, WLISt
QUALifierSPA
RANGeCOMPare, SPA , ST Ri gger , SWAVeform,
SYMBol, TFO Rm at , TWAVeform, WL ISt
REMoveSFORmat , SLI St , SWAVeform, SYMBol ,
TFORmat, TLI St , TWAVeform, WL IS t
RENameMACHine
RESourceMACHine
RUNTilCOMPare, SLISt, TLISt, TWA V eform
SEQuenceSTRigger, TTRigger
SETCOMPare
SETHoldSFORmat
SLAVeSF ORmat
SOPQualSFORmat
SPERiodTFORmat, TWAVeform
SETHoldSFORmat
SLAVeSF ORmat
SOPQualSFORmat
SPERiodTFORmat, TWAVeform
SQUalSFORmat
STOReSTRigger
TAGSTRigger
TAKenbranc hSTRigger, SWAVeform
TAVerageSLISt, TLISt, TWAVeform
1–10
Table 1-1, continued
Alphabetical Command-to-Subsystem Direct ory, continued
VAXisSCHart
VRUNsSLISt, T LISt, T WAVeform
WIDThSYMBol
XCONditionTLISt, TWAVeform
XMARkerSPA
XOTagSLISt, TLISt
XOTim eS LISt, T LISt, T WAVeform, WL ISt
XPATternSLISt, TLIS t, TWAVeform
XSEa rchSLISt, TLISt, TWAVeform
XSTateSLISt, TLISt, WLI St
XTAGSLISt, TLISt
XTIMeTWAVeform, WLISt
1–11
Figure 1-2
Programming the HP 16557D
Module Status R eporting
Module Status Reporting
Each module reports its status to the Module Event Status Register
(MESR<N>), which in turn reports to the Combined Event Status Register
(CESR) in the HP 16500/16501A mainframe (see
Programmer’s Guide
enabled by the Module Event Status Enable Register (MESE<N>).
The MESE<N> and MESR<N> instructions are not used in conjunction with
the SELect command, so they are not listed in the HP 16557D’s command
tree.
The following descriptions of the MESE<N> and MESR<N> instructions
provide the module specific information needed to enable and interpret the
contents of the registers.
chapter 6). The Module Event Status Register is
HP 16500/16501A
Module Status Reporting
1–12
MESE<N>
Programming the HP 16 557D
MESE<N>
Command
<enable_mask>
Example
Query
:MESE <N> <enable_mask>
The MESE<N> command sets the Module Event Status Enable register bits.
The MESE register contains a mask value for the bits enabled in the MESR
register. A one in the MESE will enable the corresponding bit in the MESR, a
zero will disable the bit.
The first parameter <N> specifies the module. The second parameter
specifies the enable value.
Refer to table 1-2 for information about the Module Event Status register bits,
bit weights, and what each bit masks for the module. Complete information
for status reporting is in chapter 6 of the
Guide
manual.
<N>{1|2|3|4|5|6|7|8|9|10}
refers to slot A, and so on.
integer from 0 to 255
OUTPU T XXX;":MESE5 1"
:MESE<N>?
HP 16500/16501A Programmer’s
number of slot in which the module resides. 1
Returned Form at
Example
The MESE query returns the current setting.
[:MESE<N>]<enable_mask><NL>
10 OUTPUT XXX;":MESE5?"
20 ENTER XXX; Mes
30 PRINT Mes
40 END
1–13
Programming the HP 16557D
MESE<N>
Table 1-2Module Event S tatus Enable Register (A "1" enabl es the MESR bit)
BitWeightEnables
7128Not used
664Not used
532Not used
416Not used
38Pattern searches failed
24Trigger found
12RNT-Run until sat i sf i ed
01MC-Measurem ent com plete
The Module Event Status Enable Register contains a mask value for the bits
to be enabled in the Module Event Status Register (MESR). A one in the
MESE enables the corresponding bit in the MESR, and a zero disables the bit.
1–14
MESR<N>
Programming the HP 16 557D
MESR<N>
Query
Returned Form at
<status>
Example
:MESR<N>?
The MESR<N> query returns the contents of the Module Event Status
register. When you read the MESR, the value returned is the total bit weights
of all bits that are set at the time the register is read. Reading the register
clears the Module Event Status Register.
Table 1-3 shows each bit in the Module Event Status Register and its bit
weight for this module.
The parameter 1 through 10 refers to the module in slot A through J
respectively.
[MESR<N>]<status><NL>
<N>{1|2|3|4|5|6|7|8|9|10}
integer from 0 to 255
10 OUTPUT XXX;":MESR5?"
20 ENTER XXX; Mer
30 PRINT Mer
40 END
number of slot in which the module resides
1–15
Programming the HP 16557D
MESR<N>
Table 1-3Module Event S tatus Register
BitWeightCondition
7128Not used
664Not used
532Not used
416Not used
381 = One or more pat t ern searches faile d
241 = Trigger found
121 = Run until satisfied
011 = Measurement com pl et e
0 = Pattern sea rches did not fail
0 = Trigger not found
0 = Run until not satisfied
0 = Measurement not complete
1–16
2
Module Level Commands
Introduction
The logic analyzer module level commands access the global
functions of the HP 16557D logic analyzer module. These commands
are:
• ARMLine
• DBLock
• MACHine
• SPA
• WLISt
2–2
Figure 2-1
Module Level Commands
Module Leve l Sy ntax Diagram
2–3
Module Level C ommands
Table 2-1Module Lev el Parameter Value s
ParameterTyp e of Parameter or Comman dReference
machine_num
arm_parm arm parameters see chapter 3
assign_parmassignment parameterssee chapter 3
level_parmlevel parameterssee chapter 3
name_parmname parameterssee chapter 3
rename_parmrename parameter ssee chapter 3
res_parmresource parameterssee chapter 3
type_parmtype parameterssee chapter 3
sformat_cm dsstate format subsystem comm andssee chapter 5
strace_cmdsstate trace subsy st em com m andssee chapter 6
slist_cmd sstate list subsyste m com m andssee chapter 7
swaveform _cmdsstate wav eform subsystem commandssee chapter 8
schart_cmdsst at e chart subsystem commandssee chapter 9
compare_cmdscompare subsystem commandssee chapter 10
tformat_cmd stiming form at subsystem commandssee chapt er 11
ttrace_cmdstim i ng trace subsyst em commandssee chapter 12
twaveform_cm dstiming waveform subsystem
tlist_cmdstiming listing subsy st em commandssee chapter 14
symbol_cmdssym bol subsystem comm andssee chapter 15
mode_parmSPA mode parameterssee chapter 16
overv_cmdsSPA overview comm andssee chapter 16
hist_cmdsSPA histogram commandssee chapter 16
tint_cmdsSPA time in te rv al com m andssee chapter 16
Wlist_cmdswaveforms/list i ng commandssee chapter 4
MACHin e{1|2}
commands
see chapter 13
2–4
ARMLine
Module Level Commands
ARMLine
Command
Example
Query
Returned Form at
Example
:ARML ine MACHine<N>
The ARMLine command selects which machine generates the arm out signal
on the IMB (intermodule bus). This command is only valid when two
analyzers are on. However, the query is always valid.
<N>{1|2}
OUTPU T XXX;":ARMLINE MACHINE1"
:ARMLine?
If the analyzer is set up for OR’d triggering, then the ARMLine query returns
an empty string. This cannot be used for setting up OR’d triggering.
[:ARMLine]{MACHine<N>|}<NL>
OUTPU T XXX;":ARMLine?"
DBLock
Command
:DBLoc k {PACKed | UN Pa cked}
The DBLock command specifies the data block format that is contained in
the response from a :SYSTem:DATA? query. See Chapter 17 for more
information on the :SYSTem:DATA command and query.
The PACKed option (default) uploads data in a compressed format. This
option is used to upload data for archiving, or for reloading back into the
analyzer. When an analyzer configuration is saved to disk, the PACKed data
format is always used (regardless of the current DBLock selection).
2–5
Module Level C ommands
MACHine
The UNPacked option uploads data in a format that is easy to interpret and
process. The UNPacked format cannot be downloaded back into the analyzer.
Example
Query
Returned Form at
Example
Command
OUTPU T XXX;":DBLOCK PACKED"
:DBLock?
The DBLock query returns the current data block format selection.
[:DBLock]{PACKed | UNPacked}<NL>
OUTPU T XXX;":DBLock?"
MACHine
:MACHine<N>
The MACHine command selects which of the two machines (analyzers) the
subsequent commands or queries will refer to. MACHine is also a subsystem
containing commands that control the logic analyzer system level functions.
Examples include pod assignments, analyzer names, and analyzer type. See
chapter 3 for details about the MACHine subsystem.
<N>{1|2}
Example
OUTPU T XXX;":MACHINE1:NAME ’DRAMTEST’"
2–6
SPA
Module Level Commands
SPA
Command
Example
Command
:SPA<N>
The SPA command selects which of the two analyzers the subsequent
commands or queries will refer to. SPA is also a subsystem containing
commands that control the logic analyzer SPA functions. See chapter 16 for
details about the SPA subsystem.
<N>{1|2}
OUTPU T XXX;":SPA1:MODE OVERVIEW"
WLISt
:WLISt
The WLISt selector accesses the commands used to place markers and query
marker positions in Timing/State Mixed mode. The WLISt subsystem also
contains commands that allows you to insert waveforms from other
time-correlated machines and modules. The details of the WLISt subsystem
are in chapter 4.
9 SCHart Subsystem
10 COMPare Subsystem
11 TFORmat Subsystem
12 TTRigger (TTRace) Subsystem
13 TWAVeform Subsystem
14 TLISt Subsystem
15 SYMBol Subsystem
16 SPA Subsystem
17 DATA and SETup Commands
Commands
3
MACHine Subsystem
Introduction
The MACHine subsystem contains the commands that control the
machine level of operation of the logic analyzer. Some of the functions
are normally found in the Trigger menu. These commands are:
• ARM
• LEVelarm
The functions of three of these commands reside in the State/Timing
Configuration menu. These commands are:
• ASSign
• NAME
• TYPE
Even though the functions of the following commands reside in the
Format menu they are at the machine level of the command tree and
are therefore located in the MACHine subsystem. These commands
are:
• REName
• RESource
3–2
Figure 3-1
MACHine Subsystem
Machine Subsystem Syntax Diagram
3–3
MACHine Subsystem
MACHine
Table 3-1 Machine Sub sy stem Parameter V alues
ParameterValue
arm_source
pod_list
pod_numinteger from 1 t o 12
arm_levelinteger from 1 to 11 repr esenting sequen ce l e vel
machine_namestring of up to 10 alphanumer i c characters
res_id
new_textstring of up to 8 alphanumeric characters
state_terms
res_terms
{RUN | IN Termodule | MACHine {1|2}}
{NONE | <p od _n um >[, <pod_n um >] ...}
{<stat e_terms> }
or
{<stat e_terms> |EDGE{1|2}}
{A|B|C|D|E|F|G|H|I|J|
RANGE{1|2}|TIMER{1|2}}
{<res_id>[,<res_id>]...}
for state anal yzer
for timing analyzer
Selector
Example
MACHine
:MACHine<N>
The MACHine <N> selector specifies which of the two analyzers (machines)
available in the module the commands or queries following will refer to.
Because the MACHine<N> command is a root level command, it will normally
appear as the first element of a compound header.
<N>{1|2}
OUTPUT XXX; ":MACHINE1:NAME ’TIMING’"
(the machine number)
3–4
ARM
MACHine Subsystem
ARM
Command
<arm_source>{RUN|INTermodule|MACHine{1|2}}
Example
Query
Returned Form at
Example
:MACHi ne{1|2}: AR M <arm_sou rce>
The ARM command specifies the arming source of the specified analyzer
(machine). The RUN option disables the arm source. For example, if you do
not want to use either the intermodule bus or the other machine to arm the
current machine, you specify the RUN option.
If you are using an HP 16500C mainframe, you can set up OR’d Triggering by
arming the module from INTermodule when intermodule is set to Group Run
with OR TRIGGER. See the
OUTPUT XXX;":MACHINE1:ARM MACHINE2"
HP 16500C Programmer’s Guide
:MACHine{1|2}:ARM?
The ARM query returns the source that the current analyzer (machine) will
be armed by.
[:MACH in e{ 1| 2}:ARM] <a rm _s ource>
OUTPU T XXX;":MACHINE1:ARM?"
for details.
3–5
MACHine Subsystem
ASSign
ASSign
Command
<pod_list>{NONE | <pod #>[, <pod #>]...}
<pod#>
Example
Query
Returned Form at
:MACHine{1|2}:ASSign <pod_list>
The ASSign command assigns pods to a particular analyzer (machine). The
ASSign command will assign two pods for each pod number you specify
because pods must be assigned to analyzers in pairs. NONE clears all pods
from the specified analyzer (machine) and places them in the "unassigned"
category.
If you specify a pod number greater than currently available, the logic
analysis system generates an "Argument out of range" error.
an integer from 1 to 12
This example assigns pod pairs 1/2 and 5/6 to machine 1:
OUTPUT XXX;":MACHINE1:ASSIGN 5, 2, 1"
:MACHine{1|2}:ASSign?
The ASSign query returns which pods are assigned to the current analyzer
(machine).
[:MACHine{1|2}:ASSign] <pod_list><NL>
Example
OUTPU T XXX;":MACHINE1:ASSIGN?"
3–6
LEVelarm
MACHine Subsystem
LEVelarm
Command
<arm_level>
Example
Query
Returned Form at
Example
:MACHine{1|2}:LEVelarm <arm_level>
The LEVelarm command allows you to specify the sequence level for a
specified machine that will be armed by the Intermodule Bus or the other
machine. This command is only valid if the specified machine is on and the
arming source is not set to RUN with the ARM command.
integer from 1 to 11 representing sequence level
OUTPU T XXX;":MACHINE1:LEVELARM 2"
:MACHine{1|2}:LEVelarm?
The LEVelarm query returns the current sequence level receiving the arming
for a specified machine.
[:MACHine{1|2}:LEVelarm] <arm_level><NL>
OUTPU T XXX;":MACHINE1:LEVELARM?"
3–7
MACHine Subsystem
NAME
NAME
Command
<machine_name>
Example
Query
Returned Form at
Example
:MACHine{1|2}:NAME <machine_name>
The NAME command allows you to assign a name of up to 10 characters to a
particular analyzer (machine) for easier identification. Spaces are valid
characters.
string of up to 10 alphanumeric characters
OUTPU T XXX;":MACHINE1:NAME ’DRAM TEST’"
:MACHine{1|2}:NAME?
The NAME query returns the current analyzer name as an ASCII string.
The REName command allows you to assign a specific name of up to eight
characters to terms A through J, Range 1 and 2, Timer 1 and 2, and Edge 1
and 2. The terms do not have to be assigned to the specified machine. The
DEFault option sets all resource term names to the default names assigned
when turning on the instrument.
The RESource command allows you to assign resource terms A through J,
Range 1 and 2, and Timer 1 and 2 to a particular analyzer.
In the timing analyzer only, two additional resource terms are available.
These terms are Edge 1 and 2. These terms are always assigned to the
machine that is configured as the timing analyzer.
for state analyzer
{<state_terms>|EDGE{1|2}}
for timing analyzer
3–9
MACHine Subsystem
TYPE
Example
Query
Returned Form at
Example
Command
OUTPU T XXX;":MACHINE1:RESOURCE A,C,RANGE1 "
:MACHine{1|2}:RESOURCE?
The RESource query returns the current resource terms assigned to the
specified analyzer. If no resource terms are assigned, no <res_id> is returned.
The TYPE command specifies what type a specified analyzer (machine) will
be. The analyzer types are state or timing. State Compare (COMPare) and
SPA are considered to be state analyzers because they use an external clock,
but need to specified as COMPare or SPA.
The TYPE command also allows you to turn off a particular machine.
Only one timing analyzer can be specified at a time.
Example
<analyzer
type>
{OFF|COMPare|SPA|STATe|TIMing}
OUTPU T XXX;":MACHINE1:TYPE STATE"
3–10
MACHine Subsystem
TYPE
Query
Returned Form at
Example
:MACHine{1|2}:TYPE?
The TYPE query returns the current analyzer type for the specified analyzer.
[:MACHine{1|2}:TYPE] <analyzer type><NL>
OUTPU T XXX;":MACHINE1:TYPE?"
3–11
3–12
4
WLISt Subsystem
Introduction
The commands in the WLISt (Waveforms/LISting) subsystem control
the X and O marker placement on the waveforms portion of the
Timing/State mixed mode display. The XSTate and OSTate queries
return what states the X and O markers are on. Because the markers
can only be placed on the timing waveforms, the queries return what
state (state acquisition memory location) the marked pattern is stored
in.
In order to have mixed mode, one machine must be a state analyzer
with time tagging on (use MACHine< N>:STRigger:TAG TIME).
• DELay
• INSert
• LINE
• MINus
• OSTate
• OTIMe
• OVERlay
• PLUS
• RANGe
• REMove
• XOTime
• XSTate
• XTIMe
4–2
Figure 4-1
WLISt Subsystem
WLISt Subs ystem Syntax Di agram
4–3
WLISt Subsystem
WLISt
Table 4-1WLISt Subsystem Parameter Values
ParameterValue
delay_valu ereal number b et w een -2500 s and +250 0 s
module_spe c
bit_idinteger from 0 to 31
label_namestring of up to 6 alphanumeric characters
line_num_m id _screeninteger from -2080768 to +2 080768
waveform
acquisition_spec
time_valuereal number
time_rangereal number bet w een 10 ns and 10 ks
{1|2|3 |4|5|6|7 |8|9|10}
is in s talled)
string containing
{A|B|C|D|E|F|G|H|I|J}
WLISt
(slot where m aster card
<acquisition_spec>{1|2}
Selector
Example
:WLISt
The WLISt (Waveforms/LISting) selector is used as a part of a compound
header to access the settings normally found in the Mixed Mode menu.
Because the WLISt command is a root-level command, it will always appear
as the first element of a compound header.
The WLISt subsystem is only available when one or more state analyzers with
time tagging on are specified.
OUTPU T XXX;":WLIST:XTIME 40.0E−6"
4–4
DELay
WLISt Subsystem
DELay
Command
<delay_value>
Example
Query
Returned Form at
Example
:WLISt:DELay <delay_value>
The DELay command specifies the amount of time between the timing
trigger and the horizontal center of the the timing waveform display. The
allowable values for delay are −2500 s to +2500 s.
real number between −2500 s and +2500 s
OUTPU T XXX;":WLIST:DELAY 100E−6"
:WLISt:DELay?
The DELay query returns the current time offset (delay) value from the
trigger.
[:WLI St:DELay] <delay_value><NL>
OUTPU T XXX;":WLIST:DELAY?"
4–5
WLISt Subsystem
INSert
INSert
Command
:WLISt :INSert [< mo dule_spe c>,]<lab el _name>
[,{<bi t_id>|OV ER lay|ALL} ]
The INSert command inserts waveforms in the timing waveform display. The
waveforms are added from top to bottom up to a maximum of 96 waveforms.
Once 96 waveforms are present, each time you insert another waveform, it
replaces the last waveform.
Time-correlated waveforms from the oscilloscope and another logic analyzer
module can also be inserted in the logic analyzer’s timing waveforms display.
Oscilloscope waveforms occupy the same display space as three logic
analyzer waveforms. When inserting waveforms from the oscilloscope or
another logic analyzer module, the optional first parameter must be used,
which is the module specifier. 1 through 10 corresponds to modules A
through J. If you do not specify the module, the selected module is assumed.
The second parameter specifies the label name that will be inserted. The
optional third parameter specifies the label bit number, overlay, or all. If a
number is specified, only the waveform for that bit number is added to the
screen.
If you specify OVERlay, all the bits of the label are displayed as a composite
overlaid waveform. If you specify ALL, all the bits are displayed sequentially.
If you do not specify the third parameter, ALL is assumed.
<module_spec>{1|2|3|4|5|6|7|8|9|10}
<label_name>
<bit_id>
Example
string of up to 6 alphanumeric characters
integer from 0 to 31
OUTPUT XXX;":WLIST:INSERT 3, ’WAVE’,9"
4–6
Inserting Oscilloscope Waveforms
WLISt Subsystem
LINE
Command
<module_spec>{1|2|3|4|5|6|7|8|9|10}
<label_name>
Example
:WLISt :INSert <m od ule_spec >,<label _n ame>
This inserts a waveform from an oscilloscope to the timing waveforms display.
string of one alpha and one numeric character, identical to that on the
oscilloscope waveform display.
OUTPUT XXX;":WLIST:INSERT 3, ’C1’"
LINE
Command
<line_num_mid_
screen>
:WLISt :LINE <lin e_ num_mid_ screen>
The LINE command allows you to scroll the timing analyzer listing vertically.
The command specifies the state line number relative to the trigger. The
analyzer then highlights the specified line at the center of the screen.
integer from -2080768 to +2080768.
slot in which master card is installed
Example
OUTPUT XXX;":WLIST:LINE 0"
4–7
WLISt Subsystem
MINus
Query
Returned Form at
Example
Command
:WLISt:LINE?
The LINE query returns the line number for the state currently in the data
listing roll box at center screen.
The MINus command inserts time-correlated A−B (A minus B) oscilloscope
waveforms on the screen. The first parameter is the module specifier where
the oscilloscope module resides, where 1 through 10 refers to slots A through
J. The next two parameters specify which waveforms will be subtracted from
each other.
MINus only inser ts os cillos cope waveforms. It cannot be used with analyzer
waveforms.
<module_spec>{1|2|3|4|5|6|7|8|9|10}
<waveform>
<acquisition_
spec>
Example
string containing
{A|B|C|D|E|F|G|H|I|J}
OUTPUT XXX; ":WLIST:MINUS 1,’A1’,’A2’"
4–8
<acquisition_spec>{1|2}
(slot where master card is located)
(slot where acquisition card is located)
OSTate
WLISt Subsystem
OSTate
Query
Returned Form at
<state_num>
Example
Command
<time_value>
Example
:WLISt:OSTate?
The OSTate query returns the state where the O marker is positioned. If data
is not valid, the query returns 2147483647.
[:WLIS t: OS Ta te] <state _n um ><NL>
integer
OUTPU T XXX;":WLIST:OSTATE?"
OTIMe
:WLISt:OTIMe <time_value>
The OTIMe command positions the O marker on the timing waveforms in the
mixed mode display. If the data is not valid, the command performs no
action.
real number
OUTPU T XXX;":WLIST:OTIME 40.0E−6"
4–9
WLISt Subsystem
OVERlay
Query
Returned Form at
Example
Command
:WLISt:OTIMe?
The OTIMe query returns the O marker position in time. If data is not valid,
the query returns 9.9E37.
The OVERlay command overlays two or more oscilloscope waveforms and
adds the resultant waveform to the current waveform display. The first
parameter of the command syntax specifies which slot contains the
oscilloscope time base card. The next parameters are the labels of the
waveforms that are to be overlaid.
Overlay only inserts oscilloscope waveforms. It cannot be used with analyzer
waveforms.
<module_spec>{1|2|3|4|5|6|7|8|9|10}
<waveform>
<acquisition_
spec>
Example
string containing
{A|B|C|D|E|F|G|H|I|J}
OUTPUT XXX;":WLIST:OVERLAY 3, ’C1’,’B1’"
4–10
<acquisition_spec>{1|2}
(slot where master card is located)
(slot where acquisition card is located)
PLUS
WLISt Subsystem
PLUS
Command
<module_spec>{1|2|3|4|5|6|7|8|9|10}
<waveform>
<acquisition_
spec>
Example
:WLISt :PLUS <mod ul e_spec>, <wavefor m> ,<wavefo rm>
The PLUS command inserts time-correlated A+B oscilloscope waveforms on
the screen. The first parameter specifies which slot is the oscilloscope
module. 1 through 10 refers to slots A through J. The next two parameters
specify which waveforms will be added to each other.
PLUS only inserts oscillosc ope waveforms. It cannot be used wit h analyzer
waveforms.
string containing
{A|B|C|D|E|F|G|H|I|J}
OUTPUT XXX; ":WLIST:PLUS 1,’A1’,’A2’"
<acquisition_spec>{1|2}
(slot where master card is located)
(slot where acquisition card is located)
4–11
WLISt Subsystem
RANGe
RANGe
Command
<time_range>
Example
Query
Returned Form at
Example
:WLISt:RANGe <time_value>
The RANGe command specifies the full-screen time in the timing waveform
menu. It is equivalent to ten times the seconds per division setting on the
display. The allowable values for RANGe are from 10 ns to 10 ks.
real number between 10 ns and 10 ks
OUTPU T XXX;":WLIST:RANGE 100E−9"
:WLISt:RANGe?
The RANGe query returns the current full-screen time.
[:WLI St:RANGe] <time_value><NL>
OUTPU T XXX;":WLIST:RANGE?"
REMove
Command
Example
:WLISt:REMove
The REMove command deletes all waveforms from the display.
OUTPU T XXX;":WLIST:REMOVE"
4–12
XOTime
WLISt Subsystem
XOTime
Query
Returned Form at
<time_value>
Example
Query
Returned Form at
<state_num>
:WLISt:XOTime?
The XOTime query returns the time from the X marker to the O marker. If
data is not valid, the query returns 9.9E37.
[:WLIS t: XO Ti me] <time_ va lu e><NL>
real number
OUTPU T XXX;":WLIST:XOTIME?"
XSTate
:WLISt:XSTate?
The XSTate query returns the state where the X marker is positioned. If data
is not valid, the query returns 2147483647.
[:WLIS t: XS Ta te] <state _n um ><NL>
integer
Example
OUTPU T XXX;":WLIST:XSTATE?"
4–13
WLISt Subsystem
XTIMe
XTIMe
Command
<time_value>
Example
Query
Returned Form at
Example
:WLISt:XTIMe <time_value>
The XTIMe command positions the X marker on the timing waveforms in the
mixed mode display. If the data is not valid, the command performs no
action.
real number
OUTPU T XXX;":WLIST:XTIME 40.0E−6"
:WLISt:XTIMe?
The XTIMe query returns the X marker position in time. If data is not valid,
the query returns 9.9E37.
[:WLI St:XTIMe] <time_value><NL>
OUTPU T XXX;":WLIST:XTIME?"
4–14
5
SFORmat Subsystem
Introduction
The SFORmat subsystem contains the commands available for the
State Format menu in the HP 16557D logic analyzer module. These
commands are:
• CLOCk
• LABel
• MASTer
• MOPQual
• MQUal
• REMove
• SETHold
• SLAVe
• SOPQual
• SQUal
• THReshold
5–2
Figure 5-1
SFORmat Subsystem
SFORmat Subsystem Syntax Diagram
5–3
Figure 5-1 (continued)
SFORmat Subsystem
SFORmat Subsystem Syntax Diagram (continued)
5–4
Table 5-1SFORmat Subsystem Parameter Values
ParameterValue
<N> an integer from 1 to 12
label_namestring of up to 6 alphanumeric characters
polarity
clock_bitsformat (in teger from 0 to 65535) for a clock (c lo cks are assigned
upper_bitsformat (in teger from 0 to 65535) for a pod (pods are assigned in
lower_bitsformat (integer from 0 t o 65535) for a pod (po ds are assigned in
clock_id
clock_spec
clock_pair_id
qual_operation
qual_num
qual_level
pod_numan integer from 1 to 12
set_hold_v al ue
valuevoltage (real num ber) -6.00 to +6.00
{POSit iv e | NE Ga tive}
in decreasing order)
decreasing order )
decreasing order )
{J | K | L | M}
{OFF | RISing | FALLing | BOTH}
{1 | 2}
{AND|OR}
{1 | 2 | 3 | 4}
{OFF | LO W | HIGH}
{0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}
SFORmat Subsystem
5–5
SFORmat Subsystem
SFORmat
SFORmat
Selector
Example
Command
:MACHine{1|2}:SFORmat
The SFORmat (State Format) selector is used as a part of a compound
header to access the settings in the State Format menu. It always follows the
MACHine selector because it selects a branch directly below the MACHine
level in the command tree.
OUTPUT XXX;":MACHINE2:SFORMAT:MASTER J, RISING"
CLOCk
:MACHine{1|2}:SFORmat:CLOCk<N> <clock_mode>
The CLOCk command selects the clocking mode for a given pod when the
pod is assigned to the state analyzer. When the MASTer option is specified,
the pod will sample all channels on the master clock. When the SLAVe option
is specified, the pod will sample all channels on the slave clock. When the
DEMultiplex option is specified, only one pod of a pod pair can acquire data.
The bits of the selected pod will be clocked by the demultiplex master for
labels with bits assigned under the Master pod. The same bits will be clocked
by the demultiplex slave for labels with bits assigned under the Slave pod.
The master clock always follows the slave clock when both are used.
<N>
an integer from 1 to 12
<clock_mode>{MASTer | SLAVe | DEMultiplex}
Example
OUTPU T XXX;":MACHINE1:SFORMAT:CLOCK2 MAST ER"
5–6
SFORmat Subsystem
LABel
Query
Returned Form at
Example
Command
:MACHine{1|2}:SFORmat:CLOCk<N>?
The CLOCk query returns the current clocking mode for a given pod.
The LABel command allows you to specify polarity and assign channels to
new or existing labels. If the specified label name does not match an existing
label name, a new label will be created.
The order of the pod-specification parameters is significant. The first one
listed will match the highest-numbered pod assigned to the machine you’re
using. Each pod specification after that is assigned to the next highestnumbered pod. This way the specifications match the left-to-right
descending order of the pods you see on the Format display. Not including
enough pod specifications results in the lowest numbered pod(s) being
assigned a value of zero (all channels excluded). If you include more pod
specifications than there are pods for that machine, the extra ones will be
ignored. However, an error is reported any time more than 22 pod
specifications are listed.
The polarity can be specified at any point after the label name.
Because pods contain 16 channels, the format value for a pod must be
between 0 and 65535 (2
each bit will correspond to a single channel. A "1" in a bit position means the
associated channel in that pod is assigned to the label. A "0" in a bit position
means the associated channel in that pod is excluded from the label. Leading
zeroes may be omitted. For example, assigning #B1111001100 is equivalent
to entering "......****..**.." through the touchscreen.
A label can not have a total of more than 32 channels assigned to it.
16
−
1). When giving the pod assignment in binary,
5–7
SFORmat Subsystem
LABel
<name>
string of up to 6 alphanumeric characters
<polarity>{POSitive | NEGative}
<clock_bits>
format (integer from 0 to 65535) for a clock (clocks are assigned in
decreasing order)
<upper_bits>
<lower_bits>
format (integer from 0 to 65535) for a pod (pods are assigned in decreasing
order)
The LABel query returns the current specification for the selected (by name)
label. If the label does not exist, nothing is returned. The polarity is always
returned as the first parameter. Numbers are always returned in decimal
format. Label names are case-sensitive.
Returned Form at
[:MACH in e{ 1| 2}:SFORm at :L ABel] <nam e> ,< po larity>
[, <ass ignment>]...<NL>
The MASTer clock command allows you to specify a master clock for a given
machine. The master clock is used in all clocking modes (Master, Slave, and
Demultiplexed). Each command deals with only one clock (J,K,L,M);
therefore, a complete clock specification requires four commands, one for
each clock. Edge specifications (RISing, FALLing, or BOTH) are ORed.
At least one clock edge must be specified.
<clock_id>{J|K|L|M}
<clock_spec>{OFF|RISing|FALLing|BOTH}
Example
Query
Returned Form at
OUTPUT XXX;":MACHINE2:SFORMAT:MASTER J, RISING"
:MACHi ne{1|2}: SF ORmat:MA STer? <clo ck _id>
The MASTer query returns the clock specification for the specified clock.
:MACHi ne{1|2}: SF ORmat:MO PQual <clo ck _pair_id >,
<qual_ operatio n>
The MOPQual (master operation qualifier) command allows you to specify
either the AND or the OR operation between master clock qualifier pair 1/2,
or between master clock qualifier pair 3/4. For example, you can specify a
master clock operation qualifier 1 AND 2.
{1|2}
id>
{AND|OR}
OUTPUT XXX;":MACHINE1:SFORMAT:MOPQUAL 1,AND"
where 2 indicates qualifier pair 3/4.
:MACHine{1|2}:SFORmat:MOPQual? <clock_pair_id>
The MOPQual query returns the operation qualifier specified for the master
clock.
The SETHold (setup/hold) command allows you to set the setup and hold
specification for the state analyzer.
Even though the command requires integers to specify the setup and hold,
the query returns the current settings in a string. For example, if you send
the integer 0 for the setup and hold value, the query will return 3.0/0.0 ns as
an ASCII string when you have one clock and one edge specified.
5–12
SFORmat Subsystem
SETHold
<set_hold_
Table 5-2
Example
<pod_num>
value>
an integer from 1 to 12
integer
{0|1|2|3|4|5|6|7|8|9}
representing the following setup and
hold values:
Setup and hold values
For one clock and on e edgeFor one clock and both edgesMultiple Clock s
:MACHi ne{1|2}: SF ORmat:SL AVe <clock _i d>,
<clock _spec>
The SLAVe clock command allows you to specify a slave clock for a given
machine. The slave clock is only used in the Slave and Demultiplexed
clocking modes. Each command deals with only one clock (J,K,L,M);
therefore, a complete clock specification requires four commands, one for
each clock. Edge specifications (RISing, FALLing, or BOTH) are ORed.
When slave clock is being used at least one edge must be specified.
<clock_id>{J|K|L|M}
<clock_spec>{OFF|RISing|FALLing|BOTH}
Example
Query
Returned Form at
OUTPUT XXX;":MACHINE2:SFORMAT:SLAVE J, RISING"
:MACHine{1|2}:SFORmat:SLAVe?<clock_id>
The SLAVe query returns the clock specification for the specified clock.
[:MACH in e{ 1| 2}:SFORm at :S LAVe] <clo ck _i d> ,<clock_ sp ec ><NL>
Example
OUTPU T XXX;":MACHINE2:SFORMAT:SLAVE? K"
5–14
SOPQual
SFORmat Subsystem
SOPQual
Command
<clock_pair_
<qual_
operation>
Example
Query
Returned Form at
id>
:MACHi ne{1|2}: SF ORmat:SO PQual <clo ck _pair_id >,
<qual_ operatio n>
The SOPQual (slave operation qualifier) command allows you to specify
either the AND or the OR operation between slave clock qualifier pair 1/2, or
between slave clock qualifier pair 3/4. For example you can specify a slave
clock operation qualifier 1 AND 2.
{1|2}
where 2 specifies qualifier pair 3/4
{AND|OR}
OUTPUT XXX;":MACHine2:SFORMAT:SOPQUAL 1,AND"
:MACHine{1|2}:SFORmat:SOPQual? <clock_pair_id>
The SOPQual query returns the operation qualifier specified for the slave
clock.
The THReshold command allows you to set the voltage threshold for a given
pod to ECL, TTL, or a specific voltage from −6.00 V to +6.00 V in 0.05 volt
increments.
an integer from 1 to 12 indicating pod number
real number between −6.00 to +6.00
default value of +1.6 V
default value of −1.3 V
OUTPU T XXX;":MACHINE1:SFORMAT:THRESHOLD 1 4.0"
:MACHine{1|2}:SFORmat:THReshold<N>?
The THReshold query returns the current threshold for a given pod.
[:MACHine{1|2}:SFORmat:THReshold<N>] <value><NL>
Example
OUTPU T XXX;":MACHINE1:SFORMAT:THRESHOLD 4?"
5–17
5–18
6
STRigger (STRace) Subsystem
Introduction
The STRigger subsystem contains the commands available for the
State Trigger menu in the HP 16557D logic analyzer module. The
State Trigger subsystem will also accept the STRace selector as used
in previous HP 16500-Series logic analyzer modules to eliminate the
need to rewrite programs containing STRace as the selector keyword.
The STRigger subsystem commands are:
• ACQuisition
• BRANch
• CLEar
• FIND
• MLENgth
• RANGe
• SEQuence
• STORe
• TAG
• TAKenbranch
• TCONtrol
• TERM
• TIMER
• TPOSition
6–2
Figure 6-1
STRigger (S TR ace) Subsystem
STRigger Subsystem Syntax Diagram
6–3
Figure 6-1 (continued)
STRigger (S TR ace) Subsystem
STRigger Subsystem Syntax Diagram (continued)
6–4
Table 6-1STRigger Subsystem Parameter Values
ParameterValue
branch_qualif ier
qualifier see "Qualifier" on page 6–6
to_lev_numinteger from 1 to last level
proceed_qualifier
occurrencenumber from 1 to 1 04 8575
label_namestring of up to 6 alphanumeric characters
start_pattern
stop_pattern
num_of_level sinteger from 2 to 12
lev_of_tri ginteger from 1 to (number of existing seque nce l evels - 1)
store_qualif i er
state_tag_qualifier
timer_num
timer_value400 ns to 500 seconds
term_id
pattern
post_valueinteger from 0 t o 100 representing percentage
memory_length
The qualifier for the state trigger subsystem can be terms A through J, Timer
1 and 2, and Range 1 and 2. In addition, qualifiers can be the NOT boolean
function of terms, timers, and ranges. The qualifier can also be an expression
or combination of expressions as shown below and figure 6-2, "Complex
Qualifier," on page 6-10.
The following parameters show how qualifiers are specified in all commands
of the STRigger subsystem that use
Qualifiers are quoted strings and, therefore, need quotes.
•
Expressions are evaluated from left to right.
•
Parentheses are used to change the order evaluation and are optional.
•
An expression must map into the combination logic presented in the
•
combination pop-up menu (see figure 6-2 on page 6-10).
Examples
’A’
’( A OR B )’
’(( A OR B ) AND C )’
’(( A OR B ) AND C AND IN_RANGE2 )’
’(( A OR B ) AND ( C AND IN_RANGE1 ))’
’IN_RANGE1 AND ( A OR B ) AND C’
6–7
STRigger (S TR ace) Subsystem
STRigger (STRace)
STRigger (STRace)
Selector
Example
Command
Example
:MACHine{1|2}:STRigger
The STRigger (STRace) (State Trigger) selector is used as a part of a
compound header to access the settings found in the State Trace menu. It
always follows the MACHine selector because it selects a branch directly
below the MACHine level in the command tree.
The BRANch command defines the branch qualifier for a given sequence
level. When this branch qualifier is matched, it will cause the sequencer
to jump to the specified sequence level. The branch qualifier functions like
the "else on" branch of a sequence level.
The terms used by the branch qualifier (A through J) are defined by the
TERM command. The meaning of
determined by the RANGE command.
Within the limitations shown by the syntax definitions, complex expressions
may be formed using the AND and OR operators. Expressions are limited to
what you could manually enter through the State Trigger menu. Regarding
parentheses, the syntax definitions on the next page show only the required
ones. Additional parentheses are allowed as long as the meaning of the
expression is not changed. Figure 6-2 shows a complex expression as seen in
the State Trigger menu.
Example
OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH1 ’C AND D OR F OR G’, 1"
OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH1 ’((C AND D) OR (F OR G))’, 1"
OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH1 ’F OR (C AND D) OR G’,1"
The following statements are all correct and have the same meaning. Notice
that the conventional rules for precedence are not followed. The expressions
are evaluated from left to right.
IN_RANGE
OUT_RANGE
and
is
<N>
<to_level_
number>
<number_of_
levels>
<branch_
qualifier>
integer from 1 to
integer from 1 to
integer from 2 to the number of existing sequence levels (maximum 12)
<qualifier>
<number_of_levels>
<number_of_levels>
see "Qualifier" on page 6-6
6–9
STRigger (S TR ace) Subsystem
BRANch
Example
Query
Returned Form at
Example
Figure 6-2
OUTPU T XXX;":MACHINE1:STRIGGER:BRANCH1 ’A NYSTATE’, 3"
OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH2 ’A’, 7"
OUTPUT XXX; ":MA CHIN E1:S TRIGGER:BRANCH3 ’((A OR B) OR NOTG)’, 1"
:MACHine{1|2}:STRigger:BRANch<N>?
The BRANch query returns the current branch qualifier specification for a
given sequence level.
Figure 6-2 is a front panel representation of the complex qualifier
Or (f Or g)
.
6–10
(a Or b)
STRigger (S TR ace) Subsystem
CLEar
Example
Command
The following example would be used to specify the complex qualifier shown
in figure 6-2.
OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH1 ’((A OR B) AND (F OR
G))’, 2"
Terms A through E, RANGE 1, and TIMER 1 must be grouped together
and terms F through J, RANGE 2, and TIMER 2 must be grouped together.
In the first level, terms from one group may not be mixed with terms from the
other. For example, the expression
((A OR IN_RANGE2) AND (C OR G))
is
not allowed because the term C cannot be specified in the F, G, and I group.
In the first level, the operators you can use are
XOR, NXOR
. Either
AND
or OR may be used at the second level to join the two
AND, NA ND, OR, NOR,
groups together. It is acceptable for a group to consist of a single term.
Thus, an expression like
The CLEar command allows you to clear all settings in the State Trigger
menu, clear only the Sequence levels, or clear only the resource term
patterns. Cleared settings are replaced with the defaults.
The FIND command defines the proceed qualifier for a given sequence level.
The qualifier tells the state analyzer when to proceed to the next sequence
level. When this proceed qualifier is matched the specified number of times,
the sequencer will proceed to the next sequence level. In the sequence level
where the trigger is specified, the FIND command specifies the trigger
qualifier (see SEQuence command).
The terms A through J are defined by the TERM command. The meaning of
IN_RANGE
Expressions are limited to what you could manually enter through the State
Trigger menu. Regarding parentheses, the syntax definitions below show
only the required ones. Additional parentheses are allowed as long as the
meaning of the expression is not changed. See page 6-9 for a detailed
example.
<N>
integer from 1 to (number of existing sequence levels −1)
integer from 1 to 1048575
<qualifier>
OUT_RANGE
and
see "Qualifier" on page 6-6
is determined by the RANGe command.
Example
OUTPU T XXX;":MACHINE1:STRIGGER:FIND1 ’ANY STATE’, 1"
OUTPU T XXX;":MACHINE1:STRIGGER:FIND3 ’((N OTA AND NOTB) OR
G)’, 1"
6–12
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.