Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design Vignan Institute of Technology and Science Page | 1 UNIT -3 MINIMIZATION OF SWITCHING FUNCTIONS o Map method o Prime implicants o don’t care combinations o Minimal SOP and POS forms o Tabular Method o Prime – Implicant chart o Simplification rules Hour No Date Topic/s 04.12.2010 Map method Prime implicants, don’t care combinations, Minimal SOP and POS forms, Tabular Method, Prime – Implicant chart, simplification rules INTRODUCTION Minimization of switching functions is to obtain logic circuits with least circuit complexity. This goal is very difficult since how a minimal function relates to the implementation technology is important. For example, If we are building a logic circuit that uses discrete logic made of small scale Integration ICs(SSIs) like 7400 series, in which basic building block are constructed and are available for use. The goal of minimization would be to reduce the number of ICs and not the logic gates. For example, If we require two 6 and gates and 5 Or gates, we would require 2 AND ICs(each has 4 AND gates) and one OR IC. (4 gates). On the other hand if the same logic could be implemented with only 10 nand gates, we require only 3 ICs. Similarly when we design logic on Programmable device, we may implement the design with certain number of gates and remaining gates may not be used. Whatever may be the criteria of minimization we would be guided by the following: PRIME IMPLICANTS : Consider the function f (x,y,z) = x’y’z + x’yz + xy’z + xyz + xyz’ = z x’ (y’ +y) + zx (y’ + y) + xyz’ = z x’ +zx + xyz’ = z (x’+x) + xyz’ = z +xyz’ = z + xy The function cannot be reduced further. The terms z and xy have lowest number of litarals. They are the prime implicants (discussed later) of the function. Original terms are implicants of the function. Also the terms derived in subsequent steps in the minimisation process are the implicants of the function, since when any term takes the value 1 the function becomes 1. Definition: A product term is an implicant of a function f, if it implies f. Any term that appears in the function’s sum of products form is an implicant of the function. Example f (x,y,z)= x’z + xy’ +xy’z, all the terms here are implicants of f. A minterm of a function is its implicant. www.jntuworld.com www.jntuworld.com
18
Embed
STLD NOTES UNIT-3 - Webnodefiles.harishpola.webnode.com/200000080-848a48583d/Unit-3_JWFILES.pdf · Its canonical form is 3,4,5,6,7 Truth table of the function f along with some product
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design
Vignan Institute of Technology and Science P a g e | 1
UNIT -3 MINIMIZATION OF SWITCHING FUNCTIONS
o Map method o Prime implicants o don’t care combinations o Minimal SOP and POS forms o Tabular Method o Prime – Implicant chart o Simplification rules
Hour No Date Topic/s
04.12.2010 Map method Prime implicants, don’t care combinations, Minimal SOP and POS forms, Tabular Method, Prime – Implicant chart, simplification rules
INTRODUCTION
Minimization of switching functions is to obtain logic circuits with least circuit complexity. This goal is very
difficult since how a minimal function relates to the implementation technology is important. For example, If
we are building a logic circuit that uses discrete logic made of small scale Integration ICs(SSIs) like 7400 series,
in which basic building block are constructed and are available for use. The goal of minimization would be to
reduce the number of ICs and not the logic gates. For example, If we require two 6 and gates and 5 Or gates,
we would require 2 AND ICs(each has 4 AND gates) and one OR IC. (4 gates). On the other hand if the same
logic could be implemented with only 10 nand gates, we require only 3 ICs. Similarly when we design logic on
Programmable device, we may implement the design with certain number of gates and remaining gates may
not be used. Whatever may be the criteria of minimization we would be guided by the following:
PRIME IMPLICANTS : Consider the function
f (x,y,z) = x’y’z + x’yz + xy’z + xyz + xyz’
= z x’ (y’ +y) + zx (y’ + y) + xyz’
= z x’ +zx + xyz’
= z (x’+x) + xyz’
= z +xyz’
= z + xy
The function cannot be reduced further. The terms z and xy have lowest number of litarals. They are the prime
implicants (discussed later) of the function. Original terms are implicants of the function. Also the terms
derived in subsequent steps in the minimisation process are the implicants of the function, since when any
term takes the value 1 the function becomes 1.
Definition: A product term is an implicant of a function f, if it implies f. Any term that appears in the function’s
sum of products form is an implicant of the function.
Example
f (x,y,z)= x’z + xy’ +xy’z, all the terms here are implicants of f. A minterm of a function is its implicant.
www.jntuworld.com
www.jntuworld.com
Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design
Vignan Institute of Technology and Science P a g e | 2
Definition: A prime implicant of a function is a product term that implies the function but does not imply any
other implicant of the function.
Example
As an example consider terms E1, E2, E3 and the function f as shown in table 6.1
E1 E2 E3 f Comments
0 0 1 0 E3 is not an implicant of f
0 1 0 1
1 1 1 1 E1 implies E2 implies f
1 1 0 1 E2 is prime implicant of f
0 0 0 0
0 0 0 0
1 1 1 1
0 0 0 0
Example
Consider a function (x,y,z) = x + yz (For table shown below) . Its canonical form is 3,4,5,6,7 Truth table of the
function f along with some product terms is shown below. From the table, we observe:
If xy’ = 1, then f = 1, i.e., xy’→f, Also xy’ does not imply any other implicant hence, it is prime implicant of f.
Similarly whenever x’yz = 1, yz =1 and also f =1, hence, x’yz → yz→f. Therefore x’yz is not a prime implicant
since it implies yz which in turn implies f. The term x→f, and, x does not imply any other implicant, hence x is a
prime implicant of f. Similarly xy’ →x →f, xy’ is not a prime implicant of f, since it implies x which is another
implicant. It may be seen that prime implicants are the terms that are obtained after eliminating largest
number of variables of the function by combining the minterms.
xyz yz x xy xy’ x’yz f(x.y.z)
000 0 0 0 0 0 0
001 0 0 0 0 0 0
010 0 0 0 0 0 0
011 1 0 0 0 1 1
100 0 1 0 1 0 1
101 0 1 0 1 0 1
110 0 1 1 0 0 1
111 1 1 1 0 0 1
Consider a space of 3 Boolean variables, which is a cube of 8 vertices as shown in Fig. above. There are 3
coordinates x,y and z corresponding to the three variables of the function. Each vertex is the point in the space
and its coordinates are 3-bit binary numbers. The function has value 1 at some points i.e., combinations
(minterms of function). These points are called 1 vertices of the functions. The 1-vertices are marked with the
filled circles. End points of any line in Fig differ only in one variable. In general, n-dimensional space will have
www.jntuworld.com
www.jntuworld.com
Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design
Vignan Institute of Technology and Science P a g e | 3
2n vertices and n dimensional cube as its space. . A subspace is any space with lesser dimension than the
original space. For example in the Fig, A face of the cube (2-dimensional space ) is a sub space or subcube, so is
the line(one-dimensional subcube) and point (0-dimensional subcube). A subcube with function value =1 at all
its point is called 1-subcube. The prime implicant of a function is the largest 1- subcube. An Implicant of the
function is essentially a 1-subcube. In the Fig. above, the face BDHF has all four vertices circles (function f =1) so
it is the prime implicant of f, since no 1-subcube of higher dimension encloses it. Other prime implicants are
subcube GH and sub-cube AB. Both of these are lines not lying entirely in any face having all 1-vertices. In
general in the n-dimensional space, we pick up all largest 1-subcubes such that any common elements do not
form any of these cubes in entirely. In other words pick up largest 1-subcube such that a cube is not covered by
another 1-cube. A 1-cube covered by another 1-cube is only an implicant of the function and not the prime
implicant.
Karnaugh maps are useful in finding minimal expression for functions b y visual inspection of the space of
variables. Subcubes are arranged in way such that 1-vertices of f are neighbors. K-map is the representation of
the n-dimensional space on 2D plane. This also can be looked upon as truth table of the functions arranged in
special way. Consider the 2 variable function f(x,y) = x + y. The truth table of this function has 4 entries. This
table is arranged in 2 –dimensions as shown in Fig.
Two variable maps
The function f(x,y) = x + y is x’y + xy’ + xy (f = 1,2,3). The 2-variable K-map is shown in Fig.6.2, which is nothing
but its truth table shown in different forms. In Fig.6.2(b) it shown as one-dimensional array. Note that, we have
swapped the places for 10 and 11 combinations. This is to make the all physically neighboring combinations as
logical neighbors (differing only in 1-bit position). The end to end cells are neighbors (by rap around). This special
way of coordinate numbering makes us to visualize the largest 1-subcubes . In the present case, we have the
cells with 1 value can be combined to form the prime implicant These are covered showing by covering ellipses
The terms 10 and 11 are covered giving the term (10+11 = xy’ + xy = x(y + y’ )) = x, similarly the terms 01 and 11
are covered by y (x’y + xy = y). These are the prime implicants of the function and both are required in the
minimal expression.
F(x,y) = x+y
xy F
00 0 y
01 1 x 0 1
10 1 0 0 1
11 1 1 1 1
Minimization of Boolean expressions using Karnaugh maps.
Given the following truth table for the majority function.
000 0
001 0
010 0
011 1
100 0
101 1
110 1
www.jntuworld.com
www.jntuworld.com
Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design
Vignan Institute of Technology and Science P a g e | 4
The Boolean algebraic expression is
m = a'bc + ab'c + abc' + abc.
We have seen that the minimization is done as follows.
m = a'bc + abc + ab'c + abc + abc' + abc
= (a' + a)bc + a(b' + b)c + ab(c' + c)
= bc + ac + ab
The abc term was replicated and combined with the other terms. To use a Karnaugh map we draw the
following map which has a position (square) corresponding to each of the 8 possible combinations of the 3
Boolean variables. The upper left position corresponds to the 000 row of the truth table, the lower right
position corresponds to 110. Each square has two coordinates, the vertical coordinate corresponds to the value
of variable a and the horizontal corresponds to the values of b and c.
The 1s are in the same places as they were in the original truth table. The 1 in the first row is at position 011
(a = 0, b = 1, c = 1). The vertical coordinate, variable a, has the value 0. The horizontal coordinates, the
variables b and c, have the values 1 and 1. The minimization is done by drawing circles around sets of adjacent
1s. Adjacency is horizontal, vertical, or both. The circles must always contain 2n 1s where n is an integer.
We have circled two 1s. The fact that the circle spans the two possible values of a (0 and 1) means that
the a term is eliminated from the Boolean expression corresponding to this circle. The bracketing lines shown
above correspond to the positions on the map for which the given variable has the value 1. The bracket
111 1
www.jntuworld.com
www.jntuworld.com
Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design
Vignan Institute of Technology and Science P a g e | 5
delimits the set of squares for which the variable has the value 1. We see that the two circled 1s are at the
intersection of sets b and c, this means that the Boolean expression for this set is bc.
Now we have drawn circles around all the 1s. The left bottom circle is the term ac. Note that the circle spans
the two possible values of b, thus eliminating the b term. Another way to think of it is that the set of squares in
the circle contains the same squares as the set a intersected with the set c. The other circle (lower right)
corresponds to the term ab. Thus the expression reduces to bc + ac + ab as we saw before.
What does adjacency and grouping the 1s together have to do with minimization? Notice that the 1 at position
111 was used by all 3 circles. This 1 corresponds to the abc term that was replicated in the original algebraic
minimization. Adjacency of 2 1s means that the terms corresponding to those 1s differ in one variable only. In
one case that variable is negated and in the other it is not.
For example, in the first map above, the one with only 1 circle. The upper 1 is the term a'bc and the lower
is abc. Obviously they combine to form bc ( a'bc + abc = (a' + a)bc = bc ). That is exactly what we got using the
map. The map is easier than algebraic minimization because we just have to recognize patterns of 1s in the
map instead of using the algebraic manipulations. Adjacency also applies to the edges of the map. Let's try
another 3 variable map.
At first it may seem that we have two sets, one on the left of the map and the other on the right. Actually there
is only 1 set because the left and right are adjacent as are the top and bottom. The expression for all 4 1s is c'.
Notice that the 4 1s span both values of a (0 and 1) and both values of b (0 and 1). Thus, only the c value is left.
The variable c is 0 for all the 1s, thus we have c'. The other way to look at it is that the 1's overlap the
horizontal b line and the short vertical a line, but they all lay outside the horizontal c line, so they correspond
to c'. (The horizontal c line delimits the c set. The c' set consists of all squares outside the c set. Since the circle
www.jntuworld.com
www.jntuworld.com
Dr. P. Sudhakara Rao, Dean Switching Theory and Logic Design
Vignan Institute of Technology and Science P a g e | 6
includes all the squares in c', they are defined by c'. Again, notice that both values of a and b are spanned, thus
eliminating those terms.)
Now for 4 Boolean variables. The Karnaugh map is drawn as shown below.
The following corresponds to the Boolean expression