インテル® HLS コンパイラー: リファレンス・マニュアル

ID 683349
日付 6/23/2017
Public
ドキュメント目次

1.2. コンポーネント合成でサポートされるサブセット

HLSコンパイラーには、サポートされる C99 サブセットと C++ に関連するいくつかの合成制限があります。
  • 動的ループ境界または分岐は、エリア・オーバーヘッドを引き起こす可能性があります。
  • コンパイラーは、動的メモリー割り当て、仮想関数、関数ポインター、およびこの資料の付録で明示的に言及しているサポートされる数学関数を除く C++ または C ライブラリーの関数を合成できません。一般的に、コンパイラーは、クラス、構造、関数、テンプレート、およびポインターを含む関数を合成できます。

コンパイル時にコードがコンパイラーに提供できる情報が多いほど、結果となるハードウェアはより小さく、より速くなります。いくつかの C++ コンストラクターは合成可能ですが、可能な場合は C99 でコンポーネント関数を作成してください。

重要: これらの合成制限はテストベンチ・コードには適用されません。