|
ABSTRACT
Ordered Binary-Decision Diagrams (OBDDs) represent Boolean functions as directed acyclic graphs. They form a canonical representation, making testing of functional properties such as satisfiability and equivalence straightforward. A number of operations on Boolean functions can be implemented as graph algorithms on OBDD data structures. Using OBDDs, a wide variety of problems can be solved through symbolic analysis. First, the possible variations in system parameters and operating conditions are encoded with Boolean variables. Then the system is evaluated for all variations by a sequence of OBDD operations. Researchers have thus solved a number of problems in digital-system design, finite-state system analysis, artificial intelligence, and mathematical logic. This paper describes the OBDD data structure and surveys a number of applications that have been solved by OBDD-based symbolic analysis.
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.
| |
2
|
S. B. 1978. Binary decision diagrams. IEEE Trans. Comput. C-27, 6 (Aug.), 509 516.
|
| |
3
|
|
 |
4
|
Randal E. Bryant , Derek L. Beatty , Carl-Johan H. Seger, Formal hardware verification by symbolic ternary trajectory evaluation, Proceedings of the 28th conference on ACM/IEEE design automation, p.397-402, June 17-22, 1991, San Francisco, California, United States
[doi> 10.1145/127601.127701]
|
| |
5
|
C. L. 1989. Ordered binary decision diagrams and circuit structure. In The International Conference on Computer Design (Cambridge, Mass., Oct.), IEEE, New York, pp. 392 395.
|
| |
6
|
M. W., AND CHANDRA, A.K. 1980. Equivalence of free Boolean graphs can be decided probabilistically in polynomial time. Inf. Process. Lett. 10, 2 (Mar.), 80-82.
|
| |
7
|
S., AND FISHER, A. L. 1989. Verifying pipelined hardware using symbolic logic simulation. In The International Conference on Computer Deszgn (Boston, Oct.). IEEE, New York, pp. 217 221.
|
 |
8
|
Karl S. Brace , Richard L. Rudell , Randal E. Bryant, Efficient implementation of a BDD package, Proceedings of the 27th ACM/IEEE conference on Design automation, p.40-45, June 24-27, 1990, Orlando, Florida, United States
[doi> 10.1145/123186.123222]
|
| |
9
|
|
| |
10
|
F., POWNALL, P., AND HUM, P. 1984. Apphcations of testability analysis: From ATPG to critical path tracing. In The International Test Conference (Philadelphia, Oct.). IEEE, New York, pp. 705-712.
|
| |
11
|
F.M. 1990. Boolean Reasoning. Kluwer Academic Publishers, Boston
|
| |
12
|
|
| |
13
|
|
 |
14
|
|
| |
15
|
J. R., CLARKE, E. M., AND McMmLAN, K. 1990a. Symbolic model checking: 102~ states and beyond In The 5th Annual IEEE Symposium on Logic in Computer Science (Philadelphia, June) IEEE, New York, pp. 428 439
|
 |
16
|
J. R. Burch , E. M. Clarke , K. L. McMillan , David L. Dill, Sequential circuit verification using symbolic model checking, Proceedings of the 27th ACM/IEEE conference on Design automation, p.46-51, June 24-27, 1990, Orlando, Florida, United States
[doi> 10.1145/123186.123223]
|
| |
17
|
|
| |
18
|
E., AND MAmN, M.A. 1977. An approach to unified methodology of combinational switching circuits. IEEE Trans. Comput. C-26, 8 (Aug.), 745 756.
|
 |
19
|
|
 |
20
|
|
| |
21
|
|
 |
