Kmap Problem PDF

Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

110 Switching Theory

69. Write down the canonical s-of-p form and the p-of-s form for the logic expression
whose truth table is each of the following.

(I) X1 X2 X3 Z (II) A B C W
0 0 0 1 0 0 0 1
0 0 1 0 0 0 1 1
0 1 0 0 0 1 0 1
0 1 1 1 0 1 1 0
1 0 0 1 1 0 0 1
1 0 1 1 1 0 1 0
1 1 0 0 1 1 0 0
1 1 1 1 1 1 1 1

(III) W X Y Z F
0 0 0 0 1
0 0 0 1 0
0 0 1 0 1
0 0 1 1 0
0 1 0 0 1
0 1 0 0 1
0 1 1 1 1
1 0 0 0 1
1 0 0 1 1
1 0 1 1 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1
70. Use Question 5.
(a) Using K-maps, obtain the simplified logic expressions for both s-of-p and p-of-s
for each truth table in the question 5 above.
(b) From the p-of-s expressions, work backwards using a K-map to obtain the
s-of-p canonical expression for each truth table.
71. Apply De-Morgan’s theorems to each expression

(a) A + B (b) AB (c) A + B + C (d) A B C

(e) A (B + C) (f) AB + CD (g) AB + CD (h) (A + B) + ( C + D)


Digital Design Fundamentals–Boolean Algebra and Logic Gates 111

(i) ( ABC) (EFG) + (HIJ) (KLM) (j) A + BC + CD + BC

(k) ( A + B) (C + D) (E + F) (G + H)
72. Convert the following expressions to sum-of-products forms:

(a) AB + CD (AB + CD) (b) AB (B C + BC) (c) A + B [AC + (B + C) D]


73. Write a Boolean expression for the following
(a) X is a 1 only if a is a 1 and B is a 1 or if A is a 0 and B is a 0
(b) X is a 0 if any of the three variables A, B and C are 1’s. X is a 1 for all other
conditions.
74. Draw logic circuits using AND, OR and NOT elements to represent the following
(a) AB + AB (b) AB + AB + ABC (c) A + B [C + D(B + C)]
(d) A + BC + D(E + F) (e) (AB) (CD) (f) [(A + B) (C + D)]E + FG
75. Use Duality to derive new Boolean identities from the ones you obtained by
simplification in the previous question.
76. Use De Morgan’s Theorem to complement the following Boolean expressions
(a) z = x.( y + w. v)
(b) z = x. y. w + y.( w + v )
x

Prove this imlements XOR.

(c) z= x+ y
(d) z = x + y. w
(e) z = ( x + y). w
(f) z = x + y. w
77. Using Boolean Algebra verify that the circuit in figure 1 implements an exclusive
OR (XOR) function
(a) Express z1 and z2 as a sum of minterms
(b) Express z1 and z2 as a product of maxterms
(c) Simplify the sum of the minterm for z1 and z2 using Boolean algebra.
112 Switching Theory

3
CHAPTER

BOOLEAN FUNCTION
MINIMIZATION TECHNIQUES
3.0 INTRODUCTION
The minimization of combinational expression is considered to be one of the major steps
in the digital design process. This emphasis on minimization stems from the time when logic
gates were very expensive and required a considerable amount of physical space and power.
However with the advent of Integrated circuits (SSI, MSI, LSI and VLSI) the traditional
minimization process has lessened somewhat, there is still a reasonable degree of correlation
between minimizing gate count and reduced package count.
It is very easy to understand that the complexity of logical implementation of a Boolean
function is directly related to the complexity of algebraic expression from which it is imple-
mented.
Although the truth table representation of a Boolean function is unique, but when
expressed algebraically, it can appear in many different forms.
Because of the reason mentioned above, the objective of this chapter is to develop an
understanding of how modern reduction techniques have evolved from the time consuming
mathematical approach (Theorem reduction) to quick graphical techniques called ‘mapping’
and ‘tabular method’ for large number of variable in the combinational expression.

3.1 MINIMIZATION USING POSTULATES AND THEOREM OF BOOLEAN ALGEBRA


The keys to Boolean minimization lie in the theorems introduced in Chapter 2. Section
2.3.2. The ones of major interest are theorem member 6, 7 and 8.
Then, 6 (a) A + AB = A (b) A (A + B) = A Absorption
7 (a) A + A′B = A + B (b) A (A′ + B) = AB
8 (a) AB + AB′ = A (b) (A + B) (A + B′) = A Logic Adjacency
Theorem 6 and 7 have special significance when applied to expression in standard form,
whereas theorem 8 is of particular importance in simplifying canonical form expression.
— Theorem 6 has a wood statements—If a smaller term or expression is formed entirely
in a larger term, then the larger term is superfluous.
Theorem 6 can be applied only when an expression is in a ‘standard form’, that is, one
that has at least one term which is not a MIN or MAX term.

112
Boolean Function Minimization Techniques 113

Example 3.1 F = CD + AB′C + ABC′ + BCD

