How to Convert State and Output Equations to State Table

Last Modified:

What is a State Transition Table?

A State Transition Table is similar to a Truth Table, but it additionally stores:

  • Current and Next State of the flip-flop(s)
  • Current state values are typically written with the inputs, while next state values with outputs

How to Generate a State Transition Table from State/Output Equations?

  1. List all the current state variables and inputs on the left side of the table.
    • Each column represents one input or one flip-flop.
    • Total rows in the table are equal to \(\mathsf{2^n}\), where \(\mathsf{n=}\) number of inputs + number of flip-flops.
  2. List all the next state variables and combinational outputs on the right side of the table.
    • Each column represents one output or one flip-flop.
  3. Fill out each column representing outputs or next state variables using their corresponding equations solved using the input and current state values in the same row.

Example: Generate a State Table from the State/Output Equations

In continuation of our analysis example, we have the following state and output equations:

\begin{align*}
\mathsf{A(t+1) }& \mathsf{ =Ax+Bx=(A+B)x}\\
\mathsf{B(t+1) }& \mathsf{ =\overline{A}x}\\
\mathsf{y }& \mathsf{ =(A+B)\overline{x}}
\end{align*}

Step 1 & 2:

To build a state table, you first need to count your total variables. With one input (x) and two flip-flop states (A and B), you have three variables in total. This requires a table with 8 rows to cover every possible binary combination (\(\mathsf{2^3}\)).

  • Left Side: List the current state variables and inputs. (While placing current states before inputs is common, the order can vary).
  • Right Side: List the next-state variables (\(\mathsf{A(t+1)}\) and \(\mathsf{B(t+1)}\)) along with the combinational output (\(\mathsf{y}\)).

Once your input and current-state columns are filled in, use your next-state and output equations to evaluate and complete the remaining rows.

the image shows a state table with filled in values for the input and current state variables and the columns representing the next state variables and outputs

Step 3:

To complete the table, plug the current state and input values from each row into your equations. Calculate the results to fill in the next-state and output columns.

The fully completed state table is shown below:

the image shows a state table with filled in values for the input and current state variables along with the computed values in the columns for the next state variables and outputs