Intel®高层次综合编译器专业版: 最佳实践指南

ID 683152
日期 6/22/2020
Public

本文档可提供新的版本。客户应 单击此处 前往查看最新版本。

文档目录

7.4.2. 必要时对设计明确添加缓冲容量

Intel® HLS Compiler无法推断最佳容量需求时,可通过指定ihc::launchihc::collect函数的capacity参数值为设计明确添加缓冲容量。

启动任务函数时添加容量

可考虑指定ihc::launch调用指令的capacity参数,如果在仿真波形中观察到停机码型,则表示以下情况之间不平衡:
  • 任务函数引入的任何背压
  • 指令调用程序启动任务函数的频率

图 20显示该设计的结构框图。

设置ihc::launch调用指令中的capacity参数可插入一个缓冲,从而允许调用程序将工作推送到任务函数上,然后可自由地从队列中提取工作。

手机任务函数时添加容量

可考虑指定ihc::collect调用指令的capacity参数,如果在设计波形中观察到停机码型,表示以下情况存在差异:
  • 任务函数中的数据生成节奏
  • 通过调用指令程序函数读取数据的节奏

设置ihc::collect调用指令的capacity参数插入一个缓冲区,该缓冲区可保存由任务函数计算的返回值。调用指令程序函数可在稍后方便的时间自由地从缓冲区中获取返回值,但不会对任务函数造成背压。