Thm 6 [Q A + AB = A]
= CD + AB′C + ABC′
⇒ Select one of the smaller terms and examine the larger terms which contain this
smaller term.
— for application of Theorem 7, the larger terms are scanned looking for of application
the smaller in its complemented form.
Example 3.2 F = AB + BEF + A′CD + B′CD
= AB + BEF + CD (A′ + B′)
= AB + BEF + CD (AB)′

Thm 7 → Using Demorgans’s


Theorem
= AB + BEF + CD (Q A + A ′ B = AB)
— Theorem 8 is the basis of our next minimization technique i.e., Karnaugh map
method. It has a word statement—‘If any two terms in a canonical or standard form expres-
sion vary in only one variable, and that variable in one term is the complement of the variable
in the other term then of the variable is superfluous to both terms.
Example 3.3 F = A′B′C′ + A′B′C + ABC′ + AB′C
Thm 8 Thm 8

F = A′B′ + AC
Example 3.4 F = A′B′C′ + AB′C′ + ABC′ + A′B′C
Thm 8
Thm 8

= A′B′ + AC′
By now it should become obvious that another techniques is needed because this tech-
niques backs specific rules to predict each succeeding step in manipulative process.
Therefore, if we could develop some graphical technique whereby the application of
‘Theorem 8’ the logical adjacency theorem is made obvious and where the desired grouping
could be plainly displayed, we would be in mind better position to visualize the proper
application of theorem.

3.2 MINIMIZATION USING KARNAUGH MAP (K-MAP) METHOD


In 1953 Maurice Karnaugh developed K-map in his paper titled ‘The map method for
synthesis of combinational logic circuits.
The map method provides simple straight forward procedure for minimizing Boolean
functions that may be regarded as pictorial form of truth table. K-map orders and displays the
114 Switching Theory

minterms in a geometrical pattern such that the application of the logic adjacency theorem
becomes obvious.
— The K-map is a diagram made up of squares. Each square represents one minterm.
— Since any function can be expressed as a sum of minterms, it follows that a Boolean
function can be recognized from a map by the area enclosed by those squares.
Whose minterms are included in the operation.
— By various patterns, we can derive alternative algebraic expression for the same
operation, from which we can select the simplest one. (One that has minimum
member of literals).
Now lest as start with a two variable K map.

3.2.1 Two and Three Variable K Map


If we examine a two variable truth table, Fig. 3.2.1(a) we can make some general
observations that support the geometric layout of K Map shown in Fig. 3.2.1(b).
Tru th Tab le
B′ B B 0 1
M in - IN P U TS O U TP U TS A
te rm A B Y A′ 0 1 0 y0 y1
m0 0 0 y0 or
m1 0 1 y1 A 2 3 1 y2 y3
m2 1 0 y2
m3 1 1 y3

(a) (b) (c)


Fig. 3.2.1 (a) (b) and (c)

The four squares (0, 1, 2, 3) represent the four possibly combinations of A and B in a two
variable truth table. Square 1 in the K-map; then, stands for A′B′, square 2 for A′B, and so
forth. The map is redrawn in Fig. 3.2.1(c) to show the relation between the squares and the
two variables. The 0’s and 1’s marked for each row and each column designate the values of
variables A and B respectively. A appears primed in row 0 and unprimed in row 1. Similarly
B appears primed in column 0 and unprimed in column 1.
Now let us map a Boolean function Y = A + B.
Method I—(i) Draw the truth table of given function.
Min-term A B Y
m0 0 0 0
m1 0 1 1
m2 1 0 1
m3 1 1 1
(ii) Draw a two variable K map an fill those squares with a 1 for which the value of
minterm in the function is equal to 1.
B 0 1 B 0 1
A A
0 m0 m1 0 1

1 m2 m3 1 1 1

The empty square in the map represent the value of minterms [m0 (or A′B′)] that is
equal to zero in the function. Thus, actually this empty square represents zero.
Boolean Function Minimization Techniques 115

Method II-(i) Find all the minterms of the function Y = A + B.


Y = A + B = A(B + B′) + B(A + A′)
= AB + AB′ + AB + A′B
⇒ Y = AB + AB′ + A′B
(ii) Draw a two variable K map using this sum of minterms expression.

B 0 1
A
Y = A B + A B ′ + A ′B 0 1
↓ ↓ ↓
11 1 0 01 1 1 1

— These a K map, is nothing more than an interesting looking Truth-Table, and it simply
provide a graphical display of ‘implicants’ (minterms) involved in any SOP canonical or stand-
ard form expression.
Now examine a three variable truth table shown in 3.2.1 (d).
Truth Table
Min term INPUTS OUTPUT
A B C Y
m0 0 0 0 y0
m1 0 0 1 y1
m2 0 1 0 y2
m3 0 1 1 y3
m4 1 0 0 y4
m5 1 0 1 y5
m6 1 1 0 y6
m7 1 1 1 y7
Fig. 3.2.1 (d)

Here we need a K-map with 8 squares represent all the combination (Minterms) of input
variables A, B and C distinctly. A three-variable map is shown in Fig. 3.2.1 (e).
BC
A 00 01 11 10
0 m0 m1 m3 m2

1 m4 m5 m7 m6

Fig. 3.2.1 (e)

