下图显示了General Settings(常规设置)页面中的三项设置。
图 1. “RTL Kernel”Wizard 常规设置页面
以下是General Settings页面中的三项设置。
Kernel Identification(内核标识)
- Kernel name(内核名称)
- 内核名称。这是 IP、顶层模块、内核和 C/C++ 函数模型的名称。该标识符应符合 C 语言和 Verilog 标识符命名规则。它还必须符合 Vivado IP integrator 命名规则,该规则禁止使用下划线,除非置于字母数字字符之间。
- Kernel vendor(内核供应商)
- 表示供应商名称。用于 Vivado Design Suite 用户指南:采用 IP 进行设计(UG896) 中描述的供应商/库/名称/版本 (VLNV) 格式。
- Kernel library(内核库)
- 表示库名称。用于 VLNV。必须符合相同的标识符规则。
Kernel options(内核选项)
- Kernel control interface(内核控制接口)
- 有 3 种类型的控制接口可用于 RTL 内核。分别是:
ap_ctrl_hs
、ap_ctrl_chain
和ap_ctrl_none
。此类接口可为<kernel>
标签定义hwControlProtocol
,如 RTL 内核 XML 文件 中所述。
Clock and Reset options(时钟和复位选项)
- Number of clocks(时钟数)
- 表示设置内核使用的时钟数。每个 RTL 内核都有一个基准时钟(称为
ap_clk
)和一个可选复位(称为ap_rst_n
)。内核上的所有 AXI 接口均由该时钟驱动。将Number of clocks设为 2 时,将提供辅助时钟和可选复位以供内核在内部使用。此辅助时钟和复位称为
ap_clk_2
和ap_rst_n_2
。该辅助时钟支持独立的频率缩放,并且独立于基准时钟。如果内核时钟需要以比 AXI4 接口更快或更慢的速率运行,辅助时钟非常有用,并且必须在基准时钟上进行时钟设置。重要: 采用多时钟设计时,必须使用适当的时钟域交汇技术来确保所有时钟频率场景下的数据完整性。如需了解更多信息,请参阅 UltraFast 设计方法指南(适用于赛灵思 FPGA 和 SoC)(UG949)。 - Has reset(包含复位)
- 指定是否包含内核的顶层复位输入端口。省略复位对于改善大型设计的布线拥塞非常有用。通常在设计中具有复位的任何寄存器都应具有适当的初始值以确保正确性。如果启用,则每个时钟都包含一个复位端口。块设计类型的内核必须具有复位输入。