Fork me on GitHub

Project Notes

#320 Synchronous JK Counter

A synchronous 8-bit counter built with JK Flip-Flops.

Here’s a quick video of the circuit in action:

SynchJKCounter

Notes

A synchronous counter changes its output bits simultaneously, with no ripple. This contrasts with an asynchronous counter that changes its output bits in a ripple, as demonstrated by LEAP#186 AsyncJKCounter.

This project implements a classic synchronous counter design using JK flip-flops and AND gates.

How it Works

As with the asynchronous counter, the mechanism relies on the fact that in a binary sequence, the next highest bit transitions high when the previous lower bit transitions low:

q2 q1 q0 Note
0 0 0 q0 is directly toggled by the clock
0 0 1 q0 is directly toggled by the clock
0 1 0 q1 goes high when q0 goes low
0 1 1  
1 0 0 q2 goes high when q1 goes low

The circuit comprises chained 74LS73 Dual JK Flip-Flops with Clear and 74LS08 Quad 2-input AND gates.

As all the J-K inputs are ganged together, with clear inputs pinned high, only two states of the truth table apply:

CLR CLK J K Q Q’ Note
1 1 -> 0 0 0 Qo Qo’ i.e. unchanged
1 1 -> 0 1 1 Qo’ Qo i.e. toggle

The cascading of the change is achieved with the AND gate which combines the input and output of the previous JK flip-flop to set the input to the next JK flip-flop.

  • this sets the input to the next JK flip-flop high when the previous two “bits” are high
  • when the clock ticks, this causes the output of the next JK flip-flop to toggle

Construction

Breadboard

Schematic

Breadboard build:

Build

Breadboard test:

SynchJKCounter

Protoboard build:

Build

Build

Credits and References

About LEAP#320 CMOS/TTLDigital Logic
Project Source on GitHub Project Gallery Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is just my personal collection of projects. Two main themes have emerged in recent years, sometimes combined:

  • electronics - usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting
  • scale modelling - I caught the bug after deciding to build a Harrier during covid to demonstrate an electronic jet engine simulation. Let the fun begin..
To be honest, I haven't quite figured out if these two interests belong in the same GitHub repo or not. But for now - they are all here!

Projects are often inspired by things found wild on the net, or ideas from the many great electronics and scale modelling podcasts and YouTube channels. Feel free to borrow liberally, and if you spot any issues do let me know (or send a PR!). See the individual projects for credits where due.