编码机

一文读懂PCIe的进化史

发布时间:2023/4/11 15:08:58   
白癜风怎么医 http://m.39.net/baidianfeng/a_4293352.html

PCIe发展至今已经从最初的1.0升级到了6.0,但很多人对于PCIe只知其然而不知其所以然,小编今天就带大家一起来看一看。要想了解什么是PCIe,首先我们要来聊聊什么是总线。如果把主板看作一座城市,那么总线就像是城市里的公共汽车,能按照固定行车路线,传输来回不停运作的比特。

在很久以前,我们的电脑并不像如今这样有统一的接口与总线规范。那时想要给主板做拓展有很大的局限性,因为主板上的接口基本只能对应一个硬件设备,各大厂商之间的规范也各不相同,就是在这样的大环境下,ISA(IndustryStandardArchitecture)诞生了。ISA总线是IBM公司为PC/AT电脑而制定的总线标准。由于兼容性好,ISA在上个世纪80年代是最广泛采用的系统总线,不过它的弱点也是显而易见的,比如传输速率过低、CPU占用率高、占用硬件中断资源等。ISA总线的淘汰也成了必然。年6月,英特尔发明了名为外部链接标准也就是PeripheralComponentInterconnect的接口规范,缩写为PCI。PCI接口的特性在于采用的是并行传输方式,根据连接的数据宽度和频率不同,能够达到不同的数据传输速度。

相较上一代ISA,PCI有着明显的速度提升,同时还能够自动配置资源,支持即插即用,很快就在各大厂商之间的混战中占领市场。不过PCI的带宽有限,对日益强悍的GPU等高性能单元来说逐渐成为了瓶颈。因此,基于PCI的技术又发展出了AGP等专用于图形卡的总线接口标准。AGP依旧是并行传输数据。随着系统性能进一步提升,对带宽要求越来越大。PCI和AGP这样的并行传输技术,无法在当时的技术条件下带来性能的进一步提升。终于在年,非营利组织PCI-SIG召集了英特尔、AMD、博通、IBM、微软等厂商提出了PCIe(PeripheralComponentInterconnectExpress)新总线标准。

PCIe属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理、错误报告、端对端的可靠性传输、热插拔以及服务质量(QOS)等功能。PCIe的主要优势就是数据传输速率高,而且还有相当大的发展潜力。PCIe也有多种规格,x1、x4、x8、x16、x32,x后面的数字代表PCIe插槽有多少条通道(数据如何进出PCIe卡)。一个PCIex1插槽有一个通道,可以每个周期传输一位数据。一个PCIex2插槽有两个通道,每个周期可以传输两位数据(依此类推)。

大多数台式电脑主板都有许多PCIe插槽,可用于添加通用显卡、各种外设卡、无线网卡或固态硬盘等等。PC中可用的PCIe插槽类型将取决于你购买的主板。在使用中你可以将PCIex1卡插入PCIex4或者x16的插槽中,但该卡将始终在PCIex1模式下运行。同样的,你也可以将PCIex8卡插入PCIex4插槽,但它只能使用一半的带宽。下图展示了PCIe规范随时间的演变:

年-年:PCIe1.0-PCIe3.0PCIe技术始于年,PCIe1.0数据速率为2.5GT/s,PCIe2.0规范在年将数据速率翻了一番,达到5.0GT/s。前两代PCIe技术使用8b/10b编码,产生了25%的编码开销。

年,PCIe3.0将数据速率提高到了8.0GT/s,并采用了新的b/b编码机制,使每个引脚的带宽比PCIe2.0翻了一番。新的编码机制通过采用三个随机位翻转检测的故障模型确保了高可靠性,并具有多种创新方法来执行数据包的物理层帧,同时保留从上层发送的数据包格式。PCIe3.0规范还加入了一些增强信号指令,以及对数据完整性的优化,包括发送器和接收器以及拓扑结构等,再加上重新优化的PLL、数据通道等。此外,PCIe3.0标准的更新版本PCIe3.1在年11月发布,加入了包括电源管理、性能优化和功能拓展等多项改变,当然本质的数据传输能力没有变化。年10月:16.0GT/s的PCIe4.0依照PCIe1.0到PCIe3.0的更新节奏来看,相对于年发布的PCIe3.0,PCIe4.0规范应该要在或年发布,但实际上,PCI-SIG直到年中才发布PCIe4.0,较预期晚2、3年,这连带也推迟了应用的时间。PCIe4.0花费了7年时间将数据速率从8.0GT/s翻倍到16.0GT/s(每条通道大约2GB/s,或总共64GB/s)。PCIe4.0保留了相同的b/b编码方案,PCIe标准通过软件和机械接口保持与旧规范和新规范的向后和向前兼容性。也就是说,PCIe3.0卡可以在支持PCIe4.0的主板上工作,PCIe4.0卡也可以在PCIe3.0主板上工作,但受限于PCIe3.0接口的性能。

