Download as pdf or txt
Download as pdf or txt
You are on page 1of 76

Digital Circuits

EE/CE 3320 / Spring 2020 / Lecture 10


University of Texas Dallas
ADD, SUB, Adders, Subtractors &
Dr. Tooraj Nikoubin Comparator, ROM, PLA, Three-State
Add operation for two Binary numbers

A= 101010010101010101011100101100001
B= 101010010101010101010100101110001

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state
Add operation for two bits

0 +
0
0 0
C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 3
Add operation for two bits

0 + 1 +
0 0
0 0 0 1
C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 4
Add operation for two bits

0 + 1 + 0 +
0 0 1
0 0 0 1 0 1
C S C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 5
Add operation for two bits

0 + 1 + 0 + 1 +
0 0 1 1
0 0 0 1 0 1 1 0
C S C S C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 6
Add operation for two bits

0 +
0
0
0 0
C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 7
Add operation for two bits

0 + 1 +
0 0
0 0
0 0 0 1
C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 8
Add operation for two bits

0 + 1 + 0 +
0 0 1
0 0 0
0 0 0 1 0 1
C S C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 9
Add operation for two bits

0 + 1 + 0 + 0 +
0 0 1 0
0 0 0 1
0 0 0 1 0 1 0 1
C S C S C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 1
Add operation for three bits

1 +
1
0
1 0
C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 11
Add operation for three bits

1 + 0 +
1 1
0 1
1 0 1 0
C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 12
Add operation for three bits

1 + 0 + 1 +
1 1 0
0 1 1
1 0 1 0 1 0
C S C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 13
Add operation for three bits

1 + 0 + 1 + 1 +
1 1 0 1
0 1 1 1
1 0 1 0 1 0 1 1
C S C S C S C S

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 14
Half Adder

a s Sum
b H.A c Carry

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 15
Half Adder

b a c s
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, 16
Half Adder

b a c s
0 0 0 0
0 1 0 1 S = a b
1 0 0 1 C = ab
1 1 1 0
a
b
s Sum
a s
b H.A c c Carry

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 17
Half Adder

a s Sum
ci F.A
b c0 Carry

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 18
Full Adder

Ci b a C0 S a Sum
s
0 0 0 0 0 ci F.A
b c0
0 0 1 0 1
0 1 0 0 1 Carry
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 19
Full Adder

a s
Ci b a C0 S ci F.A c0
0 0 0 0 0 b
0 0 1 0 1
0 1 0 0 1
S =  m (1,2,4,7 )
0 1 1 1 0
1 0 0 0 1 Co =  m ( 3,5,6,7 )
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 20
Full Adder
Sum A

b 1 1

1 1
ci b a
Ci
Sum
S
S = a  b  Ci
Carry
A

b 1 1 1

1
c0
Ci

Co =ab +aC i +bC i Carry


EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 21
4 Bit Binary Adder

b3 a3 b2 a2 b1 a1 b0 0 a0

F.A F.A F.A F.A


c3 c2 c1
c0 S3 S2 S1 S0
EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 22
4 Bit Binary Adder

b3 a3 b2 a2 b1 a1 b0 0 a0

F.A F.A F.A F.A


c3 c2 c1
c0 S3 S2 S1 S0
b 3 b 2 b 1b 0 0 a 3a 2a 1 a 0

4bit-F.A

C 0 S 3 S2 S1 S 0
EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 23
4 Bit Binary Adder

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 24
Half Subtractor

Differential
a D b a B D
b H.S B 0 0 0 0
Borrow 0 1 0 1
1 0 1 1
1 1 0 0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 25
SUB operation for two bits

0 -
0
0 0
B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 26
SUB operation for two bits

0 - 1 -
0 0
0 0 0 1
B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 27
SUB operation for two bits

0 - 1 - 0 -
0 0 1
0 0 0 1
B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 28
SUB operation for two bits

0 - 1 - 1 0 -
0 0 1
0 0 0 1 1 1
B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 29
SUB operation for two bits

0 - 1 - 1 0 - 1 -
0 0 1 1
0 0 0 1 1 1 0 0
B D B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 30
SUB operation for three bits

0 -
0
0
0 0
B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 31
SUB operation for three bits

0 - 1 -
0 0
0 0
0 0 0 1
B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 32
SUB operation for three bits

0 - 1 - 0 -
0 0 0
0 0 1
0 0 0 1
B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, 33
SUB operation for three bits

0 - 1 - 1 0 -
0 0 0
0 0 1
0 0 0 1
B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, 34
SUB operation for three bits

0 - 1 - 1 0 -
0 0 0
0 0 1
0 0 0 1 1 1
B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 35
SUB operation for three bits

0 - 1 - 1 0 - 1 -
0 0 0 0
0 0 1 1
0 0 0 1 1 1 0 0
B D B D B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 36
SUB operation for three bits

