FSM
FSM
INTRODUCTION
• An FSM (finite state machine) is used to model a system that transits among a finite number of internal states.
The transitions depend on the current state and external input. Unlike a regular sequential circuit, the state
transitions of an FSM do not exhibit a simple, repetitive pattern. Its next-state logic is usually constructed
from scratch and is sometimes known as "random" logic. This is different from the next-state logic of a
regular sequential circuit, which is composed mostly of "structured components, such as incrementors and
shifters.
• In practice, the main application of an FSM is to act as the controller of a large digital system, which
examines the external commands and status and activates proper control signals to control operation of a data
path, which is usually composed of regular sequential components.
B l o c k diagram of a synchronous FSM.
• An FSM is usually specified by an abstract state diagram or ASMchart both capturing the FSM's input,
output, states, and transitions in a graphical representation.
• The two representations provide the same information. The FSM representation is more compact and better
for simple applications. The ASM chart representation is somewhat like a flowchart and is more descriptive
for applications with complex transition conditions and actions.
State diagram