Intel® Arria® 10收发器PHY用户指南

ID 683617
日期 11/06/2017
Public

本文档可提供新的版本。客户应 单击此处 前往查看最新版本。

文档目录

2.7.13. Gen3数据速率的PHY IP Core for PCIe* (PIPE)链路均衡

由于数据速率、通道特征、接收器设计和工艺变化,Gen3模式要求TX和RX链路均衡。链路均衡使Endpoint和Root Port能够调整每个通道的TX和RX设置以提高信号质量。此进程生成一个小于10-12的Bit Error Rate (BER)的Gen3链路。

关于8.0 GT/s数据速率的四阶链路均衡的详细信息,请参考 PCI Express* Base Specification, Rev 3.0中的Section 4.2.3.。一个新的LTSSM状态,Recovery.Equalization with Phases 0–3,反映了通过Gen3均衡的进程。链路均衡的Phases 2和3是可选的。 每个链路必须经过所有四个阶段,即便没有出现调整。如果跳过Phases 2和3,将以链路BER优化为代价来加速链路训练。

Phase 0

Phase 0包括下面步骤:

  1. 上游组件在 Recovery.Rcvrconfig期间通过发送EQ TS2训练集以及下游组件的起始预设进入均衡的Phase 0。EQ TS2训练集以2.5 GT/s或5 GT/s发送出去。
  2. 下游组件在以8 GT/s退出 Recovery.Speed进入均衡的Phase 0。它接收来自训练序列的起始预设并及它们应用到发送器。此时,上游组件已经进入Phase 1,并运行在8 GT/s。
  3. 要到Phase 1,接收器的BER必须小于10-4。接收器应该能够解码足够的连续训练序列。
  4. 要到Equalization Phase 1,下游组件必须要检测到Equalization Control (EC)比特设为2’b01的训练集。

Phase 1

在均衡进程的Phase 1期间,链路搭档交换Full Swing (FS)和Low Frequency (LF)信息。这些值代表TX系数的上限和下限。接收器使用此信息来计算和请求下一个发送器系数集。

  1. 当在所有的通道上采集到设置为1’b0的EC比特的训练集时,上游组件移到EQ Phase 2。它也发送EC=2’b10,开始预光标,主光标和后光标系数。
  2. 下游组件在检测到这些新的训练集后移到EQ Phase 2。
使用pipe_g3_txdeemph[17:0]端口来选择发送器去加重。18个比特指定以下系数:
  • [5:0]: C-1
  • [11:6]: C0
  • [17:12]: C+1

请参考到TX去加重的预置映射了解预置于TX去加重之间的映射。

Phase 2 (可选)

在Phase 2,Endpoint调整Root Port的TX系数。TS1 Use Preset比特决定Endpoint是否对粗分辨率使用预置或者对精细分辨率使用系数。

如果您使用PHY IP Core for PCI Express (PIPE)作为Root Port,那么Endpoint能够调整Root Port TX系数。

调整流程通常包括以下步骤:

  1. Endpoint接收来自Root Port发送的 Phase 2训练集的起始预置。
  2. Endpoint接收器中的电路决定BER。它使用FS和LF计算下一个发送器系数集。它也在Training Sets中嵌入此信息,使Link Partner应用到其发送器。
    Root Port解码这些系数和预置,对三个发送器系数规则进行合法性检查,将设置应用到它的发送器上,并将它们发送到Training Sets中。 Intel® 器件显示的默认Full Swing (FS)值为60,Low Frequency (LF)为20。发送器系数的三个规则是:
    1. |C-1| <= Floor (FS/4)
    2. |C-1|+C0+|C+1| = FS
    3. C0-|C-1|-|C+1 |>= LF

    其中C0是主标记(boost)C-1是预标记 (pre-shoot)C+1是后标记(de-emphasis)

  3. 重复此过程直到下游组件的接收器的BER小于10 < 10-12

Phase 3 (可选)

在此阶段,Root Port调整Endpoint的发送器。此过程对Phase 2是模拟的,但操作在相反方向。

