|
在今年年初的微处理器论会上,IBM公布了下一代PowerPC详细的技术说明。作为下一代的PowerPC机,Power PC 970主要针对高性能桌面用户,工作站和低端服务器市场。PowerPC 97继承了Power 4处理器的大部分优点,其中最为世人瞩目的要数用于连接处理器和系统的Elastic IO内部连接总线。

图一:Elastic I/O 内部连接总线
图一,就是IBM提供的Elastic I/O内部连接总线。Elsatic总线工作在900MHz频率,是PowerPC 970 CPU时钟频率的一半。Elastic I/O使用的是两条单向点对点的连接总线,每一个方向上的总线宽度是4字节(32位)。所以Elsatic总线的单向峰值带宽可以高达3.6GB/s,理论总带宽可以达到7.2GB/s。在传统的总线中,地址,命令,控制,数据分别使用4个不同的通道来完成所对应的操作,而PowerPC 970使用一组相同的总线来完成这些不同的操作。因此,Elastic总线可以大大降低原先由于地址,命令,数据通道由于切换而产生的时延。IBM宣布,PowerPC 970可以充分利用7.2GB/s中的6.4GB/s带宽用于纯数据传输,其余的带宽一般用于控制信号的传输和系统与CPU之间的通讯。 本文,我们就向读者介绍总线基本概念,以及900 MHz Elastic I/O总线和其他一些典型的内部传输总线,如用于连接Intel CPU,Alpha EV6 各种总线。
总线基础
什么是总线? 总线按照传输方式可以分为:单向,双向,点到点和多点传输4种类型。按照不同的组合方式,通常系统中采用“单向点到点连接”,“双向点到点连接”,“单向多点连接”,和“双向多点连接”。
 图2:不同的连接总线
PowerPC 970中的Elastic I/O使用单向点到点连接总线,因此信号只能够单方向进行传输,即总线的一方进行发送,而另外一方进行接收。而Alpha EV6处理器使用双向点到点连接总线,根据数据流和芯片组的需求,信号可以动态的从A端传送到B端,也可以从B端传送到A端。而我们使用最多的用于PIII,Pentium4,Xeon和Itanium处理器中的是双向多点连接总线,总线一端的信号可以发送到和总线相连接的所有总线的另一端。 通常而言,多点连接总线本身的特性就决定了它很难工作在较高的时钟频率下,但是它们的优点是可以以较低的价格和方便的配置构成SMP系统。除了上述提到总线传输的类型,总线的信号发送方式,信号的传输协议也是影响总线性能重要的因素。 总线相关问题 信号从总线的A端发送到B端不可避免的会产生延时。
图三,就表明了无论总线如何设计,信号从一端传输到另一端必定会产延时

图3: 信号由于传输产生的延时
在理想的状况下,信号传输的速度是光速的2/3,即每1个纳妙,信号可以传播20厘米。但是由于我们通常把总线设计在4层PCB板上,信号的传输会由于PCB板的介质产生损失,所以传输的速率远远不能达到理想值。如果阻抗调配不当,信号波会在传输总线上来回传播。

图4:反射信号
如图4,由于接收端不能完全吸收信号,所以一方面系统对信号的处理可以产生偏差,另一方面没有吸收的信号会重新发送到总线,产生“回波”。回波会返回发送端,如果发送端也不能完全吸收回波,那么发送端也会产生相应的“回波”,进行再次发送。通常在这种情况下,回波信号会在总线上进行阻尼振荡,直到最后消亡。在这过程中,总线的性能大大降低,甚至可能不能正常工作。所以,在总线两端调配的电阻就显得非常重要,电阻的好坏直接关系到总线传输的性能。 多点连接总线会降低信号的传输时间 在图5中,由于信号可以流经多点连接总线上的每一个负载,所以一方面信号的传输时间会增加,另一方面,由于每个负载产生微小的回波使得信号失真。

图5:多点连接总线会降低信号的传输时间
图6中,由于负载的增多,多点连接总线上的传输信号速度降低,波形有一定的失真。

图6:负载越多,失真越厉害
总线的限制 系统总线频率也由信号技术决定 目前在系统总线中使用多种电子信号技术:TTL,ECL,RSL,SSTL,Rambus Yellowstone,GTL+,AGL+等。这些信号技术主要分为两类,一类是提供高频率,低电源消耗进行设计;另一类主要是兼容各种主流或传统的设备进行设计。在图7中,系统使用两个不同的电压,分别来表示高,低逻辑电平。
 图7:信号技术
如果总线的一端要发送信号,那么发送信号的一端会改变电压的状态,从低电压切换到高电压(或者高电压切换到低电压)。而电压改变的大小和时间的比值称为“回转速度”(Slew Rate),回转速度越快,信号的信号处理也就越及时,但是在大部分的系统中,电压不可能快速的进行切换,所以,传统的做法是降低高低电压之间的差值,来提高回转的速度。 如果在并行的总线发送信号,信号是否会同时到达各并行总线? 在图8中,存在着这样的两种情况,信号传递到B终端的时间要比A终端长,而且通路2也要比通路1长,这样的话,通路A和通路B的“回转速率”就会有所不同,因此信号到达终端的时间也不尽相同。
 图8: 信号不同的到达时间
板卡上的信号线为什么要曲曲折折? 因为在所有的传输方式中,信号本身的特性决定了传输总线必须有一定的长度。但是随着制造工艺的成熟,PCB板卡越来越小,而元件越来越多。系统的总线必须通过曲折蜿蜒来达到一定的长度。

图9。曲折的总线设计
回转速度相关问题 总线越宽,“回转速度”性能越差。

图10:总线越宽,“回转时间”越长
图10中,红线之间的便是整个系统电压切换的总时间,也是“回转时间”,在并行的总线中,只有所有的总线电压都切换完成,才能进行下一步的信号处理。在高频总线上,如果“回转时间”过长,那么系统远远不能发挥总线本身高频率的优势。 总线长度的不同,流经的负载数不同是造成过高“回转时间”的主要原因。 Elastic I/O 对回转时间的处理 在图11中,传统的并行总线由于长度的不同而导致“回转时间”的差异。

图 11: Elastic I/O用于降低回转时间的设计
IBM的Elastic I/O总线最在1999年的Hotchips论会上提出,它能够较好的处理由于总线长度的不同而带来的“回转时间”问题。Elastic I/O设计的核心就是对于不同的总线长度,补充一定比特数据,从而使信号基本能够同时达到接收端,这些补充的比特信号甚至可以晚于信号的发送,而先于信号到达。在上一代的POWER 4处理器中,Elastic I/O的时钟频率为500MHz。在PowerPC 970处理器中,Elastic I/O 的频率和内存控制器的频率相当,因此可以大大提高系统的性能。 总结: 通过本文,我们基本了解了Power PC内部的连接总线,Elastic I/O总线使用单向的单点连接的总线设计,因此它可以大大降低由于“回转时间”而带来的延时,从而能够提高系统总线的频率。 在当今的总线设计上,点到点的连接总线和多点连接的总线设计是两个主要的发展方向。前者专业应用更强,性能越高,但是费用也越高;而后者费用较低,由于良好的兼统性受到广大用户的欢迎,市场占有率也较高。但也正是兼容性这个问题使得总线的性能没有较大的发展潜力。对于多点连接的总线设计,目前使用DDR内存来降低“回转时间”,从而提高系统的性能。 |