Lect 05 T
Lect 05 T
Kaushik Patra
([email protected])
● Standard Forms
● Karnaugh Map
[ Chapter 2 (2-3, 2-4) of Logic & Computer Design Fundamentals, 4th Edition,
M. Morris Mano, Charles R. Kime ]
● Both minterms and maxterms property is that they represent exactly one
combination of binary variable values in the truth table.
● In a minterm variable is complemented for a specific row in the truth table if its
corresponding value in the truth table for that term is 0. If the value is 1, non-
complemented form of the variable is taken for constructing the minterm. For
example for the 3rd row of the above truth table has value entry of X=0, Y=1 and
Z=0. Hence the corresponding minterm is X'YZ'.
● If a function contains high number of variables (e.g. 100 variable boolean function)
it is not very efficient to write all the variables in the minterm. That is why,
minterms are alternatively represented as mx, where x is the decimal value
corresponding the binary value represented by the variables in that row. For
example X'YZ' is represented a m2.
● The function is expressed in SOP as logical sum of all the minterms which results
the function value to be 1 in the truth table. Instead of writing explicitly, the sum
is expressed as sum of the corresponding minterm symbol. To further reduce the
expression notation classical algebraic summation symbol is used with list of
indices for the minterm. For example 'F(X,Y,Z) = Σm(0,2,5,7)' means 'F(X,Y,Z)
= X'Y'Z' + X'YZ' + XY'Z + XYZ'.
● In a maxterm variable is complemented for a specific row in the truth table if its
corresponding value in the truth table for that term is 1. If the value is 0, non-
complemented form of the variable is taken for constructing the maxterm. For
example for the 3rd row of the above truth table has value entry of X=0, Y=1 and
Z=0. Hence the corresponding maxterm is (X+Y'+Z).
● The function is expressed in POS as logical product of all the maxterms which
results the function value to be 0 in the truth table. Instead of writing explicitly,
the product is expressed as product of the corresponding maxterm symbol. To
further reduce the expression notation classical algebraic multiplication symbol
is used with list of indices for the maxterm. For example 'F(X,Y,Z) =
ΠM(1,3,4,6)' means 'F(X,Y,Z) = (X+Y+Z')(X+Y'+Z')(X'+Y+Z)(X'+Y'+Z)'.
● Fun facts
● Maxterms are seldom used directly when dealing with Boolean functions, since
we can always replace them with minterm expression.
● A function that includes all the minterms is equal to logic 1.
● Any Boolean function can be expressed as logical sum of minterms.
Gray Code
Y YZ
0 1 00 01 11 10
X
X
0 1 0 1 3 2
0 0
2 3 4 5 7 6
1 1
10
● The number of rows and columns are exact power of 2. For example for a
3 variable K-Map, number of rows is 2 and columns is 4.
4 5 7 6
01
Gray Code
11 12 13 15 14
8 9 11 10
10
11
12
● Different group of one can overlap each other. However, they must
contain some unique 1s, i.e. one group can not be a subset of the union
of the other group.
● Product terms will contain only the variable (or its complementary form)
if and only if the variable does not change its value in the group.
● All the identified product terms are then summed to have a reduced SOP
form of the expression.
Y Y
0 1 0 1
X X
0 1 0 1
1 1 0 1
0
2 3 2 3
1 1
1 1
13
● For Boolean expression F(X,Y) = Σm(0,1,3) there are two groups chosen.
● The boxes in the table for the minterm 0 and 1 are horizontally
adjacent hence they are grouped together. For this group, only
variable X does not vary and stays at value 0. This gives the term X'
in the reduced expression.
● The boxes in the table for the minterm 1 and 3 are vertically adjacent,
hence they also group together. For this group variable Y does not
vary, but X does. The variable Y stays at 1. This gives the term Y in
the reduced expression.
● Combining two groups, we get X'+Y as the reduced expression for the
given Boolean expression.
● For the Boolean expression F(X,Y) = Σm(1,2), there are also two groups
can be chosen. However these two groups are singular group (meaning
that it contains only one 1 in the group).
● The box for minterm 2 gives the term XY' in the reduced expression
sine both X and Y remains constant at 1 and 0 respectively.
● The box for minterm 1 gives the term X'Y in the reduced expression
sine both X and Y remains constant at 0 and 1 respectively.
● Combining two groups we get the reduced (nothing reduced here in
this case) expression as X'Y + XY'
4 5 7 6 4 5 7 6
1 1
1 1 1 1 1
14
F(X,Y,Z) = Σm(1,3,4,5,6) = XY' + X'Z + XZ'
● For the expression F(X,Y,Z) = Σm(0,1,2,3,4,5) the following groups are chosen.
● All the boxes for minterms 0,1,3,2 are adjacent and X remains constant at 0.
Hence the term X'.
● All the boxes for minterms 0,1,4,5 are adjacent and Y remain constant at 0.
Hence the term Y'.
● Combining both the term, we get reduced expression as X' + Y'
● For the expression F(X,Y,Z) = Σm(0,2,4,5,6) the following groups are chosen.
● All the boxes for minterms 0,2,4,6 are adjacent (outer two columns are adjacent
to each other) and Z remains constant at 0. Hence the term Z'.
● All the boxes for minterms 4,5 are adjacent and both X and Y remain constant at
1 and 0 respectively. Hence the term XY'.
● Combining both the term, we get reduced expression as XY' + Z'
● For the expression F(X,Y,Z) = Σm(1,3,4,5,6) the following groups are chosen.
● All the boxes for minterms 1,3 are adjacent. In this group X and Z remains
constant at 0 and 1 respectively. Hence the term X'Z.
● All the boxes for minterms 4,5 are adjacent. In this group X and Y remain
constant at 1 and 0 respectively. Hence the term XY'.
● All the boxes for minterms 4,6 are adjacent (outer two columns are adjacent to
each other. In this group X and Z are constant at 1 and 0. Hence the term XZ'
● Combining both the term, we get reduced expression as XY'+X'Z+XZ'
● The minterms 1,5 also could be grouped, but they are not including any unique
minterms that is not included in other group. Hence this group was not
considered. If it had been considered, then we could drop the group 4.5 and
the reduced expression would be X'Z + XY' + Y'Z.
© 2014 - All rights are reserved by Kaushik Patra 14
K-Map Reduction Examples
YZ 11
00 01 10
WX
0 1 3 2
00 1 1 1
4 5 7 6
01 1 1 1
12 13 15 14
11
1 1
8 9 11 10
10 1 1 1
4 5 7 6
01 1 1 1
12 13 15 14
11
1 1
8 9 11 10
10 1 1 1
4 5 7 6
01 1 1 1
12 13 15 14
11
1 1
8 9 11 10
10 1 1 1
● We can group two mutually exclusive adjacent groups with same number of
minterms. This means, we group two adjacent groups with one minterm, which
will give a group of 2 minterms. Then we can group two adjacent groups with 2
minterms each to for a group of 4 minterms and so on. For example, initial group
can be (0,1) (4,5) (12,13) (8.9). Then we can group ((0,1) (4,5)) and ((12, 13)
(8,9)) because
● Boundary element in the individual group has exact one adjacent to another
boundary element in other group.
● For example of ((0,1) (4,5)), 0 is adjacent to 4 and 1 is adjacent to 5 hence
these two groups can be merged into one group of (0,1,4,5).
● Each group has exact same number of minterms.
● Both groups are mutually exclusive.
● Now we can also merge group (0,1,4,5) and (12,13,8,9) because boundary elements
(4,5) is adjacent to boundary elements (12,13) in other group. Also each group
has exactly same number of elements and they are mutually exclusive. Hence
they can be merged into (0,1,4,5,12,13,8,9).
4 5 7 6
01 1 1 1
12 13 15 14
Can not 11
1 1
group
with the
other 8 9 11 10
group of 10 1 1 1
(0,1,4,5)
19
YZ 00 01 11 10
WX
0 1 3 2
00 1 1
Essential prime
Non essential 4 5 7 6
01 1 1 1 1 implicants
prime implicant
12 13 15 14
11
1 1
8 9 11 10
10
20
● The essential prime implicant should contain at least one minterm which
is not included into any other prime implicants. If it is not the case, then
we call the prime implicant as non-essential prime implicant.
YZ 00 01 11 10
WX
0 1 3 2
00 1
4 5 7 6
01 1
12 13 15 14
11
1 1 1
8 9 11 10
10 1 1
but not
22
W'Y' + XY'Z + WYZ + WX'Y + W'X'Z'
● Don't care terms are the minterms which does not dictate overall function value.
Even if the minterm becomes 1, it does not make the function 1. Even if the
minterm becomes 0, it does not make the function 0.
● Don't care terms in an expression are denoted as d(list of minterms). For example,
d(0,2,5) means the minterms 0,2, and 5 are don't care terms for the expression
F(W,X,Y,Z) = Σm(1,3,7,11,15) + d(0,2,5). In this case, we can choose not to involve
don't care terms and have a reduced from of YZ+W'X'Z).
● Don't care terms can be involved in K-map based minimization because we can
include them in the reduced form since they do not affect the final value of the
function. In the above example, if we include minterms 0 and 2 then the reduced
form will be (YZ+W'X'). If we include minterm 5, the the reduced form will be
(YZ+W'Z).
● Inclusion of don't care term reduce the product terms. In the above example, before
inclusion of the don't care terms, the minimization process gave two product term
with 2 and 3 variable involved. By including the don't care terms, we were able to
express the function as two product terms with 2 variables each.
● Though represented by 'x', “don't care” and “unknown” terminology are different
from each other. They convey totally different ideas. Don't care term is applicable in
context of minterm, where as the unknown value is applicable to denote a value (not
known) for a Boolean variable.
Kaushik Patra
([email protected])
24
● Standard Forms
● Karnaugh Map
[ Chapter 2 (2-3, 2-4) of Logic & Computer Design Fundamentals, 4th Edition,
M. Morris Mano, Charles R. Kime ]