次では、この資料で使用するツールと用語の一部を紹介します。
- Vitis コア開発キット
- ソフトウェアおよびハードウェア コンポーネントの両方に標準プログラミング言語を使用して、ヘテロジニアス アプリケーションを設計、構築、およびデバッグをするためのフレームワークを提供します。
- Vivado Design Suite
- RTL 言語による設計、合成、インプリメンテーション ツールで、ハードウェア設計者がハードウェア デザイン (.xsa) を作成し、エクスポートできます。
- ザイリンクス サポート アーカイブ (.xsa)
- Vivado Design Suite からエクスポートされるハードウェアコンテナーで、固定 プラットフォームまたはエクステンシブル プラットフォームなど、複数の用途に使用できます。
- 固定プラットフォーム (.xpfm)
- 完成したハードウェア デザイン (.xsa) と、オペレーティング システム、ライブラリ、ブート ファイルなどを定義したサポート ソフトウェア ファイルが含まれます。ここでいう「固定」とは、単にハードウェア デザインが完成していることを意味します。
- エクステンシブル プラットフォーム (.xpfm)
- Vitis ヘテロジニアス システム デザイン フローのターゲット プラットフォーム。「エクステンシブル」なデザインは、PL カーネルや AI エンジン グラフ アプリケーションなどのプログラマブル コンテンツをプラットフォームに追加してエンベデッド システムを構築することで、さらにカスタマイズできます。エクステンシブル プラットフォームは、固定プラットフォームと同様、ソフトウェアの開発にも利用できます。
- PL カーネル (
.xo
) - エクステンシブル プラットフォームの PL 領域に追加して、カスタム ハードウェアを定義できるハードウェア関数です。PL カーネルは、Vitis HLS の C++ コード、または RTL コードと Vivado Design Suite の IP パッケー ジャー機能を使用して定義できます。
- Vitis HLS
- C/C++ 関数を RTL に変換し、デバイスのプログラマブル ロジック (PL) 領域にインプリメンテーションする高位合成ツールです。Vitis HLS は、Vitis 環境にインポート可能なコンパイル済みオブジェクト (.xo) ファイルを生成します。
- Vitis コンパイラ
- C++ のコードから PL カーネル (
.xo
) をコンパイルし、複数の PL カーネルとハードウェア プラットフォーム、AI エンジン グラフ アプリケーションをリンクしてデバイス バイナリを構築するために使用されるv++
コマンドです。 - PS アプリケーション
- AMD MPSoC またはアダプティブ SoC デバイス内の Arm プロセッサで実行されるユーザー定義のソフトウェア アプリケーションで、PL カーネルおよび AI エンジン グラフを制御したり、相互にインタラクティブにできます。
- ザイリンクス ランタイム ライブラリ (XRT)
- ソフトウェア アプリケーションがハードウェア デザインの PL カーネルおよび AI エンジン グラフ アプリケーションを制御し、データを転送し、ステータスを読み取るための API およびドライバーを提供します。
- AI エンジン カーネルおよびグラフ アプリケーション
-
Vitis
aiecompiler
でコンパイルし、v++
でエンベデッド システムにリンクします。カーネルは、Versal AI エンジン で実行される関数で、データフロー グラフ アプリケーションの基本的な構築ブロックを形成します。AI エンジン グラフ アプリケーションは、確定的な動作をする適応型データフロー グラフです。 -
aiecompiler
/aiesimulator
- AI エンジン グラフ アプリケーションのコンパイルとシミュレーションのための Vitis ツールです。
- デバイス バイナリ (.xclbin) ファイル
- Versal アダプティブ SoC のプログラマブル デバイス イメージ (PDI) または Zynq MPSoC のビットストリーム、およびハードウェア デザインの制御に必要なメタデータが含まれます。