Simulation and satisfiability guided counter-example triage for RTL design debugging

Regression verification flows in modern integrated circuit development environments expose a plethora of counterexamples during simulation. Sorting these counter-examples today is a tedious and time-consuming process. High level design debugging aims to triage these counter-examples into groups that will be assigned to the appropriate verification and/or design engineers for detailed root cause analysis. In this work, we present an automated triage process that leverages knowledge extracted from simulation and SAT-based debugging. We introduce novel metrics that correlate counter-examples based on the likelihood of sharing the same root cause. Triage is formulated as a pattern recognition problem and solved by hierarchical clustering techniques to generate groups of related counter-examples. Experimental results demonstrate an overall accuracy of 94% for the proposed automated triage framework, which corresponds to a 40% improvement over conventional scripting methods.

[1]  Gábor J. Székely,et al.  Hierarchical Clustering via Joint Between-Within Distances: Extending Ward's Minimum Variance Method , 2005, J. Classif..

[2]  Stephanie Thalberg Formal Equivalence Checking And Design Debugging , 2016 .

[3]  Sean Safarpour,et al.  Managing verification error traces with Bounded Model Debugging , 2010, 2010 15th Asia and South Pacific Design Automation Conference (ASP-DAC).

[4]  Andreas G. Veneris Fault diagnosis and logic debugging using Boolean satisfiability , 2003, Proceedings. 4th International Workshop on Microprocessor Test and Verification - Common Challenges and Solutions.

[5]  Andreas G. Veneris,et al.  Path directed abstraction and refinement in SAT-based design debugging , 2012, DAC Design Automation Conference 2012.