Download old version - Electronic Systems and Networking Group

Transcript
An ASM chart is composed of three basic elements, the State (rectangular box), the Decision Block
(diamond) and the Conditional Output Box.
A set composed of one state box, decision blocks and conditional output blocks is named ASM Block. An
ASM Block has one entry point, but may have any number of exit paths, each of them connecting to another
state box.
The FSM moves from state to state at each clock cycle; each state may have a state output; conditional
blocks allow choosing a direction as a function of the value of the inputs; conditional outputs depend not only
on states but also on input values.
State Block
On an ASM chart, a state is represented by a state box, which is a rectangle
with the name of the state encircled and placed at the side of the rectangle
(Fig. 38a). You can specify that an output signal is unconditionally active in a
particular state by writing the output signal's name inside the corresponding
state box. Output signals written inside state boxes are known as state outputs
or Moore outputs.
Fig. 38a: State Block
Decision Block
While unconditional transitions can be represented with a straight, not labelled
arrow traced between two state boxes, conditional transitions deserve a more
specific symbol. This is called decision diamond. Depending on the value of the
expression written inside the diamond, the machine will follow one of the two
labelled transition arrows going out of the diamond. A diamond has always two
outgoing arrows, one labelled "1" (or TRUE) and the other labelled "0" (or
FALSE) that corresponds to the values of the boolean expression inside.
Fig. 38b: Decision Block
Conditional Output Block
Sometimes you may need to activate an output signal in a particular state only
if a certain condition on inputs is satisfied (such output signals are known as
conditional outputs or Mealy outputs). In that case you need to use the
conditional output block.
Just put the ellipse on a transition arrow coming out of a decision diamond, and
write inside the ellipse the name of the output signal you want to activate when
the expression inside the diamond is true. Please notice that the conditional
block does not represent a state; instead it activates an output that it is active
in the state it descends from.
Fig. 38c: Conditional Output
Block
ASM Charts & State Diagrams
It is easy to convert a State Diagram in an ASM Chart, and vice versa. In Fig. 39a we report a basic example
of State Diagram:
Fig. 39a: The State Diagram representation of a SR flip-flop.
51