下表定义了 PIO 设计文件结构。根据具体的目标核, Vivado® IP 目录中并非所有文件都需要交付,部分文件可能无需交付。主要差别在于部分 PCIe® 端点解决方案使用 32 位用户数据路径,其它解决方案则使用 64 位数据路径,而 PIO 设计则对于这两种情况都适用。数据路径宽度取决于具体的目标核。
文件 | 描述 |
---|---|
PIO.v | 顶层设计封装 |
PIO_INTR_CTRL.v | PIO 中断控制器 |
PIO_EP.v | PIO 应用模块 |
PIO_TO_CTRL.v | PIO 关闭控制器模块 |
PIO_RX_ENGINE.v | 32 位接收引擎 |
PIO_TX_ENGINE.v | 32 位发射引擎 |
PIO_EP_MEM_ACCESS.v | 端点存储器访问模块 |
PIO_EP_MEM.v | 端点存储器 |
PIO_EP_XPM_SDRAM_WRAP.v | 采用 Dword 对齐模式的端点存储器 |
已提供 4 种 PIO 设计配置:PIO_64、PIO_128 以及分别含 64 位、128 位、256 位和 512 位 AXI4-Stream 接口的 PIO_256。所生成的 PIO 配置取决于所选端点类型、PCI Express 通道数量以及所选接口宽度。下表识别了根据您的选择所生成的 PIO 配置。
核 | x1 | x2 | x4 | x8 |
---|---|---|---|---|
Integrated Block for PCIe | PIO_64 | PIO_64 和 PIO_128 | PIO_64、PIO_128 和 PIO_256 | PIO_64、PIO_128 1 和 PIO_256 |
|
下图显示了 PIO 设计的各组件,可分为 4 个主要部分:发射引擎、接收引擎、存储器访问控制器和功耗管理关闭控制器。
图 1. PIO 设计组件