You are on page 1of 79

Boolean Algebra and

Digital Logic
Chapter 7

Symbols
variables x, y, z
xy
means x and y (logic used ^)
x * y means x and y (logic used ^)
x + y means x or y (logic used v)
x
means not x (logic used ~ or )
x'
means not x (logic used ~ or
)

Truth Tables
And

Or

Not or
Inverter

x*y

x+y

x'

Boolean Laws
De Morgan

x y yx

x y x y
x y xy

xy yx

Commutative

Associative
x ( y z) ( x y) z
x( yz ) ( xy) z

x( y z ) xy xz
x yz ( x y )( x z )
Distributive

Boolean Laws
Identity
x0 x

x 1 x
Complement
x x 1
xx 0
Idempotent
x x x
xx x

Absorption
x xy x

x( x y ) x

Boundedness
x 1 1
x0 0

Involution
xx

x xy
x xy

(involution )

xx y

( demorgan)

xx y

(involution)

Boolean
Reductions

x( x y )

( demorgan)

x( x y )

(involution)

x x xy

( distributi ve)

0 xy
xy

(complement )

(bounded )

x y

( demorgan)

Derived 1
x xy x y

x xy
x xy
x xy

(involution)
( demorgan)

x( x y )

( demorgan)

x( x y )

(involution )

xx x y
0 xy
xy
x y
x y

( distribut )
(complement )

(bounded )
( demorgan)
(involution )

Boolean
Reductions
Derived 2
x xy x y

Boolean Terms
Boolean variable - 1 or 0 (yes or no, true or
false)
Boolean expression Boolean variables
connected with operators
Equivalent Boolean Expressions if every
possible combination of variable values
evaluates to the same value.
Proof by Perfect Induction
Construct truth table for both expressions
If both truth tables come to the same conclusion
then the two expressions are equivalent.

Truth Functions
A truth function is a function of type
{true,false}x{true,false}x...x{true,fals
e}->{true,false}.
The number of sets in the product (of
the domain) depends on the number of
arguments that the function has. (2 n)
An example of a truth function is
f ( x, y ) x y x y

Boolean Laws

Boolean Reduction
Reduce f ( x, y ) x y x y x y

Reduce

f ( x, y ) x y x y x y

f ( x, y ) ( x y x y ) x y
f ( x, y ) x ( y y ) x y
f ( x, y ) x 1 x y
f ( x, y ) x x y
f ( x, y ) x y

(commut)
(distrib )

(complement )
(identity )

( derived1)

Reduce

f ( x, y ) x y x y x y

f ( x, y ) x y ( x y x y ) x y

(idempotent )

f ( x, y ) ( x y x y ) ( x y x y )
f ( x, y ) x ( y y ) y ( x x )

(commut)

( distrib )

f ( x, y ) x 1 y 1 (complement )
f ( x, y ) x y

(identity )

Boolean Practice
Reducef ( x, y ) xy x y x y

Truth Tables
Turn this function into a truth table

f ( x, y ) x y x y
x

x'

y'

x'y

xy'

x'y+x
y'

Given the truth table find the


function
Sum-of-products form (SOP)
a.k.a Disjunctive normal form (DNF)
f ( x, y, z ) xy xyz xy y
f ( x, y , z ) x y x y z x y y

Truth Tables
From the truth table we can see that when x is
0 and y is 1 or x is 1 and y is 0 then f(x,y) is 1

f(x,y)

Truth Tables
(x is 0 and y is 1) or (x is 1 and y is 0)
f(x,y) is 1
f ( x, y ) not x and y or x and not y

f ( x, y ) x y x y

Truth Tables
f ( x, y ) x y x y
See the pattern
Where f(x,y) is a 1 include the minterm in the
DNF or SOP
x

x'

y'

x'y

xy'

x'y+xy'

Minter
m

x'y'

x'y

x y'

xy

Truth Tables
Write the SOP Boolean equation.

f(x,y)

Truth Tables
Write the SOP Boolean equation.

f ( x, y ) x y xy
x

f(x,y)

Truth Tables
Is the following equation in its simplest form?

f ( x, y ) x y xy
x

f(x,y)

Truth Tables
Write the SOP Boolean equation from the given truth
table
f(x,y) =

f(x,y)

Truth Tables
Reduce if possible
f ( x, y ) x y x y xy
x

f(x,y)

Create an SOP from the given truth


table
x

f(x,y,z
)

Create an SOP from the given truth


table
x

f(x,y,z
)

f ( x, y, z ) x y z x yz x y z x yz x y z

Reduce SOP using Boolean


algebra
f ( x, y, z ) x y z x yz x y z x yz x y z

Reduce using boolean


algebra

f ( x, y, z ) x y z x yz x y z x yz x y z

