生成 RTL 内核 - 2022.1 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2022-05-25
Version
2022.1 简体中文

Vivado IDE 的 IP 工程示例中设计并测试内核后,最后一个步骤是生成 RTL 内核对象 (XO) 文件以供 Vitis 编译器使用。

单击Vivado Flow Navigator > Project Manager(Vivado Flow Navigator > 工程管理器)菜单中的Generate RTL Kernel(生成 RTL 内核)命令。这样会打开“Generate RTL Kernel”(生成 RTL 内核)对话框,其中包含 3 个主要的封装选项:

Sources only kernel(仅限源文件的内核)
直接使用 RTL 设计源文件来封装内核。
Pre-synthesized kernel(预综合的内核)
将内核与 RTL 设计源文件封装在一起,并在其中包含已综合且已缓存的输出,此输出可供稍后在流程中使用,以避免重新综合。如果目标平台发生更改,则封装的内核可能会回退到 RTL 设计源文件,而不是使用缓存的输出。
Netlist (DCP) based kernel(基于网表 (DCP) 的内核)
使用内核的已综合输出所生成的网表,将内核封装为黑盒。如有必要,可以选择加密此输出。如果目标平台发生更改,则内核可能无法重新定位新器件,并且必须从源文件重新生成。如果设计包含块设计,则基于网表 (DCP) 的内核是唯一可用的封装选项。

(可选)Software Emulation Sources(软件仿真源)字段允许您指定内核的软件模型,此模型可在软件仿真期间使用。如果软件模型包含多个文件,请在“源文件”列表中的每个文件之间提供空格,或者使用 GUI,在选择文件时按住CTRL键来选择多个文件。

单击OK后,将生成内核输出文件。如果选择了预综合的内核或网表内核选项,则可以运行综合。如果先前已运行综合,那么它将使用这些输出,即使这些输出已过时也是如此。内核的赛灵思对象 (XO) 文件是在 Vivado 内核工程的 exports 目录中生成的。

此时,您可以关闭 Vivado 内核工程。如果 Vivado 内核工程是从 Vitis IDE 调用的,那么您可将名为 host_example.cpp 的主机代码示例和内核对象 (XO) 文件添加到 Vitis IDE 的应用工程的相应子工程的 ./src 文件夹中。如需了解更多信息,请参阅 添加源文件