Description:

As a Circuit:

  • As output does depend on input with the state the input arrive, output combinational logic need to include input and the state

As a Table:

Next -- state/out
Current state (S)In = 0In = 1
InitInit / 0Got1 / 0
Got1Init / 0Got11 / 0
Got11Init / 0Got11 / 1

Binary State Coding:

  • Convert the state names from table above into binary
  • Where Q1 and Q0 are binary for the states
  • Let D1 and D0 be the Flip-flop for the state
    • So Q0=D0, Q1=D1
  • State encoding:
Q1Q0Q1Q0
Q1Q0In = 0In = 1
00/0/0
01/0/0
10/0/1
  • We can use the the state bits to encode state, let left bit of each state be D0 and the next left be D1
  • Then we have the truth table for each state bit
    • ex: for D0, we take the red bits of Q0
      • D0=In.Q1’.Q0’ using Karnaughmap
In \ Q1Q000011110
000x0
110x0
  • For D1, we take the green bits
    • D1=In.Q1 + In.Q0
In\Q1Q000011110
000x0
101x1
  • Out = In.Q1 + In.Q0 as output only depends on state???
  • Output is from state and input, Out = In.Q1