第II篇PCI Express体系结构概述

虽然PCI总线取得了巨大的成功,但是随着处理器主频的不断提高,PCI总线提供的带宽愈发显得捉襟见肘。PCI总线也在不断地进行升级,其位宽和频率从最初的32位/33MHz扩展到64位/66MHz,而PCI-X总线更是将总线频率提高到533MHz,能够提供的最大理论带宽为4263MB。但是PCI总线仍无法解决其体系结构中存在的一些缺陷。PCI总线面临着一系列挑战,包括带宽、流量控制和数据传送质量等。

PCI总线的最高工作频率为66M,最大位宽为64b,从理论上讲,PCI总线可以提供的最大传输带宽为532MB。然而PCI总线作为一个共享总线,在其上的所有PCI设备必须要共享PCI总线的带宽。同时由于PCI总线的协议开销,导致PCI总线可以实际利用的数据带宽远小于其峰值带宽。

PCI总线采用提高总线位宽和频率的方法增加其传输带宽。但是这种方法从性能价格比的角度上看,并不是最优的。数据总线位宽的提高将直接影响芯片的生产成本,64位的PCI总线接口需要设计者使用更多的芯片引脚,从而导致64位的PCI总线接口芯片的价格远高于32位的PCI总线接口芯片。与32位PCI总线接口相比,设计者还需要使用更多的印制板层数来实现64位PCI总线接口。

而提高总线频率,除了给硬件工程师带来了一系列信号完整性的问题之外,更直接影响PCI总线的负载能力。一条33MHz的PCI总线最多可以驱动10个负载,而66Mhz的PCI总线最多只能驱动4个负载。因此片面提高PCI总线的频率和位宽,并不能有效地提高PCI总线的带宽。

除此之外PCI总线在设计之初并没有考虑服务质量的问题。有些实时数据采集卡,音频或者视频的多媒体应用需要PCI总线提供额定带宽,而PCI总线上的设备只能轮流使用PCI总线,当一个设备长期占用PCI总线时,将阻止其他PCI设备使用PCI总线,从而影响了PCI总线的传送质量。

基于以上几个原因,PCI总线在某种程度上说并不能完全适应现代处理器系统的需要,而使用PCIe总线可以有效解决PCI总线存在的一些问题。首先PCIe总线可以提供更大的总线带宽,PCIe V3.0支持的最高总线频率为4GHz,远高于PCI-X总线提供的最高总线频率。

其次PCIe总线支持虚通路VC(Virtual Channel)技术,优先级不同的数据报文可以使用不同的虚通路,而每一路虚通路可以独立设置缓冲,从而相对合理地解决了数据传送过程中存在的服务质量问题。

PCIe总线由若干层次组成,包括事务层、数据链路层和物理层。PCIe总线使用数据报文进行数据传递,这些数据报文需要通过PCIe总线的这些层次。PCIe总线的这种数据传递方式与互联网使用TCP/IP协议进行数据传递有类似之处。

实际上在互联网中存在的许多概念也存在于PCIe总线中,如交换、路由和仲裁机制等,不过这两者之间在实现上的最大不同在于前者主要使用软件程序实现其协议栈,而后者使用硬件逻辑实现。

半导体工艺的逐步提高,使得更多的软件算法可以使用硬件逻辑来实现,这给从事IC Design的工程师带来了巨大的挑战,因为他们使用Verilog/VHDL程序书写的算法,之前是使用C或者是C++这样的高别语言实现的。

PCIe总线在系统软件级与PCI总线兼容,基于PCI总线的系统软件几乎可以不经修改直接移植到PCIe总线中。绝大多数PCI/PCI-X总线使用的总线事务都被PCIe总线保留,而PCI设备使用的配置空间也被PCIe总线继承。基于PCI体系结构的系统编程模型,几乎可以在没有本质变化的前提下,直接在PCIe体系结构中使用。

但是从体系系统的角度上看,PCIe总线还是增加了一些新的特性,其中一些特性不仅仅是称呼上的变化,而且在功能上也得到了增强。如在PCIe体系结构中出现的RC(Root Complex)。RC的主要功能与PCI总线中的HOST主桥类似,但是在HOST主桥的基础上增加了许多功能。

在不同处理器系统中,RC的实现方式不同,因此仅仅用PCIe总线控制器称呼RC是不够的,实际上PCIe总线规范对RC并没有一个合适的解释。RC本身也是随处理器系统的不同而不同,是一个很模糊的概念。

Intel并没有使用PCIe总线控制器,而是使用RC管理PCIe总线,基于深层次的考虑。在x86处理器体系结构中,RC并不仅仅管理PCIe设备的数据访问,而且还包含访问控制、错误处理和虚拟化技术等一系列内容。因此使用PCIe总线控制器统称RC,在x86处理器体系结构中,并不合适。

在PCIe总线中,还有一些特性与PCIe总线协议的实现相关。与PCI总线相比,PCIe总线使用端到端的连接方式,添加流量控制机制,并对“访问序”做出了进一步优化。虽然从系统软件的角度上看,PCI总线与PCIe总线基本一致。但是从硬件设计的角度上看PCIe总线完全不同于PCI总线,基于PCIe总线各类设备的硬件设计难度远大于基于PCI总线的对应设备的设计难度。

目前PCIe总线规范,依然在迅猛发展,但并不是所有PCIe设备都支持这些在PCIe总线的最新规范中提及的概念。一般说来,PCIe总线规范提出的新的概念,最先在x86处理器系统的Chipset和Intel设计的EP中出现。

时间: 2024-08-03 23:29:42

