Intel® 高层次综合编译器专业版Pro版: 参考手册

ID 683349
日期 12/04/2023
Public
文档目录

3.1. 支持用于组件综合的C和C++子集

一些常见的软件模式无法以FPGA数字逻辑物理实现,从而导致 Intel® HLS Compiler能够支持的编码风格受到限制。
编译器无法生成如下C++构造的RTL:
  • 动态存储器分配。
  • 虚拟函数
  • 函数指针
  • C++或C库函数,但支持的数学函数中明确提到的受支持的数学函数除外。
  • 非静态类函数。
  • 无明确专门化的模板函数。
一般来说,编译器可以为被静态链接的函数(如,静态类方法和“常规”函数)生成RTL。HLS组件函数可以包括类、结构体、函数、模板和指针。

此外,组件或任务函数不能包含不可约循环(irreducible loop)。也就是说,组件和任务函数中的循环必须只有一个入口点进入循环。

重要: 这些综合限制不适用于测试台代码。