8-Finite State Machines 21 22
8-Finite State Machines 21 22
http://www. dte.uc3m.es
http://www. dte.uc3m.es
Inputs Outputs
Combinational
circuit
Present Next
state state
State
(flip-flops)
Clk
http://www. dte.uc3m.es
Inputs
Output Functions Outputs
(COMB)
http://www. dte.uc3m.es
http://www. dte.uc3m.es
http://www. dte.uc3m.es
State
State
functions
(SEQ)
(COMB)
http://www. dte.uc3m.es
State 1
State 3
Input 2 /
Output 2
http://www. dte.uc3m.es
X Z
Clk
Reset
http://www. dte.uc3m.es
1/0 S1
0/0 S2
1/1
http://www. dte.uc3m.es
0 1
S0/0 S1/0
0
0 1
0
S3/1 S2/0
1
1
http://www. dte.uc3m.es
http://www. dte.uc3m.es
‘0’ ‘0’
‘1’ ‘1’
s0 / ‘0’ s1 / ‘0’ s11 / ‘1’
‘1’
‘0’
ENTITY fsm is
PORT( clk: in std_logic;
reset: in std_logic;
a: in std_logic;
z: out std_logic);
END fsm;
http://www. dte.uc3m.es
http://www. dte.uc3m.es
‘0’ / ‘0’
‘0’ / ‘0’
‘1’ / ‘0’
S0 S1
‘1’ / ’1’
ENTITY fsm is
PORT( clk: in std_logic;
reset: in std_logic;
a: in std_logic;
z: out std_logic);
END fsm;
http://www. dte.uc3m.es
http://www. dte.uc3m.es