Using Digital I/O Ports on Beagle USB Protocol Analyzers to Connect to External Outputs

Depending on the model of Beagle USB Protocol Analyzer, digital input/output connections for USB 2.0 and USB 3.0 are included with the hardware to allow users to connect the analyzer to external logic. By doing so, users can perform powerful, advanced troubleshooting of USB data captures, including triggering debuggers and external outputs and correlating the USB data with the data in your embedded system.

Digital Inputs and Outputs Using the Beagle USB Analyzers

Digital Inputs

Digital inputs allow users to synchronize external logic and insert events into the analyzed USB data stream. When the state of an enabled digital input changes, an event is sent to the analysis PC.

Digital Outputs

Digital outputs enable outputting events to external devices, such as an oscilloscope or logic analyzer, and can trigger an oscilloscope to capture data on various conditions. Users may want to trigger an oscilloscope in particular cases as these tools allow users to monitor voltage against time in wave form, but simply using this tool alone can be challenging in debugging USB errors. By synching a Beagle USB analyzer with an oscilloscope, users can expedite debugging by triggering an oscilloscope when it sees an erroneous packet. This would allow users to correlate the data on the oscilloscope to that specific bug.

USB 2.0 Inputs and Outputs on the Beagle USB Protocol Analyzers

The USB 2.0 external inputs and outputs are available through the mini-DIN 9 port on the:

  • Beagle USB 480 Protocol Analyzer
  • Beagle USB 480 Power Protocol Analyzer (Standard and Ultimate Editions)
  • Beagle USB 5000 v2 SuperSpeed Protocol Analyzer (Standard and Ultimate Editions)

Beagle USB 480 Power Protocol Analyzer

Beagle USB 480 Power Protocol Analyzer

Beagle USB 5000 v2 SuperSpeed Protocol Analyzer

 

The output level is 3 V and the input is 3.3 V tolerant.

Through the mini DIN-9 port, these analyzers include four digital inputs and four digital outputs to communicate with external logic.

USB 2.0 Input

 There are four digital inputs that can be enabled individually. Whenever an enabled input changes state it will issue an event and be tagged with a timestamp of when the input was interpreted by the Beagle USB analyzer. Each input can also be independently configured to trigger the capture on either the rising edge, falling edge, or both. A USB 2.0 digital input does not need to be monitored to function as a trigger. Digital inputs cannot exceed a rate of 30 MHz. Only one digital input event may occur per active packet. All other digital input events can only be handled after the packet has completed. 

USB 2.0 Output

The four digital outputs are user configurable. Each digital output has the option of being enabled, active high, or active low. Furthermore, each output can activate on specific conditions described below:

  • Digital Output 1 will match whenever the capture is running.
  • Digital Output 2 will match whenever a packet is detected on the bus.
  • Digital Output 3 will match when the selected PID, device address, and endpoint match.
  • Digital Output 4 will match when the selected PID, device address, endpoint, and data pattern match.
 

USB 2.0 Simple Matching Tab

USB 2.0 Simple Matching Tab

    Outout 4 Pin Settings

PID and Packet Data Match Settings for Output Pin 4

 

The digital outputs activate as soon as their match can be fully confirmed. Thus, Pins 1 and 2 will match as soon as the capture activates or rxactive goes high, respectively. However, Pins 3 and 4 must assure a match of all of their characteristics. Therefore, only once all possible PIDs, device address, and endpoints of a given packet are checked completely can the match be confirmed and the output asserted. The assertion of matched data on Pin 4 must wait until the end of the data packet to assure a match. Packets that are shorter than what is defined by the user to match will activate Pin 4 if all the data up to that point matched correctly. 

USB 2.0 Mini DIN-9 Port Pinout

Digital I/O Pinout

USB 2.0 Mini DIN-9 Port Pin Assignments


Digital I/O Cable Pin Assignments

Pin Name   Color Pin Number
Input 1 Brown Pin 1
Input 2 Red Pin 2
Input 3 Orange Pin 3
Input 4 Yellow Pin 4
Output 1 Green Pin 5
Output 2 Blue Pin 6
Output 3 Purple Pin 7
Output 4 Grey Pin 8
Ground Black Pin 9

 

This table describes the pin out assignments and its corresponding cable color from the cable included with the hardware.

USB 3.0 Input and Output on the Beagle USB 5000 v2 SuperSpeed Protocol Analyzer

The USB 3.0 external input and output are the two SMA connectors located on the front panel on the Beagle USB 5000 v2 SuperSpeed Protocol Analyzer – Standard and Ultimate Editions. Both the input and the output have an impedance of 50 ohms and are rated for 1.8 V, 12 mA.

 

Beagle USB 5000 v2 SuperSpeed Protocol Analyzer

Beagle USB 5000 v2 SuperSpeed Protocol Analyzer

 

USB 3.0 Digital Input

For USB 3.0, there is a single external input that can be enabled by configuring matching in the device settings. The USB 3.0 input can be used to trigger the capture or as a way to synchronize USB 3.0 traffic with external logic and insert events into the data stream. After the capture has been triggered, subsequent external input events can be inserted into the capture.

The external USB 3.0 input has a latency of 0 to 25 ns from when the input is asserted to when the analyzer detects the assertion. It is possible to capture a 125 MHz signal pulse with the external input, however if these events are too frequent, the analyzer will throttle the external input signal in order to maintain capture fidelity.

USB 3.0 Digital Output

The USB 3.0 digital output provides a mechanism to synchronize the Beagle USB 5000 v2 SuperSpeed analyzer with other devices, such as an oscilloscope or logic analyzer, on events of interest.

