Vitis HLS 编译指示和指令允许您配置代码的综合结果。
- 在源代码中添加了 HLS 编译指示 以启用在原始源代码内执行最优化或更改。每次综合代码时,都会根据指定编译指示来实现代码。
-
最优化指令 或
set_directive
命令可指定为 Tcl 命令,这些命令可与特定的解决方案或一组解决方案相关联。允许您为跨不同解决方案的同一代码库自定义综合结果。
重要: 如果编译指示或指令与其它编译指示或指令存在冲突,那么综合进程会返回错误,直至冲突得以解决为止。例如,将
ARRAY_PARTITION
和 ARRAY_RESHAPE
编译指示分配给同一阵列变量将导致错误。要将编译指示或指令添加到工程中,请执行以下操作:
- 在 Vitis HLS IDE 的Explorer视图中,双击Source文件夹下的代码文件以打开“Code Editor”(代码编辑器)对话框、Outline视图和Directive视图。
- 使用Directive视图将编译指示添加到源代码中。此视图可帮助您添加和管理工程的编译指示和指令,并且它可确保编译指示正确无误并在适当位置应用。要使用此视图,请执行以下操作:
- 打开源代码后,选中Directive视图选项卡以找到编译指示或指令要添加到的代码的函数、循环或功能特性。
Vitis HLS 会将指令应用于Directive视图中当前选定的对象的相应范围。
- 右键单击Directive视图中的对象即可使用Insert Directive命令。这样即可打开Vitis HLS Directive
Editor,如下图所示:
- 复查Vitis HLS
Directive Editor对话框。其中包含如下几部分:
- Directive
- 即“指令”;用于指定要应用的指令或编译指示。此下拉菜单允许您从可用指令列表中进行选择。
- Destination
- 即“目标”;用于指定应将编译指示添加到源文件,或者应将
set_directive
命令添加到与活动解决方案关联的 Tcl 脚本(即指令文件)。提示: 如果工程仅有一个解决方案,那么该解决方案始终处于活动状态。但如果有多个解决方案,则需要确保所需解决方案在工程内处于活动状态。在工程的Explorer视图内右键单击解决方案,然后单击Set Active Solution命令。如需了解有关添加解决方案的详细信息,请参阅 创建额外解决方案。 - Options
- 即“选项”;用于列出与当前选定指令关联的各种可配置选项。
- 单击OK即可应用编译指示或指令。
注释: 要查看与选定指令相关的信息,请单击Help。 - 打开源代码后,选中Directive视图选项卡以找到编译指示或指令要添加到的代码的函数、循环或功能特性。