总线带宽简介

在计算机系统中,总线的作用就好比是人体中的神经系统,它承担的是所有数据传输的职责,而各个子系统间都必须藉由总线才能通讯,例如,CPU和北桥间有前端总线、北桥与显卡间为AGP总线、芯片组间有南北桥总线,各类扩展设备通过PCI、PCI-X总线与系统连接;主机与外部设备的连接也是通过总线进行,如流行的USB 2.0、IEEE1394总线等等,一句话,在一部计算机系统内,所有数据交换的需求都必须通过总线来实现!

按照工作模式不同,总线可分为两种类型,一种是并行总线,它在同一时刻可以传输多位数据,好比是一条允许多辆车并排开的宽敞道路,而且它还有双向单向之分;另一种为串行总线,它在同一时刻只能传输一个数据,好比只容许一辆车行走的狭窄道路,数据必须一个接一个传输、看起来仿佛一个长长的数据串,故称为“串行”。

并行总线和串行总线的描述参数存在一定差别。对并行总线来说,描述的性能参数有以下三个:总线宽度、时钟频率、数据传输频率。其中,总线宽度就是该总线可同时传输数据的位数,好比是车道容许并排行走的车辆的数量;例如,16位总线在同一时刻传输的数据为16位,也就是2个字节;而32位总线可同时传输4个字节,64位总线可以同时传输8个字节…显然,总线的宽度越大,它在同一时刻就能够传输更多的数据。不过总线的位宽无法无限制增加。

总线的带宽指的是这条总线在单位时间内可以传输的数据总量,它等于总线位宽与工作频率的乘积。例如,对于64位、800MHz的前端总线,它的数据传输率就等于64bit×800MHz÷8(Byte)=6.4GB/s;32位、33MHz PCI总线的数据传输率就是32bit×33MHz÷8=132MB/s,等等,这项法则可以用于所有并行总线上面——看到这里,读者应该明白我们所说的总线带宽指的就是它的数据传输率。

对串行总线来说,带宽和工作频率的概念与并行总线完全相同,只是它改变了传统意义上的总线位宽的概念。在频率相同的情况下,并行总线比串行总线快得多,那么,为什么各类并行总线反而要被串行总线接替呢?原因在于并行总线虽然一次可以传输多位数据,但它存在并行传输信号间的干扰现象,频率越高、位宽越大,干扰就越严重,因此要大幅提高现有并行总线的带宽是非常困难的;而串行总线不存在这个问题,总线频率可以大幅向上提升,这样串行总线就可以凭借高频率的优势获得高带宽。

而为了弥补一次只能传送一位数据的不足,串行总线常常采用多条管线(或通道)的做法实现更高的速度——管线之间各自独立,多条管线组成一条总线系统,从表面看来它和并行总线很类似,但在内部它是以串行原理运作的。对这类总线,带宽的计算公式就等于“总线频率×管线数”,这方面的例子有PCI Express和HyperTransport,前者有×1、×2、×4、×8、×16和×32多个版本,在第一代PCI Express技术当中,单通道的单向信号频率可达2.5GHz,我们以×16举例,这里的16就代表16对双向总线,一共64条线路,每4条线路组成一个通道,二条接收,二条发送。这样可以换算出其总线的带宽为2.5GHz×16/10=4GB/s(单向)。除10是因为每字节采用10位编码。

GT/S与Gbps的定义
GT/s —— Giga Transmissionper second (千兆传输/秒),即每一秒内传输的次数。重点在于描述物理层通信协议的速率。

Gbps —— Giga Bits Per Second (千兆位/秒)。

GT/s 与Gbps 之间不存在成比例的换算关系。GT/s着重描述端口的速率属性,可以不和链路宽度等关联,这样来描述“可以进行链路宽度扩展”的高速串行接口更为合适一些。 需要结合具体的物理层通信协议来分析。

举例

例如: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 = 4Gbps 的速率。 以一个PCIe 2.0 x8的通道为例,x8的可用带宽为 4 * 8 = 32 Gbps。

例如:第二代PCI Express接口(简称 PCIe Gen2)的速率属性为5.0GTs,这样的描述主要说明的是每条PCIe Gen2的Lane(Serdes)每秒可以完成5.0G bit的数据传输这一属性,无论对于宽度为x1、x2、x4、x8的PCIe Gen2接口都是适用的。而如果笼统的说“PCIe Gen2的速率为5.0GT/s,则显得不太合适,因为对于一个x8的PCIe Gen2链路来说,它的8个Lane加在一起真正的数据传输能力实际可以达到40GT/s!同理,说PCIe Gen3接口的速率为8.0GT/S也是类似的意思。

pcie总线带宽
PCIe链路可以由多条Lane组成,目前PCIe链路可以支持1、2、4、8、12、16和32个Lane,即×1、×2、×4、×8、×12、×16和×32宽度的PCIe链路。每一个Lane上使用的总线频率与PCIe总线使用的版本相关。

第1个PCIe总线规范为V1.0,之后依次为V1.0a,V1.1,V2.0和V2.1。目前PCIe总线的最新规范为V2.1,而V3.0正在开发过程中,预计在2010年发布。不同的PCIe总线规范所定义的总线频率和链路编码方式并不相同,如表4‑1所示。

表4‑1PCIe总线规范与总线频率和编码的关系

如上表所示,不同的PCIe总线规范使用的总线频率并不相同,其使用的数据编码方式也不相同。PCIe总线V1.x和V2.0规范在物理层中使用8/10b编码,即在PCIe链路上的10 bit中含有8 bit的有效数据;而V3.0规范使用128/130b编码方式,即在PCIe链路上的130 bit中含有128 bit的有效数据。

