[Electronic Hardware and Software Design Solutions]

  A new paradign for synchronous state machine design in Verilog

Randy Nuss


Synchronous state machines are some of the most common building blocks in modern digital systems. They handle everything from communications handshaking protocols to microprocessor bus wait state insertion. State machines operate at hardware speeds where software cannot compete. All too often engineers take an ad-hoc approach to state machine design. Subtle and frustrating problems can arise from poorly designed state machines which typically manifest themselves as intermittent operation or lockup. Other problems such as glitches may appear in the outputs causing headaches for customers and service personnel long after a product is in production.

This article will first describe the basic architectures for synchronous state machines, then describe a method of state machine implementation which leads to glitchless, minimum-latency operation. The Verilog Hardware Description Language (HDL) will be utilized.

Read the article in Adobe pdf format.