Page 568 - Engineering Digital Design
P. 568

538                 CHAPTER 11 / SYNCHRONOUS FSM DESIGN CONSIDERATIONS















                                                                      XY       CLRREGiT
                                                                               LDCNTiT










                                                                           (b)
                    FIGURE 11.41
                    ASM chart and state diagram for a resolver configuration having two inputs and having both condi-
                    tional and unconditional outputs, (a) ASM chart by using symbols in Fig. 11.40. (b) The equivalent
                    fully documented state diagram for the ASM chart in (a).


                       An example of the application of ASM chart notation is presented in Fig. 11.4 la, together
                    with its state diagram equivalent in Fig. 11.41b. This is seen to be a three-state resolver seg-
                    ment having two inputs, X and Y, and both conditional (Mealy) and unconditional (Moore)
                    outputs. Notice the manner in which the conditional output RES must be represented in the
                    ASM chart. A conventional flowchart representation would have combined the conditional
                    output RES, indicated as RES if Y, with the unconditional output FIN in state c. Notice
                    also how much easier it is to read the state diagram than the ASM chart. Imagine how
                    difficult it would be to obtain the NS-forming logic by using the ASM chart. Clearly, the
                    fully documented state diagram is much more suitable for this purpose. This leads to the
                    following guidelines regarding the use of ASM charts vs the use of state diagrams:


                       For state machines of up to moderate complexity, the ASM chart, like the flow chart,
                       should be used as a "thinking tool" in the construction of a fully documented state
                       diagram. Extracting the NS- and output-forming logic from fully documented state
                       diagrams is much simpler for such FSMs than the use of ASM charts. It is rare in mod-
                       ern times that ASM charts are used in the design of state machines. Rather, it is more
                       likely that experienced designers will design modern complex state machines by using
                       a hardware description language such as VHDL or Verilog. The ASM chart or flow
                       chart can be useful in obtaining a VHDL or Verilog description of a given state ma-
                       chine, but will not likely be used to design it. The one notable exeption to this is the use
                       of the one-hot code method in state machine design, as described later in Section 13.5.
                       There, the ASM chart is shown to be useful in writing the NS and output functions
                       directly from the ASM chart without the need for K-maps or minimization algorithms.
   563   564   565   566   567   568   569   570   571   572   573