0% found this document useful (0 votes)
23 views17 pages

Unit2 - Simplification of K Map

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views17 pages

Unit2 - Simplification of K Map

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Simplification of boolean expressions using

Karnaugh Map
As we know that K-map takes both SOP and POS forms. So, there are two possible
solutions for K-map, i.e., minterm and maxterm solution. Let's start and learn about
how we can find the minterm and maxterm solution of K-map.

Minterm Solution of K Map


There are the following steps to find the minterm solution or K-map:

Step 1:

Firstly, we define the given expression in its canonical form.

Step 2:

Next, we create the K-map by entering 1 to each product-term into the K-map cell
and fill the remaining cells with zeros.

Step 3:

Next, we form the groups by considering each one in the K-map.

Notice that each group should have the largest number of 'ones'. A group cannot
contain an empty cell or cell that contains 0.

In a group, there is a total of 2n number of ones. Here, n=0, 1, 2, …n.


Example: 20=1, 21=2, 22=4, 23=8, or 24=16.

We group the number of ones in the decreasing order. First, we have to try to make
the group of eight, then for four, after that two and lastly for 1.

In horizontally or vertically manner, the groups of ones are formed in shape of


rectangle and square. We cannot perform the diagonal grouping in K-map.

The elements in one group can also be used in different groups only when the size of
the group is increased.
The elements located at the edges of the table are considered to be adjacent. So, we
can group these elements.

We can consider the 'don't care condition' only when they aid in increasing the
group-size. Otherwise, 'don't care' elements are discarded.

Step 4:

In the next step, we find the boolean expression for each group. By looking at the
common variables in cell-labeling, we define the groups in terms of input variables.
In the below example, there is a total of two groups, i.e., group 1 and group 2, with
two and one number of 'ones'.

In the first group, the ones are present in the row for which the value of A is 0.
Thus, they contain the complement of variable A. Remaining two 'ones' are present
in adjacent columns. In these columns, only B term in common is the product term
corresponding to the group as A'B. Just like group 1, in group 2, the one's are
present in a row for which the value of A is 1. So, the corresponding variables of this
column are B'C'. The overall product term of this group is AB'C'.
Step 5:

Lastly, we find the boolean expression for the Output. To find the simplified boolean
expression in the SOP form, we combine the product-terms of all individual groups.
So the simplified expression of the above k-map is as follows:

A'+AB'C'

Let's take some examples of 2-variable, 3-variable, 4-variable, and 5-variable K-


map examples.

Example 1: Y=A'B' + A'B+AB

Simplified expression: Y=A'+B

Example 2: Y=A'B'C'+A' BC'+AB' C'+AB' C+ABC'+ABC


Simplified expression: Y=A+C'

Example 3: Y=A'B'C' D'+A' B' CD'+A' BCD'+A' BCD+AB' C' D'+ABCD'+ABCD

Simplified expression: Y=BD+B'D'

Maxterm Solution of K-Map


To find the simplified maxterm solution using K-map is the same as to find for the
minterm solution. There are some minor changes in the maxterm solution, which are
as follows:
1. We will populate the K-map by entering the value of 0 to each sum-term into
the K-map cell and fill the remaining cells with one's.

2. We will make the groups of 'zeros' not for 'ones'.

3. Now, we will define the boolean expressions for each group as sum-terms.

4. At last, to find the simplified boolean expression in the POS form, we will
combine the sum-terms of all individual groups.

Let's take some example of 2-variable, 3-variable, 4-variable and 5-variable K-map
examples

