在本页阅读全文(共5页)
我常常用工厂车间与工人来比喻CPU的流水线设计,虽然也许不够确切,但也还算直观。如果用它来形容NetBurst的思路,那就是一个“大舰巨炮”主义下的设计。
为一块CPU(工厂)提升处理能力,最重要的是什么呢?解决这个问题有着很多的思路,而NetBurst的思想很明确,那就是提升处理器流水线的级数,这个做法相当于是在工厂里塞进大量的工人。从最初的Willamette,到末期的Prescott,Intel不断地增加CPU的流水线级数,最终达到了惊人的31级,这比上一代的图拉丁PentiumⅢ已经多了3倍!
增加流水线级数的好处是显而易见的,它使得CPU潜在的处理能力有着大幅提升,但也有着很多缺点。我们再拿工厂做例子:如果Prescott是一条流水线,这条流水线上有31位工人,每个人都负责相对较轻的任务,例如第一个人打开盖子,第二个人拧上螺丝,第三个人......流水线越长,运算就越简单。这样的设计对付大数据的任务非常有效,但是对付小数据量的简单任务时,则有“杀鸡用牛刀”的味道。事实上,我们日常用到的指令,多数都是简单指令,在处理这样的指令时,超长流水线的设计会存在很大的延迟,单周期处理的指令数有限,效率不高。为了改善这一状况,唯一的办法就是提高流水线的速度,减短处理的周期,这样做的直观的表现就是CPU的频率大幅提升。
简单地总结一下,NetBurst的设计思想无非是三点:低效(相对)、高频、长流水线,对于“通用型处理器”来讲,这样的设计可以在保持高性能的情况下兼顾各种情况下的运用。单纯就思路来说是很容易说明的。但要将这个想法转化为现实,却是一件困难的事,就当初的设计水准来讲,为NetBurst从纸面到成品的转变,Intel付出了长期而艰辛的努力。
本文导航

