0% found this document useful (0 votes)
1 views

Ch02-B.ppt

This document covers Boolean Algebra and its application in logic circuit design, detailing concepts such as digital circuits, truth tables, and Boolean functions. It discusses the axioms and postulates of Boolean Algebra, including operator precedence, duality, and various theorems. Additionally, it explains canonical forms, minterms, and maxterms, providing a comprehensive overview of the foundational principles necessary for understanding and designing digital logic circuits.

Uploaded by

mfiuk9148
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)
1 views

Ch02-B.ppt

This document covers Boolean Algebra and its application in logic circuit design, detailing concepts such as digital circuits, truth tables, and Boolean functions. It discusses the axioms and postulates of Boolean Algebra, including operator precedence, duality, and various theorems. Additionally, it explains canonical forms, minterms, and maxterms, providing a comprehensive overview of the foundational principles necessary for understanding and designing digital logic circuits.

Uploaded by

mfiuk9148
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/ 51

Logic Design

Ch 2 Part B
Boolean Algebra and Logic Gates
2
Contents

▪ Digital circuits
▪ Boolean Algebra
▪ Two-Valued Boolean Algebra
▪ Boolean Algebra Postulates
▪ Precedence of Operators
▪ Truth Table & Proofs
▪ Duality
3

▪ Basic Theorems of Boolean Algebra


▪ Boolean Functions
▪ Complement of Functions
▪ Standard Forms
▪ Minterm & Maxterm
▪ Canonical Forms
▪ Conversion of Canonical Forms
▪ Binary Functions
4 Introduction
Boolean algebra forms the basis of logic circuit design.
Consider very simple but common example: if (A is true)
and (B is false) then print “the solution is found”. In this
case, two Boolean expressions (A is true) and (B is false)
are related by a connective ‘and’. How do we define
these? This and related things are discussed in this
chapter.
In typical circuit design, there are many conditions to be
taken care of (for example, when the ‘second counter’ =
60, the ‘minute counter’ is incremented and ‘second
counter’ is made 0. Thus it is quite important to
understand Boolean algebra. In subsequent chapters, we
are going to further study how to minimize the circuit
using laws of Boolean algebra (that is very interesting…)
5 Boolean Algebra
What is an Algebra? (e.g. algebra of integers)
set of elements (e.g. 0,1,2,..)
set of operations (e.g. +, -, *,..)
postulates/axioms (e.g. 0+x=x,..)

▪ Boolean Algebra named after George Boole who


used it to study human logical reasoning – calculus of
proposition.
▪ Events : true or false
▪ Connectives : a OR b; a AND b, NOT a
▪ Example: Either “it has rained” OR “someone
splashed water”, “must be tall” AND “good vision”.
6
Boolean Algebra
7 Two-valued Boolean Algebra
▪ Set of Elements: {0,1} Sometimes denoted by ’,
for example a’
▪ Set of Operations: { ., + , ¬ }

x x
x.y x+y x x'
y y

Signals: High = 5V = 1; Low = 0V = 0


8 Boolean Algebra Postulates
A Boolean algebra consists of a set of elements B,
with two binary operations {+} and {.} and a unary
operation {'}, such that the following axioms hold:
▪ The set B contains at least two distinct elements x
and y.
▪ Closure: For every x, y in B,
❖ x + y is in B
❖ x . y is in B

▪ Commutative laws: For every x, y in B,


❖ x+y=y+x
❖ x.y=y.x
9 Boolean Algebra Postulates
▪ Associative laws: For every x, y, z in B,
❖ (x + y) + z = x + (y + z) = x + y + z
❖ (x . y) . z = (x . y) . z = x . y . z

▪ Identities (0 and 1):


❖ 0+x=x+0=x for every x in B
❖ 1.x=x.1=x for every x in B

▪ Distributive laws: For every x, y, z in B,


❖ x . (y + z) = (x . y) + (x . z)
❖ x + (y . z) = (x + y) . (x + z)
10 Boolean Algebra Postulates
▪ Complement: For every x in B, there exists an
element x' in B such that
❖ x + x' = 1
❖ x . x' = 0

The set B = {0, 1} and the logical operations OR,


AND and NOT satisfy all the axioms of a Boolean
algebra.
A Boolean function maps some inputs over {0,1}
into {0,1}
A Boolean expression is an algebraic statement
containing Boolean variables and operators.
11 Precedence of Operators

▪ To lessen the brackets used in writing boolean


expressions, operator precedence can be used.
▪ Precedence (highest to lowest): ' . +
▪ Examples:
a . b + c = (a . b) + c
b' + c = (b') + c
a + b' . c = a + ((b') . c)
12 Precedence of Operators

