Description:

  • Output is shown within the state itself

As a circuit:

  • As output doesnt depend on input but the state the input arrive, output combinational logic doesnt need to include input, only the state
  • Using logic gates

As a table:

Next -- state
Current state (S)In = 0In = 1Out
InitInitGot10
Got1InitGot110
Got11InitGot1110
Got111InitGot1111

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
Q1Q0Q1Q0
Q1Q0In = 0In = 1Out
000
010
100
111
  • 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
      • D0=In.Q1 + In.Q0’ using Karnaughmap
In\Q1Q000011110
00000
11011
  • For D1, we take the green bits
    • D1=In.Q1 + In.Q0 using Karnaughmap
In\Q1Q000011110
00000
10111
  • Out = Q1.Q0 as output only depends on state

One-hot encoding:

  • Each state is represented by 1 flip flop
  • The reset input (switch) will turn the states to 0001, meaning D0=1 because it has preset