PCIE 的 GT/s 与 Gbps 的关系
GT/s 和 Gbps的区别 解释一
GT/s数据传输表示通过数字接口传递的总的数据量(含有效数据和冗余数据),也称为吞吐量。Gbps表示数据传输中的实际有效数据的传输速率。
当用较多的数据位对原始数据进行编码时,有效数据传输量低于实际传输的数据位数。例如:PCIe串行总线采用10位数据对8位数据进行编码(附加位可能用于时钟编码、误码检测等冗余位)
数据速率通常用每秒传输的数据位,具体指的是编码后的串行比特率,每秒吉比特(GT/s)和每秒兆比特(MT/s)。例如,2.5 GT/s指的是2.5 Gbit/s串行数据速率。
吞吐量表示未编码的带宽(没有8b/10b、128b/130b或242B/256B编码的开销)。PCIe 1.0每通道2.5 GT/s的传输速率意味着2.5 Gbit/s的串行比特率。在8b/10b编码之前,对应的吞吐量为2.5Gbit/s x 8/10 = 2.0 Gbit/s
以每条PCIe 1.0 lane 为例,PCIe是全双工的总线,一个lane由两对差分信号线,即4根信号线组成。
双向总线在每个方向上可以每秒传输 2.5 Gbit,全双工即5 Gbit, 也即全双工每秒传输 5GT/s。
GT/s与Gbps的区别 解释二
我们大多数人都习惯于采用Gbps或每秒千兆比特为单位的总线速度表示,但GT/s代表每秒千兆传输。这两者有什么区别呢?
区别与数据的编码有关。因为PCIe是一条串行总线,数据中嵌入了时钟,它需要确保发生足够的电平转换(1到0和0到1),以便接收端恢复时钟。为了增加电平转换,PCIe使用了 “8b/10b “编码,即每8个bit(1个字节)被编码成一个10 bit 的符号进行传输,然后在接收端进行解码。因此,总线需要传输10 bit的编码数据来表示所发送的8 bit的数据。而到了PCIE 3.0 标准,编码方案为128b/130b编码,也即每128 bit的数据编码为130 bit的符号进行传输。
( PCI-E 每 lane是全双工传输,这里给出的速率是单个方向的速率)
为简洁起见,我们一般谈论的PCIE带宽,采用GT/s为单位表示,也即PCIE总线上实际编码后发送的数据速率
由于总线每传送的8bit未编码数据需要转换为10 bit的编码数据来传送,其有效带宽为
GT(Gigatransfer) x Lane的数量 x 编码方案效率
用上边 PCIe 1.0 单条 lane 单个方向的速率为例,代入数据:
2.5 GT x 1 lane x (8/10 的编码方案效率) = 2Gbps ÷ 8 = 250MB/s。
而一条16通道的PCIe 1.0 总线,每秒传输 40 GT/s,有效带宽 32 Gbps
到了 PCIE 3.0, 编码方案为 128b/130b,效率得到的很大的提高。
本文整理自网络,如有侵权,请联系删除!参考:https://www.cnblogs.com/xyjk1002-rejuvenation/p/16640789.html和转自———吴川斌的博客
editor's pick
latest video
news via inbox
Nulla turp dis cursus. Integer liberos euismod pretium faucibua