0 -
1
1

B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, 37
SUB operation for three bits

1 0 -
1
1

B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 38
SUB operation for three bits

1 0 - 1 -
1 1
1 1
1 0
B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 39
SUB operation for three bits

1 0 - 1 1 -
1 1
1 1
1 0
B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 40
SUB operation for three bits

1 0 - 1 1 -
1 1
1 1
1 0 1 1
B D B D

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 41
Half Subtractor

b a B D
a D 0 0 0 0
b H.S B 0 1 0 1
1 0 1 1
1 1 0 0
a D
b
D = a  b
B B = ab

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 42
Full Subtractor

Bi b a B0 D a D
0 0 0 0 0 Bi F.S
0 0 1 0 1 b B0
0 1 0 1 1
0 1 1 0 0
1 0 0 1 1
1 0 1 0 0
1 1 0 1 0
1 1 1 1 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 43
Full Subtractor

Bi b a B0 D a D
0 0 0 0 0
Bi F.S
b B0
0 0 1 0 1
0 1 0 1 1
0 1 1 0 0 D = a  b  B
i
1 0 0 1 1
1 0 1 0 0 Bo =ab +aB i +bB i
1 1 0 1 0
1 1 1 1 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 44
Full Subtractor
D = a  b  Bi
B o = ab + aB i + bB i Bi b a

B0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 45
Example for 4 Bit Adder

b3 a3 b2 a2 b1 a1 b0 0 a0

F.S F.S F.S F.S


B3 B2 B1
B0 D3 D2 D1 D0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 46
Example for 4 Bit Adder

a = 1110 b = 1011

b3 a3 b2 a2 b1 a1 b0 0 a0

F.A F.A F.A F.A


c3 c2 c1
c0 S3 S2 S1 S0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 47
Example for 4 Bit Adder

a = 1110 b = 1011

1 1 0 1 1 1 1 0 0

F.A F.A F.A F.A


c3 c2 c1
c0 S3 S2 S1 S0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 48
Example for 4 Bit Adder

a = 1110 b = 1011

1 1 0 1 1 1 1 0 0

F.A F.A F.A F.A


c3 c2 0
c0 S3 S2 S1 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 49
Example for 4 Bit Adder

a = 1110 b = 1011

1 1 0 1 1 1 1 0 0

F.A F.A F.A F.A


c3 1 0
c0 S3 S2 0 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 50
Example for 4 Bit Adder

a = 1110 b = 1011

1 1 0 1 1 1 1 0 0

F.A F.A F.A F.A


1 1 0
c0 S3 0 0 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 51
Example for 4 Bit Adder

a = 1110 b = 1011

1 1 0 1 1 1 1 0 0

F.A F.A F.A F.A


1 1 0
1 1 0 0 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 52
Example for 4 Bit Adder
b 3 b 2 b 1b 0 0 a 3a 2a 1 a 0

4bit-F.S A −B = A +B +1

b 3 b 2 b 1b 0
1 a 3a 2a 1 a 0

4bit-F.A

C0 S 3 S2 S1 S 0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 53
4 Bit Adder Comparator
b3 b 2 b 1 b 0 1 a 3 a 2 a1 a0

4bit-F.A

S 3 S2 S1 S 0
AB
C
A =B

A B

AB

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 54
4 Bit Adder Comparator

1 1 b 1 b0 1 0 0 a1 a0

4bit-F.A

C S3 S2 S1 S0

A=B
AB

A B
EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 55
8 Bit Adder Comparator
b7 b6 b5 b4 b 3 b 2 b 1 b0
a7 a6 a5 a4 1 a 3 a 2 a1 a 0

4bit-F.A 4bit-F.A
C
S7 S6 S 5 S4 S3 S2 S 1 S0

AB

A =B
AB

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 56
Add/Sub Module Design

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 57
Three State Buffer

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 58
Three State Buffer

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 59
Three State Buffer

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 60
Using bus notation, draw an equivalent circuit for:

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 61
Read Only Memory ( ROM )

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 62
Read Only Memory ( ROM )

0
0
0

0 1 1 0

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 63
Read Only Memory ( ROM )

1
1
1
1

0 1 0 1

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 64
Read Only Memory ( ROM )

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 65
Read Only Memory ( ROM )

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 66
Read Only Memory ( ROM )

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 67
Read Only Memory ( ROM )

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 68
Read Only Memory ( ROM )

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 69
Programmable Logic Array

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 70
Programmable Logic Array

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 71
Programmable Logic Array

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 72
Programmable Logic Array

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 73
Programmable Logic Array

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 74
Programmable Logic Array

EE/CE 3320 /Dr. T.Nikoubin /Springl 2020/ Lecture 10/ ADD, SUB, Comparator, ROM, PLA, Three-state 75

You might also like