下一代总线技术,谁主沉浮? 眼镜 2001年 14期 众所周知,CPU工作时需要与外围硬件设备进行数据、命令的交换,如果每种设备都分别引入一组线路直接与CPU相连,则可能导致系统线路杂乱无章,甚至不可能实现。为了简化硬件电路和系统结构,人们引入了一组通用线路,并配以适当的接口,CPU通过这条线路与外围硬件设备相连,这条通用线路称之为总线。根据连接设备的不同,总线又可以分为内部总线、系统总线和外部总线。内部总线连接的是CPU与系统内部芯片,系统总线是连接系统主板与扩展插卡的总线,外部总线则是用于连接系统与外部设备的总线。    最早的ISA(Industrial Standard Architecture,工业标准结构)就是一个很好的例子,因为于ISA总线仅能提供5MB~8MB/s的带宽,已经无法满足当时系统的需求,因此需要一种新的总线技术来取代它,就这样PCI总线应运而生了。PCI(Peripheral Component Interconnect,周边元件扩展接口)总线是由英特尔公司推出的一种总线技术,它定义了32位数据总线,而且可以扩展到64位。PCI总线支持突发读写操作,最大带宽可达132MB/s,可同时支持多组外围设备。可是随着微处理器技术的发展,现在PCI总线也面临当初ISA的问题,即使是经过改进的、用于服务器和高端电脑系统的64位/66MHz的PCI总线(提供的带宽可达533MB/s)仍然无法满足要求,因此制定一种新型的、稳定高效的总线标准便成了当务之急,目前最有希望成为高端总线技术标准主要有两种,它们分别是PCI-X总线和InfiniBand(无限带宽)总线。   #1 PCI-X总线技术    PCI-X属于PCI总线的扩展架构,与PCI总线相比,PCI-X允许连接的单个PCI-X设备自己进行数据交换,断开没有数据交换的PCI-X的连接,以减少总线的等待周期,因此在同样的频率下,PCI-X的性能将会比PCI提高14%~35%。PCI-X另一优势是它的变频功能,PCI-X不像PCI那样采用固定的频率,具体的频率根据设备的不同而随时变化。PCI-X的1.0版本目前可以支持66MHz、100MHz、133MHz这三种频率,依次能管理4个、2个、1个PCI-X设备,并分别具有533MB/s、800MB/s、1066MB/s的峰值带宽。如在100MHz的总线频率下,两个PCI-X设备正好拥有1.6GB/s的总带宽。(^14030101a^)    PCI-X总线另一个优势在于它的兼容性,因为无论32位还是64位PCI-X总线,均采用同样的接口形式,而且普通PCI的设备也能插在PCI-X插槽之中。另外PCI-X总线也无需在BIOS程序中进行任何修改,所有功能的实现完全由板卡本身决定,所有的PCI-X和PCI设备都能在一个系统中和平共处,不会发生任何冲突,因此PCI-X总线的引入可以最大限度地确保用户原有的投入不会浪费。    目前AMD和VIA是PCI-X技术的积极倡导者,其中VIA将在今年发布支持PCI-X的芯片组产品,IBM已经发布了标准化的PCI-X 桥接芯片,其他的一些厂商,如ServerWorks,在今年的IDF(Intel Developers Forum,英特尔开发者论坛)春季大会上已经展出了采用PCI-X总线的服务器系统Foster。   #1 InfiniBand总线技术    InfiniBand是英特尔提出的一种全新的总线结构,用于在服务器系统中取代PCI总线,使用InfiniBand总线的系统将会得到更高的带宽和扩展能力,增强了系统的灵活性。InfiniBand总线来源于NGIO(Next Generation I/O)和Future I/O这两种竞争的总线结构,经过各方的努力,终于在1999年中期将这两种技术成功融合在一起,形成了今天的InfiniBand总线,目前该技术得到Compaq、Dell、英特尔、IBM等公司的支持。(^14030101b^)    与PCI-X一样,InfiniBand也是用来取代PCI总线的,由于InfiniBand采用了一种全新的架构,因此与传统的PCI无法兼容。采用InfiniBand之后,设计师们就可以不必总是把I/O看做是服务器的组成部分,而可以看成机箱的一部分了,这时远程存储器、网络和服务器之间的连接是通过一条位于中心的InfiniBand控制芯片和中继线完成的,InfiniBand就是采用这种方式解决了PCI总线中存在的距离问题。采用InfiniBand通道设计,在使用铜线的情况下,外部设备可以放到离服务器17米远的地方;如果使用多模光缆,最远距离可达300米;如果使用单模光缆,这一距离甚至可以达到10千米。由于不需要内部总线的装置,服务器体积可能会因此缩小60%以上。以后服务器生产商不再需要说明服务器提供几个PCI插槽,因为系统机箱仅需要一个InfiniBand主机通道适配器(HCA)就可以轻松搞定。如果没有采用InfiniBand总线,那为服务器增加一块PCI设备无疑是一件非常麻烦的事,首先用户必须关闭服务器,然后插入PCI扩展卡,并将设备连接好,然后在操作系统中安装该设备,最后还需要重新启动系统以使新设备生效。如果采用了InfiniBand总线,这一过程将会变的非常容易,用户只需将设备连接到InfiniBand接口上,剩下的事就由控制芯片自己完成了,不需要用户介入,而且这一过程也不需要中断服务器的运行。    根据不同的需要,InfiniBand标准为通道适配器设置了三种工作方式,分别提供1、4和12条中继线,这三种工作方式提供的带宽分别可以达到500MB/s、2GB/s和6GB/s,显然要高于PCI-X总线提供的带宽。InfiniBand技术的应用可以使设计人员解放出来,开发出速度更快、效率更高的应用软件,因为InfiniBand可以让应用程序直接访问外部设备,其间不需要CPU协助。而在使用PCI总线的系统上,一个最简单的打开或关闭文件请求都需要CPU的协助才能完成,因此采用InfiniBand总线,无疑可以极大提高系统的访问速度。   #1 结束语    通过上面的介绍,我们知道这两种结构目前都用在服务器和高端系统中,从性能指标上看,InfiniBand要比PCI-X更出色一些,不仅如此,InfiniBand的引入还给外围设备的安装提供了极大的便利,这是PCI-X无法相比的。另外,InfiniBand技术的使用还可以使外围设备不必局限于系统的附近,可以放到相对较远的地方,而且InfiniBand支持的外围设备数量也要比PCI-X多许多。相比而言,PCI-X的优势可能只有兼容性这一点了,但这是非常重要的性能,加上PCI-X目前仍处在发展之中,而且两种结构有着各自不同的侧重点,在某种程度上起到了相互补充的作用,因此在以后相当长的时间里可能会出现这两种技术并存的局面。    文章链接:    2000年第10期27版《主板插槽及接口》    2000年第28期27版《x86的过去和未来》    2000年第35期27版《IEEE-1394技术》