仅对英特尔可见 — GUID: ewa1462826128514
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: ewa1462826128514
Ixiasoft
4.6. 稳定的组件参数
如果没有为参数指定预期行为,则编译器将假定与参数相对应的自变量在流水线化组件调用之间会改变其值。
如果组件执行时参数的对应自变量没有改变,则可以将该参数标记为 stable。在所有有效组件调用完成后,稳定参数的自变量仍可能发生变化(即,组件数据路径被刷新)。如果自变量在有效组件调用进行期间发生变化,您的组件将进入未定义状态并出现不可预测的行为。
声明接口参数因为hls_stable_argument属性而稳定。
您可以将以下接口参数标记为稳定:
- 标量(管道)参数
- 指针接口参数
地址管道输入稳定。关联的Avalon MM Host接口不受影响。
- 引用传递(Pass-by-reference)参数
地址管道输入稳定。关联的Avalon MM Host接口不受影响。
- Avalon® 存储器映射(MM)Host接口参数
地址管道输入稳定。关联的Avalon MM Host接口不受影响。
- Avalon® 存储器映射(MM)Agent寄存器接口参数
数据存储在CSR中,但未被寄存到组件数据路径中。
以下接口参数不能标记为稳定:
- Avalon® 存储器映射(MM)Agent存储器接口参数
- Avalon® 流接口参数
将接口自变量声明为稳定时,您的组件设计中可能会节省一些FPGA面积,因为数据不属于被寄存的吞吐量。
您不能同时进行两次组件调用,并且两次组件调用之间使用不同的稳定自变量。
属性 | 描述 |
---|---|
hls_stable_argument | 稳定参数是指在组件中存在实时数据时不会改变的参数(即,参数在流水线函数调用之间不会改变)。 |