11 Finite State Machines I
3/22/2010
© Copyright Kenneth Short 2003, 2006
1
3/22/2010
© Copyright Kenneth Short 2003,
2006
1
Finite State Machines
Kenneth Short
3/22/2010
© Copyright Kenneth Short 2003,
2006
2
Finite State Machine
A sequential machine, also known as a finite state machine
(FSM), is a digital system whose outputs are a function of both
its present and past inputs
A synchronous FSM’s inputs are examined and its outputs
change at the triggering edge of its clock
Accordingly, its input and output sequences are ordered in time
by its clock
A FSM’s present state provides all the information concerning
its past history of input values that is needed is to determine
its next state and output
The present state is stored as a binary value in a state register

This
** preview**
has intentionally

**sections.**

*blurred***to view the full version.**

*Sign up*
11 Finite State Machines I
3/22/2010
© Copyright Kenneth Short 2003, 2006
2
3/22/2010
© Copyright Kenneth Short 2003,
2006
3
FSM Block Diagram
Combinational
logic
Register
Inputs
Outputs
next_state
present_state
clock
3/22/2010
© Copyright Kenneth Short 2003,
2006
4
Present State – Next State
A FSM’s outputs are computed by a combinational logic
subcircuit from its external inputs and present state.
Combinational logic computes the next state from the FSM’s
inputs and present state
The next state is the value clocked into the state register at
the next triggering clock edge

11 Finite State Machines I
3/22/2010
© Copyright Kenneth Short 2003, 2006
3
3/22/2010
© Copyright Kenneth Short 2003,
2006
5
Separation of Output and Next State
Combinational Logic
Combinational
Next State
Logic
Register
Inputs
Outputs
next_state
present_state
clock
Combinational
Output
Logic
3/22/2010
© Copyright Kenneth Short 2003,
2006
6
Synchronous FSM Operation
state 0
state 2
state 1
input a
input b
input c
state 2
state 1
state 3
inputs
present state
next state
clock
output q
output p
output r
output

This
** preview**
has intentionally

**sections.**

*blurred***to view the full version.**

*Sign up*