Page 535 - Engineering Digital Design
P. 535

11.3 DETECTION AND ELIMINATION OF STATIC HAZARDS                     505










                                                      Q(H) leads Q(L)  Q(H) leads Q(L)
                                                      Condition for  Condition for
                                                      POS hazard     SOP hazard
                                                       formation      formation
                 FIGURE 11.13
                 Conditions for s-hazard formation from the mixed-rail output response of a flip-flop where <2(L) is
                 produced by an inverter.



                  When Is It Necessary to Run a Static Hazard Analysis on an FSM ? If the output logic
                 of an FSM appears to have the potential for s-hazard formation, there arises the question of
                 when an s-hazard analysis should be run on an FSM. There are specific guidelines one can
                 use in deciding this issue. These guidelines are stated next, but not in any particular order
                 of importance. A static hazard analysis should be carried out:

                    1. If it is known that s-hazard production in an output can cause a problem in the next
                      stage.
                    2. Always following an ORG analysis and any corrective action that may result.
                    3. If it is determined that the output in question is not to be filtered.
                    4. If there is no match of the output logic character with that of the flip-flop output
                      stages.
                    5. If the logic character of the flip-flops is unknown.

                 Generally, all five guidelines should be considered, but particular notice should be paid to
                 guidelines 2 and 3. Hazard analyses should always be carried out following any corrective
                 action required by an ORG analysis. If, for example, an ORG analysis requires a change in
                 the state code assignments or requires the particular use of a specific don't care in an output
                 K-map, the output logic is certain to change. It is useless to run a hazard analysis before
                 the final output logic is known. It is also useless to run either an ORG or a hazard analysis
                 if it is known that the output is to be filtered.

                 A Simple Example Consider the state diagram for the Mealy FSM presented in Fig. 11.14a.
                 It is shown to have two inputs, S and T, and one output, Y. The ORG analysis, which must
                 be run before the hazard analysis, is shown in Fig. 11.14b. No ORG is possible in this FSM,
                 and 04 can be used in any way to extract minimum cover for output Y. Notice that late
                 deactivation of Y is possible via race state 001 if the branching condition from c -» a is
                 ST, but normal deactivation if ST.
                    Hazard analyses for the FSM in Fig. 11.14 are carried out in Fig. 11.15. The hazard
                 analysis in Fig. 11.15a indicates that a static 1-hazard is possible if NOR-based flip-flops
                 are used with SOP output logic, and that the hazard cover required in that case is CST, the
   530   531   532   533   534   535   536   537   538   539   540