Interactive post-process debug flow
Incisive Debug Analyzer offers a new and unique approach to debug. It provides you with all the functionality of an interactive debug flow plus the advantage of debugging in post-process mode. This gives you access to all of the debug data files, and you only have to run the simulation once.
Using Incisive Debug Analyzer, engineers can cut down the time they spend in front of their computers debugging. It is the only tool on the market with such comprehensive and innovative debug functionality to help you cut debug time by 40-50% or more on really complex bugs. Incisive Debug Analyzer offers the following benefits:
- Handle debug data more intelligently: Overall designs are getting more and more complex, and the debug data files and log files are growing just as fast. Incisive Debug Analyzer handles the debug data in a more intelligent way.
- Add signals to view post-simulation: With traditional debug, if you realize post-simulation that you forgot to probe a certain signal or if you found an error, you would have to re-run the entire simulation all over again—very time-consuming and unproductive. With Incisive Debug Analyzer, you can do this in a single step.
- Step back in simulation time: Usually you would have to re-run multiple simulations if you “step over” the issue you were trying to debug. Incisive Debug Analyzer allows you to simply step back, so you don’t have to re-run the simulation.
- Sophisticated search/filter capability: Incisive Debug Analyzer provides more efficient ways to filter log files or search for signals and variables that are used in the design.
- Guided debug: Since data files are so large and verification engineers are not always familiar with the design, a significant amount of time is spent on just filtering the data. Incisive Debug Analyzer provides clues on where to search for failures thus saving significant debug time
- Easily share data files globally: Incisive Debug Analyzer allows geographically dispersed teams to exchange debug data (like log files, specific debug information, errors, etc ) much more intelligently and efficiently.
Incisive Debug Analyzer has four key GUI components that are tightly integrated and synchronized into a single multi-pane debug window
. For more details on this solution, check out the archived webinar
This allows you to either step or jump through time to any source code line or even a variable change. Since all the simulation data is available to you, you can step backward or forward or you can jump right to a specific point in time. Every executed line has direct access arrows
that enable you to go directly to the execution of the line forward or backward in time.
Incisive Debug Analyzer provides the unique capability to perform interactive step-by-step debug in post-process not only forward but also backward in time. Another unique feature that the Playback Debugger brings is the ability to start debugging from the error back to its origin. This is far more effective than conventional interactive debugging for which you need to “guess” the point before a failure occurs and advance from there.
This is an intuitive, flow-oriented debug environment. When you click on a source code line, it presents you with options for where you should look to debug. Cause Analysis provides the intuitiveness
in debug. The GUI provides you with some guided questions and answers to help you debug the error.
You do not need to analyze why “did they get to the line?” The GUI provides you the answer and, with a single click, takes you to the reason why you got there. You can move seamlessly between testbench and HDL languages like e, SystemVerilog, Verilog, and VHDL. You can start from the testbench error and traverse back to the HDL and continue your investigation in the same window. You do not need to jump to a different tool.
This enables you to quickly search or explore the entire environment. You can find every time a search value appeared in any object throughout the entire recording window. If engineers do not know what a parity mismatch is, they can just search for parity in the environment and very quickly they will find all the locations where the parity is used.
An indispensable tool for finding any kind of knowledge you need, Incisive Debug Analyzer provides unique searching capabilities. You can find any kind of object in your environment or something in the log file or the source files really fast. If you want to further investigate any object that was found, Incisive Debug Analyzer provides a Data Exploration capability that presents all relevant information related to the object.
After running simulations, engineers end up with numerous log files from HDL, testbench, C/C++/SystemC/assertions, etc. The Smart Log window is an integrated message window that shows messages from any of those platforms. As a default setting, this GUI provides the overall text of the message, message time, and the verbosity. Key functionalities that Smart Log provides are:
- Intuitive filtering mechanism
- Ability to save filters for future use and share them with the whole project
- Integration with current debugger location and the waveform marker
- Ability to change the verbosity without rerunning
The Smart Log also shows the debugger location and the waveform marker on the log, so you always know what messages are being printed around the debugger location or waveform marker. Another unique capability of the Smart Log is the ability to change the displayed verbosity without rerunning the simulation. You can start with low verbosity to understand the high-level intent of the simulation and, as needed, increase the verbosity and specify a narrow time window so you don’t blow up the whole log file with irrelevant information.
Collaborative debug is becoming more and more important. One person usually cannot debug the whole environment by him/herself and usually needs to hand over the debug session to another person.
Incisive Debug Analyzer provides an easy way to attach text notes to a session, explain what you have accomplished in your debug, place bookmarks of relevant points from which another user can start debug, save a debug session, and send it to a different user for debug. Since Incisive Debug Analyzer is a post-process tool, transferring the debug session data does not require rerunning the simulation. This is another significant time saver, considering version control—you would ordinarily need to recreate exactly the same environment setting as it ran originally.
GUI and visual effects
The Incisive Debug Analyzer GUI uses a modern single-window approach that includes an integrated multi-pane window. It provides different layouts for each debug task while displaying only the relevant features needed to be effective in the specific debug task. It also includes some helpful visual GUI. For example, highlighting specific values all over the GUI and on the waveform to recognize that value wherever it appears. “Incisive Debug Analyzer is an innovative debug technology that has helped us fix bugs in minutes that previously would have taken hours. It is a great debug productivity enhancer.”
Eli Zyss, Vice President of Silicon Design, Altair Semiconductor