b
a
p
⊕
=
b
a
g
•
=
i
i
C
p
C
b
a
S
⊕
=
⊕
⊕
=
i
o
C
p
g
C
•
+
=
3
2
1
0
*
p
p
p
p
P
=
0
1
2
3
1
2
3
2
3
3
*
g
p
p
p
g
p
p
g
p
g
G
+
+
+
=
in
out
C
P
G
C
•
+
=
*
*
i
i
i
i
i
i
b
a
t
b
a
p
+
=
→
⊕
=
1.
Ripple Carry Adder
The ripple carry adder is composed of a chain of full adders with length n, where n is the
length of the input operands.
1.1
Full Adder
The following Boolean expressions describe the full adder.
and
Equation 1
where a and b are the input operands and p and g are the propagate and generate signals
respectively. Carry is propagated if p is high or is generated if g is high.
Thus, the sum S and carryout C
o
signals can be expressed as:
and
Equation 2
where C
i
is the carryin signal.
2.
Carry Lookahead Adder
Weinberger and Smith proposed this scheme in 1958 [1]. It uses lookahead technique rather
than carryrippling technique to speedup the carry propagation. By using additional logics,
group generate and propagate signals can be generated. Equation 33, Equation 34 and
Equation 35 show the logical expression of prefix4 group generate, propagate and carryout
signals respectively. Thus, multiple levels of carrylookahead logics can be used to propagate
carryin from the least significant bit (LSB) to the most significant bit (MSB).
Equation 3
Equation 4
Equation 5
3.
Ling Adder
Adder proposed by Ling is an improved version of conventional carrylookahead adder [6].
This approach is faster and less expensive. It replaces the conventional propagate operator
from a XOR with an OR gate which results in a much cheaper operation.
Equation 6
Rather than propagating the carry G
i
as conventional carrylookahead technique do, Ling’s
approach replaces G
i
by H
i
, where
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
1

+
=
i
i
i
G
G
H
(
29
(
29
(
29
Ling
H
t
g
H
G
t
g
G
p
g
g
G
p
G
g
g
G
al
convention
G
p
g
G
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
1
1
1
1
1
1
1







+
=
+
=
+
+
=
+
+
=
+
=
(
29
(
29
Ling
g
t
t
g
t
g
g
g
t
t
t
g
t
t
g
t
g
H
al
convention
g
t
t
t
g
t
t
g
t
g
G
0
1
2
1
2
2
3
0
0
1
2
1
1
2
2
2
3
0
1
2
3
1
2
3
2
3
3
*
*
+
+
+
→
+
+
+
=
+
+
+
=
G
r
G
r
1
...
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '10
 HalenLee
 Addition, Tree structure, Least significant bit, KoggeStone adder

Click to edit the document details