描述
用于为特定状态变量(全局或静态)添加或移除复位。复位端口用于在应用复位信号时,立即将连接到复位端口的寄存器和块 RAM 还原为初始值。syn.rtl.reset 命令可用于控制 RTL 复位端口是否存在及其行为,如 RTL 配置 中所述。
通过 syn.directive.reset 可提供更大的复位控制。对于静态变量或全局变量,RESET 编译指示或指令可用于显式添加复位,或者可通过指定 off 从复位中移除变量。当设计中存在静态阵列或全局阵列时,该选项非常实用。
语法
syn.directive.reset=[OPTIONS] <location> <variable>
-
<location>表示定义变量的位置(格式为function[/label])。 -
<variable>表示对其应用指令的变量。
选项
-
off -
- 如果指定
off,则针对指定变量不生成复位。
- 如果指定
示例
为 foo 函数中的 a 变量添加复位,即使全局复位设置为 none 或 control 也是如此。
syn.directive.reset=foo a
从 foo 函数中的 static int
a 变量移除复位,即使全局复位设置为 state 或 all 也是如此。
syn.directive.reset=off foo a