Debugging the complex serial protocols is the biggest challenge verification engineers face. It’s one of the most time and effort consuming activity affecting the schedule of every project. Traditional debug methodologies use a combination of loosely connected waveforms, log files, messages, and documentation, which are insufficient for productive debugging. Debugging SoC and block level issues using log files is tedious and time consuming. Design problems that appear in the later phases of the development cycle can be extremely difficult to track down and debug, thus putting project schedules at risk.
Is there a way to simplify the debug process and performance? Wouldn’t it be easier if one could look at packets and transactions instead of signals? In this blog, we will discuss some the challenges users face to debug complex protocols; and highlight a GUI-based transaction debug solution that is both easy and fast. . We will take USB as an example, discussing the complex features, debug challenges and corresponding solution.
Let’s look at the complexity of the USB 3.0 protocol and its corresponding debugging challenges. The USB 3.0 protocol specifies that the host controls the communication with devices by exchanging the following types of signaling, and packets:
Click here to read more ...