|
ABSTRACT
Efficient manipulation of Boolean functions is an important component of many computer-aided design tasks. This paper describes a package for manipulating Boolean functions based on the reduced, ordered, binary decision diagram (ROBDD) representation. The package is based on an efficient implementation of the if-then-else (ITE) operator. A hash table is used to maintain a strong canonical form in the ROBDD, and memory use is improved by merging the hash table and the ROBDD into a hybrid data structure. A memory function for the recursive ITE algorithm is implemented using a hash-based cache to decrease memory use. Memory function efficiency is improved by using rules that detect when equivalent functions are computed. The usefulness of the package is enhanced by an automatic and low-cost scheme for recycling memory. Experimental results are given to demonstrate why various implementation trade-offs were made. These results indicate that the package described here is significantly faster and more memory-efficient than other ROBDD implementations described in the literature.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
S. Malik, A, Wang, R. Braytori, and A, Sangiovanni- Vincentelli, "Logic Verification using Binary Decision Diagrams in a Logic Synthesis Environment," in Proc. Int. Conf. CAD (ICCAD-88), Nov. 1988, pp. 6-9.
|
| |
2
|
M. Fujita, H. Fujisawa, and N. Kawato, "Evaluation and Improvements of Boolean Comparison Method Based on Binary Decision Diagrams," in Proc. Int. Conf. CAD (ICCAD- 88), Nov. 1988, pp. 2-5.
|
| |
3
|
O. Coudert, C. Berthet, andJ. Madre, "Verification of Sequential Machines using Boolean Function Vectors," in IMEC-IFIP ira. Workshop on Applied Formal Methods for Correct VLS! Design, 1989.
|
| |
4
|
|
| |
5
|
M. A. Breuer and A. D. Friedman, Diagnosis and Reliable Design of Digitial Systems. Computer Science Press, 1976.
|
 |