不过,作为处理器平台龙头厂商的Intel未能及时支持PCIe4.0。当PCIe4.0于年底发布后,在年前后进入推广期,除了获得一些网卡与SSD产品的支持之外,在主机与服务器平台方面,也有IBM的Power9,以及AMD的Zen2架构处理器平台支持,而后者也让PCIe4.0进入了x86平台应用领域。然而Intel的迟迟不支持导致PCIe4.0一直无法真正进入主流应用阶段。这个僵局直到年后才打破,但Intel平台真正对PCIe4.0的支持要等到年中才落实,至此,PCIe4.0也才算是开始进入主流应用阶段。年5月:32.0GT/s的PCIe5.0过去几年,计算领域发生了重大变化,云计算、边缘计算以及人工智能、机器学习和分析等应用引发了对更快的数据处理和移动的需求。随着计算和内存容量呈指数级增长,我们需要以更快的节奏维持I/O带宽翻倍,以跟上新兴应用程序的性能。例如,Gb(或双Gb)网络需要32.0GT/s的x16PCIe来维持带宽。这就要求在PCIe4.0架构之后不到两年的时间里发布一个完全向后兼容的PCIe5.0——这对于一个标准来说是一个重大的成就。

从PCIe4.0到PCIe5.0规范的演变主要是速度升级。b/b编码是将带宽扩展到更高数据速率的协议支持,在PCIe3.0和PCIe4.0规范中已经内置了这种编码。通道损耗扩展到36dB,同时对连接器进行了改进,以最大限度地减少频率范围增加所带来的损耗。PCIe5.0架构的增强功能之一是对备用协议的内置支持。随着PCIe技术发展成为带宽最高、能效最高和部署最广泛的接口,某些用途需要额外的协议,例如,某些加速器和智能网卡可以缓存系统内存并将其内存映射到系统内存空间,以便在PCIe协议之外进行高效的数据交换。同样,系统内存正在迁移到PCIePHY,因为它提供了高能效的高带宽和低延迟解决方案。PCI-SIG预计PCIe4.0和PCIe5.0将在一段时间内共存,PCIe5.0用于对吞吐量要求高的高性能需求,例如用于AI工作负载和网络应用程序的GPU。因此,PCIe5.0将主要用于数据中心、网络和高性能计算(HPC)企业环境,而不那么密集的应用(如台式机应用)将适用于PCIe4.0。年1月:PCIe6.0发布,速度为64GT/s年1月11日,PCI-SIG正式发布了PCIe6.0最终版本1.0,从技术上来说,PCIe6.0是PCIe问世近20年来,变化最大的一次。

PCIe6.0规范目标要求根据PCI-SIG的介绍,PCIe6.0主要有三大变化:数据传输速率从32GT/s翻倍至64GT/s;编码方式从NRZ信令模式转向PAM4信令模式;从传输可变大小TLP到固定大小FLIT。

PAM4信号

PCIe6.0规范引入了PAM4编码方式,才让PCIe6.0的数据传输速率再次翻倍。在PCIe6.0之前,各代PCIe采用的都是NRZ信令,即不归零编码,它采用0或1两个电压等级,每一个时脉周期只能传输1bit的信号。PAM4使用4个信号电平,而不是传统的0/1两个电平,单个信号就能有四种编码(00/01/10/11)状态。这使得PAM4可以携带两倍于NRZ信令的数据。但它的代价是比特误码率(BER)更高。

尽管PCIe架构具有链路级重试(LLR)机制来重放受错误影响的事务,但由于重试而导致的带宽损失使其在PAM4错误率下无法运行。因此,PCIe6.0规范结合使用轻量级前向纠错(FEC)和LLR机制来满足低延迟和低带宽开销的性能指标。此外,循环冗余校验(CRC)方案提供了一个非常强大的错误检测机制,可以抵消相关性的高错误率。

FLIT模式

PCIe6.0引入了FLIT模式,其中数据包以固定大小的流量控制单元组织,而不是过去几代PCIe中的可变大小。引入FLIT模式的最初原因是纠错需要使用固定大小的数据包;但是,FLIT模式还简化了控制器级别的数据管理,从而提高了带宽效率、降低了延迟并缩小了控制器占用空间。对于固定大小的数据包,不再需要在物理层对数据包进行成帧,这为每个数据包节省了4字节。FLIT编码还消除了以前PCIe规范中的B/B编码和DLLP(数据链路层数据包)开销,从而显著提高了TLP效率,尤其是对于较小的数据包。

最后在实际应用方面,刚刚发布不久的PCIe6.0目前自然还尚无具体进展,现在主流的应用还在PCIe3.0和PCIe4.0,不过PCIe5.0已经进入初步的推广期,自年底开始,便开始有厂商推出支持PCIe5.0的高速网卡与SSD产品,并且一些新的GPU、CPU开始采用PCIe5.0了。这也让当前的PCIe应用环境形成了3.0、4.0、5.0、6.0“四代同堂”的奇特现象,并且仍将持续一段时间。整体而言,新一代PCIe5.0与PCIe6.0已经崛起,并陆续投入应用,PCIe6.0带来的新特性,包括64GT/s的数据速率、PAM4编码方式、具有吞吐量和延迟优势的FLIT等等,必然会更好地推动行业发展。参考:

转载请注明:http://www.aideyishus.com/lktp/4054.html

------分隔线----------------------------