2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process...

65
2 - 1 Chapter 2 Chapter 2 Combinational Systems Combinational Systems

Transcript of 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process...

Page 1: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 1

Chapter 2Chapter 2

Combinational SystemsCombinational Systems

Page 2: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 2

Chapter 2 Combinational Systems

2.1 The Design Process for Combinational Systems

Continuing Example(CE)

CE1. A system with four inputs, A, B, C, and D, and one output, Z, such that Z = 1 iff three of the inputs are 1.

CE2. A single light (that can be on or off) that can be controlled by any one of three switches. One switch is the master on/off switch. If it is down, the lights are off. When the master switch is up, a change in the position of one of the other switches (from up to down or from down to up) will cause the light to change state.

CE3. A system to do 1 bit of binary addition. It has three inputs (the 2 bits to be added plus the carry from the next lower order bit) and produces two outputs: a sum bit and a carry to the next higher order position.

Page 3: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 3

2.1 The Design Process for Combinational Systems

Chapter 2 Combinational Systems

CE4. A display driver; a system that has as its input the code for a decimal digit and produces as its output the signals to drive a seven-segment display, such as those on most digital watches and numeric displays (more later).

CE5. A system with nine inputs, representing two 4-bit binary numbers and a ca-rry input, and one 5-bit output, representing the sum. (Each input number can range from 0 to 15; the output can range from 0. to 31.)

Continuing Example(CE)

Page 4: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 4

2.1 The Design Process for Combinational Systems

Chapter 2 Combinational Systems

• A two-input truth table

Continuing Example(CE)

Step 1 : Represent each of the inputs and outputs in binary.

Step 2 : Formalize the design specification either in the form of a truth table or of an algebraic expression.

Step 1.5 : If necessary, break the problem into smaller subproblems.

Step 3 : Simplify the description.

Step 4 : Implement the system with the available components, subject to the design objectives and constraints.

AB Y

• OR gate symbol

A B Y

0 0 0

0 1 1

1 0 1

1 1 1

P. 36, 38

Page 5: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 5

Chapter 2 Combinational Systems

Don’t Care Conditions

2.1 The Design Process for Combinational Systems

• A truth table with a don’t care. • Acceptable truth tables.

System one

System Two

J

K

A

B

C

• Design example with don’t cares.

a b f

0 0 0

0 1 1

1 0 1

1 1 X

a b f 1 f 2

0 0 0 0

0 1 1 1

1 0 1 1

1 1 0 1

P. 38- 39

Page 6: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 6

Chapter 2 Combinational Systems

2.1 The Design Process for Combinational Systems

The Development of Truth Tables

• Truth table for CE1. A B C D Z1 Z2 Z3

0 0 0 0 0 0 0

0 0 0 1 0 0 0

0 0 1 0 0 0 0

0 0 1 1 0 0 0

0 1 0 0 0 0 0

0 1 0 1 0 0 0

0 1 1 0 0 0 0

0 1 1 1 1 1 1

1 0 0 0 0 0 0

1 0 0 1 0 0 0

1 0 1 0 0 0 0

1 0 1 1 1 1 1

1 1 0 0 0 0 0

1 1 0 1 1 1 1

1 1 1 0 1 1 1

1 1 1 1 0 1 X

P. 40

Page 7: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 7

Chapter 2 Combinational Systems

2.1 The Design Process for Combinational Systems

The Development of Truth Tables

(a) (b)

• Truth table for CE2.

a b c f

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 0

a b c f

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 1

1 0 1 0

1 1 0 0

1 1 1 1

P. 40

Page 8: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 8

Chapter 2 Combinational Systems

2.1 The Design Process for Combinational Systems

Display Driver

ab

cd

ef

g

W

X

Y

Z

a

b

c

d

e

f

g

• A seven-segment display.

The Development of Truth Tables

P. 41

Page 9: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 9

Chapter 2 Combinational Systems

2.1 The Design Process for Combinational Systems

The Development of Truth Tables

• A truth table for the seven-segment display driver.

Digit

W X Y Z a b c d e f g

0 0 0 0 0 1 1 1 1 1 1 0

