The ripple-carry adder
One full adder handles one column. Line several up — each carry feeding the next — and you can add whole numbers, exactly the way you add on paper.
Built from first principles.
Before you start
What you need first
- The full adder — the FA cell with A, B, Cin → Sum, Cout.
- Binary addition — carrying from one column to the next.
What you'll be able to do
- Build an n-bit adder by chaining n full adders.
- Add two binary numbers through the chain, tracking the carry.
- Explain why it's called "ripple" — and the speed cost that name hides.
Chaining: one FA per column
Adding on paper, you work column by column, passing each carry left into the next column.
The circuit does the same: one full adder per bit, with each stage's
Cout wired into the next stage's Cin. The very
first carry-in is 0 (nothing to carry into the lowest column).
Add 0110 + 0011 (6 + 3) on a 4-bit ripple adder
Work the stages from the LSB (bit 0) upward, carrying each C into the next:
| Stage | Ai | Bi | Cin | Sum | Cout |
|---|---|---|---|---|---|
| bit 0 | 0 | 1 | 0 | 1 | 0 |
| bit 1 | 1 | 1 | 0 | 0 | 1 |
| bit 2 | 1 | 0 | 1 | 0 | 1 |
| bit 3 | 0 | 0 | 1 | 1 | 0 |
Reading the Sum bits from bit 3 down to bit 0, with the final carry-out on the far left:
Why "ripple" — and the catch
Look at the chain again: stage 1 can't finish until it knows C0 from stage 0;
stage 2 waits on C1; and so on. The carry has to ripple all the
way from the lowest stage to the highest before the answer is final.
Each full adder takes a little time to settle — say 2 ns of carry delay. For a wide adder the delays add up in series:
🔭 Looking ahead. Designers fix the speed problem with a carry-lookahead adder, which computes all the carries in parallel instead of waiting for them to ripple. You don't need its details now — just know that "make the carry faster" is the next step up, and the ripple adder is where everyone starts.
✏️ Try it yourself
(a) What connects one full-adder stage to the next? (b) What is the carry-in to the very
first stage? (c) Add 0101 + 0011 (5 + 3) on a 4-bit ripple adder — give the
4-bit sum and Cout. (d) If one FA has 2 ns of carry delay, what is the worst-case
delay of an 8-bit ripple adder?
Recap — the whole topic on one screen
| Idea | What you own now |
|---|---|
| n-bit adder | n full adders in a chain, Cout → next Cin |
| First carry-in | always 0 |
| Scales by | adding identical FA stages — design unchanged |
| "Ripple" | carry must propagate LSB → MSB before the answer is valid |
| Cost | delay grows with bit-width; carry-lookahead is the faster fix |