由上表所示,V3.0规范使用的总线频率虽然只有4GHz,但是其有效带宽是V2.x的两倍。下文将以V2.x规范为例,说明不同宽度PCIe链路所能提供的峰值带宽,如表4‑2所示。

表4‑2PCIe总线的峰值带宽

由上表所示,×32的PCIe链路可以提供160GT/s的链路带宽,远高于PCI/PCI-X总线所能提供的峰值带宽。而即将推出的PCIe V3.0规范使用4GHz的总线频率,将进一步提高PCIe链路的峰值带宽。

在PCIe总线中,使用GT(Gigatransfer)计算PCIe链路的峰值带宽。GT是在PCIe链路上传递的峰值带宽,其计算公式为总线频率×数据位宽×2。

原文链接:https://blog.csdn.net/z1026544682/article/details/103366794

PCI 总线带宽简介相关推荐

  1. PCI总线及发展历程(详细)总结

    目录 一.PCI总线简介 二.总线的传输速度表: 三.PCI-E简介 四.其他相关链接 1.PCIe物理层总结-PCIE专题知识(一) 2.PCIe数据链路层图文总结-PCIe专题知识(二) 3.PC ...

  2. Compact PCI总线知识整理

    一. Compact PCI简介 Compact PCI(Compact Peripheral Component Interconnect)简称CPCI,中文又称紧凑型PCI,是国际工业计算机制造者 ...

  3. Linux PCI总线-PCI空间

    Linux PCI总线-PCI空间 2. PCI 总线地址空间映射 2.1 X86平台地址空间映射 2.2 龙芯平台地址空间映射 2.3 X86配置空间寄存器 2.4 龙芯平台配置空间寄存器 3. P ...

  4. PCI总线的基础知识快速学习(一)(适合新手)

    本系列文章仅介绍在FPGA设计中我们一般需要了解的PCI知识点,完整的PCI协议远比本系列文章介绍的复杂,所以本系列适合新手快速学习,让不了解PCI的初学者对PCI有个概念,进而学习PCIe,如果我们 ...

  5. PCI——第1章——PCI总线的基本知识

    摘要:对PCI 总线基本知识的整理,建议看完三章内容后再来进行总结或者阅读 目录 1.PCI基础知识 1. 1 PCI 总线的组成结构 HOST主桥 PCI 总线 PCI 设备 HOST处理器 PCI ...

  6. PCI总线和PXI总线的区别

    PCI技术: (应该叫总线) 1992年intel 推出创立 PCI规范到如今,PCI总线已成为了事实上计算机的标准总线. 请看 http://www.eebyte.com/article/list. ...

  7. 计算机 总线带宽计算,电脑各种硬件带宽的计算

    电脑各种硬件带宽的计算 2018-12-19 带宽,这个经常出现在内存.显存.显示器的技术参数到底是什么?其实,带宽有PC中是无处不在,下面就让我们一起来听听关于带宽的故事,了解一下带宽的基础知识.无 ...

  8. Linux下的PCI总线驱动

    版权所有,转载请说明转自  http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 一.理论 1.      PCI总线的特点: ...

  9. PCI总线协议(一)

    刚开始接触BIOS开发,目前正在学习关于PCI总线方面的知识,以下是本人根据网上的资料所整理的PCI学习笔记,如果有什么不对的地方,感谢大神的斧正. 众所周知,PCI总线是计算机主板上不可或缺的部分, ...

最新文章

  1. 开源自动化机器学习框架
  2. mac地址修改_优酷路由宝救砖时MAC和无线参数及SN恢复方法
  3. android源码的目录
  4. nc 模拟服务器_Go实战——实现一个并发时钟服务器
  5. UML建模——用例图(Use Case Diagram)
  6. 201571030316/201571030314 《小学四则运算练习软件需求说明》结对项目报告
  7. linux mysql 5.6.14_CentOS 6.4下编译安装MySQL 5.6.14
  8. python服务端编程_python网络编程示例(客户端与服务端)
  9. VB-ocx应用于Web
  10. Hibernate学习笔记:数据库连接的配置
  11. 涨姿势,原来程序员喝酒都是这样的呀
  12. c语言读一字节程序,C语言读写二进制文件
  13. 一款保险系统架构设计图
  14. oracle数据库基本讲解(菜鸟篇)
  15. 校园门禁app开发的功能
  16. 【私有云平台的搭建——vSphere Client 的安装与配置】
  17. 转-iOS- GPUImage README.md
  18. 人生没有白走的路,走过的都算数
  19. Android 音频倍速的原理与算法分析
  20. 深入理解ArrayList中 toArray(),toArray(T[])方法

热门文章

  1. Cesium 系列3- SceneWeather添加雨雪天气场景
  2. 计算机中的配色方案,电脑提示是否要更改配色方案来提高性能该如何解决?
  3. TSO、GSO介绍与实现
  4. 爬虫系列 | 5、详解爬虫中正则的用法
  5. 如何为员工设计薪酬更为合理呢
  6. redis 发布订阅以及使用场景
  7. AI 算法工程师 必备技能 知识图谱
  8. 求S=a+aa+aaa+aaaa+...+aaaa..的值,a是个数字 * 例如:2+22+222+2222+22222(此时共有5个数相加), 几个数相加由键盘控制
  9. android wifi断开原因分析
  10. 2023最新计算机毕业设计题目选题大全