f ( x, y, z ) x y z x yz x y z x yz x y z x y z
f ( x, y , z ) x y ( z z ) x y ( z z ) y z ( x x )
f ( x, y , z ) x y x y y z
f ( x, y , z ) x ( y y ) y z
f ( x, y, z ) x y z (Could stop here)
f ( x, y , z ) x y z
f ( x, y , z ) x ( y z )

What are the following


saying?
When x is zero or y and z are both
zero output is a one
f ( x, y , z ) x y z

When x is a 1 and y or z is a 1 the


output is zero
f ( x, y , z ) x ( y z )

Digital Logic Gates

Digital Logic
Instead of true false or 1 and 0, we
use voltage levels.
Typically we use +5v = 1 and
Ground=0.
We can also use +12v, +3v, or others
We sometimes reverse the logic so that
5v=0 and Ground=1
The basic principles wont change no
matter what system you use.

Ground
You have to have a source for
electricity AND a way for it to return.
The supply line is Power(1)
The return line is Ground(0)

Transistors function as a
switch

And Gate

Multiple Input gates (and)

"OR" and "NOT"

Transistor Logic
You dont have to memorize the
operations of the transistors and the
various gates.
It's just nice to have a basic
understanding of how these things
actually work.

Boolean to Digital
Draw the digital circuit from the
following SOP Boolean equation
f ( x, y, z ) xy z

Boolean to Digital
Draw the digital circuit from the
following SOP Boolean equation
f ( x, y, z ) xy z

Boolean to Digital
Draw the digital circuit from the
following boolean equation. Is this in
fSOP
( x, y,form?
z ) x( y z )

Boolean to Digital
Draw the digital circuit from the
following Boolean equation
f ( x, y , z ) x ( y z )

Boolean to Digital
Draw the digital circuit from the
following Boolean equation

f ( x, y , z ) x ( y z )

Boolean to Digital
Draw the digital circuit from the
following Boolean equation

f ( x, y , z ) x ( y z )

Draw the following circuits


f ( x, y ) xy xy
f ( x, y ) x y x y x y
f ( x, y , z ) x y z x y z x y z x y z
f ( x, y , z ) x ( y z ) y z

Create a truth table from a


circuit.

Create a truth table from a


circuit.

P1
P2
P3
P4
P5
P6

=
=
=
=
=
=

Create a truth table from a


circuit.

P1
P2
P3
P4
P5
P6

=
=
=
=
=
=

