Introduction To Computer Systems: Lecture 5.1: Logic Circuits & Simplification
Introduction To Computer Systems: Lecture 5.1: Logic Circuits & Simplification
Computer Systems
LECTURE 5.1: LOGIC CIRCUITS & SIMPLIFICATION
Objectives
After completing this module you will be
able to:
Understand what a logic circuit is.
Understand how to simplify the digital logic
circuits
Understand how to simplify the circuits
using Boolean Algebra
Understand how to simplify the circuits
using K-Map
Semiconductors to
Computers
Increasing level of complexity:
Transistors built from semiconductors
Logic gates built from transistors
Logic functions built from gates
Flip-flops built from logic gates
Counters and sequencers from flip-flops
Microprocessors from sequencers
Computers from microprocessors
3
Logic Gates
Logic Gates are the building blocks of Digital
Circuits
Logic Gate is an electronic circuit having one
or more than one input and only one output
The relationship between the input and the
output is based on a certain logic
Inputs and Outputs can be represented as binary
variables (logic variables, Boolean variables)
Logic Gates
Used algebraic or tabular forms to describe the
manipulation and processing of binary information.
Important advantages for two-valued Digital
Circuit:
Mathematical Model – Boolean Algebra
7
Simplification of the
Digital Logic Circuits
Digital Logic Circuits
Simplification of the Digital Logic
Circuits
16
Description of K-maps and
Terminology
A Kmap is a matrix consisting of rows and
columns that represent the output values of a
Boolean function.
The output values placed in each cell are derived
from the minterms of a Boolean function.
A minterm is a product term that contains all of the
function’s variables exactly once, either
complemented or not complemented.
17
Description of Kmaps and
Terminology
For example, the minterms for a function having the
inputs x and y are:
Consider the Boolean function,
Its minterms are:
18
Description of Kmaps and
Terminology
Similarly, a function
having three inputs, has
the minterms that are
shown in this diagram.
23 =8 miniterms
19
Description of Kmaps and
Terminology
A Kmap has a cell for each
minterm.
This means that it has a cell for
each line for the truth table of a
function.
The truth table for the function
F(x,y) = xy is shown at the right
along with its corresponding
Kmap.
20
Description of Kmaps and
Terminology
As another example, we give
the truth table and KMap for
the function, F(x,y) = x + y at
the right.
This function is equivalent to
the OR of all of the minterms
that have a value of 1. Thus:
21
Kmap Simplification for Two
Variables
Of course, the minterm function that we derived from
our Kmap was not in simplest terms.
That’s what we started with in this example.
23
Example -1
Consider the following map. Using algebraic simplification,
Z = AB + AB
Z = A(B+ B)
Z=A
B becomes redundant
Referring to the map, the two adjacent 1's
are grouped together. Through inspection
it can be seen that variable B has its true
and false form within the group. This
eliminates variable B leaving only
The function plotted is: variable A which only has its true form.
Z = f(A,B) = AB + AB The minimized answer therefore is Z = A.
24
Kmap Simplification for Two
Variables
The rules of K-map simplification are:
Groupings can contain only 1s; no 0s.
Groups can be formed only at right angles; diagonal
groups are not allowed.
The number of 1s in a group must be a power of 2 – even
if it contains a single 1.
The groups must be made as large as possible.
Groups can overlap and wrap around the sides of the
Kmap.
25
Karnaugh Maps – Rules
26
Karnaugh Maps – Rules
Groups Powers of 2
28
Karnaugh Maps – Rules
Groups Power of 2
29
Karnaugh Maps – Rules
30
Karnaugh Maps – Rules
Groups may
overlap
31
Karnaugh Maps – Rules
33
Example-2
Consider the following map. Pairs of 1's are grouped as shown above, and the
simplified answer is obtained by using the following
steps:
◦ Note that two groups can be formed for the example given above, bearing
in mind that the largest rectangular clusters that can be made consist of
two 1s.
◦ Notice that a 1 can belong to more than one group.
◦ The first group labelled I, consists of two 1s which correspond to A = 0, B =
0 and A = 1, B = 0.
◦ Put in another way, all squares in this example that correspond to the area
of the map where B = 0 contains 1s, independent of the value of A.
◦ So when B = 0 the output is 1.
◦ The expression of the output will contain the term B
34
Kmap Simplification for Three
Variables
A Kmap for three variables is constructed as shown in
the diagram below.
We have placed each minterm in the cell that will
hold its value.
Notice that the values for the yz combination at the top
of the matrix form a pattern that is not a normal binary
sequence.
35
Kmap Simplification for
Three Variables
Thus, the first row of the Kmap contains all minterms
where x has a value of zero.
The first column contains all minterms where y and z
both have a value of zero.
36
Kmap Simplification for
Three Variables
Consider the function:
37
Kmap Simplification for Three
Variables
This grouping tells us that changes in the variables x and
y have no influence upon the value of the function: They
are irrelevant.
This means that the function,
reduces to F(x) = z.
You could verify
this reduction
with identities or
a truth table.
38
Kmap Simplification for
Three Variables
Now for a more complicated Kmap. Consider the
function:
39
Kmap Simplification for
Three Variables
In this Kmap, we see an example of a group that wraps
around the sides of a Kmap.
This group tells us that the values of x and y are not
relevant to the term of the function that is encompassed
by the group.
What does this tell us about this term of the function?
40
Kmap Simplification for
Three Variables
The green group in the top row tells us that only the
value of x is significant in that group.
We see that it is complemented in that row, so the other
term of the reduced function is .
Our reduced function is: F(x,y,z) = X + Z
Recall that we
had six minterms
in our original
function!
41
Kmap Simplification for Four
Variables
Our model can be extended to accommodate the 16
minterms that are produced by a four-input function.
This is the format for a 16-minterm Kmap.
42
Kmap Simplification for Four
Variables
We have populated the Kmap shown below with the
nonzero minterms from the function:
Recall that
groups can
overlap.
43
Kmap Simplification for Four
Variables
Our three groups consist of:
A purple group entirely within the Kmap at the right.
A pink group that wraps the top and bottom.
A green group that spans the corners.
Thus we have three terms in our final function:
44
Kmap Simplification for Four
Variables
It is possible to have a choice as to how to pick
groups within a Kmap, while keeping the groups as
large as possible.
The (different) functions that result from the
groupings below are logically equivalent.
45
Don’t Care Conditions
In a Kmap, a don’t care condition is identified by an X
in the cell of the minterm(s) for the don’t care inputs,
as shown below.
In performing the simplification, we are free to include
or ignore the X’s when creating our groups.
46
Don’t Care Conditions
In one grouping in the Kmap below, we have the
function:
47
Don’t Care Conditions
A different grouping gives us the function:
48
Don’t Care Conditions
The truth table of:
49
Summery
Recapping the rules of Kmap simplification:
Groupings can contain only 1s; no 0s.
Groups can be formed only at right angles; diagonal groups
are not allowed.
The number of 1s in a group must be a power of 2 – even if
it contains a single 1.
The groups must be made as large as possible.
Groups can overlap and wrap around the sides of the Kmap.
Use don’t care conditions when you can.
50
Thank You
51