ELEC2141 Sequential Circuit Design
ELEC2141 Sequential Circuit Design
1
Previously…
Sequential circuit analysis
State equations
State tables
State diagrams
Moore and Mealy sequential circuits
State minimization
State assignment
2
This lecture…
Sequential circuit design procedure
Finding state diagrams and tables
Designing with D, JK, T flip flops
Circuit synthesis
3
Sequential circuit design
Procedure
1. Derive the state diagram from the word description and
specifications of the desired operation
2. Reduce the number of states
3. Assign binary values to the states
4. Obtain the binary-coded state table
5. Choose the type of flip-flops to be used
6. Derive the simplified flip-flop input equations and output
equations
7. Draw the logic diagram
Sequential circuit design
Procedure
1. Derive the state diagram from the word description and
specifications of the desired operation
2. Reduce the number of states
3. Assign binary values to the states
4. Obtain the binary-coded state table
5. Choose the type of flip-flops to be used
6. Derive the simplified flip-flop input equations and output
equations
7. Draw the logic diagram
Sequential circuit design example
We need to design a circuit that detects a sequence of
three or more consecutive 1’s in a string of bits coming
from an input line (i.e. the input is in serial bit stream)
Sequential circuit design example
We need to design a circuit that detects a sequence of
three or more consecutive 1’s in a string of bits coming
from an input line (i.e. the input is in serial bit stream)
1. State diagram and state table
2. State reduction
0
B A C 0 0
A/0 D/1
C A D 0 0
1
0 D A D 1 1
1
0
1
B/0 C/0
Sequential circuit design example
4. Binary coded state diagram and table
0 1
Present Next state Output
state
0
00/0 11/1 X =0 X =1 X =0 X =1
A A B 0 0
0
1 1
0 B A C 0 0
1 C A D 0 0
01/0 10/0
D A D 1 1
7. Logic diagram
X A
Y
A
B
Clock
Excitation Tables
When D flip-flops are employed, the input equations are
obtained directly from the next state
However, for JK and T flip-flops, the input equations
need to be derived indirectly from the state table
An excitation table that lists the required inputs for a
given change of state in state table is thus needed
Excitation Tables
Characteristic table for JK flip-flop
Y Z X 𝒀𝒀 𝒕𝒕 + 𝟏𝟏 𝒁𝒁 𝒕𝒕 + 𝟏𝟏 JY KY JZ KZ Q(t) Q(t+1) J K
0 0 0 0 0 0 0 0 X
0 0 1 0 1 0 1 1 X
0 1 0 1 0 1 0 X 1
0 1 1 0 1 1 1 X 0
1 0 0 1 0
1 0 1 1 1
1 1 0 1 1
1 1 1 0 0
Synthesis using JK flip-flops
The required JK input equations can then be obtained
from the state table
ZX JY
Present Input Next state Flip-Flop Inputs Y 00 01 11 10
state
0
Y Z X 𝒀𝒀 𝒕𝒕 + 𝟏𝟏 𝒁𝒁 𝒕𝒕 + 𝟏𝟏 JY KY JZ JZ
1
0 0 0 0 0 0 X 0 X
0 0 1 0 1 0 X 1 X
ZX
KY
0 1 0 1 0 1 X X 1
Y 00 01 11 10
0 1 1 0 1 0 X X 0
0
1 0 0 1 0 X 0 0 X
1 0 1 1 1 X 0 1 X 1
1 1 0 1 1 X 0 X 0
1 1 1 0 0 X 1 X 1
Synthesis using JK flip-flops
The required JK input equations can then be obtained
from the state table
ZX JZ
Present Input Next state Flip-Flop Inputs Y 00 01 11 10
state
0
Y Z X 𝒀𝒀 𝒕𝒕 + 𝟏𝟏 𝒁𝒁 𝒕𝒕 + 𝟏𝟏 JY KY JZ JZ
1
0 0 0 0 0 0 X 0 X
0 0 1 0 1 0 X 1 X
ZX
KZ
0 1 0 1 0 1 X X 1
Y 00 01 11 10
0 1 1 0 1 0 X X 0
0
1 0 0 1 0 X 0 0 X
1 0 1 1 1 X 0 1 X 1
1 1 0 1 1 X 0 X 0
1 1 1 0 0 X 1 X 1
Synthesis using JK flip-flops
𝑱𝑱𝒀𝒀 =
𝑲𝑲𝒀𝒀 =
𝑱𝑱𝒁𝒁 =
𝑲𝑲𝒁𝒁 =
Logic diagram
X A
J
C
K
J B
C
K
Clock
Synthesis using T flip-flops
Design a three-bit counter consisting of three T flip-flops
that can count in binary form from 0 to 7
State diagram
111
000 110
001 101
010 100
011
Synthesis using T flip-flops
State Table
Present Next state Flip-Flop
state Inputs
A B C 𝑨𝑨 𝒕𝒕 + 𝟏𝟏 𝑩𝑩 𝒕𝒕 + 𝟏𝟏 𝑪𝑪 𝒕𝒕 + 𝟏𝟏 TA TB TC
0 0 0 Q(t) Q(t+1) T
0 0 0
0 0 1
0 1 1
0 1 0
1 0 1
0 1 1
1 1 0
1 0 0
1 0 1
1 1 0
1 1 1
Synthesis using T flip-flops
Present Next state Flip-Flop
state Inputs TA
BC
A B C 𝑨𝑨 𝒕𝒕 + 𝟏𝟏 𝑩𝑩 𝒕𝒕 + 𝟏𝟏 𝑪𝑪 𝒕𝒕 + 𝟏𝟏 TA TB TC A 00 01 11 10
0 0 0 0 0 1 0 0 1 0
0 0 1 0 1 0 0 1 1 1
0 1 0 0 1 1 0 0 1
0 1 1 1 0 0 1 1 1
TB
1 0 0 1 0 1 0 0 1 BC
A 00 01 11 10
1 0 1 1 1 0 0 1 1
0
1 1 0 1 1 1 0 0 1
1 1 1 0 0 0 1 1 1 1
BC
A 00 01 11 10
TC 0
1
Synthesis using T flip-flops
𝑻𝑻𝑨𝑨 = Logic diagram
𝑻𝑻𝑩𝑩 = T A
C
𝑻𝑻𝑪𝑪 =
T B
C
1 T C
C
Clock