DPUCVDX8G 提供了多个端口用于连接到 NoC 和 PS。从 PS 到 DPUCVDX8G PL 组件的接口用于寄存器配置。从 DPUCVDX8G PL 组件到 NoC 的接口用于图像和权重传输。从 PL 组件到 AI 引擎组件的接口用于中间数据交换。DPUCVDX8G 顶层接口如下图所示。
图 1. 从 DPUCVDX8G 到 PS 和 NoC 的连接
有多个参数可用于配置 DPUCVDX8G 架构。每一种架构的不同 DPUCVDX8G 接口的数据宽度和数量都不尽相同。以下显示了含 C32B1CU1 (CPB_N=32, CU_N=1) 架构的 DPUCVDX8G IP 目录截屏:
图 2. 含 C32B1CU1 架构的 DPUCVDX8G 端口
端口名称 | 接口类型 | 数据宽度 | I/O | 描述 |
---|---|---|---|---|
m_axi_aclk | 时钟 | 1 | 输入 | 用于 DPUCVDX8G 通用逻辑的输入时钟。 |
m_axi_aresetn | 复位 | 1 | 输入 | 用于 DPUCVDX8G 通用逻辑的低电平有效复位。 |
s_axi_aclk | 时钟 | 1 | 输入 | 用于 S_AXI_CONTROL 的 AXI 时钟输入。 |
s_axi_aresetn | 复位 | 1 | 输入 | 用于 S_AXI_CONTROL 的低电平有效复位。 |
interrupt | 中断 | 1 | 输出 | 来自 DPUCVDX8G 的高电平有效中断输出。 |
S_AXI_CONTROL | AXI4-Lite | 32 | I/O | 32 位 AXI4-Lite 接口,适用于 DPUCVDX8G 寄存器。 |
Sxx_OFM_AXIS | AXI4-Stream | 64 | 输入 | 从 AI 引擎侧到 PL 侧的输出特征映射。端口数量取决于 DPUCVDX8G 架构和批次数量。 |
Mxx_IFM_AXIS | AXI4-Stream | 128 | 输出 | 从 PL 侧到 AI 引擎侧的输入特征映射。端口数量取决于 DPUCVDX8G 架构和批次数量。 |
Mxx_WGT_AXIS | AXI4-Stream | 128 | 输出 | 从 PL 侧到 AI 引擎侧的权重数据。端口数量取决于 DPUCVDX8G 架构和批次数量。 |
M00_INSTR_AXI | AXI4 | 32 | I/O | 用于 DPU 指令的 32 位 AXI 存储器映射接口。 |
M00_BIAS_AXI | AXI4 | 128 | I/O | 用于加载偏差数据的 128 位 AXI 存储器映射接口。 |
Mxx_IMG_AXI | AXI4 | 128 | I/O | 用于加载镜像和上传输出的 128 位 AXI 存储器映射接口。端口数量取决于 DPUCVDX8G 架构和批次数量。 |
Mxx_WGT_AXI | AXI4 | 512 | I/O | 用于加载共享权重的 512 位 AXI 存储器映射接口。端口数量固定为 4。 |