荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: Shining (天上星星亮晶晶), 信区: Hardware
标  题: 看看INTEL的Willamette
发信站: BBS 荔园晨风站 (Fri Mar 17 14:33:10 2000), 转信

  Willamette是披着羊皮的狼吗?Willamette是INTEL下一代CPU的代号。他是继

P6家族后新型CPU家族中的第一位成员。INTEL的P6家族是从几年前的Pentium Pro

开始的,她为INTEL的新系列CPU打下了基础。Pentium Pro有多种时钟频率和L2的

配置。它的内部L2是与CPU核心速度相同的。随后的继承者Intel Pentium II,在

结构上没有什么大的改变,仅加入了MMX指令,但却将L2的速度降为了CPU的一半。

在后来的 Intel Pentium III则在原来的P6核心上加了一些改进。例如,增加了

SSE指令,即流动性的SIMD扩展,极大的增强了CPU的浮点能力和3D应用的处理能力

,同时加入了INTEL系列号。而最近的Intel Pentium III Coppermine则又将L2的

速度回归到CPU核心的速度了。不过,当时的Pentium Pro的L2是与CPU在一个包装

里,那时候是需要TAG RAM的,而到了铜矿则将L2和CPU进行了完全的ON DIE集成,

不但大大降低了CPU缓存的延迟,同时也有效的节约了成本。

  Intel的Willamette CPU则是基于一个新的32位的微结构。同时装备了新的

SSE2、ON-DIE的L2缓存、还有一些能让该CPU运行在高速下新的改进。因此,在传

送性能上将明显的超越IA-32的CPU,例如PII/PIII。


  Intel的SSE2

  Willamette中加入了新的SSE2指令,包括了新的76条SIMD指令,和68条增强型

的整数指令。所以,现在总共有144条SIMD指令来增强CPU的浮点能力以及多媒体和

3D的能力。从程序师的角度看,Willamette的设计模型与原来的MMX技术和

PII/PIII中用到的SSE模型没有什么很大的区别。但是,设计师有很大的弹性空间

,新的SSE2指令不但要扮演浮点和整数运算的角色,同时还要处理从MMX寄存器中

打包过来的整数流。引入Willamette的新的SIMD指令同时包括了浮点指令和整数指

令,他们的目的是要打破现在X86CPU中的主要瓶颈:X86的浮点算数运算单元

--X87FPU。如果我们进一步的看看X87FPU的话,我们可以发现这越来越老的FPU已

经在兼容性方面存在了相当严重的局限性。所以,使用SSE2来替代X87FPU是一条很

好的解决瓶颈的路。另外,如果INTEL可以找到足够支持SSE2的软件开发商并给与

他们足够的动力来开发使用SSE2的浮点操作的软件,那么Willamette SSE2 FPU部

分所提供的浮点性能将是以前X87FPU所提供的浮点性能的十倍!

  长管道:

  Willamette装备了有20个阶段管道的指令。这是目前X86CPU中所装备的最长的

管道。INTEL已经找到了一个办法可以让Willamette运行在一个极高的频率下,将

超过1.5GHz。通过替换掉与时钟持续时间相反的阶段数,长管道可以用来增加CPU

的频率。一个10阶段的管到可以将一个指令分为10步来做,并且在10个时钟周期内

处理完整个指令。Willamette则用20个时钟周期来完成一条指令。这样一来,每个时钟周

期内所需要处理的指令就会变的非常小,而单个时钟周期也就相对的变短。在一条

指令处理上所需要的时钟周期数称为指令延迟。拥有一条长的管道意味着一个长的

指令延迟。而了减小从主存中读取每一条新的指令所引起的性能损失,所有现代的

X86CPU都使用了指令缓冲。由于更长的管道与所导致的更长的指令延迟,缓冲中的

指令的更换就需要更长的时间。所以,在缓冲中就必须攒了足够的指令后进行处理

,才能保证CPU的有效工作。这样一来,一个管道数量变少的CPU反而需要一个更大

缓冲了。

  高速的ALU

  众所周知,整数运算都是在ALU中进行的。所谓ALU就是算数逻辑单元。(

Arithmetic Logic Unit),Willamette的ALU使用了一个新的方法来减少某些整数

指令的延迟从而弥补了长管道的缺点。通常,一个ALU是在一个时钟周期的上升沿

来处理一条指令的:但是Willamette的ALU则是上升沿和下降沿同时可以处理指令

。这样就有效的双倍的处理了某些整数指令,加快了处理的速度。

  跟踪缓冲

  另外一个有助于性能上的提高的设计是跟踪缓冲。跟踪缓冲用来储存每一条指

令在执行时候的顺序的。例如,如果指令A从100的位置跳到了指令B在200的位置。

那么跟踪缓冲则会将第二条指令B恰好在指令A后面的位置记录下来。所以,在

Willamette中使用跟踪缓冲后,通过记录指令的正确位置大大简化了处理的步骤。

另外,对于所有的长管道的CPU来说,如果分支预测越准确的话,则CPU的性能表现

越好。

Willamette分支预测能力就是有效的结合目前所有分支预测的有效方案,并通过改

进以前P6家族的分支预测运算法则而最后得出的。

  虽然, Willamette将很有可能是第一个冲破1.5 GHz的CPU,但是由于其长的

管道流水线和长的指令延迟,在实际表现上届时和铜矿相比未必就能够有压倒性的

优势。但是,如果INTEL届时可以使软件商们开发出大量的支持SSE2的软件的话,

 Willamette在运行这些软件时候的速度和能力可不是现在或即将推出的CPU能够比

的。当然,开发出支持SSE2的这些软件和重写应用程序是需要时间的。但是,

INTEL在过去的时间内已经证明了他的CPU获得了绝大多数软件商的良好支持,所以

我们认为这件事情是不难办到的。


综上所述,INTEL已经在他的 WillametteCPU中装备了一些具有革命性的解决方案

来使 Willamette达到或超过1.5GHz。新的SSE2指令,长的管道流水线,跟踪缓冲

,以及改进的分支预测的运算法则等等这一切,都可以证明 Willamette确实是一

头披着羊皮的狼!我们还要密切注视INTEL开发 Willamette的动向,因此请朋友们

密切注意我们的报道。


--


   那天,黄昏,开始飘起了白雪
   忧伤,开满山岗,等青春散场
   午夜的电影,写满古老的恋情
   黑暗中,为年轻歌唱......

※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.29.99]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店