PCIe数据峰值带宽和有效带宽计算

最近对于PCIe的带宽概念和计算有些模糊,网上查资料大部分都是一个模子出来的,通过下面这个公式计算:

并行总线带宽(MB/s) = 并行总线时钟频率(MHz) * 并行总线位宽(bit/8 = B) * 每时钟传输几组数据(cycle)

特别是后面计算起来不是很容易懂,后来查资料请教后,得出如下理解【个人拙见,欢迎留言质疑】:


首先需要理清一些概念

1、对于PCIe 而言总线频率如 1.25GHz、2.5GHz,一般是在 100 MHz 的基准频率上,通过PLL达到的

2、峰值带宽 = 总线频率x数据位宽x2 (GT/s) 

3、有效带宽 = 峰值带宽*编码方式         (8/10) 或 (128/130)

4、GT/s:在物理信道上每秒传多少比特也就是Gbps,MBps = Gbps/(8x1000)


对于单向通道而言:

gen1x1:
峰值带宽 = 1.25G x 1 x 2 = 2.5 GT/s = 2.5 Gbps
有效带宽 = 2.5 x (8/10) = 2 Gbps = 250MB/s


gen2x1:
峰值带宽 = 2.5G x 1 x 2 = 5 GT/s = 5 Gbps
有效带宽 = 5 x (8/10) = 4 Gbps = 500MB/s


gen2x8:
峰值带宽 = 2.5G x 8 x 2 = 40 (GT/s) = 40 Gbps
有效带宽 = 40 (GT/s) x (8/10) = 32 Gbps = 4000MB/s


gen3x1

峰值带宽 = 4G x 1 x 2 = 8(GT/s) = 8 Gbps

有效带宽 =  8 Gbps x (128/130)  = 7.9 Gbps  = 984.6 MB/s


你可能感兴趣的:(PCIe,带宽)