Full Adder
Definition
A full adder is a combinational logic circuit used to add three 1-bit binary inputs—typically called A, B, and Cin (carry-in)—and produce two outputs: a Sum and a Carry-out. It is a fundamental building block in digital arithmetic systems, especially in multi-bit binary adders used inside processors, calculators, and digital circuits.
A full adder differs from a half adder because it can handle an incoming carry from a previous stage, which makes it suitable for adding multi-bit binary numbers.
Inputs:
- A = first binary bit
- B = second binary bit
- Cin = carry from previous lower-order addition
Outputs:
- Sum = least significant result bit
- Cout = carry to the next higher-order stage
Main Content
1. Full Adder Logic
- A full adder performs binary addition of three input bits using basic Boolean logic.
- The output depends on the total number of 1s in the inputs:
- If the number of 1s is odd, the Sum = 1
- If the number of 1s is 2 or 3, the Carry-out = 1
- The operation can be expressed using Boolean equations:
- Sum = A ⊕ B ⊕ Cin
-
Cout = AB + Cin(A ⊕ B)
or equivalently
Cout = AB + ACin + BCin -
Here:
- ⊕ means XOR
- + means OR
- AB means AND
Truth Table
| A | B | Cin | Sum | Cout |
|---|---|---|---|---|
| 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 |
This truth table shows that the full adder correctly handles all possible 3-bit input combinations.
2. Full Adder Implementation
- A full adder can be built using logic gates such as XOR, AND, and OR.
- The most common implementation uses:
- 2 XOR gates
- 2 AND gates
- 1 OR gate
- One common design approach is:
- First XOR gate: computes A ⊕ B
- Second XOR gate: computes (A ⊕ B) ⊕ Cin, producing the Sum
- First AND gate: computes A · B
- Second AND gate: computes Cin · (A ⊕ B)
- OR gate: combines these AND outputs to produce Cout
ASCII-style circuit representation for understanding
A ───┐
XOR────┐
B ───┘ XOR──── Sum
│
Cin ────────┘
A ───┐
AND────┐
B ───┘ │
OR──── Cout
Cin ──┐ │
AND───┘
A⊕B ──┘
This structure is efficient because XOR naturally captures the parity needed for the sum, while AND/OR gates determine when a carry must be generated.
3. Full Adder in Multi-bit Addition
- A single full adder handles only one bit position; however, real binary numbers usually have many bits.
- To add multi-bit numbers, multiple full adders are connected in cascade to form an ripple carry adder.
- In this arrangement:
- The carry-out of the lower bit adder becomes the carry-in of the next higher bit adder.
- This process continues until all bits are added.
- Example: adding two 4-bit numbers
- A = 1011
- B = 0110
- Each bit position is added by one full adder
- Carries move from right to left across stages
Example of cascading
A3 A2 A1 A0
| | | |
FA FA FA FA
| | | |
S3 S2 S1 S0
Why this matters
- It allows construction of adders for any number of bits.
- It is the basis of many arithmetic circuits in digital systems.
- The main limitation is propagation delay, because each stage must wait for the previous carry.
Working / Process
1. Accept the three input bits
- The full adder receives A, B, and Cin.
- These represent two bits being added plus an incoming carry from a previous stage.
2. Generate the Sum bit
- The circuit first determines whether the number of 1s among the inputs is odd or even.
- Using XOR logic:
- A ⊕ B gives 1 when A and B are different.
- XORing that result with Cin gives the final Sum.
- This makes the sum bit equal to the parity of the inputs.
3. Generate the Carry-out bit
- The circuit checks whether at least two inputs are 1.
- If A and B are both 1, a carry is generated.
- If Cin is 1 and either A or B is 1, a carry is also generated.
- The final carry is the OR of all carry-producing conditions.
- This carry is sent to the next higher-order bit adder in multi-bit addition.
Advantages / Applications
Essential for binary arithmetic
- Full adders are the basic hardware units used to perform binary addition in digital circuits.
Used in multi-bit adders
- They are combined to build ripple carry adders, carry look-ahead adders, and other arithmetic units.
Widely used in processors and digital systems
- Full adders are found in CPUs, ALUs, calculators, counters, address generation circuits, and many embedded systems.
Summary
- A full adder adds three 1-bit binary inputs and produces Sum and Carry-out.
- It is a key combinational logic circuit used in binary arithmetic.
- Its main equations are based on XOR, AND, and OR operations.
Full adder
- , Sum, Carry-out, XOR, binary addition