The Design Procedure
• Specification
• Formulation - Obtain a state diagram or state table
• State Assignment - Assign binary codes to the states
• Flip-Flop Input Equation Determination - Select flip-flop types and derive
flip-flop equations from next state entries in the table
• Output Equation Determination - Derive output equations from output
entries in the table
• Optimization - Optimize the equations
• Technology Mapping - Find circuit from equations and map to flip-flops
and gate technology
• Verification - Verify correctness of final design
1
Formulation: Finding a State Diagram
• A state is an abstraction of the history of the past applied inputs to the
circuit (including power-up reset or system reset).
– The interpretation of “past inputs” is tied to the synchronous operation of
the circuit. E. g., an input value (other than an asynchronous reset) is
measured only during the setup-hold time interval for an edge-triggered
flip-flop.
• Examples:
– State A represents the fact that a 1 input has occurred among the past
inputs.
– State B represents the fact that a 0 followed by a 1 have occurred as the
most recent past two inputs.
2
Circuit, State Diagram, State Table
Circuits with Flip-Flop = Sequential Circuit
Circuit = State Diagram = State Table State
Minimization
Sequential Circuit Design
Example: Sequence Detector Example:
Binary Counter
3
Circuit, State Diagram,
State Table
4
Circuit, State Diagram, State Table
5
Circuit, State Diagram, State Table
6
Circuit, State Diagram, State Table
Terms:
State: flip-flop output combination Present state: before clock
Next state: after clock
State transition <= clock 1 flip-flop => 2 states
2flip-flops => 4 states
3flip-flops => 8 states
4flip-flops => 16 states
7
Circuit, State Diagram, State Table
Sequential circuit components:
Flip-flop(s) Clock Logic gates Input Output
8
Circuit, State Diagram, State Table
State diagram:
Circle => state Arrow => transition
input/output
9
Circuit, State Diagram, State Table
State table:
Left column => current state Top row => input combination
Table entry => next state, output
10
Circuit, State Table, State Diagram
Example:
11
Circuit, State Table, State Diagram
Example:
12
Circuit, State Table, State Diagram
Example:
13
Circuit, State Table, State Diagram
Example:
14
Circuit, State Table, State Diagram
Example:
Show the state table and
state diagram
15
circuit
state table
state diagram
16
0 0
1
00/0 01/0
1 1
11 /1 10 /0
1
0 0
circuit
state table
state diagram
17
0 0
1
00/0 01/0
1 1
11 /1 10 /0
1
0 0
circuit
state table
state diagram
18
Circuit, State Table, State Diagram
Example:
19
Circuit, State Diagram, State Table
Example: state diagram = state
table
20
Circuit, State Diagram, State Table
Example: state diagram = state
table
21
Circuit, State Diagram, State Table
Example: Show the state diagram of following circuit
22
Circuit, State Diagram, State Table
Example: Show the state diagram of following circuit
23
Circuit, State Diagram, State Table
More Example: Binary Counter – show state diagram and
table
24
Circuit, State Diagram, State Table
More Example: Binary Counter – show state diagram and
table
25
Circuit, State Diagram, State Table
Quiz:
http://www.eelab.usyd.edu.au/digital_tutorial/part3/t-
diag.htm
Circuit, State Diagram, State Table
Quiz: solution
http://www.eelab.usyd.edu.au/digital_tutorial/part3/t-diag.htm
Circuit, State Diagram, State Table
More Example:
http://www.eelab.usyd.edu.au/digital_tutorial/part3/example1-1.htm
26