--vivado オプション - 2020.1 Japanese

Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発 (UG1393)

Document ID
UG1393
Release Date
2020-08-20
Version
2020.1 Japanese

–-vivado.XXX オプションは、Vivado ツールを制御するプロパティとパラメーターを設定します。たとえば、最適化、配置、およびタイミングを設定したり、出力するレポートを指定したりできます。

重要: これらのオプションを最大限に活用するため、Vivado Design Suite の使用方法をよく理解しておいてください。詳細は、 『Vivado Design Suite ユーザー ガイド: インプリメンテーション』 (UG904) を参照してください。

--vivado.param

--vivado.param <arg>

FPGA のバイナリ (xclbin) の合成およびインプリメンテーションに使用する Vivado Design Suite のパラメーターを指定します。

--vivado.prop

--vivado.prop <arg>

FPGA のバイナリ (xclbin) の合成およびインプリメンテーションに使用する Vivado Design Suite のプロパティを指定します。

表 1. prop オプション
プロパティ名 有効な値 説明
vivado.prop <object_type>.<object_name>.<prop_name> データ型: さまざま Vivado ハードウェア コンパイル フローで使用されるプロパティを指定できます。

<object_type>run|fileset|file|project のいずれかです。

<object_name> および <prop_name> 値については、 『Vivado Design Suite プロパティ リファレンス ガイド』 (UG912) を参照してください。

例:
vivado.prop run.impl_1.
{STEPS.PLACE_DESIGN.ARGS.MORE 
OPTIONS}={-fanout_opt}
vivado.prop fileset.
current.top=foo

<object_type>file に設定される場合、current はサポートされません。

<object type>run に設定される場合、それぞれ指定する必要はなく、__KERNEL__ に値 (ALL) を使用して、すべてのカーネルの run 最適化設定を指定できます。

たとえば、コマンド ラインからは次のように実行します。
v++ --link --vivado.prop run.impl_1.STEPS.PHYS_OPT_DESIGN.IS_ENABLED=true
--vivado.prop run.impl_1.STEPS.PHYS_OPT_DESIGN.ARGS.DIRECTIVE=Explore
--vivado.prop run.impl_1.STEPS.PLACE_DESIGN.TCL.PRE=/…/xxx.tcl
上記の例の場合、Vivado インプリメンテーション プロセスでオプションの PHYS_OPT_DESIGN 段階をイネーブルにし、それに Explore 指示子を設定し、PLACE_DESIGN 段階よりも前に実行する Tcl スクリプトを指定しています。
ヒント: Vivado ツールの FPGA 合成およびインプリメンテーション結果の管理 で説明するように、Vivado 合成およびインプリメンテーション プロセスには、その段階よりも前に実行する Tcl プリスクリプトと後に実行する Tcl ポスト スクリプトを指定できます。これにより、さまざまな段階の前後に Tcl コマンドのプリプロセスとポストプロセスを挿入して、ビルド プロセスをカスタマイズできます。これらのスクリプトは、上記の例のように指定できます。
これらのオプションは、コンフィギュレーション ファイルの [vivado] セクション ヘッドの下で次のフォーマットを使用して指定できます。
[vivado]
prop=run.impl_1.STEPS.PHYS_OPT_DESIGN.IS_ENABLED=true
prop=run.impl_1.STEPS.PHYS_OPT_DESIGN.ARGS.DIRECTIVE=Explore
prop=run.impl_1.STEPS.PLACE_DESIGN.TCL.PRE=/…/xxx.tcl
重要: Vivado プロパティの中には、MORE OPTIONS など、名前にスペースを含むものもあります。Tcl 構文ではこれらのプロパティを波かっこ { } で囲む必要があります。ただし、--vivado オプションの波かっこの使用方法には注意が必要です。プロパティ名の一部ではなく、全体を囲む必要があります。正しい使用方法は、次のようになります。
--vivado_prop run.impl_1.{STEPS.PLACE_DESIGN.ARGS.MORE OPTIONS}={-fanout_opt}
次のように指定してしまうと、ビルド プロセス中にエラーになります。
--vivado_prop run.impl_1.STEPS.PLACE_DESIGN.ARGS.{MORE OPTIONS}={-fanout_opt}