BDD Path Length Minimization Based on Initial Variable Ordering

A large variety of problems in digital system design, combinational optimization and verification can be formulated in terms of operations performed on Boolean functions. The time complexity of Binary Decision Diagram (BDD) representing a Boolean function is directly related to the path length of that BDD. In this paper we present a method to generate a BDD with minimum path length. The Average Path Length (APL) and Longest Path Length (LPL) of the BDD are evaluated and discussed. The proposed method analyses the essentiality of a given variable order based on the complexity of sub functions derived from variable substitution. The variable that produces minimal cumulative complexity for the sub-functions is given priority over other variables. The experimental results and comparisons using benchmark circuits show that the proposed method is an encouraging approach towards minimizing the evaluation time of Boolean functions, consequently minimizing the time complexity of BDDs.

[1]  Franc Brglez,et al.  Design of experiments and evaluation of BDD ordering heuristics , 2001, International Journal on Software Tools for Technology Transfer.

[2]  Igor L. Markov,et al.  MINCE: A Static Global Variable-Ordering Heuristic for SAT Search and BDD Manipulation , 2004, J. Univers. Comput. Sci..

[3]  John P. Hayes,et al.  Unveiling the ISCAS-85 Benchmarks: A Case Study in Reverse Engineering , 1999, IEEE Des. Test Comput..

[4]  Rolf Drechsler,et al.  BDD circuit optimization for path delay fault testability , 2004, Euromicro Symposium on Digital System Design, 2004. DSD 2004..

[5]  Rolf Drechsler,et al.  Binary Decision Diagrams - Theory and Implementation , 1998 .

[6]  Luca Benini,et al.  Decision Diagrams and Pass Transistor Logic Synthesis , 1997 .

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

[8]  Shinobu Nagayama,et al.  Minimization of average path length in BDDs by variable reordering , 2003 .

[9]  Shinobu Nagayama,et al.  On the Minimization of Longest Path Length for Decision Diagrams , 2004 .

[10]  Luciano Lavagno,et al.  Synthesis of Software Programs for Embedded Control Applications , 1999, 32nd Design Automation Conference.

[11]  Igor L. Markov,et al.  Improving the efficiency of circuit-to-BDD conversion by gate and input ordering , 2002, Proceedings. IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[12]  Rolf Drechsler,et al.  Binary decision diagrams in theory and practice , 2001, International Journal on Software Tools for Technology Transfer.

[13]  TingTing Hwang,et al.  Binary decision diagram with minimum expected path length , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[14]  S. Yang,et al.  Logic Synthesis and Optimization Benchmarks User Guide Version 3.0 , 1991 .

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

[16]  Hans A. Hansson,et al.  Using measurements to derive the worst-case execution time , 2000, Proceedings Seventh International Conference on Real-Time Computing Systems and Applications.

[17]  Masahiro Fujita,et al.  Evaluation and improvement of Boolean comparison method based on binary decision diagrams , 1988, [1988] IEEE International Conference on Computer-Aided Design (ICCAD-89) Digest of Technical Papers.

[18]  Rüdiger Ebendt Reducing the number of variable movements in exact BDD minimization , 2003, Proceedings of the 2003 International Symposium on Circuits and Systems, 2003. ISCAS '03..

[19]  藤田 昌宏,et al.  Evaluation and Improvements of Boolean Comparison Method Based on Binary Decision Diagrams , 1988 .

[20]  Rolf Drechsler,et al.  Minimization of the expected path length in BDDs based on local changes , 2004, ASP-DAC 2004: Asia and South Pacific Design Automation Conference 2004 (IEEE Cat. No.04EX753).

[21]  Sachin S. Sapatnekar,et al.  Recursive bipartitioning of BDDs for performance driven synthesis of pass transistor logic circuits , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

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

[23]  Albert R. Wang,et al.  Logic verification using binary decision diagrams in a logic synthesis environment , 1988, [1988] IEEE International Conference on Computer-Aided Design (ICCAD-89) Digest of Technical Papers.