in state machine rtl next state not defined

Status
Not open for further replies.

sun_ray

Advanced Member level 3
Joined
Oct 3, 2011
Messages
772
Helped
5
Reputation
10
Reaction score
5
Trophy points
1,298
Activity points
6,828
Suppose in the rtl of a state machine, in a state the next_state is not defined. Will the state machine enter into the same state again and again? Why?
 

I suppose the next_state is generate in a combinational process, based on state and other signals.
If state is only reload by next_state in the synchrone process.
If in a state case, next_state is define to the current state.
So only a reset signal on the state flop could change it.
 

Here in this particular state next_state is not defined as current state even. Actually in this state next_state is not defined at all. So the thread started.
 

I would argue you don't have a state machine if the next_state is not defined. Perhaps you can show an RTL example where the next_state is not defined.
 

I have a state machine which have 18 states in total. All state in this state machine have the next_state assignment statement inside it except one state where the next_state assignment is not present. Can you please answer the question in post no. 1 now?

Regards
 

If the next_state is not given inside a particular state say state_A then the it won't be possible for the state machine to change its state at all once it enters state_A. Only upon a reset the state will be reset. Otherwise the FSM continues to remain in state_A which might give an impression of the same state getting triggered continuously.
 

So indeed you have specified what happens when it reaches state_A, it stays in state_A.
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…