AR# 47185


MIG v3.7 Spartan-6 MCB - Why does synthesis report that an FSM state is never reached?


During synthesis, it can be reported that there is an unreached FSM state (101010 in GRAY encoding) for the STATE[1:6] state machine within the mcb_soft_calibration module.

The following is an example message:


INFO:Xst:1799 - State 101010 is never reached in FSM <STATE>.


This 101010 state is the DONE state which can only be reached when calibration is turned off (skipped). 

Skipping calibration can only be used during simulation. 

In hardware, the soft calibration is continuously calibrating so the DONE state will never be reached.

This information in the synthesis report can be safely ignored. 


However in Spartan-6 implementations, it is recommended to turn on the SAFE_IMPLEMENTATION option during synthesis.

SAFE_IMPLEMENTATION specifies whether or not a safe implementation of a finite state machine description is used. 

This option is available when the FSM Encoding Algorithm is set to anything other than None. 

When set to Yes, any illegal state will send the state machine back to a recovery state to return to normal operation.

When set to No, the logic required for recovery from an illegal state is not implemented.

By default, this property is set to No.


This issue is resolved in ISE 13.2.


AR# 47185
Date 08/27/2014
Status Active
Type General Article
People Also Viewed