プラットフォーム作成の基本 - 2023.2 日本語

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

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

AMD Vitis™ 環境アクセラレーション アプリケーション開発フローでは、プロジェクトはプラットフォームとプロセッシング サブシステムに分割されます。プラットフォームには、必須の IP ブロック (SoC の PS、AMD Versal™ アダプティブ SoC の NoC および AI エンジンなど) と、ボード インターフェイス IP ブロック (高速 I/O、メモリ コントローラーなど) が含れます。プロセッシング サブシステムには、システムのアプリケーション特定のパーツが含まれており、プログラマブル ロジックと AI エンジン ブロックの両方で構成できます。これにより、問題が分離され、同時開発および再利用が促進されます。アプリケーション開発者はプラットフォームの下位の詳細を考慮する必要がなく、プロセッシング サブシステムの設計に集中できます。プラットフォーム開発者は、処理サブシステムを気にすることなく、システムの起動と I/O パフォーマンスの調整に集中できます。これにより、サブシステムを異なるプラットフォームに統合したり、プラットフォームを異なるプロセッシング サブシステムで再利用したりできます。

AMD では、AMD Alveo™ カードおよびエンベデッド評価ボード用のビルド済みプラットフォームを提供しています。これらのプラットフォームは、ダウンロード センターからダウンロードできます。プラットフォームとサブシステムの効率的な分離が、Vitis 環境での設計手法および生産性向上の中心となります。エンベデッド デザインでは、プラットフォーム チームがカスタム プラットフォームを開発中に、アプリケーション チームが AMD のビルド済みプラットフォームを使用してサブシステムの開発を開始する並列開発プロセスを AMD ではお勧めします。これにより、開発時間を短縮できます。ビルド済みプラットフォームを使用すると、検証済みで正しく機能することがわかっている基盤を使用して、サブシステムを個別に開発、統合、およびテストできます。サブシステムの開発が十分に進行し、安定した状態になったら、サブシステムをカスタム プラットフォームの適切なバージョンに統合できます。この方法により、システム統合プロセスが大幅に効率的なものになります。

次の図に、カスタマイズされたエンベデッド プラットフォームの作成方法を示します。

図 1. プラットフォームの作成

プラットフォームを作成するには、ベース ブータブル デザインを開始点として使用する必要があります。このデザインとしては、AMD ベース プラットフォーム、既存の作業中のデザイン、または一から作成されたデザインを使用できます。ベース ブータブル デザインには、次のベース コンポーネントが含まれている必要があります。

  • AMD Vivado™ Design Suite からエクスポートしたベース ハードウェア デザイン
  • Linux カーネル、ルート ファイル システム、およびデバイス ツリーなどのベース ソフトウェア デザイン

Vivado Design Suite デザインでハードウェアおよびボードを作成したら、Vitis 環境の要件を満たすため、Vitis 環境プラットフォームに変換する際にベース コンポーネントにプロパティを追加する必要があります。通常のプラットフォームの作成手順は次のとおりです。

  1. Vivado Design Suite プロジェクトにハードウェア インターフェイス パラメーターと割り込みサポートを追加して XSA をエクスポートします。
  2. ソフトウェア プラットフォーム コンポーネントをアップデートして、アプリケーション アクセラレーション ソフトウェア スタック (XRT のイネーブル、デバイス ツリーのアップデートなど) をイネーブルにします。
  3. XSCT コマンドまたは Vitis IDE を使用してプラットフォームをパッケージして生成します。
注記: プラットフォームの作成プロセスは通常繰り返し実行され、プロジェクト全体を通して複数のバージョンのプラットフォームが作成されます。プロジェクトの初期段階では、機能の少ないプラットフォームを作成して、ボード上のプロセッシング サブシステムのテストをしやすくします。プロジェクトの後半の段階では、プラットフォームを繰り返し実行して、仕様の変更に対応したり、QoR 全体を改善したりします。
注記: また、既存のリポジトリ プラットフォームをベースに、ユーザーがプラットフォームを作成することもできます。この操作は、実際にはリポジトリのプラットフォームをローカル ディレクトリにコピーするものです。ただし、DFX プラットフォームは、GUI や XSCT ツールではサポートされません。

Vitis 環境では、ハードウェア プロジェクトのプロパティからプラットフォームのリソースが認識され、カーネルがプラットフォームにリンクされます。Vitis 環境では、カーネルの制御にソフトウェア スタックが使用されます。

Vitis 環境でのエンベデッド プラットフォーム作成の詳細は、 『Vitis 統合ソフトウェア プラットフォームの資料: エンベデッド ソフトウェア開発』 (UG1400) を参照してください。詳細な手順は、 『Vitis プラットフォーム作成チュートリアル』 を参照してください。