94.

[Top] [Next] [Prev]

Chapter Review

In this chapter, we have concentrated on understanding the basic timing behavior of a finite state machine: when inputs are sampled, when the next state and outputs undergo transition, and when these become stable. We presented the Moore and Mealy machine organizations, the latter in both asynchronous and synchronous forms. The basic idea is that you can represent a finite state machine by combinational logic functions of the current state (both Moore and Mealy machines) and inputs (Mealy machine) for the next state and output. Flip-flop storage elements hold the current state.

We introduced a six-step process for finite state machine design, and the body of this chapter concentrated on the first two of these steps: understanding the problem and obtaining an abstract representation of the finite state machine from an imprecise description of its behavior. We cover the remaining four steps, state minimization, state assignment, implementation of the state registers, and implementation of the next state and output combinational functions, in Chapter 9.

In terms of abstract FSM representations, we presented the algorithmic state machine (ASM) notation as a precise way to describe FSM behavior using a flowchart-like description. In addition, we gave example descriptions in popular hardware description languages, VHDL and ABEL.

We illustrated the process of mapping a word specification to a state diagram or ASM chart with four detailed case studies: a finite string recognizer, a complex counter, a traffic light controller, and a digital combination lock. The mapping strategies are founded on (1) understanding the input/output behavior of the specified FSM, (2) drawing diagrams to help understand the problem statement, (3) enumerating states and developing state transitions for the expected or "goal" cases, (4) expanding the description to include the exceptional or error states and transitions, and (5) carefully reusing states whenever possible.

We are now ready to examine the process of finite state machine optimization and implementation in the next two chapters.

Further Reading

The concept of algorithmic state machines (ASMs) has appeared in several recent books. A very good, albeit brief, description can be found in Prosser and Winkel, The Art of Digital Design, Prentice-Hall, Englewood Cliffs, NJ, 1987. A more detailed mathematical description is to be found in Green, Modern Logic Design, Addison-Wesley, Wokingham, England, 1986.

VHDL is a government-backed industry standard hardware description language. Several vendors of computer-aided design tools now provide VHDL simulator support. Armstrong, Chip-Level Modeling with VHDL, Prentice-Hall, 1989 provides an excellent tutorial introduction to modeling hardware systems with VHDL. The language's capabilities are presented in a step-by-step fashion as the reader advances through the text. A more exhaustive (and exhausting) description can be found in Coehlo, The VHDL Handbook, Kluwer, Boston, MA, 1989. This book includes voluminous example VHDL models for standard TTL components, such as gates, multiplexers, counters, and ALUs, and also contains the description of a complete RISC (reduced instruction set computer) processor.

[Top] [Next] [Prev]


This file last updated on 07/14/96 at 21:28:46.
randy@cs.Berkeley.edu;


What is Sarbanes-Oxley[q]
What is Sarbanes-Oxley[q]
ISBN: 71437967
EAN: N/A
Year: 2006
Pages: 101

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net