Counters: Ring, Johnson, Ripple, and Decade
1. Ring Counter
Definition: A ring counter is a shift register where the output of the last flip-flop is fed back to the input of the first flip-flop.
Operation: Only one flip-flop is "1" at a time, circulating a single 1 around the ring.
Number of Bits: Can be any number of flip-flops (common example: 4-bit).
States (4-bit example):
1000 → 0100 → 0010 → 0001 → 1000 ...
2. Johnson Decade Counter (Twisted Ring Counter)
Definition: A Johnson counter is a ring counter with inverted feedback: the inverted output of the last flip-flop is fed to the first flip-flop.
Number of Bits: Usually 4 bits for a Johnson decade counter.
States (4-bit example):
0000 → 1000 → 1100 → 1110 → 1111 → 0111 → 0011 → 0001 → 0000 ...
It cycles through 10 unique states (hence "decade").
3. Ripple Counter (Asynchronous Counter)
Definition: A ripple counter is an asynchronous binary counter where the clock input of each flip-flop comes from the output of the previous flip-flop.
Number of Bits: Can be any number (common: 4-bit).
States (4-bit example): 0 → 1 → 2 → ... → 15 (16 states total)
4. Decade Counter (Binary Coded Decimal Counter)
Definition: A decade counter is a 4-bit counter that counts from 0 to 9 (10 states) and then resets to 0.
Operation: Commonly implemented using flip-flops with combinational logic to reset after the 9th state.
Number of Bits: 4 bits
States (4-bit example):
0000 → 0001 → 0010 → 0011 → 0100 → 0101 → 0110 → 0111 → 1000 → 1001 → 0000 ...
Comparison Table
| Counter Type | Feedback / Clock | Number of Bits | Number of States | Notes |
|---|---|---|---|---|
| Ring Counter | Last → First | Any (4 common) | n states | Circulates a single "1" |
| Johnson Counter | Last inverted → First | Usually 4 | 2n states (10 for 4-bit) | "Twisted ring" counter |
| Ripple Counter | Asynchronous clock | Any (4 common) | 2ⁿ states (16 for 4-bit) | Simple binary counting |
| Decade Counter | Binary clock with reset logic | 4 | 10 states | Counts 0–9, resets after 9 |
Summary
- Ring counter: n states, circulates a single 1.
- Johnson counter: 2n states, inverted feedback.
- Ripple counter: 2ⁿ states, asynchronous binary counting.
- Decade counter: 10 states, counts 0–9, resets to 0.
- They don’t have to be 4-bit, but 4-bit versions are common in textbooks.