0% found this document useful (0 votes)
25 views29 pages

Logic Design - Unit 3 20220803

Uploaded by

ken20050324
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views29 pages

Logic Design - Unit 3 20220803

Uploaded by

ken20050324
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 29

UNIT 3

BOOLEAN ALGEBRA (CONT’D)

SLIDE CREDIT: J.-I. GUO, H.-R. JIANG


Boolean Algebra (cont’d)
2
 Contents
 Multiplying out and factoring expressions
 Exclusive-OR and Exclusive-NOR operations

 The consensus theorem


 Summary of algebraic simplification

 Proving validity of an equation

Boolean Algebra (cont'd)


Objectives
3
 In this unit, you will…
 Continue to learn Boolean algebra

 Simplify, complement, multiply out and factor an expression


 Prove any theorem in an algebraic way or using a truth table
 Learn XOR

Boolean Algebra (cont'd)


Guidelines for Multiplying Out and Factoring
4
 Use
1. X(Y + Z) = XY + XZ
2. (X + Y)(X + Z) = X + YZ
3. (X + Y)(X' + Z) = XZ + X'Y

 For multiplying out, apply 2. and 3. before 1. to avoid unnecessary terms


 For factoring, apply 1., 2., 3. from right terms to left terms

Boolean Algebra (cont'd)


Proof?
5

1. (X + Y)(X + Z) = X + YZ
 (X + Y)(X + Z) = XX + XZ + YX + YZ
= X + XZ + XY + YZ
= X + XY + YZ = X + YZ
 Or,
X = 0, (0 + Y)(0 + Z) = YZ  0 + YZ = YZ
X = 1, (1 + Y)(1 + Z) = 11 = 1  1 + YZ = 1
2. (X + Y)(X' + Z) = XZ + X'Y
 (X + Y)(X' + Z) = XX' + XZ + YX' + YZ = 0 + XZ + X'Y + YZ
= XZ + X'Y + (X' + X)YZ
expand & simplify
= XZ + X'Y + X'YZ + XYZ
= XZ(1 + Y) + X'Y(1 + Z) = XZ + X'Y

Boolean Algebra (cont'd)


1. X(Y + Z) = XY + XZ
Multiplying Out 2.
3.
(X + Y)(X + Z) = X + YZ
(X + Y)(X' + Z) = XZ + X'Y
6
 Multiplying out: POS  SOP
 Example: (A + B + C')(A + B + D)(A + B + E)(A + D' + E)(A' + C)
2. 3.
= (A + B + C'D)(A + B + E)[AC + A'(D' + E)]
2.
= (A + B + C'DE)(AC + A'D' + A'E)
= AC + ABC + A'BD' + A'BE + A'C'DE
= AC + A'BD' + A'BE + A'C'DE By brute force
162 terms!

Boolean Algebra (cont'd)


1. X(Y + Z) = XY + XZ
Factoring 2.
3.
(X + Y)(X + Z) = X + YZ
(X + Y)(X' + Z) = XZ + X'Y
7
 Factoring: SOP  POS
 Example: AC + A'BD' + A'BE + A'C'DE
= A C + A'(BD' + BE + C'DE)
3.
= X Z + X' Y = (X + Y)(X' + Z)
= (A + BD' + BE + C'DE)(A' + C)
= [A + C'DE + B(D' + E)](A' + C)
2.
=[ X+YZ ](A' + C) = (X + Y)(X + Z)(A' + C)
= (A + C'DE + B)(A + C'DE + D' + E)(A' + C)
2.
= (A + B + C')(A + B + D)(A + B + E)(A + D' + E)(A' + C)

Boolean Algebra (cont'd)


8 XOR and XNOR

Difference and equivalence

Boolean Algebra (cont'd)


Operation – Exclusive-OR
9
 Exclusive-OR (XOR) (⊕ )
 0⊕0 = 0, 0 ⊕ 1 = 1, 1 ⊕ 0 = 1, 1 ⊕ 1 = 0
 Symbol  Truth table

X
X Y X Y
 X Y 0 0 0
check difference
Y 0 1 1
of inputs
1 0 1
1 1 0

 Boolean expression: X ⊕Y = X'Y + XY'


show the condition to
make output ==1

Boolean Algebra (cont'd)


Exclusive-OR Operations
10
 X  Y = X'Y + XY'
 Useful theorems:
 X 0 = X  X  Y = Y  X (commutative)
 X  1 = X'  (X  Y)  Z = X  (Y  Z) = X Y  Z (associative)
 X X = 0  X(Y  Z) = XY  XZ (distributive)
 X  X' = 1  (X  Y)' = X  Y' = X'  Y = X'Y' + XY

(difference)' ==
 Prove distributive law? equivalence
XY  XZ = XY(XZ)' + (XY)'XZ (by definition)
= XY(X' + Z') + (X' + Y')XZ (DeMorgan)
= XYZ' + XY'Z
= X(YZ' + Y'Z)
=X(Y Z)

Boolean Algebra (cont'd)


Operation – Exclusive-NOR
11
 Exclusive-NOR (XNOR) () check
 0  0 = 1, 0  1 = 0, 1  0 = 0, 1  1 = 1
equivalence
 Symbol  Truth table of inputs

X X Y X  Y

(X
Y)’
≡ X≡Y
Y 0 0 1 1
0 1 0 0
1 0 0 0
X 1 1 1 1
 (X Y)' = (X ≡ Y) (difference)' ==
Y equivalence

 Boolean expression: X  Y = X'Y' + XY


show the condition to
make output ==1

Boolean Algebra (cont'd)


Simplification of XOR and XNOR
12
 X⊕Y = X'Y + XY'
X  Y = X'Y' + XY
(X'Y + XY')' = X'Y' + XY
 e.g., F = (A'B  C) + (B⊕AC')
= [A'BC + (A'B)'C'] +[B'AC' + B(AC')']
= A'BC + (A + B')C' + B'AC' + B(A' + C)
= A'BC + AC' + B'C' + B'AC' + A'B + BC
= B(A'C + A' + C) + C'(A + B' + AB')
= B(A' + C) + C'(A + B') (can be further simplified!)
 e.g., F = A' ⊕ B ⊕ C
= (A'B' + AB) ⊕ C
= (A'B' + AB)C' + (A'B' + AB)'C
= A'B'C' + ABC' + A'BC + AB'C

Boolean Algebra (cont'd)


13 The Consensus Theorem

Redundancy removal

Boolean Algebra (cont'd)


The Consensus Theorem
14
 XY + X'Z + YZ = XY + X'Z (YZ is redundant)
 Proof: XY + X'Z + YZ = XY + X'Z + (X + X')YZ

= (XY + XYZ) + (X'Z + X'YZ)


= XY(1 + Z) + X'Z(1 + Y) = XY + X'Z
 How to find consensus terms?
1. Find a pair of terms, one of which contains a variable and the other contains its
complement
A'C'D + A'BD + BCD + ABC + ACD' (A ↔ A')
2. Ignore the variable and its complement; the left variables composite the consensus
term
(A'BD ) + (ABC)  BDBC = BCD (redundant term)
 e.g.,
a'b'+ ac + bc' + b'c + ab = a'b'+ ac + bc'

Boolean Algebra (cont'd)


Ordering Does Matter!
15
 e.g., A'C'D + A'BD + BCD + ABC + ACD'
 A'C'D + A'BD + BCD + ABC + ACD'

= A'C'D + A'BD + ABC + ACD'


 4 terms
 A'C'D + A'BD + BCD + ABC + ACD'

= A'C'D + BCD + ACD'


 Only 3 terms!

Boolean Algebra (cont'd)


Dual Form of the Consensus Theorem
16
 XY + X'Z + YZ = XY + X'Z  YZ is redundant
dual
 (X + Y)(X' + Z)(Y + Z) = (X + Y)(X' + Z)  (Y + Z) is redundant

 e.g.,
(a + b + c')(a + b + d')(b + c + d') = (a + b + c')(b + c + d')

(a + b + c') + (b + c + d')  a + b + b + d' = a + b + d'

Boolean Algebra (cont'd)


Redundancy Injection
17
 e.g., ABCD + B'CDE + A'B' + BCE'
 Find consensus terms

ABCD + B'CDE  ACDE


ABCD + A'B'  BCD(B') + (ACD)A'
B'CDE + BCE'  CDE(CE') + B'CD(BC)
A'B' + BCE'  A'CE'
 Add consensus term ACDE

ABCD + B'CDE + A'B' + BCE' + ACDE

= A'B' + BCE' + ACDE

Boolean Algebra (cont'd)


18 Summary of Algebraic Simplification

Simplification can reduce cost

Boolean Algebra (cont'd)


Rule A -- Combining Terms
19
 XY + XY' = X(Y + Y') = X
 e.g.,
 abc'd' + abcd' = abd' (X = abd', Y = c)

 ab'c + abc + a'bc = ab'c + abc + abc + a'bc (repeat term)

= ac + bc
 (a + bc)(d + e') + a'(b' + c')(d + e') = d + e' (why?? DeMorgan)

Boolean Algebra (cont'd)


Rule B -- Eliminating Terms
20

1. X + XY = X (keep the boss)


2. XY + X'Z + YZ = XY + X'Z (consensus)
 e.g.,
 a'b+ a'bc = a'b (X = a'b)
 a'bc' + bcd + a'bd = a'bc'+ bcd (X = c, Y = bd, Z = a'b)

Boolean Algebra (cont'd)


Rule C -- Eliminating Literals
21
 X + X'Y = (X + X')(X + Y) = X + Y
 e.g.,
 A'B + A'B'C'D' + ABCD'

= A'(B + B'C'D') + ABCD' (common term: A')


= A'(B + C'D') + ABCD' (Rule C)
= A'B + A'C'D' + ABCD'
= B(A' + ACD') + A'C'D' (common term: B)
= B(A' + CD') + A'C'D' (Rule C)
= A'B + BCD' + A'C'D' (final terms)

Boolean Algebra (cont'd)


Rule D -- Adding Redundant Terms
22

1. Y = Y + XX'
2. Y = Y(X + X')
3. XY + X'Z = XY + X'Z + YZ Add redundancy to
4. X = X + XY eliminate other terms
 e.g.,
 WX + XY + X'Z' + WY'Z'

= WX + XY + X'Z' + WY'Z' + WZ' (add WZ' by consensus thm)


= WX + XY + X'Z' + WZ' (eliminate WY'Z' by WZ')
= WX + XY + X'Z' (consensus again)

Boolean Algebra (cont'd)


Another Example
23
 A'B'C'D' + A'BC'D' + A'BD + A'BC'D + ABCD + ACD' + B'CD'
= … (Apply rules A, B, C, D)
= A'C'D' + A'BD + B'CD' + ABC

 No easy way to determine when a Boolean expression has a minimum # of terms or


literals
 Systematic way will be discussed in Unit 5 & Unit 6

Boolean Algebra (cont'd)


24 Proving Validity of an Equation

Boolean Algebra (cont'd)


How to Determine if an Equation Valid?
25

1. Construct a truth table (proof by cases)


2. Manipulate one side until it is identical to the other side
3. Reduce both sides independently to the same expression
4. Perform the same operation on both sides if the operation is reversible (Boolean
algebra ≠ ordinary algebra)
 Complement is reversible

 Multiplication/division and addition/subtraction are not reversible

 x+y = x+z does not imply y=z (e.g., x=1, y=0, z=1)
 xy = xz does not imply y=z (e.g., x=0, y=0, z=1)
 Using 2. and 3., usually…
1. Reduce both sides to (minimum) SOP or POS
2. Compare both sides
3. Try to add or delete terms by using theorems

Boolean Algebra (cont'd)


Example
26
 Show that A'BD' + BCD + ABC' + AB'D = BC'D' + AD + A'BC
 By the consensus theorem,

A'BD' + BCD + ABC' + AB'D


= A'BD' + BCD + ABC' + AB'D + A'BC + BC'D' + ABD

= AD + A'BD' + BCD + ABC' + A'BC + BC'D'

= AD + A'BC + BC'D'

Boolean Algebra (cont'd)


One More Example
27
 Show that A'BC'D + (A' + BC)(A + C'D') + BC'D + A'BC'
= ABCD + A'C'D' + ABD + ABCD' + BC'D
1. Reduce the left side:
A'BC'D + (A' + BC)(A + C'D') + BC'D + A'BC'
= (A' + BC)(A + C'D') + BC'D + A'BC'
= A'C'D' + ABC + BC'D + A'BC' (multiplying out)
= A'C'D' + ABC + BC'D (consensus)
2. Reduce the right side:
ABCD + A'C'D' + ABD + ABCD' + BC'D
= ABC + A'C'D' + ABD + BC'D
= ABC + A'C'D' + BC'D (consensus)
3. Because both sides were independently reduced to the same expression, the original
equation is valid.

Boolean Algebra (cont'd)


Q&A

28 (To be continued)

Thank you very much


for your attention !
Homework of Unit 3
29
 Problem set: 3.8, 3.10, 3.18, 3.29, 3.30, 3.36, 3.38
 Deadline: 1 week

Boolean Algebra (cont'd)

You might also like