Back to course

Synchronous Counter Design using JK/D FFs

Digital Logic Systems: From Zero to Hero

43. Synchronous Counter Design using JK/D FFs

Synchronous counters use a single clock source for all flip-flops, solving the ripple delay problem. Designing them requires formal sequential logic synthesis.

Design Steps (4-Bit Up Counter using JK FFs)

  1. State Diagram: Define the sequence (0000 to 1111).
  2. State Table: List current state $Q(t)$ and next state $Q(t+1)$.
  3. Excitation Table: Use the JK FF characteristic table to determine the required inputs (J and K) needed to achieve the state transition.
  4. K-Map Minimization: Minimize the resulting Boolean expressions for each $J_i$ and $K_i$ input.

Results for a Simple Up Counter

Even for a simple binary up counter, a pattern emerges:

  • $J_0 = K_0 = 1$ (LSB always toggles)
  • $J_1 = K_1 = Q_0$ ($FF_1$ toggles only if $Q_0=1$)
  • $J_2 = K_2 = Q_0 Q_1$ ($FF_2$ toggles only if $Q_0=1$ AND $Q_1=1$)
  • $J_3 = K_3 = Q_0 Q_1 Q_2$

This structure ensures all FFs receive the clock simultaneously, but the required toggle signal is calculated combinationaly before the clock edge arrives.