20. Full Adder Circuit Design
While a Half Adder can add two bits, it cannot handle a carry-in from a previous stage of addition. The Full Adder (FA) resolves this.
The Need for Carry-In ($C_{in}$)
A Full Adder adds three inputs: the two input bits ($A, B$) and the Carry-In ($C_{in}$) generated by the previous stage.
Inputs: A, B, $C_{in}$ Outputs: Sum (S), Carry Out ($C_{out}$)
Truth Table (3 Inputs)
| A | B | $C_{in}$ | S | $C_{out}$ |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Deriving Logic Equations
- Sum (S): The sum is 1 if an odd number of inputs are 1. $$S = A \oplus B \oplus C_{in}$$
- Carry Out ($C_{out}$): The carry is 1 if two or three inputs are 1. $$C_{out} = A B + C_{in}(A \oplus B)$$
Alternatively, a Full Adder can be constructed using two Half Adders and one OR gate.