PC机PCI-E3.0接口速率计算
翻译文章标签PC机PCI-E3.0接口速率计算文章分类其他其它阅读数6455
一,PCI接口图
PCI-E x1
PCI-E x4 新主板已经弃用
PCI-E x8
PCI-E x16
| PCI Express版本 | 行代码| 传输速率 |吞吐量x1|吞吐量x4|吞吐量x8|吞吐量x16
|-|-|-|
|1.0| 8b/10b|2.5GT/s|250MB/s|1GB/s|2GB/s|4GB/s|
|2.0| 8b/10b|5GT/s|500MB/s|2GB/s|4GB/s|8GB/s|
|3.0| 128b/130b|8GT/s|984.6MB/s|3.938GB/s|7.877GB/s|15.754GB/s|
|4.0| 128b/130b|16GT/s|1.969GB/s|7.877GB/s|15.754GB/s|31.508GB/s
|5.0| 128b/130b|32 or 25GT/s|3.9 or 3.08GB/s|15.8 or 12.3GB/s|31.5 or 24.6GB/s|63 or 49.2GB/s
二,PCIE相关概念
1. 传输速率为每秒传输量GT/s,而不是每秒位数Gbps,因为传输量包括不提供额外吞吐量的开销位; 比如 PCIe 1.x和PCIe 2.x使用8b / 10b编码方案,导致占用了20% (= 2/10)的原始信道带宽。
2. GT/s —— Giga transation per second (千兆传输/秒),即每一秒内传输的次数。重点在于描述物理层通信协议的速率属性,可以不和链路宽度等关联。
3. Gbps —— Giga Bits Per Second (千兆位/秒)。GT/s 与Gbps 之间不存在成比例的换算关系。
三,PCIE带宽计算
PCIe 吞吐量(可用带宽)计算方法:
吞吐量 = 传输速率 * 编码方案
例如:PCI-e2.0 协议支持 5.0 GT/s,即每一条Lane 上支持每秒钟内传输 5G个Bit;但这并不意味着 PCIe 2.0协议的每一条Lane支持 5Gbps 的速率。
为什么这么说呢?因为PCIe 2.0 的物理层协议中使用的是 8b/10b 的编码方案。 即每传输8个Bit,需要发送10个Bit;这多出的2个Bit并不是对上层有意义的信息。
那么, PCIe 2.0协议的每一条Lane支持 5 * 8 / 10 = 4 Gbps = 500 MB/s 的速率。
以一个PCIe 2.0 x8的通道为例,x8的可用带宽为 4 * 8 = 32 Gbps = 4 GB/s。
同理,
PCI-e3.0 协议支持 8.0 GT/s, 即每一条Lane 上支持每秒钟内传输 8G个Bit。
而PCIe 3.0 的物理层协议中使用的是 128b/130b 的编码方案。 即每传输128个Bit,需要发送130个Bit。
那么, PCIe 3.0协议的每一条Lane支持 8 * 128 / 130 = 7.877 Gbps = 984.6 MB/s 的速率。
一个PCIe 3.0 x16的通道,x16 的可用带宽为 7.877 * 16 = 126.031 Gbps = 15.754 GB/s。
由此可计算出上表中的数据
https://blog.51cto.com/zhangchengjie/2430850
PCI Express1X(单通道) 500MB/S
PCI Express2X(单通道) 1GB/S
PCI Express4X(单通道) 2GB/S
PCI Express8X(单通道) 4GB/S
PCI Express16X(单通道) 8GB/S
USB 3.0的5Gbps(/10)速度实际上是理论500MB/s
USB 2.0的480Mbps(/8)速度实际上是理论60MB/s
SATA 6Gbps (/10)的理论速度则是600MB/s
其中的2.0和3.0,表示的是pci-e版本,不同版本的pci-e之间,相同通道数下的传输速度是不同的,比如pci-e 2.0 x16的传输速度为16gb/s,而pci-e 3.0 x16的传输速度能达到32gb/s
pci-e 3.0(不对)
速度(比特)/S |
速度(字节)/S |
|
X1 | 2Gb | 256MB |
X2 | 4Gb | 512MB |
X4 | 8Gb | 1GB |
X8 | 16Gb | 2GB |
X16 | 32Gb | 4GB |
如果是PCI-E 1.0a或者PCI-E 1.1,都是250MB/S,如果是PCI-E 2.0,那就是500MB/S