v++
コマンドは、次に示すように、コンパイル、リンク、パッケージ処理に必要な多くのオプションをサポートします。
v++
コマンド ライン オプションはすべて、コンフィギュレーション ファイルに --config
オプションで指定できます。たとえば --platform
オプションは、コンフィギュレーション ファイルで次の構文を使用して指定できます。platform=xilinx_u50_gen3x16_xdma_5_202210_1
--board_connection
- 適用先
- リンク
--board_connection
各 DIMM (Dual Inline Memory Module) コネクタ スロットの DIMM ボード ファイルを指定します。ボードは、ボード リポジトリに表示されるように、DIMM カードの Vendor:Board:Name:Version (vbnv) 属性を使用して指定します。
次に例を示します。
<DIMM_connector>:<vbnv_of_DIMM_board>
-c | --compile
- 適用先
- コンパイル
--compile
コンパイルには必須ですが、--link
および --package
と共に使用することはできません。v++ -c
を実行し、カーネル ソース ファイルから XO ファイルを生成します。
--config
- 適用先
- コンパイル、リンク、パッケージ
--config <config_file> ...
v++
コマンド オプションを含むコンフィギュレーション ファイルを指定します。コンフィギュレーション ファイルは、コンパイル、リンク、またはパッケージ ストラテジを取り込むために使用するファイルで、v++
コマンド ラインで参照することにより簡単に再利用できます。また、コンフィギュレーション ファイルを使用すると、v++
コマンド ラインで指定する必要があるのは、コンフィギュレーション ファイルで指定されていないオプションのみなので、コマンド ラインが簡潔になります。詳細は、Vitis コンパイラのコンフィギュレーション ファイル を参照してください。
v++
コマンドに複数のコンフィギュレーション ファイルを指定できます。使用するファイルごとに個別の --config
オプションが必要となります。次に例を示します。v++ -l --config system.cfg --config vivado.cfg ...
--connectivity
- 適用先
- リンク
リンク プロセス中にデバイス バイナリの重要なアーキテクチャの詳細を指定するために使用されます。詳細は、--connectivity オプション を参照してください。
--custom_script
- 適用先
- コンパイル、リンク
--custom_script <kernel_name>:<file_name>
ビルド プロセスのコンパイル時またはリンク時に使用するカスタム Tcl スクリプトを指定します。--export_script
オプションと共に使用し、ビルド プロセスをカスタマイズするスクリプトを作成、編集、および実行します。
このオプションを v++ --compile
コマンドで使用すると、指定したカーネルのコンパイルに使用するカスタム HLS スクリプトを指定できます。このスクリプトで、Vitis HLS ツールを変更またはカスタマイズできます。--export_script
オプションを使用して Vitis HLS でカーネルのコンパイルに使用する Tcl スクリプトを抽出し、必要に応じてスクリプトを変更して、--custom_script
オプションを使用して再適用することにより、カーネルのビルド プロセスをより良く制御できます。
v++ -c -k kernel1 -export_script ...
*** Modify the exported script to customize in some way, then resubmit. ****
v++ -c --custom_script kernel1:./kernel1.tcl ...
ハードウェア ビルド ターゲット (-t hw
) の v++ --link
コマンドと一緒に使用する場合、このオプションで編集した run_script_map.dat ファイルへの絶対パスを指定できます。このファイルには、ビルド プロセス段階のリストと、それらの段階で Vitis および AMD Vivado™
ツールにより実行される Tcl スクリプトが含まれます。run_script_map.dat を変更し、ビルド プロセスのそれらの段階で実行するカスタム Tcl スクリプトを指定できます。Tcl スクリプトをカスタマイズするには、次の手順に従います。
- 次に示すように
--export_script
オプションを使用してビルド プロセスを実行します。v++ -t hw -l -k kernel1 -export_script ...
- カスタマイズする段階で run_script_map.dat により参照される Tcl スクリプトをコピーします。たとえば、合成またはインプリメンテーションに指定されている Tcl ファイルをコピーします。ファイルは、プロジェクト ビルド構造外の別の場所にコピーする必要があります。
- Tcl スクリプトにコマンドを追加したり既存のコマンドを変更したりして、新しいカスタム Tcl スクリプトを作成します。
- run_script_map.dat を変更し、指定のインプリメンテーション段階に新しいカスタム スクリプトを設定します。
-
--custom_script
オプションを使用して run_script_map.dat ファイルへの絶対パスを指定し、ビルド プロセスを再起動します。v++ -t hw -l -k kernel1 -custom_script /path/to/run_script_map.dat
read_xdc dont_touch.xdc
set_property used_in_implementation false [get_files dont_touch.xdc]
このようにしないと、合成で dont_touch.xdc ファイルがないことを示すエラー メッセージが表示されます。
-D | --define
- 適用先
- コンパイル、リンク
--define <arg>
有効なマクロ名と定義のペアを <name>=<definition>
という形式で指定します。
定義付きマクロとして名前を前もって定義します。このオプションは v++
プリプロセッサに渡されます。
--export_archive
- 適用先
- リンク
--export_archive
このコマンドは、.xclbin デバイス バイナリや .xsa 固定プラットフォームではなく、Vitis メタデータ アーカイブ ファイル (.vma) をリンク プロセスから生成します。このコマンドと .vma ファイルの使用フローは、Vitis を Vivado にエクスポートするフロー を参照してください。
--export_script
- 適用先
- コンパイル、リンク、パッケージ
--export_script
ビルド プロセスをスクリプト ファイルをエクスポートする時点まで実行して停止します。ビルド プロセスは、--custom_script
オプションを使用して完了する必要があります。これにより、エクスポートされたスクリプトを変更し、カスタム スクリプトを使用してビルドを再実行できます。
このオプションを v++ --compile
コマンドで使用すると、指定したカーネルの Tcl スクリプト ファイル <kernel_name>.tcl がエクスポートされます。このスクリプトは Vitis HLS を実行するのに使用できますが、実際に HLS が起動する前にビルド プロセスが停止します。これによりビルド プロセスを中断できるので、次の例に示すように、生成された Tcl スクリプトを編集し、--custom_script
オプションを使用してビルド プロセスを再開できます。
v++ -c -k kernel1 -export_script ...
–t sw_emu
) ではサポートされません。ハードウェア ビルド ターゲット (-t hw
) に対して v++ --link
コマンドでこのオプションを使用すると、run_script_map.dat ファイルが現在のディレクトリにエクスポートされます。このファイルには、ビルド プロセス段階のリストと、それらの段階で Vitis および Vivado ツールにより実行される Tcl スクリプトが含まれます。Tcl スクリプトを編集してビルド プロセスをカスタマイズし、--custom_script
オプションを使用してビルド プロセスを再開できます。run_script_map.dat ファイルをエクスポートするには、次のコマンドを使用します。
v++ -l -t hw -export_script ...
--freqhz
- 適用先
- コンパイルおよびリンク
--freqhz <value>::<cu>[.<clk_pin>][,<cu_n>[.<clk_pin_n>]]
コンパイル時にコンポーネントに対して、またはリンク時にシステムに対して周波数を指定します。--freqhz
オプションは、デフォルトのクロック周波数を上書きし、コンパイル時およびリンク時に指定された周波数を適用します。
クロック周波数 (ヘルツ) と、関連付けられている演算ユニット名のリストおよびオプションでそのクロック ピンを指定します。
- <value>
- ヘルツで指定する必要があります。たとえば、150 MHz は 150000000 と指定します。
- [cu[.clk_pin]]
- オプションで、指定されたクロック周波数の PL カーネルまたは PL カーネルのインスタンス (演算ユニット) ターゲットを指定します。これにより、カーネルのインスタンスごとに異なる周波数を指定できます。また、
.clk_pin
構文を追加することで、CU のクロック ピンを指定することもできます。
次に例を示します。
v++ -l -t hw –platform <pfm_name> --freqhz=200000000:mm2s \
--freqhz=300000000:s2mm –config system.cfg
--freqhz
オプションは、AI エンジン、PL カーネル、またはシステム デザインでのクロックの指定に関連するさまざまな方法やコマンドを統合するために提供されています。--freqhz
オプションは、ほかのクロック コマンドよりも優先され、複数のコマンドが使用されている場合、v++
がエラーを返すことがあります。--from_step
- 適用先
- コンパイル、リンク、パッケージ
--from_step <arg>
Vitis コンパイラ ビルド プロセスのステップ名を指定しすると、そのステップからビルド プロセスを開始できます。中間結果がある場合、リンク プロセスが早送りされて、可能であれば指定した段階から実行を開始します。--to_step
を使用してビルドを実行し、プロジェクトを何らかの方法で変更した後、そのビルド プロセスを --from_step
で再開できます。--list_step
オプションを使用すると、有効なステップのリストが表示されます。
--to_step
/--from_step
は順次のビルド オプションで、必ず --from_step
を使用して、ビルドを開始するときに使用したのと同じプロジェクト ディレクトリ内のビルドを --to_step
で再開します。次に例を示します。
v++ --link --from_step vpl.update_bd
-g
- 適用先
- コンパイル、リンク
-g
ソフトウェア エミュレーション中にカーネルをデバッグするコードを生成します。このオプションを使用すると、カーネルがコンパイルされる際に、カーネルをデバッグしやすくする機能が追加されます。
次に例を示します。
v++ -g ...
-h | --help
- 適用先
- コンパイル、リンク、パッケージ
-h
v++
コマンドのヘルプを表示します。次に例を示します。
v++ -h
--hls
- 適用先
- コンパイル
カーネル コンパイル時の Vitis HLS 合成プロセスのコマンドを指定します。
v++ --mode
hls
が導入されたので、--hls オプション はソフトウェア エミュレーション用の v++ -c -k
モードにのみ使用される必要があります。v++ --mode hls
のコマンドは、v++ モードの HLS で定義されています。-I | --include
- 適用先
- コンパイル、リンク
--include <arg>
ヘッダー ファイルを検索するディレクトリのリストに指定のディレクトリを追加します。このオプションは Vitis コンパイラのプリプロセッサに渡されます。
--input_files <input_file>
- 適用先
- コンパイル、リンク、パッケージ
--input_files <input_file1> <input_file2> ...
v++
コンパイル用の OpenCL または C/C++ カーネル ソース ファイル、または v++
リンク用のザイリンクス オブジェクト (XO) ファイルを指定します。
次に例を示します。
v++ -l --input_files kernel1.xo kernelRTL.xo ...
--input_files
オプションを指定せずに、任意の位置で指定することもできます。次に例を示します。v++ -l kernel1.xo kernelRTL.xo ...
--interactive
- 適用先
- リンク
--interactive [ impl ]
v++
で必要な環境を設定し、Vivado ツールを起動してインプリメンテーション プロジェクトを開きます。
Vivado ツールをインタラクティブに起動するので、リンク プロセスは vpl
ステップ後に停止します。これは、v++
コマンドで --to_step vpl
オプションを使用するのと同じことです。
Vivado ツールでのインタラクティブな操作が終了し、デザイン チェックポイント (DCP) を保存したら、v++ --from_step rtdgen
を使用して Vitis コンパイラのリンク プロセスを再開するか、または --reuse_impl オプションか --reuse_bit
オプションを使用して、インプリメント済みの DCP ファイルを読み込むことができます。
次に例を示します。
v++ --interactive impl
## Interactively use the Vivado tool
v++ --from_step rtdgen
-k | --kernel
- 適用先
- コンパイル
--kernel <arg>
入力ファイルから指定したカーネルのみをコンパイルします。1 つの v++
コマンドに使用できる -k
オプションは 1 つだけです。有効な値には、入力 .cl または .c/.cpp カーネル ソース コードからコンパイルされるカーネルの名前が含まれます。
これは、C/C++ カーネルの場合は必須ですが、OpenCL カーネルの場合はオプションです。OpenCL では、kernel
キーワードを使用してカーネルが識別されます。C/C++ カーネルの場合、-k
または --kernel
を使用してカーネルを識別する必要があります。
OpenCL ソース ファイルを -k
オプションなしでコンパイルすると、ファイル内のカーネルすべてがコンパイルされます。特定のカーネルをターゲットにするには、-k
コマンドを使用します。
次に例を示します。
v++ -c --kernel vadd
--kernel_frequency
- 適用先
- リンク
--kernel_frequency <freq> | <clockID>:<freq>[<clockID>:<freq>]
カーネルにユーザー定義のクロック周波数 (MHz) を指定し、ハードウェア プラットフォームで定義されていたデフォルトのクロック周波数を上書きします。<freq>
は 1 つのクロックのみを含むカーネルのクロック周波数 1 つを指定するのに使用します。2 つのクロックをサポートするカーネルの場合は <clockID> および <freq> を指定します。
1 つのカーネル クロックのみを含むプラットフォームのクロックを上書きする構文では、単に周波数 (MHz) を指定します。
v++ --kernel_frequency 300
2 つのクロックを含むプラットフォームで特定のクロックの周波数を変更するには、クロック ID と周波数を指定します。
v++ --kernel_frequency 0:300
マルチクロック プラットフォームで両方のクロックの周波数を変更するには、各クロックの ID とその周波数を指定します。次に例を示します。
v++ --kernel_frequency 0:300|1:500
-l | --link
- 適用先
- リンク
--link
コンパイル後のリンク プロセスに必須のオプションで、--compile
または --package
と共に使用することはできません。リンク モードで v++
を実行し、XO 入力ファイルをリンクし、xclbin または .xsa 出力ファイルのいずれかまたは両方を生成します。
--link
オプションは、ほとんどのプラットフォームの場合 .xclbin ファイルを生成しますが、AMD Versal™
プラットフォームの場合は .xsa ファイルを生成します。--linkhook
- 適用先
- リンク
インプリメンテーション フローの特定のステップで実行する Tcl スクリプトを指定することにより、デバイス バイナリのビルド プロセスをカスタマイズできます。詳細は、--linkhook オプション を参照してください。
--list_steps
- 適用先
- コンパイル、リンク、パッケージ
--list_steps
指定したターゲットに有効な実行ステップをリストします。このオプションは、--from_step
または --to_step
オプションで使用可能なステップをリストします。このコマンドには、次のオプションを使用する必要があります。
-
-t | --target [sw_emu | hw_emu | hw ]
: -
[ --compile | --link ]
: 指定したビルド ターゲットに対するコンパイルまたはリンク プロセスのいずれかからのステップのリストを指定します。
次に例を示します。
v++ -t hw_emu --link --list_steps
--log_dir
- 適用先
- コンパイル、リンク、パッケージ
--log_dir <dir_name>
ログ ファイルを保存するディレクトリを指定します。--log_dir
ディレクトリを指定しない場合は、ログファイルは ./_x/logs に保存されます。詳細は、v++ コマンドの出力ディレクトリ を参照してください。
次に例を示します。
v++ --log_dir /tmp/myProj_logs ...
--message_rules
- 適用先
- コンパイル、リンク、パッケージ
--message-rules <file_name>
メッセージを制御するルールを含むメッセージ ルール ファイルを指定します。詳細は、メッセージ ルール ファイルの使用 を参照してください。
次に例を示します。
v++ --message_rules ./minimum_out.mrf ...
--mode
- 適用先
- コンパイル
v++
コマンドのコンパイル モードを指定します。指定できる値は aie
または hls
です。v++ --mode aie
は、AI エンジン コンポーネントを作成し (
『AI エンジン ツールおよびフロー ユーザー ガイド』 (UG1076) を参照)、コンフィギュレーション コマンド (v++ モードの AI エンジン を参照) と一緒に使用できます。v++ --mode hls
は、で説明されるように、HLS コンポーネントを作成し (
『Vitis HLS ユーザー ガイド』 (UG1399) を参照)、コンフィギュレーション ファイル コマンド (v++ モードの HLS) と一緒にに使用できます。
--no_ip_cache
- 適用先
- リンク
--no_ip_cache
Vivado 合成のアウト オブ コンテキスト (OOC) 合成のために IP キャッシュをディスエーブルにします。IP キャッシュ リポジトリをディスエーブルにすると、各ビルドごとに IP 合成結果を生成し直す必要があるので、ビルド時間が増える可能性があります。ただし、クリーン ビルドにもなるので、IP の早期の結果が削除されます。
次に例を示します。
v++ --no_ip_cache ...
-O | --optimize
- 適用先
- リンク
--optimize <arg>
Vivado インプリメンテーション結果の最適化レベルを指定します。有効な最適化の値は、次のとおりです。
-
0
: デフォルトの最適化です。コンパイル時間が短縮されます。 -
1
: Vivado インプリメンテーション ストラテジ (Power_DefaultOpt
) を実行して、消費電力を削減するように最適化します。デザインのビルド時間は長くなります。 -
2
: カーネル速度を上げるように最適化します。ビルド時間が長くなりますが、インプリメンテーションにPHYS_OPT_DESIGN
ステップが追加されるので、生成されるカーネルのパフォーマンスは向上します。 -
3
: 生成されたコードのパフォーマンスは最高レベルになりますが、コンパイル時間はかなり長くなります。このオプションは合成時のリタイミングを指定し、インプリメンテーション中にPHYS_OPT_DESIGN
およびPOST_ROUTE_PHYS_OPT_DESIGN
の両方をイネーブルにします。 -
s
: サイズに合わせてデザインを最適化します。Area_Explore
インプリメンテーション ストラテジを実行することで、カーネルの使用するデバイスのロジック リソースが削減されます。 -
quick
: Vivado インプリメンテーション時間は短くなりますが、カーネルのパフォーマンスは低下し、カーネルで使用されるリソースも多くなります。これにより、合成とインプリメンテーションの両方のFlow_RuntimeOptimized
ストラテジがイネーブルになります。
次に例を示します。
v++ --link --optimize 2
-o | --output
- 適用先
- コンパイル、リンク、パッケージ
-o <output_name>
v++
コマンドで生成された出力ファイルの名前を指定します。コンパイル (-c
) プロセスの出力ファイル名には、ザイリンクス オブジェクト ファイルの場合は XO ファイル拡張子が付いている必要があります。リンク (-l
) プロセスの出力ファイル名には、最後に .xclbin または .xsa が付いている必要があります。--export_archive コマンドの場合は、最後に .vma が必要です。--package
コマンドの場合、入力に .xsa が必要で、.xclbin が出力されます。
次に例を示します。
v++ -o krnl_vadd.xo
--o
または --output
を指定しない場合は、出力ファイル名デフォルトで次のようになります。
- Compilation (コンパイル)
- a.o
- リンク
- a.xclbin (Versal プラットフォームの場合 a.xsa)
- パッケージ
- a.xclbin
-p | --package
- 適用先
- パッケージ
エミュレーションの実行またはハードウェアでの実行用にデザインをパッケージ化する Vitis コンパイラのオプションを指定します。詳細は、--package オプション を参照してください。
--part
- 適用先
- コンパイル、リンク、パッケージ
--part <part_name>
デザインのコンポーネントをコンパイル、リンク、パッケージングする際に使用する AMD パーツを指定します。--part
コマンドは、フル プラットフォームや XSA ではなく、デバイスを指定するために使用できます。v++ --link --part <Versal part
only>
を指定すると、指定された AMD Versal™
デバイス用のシンプルなベース ハードウェア プラットフォーが生成されます。
次に例を示します。
v++ --part xcvc1902-vsva2197-2MP-e-S --target hw_emu ...
--part
を使用する必要があるのは、プラットフォームの変更が必要ない将来のプラットフォームのソフトウェア (AI エンジン および PL カーネル) の開発にのみです。Vivado でプラットフォームを作成し、ソフトウェア開発にハードウェアの変更が必要な場合に使用します。Versal デザインの --part のデフォルト クロックは 300 MHz です。デフォルト値は、クロック周波数の管理 で説明されるように、別のプロセスで決定されます。-f | --platform
- 適用先
- コンパイル、リンク、パッケージ
--platform <platform_name>
サポートされるアクセラレーション プラットフォームの名前を $PLATFORM_REPO_PATHS
環境変数で指定されているように指定するか、.xpfm プラットフォーム ファイルへの完全パスを指定します。そのバージョンでサポートされるプラットフォームのリストは、Vitis ソフトウェア プラットフォームのリリース ノート を参照してください。
このオプションは、ビルド プロセスのターゲット AMD プラットフォームを定義するため、コンパイルおよびリンクの両方で必要です。--platform
オプションには、プラットフォーム名または xpfm プラットフォーム ファイルへのパス (完全パスまたは相対パス) を指定できます。
--platform
および -t
オプションは、リンクおよびパッケージで使用する --platform
および -t
と同じである必要があります。詳細は、platforminfo ユーティリティを参照してください。次に例を示します。
v++ --platform xilinx_u50_gen3x16_xdma_5_202210_1 ...
--profile
- 適用先
- コンパイル、リンク
ザイリンクス ランタイム 環境を設定するオプションを指定し、アプリケーションのパフォーマンス情報を取得します。詳細は、--profile オプション を参照してください。
--remote_ip_cache
- 適用先
- リンク
--remote_ip_cache <dir_name>
IP のアウト オブ コンテキスト (OOC) 合成中に使用する Vivado 合成のリモート IP キャッシュ ディレクトリを指定します。OOC 合成を使用すると、Vivado 合成ツールでイテレーション中に変更されなかった IP の合成結果が再利用できるようになります。これにより、合成結果を再利用できるので .xclbin ファイルのビルドに必要な時間を削減できます。
--remote_ip_cache
オプションを指定しない場合、IP キャッシュは v++
が起動された現在の作業ディレクトリに書き込まれます。このオプションを使用すると、別のキャッシュ ディレクトリを指定して、たとえば複数のプロジェクトで使用したりできます。
次に例を示します。
v++ --remote_ip_cache /tmp/IP_cache_dir ...
--report_dir
- 適用先
- コンパイル、リンク、パッケージ
--report_dir <dir_name>
レポート ファイルを保存するディレクトリを指定します。--report_dir
ディレクトリを指定しない場合は、レポート ファイルは ./_x/reports に保存されます。詳細は、v++ コマンドの出力ディレクトリ を参照してください。
次に例を示します。
v++ --report_dir /tmp/myProj_reports ...
-R | --report_level
- 適用先
- コンパイル、リンク、パッケージ
--report_level <arg>
有効なレポート レベルは 0
、1
、2
、estimate
です。
これらのレポート レベルのマップは、optMap.xml ファイルに含まれます。インストールされた optMap.xml を無効にして、カスタム レポート レベルを定義できます。
-
-R0
を指定すると、Vivado インプリメンテーション中に中間デザイン チェックポイント (DCP) は生成されません。配線後のタイミング レポートは生成されます。 -
-R1
を指定すると、-R0
で生成されるものすべてに加え、report_failfast pre-opt_design
とreport_failfast post-opt_design
、すべての中間 DCP が生成されます。 -
-R2
を指定すると、-R1
で生成されるものすべてに加え、report_failfast post-route_design
が実行されます。 -
-Restimate
を指定すると、design.xml データ ファイルが存在しない場合は Vitis HLS で生成され、システム見積もりレポート で説明するように、システム見積もりレポートが生成されます。ヒント: このオプションは、design.xml がデフォルトでは生成されないソフトウェア エミュレーション ターゲット (-t sw_emu
) の場合に便利です。
次に例を示します。
v++ -R2 ...
--reuse_bit
--reuse_bit <arg>
- 適用先
- リンク
生成されたビットストリーム ファイル (.bit) のパスとファイル名を指定して、デバイス バイナリ ファイル (xclbin) を生成する際に使用されるようにします。--to_step を使用して Vivado をインタラクティブに起動する方法 で説明されるように、--to_step
オプションを使用すると、Vitis ビルド プロセスを中断し、合成済みデザインを手動で配置配線して、ビットストリームを生成できます。
--reuse_bit
オプションは、シーケンシャル ビルド オプションで、--reuse_bit
を使用して Vitis コンパイラを再開する際は、ビルドを開始する際に指定した --to_step
と同じプロジェクト ディレクトリを使用する必要があります。次に例を示します。
v++ --link --reuse_bit ./project.bit
--reuse_impl
--reuse_impl <arg>
- 適用先
- リンク
インプリメント済みデザイン チェックポイント (DCP) のパスとファイル名を指定して、デバイス バイナリ ファイル (xclbin) を生成する際に使用されるようにします。リンク プロセスは指定したインプリメント済み DCP を使用して FPGA ビットストリームを抽出し、xclbin を生成します。以前に完了した Vitis ビルドで作成された Vivado プロジェクトを手動で編集したり、--to_step
オプションを指定して、Vitis ビルド プロセスを中断して、手動で合成済みデザインを配置配線したりできます。これにより、Vivado Design Suite をインタラクティブに使用してデザインを変更をし、ビルド プロセスでその DCP を使用できます。
--reuse_impl
オプションはインクリメンタル ビルド オプションで、--reuse_impl
を使用して Vitis コンパイラ再開する際は、--to_step
を使用してビルドを開始したのと同じプロジェクト ディレクトリを使用する必要があります。次に例を示します。
v++ --link --reuse_impl ./manual_design.dcp
-s | --save-temps
- 適用先
- コンパイル、リンク、パッケージ
--save-temps
v++
コマンドでコンパイルおよびリンク プロセス中に作成された中間ファイル/ディレクトリを保存します。--temp_dir
オプションを使用すると、中間ファイルを保存するディレクトリを指定できます。
次に例を示します。
v++ --save-temps ...
-t | --target
- 適用先
- コンパイル、リンク、パッケージ
-t [ sw_emu | hw_emu | hw ]
ビルド ターゲットでの作業 で説明するようにビルド ターゲットを指定します。ビルド ターゲットにより、コンパイルおよびリンク プロセスの結果が決まります。デバッグおよびテスト用にエミュレーション モデルをビルドするか、ハードウェアで実行する実際のシステムをビルドするかを選択できます。ビルド ターゲットは -t
で指定しない場合はデフォルトで hw
になります。
--platform
および -t
オプションは、リンクで使用する --platform
および -t
と同じである必要があります。有効な値は、
-
sw_emu
: ソフトウェア エミュレーション -
hw_emu
: ハードウェア エミュレーション -
hw
: ハードウェア
次に例を示します。
v++ --link -t hw_emu
--temp_dir
- 適用先
- コンパイル、リンク、パッケージ
--temp_dir <dir_name>
ビルド プロセス中に作成された一時ファイルを保存するディレクトリを指定します。--save-temps
オプションを指定しておかない場合、一時的な結果は v++
コンパイラで書き出された後削除されます。
--temp_dir
ディレクトリを指定しない場合は、./_x/temp に一時ファイルが保存されます。詳細は、v++ コマンドの出力ディレクトリ を参照してください。
次に例を示します。
v++ --temp_dir /tmp/myProj_temp ...
--to_step
- 適用先
- コンパイル、リンク、パッケージ
--to_step <arg>
ステップ名をコンパイルまたはリンク プロセスに変更し、そのステップからビルド プロセスを実行します。--list_step
オプションを使用すると、有効なコンパイルまたはリンク ステップのリストが表示されます。
ビルド プロセスは、指定したステップが終了した後に終了します。この段階で、ビルド結果を処理できるようになります。たとえば、HLS プロジェクトや Vivado Design Suite プロジェクトに手動でアクセスして、ビルド フローに戻る前に特定のタスクを実行するには、v++
コマンドに --from_step
オプションを指定します。
--to_step
/--from_step
は順次のビルド オプションで、必ず --from_step
を使用して、ビルドを開始するときに使用したのと同じプロジェクト ディレクトリ内のビルドを --to_step
で再開します。
--to_step
を使用する場合は、--save-temps
も指定して、Vivado ツールで必要な一時ファイルを保存する必要があります。次に例を示します。
v++ --link --save-temps --to_step vpl.update_bd
--user_board_repo_paths
- 適用先
- リンク
--user_board_repo_paths
DIMM ボード ファイルの既存のユーザー ボード リポジトリを指定します。この値は Vivado プロジェクトの board_part_repo_paths
プロパティの冒頭に追加されます。
--user_ip_repo_paths
- 適用先
- リンク
--user_ip_repo_paths <repo_dir>
カーネル デザインで使用される IP を最初に検索するユーザー IP リポジトリ パスのディレクトリを 1 つまたは複数指定します。この値は、Vivado ツールで IP コアを見つけるため、ip_repo_paths
の冒頭に追加されます。これらの指定されたパスからの IP 定義は、ハードウェア プラットフォーム (.xsa) またはAMD IP カタログからの IP リポジトリより前に使用されます。
--user_ip_repo_paths
コマンドを v++
コマンド ラインに指定できます。次に、ビルド プロセス中に検出される IP 定義の優先順序を上からリストします。
- システム ハードウェア ビルド (
-t hw
):-
--user_ip_repo_paths
からの IP 定義。 - カーネル IP 定義 (
vpl --iprepo
オプションの値)。 - プラットフォームに関連付けられた IP リポジトリからの IP 定義。
- インストール ディレクトリからの IP キャッシュ (例: <Install_Dir>/Vitis/2019.2/data/cache/)。
- インストール ディレクトリからのAMD IP カタログ (例: <Install_Dir>/Vitis/2019.2/data/ip/)
-
- ハードウェア エミュレーション ビルド (
-t hw_emu
):-
--user_ip_repo_paths
からの IP 定義およびユーザー エミュレーション IP リポジトリ。 - カーネル IP 定義 (
vpl --iprepo
オプションの値)。 - プラットフォームに関連付けられた IP リポジトリからの IP 定義。
- インストール ディレクトリからの IP キャッシュ (例: <Install_Dir>/Vitis/2019.2/data/cache/)。
-
$::env(XILINX_VITIS)/data/emulation/hw_em/ip_repo
-
$::env(XILINX_VIVADO)/data/emulation/hw_em/ip_repo
- インストール ディレクトリからのAMD IP カタログ (例: <Install_Dir>/Vitis/2019.2/data/ip/)
-
次に例を示します。
v++ --user_ip_repo_paths ./myIP_repo ...
-v | --version
-v
v++
コマンドのバージョンおよびビルド情報を表示します。次に例を示します。
v++ -v
--vivado
- 適用先
- リンク
デバイス バイナリをビルドする前に、Vivado 合成およびインプリメンテーション環境を設定するプロパティーとパラメーターを指定します。詳細は、--vivado オプション を参照してください。