RTL Hardware Design Using VHDL: Coding for Efficiency, Portability, and Scalability
by Pong P. Chu
CHAPTER 9
SEQUENTIAL CIRCUIT DESIGN: PRACTICE
After learning the basic model and coding style, we explore more sophisticated regular sequential circuits in this chapter. The design examples show the implementation of a variety of counters, the use of registers as fast, temporary storage, and the construction of a “pipeline” to increase the throughput of certain combinational circuits.
9.1 POOR DESIGN PRACTICES AND THEIR REMEDIES
Synchronous design is the most important design methodology for developing a large, complex, reliable digital system. In the past, some poor, non-synchronous design practices were used. Those techniques failed to follow the synchronous principle and should be avoided in RT-level design. Before continuing with more examples, we examine those practices and their remedies. The most common problems are:
- Misuse of the asynchronous reset.
- Misuse of the gated clock.
- Misuse of the derived clock.
Some of those practices were used when a system was realized by SSI and MSI devices and the silicon real estate and printed circuit board were a premium. Designers tended to cut corners to save a few chips. These legacy practices are no longer applicable in today's design environment and should be avoided. The following subsections show how to remedy these poor non-synchronous design practices.

Figure 9.1 Decade counter using asynchronous reset.
In few special situations, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access