It is very important to realize that in the three variable K-map of Fig. 3.2.1 (e), the
minterms are not arranged in a binary sequence, but similar to ‘Gray Code’ sequence.
The gray code sequence is a unit distance sequence that means only one bit changes in
listing sequence.
116 Switching Theory

Our basic objective in using K-map is the simplify the Boolean function to minimum
number of literals. The gray code sequencing greatly helps in applying. ‘Logic Adjacency
theorem’ to adjacent squares that reduces number of literals.
The map is Fig. 3.2.1 (e) is redrawn in Fig. 3.2.1 (f) that will be helpful to make the
pictures clear.
BC
A 00 01 11 10
0 A ′B ′C ′ A ′B ′C A ′B C A ′B C ′

1 A B ′C′ A B ′C ABC ABC ′

Fig. 3.2.1 (f)

We can see that any two adjacent squares in the map differ by only one variable, which
is primed in one square and unprimed in other.
For example m3 (A′BC) and m7 (ABC) are two adjacent squares. Variable A is primed in
m3 and unprimed in m7, whereas the other two variables are same in both squares. Now
applying ‘logic adjacency’ theorem, it is simplified to a single AND term of only two literals.
To clarify this, consider the sum of m3 and m7 → m3 + m7 = A′BC + ABC = BC(A + A′) = BC.
3.2.2 Boolean Expression Minimization Using K-Map
1. Construct the K-map as discussed. Enter 1 in those squares corresponding to the
minterms for which function value is 1. Leave empty the remaining squares. Now
in following steps the square means the square with a value 1.
2. Examine the map for squares that can not be combined with any other squares and
from group of such signal squares.
3. Now, look for squares which are adjacent to only one other square and form groups
containing only two squares and which are not part of any group of 4 or 8 squares.
A group of two squares is called a pair.
4. Next, Group the squares which result in groups of 4 squares but are not part of
an 8-squares group. A group of 4 squares is called a quad.
5. Group the squares which result in groups of 8 squares. A group of 8 squares is
called octet.
6. Form more pairs, quads and outlets to include those squares that have not yet been
grouped, and use only a minimum no. of groups. There can be overlapping of
groups if they include common squares.
7. Omit any redundant group.
8. Form the logical sum of all the terms generated by each group.
Using Logic Adjacency Theorem we can conclude that,
— a group of two squares eliminates one variable,
— a group of four sqs. eliminates two variable and a group of eight squares eliminates
three variables.
Now let us do some examples to learn the procedure.
Example 3.2. Simplify the boolean for F = AB + AB′ + A′B. Using two variable K-map.
This function can also be written as
F(A, B) = Σ(1, 2, 3)
Boolean Function Minimization Techniques 117

Solution. Step 1. Make a two variable K-map and enter 1 in squares corresponding to
minterms present in the expression and leave empty the remaining squares.
B 0 1
A
0 m0 m1

1 m2 m3

Step 2. There are no 1’s which are not adjacent to other 1’s. So this step is discarded.
B 0 1
A
0 1

1 1 1

Step 3. m1 is adjacent to m3 ⇒ forms a group of two squares and is not part of any group
of 4 squares. [A group of 8 squares is not possible in this case].
B 0 1
A
0 1

1 1 1

Similarly m2 is also adjacent to m3 ⇒ forms another group of two squares and is not a
part of any group of 4 squares.
Step 4 and 5. Discarded because these in no quad or outlet.
Step 6. All the 1’s have already been grouped.
There is an overlapping of groups because they include common minterm m3.
Step 7. There is no redundant group.
Step 8. The terms generated by the two groups are ‘OR’ operated together to obtain the
expression for F as follows:
F = A + B
↓ ↓
From From group
group m2 m3 m1 m3
↓ ↓
This row is This column is
corresponding corresponding to
to the value the value of B is
of A is equal equal to 1.
to 1.
Example 3.3. Simplify the Boolean function F (A, B, C) = Σ (3, 4, 6, 7).
Solution. Step 1. Construct K-map.
There are cases where two squares in the map are considered to be adjacent even
through they do not touch each other. In a three var K-map, m0 is adjacent to m2 and m4
is adjacent to m6.
118 Switching Theory

Algebraically m0 + m2 = A′B′C′ + A′BC′ = A′C′


and m4 + m6 = AB′C′ + ABC′ = AC′
BC
A 00 01 11 10
0 m0 m2 m3 m2

1 m4 m5 m7 m6

Consequently, we must modify the definition of adjacent squares to include this and other
similar cases. This we can understand by considering that the map is drawn on a surface
where the right and left edges tough each other to form adjacent squares.
Step 2. There are no 1’s which are not adjacent to other 1’s so this step is discarded.
BC
A 00 0 1 11 10
m
0 m0 m2 1 3 m2
m4 m m6
m5 1 7
1 1 1

