![为什么随着 CPU 时钟频率的增加,产生的热量也会增加?](https://linux22.com/image/1244260/%E4%B8%BA%E4%BB%80%E4%B9%88%E9%9A%8F%E7%9D%80%20CPU%20%E6%97%B6%E9%92%9F%E9%A2%91%E7%8E%87%E7%9A%84%E5%A2%9E%E5%8A%A0%EF%BC%8C%E4%BA%A7%E7%94%9F%E7%9A%84%E7%83%AD%E9%87%8F%E4%B9%9F%E4%BC%9A%E5%A2%9E%E5%8A%A0%EF%BC%9F.png)
整个多核争论引发了我的思考。
生产两个内核(在一个封装中)比将一个内核的速度提高两倍要容易得多。这究竟是为什么呢?我在 Google 上搜索了一下,但发现大多数超频主板的答案都非常不精确,没有解释底层的物理原理。
电压似乎影响最大(二次方),但如果我想要更快的时钟频率,是否需要以更高的电压运行 CPU?另外,我想知道半导体电路在以特定时钟速度运行时究竟为什么会产生热量(以及会产生多少热量)。
答案1
时钟每次滴答作响时,您都会对一组电容器进行充电或放电。给电容器充电的能量为:
E = 1/2*C*V^2
其中C
,电容为,V
是充电电压。
如果你的频率是f[Hz]
,那么你f
每秒就有周期数,你的功率是:
P = f*E = 1/2*C*V^2*f
这就是功率随频率线性增加的原因。
可以看出,它随电压二次方上升。因此,您总是希望以尽可能低的电压运行。但是,如果您想提高频率,您也必须提高电压,因为更高的频率需要更高的工作电压,因此电压随频率线性上升。
因此,功率上升如同f^3
(或如同V^3
)。
现在,当你增加核心数量时,你基本上就是在增加电容C
。这与电压和频率无关,因此功率随而线性上升C
。这就是为什么增加核心数量比增加频率更节能的原因。
为什么需要增加电压来增加频率?电容器的电压会根据以下情况变化:
dV/dt = I/C
电流为I
。因此,电流越大,晶体管栅极电容充电至“导通”电压的速度就越快(“导通”电压与工作电压无关),晶体管导通的速度也就越快。电流随工作电压线性上升。这就是为什么需要增加电压来增加频率的原因。
答案2
基本上:
- 当对晶体管施加更大电压时,晶体管的切换速度会更快。
- 现代 IC 在从一种状态切换到另一种状态时(在时钟滴答声上)消耗大部分电量,但保持在同一状态时不消耗任何电量(嗯,有泄漏,所以不是完全没有电量),所以切换速度越快,每秒切换的次数越多,消耗的电量就越大。
一本关于处理器架构所有细节的非常好的书:David A. Patterson 和 John L. Hennessy 编写的计算机组织和设计。
答案3
每次晶体管切换状态时,都会消耗电流。频率越高意味着切换越快,浪费的电流越多。所有事物的阻抗都会将其转化为热量。P=I^2*R 等等。而 P 是 V^2/R。不过在这种情况下,您确实希望能够计算出一段时间内的平均 V 和 I,并且它将是电压和电流的二次函数。
答案4
嗯,在电力中,有两种功率,无功功率和实际功率。有些人称无功功率为动态功率。无功功率永远不会被消耗或损失。例如,如果理想电容器通过理想无损导线连接到交流电压源,则电容器将充电和放电,在一个周期内从发电机获取能量,并在下一个周期将能量返回给发电机。净损耗为零。
然而,如果导线不是理想的,且具有电阻,那么在电容器充电和放电期间,能量就会在导线中耗散。这种耗散的功率是实际功率损耗,无法恢复。随着时钟频率的提高,充电和放电速率也会提高,从而增加导线中的功率损耗。
晶体管的栅极就像电容器一样。随着时钟频率的提高,更多的无功功率被传送到电容器。电阻线中损耗的功率部分也会增加。