1x pcie 速度_PCIe传输速率计算方法

PCIe是全双工的总线,一个lane由两对差分信号线,即4根信号线。Lane的数量称为位宽,在一个PCIe cycle,N个lane可同时接收和发送各N个比特信息。

不同版本的PCIe总线,其工作时钟频率不同,但一般都是在100MHz的基准频率上通过PLL达到的高频率。

PCe的带宽有几种衡量指标:

原始传输速率(Raw Transfer Rate):即每一秒内传输的次数,单位是GT/s —— Giga Transmissionper second (千兆传输/秒),其数值等于PCIe总线的时钟频率,与lane数量无关。

有效带宽(吞吐量):有效带宽和原始传输速率、Lane的数量、编码方案效率有关,只算单方向上的,单位是MB/s、GB/s。(1GB/s = 1Gbps/8)。编码方案效率:对于8b/10b编码,其值为0.8=(8/10),对于128b/130b编码,其值为0.985=(128/130)。

吞吐量 = 原始传输速率 x Lane的数量 x 编码方案效率 ÷ 8

比如对于PCIe 3.0,总线频率为8GHz,编码方案为128b/130b,所以×16设备的吞吐量为:8 * 16 * 0.985 / 8 = 15.76 GB/s ≈ 16GB/s,

实际带宽:吞吐量仅仅考虑了信号编码折损,但是总线上还得传输TLP头部、链路管理包,这些都是Overhead,实际带宽需要考虑这些损耗。

PCIe总线各版本的吞吐量数据如下:

7dac0b758503ab9aaa60308fcdb6fc47.png

我们一般所说的PCIe总线带宽指的吞吐量。需要注意的是,少数文章中提到的吞吐量是指双向吞吐量,即传输和发送速率的总和,这种计算方式下PCIe 3.0的吞吐量则由16GB/s变为32GB/s。不过双向吞吐量这种计算方式并不合理,过于乐观,所以很少使用,比如对于PCIe数据接收,CPU需要先向PCIe设备发送读取请求,然后等待并接收PCIe发送的数据,包含了两个方向的数据传递。

Post Views:

4,843

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值