Professional Documents
Culture Documents
Lecture 10 ADD, SUB, Adders, Subtractors & Comparator
Lecture 10 ADD, SUB, Adders, Subtractors & Comparator
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
b3 a3 b2 a2 b1 a1 b0 0 a0
b3 a3 b2 a2 b1 a1 b0 0 a0
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
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
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
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
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
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
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
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
AB
C
A =B
A B
AB
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
AB
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
AB
A =B
AB
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