Specification, Transformation, Navigation Special Issue Dedicated to Bernd Krieg-brückner on the Occasion of His 60th Birthday Enhanced Formal Verification Flow for Circuits Integrating Debugging and Coverage Analysis Enhanced Formal Verification Flow for Circuits Integrating Debugging and Coverage

In this paper we briefly review techniques used in formal hardware verification. An advanced flow emerges from integrating two major methodological improvements: debugging support and coverage analysis. The verification engineer can locate the source of a failure with an automatic debugging support. Components are identified which explain the discrepancy between the property and the circuit behavior. This method is complemented by an approach to analyze functional coverage of the proven Bounded Model Checking (BMC) properties. The approach automatically determines whether the property set is complete or not. In the latter case coverage gaps are returned. Both techniques are integrated in an enhanced verification flow. A running example demonstrates the resulting advantages.

[1]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[2]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[3]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[4]  G. S. Tseitin On the Complexity of Derivation in Propositional Calculus , 1983 .

[5]  Edmund M. Clarke,et al.  Sequential circuit verification using symbolic model checking , 1991, DAC '90.

[6]  Tracy Larrabee,et al.  Test pattern generation using Boolean satisfiability , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[7]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

[8]  Binary decision diagrams and beyond: enabling technologies for formal verification , 1995, ICCAD.

[9]  Joao Marques-Silva,et al.  GRASP: A Search Algorithm for Propositional Satisfiability , 1999, IEEE Trans. Computers.

[10]  Armin Biere,et al.  Symbolic Model Checking without BDDs , 1999, TACAS.

[11]  M. Moskewicz,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[12]  Anna Philippou,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2018, Lecture Notes in Computer Science.

[13]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002 .

[14]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.

[15]  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.

[16]  Dominik Stoffel,et al.  Cost-efficient block verification for a UMTS up-link chip-rate coprocessor , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[17]  Orna Kupferman,et al.  Coverage metrics for formal verification , 2003, International Journal on Software Tools for Technology Transfer.

[18]  Rolf Drechsler,et al.  Post-verification debugging of hierarchical designs , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[19]  Robert P. Kurshan,et al.  An Analysis of SAT-Based Model Checking Techniques in an Industrial Environment , 2005, CHARME.

[20]  Sean Safarpour,et al.  Abstraction and Refinement Techniques in Automated Design Debugging , 2006, Seventh International Workshop on Microprocessor Test and Verification (MTV'06).

[21]  Sean Safarpour,et al.  Improved Design Debugging Using Maximum Satisfiability , 2007 .

[22]  Koen Claessen A Coverage Analysis for Safety Property Lists , 2007 .

[23]  Aarti Gupta,et al.  SAT-Based Scalable Formal Verification Solutions (Series on Integrated Circuits and Systems) , 2007 .

[24]  Sean Safarpour,et al.  Abstraction and refinement techniques in automated design debugging , 2007 .

[25]  Igor L. Markov,et al.  Fixing Design Errors with Counterexamples and Resynthesis , 2007, 2007 Asia and South Pacific Design Automation Conference.

[26]  Sven Beyer,et al.  Complete Formal Verification of TriCore2 and Other Processors , 2007 .

[27]  Rolf Drechsler,et al.  Analyzing Functional Coverage in Bounded Model Checking , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[28]  Rolf Drechsler,et al.  Using unsatisfiable cores to debug multiple design errors , 2008, GLSVLSI '08.

[29]  Rolf Drechsler,et al.  Automatic Fault Localization for Property Checking , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[30]  Markus Wedler,et al.  Unbounded Protocol Compliance Verification Using Interval Property Checking With Invariants , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[31]  Rolf Drechsler,et al.  Property analysis and design understanding , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[32]  Robert Wille,et al.  Contradictory antecedent debugging in bounded model checking , 2009, GLSVLSI '09.

[33]  Jörg Bormann Vollständige funktionale Verifikation , 2009 .

[34]  Rolf Drechsler,et al.  Increasing the accuracy of SAT-based debugging , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[35]  Sofia Cassel,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 2012 .