Page 660 - Engineering Digital Design
        P. 660
     630              CHAPTER 13 / ALTERNATIVE SYNCHRONOUS FSM ARCHITECTURES
                    of course, don't cares. The composite output K-map in Fig. 13.16c is useful since a state
                    decoder is to be used to generate all Moore outputs and to reduce the logic necessary for
                    the Mealy outputs.
                       Gathering the results so far, the expressions for the serial and parallel load inputs are
                                                     L = 1
                                                                                       (13.3)
                                        P B=BC = State 1
                                        PC = BS + C = (State 3) • S + State 5
                                        P D = C = State 5
                    and for the four outputs
                                             M = (State 1) • V + State 4
                                             N = (State 5) • V
                                                                   \,                  (13.4)
                                             P= State 1            '
                                             Q = State 2
                    where it is understood that the mode control inputs, S\ and So, are to be generated by
                    8-to-l MUXs and that a state decoder is to be used to produce the State values given
                    in Eqs. (13.3) and (13.4). It is important for the reader to realize that the State values
                    in the parallel load and output equations can be read directly from the state diagram. For
                    example, P B — State 1 since the only parallel load involving state variable B is the branching
                    01 1 1 -> 0100. Similarly, P c = (State 3) • S + State 5 is due to the parallel load 001 1 -^ 0010
                    under branching condition S and the unconditional parallel load transition 0101— >• 00 11.
                    Or, in the case of an output, TV = (State 5) • V results since N is conditional on V in state
                    0101. Thus, the use of a state decoder can save time and reduce the number of external
                    gates required for implementation, which, of course, comes at the cost of adding a state
                    decoder.
                       Shown in Fig. 13.17 is the FSM of Fig. 13.15a centered around a USR and state decoder
                    with 8-to-l MUXs used to generate the mode controls, S\ and SQ. Here, the external logic
                    to the MUXs is the logic contained in the cells of the mode control K-maps, and the parallel
                    load and output logic follow Eqs. (13.3) and (13.4). An output holding register, triggered
                    anti-phase to the memory, is necessary since ORGs abound, as can be seen by an inspection
                    of the state diagram in Fig. 13.15a. Observe that the shifting and parallel load action re-
                    quired by this FSM presents no problem at the inactive MSB position, A, since that position
                    accepts a logic 0 in all cases.
                       The use of the state decoder in Fig. 13.17 is to be considered a design convenience,
                    and so its presence is arbitrary. A state decoder helps to minimize the parallel load and
                    output-forming logic and reduces the overall effort in obtaining this logic. In the absence
                    of a state decoder, one can expect a significant increase in the number of gates required to
                    implement the parallel load and output logic. For example, without the state decoder, the
     	