22
|
Yutaka Deguchi , Nagisa Ishiura , Shuzo Yajima, Probabilistic CTSS: analysis of timing error probability in asynchronous logic circuits, Proceedings of the 28th conference on ACM/IEEE design automation, p.650-655, June 17-22, 1991, San Francisco, California, United States
[doi> 10.1145/127601.127745]
|
| |
23
|
|
| |
24
|
, T. 1991. A method for symbolic verification of synchronous circuits. In Computer Hardware Description Languages and their Applications (Marseilles, Apr.). Proceedings of IFIP WG 10.2, Tenth International Symposium Amsterdam, North-Holland, D. Borrione and R. Waxman, Eds., pp. 229-239.
|
| |
25
|
|
| |
26
|
, M., FUJISAWA, H., AND KAWATO, N. 1988. Evaluations and improvements of a Boolean comparison program based on binary decision diagrams. In The International Conference on Computer-Aided Destgn (Santa Clara. Calif., Nov.). 1EEE, New York, pp. 2 5.
|
| |
27
|
M., KAK~TDA, T., AND MATSUNAGA, Y. 1991. Redesign and automatic error correction of combinational circuits. In Logic and Architecture Synthesis: Proceedings of the IFIP TCIO / WGIO. 5 Workshop on Logic and Architecture Synthesis (Paris, May 1990), P. Michel and G. Saucier, Eds. Elsevier, Amsterdam, pp. 35~ ~go.
|
| |
28
|
M. R., AND JOHNSON, D.S. 1979. Computers and Intractability. W. H. Freeman and Company, New York.
|
| |
29
|
J., AND MEINEL, C. 1992. Efficient analysis and manipulation of OBDDs can be extended to read-once-only branching programs. Tech. Rep. 92-10, Universit~it Trier, Fachbereich IV--Mathematik/ Informatik, Trier, Germany.
|
 |
30
|
|
| |
31
|
EONG, S.-W., PLESSIER, B., HACHTEL, G. D., AND SOMENZL F. 1991. Variable ordering and selection for FSM traversal. In The International Conference on Computer-Aided Design (Santa Clara, Calif., Nov.). IEEE, New York, pp. 476-479.
|
| |
32
|
|
| |
33
|
IMURA, S., AND CLARK, E. M. 1990. A parallel algorithm for constructing binary decision diagrams. In The International Conference on Computer Design (Boston, Oct.). IEEE, New York, pp. 220-223.
|
| |
34
|
E, C.Y. 1959. Representation of switching circuits by binary-decision programs. Bell System Tech. J. 38, 4(July), 985-999.
|
| |
35
|
LIN, B., TOUATI, H. J., AND NEWTON, A.R. 1990. Don't care minimization of multi-level sequential logic networks. In The Internatwnal Conference on Computer-Aided Destgn (Santa Clara, Calif., Nov.). IEEE, New York, pp. 4{4 417.
|
| |
36
|
|
| |
37
|
MADRE, J.-C., AND COUDERT, O. 1991. A logically complete reasoning maintenance system based on a logical constraint solver. In The 12th International Joint Conference on Artificial Intelligence (Sydney, Aug.), Morgan Kaufman, San Mateo, CA, pp. 294-299.
|
| |
38
|
MADRE, J.-C, COUDERT, O., AND BILLON, J.P. 1989. Automating the diagnosis and rectification of design errors with PRIAM. In The Internatwnal Conference on Computer-A~ded Design (Santa Clara, Calif., Nov.). IEEE, New York, pp. 30-33.
|
| |
39
|
MALIK, S., WANG, A., BRAYTON, R. K., AND SANGIOVANNI-VINCENTELLI, A. 1988. Logic verification using binary decision diagrams in a logic synthes~s environment. In The International Conference on Computer-Aided Design (Santa Clara, Calif., Nov.). IEEE, New York, pp. 6-9.
|
| |
40
|
MCMmLAN, K. L. 1992. Symbolic model checking: An approach to the state explosion problem. PhD thesis, School of Computer Science, Carnegie-Mellon Univ.
|
| |
41
|
|
| |
42
|
|
 |
43
|
Shin-ichi Minato , Nagisa Ishiura , Shuzo Yajima, Shared binary decision diagram with attributed edges for efficient Boolean function manipulation, Proceedings of the 27th ACM/IEEE conference on Design automation, p.52-57, June 24-27, 1990, Orlando, Florida, United States
[doi> 10.1145/123186.123225]
|
 |
44
|
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
[doi> 10.1145/127601.127704]
|
| |
45
|
REEVES, D. S., AND IRWIN, M.J. 1987. Fast methods for switch-level verification of MOS circuits. IEEE Trans. CAD / IC CAD-G, 5 (Sept.), 766-779.
|
 |
