|
State Machine Design - Manual Implementation
Complete the manual design and implementation of the following state machines.
Specifically, complete all steps of the
9-step process, unless otherwise noted below, clearly labeling each step in your
solution. Derive minimal SOP equations using k-maps or algebra. For consistency, everyone must use state
variables named Q#, with Q0 as the LSB, in the normal ordering with the MSB on the left
and the LSB on the right; for example, a machine with 3 state variables would be
labeled "Q2 Q1 Q0". Label the excitation variables according to the
corresponding state variables (like J0 and K0 for flip-flop Q0). Keep the state names, input variables, and output
variables in the same order (top-to-bottom, left-to-right) as given in the
supplied state/output tables.
1. Implement this FSM with D flip-flops using the simplest
state assignment with a goal of minimal risk (not minimal cost).
Consider the safest state to be Init and the safest output to be 0. Draw the logic
diagram (step 9), including the proper reset upon power-up. Complete
the entire design process for this problem.
P
S | 0 1 | W
--------------------------------
Init | Init Got1 | 0
Got1 | Init Got11 | 0
Got11 | Got110 Got11 | 0
Got110 | Init Got1101 | 0
Got1101 | Init Got1 | 1
----------------
S*
2. Implement this FSM with T-with-enable flip-flops using
a one-hot state assignment, with codes of 1000, 0100, 0010, 0001 for the 4
states in order from Init to E310, using minimal cost. Be sure to take advantage of the equation
simplifications made possible by the one-hot assignment. You can't do this
easily with k-maps, so try algebraic simplification. Omit step 9.
A1 A0
S | 00 01 10 11 | Unlk
--------------------------------------
Init | Init Init E31 E3 | 0
E3 | Init E31 Init E3 | 0
E31 | E310 E31 Init E3 | 1
E310 | Init Init E3 E3 | 1
-------------------
S*
3. Implement this FSM with J-K flip-flops using the
simplest state assignment. Omit step 9.
TH
S | 0 1
-----------------
C0 | C1,0 C3,1
C1 | C2,0 C3,0
C2 | C3,1 C2,0
C3 | C0,0 C2,0
------------
S*,End |