▪ Use brackets to overwrite precedence.


▪ Examples:
a . (b + c)
(a + b)' . c
13 Truth Table
▪ Provides a listing of every possible combination
of inputs and its corresponding outputs.

▪ Example (2 inputs, 2 outputs):


14 Truth Table

▪ Example (3 inputs, 2 outputs):


15
Proof using Truth Table
▪ Can use truth table to prove by perfect induction.
▪ Prove that: x . (y + z) = (x . y) + (x . z)
(i) Construct truth table for LHS & RHS of above equality.

(ii) Check that LHS = RHS


Postulate is SATISFIED because output column 2 & 5 (for LHS
& RHS expressions) are equal for all cases.
16
Solving it yourself (Exercise 3.1)
Q. Use truth table to prove the following.
(a) A’.B’ + A.B’ + A.B = A + B’
(b) A.B.C + A’.B.C + A’.B.C’ = B.C + A’.B
17 Duality
▪ Duality Principle – every valid Boolean
expression (equality) remains valid if the
operators and identity elements are
interchanged, as follows:
+↔.
1↔0
▪ Example: Given the expression
a + (b.c) = (a+b).(a+c)
then its dual expression is
a . (b+c) = (a.b) + (a.c)
18 Duality

▪ Duality gives free theorems – “two for the price


of one”. You prove one theorem and the other
comes for free!
▪ If (x+y+z)' = x'.y.'z' is valid, then its dual is also
valid:
(x.y.z)' = x'+y'+z’
▪ If x + 1 = 1 is valid, then its dual is also valid:
x.0=0
19
Basic Theorems of Boolean Algebra

▪ Apart from the axioms/postulates, there are other


