经常接触台式机的同学肯定绕不开PCI-E这个名词,因为这是台式机里最重要的接口/通道之一,就算是笔记本,也有很多地方会提到,就好比你加固态硬盘的时候,查阅资料的时候你应该会发现有的M.2接口走的就是PCI-E X4通道,很多的雷电3接口也会提到这个是半速的,还是满血满速的,雷电3接口走的也是PCI-E通道。所以这个通道在电脑DIY里非常重要,如果你想学电脑硬件,这个通道是必须要认识的,但是很多人并不懂这个通道是个什么东西,到底是干什么的,这个文章我们来详细解读一下。
正文部分:【总线的概念】在电脑里,不同的设备要想交互数据,就必须要经过一定的通道,就好像现实当中,两个城市要交换货物,就必须要修路,这里的路就和计算机里的总线概念一样,总线就是计算机里,用于走数据的“路”,CPU核心和cache缓存交互数据的时候,使用的就是内部总线,这个总线只在CPU内交互数据,但是CPU不可能就自己在那空算数吧,他总要和其他设备交互数据,就需要用到外部总线了,CPU会通过外部总线和其他的设备比如硬盘,网卡,声卡,USB设备沟通,我们这个文章想要介绍的PCI-E就是外部总线的一种。
早些年那时候电脑还没有标准化,各种配件的接口和协议都不统一,声卡用着声卡的接口,网卡用着网卡的接口,显卡用着显卡的接口,大家都不统一,不同品牌不同厂商的接口又都不一样,不统一带来的问题就是不方便拓展,你用着A家的主板,那你就只能买A家接口的显卡声卡和网卡。所以为了解决这种不统一,业内当时统一了一个规格,这就是最早的ISA接口,下图中红色圈中这个黑色的长槽就是ISA了,ISA诞生于距今十分遥远的1981年,它作为IBM PC/XT电脑的系统总线首次出现,由于PC/XT在相当长一段时间内都曾经是PC领域的统治者,所以这个接口也沿用了很久
不过,ISA的弱点也是显而易见的,作为最初的数据总线,ISA的传输速率很快便成了周边设备性能提升的瓶颈,它还有CPU占用率高以及占用硬件中断资源等其他问题,所以渐渐的也就无法再满足高速发展的外围设备的需求了,因此业界开始了对ISA总线的放弃以及对替代品的寻找。这位继任者,便是几乎陪伴了一代人的PCI,下图中白色的长槽就是了。(此段位引用)
PCI相对于ISA不仅提高了带宽速度,还做到了即插即用,所谓即插即用,是指当板卡插入系统时,系统会自动对板卡所需资源进行分配,如其地址、中断号等,并自动寻找相应的驱动程序。而不象旧的ISA板卡,需要进行复杂的手动配置,大幅简化的操作使得这个接口迅速普及而且统治了很长一段时间的个人电脑。(此段位引用)
但是随着时间的推移,PCI接口的弊端也逐渐暴露出来,带宽也逐渐跟不上需求了,所以业内又开始寻找新的接口替代,这就是我们当代见得最多的PCI-E
PCI-E的全名叫PCI Express,简称PCI-E,官方简称PCIe,它是计算机内部的一种高速总线。
【PCI-E有什么用】由于ISA和PCI年代太过久远了,我们就不多介绍了,大家有兴趣的可以去维基百科或者百度百科找找相关资料和信息,我们着重介绍一下PCI-E。
PCI-E既是通道,也是接口,当它以接口形式存在的时候,就是我们主板上那长长的槽。
目前的声卡和网卡都是主板集成了,不需要我们额外再插,所以PCI-E接口目前最大的作用就是插显卡,除了显卡还有无线网卡,万兆有线网卡这些高带宽设备,除了这些PCI-E接口也可以转接成很多接口,比如USB3.0,Type-c,雷电3,又或者U.2,M.2。
PCIe所能承受的带宽一般以版本和长度来区分,目前的PCIe版本是3.0,X1长度所能承受的带宽大约是986MB/S,我们可以理解为就是1GB/S,X2长度就是2GB/S,X4长度就是4GB/S,那X16长度就是16GB/S
而我们台式机主板上看到的最长的那个槽,就是X16的槽,所能承载的带宽就是16GB/S,而在长槽之间我们还能看见很短的槽,那就是PCIe X1,能承受1GB/S的带宽。
几乎任何长度的PCIE设备只需要X1就可以运行,你可以把X16的显卡插在X1槽中(尾部非闭合),你也可以把X1的设备插在X16槽中,这都是可以运行的,只是可能会带宽不足或者浪费带宽了
很多人看到这里就要说了,PCI-E这个接口好像就台式机有啊,和笔记本好像没有什么关系吧,为什么你文章开头说笔记本也要研究PCI-E呢,上面我们介绍的是PCI-E以接口形式存在,而这里就要介绍另一个情况,当PCI-E以通道形式存在了
【PCI-E以通道形式存在】传统的SATA3接口固态硬盘采用的是AHCI协议,比如金士顿A400,三星860EVO,intel545S使用的都是SATA3接口,这种接口速率上限的理论值是750MB/S,但是实际上就只有600MB/S左右,所以这种固态硬盘速度大家可以看到都不超过600MB/S,这就是被SATA3这个接口的带宽限制了。
而为了摆脱限制,我们只能考虑换接口,PCI-E速率不是很快么,我们就用PCI-E好了,但是PCI-E体积太大怎么办,那么我们就缩小体积换个样子,这就是M.2接口,M.2接口你可以理解为他就是PCI-E接口,只是换了个形状而已。
所以这个时候,接口就是M.2,PCI-E在这里的作用就是扮演传输数据的通道了,而不是直接以接口存在。除了M.2包括雷电3这样的接口,都是利用PCI-E通道传输速率的,所以这就有了满血M.2/雷电3,还有残血M.2/雷电3这个说法了,满血的就是X4带宽,残血的就是X2带宽。比如小米笔记本PRO 15.6这款笔记本,第一个M.2就是X4的带宽,而第二个只有X2的带宽,所以你给米PRO装固态,第二个固态是怎么也不可能跑到2GB/S以上的顺序速度的。
那这里很多朋友就会发现了,我们目前使用的i3 i5 i7的民用平台,都只有X16条PCI-E,所以要么是1X16,或者2X8或者1X8 2X4,但是我的主板上有两个M.2接口,像技嘉和华擎上面甚至有3个M.2,而大家都知道一张显卡就需要用掉X16的槽,那这是否意味着我要是插满这些M.2之后,我的显卡就会自动降低到X8甚至是X4呢?
所以这里又要引出一个话题,那就是直连PCI-E和绕道PCI-E和南桥芯片组
【直连PCI-E和绕道PCI-E与南桥芯片组】电脑里有很多的设备要和CPU通讯,比如内存,显卡,键盘鼠标,声卡网卡,如果这些设备全接到CPU上,对于CPU的设计难度,还有台式机的模块化难度是非常高的,光主板布线的难度相对于现在都是指数的提升,如果有兴趣研究PCB的,大家可以看一下CPU底座到内存那块,走了多少密密麻麻的线
图文无关
所以我们不可能让所有的设备都去找CPU通讯,那我们就给CPU安排一个下手,显卡和内存由于对于延迟和带宽要求很高,还是由CPU来直接通讯,但是键盘鼠标,声卡网卡这些,就让这个下属去管,然后这个下属再给CPU汇报数据。这个用来交互数据的下属,就是主板南桥芯片组,芯片组除了提供相应的主板特性外,最重要的就是作为外部设备的交互中转站。
芯片组的作用很像我们用的分线器,就是把一个接口分成很多小接口,其实它就是电脑主板的内部分线器,他将CPU发送给他的总线分给下属设备。
但是很多人就想到了,目前家用CPU的PCI-E只有16条,那那些M.2是谁提供的PCI-E通道呢?我装了下图是我从intel官网找到的Z390总线结构图
在左上角我们可以看到,直连CPU的PCI-E只有16条,要么是1X16,要么是2X8,要么是1X8 2X4,但是在芯片组左边我们可以看到Up to 24X PCI-E 3.0这个字样,也就是说,Z390芯片组下是可以挂载最大24条走南桥的PCI-E。
所以这就可以解释为什么目前主板上有2个甚至3个M.2的情况下,你的显卡依旧是PCI-E X16,就是因为这些PCI-E并不是intel说的那16条直连PCI-E,而是走南桥绕道的PCI-E。
所以这就可以解释另外一个问题,为什么M.2,雷电3,还有U.2的带宽上限目前最高都是PCI-E X4呢?因为CPU和芯片组之间通过DMI3.0总线连接,这个总线速度只有PCIEX4的水平也就是4GB/S,所以雷电3,M.2,U.2目前都无法突破X4带宽,就是被这个DMI牙签总线限制了。
但是木头龙的例子就非常好,一个能停100辆车的停车场不用把出入口修成100个车道宽,因为他们不太可能一块进出,所以只需要留出入两个车道就可以,挂在在南桥下面的设备不太可能大家一块输出数据,所以纵使目前DMI3.0只能提供X4的带宽,也足以满足我们的需求了。
全文完,感谢您的耐心观看!!!如果您觉得我的文章写得不错就点一波关注吧,您的关注是对我最大的支持!!!在关注专栏的同时不要忘记关注我本人哦,非常感谢您的支持!!!