External triggering is a valuable function for any protocol analyzer, enabling the analyzer to work synchronously with other test equipment.
Through the use of the external trigger function, the engineer or test technician has the ability to trigger the analyzer using other test systems such as oscilloscopes, logic analyzers, or other protocol analyzers. Conversely, the protocol analyzer can be the source of a trigger to another piece of test equipment that also supports external triggering. This allows the engineer to design test systems where information detectable on one piece of equipment can be utilized by a different piece of equipment for recording or other test purpose, and multiple elements of a complex test setup can be synchronized with each other.
External Trigger Connection Overview
PCI Express protocol analyzers supplied by LeCroy have two ways to connect external triggers into and out of the system. The first and simplest is through the BNC connectors on the back of the analyzer, and the second is through the use of an external cable and breakout board.
The BNC connectors use 50 ohm termination and should be used with matching cables. The breakout board provides more flexibility, is equipped to handle single-lead connections, and has the ability to add a mini-circuit on the board to generate or modify triggering functions.
Both Trigger_In and Trigger_Out functions use standard TTL level logic, with a DC voltage range of 0 to +5 volts. When not connected to an external logic source, the Trigger_In connector is pulled up to 3.3V through a resistor. The operating voltage threshold range as defined by the TTL specification is “Voltage Input High” (VID) of greater than +2.0 volts DC and “Voltage Input Low” (VIL) of less than +0.8 volts DC (with reference to ground on the same connector/cable). If the voltage is between these ranges the analyzer may not trigger or may trigger intermittently.
External Trigger via BNC
Using an external Trigger_In via the BNC connector is a very simple process: Simply connect a 50 ohm cable to the BNC connector and the system is active and ready to go. No other settings are required.
The incoming TTL-level signal to the Trigger_In BNC connector can be a positive pulse (e.g., 0V going to 5V) or a negative pulse, and the analyzer will trigger on the leading edge of the pulse.
The external Trigger_In works in parallel with the manual trigger (located on the front of the analyzer) and with the programmable trigger which is defined in the Recording Options screen when “Event Trigger” is selected (see below). Any of the three functions (external Trigger_In, Manual Trigger and Event Trigger) can generate a trigger to the analyzer.
When using the Trigger_Out BNC connector from the analyzer to trigger external test equipment, the Trigger_Out signal is normally low and will produce a positive TTL-level pulse when trigger conditions as defined in the protocol analyzer are met. (This can be changed if using the breakout board Data pins, see below.)
The Trigger_Out signal is provided any time the analyzer produces a trigger, regardless of whether the trigger was generated from the external Trigger_In, the Manual Trigger, or the programmable trigger (via Recording Rules).
External Trigger via Breakout Board
The breakout board is a multipurpose PCB intended to provide flexibility in designing and creating trigger logic involving multiple test systems. The board is a small (113 x 100 mm, 4.5” x 4.0”) PCB that provides a series of wirewrap data pins and also provides ground and +5V connections. Each signal pin is isolated by a 100 ohm resistor on the breakout board and a buffer inside the analyzer. The board also includes a “prototype rework area” consisting of plated-through holes, 20 columns wide by 27 rows tall, with the top row being ground and the bottom row being +5V. The two large connectors on the breakout board are banana jacks providing a convenient source of ground and +5V for testing.
The breakout board connects via an RS-232 type cable to the back of the analyzer at the DB25 connector.
There are two pins on the breakout board for the Trigger_In function. These pins are Trigger_In_0 and Trigger_In_1, and use the same TTL voltage values as the BNC connector. Both pins have the same function as the Trigger_In BNC connector, and a rising or falling edge TTL signal on either pin will cause the analyzer to detect an external trigger input.
Also there are 4 data pins on the breakout board that can be used for the Trigger_In function, these are Data_0 through Data_3 (Data_4 through Data_7 are not usable for triggering).
The four Data pins (Data_0 through Data_3) are normally undefined until a TTL logic signal is externally applied to them. One or more of the pins can be used in combination to create logical data conditions that result in a trigger. This provides the ability to trigger on a single pin (similar the the Trigger_In_0 or Trigger_In_1), or to trigger on a combination of up to four signals, each of which may be low, high or “don’t care”.
The screen to control these functions is located under the Recording Rules section. Through the analyzer software, select Recording Options from the Setup menu. If “Simple Mode” is displayed, click on the button Switch to Advanced Mode in the lower left corner.
This will provide two new tabs called General and Recording Rules.
The General tab is similar to the Simple Mode, and provides the option to select Event Trigger in the Recording Type section. Select Event Trigger.
Now click on the Recording Rules tab. This opens a screen which allows the user to define many logical sequences to control trace recording. For our purposes here, we are interested only in the control of external trigger inputs and outputs. Click on New Event, and select Breakout Board Data.
This produces a button called “Breakout Board” under the “Available Events” column on the left side of this screen. You can click and drag this button into the logic window called “Global State”, and you will see the screen as shown below:
Double-click on the “Breakout Board” button to show the Event Properties screen at the top of the next column:
This screen provides two tabs, one to defined the pattern mask for the four data pins, and the second to define the action to be taken if the pattern is recognized.
The pattern mask shows four values, which correspond to the four pins in the following order: Data_3, Data_2, Data_1 and Data_0. Each pin within the pattern can be defined as high (“1”), low (“0”) or “don’t care” (“X”). This provides many different logical combinations of these four data pins which will create a trigger for the system.
Click the Actions tab to see the following screen:
This screen defines what action to take when the data pin combination is recognized. The available options included whether to trigger the analyzer (“Internal Triggering”) and/or whether to create an external trigger (“External Triggering”). If the intent is to create a pattern which triggers the analyzer, then check the Trigger Analyzer checkbox.
Note that the External Trigger produced by events on the data pins the breakout board can be defined as “Pulse High”, “Pulse Low”, or “None”. This provides a simple user interface that supports a flexible environment to produce a wide range of different actions based on different values provided to the data pins on the breakout board.
Also, note that it is possible to define multiple different trigger options by adding additional sequences to the logic diagram shown in the Recording Rules dialog. As one example, the screen below shows two trigger conditions, one of which will trigger any time that a high logic value occurs on Data_0. The second will trigger when a high logic value is on Data_3, a low on Data_2, and a high on Data_1 (and will ignore any value on Data_0).
Note that when using multiple sequences that drive an external trigger, a logical inconsistency is created if one external trigger is defined as “Pulse High” while another is defined as “Pulse Low”. In order to prevent this, any selection of the external trigger pulse direction produces a global change in all sequences that use this action.
There is much more capability within the Recording Rules screen that is beyond the scope of this document, and more detailed information can be found in the User Manual for the product.
Summary
External triggering provides a flexible and easy means for different types of test equipment to remain synchronized, and provides the user with immese flexibility in designing test setups that use different test instruments from different manufacturers.
LeCroy’s implementation of external triggering provides a simple to use yet very sophisticated and flexible system, enabling users to quickly create simple triggers or to design complex, multilevel trigger logic, depending on their individual needs.
In either case, external triggering in LeCroy PCI Express analyzers provides an ideal solution to any test design which requires interoperability and synchronization of multiple test instruments.