I am working with Active Optical Cables (AOCs), and I am using the Beagle USB 5000 v2 SuperSpeed Protocol Analyzer - Ultimate Edition. I am having a problem diagnosing one of the USB 3.0 Standard-A to USB Micro-B cables with an industrial USB 3.0 vision camera (JAI GO-5000C-USB). When I connect the camera directly to my PC with an AOC, it works without any issues. However, when I connect and use the Beagle USB 5000 v2 analyzer between the camera and the PC, the camera continuously restarts and never successfully connects.
Do you have any tips for establishing a successful connection using active cables? I see there are several PHY (physical layer) errors on the trace – what causes those errors?
Response from Technical Support:Thanks for your questions! PHY errors often occur during USB training while the link is being established but should not occur afterwards.
The Beagle USB 5000 v2 analyzer has an active front-end circuitry between the USB 3.0 host and the USB 3.0 device that re-transmits the signal between the host and device as it passes through the analyzer. When the link comes out of idle state, it is typical for PHY errors to occur while the link is being established during training. Once the link is established, PHY errors should be uncommon. Most likely, electrical inconsistencies cause PHY errors to occur after USB training.
We will start with explaining USB training, then finish off with our recommendation for establishing the connection for your setup.
The Low Frequency Periodic Signaling (LFPS) is used by USB ports to communicate across a link that is under training. The link is in either a warm reset state or a low power state. The LFPS type is determined based on the burst and repeat times of a signal, as well as the LTSSM state.
To establish a link, USB 3.0 has training that includes the TSEQ, TS1, and TS2 states. During the training period, each link sends training sequences; both upstream and downstream devices send TSEQ, TS1, and TS2 sequences in that order. The training period begins when one link sends TSEQ, and is completed after both links send their last TS2. Here is a summary of what happens:
The link is usually trained in 1-2 us. The time that it takes for the uplink to be trained is measured from the time that the first TS1 state of both links appears, until the time of the first downlink TS2 sequences.
It is normal for some PHY errors to occur during the training period. This is because the transceiver clock (in the transmitter link) and the receiver clock (in the receiver link) are different. During the training period, the receiver clock is compared to the transmitter clock.
Initially, the receiver clock is not yet trained to the transmitter clock.
After the training period has completed - after the last TS2 state, PHY errors are no longer expected.
The Beagle USB 5000 v2 analyzer handles errors that occur during and after training.
When the Beagle USB 5000 v2 analyzer detects some PHY errors during training period, they are not marked in red on the display. When the Beagle USB 5000 v2 analyzer detects a significant number of PHY errors during training period, more than expected, then the PHY errors are marked in red.
Sometimes, a PHY Error is a special-case bus event that matches the following error conditions:
Although the PHY Error collapses these 4 errors into a single match, it is possible to distinguish some of the different errors in the captured data.
Here is a video that could be helpful for troubleshooting: Using Data Center Software's LTSSM View for USB 3.0 Debugging.
PHY errors can also occur due to electrical inconsistencies.
For resolving electrical inconsistencies, we recommend placing a self-powered SuperSpeed hub between your Beagle USB 5000 v2 analyzer and your target device/host.
A hub in the setup would act as re-driver for the signals, which could maintain the consistency of signal integrity. If you need more information about signal performance, we recommend contacting the cable manufacturer. There may be issues with a cable that does not fulfill the requirements and specifications of your setup.
We hope this answers your questions. Additional resources that you may find helpful include the following:
If you want more information, feel free to contact us with your questions, or request a demo that applies to your application.