用于 PCI Express* 的 Intel® FPGA P-tile Avalon® Streaming IP设计实例用户指南

ID 683038
日期 3/28/2022
Public

1.2. Programmed Input/Output (PIO)设计实例功能描述

PIO设计实例执行从主机处理器到目标器件的内存传输。 本实例中,主机处理器请求单双字(single-dword)MemRd和MemWr TLP。

PIO设计实例自动创建在 Intel® Quartus® Prime软件中进行仿真和编译的必要文件。本设计实例广泛涵盖各种参数。但并未涵盖P-tile Hard IP面向PCIe的所有可能的参数化。

此设计实例包含以下组件:

  • 按照您的指定参数生成的P-Tile Avalon Streaming Hard IP Endpoint 变体(DUT)。该组件将接收到的TLP数据驱动到PIO应用程序。
  • PIO Application(APPS)组件,执行PCI Express TLP与片上存储器上简单Avalon-MM读和写之间的转换。
  • 片上存储器(MEM)组件。对于1x16设计实例,片上存储器由一个16 KB存储块组成。对于2x8设计实例,片上存储器由两个16 KB存储块组成。
  • Reset Release IP:此IP将控制电路保持在复位状态,直到器件已完全进入用户模式。FPGA置位INIT_DONE输出以指示器件处于用户模式。Reset Release IP生成内部INIT_DONE信号的逆向版本来创建nINIT_DONE输出,以便您能在设计中使用。nINIT_DONE信号为高电平直到整个器件进入用户模式。nINIT_DONE置位(低电平)后,全部逻辑处于用户模式并正常运行。您可以从以下方法中选择其一来使用nINIT_DONE信号:
    • 门控外部或内部复位。
    • 门控对对收发器和I/O PLL的复位输入。
    • 门控设计块(例如,嵌入式存储块,状态机和移位寄存器)的写使能。
    • 在您的设计中同步驱动寄存器复位输入端口。

仿真测试台例化PIO设计实例和Root Port BFM以对接目标Endpoint。

图 1.  Platform Designer PIO 1x16设计实例仿真测试台结构框图
图 2.  Platform Designer PIO 2x8设计实例仿真测试台结构框图
注: 上述PCIe 2x8 PIO设计实例的仿真测试台是面向单个PCIe x8链路而配置,但是实际设计实现了2个PCIe x8链路。

测试程序在片上存储器的同一位置写入和读取数据。它将读取的数据与预期结果进行比较。如果没有发生错误,则测试台报告:“Simulation stopped due to successful completion”。

P-Tile Avalon® Streaming设计实例支持以下配置:
  • Gen4 x16 512-bit (350 MHz或以上) Endpoint
  • Gen3 x16 512-bit Endpoint
  • Gen4 x8x8 256-bit (350 MHz或以上) Endpoint
  • Gen3 x8x8 256-bit Endpoint
注: 本设计实例仅支持P-tile Avalon® Streaming IP for PCIe参数编辑器中的默认设置。
图 3. P-Tile Avalon® Streaming PCI Express 1x16 PIO设计实例的Platform Designer系统内容 Platform Designer生成的这个设计实例最高可用于Gen4 x16变体。
图 4. P-Tile Avalon® Streaming PCI Express 2x8 PIO设计实例的Platform Designer系统内容 Platform Designer生成的这个设计最高可用于Gen4 x8x8变体。