1990年早期,PCI首次被引进至PC,它对于当时在PC上过多可用的I/O汇流排造成全面的影响,其影响范围涵盖如(图一)所显示的VESA本机汇流排、EISA、 ISA和「微通道」。因为PCI是首次实际用于晶片对晶片的互相连接,并可取代碎片式的ISA汇流排,所以早期33MHz的PCI汇流排已经是搭配当时主流周边设备需求I/O频宽的好搭档了。时至今日,PCI之前的盛况已完全改观。处理器和记忆体时脉经常在增加,尤其是处理器,其处理速度更是大幅提升。在演进的期间内,PCI汇流排已经从33MHz增加至66MHz,而处理器速度则由33MHz增加至3GHz。新兴的I/O技术,像是Gigabit乙太网路和IEEE 1394B,单一装置几乎独占所有可用的PCI汇流排频宽。
PCI汇流排历史和概观
PCI汇流排较之前的汇流排实作方式有许多项的优点。其中最重要的就是处理器独立性、缓冲的隔绝、汇流排控制和真正的随插即用操作。缓冲隔绝可以同时在电子和时脉领域,实际将CPU本机汇流排与PCI汇流排隔绝。这项功能为系统效能带来了两项主要的优点。第一项是在PCI汇流排和CPU汇流排执行同时流程的能力;而第二项则是独立于PCI汇流排速度和载入之外,增加CPU本机汇流排频率。有了汇流排控制,PCI装置可以透过仲裁程序及直接控制汇流排执行,来获得对于PCI汇流排的存取,而不需要等候主机CPU为装置提供服务,进一步减少提供I/O执行服务时的整体延迟。随插即用操作可以让装置自动侦测及设定妥当,因此使用者不用在ISA架构的主机板上,用开关及跳线繁复地进行手动设定位址及中断处理的需要。
PCI挑战
虽然PCI非常成功,但它现在面临了一系列的挑战,其中包括:频宽限制、有限的主机接脚数、缺乏即时的资料传输(如同步资料传输服务),同时也欠缺下一代I/O需求(如服务品质、电源管理及I/O视觉化等功能)。
从PCI的引进开始,就已进行数次关于PCI规格的修正,以便试着配合I/O不断增加的需求。 (表一)便将这些修正做一摘要。
因为通讯协定的经常支出和汇流排拓蹼的关系,PCI汇流排的实用频宽和它的改良版,比理论上的频宽来得少。 PCI的主要限制为可用的频宽,这是汇流排上所有装置共用的。
随着PCI时脉频率在某些应用中已明显不足,PCI的改良版,像是PCI-X和进阶图形连接埠(AGP),就藉由增加汇流排时脉以增加频宽使用率。增加时脉的副作用,是汇流排的路由距离,以及汇流排收发器可以驱动的接头数目同时减少,形成将PCI汇流排分割为多重区块的概念。每一个被切割的区块都需要从主机驱动晶片,将一个完整的PCI-X汇流排传送到每一现有插槽中。例如,64位元的PCI-X的每一区块需要150支接脚,这在实作上的成本明显偏高,并且对于路由、主机板层数和晶片封装接脚输出等功能有所限制。只有像伺服器等对频宽要求非常高的情况下,这种昂贵的成本才能被接受。
有些资料撷取、波型产生以及包括串流音讯和视讯的多媒体应用程式等应用,需要确保频宽和限定的延迟,否则将会影响使用者的量测结果与使用经验。原始PCI规格并无法解决这些问题,因为这些应用在开发规格书上还未普及。现今的同步资料传输功能,例如高画质且未经压缩的视讯及音讯,其I/O系统必须拥有同步传输的功能。同步传输的副作用,PCI Express装置比起传统用来将变动频宽问题降到最小的PCI装置,其缓冲区里所需的记忆体便少了许多。
最后,下一代的I/O需求,像是量测结果的品质和电源管理,将可改善资料之完整性,并允许选择性地关闭电源系统装置,这是针对现代PC电源需求量持续成长的重要考量。 「虚拟通道」能够传送从虚拟路径通过的资料;即使其他通道因为执行特别的动作而受到封锁,也可以进行资料传输。
虽然PCI汇流排在某些领域已有点过时,但全面改用PCI Express还是一条长远的路,PCI汇流排在未来的几年中,还是会在I/O扩充上维持其强有力的竞争地位。在2004年及其后所引进的现代PC,将会同时含有PCI和PCI Express插槽,而且使用PCI Express比例会随着其技术被采用而逐渐增加。
PCI Express架构
PCI Express架构是在各层中指定的,如(图二)所示。此架构维持了与PCI定址模式的相容性(载入储存架构及平面位址空间),可确保所有现存应用程式和驱动程式能不变地运作。 PCI Express组态使用了在PCI随插即用规格中所定义的标准机制。在使用以封包为基础、分割执行的通讯协定等条件下,软体层能够产生由执行层传送至I/O装置的读取及写入请求。而连结层会对这些封包加入顺序编号及CRC,以建立高度可靠的资料传输机制。基本实体层包含实际作为一传输对和一接收对的双重单通道。以每一方向初始2.5Gbps之速度,在每一方向提供了200Mbps的通讯通道,这种速率已经非常接近典型PCI资料速率的四倍。
实体层
基本PCI Express之连结包含两个如(图三)所示,配有低电压AC的差动讯号对(一传输对和一接收对)。实体连结讯号使用一种反加强的架构,以降低记号间的干扰,因此维持了资料的完整性。资料时脉则是使用8b/10b的内嵌编码架构,以达成更高的资料速率。初始的讯号频率为2.5Gbps/方向(第一代的讯号发送),而且这个数值预计可随半导体制程技术的进步直线增加至10Gbps/方向(铜线的实作最大讯号值)。实体层会在两个PCI Express代理的连结层之间传送封包。
PCI Express连结的频宽可以藉由增加讯号对,以形成多重路径进行线性扩展。实体层提供×1、×2、×4、×8、×12、×16和×32倍速的路径宽度,并将位元资料加以分割。每一位元都可以8b/10b编码,并可跨路径传输。这种资料的分解及重新组装对其他层而言是透明的。在初始化阶段,每一个PCI Express连结都会依据路径宽度流通,以及在连结两端的两个装置操作频率上加以设定。这不会涉及任何韧体或作业系统软体。PCI Express架构可经由速度升级及进阶的编码技术,提供进一步的效能改进。在未来,不论是速度、编码技术或是媒体,都只会对实体层造成影响。
资料连结层
连结层的主要角色,是确保封包能跨越PCI Express连结达成传送工作。连结层负责资料的完整性,如(图四)所示,连结层确保资料的完整性,并在执行层封包的过程中加入顺序编号和CRC。大部份的封包都会在执行层予以初始化。以信任为基础,流程控制的通讯协定可以确保封包仅在它所知悉的本封包另一端有可以接收的缓冲区时,才会予传送,这可以免除任何封包重试,以及因为资源限制所造成的相关汇流排频宽浪费。连结层会在一封包的讯号毁损时,自动重试。
执行层
执行层可从软体层接收读取及写入的请求,并建立封包的请求,以传送至连结层。所有的请求都会以分割执行加以实作,而某些请求封包则需要一个回应封包。执行层也可以从连结层接收回应封包,并将它们与原始软体请求比对。每一封包都拥有独特的识别元,可以让回应封包导向正确的原始产生者。封包格式提供了32位元的记忆体定址,以及扩充的64位元记忆体定址。封包也拥有像是「无调查」、「松散型排序」及「优先顺序」等特性,以便透过I/O子系统,以最佳化方式用来路由这些封包。
执行层提供了四种位址空间,其中包括三种PCI位址空间(记忆体、I/O和组态)和「讯息空间」。 PCI2.2引进了另一种传播系统中断指令的方法,称为「讯息讯号中断指令」(MSI)。它使用一种特殊的记忆体写入执行来取代硬性线路的侧带讯号,可在PCI2.2系统中做为选用的功能。PCI Express规格书重复使用了MSI概念做为中断处理程序的主要方法,并使用「讯息空间」来接受所有先前的侧带讯号,如中断指令、电源管理的请求以及重设,当做带内讯息( in-band Messages)。其他在PCI2.2规格书中的「特殊流程」,像是「中断指令认证」,也是以带内讯息加以实作的。 PCI Express讯息可以视为「虚拟线路」,因为它们主要是负责消除目前使用在平台执行的多种侧带讯号。
软体层
软体相容性是PCI Express最重要的特性。软体相容性有两种面相--初始化(或列举)的功能及执行时间。 PCI拥有强健的初始化模型,因此作业系统可以发现目前所有新增的硬体装置,再进行系统资源的配置,以建立最佳化的系统环境,故涉及如记忆体、I/O空间和中断指令重新配置。在PCI Express架构中仍然维持不变的关键概念,即为PCI设定空间和I/O装置中可程式的功能;事实上,所有作业系统都能不经修改,即可在PCI Express架构的电脑中开机。PCI使用的执行时间软体模型其实是一种载入储存、共用记忆体的模型,使用PCI Express架构,不用更改现存的软体即可执行。新软体也可以利用PCI Express某些进阶功能,如「进阶交换」功能,但这部份并不在本文件讨论范围之内。
PCI Express架构主导PC未来趋势
PC架构在每一种交互连结中,有许多进阶的需求。例如,图形主机板是经由「进阶图形连接埠」(APG)形成介面,而记忆体桥接器则是经由多种介面与I/O桥接器相连的,例如(图五)中所描绘的Hublink。
如(图六)所示,PCI Express 使用通用汇流排架构来统一I/O系统。此外,PCI Express也替换了某些连结子系统的内部汇流排。
PCI Express可以依据应用平台--笔记型电脑、桌上型电脑或伺服器,提供许多种不同的I/O扩充格式。以伺服器而言,将拥有更多的PCI Express插槽,因为这些插槽将可提供更多的PCI Express路径,这样可以提供较大频宽以配合I/O的需求。相反的,笔记型电脑可以在内部使用PCI Express架构,但仅显露单一×1路径供中速周边设备使用。
桌上型电脑PCI Express扩充插槽
桌上型电脑和工作站电脑PCI主机板的替代品,和今日的PCI主机板的机械结构非常相似,它依据主机板边缘接头和及突出支架的I/O接头,连接至主PWB的支撑支架。主机板上的接头拥有改良的定位功能,以确保主机板的接头不会因为震动或在送货时滑动。它依据PCI Express路径宽度,提供了许多不同尺寸的主机板边缘接头,从x1到最高x16。此插槽是为16倍速所规划,以取代主机板上的AGP插槽,方便图形主机板扩充之用。(图七)显示三个PCI插槽内的主机板图片--两个1倍速和一个16倍速供图形主机板使用。请注意主机板仍拥有许多典型的PCI插槽,而典型PCI插槽还是可以使用一段长时间。 (图八)显示一张典型图形主机板的照片,提供一条16倍速连结,并可以3.2Gbps的速度传送资料。 (图九)显示各种不同PCI Express接头的机械绘图。
《图九 各种不同PCI Express接头的机械式绘图》 |
|