L-Tile和H-Tile收发器PHY用户指南

ID 683621
日期 3/29/2021
Public
文档目录

2.5.1.2.1. Gen1/Gen2特性

在PIPE配置中,每个通道都有一个PIPE接口模块,在PHY-MAC层和收发器通道PCS和PMA模块之间传输数据、控制和状态信号。PIPE配置基于PIPE 2.0规范。如果使用PIPE配置,那么必须在FPGA架构中使用soft IP来实现PHY-MAC层。

Gen1 (2.5 Gbps)和Gen2 (5 Gbps)之间的动态切换

在PIPE配置中,Native PHY IP core提供一个输入信号pipe_rate [1:0],在功能上等效于PCIe规范中指定的RATE信号。此输入信号pipe_rate [1:0]上的值从2'b00变成2'b01时会启动从Gen1到Gen2的数据速率切换。此输入信号上的值从2'b01变成2'b00时会启动从Gen2到Gen1的数据速率切换。

发送器电路空闲生成(Transmitter Electrical Idle Generation)

当电路空闲输入信号被置位时,PIPE接口模块将通道中的发送器缓冲器置于电路空闲状态。在电路空闲期间,对于PCIe Gen1和Gen2数据速率,发送器缓冲器差分和共模输出电平兼容于PCIe Base Specification 2.0。

PCIe规范要求发送驱动器处于特定电源状态的电路空闲状态。要了解关于不同电源状态中要求的输入信号水平的详细信息,请参考Power State Management

电源状态管理

为了最小化功耗,物理层器件必须支持以下电源状态。

表 98.  PCIe规范中定义的电源状态
电源状态 说明
P0 在PCIe链路上传输数据包期间的常规操作状态。
P0s, P1, and P2 PHY-MAC层指示物理层跳变到这些低功耗状态。

PIPE接口对在PIPE配置中所配置的每个收发器通道提供一个pipe_powerdown输入端口。

当P0电源状态转换到低功耗状态时,PCIe规范要求物理层器件实现节能措施。除了将发送缓冲器置于较低功耗状态下的电气空闲模式之外, Intel® Stratix® 10收发器不实现这些节能措施。

兼容码型传输支持的8B/10B编码器的使用情况

当链路训练和状态机(LTSSM)进入Polling.Compliance子状态时,PCIe发送器会发送一个兼容码型。Polling.Compliance子状态用于评估发送器是否与PCIe电压和时序规范电气兼容。

接收器状态

PCIe规范要求PHY在3-bit状态信号pipe_rx_status[2:0]上对接收器状态进行编码。该信号在PHY-MAC层的操作中使用。PIPE接口模块从收发器通道PCS和PMA模块中接收状态信号并且对转送到FPGA逻辑的信号pipe_rx_status[2:0]的状态进行编码。pipe_rx_status[2:0]端口上的状态信号编码符合PCIe规范。

接收器检测

PIPE接口模块对接收器检测操作提供一个输入信号pipe_tx_detectrx_loopback。PCIe协议要求此信号在LTSSM的Detect状态下为高电平。当pipe_tx_detectrx_loopback信号在P1 power state下被置位时,PIPE接口模块发送一个命令信号到该通道中的发送驱动器,以启动接收器检测序列。在P1 power state下,发送缓冲器必须始终处于电路空闲状态中。接收到此命令信号后,接收器检测电路在发送缓冲器的输出上创建一个阶跃电压。如果远端有一个有效的接收器(符合PCIe输入阻抗的要求),那么走线上阶跃电压的时间常量会增加。接收器检测电路监控此时间常量来确定是否存在接收器。

注: 要使接收器检测电路能够可靠地运行,必须使用收发器片上匹配。此外,串行链路上的AC耦合电容和系统使用的接收器匹配值必须符合PCIe Base Specification 2.0。

根据PIPE 2.0规范,PIPE core提供一个1-bit PHY状态信号pipe_phy_status和一个3-bit接收器状态信号pipe_rx_status[2:0]来表明是否检测到接收器。

Gen1和Gen2时钟补偿

PIPE 0 ppm

为符合PIPE规范, Intel® Stratix® 10接收器通道有一个速率匹配FIFO,对上游发送器与本地接收器时钟之间高达±300 ppm的小时钟频率差异进行补偿。

请考虑以下PIPE时钟补偿指南:

  • 在一个SKP有序集中插入或删除一个跳过(SKP)符号。
    注: SKP符号也表示为K28.0,并用于对两个通信端口之间的不同比特率进行补偿。
  • 对删除后的SKP有序集中SKP符号的数量施加了最小限制。发送的SKP有序集由后面跟着三个SKP符号的单个COM (K28.5)符号组成。一个有序集在删除后可能会有一个空的COM case。
  • 插入后SKP有序集中的SKP符号数量有最大限制。插入后,有序集可能会有多于5个符号的情况。
  • 对于INSERT/DELETE情况:标志状态显示在发生插入或删除的SKP有序集的COM符号上。
  • 对于FULL/EMPTY情况:标志状态显示在插入或删除字符的位置。
    注: PIPE接口将标志的值转换成相应的pipe_rx_status信号。
  • PIPE模式还有一个“0 ppm”配置选项,可以在同步系统中使用该选项。在此配置中,速率匹配FIFO模块不应该进行任何时钟补偿,但延迟将会达到最小。
图 94. 速率匹配删除此图显示了速率匹配删除的示例,其中必须在速率匹配FIFO (rmfifo_input_data)的输入上从接收的数据中删除2个/K28.0/ SKP符号。每个接收到的SKP有序集只删除一个/K28.0/ SKP符号。
图 95. 速率匹配插入此图显示了速率匹配插入的示例,其中必须插入2个SKP符号。每个接收到的SKP有序集只插入一个/K28.0/ SKP符号。
图 96. 速率匹配FIFO已满PIPE模式下的速率匹配FIFO会自动删除导致FIFO变满的数据字节,并驱动与后续数据字节同步的pipe_rx_status[2:0] = 3'b101。下图显示了PIPE模式下的速率匹配FIFO满状态。在接收数据字节D4之后,速率匹配FIFO变满。
图 97. 速率匹配FIFO已空速率匹配FIFO会在导致FIFO变空的数据字节的后面插入EDB符号,/K30.7/ (9'h1FE),并驱动与插入的/K30.7/ (9'h1FE)同步的pipe_rx_status[2:0] = 3'b101。下图显示了PIPE模式下的速率匹配FIFO空状态。在读出数据字节D3之后,速率匹配FIFO变空。

PIPE模式还有一个可用于同步系统中的“0 ppm”配置选项。在此配置中,速率匹配FIFO模块不应该进行任何时钟补偿,但延迟将会达到最小。

PCIe反向并行环回(PCIe Reverse Parallel Loopback)

PCIe反向并行环回仅可用于Gen1,Gen2和Gen3数据速率。接收到的串行数据穿过接收器CDR、解串器、字对齐模块和速率匹配FIFO。数据然后被回送至发送串化器,并且通过发送缓冲器发送出去。接收到的数据通过rx_parallel_data端口也可用于FPGA逻辑。此环回模式基于PCIe specification 2.0。 Intel® Stratix® 10器件提供一个输入信号pipe_tx_detectrx_loopback来使能这一环回模式。

注: 这是PIPE配置中仅支持的环回选项。
图 98. PCIe反向并行环回模式数据通路