Page 530 - Engineering Digital Design
P. 530

500                CHAPTER 11 /SYNCHRONOUS FSM DESIGN CONSIDERATIONS


                               State     External
                             Variables   Inputs                          Externally initiated
                             /  A   x / ^      \                      /•     s-hazard
                                       X     x x                   A /(Constant state variables)
                                      \  n-1 "' 1 0               I
                            Q      Q  Q
                             m-l •••  1  0\  ...00  ...01  ...11  /  ...10
                                     ...00
                                                   \JL
                         Internally  ..-01
                      initiated s-hazard
                      (Constant inputs)  -.,


                                     ...10





                     FIGURE 11.8
                    Output table for fictitious output Z showing externally and internally initiated static hazard transitions
                    for either static 1-hazards or static 0-hazards.



                     a change in a state variable. The basic difference between these two types of static hazards
                     (s-hazards) is illustrated by the generalized output table for output Z shown in Fig. 11.8.
                    Here, the double arrows represent hazardous transitions for either static 1-hazards or static
                    0-hazards. Notice that an externally initiated s-hazard is created by a change in a single
                    external input while all state variables are held constant, meaning that an externally initiated
                    s-hazard takes place under a hold condition. Conversely, an internally initiated s-hazard is
                    created by a change in a single state variable with all external inputs held constant. But
                    in this latter case it will take an input change to initiate the transition that produces the
                     s-hazard. The following discussions will consider both externally and internally initiated
                    s-hazards.


                     11.3.1 Externally Initiated Static Hazards in the Output Logic

                    Externally initiated static hazards can occur only in Mealy FSMs. A simple example is
                    presented in Fig. 11.9a, which is a resolver state machine configuration similar to that
                    shown in Fig. 10.29a for the RET D flip-flop. This Mealy machine has two inputs, X and
                     Y, and one output, Z. It is the function of this FSM that its output Z remain constant unless
                    input Y changes while the FSM is in a resolved state, 01 or 10. Thus, a change in Y while
                    the FSM is in a resolved state deactivates the output Z. Note that the FSM never enters state
                     11, a don't-care state.
                       The minimum SOP cover is shown in Fig. 11.9b. Notice that the coupled variable is
                    identified as the external input Y. Also, observe that the state variables in the two coupled
                    terms, AY and BY, are read in minterm code as AB = 00 to indicate that the hazard is
                    produced by a change Y —»• Y in state 00 under the holding condition X. When the SOP
   525   526   527   528   529   530   531   532   533   534   535