Phase 3调整完成后,Root Port移到Recovery.RcvrLock,发送EC=2’b00,最终系数或Phase 2中同意的预置。Endpoint使用最终系数或Phase 3中同意的预置来移到Recovery.RcvrLock。

调整链路的建议

为提高接收器的BER,Intel建议您在Phase 2 Equalization for Endpoints或Phase 3 Equalization for Root Ports期间触发模式下开启CTLE。

使用端口pipe_g3_txdeemph[17:0]发送对应于Gen3 presets的系数。 Intel® 建议发送Preset P8系数,使A10接收器能够成功地恢复数据。pipe_g3_txdeemph用于在均衡期间选择链路搭档的发送器去加重。

使用端口pipe_g3_rxpresethint[2:0]在均衡阶段开启触发模式的CTLE。

表 194.  Gen3设计的Gen1/Gen2速度的CTLE模式使用此表来驱动pipe_g3_rxpresethint端口,当运行在Gen3设计的Gen1/Gen2速度上时将CTLE设置成手动模式。
在以下过程中,运行在Gen1/Gen2速度上的Gen3设计 支持的CTLE模式手动。如要在手动模式下使用CTLE,需要如下设置
上电
  • 上电期间,设置pipe_g3_rxpresethint[2:0] = 3’b000
  • 您可以使用Quartus设置的默认CTLE 4S AC Gain (或者)
  • 使用QSF assignments设置 manual CTLE 4S AC Gain
下训到Gen1/Gen2 (引导或非引导)和Gen3的后续重输入
  • 在Gen1/2输入上,设置pipe_g3_rxpresethint[2:0] = 3’b000
  • 您可以使用Quartus设置的默认CTLE 4S AC Gain (或者)
  • 使用QSF assignments设置 manual CTLE 4S AC Gain
下训到Gen1/Gen2
  • 在Gen1/2输入上,设置pipe_g3_rxpresethint[2:0] = 3’b000
  • 您可以使用Quartus设置的默认CTLE 4S AC Gain (或者)
  • 使用QSF assignments设置 manual CTLE 4S AC Gain
注: Intel® 不支持在自适应模式下对Gen1/Gen2速度使用CTLE。您必须在手动模式下使用CTLE。
表 195.  Gen3设计的Gen3速度的CTLE模式使用此表来驱动pipe_g3_rxpresethint端口,当运行在Gen3设计的Gen3速度上时将CTLE模式设置成自适应模式。
以下过程中,运行在Gen3速度上的Gen3设计 支持的CTLE模式触发自适应。如要在自适应模式下使用CTLE,需要如下设置
Gen3的第一次输入
  • 在EQ Phase2/3中,当远端TX preset/coefficient请求完成后,设置pipe_g3_rxpresethint = 3’b111,链路需要保持在Recovery至少12ms,以用于CTLE自适应
  • 如果在EQ阶段没有足够的时间,那么在EQ后可将延迟插入到Recovery.RcvrLock
  • 然后,pipe_g3_rxpresethint应该保持为3’b111,用于Recovery中的Gen3
在Gen3中重新执行EQ
  • 在EQ Phase2/3输入上,pipe_g3_rxpresethint应该设置为3’b000
  • 使用与第一次链接到Gen3相同的步骤

下训到Gen1/Gen2 (引导或非引导)后的Gen3的重输入
  • 在Gen3的下一个输入上,当存在有效数据时,设置pipe_g3_rxpresethint[2:0] = 3’b111,并且在 Recovery状态下等待12ms,以实现CTLE自适应
注:

Intel® 建议对Gen3速度使用自适应模式的CTLE。如果想要对Gen3速度使用手动模式的CTLE,那么必须设置pipe_g3_rxpresethint[2:0] = 3’b000,并且设置CTLE 4S AC gain值。

  • 您可以使用Quartus设置的默认CTLE 4S AC Gain (或者)
  • 使用QSF assignments设置 manual CTLE 4S AC Gain