Step 3. m3 is adjacent to m7. It forms a group of two squares and is not a part of any
group of 4 or 8 squares.
Similarly m6 is adjacent to m7. So this is second group (pair) that is not a part of any
group of 4 or 8 squares.
Now according to new definition of adjacency m4 and m6 are also adjacent and form a
pair. Moreover, this pair (group) is not a part of any group of 4 or 8 sqs.
Step 4 and 5. Discarded, because no quad or octet is possible.
Step 6. All the 1’s have already been grouped. These is an overlapping of groups because
they include a common minterm m7.
Step 7. The pair formed b m6 m7 is redundant because m6 is already covered in pair
m4 m6 and m7 in pair m3 m7. Therefore, the pair m6 m7 is discarded.
Step 8. The terms generated by the remaining two groups are ‘OR’ operated together
to obtain the expression for F as follows:
F = AC′ + BC
↓ ↓
From group m4 m6 From group m3 m7.
The row is corresponding Correspond to both rows
to the value of A = 1 and (⇒ A = 0 and A = 1) so A
in the two columns (00 → is omitted, and single
B′C′ and the 10 → BC′), the column (⇒ B = 1 and C = 1),
value C = 0 ⇒ C′ is common ⇒ BC.
= AC′
With a little more practice, you can make yourself comfortable in minimization using K-
map technique. Then you have no used to write all the steps. You can directly minimize the
given function by drawing simply the map.
Now let us do one more example of a three variable K-map.
Boolean Function Minimization Techniques 119

Example 3.4. Simply the following Boolean function by first expressing it in sum of
minterms.
F = A′B + BC′ + B′C′
Solution. The given Boolean expression is a function of three variables A, B and C. The
three product terms in the expression have two literals and are represented in a three
variable map by two squares each.
The two squares corresponding to the first terms A′B are formed in map from the
coincidence of A′ (⇒ A = 0, first row) and B (two last columns) to gives squares 011 and 010.
B ′C ′ A ′B BC ′
BC
A 00 01 11 10
0 1 1 1

1 1 1

Note that when marking 1’s in the squares, it is possible to find a 1 already placed there
from a preceding term. This happens with the second therm BC′, has 1’s in the sqs. which
010 and 110, the sq. 010 is common with the first term A′B, so only one square (corresponding
to 110) is marked 1.
Similarly, the third term B′C′ corresponds to column 00 that is squares 000 and 100.
The function has a total of five minterms, as indicated by five 1’s in the map. These are
0, 2, 3, 4 and 6. So the function can be expressed in sum of minterms term:
F (A, B, C) = Σ(0, 2, 3, 4, 6)
Now, for the simplification purpose, let us redraw the map drawn above:
BC
A 00 01 11 10
0 1 1 1

1 1 1

First we combine the four adjacent squares in the first and last columns to given the
single literal term C′.
The remaining single square representing minterm 3 is combined with an adjacent
square that has already been used once. This is not only permissible but rather desirable
since the two adjacent squares give the two literal term A′B and the single sq. represent the
three literal minterm A′BC. The simplified function is therefore,
F = A′B + C′
3.2.3 Minimization in Products of Sums Form
So far, we have seen in all previous examples that the minimized function were ex-
pressed in sum of products form. With a minor modification, product of sums (POS) form can
be obtained. The process is as follows:
1. Draw map as for SOP; mark the 0 entries. The 1’s places in the squares represents
minterms of the function. The minterms not included in the function denote the
complement of the function. Thus the complement of a function is represented on
the map by the squares marked by 0’s.
2. Group 0 entries as you group 1 entries for a SOP reading, to determine the
simplified SOP expression for F′.
120 Switching Theory

3. Use De Morgan’s theorem on F′ to produce the simplified expression in POS form.


Example 3.5. Given the following Boolean function:
F = A′C + A′B + AB′C + BC
Find the simplified products of sum (POS) expression.
Solution. Step 1. We draw a three variable K-map. From the given function we observe
that minterms 1, 2, 3, 5, and 7 are having the value 1 and remaining minterms i.e., 0, 4 and
6 are 0. So we mark the 0 entries.
BC
A 00 01 11 10
0 0 1 1 1

1 0 1 1 0

Step 2. Minterms 0 and 4 forms a pair, giving value = B′C′. Similarly minterms 4 and
6 forms a second pair giving value = AC′. Therefore we get F′ = AC′ + B′C′.
Step 3. Applying De Morgan’s theorem automatically converts SOP expression into POS
expression, giving the value of F
⇒ (F′)′ = [AC′ + B′C′]′
⇒ F = [(AC′)′ . (B′C′)′]
⇒ F = (A + C) . (B + C)
3.2.4 Four Variable K-Map
Let us examine a four variable truth table shown is Fig. We used a K-map with 16
squares to represent all the minterms of input variables A, B, C and D distinctly. A four-
variable K-map is shown in fig.
BC
AB 00 01 11 10
00 m0 m1 m3 m2

01 m4 m5 m7 m6

11 m 1 2 m13 m15 m14

10 m8 m9 m 11 m10

Truth Table
Minterm Inputs Output
A B C D Y
m0 0 0 0 0 y0
m1 0 0 0 1 y1
m2 0 0 1 0 y2
m3 0 0 1 1 y3
m4 0 1 0 0 y4
m5 0 1 0 1 y5
m6 0 1 1 0 y6
Boolean Function Minimization Techniques 121

