An algorithmic state machine, or ASM, chart groups a state's actions with decision boxes and conditional-output boxes. It describes clocked control flow while retaining hardware timing meaning. A path through one state block determines actions and the next state for that cycle.

Worked example

A controller in WAIT checks request in a decision box. If request is zero, it returns to WAIT. If request is one, it asserts a conditional accept signal and chooses RUN as the next state. A state output busy can be asserted in the RUN state box.

What to watch for

An ASM chart is not a general software flowchart. Decisions within a state block do not necessarily consume separate clock cycles; state transitions establish the cycle boundaries.

Try it yourself

Does passing through two decision boxes in one ASM state automatically take two cycles?

Answer: No. Both can describe combinational decisions within the same state interval, subject to the resulting timing path.

How to study this topic

Begin with named states and a complete transition table. Then choose encodings and derive the logic. Trace inputs over several cycles, checking outputs as well as next states, including reset and unexpected encodings.

Explore related programmes

These recorded programmes are upcoming. This article is general educational content, not a syllabus or course sample.

Digital Electronics