第II篇PCI Express体系结构概述的相关文章

PCI Express正筹备升级至32G

铜缆互连机制将迎来新的历史性升级,最早将于2019年推出的第五代PCI Express将实现每秒32 G传输能力.PCI特别兴趣小组在本届年会上公布了此项计划,并表示这套方案将彻底终结原本的第四代每秒16 GT性能规格. 这一消息标志着此项当前得到广泛使用的计算机互连技术将迎来显著提速--事实上,随着近年来PC市场发展速度的放缓,该互连性能水平一直处于停滞状态.与此同时,以CCIX.GenZ以及OpenCAPI为代表的其它多种开放互连方案亦在快速兴起当中. 第五代PCIe将采用128-/130-

《新编计算机科学概论》一2.2  计算机体系结构概述

2.2 计算机体系结构概述 体系结构的概念是从软件设计者的角度对计算机硬件系统的观察和分析.结构是指各部分之间的关系.通过分析系统的组成和结构,可以指导更好地进行软件设计. 2.2.1 计算机体系结构的基本概念 计算机体系结构 计算机体系结构(computer architecture)通常是指程序设计人员所见到的计算机系统的属性,是硬件子系统的结构概念及其功能特性.经典的"计算机体系结构"定义是1964年C. M. Amdahl在介绍IBM 360系统时提出的. 按照计算机系统的多级

《MPLS和VPN体系结构(第2版•修订版)》一第1章 MPLS VPN体系结构概述

第1章 MPLS VPN体系结构概述 MPLS和VPN体系结构(第2版•修订版)与传统的企业网组网方式相比,服务提供商提供的虚拟专用网(VPN)业务要更具成本优势.故其近来深受设备制造商.网络资询人员/设计师.服务提供商.大企业以及最终客户的青睐.与大多数技术一样,当今VPN网络及其底层技术的根基均构建于20多年以前.在它们的发展历程中,客户们也逐渐意识到,用"纵贯"共享式基础设施的虚拟连接,来取代各自私有网络中站点间的物理链路,可以节省更多的成本.而如此行事的前提条件是:共享基础设施

LSI面向OEM客户提供PCI Express固态存储样片

LSI是个雄心勃勃的厂家,其RAID阵列卡在很多高端存储系统中被广泛应用.今天,LSI为OEM客户展示了性能极强的基于PCI Express接口的固态硬盘.彻底拜托了SATA接口的速度瓶颈.LSISSS6200固态硬盘看,可以应用于高可靠性高性能的存储解决方案中,为企业级的高密度存储环境提供支持.为了便于管理,它还支持SAS协议,可以广泛的应用于LSI的SAS扩展软件.该卡专门为高IOPS环境而生,为web服务.数据库.数据采集.在线交易等高性能计算方案提供完美的数据存储带宽. LSI 公司日前

全局XML Web服务体系结构概述

web|web服务|xml|体系 全局XML Web服务体系结构(Global XML Web Services Architecture,下面简称GXA)平台是一个新术语,包括Web服务交互领域的许多制定的新标准.相当多的大公司正在GXA的幕后进行合作,包括微软和IBM. GXA的主要目标是定义指定Web服务的协议新家族的语法和语义,这些协议把SOAP和XML的基本功能带到下一代相互适应性中.虽然在过去的几年中,已经做了大量的工作来创建用于Web服务的标准,但是仍然有很多工作要做.这些工作由增

SQL Server 2005 Express Edition概述

适用于: Microsoft SQL Server 2005 Express Edition Microsoft Visual Studio 2005 摘要:SQL Server Express Edition 是基于 SQL Server 2005 技术的免费产品,包括特有的应用程序 XCopy 功能以及不同于其他 SQL Server 2005 版本的网络和安全性.本文讨论了这些主题以及 SQL Server Express 与 Visual Studio 2005 集成的问题,同时还将本产

Oracle RMAN的体系结构概述

一. 服务器管理恢复 恢复管理器, Recovery Manager, 简陈 RMAN. RMAN 实现一直服务器管理恢复(Server Managed Recovery: SMR). SMR 是一种数据库执行所需要的操作以确保自身备份成功的能力,依赖于Oracle RDBMS 内核中的内置代码可以完成这一功能. SMR 的功能主要体现在能够减少用户的操作. 二. RMAN 使用程序 RMAN 是SMR的具体实现,它是Oracle 提供的,RMAN 是一个独立的应用程序,它负责建立到Oracle

结束语

"浅谈PCIe体系结构"的更新到此告一段落.这些内容主要出自之前书写的<PCI Express体系结构导读>,因为与出版社的协议,无法在此处共享全文,但是也包含了与PCI与PCIe总线相关的最基础的内容.原书正在组织第二次印刷,我却很难有再版的想法.事实上如果我能决定一些事情,不会出现第二次印刷. 书中的错误令不安,却鲜有读者指出.我意识到产生这些现象的原因是更多的入门者在阅读这些内容.与国外的知名教授十年磨一剑去书写书籍,剩下的除了反思还是反思.这些反思使我在今后相当长的

Nodejs Express 4.X 中文API 4--- Router篇

相关阅读:  Express 4.X API 翻译[一] --  Application篇  Express 4.X Api 翻译[二] --  Request篇  Express 4.X Api 翻译[三] --- Response篇  Express 4.X Api 翻译[四] --- Router篇   本篇是Express 4.0 API翻译的第四篇,本篇的内容主要是Router的相关操作.   Router() 路由器是一个孤立的中间件和路由的实例.路由器可以被认为是一个"mini&q