24-09-2013, 02:59 PM
16-bit Carry-select Adder
Carry-select Adder.pdf (Size: 51.04 KB / Downloads: 16)
Introduction
Ripple-carry adders are the simplest and
most compact adders (they require as lit-
tle as four cells per bit in the AT6000
architecture), but their performance is
limited by a carry that must ripple from
the least-significant to the most-signifi-
cant bit. A carry-select adder
implemented in the AT6000 achieves
speeds 40% to 90% faster by performing
additions in parallel and reducing the
maximum carry path.
Description
A carry-select adder is divided into sec-
tors, each of which – except for the least-
significant – performs two additions in
parallel, one assuming a carry-in of zero,
the other a carry-in of one. The 16-bit
carry-select adder of Figure 1, for exam-
ple, is divided into sectors of lengths 1,
2, 3, 4, and 6, proceeding from least-sig-
nificant to most-significant bit. The 4-bit
sector of Figure 2 illustrates the general
principle.
Within the sector, there are two 4-bit rip-
ple-carry adders receiving the same data
inputs but different carry-ins. The upper
adder has a carry-in of zero; the lower
adder a carry-in of one. The actual carry-
in from the preceding sector selects one
of the two adders. If the carry-in is zero,
the sum and carry-out of the upper adder
are selected. If the carry-in is one, the
sum and carry-out of the lower adder are
selected.