Results 1  10
of
11
Symbolic Boolean manipulation with ordered binarydecision diagrams
 ACM Computing Surveys
, 1992
"... Ordered BinaryDecision Diagrams (OBDDS) represent Boolean functions as directed acyclic graphs. They form a canonical representation, making testing of functional properties such as satmfiability and equivalence straightforward. A number of operations on Boolean functions can be implemented as grap ..."
Abstract

Cited by 996 (14 self)
 Add to MetaCart
Ordered BinaryDecision Diagrams (OBDDS) represent Boolean functions as directed acyclic graphs. They form a canonical representation, making testing of functional properties such as satmfiability and equivalence straightforward. A number of operations on Boolean functions can be implemented as graph algorithms on OBDD
Symmetry Detection and Dynamic Variable Ordering of Decision Diagrams
, 1996
"... Knowing that some variables are symmetric in a function has numerous applications; in particular, it can help produce better variable orders for Binary Decision Diagrams (BDDs) and related data structures (e.g., Algebraic Decision Diagrams). It has been observed that there often exists an optimum ..."
Abstract

Cited by 65 (2 self)
 Add to MetaCart
Knowing that some variables are symmetric in a function has numerous applications; in particular, it can help produce better variable orders for Binary Decision Diagrams (BDDs) and related data structures (e.g., Algebraic Decision Diagrams). It has been observed that there often exists an optimum order for a BDD wherein symmetric variables are contiguous. We propose a new algorithm for the detection of symmetries, based on dynamic reordering, and we study its interaction with the reordering algorithm itself. We show that combining sifting with an efficient symmetry check for contiguous variables results in the fastest symmetry detection algorithm reported to date and produces better variable orders for many BDDs. The overhead on the sifting algorithm is negligible. 1
FPGA routing and routability estimation via Boolean satisfiability
 IEEE Trans. on VLSI Systems
, 1998
"... Guaranteeing or even estimating the routability of a portion of a placed FPGA remains difficult or impossible in most practical applications. In this paper we develop a novel formulation of both routing and routability estimation that relies on a rendering of the routing constraints as a single lar ..."
Abstract

Cited by 48 (2 self)
 Add to MetaCart
(Show Context)
Guaranteeing or even estimating the routability of a portion of a placed FPGA remains difficult or impossible in most practical applications. In this paper we develop a novel formulation of both routing and routability estimation that relies on a rendering of the routing constraints as a single large Boolean equation. Any satisfying assignment to this equation specifies a complete detailed routing. By representing the equation as a Binary Decision Diagram (BDD), we represent all possible routes for all nets simultaneously. Routability estimation is transformed to Boolean satisfiability, which is trivial for BDDs. We use the technique in the context of a perfect routability estimator for a global router. Experimental results from a standard FPGA benchmark suite suggest the technique is feasible for realistic circuits, but refinements are needed for very large designs.
BDD variable ordering for interacting finite state machines
 IN PROC. OF THE DESIGN AUTOMATION CONF
, 1994
"... We address the problem of obtaining good variable orderings for the BDD representation of a system of interacting finite state machines (FSMs). Orderings are derived from the communication structure of the system. Communication complexity arguments are used to prove upper bounds on the size of the B ..."
Abstract

Cited by 43 (7 self)
 Add to MetaCart
We address the problem of obtaining good variable orderings for the BDD representation of a system of interacting finite state machines (FSMs). Orderings are derived from the communication structure of the system. Communication complexity arguments are used to prove upper bounds on the size of the BDD for the transition relation of the product machine in terms of the communication graph, and optimal orderings are exhibited for a variety of regular systems. Based on the bounds we formulate algorithms for variable ordering. We perform reached state analysis on a number of standard verification benchmarks to test the effectiveness of our ordering strategy; experimental results demonstrate the e cacy of our approach. The algorithms described in this paper have been implemented in HSIS, a hierarchical synthesis and verification tool currently under development at Berkeley.
Almana: A BDD Minimization Tool Integrating Heuristic and Rewriting Methods
 FORMAL METHODS IN COMPUTERAIDED DESIGN, SECOND INTERNATIONAL CNFERENCE, FMCAD '98
, 1998
"... Constructing a small BDD from a given boolean formula depends on finding a good variable ordering. Finding a good order is NPcomplete. In the past, methods based on heuristic analysis and formula (circuit) rewriting have shown to be useful for specific problem domains. We show that these method ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Constructing a small BDD from a given boolean formula depends on finding a good variable ordering. Finding a good order is NPcomplete. In the past, methods based on heuristic analysis and formula (circuit) rewriting have shown to be useful for specific problem domains. We show that these methods need to be integrated: heuristic analysis can drive rewriting, which in turn simplifies analysis. We support this claim with experimental results, and describe Almana, an integrated tool for exploring the combination of analysis and rewriting on large boolean formulae.
Design of Dynamic PassTransistor Logic Circuits Using 123 Decision Diagrams
 IEEE Transactions on Circuits and SystemsI: Fundamental Theory and Applications
, 1998
"... ..."
Binary Decision Diagrams and Applications to Reliability Analysis
, 2000
"... This thesis investigates practical and theoretical concerns for the use of Binary Decision Diagrams (BDDs) for qualitative and quantitative risk assessments of complex systems. Boolean models describing failure relationships between components, and fault trees in particular, are boolean formulas who ..."
Abstract
 Add to MetaCart
This thesis investigates practical and theoretical concerns for the use of Binary Decision Diagrams (BDDs) for qualitative and quantitative risk assessments of complex systems. Boolean models describing failure relationships between components, and fault trees in particular, are boolean formulas whose variables are individual component failures; assessment of these models can be performed by analysis of the boolean function induced by the formula. Resource consumption for BDD computations, which is determined by the form of the boolean formula and the order imposed on its variables, is in many cases exponentially smaller than the truth table for the function. The use of Binary Decision Diagrams has made possible ordersofmagnitude increases in the complexity of systems that can be assessed efficiently. Nonetheless, the practical limits of straightforward use of BDDs for reliability analysis are often surpassed by realworld systems. Understanding why this happens is the first subject...
Symbolic Boolean Manipulation with
, 1992
"... 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 sol ..."
Abstract
 Add to MetaCart
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,