[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇


PCIe接口自从被推出以来 , 已经成为了PC和Server上最重要的接口 。 为了更高了数据吞吐率 , PCI-SIG组织不断刷新接口标准 , 从PCIe 3.0的8GT/s数据速率 , 到PCIe 4.0的16GT/s数据速率 , 再到PCIe 5.0的32GT/x 。 PCI-SIG组织实现了在速率翻倍的同时 , 仍能保持使用普通的FR4板材和廉价接插件 , 主要源自两个方面的改进 , 一是使用128b/130b编码来代替8b/10b编码 , 使得编码效率大幅提高;另一个是使用动态均衡技术 , 来代替先前代的静态均衡技术 。
这里聚焦于PCIe 3.0和4.0中的动态均衡技术 , 介绍其原理、实现及其相关的一致性测试 。 这样一种动态均衡技术 , 在spec中被称作“Link Equalization”(链路均衡 , 简称为LEQ) 。 本系列文章分上下两篇 , 本文理论篇主要介绍PCIe 3.0/4.0的链路均衡的工作原理 , 下一篇实践篇则侧重于链路均衡的测试和调试 。
PCIe 3.0 & 4.0的链路均衡
在PCIe 3.0和4.0中的链路均衡技术相较于先前代要复杂得多 , 这样一种动态均衡技术可以分为两个方面进行讨论 。
均衡特性方面:从这个方面来说 , 相对于先前代的均衡来说 , 3.0和4.0中的均衡技术的硬件性能指标要求更高了 。
协议方面:为了实现动态地调整均衡设置 , 需要协议层的配合 , 这是通过PHY层的LTSSM状态机中的Recovery.Equalization子状态来实现的 。
先来从均衡特性的角度来看看PCIe 3.0和4.0的均衡 , 如下展示了在PCIe 3.0/4.0中所使用的全部均衡技术 , 在Tx端有FFE(Feed Forward Equalizer , 前馈均衡器);在Rx端有:CTLE(Continuous Time Linear Equalizer , 连续时间线性均衡器)和DFE(Decision Feedback Equalizer , 判决反馈均衡器) 。 通过FFE和CTLE , 可以去除大部分由ISI所引入的抖动;通过DFE可以进一步去除ISI , 它还能去除部分的阻抗失配所造成的反射 。 通过这些均衡处理 , 就能够最大程度上地保证在接收端判决输入处将眼图打开 。
除了上述这些均衡特性上的支持外 , 在协议层(LTSSM)中还规定需要通过协议的方式来动态调整链路上的均衡设定值 , 这整个过程称作链路均衡(Link Equalization , LEQ) 。 在链路均衡过程中:
本地端按照某个初始Tx EQ的设定来发送数据;
对端在接收到数据时 , 会根据误码率或信号质量来判断该Tx EQ是否合适;
若不合适 , 对端会通过协议向本地端请求一个新的Tx EQ值;
本地端在接收到这个请求值之后 , 会改变Tx EQ的值 。
通过这一动态过程 , 就能够保证链路上的Tx EQ为最优值 。 与此同时 , 本地端和对端也会同时调整Rx EQ 。 通过动态地调整Tx EQ和Rx EQ , 就能够灵活地适应不同的信道情况 。
[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇
本文插图

图1 LEQ硬件实现的模块框图
发送端的均衡:FFE
在PCIe 3.0 & 4.0中使用的都是3-tap FFE , 如图 2a所示 。 其中 ,
[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇
本文插图

为数字信号 , 建模时取值为±1;
[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇
本文插图

为FFE的抽头系数;
[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇
本文插图

为发送端的模拟信号输出 。
[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇
本文插图

[]PCIe Gen3/Gen4接收端链路均衡测试—理论篇
本文插图

(a)FFE的模型框图 (b) FFE的模拟电压输出


推荐阅读