At the first clock edge, the values in the shaded box determine the next
state (the box to the right) and the present output (the box below). The
next state is obtained from the first row (AB 00) and the first column
(x 0), the shaded square in Table 6.9c. The output is just the value of z
in the first row. (Only the state is needed to determine the output.) For the
next column of the timing trace, we start the process over again; this is
effectively a new problem. The state is 01 (second row of the state table)
and the input is 0, giving a next state of 00. This continues through successive
inputs. The last input shown, a 0 when the system is in state 01
takes the system to state 00. We know that state and that output, even
though we do not know the input any longer. Finally, for this example,
we can determine the output and the value of B for one more clock time,
since, from state 00, the next state is either 01 or 11, both of which have
B 1 and a 1 output. (We cannot go any further.)
In Figure 6.25, we will next look at a timing diagram for the same
system with the same input sequence. We must look at the value of the
variables (A, B, and x) just before the trailing edge. From that, we know
the present state and the input, and can determine what the values for A
and B must be during the next clock period. At any time that we know A
and B, we can determine z.