Prefix tree adder with efficient sum generation

Electrical computers: arithmetic processing and calculating – Electrical digital calculating computer – Particular function performed

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C708S710000

Reexamination Certificate

active

06539413

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates generally to electronic circuits and more particularly to adder circuits for use in semiconductor integrated circuits and other electronic devices.
BACKGROUND OF THE INVENTION
As a result of ever-shrinking very large scale integration (VLSI) process geometries, it has become necessary to reexamine the tradeoffs that have been made in the existing design and implementation of computer arithmetic algorithms. Algorithms utilizing the so-called carry lookahead technique, as described in A. Weinberger and J. L. Smith, “A One-Microsecond Adder Using One-Megacycle Circuitry,” IRE Trans. on Electronic Computers, pp. 65-73, June 1956, speed up the addition process by unrolling a recursive carry equation. Both transistor count and interconnection complexity have typically limited the maximum unrolling to 4 bits. Larger adders have been built as block carry-lookahead adders, where the lookahead operation occurs within small blocks, as described in T.-F. Ngai et al., “Regular, Area-Time Efficient Carry-Lookahead Adders,” Journal of Parallel and Distributed Computing, Vol. 3, pp. 92-105, 1986.
The recursive carry computation can also be reduced to a prefix computation, as described in, e.g., P. M. Kogge and H. S. Stone, “A Parallel Algorithm for the Efficient Solution of a General Class of Recurrence Equations,” IEEE Trans. on Computers, Vol. C-22, No.8, pp. 786-793, August 1973. As described in R. P. Brent and H. T. Kung, “A Regular Layout for Parallel Adders,” IEEE Trans. on Computers, Vol. C-31, No. 3, pp. 260-264, March 1982, a prefix tree can be used to compute the carry at the most-significant bit position, and an additional tree superimposed on the prefix tree can be used to compute the intermediate carries. Faster computation of all the carries can be achieved by using a separate prefix tree for each bit position, as described in D. Dozza et al., “A 3.5 NS, 64 Bit, Carry-Lookahead Adder,” in Proc. Intl. Symp. Circuits and Systems, pp. 297-300, 1996.
A problem associated with the above-noted full prefix tree adders, which are also known as Kogge-Stone adders, is the additional delay introduced as a result of exponentially growing interconnection complexity. Existing architecture tradeoffs have emphasized reduction of interconnection complexity at the expense of higher gate fanouts. Interconnection complexity can also be reduced by using hybrid carry lookahead/carry select architectures which eliminate the need to implement a full prefix tree for each bit position. The use of low resistance and low capacitance materials can reduce the negative effects of architectures that depend on large amounts of interconnect, as described in J. Silberman et al., “A 1.0 GHz Single-Issue 64b PowerPC Integer Processor,” IEEE Intl. Solid-State Circuits Conf., pp. 230-231, February 1998. Furthermore, with additional levels of interconnect, the area overhead required to implement such adders is alleviated through the use of extensive “over-the-cell” routing, which removes the routing channels and further minimizes the interconnect capacitance.
The operation of a conventional prefix tree adder will now be described in greater detail. In a general n-bit prefix tree adder, the addition of two numbers A and B,
A
=
-
a
n
-
1

2
n
-
1
+

j
=
0
n
-
2



a
j

2
j
B
=
-
b
n
-
1

2
n
-
1
+

j
=
0
n
-
2



b
j

2
j
represented in two's complement binary form, can be accomplished by computing:
g
j
=
a
j

b
j
p
j
=
a
j

b
j
c
j
=
g
j
+
p
j

c
j
-
1
s
j
=
p
j

c
j
-
1
}




j



0

j
<
n
where c
−1
is the primary carry-input. The signals designated g
j
, p
j
and c
j
are referred to herein as generate, propagate and carry signals, respectively. The resulting sum of A and B is
S
=
-
s
n
-
1

2
n
-
1
+

j
=
0
n
-
2



s
j