useful theorems.
1. Idempotency.
(a) x + x = x (b) x . x = x
Proof of (a):
x+x = (x + x).1 (identity)
= (x + x).(x + x') (complementarity)
= x + x.x' (distributivity)
=x+0 (complementarity)
=x (identity)
20
Basic Theorems of Boolean Algebra

2. Null elements for + and . operators.


(a) x + 1 = 1 (b) x . 0 = 0
3. Involution. (x')' = x
4. Absorption.
(a) x + x.y = x (b) x.(x + y) = x
5. Absorption (variant).
(a) x + x'.y = x+y (b) x.(x' + y) = x.y
21
Basic Theorems of Boolean
Algebra
6. DeMorgan.
(a) (x + y)' = x'.y'
(b) (x.y)' = x' + y'

7. Consensus/redundancy theroem.
(a) x.y + x'.z + y.z = x.y + x'.z
(b) (x+y).(x'+z).(y+z) = (x+y).(x'+z)
22
Basic Theorems of Boolean
Algebra
▪ Theorems can be proved using the truth table
method. (Exercise: Prove De-Morgan’s theorem
using the truth table.)
▪ They can also be proved by algebraic manipulation
using axioms/postulates or other basic theorems.
23
Basic Theorems of Boolean
Algebra
▪ Theorem 4a (absorption) can be proved by:
x + x.y = x.1 + x.y (identity)
= x.(1 + y) (distributivity)
= x.(y + 1) (commutativity)
= x.1 (Theorem 2a)
=x (identity)
▪ By duality, theorem 4b:
x.(x+y) = x
▪ Try prove this by algebraic manipulation.
24 Simplification of Boolean
Algebra
(x + y)(x + y') = x + yy' = x
25 Boolean Functions

▪ Boolean function is an expression formed with


binary variables, the two binary operators, OR
and AND, and the unary operator, NOT,
parenthesis and the equal sign.
▪ Its result is also a binary value.
▪ We usually use . for AND, + for OR, and ' or ¬ for
NOT. Sometimes, we may omit the . if there is no
ambiguity.
26 Boolean Functions

▪ Examples:
F1= xyz'
F2= x + y'z
F3=(x'y'z)+(x'yz)+(xy')
F4=xy'+x'z

From the truth table, F3=F4.


Can you also prove by algebraic manipulation that F3=F4?
27 Complement of Functions

▪ Given a function, F, the complement of this


function, F', is obtained by interchanging 1 with 0
in the function’s output values.

Example: F1 = xyz'
Complement:
F1' = (xyz')'
= x' + y' + (z')' DeMorgan
= x' + y' + z Involution
28 Complement of Functions
▪ More general DeMorgan’s theorems useful for
obtaining complement functions:
(A + B + C + ... + Z)' = A' . B' . C' … . Z'
(A . B . C ... . Z)' = A' + B' + C' + … + Z'
29 Standard Forms
▪ Certain types of Boolean expressions lead to
gating networks which are desirable from
implementation viewpoint.
▪ Two Standard Forms:
Sum-of-Products and Product-of-Sums
▪ Literals: a variable on its own or in its
complemented form. Examples: x, x' , y, y'
▪ Product Term: a single literal or a logical product
(AND) of several literals.
Examples: x, xyz', A'B, AB
30 Standard Forms

▪ Sum Term: a single literal or a logical sum (OR) of


several literals.
Examples: x, x+y+z', A'+B, A+B
▪ Sum-of-Products (SOP) Expression: a product
term or a logical sum (OR) of several product
terms.
Examples: x, x+yz', xy'+x'yz, AB+A'B'
▪ Product-of-Sums (POS) Expression: a sum term or
a logical product (AND) of several sum terms.
Exampes: x, x(y+z'), (x+y')(x'+y+z), (A+B)(A'+B')
31 Standard Forms

▪ Every boolean expression can either be


expressed as sum-of-products or product-of-sums
expression.
Examples:
SOP: x′y + xy′ + xyz
POS: (x + y′)(x′ + y)(x′ + z′)
both: x′ + y + z or xyz′
neither: x(w′ + yz) or z′ + wx′y + v(xz + w′)
32 Minterm & Maxterm
▪ Consider two binary variables x, y.
▪ Each variable may appear as itself or in
complemented form as literals (i.e. x, x' & y, y' )
▪ For two variables, there are four possible
combinations with the AND operator, namely:
x'y', x'y, xy', xy
▪ These product terms are called the minterms.
▪ A minterm of n variables is the product of n
literals from the different variables.
33 Minterm & Maxterm

▪ In general, n variables can give 2n minterms.


▪ In a similar fashion, a maxterm of n variables is
the sum of n literals from the different variables.
Examples: x'+y', x'+y, x+y',x+y
▪ In general, n variables can give 2n maxterms.
34 Minterm & Maxterm

▪ The minterms and maxterms of 2 variables are


denoted by m0 to m3 and M0 to M3 respectively:

Each minterm is the complement of the corresponding


maxterm:
Example: m2 = xy'
m2' = (xy')' = x' + (y')' = x'+y = M2
35
Canonical Form: Sum of Minterms

▪ What is a canonical/normal form?


❖ A unique form for representing something.

▪ Minterms are product terms.


❖ Can express Boolean functions using Sum-of-Minterms
form.
36
Canonical Form: Sum of Minterms

a) Obtain the truth table. Example:


37
Canonical Form: Sum of Minterms

b) Obtain Sum-of-Minterms by gathering/summing the


minterms of the function (where result is a 1)
F1 = xyz' = Σ(m6)
F2 = x'y'z+xy'z'+xy'z+xyz'+xyz = Σ(m1,m4,m5,m6,m7)
F3 = x'y'z+x'yz+xy'z'
+xy'z
= Σ(m1,m3,m4,m5)
38
Canonical Form: Product of Maxterms

▪ Maxterms are sum terms.


▪ For Boolean functions, the maxterms of a
function are the terms for which the result is 0.
▪ Boolean functions can be expressed as
Products-of-Maxterms.
39
Canonical Form: Product of Maxterms

E.g.: F2 = Π(M0,M2,M3) = (x+y+z)(x+y'+z)(x+y'+z')


F3 = Π(M0,M2,M6,M7)
= (x+y+z)(x+y'+z)(x'+y'+z)(x'+y'+z')
40
Canonical Form: Product of Maxterms

▪ Why is this so? Take F2 as an example.


F2 = Σ(m1,m4,m5,m6,m7)
▪ The complement function of F2 is:
F2' = Σ(m0,m2,m3)
= m0 + m2 + m3

(Complement functions’ minterms


are the opposite of their original
functions, i.e. when
original function = 0)
41
Canonical Form: Product of Maxterms

From previous slide, F2' = m0 + m2 + m3


Therefore:
F2 = (m0 + m2 + m3 )'
= m0' . m2' . m3' DeMorgan
= M0 . M2 . M3 mx' = Mx
= Π(M0,M2,M3)
▪ Every Boolean function can be expressed as
either Sum-of-Minterms or Product-of-Maxterms.
42 Solving it yourself (Exercise 3.2)
1. A Boolean function of 5 variables can have up to ___
minterms.
2. Given a Boolean function F (A,B,C) = Σ m(0, 5, 7).
Which of the following is correct?
a) F' (A,B,C) = Σm(0,5,7) b) F (A,B,C) = ΠM(1,2,3,4,6)
c) F (A,B,C) = ΠM(0,5,7) d) F' (A,B,C) = Σm(1,2,3)
e) None above
3. Given a Boolean function F (x,y,z) = y'.(x + z') + x'.z.
Which of the following is correct?
a) F (x,y,z) = Σm(0,1) b) F (x,y,z) = Σm(0,1,4,5)
c) F (x,y,z) = Σm(0,1,2,3,4) d) F (x,y,z) = Σm(0,1,3,4,5)
e) F (x,y,z) = Σm(1,2,3,4,5)
43 Solving it yourself (Exercise 3.2)
4. Given a Boolean function with 6 variables a, b, c, d, e, f.
What is maxterm M60?
a) a'.b'.c'.d'.e.f b) a'+b'+c'+d' c) a'+b'+c'+d'+e+f
d) a.b.c.d.e'.f' e) a+b+c+d+e'+f'
5. Given a Boolean function F (a,b,c) = S m(0, 2, 5, 6, 7).
If a=0, b=c=1, what is the value of F?
a) 0 b) 1 c) b.c d) a' e) Unknown
6. Which of the following is NOT a minterm of the Boolean
function: F (w,x,y,z) = w.x.z' + x.y'.z + x.z
a) w.x.y.z' b) w'.x.y'.z c) w.x.y.z
d) w.x.y'.z' e) w.x'.y.z
44 Solving it yourself (Exercise 3.2)
7. Identify the following function F(x,y,z).
a) x.y'.z' + x'.y.z + x.z'
b) x'.y.z + x.y' + x'.y'.z
c) x.y'.z + x'.y'.z + x.y
d) x.y.z + x'.y'.z' + x.y'
e) None above
45
Conversion of Canonical Forms

