Reachability analysis using partitioned-ROBDDs

We address the problem of finite state machine (FSM) traversal, a key step in most sequential verification and synthesis algorithms. We propose the use of partitioned ROBDDs to reduce the memory explosion problem associated with symbolic state space exploration techniques. In our technique, the reachable state set is represented as a partitioned ROBDD (A. Narayan et al., 1996). Different partitions of the Boolean space are allowed to have different variable orderings and only one partition needs to be in memory at any given time. We show the effectiveness of our approach on a set of ISCAS89 benchmark circuits. Our techniques result in a significant reduction in total memory utilization. For a given memory limit, partitioned ROBDD based method can complete traversal for many circuits for which monolithic ROBDDs fail. For circuits where both partitioned ROBDDs as well as monolithic ROBDDs cannot complete traversal, partitioned ROBDDs can reach a significantly larger set of states.

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

[2]  Carl Pixley Introduction to a Computational Theory and Implementation of Sequential Hardware Equivalence , 1990, CAV.

[3]  Robert K. Brayton,et al.  Implicit state enumeration of finite state machines using BDD's , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[4]  Edmund M. Clarke,et al.  Symbolic Model Checking with Partitioned Transistion Relations , 1991, VLSI.

[5]  E. Clarke,et al.  Symbolic Model Checking : IO * ’ States and Beyond * , 1992 .

[6]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[7]  Wolfgang Rosenstiel,et al.  Multilevel logic synthesis based on functional decision diagrams , 1992, [1992] Proceedings The European Conference on Design Automation.

[8]  Robert K. Brayton,et al.  Heuristic algorithms for early quantification and partial product minimization , 1993 .

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

[10]  Jawahar Jain On analysis of Boolean functions , 1993 .

[11]  Shin-ichi Minato,et al.  Zero-Suppressed BDDs for Set Manipulation in Combinatorial Problems , 1993, 30th ACM/IEEE Design Automation Conference.

[12]  Christoph Meinel,et al.  Efficient Boolean Manipulation With OBDD's can be Extended to FBDD's , 1994, IEEE Trans. Computers.

[13]  Gianpiero Cabodi,et al.  Auxiliary Variables for Extending Symbolic Traversal Techniques to Data Paths , 1994, 31st Design Automation Conference.

[14]  Rolf Drechsler,et al.  Efficient Representation and Manipulation of Switching Functions Based on Ordered Kronecker Functional Decision Diagrams , 1994, 31st Design Automation Conference.

[15]  R. Brayton,et al.  Efficient BDD Algorithms for FSM Synthesis and Verification , 1995 .

[16]  Jochen Bern,et al.  Efficient OBDD-Based Boolean Manipulation in CAD Beyond Current Limits , 1995, 32nd Design Automation Conference.

[17]  Ingo Wegener,et al.  Graph Driven BDDs - A New Data Structure for Boolean Functions , 1995, Theor. Comput. Sci..

[18]  Kavita Ravi,et al.  High-density reachability analysis , 1995, ICCAD.

[19]  Robert K. Brayton,et al.  Decomposition Techniques for Efficient ROBDD Construction , 1996, FMCAD.

[20]  Tiziano Villa,et al.  VIS: A System for Verification and Synthesis , 1996, CAV.

[21]  A. Sangiovanni-Vincentelli,et al.  Partitioned ROBDDs—a compact, canonical and efficiently manipulable representation for Boolean functions , 1996, ICCAD 1996.

[22]  Kenneth L. McMillan,et al.  A Conjunctively Decomposed Boolean Representation for Symbolic Model Checking , 1996, CAV.

[23]  G. Cabodi,et al.  Improved reachability analysis of large finite state machines , 1996, ICCAD 1996.

[24]  Luciano Lavagno,et al.  Disjunctive partitioning and partial iterative squaring: an effective approach for symbolic traversal of large circuits , 1997, DAC.

[25]  Gianpiero Cabodi,et al.  Symbolic FSM traversals based on the transition relation , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[26]  Jacob A. Abraham,et al.  Indexed BDDs: Algorithmic Advances in Techniques to Represent and Verify Boolean Functions , 1997, IEEE Trans. Computers.

[27]  Stephan Waack On the Descriptive and Algorithmic Power of Parity Ordered Binary Decision Diagrams , 1997, STACS.

[28]  Beate Bollig,et al.  Hierarchy Theorems for kOBDDs and kIBDDs , 1998, Theor. Comput. Sci..

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