0% found this document useful (0 votes)
20 views19 pages

Combinatorial Logic Circuits

00 01 11 10 The document discusses techniques for simplifying logic circuits using algebraic CD 0 4 12 8 simplification and Karnaugh maps. It shows how: 1) Original logic expressions can be converted to sum-of-products form and further simplified through algebraic manipulation and factoring. 2) Karnaugh maps provide a graphical way to group adjacent minterms to simplify logic expressions for up to 5 variables. Neighboring cells that differ in only one variable can be combined. 3) Both techniques aim to find simpler logic expressions and circuit implementations that are cheaper and faster than the original.

Uploaded by

rachit gupta
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)
20 views19 pages

Combinatorial Logic Circuits

00 01 11 10 The document discusses techniques for simplifying logic circuits using algebraic CD 0 4 12 8 simplification and Karnaugh maps. It shows how: 1) Original logic expressions can be converted to sum-of-products form and further simplified through algebraic manipulation and factoring. 2) Karnaugh maps provide a graphical way to group adjacent minterms to simplify logic expressions for up to 5 variables. Neighboring cells that differ in only one variable can be combined. 3) Both techniques aim to find simpler logic expressions and circuit implementations that are cheaper and faster than the original.

Uploaded by

rachit gupta
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/ 19

Simplification of Logic Circuits

Algebraic Karnaugh
Simplification Maps
A ( )
AB A C

A
A Z
B
C
( )
AC
C Z = ABC + AB A C

▪ The two circuits and their


B ABC expressions look different,
but both do the same thing.
▪ Shows the advantages of
logic minimization.
▪ Gives simpler expressions
and simpler circuits which
are cheaper and easier to
implement and work faster.
Z=A(C+B)
Make their truth tables and show that they
both really do the same thing
Important: In our subsequent discussion on logic minimization
and implementation, we will work with expressions in the Sum-
of-Products (SOP) form and the related idea of minterms.

Similar approach can be followed for expressions in the


Product-of-Sums (POS) form and the related idea of maxterms.
Z = ABC+AB A C ( ) Original Expression C

= ABC+AB ( A+C ) A Z

= ABC + AB + ABC SOP form


B

= ABC + ABC+ABC+ABC Standard SOP form


Implementation with NAND
= AC+AB SOP form gates

( )
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

f(A, B) = AB +AB = m0 + m3 Minterm Representation

f(A, B) = (A+B)(A+B) = M1M 2 Maxterm Representation


Three Variable K-Map X = A B C+ A BC+A BC+A BC
= m 0 + m1 + m 2 + m 6 Minterm
Example Representation

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

Example f = A BCD+ A BCD+ A BCD+ A BCD


= m1 + m 5 + m13 + m15 Minterm
Representation

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

Karnaugh Map (K-Map) 00


0 4 12

1
8

1
Graphical approach, based on the fact, that 1 5 13 9

neighboring cells of the K-map, horizontal or 01


vertical (BUT NOT DIAGONAL) differ in the state
(complemented/uncomplemented) of only one 3 7 15 11

variable 11

Therefore, if two neighboring cells have 1’s then the 2 6 14 10

variable which appears complemented in one and 10


uncomplemented in the other may be combined in
the SOP and the expression simplified by dropping
m =A B C D 1000
this variable from those terms (and combining them 8
into one) m =AB C D 1100
It is precisely to achieve this end that the Grey Code
12
differ only in the value of B
is used to number the rows and columns
A B C D+A B C D =A C D
Example Z = ABCD + ABCD + ABCD + ABCD + ABCD

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

Note the wrap-around We are allowed to use a


01
feature of the K-Map in minterm twice (e.g., m8)
3 7 15 11
determining neighbours if that helps reduce the
11 1 expression
2 6 14 10

10 1 1

Once all the minterms are chosen (covered by


the selected groupings) additional minterms
are not needed.
Example Z = ABCD + ABCD + ABCD + ABCD + ABCD
(same)
AB
00 01 11 10
CD 4 12
8
0

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

Minimize the SOP expression f = (A,B,C,D) =  m(0,1, 3, 5, 6, 9, 11, 12,13,15)


Minterms
AB
00 01 11 10
CD 4 12
8
0
1 1
00
1 13 9
5
1 1 1
01 1
3 7 15 11

11
1 1
1
14 10
2 6

10 1

f = (A, B, C, D) = ABCD + ABC + AB C + CD + AD + BD


Minimize the POS expression f = (A,B,C,D) =  M ( 0,3,4,5,6,7,11,13,14,15 )
Maxterms
AB
00 01 11 10
CD 4 12
8
0
0 0
00
1 13 9
Note that the approach
5
0 0 followed here is simply the
01
dual of the way the SOP
3
0
7
0
15
0
11
0 expression is minimized
11

14 10
2 6

10 0 0

f = (A, B, C, D) = (A + C + D)(B + D)(C + D)(B + C )


Karnaugh Maps with Don’t Care Conditions/States

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.

In that case, better minimization may be possible by choosing 0 or 1, i.e., whatever


gives a better results
Example f = (A,B,C,D) =  m(1,2,5,6,9) + d (10,11,12,13,14,15 )

d - don’t care – function f not specified for minterms m(10,11,12,13,14,15)

AB
00 01 11 10
CD 4 12
8
0

00 X put x’s for the


1 5 13 9 don’t care terms
01 1 1 X 1
3 7 15 11

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 )

Without using the don’t cares Using the don’t cares


AB
AB
00 01 11 10
CD 8
00 01 11 10
0 4 12 CD 4 12
8
0
00 X 00 X
1 13 9
5 1 13 9
5

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.

Without using the don’t cares Using the don’t cares


AB AB
00 01 11 10 00 01 11 10
CD 4 12
8 CD 4 12
8
0 0

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

You might also like