Vitis ソフトウェア プラットフォームを使用したアクセラレーション フローのアプリケーション開発 - 2020.1 Japanese

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

Document ID
UG1393
Release Date
2020-08-20
Version
2020.1 Japanese

Vitis™ 統合ソフトウェア プラットフォームは、ザイリンクス ソフトウェア開発のすべてを 1 つの環境に統合した新しいツールです。Vitis ソフトウェア プラットフォームでは、次世代のテクノロジに移行する予定のザイリンクス ソフトウェア開発キット (SDK) ユーザー用に Vitis エンベデッド ソフトウェア開発フロー、ザイリンクス FPGA ベースのソフトウェア アクセラレーションの最新機能を活用することを考慮しているソフトウェア開発者用に Vitis アプリケーション アクセラレーション開発フローがサポートされています。この内容では、主にアプリケーション アクセラレーション フローについてと、Vitis コア開発キットおよびザイリンクス ランタイム (XRT) 使用について説明します。

Vitis アプリケーション アクセラレーション開発フローは、ソフトウェアおよびハードウェア コンポーネントの両方に標準プログラミング言語を使用して、FPGA でアクセラレーションされたアプリケーションを開発して配布するためのフレームワークを提供します。ソフトウェア コンポーネント (ホスト プログラム) は、C/C++ を使用して開発して x86 またはエンベデッド プロセッサで実行し、 OpenCL™ API 呼び出しを使用してアクセラレータとのランタイムの通信を管理します。ハードウェア コンポーネント (カーネル) は、C/C++、OpenCL C、または RTL を使用して開発できます。Vitis ソフトウェア プラットフォームはさまざまな設計手法に対応しており、アプリケーションまたはカーネルのいずれからでも開発を開始できます。

図 1. Vitis 統合ソフトウェア プラットフォーム

上の図に示すように、Vitis 統合ソフトウェア プラットフォームには次の機能および構成要素が含まれます。

  • Vitis テクノロジは、 Alveo™ データセンター アクセラレータ カードなどのアクセラレーション ハードウェア プラットフォーム、または Zynq® UltraScale+™ MPSoC および Zynq®-7000 SoC ベースのエンベデッド プロセッサ プラットフォームをターゲットにしています。
  • XRT は、ホスト プログラムがターゲット プラットフォームにアクセスするための API およびドライバーを提供し、ホスト プログラムとアクセラレーション カーネルの間のトランザクションを処理します。
  • Vitis コア開発キットは、ホスト プログラムおよびカーネルをビルドするコンパイラおよびクロス コンパイラ、アプリケーションのパフォーマンスをプロファイリングおよび解析するアナライザー、アプリケーションの問題を特定して修正するためのデバッガーなど、ソフトウェア ツール スタックを提供します。
  • Vitis アクセラレーション ライブラリは、コードに最小限の変更を加えてパフォーマンスを最適化した FPGA アクセラレーションを提供しており、アルゴリズムをインプリメントし直さなくても、ザイリンクスの適応型コンピューティングの利点を活用できます。Vitis アクセラレーション ライブラリには、算術演算、統計、線形代数、DSP などの一般的な関数用のものだけでなく、ビジョンおよび画像処理、数理ファイナンス、データベースおよびデータ分析、データ圧縮などのドメイン特化アプリケーション用のものがあります。Vitis アクセラレーション ライブラリの詳細は、https://xilinx.github.io/Vitis_Libraries/ を参照してください。