分享

PCIe 6.0浅析:双向256GB/s的时代来了!

 爱极物 2022-03-02

就在今天,PCI-SIG组织正式发布了PCI Express 6.0的1.0规范,这意味着PCIe 6.0标准已经正式敲定,次世代总线将比PCIe 5.0的带宽再次翻一倍,使得单通道达到8GB/s传输速率,已经相当于PCIe 2.0 x16的全速率,而PCIe 6.0 x16将达到夸张的单向128GB/s,双向256GB/s

根据PCI-SIG组织预测,PCIe 6.0第一批商业硬件将在12个月到18个月内投向市场,也就是在2023年将会优先出现在服务器中。

酝酿3年终成型

回顾PCIe 6.0版本历程,实际上在2019年夏天就已经开始讨论,作为PCIe 5.0的后续产品,PCI-SIG计划用3年时间对其进行版本迭代,也就是2019年PCIe 5.0标准完成的时候,PCIe 6.0规范就已经开始这着手制定,寻找提升PCIe带宽的可能性。尽管PCI-SIG错过了在2021年底完成PCIe 6.0规范制定的目标,但现在看来效率依然惊人。

PCIe已经成为行业内硬件沟通的重要桥梁,显卡、加速器、网卡、固态硬盘以及其他PCIe设备的数据量随着时间推移只会不断增加。让PCIe总线保证足够的带宽、供电也成为了不断追求的目标。而对高版本的PCIe需求更大部分来自于服务器运营商,根据最新的PCIe标准,运营商可以定制更快的高速硬件产品以获得效益最大化,而其中一部分技术随着成本的降低而过度到消费产品中,PCIe 4.0和PCIe 5.0就是很好的例子。

通过PCIe链路速度提升一倍,PCIe 6.0在实际上获得了带宽速率全面翻倍的效果,x1通道从4GB/s提升到了8GB/s,x16通道则一直扩展到了单向128GB/s。这相当于设备可以使用更少的通道数量,达到更高的速率,从而获得实现降低硬件成本效果。

由NRZ向PAM4进发!

PCI Express规范首次推出在2003年,今天的PCIe 6.0属于这项规范的第三次重大修订。PCIe 4.0和5.0虽然速率也实现了对前一代的翻倍,但本质上只是对原本的信号通讯方式进行扩展,均基于PCIe 3.0的128b/130b NRZ信号技术实现。

NRZ(Non-Return-to-Zero)信号,即两种信号电平来表示数字逻辑信号的1、0信息,每个符号周期可传输1bit的逻辑信息,是最传统的数字信号通讯方式之一。

在PCIe 6.0上,通讯方式进行了重大改变,并且也是PCIe标准历史上的首次重大变化,PCIe 6.0将信号通讯技术由NRZ改成了PAM4,中文名第四代脉冲幅度调制,对于近期关注显卡GPU技术的同学就会发现,这项技术已经率先被用在美光GDDR6X上。

按照PCIe 6.0规范描述,PAM4与NRZ的对比,类似于MLC NAND到TLC NAND的提升,将单个单元内保持的电气状态数量增加一倍,在一个单元内实现4个信号电平,而非NRZ的0、1表达。因此PAM4变成了00、10、10、11四种表达模式,可使得PAM4比NRZ承载多一倍的数据量,并且不必增加传输带宽,使得PCIe 6.0实现高度30GHz的频率。

事实上,PAM4本身不是一项新技术,它是一项200G以太网络超高端网络通讯标准,旨在有限的物理通道内实现更高的通讯速率。现在PCI-SIG做的,就是将其带入机箱,成为PCIe下一代标准。

使用PAM4也并非没有成本,由于每Hz带宽更大,PAM4从PHY到物理层的每个层面成本都比较高昂,这也是为什么PAM4只在少部分产品中使用,而没有全球范围内推广。但对于PCIe规范而言,全球范围内部署对于经济效率提升是非常可观的,而且PCIe 6.0也仅仅是跨入PAM4的第一步,未来标准将带来什么样的变化将变得非常有趣。

