How to design a carry save adder circuit?

Thread Starter

mahaju

Joined May 5, 2011
2
Rich (BB code):
Carry-save accumulators

Supposing that we have two bits of storage per digit, we can store the values 0, 1, 2, or 3 in each digit position. It is therefore obvious that one more binary number can be added to our carry-save result without overflowing our storage capacity: but then what?

The key to success is that at the moment of each partial addition we add three bits:

    * 0 or 1, from the number we are adding.
    * 0 if the digit in our store is 0 or 2, or 1 if it is 1 or 3.
    * 0 if the digit to its right is 0 or 1, or 1 if it is 2 or 3.

To put it another way, we are taking a carry digit from the position on our right, and passing a carry digit to the left, just as in conventional addition; but the carry digit we pass to the left is the result of the previous calculation and not the current one. In each clock cycle, carries only have to move one step along, and not n steps as in conventional addition.

Because signals don't have to move as far, the clock can tick much faster.

There is still a need to convert the result to binary at the end of a calculation, which effectively just means letting the carries travel all the way through the number just as in a conventional adder. But if we have done 512 additions in the process of performing a 512-bit multiplication, the cost of that final conversion is effectively split across those 512 additions, so each addition bears 1/512 of the cost of that final "conventional" addition.
This is from the wikipedia entry
CSA Wikipedia http://en.wikipedia.org/w/index.php?title=Carry-save_adder

what I don't understand is how do I use a carry save adder in practice. Suppose I need to build a 4 bit adder circuit, but using Carry Save adders instead of the conventional propagation type. What should I do?

And about the carry save accumulator paragraph quoted above, is there a detailed step by step tutorial on how to implement that? I don't understand what it means in the 2nd bullet: 0 if the digit in our store is 0 or 2, or 1 if it is 1 or 3

Please help me here.
Thanks
 

retched

Joined Dec 5, 2009
5,207
The austrailian winner of the 555 contest, made a carry-adder will 555s. Actually it did subtraction as well. (in base-9)

Check it out. The schematic should set you straight, as the flip-flops were the main things used in the 555 ICs

It used 102 555 timers, and a rotary telephone dialer to pulse the input to the adder.

http://www.vk2zay.net/article/258
 
Top