高位合成コンパイラの概要 - 2019.2 Japanese

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

Document ID
UG1393
Release Date
2020-02-28
Version
2019.2 Japanese

カーネル開発プロセスを開始する前に、高位合成 (HLS) の概念を理解しておく必要があります。HLS コンパイラは、C/C++ コードをデバイス ファブリックにマップ可能な RTL デザインに変換します。

HLS コンパイラには、標準的なソフトウェア コンパイラよりも多くの制限があります。たとえば、システム関数呼び出し、ダイナミック メモリ割り当て、再帰関数など、サポートされないコンストラクトがあります。詳細は、 『Vivado Design Suite ユーザー ガイド: 高位合成』 (UG902) の「サポートされない C コンストラクト」を参照してください。

より重要なのは、C/C++ ソース コードの構造が、生成されるハードウェア インプリメンテーションのパフォーマンスに大きく影響するということです。このガイドでは、アプリケーションのスループット目標を達成するような構造のコードを記述する方法を説明します。カーネルのプログラムの詳細は、C/C ++ カーネル を参照してください。