1 / 13

BDS: A BDD-Based Logic Optimization System - Efficient Multilevel Implementations

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.

jmclendon
Download Presentation

BDS: A BDD-Based Logic Optimization System - Efficient Multilevel Implementations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. Outline • BDD-Based Decomposition • Algebraic • Boolean • Theory of BDD decomposition • Conclusions

  3. BDD-based decomposition • Identify functional decomposition of underlying logic function • Efficient multilevel logic implementations • Otherwise, require ordering of variables

  4. 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 …)

  5. Algebraic vs. Boolean • The decomposition is Algebraic if the supports of Q and D are disjoint • Otherwise, the decomposition is Boolean

  6. 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).

  7. 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.

  8. Drawback of previous work • Weak Boolean factorization capability • Difficult to identify XOR and MUX decomposition

  9. Generalized dominators • Generalize the concept of algebraic decomposition and dominators to: • Generalized dominators • Boolean bi-decomposition: F = D  Q, • where = AND, OR, XOR

  10. 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’.

  11. OR Decomposition (F = G+H) • Given (F,G), disjunctive term H must satisfy: F’H’ F’ + G.

  12. 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)

  13. QUESTIONS ?

More Related