ENEE244-02xx Digital Logic Design Lecture 5

advertisement
ENEE244-02xx
Digital Logic Design
Lecture 5
Announcements
• Homework 1 solutions are on Canvas
• Homework 2 due on Thursday
• Coming up: First midterm on Sept. 30
Agenda
• Last time:
– Boolean Algebra axioms and theorems (3.1,3.2)
– Canonical Forms (3.5)
• This time:
– Finish up Canonical Forms (3.5)
– Manipulations of Boolean Formulas (3.6)
– Gates and Combinational Networks (3.7)
– Incomplete Boolean Functions and Don’t Care
Conditions (3.8 )
Canonical Forms (Review)
X
Y
Z
f
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
1
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
0
• 𝑓 𝑥, 𝑦, 𝑧 = Σ𝑚(1,3,4)
• 𝑓 𝑥, 𝑦, 𝑧 = Π𝑀(0,2,5,6,7)
Canonical Forms Conversion
• Minterm to Maxterm:
– 𝑓 𝑥, 𝑦, 𝑧 = Σ𝑚 2,5,6,7
– 𝑓 𝑥, 𝑦, 𝑧 = Σ𝑚 0,1,3,4
– 𝑓 𝑥, 𝑦, 𝑧 = Π𝑀 0,1,3,4
• Maxterm to Minterm:
– 𝑓 𝑥, 𝑦, 𝑧 = Π𝑀 1,2,3,5,7
– 𝑓 𝑥, 𝑦, 𝑧 = Π𝑀 0,4,6
– 𝑓 𝑥, 𝑦, 𝑧 = Σ𝑚 0,4,6
Manipulations of Boolean Formulas
Equation Complementation
• For every Boolean function 𝑓 there is an
associated complementary function 𝑓 in
which 𝑓 𝑥1 , … , 𝑥𝑛 = 1 iff 𝑓 𝑥1 , … , 𝑥𝑛 = 0.
• Example:
𝑓 = 𝑤𝑥𝑧 + 𝑤 𝑥 + 𝑦𝑧
𝑓 = 𝑤𝑥𝑧 + 𝑤 𝑥 + 𝑦𝑧
Equation Complementation
• Use DeMorgan’s Law to simplify:
𝑓 = 𝑤𝑥𝑧 + 𝑤 𝑥 + 𝑦𝑧
= (𝑤𝑥𝑧) [𝑤 𝑥 + 𝑦𝑧 ]
= 𝑤 + 𝑥 + 𝑧 𝑤 𝑥 + 𝑦𝑧
= 𝑤 + 𝑥 + 𝑧 [𝑤 + 𝑥 + 𝑦𝑧 ]
= 𝑤 + 𝑥 + 𝑧 [𝑤 + 𝑥 (𝑦 + 𝑧) ]
Expansion about a Variable
• Rewrite a Boolean formula 𝑓(𝑥1 , … , 𝑥𝑛 ) so
that it has the structure:
𝑓 𝑥1 , … , 𝑥𝑛 = 𝑥𝑖 𝑔1 + 𝑥𝑖 𝑔2 OR
𝑓 𝑥1 , … , 𝑥𝑛 = (𝑥𝑖 +ℎ1 ) 𝑥𝑖 +ℎ2
Expansion about a Variable
Theorem 3.11
(a)𝑓 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑛 =
𝑥𝑖 ⋅ 𝑓 𝑥1 , … , 1, … , 𝑥𝑛 + 𝑥𝑖 ⋅ 𝑓(𝑥1 , … , 0, … , 𝑥𝑛 )
(b) 𝑓 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑛 =
(𝑥𝑖 +𝑓 𝑥1 , … , 1, … , 𝑥𝑛 )(𝑥𝑖 + 𝑓 𝑥1 , … , 0, … , 𝑥𝑛 )
Expansion about a Variable
• Examples:
𝑓 𝑤, 𝑥, 𝑦, 𝑧 = 𝑤 𝑥 + 𝑤𝑥 + 𝑦 𝑧
Expansion about 𝑥: (𝑥𝑔1 + 𝑥𝑔2 )
𝑥𝑓 𝑤, 1, 𝑦, 𝑧 + 𝑥𝑓 𝑤, 0, 𝑦, 𝑧
= 𝑥 𝑤 + 𝑦 𝑧 + 𝑥(𝑤 + 𝑦𝑧)
Shannon’s Reduction Theorems
• Used for obtaining simplified Boolean formula.
Theorem 3.12
(a) 𝑥𝑖 ⋅ 𝑓 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑛 = 𝑥𝑖 ⋅ 𝑓(𝑥1 , … , 1, … , 𝑥𝑛 )
(b) 𝑥𝑖 + 𝑓 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑛 = 𝑥𝑖 + 𝑓(𝑥1 , … , 0, … , 𝑥𝑛 )
Theorem 3.13
(a)𝑥𝑖 ⋅ 𝑓 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑛 = 𝑥𝑖 ⋅ 𝑓(𝑥1 , … , 0, … , 𝑥𝑛 )
(b) 𝑥𝑖 + 𝑓 𝑥1 , … , 𝑥𝑖 , … , 𝑥𝑛 = 𝑥𝑖 + 𝑓(𝑥1 , … , 1, … , 𝑥𝑛 )
Example of Equation Simplification
𝑓 𝑤, 𝑥, 𝑦, 𝑧 = 𝑥 + 𝑥 𝑦 + 𝑤 𝑥(𝑤 + 𝑧)(𝑦 + 𝑤𝑧)
= 𝑥 + 𝑦 + 𝑤 𝑤 + 𝑧 (𝑦 + 𝑤𝑧)
= 𝑥 + 𝑦 + 𝑤𝑧 (𝑦 + 𝑧)
= 𝑦 + 𝑥 + 𝑤𝑧 (𝑦 + 𝑧)
= 𝑦 + 𝑥 + 𝑤𝑧
Gates and Combinational Networks
Digital Logic Gates
•
•
•
•
AND
𝑓 𝑥, 𝑦 = 𝑥𝑦
OR
𝑓 𝑥, 𝑦 = 𝑥 + 𝑦
NOT (Inverter)
𝑓 𝑥 =𝑥
Buffer (Transfer)
𝑓 𝑥 =𝑥
•
•
•
•
NAND 𝑓 𝑥, 𝑦 = (𝑥𝑦) = 𝑥 + 𝑦
NOR
𝑓 𝑥, 𝑦 = 𝑥 + 𝑦 = 𝑥 𝑦
XOR
𝑓 𝑥, 𝑦 = 𝑥 𝑦 + 𝑥 𝑦 = 𝑥 ⊕ 𝑦
X-NOR (Equivalence)
𝑓 𝑥, 𝑦 = 𝑥𝑦 + 𝑥 𝑦
Gates and Combinational Networks
• Synthesis Procedure
• Example: Truth table for parity function on
three variables
X
Y
Z
f
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
1
Synthesis Procedure
X
Y
Z
f
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
0
0
1
1
1
1
Minterm Canonical Form:
𝑓 𝑥, 𝑦, 𝑧 = 𝑥 𝑦𝑧 + 𝑥𝑦 𝑧 + 𝑥𝑦 𝑧 + xyz
Two-level Gate Network
Minterm Canonical Form:
𝑓 𝑥, 𝑦, 𝑧 = 𝑥 𝑦𝑧 + 𝑥𝑦 𝑧 + 𝑥𝑦 𝑧 + 𝑥𝑦𝑧
𝑥
𝑦
𝑧
𝑥
𝑦
𝑧
𝑥
𝑦
𝑧
𝑥
𝑦
𝑧
Incomplete Boolean Functions and
Don’t Care Conditions
Incomplete Boolean Functions and
Don’t Care Conditions
• n-variable incomplete Boolean function is
represented by a truth table with n+1 columns
and 2𝑛 rows.
• For those combinations of values in which a
functional value is not to be specified, a symbol, -, is entered.
• The complement of an incomplete Boolean
function is also an incomplete Boolean function
having the same unspecified rows of the truth
table.
Describing Incomplete Boolean
Functions
X
Y
Z
F
0
0
0
1
0
0
1
1
0
1
0
0
0
1
1
--
1
0
0
0
1
0
1
--
1
1
0
0
1
1
1
1
Minterm canonical formula:
𝑓 𝑥, 𝑦, 𝑧 = ∑𝑚 0,1,7 + 𝑑𝑐(3,5)
Describing Incomplete Boolean
Functions
X
Y
Z
F
0
0
0
1
0
0
1
1
0
1
0
0
0
1
1
--
1
0
0
0
1
0
1
--
1
1
0
0
1
1
1
1
Maxterm canonical formula:
𝑓 𝑥, 𝑦, 𝑧 = Π𝑀 2,4,6 + 𝑑𝑐(3,5)
Describing Incomplete Boolean
Functions
• Manipulating Boolean equations derived from
incomplete Boolean functions is a very
difficult task.
• In the next chapter, there are procedures for
obtaining minimal expressions that can handle
the don’t care conditions.
• Can leverage don’t care conditions to get
simplified expressions for functions (smaller
gate networks).
{𝑥𝑦, 𝑥𝑦}
{𝑥𝑦, 𝑥 𝑦}
Download