Professional Documents
Culture Documents
Jim Duckworth, WPI State Machines - Module 6 1
Jim Duckworth, WPI State Machines - Module 6 1
Module 6
Inputs
Next
State Output Outputs
State
Memory Logic
Logic
Clock
Reset
Current State
S0
EN=1 EN=1
C=0
S3 S1
C=1 C=0 EN=0
EN=0
EN=1
EN=1 S2
C=0
EN=0
CLK
STATE S0 S1 S2 S2 S3
RESET
EN
BEGIN
state_memory:
PROCESS(clk, reset)
BEGIN
IF reset = '1' THEN
current_state <= s0;
ELSIF clk'EVENT AND clk = '1' THEN -- triggering edge
current_state <= next_state;
END IF;
END PROCESS state_memory;
Macro Statistics
# FSMs : 1
# Registers : 4
1-bit register : 4
=========================================================================
• Sequential
– Minimum clock period : 25.8 ns
– Estimated Maximum Clock Speed : 38.7 MHz
Inputs
Next
State
State
Memory
Logic
Current State
Output
Logic
Clock Output Outputs
Register
Inputs
Next
State
State
Memory Current State
Logic
Output
Logic
Clock Output Outputs
Register
– next_state_logic
PROCESS (en, current_state)
CASE current_state IS
WHEN s0 =>
next_state <= s1;