Johnson Counter in Digital Electronics

Johnson counter or Switch Tail or Twisted Ring Counter is a synchronous counter. An n-bit ring counter circulates a single bit among the flip flops to provide n distinct states. The number of states can be doubled if the shift register is connected as a switch tail ring counter.

A switch tail ring counter is a circular shift register with the complement output of the last flip flop connected to the input of the fist flip flop. The circular connection is made from the complement output of the rightmost flip flop to the input of the leftmost flip flop. The register shifts its contents once to the right with every clock pulse and at the same time, the complement value of flip flop 4 are transferred to flip flop 1.

Johnson counter in digital electronicsStarting from cleared states, the 4-bit switch tail ring counter goes through a sequence of 8 states. In general, a k-bit switch tail ring counter will go through a sequence of 2k states.

Starting from all 0’s, each shift operation inserts 1’s from the left until the register is filled with all 1’s. In the following sequence 0’s are inserted from the left until the register is again filled with all 0’s.

CLK Qa Qb Qc Qd Qd
0 0 0 0 0 1
1 1 0 0 0
2 1 1 0 0
3 1 1 1 0
4 1 1 1 1 0
5 0 1 1 1
6 0 0 1 1
7 0 0 0 1
8 0 0 0 0 1

Mod of Johnson Counter is 2n, therefore it is known as Divide by 2N Counter.

Frequency of Output = frequency of Clock Pulse / mod

fjohnson = f / 2n

Disadvantage of Johnson Counter

Disadvantage of Johnson Counter is that it doesn’t count in a binary sequence.

Johnson counters can be constructed for any number of timing sequences. The number of flip flops needed is one half the numbers of timing signals.


Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">