▪ Sum-of-Minterms ⇒ Product-of-Maxterms
❖ Rewrite minterm shorthand using maxterm shorthand.
❖ Replace minterm indices with indices not already used.

Eg: F1(A,B,C) = ∑m(3,4,5,6,7) = ∏M(0,1,2)

▪ Product-of-Maxterms ⇒ Sum-of-Minterms
❖ Rewrite maxterm shorthand using minterm shorthand.
❖ Replace maxterm indices with indices not already used.

Eg: F2(A,B,C) = ∏M(0,3,5,6) = ∑m(1,2,4,7)


46
Conversion of Canonical Forms

▪ Sum-of-Minterms of F ⇒ Sum-of-Minterms of F'


❖ In minterm shorthand form, list the indices not already
used in F.
Eg: F1(A,B,C) = ∑m(3,4,5,6,7)
F1'(A,B,C) = ∑m(0,1,2)

▪ Product-of-Maxterms of F ⇒ Prod-of-Maxterms of F'


❖ In maxterm shorthand form, list the indices not already
used in F.
Eg: F1(A,B,C) = ∏M(0,1,2)
F1'(A,B,C) = ∏M(3,4,5,6,7)
47
Conversion of Canonical Forms

▪ Sum-of-Minterms of F ⇒ Product-of-Maxterms of F'


❖ Rewrite in maxterm shorthand form, using the same indices
as in F.
Eg: F1(A,B,C) = ∑m(3,4,5,6,7)
F1'(A,B,C) = ∏M(3,4,5,6,7)

▪ Product-of-Maxterms of F ⇒ Sum-of-Minterms of F'


❖ Rewrite in minterm shorthand form, using the same indices
as in F.
Eg: F1(A,B,C) = ∏M(0,1,2)
F1'(A,B,C) = ∑m(0,1,2)
48 Solving it yourself (Exercise 3.3)
Q. Consider the function
f(A,B,Y,Z) = Σ m(0, 2, 5, 6, 8, 11, 15).
a) Write this as a Boolean expression in canonical SOP
form.
b) Rewrite the expression in canonical POS form.
c) Write the complement of f in “little m” notation and in
canonical SOP form.
d) Write the complement of f in “big M” notation and in
canonical POS form.
49 Binary Functions

▪ Given n variables, there are 2n possible minterms.


▪ As each function can be expressed as
sum-of-minterms, there could be 22n different
functions.
▪ In the case of two variables, there are 22 =4
possible minterms; and 24=16 different possible
binary functions.
▪ The 16 possible binary functions are shown in the
next slide.
50 Binary Functions
51

End of segment

You might also like