130 likes | 152 Views
This article explores the use of BDD-based decomposition for efficient multilevel logic implementations. It discusses the concepts of algebraic and boolean decomposition, as well as the drawbacks of previous work. It proposes the use of generalized dominators for improved decomposition and presents examples of AND and OR decompositions. The article concludes that BDD-based bi-decomposition is a viable alternative for logic optimization, with various types of decomposition available, such as AND, OR, XOR, and MUX. However, it notes that a standalone BDD decomposition scheme may not be suitable for large circuits and suggests the need for partitioning into a network of BDDs.
E N D
BDS: A BDD-Based Logic Optimization System By Chang Seok Bae “BDS: A BDD-Based Logic Optimization System”, by Congguang Yang and Maciej Ciesielski, 2000
Outline • BDD-Based Decomposition • Algebraic • Boolean • Theory of BDD decomposition • Conclusions
BDD-based decomposition • Identify functional decomposition of underlying logic function • Efficient multilevel logic implementations • Otherwise, require ordering of variables
F D Q D F cut BDD F/D Boolean operator (AND, OR, XOR) Bi-decomposition • Bi-decomposition: F = D Q • uses BDD cut • The top set defines a divisor D • The bottom set defines the quotient Q (sort of …)
Algebraic vs. Boolean • The decomposition is Algebraic if the supports of Q and D are disjoint • Otherwise, the decomposition is Boolean
F a + b c + d a b c a 1-dominator c * b d d 0 0 0 1 1 1 1-dominator • 1-dominator is a node that belongs to every path from root to terminal 1. • 1-dominator defines algebraic conjunctive(AND) decomposition: F = (a+b)(c+d).
F a b c d 1 1 1 a b c a 0-dominator c b d d 0 0 0 0-dominator • 0-dominator is a node that belongs to every path from root to terminal 0. • 0-dominator defines algebraic disjunctive(OR) decomposition: F = ab + cd.
Drawback of previous work • Weak Boolean factorization capability • Difficult to identify XOR and MUX decomposition
Generalized dominators • Generalize the concept of algebraic decomposition and dominators to: • Generalized dominators • Boolean bi-decomposition: F = D Q, • where = AND, OR, XOR
F = e + bd D = e + b, D e e e e e b b b b 1 d d d Q Q = e + d 0 0 0 0 0 1 1 1 1 1 eb Q 00 01 11 10 d DC 1 1 DC 0 1 DC 1 1 1 AND Decomposition (F = DQ) • Given (F,D), quotient Q must satisfy: F Q F + D’.
OR Decomposition (F = G+H) • Given (F,G), disjunctive term H must satisfy: F’H’ F’ + G.
Conclusions • BDD-based bi-decomposition is a good alternative to traditional, algebraic logic optimization • Produces Boolean decomposition • Several types: AND, OR, XOR, MUX • BDD decomposition-based logic optimization is fast. • Stand-alone BDD decomposition scheme is not amenable to large circuits • Global BDD too large • Must partition into network of BDDs (local BDDs)