Example 1: Y=(A'+B')+(A'+B)+(A+B)

Simplified expression: A'B

Example 2: Y=(A + B + C') + (A + B' + C') + (A' + B' + C) + (A' + B' + C')

Simplified expression: Y=(A + C') .(A' + B')


Example 3: F(A,B,C,D)=π(3,5,7,8,10,11,12,13)

Simplified expression: Y=(A + C') .(A' + B')


De-Morgan's Theorem
A famous mathematician DeMorgan invented the two most important theorems of
boolean algebra. The DeMorgan's theorems are used for mathematical verification of

Input variables Output Condition

A B AND NAND OR NOR

0 0 0 1 0 1

0 1 0 1 1 0

1 0 0 1 1 0

1 1 1 0 1 0

the equivalency of the NOR and negative-AND gates and the negative-OR and NAND
gates. These theorems play an important role in solving various boolean algebra
expressions. In the below table, the logical operation for each combination of the
input variable is defined.

The rules of De-Morgan's theorem are produced from the Boolean expressions
for OR, AND, and NOT using two input variables x and y. The first theorem of
Demorgan's says that if we perform the AND operation of two input variables and
then perform the NOT operation of the result, the result will be the same as the OR
operation of the complement of that variable. The second theorem of DeMorgan says
that if we perform the OR operation of two input variables and then perform
the NOT operation of the result, the result will be the same as the AND operation of
the complement of that variable.

De-Morgan's First Theorem


According to the first theorem, the complement result of the AND operation is equal
to the OR operation of the complement of that variable. Thus, it is equivalent to
the NAND function and is a negative-OR function proving that (A.B)' = A'+B' and we
can show this using the following table.
Inputs Output For Each
Term

A B A.B (A.B)' A' B' A'A+B'

0 0 0 1 1 1 1

0 1 0 1 1 0 1

1 0 0 1 0 1 1

1 1 1 0 0 0 0

De-Morgan's Second Theorem


According to the second theorem, the complement result of the OR operation is
equal to the AND operation of the complement of that variable. Thus, it is the
equivalent of the NOR function and is a negative-AND function proving that (A+B)' =
A'.B' and we can show this using the following truth table.

Inputs
Output
For
Each
Term

A B A+B (A+B)' A' B' A'.B'

0 0 0 1 1 1 1

0 1 1 0 1 0 0

1 0 1 0 0 1 0

1 1 1 0 0 0 0

Let's take some examples in which we take some expressions and apply DeMorgan's
theorems.

Example 1: (A.B.C)'

(A.B.C)'=A'+B'+C'

Example 2: (A+B+C)'

(A+B+C)'=A'.B'.C

Example 3: ((A+BC')'+D(E+F')')'

For applying the DeMorgan's theorem on this expression, we have to follow the
following expressions:
1) In complete expression, first, we find those terms on which we can apply the
DeMorgan's theorem and treat each term as a single variable.

So,

2) Next, we apply DeMorgan's first theorem. So,

3) Next, we use rule number 9, i.e., (A=(A')') for canceling the double bars.

4) Next, we apply DeMorgan's second theorem. So,

5) Again apply rule number 9 to cancel the double bar

Now, this expression has no term in which we can apply any rule or theorem. So,
this is the final expression.
Example 3: (AB'.(A + C))'+ A'B.(A + B + C')'
Don't Care Condition
The "Don't care" condition says that we can use the blank cells of a K-map to make
a group of the variables. To make a group of cells, we can use the "don't care" cells
as either 0 or 1, and if required, we can also ignore that cell. We mainly use the
"don't care" cell to make a large group of cells.

The cross(×) symbol is used to represent the "don't care" cell in K-map. This cross
symbol represents an invalid combination. The "don't care" in excess-3 code are
0000, 0001, 0010, 1101, 1110, and 1111 because they are invalid combinations.
Apart from this, the 4-bit BCD to Excess-3 code, the "don't care" are 1010, 1011,
1100, 1101, 1110, and 1111.
We can change the standard SOP function into a POS expression by making the
"don't care" terms the same as they are. The missing minterms of the POS form are
written as maxterms of the POS form. In the same way, we can change the standard
POS function into an SOP expression by making the "don't care" terms the same as
they are. The missing maxterms of the SOP form are written as minterm of the SOP
form.

Example 1: Minimize f = m(1,5,6,12,13,14) + d(4) in SOP minimal form

Solution:

The k-map of the given function in the SOP form is as follows:


So, the minimized SOP form of the function is:

f = BC' + BD' + A'C'D

Example 2: Minimize F(A,B,C,D) = m(0,1,2,3,4,5) + d(10,11,12,13,14,15) in


SOP minimal form

Solution:

The POS form of the given function is:

F(A,B,C,D) = M(6,7,8,9) + d(10,11,12,13,14,15)

The POS K-map for the given expression is:


So, the minimized POS form of the function is:

F = A'(B' + C')

Example-3:
Minimize the following function in SOP minimal form using K-Maps: F(A, B,
C, D) = m(1, 2, 6, 7, 8, 13, 14, 15) + d(3, 5, 12)

Explanation:

The SOP K-map for the given expression is:


Therefore,

f = AC'D' + A'D + A'C + AB

Significance of "Don't Care" Conditions:


Don't Care conditions has the following significance with respect to the digital circuit
design:

Simplification:

These conditions denote the set of inputs that never occurs for given digital circuits.
Therefore, to simplify the boolean output expressions, the 'don't care' are used.

Reduced Power Consumption:

The switching of the state is reduced when we group the terms long with "don't
care". This reduces the required memory space resulting in lower power
consumption.

Lesser number of gates:

For reducing the number of gates that are used to implement the given expression,
simplification places an important role. So, the 'don't care' makes the logic design
more economical.

Prevention of Hazards:

In the digital system, the 'don't care' place an important role in hazards prevention.
States in Code Converters:

These also play an important role in code conversion. For example- In the design of
a 4-bit BCD-to-XS-3 code converter, the input combinations 1010, 1011, 1100,
1101, 1110, and 1111 are don't cares.

You might also like