仅对英特尔可见 — GUID: jba1398967229771
Ixiasoft
仅对英特尔可见 — GUID: jba1398967229771
Ixiasoft
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均衡的进展。链路均衡的phase 2和phase 3是可选的。每个链路必须经过所有四个阶段,即便没有出现任何调整。如果跳过Phase 2和Phase 3,那么就会以链路BER优化为代价来加速链路训练。
Phase 0
Phase 0包括以下步骤:
- 上游组件通过发送包括下游组件的起始预置(starting preset)的EQ TS2训练集,在Recovery.Rcvrconfig期间进入均衡的Phase 0。EQ TS2训练集可以以2.5 GT/s或5 GT/s发送。
- 下游组件在以8 GT/s退出Recovery.Speed后进入均衡的Phase 0。下游组件接收来自训练序列的起始预置(starting preset),并将它们应用到发送器。此时,上游组件已经进入Phase 1并以8 GT/s运行。
- 若要进入Phase 1,接收器必须有BER < 10-4。接收器应该能够解码足够多的连续训练序列。
- 若要进入Equalization Phase 1,下游组件必须检测Equalization Control (EC)比特设置为2’b01的训练集。
Phase 1
在均衡过程的Phase 1中,链路搭档交换Full Swing (FS)和Low Frequency (LF)信息。这些值代表TX系数的上限和下限。接收器使用此信息来计算和请求下一组发送器系数。
- 当在所有通道上都捕捉到了设置为1’b0的EC比特的训练集时,上游组件就会移到EQ Phase 1。它还发送EC=2’b10,起始前光标,主光标和后光标系数。
- 下游组件在检测到这些新的训练集后移到EQ Phase 2。
- [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系数。
调整流程通常包括以下步骤:
- Endpoint接收来自(Root Port发送的)Phase 2训练集的起始预置。
- Endpoint接收器中的电路决定BER。它使用FS和LF计算下一个发送器系数集。它也在Training Sets中嵌入此信息,使Link Partner应用到其发送器。
Root Port解码这些系数和预置,对三个发送器系数规则进行合法性检查,将设置应用到它的发送器上,并将它们发送到Training Sets中。英特尔器件显示的默认Full Swing (FS)值为60,Low Frequency (LF)为20。发送器系数的三个规则是:
- |C-1| <= Floor (FS/4)
- |C-1|+C0+|C+1| = FS
- C0-|C-1|-|C+1 |>= LF
其中C0是主光标(main cursor) (boost),C-1是前光标(pre-cursor) (pre-shoot),C+1是后光标(post-cursor)(de-emphasis)。
- 重复此过程,直到下游组件的接收器达到BER < 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,英特尔建议您在Phase 2 Equalization for Endpoints或Phase 3 Equalization for Root Ports期间在触发模式下开启CTLE。
使用端口pipe_g3_txdeemph[17:0]发送对应于Gen3 presets的系数。英特尔建议发送Preset P8系数,使A10接收器能够成功地恢复数据。pipe_g3_txdeemph用于在均衡期间选择链路搭档的发送器去加重。
使用端口pipe_g3_rxpresethint[2:0]在均衡阶段开启触发模式的CTLE。
运行在Gen1/Gen2速度上的支持Gen3的设计(在以下操作过程中) | 受支持的CTLE - mode Manual。如要在手动模式下使用CTLE,需要进行如下设置 |
---|---|
上电 |
|
下训到Gen1/Gen2 (引导或非引导)和Gen3的后续重输入 |
|
下训到Gen1/Gen2 |
|
运行在Gen3速度上的支持Gen3的设计(在以下操作过程中) | 受支持的CTLE - mode Triggered adaptation。若要在自适应模式下使用CTLE,需要进行如下设置 |
---|---|
Gen3的第一次输入 |
|
在Gen3中重新执行EQ |
|
下训到Gen1/Gen2 (引导或非引导)后的Gen3的重输入 |
|
英特尔建议对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