1、获取设备在pcie总线上的ID:lspci

 00:00.0 Class 0600: Device 8086:190f (rev 07)00:01.0 Class 0604: Device 8086:1901 (rev 07)00:01.1 Class 0604: Device 8086:1905 (rev 07)00:02.0 Class 0300: Device 8086:1902 (rev 06)00:1f.4 Class 0c05: Device 8086:a123 (rev 31)01:00.0 Class 0104: Device 1b4b:9485 (rev c3)02:00.0 Class 1200: Device cabc:0330

(1)输入lspci命令后,会得到以上信息,以最后一行为例进行解析:02:00.0是设备ID,该设备是的ID是2;Device cabc:0330表示该设备的名字是cabc:0330;

2、查看pcie的版本:lspci -vv

LnkSta:  Speed 8GT/s, Width x1, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-

输入"lspci -vv"命令后,会得到pcie总线上各个设备的完整信息,,根据上一步得到的设备pcie总线上的ID,找到对应设备信息,其中查看LnkSta关键字后面的信息:Speed 8GT/s, Width x1,表示速率是8GT/s,吞吐量是x1,至于具体的含义后面介绍。

3、不同pcie协议版本的速率

4、PCIE相关概念:

传输速率为每秒传输量GT/s,而不是每秒位数Gbps,因为传输量包括不提供额外吞吐量的开销位; 比如 PCIe 1.x和PCIe 2.x使用8b / 10b编码方案,导致占用了20% (= 2/10)的原始信道带宽。
GT/s —— Giga transation per second (千兆传输/秒),即每一秒内传输的次数。重点在于描述物理层通信协议的速率属性,可以不和链路宽度等关联。
Gbps —— Giga Bits Per Second (千兆位/秒)。GT/s 与Gbps 之间不存在成比例的换算关系。

5、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.csdn.net/weixin_42229404/article/details/84069859

查看pcie总线上的设备ID以及带宽计算相关推荐

  1. IIC(I2C)总线上的设备其地址如何定义?通俗易懂

    IIC(I2C)总线上的设备其地址如何定义? IIC总线 一般串行数据通讯都有时钟和数据之分,有异步和同步之别. 有单线,双线和三线等. I2C肯定是2线的(不算地线). I2C协议确实很科学,比3/ ...

  2. 计算机组成原理 — PCIe 总线

    目录 文章目录 目录 PCI 与 PCIe 设备 PCI 与 PCI-E 总线 PCIe 设备的枚举过程 PCIe 设备的信息查询 PCIe 设备的 Memory 空间访问 参考文章 PCI 与 PC ...

  3. PCI相关(4)- PCIe总线事务-TLP格式及路由

    事务层是 PCIe 总线层次结构的最高层,该层次将接收 PCIe 设备核心层的数据请求,并将其转换为 PCIe 总线事务,PCIe 总线使用的这些总线事务在 TLP 头中定义.PCIe 总线继承了 P ...

  4. PCIE总线硬件设计篇

    PCIe总线概述 随着现代处理器技术的发展,在互连领域中,使用高速差分总线替代并行总线是大势所趋.与单端并行信号相比,高速差分信号可以使用更高的时钟频率,从而使用更少的信号线,完成之前需要许多单端并行 ...

  5. Linux内核总线系统 —— 通用总线和平台设备

    在 Linux内核输入子系统框架_Bin Watson的博客-CSDN博客 这篇文章中,我们详细分析了输入子系统.了解到了 dev 和 handler 分层的思想.而在 jz2440_输入子系统驱动程 ...

  6. 使用 usbmon 抓取 usb 总线上的数据

    使用 usbmon 抓取 usb 总线上的数据 usbmon 即 usb monitor,是 linux 内置的 usb 抓包工具.usbmon 本质是一个内核模块,在我的 ubuntu14.0 4中 ...

  7. pcie总线连接两台电脑_基于PCIE总线多主互连系统的设计与实现

    女 , 山东人 , 工程师 , 研究方向为计算机应用 : 孙大东 (1980 ) , 男 , 吉林辽源人 , 硕 士 , 高级工程师 , 研究方向为嵌入式系统网络 : 张明庆 (1980 ) , 男 ...

  8. 一文搞懂移动设备ID的那些事儿

    在移动数字广告领域,设备ID是用来追踪用户行为的最重要的标识. 对于开发者而言,设备ID的稳定性(尤其对于开放的安卓系统来说)以及统计分析和业务应用(变现和追踪等)扮演了非常关键的角色. 作为一个肤浅 ...

  9. linux下看pcie的设备id,linux lspci查看pci总线设备信息

    linux lspci查看pci总线设备信息 linux中lspci是一个用来显示系统中所有PCI总线设备或连接到该总线上的所有设备的工具,比如查看网卡.存储等信息. 参数 -v 使得 lspci 以 ...

最新文章

  1. Docker容器化部署config-server无法直接访问
  2. 今天遇到一个很奇怪的问题,XP系统屏幕全部旋转90度
  3. WDS系列--Windows Deployment Services概述篇
  4. java中整数如何表示,在Java中如何在位级别上内部表示整数?
  5. ES6规范 ESLint
  6. 软件就像大教堂:我们建造它们——然后祈祷
  7. 11个恶意python包被指窃取 Discord 令牌、安装shell
  8. Python 下的 lambda 算子
  9. 七种场景下的软件作业量估计
  10. 图像直方图及均衡方法总结(二)自适应直方图均衡AHE,CLAHE
  11. 计算机大学毕业好考公务员,哪些大学的毕业生更容易考上公务员?
  12. [乱七八糟]分享今晚瞎逛来的网络东东
  13. 软件的生命周期与特点
  14. android 7.0 so.toc,[toc]文档导航 侧边栏目录 markdown
  15. ArcMap中创建.shp文件
  16. 路径规划五种算法简述及对比
  17. C# Windows桌面应用 ---- 实例:文件读写
  18. repost 双非本科到腾讯的编程奋斗之路
  19. Qgis教程13:照片上图 ImportPhotos
  20. Diary(三)——日记列表显示以及分页查询的实现(下)

热门文章

  1. Python模拟手机充值案例程序实现代码
  2. Python全栈开发【基础-09】深浅拷贝+while循环
  3. 悟饭服务器连接中断,英雄联盟连接服务器失败解决方法
  4. 5个超棒的自我提升App
  5. 拼多多618来了:500余家官旗齐聚“品牌专场”,发放30亿消费红包
  6. DSP CCS12.00 芯片:TMS320F28335 ADC 的运用
  7. 使用C++实现CE中的代码注入
  8. 客户成功 | 数据解码技能提升,Smartbi助力长沙烟草找到“新路子”
  9. python3通过request多进程获取驾校一点通试题库
  10. php 微信创建客服,如何给微信小程序内添加客服按钮