【摘要】:从那时起,PCI总线一直在处理器体系结构中占有重要地位。IAL是现代PC体系架构的重要奠基者。除了以上规范之外,PCISIG还推出了一系列和PCI总线直接相关的规范。其中PCI-to-PCI桥规范最为重要,理解PCI-to-PCI桥是理解PCI体系结构的基础;而CompactPCI总线规范多用于具有背板结构的大型系统,并支持热插拔。PCI和PCI-X总线使用单端并行信号进行数据传递,由于单端信号容易被外部系统干扰,其总线频率很难进一步提高。
PCI(Peripheral Component Interconnect)总线的诞生与PC(Personal Computer)的蓬勃发展密切相关。在处理器体系结构中,PCI总线属于局部总线(Local Bus)。局部总线作为系统总线的延伸,其主要功能是连接外部设备。
处理器主频的不断提升,要求速度更快、带宽更高的局部总线。起初PC使用8位的XT总线作为局部总线,很快升级到16位的ISA(Industry Standard Architecture)总线,并逐步发展到32位的EISA(Extended Industry Standard Architecture)、VESA(Video Electronics Standards Association)和MCA(Micro Channel Architecture)总线。
PCI总线规范在20世纪90年代提出。这条总线推出之后,很快得到了各大主流半导体厂商的认同,并迅速统一了当时并存的各类局部总线,EISA、VESA等其他32位总线很快就被PCI总线淘汰了。从那时起,PCI总线一直在处理器体系结构中占有重要地位。
在此后相当长的一段时间里,处理器系统的大多数外部设备都是直接或者间接地与PCI总线相连。即使目前PCI Express总线逐步取代PCI总线成为PC局部总线的主流,也不能掩盖PCI总线的光芒。从软件层面上看,PCI Express总线与PCI总线基本兼容;从硬件层面上看,PCI Express总线在很大程度上继承了PCI总线的设计思路。因此PCI总线依然是软硬件工程师在进行处理器系统的开发与设计时必须掌握的一条局部总线。
PCI总线规范由Intel的IAL(Intel Architecture Lab)提出,其V1.0规范在1992年6月22日正式发布。IAL是Intel的一个重要实验室,USB(Univ ersal Serial Bus)、AGP(Accel-erated Graphics Port)、PCI Express总线规范和PC的南北桥结构都是由这个实验室提出的。
IAL起初的研究领域包括硬件和软件,但是IAL在软件领域的研究遭到了Microsoft的抵触,IAL提出的许多软件规范并不被Microsoft认可,于是IAL更专注硬件领域,并在PC体系架构上取得了一个又一个突破。IAL是现代PC体系架构的重要奠基者。2001年,IAL由于其创始人的离去而临时解散。2005年,Intel重建了这个实验室。
PCI总线V1.0规范仅针对在一个PCB(Printed Circuit Board)环境内的器件之间的互连,而1993年4月30日发布的V2.0规范增加了对PCI插槽的支持。1995年6月1日,PCI V2.1总线规范发布,这个规范具有里程碑意义。正是这个规范使得PCI总线大规模普及,至此PCI总线完成了对(E)ISA和MCA总线的替换。
至1996年,VESA总线也逐渐离开了人们的视线,当然PCI总线并不能完全提供显卡所需要的带宽,真正替代VESA总线的是AGP总线。随后PCISIG(PCI Special Interest Group)陆续发布了PCI总线V2.2、V2.3规范,并最终将PCI总线规范定格在V3.0。
除了PCI总线规范外,PCISIG还定义了一些与PCI总线相关的规范,如PCMCIA(Per-sonal Computer Memory Card International Association)规范和MiniPCI规范。其中PCMCIA规范主要针对Laptop应用,后来PCMCIA升级为PC Card(Cardbus)规范,而PC Card又升级为ExpressCard规范。(www.chuimin.cn)
PC Card规范基于32位、33MHz的PCI总线;而ExpressCard规范基于PCI Express和USB 2.0。这两个规范都在Laptop领域中获得了成功。除了PCMCIA规范外,Mini PCI总线也非常流行,与标准PCI插槽相比,Mini PCI插槽占用面积较小,适用于一些对尺寸有要求的应用。
除了以上规范之外,PCISIG还推出了一系列和PCI总线直接相关的规范。如PCI-to-PCI桥规范、PCI电源管理规范、PCI热插拔规范和CompactPCI总线规范。其中PCI-to-PCI桥规范最为重要,理解PCI-to-PCI桥是理解PCI体系结构的基础;而CompactPCI总线规范多用于具有背板结构的大型系统,并支持热插拔。
PCISIG在PCI总线规范的基础上,进一步提出PCI-X规范。与PCI总线相比,PCI-X总线规范可以支持133MHz、266MHz和533MHz的总线频率,并在传送规则上做了一些改动。虽然PCI-X总线还没有得到大规模普及就被PCI Express总线替代,但是在PCI-X总线中提出的许多设计思想仍然被PCI Express总线继承。
PCI总线规范是Intel对PC领域做出的一个巨大贡献。Intel也在PCI总线规范中留下了深深的印记,PCI总线规范的许多内容都与基于IA(Intel Architecture)架构的x86处理器密切相关。但是这并不妨碍其他处理器系统使用PCI总线,事实上PCI总线在非x86处理器系统上也取得了巨大的成功。目前绝大多数处理器系统都使用PCI/PCI Express总线连接外部设备,特别是一些通用外设。
随着时间的推移,PCI和PCI-X总线逐步遇到瓶颈。PCI和PCI-X总线使用单端并行信号进行数据传递,由于单端信号容易被外部系统干扰,其总线频率很难进一步提高。目前,为了获得更高的总线频率以提高总线带宽,高速串行总线逐步替代了并行总线。PCI Express总线也逐渐替代PCI总线成为主流。但是从系统软件的角度上看,PCI Express总线仍然基于PCI总线。理解PCI Express总线的一个基础是深入理解PCI总线,同时PCI Express总线也继承了PCI总线的许多概念。本篇将详细介绍与处理器体系结构相关的一些必备的PCI总线知识。
为简化起见,本篇主要介绍PCI总线的32位地址模式。在实际应用中,使用64位地址模式的PCI设备非常少。而且在PCI Express总线逐渐取代PCI总线的大趋势之下,将来也很难会有更多的使用64位地址的PCI设备。如果读者需要掌握PCI总线的64位地址模式,请自行阅读PCI总线的相关规范。实际上,如果读者真正掌握了PCI总线的32位地址模式之后,理解64位地址模式并不困难。
为节省篇幅,下文将PCI Express总线简称为PCIe总线,PCI-to-PCI桥简称为PCI桥,PCI Express-to-PCI桥简称为PCIe桥,Host-to-PCI主桥简称为HOST主桥。值得注意的是许多书籍将HOST主桥称为PCI主桥或者PCI总线控制器。
相关推荐