AR# 51237

Vivado 合成での FSM セーフ インプリメンテーション機能のサポート

説明

Vivado 合成では FSM セーフ インプリメンテーション機能がサポートされていますか。

ソリューション

2013.2 以降の Vivado 合成では、HDL を介してセーフ インプリメンテーション機能がサポートされています。 

ツールによるこのサポートの一部として、セーフ インプリメンテーション ステートをリセットまたはパワー オンに設定できます。

例 :

reg [FSM_BITS-1:0] state /*synthesis fsm_safe_state = "reset_state" */

これにより、セーフ ステートとして reset_state が使用されます。

ステート マシンに reset_state または power_on_state がない場合、セーフ ステートはインプリメントされません。

ツールがサポートするセーフ インプリメンテーション ステートは、現在これらに限定されています。 

ユーザー指定のステートは、Vivado 合成の今後のリリースでサポートされる予定です。

 

2013.2 より前のバージョンでは、有限ステート マシンの case 文に default 文を追加し、Vivado 合成で default 文が確実に使用されるように -fsm_extraction を NO に設定してください。

無効なステートや到達不可能なステートが発生した場合に、Vivado 合成でこの default 文が使用されます。

-fsm_extraction を Yes に設定する場合は、FSM に到達可能なステートがあることを確認してください。

ステートが到達不可能な場合、default 文が最適化で削除される可能性があります。
AR# 51237
日付 11/26/2014
ステータス アクティブ
種類 一般
ツール