Speeding up variable reordering of OBDDs

The use of Ordered Binary Decision Diagrams (OB-DDs) as a representation of Boolean functions brought essential progress in many different applications. The optimization of the OBDD-size by the choice of the variable ordering is known to be NP-hard. The known heuristics for finding an initial ordering and for reordering still have insufficient performance. Rudell's sifting is one of the most successful reordering algorithms that is application independent and can be used dynamically. In this paper, we propose a method based on some communication complexity considerations that improves the time performance of the sifting. The main idea is to restrict the reordering of variables to blocks that are determined according to readily computable OBDD-measure. Experimental comparison of the proposed block-restricted sifting with the original algorithm shows a speed-up by factor two without any loss in the final size.

[1]  Jochen Bern,et al.  Global rebuilding of OBDDs Avoiding Memory Requirement Maxima , 1995, CAV.

[2]  Beate Bollig,et al.  Improving the Variable Ordering of OBDDs Is NP-Complete , 1996, IEEE Trans. Computers.

[3]  Robert K. Brayton,et al.  BDD minimization by truth table permutations , 1996, 1996 IEEE International Symposium on Circuits and Systems. Circuits and Systems Connecting the World. ISCAS 96.

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

[5]  F. Somenzi,et al.  Who are the variables in your neighbourhood , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

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

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

[8]  Somesh Jha,et al.  Equivalence checking using abstract BDDs , 1997, Proceedings International Conference on Computer Design VLSI in Computers and Processors.

[9]  Robert K. Brayton,et al.  Dynamic variable reordering for BDD minimization , 1993, Proceedings of EURO-DAC 93 and EURO-VHDL 93- European Design Automation Conference.

[10]  Fabio Somenzi,et al.  Symmetry detection and dynamic variable ordering of decision diagrams , 1994, ICCAD '94.

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

[12]  Richard Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD.

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

[14]  Shuzo Yajima,et al.  The Complexity of the Optimal Variable Ordering Problems of Shared Binary Decision Diagrams , 1993, ISAAC.