Combinatorial Logic Circuits
Combinatorial Logic Circuits
Algebraic Karnaugh
Simplification Maps
A ( )
AB A C
A
A Z
B
C
( )
AC
C Z = ABC + AB A C
= ABC+AB ( A+C ) A Z
( )
Details to be discussed in class
= A C+B Minimized Expression
NAND gates were the basic logic
gates in TTL technology where all
other gates were made using NAND
gates.
This made NAND gates the fastest
gates available which is why
implementations using NAND gates
Minimized Expression were generally the fastest.
Algebraic Simplification See example on previous slide ( )
Z = ABC+AB A C
1. The original expression is put into a SOP form by repeated applications of DeMorgan’s
theorem and multiplication of terms.
Z = ABC + AB + ABC SOP
= ABC + ABC+ABC+ABC Standard SOP
2. Once the original expression is in SOP form, the product terms are checked for
common factors, and factoring is performed wherever possible.
Z = AC+AB SOP
3. The factoring should result in the elimination of one or more terms for the desired
simplification
Z = A ( C+B )
Simplified Expression
(may not be unique)
Another Example of Algebraic Simplification
( )
Z = AC ABD + ABCD + ABC C
A
= AC ( A+B+D ) + ABCD + ABC B
D
= ACA + ACB + ACD + ABCD + ABC
A Z
= ABC + ACD + ABCD + ABC
C
= BC + AD ( C+BC )
B
= BC + AD ( B+C )
Very useful for TWO or THREE
Simplification using Karnaugh Maps variables. Can be done for FIVE
but difficult for more variables
Karnaugh Map is a graphical tool which, like the Truth Table, shows the
relationship between the input variables (say A, B, C ….) and the output
variable (say X).
Examples of 2, 3 and 4 variable Karnaugh Maps (K Maps) are shown in
the subsequent slides.
Important to pay attention to how the input variables are specified for
each cell of the Karnaugh Map
Two Variable K-Map
Example K-Map Format
A B C X AB
0 0 0 1 00 01 11 10
0 0 1 1 C 0 2 6 4
0 1 0 1 0 1 1 1 0
0 1 1 0
1 0 0 0 1 3 7 5
1 0 1 0 1 1 0 0 0
1 1 0 1
1 1 1 0
K- Map Representation
Four Variable K-Map
AB 00 01 11 10
CD 0 4 12 8
00 0 0 0 0
1 5 13 9
01 1 1 1 0
3 7 15 11
11 0 0 1 0
6 14 10
10
2
0 0 0 0
AB
00 01 11
Simplifying Logic Functions using CD 10
1
8
1
Graphical approach, based on the fact, that 1 5 13 9
variable 11
Z = f(A,B,C,D)
m(2,3,8,10,12)
AB
00 01 11 10
=
CD 0 4 12 8
= ACD + ABC + ABD
00 1 1
1 5 13 9
10 1 1
00 1 1
Another way of combining for
9
1 5 13
the same original expression
01
gives different result/
3 7 15 11
11 1
RESULT NOT UNIQUE!
14 10
2 6
10 1 1
f = (A,B,C,D) = m(2,3,8,10,12) = A C D + A B C + B CD
Groupings in Karnaugh Maps should be as large as possible, i.e., groups of EIGHT first, followed by Groups of FOUR
and finally groups of TWO if we are looking at 4-variable Karnaugh Maps. See examples below and in next slide
11
1 1
1
14 10
2 6
10 1
14 10
2 6
10 0 0
Arises for Incompletely Specified Functions where the variables in some states can take
the value to be 1 or 0 without affecting the overall objective
This may happen because sometimes, we simply do not care what value is assumed by
the function for certain combinations of variables.
or
It may happen that we know that certain combinations of the input variables will
simply never occur.
AB
00 01 11 10
CD 4 12
8
0
11 X X
14 10
2 6
10 1 1 X X
Example f = (A,B,C,D) = m(1,2,5,6,9) + d (10,11,12,13,14,15 )
01 1 1 X 1 01 1 1 X 1
3 7 15 11 3 7 15 11
11 X X 11 X X
14 10
14 10 2
2 6
6
10 1 1 X X 10 1 1 X X
f = (A, B, C, D) = A C D + B C D + A C D f = (A,B,C,D) = C D + C D
Example Design a logic circuit which produces a 1 corresponding to a BCD input equal to
or greater than 6.
00 X 1 00 X 1
1 9 1 13 9
5 13 5
01 X 1 01 X 1
3 7 15 11 3 7 15 11
11 1 X X 11 1 X X
14 10 14 10
2 6 2 6
10 1 X X 10 1 X X
f = (A, B, C, D) = A B C + A B C f = (A, B, C, D) = A + BC