HLS コンポーネントの作成と実行 - 2023.2 日本語

Vitis 高位合成ユーザー ガイド (UG1399)

Document ID
UG1399
Release Date
2023-12-18
Version
2023.2 日本語

AMD Vitis™ Unified IDE と v++ 共通コマンド ラインには、ボトムアップ デザイン手法を使用して HLS コンポーネントを作成する機能があり、システム デザインにほかのエレメンを統合する前にコンポーネントがデザイン要件を満たすようにします。HLS コンポーネントでは、 ツールが C または C++ の関数を RTL コードに合成し、AMD Versal™ アダプティブ SoC、AMD Zynq™ MPSoC、または AMD FPGA デバイスのプログラマブル ロジック (PL) 領域にインプリメントします。

HLS コンポーネントは、次の開発およびエクスポートのために使用できます。

  • Vivado Design Suite およびエンベデッド ソフトウェア開発フローを使用してハードウェア デザインに統合する Vivado IP ( 『Vitis 統合ソフトウェア プラットフォームの資料: エンベデッド ソフトウェア開発』 (UG1400) を参照)。
  • ヘテロジニアス計算システムおよびデータセンター アプリケーション アクセラレーションで使用する Vitis カーネル ( 『Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション ユーザー ガイド』 (UG1393) を参照)。

次に、C++ 関数の開発手順を示します。

  1. 設計原則 に従って C/C++ アルゴリズムを設計
  2. C 言語のテストベンチでソース コードのロジックを検証 (C シミュレーション)
  3. デザインの並列処理とパフォーマンスを解析 (コード アナライザー)
  4. ソース コードから RTL を生成 (C 合成)
  5. 生成された RTL モジュールを C テストベンチと RTL ロジック シミュレーションで検証 (C/RTL 協調シミュレーション)
  6. HLS 合成レポートおよび協調シミュレーション レポートを確認して解析 (解析)
  7. パフォーマンス目標が達成されるまで、前の手順を繰り返します。
図 1. Vitis HLS の開発フロー

HLS コンポーネントは、ターゲット フロー、デフォルトのツール設定、コンフィギュレーション コマンド、および指定した最適化プラグマまたは指示子に基づいてデザインをインプリメントします。次のセクションでは、HLS コンポーネントの作成と構築について説明します。