从4004到core i7——处理器的进化史-CPU构成零件-4
上一帖我们说到了IC的性能取决于R与C的乘积。看到留言后我发现还必须补充一个遗漏的事实:当器件的尺寸变得越来越小,连线在IC中越来越成为一个瓶颈。这是由于一个非常简单的原因:连线相对于器件的尺寸来说越来越长了。所以,EDA提供的placement&routing功能显得越来越重要。显然,你不可能手工布置几百万个cell的位置。在IC设计中,长的连线一般用下面的传输线模型来表示:
学过通信的同志一定对这个符号不陌生。解一个PDE之后,我们发现信号在传输线中是以波动的方式传播的。在这里我不讨论这个解的具体形式了。
顺带提一句,IC中的第一层,也就是最靠近硅表面的连线一般不是金属,而是多晶硅(poly-silicon)。
好了,在这个帖子中我将要介绍最后两个重要的概念:功耗以及比例缩小。作为第二章的结尾,在第5个帖子中,我们还会顺道看一看CMOS以外的一些设计模式。
我们还是回到上一个帖子中的反相器上:
这张图上省去了一切多余的器件。PMOS管输入端接地表示这是一个非常理想的‘0’输入。
所谓功耗,就是指电路向直流电源索取的能量。
假设CL从0开始充电。我们可以算出:
这个反相器的输入假如再从0->1,那么可以想象CL上的电荷在足够长的时间之后就会全部被泄放到地里面去了。当然,这个放电的过程仅仅是电容储能的释放,并不向直流电源索取能量。于是,我们很自然地想到:
其中P的下角标dyn代表的是dynamic。记得吗,CMOS电路在静态时是无功耗的!
于是我们可以知道,数字电路的功耗取决于频率、寄生参数、供电电压、翻转概率这四者。
而结合前面讲过的CPU超频的例子,我们知道为了保证正确性,频率一般要正比于供电电压。于是我们惊愕地看到:
功耗正比于频率的三次方!!!
这种增长太可怕了。尽管我们可以通过比例缩小来减小CL,但仍不足以抵挡为了追求性能提升频率而带来的非线性增长!
所以你应该明白为什么CPU上要加个大大的散热器,并且为什么现在主流的发展方向是多核,而不是高主频了吧。我再贴一张著名的图,你就对CPU功率密度的增长有概念了:
注意8086到80286到80386的功耗不升反降。其中286->386主要是由于比例缩小,8086->80286的进步我们后面还会讲到。
讲到这里你也明白了:
设计上的低功耗很多时候并不是为了节约能源,而仅仅是保证芯片不要熔化罢了。
(看看上面这张图,你就明白煎鸡蛋神马的简直是太正常了。)
电池供电的携带全尺寸CPU的设备也是很最近才有的事情呢。
好了,我终于讲到最后一个基本的概念了:比例缩小(scaling down)。
为什么我们总是在一块小小的硅片上集成越来越多的晶体管?一般来说主要有2个原因:
1.我们需要更多的晶体管。对于CPU,更多的核,更大的缓存,这些无疑比以往任何时候都多得晶体管。现在的处理器最多可以达到40亿只晶体管,还不包括缓存。
2.我们需要更快的速度。正如你要在下面看到的那样,比例缩小可以提高器件的反应速度。在IC的世界里,快就是好。在速度面前,面积和功耗统统靠边站。我们可以忍受液氮冷却和亿美元数量级的流片费用,但不能忍受脱离摩尔定律的CPU性能。(听起来是不是很黑暗...)
看看下面这张表格,你就会明白比例缩小究竟为我们带来了什么。注意,这张表中仍然以上面的反相器为例:
表中的S=Scaling Factor>1,为了便于理解可以想象成S是将原有器件完全按比例压缩的比例值。
注意用红圈全出的项。intrinsic delay代表的是反相器不接任何负载时的延时,power density代表的是将器件紧密排列后整体的功率密度。
现在你应该明白了,比例缩小在让CPU变得越来越快的同时也让它变得越来越烫。
- 嵌入式系统设计方法的演化——从单片机到单片系统(01-28)
- Proteus在单片机教学和科技制作中的应用与实践(03-02)
- FPGA 原型设计:软件最重要!(03-21)
- 电子系统设计自动化方法和设计环境的研究(07-21)
- SoC:IP是新的抽象(10-24)
- 鳍式场效晶体管寄生提取的复杂性(12-26)