AR# 69320

|

2017.x Vivado - 条件文でインプリメントされたモジュールで opt_design を実行するとブラックボックス エラーが発生する

説明

Vivado 2017.1 でデザインを合成およびインプリメントしていますが、opt_design でエラーが発生します。

階層から移動してしまったように見えるモジュールに対し、ブラックボックスがレポートされます。

Vivado 2016.4 では同じデサインを合成およびインプリメントしてもエラーは発生しませんでした。


問題は条件文に関係しているようです。ジェネリックまたはパラメーターの値に基づいてアクティブに使用されているモジュールがあります。

たとえば、ジェネリックが True の場合、コードでモジュール A が、False の場合はモジュール B が生成されます。このジェネリックのデフォルト値は True です。

ジェネリックのデフォルト値が使用されている場合は、デザインでエラーが発生することなくインプリメントされるようです。 

ただし、デフォルト値以外の値が使用されていると、生成する必要のあるモジュールに対しブラックボックス エラーが発生します (この例ではモジュール B)。

ソリューション

Vivado 2017.1 では、階層ビューを出力し、コンパイル順および合成するファイルを決めるときに条件文を評価する階層パーサーが改善されました。

ただ、そのコードは現在の階層レベルに基づいて、ジェネリックおよびパラメーターのデフォルト値のみを使用しています。

そのため、デフォルト値以外の値に依存しているモジュールが使用されていると、上の階層のモジュールからジェネリック値が正しく渡されたとしても、コンパイル リストからフィルターで除外され、合成されなくなります。

合成でモジュールはブラックボックス化されますが、その後のインプリメンテーションでそのブラックボックスを解決できずにエラーが発生します。

HDL でジェネリックのデフォルト値が指定されず、また上の階層モジュールからジェネリックの値が渡されないと、デフォルト値がないということになって、モジュールは生成されません。


ほとんどの場合は、[Hierarchy Update] を [utomatic Update, Manual Compile Order] に設定すると、この問題を回避できます。

Tcl スクリプトでこれを設定する場合は、次のコマンドを使用します。

set_property source_mgmt_mode DisplayOnly [current_project]

このオプションを設定すると、[Sources] ウィンドウの [Hierarch] ビューに表示される階層はジェネリックおよびパラメーターのデフォルト値に基づいて表示されますが、すべてのソース ファイルが合成に送られるので、合成コンパイルによりジェネリックまたはパラメーターの値が正しく設定され、必要なファイルがコンパイルされます。

次の 3 つの方法で HDL にジェネリックまたはパラメーターの値を渡すと、この問題が発生します。

  • ジェネリックまたはパラメーターの値が最上位など、上位から設定されている。
    Vivado 2017.2 では、条件文に含まれるジェネリックまたはパラメーターの値が上位から渡されたジェネリックまたはパラメーター値に基づいて正しく評価されるように階層パーサーが修正されています。

  • ジェネリックまたはパラメーターの値がプロジェクト設定の言語オプションで設定されている。
    これらの値は、階層パーサーで評価されません。
    これは、Vivado 2017.3 で修正されています。それ以前のバージョンの場合は、[Automatic update, Manual Compile Order] オプションを使用してください。

  • ジェネリックまたはパラメーターの値が合成の [More Options] で設定した値から渡されている。
    この方法は、ジェネリックが合成に渡されるということが Vivado 階層パーサーで認識されるメカニズムがないためサポートされていません。
    プロジェクトの言語オプションで設定した値を渡すように変更できない場合は、[Automatic update, Manual Compile Order] オプションを使用してください。

アンサー レコード リファレンス

関連アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
70646 2018.2 Vivado IP フロー - 条件文でインスタンシエートされるサブコア IP がパッケージされるユーザー IP に含まれない N/A N/A
AR# 69320
日付 03/08/2018
ステータス アクティブ
種類 一般
ツール
People Also Viewed