1. Electronics and Communication Engineering Department
National Institute of Technology, Hamirpur
Karnaugh Map
Presented by
Dr. Gargi Khanna
Associate Professor
E&CED Dept. , NIT Hamirpur, HP.
2. K-Map (Karnaugh Map)
Boolean Algebra: The results obtained from Boolean algebra is not
always minimum
K-Map: K-Map is a method to simplify Boolean algebra expressions
& it also reduces the need of extensive calculations
The results obtained from k-map are always most minimised & it is
less time consuming process
Pictorial form of a truth table
3. Rules of K-Map:
Grouping of 1’s ( not include any cell containing a zero) or
Grouping of 0’s ( not include any cell containing a one)
Groups may be vertical or horizontal, but not diagonal
Groups must contain 1,2,4,8 or in general 2^n cells.
Only power of 2 number of cells in each group
Groups should be as large as possible
Every 1 must be in at-least one group
Overlapping allowed
Wrap around allowed
Fewest number of groups possible
4. Representation of 2,3 & 4 Variable K-Map
0 1
2 3
0 1 3 2
4 5 7 6
0 1 3 2
4 5 7 6
12 13 15 14
8 9 11 10
A
B
A
BC CD
AB
00 01 11 10 10
10
11
11
01
01
00
00
0 1
1
0
2 Variable k-map
3 Variable k-map
4 Variable k-map
0
1
Any two adjacent cells in the map differ by only one variable, Which
appears complemented in one cell and uncomplemented in other
Generally, a minimum SOP or POS expression can be
implemented with fewer logic gates than a standard expression
7. SIMPLIFICATION OF LOGICAL FUNCTIONS
USING K-MAP
based on the principle of combining terms
Two cells are said to be adjacent if they differ in only one
variable.
If there are two adjacent ones on the map, these can be grouped
together and the resulting term will have one less literal than the
original two terms.
9. Grouping Four Adjacent Ones
Four cells form a group of four adjacent ones if two of the literals
associated with the minterms/maxterms are not same and the other literals
are same
10. Grouping Eight Adjacent Ones
Eight cells form a group of eight adjacent ones if three of the literals associated
with the minterms/maxterms are not same and the other literals are same.
In case of 3-variable Kmap, there is only one possibility of eight ones appearing in
the K-map and this corresponds to output equal to 1, irrespective of the values of
the input variables.
13. K-Map Examples
Ex.1 f(A,B,C)= ∑m (1,3,5,7)
I. Find out no. of variables
n=3
II. Fin out no. of cell in k-map
2^3= 8 cells
III. Solve it by using k-map
Where A= MSB bit, C= LSB bit and
1(m1),3(m3),5(m5),7(m7) are the minterms
Minimised Result
14. Cont..
Ex.2 f (A,B,C)= ∑m (0,1,2,4,7)
I. Find out no. of variables n=3
II. Fin out no. of cell in k-map 2^3= 8 cells
III. Solve it by using k-map
Minimised Result
15. Cont..
Ex.3 f (A,B,C)= ∑m (1,3,6,7)
I. Find out no. of variables
n=3
II. Fin out no. of cell in k-map
2^3= 8 cells
III. Solve it by using k-map
IV.Special case of k-map i.e. redundant pair
16. Cont.. Ex.4 f(A,B,C)= ∑m (0,1,5,6,7)
I. Find out no. of variables n=3
II. Fin out no. of cell in k-map 2^3= 8 cells
III. Solve it by using k-map
IV.Special case of k-map i.e. redundant pair
The result is
minimised but may
not be unique
17. K-Map and Implicants:
• Implicants: Group of 1’s is called as implicants. Ex- 1,2,4,8,16 etc.
• Prime Implicants (PI’s): It is the largest possible group of 1’s
• Essential Prime Implicants (EPI’s): At least there is single 1
which can not be combined in any other way
Ex. Find out the essential prime implicants
Note: Just see the EPI’s
definition
18. 4 Variable K-Map:
Ex.1 f(A,B,C,D)= ∑m (0,2,3,11,13,14,15)
I. Find out no. of variables
n=4
II. Fin out no. of cell in k-map
2^4= 16 cells
III. Solve it by using k-map
( m0, m2, m3, m11, m13, m14, m15 )
19. Cont..
Ex.2 f (A,B,C,D)= ∑m (0,2,3,5,7,8,10,11,14,15)
I. Find out no. of variables
n= 4
II. Fin out no. of cell in k-map
2^4= 16 cells
III. Solve it by using k-map
20. Cont..
Minimize f(x, z, y, w)= ∑m (1,5,7,9,11,13,15)
I. Find out no. of variables n= 4
II. Fin out no. of cell in k-map
2^4= 16 cells
III. Solve it by using k-map
21.
22. Cont..
Ex. f (A,B,C,D)= П𝑴 (0,2,6,7,8,10,12,13)
I. Find out no. of variables n= 4
II. Find out no. of cell in k-map 2^4 = 16 cells
III. Solve it by using k-map
F = I + II + III
F = (B+D)(A+B’+C’)(A’+B’+C)
23. Don’t Care in K-Map
Don’t cares are usually indicated on the map with dash or X
K-Map also allow easy minimization of functions whose truth tables
include “don’t care” condition
A “don’t care” condition is a combination of the inputs for which the
designer doesn’t care what the output is
A “don’t care” condition can either be included in or excluded from
any circled group, whichever makes it larger
Don’t care condition can be treated as a zero(0) or a one (1) in a k-
map
24. Cont..
Ex.1 f(x, z, y, w)= ∑m (2,3,4,5) + ∑d (6,7)
I. Find out no. of variables
n= 3
II. Fin out no. of cell in k-map
2^3= 8 cells
III. Solve it by using k-map
Note:
d= 1 Min
d= 0 Max
We use the don’t care to reduce
the function to much minimum
form
f = Quad1+Quad2
f = A+B
f = Pair1+ Pair2
f = A EXOR B
Without don’t care
assumption to d=1=min,
d=0=max, hardware
complexity is more
With don’t Care
assumption to d=1=min,
d=0=max, hardware
complexity is very less
25. K-Map Using Maxterm:
Ex.1 f (A,B,C)= ∑𝜋 (2,4,5,6,7)
I. Find out no. of variables
n= 3
II. Fin out no. of cell in k-map
2^3 = 8 cells
III. Solve it by using k-map
Maxterm Result
F = A+BC’ Minterm Result
28. Quine-McCluskey Minimization Technique
(Tabular Method)
• For many applications number of inputs are too large, so the
simplification using k-map becomes too difficult it happens when
number of variables grater than 6.
• As we know two methods for minimization i.e. 1st one is Boolean
Algebra & 2nd one is K-Map
• Boolean Algebra is good up to 2 or 3 variables
• K-Maps are good up to 3,4 & 5 variables minimization
• If we have variables more than 5 we go with Quine-McCluskey
minimization method
32. Above example using 4 variable K-Map:
Ex. f (A,B,C,D)= ∑m (0,1,3,7,8,9,11,15) solve it by using k-Map method
I. Find out no. of variables
n= 4
II. Fin out no. of cell in k-map
2^4 = 16 cells
III. Solve it by using k-map