Page 3
This guide, combined with the HP 16500/16501A Programmer’s Guide, provides you with the information WLISt Subsystem needed to program the HP 16554A and HP 16555A/D logic analyzer modules. Each module has its own reference to SFORmat Subsystem supplement the mainframe manual since not all mainframes will be configured with the same modules.
Page 4
Part 3, chapter 18, contains program examples of actual tasks that show you how to get started in programming the HP 16554A and HP 16555A/D logic analyzers. These examples are written in HP BASIC 6.2; however, the program concepts can be used in any other popular programming language.
Page 5
SYMBol Subsystem SPA Subsystem DATA and SETup Commands Programming Examples Index...
Contents Part 1 General Information 1 Programming the HP 16554A/ HP 16555A/HP 16555D 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 2 Module Level Commands ARMLine 2–5...
Page 15
Contents 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–9...
Page 20
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...
E, then the command: :SELect would select this module. For more information on the select command, refer to the HP 16500/16501A Programmer’s Guide. It is available through your HP Sales Office. Programming the Logic Analyzer A typical logic analyzer program will do the following: •...
Page 22
OUTPUT XXX;":START" 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.
The first five two-digit numbers identify the card type. The identification number for the HP 16554A and HP 16555A/D logic analyzers is 34. A "−1" in the first part of the string indicates no card is installed in the slot.
Page 24
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 16554A/HP 16555A/HP 16555D Logic Analyzers: • •...
Page 25
Programming the HP 16554A/ HP 16555A/HP 16555D 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.
Programming the HP 16554A/ HP 16555A/HP 16555D Command Set Organization Command Set Organization The command set for the HP 16554A/HP 16555A/HP 16555D 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."...
Page 27
Programming the HP 16554A/ HP 16555A/HP 16555D Command Set Organization Figure 1-1 HP 16554A/HP 16555A/HP 16555D Command Tree 1–9...
Page 28
Programming the HP 16554A/ HP 16555A/HP 16555D Command Set Organization Table 1-1 Alphabetical Command-to-Subsystem Directory Command Where Used Command Where Used ACCumulate SCHart, SWAVeform, TWAVeform MOPQual SFORmat ACQMode TFORmat MQUal SFORmat ACQuisition STRigger, SWAVeform, TTRigger, NAME MACHine TWAVeform OCONdition TLISt, TWAVeform...
Page 29
Programming the HP 16554A/ HP 16555A/HP 16555D Command Set Organization Table 1-1, continued Alphabetical Command-to-Subsystem Directory, continued Command Where Used Command Where Used TCONtrol STRigger, TTRigger VAXis SCHart TERM STRigger, TTRigger VRUNs SLISt, TLISt, TWAVeform THReshold SFORmat, TFORmat WIDTh SYMBol...
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 16554A/HP 16555A/ HP 16555D’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.
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 HP 16500/16501A Programmer’s Guide manual. {1|2|3|4|5|6|7|8|9|10} number of slot in which the module resides. 1 <N>...
Page 32
Programming the HP 16554A/ HP 16555A/HP 16555D MESE<N> Table 1-2 Module Event Status Enable Register (A "1" enables the MESR bit) Weight Enables Not used Not used Not used Not used Pattern searches failed Trigger found RNT-Run until satisfied MC-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).
Programming the HP 16554A/ HP 16555A/HP 16555D MESR<N> MESR<N> Query :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.
Page 34
Programming the HP 16554A/ HP 16555A/HP 16555D MESR<N> Table 1-3 Module Event Status Register Weight Condition Not used Not used Not used Not used 1 = One or more pattern searches failed 0 = Pattern searches did not fail 1 = Trigger found...
Page 36
Introduction The logic analyzer module level commands access the global functions of the HP 16554A/HP 16555A/HP 16555D logic analyzer module. These commands are: • ARMLine • DBLock • MACHine • • WLISt 2–2...
Page 38
Module Level Commands Table 2-1 Module Level Parameter Values Parameter Type of Parameter or Command Reference machine_num MACHine{1|2} arm_parm arm parameters see chapter 3 assign_parm assignment parameters see chapter 3 level_parm level parameters see chapter 3 name_parm name parameters see chapter 3 rename_parm rename parameters see chapter 3...
Module Level Commands ARMLine ARMLine Command :ARMLine 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>...
Module Level Commands 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 OUTPUT XXX;":DBLOCK PACKED" Query :DBLock? The DBLock query returns the current data block format selection. Returned Format [:DBLock]{PACKed | UNPacked}<NL>...
Module Level Commands 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.
Page 46
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: • • LEVelarm The functions of three of these commands reside in the State/Timing Configuration menu.
MACHine Subsystem MACHine Table 3-1 Machine Subsystem Parameter Values Parameter Value arm_source {RUN | INTermodule | MACHine {1|2}} pod_list {NONE | <pod_num>[, <pod_num>]...} pod_num integer from 1 to 12 arm_level integer from 1 to 11 representing sequence level machine_name string of up to 10 alphanumeric characters res_id {<state_terms>|H|J} for state analyzer {<state_terms>|EDGE{1|2}} for timing analyzer...
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.
MACHine Subsystem ASSign ASSign Command :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"...
MACHine Subsystem LEVelarm LEVelarm Command :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.
MACHine Subsystem NAME NAME Command :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 <machine_name>...
MACHine Subsystem RESource {<state_terms>|H|J} for state analyzer <res_id> {<state_terms>|EDGE{1|2}} for timing analyzer string of up to 8 alphanumeric characters <new_text> <state_terms> {A|B|C|D|E|F|G|I| RANGe1 | RANGe2 | TIMer1 | TIMer2} Example OUTPUT XXX;":MACHINE1:RENAME A,’DATA’" Query :MACHine{1|2}:RENAME? <res_id> The REName query returns the current names for specified terms assigned to the specified analyzer.
MACHine Subsystem TYPE Example OUTPUT XXX;":MACHINE1:RESOURCE A,C,RANGE1" Query :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. Returned Format [:MACHine{1|2}:RESOURCE] <res_id>[,<res_id>,...]<NL> Example OUTPUT XXX;":MACHINE1:RESOURCE?" TYPE Command :MACHine{1|2}:TYPE <analyzer type>...
Page 55
MACHine Subsystem TYPE Query :MACHine{1|2}:TYPE? The TYPE query returns the current analyzer type for the specified analyzer. Returned Format [:MACHine{1|2}:TYPE] <analyzer type><NL> Example OUTPUT XXX;":MACHINE1:TYPE?" 3–11...
Page 58
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 order to have mixed mode, one machine must be a state analyzer...
0 to 31 label_name string of up to 6 alphanumeric characters line_num_mid_screen integer from -516096 to +516096 (HP 16554A) or -1040384 to +1040384 (HP 16555A) or -2080768 to +2080768 (HP 16555D) waveform string containing <acquisition_spec>{1|2} acquisition_spec {A|B|C|D|E|F|G|H|I|J}...
WLISt Subsystem DELay DELay Command :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 <delay_value>...
WLISt Subsystem INSert INSert Command :WLISt:INSert [<module_spec>,]<label_name> [,{<bit_id>|OVERlay|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.
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 -516096 to +516096 (HP 16554A) <line_num_mid_ or -1040384 to +1040384 (HP 16555A) screen>...
WLISt Subsystem MINus Query :WLISt:LINE? The LINE query returns the line number for the state currently in the data listing roll box at center screen. Returned Format [:WLISt:LINE] <line_num_mid_screen><NL> Example OUTPUT XXX;":WLIST:LINE?" MINus Command :WLISt:MINus <module_spec>,<waveform>,<waveform> The MINus command inserts time-correlated A−B (A minus B) oscilloscope waveforms on the screen.
WLISt Subsystem OSTate OSTate Query :WLISt:OSTate? The OSTate query returns the state where the O Marker is positioned. If data is not valid, the query returns 2147483647. Returned Format [:WLISt:OSTate] <state_num><NL> integer <state_num> Example OUTPUT XXX;":WLIST:OSTATE?" OTIMe Command :WLISt:OTIMe <time_value> The OTIMe command positions the O Marker on the timing waveforms in the mixed mode display.
WLISt Subsystem OVERlay Query :WLISt:OTIMe? The OTIMe query returns the O Marker position in time. If data is not valid, the query returns 9.9E37. Returned Format [:WLISt:OTIMe] <time_value><NL> Example OUTPUT XXX;":WLIST:OTIME?" OVERlay Command :WLISt:OVERlay <module_number>,<label> [,<label>]... The OVERlay command overlays two or more oscilloscope waveforms and adds the resultant waveform to the current waveform display.
WLISt Subsystem PLUS PLUS Command :WLISt:PLUS <module_spec>,<waveform>,<waveform> 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.
WLISt Subsystem RANGe RANGe Command :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 <time_range>...
WLISt Subsystem XOTime XOTime Query :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. Returned Format [:WLISt:XOTime] <time_value><NL> real number <time_value> Example OUTPUT XXX;":WLIST:XOTIME?" XSTate Query :WLISt:XSTate? The XSTate query returns the state where the X Marker is positioned.
WLISt Subsystem XTIMe XTIMe Command :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 <time_value> Example OUTPUT XXX;":WLIST:XTIME 40.0E−6" Query :WLISt:XTIMe? The XTIMe query returns the X Marker position in time.
Page 72
Introduction The SFORmat subsystem contains the commands available for the State Format menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer modules. These commands are: • CLOCk • LABel • MASTer • MODE • MOPQual • MQUal • REMove •...
Page 75
SFORmat Subsystem Table 5-1 SFORmat Subsystem Parameter Values Parameter Value <N> an integer from 1 to 12 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 format (integer from 0 to 65535) for a pod (pods are assigned in...
SFORmat Subsystem SFORmat SFORmat Selector :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.
SFORmat Subsystem LABel Query :MACHine{1|2}:SFORmat:CLOCk<N>? The CLOCk query returns the current clocking mode for a given pod. Returned Format [:MACHine{1|2}:SFORmat:CLOCK<N>] <clock_mode><NL> Example OUTPUT XXX; ":MACHINE1:SFORMAT:CLOCK2?" LABel Command :MACHine{1|2}:SFORmat:LABel <name>[,<polarity>, <clock_bits>, <upper_bits>,<lower_bits> [,<upper_bits>,<lower_bits>]...] The LABel command allows you to specify polarity and assign channels to new or existing labels.
Page 78
SFORmat Subsystem LABel string of up to 6 alphanumeric characters <name> <polarity> {POSitive | NEGative} format (integer from 0 to 65535) for a clock (clocks are assigned in <clock_bits> decreasing order) <upper_bits> format (integer from 0 to 65535) for a pod (pods are assigned in decreasing order) <lower_bits>...
SFORmat Subsystem MASTer MASTer Command :MACHine{1|2}:SFORmat:MASTer <clock_id>, <clock_spec> 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.
The MODE command places an HP 16555 state analyzer in either 100 MHz (normal) or 110 MHz (fast) mode. The HP 16554A has only one state analysis mode, 70 MHz. In 110-MHz mode, the h and j resource terms are not available.
SFORmat Subsystem MOPQual MOPQual Command :MACHine{1|2}:SFORmat:MOPQual <clock_pair_id>, <qual_operation> 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.
SFORmat Subsystem MQUal MQUal Command :MACHine{1|2}:SFORmat:MQUal <qual_num>, <clock_id>,<qual_level> The MQUal (master qualifier) command allows you to specify the level qualifier for the master clock. <qual_num> {1|2|3|4} <clock_id> {J|K|L|M} <qual_level> {OFF|LOW|HIGH} Example OUTPUT XXX;":MACHINE2:SFORMAT:MQUAL 1,J,LOW" Query :MACHine{1|2}:SFORmat:MQUal? <qual_num> The MQUal query returns the qualifier specified for the master clock. Returned Format [:MACHine{1|2}:SFORmat:MQUal] <qual_level><NL>...
SFORmat Subsystem REMove REMove Command :MACHine{1|2}:SFORmat:REMove {<name>|ALL} The REMove command allows you to delete all labels or any one label for a given machine. string of up to 6 alphanumeric characters <name> Example OUTPUT XXX;":MACHINE1:SFORMAT:REMOVE ’A’" OUTPUT XXX;":MACHINE2:SFORMAT:REMOVE ALL" SETHold Command :MACHine{1|2}:SFORmat:SETHold <pod_num>,<set_hold_value>...
Page 84
SFORmat Subsystem SETHold an integer from 1 to 12 <pod_num> integer {0|1|2|3|4|5|6|7|8|9} representing the following setup and <set_hold_ hold values: value> Table 5-2 Setup and hold values For one clock and one edge For one clock and both edges Multiple Clocks 0 = 3.5/0.0 ns 0 = 4.0/0.0 0 = 4.5/0.0...
SFORmat Subsystem SLAVe SLAVe Command :MACHine{1|2}:SFORmat:SLAVe <clock_id>, <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.
SFORmat Subsystem SOPQual SOPQual Command :MACHine{1|2}:SFORmat:SOPQual <clock_pair_id>, <qual_operation> 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.
SFORmat Subsystem SQUal SQUal Command :MACHine{1|2}:SFORmat:SQUal <qual_num>,<clock_id>,<qual_level> The SQUal (slave qualifier) command allows you to specify the level qualifier for the slave clock. <qual_num> {1|2|3|4} <clock_id> {J|K|L|M} <qual_level> {OFF|LOW|HIGH} Example OUTPUT XXX;":MACHINE2:SFORMAT:SQUAL 1,J,LOW" Query :MACHine{1|2}:SFORmat:SQUal?<qual_num> The SQUal query returns the qualifier specified for the slave clock. Returned Format [:MACHine{1|2}:SFORmat:SQUal] <clock_id>,<qual_level><NL>...
SFORmat Subsystem THReshold THReshold Command :MACHine{1|2}:SFORmat:THReshold<N> {TTL|ECL|<voltage>} 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 <N>...
Page 90
Introduction The STRigger subsystem contains the commands available for the State Trigger menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer modules. 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.
STRigger (STRace) Subsystem Qualifier Qualifier 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,"...
Page 95
STRigger (STRace) Subsystem Qualifier <term3a> { A | NOTA } <term3b> { B | NOTB } <term3c> { C | NOTC } <term3d> { D | NOTD } <term3e> { E | NOTE } <term3f> { F | NOTF } <term3g>...
STRigger (STRace) Subsystem STRigger (STRace) STRigger (STRace) Selector :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.
STRigger (STRace) Subsystem BRANch BRANch Command :MACHine{1|2}:STRigger:BRANch<N> <branch_qualifier>,<to_level_number> 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"...
Page 98
STRigger (STRace) Subsystem BRANch Example OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH1 ’ANYSTATE’, 3" OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH2 ’A’, 7" OUTPUT XXX;":MACHINE1:STRIGGER:BRANCH3 ’((A OR B) OR NOTG)’, 1" Query :MACHine{1|2}:STRigger:BRANch<N>? The BRANch query returns the current branch qualifier specification for a given sequence level. Returned Format [:MACHine{1|2}:STRigger:BRANch<N>] <branch_qualifier>,<to_level_num><NL>...
STRigger (STRace) Subsystem CLEar Example 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.
STRigger (STRace) Subsystem FIND FIND Command :MACHine{1|2}:STRigger:FIND<N> <proceed_qualifier>,<occurrence> 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.
Valid memory depths range from 4096 states (or samples) through the maximum system memory depth minus 8192 states (HP 16554A or HP 16555A) or minus 16384 states (HP 16555D). Memory depth is affected by acquisition mode. If the <memory_length> value sent with the command is not a legal value, the closest legal setting will be used.
STRigger (STRace) Subsystem RANGe RANGe Command :MACHine{1|2}:STRigger:RANGe<N> <label_name>, <start_pattern>,<stop_pattern> The RANGe command allows you to specify a range recognizer term for the specified machine. Since a range can only be defined across one label and since a label must contain 32 or fewer bits, the value of the start pattern or stop pattern will be between (2 )−1 and 0.
STRigger (STRace) Subsystem SEQuence Query :MACHine{1|2}:STRigger:RANGe<N>? The RANGe query returns the range recognizer end point specifications for the range. Returned Format [:MACHine{1|2}:STRigger:RANGe<N>] <label_name>,<start_pattern>,<stop_pattern><NL> Example OUTPUT XXX;":MACHINE1:STRIGGER:RANGE1?" SEQuence Command :MACHine{1|2}:STRigger:SEQuence <num_levels>, <trig_level> The SEQuence command redefines the state analyzer trigger sequence. First, it deletes the current sequence.
STRigger (STRace) Subsystem STORe STORe Command :MACHine{1|2}:STRigger:STORe<N> <store_qualifier> The STORe command defines the store qualifier for a given sequence level. Any data matching the STORe qualifier will be stored in memory as part of the current trace data. The qualifier may be a single term or a complex expression.
STRigger (STRace) Subsystem Command :MACHine{1|2}:STRigger:TAG {OFF|TIME| state_tag_qualifier < >} The TAG command selects the type of count tagging (state or time) to be performed during data acquisition. State tagging is indicated when the parameter is the state tag qualifier, which will be counted in the qualified state mode.
STRigger (STRace) Subsystem TAKenbranch TAKenbranch Command :MACHine{1|2}:STRigger:TAKenbranch {STORe|NOSTore} The TAKenbranch command allows you to specify whether the state causing the branch is stored or not stored for the specified machine. The states causing the branch are defined by the BRANch and FIND commands. Example OUTPUT XXX;":MACHINE2:STRIGGER:TAKENBRANCH STORE"...
STRigger (STRace) Subsystem TCONtrol TCONtrol Command :MACHine{1|2}:STRigger:TCONtrol<N> <timer_num>, {OFF|STARt|PAUSe|CONTinue} The TCONtrol (timer control) command allows you to turn off, start, pause, or continue the timer for the specified level. The time value of the timer is defined by the TIMER command. There are two timers and they are available for either machine but not both machines simultaneously.
STRigger (STRace) Subsystem TERM TERM Command :MACHine{1|2}:STRigger:TERM <term_id>, <label_name>,<pattern> The TERM command allows you to specify a pattern recognizer term in the specified machine. 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 or fewer bits, the range of the pattern value will −...
STRigger (STRace) Subsystem TIMER Query :MACHine{1|2}:STRigger:TERM? <term_id>, <label_name> The TERM query returns the specification of the term specified by term identification and label name. Returned Format [:MACHine{1|2}:STRAce:TERM] <term_id>,<label_name>,<pattern><NL> Example OUTPUT XXX;":MACHINE1:STRIGGER:TERM? B,’DATA’ " TIMER Command :MACHine{1|2}:STRigger:TIMER{1|2} time_value < > The TIMER command sets the time value for the specified timer. The limits of the timer are 400 ns to 500 seconds in 16 ns to 500 µs increments.
STRigger (STRace) Subsystem TPOSition TPOSition Command :MACHine{1|2}:STRigger:TPOSition {STARt|CENTer|END| POSTstore,<poststore >} The TPOSition (trigger position) command allows you to set the trigger at the start, center, end or at any position in the trace (poststore). Poststore is defined as 0 to 100 percent with a poststore of 100 percent being the same as start position and a poststore of 0 percent being the same as an end trace.
Page 112
Introduction The SLISt subsystem contains the commands available for the State Listing menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer modules. These commands are: • • COLumn RUNTil • • CLRPattern TAVerage • • DATA TMAXimum • • LINE TMINimum •...
Page 116
{1|2|3|4|5|6|7|8|9|10} col_num integer from 1 to 61 line_number integer from -516096 to +516096 (HP 16554A) or from -1040384 to +1040384 (HP 16555A) or from -2080768 to +2080768 (HP 16555D) label_name a string of up to 6 alphanumeric characters base...
SLISt Subsystem SLISt SLISt Selector :MACHine{1|2}:SLISt The SLISt selector is used as part of a compound header to access those settings normally found in the State Listing menu. It always follows the MACHine selector because it selects a branch directly below the MACHine level in the command tree.
SLISt Subsystem CLRPattern Query :MACHine{1|2}:SLISt:COLumn? <col_num> The COLumn query returns the column number, module slot, machine, label name, and base for the specified column. Returned Format [:MACHine{1|2}:SLISt:COLumn] <col_num>,<module_num>,MACHine{1|2}, <label_name>,<base><NL> Example OUTPUT XXX;":MACHINE1:SLIST:COLUMN? 4" CLRPattern Command :MACHine{1|2}:SLISt:CLRPattern {X|O|ALL} The CLRPattern command allows you to clear the marker patterns in the Specify Patterns menu.
The format will be the same as the one shown in the listing display. Returned Format [:MACHine{1|2}:SLISt:DATA] <line_number>,<label_name>, <pattern_string><NL> integer from -516096 to +516096 (HP 16554A) or from -1040384 to +1040384 <line_number> (HP 16555A) or from -2080768 to +2080768 (HP 16555D) string of up to 6 alphanumeric characters <label_name>...
SLISt Subsystem MMODe Query :MACHine{1|2}:SLISt:LINE? The LINE query returns the line number for the state currently in the box at the center of the screen. Returned Format [:MACHine{1|2}:SLISt:LINE] <line_num_mid_screen><NL> Example OUTPUT XXX;":MACHINE1:SLIST:LINE?" MMODe Command :MACHine{1|2}:SLISt:MMODe <marker_mode> The MMODe command (Marker Mode) selects the mode controlling the marker movement and the display of marker readouts.
SLISt Subsystem OPATtern Query :MACHine{1|2}:SLISt:MMODe? The MMODe query returns the current marker mode selected. Returned Format [:MACHine{1|2}:SLISt:MMODe] <marker_mode><NL> Example OUTPUT XXX;":MACHINE1:SLIST:MMODE?" OPATtern Command :MACHine{1|2}:SLISt:OPATtern <label_name>,<label_pattern> The OPATtern command allows you to construct a pattern recognizer term for the O Marker which is then used with the OSEarch criteria when moving the marker on patterns.
0 places the 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. integer from -516096 to +516096 (HP 16554A) or from -1040384 to +1040384 <occurrence> (HP 16555A) or from -2080768 to +2080768 (HP 16555D) <origin>...
If data is not valid , the query returns 2147483647. Returned Format [:MACHine{1|2}:SLISt:OSTate] <state_num><NL> integer from -516096 to +516096 or 2147483647 (HP 16554A), or from <state_num> -1040384 to +1040384 or 2147483647 (HP 16555A) or from -2080768 to +2080768 or 2147483647 (HP 16555D) Example OUTPUT XXX;":MACHINE1:SLIST:OSTATE?"...
SLISt Subsystem OTAG OTAG Command :MACHine{1|2}:SLISt:OTAG {<time_value>|<state_value>} The OTAG command specifies the tag value on which the O Marker should be placed. The tag value is time when time tagging is on, or states when state tagging is on. If the data is not valid tagged data, no action is performed. real number <time_value>...
SLISt Subsystem OVERlay OVERlay Command :MACHine{1|2}:SLISt:OVERlay <col_num>, <module_num>,MACHine{1|2},<label_name> The OVERlay command allows you to add time-correlated labels from other modules or machines to the state listing. The added labels are interleaved with the column specified. The column must already contain a label. integer from 1 to 61 <col_num>...
SLISt Subsystem RUNTil RUNTil Command :MACHine{1|2}:SLISt:RUNTil <run_until_spec> The RUNTil (run until) command allows you to define a stop condition when the trace mode is repetitive. Specifying OFF causes the analyzer to make runs until either the display’s STOP field is touched or the STOP command is issued.
SLISt Subsystem TAVerage TAVerage Query :MACHine{1|2}:SLISt:TAVerage? The TAVerage query returns the value of the average time between the X and O Markers. If the number of valid runs is zero, the query returns 9.9E37. Valid runs are those where the pattern search for both the X and O markers was successful, resulting in valid time measurements.
SLISt Subsystem TMINimum TMINimum Query :MACHine{1|2}:SLISt:TMINimum? The TMINimum query returns the value of the minimum time between the X and O Markers. If data is not valid, the query returns 9.9E37. Returned Format [:MACHine{1|2}:SLISt:TMINimum] <time_value><NL> real number <time_value> Example OUTPUT XXX;":MACHINE1:SLIST:TMINIMUM?" VRUNs Query :MACHine{1|2}:SLISt:VRUNs?
SLISt Subsystem XOTag XOTag Query :MACHine{1|2}:SLISt:XOTag? The XOTag query returns the time from the X to O markers when the marker mode is time, or number of states from the X to O markers when the marker mode is state. If there is no data in the time mode the query returns 9.9E37. If there is no data in the state mode, the query returns 2147483647.
SLISt Subsystem XPATtern XPATtern Command :MACHine{1|2}:SLISt:XPATtern <label_name>,<label_pattern> The XPATtern command allows you to construct a pattern recognizer term for the X marker which is then used with the XSEarch criteria when moving the marker on patterns. Since this command deals with only one label at a time, a complete specification could require several invocations.
An occurrence of 0 places a marker on the selected origin. integer from -516096 to +516096 (HP 16554A), or from -1040384 to <occurrence> +1040384 (HP 16555A)or from -2080768 to +2080768 (HP 16555D) <origin>...
If data is not valid, the query returns 2147483647. Returned Format [:MACHine{1|2}:SLISt:XSTate] <state_num><NL> integer from -516096 to +516096 or 2147483647 (HP 16554A), or from <state_num> -1040384 to +1040384 or 2147483647 (HP 16555A) or from -2080768 to +2080768 or 2147483647 (HP 16555D) Example OUTPUT XXX;":MACHINE1:SLIST:XSTATE?"...
Page 133
SLISt Subsystem XTAG Query :MACHine{1|2}:SLISt:XTAG? The XTAG query returns the X marker position in time when time tagging is on or in states when state tagging is on, regardless of whether the marker was positioned in time or through a pattern search. If data is not valid tagged data, the query returns 9.9E37 for time tagging, or returns 2147483647 for state tagging.
Page 136
Introduction The commands in the State Waveform subsystem allow you to configure the display so that you can view state data as waveforms. Up to 96 channels, identified by label name and bit number, can be displayed at a time. The 12 commands in this subsystem are analogous to their counterparts in the Timing Waveform subsystem.
SWAVeform Table 8-1 SWAVeform Subsystem Parameter Values Parameter Value number_of_samples integer from -516096 to +516096 (HP 16554A) or from -1040384 to +1040384 (HP 16555A) or from -2080768 to +2080768 (HP 16555D) label_name string of up to 6 alphanumeric characters bit_id {OVERlay|<bit_num>|ALL}...
SWAVeform Subsystem ACCumulate ACCumulate Command :MACHine{1|2}:SWAVeform:ACCumulate {{ON|1}|{OFF|0}} The ACCumulate command allows you to control whether the waveform display gets erased between individual runs or whether subsequent waveforms are allowed to be displayed over the previous waveforms. Example OUTPUT XXX;":MACHINE1:SWAVEFORM:ACCUMULATE ON" Query MACHine{1|2}:SWAVeform:ACCumulate? The ACCumulate query returns the current setting.
SWAVeform Subsystem CENTer Query MACHine{1|2}:SWAVeform:ACQuisition? The ACQuisition query returns the current acquisition mode. Returned Format [MACHine{1|2}:SWAVeform:ACQuisition] {AUTOmatic|MANual}<NL> Example OUTPUT XXX;":MACHINE2:SWAVEFORM:ACQUISITION?" CENTer Command :MACHine{1|2}:SWAVeform:CENTer <marker_type> The CENTer command allows you to center the waveform display about the specified markers. The markers are placed on the waveform in the SLISt subsystem.
The DELay command allows you to specify the number of samples between the State trigger and the horizontal center of the screen for the waveform display. integer from -516096 to +516096 (HP 16554A) or from -1040384 to <number_of_ +1040384 (HP 16555A) or from -2080768 to +2080768 (HP 16555D) samples>...
SWAVeform Subsystem RANGe Example OUTPUT XXX;":MACHINE1:SWAVEFORM:MLENGTH 262144" Query :MACHine{1|2}:SWAVeform:MLENgth? The MLENgth query returns the current analyzer memory depth selection. Returned Format [:MACHine{1|2}:SWAVeform:MLENgth] <memory_length><NL> Example OUTPUT XXX;":MACHINE1:SWAVEFORM:MLENGTH?" RANGe Command MACHine{1|2}:SWAVeform:RANGe <number_of_samples> The RANGe command allows you to specify the number of samples across the screen on the State Waveform display.
SWAVeform Subsystem REMove REMove Command :MACHine{1|2}:SWAVeform:REMove The REMove command clears the waveform display before building a new display. Example OUTPUT XXX;":MACHINE1:SWAVEFORM:REMOVE" TAKenbranch Command MACHine{1|2}:SWAVeform:TAKenbranch {STORe|NOSTore} The TAKenbranch command allows you to control whether the states that cause branching are stored or not stored. This command is only available when the acquisition mode is set to manual.
SWAVeform Subsystem TPOSition TPOSition Command MACHine{1|2}:SWAVeform:TPOSition {STARt|CENTer|END|POSTstore,<percent>} The TPOSition command allows you to control where the trigger point is placed. The trigger point can be placed at the start, center, end, or at a percentage of post store. The post store option is the same as the User Defined option when setting the trigger point from the front panel.
Page 148
Introduction The State Chart subsystem provides the commands necessary for programming the HP 16554A/HP 16555A/HP 16555D’s Chart display. The commands allow you to build charts of label activity, using data normally found in the Listing display. The chart’s Y axis is used to show data values for the label of your choice.
±516096 (HP 16554A), ±1040384 (HP 16555A), or ±2080768 (HP 16555D) state_high_value integer from to 516096 (HP <state_low_value> 16554A), 1040384 (HP 16555A), or 2080768 (HP 16555D) label_name a string of up to 6 alphanumeric characters label_low_value string from 0 to 2 - 1 (#HFFFFFFFF)
SCHart Subsystem SCHart SCHart Selector :MACHine{1|2}:SCHart The SCHart selector is used as part of a compound header to access the settings found in the State Chart menu. It always follows the MACHine selector because it selects a branch below the MACHine level in the command tree.
The shortform for STATES is STA. This is an intentional deviation from the normal truncation rule. integer from –516096 to +516096 (HP 16554A), or from –1040384 to <state_low_ +1040384 (HP 16555A), or from –2080768 to +2080768 (HP 16555D) value>...
SCHart Subsystem VAXis Example OUTPUT XXX;":MACHINE1:SCHART:HAXIS STATES, −100, 100" OUTPUT XXX;":MACHINE1:SCHART:HAXIS ’READ’, ’−511’, ’511’, 0,300" Query MACHine{1|2}:SCHart:HAXis? The HAXis query returns the current horizontal axis label and scaling. Returned Format [:MACHine{1|2}:SCHart:HAXis] {STAtes,<state_low_value>, <state_high_value>|<label_name>,<label_low_value>, <label_high_value><state_low_value>,<state_high_value>} Example OUTPUT XXX;":MACHINE1:SCHART:HAXIS?" VAXis Command MACHine{1|2}:SCHart:VAXis <label_name>,<low_value>,<high_value>...
Page 153
SCHart Subsystem VAXis Query MACHine{1|2}:SCHart:VAXis? The VAXis query returns the current vertical axis label and scaling. Returned Format [:MACHine{1|2}:SCHart:VAXis] <label_name>,<low_value>, <high_value><NL> Example OUTPUT XXX;":MACHINE1:SCHART:VAXIS?" 9–7...
Page 156
Introduction Commands in the state COMPare subsystem provide the ability to do a bit-by-bit comparison between the acquired state data listing and a compare data image. The commands are: • CLEar • CMASk • COPY • DATA • FIND • LINE •...
#Q{0|1|2|3|4|5|6|7|X} ... | #H{0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|X} ... | {0|1|2|3|4|5|6|7|8|9} ... }" difference_occurrence integer from 1 to 122880 (HP 16554A) or 253951 (HP 16555A) or 507903 (HP 16555D) start_line integer from –122880 to +122880 (HP 16554A) or –253951 to +253951 (HP 16555A) or -507,903 to +507903 (HP 16555D)
COMPare Subsystem CLEar CLEar Command :MACHine{1|2}:COMPare:CLEar The CLEar command clears all "don’t cares" in the reference listing and replaces them with zeros except when the CLEar command immediately follows the SET command (see SET command). Example OUTPUT XXX;":MACHINE2:COMPARE:CLEAR CMASk Command :MACHine{1|2}:COMPare:CMASk <label_name>, <care__spec>...
COMPare Subsystem COPY COPY Command :MACHine{1|2}:COMPare:COPY The COPY command copies the current acquired State Listing for the specified machine into the Compare Listing template. This makes the current acquisition the reference listing. It does not affect the compare range or channel mask settings.
Page 161
COMPare Subsystem DATA a string of up to 6 alphanumeric characters <label_name> integer from –122880 to +122880 (HP 16554A) or –253951 to +253951 <line_num> (HP 16555A) or –507903 to +507903 (HP 16555D) <data_pattern> "{#B{0|1|X} . . . | #Q{0|1|2|3|4|5|6|7|X} . . . | #H{0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|X} .
Returned Format [:MACHine{1|2}:COMPare:FIND] <difference_occurrence>, <line_number><NL> integer from 1 to 122880 (HP 16554A) or 253952 (HP 16555A) or 507904 <diff_ (HP 16555D). occurrence> integer from –122880 to +122880 (HP 16554A) or –253951 to +253951 <line_number>...
The LINE command allows you to center the compare listing display about a specified line number. The Listing menu also changes so that the specified line is displayed midscreen. integer from –122880 to +122880 (HP 16554A) or –253951 to +253951 <line_num> (HP 16555A) or –507903 to +507903 (HP 16555D).
The RANGe command allows you to define the boundaries for the comparison. The range entered must be a subset of the lines in the acquisition memory. integer from –122880 to +122880 (HP 16554A) or –253951 to +253951 <start_line> (HP 16555A) or –507904 to +507904 (HP 16555D)
COMPare Subsystem RUNTil RUNTil Command :MACHine{1|2}:COMPare:RUNTil {OFF | LT,<value> | GT,<value> | INRange,<value>,<value> | OUTRange,<value>,<value> | EQUal | NEQual} The RUNTil (run until) command allows you to define a stop condition when the trace mode is repetitive. Specifying OFF causes the analyzer to make runs until either the display’s STOP field is touched or the STOP command is issued.
COMPare Subsystem Query :MACHine{1|2}:COMPare:RUNTil? The RUNTil query returns the current stop criteria for the comparison when running in repetitive trace mode. Returned Format [:MACHine{1|2}:COMPare:RUNTil] {OFF| LT,<value>|GT,<value>| INRange,<value>,<value>|OUTRange,<value>,<value>|EQUal|NEQual} <NL> Example OUTPUT XXX;":MACHINE2:COMPARE:RUNTIL?" Command :MACHine{1|2}:COMPare:SET The SET command sets every state in the reference listing to "don’t cares." If you send the SET command by mistake you can immediately send the CLEar command to restore the previous data.
Page 168
Introduction The TFORmat subsystem contains the commands available for the Timing Format menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer module. These commands are: • ACQMode • LABel • REMove • THReshold 11–2...
TFORmat Subsystem TFORmat Table 11-1 TFORmat Subsystem Parameter Values Parameter Value <N> an integer from 1 to 12 name string of up to 6 alphanumeric characters polarity {POSitive | NEGative} upper_bits format (integer from 0 to 65535) for a pod (pods are assigned in decreasing order) lower_bits format (integer from 0 to 65535) for a pod (pods are...
The ACQMode (acquisition mode) command allows you to select the acquisition mode for the timing analyzer. The options are: • conventional mode at full-channel 125 MHz (HP 16554A) or 250 MHz (HP 16555A/D) • conventional mode at half-channel 250 MHz (HP 16554A) or 500 MHz (HP 16555A/D).
TFORmat Subsystem LABel LABel Command :MACHine{1|2}:TFORmat:LABel <name>[,<polarity>, <clock_bits>,[<clock_bits>,]<upper_bits>, <lower_bits>[,<upper_bits>,<lower_bits>]...] 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.
TFORmat Subsystem REMove format (integer from 0 to 65535) for a pod (pods are assigned in decreasing <upper_bits> order) format (integer from 0 to 65535) for a pod (pods are assigned in decreasing <lower_bits> order) Example OUTPUT XXX;":MACHINE2:TFORMAT:LABEL ’STAT’,POSITIVE,0,127, 40312" OUTPUT XXX;":MACHINE2:TFORMAT:LABEL ’SIG 1’, #B11, #B0000000011111111,#B0000000000000000 "...
TFORmat Subsystem THReshold THReshold Command :MACHine{1|2}:TFORmat: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 −6.00 V to +6.00 V in 0.05 volt increments. pod number (integer from 1 to 12) <N>...
Page 176
Introduction The TTRigger subsystem contains the commands available for the Timing Trigger menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer module. The Timing Trigger subsystem will also accept the TTRace selector as used in previous HP 16500-series logic analyzer modules to eliminate the need to rewrite programs containing TTRace as the selector keyword.
Page 179
8 ns to 5 s based on the sample period sample_period real number from 4 ns (HP 16554A) or 2 ns (HP 16555A/D) to 8 ms edge_spec string consisting of {E | F | R | .}...
TTRigger (TTRace) Subsystem Qualifier Qualifier The qualifier for the timing trigger subsystem can be terms A through G and I, Timer 1 and 2, Range 1 and 2, and Edge 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 12-2, "Complex Qualifier,"...
Page 181
TTRigger (TTRace) Subsystem Qualifier <term3a> { A | NOTA } <term3b> { B | NOTB } <term3c> { C | NOTC } <term3d> { D | NOTD } <term3e> { E | NOTE } <term3f> { F | NOTF } <term3g>...
TTRigger (TTRace) Subsystem TTRigger (TTRace) 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.
TTRigger (TTRace) Subsystem ACQuisition ACQuisition Command :MACHine{1|2}:TTRigger:ACQuisition {AUTOmatic|MANual} The ACQuisition command allows you to specify the acquisition mode for the timing analyzer. Example OUTPUT XXX;":MACHINE1:TTRIGGER:ACQUISITION AUTOMATIC" Query :MACHine{1|2}:TTRigger:ACQuisition? The ACQuisition query returns the current acquisition mode specified. Returned Format [:MACHine{1|2}:TTRigger:ACQuisition] {AUTOmatic|MANual}<NL> Example OUTPUT XXX;":MACHINE1:TTRIGGER:ACQUISITION?"...
Page 184
TTRigger (TTRace) Subsystem BRANch 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 Timing Trigger menu. Regarding parentheses, the syntax definitions on the next page show only the required ones.
Page 185
TTRigger (TTRace) Subsystem BRANch Query :MACHine{1|2}:TTRigger:BRANch<N>? The BRANch query returns the current branch qualifier specification for a given sequence level. Returned Format [:MACHine{1|2}:TTRigger:BRANch<N>] <branch_qualifier>,<to_level_num><NL> Example OUTPUT XXX;":MACHINE1:TTRIGGER:BRANCH3?" Figure 12-2 Complex Qualifier Figure 12-2 is a front-panel representation of the complex qualifier (a Or b) Or (f Or g) Example...
TTRigger (TTRace) Subsystem CLEar Terms A through E, RANGE 1, EDGE1, and TIMER 1 must be grouped together and terms F, G, and I, RANGE 2, EDGE2, and TIMER 2 must be grouped together. In the first level, terms from one group may not be mixed with terms from the other.
TTRigger (TTRace) Subsystem EDGE EDGE Command :MACHine{1|2}:TTRigger:EDGE<N> <label_name>, <edge_spec> The EDGE command allows you to define edge specifications for a given label. Edge specifications can be R (rising), F (falling), E (either), or "." (don’t care). Edges are sent in the same string with the rightmost string character specifying what the rightmost bit will be.
TTRigger (TTRace) Subsystem FIND Query :MACHine{1|2}:TTRigger:EDGE<N>? <label_name> The EDGE query returns the current specification for the given label. Returned Format [:MACHine{1|2}:TTRigger:EDGE<N>] <label_name>,<edge_spec><NL> Example OUTPUT XXX;":MACHINE1:TTRIGGER:EDGE1? ’DATA’" FIND Command :MACHine{1|2}:TTRigger:FIND<N> <time_qualifier>, <condition_mode> The FIND command defines the qualifier for a given sequence level. The qualifier tells the timing analyzer when to proceed to the next sequence level.
Page 189
TTRigger (TTRace) Subsystem FIND less than real number from 8 ns to 5.00 seconds depending on sample period <duration_ time> integer from 1 to 1048575 <occurrence> Example OUTPUT XXX;":MACHINE1:TTRIGGER:FIND1 ’ANYSTATE’, GT, 10E−6" OUTPUT XXX;":MACHINE1:TTRIGGER:FIND3 ’((NOTA AND NOTB) OR G)’, OCCURRENCE, 10" Query :MACHine{1|2}:TTRigger:FIND4? The FIND query returns the current time qualifier specification for a given...
The MLENgth command allows you to specify the analyzer memory depth. Valid memory depths range from 4096 samples through the maximum system memory depth minus 8192 samples (HP 16554A/HP 16555A) or minus 16384 samples (HP 16555D). Memory depth is affected by acquisition mode. If the value sent with the command is not a legal value, the <memory_depth>...
TTRigger (TTRace) Subsystem RANGe RANGe Command :MACHine{1|2}:TTRigger:RANGe<N> <label_name>, <start_pattern>,<stop_pattern> The RANGe command allows you to specify a range recognizer term for the specified machine. Since a range can only be defined across one label and, since a label must contain 32 or fewer bits, the value of the start pattern or −1 and 0.
TTRigger (TTRace) Subsystem SEQuence SEQuence Command :MACHine{1|2}:TTRigger:SEQuence <number_of_levels> The SEQuence command defines the timing analyzer trigger sequence. First it deletes the current sequence, then it inserts the number of levels specified, with default settings. The number of levels can be between 1 and 10 when the analyzer is armed by the RUN key.
SPERiod Command :MACHine{1|2}:TTRigger:SPERiod <sample_period> The SPERiod command allows you to set the sample period of the timing analyzer. real number from 4 ns (HP 16554A) or 2 ns (HP 16555A/D) to 8 ms <sample_period> Example OUTPUT XXX;":MACHINE1:TTRIGGER:SPERIOD 50E−9" Query :MACHine{1|2}:TTRigger:SPERiod? The SPERiod query returns the current sample period.
TTRigger (TTRace) Subsystem TCONtrol TCONtrol Command :MACHine{1|2}:TTRigger:TCONtrol<N> <timer_num>, {OFF|STARt|PAUSe|CONTinue} The TCONtrol (timer control) command allows you to turn off, start, pause, or continue the timer for the specified level. The time value of the timer is defined by the TIMER command. integer from 1 to the number of existing sequence levels (maximum 10) <N>...
TTRigger (TTRace) Subsystem TERM TERM Command :MACHine{1|2}:TTRigger:TERM <term_id>, <label_name>,<pattern> The TERM command allows you to a specify a pattern recognizer term in the specified machine. 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 or fewer bits, the range of the pattern value will −...
TTRigger (TTRace) Subsystem TIMER Query :MACHine{1|2}:TTRigger:TERM? <term_id>,<label_name> The TERM query returns the specification of the term indicated by term identification and label name. Returned Format [:MACHine{1|2}:TTRigger:TERM] <term_id>,<label_name>,<pattern><NL> Example OUTPUT XXX;":MACHINE1:TTRIGGER:TERM? B,’DATA’ " TIMER Command :MACHine{1|2}:TTRigger:TIMER{1|2} time_value < > The TIMER command sets the time value for the specified timer. The limits of the timer are 400 ns to 500 seconds in 16 ns to 500 µs increments.
(2 × sample period) or 16 ns, whichever is greater, to <time_val> (516096 × sample period)(HP 16554A) or (1040384 × sample period) (HP 16555A/D). integer from 0 to 100 representing percentage of poststore.
Page 200
Introduction The TWAVeform subsystem contains the commands available for the Timing Waveforms menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer module. These commands are: • • ACCumulate RANGe • • ACQuisition REMove • • CENTer RUNTil • • CLRPattern SPERiod •...
TWAVeform Subsystem TWAVeform TWAVeform Selector :MACHine{1|2}:TWAVeform The TWAVeform selector is used as part of a compound header to access the settings found in the Timing Waveforms menu. It always follows the MACHine selector because it selects a branch below the MACHine level in the command tree.
TWAVeform Subsystem ACQuisition Query :MACHine{1|2}:TWAVeform:ACCumulate? The ACCumulate query returns the current setting. The query always shows the setting as the characters, "0" (off) or "1" (on). Returned Format [:MACHine{1|2}:TWAVeform:ACCumulate] {0|1}<NL> Example OUTPUT XXX;":MACHINE1:TWAVEFORM:ACCUMULATE?" ACQuisition Command :MACHine{1|2}:TWAVeform:ACQuisition {AUTOmatic|MANual} The ACQuisition command allows you to specify the acquisition mode for the timing analyzer.
TWAVeform Subsystem CENTer CENTer Command :MACHine{1|2}:TWAVeform:CENTer <marker_type> The CENTer command allows you to center the waveform display about the specified markers. <marker_type> {X|O|XO|TRIGger} Example OUTPUT XXX;":MACHINE1:TWAVEFORM:CENTER X" CLRPattern Command :MACHine{1|2}:TWAVeform:CLRPattern {X|O|ALL} The CLRPattern command allows you to clear the patterns in the selected Specify Patterns menu.
TWAVeform Subsystem DELay DELay Command :MACHine{1|2}:TWAVeform: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 <delay_value>...
TWAVeform Subsystem INSert INSert Command :MACHine{1|2}:TWAVeform:INSert [<module_spec>,] <label_name>[,{<bit_id>|OVERlay|ALL}] The INSert command inserts waveforms in the timing waveform display. The waveforms are added from top to bottom up to 96 waveforms. Once 96 waveforms are present, each time you insert another waveform, it replaces the last waveform.
The MLENgth command allows you to specify the analyzer memory depth. Valid memory depths range from 4096 samples through the maximum system memory depth minus 8192 samples (HP 16554A/HP 16555A) or the maximum system memory depth minus 16384 (HP 16555D). Memory depth is affected by acquisition mode.
TWAVeform Subsystem MINus Query :MACHine{1|2}:TWAVeform:MLENgth? The MLENgth query returns the current analyzer memory depth selection. Returned Format [:MACHine{1|2}:TWAVeform:MLENgth] <memory_length><NL> Example OUTPUT XXX;":MACHINE1:TWAVEFORM:MLENGTH?" MINus Command :MACHine{1|2}:TWAVeform:MINus <module_spec>,<waveform>,<waveform> The MINus command inserts time-correlated A−B (A minus B) oscilloscope waveforms on the display. The first parameter specifies where the oscilloscope master card resides, where 1 through 10 refers to slots A through J.
TWAVeform Subsystem MMODe MMODe Command :MACHine{1|2}:TWAVeform:MMODe {OFF|PATTern|TIME|MSTats} The MMODe (Marker Mode) command selects the mode controlling marker movement 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 on time.
TWAVeform Subsystem OCONdition OCONdition Command :MACHine{1|2}:TWAVeform:OCONdition {ENTering|EXITing} 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 marker mode. Example OUTPUT XXX; ":MACHINE1:TWAVEFORM:OCONDITION ENTERING" Query :MACHine{1|2}:TWAVeform:OCONdition? The OCONdition query returns the current setting.
TWAVeform Subsystem OPATtern OPATtern Command :MACHine{1|2}:TWAVeform:OPATtern <label_name>, <label_pattern> 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 moving the marker on patterns. Since this command deals with only one label at a time, a complete specification could require several invocations.
With a positive occurrence, the marker searches after the origin. <origin> {STARt|TRIGger|XMARker} integer from −1040384 to +1040384 (HP 16554A) or from −2088960 to <occurrence> +2088960 (HP 16555A) or from –4177920 to +4177920 (HP 16555D) Example OUTPUT XXX;...
TWAVeform Subsystem OTIMe OTIMe Command :MACHine{1|2}:TWAVeform:OTIMe <time_value> The OTIMe command positions the O marker in time when the marker mode is TIME. If data is not valid, the command performs no action. real number −2.5 ks to +2.5 ks <time_value> Example OUTPUT XXX;...
TWAVeform Subsystem PLUS <module_spec> {1|2|3|4|5|6|7|8|9|10} string containing <acquisition_spec>{1|2} <waveform> {A|B|C|D|E|F|G|H|I|J} (slot where acquisition card is located) <acquisition_ spec> Example OUTPUT XXX;":MACHINE1:TWAVEFORM:OVERLAY 3, ’C1’,’C2’" PLUS Command :MACHine{1|2}:TWAVeform:PLUS <module_spec>, <waveform>, <waveform> The PLUS command inserts time-correlated A+B oscilloscope waveforms on the screen. The first parameter specifies the slot where the oscilloscope module resides.
TWAVeform Subsystem RANGe RANGe Command :MACHine{1|2}:TWAVeform:RANGe <time_value> The RANGe command specifies the full-screen time in the timing waveform menu. It is equivalent to ten times the sec/Div setting on the display. The allowable values for RANGe are from 10 ns to 10 ks. real number between 10 ns and 10 ks <time_range>...
TWAVeform Subsystem RUNTil RUNTil Command :MACHine{1|2}:TWAVeform:RUNTil <run_until_spec> The RUNTil (run until) command defines stop criteria based on the time between the X and O markers when the trace mode is in repetitive. When OFF is selected, the analyzer will run until either the STOP touch screen field is touched, or, the STOP command is sent.
SPERiod Command :MACHine{1|2}:TWAVeform:SPERiod <sample_period> The SPERiod command allows you to set the sample period of the timing analyzer. real number from 4 ns (HP 16554A) or 2 ns (HP 16555A/D) to 8 ms <sample_period> Example OUTPUT XXX;":MACHINE1:TWAVEFORM:SPERIOD 50E−9" Query :MACHine{1|2}:TWAVeform:SPERiod? The SPERiod query returns the current sample period.
TWAVeform Subsystem TAVerage TAVerage Query :MACHine{1|2}:TWAVeform:TAVerage? The TAVerage query returns the value of the average time between the X and O markers. If there is no valid data, the query returns 9.9E37. Returned Format [:MACHine{1|2}:TWAVeform:TAVerage] <time_value><NL> real number <time_value> Example OUTPUT XXX;":MACHINE1:TWAVEFORM:TAVERAGE?"...
TWAVeform Subsystem TMINimum TMINimum Query :MACHine{1|2}:TWAVeform:TMINimum? The TMINimum query returns the value of the minimum time between the X and O markers. If there is no valid data, the query returns 9.9E37. Returned Format [:MACHine{1|2}:TWAVeform:TMINimum] <time_value><NL> real number <time_value> Example OUTPUT XXX;":MACHINE1:TWAVEFORM:TMINIMUM?"...
TWAVeform Subsystem VRUNs Query MACHine{1|2}:TWAVeform:TPOSition? The TPOSition query returns the current trigger setting. Returned Format [MACHine{1|2}:TWAVeform:TPOSition] {STARt|CENTer|END|DELay, <time_val>| POSTstore,<percent>}<NL> Example OUTPUT XXX;":MACHINE2:TWAVEFORM:TPOSition?" VRUNs Query :MACHine{1|2}:TWAVeform:VRUNs? The VRUNs query returns the number of valid runs and total number of runs made. Valid runs are those where the pattern search for both the X and O markers was successful resulting in valid time measurements.
TWAVeform Subsystem XCONdition XCONdition Command :MACHine{1|2}:TWAVeform:XCONdition {ENTering | EXITing} The XCONdition command specifies where the X marker is placed. The X marker can be placed on the entry or exit point of the XPATtern when in the PATTern marker mode. Example OUTPUT XXX;...
TWAVeform Subsystem XPATtern XPATtern Command :MACHine{1|2}:TWAVeform:XPATtern <label_name>,<label_pattern> The XPATtern command allows you to construct a pattern for the X marker which is then used with the XSEarch criteria and XCONdition when moving the marker on patterns. Since this command deals with only one label at a time, a complete specification could require several iterations.
An occurrence of 0 places a marker on the origin. <origin> {TRIGger|STARt} integer from from −1040384 to +1040384 (HP 16554A) or from –2088960 to <occurrence> +2088960(HP 16555A) or from –4177920 to +4177920(HP 16555D) Example OUTPUT XXX;...
TWAVeform Subsystem XTIMe XTIMe Command :MACHine{1|2}:TWAVeform:XTIMe <time_value> The XTIMe command positions the X marker in time when the marker mode is time. If data is not valid, the command performs no action. real number from −2.5 ks to +2.5 ks <time_value>...
Page 230
Introduction The TLISt subsystem contains the commands available for the Timing Listing menu in the HP 16554A/HP 16555A/HP 16555D logic analyzer modules and is the same as the SLISt subsystem (except for the OCONdition and XCONdition commands). The TLISt subsystem commands are: •...
Page 234
{1|2|3|4|5|6|7|8|9|10} mach_num {1|2} col_num integer from 1 to 61 line_number integer between ±1040384 (HP 16554A), or ±2088960 (HP 16555A) or ±4177920 (HP 16555D) label_name a string of up to 6 alphanumeric characters base {BINary|HEXadecimal|OCTal|DECimal|TWOS |ASCii|SYMBol} for labels or {ABSolute|RELative} for tags integer between ±1040384 (HP 16554A), or ±2088960...
TLISt Subsystem TLISt TLISt Selector :MACHine{1|2}:TLISt The TLISt selector is used as part of a compound header to access those settings normally found in the Timing Listing menu. It always follows the MACHine selector because it selects a branch directly below the MACHine level in the command tree.
TLISt Subsystem CLRPattern Example OUTPUT XXX;":MACHINE1:TLIST:COLUMN 4,2,’A’,HEX" Query :MACHine{1|2}:TLISt:COLumn? <col_num> The COLumn query returns the column number, data source, label name, and base for the specified column. Returned Format [:MACHine{1|2}:TLISt:COLumn] <col_num>,<module_num>,MACHine{1|2},<label_name>,<base><NL> Example OUTPUT XXX;":MACHINE1:TLIST:COLUMN? 4" CLRPattern Command :MACHine{1|2}:TLISt:CLRPattern {X|O|ALL} The CLRPattern command allows you to clear the patterns for the selected markers in the Specify Patterns menu.
The base will be the same as the one shown in the Listing display. Returned Format [:MACHine{1|2}:TLISt:DATA] <line_number>,<label_name>, <pattern_string><NL> integer from –1040384 to +1040384 (HP 16554A) or from –2088960 to <line_number> +2088960 (HP 16555A) or from –4177920 to +4177920 (HP 16555D) string of up to 6 alphanumeric characters <label_name>...
TLISt Subsystem MMODe Query :MACHine{1|2}:TLISt:LINE? The LINE query returns the line number for the state currently in the data roll box at the center of the screen. Returned Format [:MACHine{1|2}:TLISt:LINE] <line_num_mid_screen><NL> Example OUTPUT XXX;":MACHINE1:TLIST:LINE?" MMODe Command :MACHine{1|2}:TLISt:MMODe <marker_mode> The MMODe command (Marker Mode) selects the mode controlling the marker movement and the display of marker readouts.
TLISt Subsystem OCONdition OCONdition Command :MACHine{1|2}:TLISt:OCONdition {ENTering|EXITing} 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 marker mode. Example OUTPUT XXX; ":MACHINE1:TLIST:OCONDITION ENTERING" Query :MACHine{1|2}:TLISt:OCONdition? The OCONdition query returns the current setting.
TLISt Subsystem OPATtern OPATtern Command :MACHine{1|2}:TLISt:OPATtern <label_name>, <label_pattern> The OPATtern command allows you to construct a pattern for the O marker which is then used with the OSEarch criteria when moving the marker on patterns. Since this command deals with only one label at a time, a complete specification could require several iterations.
With a negative occurrence, the marker searches before the origin. With a positive occurrence, the marker searches after the origin. integer from –1040384 to +1040384 (HP 16554A) or from –2088960 to <occurrence> +2088960 (HP 16555A) or from –4177920 to +4177920 (HP 16555D) <origin>...
The OSTate query returns the line number in the listing where the O marker resides. If data is not valid, the query returns 2147483647. Returned Format [:MACHine{1|2}:TLISt:OSTate] <state_num><NL> 2147483647 or integer from –1040384 to +1040384 (HP 16554A) or from <state_num> –2088960 to +2088960 (HP 16555A) or from –4177920 to +4177920 (HP 16555D) Example OUTPUT XXX;":MACHINE1:TLIST:OSTATE?"...
TLISt Subsystem REMove Query :MACHine{1|2}:TLISt:OTAG? The OTAG query returns the O marker position in time regardless of whether the marker was positioned in time or through a pattern search. If data is not valid, the query returns 9.9E37. Returned Format [:MACHine{1|2}:TLISt:OTAG] <time_value><NL>...
TLISt Subsystem RUNTil RUNTil Command :MACHine{1|2}:TLISt: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 STOP field is touched or the STOP command is issued.
TLISt Subsystem TAVerage TAVerage Query :MACHine{1|2}:TLISt:TAVerage? The TAVerage query returns the value of the average time between the X and O markers. If the number of valid runs is zero, the query returns 9.9E37. Valid runs are those where the pattern search for both the X and O markers was successful, resulting in valid time measurements.
TLISt Subsystem TMINimum TMINimum Query :MACHine{1|2}:TLISt:TMINimum? The TMINimum query returns the value of the minimum time between the X and O markers. If data is not valid, the query returns 9.9E37. Returned Format [:MACHine{1|2}:TLISt:TMINimum] <time_value><NL> real number <time_value> Example OUTPUT XXX;":MACHINE1:TLIST:TMINIMUM?" VRUNs Query :MACHine{1|2}:TLISt:VRUNs?
TLISt Subsystem XCONdition XCONdition Command :MACHine{1|2}:TLISt:XCONdition {ENTering|EXITing} The XCONdition command specifies where the X marker is placed. The X marker can be placed on the entry or exit point of the XPATtern when in the PATTern marker mode. Example OUTPUT XXX; ":MACHINE1:TLIST:XCONDITION ENTERING" Query :MACHine{1|2}:TLISt:XCONdition? The XCONdition query returns the current setting.
TLISt Subsystem XOTime XOTime Query :MACHine{1|2}:TLISt:XOTime? The XOTime query returns the time from the X to O markers. If there is no data the query returns 9.9E37. Returned Format [:MACHine{1|2}:TLISt:XOTime] <XO_time><NL> real number <XO_time> Example OUTPUT XXX;":MACHINE1:TLIST:XOTIME?" XPATtern Command :MACHine{1|2}:TLISt:XPATtern <label_name>, <label_pattern>...
X pattern, relative to the origin, the marker actually searches for. An occurrence of 0 places a marker on the selected origin. integer from –1040384 to +1040384 (HP 16554A) or from –2088960 to <occurrence> +2088960 (HP 16555A) or from –4177920 to +4177920 (HP 16555D) <origin>...
The XSTate query returns the line number in the listing where the X marker resides. If data is not valid, the query returns 2147483647. Returned Format [:MACHine{1|2}:TLISt:XSTate] <state_num><NL> 2147483647 or integer from –1040384 to +1040384 (HP 16554A) or from <state_num> –2088960 to +2088960 (HP 16555A) or from –4177920 to +4177920 (HP 16555D).
TLISt Subsystem XTAG XTAG Command :MACHine{1|2}:TLISt:XTAG <time_value> The XTAG command specifies the tag value on which the X marker should be placed. The tag value is always time for the timing analyzer. If the data is not valid tagged data, no action is performed. real number <time_value>...
Page 254
Introduction The SYMBol subsystem contains the commands that allow you to define symbols on the controller and download them to the HP 16554A/HP 16555A/HP 16555D logic analyzer modules. The commands in this subsystem are: • BASE • PATTern • RANGe •...
Page 255
SYMBol Subsystem Figure 15-1 SYMBol Subsystem Syntax Diagram 15–3...
Page 256
SYMBol Subsystem Table 15-1 SYMBol Parameter Values Parameter Value label_name string of up to 6 alphanumeric characters symbol_name string of up to 16 alphanumeric characters pattern_value "{#B{0|1|X}...| #Q{0|1|2|3|4|5|6|7|X}...| #H{0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|X}...| {0|1|2|3|4|5|6|7|8|9}...}" start_value "{#B{0|1}...| stop_value #Q{0|1|2|3|4|5|6|7}...| #H{0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F}...| {0|1|2|3|4|5|6|7|8|9}...}" width_value integer from 1 to 16 15–4...
SYMBol Subsystem SYMBol SYMBol Selector :MACHine{1|2}:SYMBol The SYMBol selector is used as a part of a compound header to access the commands used to create symbols. It always follows the MACHine selector because it selects a branch directly below the MACHine level in the command tree.
SYMBol Subsystem PATTern PATTern Command :MACHine{1|2}:SYMBol:PATTern <label_name>, <symbol_name>,<pattern_value> The PATTern command allows you to create a pattern symbol for the specified label. Because don’t cares (X) are allowed in the pattern value, it must always be expressed as a string. The values may be in binary (#B), octal (#Q), hexadecimal (#H), or decimal (default).
SYMBol Subsystem RANGe RANGe Command :MACHine{1|2}:SYMBol:RANGe <label_name>, <symbol_name>,<start_value>,<stop_value> The RANGe command allows you to create a range symbol containing a start value and a stop value for the specified label. The values may be in binary (#B), octal (#Q), hexadecimal (#H) or decimal (default). You can not use don’t cares in any base.
SYMBol Subsystem REMove REMove Command :MACHine{1|2}:SYMBol:REMove The REMove command deletes all symbols from a specified machine. Example OUTPUT XXX;":MACHINE1:SYMBOL:REMOVE" WIDTh Command :MACHine{1|2}:SYMBol:WIDTh <label_name>, <width_value> The WIDTh command specifies the width (number of characters) in which the symbol names will be displayed when symbols are used. The WIDTh command does not affect the displayed length of the symbol offset value.
Page 262
Introduction This chapter provides you with information for programming the System Performance Analysis (SPA) features on the HP 16554A/ HP 16555A/HP 16555D logic analyzer modules. SPA commands have subsystems, indicated by the outdented items in the list. Indented commands must be prefaced with the outdented command above it unless MODE was previously used to set the mode.
SPA Subsystem MODE MODE Command :SPA{1|2}:MODE {OVERView|HISTogram|TINTerval} The MODE command selects which menu to display: State Overview, State Histogram, or Time Interval. A query returns the current menu mode. Example OUTPUT XXX;":SPA1:MODE OVERView" OUTPUT XXX;":SPA2:MODE HISTogram" OUTPUT XXX;":SPA1:MODE TINTerval" Query :SPA{1|2}:MODE? Returned Format [:SPA{1|2}:MODE] {OVERView|HISTogram|TINTerval}<NL>...
SPA Subsystem OVERView:BUCKet OVERView:BUCKet Query :SPA{1|2}:OVERView:BUCKet? {SIZE|NUMBer|<bucket_num>} The OVERView:BUCKet query returns data relating to the State Overview measurement. You specify SIZE for width of each bucket, NUMBer for number of buckets, or for the number of hits in the specified <bucket_num>...
SPA Subsystem OVERView:HIGH OVERView:HIGH Command :SPA{1|2}:OVERView:HIGH <high_pattern> The OVERView:HIGH command sets the upper boundary of the State Overview measurement. A query returns the current setting of the upper boundary. Setting the upper boundary defaults the data accumulators, statistic counters, and the number of buckets and their size. <high_pattern>...
SPA Subsystem OVERView:LABel OVERView:LABel Command :SPA{1|2}:OVERView:LABel <label_name> The OVERView:LABel command selects a new label for collecting the SPA measurements. A query returns the name of the currently selected label. Selecting a new label defaults the State Overview data accumulators, statistic counters, and the number of buckets and their size.
SPA Subsystem OVERView:LOW OVERView:LOW Command :SPA{1|2}:OVERView:LOW <low_pattern> The OVERView:LOW command sets the lower boundary of the State Overview measurement. A query returns the current setting of the lower boundary. Setting the lower boundary defaults the data accumulators, statistic counters, and the number of buckets and their size. <low_pattern>...
The MLENgth command specifies the memory depth. Valid memory depths range from 4096 states (or samples) through the maximum system memory depth minus 8192 states (HP 16554A/HP 16555A) or minus 16384 states (HP 16555D). Memory depth is affected by acquisition mode. If the value sent with the command is not a legal value, the <memory_depth>...
SPA Subsystem OVERView:OMARker OVERView:OMARker Command :SPA{1|2}:OVERView:OMARker <o_pattern> The OVERView:OMARker command sends the O marker to the lower boundary of the bucket where the specified pattern is located. A request to place the marker outside the defined boundary forces the marker to the appropriate end bucket.
SPA Subsystem OVERView:OVSTatistic OVERView:OVSTatistic Query :SPA{1|2}:OVERView:OVSTatistic? {XHITs|OHITs|TOTal} The OVERView:OVSTatistic query returns the number of hits associated with the requested statistic or returns the number of hits in the specified bucket. XHITs requests the number of hits in the bucket where the X marker is located.
SPA Subsystem OVERView:XMARker OVERView:XMARker Command :SPA{1|2}:OVERView:XMARker <x_pattern> The OVERView:XMARker command sends the X marker to the lower boundary of the bucket where the specified pattern is located. A request to place the marker outside the defined boundary forces the marker to the appropriate end bucket.
SPA Subsystem HISTogram:HSTatistic HISTogram:HSTatistic Query :SPA{1|2}:HISTogram:HSTatistic? {TOTal|OTHer|<range_number>} The HISTogram:HSTatistic query returns the total number of samples or returns the number of samples in the specified range. Specify TOTal for the total number of samples, OTHer for the number of hits in "other" range, or for the number of hits in that range.
SPA Subsystem HISTogram:LABel HISTogram:LABel Command :SPA{1|2}:HISTogram:LABel <label_name> The HISTogram:LABel command selects a new label for collecting SPA measurements. A query returns the name of the currently selected label. Selecting a new label defaults the State Histogram range names, bucket sizes, and hit accumulators.
SPA Subsystem HISTogram:OTHer HISTogram:OTHer Command :SPA{1|2}:HISTogram:OTHer {INCLuded|EXCLuded} The HISTogram:OTHer command selects including or excluding the "other" histogram bucket. A query returns data indicating whether the "other" bucket is currently included or excluded. Example OUTPUT XXX;":SPA2:HISTogram:OTHer INCLuded" OUTPUT XXX;":SPA1:HISTogram:OTHer EXCLuded" Query :SPA{1|2}:HISTogram:OTHer? Returned Format [:SPA{1|2}:HISTogram:OTHer] {INCLuded|EXCLuded}<NL>...
SPA Subsystem HISTogram:QUALifier HISTogram:QUALifier Command :SPA{1|2}:HISTogram:QUALifier <label_name>, <pattern> The HISTogram:QUALifier command sets the pattern associated with the specified label. The pattern is a condition for triggering and storing the measurement. A query of a label returns the current pattern setting for that label.
SPA Subsystem HISTogram:RANGe HISTogram:RANGe Command :SPA{1|2}:HISTogram:RANGe {OFF | <range_num>, <range_name>,<low_patt>,<high_patt>} The HISTogram:RANGe command turns off all ranges or defines the range name, low boundary, and high boundary of the specified range. Defining a specified range turns on that range. For the specified range, a query returns the name, low boundary, high boundary, and whether the range is on or off.
SPA Subsystem HISTogram:TTYPe HISTogram:TTYPe Command :SPA{1|2}:HISTogram:TTYPe {ALL|QUALified} The HISTogram:TTYPe command sets the trigger to trigger on anystate or on qualified state. A query returns the current trace type setting. Example OUTPUT XXX;":SPA2:HISTogram:TTYPe ALL" Query :SPA{1|2}:HISTogram:TTYPe? Returned Format [:SPA{1|2}:HISTogram:TTYPe] {ALL|QUALified}<NL> Example 10 DIM String$[100] 20 OUTPUT XXX;":SELECT 1"...
SPA Subsystem TINTerval:AUTorange TINTerval:AUTorange Command :SPA{1|2}:TINTerval:AUTorange {LOGarithmic|LINear},<min_time>,<max_time> The TINTerval:AUTorange command automatically sets the Time Interval ranges in a logarithmic or linear distribution over the specified range of time. When the AUTorange command is executed, the data accumulators and statistic counters are reset. real number <min_time>...
SPA Subsystem TINTerval:QUALifier TINTerval:QUALifier Command :SPA{1|2}:TINTerval:QUALifier <label_name>, <start_pattern>,<end_pattern> The TINTerval:QUALifier command defines the start and stop patterns for a specified label. The start and stop patterns determine the time windows for collecting data. A query returns the currently defined start and stop patterns for a given label.
SPA Subsystem TINTerval:TINTerval TINTerval:TINTerval Command :SPA{1|2}:TINTerval:TINTerval <interval_number>,<min_time>,<max_time> The TINTerval:TINTerval command specifies the minimum and maximum time limits for the given interval. A query returns these limits for a specified interval. 0 to 7 <interval_ number> real number <min_time> real number <max_time>...
SPA Subsystem TINTerval:TSTatistic TINTerval:TSTatistic Query :SPA{1|2}:TINTerval:TSTatistic? {TMINimum| TMAXimum|TAVerage|TOTal|TTOTal|<interval_number>} The TINTerval:TSTatistic query returns either the time or the number of samples associated with the requested statistic. The statistics you can request are: • TMINimum - overall minimum interval time • TMAXimum - overall maximum interval time •...
DATA and SETup Commands Data Format Data Format To understand the format of the data within the block data, there are four important things to keep in mind. • Data is sent to the controller in binary form. • Each byte, as described in this chapter, contains 8 bits. •...
Example OUTPUT XXX;":SYSTEM:DATA" <block data> Do not load UNPacked data into the instrument; it may cause the HP 16500 to lock up. If this happens, cycle power. Only data saved in PACKed mode can be reloaded back into a logic analyzer.
Page 291
DATA and SETup Commands SYSTem:DATA <block data> <block length specifier><section>... <block length #8<length> specifier the total length of all sections in byte format (must be represented with 8 <length> digits) <section> <section header><section data> 16 bytes, described on the following page <section header>...
" in ASCII for the DATA instruction). 1 byte - Reserved 1 byte - Module ID (34 decimal for the HP 16554A and HP 16555A/D master boards, and 35 for expander boards) 4 bytes - Length of block in bytes that when converted to decimal, specifies the number of bytes contained in the data block.
4 bytes - Machine data mode, one of the following decimal values: −1 = off 0 = 70 MHz (HP 16554A) or 100 MHz (HP 16555A/D) State data, no tags 1 = 70 MHz (HP 16554A) or 100 MHz (HP 16555A/D) State data with tags...
Page 294
DATA and SETup Commands Data Preamble Description Byte Position 4 bytes - List of pods in this analyzer, where a binary 1 indicates that the corresponding pod is assigned to this analyzer bit 31 bit 30 bit 29 bit 28 bit 27 bit 26 bit 25...
Page 295
DATA and SETup Commands Data Preamble Description Byte Position 4 bytes - Tag type for state mode in one of the following decimal values: 0 = off 1 = time tags 2 = state tags 8 bytes - Trigger offset. The time offset (in picoseconds) from when this analyzer is triggered and when this analyzer provides an output trigger to the IMB or port out.
Page 296
DATA and SETup Commands Data Preamble Description Bytes 241 through 244 contain the number of valid rows of data for Byte Position pod 1 of either the expansion card in a two-card module, or a middle cardslot expansion card in a three-card module. Bytes 245 through 248 contain the number of valid rows of data for pod 4 of the master card.
DATA and SETup Commands Acquisition Data Description Acquisition Data Description The acquisition data section consists of a variable number of bytes depending on the number of cards in the configuration, the acquisition mode, and the state tag setting. The data is grouped in rows of bytes with one sample from each pod in a single row.
Page 298
DATA and SETup Commands Acquisition Data Description The depth of the data array is equal to the pod with the greatest number of rows of valid data. If a pod has fewer rows of valid data than the data array, unused rows will contain invalid data that should be ignored.
DATA and SETup Commands Time Tag Data Description Example A three-card configuration with 516096 valid rows First data byte = byte 591 Last data byte = 14,451,278 [591 + (28 × 516096) - 1] Time Tag Data Description If tags are enabled for one or both analyzers, the tag data follows the acquisition data.
Page 300
10 bytes for the section name header> 1 byte reserved 1 byte for the module ID code (34 for the HP 16554A and HP 16555A/D logic analyzer) 4 bytes for the length of the section data in bytes format depends on the type of data. The total length of a section is 16 (for <section data>...
Page 304
Introduction This chapter contains short, usable, and tested programs that cover the most asked for examples. The examples are written in HP BASIC 6.0. • Making a timing analyzer measurement • Making a state analyzer measurement • Making a state compare analyzer measurement •...
! ****************** TIMING ANALYZER EXAMPLE ****************** for the HP 16554A/HP 16555A/HP 16555D Logic Analyzer ! ************************************************************** ! Select the module slot in which the HP 16554A/HP 16555A/D is installed. ! In this example, it is in slot B of the mainframe. OUTPUT 707;":SELECT 2"...
Page 306
Programming Examples Making a Timing Analyzer Measurement OUTPUT 707;":MACH1:TWAVEFORM:REMOVE" OUTPUT 707;":MACH1:TWAVEFORM:INSERT ’COUNT’, ALL" OUTPUT 707;":MACH1:TWAVEFORM:RANGE 1E-6" OUTPUT 707;":MENU 2,5" ! **************************************************************** ! Run the timing analyzer in single mode. OUTPUT 707;":RMODE SINGLE" OUTPUT 707;":START" ! **************************************************************** ! Set the marker mode (MMODE) to time so that patterns are available ! for marker measurements.
This program is written so that you can run it with the HP E2433-60004 Logic Analyzer Training Board. This example is the same as the "Multilevel State Triggering" example in chapter 9 of the HP E2433 Logic Analyzer Training Kit.
Page 308
Programming Examples Making a State Analyzer Measurement ! ******************* SETUP THE TRIGGER SPECIFICATION ******************** ! The trigger specification will use five sequence levels with the trigger ! level on level four. Resource terms A through E, and RANGE1 will be ! used to store only desired counts from the 8-bit ripple counter.
Page 309
Programming Examples Making a State Analyzer Measurement ! ***************** CONFIGURE SEQUENCE LEVEL 4 *************************** ! Store a combination of resource terms (C or D or RANGE1) in level 4 and ! Then Trigger on resource term "E." OUTPUT 707;":MACHINE1:STRIGGER:STORE4 ’(C OR D OR IN_RANGE1)’" ! ************************ NOTE *********************** The FIND command selects the trigger in the sequence level specified as the trigger level.
Page 310
Programming Examples Making a State Analyzer Measurement 1170 IF (Status AND 1)=1 THEN GOTO 1190 1180 GOTO 1070 1190 PRINT TABXY(30,15);"Measurement is complete" 1200 1210 ! ************************ VIEW THE RESULTS ***************************** 1220 ! Display the State Listing and select a line number in the listing that 1230 ! allows you to see the beginning of the listing on the logic analyer 1240...
This program is written so that you can run it with the HP E2433-60004 Logic Analyzer Training Board. This example is the same as the "State Compare"...
Page 312
Programming Examples Making a State Compare Analyzer Measurement ! ****************************************************************** ! Specify two sequence levels, the trigger sequence level, specify ! FF hex for the "a" term which will be the trigger term, and store ! no states until the trigger is found. OUTPUT 707;":MACHINE1:STRIGGER:SEQUENCE 2,1"...
Page 313
Programming Examples Making a State Compare Analyzer Measurement !*********************************************************************** ! Display line 4090 of the compare listing and start the analyzer ! in a repetitive mode. OUTPUT 707;":MACHINE1:COMPARE:LINE 4090" OUTPUT 707;":START" ! Line 4090 of the listing is now displayed at center screen. ! In this example, the states are stable.
Page 314
Programming Examples Making a State Compare Analyzer Measurement 1100 !************************************************************************ 1110 ! Start the logic analyzer to acquire new data and then stop it to compare 1120 ! the data. When the acquistion is stopped, the Compare Listing Menu will 1130 ! be displayed.
Page 315
Programming Examples Making a State Compare Analyzer Measurement 1540 1550 ENTER 707 USING "#,2A";Error$ 1555 ENTER 707 USING "#,1A";Comma$ 1560 ENTER 707 USING "K";Line$ 1570 GOTO 1610 1580 1590 ENTER 707 USING "#,3A";Error$ 1595 ENTER 707 USING "#,1A";Comma$ 1600 ENTER 707 USING "K";Line$ 1610 1620 ! ************************************************************************...
SYSTem:DATA command because it only transfers the configuration and not acquired data. ! ****************** SETUP COMMAND AND QUERY EXAMPLE ******************** for the HP 16554A/HP 16555A/HP 16555D ! ********************* CREATE TRANSFER BUFFER ************************* ! Create a buffer large enough for the block data. See "Sending Queries ! to the Logic Analyzer"...
Page 317
Programming Examples Transferring the Logic Analyzer Configuration ! *********************** SEND THE SETUP QUERY ************************** OUTPUT 707;":SYSTEM:HEADER ON" OUTPUT 707;":SYSTEM:LONGFORM ON" OUTPUT @Comm;":SELECT 2" OUTPUT @Comm;":SYSTEM:SETUP?" ! ******************** ENTER THE BLOCK SETUP HEADER ********************* ! Enter the block setup header in the proper format. ENTER @Comm USING "#,B";Byte PRINT CHR$(Byte);...
Page 318
! Save the transfer buffer pointer so it can be restored after the ! transfer. STATUS @Buff,5;Streg 1000 1010 ! ************ TRANSFER SETUP TO THE MODULE **************** 1020 ! Transfer the setup from the buffer to the HP 16554A/HP 16555A/HP 16555D. 1030 1040 TRANSFER @Buff TO @Comm;COUNT Numbytes,WAIT 1050 18–16...
Page 319
Programming Examples Transferring the Logic Analyzer Configuration 1060 ! ********************** RESTORE BUFFER POINTERS *********************** 1070 ! Restore the transfer buffer pointer 1080 1090 CONTROL @Buff,5;Streg 1100 1110 ! ******************** SEND TERMINATING LINE FEED ********************** 1120 ! Send the terminating linefeed to properly terminate the setup string. 1130 1140 OUTPUT @Comm;""...
Programming Examples Checking for Measurement Completion Checking for Measurement Completion This program can be appended to or inserted into another program when you need to know when a measurement is complete. If it is at the end of a program it will tell you when measurement is complete. If you insert it into a program, it will halt the program until the current measurement is complete.
HP 16554A/HP 16555A/HP 16555D ! ********************* CREATE TRANSFER BUFFER ************************* ! NOTE WELL! The data from the 16554A may be up to 19Mbytes long! ! NOTE WELL! The data from the 16555A may be up to 38Mbytes long!
Page 322
Programming Examples Sending Queries to the Logic Analyzer ! ************* INTITIALIZE VARIABLE FOR NUMBER OF BYTES ***************** ! The variable "Numbytes" contains the number of bytes in the buffer. REAL Numbytes Numbytes=0 ! ************** RE-INITIALIZE TRANSFER BUFFER POINTERS ****************** CONTROL @Buff,3;1 CONTROL @Buff,4;0 ! *********************** SEND THE DATA QUERY ************************** OUTPUT 707;":SYSTEM:HEADER ON"...
Page 323
OUTPUT @Comm USING "#,14A";":SYSTEM:DATA #" PRINT "SYSTEM:DATA command has been sent. Press continue." PAUSE ! ********************* SEND THE BLOCK DATA **************************** ! Send the block data header to the HP 16554A/HP 16555A in the proper ! format. OUTPUT @Comm USING "#,A";"8" Str1$=DVAL$(Numbytes,10) Byte=1 PRINT USING "AAAAAAAA";Str1$[4]...
Page 324
Programming Examples Sending Queries to the Logic Analyzer 1010 ! ************* TRANSFER DATA TO THE HP 16554A/HP 16555 **************** 1020 ! Transfer the data from the buffer to the HP 16554A/HP 16555A. 1030 1040 TRANSFER @Buff TO @Comm;COUNT Numbytes,WAIT 1050...
Page 332
This Hewlett-Packard This is the first edition of the Hewlett-Packard edition and of any changed product has a warranty HP 16554A/HP 16555A/ specifically disclaims the pages to that edition. against defects in material HP 16555D Programmer’s implied warranties of and workmanship for a period Guide.
Need help?
Do you have a question about the 16554A and is the answer not in the manual?
Questions and answers