FSM Module
FSM Module
DESIGN
CLOCK
CLOCK
• S-R Latch/FF • Q* = S + R’ Q
• D Latch • Q* = D
• D F/F • Q* = D
• D F/F with Enable • Q* = EN D + EN’ Q
• J-K F/F • Q* = J Q’ + K’ Q
• T F/F • Q* = Q’
• T F/F with Enable
• Q* = EN Q’ + EN’ Q
Prof. Kanchan S. Gorde, TEC 6
Synthesis (Design) of a finite-state machine is the
function.
Partitioning table
Partition 1 Partition 2
Prof. Kanchan S. Gorde, TEC 51
•After repeating this step for all columns and partitions, the final
partition table can be seen in Table:
Partition 3 (Final)
Composite
partition table
Gray Code
•Gray code was named after Frank Gray.
•In gray code, each successive state differs from the
previous state by only one bit.
•With only one bit changing from each state to the next,
power consumption is reduced from binary code where
multiple states can change at the same time.
•This allows for a minimum number of bits used and an also
a small equation for each bit.
Prof. Kanchan S. Gorde, TEC 54
Clocked Synchronous State-Machine
Design
•The steps for designing a clocked synchronous state
machine (the reverse of the analysis steps) :
1. Construct a state/output table corresponding to the
word description or specification, using mnemonic
names for the states.
2. Optional - minimize the number of states in the
state/output table.
3. Choose a set of state variables and assign state-
variable combinations to the named states.
4. Substitute the state-variable combinations into the
state/output table to create a transition/output table
that shows the desired next state-variable combination
and output for each state/input combination.
Prof. Kanchan S. Gorde, TEC 55
5. Choose a flip-flop type (e.g., D or J-K) for the state
memory.
6. Construct an excitation table that shows the
excitation values required to obtain the desired next
state for each state/input combination.
7. Derive excitation equations from the excitation
table.
8. Derive output equations from the transition/output
table.
9. Draw a logic diagram that shows the state-variable
storage elements and realizes the required excitation
and output equations. (Or realize the equations
directly in a programmable logic device.)
•Excitation table:
•Logic diagram:
Z
X’
Overlapping
Non-Overlapping
Overlapping
Non-Overlapping
Non-Overlapping
Overlapping
Non-Overlapping
Overlapping
Overlapping
Non-Overlapping
Overlapping
Non-Overlapping
Overlapping
Non-Overlapping
Overlapping
Non-Overlapping