For Safety information, Warranties, and Regulatory
information, see the pages behind the index
Copyright Agilent Technologies 1987-2000
All Rights Reserved
Agilent Technologies
16517A/18A 4-GSa/s Timing
and 1-GSa/s Synchronous State
Logic Analyzer
ii
In This Book
This guide, combined with the
Technologies 16500B/16501A
Programmer’s Guide
the information needed to program the
Agilent Technologies 16517A/18A 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 guide is organized in three parts.
Part 1 consists of chapter 1 whichs
contains 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
16517A/18A Logic Analyzer command
•
tree
Alphabetic command-to-subsystem
•
directory
Part 2 consists of chapters 2 through 7
which contain the subsystem commands
for the logic analyzer and chapter 8 which
contains information on the
SYSTem:DATA and SYSTem:SETup
commands for this module.
Part 3, chapter 9, contains program
examples of actual tasks that show you
how to get started in programming the
16517A/18A logic analyzer. These
examples are written in HP BASIC 6.2;
however, the program concepts can be
used in any other popular programming
language that allows communications
with either the GPIB or RS-232C buses.
, provides you with
Agilent
Programming the
1
Agilent Technologies
2
Format Menu Commands
3
Trigger Menu Commands
4
Waveform Menu Commands
5
Listing Menu Commands
6
Compare Menu Commands
7
Symbols Commands
8
Data and Setup Commands
9
Programming Examples
Index
iii
Error messages for the 16517A/18A are noted in the text of many of the
commands and also included in generic system error messages in the
Technologies 16500B/16501A Programmer’s Guide
.
Agilent
iv
Contents
Part 1 General Information
1 Programming the HP 16517A/18A
Selecting the Module 1–3
Programming the Logic Analyzer 1–3
Mainframe Commands 1–5
Command Set Organization 1–8
Module Status Reporting 1–11
MESE<N> 1–12
MESR<N> 1–14
COMPare 6–4
CLEar 6–5
CMASk 6–5
COPY 6–6
DATA 6–7
FIND 6–8
LINE 6–9
MENU 6–10
RANGe 6–10
RUNTil 6–11
SET 6–12
7 Symbol Subsystem Commands
SYMBol 7–4
BASE 7–5
PATTern 7–6
RANGe 7–6
REMove 7–7
WIDTh 7–8
8 DATA and SETup Commands
Data Format 8–3
:SYSTem:DATA 8–4
Section Header Description 8–6
Section Data 8–6
Contents–4
Data Preamble Description 8–6
Acquisition Data Description 8–10
SYSTem:SETup 8–13
Part 3 Programming Examples
9 Programming Examples
Making a timing analyzer measurement 9–3
Making a state analyzer measurement 9–5
Transferring the logic analyzer configuration 9–9
Transferring the logic analyzer acquired data 9–11
Checking for measurement completion 9–15
Making a Compare Measurement 9–17
Using the COMPare:DATA? Query 9–22
Contents
Index
Contents–5
Contents–6
Part 1
Programming the Agilent Technologies 16517A/18A 1-1
1
General Information
General Information
1
Programming the Agilent
Technologies 16517A/18A
1–1
Introduction
This chapter introduces you to the basic command structure used to
program the Agilent Technologies 16517A/18A 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 9.
1–2
Programming the Agilent Technologies 16517A/18A
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
numeric reference for the slot location of the logic analyzer (1 through 10
refers to slot 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 Agilent Technologies 16500B/16501A Programmer’s Guide.
:SELect
followed by the
Programming the Logic Analyzer
A typical logic analyzer program will do the following:
select the appropriate module
•
specify the analyzer type
•
assign pods
•
assign labels
•
set pod thresholds
•
specify a trigger condition
•
set up the display
•
specify acquisition type
•
start acquiring data
•
1–3
Example
Programming the Agilent Technologies 16517A/18A
Programming the Logic Analyzer
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 GPIB or
RS-232C. 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 specifies the wide timing mode.
Line 30 sets up the Format menu by assigning the label COUNT, and
assigning a polarity and channels to the label.
Line 40 selects the trigger pattern for the timing analyzer.
Line 50 sets the range to 1 µs (10 times 100 ns/div).
Line 60 changes the onscreen display to the Waveform menu.
Line 70 inserts the label "COUNT" in the Waveform menu.
Line 80 specifies the Single run mode.
Line 90 starts data acquisition.
1–4
Programming the Agilent Technologies 16517A/18A
Mainframe Commands
Mainframe Commands
These commands are part of the Agilent Technologies 16500B/16501A
mainframe system and are mentioned here only for reference. For more
information on these commands, refer to the Agilent Technologies16500B/16501A Programmer’s Guide.
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 16517A logic analyzer is 04 and the
identification number for the 16518A is 05. 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
slots have cards installed, which card has the controlling software for the
module, and where the master card is located.
Example
4,5,-1,-1,32,1,1,0,0,5
A returned string of
card (ID number 5) is loaded in slot B and an 16517A master card (ID
number 4) is loaded in slot A. The next two slots (C and D) are empty (−1).
Slot E contains a logic analyzer module (ID number 32).
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 single module card is loaded in slot E.
Complete information for the CARDcage query is in the AgilentTechnologies 16500B/16501A Programmer’s Guide.
4,5,-1,-1,32,1,1,0,0,5
2,2,0,0,5
means that an 16518A expansion
) indicate that a two-card module is
1–5
Programming the Agilent Technologies 16517A/18A
Mainframe Commands
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. It defaults to 0 if it is not specified). The query
returns the currently selected and displayed menu.
The menus for the 16517A/18A Logic Analyzer are:
X,0 — Format
X,1 — Trigger
X,2 — Waveform
X,3 — Listing
X,4 — Not used
X,5 — Compare
X,6 — Not used
X,7 — Skew Adjust
SELect Command/query
The SELect command selects which module or intermodule will have parser
control. SELect 0 selects the intermodule, SELect 1 through 10 selects
modules A through J respectively. Values −1 and −2 select software options 1
and 2. The SELect query returns the currently selected module.
STARt Command
The STARt command starts the specified module or intermodule. If the
specified module is configured in an intermodule arming tree, STARt will
start all modules configured for intermodule.
1–6
Programming the Agilent Technologies 16517A/18A
Mainframe Commands
STOP Command
The STOP command stops the specified module or intermodule. If the
specified module is configured for intermodule, STOP will stop all modules
configured in an intermodule arming tree.
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 AgilentTechnologies 16500B/16501A Programmer’s Guide.
RMODe Command/query
The RMODe command specifies the run mode (single or repetitive) for a
module or intermodule. If the selected module is configured in an
intermodule arming tree, 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 Agilent Technologies 16517A/18A
Command Set Organization
Command Set Organization
The command set for the 16517A/18A is divided into subsystems. The
subsystem commands are covered in their individual chapters starting with
Chapter 2, "Format Menu Commands."
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
16517A/18A logic analyzer module. The (x) following the SELect command
at the top of the tree represents the slot number in which the logic analyzer
module is installed. The number may range from 1 through 10, representing
slots A through J, respectively.
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 Agilent Technologies 16500B/16501A mainframe (see AgilentTechnologies 16500B/16501A Programmer’s Guide chapter 6). The
Module Event Status Register is 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 16517A/18A’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.
Figure 1-2
Module Status Reporting
1–11
Programming the Agilent Technologies 16517A/18A
MESE<N>
MESE<N>
Command
<enable_mask>
Example
Query
<N>
: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 to enable 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 (1 through 10 refers to the
module in slot A through J). The second parameter specifies the enable value
in decimal.
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 Agilent Technologies16500B/16501A Programmer’s Guide.
{1|2|3|4|5|6|7|8|9|10}
integer from 0 to 255
OUTPUT XXX;": MESE5 1"
number of slot in which the module resides
:MESE<N>?
Returned Format
Example
The MESE query returns the current setting in decimal.
[:MESE<N>]<enable_mask><NL>
OUTPUT XXX;": MESE5?"
1–12
Programming the Agilent Technologies 16517A/18A
Table 1-2Module Event Status Enable Register
BitWeightEnables
7128 Not Used
684Not Used
532External clock period specification
416Default skew values or memory error
38Pattern searches failed
24Trigger found
12RNT-Run until satisified
01MC-Measurement complete
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.
MESE<N>
1–13
Programming the Agilent Technologies 16517A/18A
MESR<N>
MESR<N>
Query
Returned Format
<status>
Example
<N>
:MESR<N>?
The MESR<N> query returns the contents of the Module Event Status
register in decimal. 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 their bit
weights for this module.
The parameter 1 through 10 refers to the module in slot A through J
respectively.
[MESR<N>]<status><NL>
{1|2|3|4|5|6|7|8|9|10}
integer from 0 to 255
OUTPUT XXX;": MESR5?"
number of slot in which the module resides
1–14
Table 1-3Module Event Status Register
BitWeightCondition
7128Not used
664Not used
5321 = External clock period out of specification
0 = External clock period met specification
4161 = Default skew values are being used
or
1 = Memory error could not be corrected during redundancy
test
0 = Skew values adjusted and no memory errors
381 = Search could not place X/O markers
0 = Search placed X/O markers
241 = Trigger found
0 = Trigger not found
121 = Run until condition satisified
0 = Run until condition not satisified
011 = Measurement complete
0 = Measurement did not complete
Programming the Agilent Technologies 16517A/18A
MESR<N>
1–15
1–16
Part 2
Format Menu Commands 2-1
2
Trigger Menu Commands 3-1
3
Waveform Menu Commands 4-1
4
Listing Menu Commands 5-1
5
Compare Menu Commands 6-1
6
Symbols Commands 7-1
7
Data and Setup Commands 8-1
8
Commands
Commands
2
Format Menu Commands
2–1
Introduction
The Format menu commands allow you access the FORmat
subsystem which contains the following commands:
CLOCk
•
LABel
•
REMove
•
SOFFset
•
SYNC
•
THReshold
•
TYPE
•
2–2
Figure 2-1
Format Menu Commands
FORMat Subsystem Syntax Diagram
2–3
Format Menu Commands
FORMat
Table 2-1FORMat Parameter Values
ParameterValues
<N>
namestring of up to 6 alphanumeric characters
polarity
pod_specificationan integer from 0 to 255 or 0 to 15 (depending on type) for a pod
coarse_timea real number from –5 ns to +5 ns in increments of 200 ps
fine_time
pod_skew_time
value
{1|2}
pairs
{POSitive|NEGative}
(pods are assigned from left to right)
an absolute real number that is within ±500 ps of
<coarse_time>
an absolute real number that is within ±500 ps of
with a maximum of ±5 ns
voltage (real number) −5.00 to +5.00 in 0.01 volt increments
FORMat
for one card or
with a maximum of ±5 ns
{1|2|3|4|5|6|7|8|10}
for up to five cards in
<fine_time>
Selector
Example
:FORMat
The FORMat selector is used as part of a compound header to access those
settings normally found in the Format menu. It always follows the
SELECT(n) command when you first access the module. It must precede
any command you wish to send to the FORMat subsystem unless you send
combined command messages (see "Combined Commands in the Same
Subsystem" in Chapter 1 of the Agilent Technologies 16500B/16501AProgrammer’s Guide).
OUTPUT XXX;": FORMAT:CLOCK?"
2–4
CLOCk (State mode only)
Format Menu Commands
CLOCk (State mode only)
Command
<clock_edge>
Example
Query
Returned Format
Example
:FORMa t:CLOCk <c lo ck_edge>
The CLOCk command allows you to specify the clock edge on which the state
analyzer will be clocked. The external clock for the state analyzer is always
on pod 1 of the master card. The clock options are
FALLing
{RISing|FALLing}
OUTPUT XXX;":FORMAT:CLOCK FALLING"
(edge).
RISing
(edge) and
:FORMAT:CLOCK?
The CLOCk query returns the current clock specification.
[:FORM at :C LOCk] <clo ck _e dge><NL>
OUTPUT XXX;": FORMAT:CLOCK?"
2–5
Format Menu Commands
LABel
LABel
Command
:FORMa t:LABel <n am e>[[, <pol arity>]
[, <ass ignment>]...]
The LABel command allows you to specify polarity and to 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
<assignment>
<assignment>
displayed in the Format menu. For example, sending pod specifications 255
and 15 assigns all eight channels of pod 2 and the lower four channels of pod
1. If multiple boards are installed, the pod specifications in this example will
assign channels to pod 2 and pod 1 of top most board. Not including enough
pod specifications results in the lower numbered pod being assigned a value
of zero (all channels excluded). If you include more pod specifications than
there are pods, the extra ones will be ignored. However, an error is reported
anytime more pod specifications are listed than the number of available pods.
The polarity can be specified at any point after the label name.
Because pods contain either 4 or 8 channels depending on the mode, the
<assignment> value for a pod must be between 0 and 15 (2
−
(2
1) respectively. When specifying the pod assignment in binary (base 2),
8
each bit will correspond to a single channel. A "1" in a bit position means the
associated channel in that pod is assigned to that pod and bit. A "0" in a bit
position means the associated channel in that pod is excluded from the label.
For example, assigning
the front panel.
A label can not have a total of more than 32 channels assigned to it.
listed will match the left most pod in the Format menu. The
after that assigns channels to the next pod to the right as
−
1) or 0 and 255
4
#B11110011
is equivalent to entering
****..**
from
<name>
<polarity>
<assignment>
string of up to 6 alphanumeric characters
{POSitive|NEGative}
For each pod, an integer from 0 to 255 in
to 15 in
The LABel query returns the current specification for the selected (by name)
label. If the label does not exist, nothing is returned. Numbers are always
returned in decimal format.
[:FORM at :L ABel] <nam e> ,< polarity >[ , <assignm en t>]...<N L>
string of up to 6 alphanumeric characters
{POSitive|NEGative}
OUTPUT XXX;": FORMAT:LABEL? ’DATA’"
REMove
:FORMat:REMove {<name>|ALL}
Examples
<name>
The REMove command allows you to delete all labels or any one label
specified by name.
The SOFFset command allows you to specify the offset between the external
clock and the internal sample clock in the State mode. An error (–211, Legal
command but settings conflict) results if the State mode is not selected.
a real number from –5 ns to +5 ns in increments of 200 ps
an absolute real number that is within ±500 ps of
maximum of ±5 ns
an absolute real number that is within ±500 ps of
maximum of ±5 ns
The SYNC query instructs the 16517A/18A to synchronize the internal clock
to the external clock. It then returns a 1 if the synchronization was successful
(the external clock was valid) or a 0 if the synchronization was unsuccessful
(the external clock was invalid).
[:FORMat:SYNC] {1|0}<NL>
OUTPUT XXX;": FORMAT:SYNC?"
THReshold
:FORMat:THReshold<N> {TTL|ECL|<value>}
The THReshold command allows you to set the voltage threshold for a given
pod to ECL, TTL, or a specific voltage from −5.00 V to +5.00 V in 0.01 volt
increments. The order of the pod number <N> is significant in multiple-card
systems. Pod number 1 will set the threshold of pod 1 of the card in the
lowest numbered slot in the mainframe while pod number 3 will set the
threshold of pod 1 of the card in the next higher numbered slot.
Example
Query
<N>
<value>
TTL
ECL
an integer from 1 to 10 depending on number of cards. Pod number options
{1|2}
are
voltage (real number) −5.00 to +5.00 in increments of 0.01 volts
default value of +1.5 V
default value of −1.3 V
OUTPUT XXX;": FORMAT:THRESHOLD1 4.0"
for one card (two pods) or
{1|2|...|10}
for up to five cards in pairs.
:FORMat:THReshold<N>?
2–9
Returned Format
Format Menu Commands
TYPE
The THReshold query returns the current threshold for a given pod.
[:FORmat:THReshold<N>] <value><NL>
Example
Command
<analyzer_
Example
type>
OUTPUT XXX;": FORMAT:THRESHOLD2?"
TYPE
:FORM at:TYPE <analyzer_type >
The TYPE command allows you to specify the acquisition mode of the
analyzer. The acquisition modes are
There is one important note about using the TYPE command instead of the
front-panel interface. When you change the mode from FASTtiming to
WIDetiming from the front panel, you have the option of specifying whether
or not to restore bits 4 through 7 to their previous value. When you change
the mode from FASTtiming to WIDetiming over the bus, bits 4 through 7 are
always restored to their previous value.
{WIDetiming|FASTtiming|STATe}
OUTPUT XXX;": FORMAT:TYPE STATE"
STATe, WIDetiming
FASTtiming
or
.
Query
Returned Format
Example
:FORMat:TYPE?
The TYPE query returns the current type or mode (timing).
The Trigger menu commands allow access to the TRIGer subsystem
and contains the following commands:
ACQuisition
•
ARMedby
•
BRANch
•
CLEar
•
DURation
•
EDGE
•
FIND
•
PATTern
•
REName
•
SAMPclk
•
SEQuence
•
SETUPHOLDA
•
SETUPHOLDB
•
SETUPHOLDC
•
SPERiod
•
TIMER
•
TPOSition
•
Hint
See Also
The trigger macros, except for the setup and hold macros, are not accessible
over the bus but can be programmed using the individual user levels
contained in each macro. Once you set up a macro from the front panel, you
can touch the
what user levels to use to program the macro over the bus.
"Modify Trigger Field," in Chapter 4, "Trigger Menu" in the
Technologies 16517A/18A User’s Reference
Modify Trigger
3–2
field, then the
Break Down Macro
Agilent
.
field to see
Figure 3-1
Trigger Menu Commands
TRIGger Subsystem Syntax Diagram
3–3
Figure 3-1 (continued)
Trigger Menu Commands
TRIGger Subsystem Syntax Diagram (continued)
3–4
Figure 3-1 (Continued)
Trigger Menu Commands
TRIGger Subsystem Syntax Diagram (continued)
3–5
Trigger Menu Commands
Table 3-1TRIGger Parameter Values
ParameterValues
branch_qualifier
occurrencenumber from 1 to 16777216
to_level_numberinteger from 1 to last level or TRIGger
resource_namea string of 8 alphanumeric characters
present_arg{PRESent|ABSent}
dur_timea real number from 0 ns to 510 ns in 2 ns increments
whentrue_arg{UNTilexit|UPONEXit|UPONENtry}
edge_namea string of 8 alphanumeric characters
edge_spec
proceed_qualifier
patt_namea string of 8 alphanumeric characters
label_namestring of up to 6 alphanumeric characters
resource_id
pattern
over_sample_valuean integer from 1 to 32 in powers of 2
setup_timea real number from 2 ns to 510 ns in 2 ns increments
hold_timea real number from 2 ns to 33.554 ms in 2 ns increments
number_of_levelsan integer from 1 to 4
sample_period
time_valuea real number from 2 ns to 33.554 ms
post_valueinteger from 1 to 99 representing percentage
time_val
qualifiersee "Qualifier" on page 3-6
<qualifier>
a string consisting of
falling, either edge respectively. A period
don’t care.
a real number from 500 ps to 524.29 µs in WIDetiming mode
real number from either (2
whichever is greater to (1048574 × sample period)
{R|F|E|.}
R, F, and E represents rising,
×
sample period) or 16 ns
(.)
represents a
3–6
Qualifier
Trigger Menu Commands
Qualifier
<qualifier>
Figure 3-2
{PATT1|NOTPATT1}
{PATT2|NOTPATT2}
{PATT3|NOTPATT3}
{PATT4|NOTPATT4}
The qualifier for the trigger subsystem can be terms
Edge 1 and Edge 2, and Timer. In addition, qualifiers can be the NOT
boolean function of the
qualifier can also be an expression or combination of expressions as shown
below and in figures 3-2 and 3-3. In addition a combination of expressions is
shown in "Complex Qualifier," in figure 3-4 on page 3-9.
The following figures show how qualifiers are specified in all commands of
the TRIGger subsystem that use
{"ANYSTATE"|"NOSTATE"|"<expression>"}
{AND|OR}
patt1
through
patt4
<qualifier>
{AND|OR}
terms and the Timer. The
.
patt1
through
{AND|OR|XOR}
patt4
,
EDGE1
EDGE2
{TIMER_EXP|TIMER_NOT_EXP}
Timing <expression>
OR
3–7
Trigger Menu Commands
Qualifier
Figure 3-3
{PATT1|NOTPATT1}
{PATT2|NOTPATT2}
{PATT3|NOTPATT3}
{PATT4|NOTPATT4}
{TIMER_EXP|TIMER_NOT_EXP}
State <expression>
Qualifier Rules
The following rules apply to qualifiers:
Qualifiers are quoted strings and, therefore, need quotes.
•
Expressions are evaluated from left to right.
•
Parentheses are used to change the order evaluation and, therefore, are
•
optional.
An expression must map into the combination logic presented in the
•
combination pop-up menu within the TRIGger menu as shown in figure 3-4.
{AND|OR}
{AND|OR|XOR}
3–8
Trigger Menu Commands
Qualifier
Examples
Figure 3-4
’PATT1’
’( PATT1 OR PATT2 )’
’(( PATT1 OR PATT2 ) AND EDGE2 )’
’(( PATT1 OR PATT2 ) AND EDGE2 AND TIMER_NOT_EXP )’
’(( PATT1 OR PATT2 ) AND ( EDGE1 OR EDGE2)) OR TIMER_EXP’
’TIMER_NOT_EXP AND (( PATT1 OR PATT2 ) OR (EDGE1 OR EDGE2))’
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.
":TRIGGER:BRANCH1 ’PATT3 AND PATT4 OR EDGE1 OR EDGE2’, 1, 3"
":TRIGGER:BRANCH1 ’((PATT3 AND PATT4) OR (EDGE1 OR EDGE2))’,
1, 3"
":TRIGGER:BRANCH1 ’EDGE1 OR (PATT3 AND PATT4) OR EDGE2’,1, 3"
Complex Qualifier
Figure 3-4 is a front-panel representation of the complex qualifier
NOTPATT1 OR PATT2) AND (EDGE1 OR EDGE2) OR TIMER_EXP
(
).
3–9
Trigger Menu Commands
TRIGger (TRACe)
Example
Selector
This example would be used to specify this complex qualifier.
OUTPUT XXX;":TRIGGER:BRANCH1 ’((PATT1 OR PATT2) AND (EDGE1 OR
EDGE2))’, 2, 3"
In the first level, the operators you can use are
resources, but only OR is available for the edge resources. Either
OR
may be used at the second level to join the two groups together. The
timer resource can be combined with the pattern and edge resources with
AND, OR
Thus, an expression like (
operands are both simple terms from separate groups.
, or
XOR
. It is acceptable for a group to consist of a single term.
PATT2 AND EDGE1)
AND
, or OR for pattern
is legal since the two
AND
or
TRIGger (TRACe)
:TRIGger
The TRIGger (TRACe) selector is used as a part of a compound header to
access the settings found in the Trigger menu. It always follows the
SELECT(n) command when you first access the module. It must precede
any command you wish to send to the TRIGger subsystem unless you send
combined command messages (see "Combined Commands in the Same
Subsystem" in Chapter 1 of the Agilent Technologies 16500B/16501AProgrammer’s Guide).
Although the menu is called Trigger and the primary keyword is
the command parser in the 16517A/18A is designed to accept
eliminates the need to change programs written for earlier modules that
required the keyword TRACe.
TRIGger
TRACe
,
. This
Example
OUTPUT XXX;": TRIGGER:CLEAR ALL"
3–10
ACQuisition (WIDetiming Type Only)
ACQuisition (WIDetiming Type Only)
Trigger Menu Commands
Command
Example
Query
Returned Format
Example
:TRIGger:ACQuisition {AUTOmatic|MANual}
The ACQuisition command allows you to specify the acquisition mode for the
timing analyzer. This command results in an error (–211, Legal Command
but settings conflict) if the STATe or FASTtiming is selected.
OUTPUT XXX;": TRIGGER:ACQUISITION AUTOMATI C"
:TRIGger:ACQuisition?
The ACQuisition query returns the current acquisition mode specified. This
query results in an error (–211, Legal Command but settings conflict) if the
STATe or FASTtiming is selected.
[:TRIGger:ACQuisition] {AUTOmatic|MANual}<NL>
OUTPUT XXX;": TRIGGER:ACQUISITION?"
ARMedby
Command
:TRIGger:ARMedby {RUN|SMB}
The ARMedby command allows you to specify which source arms the
16517A/18A. The timing analyzer can be armed internally with the RUN
option or externally with the SMB option. When the RUN option is specified
and when the timing analyzer is not in the intermodule tree, sending RUN
immediately arms the analyzer. If the timing analyzer is to be armed by
another module in the intermodule tree, it is eventually armed by RUN
through the other module. Specifying SMB allows the timing analyzer to be
armed by an external source connected to the SMB connector on the rear
panel.
3–11
Trigger Menu Commands
BRANch
Example
Query
Returned Format
Example
Command
OUTPUT XXX;": TRIGGER:ARMEDBY RUN"
:TRIGger:ARMedby?
The ARMedby query returns the current arming source.
The BRANch command defines the secondary branch qualifier, occurrence
count, and the sequence level to jump to for a given sequence level. When
this branch qualifier is matched, the sequencer will jump to the specified
sequence level. When the OFF option is specified, the secondary branch for
the given sequence level is turned off.
When an occurrence count of greater than 1 is specified, the occurrence
counter for the specified sequence level is assigned to the secondary branch.
Therefore, any occurrence count previously specified for the primary branch
using the FIND command will be overridden. Also, when you specify an
occurrence count greater than 1, any previous use of the timer resource for
either branch in this sequence level will be overridden.
If you specify the timer resource to be part of the secondary branch qualifier
for this level, any previous setting of an occurrence count in either the
primary or the secondary branch will be overridden.
3–12
Trigger Menu Commands
BRANch
If you specify the timer resource to be part of the secondary branch qualifier,
and you specify an occurrence count greater than 1 for the secondary
branch, an error (–211, Legal command but settings conflict) results and the
command is ignored. For example,
OR PATT1’,2,2"
is illegal because the timer is specified as part of the
":TRIGGER:BRANCH1 ’TIMER_EXP
qualifier and the specified occurrence count is 2.
The BRANch command in conjuction with the FIND command allows you to
program sequence levels in terms of user-programmable levels only. There is
no programming support for macros except SETUP and HOLD. See Hint on
page 3-2.
<to_level_
number>
<occurrence>
<branch_
qualifier>
Examples
<N>
integer from 1 to
integer from
<number_of_levels>
{1 to <number_of_levels>|TRIGGER}
integer from 1 to 16777216
<qualifier>
OUTPUT XXX;":TRIGGER:BRANCH1 ’ANYSTATE’, 3, 4"
OUTPUT XXX;":TRIGGER:BRANCH2 ’PATT1’, 7, 3"
OUTPUT XXX;":TRIGGER:BRANCH3 ’((PATT1 OR PATT2) OR
NOTPATT3)’, 1, 4"
. See "Qualifier" on page 3-6
3–13
Trigger Menu Commands
CLEar
Query Syntax
Returned Format
Example
Command
Example
:TRIGger:BRANch<N>?
The BRANch query returns the current branch qualifier specification for a
given sequence level.
The CLEar command allows you to clear all settings in the Timing Trigger
menu and replace them with the default, clear only the sequence levels, clear
only the resource term patterns and edges, or clear only the resource names.
The DURation command allows you to specify the pattern duration in terms
of the presence or absence of the pattern, duration of the pattern being
greater than or less than a specified time, and when the pattern is considered
true for a given pattern resource term as it is used in a given sequence level.
Refer to Chapter 4, "Trigger Menu" in the Agilent Technologies 16517A/18AUser’s Reference for detailed information on the
When you specify the pattern
the name given to the resource instead of the default names PATT1 through
PATT4. This differs from the Agilent Technologies 16550A and 1660-series
logic analyzers. The name given to the pattern
sensitive. For example, "A" is equivalent to "a" in a pattern resource name.
This command results in an error (–211, Legal Command but settings
conflict) if the State Mode is selected.
an integer from 1 to
a string of 8 alphanumeric characters naming the pattern resource term
<number_of_levels>
<resource_name>
<whentrue_arg>
, the 16517A/18A looks for
<resource_name>
options.
is not case
<present_arg>
GT
LT
<dur_time>
<whentrue_arg>
{PRESent|ABSent}
greater than
less than
a real number between 0 ns and 510 ns in 2 ns increments
The EDGE command allows you to specify the edge specification for a given
edge resource. Edge specifications are strings with a length equal to the
number of assigned bits and can contain R (rising), F (falling), or E (either
edge). Each command deals with only one label in the given term; therefore,
a complete specification could require several commands.
When you specify the edge resource, the 16517A/18A looks for the name
given to the resource instead of the default names EDGE1 or EDGE2. This
differs from the Agilent Technologies 16550A and 1660-series logic analyzers.
The name given to the edge resource is not case sensitive. For example,
"EDGE1" is equivalent to "edge1" in pattern resource names.
This command results in an error (–211, Legal Command but settings
conflict) if the State Mode is selected.
a string of 8 alphanumeric characters naming the edge resource term
a string of 6 alphanumeric characters
a string containing
OUTPUT xxx;":TRIGGER:EDGE ’EDGE1’, ’DATA’, ’R’"
{R|F|E}
with a length equal to the number of assigned bits
Query
Returned Format
Example
:TRIGger:EDGE? <edge_name>, <label_name>
The EDGE query returns the current edge specification for the given edge
resource and label.
The FIND command defines the primary branch qualifier, occurrence count,
and sequence level to jump to for a given sequence level.
When an occurrence count of greater than 1 is specified, the occurrence
counter for the specified sequence level is assigned to the primary branch.
Therefore, any occurrence count previously specified for the secondary
branch, using the BRANch command, will be overridden. Also, when you
specify an occurrence count greater than 1, any previous use of the timer
resource for either branch in this sequence level will be overridden.
If you specify the timer resource to be part of the primary branch qualifier for
this level, any previous setting of an occurrence count in either the primary
or secondary branch will be overridden.
If you specify the timer resource to be part of the primary branch qualifier,
and you specify an occurrence count greater than 1 for the primary branch,
an error (–211, Legal command but settings conflict) results and the
command is ignored. For example,
PATT1’,2,2"
and the specified occurrence count is 2.
The FIND command in conjuction with the BRANch command allows you to
program sequence levels in terms of user-programmable levels only. There is
no programming support for macros except SETUP and HOLD. See Hint on
page 3-2.
is illegal because the timer is specified as part of the qualifier
":TRIGGER: F IND1 ’TI ME R _EXP OR
<N>
<branch_
qualifier>
integer from 1 to the number of existing sequence levels (maximum 4)
<qualifier>
The "NOSTATE" qualifier is not available for the FIND command.
. See "Qualifier" on page 3-6
3–18
Trigger Menu Commands
FIND
<occurrence_
count>
<to_level_
number>
<number_of_
levels>
Examples
Query
Returned Format
Example
an integer from 1 to 16777216
integer from
{1 to <number_of_levels>|TRIGger}
integer from 1 to the number of existing sequence levels (maximum 4)
OUTPUT XXX;":TRIGGER:FIND1 ’ANYSTATE’, 2, 4"
OUTPUT XXX;": TRIGGER:FIND3 ’((NOTPATT1 AND NO TPATT2) OR
NOTPATT3)’, 1, 3"
:TRIGger:FIND4?
The FIND query returns the current branch qualifier specification for a given
sequence level.
The PATTern command allows you to a specify a pattern recognizer term for
a given pattern resource. Each command deals with only one label in the
given term; therefore, a complete specification could require several
commands. Since a label can contain 32 bits or less, the range of the pattern
value will be between 2
in binary, it represents the bit values for the label inside the pattern
recognizer term. Since the pattern parameter may contain don’t cares and be
represented in several bases, it is handled as a string of characters rather
than a number.
When you specify the pattern <patt_name>, the 16517A/18A looks for the
name given to the pattern instead of the default name PATT1 through
PATT4. This differs from the Agilent Technologies 16550A and 1660-series
logic analyzers. The name given to the pattern resource is not case sensitive.
For example, "PATTERN1" is equivalent to "pattern1" in a pattern resource
name.
a string of 8 alphanumeric characters naming the pattern resource term
:TRIGg er:RENam e {< resource _id>,
<resou rce_name >| DEFault}
The REName command allows you to assign a logical name to a given pattern
or edge resource. This logical name is then used when referring to the
resource in other commands and queries. The DEFault option returns all
pattern and edge logical names to the default values.
{PATTern1|PATTern2|PATTern3|PATTern4|EDGE1|EDGE2}
a string of up to 8 alphanumeric characters
Example
Query
OUTPUT XXX;":TRIGGER:RENAME PATTERN1, ’JMP0’"
:TRIGger:REName? <resource_id>
The REName query returns the current logical name assigned to a given
resource.
The SAMPclk command allows you to specify the current oversampling value
from 1 to 32 samples per clock depending on the current value of the
external clock period. The
cannot exceed 2 GHz. For example, at a clock speed of 100 MHz the
maximum
the slowest clock rate (20 MHz), the maximum
32 (32 × 20 MHz = 640 MHz). This command results in an error (–211, Legal
command but settings conflict) if the State mode is not selected.
an integer from 1 to 32 in powers of 2
OUTPUT XXX;": TRIGGER:SAMPLCK 16"
<over_sample_value>
<over_sample_value>
is 16 (100 × 16 = 1.6 GHz). Additionally, at
times the sample clock
<over_sample_value>
can be
Query
Returned Format
Example
:TRIGger:SAMPclk?
The SAMPclk query returns the current value of oversampling.
[:TRIGger:S AMPclk] <over_sample_value>< NL>
OUTPUT XXX;": TRIGGER:SAMPLCLK?"
3–22
SEQuence
Trigger Menu Commands
SEQuence
Command
<number_of_
levels>
Example
Query
Returned Format
Example
:TRIGg er:SEQue nc e <number_ of_level s>
The SEQuence command defines the timing analyzer trace sequence. First,
it deletes the current trace sequence. Then, it inserts the number of levels
specified, with default settings. The number of user levels can be between 1
and 4.
integer from 1 to 4
OUTPUT XXX;":TRIGGER:SEQUENCE 4"
:TRIGger:SEQuence?
The SEQuence query returns the number of user levels in the current
sequence specification.
[:TRIG ge r: SEQuence ] <n um ber_of_l ev els><NL>
OUTPUT XXX;": TRIGGER:SEQUENCE?"
The SEQuence command allows you to program sequence levels in terms of
user-programmable levels only. There is no programming support for macros
except SETUP and HOLD. See Hint on page 3-2.
The SETUPHOLDA command allows you to specify the setup and hold macro
number 1. This macro finds setup or hold time violations on the channels
specified by
specified by
must exist prior to sending this command. Make sure you send the
SEQuence command with the appropriate number of levels just prior to
sending the SETUPHOLDA command. When the edge is specified in setup
and hold, two edge resources are used; therefore, the other edge resource is
not available for any sequence level. This command results in an error (–211,
Legal Command but settings conflict) if the State Mode is selected.
an integer from 1 to
setup and hold edge is to be specified.
a string of up to 6 alphanumeric characters
a string of up to 8 alphanumeric characters containing the name (given by
the REName command) for
a real number from 2 ns to 510 ns in 2 ns increments
a real number from 2 ns to 33.554 ms in 2 ns increments
The SETUPHOLDB command allows you to specify the setup and hold macro
number 2. This macro finds setup or hold time violations on the channels
specified by
valid pattern. The sequence level specified in this command must exist prior
to sending this command. Make sure you send the SEQuence command with
the appropriate number of levels just prior to sending the SETUPHOLDB
command. When the edge is specified in setup and hold, two edge resources
are used; therefore, the other edge resource is not available for any sequence
level. This command results in an error (–211, Legal Command but settings
conflict) if the State Mode is selected.
an integer from 1 to
setup and hold edge is to be specified.
a string of up to 6 alphanumeric characters
a string of up to 8 alphanumeric characters containing the name (given by
the REName command) or
a string of up to 8 alphanumeric characters containing the name (given by
the REName command) or
<label_name1>
<number_of_levels>
<label_name2>
or
edge1
patt1
edge2
or
through
clocked by an edge within a
for the sequence level in which the
patt4
<set_up_time>
<hold_time>
Examples
a real number from 2 ns to 510 ns in 2 ns increments
a real number from 2 ns to 33.554 ms in 2 ns increments
The SETUPHOLDC command allows you to specify the setup and hold macro
number 3. This macro finds setup or hold time violations on the channels
specified by
The sequence level specified in this command must exist prior to sending this
command. Make sure you send the SEQuence command with the
appropriate number of levels just prior to sending the SETUPHOLDC
command.
This command results in an error (–211, Legal Command but settings
conflict) if the State Mode is selected.
an integer from 1 to
setup and hold edge is to be specified.
a string of up to 6 alphanumeric characters
a string of up to 8 alphanumeric characters containing the name (given by
the REName command) or
a real number from 2 ns to 510 ns in 2 ns increments
a real number from 2 ns to 33.554 ms in 2 ns increments
The SPERiod command allows you to set the sample period for the next
acquisition of the timing analyzer when in the wide timing mode. If the fast
timing mode is selected, the sample period is always 250 ps. When this
command is sent, the acquisition mode is automatically set to manual (see
"TRIGger:ACQuisition" on page 3-11). The value you specify for this
command is rounded to the nearest allowable setting.
This command results in an error (–211, Legal command but settings
conflict) if the analyzer is in the State mode or the Fast Timing mode.
real number from 500 ps to 65.536 µs
OUTPUT XXX;": TRIGGER:SPERIOD 64E−9"
:TRIGger:SPERiod?
The SPERiod query returns the sample period of the current acquisition. If
there is no valid data, the query returns 9.9E37.
[:TRIGger:SPERiod] <sample_period><NL>
Example
OUTPUT XXX;": TRIGGER:SPERIOD?"
3–27
Trigger Menu Commands
TIMER
TIMER
Command
<time_value>
Example
Query
Returned Format
<N>
:TRIGg er:TIMER <N > <time_va lue>
The TIMER command allows you to set the time value the timer resource will
be set to upon entering a given sequence level. The limits of the timer are 2
ns to 33.554 ms in 2 ns increments in the timing modes. The increment value
varies with the external clock in the State mode. The
rounded to the nearest clock period. Sending this command will
automatically override any settings for the occurrence counter in either the
primary or the secondary branch.
an integer from 1 to the number of existing sequence levels (maximum of 4)
real number from 2 ns to 33.554 ms
OUTPUT XXX;":TRIGGER:TIMER1 100E−6"
<time_value>
will be
:TRIGger:TIMER<N>?
The TIMER query returns the current time value at the sequence level
specified by
The TPOSition (trigger position) command allows you to set the trigger at
the start, center, end or at any position in the trace using delay or poststore.
Delay is specified as a real number representing the time between the trigger
and the first acquired sample. In the state mode, if the external clock period
is greater than 16 ns, the poststore clock runs at the external clock frequency
and the delay limits are 0 ns to (1048574 × external clock period). If the
external clock period is less than 16 ns, the external clock is divided down by
a power of 2 such that the period of the poststore clock is a minimum of 16 ns.
Otherwise, in the timing mode, with the sequencer running at 500 MHz, the
poststore clock runs at the same rate as the sample clock or
x
sample period×2
clock period is 16 ns.
Poststore is defined as 1 to 99 percent with a poststore of 99 percent being
the same as start position and a poststore 1 percent being the same as an end
trace.
If the analyzer is a timing analyzer, this command will automatically set the
acquisition mode to MANUAL (see "TRIGger:ACQuisition" on page 3-11).
real number from 0 to (1048574 × external clock period), divided down
sample period, or divided down external clock period.
where x is great enough so that the minimum poststore
<post_value>
Examples
integer from 1 to 99 representing percentage of poststore.
over_sample_valuean integer from 1 to 32 in powers of 2
size_spec
coarse_timea real number from –5 ns to +5 ns in increments of 200 ps
Fine_time
pod_skew_time
sample_period
time_val
post_valan integer from 1 to 99 representing percentage of data
{BESTfit|SMALl|MEDium|LARGe}
an absolute real number that is within ±500 ps of
<coarse_time>
an absolute real number that is within ±500 ps of
<coarse_time>
a real number from 250 ps to 524.29 µs depending on mode
real number from either (2
whichever is greater to (1048574 × sample period)
after the trigger
with a maximum of ±5 ns
with a maximum of ±5 ns
×
sample period) or 16 ns
Selector
Example
WAVeform
:WAVeform
The WAVeform selector is used as part of a compound header to access the
commands found in the Timing Waveform menu. It always follows the
SELECT(n) command when you first access the module. It must precede
any command you wish to send to the WAVeform subsystem unless you send
combined command messages (see "Combined Commands in the Same
Subsystem" in Chapter 1 of the Agilent Technologies 16500B/16501AProgrammer’s Guide).
OUTPUT XXX;":WAVEFORM:DELAY 100E−9"
4–8
ACCumulate
Waveform Menu Commands
ACCumulate
Command
<setting>
Example
Query
Returned Format
Example
:WAVeform:ACCumulate <setting>
The ACCumulate command allows you to control whether the Waveform
display gets erased between each individual run or whether subsequent
waveforms are allowed to be displayed over the previous waveforms.
{0|OFF}
OUTPUT XXX;": WAVEFORM:ACCUMULATE ON"
or
{1|ON}
:WAVeform:ACCumulate?
The ACCumulate query returns the current setting. The query always
returns the setting as the characters o (off) or 1 (on).
[:WAVeform:ACCumulate] {0|1}<NL>
OUTPUT XXX;": WAVEFORM:ACCUMULATE?"
4–9
Waveform Menu Commands
ACQuisition (WIDetiming Type Only)
ACQuisition (WIDetiming Type Only)
Command
Example
Query
Returned Format
Example
:WAVef orm:ACQu is ition {AUT Omatic|M ANual}
The ACQuisition command allows you to specify the acquisition mode for the
timing analyzer. This command results in an error (–211, Legal Command
but settings conflict) if the STATe or FASTtiming is selected.
OUTPUT XXX;":WAVEFORM:ACQUISITION AUTOMATIC"
:TRIGger:ACQuisition?
The ACQuisition query returns the current acquisition mode specified. This
query results in an error (–211, Legal Command but settings conflict) if the
STATe or FASTtiming is selected.
[:WAVe fo rm :ACQuisi ti on ] {AUTOmat ic |MANual} <N L>
OUTPUT XXX;": WAVEFORM:ACQUISITION?"ACCu mulate
CENTer
Command
<marker_type>
Example
:WAVeform:CENTer <marker_type>
The CENTer command allows you to center the waveform display about the
specified markers. Centering about both the X and O markers will change
the s/div and delay settings.
{X|O|XO|TRIGger}
OUTPUT XXX;": WAVEFORM:CENTER X"
4–10
CLRPattern
Waveform Menu Commands
CLRPattern
Command
Example
Command
Example
:WAVeform:CLRPattern {X|O|ALL}
The CLRPattern command allows you to clear the patterns in the Specify
Patterns menu, which are the patterns used for pattern searches.
OUTPUT XXX;": WAVEFORM:CLRPATTERN ALL"
CLRStat
:WAVeform:CLRStat
The CLRStat command allows you to clear the waveform statistics without
having to stop and restart the acquisition.
OUTPUT XXX;": WAVEFORM:CLRSTAT"
4–11
Waveform Menu Commands
DELay
DELay
Command
<delay_value>
Example
Query
Returned Format
Example
:WAVef orm:DELa y <d elay_val ue>
The DELay command specifies the amount of time between the timing
trigger and the horizontal center of the the timing waveform display. The
allowable range for delay values is −2500 s to +2500 s. If the acquisition
mode is Automatic, as delay becomes large in an absolute sense, the sample
rate is adjusted so that data will be acquired in the time window of interest.
real number between −2500 s and +2500 s
OUTPUT XXX;":WAVEFORM:DELAY 100E−6"
:WAVeform:DELay?
The DELay query returns the current time offset (delay) value from the
trigger to the center of the waveform display.
The INSert command allows you to add waveforms to the waveform display.
Waveforms are added from top to bottom on the screen. When 96 waveforms
are present, inserting an additional waveform replaces the last waveform. Bit
numbers are zero based, so a label with 8 bits is referenced as bits 0 through
7. Specifying OVERlay causes a composite waveform display of all bits or
channels for the specified label. If you do not specify the third parameter,
ALL is assumed.
{1|2|3|4|5|6|7|8|9|10}
string of up to 6 alphanumeric characters
integer from 0 to 31
OUTPUT XXX;":WAVEFORM:INSERT 1, ’WAVE’,10"
4–13
Waveform Menu Commands
LABel
LABel
Command
<label_name>
Example
Query
Returned Format
Example
:WAVef orm:LABe l <label_n ame>
The LABel command in the Waveform menu allows you to change which
label’s pattern is displayed in the Pattern-at-Marker field when in the time
marker mode. If the
label, an error (200, Label not found) results and the command is ignored.
a string of up to 6 alphanumeric characters representing an existing label
name (see
OUTPUT XXX;":WAVEFORM:LABEL DATA"
FORmat:LABel
<label_name>
in chapter 2)
you send does not match an existing
:WAVeform:LABel?
The LABel query returns the name of the label currently displayed in the
Pattern-at-Marker field.
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. The second waveform is subtracted from the first waveform.
MINus is only available for oscilloscope waveforms.
{1|2|3|4|5|6|7|8|9|10}
string containing
{A|B|C|D| E|F|G|H|I|J}
OUTPUT XXX; ":WAVEFORM:MINUS 2, ’A1’, ’A2’"
<acquisition_spec>{1|2}
(slot where acquisition card is located)
4–15
Waveform Menu Commands
MMODe
MMODe
Command
Example
Query
Returned Format
Example
:WAVef orm:MMOD e {O FF|PATTe rn|TIME| MSTats}
The MMODe (Marker Mode) command selects the mode that controls marker
placement and the display of the marker readouts. When PATTern is
selected, the markers will be placed on patterns. When TIME is selected, the
markers move to specific time values. In MSTats, the markers are placed on
patterns, but the readouts will be time statistics.
The OCONdition command specifies where the O marker is placed. The O
marker can be placed on the entry or exit point of the OPATtern when in the
PATTern or STATistics marker modes. An additional option in state mode is
CLOCk which places the O marker on externally clocked states only, ignoring
the oversampled states.
The OPATtern command allows you to construct a pattern recognizer term
for the O marker which is then used with the OSEarch criteria and
OCONdition when placing the marker on patterns. Since this command deals
with only one label at a time, a complete specification could require several
invocations.
When the value of a pattern is expressed in binary, it represents the bit
values for the label inside the pattern recognizer term. Whatever base is
used, the value must be between 0 and (2
more than 32 bits. Because the
cares, it is handled as a string of characters rather than a number.
1), since a label may not have
parameter may contain don’t
Query
Returned Format
Example
:WAVef orm:OPAT te rn? <label _name>
The OPATtern query, in pattern marker mode, returns the pattern
specification for a given label name. In the time marker mode, the query
returns the pattern under the O marker for a given label. If the O marker is
not placed on valid data, don’t cares (X) are returned.
The OSEarch command defines the search criteria for the O marker which
are then used with the associated OPATtern recognizer specification and the
OCONdition when placing the marker on patterns. The origin parameter
tells the marker to begin a search at the start of acquired data, at the trigger,
or at the X marker. The occurrence parameter determines which occurrence
of the OPATtern recognizer specification, relative to the origin, the marker
actually searches for. An occurrence of 0 places a marker on the selected
origin. With a negative occurrence, the marker searches before the origin.
With a positive occurrence, the marker searches after the origin.
{STARt|TRIGger|XMARker}
integer from −131071 to +131071
OUTPUT XXX; ":WAVEFORM:OSEARCH +10,TRIGGER"
:WAVeform:OSEarch?
The OSEarch query returns the search criteria for the O marker.
The OVERlay command overlays two or more oscilloscope waveforms and
adds the resultant waveform to the current waveforms 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.
The PLUS command inserts time-correlated A+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 added to each
other.
PLUS is only available for oscilloscope waveforms.
{1|2|3|4|5|6|7|8|9|10}
string containing
{A|B|C|D|E|F|G|H|I|J}
OUTPUT XXX; ":WAVEFORM:PLUS 2, ’A1’, ’A2’"
<acquisition_spec>{1|2}
(slot where acquisition card is located)
4–22
RANGe
Waveform Menu Commands
RANGe
Command
<time_range>
Example
Query
Returned Format
Example
:WAVef orm:RANG e <t ime_rang e>
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 2.5 ns to 500 s.
real number between 2.5 ns and 500 s
OUTPUT XXX;":WAVEFORM:RANGE 100E−9"
:WAVeform:RANGe?
The RANGe query returns the current full-screen time.
[:WAVe fo rm :RANGe] <t im e_ value><N L>
OUTPUT XXX;": WAVEFORM:RANGE?"
REMove
Command
Example
:WAVeform:REMove
The REMove command deletes all waveforms from the display.
OUTPUT XXX;": WAVEFORM:REMOVE"
4–23
Waveform Menu Commands
RUNTil
RUNTil
Command
:WAVeform:RUNTil <run_until_spec>
The RUNTil (run until) command allows you to define a stop condition when
the run mode is repetitive. Specifying OFF causes the analyzer to make runs
until either the display’s
issued.
There are four conditions based on the time between the X and O markers.
These four conditions are as follows:
Less Than (LT) a specified time value.
•
Greater Than (GT) a specified time value.
•
In the range (INRange) between two time values.
•
Out of the range (OUTRange) between two time values.
•
End points for the INRange and OUTRange should be at least 250 ps apart,
since this is the minimum time at which data is sampled.
When Compare is allocated to this module, there are two conditions that are
based on a comparison of the acquired state data and the compare reference
image. The analyzer will run until one of the following conditions is true:
Every channel of every label has the same value (EQUal), unless
•
unmasked.
Any channel of any label that is not masked has a different value
The RUNTil query returns the current stop criteria.
[:WAVeform: RUNTil] <run_until_spec><NL>
OUTPUT XXX;": WAVEFORM:RUNTIL?"
SAMPclk (State Mode Only)
:WAVEF ORM:SAMP cl k <over_sa mple_val ue>
The SAMPclk command allows you to specify the current oversampling value
from 1 to 32 samples per clock depending on the current value of the
external clock period. The
cannot exceed 2 GHz. For example, at a clock speed of 100 MHz the
maximum
the slowest clock rate (20 MHz), the maximum
32 (32 × 20 MHz = 640 MHz). This command results in an error (–211, Legal
command but settings conflict) if the State mode is not selected.
an integer from 1 to 32 in powers of 2
<over_sample_value>
<over_sample_value>
is 16 (100 × 16 = 1.6 GHz). Additionally, at
times the sample clock
<over_sample_value>
can be
Example
OUTPUT XXX;":WAVEFORM:SAMPLCK 16"
4–25
Waveform Menu Commands
SIZE
Query
Returned Format
Example
Command
<size_spec>
Example
Query
:WAVeform:SAMPclk?
The SAMPclk query returns the current value of oversampling.
[:WAVEFORM:SAMPclk]<over_sample_value><NL>
OUTPUT XXX;": WAVEFORM:SAMPLCLK?"
SIZE
:WAVeform:SIZE <size_spec>
The SIZE command allows you to specify the waveform size for this module.
{BESTfit|SMALl|MEDium|LARGe}
OUTPUT XXX;": WAVEFORM:SIZE BESTFIT"
:WAVeform:SIZE?
Returned Format
Example
The SIZE query returns the current setting for this module.
[:WAVeform:SIZE] <size_spec><NL>
OUTPUT XXX;": WAVEFORM:SIZE?"
4–26
SOFFset (State Mode Only)
Waveform Menu Commands
SOFFset (State Mode Only)
Command
<coarse_time>
<fine_time>
<pod_skew_
time1...10>
Examples
Query
Returned Format
:WAVef orm:SOFF se t <coarse_ time>[,< fine_tim e>
[, <pod_skew_time1>, ..., <pod_skew_time10>]]
The SOFFset command allows you to specify the offset between the external
clock and the internal sample clock in the State mode. An error (–211, Legal
command but settings conflict) results if the State mode is not selected.
a real number from –5 ns to +5 ns in increments of 200 ps
an absolute real number that is within ±500 ps of
maximum of ±5 ns
an absolute real number that is within ±500 ps of
maximum of ±5 ns
The SOFFset query returns the current setting for the clock offset. If the
SOFFset setting is only set with
value. If the setting is set with
<pod_skew_time>
by a time value for each pod.
[:WAVeform:SOFFset] <coarse_time>[,<fine_time>,
<pod_s ke w_ time1>, .. ., <p od_skew_ ti me10>]<N L>
, the query returns
<coarse_time>
<coarse_time>, <fine_time>
<coarse_time>, <fine_time>
, the query returns one time
, and
followed
Example
OUTPUT XXX;": WAVEFORM:SOFFSET?"
4–27
Waveform Menu Commands
SPERiod
SPERiod
Command
<sample_period>
Example
Query
Returned Format
:WAVef orm:SPER io d <sample_ period>
The SPERiod command allows you to set the sample period for the next
acquisition of the timing analyzer when in the wide timing mode. If the fast
timing mode is selected, the sample period is always 250 ps. When this
command is sent, the acquisition mode is automatically set to manual (see
TRIGger:ACQuisition in chapter 3). The value you specify for this command
is rounded to the nearest allowable setting.
This command results in an error (–211, Legal command but settings
conflict) if the analyzer is in the state mode or the fast timing mode.
real number from 500 ps to 65.536 µs
OUTPUT XXX;":WAVEFORM:SPERIOD 50E−9"
:WAVeform:SPERiod?
The SPERiod query returns the sample period of the current acquisition. If
there is no valid data, the query returns 9.9E37.
[:WAVe fo rm :SPERiod ] <s am ple_peri od ><NL>
Example
OUTPUT XXX;": WAVEFORM:SPERIOD?"
4–28
TAVerage
Waveform Menu Commands
TAVerage
Query
Returned Format
<value>
Example
Query
Returned Format
<value>
:WAVeform:TAVerage?
The TAVerage query returns the value of the average time between the
X and O markers when the marker mode is
acquired data, the query returns 9.9E37.
[:WAVeform:TAVerage] <value><NL>
real number
OUTPUT XXX;": WAVEFORM:TAVERAGE?"
MSTats
. If there is no valid
TMAXimum
:WAVeform:TMAXimum?
The TMAXimum query returns the value of the maximum time between the X
and O markers when the marker mode is
acquired data, the query returns 9.9E37.
[:WAVeform:TMAXimum] <value><NL>
real number
MSTats
. If there is no valid
Example
OUTPUT XXX;": WAVEFORM:TMAXIMUM?"
4–29
Waveform Menu Commands
TMINimum
TMINimum
Query
Returned Format
<value>
Example
Command
:WAVeform:TMINimum?
The TMINimum query returns the value of the minimum time between the X
and O markers when the marker mode is
acquired data, the query returns 9.9E37.
[:WAVeform:TMINimum] <value><NL>
real number
OUTPUT XXX;": WAVEFORM:TMINIMUM?"
MSTats
. If there is no valid
TPOSition
:WAVef orm:TPOS it ion {STARt |CENTer| END|DELa y,
<time_ val>|POS Ts tore, <pos t_value}
The TPOSition (trigger position) command allows you to set the trigger at
the start, center, end or at any position in the trace using delay or poststore.
Delay is specified as a real number representing the time between the trigger
and the first acquired sample. In the state mode, if the external clock period
is greater than 16 ns, the poststore clock runs at the external clock frequency
and the delay limits are 0 ns to (1048574 × external clock period). If the
external clock period is less than 16 ns, the external clock is divided down by
a power of 2 such that the period of the poststore clock is a minimum of 16 ns.
Otherwise, in the timing mode with the sequencer running at 500 MHz, the
poststore clock runs at the same rate as the sample clock or
x
sample period×2
clock period is 16 ns.
Poststore is defined as 1 to 99 percent with a poststore of 99 percent being
the same as start position and a poststore 1 percent being the same as an end
trace.
If the analyzer is a timing analyzer, this command will automatically set the
acquisition mode to MANUAL (see "TRIGger:ACQuisition" on page 3-11).
where x is great enough so that the minimum poststore
4–30
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.