從電路分析的角度解釋,為什麼 CPU 頻率越高發熱越大?


實際cpu內部都是CMOS的與非門,這裡為了便於說明使用CMOS技術的非門來說明問題。本質是一樣的。

如圖,一個非門後面串聯一個邏輯門當負載(我們考慮動態特性的時候肯定是和負載連接才有意義的,因為單單的理想CMOS結構是沒有靜態電流的,要麼上面的PMOS導通,要麼下面的NMOS導通,所以只有動態損耗)。

這樣一來,就可以得到等效電路。負載門的輸入相當於一個Ceq。當T&>&>RonCeq時,畫出波形圖。VI=Low時,Ceq充電,VI=High時,Ceq放電。

整個過程很明顯,電源Vs只有在前半個周期做功,後半個周期為Ceq釋放在前半個周期存儲的能量。

所以,一個周期內,我們只需要計算前半個周期電源釋放的能量,就是一個周期內電源釋放的總能量。最後,通過數學推導,得到Pdynamic_avg=W/T=f*c(Vs^2)

從公式可以很清楚的知道,Pd和f成正比,所以頻率越高,消耗的功率越大,因為理想的電容本身是不消耗能量的,所有的能量最終都消耗在Ron上,所以CPU就越熱。

另外可以看到,Pd和電源電壓Vs的平方成正比,所以,在某種意義上,降低電源電壓,是降低功耗的更有效的手段,所以我們從最早的+15V=&>+5V=&>3.3V,往越來越小的電源電壓發展的原因。

另外,關於@丁大頭提到的,嚴格來說的確是線性關係,因為我們很難得到真正的階躍輸入波形,所以即使是CMOS門,也有很短的一段時間,上下兩個管子同時導通,也就是說有一個電源到地經過PMOS和NMOS的通路,這個短暫的電流所產生的功耗和之前分析的功耗的和才是真正的動態功耗,當然還要算上靜態功耗(由漏電流產生的功耗),才是真正意義上的總功耗。

之所以intel主頁上面3.3G和2.2G主頻的處理器,TDP幾乎是和頻率成正比的。這正說明了靜態功耗相對於動態功耗而言可以忽略,而在動態功耗中,瞬時的短路電流產生的功耗也不是起主導地位的。


回答這個問題,需要從器件的物理本質上著手。CPU內部的關鍵單元是晶體管,晶體管是有幾種工作模式的。拿BJT來說,它就有飽和區,截止區和線性區三個區域。在模擬電路中大量運用線性區,因為需要線性放大。而CPU屬於數字電路,大量運用飽和區(器件導通)和截至區(器件斷開),也就是工作在開關狀態。通俗的說就是不斷的導通和斷開的狀態。

那為什麼頻率越高發熱越大呢?

首先來說說理想的開關狀態:器件導通時,導通電阻等於0,那即使器件流過電流,功耗也是為0的;器件截止時,相當於開路,電流為0,功耗也是為0的。也就是說,如果器件很理想,CPU是不耗電的。

關鍵是,半導體的工藝限制,器件達不到理想的開關狀態,首先導通時,導通電阻不為零,電流流過產生功耗;截止時,不完全等於開路,也會有微弱的漏電流,產生功耗。所以CPU總是要耗電的。

除了這兩種穩定狀態外,還有一種狀態就是從導通到截止或者從截止到導通時的過渡狀態。而這個過渡狀態的存在使得器件不再工作在開關區,而進入了線性區。工作在線性區的器件功耗是要比工作在開關狀態的器件大得多的。這就說明CPU的功耗主要來自其內部的晶體管開關狀態切換的過渡過程中(相當于于方波的上升沿或下降沿)。

結果很瞭然,對於相同的一段時間,頻率越高則上升沿和下降沿越多,也即是晶體管的過渡狀態更多,當然功耗也就越大了。

當然,還有一點。CPU內部的電路結構很多是採用互補晶體管對,就是兩個晶體管理論上是不同時導通或截止,但是由於不理想,兩個晶體管通常在開關的過渡過程中出現同時導通的現象,那這個時候相當於瞬間的短路,造成電流瞬間增大,由此會產生功耗,這部分功耗也是跟過渡狀態有關,所以,也還是頻率越高,這部分的功耗更多。

現在的工藝進步很快,如果和以前的工藝相比,即使是相同的頻率,現在的CPU功耗也更小,因為現在的半導體工藝使得這種過渡狀態的時間更短,所以消耗的能量也就更小。也就是說現在的CPU更接近理想狀態。

以上。


我們完全可以運用初中知識理解這個問題.

現在的集成電路是charge based.

集成電路本質是對電容的運用,電路的頻率取決於電容充放電的速度,充放電的速度取決於電流的大小.

因此,晶體管中電流越大,電容充電速度越快,IC速度越快.

電流大了,熱功耗就大了,這是一個很基本卻很重要的問題.


摩擦生熱,越快越熱。

摩擦,摩擦。。。


其實並不是頻率越高發熱越大的,現在的手機CPU有G級別的頻率,發熱比十年前的M級別CPU還低。

不同的架構,發熱不一樣,不同的製程,發熱也不一樣。

如果其它條件一致,僅僅頻率不同的話,那麼是由如下兩個原因導致的

一是頻率高了內部電路動作更多了,功耗增高;

二是CPU本身是一個電容性強的電路,頻率高了電導增高,功耗增高;

而CPU本身輸出功率是很低的(數字電路都這樣,否則也就不會有阻抗匹配一說了),功耗大部分最後變成發熱,於是發熱增加了。


cmose和bjt的區別在於,bjt工作時一直有電流流過,cmose則只在導通到截止或者從截止到導通時的過渡狀態下有電路流過,所以頻率越高,單位時間內這種狀態轉變越多,功耗也就越多,發熱也就越大。


如果把CPU看作一個電路原件(電源端,信號輸入端,信號輸出端)。假設它的等效阻抗為Z(jωA+B),那麼可知,阻抗的大小l Z l是隨著角頻率(ω=2πf)的增大而增大的。發熱功率為I2×l Z l。其中I為CPU的平均消費電流。


數字電路開關功耗的公式 P=F*V^2*C/2

內部功耗的公式 P=F*Pinternal

都是和頻率F成正比的。


電動力學推導導體里電磁場的傳導,記不清了,好像有個虛部的結果,與頻率成正比,就是傳輸損耗。只要在介質中傳遞電磁場,都要遵從這個規律。所以高頻信號都要用波導傳輸,高頻大功率的發射要用速調管,盡量在真空條件下,傳輸電磁波,發射信號的時候調製真空管中的電子注(大號電子槍大量的自由電子),就這樣為了幾萬瓦的信號,散熱系統也很巨大。


推薦閱讀:

凝聚態物理專業,以後想進半導體公司,要做什麼準備,參考什麼書,為以後筆試面試做準備???
作為一名IC設計工程師,在設計過程中你最依賴EDA工具的哪些功能?
邏輯電路是如何通過電子元件實現的?
synopsys,mentor graphic和cadence這三家公司對比?各方面有什麼差別?
想投身數字IC設計方向,碩士階段應該怎麼學習?

TAG:中央處理器CPU | 物理學 | 半導體 | 電路 | 電子 | 電腦硬體 |