Verbal Specification
Firstly, a verbal description is drawn up, outlining the problem to be solved and how the circuit will solve it. This is used to create a ̶0;state diagram,̶1; which presents the states of the circuit connected by the transitions between them, with each state being a different clock period of the circuit. These states are based on the binary system of zeroes and ones, and each state's response to receiving a certain binary input ̵1; which may be to wait for further input or to output binary data itself.
State Table
The state diagram is then translated into state table, which is a more formal depiction of largely the same information, displaying all the different states, inputs and outputs that the circuit will employ. The table is used to calculate the number of ̶0;flip-flops̶1; the circuit needs ̵1; a flip-flops being a portion of the circuit that can be in one of two states, and therefore is able to store binary data.
Conversion of States to Binary
Up to this point in the design process, the states of the circuit have been given convenient reference names, such as ̶0;State 1̶1; and ̶0;State 2." This makes the tables easier to draw up, but eventually these states must be transformed into binary codes. The entire state table is transformed into a binary equivalent. Generally, a state will be labeled according to the data stored in the flip-flops at any given clock period.
Excitation Table and Logic Diagram
An excitation table is drawn, which maps the transitions identified on the state table with the excitation tables for the type of flip-flops that the circuit will use. The excitation table is then simplified for both inputs and outputs, using Karnaugh Maps in a way similar to that used for truth tables in pure combinational circuits. The resulting table is then in a format that can be converted to the main logic diagram of the circuit.