エンベデッド プラットフォームのパッケージ - 2021.1 Japanese

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

Document ID
UG1393
Release Date
2022-03-29
Version
2021.1 Japanese

エンベデッド プラットフォームでは、--package コマンドで VersalAI エンジン、および 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 が作成されます。

ヒント: PS コアで実行されるベアメタル ELF ファイルの場合、コマンド ラインに次のオプションも追加する必要があります。
--package.ps_elf <elf>,<core>

package コマンドでは、sd_card という出力フォルダーが作成され、sd_card のブート プロセスを記述した、アプリケーションのハードウェア エミュレーションを実行するのに必要なファイルすべてが含まれます。ハードウェア ビルドの場合は、デバイスをブートする SD カードを作成するのに必要なファイルすべてが含まれます。

sd_card フォルダーを作成したら、内容を SD カードにコピーして、ブート イメージを作成します。

注記: Windows OS の場合、Etcher などのサードパーティ ツールを使用して、ザイリンクス デバイスをブートする際に使用する SD カードに書き込みます。

パッケージ プロセスが完了したら、次のコマンドを実行し、Vitis アナライザー ツールを使用して関連するレポートまたはログ ファイルを表示およびナビゲートできます。

vitis_analyzer ./<output>.package_summary