AXI4-Lite Bridge 主接口 - 5.0 简体中文

QDMA Subsystem for PCI Express 产品指南 (PG302)

Document ID
PG302
Release Date
2023-10-18
Version
5.0 简体中文

可将任意物理功能 (PF) 或虚拟功能 (VF) 的一个或多个 PCIe BAR 映射到 AXI4‑Lite 主接口。此操作必须在配置 IP 时完成。在 AXI4‑Lite 接口的 aruserawuser 中将提供功能 ID、BAR ID(BAR 命中)、VF 组和 VF 组偏移,帮助用户识别存储器访问的来源。

在 AXI4-Lite 主端口中会列出 m_axil_awuser/m_axil_aruser[54:0] 用户位的映射。

虚拟功能组 (VFG) 表示 VF 组编号。它等同于对应 VF 关联的 PF 编号。VFG_OFFSET 表示与特定 PF 相关的 VF 编号。请注意,它并非每个 PF 的 FIRST_VF_OFFSET。

例如,如果 PF0 和 PF1 均含 8 个 VF,PF0 和 PF1 的 FIRST_VF_OFFSET 分别为 4 和 11,以下是 VFG 和 VFG_OFFSET 的映射。

表 1. AXI4-Lite 接口 VFG
功能编号 PF 编号 VFG VFG_OFFSET
0 0 0 0
1 1 0 0
4 0 0 0(因为 PF0 的 FIRST_VF_OFFSET 是 4,所以 PF0 的第一个 VF 从 FN_NUM=4 开始,VFG_OSSET=0 表示这是 PF0 的第一个 VF)
5 0 0 1(VFG_OSSET=1 表示这是 PF0 的第二个 VF)
... ... ... ...
12 1 1 0(VFG=1 表示此 VF 与 PF1 关联)
13 1 1 1

每个主机发起的访问均可通过 PCIe 到 AXI BAR 转换单独映射到 64 位 AXI 地址空间。

由于所有功能都共享相同的 AXI4 主接口地址空间,因此需要相应机制来将请求从不同功能映射到 AXI 主接口侧的不同地址空间。以下显示了如何使用 PCIe 到 AXI 转换矢量。请注意,属于相同 PF 的所有 VF 都共享相同的 PCIe 到 AXI 转换矢量。因此,每个 VF 的 AXI 地址空间都连接在一起。VFG_OFFSET 可用于计算特定 VF 的 AXI 实际起始地址。

综上所述,m_axil_awaddr 的判定方式为:

  • 对于 PF,m_axil_awaddr = pcie2axi_vec + axil_offset
  • 对于 VF,m_axil_awaddr = pcie2axi_vec + (VFG_OFFSET + 1)*vf_bar_size + axil_offset

其中,pcie2axi_vec 是 PCIe 到 AXI BAR 转换(可在 IP 配置期间设置)。

axib_offset 是请求的目标空间中的地址偏移。

每个主机发起的访问均可单独映射到 64 位 AXI 地址空间。在此接口上支持一个未完成的读取操作和一个未完成的写入操作。

在 IP 配置时,还可将扩展 ROM BAR 映射到 AXI4‑Lite 接口。