PCIE
1. South bridge
在解释 PCIE 之前,有必要先来解释一下 South bridge,cpu,主板之间的一些概念。
大家都知道,计算机中所有的数据都需要交给 CPU 处理才能发挥作用(不完全对),但那么多的设备,难道都需要和 CPU 交互吗?
当然不行,那样不仅极大地加重了 CPU 的负担(无论是制造还是运行),对于主板的布线也是一大考验,那有什么解决方案呢?
其实,这里可以分级的思想:对于内存,显卡这些需要高速交互的设备,让 CPU 和它们之间使用高速线路直接连通,对于 USB 接口,外接硬盘,键盘,声卡,网卡这些设备来说,要求就没有那么高了,可以统一交给一个下属去管理,然后统一上报给 CPU 就好了,这个下属就是 Sourth Bridge 南桥芯片组。
简要来说,南桥芯片组的任务就是,作为一个中间人,和外围低速设备以及 CPU 之间通信
1 |
|
2. PCIE
现在你对于南桥芯片,以及设备有一个基本的概念了,外围设备,CPU,芯片之间都需要传输数据,这就引入了总线,大家自然希望总线传输速度快,传输的数据多,可以将其类比成道路,我们自然是希望道路越宽越好,道路上的车辆速度越快越好(当然在遵守规则前提下)。
“速度”和“传输的数据”有两个更加专业的表达,分别是 延迟 和 带宽
目前的总线普遍采用 PCIE 这种高速总线,其实,它的发展过程也非常有意思。
2.1 PCIE 如何登上历史舞台的
上世纪 PC 刚进入大众视野的时候,那时候的设备使用的接口是千奇百怪啊,声卡,网卡,显卡 接口都不一样,而这些设备都要接在主板上,就导致,你选购的主板上的接口,直接决定了你能使用什么设备
为了解决这个问题,IBM 和 Intel 推出了 ISA 接口这个标准,不过已经非常久远了,在上世纪 80 年代,大规模推广开来。ISA 接口规范虽然做到了统一,但是其内部采用了并行传输,加上当时的抗干扰技术还不强,传输速率自然就很低。并且,插上一个设备之后,无法自动配置,需要手动配置资源,其支持的外围设备仅有 6 个。
不过技术总是在进步,ISA 总线逐步被更先进的总线技术替换,最终统一天下的是 PCI 总线了。PCI 总线不仅将带宽从原先的 8 MB/s 提高到了 256 MB/s,还做到了即插即用,大大省去了人们的烦恼。但是 PCI 总线仍然采用并行传输的方式,高负载下,多个设备会同时抢占总线带宽,也会对彼此传输的数据产生干扰,仍然不是最完美的方案。
再往后发展,就由今天的主角 PCIE 接管历史舞台了。
2.2 PCIE 的一些概念
2.2.1 PCIE 形态
PCIE 总线用来连接设备和芯片,并且会提供一些插槽,比如显卡就是插在 PCIE 插槽上的。除了以这种接口的形态存在,还会以通道的形态存在,这怎么理解呢?
以硬盘使用的 M.2 接口为例,其内部传输其实还是用的 PCIE,只不过,对外暴露的是 M.2 这种专用的接口而已,PCIE 就相当于一个连接 M.2 接口和芯片之间的通道,第二种存在形态:通道 也就因此得名。
再比如说雷电3接口,内部也是用 PCIE 进行的传输,PCIE 也仅仅是桥接了一下而已。
2.2.2 PCIE 带宽
PCIE 的带宽按照针脚的数量进行计算,最少的是 X1
,再之后依次为 X2
X4
X8
X16
,带宽依次翻倍。显卡就是插在 X16
这个带宽最大的插槽上的,当然,插在 X8
X4
这些插槽上也没有问题,只不过带宽会相应降低。
其实随着 PCIE 不断完善,不断推出了更高带宽的 PCIE 标准,从最一开始的 PCIE 1.0,X1
的带宽只有 250 MB/s,每升级一次,带宽都要翻倍,到目前的 PCIE 6.0,X1
的带宽已经有 8 GB/s,X16
的带宽更是有 8*16 GB/s,相当恐怖了。
2.2.3 PCIE 在主板上分布
由于主板上的空间是有限的,加上 CPU 对于 PCIE 的支持也是有限的,因此那些直连 CPU 的有限数量的 PCIE 就显得非常宝贵了,一般都用作显卡插槽了。
虽然南桥芯片组上也一般会接一些非直连 PCIE 总线,但是,由于带宽的限制,肯定是无法达到该 PCIE 带宽的理论值上限的。常见的情况有,将固态硬盘插在了第二块 M.2 插槽上,由于该插槽不是直连 CPU 的,速率比理论值直接腰斩都是有可能的。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!