エンベデッド プラットフォームのコンポーネントおよびアーキテクチャ - 2023.2 日本語

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

Document ID
UG1393
Release Date
2023-12-13
Version
2023.2 日本語

プラットフォームは Vitis デザインの開始点です。Vitis アプリケーションは、プラットフォーム上にビルドされます。

エンベデッド プラットフォームには、ハードウェア プラットフォームとソフトウェア プラットフォームが含まれます。

ハードウェア プラットフォーム

ハードウェア プラットフォームは、ハードウェア デザインのスタティックな変更されない部分です。Vivado Design Suite からのザイリンクス サポート アーカイブ (XSA) ファイルが含まれます。

ハードウェア プラットフォームは、プラットフォーム ハードウェア セットアップおよびアクセラレーション アプリケーションで使用可能なアクセラレーション リソース (入力および出力インターフェイス、クロック、AXI バス、割り込みなど) を記述します。Vitis により、必要に応じてデータ移動のためのカーネルおよびインフラストラクチャ モジュールが追加されます。アクセラレーション カーネルはプラットフォーム IP とデータを共有できますが、変更することはできません。ハードウェア プラットフォームの設定については、ザイリンクス ランタイムおよびプラットフォームのインストール を参照してください。

ソフトウェア プラットフォーム

ソフトウェア プラットフォームは、アクセラレーション アプリケーションのアクセラレーション カーネルを制御するためにソフトウェアを実行する環境です。固定プラットフォームも拡張可能なプラットフォームも、ソフトウェア プラットフォームを必要とします。ハードウェア プラットフォームをリセットして設定するためのドメイン セットアップとブート コンポーネントのセットアップが含まれます。ソフトウェア プラットフォームには、次のエレメントが含まれます。

ルート ファイル システム (RFS)
Linux ファイル システム用のバイナリ、ライブラリ、およびセットアップが含まれます。AMDが提供する共通 rootfs には XRT がインストールされており、アクセラレーション アプリケーションをこの Linux 環境で実行できるようになっています。
カーネル イメージ
コンパイル済み Linux カーネル。AMD で提供される共通カーネル イメージには、ほとんどの AMD ペリフェラル ドライバーが含まれます。
sysroot
クロス コンパイルに使用されます。ターゲット システムのアプリケーションをコンパイルする際にリンクするライブラリを提供します。

すべてのプリビルドの AMD プラットフォームには、ソフトウェア プラットフォームが含まれます。デフォルトでは、プラットフォーム上でアクセラレーション アプリケーションを実行できるように、ザイリンクス ランタイム (XRT) が有効な Linux ドメインが含まれています。デバイス ツリーはプラットフォームによって異なるので、コンポーネントとしてプラットフォーム内の Linux XRT ドメインと共に提供されています。

プラットフォームのカスタマイズについては、ダウンロード センター「エンベデッド Vitis プラットフォームの共通イメージ」セクションからソフトウェア プラットフォームをダウンロードできます。共通イメージ パッケージには、次のコンポーネントが含まれます。

  • プリビルドの Linux カーネル
  • プリビルドのルート ファイル システム
  • ブート ファイル (プリビルドの u-boot.elf、boot.scr、bl31.elf など)
  • Sysroot を生成する sdk.sh スクリプト

プラットフォームに Linux ドメインがある場合は、Linux ドメイン コンポーネントを提供する必要があります。これらのコンポーネントは、PetaLinux、Yocto、またはサードパーティ フレームワークで生成できます。これらのコンポーネントは、その FPGA ファミリのすべての AMD デモ ボードで共有されるので、すべての標準プラットフォームに対して、PetaLinux で生成された共通 Linux コンポーネント イメージが用意されています。

ヒント: Vitis IDE で Linux アプリケーションを作成する際は、プラットフォーム設定の Linux ドメイン コンポーネントがデフォルト設定になります。これらの設定は、ほかの場所にインストールされているコンポーネントで上書きできます。

エンベデッド プラットフォームのソース ファイルは、GitHub の Vitis エンベデッド プラットフォーム ソース を参照してください。これらのファイルは、カスタム プラットフォームのソースとして使用できます。プラットフォームのソース ファイルから Linux の共通コンポーネントを再生成するには、make を実行する前に COMMON_RFS_KRNL_SYSROOT=FALSE 環境変数を設定します。