1 0 0 0 1 0 1 1 0 0 0 0

2 0 0 1 0 1 1 0 1 1 0 1

3 0 0 1 1 1 1 1 1 0 0 1

4 0 1 0 0 0 1 1 0 0 1 1

5 0 1 0 1 1 0 1 1 0 1 1

6 0 1 1 0 X 0 1 1 1 1 1

7 0 1 1 1 1 1 1 0 0 X 0

8 1 0 0 0 1 1 1 1 1 1 1

9 1 0 0 1 1 1 1 X 0 1 1

- 1 0 1 0 X X X X X X X

- 1 0 1 1 X X X X X X X

- 1 1 0 0 X X X X X X X

- 1 1 0 1 X X X X X X X

- 1 1 1 0 X X X X X X X

- 1 1 1 1 X X X X X X XP. 42

Page 10: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 10

Chapter 2 Combinational Systems

2.1 The Design Process for Combinational Systems

• Input : Condition Output : largest integer meets the input condition• a = 0 : odd, a = 1 : even• b = 0 : prime, b = 1 : not prime• c = 0 : less then 8, c = 1 : greater than or equal to 8• a = 0, b = 0, c = 0 : the largest odd prime number less then 8 7(0111)

• Example 4.3

a b c w x y Z

0 0 0 0 1 1 1

0 0 1 1 1 0 1

0 1 0 X X X X

0 1 1 1 1 1 1

1 0 0 0 0 1 0

1 0 1 X X X X

1 1 0 0 1 1 0

1 1 1 1 1 1 0P. 42

Page 11: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 11

Chapter 2 Combinational Systems

2.2 Switching Algebra

Definition of Switching Algebra

OR (written as +) a + b (read a OR b) is 1 if and only if a = 1 or b = 1 or both

