A abstract machine that have:
- Finite set of states
- Finite set of transitions between states triggered by inputs
- Output haves are determined by states and transitions
They are modelled by State Diagram or State Table
FSM Design Steps
- Draw a State Diagram
- Derive a State Table from state diagram
- Assign a flip-flop value configuration to each state (At least flip flops)
- Redraw State Table with Flip-Flop
- Derive Combinational Circuit for output and each flip flop input
- State logic: Figure out next state
- Output logic: Figure next output