Vitis ハードウェア アクセラレータ

最適化されたアクセラレーション アプリケーションを開発する手法には、アプリケーションのアーキテクチャとハードウェア カーネルの開発の 2 つの段階があります。最初の段階では、どのソフトウェア関数を FPGA カーネルでアクセラレーションするか、どれくらいの並列処理が達成可能か、どのようにコード記述するかなど、アプリケーション アーキテクチャに関する重要事項を決定します。第 2 段階では、ソース コードを構築し、必要なコンパイラ オプションとプラグマを適用して、最適なパフォーマンス ターゲットを達成するのに必要なカーネル アーキテクチャを作成して、カーネルをインプリメントします。次の例では、この方法を実際のアプリケーションで使用します。

設計チュートリアル

チュートリアル

内容

ブルーム フィルターの例

このチュートリアルでは、LeNet アルゴリズムを使用してシステム レベル デザインをインプリメントし、AI エンジン および PL ロジック (ブロック RAM (BRAM) を含む) を使用して画像分類を実行します。

デザインは、AI エンジンと PL 間の機能分割を示します。また、DDR メモリ、PL (ブロック RAM (BRAM))、および AI エンジン メモリ間のメモリ分割および階層についても説明します。

たたみ込みの例

ビデオ ストリームのリアルタイム処理に使用される 2D たたみ込みを解析および最適化するプロセスについて説明します。

RTL システム統合の例

フリーランニング RTL カーネル、Vitis ライブラリ関数、カスタム Vitis HLS カーネルを実際のシステムに統合する方法を示します。

ボトム RTL カーネルのデザイン フローの例

このチュートリアルでは、GUI 環境を使用せずにバッチ モードで、複雑な RTL カーネルを最初から開発する方法を示します。

機能チュートリアル

チュートリアル

内容

RTL カーネル入門

Vitis コア開発キットを使用して RTL カーネルを FPGA にプログラムし、一般的な開発フローでハードウェア エミュレーションをビルドする方法を説明します。

C と RTL の混合

RTL および C カーネルを含むアプリケーションと、さまざまなデザイン解析機能を使用する方法を示します。

データフローのデバッグおよび最適化

このチュートリアルでは、Vitis HLS でデータフローをデバッグおよび最適化する方法を示します。