Chapter 3
Gate-Level Minimization (Karnaugh Map)
Abid Hasan
Lecturer, BSc in EEE, RUET
Electrical & Electronics Engineering
University of Global Village (UGV), Barishal
Abid Hasan, Lecturer, BSc in EEE (RUET)
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.
Abid Hasan, Lecturer, BSc in EEE (RUET)
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
❑ Applicable if the # of variables < 7
◼ A diagram made up of squares
❑ Each square represents one minterm
Abid Hasan, Lecturer, BSc in EEE (RUET)
Review of Boolean Function
◼ Boolean function
❑ Sum of minterms
❑ Sum of products (or product of sum) in the simplest form
❑ A minimum number of terms
❑ A minimum number of literals
❑ The simplified expression may not be unique
Abid Hasan, Lecturer, BSc in EEE (RUET)
Two-Variable Map
◼ A two-variable map
❑ Four minterms
❑ x' = row 0; x = row 1
❑ y' = column 0; y =
column 1
❑ A truth table in square
diagram Figure 3.1 Two-variable Map
❑ Fig. 3.2(a): xy = m3
❑ Fig. 3.2(b): x+y =
x'y+xy' +xy =
m1+m2+m3
Figure 3.2 Representation of functions in the map
Abid Hasan, Lecturer, BSc in EEE (RUET)
A Three-variable Map
◼ A three-variable map
❑ Eight minterms
❑ The Gray code sequence
❑ Any two adjacent squares in the map differ by only on variable
❑ Primed in one square and unprimed in the other
❑ e.g., m5 and m7 can be simplified
❑ m5+ m7 = xy'z + xyz = xz (y'+y) = xz
Figure 3.3 Three-variable Map
Abid Hasan, Lecturer, BSc in EEE (RUET)
A Three-variable Map
❑ m0 and m2 (m4 and m6) are adjacent
❑ m0+ m2 = x'y'z' + x'yz' = x'z' (y'+y) = x'z'
❑ m4+ m6 = xy'z' + xyz' = xz' (y'+y) = xz'
Abid Hasan, Lecturer, BSc in EEE (RUET)
Example 3.1
◼ Example 3.1: simplify the Boolean function F(x, y, z) =
(2, 3, 4, 5)
❑ F(x, y, z) = (2, 3, 4, 5) = x'y + xy'
Figure 3.4 Map for Example 3.1, F(x, y, z) = Σ(2, 3, 4, 5) = x'y + xy'
Abid Hasan, Lecturer, BSc in EEE (RUET)
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.5 Map for Example 3-2; F(x, y, z) = Σ(3, 4, 6, 7) = yz + xz'
Abid Hasan, Lecturer, BSc in EEE (RUET)
Four adjacent Squares
◼ Consider four adjacent squares
❑ 2, 4, and 8 squares
❑ m0+m2+m4+m6 = x'y'z'+x'yz'+xy'z'+xyz' = x'z'(y'+y) +xz'(y'+y) =
x'z' + xz‘ = z'
❑ m1+m3+m5+m7 = x'y'z+x'yz+xy'z+xyz =x'z(y'+y) + xz(y'+y) =x'z +
xz = z
Figure 3.3 Three-variable Map
Abid Hasan, Lecturer, BSc in EEE (RUET)
Example 3.3
🞕 Example 3.3: simplify F(x, y, z) = (0, 2, 4, 5, 6)
❑ F(x, y, z) = (0, 2, 4, 5, 6) = z'+ xy'
Figure 3.6 Map for Example 3-3, F(x, y, z) = Σ(0, 2, 4, 5, 6) = z' +xy'
Abid Hasan, Lecturer, BSc in EEE (RUET)
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
Abid Hasan, Lecturer, BSc in EEE (RUET)
3.3 Four-Variable Map
◼ The map
❑ 16 minterms
❑ Combinations of 2, 4, 8, and 16 adjacent squares
Figure 3.8 Four Variable K-Map
Abid Hasan, Lecturer, BSc in EEE (RUET)
Example 3.5
◼ Example 3.5: simplify F(w, x, y, z) = (0, 1, 2, 4, 5, 6, 8,
9, 12, 13, 14)
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'
Abid Hasan, Lecturer, BSc in EEE (RUET)
Don't-Care Conditions
◼ The value of a function is not specified for
certain combinations of variables
❑ In BCD; 1010, 1011, 1100, 1101, 1110, and 1111 are not
declared so these are called don’t care conditions
◼ The don't-care conditions can be utilized in
logic minimization
❑ Can be implemented as 0 or 1
❑ In SOP, don’t care conditions are implemented as 1
Abid Hasan, Lecturer, BSc in EEE (RUET)
◼ Example 3.6: simplify using K-map 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)
Or
Simplify using K-map F(w, x, y, z) = ∑(1, 3, 7, 11, 15) + d(0, 2, 5)
Example 3.10 : K-map using don’t care conditions
Abid Hasan, Lecturer, BSc in EEE (RUET)
Example 3.6 (cont.)
❑ F = yz + w'x'; F = yz + w'z
❑ Either expression is acceptable
Abid Hasan, Lecturer, BSc in EEE (RUET)
Evaluate & Create:
1) F(A,B,C,D) = ∑(0, 1, 2, 5, 8, 9, 10). Design a K-map and
evaluate SOP form
2) F ( x, y, z) = ∑(1, 2, 3, 4,5, 7). Design a K-map and evaluate
SOP form
3) F(C,B,D,A) = ∑(0, 1, 2, 4, 5, 6, 8, 9, 10, 12, 14). Design a
K-map and evaluate SOP form
4) F(C,A,B,D) = ∑(0, 1, 4, 6, 8, 9, 12, 14). Design a K-map
and evaluate SOP form
5) Simplify using K-map F(w, x, y, z) = ∑(1, 3, 4, 6, 7, 11,
15) + d(0, 2, 5)
6) Simplify using K-map F(w, x, y, z) = ∑(1, 3, 4, 8, 9, 10, 11,
12, 14) + d(0, 2, 6)
7) Simplify using K-map F(A,B,C,D) = ∑(1, 3, 7, 8, 9, 11,12,
15) + d(0, 2)
Abid Hasan, Lecturer, BSc in EEE (RUET)