エンベデッド プラットフォームでは、--package
コマンドで Versal、AI エンジン、および
Zynq®
デバイスも含め、さまざまなツール フローおよびプラットフォームがサポートされます。コマンド ラインは、次のようになります。
v++ --package -t [sw_emu | hw_emu | hw] --platform <platform> input.xclbin [ -o output.xclbin ]
-o
) が指定されていない場合は、デフォルト名の a.xclbin で出力ファイルが作成されます。
AI エンジン プラットフォームの場合、パッケージ プロセスで aiecompiler
コマンドによって生成された libadf.a ファイルが出力デバイス バイナリに統合されます。詳細は、
『Versal ACAP AI エンジン プログラム環境ユーザー ガイド』
(UG1076) を参照してください。
--package
コマンドには、Vitis ツールでサポートされるさまざまなプラットフォームおよびビルド ターゲットで使用できるさまざまなオプションがあります。Vitis IDE では、パッケージ プロセスが自動化されており、必要に応じて必要なファイルが作成されるようになっています。ただし、コマンド ライン フローでは、v++ --package
コマンドを指定するか、config ファイルに [package]
タグを追加して、そのジョブに正しいオプションを指定する必要があります。次は、ZCU104 ベースのアプリケーションのパッケージ プロセスを実行するハードウェア エミュレーションのコマンド例です。
v++ --package -t hw_emu --platform xilinx_zcu104_base_202010_1 --save-temps \
./input.xclbin ./output.xclbin --config package.cfg
--config package.cfg
オプションでは、パッケージ プロセスのさまざまなオプションを使用して、Vitis コンパイラのコンフィギュレーション ファイルを指定できます。次は、コンフィギュレーション ファイルの例です。
[package]
out_dir=sd_card
boot_mode=sd
image_format=ext4
rootfs=/tmp/platforms/sw/zynqmp/xilinx-zynqmp-common-v2020.1/rootfs.ext4
sd_file=/tmp/platforms/sw/zynqmp/xilinx-zynqmp-common-v2020.1/Image
sd_file=host.elf
sd_file=output.xclbin
sd_file=xrt.ini
sd_file=launch_app.sh
ソフトウェア エミュレーションの場合、このコマンドは .xclbin ファイルを入力として使用し、エミュレーションを起動するスクリプト (launch_sw_emu.sh または launch_hw_emu.sh) を生成し、指定した出力フォルダーに必要なサポート ファイルを書き込みます (--package.out_dir
)。
アプリケーションの実行に必要な追加ファイル (入力として必要なデータ ファイル、アプリケーションの検証に必要なデータファイル、プロファイリングとデバッグ用の xrt.ini ファイルなど) を出力ファイルに含める必要があり、sd_file
オプションを使用して個別に転送したり、--package オプション で説明される sd_dir
オプションを使用してディレクトリとして転送したりできます。
ハードウェア ビルドの場合、--package
コマンドで sd_card フォルダー、または --package.boot_mode
オプションで指定したブート モードによって QSPI.img が作成されます。
--package.ps_elf <elf>,<core>
package コマンドでは、sd_card という出力フォルダーが作成され、sd_card
のブート プロセスを記述した、アプリケーションのハードウェア エミュレーションを実行するのに必要なファイルすべてが含まれます。ハードウェア ビルドの場合は、デバイスをブートする SD カードを作成するのに必要なファイルすべてが含まれます。
sd_card フォルダーを作成したら、内容を SD カードにコピーして、ブート イメージを作成します。
パッケージ プロセスが完了したら、次のコマンドを実行し、Vitis アナライザー ツールを使用して関連するレポートまたはログ ファイルを表示およびナビゲートできます。
vitis_analyzer ./<output>.package_summary