Ring counter

From Wikipedia, the free encyclopedia

A ring counter is a type of counter composed of a circular shift register. The output of the last shift register is fed to the input of the first register.

There are two types of ring counters:

  • A straight ring counter or Overbeck counter connects the output of the last shift register to the first shift register input and circulates a single one (or zero) bit around the ring. For example, in a 4-register counter, with initial register values of 1000, the repeating pattern is: 1000, 0100, 0010, 0001. Note that one of the registers must be pre-loaded with a 1 (or 0) in order to operate properly.
  • A twisted ring counter or Johnson counter connects the complement of the output of the last shift register to its input and circulates a stream of ones followed by zeros around the ring. For example, in a 4-register counter, with initial register values of 0000, the repeating pattern is: 0000, 1000, 1100, 1110, 1111, 0111, 0011, 0001.

[edit] Four-bit ring counter sequences

Straight ring/Overbeck counter Twisted ring/Johnson counter
Clock
pulse
Cycle Q0 Q1 Q2 Q3 Clock
pulse
Cycle Q0 Q1 Q2 Q3
0 I 1 0 0 0 0 I 0 0 0 0
1 0 1 0 0 1 1 0 0 0
2 0 0 1 0 2 1 1 0 0
3 0 0 0 1 3 1 1 1 0
4 II 1 0 0 0 4 1 1 1 1
5 0 1 0 0 5 0 1 1 1
6 0 0 1 0 6 0 0 1 1
7 0 0 0 1 7 0 0 0 1
8 III 1 0 0 0 8 II 0 0 0 0


[edit] External links

Languages