Published:2009/7/9 23:50:00 Author:May | From:SeekIC
Some circuits that add binary numbers have problems with time delay caused by carry propagation.This has been partially solved by the carry look-ahead adder. However, because of the complexity of this scheme, the carry look-ahead logic usually covers no more than 4 bits, and a ripple carry is implemented between the carry look-ahead blocks.
The Daniels Adder avoids these problems by presenting a scheme where carry bits are not used at all in the process of binary addition. It is based on recognition patterns, which exist with the binary addition truth table.
The addition is described by the following two sets of equations:
if in-1=jn-1 qn=in-1if in-1=jn-1 qn=qn-1if in=jnkn=qnif in=jn kn=qn
with the boundary condition that q-1=0, where in,jn and kn are the bit of binary weight 2n (nth bit) of the addend, summand, and sum respectively, qn is an intermediate variable and qn is the inverse of qn.
The value of the sum is (depending upon in, and jn) either the same as or the inverse of (depending upon in-1 and jn-1) a0, a1, or the inverse of the (n-1)th bit of the sum. Figure 45-1(a) shows the logic diagram of the ripple through implementation of the adder.
Because each stage calculates whether its value of the intermediate variable qn is the same as the previous stage's value (qn-1) in parallel, it is possible to devise simple same as logic that does not have the complexity drawback of carry look-ahead logic and can be carried over any number of bits (Fig.45-1(b)). A 32-bit adder built in this way will result in 11-gate delays (no gate having more than 4 inputs).
Especially compact and efflcient is the pipelined implementation (Fig. 45-1(c)), which can produce the sum at a rate of 3-gate delays/bit.
The high-speed adder circuits can be used on gate arrays or full-custom ICs to implement fast calcula-tion of addresses or data values. Because of their compact nature, they also use less space on the silicon than conventional adders do.
Reprinted Url Of This Article:
http://www.seekic.com/circuit_diagram/Basic_Circuit/FAST_BINARY_ADDING_CIRCUITS.html
Print this Page | Comments | Reading(3)
Code: