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.