The output has a short latency of 50 to 75 ns from when an event occurs to when the output is asserted on the external output SMA connector. The output can be asserted by a sophisticated matching system which provides a spectrum of functionality, from simple matches to complicated multi-state triggers.

Simple and Complex Matching and Triggering in the Data Center Software

Synchronizing Beagle USB Protocol Analyzers to external logic and triggering for certain data and events can be performed within the Data Center Software by going to “Device Settings” and then clicking “Additional Settings”.

The Beagle USB 480 Power Protocol Analyzer – Ultimate Edition or the Beagle USB 5000 v2 SuperSpeed Protocol Analyzer – Standard or Ultimate Editions support simple and complex state-based match/action triggering with up to eight independent states and six matches per state for USB 2.0 data captures.

The Beagle USB 5000 v2 SuperSpeed Protocol Analyzer - Standard or Ultimate Editions also support simple and complex triggering for USB 3.0 data captures. The Standard version allows for a single state with a single match per stream to be defined, while the Ultimate edition allows for up to eight states to be defined with three matches per stream per state. With this function, users can set up a condition, such as packet/data match patterns, and include a digital output to trigger an external device, such as an oscilloscope.

Simple USB 2.0 Matching Tab

USB 2.0 Simple Matching Tab

Simple USB 2.0 Matching Tab

The USB 2.0 Simple Matching System is capable of monitoring and triggering captures on USB 2.0 digital inputs, as well as asserting digital outputs and triggering captures on user-provided packet/data match patterns.

Digital Input Configuration

The Digital Input Configuration option within the Simple USB 2.0 Matching tab allows the user to individually enable the four digital input lines on the Beagle USB 480/480 Power/5000 analyzer hardware. During the capture, if there is a change on one of the enabled input lines, an event transaction will be displayed in the Transaction window with the new input line state.

 

Pin Event Changes

Change in digital input lines shown in Transaction window

When using the Beagle USB 480 Power Ultimate or the Beagle USB 5000 v2 SuperSpeed analyzer, there is an additional option to set individual digital inputs to trigger the capture. When configuring the trigger, the user can select whether a rising edge, falling edge, or either should trigger the capture.

Note: The Beagle USB 480 Protocol Analyzer and the Beagle USB 480 Protocol Analyzer – Standard Edition can only show digital I/O pin event changes in the Transaction window but cannot be used for triggers or matching of USB captures. 

Complex USB 2.0 Matching Tab

USB 2.0 Complex Matching Tab

Complex USB 2.0 Matching Tab

The USB 2.0 complex matching system provides a state-based facility to match specific packet types and data patterns in addition to specific events.

The Event Match Action Unit matches USB 2.0 events similar to what is available in the USB 2.0 simple configuration. Those events include any of the four digital inputs, the SMA external input, VBUS trigger, and the manual trigger.

When a match occurs based on the configuration of the Match Action Units, including Event Match Action Unit, Timer Match Action Unit, and Data Match Action Unit (Packet and Error Types), the analyzer can trigger and/or assert the external output.

Simple USB 3.0 Matching Tab

USB 3.0 Simple Matchin Tab

Simple USB 3.0 Matching Tab

The USB 3.0 Simple Matching System is capable of triggering a USB 3.0 capture or asserting the external output on the following types of data or events, in either stream direction:

  • Link Command
  • Header Packet
  • Data Payload
  • CRC Error
  • Training Sequences
  • VBUS Detection
  • External Input
  • Reverse Polarity
  • Termination Detection
  • Scrambling Disable
  • LFPS
  • PHY Error

When a match occurs, the analyzer can trigger and/or assert the external output. The external output can be asserted on the capture trigger or on every time the match occurs.

Complex USB 3.0 Matching Tab

Complex USB 3.0 Matchin Tab

Complex USB 3.0 Matching Tab

The USB 3.0 Complex Matching System provides additional capabilities that allow users to perform state-based triggers on match conditions such as specific packet types or data patterns, bus events, and timers.

This function is supported with the Beagle USB 5000 v2 SuperSpeed Protocol Analyzer – Standard and Ultimate Editions. The Standard version allows for a single state with a single match per stream to be defined, while the Ultimate edition allows for up to eight states to be defined with three matches per stream per state. 

Within any state, match action units are specified to define the match conditions which can trigger an action, including asserting external output, triggering a capture, filtering out the matching data, or going to another state (including the current state).

I/O Config Tab

The USB 3.0 External IO (SMA) and the USB 2.0 complex matching External Output (Digital Output Pin 1) are configurable from the IO Config tab of the Additional Settings dialog.

The USB 3.0 external output can be set to one of the following behaviors when it is asserted:

  • Set Low
  • Set High
  • Positive Pulse
  • Negative Pulse
  • Toggle (Initially Low)
  • Toggle (Initially High)

The USB 2.0 external output can be set to one of the following behaviors when it is asserted:

  • Positive Pulse
  • Negative Pulse
  • Toggle (Initially Low)
  • Toggle (Initially High)
 

Other Resources

Watch one of our customers use the Beagle USB 480 Protocol Analyzer to perform advanced USB debugging using the digital I/O port: Total Phase Beagle 480 - Advanced USB Debugging / Review

To learn more about how using the digital I/O functionality can assist with advanced USB debugging, along with various real-life examples, read our blog: The Beagle USB 480 Protocol Analyzer: Advanced Debugging Using the Digital I/O Port

For more information on USB simple and complex matching and triggering, please see: