9 BDDs_students_2Pp

9 BDDs_students_2Pp - Binary Decision Diagrams Melvin A....

Info iconThis preview shows pages 1–6. Sign up to view the full content.

View Full Document Right Arrow Icon
1 November 25, 2006 Melvin A. Breuer 1 Binary Decision Diagrams Melvin A. Breuer EE581, Fall 2006 University of Southern California November 25, 2006 Melvin A. Breuer 2 Motivation Boolean functions (BFs or BSFs) are used in Synthesis (e.g. EE681) Validation (e.g. EE681) Test Generation, e.g. Boolean Differences (e.g. EE658) And for many other processes Some operations on BFs include Evaluation, e.g,. f (0,1,1, x,0,1) = ? Manipulation, e.g. f g , f + g , f ’, f g , f i = x i f (1)+ x’ i f (0) Existence, e.g., does there exist a binary vector ( a 1 , a 2 , …, a n ) such that f ( a 1 , a 2 , …, a n ) = 1? Simplify corresponding BEs Expand, e.g. Shannon’s expansion Etc.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2 November 25, 2006 Melvin A. Breuer 3 More on motivation Complexity A BF of 64 variables can be represented by a truth table having 264 rows and 65 columns--that’s BIG It can also be expressed in SOP form using millions of prime implicants Don’t try K-maps store, (3) manipulate BFs. One answer – BDDs Efficient representation “most” BFs Leads to efficient manipulation Leads to a canonical representation Allows for symbolic manipulation and evaluation Is supported by available software November 25, 2006 Melvin A. Breuer 4 F ( x 1 , x 2 ,..., x 43 ) = x 1 ' x 3 ' x 7 ( x 5 + x 41 x 42 ) + ... + ... + ( x 1 + x 3 )( x 7 + x 9 ' ( x 23 + x 33 ' )) Example of Verification John figured out that a Boolean expression (BE) that defines the BF needed to detect deadlock is He asks Joan to implement it using a minimal number of NAND gates.
Background image of page 2
3 November 25, 2006 Melvin A. Breuer 5 F joan Three weeks later, Joan is done x 3 x 43 x 19 x’ 41 x 2 x 16 • • • Wow! 1213 gates November 25, 2006 Melvin A. Breuer 6 Verification Is her solution correct, i.e., is F john F joan ? Do you want to try all 2 43 input combinations? Design 1 Design 2 . . F john F joan g(x 1 , … , x 43 ) x 1 x 2 x 43 F john F joan iff no ( a 1 , a 2 , …, a 43 ) s.t. g ( a 1 , a 2 , … , a 43 ) = ___ • • • Fill-in
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
4 November 25, 2006 Melvin A. Breuer 7 Nodes and edges Directed cycle Undirected cycle Digression on graphs G(V,E) Directed edges Cycles Acyclic – no cycle November 25, 2006 Melvin A. Breuer 8 No directed cycles A DAG A directed cycle Not a DAG End Digression Directed acyclic graph (DAG)
Background image of page 4
5 November 25, 2006 Melvin A. Breuer 9 1 1 1 1 0 0 1 1 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 f x 3 x 2 x 1 Preliminaries A BDD represents a BF as a rooted DAG Example: x 1 x 2 x 3 x 3 x 2 x 3 x 3 0 A node Root node An edge Leaf or terminal node 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 November 25, 2006 Melvin A. Breuer 10 Some comments In the future, arrows on edges will not always be shown Each __________ node (vertex) v has a label var ( v ) – one of the Boolean variables It also has _____ outgoing edges directed toward two
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 6
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 12/04/2009 for the course EE 581 taught by Professor Breuer during the Fall '09 term at USC.

Page1 / 24

9 BDDs_students_2Pp - Binary Decision Diagrams Melvin A....

This preview shows document pages 1 - 6. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online