Lect3 KarnaughMaps
Lect3 KarnaughMaps
x y minterm Y
0 0 x’y’ 0 1
0 1 x’y 0 x’y’ x’y
1 0 xy’ X
1 xy’ xy
1 1 xy
0 1 Y’ Y
0 x’y’ x’y X’ x’y’ x’y
X
1 xy’ xy X xy’ xy
Karnaugh map simplifications
• Imagine a two-variable sum of minterms:
x’y’ + x’y
• Both of these minterms appear in the top row of a Karnaugh map, which
means that they both contain the literal x’.
Y
x’y’ x’y
X xy’ xy
YZ YZ
00 01 11 10 00 01 11 10
0 x’y’z’ x’y’z x’yz x’yz’ 0 m0 m1 m3 m2
X X
1 xy’z’ xy’z xyz xyz’ 1 m4 m5 m7 m6
Y Y
x’y’z’ x’y’z x’yz x’yz’ m0 m1 m3 m2
X xy’z’ xy’z xyz xyz’ X m4 m5 m7 m6
Z Z
• With this ordering, any group of 2, 4 or 8 adjacent squares on the map
contains common literals that can be factored out.
Y x’y’z + x’yz
x’y’z’ x’y’z x’yz x’yz’ = x’z(y’ + y)
X xy’z’ xy’z xyz xyz’ = x’z 1
Z = x’z
x y z f(x,y,z)
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0 f(x,y,z) = x’y’z + xy’z + xyz’ + xyz
1 0 0 0 = m1 + m5 + m6 + m7
1 0 1 1
1 1 0 1
1 1 1 1
Making the example K-map
• Next up is drawing and filling in the K-map.
– Put 1s in the map for each minterm, and 0s in the other squares.
– You can use either the minterm products or the shorthand to show
you where the 1s and 0s belong.
• In our example, we can write f(x,y,z) in two equivalent ways.
Y
0 1 0 0
X 0 1 1 1
Z
K-maps from truth tables
• You can also fill in the K-map directly from a truth table.
– The output in row i of the table goes into square mi of the K-map.
– Remember that the rightmost columns of the K-map are “switched.”
Y
m0 m1 m3 m2
x y z f(x,y,z)
X m4 m5 m7 m6
0 0 0 0
Z
0 0 1 1
0 1 0 0
0 1 1 0
Y
0 1 0 0
X 0 1 1 1
Z
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Grouping the minterms together
• The most difficult step is grouping together all the 1s in the K-map.
– Make rectangles around groups of one, two, four or eight 1s.
– All of the 1s in the map should be included in at least one rectangle.
– Do not include any of the 0s.
Y
0 1 0 0
X 0 1 1 1
Z
• Each group corresponds to one product term. For the simplest result:
– Make as few rectangles as possible, to minimize the number of
products in the final expression.
– Make each rectangle as large as possible, to minimize the number of
literals in each term.
– It’s all right for rectangles to overlap, if that makes them larger.
Reading the MSP from the K-map
Y
0 1 0 0
X 0 1 1 1
Z
Y
x’y’z’ x’y’z x’yz x’yz’
X xy’z’ xy’z xyz xyz’
Z
X
Z
Y
m0 m1 m3 m2
X m4 m5 m7 m6
Z
Solutions for practice K-map 1
• Here is the filled in K-map, with all groups shown.
– The magenta and green groups overlap, which makes each of them
as large as possible.
– Minterm m6 is in a group all by its lonesome.
Y
0 1 1 0
X 0 1 0 1
Z
00 01 11 Y 10 Y
00 w’x’y’z’ w’x’y’z w’x’yz w’x’yz’ m0 m1 m3 m2
01 w’xy’z’ w’xy’z w’xyz w’xyz’ m4 m5 m7 m6
X X
11W wxy’z’ wxy’z wxyz wxyz’ m12 m13 m15 m14
W
10 wx’y’z’ wx’y’z wx’yz wx’yz’ m8 m9 m11 m10
Z Z
Y Y
1 0 0 1 m0 m1 m3 m2
0 1 0 0 m4 m5 m7 m6
X X
0 1 0 0 m12 m13 m15 m14
W W
1 0 0 1 m8 m9 m11 m10
Z Z
• We can make the following groups, resulting in the MSP x’z’ + xy’z.
Y Y
1 0 0 1 w’x’y’z’ w’x’y’z w’x’yz w’x’yz’
0 1 0 0 w’xy’z’ w’xy’z w’xyz w’xyz’
X X
0 1 0 0 wxy’z’ wxy’z wxyz wxyz’
W W
1 0 0 1 wx’y’z’ wx’y’z wx’yz wx’yz’
Z Z
K-maps can be tricky!
• There may not necessarily be a unique MSP. The K-map below yields two
valid and equivalent MSPs, because there are two possible ways to
include minterm m7.
Y
0 1 0 1
X 0 1 1 1
Z
Y Y
0 1 0 1 0 1 0 1
X 0 1 1 1 X 0 1 1 1
Z Z