6
|
|
| |
7
|
K. Cho, Test Pattern Generation for Combinational and Sequential MOS Circuits by Symbolic Fault Siamlation. PhD thesis, Carnegie Mellon University, 1988.
|
| |
8
|
M.R. Garey and D. S. Johnson, Computers and Inlractability. W. H. Freeman and Company, 1979.
|
| |
9
|
|
| |
10
|
D. Bostick, G. D. Hachtcl, R. Jacoby, M. R, Lighmcr, E Moceyunas, C. R. Morrison, and D. Rav enscroft, "The Boulder Optimal Logic Design System," in Proc. Ira. Conf. CAD (ICCAD-87), Nov. 1987, pp. 62-65.
|
| |
11
|
C. Y. Lee, "Representation of Switching Circuits by Binary- Decision Programs," Bell System Technical Journal, col. 38, pp. 985-999, July 1959.
|
| |
12
|
|
| |
13
|
|
| |
14
|
D.S. Reeves and M. J. irwin, "Fast Methods for Switch-Level Verification of MOS Circuits," ~ Trans. Elec. Comp., col. CAD-6, pp. 766-779, Sep. 1987.
|
| |
15
|
|
| |
16
|
S. B. Akers, "Functional Testing with Binary Decision Diagrams," in Eighth Annual Conference on Fault-Tolerant Computing, 1978, pp. 75-82.
|
| |
17
|
|
| |
18
|
R. Lisanke, "Logic Synthesis Benchmarks," in Proc. Int. Workshop on Logic Synthesis (}WLS-89), May 1989.
|
| |
19
|
|
CITED BY 178
|
|
|
|
|
|
|
|
|
|
Kiyoharu Hamaguchi , Akihito Morita , Shuzo Yajima, Efficient construction of binary moment diagrams for verifying arithmetic circuits, Proceedings of the 1995 IEEE/ACM international conference on Computer-aided design, p.78-82, November 05-09, 1995, San Jose, California, United States
|
|
Timothy Kam , Tiziano Villa , Robert Brayton , Alberto Sangiovanni-Vincentelli, A fully implicit algorithm for exact state minimization, Proceedings of the 31st annual conference on Design automation, p.684-690, June 06-10, 1994, San Diego, California, United States
|
|
|
|
|
|
|
|
|
Dirk Möller , Janett Mohnke , Michael Weber, Detection of symmetry of Boolean functions represented by ROBDDs, Proceedings of the 1993 IEEE/ACM international conference on Computer-aided design, p.680-684, November 07-11, 1993, Santa Clara, California, United States
|
|
|
|
|
Thomas R. Shiple , Ramin Hojati , Alberto L. Sangiovanni-Vincentelli , Robert K. Brayton, Heuristic minimization of BDDs using don't cares, Proceedings of the 31st annual conference on Design automation, p.225-231, June 06-10, 1994, San Diego, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Andreas Hett , Christoph Scholl , Bernd Becker, Distance driven finite state machine traversal, Proceedings of the 37th conference on Design automation, p.39-42, June 05-09, 2000, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
Giampiero Cabodi , Paolo Camurati , Fulvio Corno , Paolo Prinetto , Matteo Sonza Reorda, The General Product Machine: a New Model for Symbolic FSM Traversal, Formal Methods in System Design, v.12 n.3, p.267-289, April 1, 1998
|
|
|
|
|
|
|
Yusuke Matsunaga , Patrick C. McGeer , Robert K. Brayton, On computing the transitive closure of a state transition relation, Proceedings of the 30th international conference on Design automation, p.260-265, June 14-18, 1993, Dallas, Texas, United States
|
|
|
|
|
|
|
|
|
|
Jagesh V. Sanghavi , Rajeev K. Ranjan , Robert K. Brayton , Alberto Sangiovanni-Vincentelli, High performance BDD package by exploiting memory hierarchy, Proceedings of the 33rd annual conference on Design automation, p.635-640, June 03-07, 1996, Las Vegas, Nevada, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
G. Cabodi , P. Camurati , F. Corno , S. Gai , P. Prinetto , M. Sonza Reorda, A new model for improving symbolic product machine traversal, Proceedings of the 29th ACM/IEEE conference on Design automation, p.614-619, June 08-12, 1992, Anaheim, California, United States
|
|
|
|
Christoph Meinel , Fabio Somenzi , Thorsten Theobald, Linear sifting of decision diagrams, Proceedings of the 34th annual conference on Design automation, p.202-207, June 09-13, 1997, Anaheim, California, United States
|
|
|
|
|
Shipra Panda , Fabio Somenzi , Bernard F. Plessier, Symmetry detection and dynamic variable ordering of decision diagrams, Proceedings of the 1994 IEEE/ACM international conference on Computer-aided design, p.628-631, November 06-10, 1994, San Jose, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
Alan J. Hu , Gary York , David L. Dill, New techniques for efficient verification with implicitly conjoined BDDs, Proceedings of the 31st annual conference on Design automation, p.276-282, June 06-10, 1994, San Diego, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M. R. Mercer , R. Kapur , D. E. Ross, Functional approaches to generating orderings for efficient symbolic representations, Proceedings of the 29th ACM/IEEE conference on Design automation, p.624-627, June 08-12, 1992, Anaheim, California, United States
|
|
|
|
|
|
|
D. Bhattacharya , P. Agrawal , V. D. Agrawal, Delay fault test generation for scan/hold circuits using Boolean expressions, Proceedings of the 29th ACM/IEEE conference on Design automation, p.159-164, June 08-12, 1992, Anaheim, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
Y. Liu , K. Wang , T. Hwang , C. Liu, Binary decision diagram with minimum expected path length, Proceedings of the conference on Design, automation and test in Europe, p.708-712, March 2001, Munich, Germany
|
|
Subdodh M. Reddy , Wolfgang Kunz , Dhiraj K. Pradhan, Novel verification framework combining structural and OBDD methods in a synthesis environment, Proceedings of the 32nd ACM/IEEE conference on Design automation, p.414-419, June 12-16, 1995, San Francisco, California, United States
|
|
R. Drechsler , A. Sarabi , M. Theobald , B. Becker , M. A. Perkowski, Efficient representation and manipulation of switching functions based on ordered Kronecker functional decision diagrams, Proceedings of the 31st annual conference on Design automation, p.415-419, June 06-10, 1994, San Diego, California, United States
|
|
|
|
|
Jochen Bern , Christoph Meinel , Anna Slobodová, Efficient OBDD-based boolean manipulation in CAD beyond current limits, Proceedings of the 32nd ACM/IEEE conference on Design automation, p.408-413, June 12-16, 1995, San Francisco, California, United States
|
|
|
|
|
Hiroshige Fujii , Goichi Ootomo , Chikahiro Hori, Interleaving based variable ordering methods for ordered binary decision diagrams, Proceedings of the 1993 IEEE/ACM international conference on Computer-aided design, p.38-41, November 07-11, 1993, Santa Clara, California, United States
|
|
|
|
|
Sunil P. Khatri , Amit Narayan , Sriram C. Krisnan , Kenneth L. McMillan , Robert K. Brayton , A. Sangiovanni-Vincentelli, Engineering change in a non-deterministic FSM setting, Proceedings of the 33rd annual conference on Design automation, p.451-456, June 03-07, 1996, Las Vegas, Nevada, United States
|
|
|
|
|
|
|
|
Kenneth M. Butler , Don E. Ross , Rohit Kapur , M. Ray Mercer, Heuristics to compute variable orderings for efficient manipulation of ordered binary decision diagrams, Proceedings of the 28th conference on ACM/IEEE design automation, p.417-420, June 17-22, 1991, San Francisco, California, United States
|
|
|
Yasushi Koseko , Takuji Ogihara , Shinichi Murai, Tri-state bus conflict checking method for ATPG using BDD, Proceedings of the 1993 IEEE/ACM international conference on Computer-aided design, p.512-515, November 07-11, 1993, Santa Clara, California, United States
|
|
J. R. Burch , E. M. Clarke , D. E. Long, Representing circuits more efficiently in symbolic model checking, Proceedings of the 28th conference on ACM/IEEE design automation, p.403-407, June 17-22, 1991, San Francisco, California, United States
|
|
|
R. I. Bahar , E. A. Frohm , C. M. Gaona , G. D. Hachtel , E. Macii , A. Pardo , F. Somenzi, Algebric Decision Diagrams and Their Applications, Formal Methods in System Design, v.10 n.2-3, p.171-206, April -May 1997
|
|
|
|
|
|
|
|
|
|
|
|
F. Bréant , J.-M. Couvreur , F. Gilliers , F. Kordon , I. Mounier , E. Paviot-Adet , D. Poitrenaud , D. Regep , G. Sutre, Modeling and verifying behavioral aspects, Formal methods for embedded distributed systems: how to master the complexity, Kluwer Academic Publishers, Norwell, MA, 2004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hiroyuki Ochi , Nagisa Ishiura , Shuzo Yajima, Breadth-first manipulation of SBDD of Boolean functions for vector processing, Proceedings of the 28th conference on ACM/IEEE design automation, p.413-416, June 17-22, 1991, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
Hiroyuki Ochi , Koichi Yasuoka , Shuzo Yajima, Breadth-first manipulation of very large binary-decision diagrams, Proceedings of the 1993 IEEE/ACM international conference on Computer-aided design, p.48-55, November 07-11, 1993, Santa Clara, California, United States
|
|
|
|
|
|
|
Congguang Yang , Maciej Ciesielski , Vigyan Singhal, BDS: a BDD-based logic optimization system, Proceedings of the 37th conference on Design automation, p.92-97, June 05-09, 2000, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Amit Narayan , Jawahar Jain , M. Fujita , A. Sangiovanni-Vincentelli, Partitioned ROBDDs—a compact, canonical and efficiently manipulable representation for Boolean functions, Proceedings of the 1996 IEEE/ACM international conference on Computer-aided design, p.547-554, November 10-14, 1996, San Jose, California, United States
|
|
|
|
|
|
|
|
G. Cabodi , P. Camurati , F. Corno , P. Prinetto , M. Sonza Reorda, Cross-fertilizing FSM verification techniques and sequential diagnosis, Proceedings of the conference on European design automation, p.306-311, November 1992, Congress Centrum Hamburg, Hamburg, Germany
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Rolf Drechsler , Nicole Drechsler , Wolfgang Günther, Fast exact minimization of BDDs, Proceedings of the 35th annual conference on Design automation, p.200-205, June 15-19, 1998, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C. Pixley , S.-W. Jeong , G. D. Hachtel, Exact calculation of synchronization sequences based on binary decision diagrams, Proceedings of the 29th ACM/IEEE conference on Design automation, p.620-623, June 08-12, 1992, Anaheim, California, United States
|
|
Hyunwoo Cho , Gary D. Hachtel , Enrico Macii , Bernard Plessier , Fabio Somenzi, Algorithms for approximate FSM traversal, Proceedings of the 30th international conference on Design automation, p.25-30, June 14-18, 1993, Dallas, Texas, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
K. Kubiak , S. Parkes , W. K. Fuchs , R. Saleh, Exact evaluation of diagnostic test resolution, Proceedings of the 29th ACM/IEEE conference on Design automation, p.347-352, June 08-12, 1992, Anaheim, California, United States
|
|
|
|
|
A. Bogliolo , L. Benini , G. De Micheli, Characterization-free behavioral power modeling, Proceedings of the conference on Design, automation and test in Europe, p.767-773, February 23-26, 1998, Le Palais des Congrés de Paris, France
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Priyank Kalla , Zhihong Zeng , Maciej J. Ciesielski , Chilai Huang, A BDD-based satisfiability infrastructure using the unate recursive paradigm, Proceedings of the conference on Design, automation and test in Europe, p.232-236, March 27-30, 2000, Paris, France
|
|
|
|
|
|
|
|
|
|
|
|
Chih-Chang Lin , Mike Tien-Chien Lee , Malgorzata Marek-Sadowska , Kuang-Chien Chen, Cost-free scan: a low-overhead scan path design methodology, Proceedings of the 1995 IEEE/ACM international conference on Computer-aided design, p.528-533, November 05-09, 1995, San Jose, California, United States
|
|
Pi-Yu Chung , Yi-Min Wang , Ibrahim N. Hajj, Diagnosis and correction of logic design errors in digital circuits, Proceedings of the 30th international conference on Design automation, p.503-508, June 14-18, 1993, Dallas, Texas, United States
|
|
|
|
|
|
A. Cimatti , M. Pistore , M. Roveri , P. Traverso, Weak, strong, and strong cyclic planning via symbolic model checking, Artificial Intelligence, v.147 n.1-2, p.35-84, July 2003
|
|
Chih-Chang Lin , Kuang-Chien Chen , Shih-Chieh Chang , Malgorzata Marek-Sadowska , Kwang-Ting Cheng, Logic synthesis for engineering change, Proceedings of the 32nd ACM/IEEE conference on Design automation, p.647-652, June 12-16, 1995, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pejman Lotfi-Kamran , Mohammad Hosseinabady , Hamid Shojaei , Mehran Massoumi , Zainalabedin Navabi, TED+: a data structure for microprocessor verification, Proceedings of the 2005 conference on Asia South Pacific design automation, January 18-21, 2005, Shanghai, China
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE Design Automation Conference on
Gwo-Dong Chen
, Daniel D. Gajski
|