0% found this document useful (0 votes)
8 views

unit 2 pt 4

A Binary Decision Diagram (BDD) is a directed acyclic graph used to represent and analyze Boolean functions, offering advantages over traditional methods like Karnaugh maps and truth tables, especially for functions with many variables. BDDs can be reduced to a more compact form through specific algorithms, and an Ordered Binary Decision Diagram (OBDD) maintains a consistent variable order throughout its paths. Techniques such as Shannon Decomposition can be employed to construct BDDs from Boolean functions or truth tables.

Uploaded by

hagos
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

unit 2 pt 4

A Binary Decision Diagram (BDD) is a directed acyclic graph used to represent and analyze Boolean functions, offering advantages over traditional methods like Karnaugh maps and truth tables, especially for functions with many variables. BDDs can be reduced to a more compact form through specific algorithms, and an Ordered Binary Decision Diagram (OBDD) maintains a consistent variable order throughout its paths. Techniques such as Shannon Decomposition can be employed to construct BDDs from Boolean functions or truth tables.

Uploaded by

hagos
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 21

Binary decision diagram

Binary Decision Diagram


• A binary decision diagram (BDD) is a mean to represent, analyze, test, and
implement Boolean functions . It is a directed acyclic graph that consists of
nodes and edges.
• The popular description of using such diagrams to represent Boolean functions
was provided by Akers in 1978. Although other methods may be used to
complete such tasks, e.g., the Karnaugh map, binary decision diagrams offer
some useful advantages.
• Karnaugh maps and truth tables are suitable methods that may be used to
describe functions consisting of a small number of variables. However, the
problem with such methods is that the size of these structures increases
dramatically as the number of variables increase, i.e., 2n rows in a truth table or
squares in a Karnaugh map are required for a function of n variables.
• Although a binary decision diagram contains 2n - 1 nodes for n variables, it is
possible to reduce the size of these structures by following certain algorithms.
• For instance, the order in which variables are evaluated within a binary decision
diagram can significantly affect the size of the structure.
• A binary decision diagram is called an ordered binary decision diagram (OBDD) if
on all of its paths the variables appear in the same order.
• This technique is able to produce a completely unique
graphical representation of a Boolean function that in
turn may be used to test for equivalence of a Boolean
function.
• Advantages of reduced ordered binary decision
diagrams include:
• Compact representation of Boolean functions
• A canonical representation of Boolean functions
• Efficient manipulation of functions expressed by
reduced ordered binary decision diagrams
• In consistent with the current literature, the reduced ordered binary
decision diagrams will simply be referred to as binary decision diagrams.
• Binary decision diagrams are a type of direct acyclic graph. An ordered
binary decision diagram (OBDD) was achieved by placing restrictions on the
order in which Boolean variables in the diagram were evaluated.
• A binary decision diagram consists of:
• A set of decision nodes, starting at the root node at the top of the
decision diagram. Each decision node contains two outgoing branches, one
is a high (1) branch and the other is a low (0) branch. These branches may
be represented as solid and dotted lines, respectively.
• High and low branches are used to connect decision nodes with each
other to create decision paths, i.e., based on the evaluation of the decision
node, either the high or low branches are followed to the next decision
node.
• The high and low branches of the final decision nodes are connected to
either a high- (1) or low-terminal (0) node, which represents the output of
Constructing a Binary Decision Diagram
from a Simple Boolean Equation
Constructing a Binary Decision Diagram
from a Truth Table
• Boolean functions may also be presented in other forms
such as in a truth table.
• A truth table contains 2n rows (n being the number of
variables in the Boolean function) and therefore it is not a
compact representation of a Boolean function.
• Similarly, constructing a binary decision diagram from a
truth table leads to a large diagram containing 2n paths
from the starting node to the terminal nodes, resulting in
2n - 1 decision nodes.
• As one can imagine, large values of n lead to cumbersome
representations of Boolean functions
Reducing a Binary Decision Diagram to a More
Compact Form
• In the next step, the nodes to be eliminated are identified and
the branches from the previous node are re-connected
appropriately.
• Figure 7.6 shows the marked and Fig. 7.7 shows other than
eliminated nodes.
• Figure 7.8 shows two nodes on the right side of the binary
decision diagram marked with red ellipse, which share
common destinations for their both 0 and 1 branches.
• As such, these nodes may be merged into a common node and
the branches from the previous node are reconnected.
• In this example, merging these two nodes together has
generated another node to be eliminated (Fig. 7.9).
Obtaining a Binary Decision Diagram Using
Shannon Decomposition
Shannon Decomposition of a Five-Variable
Boolean Function
Creating a Binary Decision Diagram Using
Repeated Shannon Decomposition
• Figures 7.11, 7.12, 7.13, 7.14 and 7.15 show
Shannon expansion of function F by the
variables A, B, C, D, and E, respectively.

You might also like