各デザイン フローでの Vitis 環境の使用方法 - 2022.1 日本語

Versal ACAP デザイン ガイド (UG1273)

Document ID
UG1273
Release Date
2022-04-27
Version
2022.1 日本語

Vitis 環境は、AI エンジン カーネルおよびグラフ、プログラマブル ロジック (PL) の機能、プロセッシング システム (PS) 上で実行されるソフトウェア アプリケーションなど、Versal ACAP アプリケーションのさまざまなエレメントのプログラム、実行、デバッグを可能にするツール、ライブラリ、および IP で構成されます。Vitis ツールは、プラットフォーム ベースのアプローチを使用します。このアプローチでは、概念上、システムを次の各エレメントに分割します。これらのエレメントは並行して開発およびテストできます。

  • プラットフォーム
  • 適応型サブシステム
  • ソフトウェア アプリケーション

次の図に、このプラットフォーム ベースのアプローチで使用されるエレメントを示します。

図 1. カスタム プラットフォーム、適応型サブシステム、およびソフトウェア アプリケーション

プラットフォーム

プラットフォームは、適応型サブシステムとソフトウェア アプリケーションを構築および統合するための基盤となるハードウェア IP ブロックとソフトウェア機能を提供します。プラットフォームは、ハードウェア プラットフォームとソフトウェア プラットフォームの 2 つの部分で構成されます。ハードウェア プラットフォームには、基盤的な Versal ハードウェア IP ブロック (CIPS、NoC、I/O コントローラー、AI エンジン アレイ、およびその他ユーザーが指定した IP ブロック) が含まれます。ソフトウェア プラットフォームでは、ドメイン、デバイス ツリー、OS を定義します。

このプラットフォームを利用することにより、アプリケーション開発者は、複雑な低レベルのインフラストラクチャに煩わされることなく、ソフトウェア、AI エンジン グラフ、PL カーネル ロジックなど、適応型サブシステムの特定機能の開発に集中できます。プラットフォームのハードウェア側は、Vivado ツールを使用して作成されます。プラットフォームのソフトウェア側は、PetaLinux または Yocto を使用して作成されます。

適応型サブシステム

適応型サブシステムは、PL ブロックと AI エンジン グラフ (AI エンジンを搭載したデバイスの場合) を利用して、明確に定義された機能を実行します。適応型サブシステムの PL ブロックを、PL カーネルと呼びます。PL カーネルは、RTL ブロック、Vivado IP ブロック、または高位合成 (HLS) ブロックです。AI エンジン プログラムは、C++ で記述されるデータフロー グラフ仕様を使用して開発されます。適応型システムのさまざまなコンポーネントを個別に設計および検証したら、Vitis リンカーを使用してこれらをアセンブルし、プラットフォームに統合します。

ソフトウェア アプリケーション

ソフトウェア アプリケーションは PS 上で動作し、適応型サブシステムと連携しながら高レベルのアプリケーション タスクを実行します。ソフトウェア アプリケーションは、Vitis エンベデッド ソフトウェア開発フローを使用して開発されます。

Vitis ツール

次の Vitis ツールにより、システム全体のさまざまなエレメントの作成、検証、統合が容易に行えます。

AI エンジン ツール
AI エンジン プログラムのプログラミング、シミュレーション、およびデバッグを実行します。このツール セットには、aiecompiler、AI エンジン シミュレータ (aiesimulator)、および x86 シミュレータ (x86simulator) が含まれます。
Vitis HLS および Vitis コンパイラ (v++ --compile)
C/C++ ソース コードから PL カーネルを作成します。
Vivado IP パッケージャー
既存の IP または RTL コードを Vitis PL カーネルに含めてパッケージします。
Vitis リンカー (v++ --link)
AI エンジン グラフと PL カーネルを 1 つのプラットフォームに統合します。
Vitis パッケージャー (v++ --package)
システムの PS コンポーネント (ソフトウェア アプリケーション) を統合してブート イメージを生成します。
Vitis エミュレーション フロー
Vitis リンカーとの統合後、実際のハードウェアで実行する前に PS、PL、および AI エンジン コンポーネントの動作をシミュレーションします。
Vitis アナライザー
コンパイル中、リンク中、および Vitis ツールで作成したシステムの実行中に、レポートを生成します。
Vitis エンベデッド ソフトウェア開発フロー (PetaLinux を含むシステム ソフトウェア スタックを使用)
エンベデッド プロセッサの PS ドメインをサポートします。
注記: Model Composer は、 MATLAB® ソフトウェアに精通したユーザーも使用できます。詳細は、 『Vitis Model Composer ユーザー ガイド』 (UG1483) および Vitis Model Composer サンプルおよびチュートリアル を参照してください。

これらのツールの詳細は、 『Vitis 統合ソフトウェア プラットフォームの資料』 (UG1416) を参照してください。