46
|
Hitomi Sato , Yoshihiro Yasue , Yusuke Matsunaga , Masahiro Fujita, Boolean resubstitution with permissible functions and binary decision diagrams, Proceedings of the 27th ACM/IEEE conference on Design automation, p.284-289, June 24-27, 1990, Orlando, Florida, United States
[doi> 10.1145/123186.123276]
|
| |
47
|
SELLERS, F. F., HSIAO, M. Y., AND BEARNSON, C. L. 1968. Analyzing errors with the Boolean difference. IEEE Trans. Comput. C-17, 7(July), 676 683.
|
| |
48
|
SRINIVASAN, A., KAM, T., MALIK, S., AND BRAYTON, R.K. 1990. Algorithms for discrete function manipulation. In The Internattonal Conference on Computer-Aided Design (Santa Clara, Calif., Nov.). IEEE, New York, pp. 92-95.
|
 |
49
|
|
CITED BY 229
|
|
|
|
|
|
|
|
Valeria Bertacco , Maurizio Damiani , Stefano Quer, Cycle-based symbolic simulation of gate-level synchronous circuits, Proceedings of the 36th ACM/IEEE conference on Design automation, p.391-396, June 21-25, 1999, New Orleans, Louisiana, United States
|
|
|
Andreas Birkendorf , Andreas Böker , Hans Ulrich Simon, Learning deterministic finite automata from smallest counterexamples, Proceedings of the ninth annual ACM-SIAM symposium on Discrete algorithms, p.599-608, January 25-27, 1998, San Francisco, California, United States
|
|
|
|
|
|
F. Corno , P. Prinetto , M. Sonza Reorda , M. Violante, Exploiting symbolic techniques for partial scan flip flop selection, Proceedings of the conference on Design, automation and test in Europe, p.670-679, February 23-26, 1998, Le Palais des Congrés de Paris, France
|
|
|
P. Dasgupta , P. Chakrabarti , A. Nandi , S. Krishna , A. Chakrabarti, Abstraction of word-level linear arithmetic functions from bit-level component descriptions, Proceedings of the conference on Design, automation and test in Europe, p.4-8, March 2001, Munich, Germany
|
|
|
Miroslav N. Velev , Randal E. Bryant, Formal verification of superscale microprocessors with multicycle functional units, exception, and branch prediction, Proceedings of the 37th conference on Design automation, p.112-117, June 05-09, 2000, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Li-C. Wang , Magdy S. Abadir , Nari Krishnamurthy, Automatic generation of assertions for formal verification of PowerPC microprocessor arrays using symbolic trajectory evaluation, Proceedings of the 35th annual conference on Design automation, p.534-537, June 15-19, 1998, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
Michael Kishinevsky , Jordi Cortadella , Alex Kondratyev, Asynchronous interface specification, analysis and synthesis, Proceedings of the 35th annual conference on Design automation, p.2-7, June 15-19, 1998, San Francisco, California, United States
|
|
|
|
|
|
Cordula Hansen , Francisco Nascimento , Wolfgang Rosenstiel, An approach for extracting RT timing information to annotate algorithmic VHDL specifications, Proceedings of the 36th ACM/IEEE conference on Design automation, p.678-683, June 21-25, 1999, New Orleans, Louisiana, United States
|
|
|
|
|
|
|
|
|
Kazuhiro Nakamura , Kazuyoshi Takagi , Shinji Kimura , Katsumasa Watanabe, Waiting false path analysis of sequential logic circuits for performance optimization, Proceedings of the 1998 IEEE/ACM international conference on Computer-aided design, p.392-395, November 08-12, 1998, San Jose, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
Tao Feng , Li-C. Wang , Kwang-Ting Cheng , Manish Pandey , Magdy S. Abadir, Enhanced symbolic simulation for efficient verification of embedded array systems, Proceedings of the 2003 conference on Asia South Pacific design automation, January 21-24, 2003, Kitakyushu, Japan
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Radu Marculescu , Diana Marculescu , Massoud Pedram, Switching activity analysis considering spatiotemporal correlations, Proceedings of the 1994 IEEE/ACM international conference on Computer-aided design, p.294-299, November 06-10, 1994, San Jose, California, United States
|
|
|
|
|
|
C. R. Ramakrishnan , I. V. Ramakrishnan , R. C. Sekar, A symbolic constraint solving framework for analysis of logic programs, Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation, p.12-23, June 21-23, 1995, La Jolla, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Daniel Mange , Eduardo Sanchez , André Stauffer , Gianluca Tempesti , Pierre Marchal , Christian Piguet, Embryonics: a new methodology for designing field-programmable gate arrays with self-repair and self-replicating properties, Readings in hardware/software co-design, Kluwer Academic Publishers, Norwell, MA, 2001
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
L.-C. Wang , M. S. Abadir , J. Zeng, Measuring the effectiveness of various design validation approaches for PowerPCTM microprocessor arrays, Proceedings of the conference on Design, automation and test in Europe, p.273-277, February 23-26, 1998, Le Palais des Congrés de Paris, France
|
|
|
Gi-Joon Nam , Karem A. Sakallah , Rob A. Rutenbar, Satisfiability-based layout revisited: detailed routing of complex FPGAs via search-based Boolean SAT, Proceedings of the 1999 ACM/SIGDA seventh international symposium on Field programmable gate arrays, p.167-175, February 21-23, 1999, Monterey, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
J. Jain , K. Mohanram , D. Moundanos , I. Wegener , Y. Lu, Analysis of composition complexity and how to obtain smaller canonical graphs, Proceedings of the 37th conference on Design automation, p.681-686, June 05-09, 2000, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sachin Kogekar , Sandeep Neema , Brandon Eames , Xenofon Koutsoukos , Akos Ledeczi , Miklos Maroti, Constraint-guided dynamic reconfiguration in sensor networks, Proceedings of the third international symposium on Information processing in sensor networks, April 26-27, 2004, Berkeley, California, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
L. Benini , G. De Micheli , A. Lioy , E. Macii , G. Odasso , M. Poncino, Automatic Synthesis of Large Telescopic Units Based on Near-Minimum Timed Supersetting, IEEE Transactions on Computers, v.48 n.8, p.769-779, August 1999
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Prakash M. Peranandam , Pradeep K. Nalla , Jürgen Ruf , Roland J. Weiss , Thomas Kropf , Wolfgang Rosenstiel, Fast falsification based on symbolic bounded property checking, Proceedings of the 43rd annual conference on Design automation, July 24-28, 2006, San Francisco, CA, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gabor Madl , Sudeep Pasricha , Luis Angel D. Bathen , Nikil Dutt , Qiang Zhu, Formal performance evaluation of AMBA-based system-on-chip designs, Proceedings of the 6th ACM & IEEE International conference on Embedded software, October 22-25, 2006, Seoul, Korea
|
|
|
Nathan Clark , Amir Hormati , Scott Mahlke , Sami Yehia, Scalable subgraph mapping for acyclic computation accelerators, Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems, October 22-25, 2006, Seoul, Korea
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Meenakshi Balasubramanian , Abhishek Bhatnagar , Namit Chaturvedi , Atish Datta Chowdhury , Arul Ganesh, A framework for decentralized access control, Proceedings of the 2nd ACM symposium on Information, computer and communications security, March 20-22, 2007, Singapore
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Enrique San Millán , Luis Entrena , José A. Espejo , Silvia Chiusano , Fulvio Corno, Integrating symbolic techniques in ATPG-based sequential logic optimization, Proceedings of the conference on Design, automation and test in Europe, p.105-es, January 1999, Munich, Germany
|
|
|
|
|
|
|
|
|
|
|
|
A. Kondratyev , J. Cortadella , M. Kishinevsky , E. Pastor , O. Roig , A. Yakovlev, Checking signal transition graph implementability by symbolic BDD traversal, Proceedings of the 1995 European conference on Design and Test, p.325, March 06-09, 1995
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hamid Shojaei , Twan Basten , Marc Geilen , Phillip Stanley-Marbell, SPaC: a symbolic pareto calculator, Proceedings of the 6th IEEE/ACM/IFIP international conference on Hardware/Software codesign and system synthesis, October 19-24, 2008, Atlanta, GA, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ugur Kuter , Dana Nau , Marco Pistore , Paolo Traverso, Task decomposition on abstract states, for planning under nondeterminism, Artificial Intelligence, v.173 n.5-6, p.669-695, April, 2009
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Piergiorgio Bertoli , Alessandro Cimatti , Marco Roveri, Heuristic search + symbolic model checking = efficient conformant planning, Proceedings of the 17th international joint conference on Artificial intelligence, p.467-472, August 04-10, 2001, Seattle, WA, USA
|
|
|
Piergiorgio Bertoli , Alessandro Cimatti , Marco Roveri , Paolo Traverso, Planning in nondeterministic domains under partial observability via symbolic model checking, Proceedings of the 17th international joint conference on Artificial intelligence, p.473-478, August 04-10, 2001, Seattle, WA, USA
|
|