用于 PCI Express* 的 英特尔® FPGA R-tile Avalon® Streaming IP设计实例用户指南

ID 683544
日期 4/10/2023
Public
文档目录

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

Programmed Input/Output (PIO)设计实例执行从主机处理器到目标器件的内存传输。本实例中,主机处理器请求单双字(single-dword)Memory Read (MemRd)和Memory Write (MemWr) Transaction Layer Packets (TLPs)。

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

该设计实例支持以下配置:

表 2.  PIO所支持配置的设计实例支持级别关键字:S = simulation(仿真),C = compilation(编译),T = timing(时序),H = hardware(硬件),N/A = configuration not supported(不支持配置)。
端口模式 链路宽度 链路速度 数据宽度 (Bits) 设计实例支持 支持的仿真器
Endpoint x16 Gen5 1024 (4 x 256) SCTH 3 Siemens EDA QuestaSim* , VCS* , VCS* MX, Xcelium* 4
Gen4 1024 (4 x 256) CTH 3 N/A
512 (2 x 256) N/A N/A
Gen3 1024 (4 x 256) CTH 3 N/A
512 (2 x 256) N/A N/A
x8 Gen5 512 (2 x 256) SCTH 3 Siemens EDA QuestaSim* , VCS* , VCS* MX, Xcelium* 4
Gen4 512 (2 x 256) CTH 3 N/A
256 (1 x 256) N/A N/A
Gen3 512 (2 x 256) CTH 3 N/A
256 (1 x 256) N/A N/A
x4 Gen5 256 (2 x 128) N/A N/A
Gen4 256 (2 x 128) N/A N/A
128 (1 x 128) N/A N/A
Gen3 256 (2 x 128) N/A N/A
128 (1 x 128) N/A N/A
Root Port N/A N/A N/A N/A N/A
TLP Bypass N/A N/A N/A N/A N/A
PIPE-D N/A N/A N/A N/A N/A

该时钟来自IP的coreclkout_hip输出并且运行频率为500 MHz。

注:英特尔 Quartus Prime的23.1发布中,本设计实例仅支持用于PCIe的Intel FPGA R-tile Avalon® Streaming IP的Parameter Editor参数编辑器中的默认设置。
本设计实例包括以下组件:
  • 按照您指定的参数生成的 Avalon® Streaming (Avalon-ST) Hard IP Endpoint变体(DUT)。该组件将接收的TLP数据驱动到PIO应用程序。它将从链路接收的PCIe串行数据转换为 Avalon® -ST数据格式。
  • PIO Application (APPS) 组件,它在PCI Express TLP与对片上存储器的简单 Avalon® 存储器映射( Avalon® -MM) 读和写之间执行必要的转换。
    注: 当前APPS组件仅支持单周期数据传输。不支持长于一个时钟周期的数据传输。
  • 一个片上存储(MEM)组件(一个32 KB存储器用于x16设计实例,以及2个32 KB存储器用于2x8设计实例)。
  • Reset Release IP:此IP将控制电路保持在复位状态,直到器件完全进入用户模式。FPGA置位nINIT_DONE输出以发送器件已处于用户模式的信号。nINIT_DONE信号为高电平,直到整个器件进入用户模式。nINIT_DONE解除置位(低电平)后,所有逻辑进入用户模式并正常运行。

Gen5 x16设计实例中,例化具有1024-bit数据路径的PIO组件与1024-bit DUT对接。此外,该设计实例仅例化一个MEM器件,如下图所示。

图 1. Gen5 x16设计实例结构框图

Gen5 2x8设计实例中,例化2个具有512-bit数据路径的PIO组件与2x512-bit DUT对接。此外,该设计实例例化2个MEM器件,如下图所示。

图 2. Gen5 2x8设计实例结构框图

出于仿真目的,该设计实例还生成一个测试台,该测试台会例化PIO设计实例和Root Port BFM以与目标Endpoint对接。

注: PCIe 2x8 PIO设计实例的仿真测试台具有单个PCIe x8链路,但是实际设计实现了2个PCIe x8链路。
图 3.  Platform Designer PIO设计实例仿真测试台结构框图

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

图 4. R-tile Avalon® -ST PCI Express Gen5 x16 PIO设计实例的Platform Designer系统内容
图 5. R-tile Avalon® -ST PCI Express Gen5 2x8 PIO设计实例的Platform Designer系统内容
3英特尔 Quartus Prime 23.1发布中,用于PCI Express的Intel FPGA R-tile Avalon® Streaming IP设计实例具有有限的硬件测试支持。使用从第2.5节开始的说明进行早期测试并按照流程要求在英特尔Agilex® 7 I-Series FPGA Development Kit上运行该设计实例。
4 Xcelium* 仿真器支持仅适用于具有如下OPN编号的器件: AGIx027R29AxxxxR3, AGIx027R29AxxxxR2, AGIx023R18AxxxxR0, AGIx041R29DxxxxR0, AGIx041R29DxxxxR1。有关OPN编码的更多详细信息,请参考 英特尔Agilex® 7 FPGAs and SoCs Device Overview(FPGA和SoC器件概述)。