AND (written as · or simply two variables catenate) a · b = ab (read a AND b) is 1 if and only if a = 1 and b = 1.NOT (written ') a' (read NOT a) is 1 if and only if a = 0

• Truth table for OR, AND, and NOT.

a b a + b

0 0 0

0 1 1

1 0 1

1 1 1

a b ab

0 0 0

0 1 0

1 0 0

1 1 1

a a’

0 1

1 0

P. 44

Page 12: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 12

Chapter 2 Combinational Systems

2.2 Switching Algebra

Definition of Switching Algebra

commutative P1a. a + b = b + a P1b. ab = ba

associative P2a. a + (b + c) = (a + b) + cP2b. a(bc) = (ab)c

• a + b + c + d + · · · is 1 if any of the operands (a, b, c, d, . . .) is 1

and is 0 only if all are 0• abcd . . . is 1 if all of the operands are 1 and is 0 if any is 0

• Symbols for OR and AND gates.

P. 45

Page 13: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 13

Chapter 2 Combinational Systems

2.2 Switching Algebra

Definition of Switching Algebra

• AND gate implementation of Property 2b.

a a'

• a NOT gate.

• Parentheses are used as in other mathematics; expressions inside the parentheses are evaluated first.

• Order of precedence : NOT > AND > OR

P. 45- 46

Page 14: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 14

Chapter 2 Combinational Systems

2.2 Switching Algebra

Basic Properties of Switching Algebra

identity P3a. a + 0 = a P3b. a ∙ 1 = a

null P4a. a + 1 = 1 P4b. a ∙ 0 = 0

complement P5a. a + a′ = 1 P5b. a ∙ a′ = 0

• combining the commutative property with 3, 4, 5.

P3aa. 0 + a = a P3bb. 1 ∙ a = a

P4aa. 1 + a = 1 P4bb. 0 ∙ a = 0

P5aa. a′ + a = 1 P5bb. a′ ∙ a = 0

Page 15: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 15

Chapter 2 Combinational Systems

2.2 Switching Algebra

Basic Properties of Switching Algebra

Idempotency P6a. a + a = a P6b. a ∙ a = a

involution P7. (a′)′ = a

distributive P8a. a(b + c) = ab + ac P8b. a + bc = (a + b)(a + c)• Truth table to prove Property 8b.

a b c bc LHS a + b a + c RHS

0 0 0 0 0 0 0 0

0 0 1 0 0 0 1 0

0 1 0 0 0 1 0 0

0 1 1 1 1 1 1 1

1 0 0 0 1 1 1 1

1 0 1 0 1 1 1 1

1 1 0 0 1 1 1 1

1 1 1 1 1 1 1 1 P. 48

Page 16: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 16

Chapter 2 Combinational Systems

2.2 Switching Algebra

• Example 2.2

• f = y’z’ + x’y + x’yz’• g = xy’ + x’z’ + x’y• h = (x’+ y’)(x + y + z’)

x y z y’z’ x’y x’y’z f xy’ x’z’ x’y g x’+y’ x+y+z’ h

0 0 0 1 0 0 1 0 1 0 1 1 1 1

0 0 1 0 0 0 0 0 0 0 0 1 0 0

0 1 0 0 1 1 1 0 1 1 1 1 1 1

0 1 1 0 1 0 1 0 0 1 1 1 1 1

1 0 0 1 0 0 1 1 0 0 1 1 1 1

1 0 1 0 0 0 0 1 0 0 1 1 1 1

1 1 0 0 0 0 0 0 0 0 0 0 1 0

1 1 1 0 0 0 0 0 0 0 0 0 1 0

P. 48

Page 17: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 17

Chapter 2 Combinational Systems

2.2 Switching Algebra

Manipulation of Algebraic Functions

• literal is the appearance of a variable or its complement.

ab′ + bc′d + a′d + e′ → 8 literal

• product term is one or more literals connected by AND operators. ab′ + bc′d + a′d + e′ → 4 product term

• minterm (standard product term) is a product term that includes each variable of the problem, either uncomplemented or complemented. function of four variables, w, x, y, and z. → wxyz, w′xyz′ (minterm)

→ w′yz (is not)

Page 18: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 18

Chapter 2 Combinational Systems

2.2 Switching Algebra

Manipulation of Algebraic Functions

• sum of products expression is one or more product terms connected by OR operators.

w′xyz′ + wx′y′z′ + wx′yz + wxyz (4 product terms)x + w′y + wxy′z (3 product terms)x′ + y + z (3 product terms)wy′ (1 product terms)z (1 product terms)

• canonical sum (sum of standard product terms) is a sum of products expression where all of the terms are standard product terms.

Page 19: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 19

Chapter 2 Combinational Systems

2.2 Switching Algebra

Manipulation of Algebraic Functions

(1) x′yz′ + x′yz + xy′z′ + xy′z + xyz 5 terms, 15 literals(2) x′y + xy′ + xyz 3 terms, 7 literals(3) x′y + xy′ + xz 3 terms, 6 literals(4) x′y + xy′ + yz 3 terms, 6 literals

• minimum sum of products expression is one of those SOP expression for a function that has the fewest number of product terms.

Each of the following expressions are equal. ((1) = (2) = (3) = (4))

(minima)(minima)

x′yz′ + x′yz + xy′z′ + xy′z + xyz= (x′yz′ + x′yz) + (xy′z′ + xy′z) + xyz

associative= x′y(z′ + z) + xy′(z′ + z) + xyz

distributive= x′y ∙ 1 + xy′ ∙ 1 + xyz

complement= x′y + xy′ + xyz identity

Page 20: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 20

Chapter 2 Combinational Systems

2.2 Switching Algebra

Manipulation of Algebraic Functions

adjacency P9a. ab + ab′ = a P9b. (a + b)(a + b′) = ax′yz′ + x′yz + xy′z′ + xy′z + xyz + xy′z

= (x′yz′ + x′yz) + (xy′z′ + xy′z) + (xyz + xy′z)= x′y(z′ + z) + xy′(z′ + z) + xz(y + y′)= x′y ∙ 1 + xy′ ∙ 1 + xz ∙ 1= x′y + xy′ + xz

simplification P10a. a + a′b = a + b P10b. a(a′ + b) = ab

a + a′b = (a + a′)(a + b)distributive = 1 ∙ (a + b) complement = a + b identitya(a + b) = aa + ab = 0 + ab = ab

Page 21: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 21

Chapter 2 Combinational Systems

2.2 Switching Algebra

• a’b’c’ + a’bc’ + a’bc + ab’c’

a’c’ + a’bc + ab’c’ (using P9a)

a’c’ + a’b + ab’c’ (using P10a)

a’c’ + a’b + b’c’ (Not minterm)

• a’b’c’ + a’bc’ + a’bc + ab’c’

b’c’ + a’b (Minterm)

• Example 2.3

Page 22: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 22

2.2 Switching Algebra

Manipulation of Algebraic Functions

• sum term is one or more literal connected by OR operators.• maxterm(standard sum term) is a sum term that includes each variable of the problem, either uncomplemented or complemented. function of four variables, w, x, y, and z. → w′ + x + y + z′ (maxterm)

→ w + y′ + z (is not)• POS(product of sums expression) is one or more sum terms connected by AND operators.

(w + x)(w + y) (2 terms)w(x + y) (2 terms)w (1 term)w + x (1 term)(w + x′ + y′ + z′)(w′ + x + y + z′) (2 terms)

Chapter 2 Combinational Systems

Page 23: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 23

• canonical product (product of standard product terms) is a POS expression in where all of the terms are standard sum terms.

2.2 Switching Algebra

Manipulation of Algebraic Functions

Chapter 2 Combinational Systems

• Minimum is defined the same way for both POS and SOP. Minimum is the expressions with the fewest number of terms (same number of terms).

Page 24: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 24

Chapter 2 Combinational Systems

2.3 Implementation of Functions with AND, OR, and NOT Gates

f = x′yz′ + x′yz + xy′z′ + xy′z + xyz

Block diagram

• Block diagram of f in sum of standard products form.

P. 54

Page 25: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 25

Chapter 2 Combinational Systems

2.3 Implementation of Functions with AND, OR, and NOT Gates

Block diagram

• Minimum SOP expression

f = x′yz′ + x′yz + xy′z′ + xy′z + xyz = x′y + xy′ + xz

• Minimum sum of product implementation of f.

• Circuit with only uncomplemented inputs.

P. 55

Page 26: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 26

Chapter 2 Combinational Systems

2.3 Implementation of Functions with AND, OR, and NOT Gates

Block diagram

• Minimum POS expression

f = x′y + xy′ + xz = (x + y)(x′ + y′ + z)

• Minimum product of sums implementation of f.

P. 55

Page 27: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 27

Chapter 2 Combinational Systems

2.3 Implementation of Functions with AND, OR, and NOT Gates

Block diagram

• Multilevel circuit

h = z′ + wx′y + v(xz + w′)

P. 56

Page 28: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 28

Chapter 2 Combinational Systems

2.3 Implementation of Functions with AND, OR, and NOT Gates

• f = x’y + x(y’ + z)

x

yx’

y’z

f

• Example 2.4

P. 56

Page 29: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 29

Chapter 2 Combinational Systems

2.3 Implementation of Functions with AND, OR, and NOT Gates

Block diagram

a. High/Low

b. Positive logic

c. Negative logica b f

L L L

L H H

H L H

H H H

a b f

0 0 0

0 1 1

1 0 1

1 1 1

a b f

1 1 1

1 0 0

0 1 0

0 0 0

P. 58

Page 30: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 30

Chapter 2 Combinational Systems

2.4 The Complement

DeMorgan’s theorem

DeMorgan P11a. (a + b)′ = a′b′ P11b. (ab)′ = a′ + b′

• Proof of DeMorgan’s theorem.

P11aa. (a + b + c . . .)′ = a′b′c′ . . . P11bb. (abc . . .)′ = a′ + b′ + c′ + . . .

• Extended DeMorgan’s theorem

a ba + b

(a + b)’

a’ b’ a’b’ ab(ab)

’a’ + b’

0 0 0 1 1 1 1 0 1 1

0 1 1 0 1 0 0 0 1 1

1 0 1 0 0 1 0 0 1 1

1 1 1 0 0 0 0 1 0 0

11a 11a 11b 11b

P. 58

Page 31: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 31

Chapter 2 Combinational Systems

2.4 The Complement

• f = wx’y + xy’ + wxz

• f’ = (wx’y + xy’ + wxz)’

= (wx’y)’(xy’)’(wxz)’ [P11a]

= (w’ + x + y’)(x’ + y)(w’ + x’ + z’)

[P11b]

• Example 2.5

Page 32: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 32

Chapter 2 Combinational Systems

2.4 The Complement

• Set of rules.

DeMorgan’s theorem

1. Complement each variable (that is, a to a′ or a′ to a).

2. Replace 0 by 1 and 1 by 0.

3. Replace AND by OR and OR by AND, being sure to preserve the order of operations. That sometimes requires additional parentheses.

Page 33: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 33

Chapter 2 Combinational Systems

2.4 The Complement

• f = ab’(c + d’e) + a’bc’

• f’ = [ab’(c + d’e) + a’bc’]’ using [P11a],

[P11b]

= [ab’(c + d’e)]’[a’bc’]’

= [a’ + b + (c + d’e)’][a + b’ + c]

= [a’ + b + c’(d’e)’][a + b’ + c]

= [a’ + b + c’(d + e’)][a + b’ + c]

• Example 2.6

Page 34: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 34

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

Truth table

• A two-variable truth table.

• Verbal descriptions of systems can most easily be translated into the truth table. => need the ability to go from the truth table to an algebraic expression. To understand the process, consider the two-variable truth table.

• Minterms.

Each row of the truth table corresponds to a product term.

a b f

0 0 0

0 1 1

1 0 1

1 1 1

ABC Minterm Nunber

000 A’B’C’ 0

001 A’B’C 1

010 A’BC’ 2

011 A’BC 3

100 AB’C’ 4

101 AB’C 5

110 ABC’ 6

111 ABC 7P. 60 -

61

Page 35: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 35

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

Truth table• For a specific function, those terms for which The function is 1 are used to form an SOP expression for f.

The function is 0 are used to form an SOP expression for f’.

Complement f’ to form a POS expression for f.

• Example 2.7

1. f (A, B, C) = Σm(1, 2, 3, 4, 5) = A’B’C + A’BC’ + A’BC + AB’C’ + AB’C

2. f’(A, B, C) = Σm(0, 6, 7) = A’B’C’ + ABC’ + ABC

1-1. f = A’B’C + A’BC’ + A’BC + AB’C’ + AB’C = A’B’C + A’B + AB’ [P9a] = A’C + A’B + AB’ = B’C + A’B + AB’ 2-1. f’ = A’B’C’ + AB

2-2. f = (f’)’ = (A + B + C)(A’ + B’ + C)(A’ + B’ + C’)

ABC f f’

000 0 1

001 1 0

010 1 0

011 1 0

100 1 0

101 1 0

110 0 1

111 0 1

P. 61

Page 36: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 36

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

• f(a, b, c) = ∑m(1, 2, 5) + ∑d(0, 3)

• Example 2.8

a b c f

0 0 0 X

0 0 1 1

0 1 0 1

0 1 1 X

1 0 0 0

1 0 1 1

1 1 0 0

1 1 1 0

P. 63

Page 37: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 37

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

• Using Z2 for CE

• Z2 = A’BCD + AB’CD + ABC’D + ABCD’ + ABCD

• ABCD can be combined with each of the others(using

P10a)

• Z2 = BCD + ACD + ABD + ABC (minimum SOP)

• Z1= A’BCD + AB’CD + ABC’D + ABCD’ (can’t minimize)

• Example 2.9

Page 38: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 38

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

• For CE2

• f = ab’c + abc’ or f = ab’c’ + abc

No simplification is possible

• f’ = a’b’c’ + a’b’c + a’bc’ + a’bc + ab’c’ + abc

= a’b’ + a’b + ab’c’ + abc [P9a,

P9b]

= a’ + ab’c’ + abc = a’ + b’c’ + bc [P9a,

P10a]

• f = (a + b + c)(a + b + c’)(a + b’ + c)(a + b’ + c’)(a’ +

b + c)(a’ + b’ + c’)

= a(b + c)(b’ + c’) (minimum POS)

• Example 2.10

Page 39: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 39

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

• For Full Adder CE3

• Cout = a’bc + a’bc + abc’ + abc

• s = a’b’c + a’bc’ + ab’c’ + abc

• Cout = bc + ac + ab (like Example 2.9)

• s = a’b’c + a’bc + ab’c + abc

• Example 2.11

Page 40: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 40

Chapter 2 Combinational Systems

2.5 From The Truth Table to Algebraic Expressions

Truth table• To find a minimum POS expression1. Manipulate the previous POS expression to obtain

f = (A + B + C)(A’ + B’)2. Simplify the SOP expression for f’ and then use

DeMorgan to convert it to a POS expression. Both approaches(1, 2) produce the same result.

• How many different functions of n variables are there? For two variables, there are 16 possible truth tables, resulting in 16 different functions.

• All two-variable functions.• Number of functions of n variables.

a b f0 f1 f2 f3 f4 f5 f6 f7 f8 f9f10

f11

f12

f13

f14

f15

0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Variables Terms

1 4

2 16

3 256

4 65,536

5 4,294,967,296

P. 64

Page 41: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 41

2 - 41Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

Three other gates

• NAND gates.

Note that DeMorgan’s theorem states that(ab)’ = a’ + b’

P. 65

Page 42: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 42

Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

Three other gates

• Functional completeness of NAND.

• NAND gate implementation.

P. 66

Page 43: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 43

2 - 43Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

Three other gates

• Better NAND gate implementation. • Double NOT gate approach.

• A multilevel NAND implementation

P. 67

Page 44: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 44

2 - 44Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

• f = wx(y + z) + x’y

• AND and OR Gates

• First Version

f

• Example 2.12

P. 67

Page 45: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 45

2 - 45Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

• f = wx(y + z) + x’y

• Second Version

• Example 2.12(cont.)

P. 68

Page 46: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 46

2 - 462 - 46Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

Three other gates

• NOR gates.

Circuit consisting of AND and OR gates such that1. the output of the circuit comes from an AND,

2. the inputs to OR gates come either from a system input or from the output of an AND, and

3. the inputs to AND gates come either from a system input or from the output of an OR.

Then all gates can be converted to NOR gates, and, if an input comes directly into an AND gate, that input must be complemented. Note that DeMorgan’s theorem states that

(a + b)’ = a’b’

Page 47: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 47

2 - 47Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

• g = (x + y’)(x’ + y)(x’ + z’)

• Example 2.13

P. 68

Page 48: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 48

2 - 482 - 482 - 48Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

Three other gates

• Exclusive-OR gates.

Exclusive-OR gate implements the expression• (a b) = a’b + ab’

• An Exclusive-OR gate

• An Exclusive-NOR gate

• (a b)’ = a’b’ + ab

P. 69

Page 49: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 49

2 - 49Chapter 2 Combinational Systems

2.6 NAND, NOR, AND EXCLUSIVE-OR GATES

• With AND and OR Gates : 4 packs

• With NAND Gates : 3 packs

• Example 2.14

Gates Packs

Inputs AND OR AND OR NAND Packs

2 3 2 1 5 1

3 2 1 1 1 3 1

4 1 1 1 1

Total 6 3 3 1 9 3

P. 70

Page 50: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 50

2 - 502 - 502 - 502 - 50Chapter 2 Combinational Systems

2.7 SIMPLIFICATION OF ALGEVRAIC EXPRESSIONS

Process of simplifying algebraic expressions

absorption P12a. a + ab = a P12b. a(a + b) = aa + ab = a · 1 + ab = a(1 + b) = a · 1 = a

a(a + b) = a · a + ab = a + ab

consensus P13a. at1 + a’t2 + t1t2 = at1 + a’t2

P13b. (a + t1)(a’ + t2)(t1 + t2) = (a + t1)(a’ + t2)at1 + a’t2 = (at1 + at1t2) + (a’t2 + a’t1t2)

= at1 + a’t2 + (at1t2 + a’t1t2)= at1 + a’t2 + t1t2

• Consensus.

t1t2 is the consensus term.

a t1 t2 at1 a’t2 RHS t1t2 LHS

0 0 0 0 0 0 0 0

0 0 1 0 1 1 0 1

0 1 0 0 0 0 0 0

0 1 1 0 1 1 1 1

1 0 0 0 0 0 0 0

1 0 1 0 0 0 0 0

1 1 0 1 0 1 0 1

1 1 1 1 0 1 1 1

P. 74

Page 51: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 51

2 - 51Chapter 2 Combinational Systems

• xyz + x’y + x’y’ = xyz + x’ [P9a] = x’ + yz [P10a] where a = x’, a’ = x, b = yz

• wx + wxy + w’yz + w’y’z + w’xyz’ = (wx + wxy) + (w’yz + w’y’z) + w’xyz’ = wx + w’z + w’xyz’ [P12a, P9a] = wx + w’(z + xyz’) = wx + w’(z + xy) [P10a] = wx + w’z + w’xy = w’z + x(w + w’y) = w’z + w(w + y) [P10a] = w’z + wx + wy

2.7 SIMPLIFICATION OF ALGEVRAIC EXPRESSIONS

• Example 2.15

• Example 2.16

Page 52: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 52

2 - 52Chapter 2 Combinational Systems

• (x + y)(x + y + z’) + y’ = (x + y) + y’ [P12b] = x + (y + y’) [P5a] = x + 1 = 1 [P4a]

• (a + b’ + c)(a + c’)(a’ + b’ + c)(a + c + d) = (b’ + c)(a + c’)(a + d) [P9b, P10b]

• (a + c’)(a + c + d) = a + c’(c + d) = a + c’d = (a + c’)(a + d)

2.7 SIMPLIFICATION OF ALGEVRAIC EXPRESSIONS

• Example 2.17

• Example 2.18

Page 53: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 53

2 - 53Chapter 2 Combinational Systems

• ab’c ¢ a’d = b’cd• ab’c ¢ a’cd = b’cd• abc’ ¢ bcd’ = abd’• b’c’d’ ¢ b’cd’ = b’d’• abc’ ¢ bc’d = undefined – no such variable • a’bd ¢ ab’cd = undefined – two variables, a and b

• In Example 2.3• f = a’b’c’ + a’bc’ + a’bc + ab’c’• f1 = a’c’ + a’b + b’c’ [P9a]• f2 = b’c’ + a’b [P10a]

2.7 SIMPLIFICATION OF ALGEVRAIC EXPRESSIONS

• Example 2.19

• Example 2.20

Page 54: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 54

2 - 54Chapter 2 Combinational Systems

• g = bc’ + abd + acd• The only consensus term defined is• bc’ ¢ acd = abd• g = bc’ + acd [Property 13]

• A’BCD + A’BC’D + B’EF + CDE’G + A’DEF + A’B’EF = A’BD + B’EF + CDE’G + A’DEF [P12a, P9a]• But A’BD ¢ B’EF = A’DEF• A’BD + B’EF + CDE’G + A’DEF = A’BD + B’EF + CDE’G

2.7 SIMPLIFICATION OF ALGEVRAIC EXPRESSIONS

• Example 2.21

• Example 2.22

Page 55: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 55

2 - 552 - 552 - 552 - 552 - 55Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

Process of manipulate the algebraic• An SOP expression expand to sum of minterms.

1. Use a truth table.

2. Use P9a to add variables to a term.

• f = bc + ac + ab = bca + bca’ + ac + ab• Repeat the process on the other two terms• f = bca + bca’ + acb + acb’ + abc + abc’ = abc + a’bc + abc + ab’c + abc + abc’ = a’bc + ab’c + abc’ + abc

• Example 2.23

Page 56: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 56

2 - 562 - 562 - 562 - 562 - 56Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• g = x’ + xyz = x’y + x’y’ + xyz = x’yz + x’yz’ + x’y’z + x’y’z’ + xyz• g(x,y,z) = ∑m(0,1,2,3,7)

f = (A + B + C)(A’ + B’) = (A + B + C)(A’ + B’ + C)(A’ + B’ + C’)

• Example 2.24

• Example 2.25

Page 57: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 57

2 - 572 - 572 - 572 - 572 - 572 - 57Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

Process of manipulate the algebraic

P14a. ab + a’c = (a + c)(a’ + b)

(a + c)(a’ + b) = (a + c)a’ + (a + c)b = aa’ + a’c + ab + bc• aa’ = 0 and bc = a’c ¢ ab and thus, using P3aa and P13a

(a + c)(a’ + b) = aa’ + a’c + ab + bc = a’c + ab• This property is particularly useful in converting POS expression to SOP and vice versa.• Another application of P14a and this type of algebraic manipulation comes when we wish to implement functions using only two-input NAND or NOR gate.

P. 78

Page 58: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 58

2 - 582 - 582 - 582 - 582 - 58Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• f = (A + B + C)(A’ + B’) = AB’ + A’(B + C)[P14a] = AB’ + A’B + A’C• f = AA’ + AB’ + BA’ + BB’ + CA’ + CB’ = AB’ + A’B + A’C + B’C

• (A + B’ + C)(A + B + D)(A’ + C’ + D’) = [A + (B’ + C)(B + D)](A’ + C’ + D’)[P8b] = (A + B’D + BC)(A + C’ + D’) [P14a] = A(C’ + D’) + A’(B’D + BC) [P14a] = AC’ + AD’ + A’B’D + A’BC [P8a]

• Example 2.26

• Example 2.27

Page 59: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 59

2 - 592 - 592 - 592 - 592 - 59Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• wxy’ + xyz + w’x’z = x(wy’ + yz) + w’x’z’ [P8a] = x(y’ + z)(y + w) + w’x’z’[P14a] = (x + w’z’)[x’ + (y’ + z)(y + w)] [P14a] = (x + w’)(x + z’)(x’ + y’ + z)(x’ + y + w)[P8b]

• Example 2.28

Page 60: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 60

2 - 602 - 602 - 602 - 602 - 60Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• G = DE’ + A’B’C’ + CD’E + ABC’E = DE’ + A’B’C’ + E(CD’ + ABC’) - No way of eliminating 3-input gate• G = C’(A’B’ + ABE) + DE’ + CD’E = C’(A’ + BE)(A + B’) + DE’ + CD’E[P14a] or G = C’(B’ + AE)(B + A’) + DE’ + CD’E• Reduce 3-input gates to 2-input gates• G = (C’ + D’E)[C + (B’ + AE)(B + A’)] + DE’

• Example 2.29

P. 80

Page 61: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 61

2 - 612 - 612 - 612 - 612 - 61Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• G = C’(A’ + BE)(A + B’) + DE’ + CD’E = C’(A’ + BE)(A + B’) + (D + CE)(D’ + E’) = (A’ + BE)(AC’ + B’C’) + (D + CE)(D’ + E’)

• Example 2.29(cont.)

P. 80

Page 62: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 62

2 - 622 - 622 - 622 - 622 - 62Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• G = C’D’ + ABC’ + A’C + B’C = C’(D’ + AB) + C(A’ + B’)

G

• Example 2.30

P. 80

Page 63: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 63Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• s = a’b’c + a’bc’ + ab’c + abc• cout = bc + ac + ab• To reduce the gate requirements,

• s = c(a’b’ + ab) + c’(ab’ + a’b)• cout = c(a + b) + ab

• Returning to the expression for sum, note that• s = c(a b)’ + c’(a b) = c (a b)• cout = c(a b) + ab

• Example 2.31 (for CE3)

P. 82

Page 64: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 64Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• Each Exclusive-OR with 4 two-input NAND gates, without requiring complemented inputs.

• Example 2.31 (cont.)

P. 82

Page 65: 2 - 1 Chapter 2 Combinational Systems. 2 - 2 Chapter 2 Combinational Systems 2.1 The Design Process for Combinational Systems  Continuing Example(CE)

2 - 65Chapter 2 Combinational Systems

2.8 MANIPULATION OF ALGEBRAIC FUNCTIONS AND NAND GATE IMPLEMENTATIONS

• Note that the two green NAND gates have the same inputs and the two light green ones also have the same inputs.• Only one copy of each is necessary, yielding the final circuit with only nine NAND gates.

• Example 2.31 (cont.)

P. 83