# Adders :

Adders are used extensively in Computer arithmetic in addition, Subtraction, multiplication and division. There are is a constant attempt to make Adders faster as faster Arithmetic leads to faster Machine , E,g Faster Graphics . At very basic level Adders are classified as Half Adders and Full Adders:

Half Adder : Its a 1-bit Adder with no Carry-in. Output is 1-bit Sum and a Carry-out. Sum is XOR of inputs and Carry out is AND of inputs & is represented as follows:

```Sum   = A ^ B;
Carry = A & B;```

Gate and block diagram representation of Half Adder is shown below : Half Adder Half Adder (Courtesy: Creative Commons, Attribution-Share Alike 4.0 International ) Half Adder Block Diagram

Full Adder : Its a 1-bit/multi-bit Adder with carry in from previous Adder. Sum and Carry-out are represented as :

```Sum    = A ^ B ^ C;
= A B C + A' B' C' + A' B C' + A B'C';

Carry  = C (A ^ B) + AB;
= C ( A B' + A' B) + AB;
= A B' C + A' B C + A B;```

Gate and block diagram representation of Half Adder is shown below : Full Adder Full Adder (Courtesy : Creative Commons Attribution-Share Alike 4.0 International ) Full Adder Block Diagram

Multi-bit Adders can be formed by combining HA and FA. In each case, calculation of Carry is the most critical part in terms of Timing. Here’s an example of 2-bit Adder & 4-bit Adder formed using 1 HA and multiple FA: 2-bit Adder 4-Bit Adder (Ripple-Carry)(Courtesy: Creative Commons Attribution-Share Alike 4.0 International )

In order to optimize carry and make Adders fasters, different flavors of Adders have been introduced:
1. Ripple Carry Adder
2. Cary-Save Adder
3. Look-Ahead Carry Adder

## Published by ### tachyonyear

Silicon Design Enthusiast.