仅对英特尔可见 — GUID: lmx1552183030165
Ixiasoft
1. Intel® HLS Compiler Pro版参考手册
2. 编译器
3. C语言和库支持
4. 组件接口
5. 组件存储器(存储器属性)
6. 组件中的循环
7. 组件并发
8. 任意精度数学支持
9. 组件目标频率(Target Frequency)
10. 任务系统
11. 库
12. 高级硬件综合控制
13. Intel® High Level Synthesis Compiler Pro版参考总结
A. 高级数学源代码库
B. 支持的数学函数
C. Cyclone® V限制
D. Intel® HLS Compiler Pro版参考手册存档
E. Intel® HLS Compiler Pro版参考手册修订历史
13.1. Intel® HLS Compiler Pro版i++命令行参数
13.2. Intel® HLS Compiler Pro版头文件
13.3. Intel® HLS Compiler Pro版编译器定义的预处理器宏
13.4. Intel® HLS Compiler Pro版关键字
13.5. Intel® HLS Compiler Pro版模拟API(仅测试台)
13.6. Intel® HLS Compiler Pro版组件存储器属性
13.7. Intel® HLS Compiler Pro版循环预处理指令
13.8. Intel® HLS Compiler Pro版范围预处理指令
13.9. Intel® HLS Compiler Pro版组件属性
13.10. Intel® HLS Compiler Pro版组件默认值接口
13.11. Intel® HLS Compiler Pro版组件调用接口控制属性
13.12. Intel® HLS Compiler Pro版组件宏
13.13. Intel® HLS Compiler Pro版技术性任务系统API
13.14. Intel® HLS Compiler Pro版管道API
13.15. Intel® HLS Compiler Pro版流输入接口
13.16. Intel® HLS Compiler Pro版流输出接口
13.17. Intel® HLS Compiler Pro版存储器映射接口
13.18. Intel® HLS Compiler Pro版加载-存储单元控制
13.19. Intel® HLS Compiler Pro版任意精度数据类型
仅对英特尔可见 — GUID: lmx1552183030165
Ixiasoft
11.4.1.8. 无停顿(Stall-Free)RTL
Intel® HLS Compiler通过不在具有固定延迟的RTL模块周围放置停顿逻辑以优化硬件资源使用和性能。
如果您有一个具有固定延迟的RTL模块,并且希望将其集成到组件管道中而不包含停顿逻辑,请确保在对象清单(object manifest)文件 (.xml) 中设置属性,如下:
- 为EXPECTED_LATENCY属性(在FUNCTION单元下)指定一个值,从而延迟等于模块中的流水线阶段数。
重要: 不准确的EXPECTED_LATENCY值会导致RTL模块与管道的其余部分不同步,并可能导致功能性不正确的结果。
- 将FUNCTION单元下的IS_STALL_FREE属性设置为"yes"。
此设置指示 Intel® HLS Compiler避免在RTL模块周围放置停顿逻辑。此设置还告知编译器,在接受输入值之后经过EXPECTED_LATENCY属性中指定的周期数,RTL模块就会产生一个结果。无停顿逻辑将在每个周期产生一个结果,但结果会因为EXPECTED_LATENCY属性中执行的周期数而被延迟。
对于具有固定延迟的RTL模块,输出信号(ovalid和oready)可以具有恒定的高值,并且输入就绪信号(iready) 可以被忽略。
无停顿的RTL模块可能会收到无效的输入信号(ivalid为低电平)。该情况下,在无效输入的周期后,模块一定会在输出EXPECTED_LATENCY周期上产生无效数据。对于无内部状态的无停顿RTL模块,您可能会发现通过模块传播无效输入很方便。如果模块具有内部状态,则该状态应该不会受到未伴随ivalid = 1的数据输入的影响。