创建用户管理的 RTL 内核 - 2022.1 简体中文

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

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

如果您的 RTL IP 不满足 Vitis 编译器的 AXI 接口要求(如 内核接口要求 中所述),那么您必须修改 IP 以实现所需接口。但如果您的 RTL IP 不满足 XRT 控制协议 ap_ctrl_hsap_ctrl_chain,那么您可将其定义为用户管理的内核,而无需重写 IP。

用户管理的内核无需满足 XRT 的控制要求,并且可实现各种执行机制。用户管理的内核允许您利用 Vitis 编译器的系统构建功能,同时允许您的内核实现您自己的控制方案。在此情况下并没有规定的内核启动、停止或控制方法。这些方法很大程度上取决于您的应用或系统的具体要求。可用的控制方案包括:

  • 通过 s_axilite 控制接口访问寄存器,类似于 XRT 所使用的方法,但也可供您自己的实现使用
  • 通过软件驱动程序(例如,UIO 驱动程序)来访问主机应用中实现的硬件
  • 从独立组件提供的信号或者从其它内核触发您的内核的启动或停止响应
  • 提供数据驱动的方法,如 使用自动重启内核 中所述
重要:s_axilite 接口中为用户管理的内核实现控制寄存器的局限性之一在于此控制寄存器不得名为 CTRL。此名称为保留名称,专用于 XRT 管理的内核,在用户管理的内核(或 ap_ctrl_none 内核)上发现使用此名称时会返回“Critical Warning”(严重警告)。