Minterm Inputs Output


A B C D Y
m7 0 1 1 1 y7
m8 1 0 0 0 y8
m9 1 0 0 1 y9
m 10 1 0 1 0 y 10
m11 1 0 1 1 y11
m 12 1 1 0 0 y 12
m 13 1 1 0 1 y 13
m 14 1 1 1 0 y 14
m 15 1 1 1 1 y 15

The rows and column are numbered in a reflected-code sequence, with only one digit
changing value between two adjacent rows or columns.
The minimization process is similar as well have done in a three variable K-Map. How-
ever the definition of adjacency can further be extended. Considering the map to be on a
surface with the top and bottom edges, as well as sight and left edges, touching each other
of form adjacent squares.
For example m0 is adjacent to m2, m4 as well as to m8, similarly m3 is adjacent to m1,
m2, m7 as will as to m11 and so on.
Example 3.6. Simplify the given fraction.
F = ABCD + AB′C′D′ + AB′C + AB
Solution. Step 1. The given function is consisting of four variables A, B, C and D. We draw
a four variable K-map. The first two terms in the function have fours literals and are repeated
in a four variable map by one square each. The square corresponding to first term ABCD is
equivalent to minterm 1111. (m15). Similarly the square for second term AB′C′D′ is equivalent
to minterm 1000 (m8) the third term in the function has three literals and is represented in a
four var map by two adjacent squares. AB' corresponds to 4th row (i.e. 10) in the map and C
corresponds to last two columns (i.e. 11 and 10) in the map. The last term AB has two (A term
with only one literal is represented by 8 adjacent square in map. Finally a 1 in all 16 squares
give F = 1. It means all the minterms are having the value equal to 1 in the function). Literals
and is represented by 4 adjacent squares. Here AB simply corresponds to 3rd row (i.e., AB = 11).
CD
AB 00 01 11 10
00 m0 m1 m3 m2

01 m4 m5 m7 m6
m12 m1 3 m15 m14
11
1 1 1 1
m8 m9 m 11 m10
10
1 1 1
AB A B ′ C ′ D′ A B ′C
ABCD

Now let us redraw the map first for simplification purpose.


122 Switching Theory

Step 2. Is discarded. (No 1’s which are not adjacent to other 1’s)
Step 3. Discard (No pairs which are not part of any larger group)
Step 4. There are three quads.
CD
Minterms 8, 10, 12, 14 from first quad. AB 00 01 11 10

Minterms 12, 13, 14, 15 form second quad 00

and Minterms 10, 11, 14, 15 form third quad. 01

Step 5. Discarded. (No octages) 11 1 1 1 1


Step 6. Discarded (All 1’s have been grouped.) 10 1 1 1
Step 7. Discard (No redundant term)
Step 8. The terms generated by three groups one ‘OR’ operated as follow
F = AD′ + AB + AC.
↓ ↓ ↓
From Second Third
First group group.
group
Example 3.7. Obtain (a) minimal sum of product (b) minimal product of sum expression
for the function given below:
F(w, x y, z) = ∈ (0, 2, 3, 6, 7, 8, 10, 11, 12, 15).
Solution. The given function can also be written in product of minterm form as
F(w, x, y, z) = ∏ (1, 4, 5, 9, 13, 14).
Squares with 1’s are grouped to obtain minimal sum of product; square with 0’s are
grouped to obtain minimal product of sum, as shown.
YZ
WX 00 01 11 10
00 1 1 1

01 1 1

11 1 1
10 1 1 1

(a) We draw a four variable map using minterms whose values in the function are equal to 1.
– Minterm 8 and 12. Four a pair.
– Minterms 0, 2, 8 and 10 form I quad.
– Minterms 3, 7, 11, 15 form II quad.
– Minterms 2, 3, 6, 7 form III quad.
Therefore, F = x'z + yz + w'y + wy'z'
↓ ↓ ↓ ↓
Due to II quad III quad Due to pair
I quad.
(b) We draw a four variable map using minterms whose values in the function are equal
to zero. These minterms are 1, 4, 5, 9, 13 and 14.
Boolean Function Minimization Techniques 123

YZ
WX 00 01 11 10
00 0

01 0 0

11 0 0

10 0

