Page 714 - Engineering Digital Design
P. 714

680              CHAPTER 13 / ALTERNATIVE SYNCHRONOUS FSM ARCHITECTURES


                              the Stan signal. The count begins at the particular setting of the switches and
                              ends when the count reaches zero. The pulses are to be generated with active
                              clock by the Pulse output from the controller, and the counters are to count
                              with inactive clock on each rising edge of the Count command CNT from the
                              controller. An END(L) signal from the counters ends the count process when
                              zero has been reached. Make certain that the counters are loaded at least one
                              clock period before the CNT and Pulse signals are issued by the controller. Plan
                              to use four states for the controller design, and make certain that only one series
                              of pulses can be issued on a start command.
                                To design the BCD down counters, follow the example in Subsection 12.3.2,
                              but for a down count, and with asynchronous preset and clear override capability
                              as in Fig. 12.20. Let CNT(H) be the enabling input to the MSD counter, and
                              connect the two counters in series by connecting the BO(L) of the MSD counter
                              to the EN(H) of the LSD counter. Note that a pulse is never issued in the 0000
                              end state, and that any false data setting (1010 to 1111) must not result in pulse
                              generation.
                          (b) Construct a timing diagram of the results of part a assuming a count of 03. To
                              do this, include the waveforms for CK, START(H), LD(L), CNT(H), PULSE(H),
                              END(L), and present states A(H) and B(H).
                    13.20 An election between two competing candidates for mayor is to be held in a small
                          community of 752 registered voters. Design a voter booth tabulation system that
                          will tally the vote count on each of two competing candidates. The booth will show
                           an "Enter" light when not occupied. When the voter enters the booth and closes the
                          door, a Voter-in (VI) signal is sent to the controller, the "Enter" light is turned off,
                          and an "Occupied" light is turned on. This is accomplished by a motion detector
                          working in coordination with door and light switches (matters of no concern to this
                          design problem). Once in the booth with the door closed, the voter pushes one of
                          two switches for the candidate of his or her choice. When either button is pressed
                          a corresponding counter is incremented, and the door is automatically opened for
                          the voter to exit. The current count of each counter is stored in a register as a BCD
                          number ready to be presented later as a seven-segment display. If both buttons are
                          pressed simultaneously, neither counter is incremented and the door is opened. It
                          is not possible for a voter to vote twice while in the booth. Once the door is opened
                          and the voter exists the booth (VI), the process is ready to begin again. Assume
                          that the entrence to the voter booth is minitored in some way so as to prevent an
                          individual from voting more than once.
                            The block diagram for the controller is provided in Fig. P13.12(a) and the input
                          and output symbology is defined in Fig. P13.12(b). Take all inputs and outputs as
                          active high and note that the switch inputs Ba and Bb are presented to the controller
                          asynchronously from mechanical switches.
                            Design the controller for this system by using the one-hot-plus-zero approach,
                          and construct the functional partition for its operation. To do this, use RET D
                          flip-flops for the controller FSM, and RET cascaded BCD up-counters for the
                          count. In addition to the controller, plan to initialize the counters, registers and
                          the appropriate input conditioning circuits. Carefully consider how best to trigger
                          the registers relative to the counters and controller. Assume that the lights and
   709   710   711   712   713   714   715   716   717   718   719