Skip to main content

Mod-5 synchronous up counter using SR

Short answer

Three SR flip-flops with common clock. Equations: S2=Q1·Q0, R2=Q0'; S1=Q1'·Q0, R1=Q1·Q0; S0=Q2'·Q0', R0=Q0. Sequence: 000→001→010→011→100→000. Unused states 101→110→010 and 111→100 ensure self-starting operation.

Design a synchronous mod-5 up-counter using SR flip-flops and draw its timing diagram.

A synchronous mod-5 up counter counts 000 → 001 → 010 → 011 → 100 → 000 with all flip-flops on one clock. Three SR flip-flops (Q2Q1Q0Q_2Q_1Q_0) are needed (23=8≥52^3 = 8 \ge 5); states 101, 110, 111 are don't cares.

Step 1: SR excitation

Q → Q+SR
0 → 00X
0 → 110
1 → 001
1 → 1X0

Step 2: Excitation table

Present Q2Q1Q0Next Q2Q1Q0S2R2S1R1S0R0
0000010X0X10
0010100X1001
0100110XX010
011100100101
100000010X0X

Step 3: K-maps

S0: Q2 / Q1Q000011110
01001
10XXX
R0: Q2 / Q1Q000011110
00110
1XXXX
S1: Q2 / Q1Q000011110
0010X
10XXX
R1: Q2 / Q1Q000011110
0X010
1XXXX
S2: Q2 / Q1Q000011110
00010
10XXX
R2: Q2 / Q1Q000011110
0XX0X
11XXX

For R2R_2, both Q1‾\overline{Q_1} and Q0‾\overline{Q_0} cover the 1-cell. With R2=Q1‾R_2 = \overline{Q_1} the unused state 110 would hold itself forever (lock-out), so R2=Q0‾R_2 = \overline{Q_0} is chosen.

Step 4: Equations

S2=Q1Q0,R2=Q0‾S1=Q1‾Q0,R1=Q1Q0S0=Q2‾Q0‾,R0=Q0\begin{aligned} &S_2 = Q_1Q_0,\quad R_2 = \overline{Q_0} \\ &S_1 = \overline{Q_1}Q_0,\quad R_1 = Q_1Q_0 \\ &S_0 = \overline{Q_2}\overline{Q_0},\quad R_0 = Q_0 \end{aligned}

S and R of each flip-flop are never 1 together in any state, so the forbidden input S = R = 1 never occurs.

Step 5: Circuit diagram

   +-----+       +-----+       +-----+
S0>|S   Q|-Q0 S1>|S   Q|-Q1 S2>|S   Q|-Q2
   | FF0 |       | FF1 |       | FF2 |
R0>|R    |    R1>|R    |    R2>|R    |
   +--o--+       +--o--+       +--o--+
      |             |             |
CLK---+-------------+-------------+
S0 = Q2'.Q0'   R0 = Q0
S1 = Q1'.Q0    R1 = Q1.Q0
S2 = Q1.Q0     R2 = Q0'

Unused states: 101 → 110 → 010, 111 → 100, so the counter is self-starting.

Step 6: Timing diagram

CLK  __|‾|_|‾|_|‾|_|‾|_|‾|_|‾|_|‾|_|‾
Q2   ________________|‾‾‾|___________
Q1   ________|‾‾‾‾‾‾‾|___________|‾‾‾
Q0   ____|‾‾‾|___|‾‾‾|_______|‾‾‾|___
Cnt  0    1   2   3   4   0   1   2

Q2Q_2 is high for one clock period in every five (fclk/5f_{clk}/5).

✓ Answer checked by Claude Opus 5.5 (high effort)

All Digital Logic chapter 8 questions →