A'
B'
A'B
B'+C
(A'B)'
(A'B)'(B'+C)

Create a truth table from a


circuit.
P1 = A'
P
1

P
2

P3

P4

A B C A'

B'

A'
B

B'+ (A'B
C
)'

000
001
010
011
100
101

P5

P6
(A'B)'(B'
+C)

P2 = B'
P3 = A'B
P4 = B'+C
P5 = (A'B)'
P6 =
(A'B)'(B'+C)

Create a truth table from a


circuit.
P1 = A'
P
1

P
2

P3

P4

P5

P6

A B C A'

B'

A'
B

B'+ (A'B
C
)'

000 1

001 1

010 1

011 1

100 0

101 0

110 0

(A'B)'(B'
+C)

P2 = B'
P3 = A'B
P4 = B'+C
P5 = (A'B)'
P6 =
(A'B)'(B'+C)

Karnaugh Map Reduction


Graphical way to reduce Boolean
equations
Create truth table
Determine size of Karnaugh map
Draw Karnaugh map
Fill in ones and zeros from truth table
Circle groupings
Determine reduced equation

Size of Map
Depends on number of inputs
2 input = 2x2 Karnaugh map
3 input = 2x4 Karnaugh map
4 input = 4x4 Karnaugh map

2x2 Karnaugh map


y
x

2x4 Karnaugh map


yz

yz

yz

yz

4x4 Karnaugh map


yz

yz yz

yz

wx

wx
wx
wx
z

z
x

x
w

Fill in a 2x2 Karnaugh map


Each row in truth table corresponds to
exactly one box in the Karnaugh map
Fill in the result of each row into the
appropriate box.
The a,b,c, and d are only included for clarity,
y
y
you shouldnt put them in.
x

f(x,y)

0(a)

1(b)

1(c)

1(d)

Fill in a 2x4 Karnaugh Map


x

f(x,y,
z)

1(a)

1(b)

1(c)

1(d)

1(e)

0(f)

1(g)

0(h)

yz

yz

yz

yz

(h)

(g)

(e)

(f)

(d)

(c)

(a)

(b)

yz

yz

yz

yz

Fill in a 4x4 Karnaugh map


w

f(x,y,
z)

1(a)

1(b)

1(c)

1(d)

1(e)

1(f)

0(g)

0(h)

1(i)

0(j)

1(j)

1(l)

0(m)

0(n)

1(o)

1(p)

yz yz

yz

wx p

wx l

wx d
wx h

yz

yz yz

yz

wx 1

wx 1

wx 1
wx 0

yz

Circle Groups of 1s
All 1s must be
circled
Each circled
group will be a
product
The more ones
circled the
more reduced
the product
You want the
fewest number
of big groups

1
1

Karnaugh Reduction
yz yz

yz

wx 0

wx 0

wx 0
wx 0

yz

f ( w, x, y, z ) wxyz w x y z
Can you reduce this?

All 1s must be
circled
Each circled
group will be a
product
The more ones
circled the
more reduced
the product
You want the
fewest number
of big groups

Karnaugh Reduction
yz yz

yz

wx 0

wx 0

wx 0
wx 0

yz

f ( w, x, y, z ) wy z

All 1s must be
circled
Each circled
group will be a
product
The more ones
circled the
more reduced
the product
You want the
fewest number
of big groups

Karnaugh Reduction
yz yz

yz

wx 0

wx 0

wx 1
wx 0

yz

All 1s must be circled


Each circled group
will be a product
The more ones
circled the more
reduced the product
You want the fewest
number of big groups

f ( w, x, y, z ) w x yz w x y z w x y z w x yz
Can you reduce this?

Karnaugh Reduction
yz yz

yz

wx 0

wx 0

wx 1
wx 0

yz

f ( w, x, y, z ) w x

All 1s must be
circled
Each circled
group will be a
product
The more ones
circled the more
reduced the
product
You want the
fewest number of
big groups

Karnaugh Reduction
w

f(x,y,
z)

1(a)

1(b)

1(c)

1(d)

1(e)

1(f)

0(g)

0(h)

1(i)

0(j)

1(j)

1(l)

0(m)

0(n)

1(o)

1(p)

yz yz

yz

wx 1

wx 1

wx 1
wx 0

yz

Karnaugh Reduction
w

f(x,y,
z)

1(a)

1(b)

1(c)

1(d)

1(e)

0(f)

0(g)

0(h)

1(i)

0(j)

1(j)

1(l)

0(m)

0(n)

1(o)

1(p)

yz yz

yz

wx 1

wx 1

wx 1
wx 0

yz

f ( w, x, y, z ) ?

Karnaugh Reduction
w

f(x,y,
z)

1(a)

1(b)

1(c)

1(d)

1(e)

0(f)

0(g)

0(h)

1(i)

0(j)

1(j)

1(l)

0(m)

0(n)

1(o)

1(p)

yz yz

yz

wx 1

wx 1

wx 1
wx 0

yz

f ( w, x, y, z ) wy x z w x w y

You can go off the edges


yz yz

yz

wx 0

wx 0

wx 1
wx 1

0
0

yz

yz yz

yz

wx 1

wx 0

wx 0
wx 1

f ( w, x, y, z ) wz
yz yz

yz

wx 1

wx 0

wx 0
wx 1

yz

f ( w, x, y , z ) xz

yz

f ( w, x, y, z ) x

Find the reduced equation


x

f(x,y)

f(x,y,
z)

Car Warning
Warning beep prevents
Keys left in ignition
Lights left on

Car Warning
Three inputs
Lights(l)
lights on=1
lights off=0

Key(k)
key in=1
key out=0

door(d)
door open=1
door closed=0

Create a truth table


l

Create a truth table


l

Create a Karnaugh map


l(x)

k(y)

d(z)

yz

yz

yz

yz

(h)

(g)

(e)

(f)

(d)

(c)

(a)

(b)

yz

yz

yz

yz

Create a Karnaugh map


l(x)

k(y)

d(z)

yz

yz

yz

yz

(h)

(g)

(e)

(f)

(d)

(c)

(a)

(b)

yz

yz

yz

yz

Circle Groups
l(x)

k(y)

d(z)

yz

yz

yz

yz

(h)

(g)

(e)

(f)

(d)

(c)

(a)

(b)

yz

yz

yz

yz

Circle Groups
l(x)

k(y)

d(z)

yz

yz

yz

yz

(h)

(g)

(e)

(f)

(d)

(c)

(a)

(b)

yz

yz

yz

yz

Determine the Boolean


function
l(x)

k(y
)

d(z
)

f(l,k,d
)

kd

kd

kd

kd

f (l , k , d ) ?

Determine the Boolean


function
l(x)

k(y
)

d(z
)

f(l,k,d
)

kd

kd

kd

kd

f (l , k , d ) kd l k

Draw the circuit


f (l , k , d ) kd l k

Design a Circuit
A digital circuit has a four bit
numerical input (0-15)
Design a circuit which will detect the
numbers 1-9 inclusive

You might also like