制造材料要革命
工艺制造中的线宽不能无限缩小。由于铝材料与其他材料相比电阻率并不很低,如铝电阻率为17,而铜为10.7,银为9.9。这样,线宽越小,电阻率的作用就越突出,使晶体管的静电电容增加,延缓晶体管的状态切换速度,从而影响微处理器频率的进一步提高。此外,由于电阻率相对较高,而导致功耗升高,热量增加,直接威胁着CPU的安全运行。过去多数芯片都采用铝线,铝的导电性虽不如铜,但因为过去的芯片尺寸大,而且铝不会伤及硅片(但铜会),价格又比金便宜得多,自然是一种极好的选择。但现在的晶体管越来越小,电阻率和阻抗的影响也越来越大,已经把铝逼到了其使用的极限。
随着CPU主频向GHz时代的推进,铝工艺由于受到自身电气性能的限制,已逐渐不能满足高主频CPU的需要,而长期处于实验室阶段的铜工艺终于取得了突破性进展,有望取代铝工艺而成为CPU制造的主流技术。铜工艺最大的好处是使CPU在高频率下的运行更加稳定,也就是说,对于同样主频的CPU,采用铜工艺其性能将比采用铝工艺更高或者更稳定。
铜技术就是采用铜这种优良的导体来代替铝用于集成电路中晶体管间的互联,从而可以在相同条件下减少40%的功耗,并能实现更快的主频(500MHz甚至1GHz)。铜技术有以下3个方面的优势:铜的电阻小,发热量小,从而可以保证处理器在更大范围内的可靠性;采用0.13微米以下及铜工艺芯片制造技术将有效地提高芯片的工作频率;能减小现有管芯的体积。
另外,为减小晶体管的静电电容,使晶体管的状态切换速度加快,以降低功耗,提高微处理器的速度,对传统方式制造微处理器CMOS方法进行了改进。以往是在整块硅晶片上,直接将硅作为基板来制造各个晶体管。现在,IBM创新了一种绝缘物上硅芯片技术(silicon on insulator,SOI),它是在硅晶片上先嵌埋一层二氧化硅绝缘物,再以这一绝缘物作为基板来制造各个晶体管。
SOI技术的最大特点在于能在线宽不变的情况下,使工作速度提高约35%;在工作速度相同的情况下,可使功耗减小50%~65%。而取得这样明显的效果,其制造成本仅提高了10%。但由于在元件制造以及电路设计上还面临着许多难题,因此,SOI技术长期以来未能成为制造集成电路的主要技术。
其中最大的难题是用不太高的成本制成高质量的嵌埋有二氧化硅的晶片,由于使用了注入氧隔离法,解决了制造问题。注入氧隔离法是用高能注入装置把大量的氧离子注入硅晶片表面,然后经过几个小时的退火,形成二氧化硅的嵌埋层,同时因注入氧离子而受到损伤的硅层也恢复成原来的单晶状态。
SOI方法的优点是:使电路更加完善,可用数量较少但更为复杂一些的逻辑门来实现同样功能,或用同样数目的复杂一些的逻辑门来实现更高的功能。壳体内元件的密度可以提高,采用SOI技术由于元件同基板绝缘,所以对元件的配置限制不严。用SOI元件时密度可提高5%左右。
目前,IBM已在0.22微米的CMOS-7S制造过程中采用了SOI技术和铜连接线。只要略加修改,7S过程就既可用传统晶片也可用SOI晶片制造。目前,使用SOI技术的0.18微米的CMOS-8S过程也已投产,并可提供设计为0.15微米、使用铜连接线和SOI技术的制造过程及0.13微米的9S过程的SOI版微处理器。
Intel将在今后改用SOI技术。AMD已就采用0.18微米铜连接线的Hyper MOS6的制造同Motorola合作,据悉,Motorola也正准备使用0.18微米的SOI技术。
据称,采用铜连接线和SOI两种技术将使性能提高30%~55%。用0.22微米过程制造的LSI的性能足以同其他厂家用0.18微米制造的LSI相匹敌。铜技术和SOI技术的结合,正引发一场微处理器制造的革命。
结构设计有创新
1.流水线技术
采用流水线技术的CPU使用指令重叠的办法,即在一条指令还没有处理完时,就开始处理下一条指令。典型的流水线将每一条机器指令分成5步,即取指、译码、取操作数(或译码2)、执行、回写。在理想条件下,平均每个时钟周期可以完成一条指令。而所谓“超级流水线处理”是将机器指令划分为更多级的操作,以减轻每一级的复杂程度。在流水线的每一步中,如果需要执行的逻辑操作少一些,则每一步就可以在较短的时间内完成。
Pentium 4的超级流水线为设计和制造出更快速的CPU提供了有利的空间。如PentiumⅢ流水线的级数有10级,而Pentium 4有20级。使用超级流水线的好处就是比较容易提高时钟频率,得到更高频率的处理器。缺点是每个行程完成的任务少了。
超级流水线技术的另一个不太好的方面是它对分支指令的处理。当一条分支指令不能被预先计算时,处理器必须重新开始。由于一条指令被分为20个步骤来完成,如果在第18个步骤的处理过程中发生了错误,CPU就得回到第一步重新进行处理,这样就得多“等待”18个脉冲周期的时间才能完成这条指令。另一方面,当一条新指令的运算必须用到其他指令的运算结果时,如果使用20步长的运算流水线,则这条新指令要“等待”20个脉冲周期的时间才可能开始进行运算。在Pentium 4上的20级流水线增加了处理器执行操作所用的时间。其解决方法是提高它的分支运算能力和加强执行跟踪缓存。
2.分支预测和推测执行技术
分支预测和推测执行是CPU动态执行技术中的主要内容。动态执行是目前CPU主要采用的先进技术之一,其主要目的是为了提高CPU的运算速度。推测执行是在分支预测基础上进行的。由于程序中的条件分支是根据程序指令在流水线处理后的结果再执行的,所以,当CPU等待指令结果时,流水线的前级电路也处于空闲等待状态,这样必然出现时钟周期的浪费。如果CPU在前条指令结果出来之前就能预测到分支是否转移,那么就可以提前执行相应的指令,从而避免流水线的空闲等待,以提高CPU的运算速度。但另一方面,一旦前指令结果出来后证明分支预测错误,那么,就必须将已经装入流水线执行的指令和结果全部清除,然后再装入正确指令重新处理,这样反而慢了。
在Pentium 4中,可以说分支预测是超级流水线能够有效工作的关键。分支预测虽然能够引入乱序随机执行,以提高指令的执行效率,但并非能够百分之百地预测成功。一旦预测失败,CPU将耗费更多的指令周期以重新安排指令的执行顺序。这将增加I×C×T值,从而降低CPU的性能。为了减少预测失败,Intel在Pentium 4的NetBurst微核心中改进了指令预测机制,采用高级动态执行引擎(advanced dynamic execution engine)和指令执行跟踪缓存(execution trace cache)。指令跟踪缓存加速了从L2 Cache送来的经过解码的指令,并能够跟踪指令的执行情况来更好地利用宝贵的L2 Cache空间,这就能够传递更多的指令到执行单元,并减少由于预测失败而带来的指令恢复时间。高级动态执行引擎的功能是动态地为执行单元提供执行指令,以防止执行单元的执行停顿,如在Cache没有命中的情况下,必须从系统内存中重新读取数据而造成的执行停顿。这时动态执行引擎就能将那些不需要等待数据的指令先送到执行单元执行,从而提高执行单元的效率。NetBurst微结构具有提供126个指令的超大指令窗口,相比之下,P6级的CPU只有42个指令窗口。同时,高级动态执行引擎具有增强的分支预测功能和4KB的分支目标缓存,这是使NetBurst微核心能最大可能地避免分支预测失败设计的关键,能比P6级CPU减少约33%的分支预测失败。
提高CPU的性能,进一步降低I×C×T 的另一个途径是降低C,直接减小单个指令的执行周期。这部分功能由NetBurst微核心的快速执行引擎实现。Intel采用了一种时钟缓冲器(clock buffering)电路,使NetBurst的ALU(arithmetic logic units,算术逻辑单元)能够在2倍于CPU主频的速度下工作,从而使ALU在执行某些指令的时候只需要原本所需时间的一半。也就是说,一颗主频为1.4GHz的Pentium 4 CPU,其核心计算部分其实是2.8GHz。如此高的执行速度,需要更快速的L1缓存与之相配合,NetBurst微内核采用了比Pentium Ⅲ更高速的8KB容量的L1缓存,使数据和指令进出L1缓存的速度几乎提高了1倍。
NetBurst微内核采用256KB的L2缓存,在1.4GHz的主频下将获得44.8GB/s的高带宽,是Pentium Ⅲ的2.8倍。考虑到缓存的命中率,Pentium 4的L1和L2缓存的整体速度将是Pentium Ⅲ内部缓存系统速度的1.8倍。
有效地在特定的应用中减少指令的数量也是提高性能的一种途径。Intel在MMX指令集中引入了单指令多数据技术(single instruction multiple data ,SIMD)的64位整数计算指令集,在Pentium Ⅲ中采用了128位单精度浮点运算指令集SSE,在Pentium 4中,Intel采用了SSE2指令集,共有144条指令,以优化128位整数运算和128位双精度浮点运算。
此外,Intel所开发的i850芯片组采用Quad Pumping技术将内存与CPU之间的数据传输率提高到400MB/s,从而将带宽提高到3.2GB/s,使Pentium 4能够以3倍于目前1.06GB/s的系统带宽运行。(佟平 史锋)
|