Page 524 - Engineering Digital Design
P. 524

494                 CHAPTER 11 /SYNCHRONOUS FSM DESIGN CONSIDERATIONS


                                                               Use ^ 1 as a 0 or X in Z K-map
                                                                        +
                                           Origin State             else  ( ) 9 litch in z
                                                                    Choice in Y K-map



                                              Destination
                                                State      AB









                                                                                     Race path 1
                                                                        (+) glitch in Z
                                                                     Early activation of Y
                                 (a)                                        (b)
                     FIGURE 11.3
                     Example of an ORG in a simple three-state FSM with two outputs, Y and Z, and one input X. (a) State
                     diagram showing the two alternative race paths for a transition from state a to state b. (b) Simplified
                     state diagram segment showing only the essential details of the race paths and ORG possibilities.



                     causing an ORG in output Z, but not in output Y. This can be understood by noting that the
                     output Z is not issued in the origin state 00 at the time the transition takes place. Nor is
                     Z issued in the destination state 11 at the time of arrival. But Z is issued unconditionally
                     in race state 10, thereby causing a discontinuity in the Z signal via race path 1 —an ORG.
                     Output 7, on the other hand, is issued conditionally on X in race state 10 and unconditionally
                     in the destination state 11. As a result, only early activation of Y is possible by way of race
                     path 1 — there is no ORG in Y.
                       The don't-care state 01 can potentially produce an ORG in output Z via race path 2 if
                     0i is used as a 1 or as an X in the K-map for output Z. This ORG can be avoided by using
                     0i as a 0 or X in extracting cover from the Z K-map. If X is used, for example, then the
                     output Z in state 01 is conditional on X. That is, the output is Z f^ if X, which does not
                     satisfy the branching condition X for the transition a-^-b, and no ORG in Z is possible.
                     The choice (f)\ = 0 in the Z K-map clearly makes state Ol a nonoutput state for Z. In the
                     case of output 7, don't care 0i can take on any value in the Y K-map, since only early
                     activation of Y is possible should Y be caused to be issued in state 01.
                       The NS and output K-maps and the resulting minimum covers for the simple FSM of
                     Fig. 11.3a are shown in Figs. 11.4a and 11.4b. (Remember that the NS K-maps are plotted
                     by using the mapping algorithm in Section 10.6). Notice that 0i is taken to be 0 in the Z
                     K-map, in agreement with the requirements indicated in Fig. 11.3b. Thus, an ORG in Z is
                     not possible via race path 2. But 0i is used as a 1 in the Y K-map, which is permissible
                     since, by race path 2, only early activation of output Y is possible. Early activation or late
                     deactivation of an output is not a problem and, in some cases, may even be preferred as a
                     means of optimizing output logic.
   519   520   521   522   523   524   525   526   527   528   529