加入多纠错编码

与MLC NAND到TLC NAND相类似,在附加的信号状态后,PAM4的信号健壮性其实比NRZ要脆弱得多,这也导致了PCIe 6.0成为PCIe历史上第一个使用前向纠错码(Forward Error Correction,简称FEC)的标准。

FEC是一种通过恒定纠错数据流实现矫正链路中信号错误的方式,过程是信号在被送入传输信道之前预先按一定的算法进行编码处理,加入带有信号本身特征的冗码,在接收端按照相应算法对接收到的信号进行解码,从而找出在传输过程中产生的错误码并将其纠正。

事实上FEC在我们日常生活中也并陌生,它已经普遍被使用在数据完整性至关重要且没有时间重新传输的场景中,比如带DSC的DisplayPort 1.4接口就使用了FEC。

与此同时FEC还将与循环冗余校验(Cyclic Redundancy Check,简称CRC)完成配对,实现误码最后一层匹配,确保FEC在未能通过的情况下,通过CRC将触发数据包重新传输,当然,也会损耗一定时间。

即便如此,PAM4还是值得的,在不增加频率的前提下获得数据量翻番,并且信号损失要求也并没有因此提升。PCIe 6.0与PCIe 5.0一样只有36dB损耗,这意味着PCIe 5.0的走线长度经验可以完全复制到PCIe 6.0中,已经掌握了PCIe 5.0线路开发经验的供应商和工程师们,在未来几年终于可以喘口气了。

除了PAM4和FEC,PCIe 6.0另外一项主要技术补充是流量控制单元(FLow control unIT,即FLIT)编码方式,在这个编码方式中,内核执行将被拆分成多个处理线程,以并行计算的方式同时发生,从而确保更短的执行时间,是高性能互联网络中比较常见的并行计算机体系结构。

FLIT与PAM4所不同的是,它不属于物理层而是属于逻辑层,FLIT编码将数据分解为固定大小的数据包,通过将逻辑层移动到固定大小数据包,确保PCIe 6.0能够兼容更多以固定数据包为基础的纠错方式。

同样,FLIT也不是新技术,本质上与PAM4一样都是从高速网络中获得的参考,根据PCI-SIG阐述,这是规范中一项非常重要的技术,是否启用将决定具备FEC的PCIe延迟表现。换而言之,PCI-SIG认为PCIe 6.0编码属于1b/1b编码形式。

对于用户而言,FLIT编码是不可见的,但某种意义上,对于降低链路速率后的的表现也非常有用。比如当链路启用FLIT,FLIT将会持续保持开启,即使PCIe 6.0根据节能要求将速率从64 GT/s(PCIe 6.0)下降到2.5 GT/s(PCIe 1.x),那么FLIT编码也并不会因此解除,从而在规范上获得了简化,并允许所有链路降低延迟和开销。

PCIe 6.0同样被确认向后兼容早期规范,新老硬件之间仍旧可以相互使用,目前的连接形式仍然会持续,在表面上属于平稳过度。

写在最后

唯独可惜的是,PCI-SIG没有给消费系统提供太多的指导意见,毕竟规范小组目的是优先设计出来服务高性能服务器,具体的硬件实践需要硬件供应商上来完成。NRZ到PAM4的过度是否在走线信号损失有所衰减,没有经过检测是没有结论的。因此PCIe 5.0到PCIe 6.0的线路转换,还需要一些时间来完成。

最后总结一下,随着PCIe 6.0规范的最终完成,基于PCIe 6.0的硬件规范产品将会提升议程,也许在明年第一季度,我们就会先看到对应的服务器产品,并且在1到2年后看到消费级产品。接下来,就要看AMD和Intel如何在PCIe 6.0上做出什么样的回馈和设计了,毕竟在消费端,成本限制将变得尤为敏感。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多