描述
配置输出 RTL 的各种属性以及所使用的复位类型。它还允许您在 RTL 中使用特定标识。默认情况下,这些选项适用于顶层设计以及设计中的所有 RTL 块。
语法
config_rtl [OPTIONS]
选项
-
-deadlock_detection <none | sim | hw | hw_diagnosis>
- 在已导出的 IP/XO 文件的顶层 RTL 中启用仿真或综合死锁检测。其中选项如下:
-
none
:禁用死锁检测 -
sim
:仅对仿真启用死锁检测(默认选项) -
hw
:在已综合及可仿真的 RTL IP 中已启用死锁检测。将ap_local_deadlock
和ap_local_block
信号添加到 IP 以启用局部和全局死锁检测。 -
hw_diagnosis
:在生成的 RTL 代码中已启用死锁检测并包含额外的诊断逻辑。
-
-
-header <string>
- 将文件 <string> 的内容置于所有输出 RTL 和仿真文件的顶部(作为注释)。提示: 该选项可用于确保输出 RTL 文件包含用户指定的标识。
-
-kernel_profile
- 添加内核剖析所需的顶层事件和停滞端口。
-
-module_auto_prefix
- 指定顶层函数名称作为前缀值。如果同时指定
config_rtl -module_prefix
,则忽略该选项。默认情况下,已启用该选项。 -
-module_prefix <string>
- 指定要添加到所有 RTL 实体/模块名称的用户定义的前缀。
-
-mult_keep_attribute
- 启用 keep 属性。
-
-register_all_io
- 默认寄存所有 I/O 信号。默认值为
false
。指定该选项时启用此设置。 -
-register_reset_num <int>
- 指定要添加到复位信号的寄存器数量。在 Vivado IP 流程中,默认值为 0。对于 Vitis 内核流程,默认值为 3。
-
-reset [none | control | state | all]
- C/C++ 语言代码中变量的初始化值与 RTL 中初始化的值始终相同,因此与比特流中初始化值也始终相同。此初始化在上电时执行,对设计应用复位时不会重复此操作。
通过
-reset
选项应用的置位操作用于判定寄存器和存储器的复位方式。-
none
- 在设计中不添加复位。
-
control
- 复位控制寄存器,例如,状态机中使用的寄存器和用于生成 I/O 协议信号的寄存器。这是默认设置。
-
state
- 复位控制寄存器和从 C/C++ 语言代码中的静态变量或全局变量衍生的寄存器或存储器。C/C++ 语言代码中已初始化的任意静态变量或全局变量都复位为其初始值。
-
all
- 复位设计中的所有寄存器和存储器。C/C++ 语言代码中已初始化的任意静态变量或全局变量都复位为其初始值。
-
-
-reset_async
- 这导致所有寄存器都使用异步复位。如果不指定该选项,则使用同步复位。
-
-reset_level (low | high)
- 允许复位信号的极性设置为低电平有效或高电平有效。默认值为
High
。
示例
将输出 RTL 配置为以异步低电平有效复位对所有寄存器进行复位。
config_rtl -reset all -reset_async -reset_level low
将 my_message.txt
的内容作为注释添加到所有 RTL 输出文件中。
config_rtl -header my_mesage.txt