– Minterm 14 can not be combined with any other square in the map 4 fours a group
with single squares.
– Minterms 4 and 5 form a pair.
– Minterms 1, 5, 9 and 13 form a quad.
Therefore, F' = wxyz' + w'xy' + y'z
Applying De Morgan's theorem
(F')' = [wxyz′ + w′xy′ + y′z]′
⇒ F = (wxyz')'. w'xy'. (y'z)'
⇒ F = (w' + x'y' + z). (w + x' + y). (y + z').
3.2.5 Prime and Essential Implicants
So far we have seen a method for drawing and minimising Karnaugh maps in such a way
that unnecessary (redundant) groupings can be avoided. Now let us establish some important
definitions that will be used to a systematic procedure for combining squares in the process of
K-map minimization. To do this, consider a function defined as F (A, B, C, D) = Σ(0, 1, 2, 3,
5, 7, 8, 9, 10, 13, 15). Now we will analyze the grouping shown in the 4 variable map in Fig.
CD
AB 00 01 11 10
00 m0 m1 m3 m2
1 1 1 1
m4 m5 m7 m6
01
1 1
m12 m13 m15 m14
11
1 1
m8 m9 m 11 m10
10
1 1 1

Here we see that all realistic groupings are shown. Note further that each group is
sufficiently large that is can not be completely covered by any other simple grouping. Each
of these five groupings is defined as a Prime implicant.
I group → covering minterms → 0, 2, 8, and 10, → B′D′
II group → covering minterms → 0, 1, 2, and 3 → A′B′
III group → covering minterms → 1, 5, 9, and 13 → C′D′
IV group → covering minterms → 1, 3, 5 and 7 → A′D′
V group → covering minterms → 5, 7, 9 and 15 → B′D′
IV group → covering minterms → 0, 1, 8, 9 → B′C′
124 Switching Theory

Thus ‘a prime implicant is a product term (or minterm) obtained by combining


the maximum possible number of adjacent squares in the map.
As we examine the set of prime implicates that cover this map, it becomes obvious that
some of the entries can be grouped in only one way. (Single way groupings). For example
there is only one way to group m10 with 4 adjacent squares. (⇒ I group only). Similarly there
is only one way to group m15 with the adjacent square (⇒ V group only). The resultant terms
from these groupings are defined as essential prime implicants.
Thus, ‘if a minterm in a square is covered by only one prime implicant, the
prime implicant is said to be essential’. The two essential prime implicant ⇒ B′D′ and
BD cover 8 minterms. The remaining three viz m1, m3 and m9 must be considered next.
The prime implicant table shows that m3 can be covered either with A'B' or with A′D.
m9 can be covered either with C'D or with B′C′.
m1 can be covered with any of form prime implicates A'B', A'D, B'C' or C'D.
Now the simplified expression is obtained form the sum of two essentials prime impli-
cates and two prime implicant that cover minterms. m1, m3, and m9. It means there one four
possible ways to write the simplified expression.
(a) BD + B'D' + A'B' + C'D
(b) BD + B'D' + A'B' + B'C'
(c) BD + B'D' + A'D + C'D
(d) BD + B'D' + A'D + B'C'
The simplified expression is thus obtained from the logical sum of all the essential prime
implicants plus the prime implicants that may be needed to cover any remaining minterms
not covered by simplified prime implicants.

3.2.6 Don’t care Map Entries


Many times in digital system design,
some input combinations must be consid-
0 0 00 0 0
ered as cases that “Just don't happen”, and
1 0 00 1
there are cases when the occurrence of par- 1
2
ticular combinations will have no effect on 3 2
the system, and if those combinations do
D ig ital 3
occur, “you don’t care”. For example, con-
syste m
sider the case where the outputs of a 4-bit 4
binary counter; which happens to home a con ve rting
4 bit b in ary 5
possible range from 0000 to 1111, is to be
converted to a decimal display having the n um be r to 6
9 1 00 1
range of 0, 1, 2, ....., 9. The converter might 10 1 01 0 a D ecim a l
7
be a digital system having binary 4-bit in- 11 1 011 n um be r
puts and decimal upto as shown Fig. 3.2.6. 12 11 00 8
In this particular case, the input combina- 13 11 01
9
14 111 0
tions 1001, 1010, 1011, 1100, 1101, 1110, 1111
15 1111
are to be considered by combinations that
just can not be accepted by the digital sys- Fig. 3.2.6
tem if it is function properly.
Boolean Function Minimization Techniques 125

Therefore, when this digital system is being designed, these minterms in the map are
treated in a special way. That is a φ or a or × (cross) is entered into each square to signify
“don't care” MIN/MAX terms.
Reading a map, or grouping a map with don’t care entries is a simple process.
‘Group the φ don’t care ⇒ x) with a 1 grouping if and only if this grouping will result in
greater, simplification; otherwise treat it as if it were a 0 entry.
Example 3.8. Simplify the following Boolean function.
F (A, B, C, D) = Σ (0, 1, 2, 10, 11, 14)
d (5, 8, 9)
Solution. The K-map for the given function is shown with entries X (don’t care) in
squares corresponding to combinations 5, 8 and 9.
CD
AB 00 01 11 10
00 1 1 1

01 X

11 1
10 X X 1 1

As discussed above, the 1’s and d’s (Xs) are combined in order to enclose the maximum
number of adjacent squares with 1. As shown in K-map in Fig (), by combining 1’s and d’s (Xs),
three quads can be obtained. The X in square 5 is left free since it doss not contribute in
increasing the size of any group. Therefore the
I Quad cores minterms 0, 2, 10 and d8
II Quad cores minterms 0, 1 and d 8, 9.
III Quad cores minterms 0, 1 and d 8, 9.
A pair covers minterms 10 and 14.
So, F = B'D + AB' + B'C' + ACD'
Due II III Due
to I quad Quad to
quad. Pair.
3.2.7 Five Variable K-Map
The Karnaugh map becomes three dimensional when solving logic problems with mare
than four variables. A three dimensional K-map will be used in this section.
DE DE
BC 00 01 11 10 BC 00 01 11 10
00 0 1 3 2 00 16 17 19 18

01 4 5 7 6 01 20 21 23 22

11 12 13 15 14 11 28 29 31 30

10 8 9 11 10 10 24 25 27 26
A =0 A =1
126 Switching Theory

The 5 variable M-map contains 25 = 32 squares. Instead of representing a single 32-


square map, two 16-square K-maps are generally used. If the variable are A, B, C, D and E,
the two identical 16-square maps contain B, C, D and E variable with one 16-sq. map for A
= 1 and other 16-square map for A = 0 ⇒ (A). This is shown in Fig. 3.2.7 (a)
BC D E

00 00
0 01
01
4 1 11
11 3
5 10
12
10 2 A=0
7
8 13
15 6
9
14
11
10

BC DE

00 00
16
01 01
20 17 11
11 19
21 10
28
10 18 A=1
23
24 29
22
31
25
30
27
26

Fig. 3.2.7 (a)

The minimization procedure described so far with respect to functions of two, three or
four variables. Can be extended to the case of five variables.
It is noted that in order to identify the adjacent grouping in the 5-variable maps, we must
imagine that the two maps are superimposed on one another as shown. Every square in one
map is adjacent to the corresponding square in the other map, because only one variable,
changes between such corresponding squares. Thus rows and columns for one map is adja-
cent to the corresponding row and column on the other map and same rules are used for
adjancencies with in one 16 square map. This is illustrate in figure:
DE DE
A =0 A =1
BC BC
A d ja ce n t
Rows
A d ja ce n t A d ja ce n t G ro up s
Rows
A d ja ce n t cells

A d ja ce n t colum n s
Fig. 3.2.7 (b)
Boolean Function Minimization Techniques 127

Example 3.9. Simplify the given function.


F(A, B, C, D, E) = E (0, 4, 7, 8, 9, 10, 11, 16, 24, 25, 26, 27, 29, 31)
Solution. We make two 4-variable maps and fill minterms 0-15 in map corresponding
to A = 0 and 16 to 31 corresponding to A = 1
A =0 A =1
DE DE
BC 00 01 11 10 S u bcu be BC 00 01 11 10
3
00 1 00 1

1 1 S u bcu be
01 01
S u bcu be 5
4 11 11 1 1

10 1 1 1 1 10 1 1 1 1
S u bcu be
1 S u bcu be
2
We have 5-subcubes after grouping adjacent squares.
Subcube 1 is an octate which gives BC'
Subcube 2 is a qued which gives ABC' → In the map corresponding to A = 1
Subcube 3 is a pair which gives B'C'D'E'
Subcube 4 is a pair which gives A'B'C'E' → In the map corresponding to A = 0
Subcube 5 is a single squares which gives A'B'C'D'E → In the map corresponding to A = 0.
⇒ F (A, B, C, D, E) = BC' + ABC' + B'C'D'B' + A'B'D'E' + A'B'C'D' E
3.2.8 Six variable K-Map
A six variable K-map contains 26 = 64 squares. These square are divided into four identical
16-square maps as shown in Fig. 3.2.8 (a). It the variables are A, B, C, D, E and F, then each
16 square map contains C, D, E, and F as variables along with anyone of 4 combinations of A
and B.
AB = 00 AB = 01
EF EF
CD 00 01 11 10 CD 00 01 11 10
00 0 1 3 2 00 16 17 19 18

01 4 5 7 6 01 20 21 23 22

11 12 13 15 14 11 28 29 31 30

10 8 9 11 10 10 24 25 27 26

AB = 10 A B = 11
EF EF
CD 00 01 11 10 CD 00 01 11 10
00 32 33 35 34 00 48 49 51 50

01 36 37 39 38 01 52 53 55 54

11 44 45 47 46 11 60 61 63 62

10 40 41 43 42 10 56 57 59 58

Fig. 3.2.8 (a)


128 Switching Theory

In order to identify the adjacent groupings in the 6-variable maps, we must imagine that
the 4 maps are superimposed on one another. Figure shows different possible adjacent squares:

A B = 00 A B = 01
EF EF
CD 00 01 11 10 CD 00
00

01

11 A d ja ce n t
Q ue d s
A d ja en t 10 (C ′ E )
cells
(B ′C ′D ′E ′F ′) A d ja ce n t
A B = 10 O ctates A B = 11
EF (B ′ E ) EF
CD CD

A d ja ce n t colum n s
(A E F ′)

A d ja ce n t R o w s
(A C D ′)

Fig. 3.2.8 (b)

Example 3.10. Simplify the given Boolean function.


F(A, B, C, D, E, F) = Σ(0, 4, 8, 12, 26, 27, 30, 31, 32, 36, 40, 44, 62, 63)
Solution. We make four 4-varibale maps and fill the mentions 0-15 in map correspond-
ing to AB = 00, 16-31 corresponding to AB = 01, 32 – 47 corresponding to AB = 10 and 48 to
63 corresponding to A B = 11.

AB = 00 AB = 01
EF EF
CD 00 01 11 10 CD 00 01 11 10
00 1 00

01 1 01

11 1 11 1 1
S u bcu be 2
10 1 10 1 1 o f o ne q ua d

AB = 10 A B = 11
S u bcu be EF EF
1 of CD 00 01 11 10 CD 00 01 11 10
Tw o S u bcu be 3 of
Q ua d s 00 1 00 tw o p airs
01 1 01

11 1 11 1 1

10 1 10 1 1
Boolean Function Minimization Techniques 129

We have 3-subcubes after grouping adjacent square.


1. Subcubes 1 contains two quads gives B'E'F'
2. subcube 2 is form of one quad gives A'BCE
3. subcube 3 is form of two pairs gives BCDE
⇒ F(A, B, C, D, E, F) = B'EF' + A'BCE + BCDE.
Maps with seven or more variables needs too many squares and are impractical to use.
The alternative is to employ computer programs specifically written to facilitate the simpli-
fication of Boolean functions with a large number of variables.

3.2.9 Multi Output Minimization


Finding the optimal cover for a system of output expressions all of which are a function
of the some variables is somewhat tedious task. This task is basically one of identifying all
possible PIs that cover each implicated minterm in each O/P expression, then carrying out
a search for the minimal cost cover by using ‘shared’ terms.
Suppose you were given the following system of expressions and asked to find the
optimal cover for the complete system, implying that you must find how to optimally share
terms between the expressions.
F1 (A, B, C) = Σ (0, 2, 3, 5, 6)
F2 (A, B, C) = Σ (1, 2, 3, 4, 7)
F3 (A, B, C) = Σ (2, 3, 4, 5, 6)
⇒ we first generate the maps for three expressions as shown

BC BC BC
A 00 01 11 10 A 00 01 11 10 A 00 01 11 10
0 1 1 1 0 1 1 1 0 1 1

1 1 1 1 1 1 1 1 1 1
F1 F2 F3

Then we make up an implicant table as shown in Fig. 3.2.9, showing how each minterm
can be covered:
Minterm F1 F2 F3
m0 A'B'C'/ A'C' – –
m1 – A'B'C'/ A'C' –
m2 A'B'C'/ A'B /A'C'/BC' A'BC'/ A'B A'BC' A'B' B'C'
m3 A'BC/ A'B A'BC/ A'B /A'C/BC A'BC/ A'B
m4 – AB'C' AB'C' / AB'/AC'
m5 AB'C – AB'C / AB'/AC'
m6 AB'C – AB'C / AC' /AC'
m7 ABC/ BC –
Fig. 3.2.9 Implicant Table
130 Switching Theory

We forst scan the table for rows with only a single entry. These are related to essential
implicants (m0, m1, m7). We take the largest grouping and update the table (In table by
making circle).
Next scan the rows for those which have two entries, selecting the functions that have
only a single way grouping option (m4 under F2 and m5 and mb under F1). It means have
to find the common turn. We take the common term and update the table (In table by making
ovals).
Finally, scan the rows for those rows which have two entries, selecting the functions that
have only a single way grouping option or we find the common term. We take the common
term and update the table (In table by making rectangular boxes).
Now using implicant table, the three functions can be written as:
F 1 = A ′ C′ + A ′ B + A ′ B + AB′ C + BC′
= A ′ C′ + A ′ B + BC′ + AB′ C
F 2 = A ′ C + A ′ B + A ′ B + AB′ C′ + BC
= A ′ C + A ′ B + AB′ C′ + BC
F 3 = A ′ B + A ′ B + AB′ C′ + BC
= A ′ B + BC′ + AB′ C′ + AB′ C
We see; F3 is totally generated from shared terms from F1 and F2 with considerable
saving over a combinational function by function reduction.
In summary, we can say that many times multiple outputs are derived from the same
input variables. In this case, we simplify and draw logic diagram of each function separately.
Sometimes, the simplified output functions may have common terms. The common term used
by one O/P function can be shared by other output functions. This sharing of common terms
reduces the total number of gates.

3.3 MINIMIZATION USING QUINE-MCCLUSKEY (TABULAR) METHOD


The K-map method is suitable for simplification of Boolean functions up to 5 or 6
variables. As the number of variables increases beyond this, the visualization of adjacent
squares is difficult as the geometry is more involved.
The ‘Quine-McCluskey’ or ‘Tabular’ method is employed in such cases. This it a system-
atic step by step procedure for minimizing a Boolean expression in standard form.

Procedure for Finding the Minimal Expression


1. Arrange all minterms in groups, such that all terms in the same group have same
number of 1’s in their binary representation. Start with the least number of 1’s and
continue with grouping of increasing number of 1’s the number of 1’s in each term
is called the index of that term i.e., all the minterms of some index are placed in
a some group. The lowest of value index is zero. Separate each group by a thick
line. This constitutes the I stage.
2. Compare every term of the Lowest index (say i) group with each term in the
successive group of index (say, i + 1). If two minterms differ only one variable, that
variable should be removed and a dash (–) is placed at the position, thus a new term
with only less literal is formed. If such a situation occurs, a check mark (✔) is

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy