Chapter 3 Gate-Level Minimization
Chapter 3 Gate-Level Minimization
Gate-Level Minimization
3-1 Introduction
Gate-level minimization refers to the design task of finding an optimal gate-
level implementation of Boolean functions describing a digital circuit.
3-2 The Map Method
The complexity of the digital logic gates
The complexity of the algebraic expression
Logic minimization
Algebraic approaches: lack specific rules
The Karnaugh map
A simple straight forward procedure
A pictorial form of a truth table
Figure 3.4 Map for Example 3.1, F(x, y, z) = Σ(2, 3, 4, 5) = x'y + xy'
Example 3.2
Example 3.2: simplify F(x, y, z) = (3, 4, 6, 7)
F(x, y, z) = (3, 4, 6, 7) = yz+ xz'
Figure 3.6 Map for Example 3-3, F(x, y, z) = Σ(0, 2, 4, 5, 6) = z' +xy'
Example 3.4
Example 3.4: let F = A'C + A'B + AB'C + BC
a) Express it in sum of minterms.
b) Find the minimal sum of products expression.
Ans:
F(A, B, C)(1, 2, 3, 5, 7) = C + A'B
Figure 3.7 Map for Example 3.4, A'C + A'B + AB'C + BC = C + A'B
3.3 Four-Variable Map
The map
16 minterms
Combinations of 2, 4, 8, and 16 adjacent squares
F = y'+w'z'+xz'
Figure 3.9 Map for Example 3-5; F(w, x, y, z) = Σ(0, 1, 2, 4, 5, 6, 8, 9, 12, 13, 14) = y' + w' z' +xz'
Example 3.6
Example 3-6: simplify F = ABC + BCD + ABCD + ABC
F = A'B'E'+BD'E+ACE
3-5 Product of Sums Simplification
Approach #1
Simplified F' in the form of sum of products
Apply DeMorgan's theorem F = (F')'
F': sum of products → F: product of sums
Approach #2: duality
Combinations of maxterms (it was minterms)
M0M1 = (A+B+C+D)(A+B+C+D') = (A+B+C)+(DD') = A+B+C
CD
AB 00 01 11 10
00 M0 M1 M3 M2
01 M4 M5 M7 M6
11 M12 M13 M15 M14
10 M8 M9 M11 M10
Example 3.8
Example 3.8: simplify F = (0, 1, 2, 5, 8, 9, 10) into (a) sum-of-products
form, and (b) product-of-sums form:
a) F(A, B, C, D)=(0, 1, 2, 5, 8,
9, 10) = B'D'+B'C'+A'C'D
b) F' = AB+CD+BD'
» Apply DeMorgan's theorem;
F=(A'+B')(C'+D')(B'+D)
» Or think in terms of maxterms
F ( x, y , z ) (1,3, 4,6)
In sum-of-maxterm:
F ( x, y , z ) (0, 2,5,7)
Taking the complement of F
F ( x, y , z ) ( x z )( x z )
3-6 Don't-Care Conditions
The value of a function is not specified for certain combinations of variables
BCD; 1010-1111: don't care
The don't-care conditions can be utilized in logic minimization
Can be implemented as 0 or 1
Example 3.9: simplify F(w, x, y, z) = (1, 3, 7, 11, 15) which has the don't-
care conditions d(w, x, y, z) = (0, 2, 5).
Example 3.9 (cont.)
F = yz + w'x'; F = yz + w'z
F = (0, 1, 2, 3, 7, 11, 15) ; F = (1, 3, 5, 7, 11, 15)
Either expression is acceptable