The serial adder's structure is showed here as an example. Using the binary number representation, both summands are given as
with the processing word width n.
The sum results from
with the carry
considering
because there is no carry in this initial situation. At the adder's input a tuple ai, bi appears at each rising clock edge. At the same moment the previously sum and carry bit are stored in the D-flip-flops (fig. 1). This assures that the carry affects the sum bit's computation one clock later. The multiplexor controlling the carry FF ensures equation 3. Therefore it is switched to put out an 0 while cn - 1 is transmitted on the output of the part for the carry's computation.
Each bit of the sum can be processed in the following elements. As a result, an operand is handled in a distributed manner, which conforms a pipeline. This kind of adder consumes a very small amount of logic. It takes only two FFs and about 15 gates. Detecting an overflow or underflow needs determination of the word's boundary. Therefore a Sync-signal jAdder has to be chosen from a Sync-bus (see section 4). This can be achieved by calculating the signal's constant delay in bit flow.
Thomas Reinemann 2003-07-03