0% found this document useful (0 votes)
55 views76 pages

Lecture 10 ADD, SUB, Adders, Subtractors & Comparator

The document discusses digital circuits and addition of binary numbers. It explains how half adders and full adders perform addition at the bit level by using logic gates. The half adder adds two bits and produces a sum and carry output. The full adder adds three bits, including a previous carry bit, and produces a new sum and carry bit. Tables show the outputs for all possible input combinations to half and full adders.

Uploaded by

Muhammad Montaha
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)
55 views76 pages

Lecture 10 ADD, SUB, Adders, Subtractors & Comparator

The document discusses digital circuits and addition of binary numbers. It explains how half adders and full adders perform addition at the bit level by using logic gates. The half adder adds two bits and produces a sum and carry output. The full adder adds three bits, including a previous carry bit, and produces a new sum and carry bit. Tables show the outputs for all possible input combinations to half and full adders.

Uploaded by

Muhammad Montaha
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/ 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