Vitis HLS ツールは C/C++ で定義した関数を RTL に合成することで、複雑な FPGA アルゴリズムを簡単に作成できます。このツールは、合成/配置配線用の Vivado™ Design Suite およびヘテロジニアス システムの設計や活用のための Vitis 統合ソフトウェア プラットフォームと密接に統合されています。
プログラミング モデル
Vitis™ HLS の C コードは、AMD FPGA アーキテクチャの特性を最大限に活かすように設計されています。
Vitis HLS ツールは並列プログラミング構造をサポートしているため、要件に応じた実装をモデル化できます。たとえば次のような構造があります。
Vitis HLS ツールは、C コードのさまざまな部分を異なる方法で合成します。
C から RTL への合成
シミュレーションおよび検証
Vitis HLS ツールにはビルトインのシミュレーション フローがあり、検証時間を短縮できます。
Vitis HLS ツールの出力は、コンパイル済みのオブジェクト ファイル (.xo) にパッケージ化、または RTL IP にエクスポート可能な RTL インプリメンテーションです。
IP のエクスポート
新しいライブラリ関数ウィザードで AMD Vitis ライブラリの GitHub リポジトリを利用可能
AMD Vivado IP インテグレーターでメモリ インターフェイスのプラグマ (ap_memory) を使用してポートをバンドル可能
新しい HLS コンポーネント比較機能では、2 つ以上のコンポーネントのメトリクスを並べて表示可能
ユーザーが提供する RTL コードで C++ 関数を置き換えることが可能 (ブラック ボックス フロー)
コード アナライザー機能では、C++ の構造体を細分化して解析し、パフォーマンスを微調整可能
HLS グローバル FSM エンコーディングやセーフ ステートの選択をユーザーが制御可能
C シミュレーション時に Clang サニタイザーを利用してアドレスや初期化をチェック
*この情報は、2023 年 8 月 10 日に実施したテストに基づいています。このテストでは、Vitis HLS のリリース 2023.2 と 2023.1 を使用して、Vitis L2/L3 コード ライブラリ デザイン 1000 個を対象に比較しました。テスト システムは、Intel Xeon E5-2690 v4 @ 2.6 GHz CPU、256 GB RAM、RedHat Enterprise Linux 8.6 で構成されています。実際のパフォーマンスは異なる可能性がある。異なる設定を使用した場合には、結果が異なる可能性があります。-VGL-04
*2023 年 2 月 12 日時点で存在する 1208 個すべての Vitis L1 ライブラリの C コード デザインに対してベンチマークを実施しました。すべてのデザインは、CentOS Linux を搭載した 2 つの Intel Xeon E5-2690 CPU を使用し、SMT が有効で Turbo Boost が無効に設定されたシステムを使用して実行しました。ハードウェアの構成がソフトウェアのテスト結果に影響を与えることはないと考えます。ソフトウェアやファームウェアの設定や構成によって結果が異なる可能性があります - VGL-03
組み込みオーディオ システム向けの新しい信号処理技術の開発に取り組んでいる INSA (リヨン、パリ) の Emeraude 研究チームは、AMD の Vitis HLS ツールを使用して超低レイテンシのオーディオ DSP プログラムを実装しました。オーディオ DSP の FPGA へのコンパイルにおいて、Vitis HLS ツールをどのように活用して超低レイテンシを実現したのかを説明しています。
顧客のケース スタディ