BDD-based verification of scalable designs

Many formal verification techniques make use of Binary Decision Diagrams (BDDs). In most applications the choice of the variable ordering is crucial for the performance of the verification algorithm. Usually BDDs operate on the Boolean level, i.e. BDDs are a bit-level data structure. In this paper we present a method to speed-up BDD-based verification of scalable designs that makes use of a learning process for word-level information. In a preprocessing a scalable ordering is extracted from the RTL that is used as a static ordering for large designs. Experimental results show that significant improvements can be achieved.

[1]  Malay K. Ganai,et al.  Circuit-based Boolean reasoning , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[2]  R. Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD 1993.

[3]  Rolf Drechsler,et al.  Gatecomp: Equivalence Checking of Digital Circuits in an Industrial Environment , 2002 .

[4]  Hiroshige Fujii,et al.  Interleaving based variable ordering methods for ordered binary decision diagrams , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[5]  E BryantRandal Graph-Based Algorithms for Boolean Function Manipulation , 1986 .

[6]  Randal E. Bryant,et al.  On the Complexity of VLSI Implementations and Graph Representations of Boolean Functions with Application to Integer Multiplication , 1991, IEEE Trans. Computers.

[7]  Chikahiro Hori,et al.  Interleaving based variable ordering methods for ordered binary decision diagrams , 1993, ICCAD.

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

[9]  Fabio Somenzi,et al.  CUDD: CU Decision Diagram Package Release 2.2.0 , 1998 .

[10]  Karem A. Sakallah,et al.  GRASP—a new search algorithm for satisfiability , 1996, ICCAD 1996.

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

[12]  Bob Bentley Validating the Intel(R) Pentium(R) 4 microprocessor , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[13]  Rolf Drechsler,et al.  Advanced Formal Verification , 2004 .

[14]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[15]  Joao Marques-Silva,et al.  GRASP-A new search algorithm for satisfiability , 1996, Proceedings of International Conference on Computer Aided Design.

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

[17]  Wolfgang Rosenstiel,et al.  Simulation-guided property checking based on multi-valued AR-automata , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[18]  Fabio Somenzi,et al.  Efficient manipulation of decision diagrams , 2001, International Journal on Software Tools for Technology Transfer.

[19]  Bob Bentley,et al.  Validating the Intel(R) Pentium(R) 4 microprocessor , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[20]  Rolf Drechsler,et al.  Reachability analysis for formal verification of SystemC , 2002, Proceedings Euromicro Symposium on Digital System Design. Architectures, Methods and Tools.

[21]  Sérgio Vale Aguiar Campos,et al.  Symbolic Model Checking , 1993, CAV.