2
j
.
An overflow occurs, and the resulting sum is invalid, if
c
n−1
⊕c
n−2
=1.
The above-cited Dozza et al. reference defines (G
j
j
, P
j
j
)=(g
j
, p
j
), and
(
G
i
j
,P
i
j
)=(
g
j
,p
j
)
o
(
g
j−1
,p
j−1
)
o . . . o
(
g
i
,p
i
) if
j>i,
where o is the fundamental carry operator described in the above-cited Brent and Kung reference and defined as
(
g
j
,p
j
)
o
(
g
i
,p
i
)=((g
j
+p
j
g
i
)
p
j
p
i
).
The fundamental carry operator o is both associative and idempotent. At each bit position, the carry is given by
c
j
=G
0
j
+P
0
j
c
−1
where c
−1
is the primary carry input. If there is no primary carry input, then c
j
is simply G
0
j
.
An additional speedup in the above-described conventional prefix tree adder can be achieved by using transmit signals t
j
instead of propagate signals p
j
to compute the carries for each bit position. The final sum computation still requires the propagate signals p
j
to be generated from the primary inputs. However, the propagate signal p
j
can be computed as p
j
={overscore (g)}
j
t
j
, in order to reduce the load on the primary inputs and to eliminate the need for an XOR gate for generating the propagate signal p
j
.
The addition operation in this case is defined as
g
j
=
a
j

b
j
t
j
=
a
j
+
b
j
p
j
=
a
j

b
j
=
g
_
j

t
j
c
j
=
g
j
+
t
j

c
j
-
1
s
j
=
p
j

c
j
-
1
}




j



0

j
<
n
where (G
j
j
, T
j
j
) (g
j
, t
j
), and
(
G
j
j
,T
j
j
)=(
g
j
,t
j
)
o
(
g
j−1
,t
j−1
)
o . . . o
(
g
i
, t
i
) if
j>i,
where o is the fundamental carry operator. The computation of (G
0
j
, T
0
j
) ∀j follows the same methodology as above for (G
0
j
, P
0
j
). The carry c
j
for each bit position is then given by
c
j
=G
0
j
+T
0
j
c
−1
where c
−1
is the primary carry input. If there is no primary carry input, then c
j
is simply G
0
j
.
The t
j
signals can be computed faster than the p
j
signals since an OR gate is typically faster than an XOR gate. Hence, the carry computation through the prefix trees can start slightly earlier if the transmit signals are used. Since the sum generation step still uses the propagate signals, the load on the transmit signals in this architecture is smaller than the load on the propagate signals in the architecture which uses the p
j
signals to compute the carries. However, the load on the input signals is now higher since both transmit and propagate signals need to be generated.
Improved prefix tree adders which provide significant reductions in logic depth, delay and circuit area relative to the above-described conventional prefix tree adders are disclosed in the above-cited U.S. patent application Ser. No. 09/291,677. Although these improved prefix tree adders provide substantial advantages over conventional prefix tree adders, a need nonetheless remains for further improvements, particularly in terms of the computational delay parameter.
SUMMARY OF THE INVENTION
The invention provides an improved prefix tree adder in which a significant delay reduction is achieved by implementing sum computation logic circuitry in a final stage of the adder so as to exploit the differing delays with which group-generate (G), group-transmit (T) and intermediate carries (c) are generated. Previous adder designs have not exploited these final-stage delay differences to reduce the overall computation delay of the adder.
In accordance with one aspect of the present invention, an n-bit prefix tree adder includes n prefix trees, each associated with a bit position of the adder and including a number of computation stages. The computation stages for each of the bit positions include a sum computation stage implemented in logic circuitry. For at least a subset of the bit positions, the corresponding sum computation logic circuitry computes a sum based at least in part on group-generate, group-transmit and intermediate carry signals. Advantageously, the sum computation logic circuitry is configured to exploi

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Prefix tree adder with efficient sum generation does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Prefix tree adder with efficient sum generation, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Prefix tree adder with efficient sum generation will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3072471

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.