2022年1月3日 星期一

總是略偏高估的漏電流功耗。

半導體製程在進入180nm製程以下後,低功耗逐漸成為晶片設計不可忽略的重要技術。
 
晶片功耗粗略分為動態功耗和漏電流功耗兩部分,動態功耗與溫度無關,而與電壓、頻率、負載相關,可以透過電壓頻率調變來調整,例如晶片監控電路如果發現自身溫度過高,會降低電壓和頻率來減少散熱壓力。

漏電流功耗則相反,與頻率無關,與溫度呈指數關係,一旦因為某些原因致使溫度升高,漏電流功耗會跟著增大數倍;又當漏電流功耗劇烈增加,進一步導致晶片溫度升高。


一些運算系統操作在極端性能模式場景時,漏電流功耗甚至會高達總功耗的三至五成,更麻煩的是隨著製程不斷微縮,漏電流功耗愈趨嚴重,在整體功耗的占比愈來愈高,即使在效能模式下,漏電流功耗也無法降低。
 
既然漏電流功耗那麼嚴重,如何準確估算,並準備適當的散熱等應對措施應當是晶片設計的一大議題。
 
但與之其嚴重性相對的是,在估算漏電流功耗這方面,卻多半只是粗略估算,再搭配經驗常數倍率作為散熱標準,換言之,簡單略偏高估即可作為參考值。
 
基本上最有效減少漏電流功耗的方法還是盡速關閉電源,可是並非所有場景都適用,因爲從關閉電源到重新啓動的延遲時間相對較長,許多流程和設定都得重新配置和等待穩態,另外放置電源開關也需要額外成本,在此先不討論此方面做法。
 
以半導體製程中的標準元件爲例,除了眾所皆知的製程偏移外其實漏電流功耗和元件處在什麼狀態有關,某一元件具備多個輸入接口時,將每個接口對應值排列組合後,對元件而言可能有高達數十種狀態,而每種狀態的漏電流當然也略有差異。
 
因此當我們想估算漏電流功耗時,最大問題是如何確定數以億計的每個元件的製程偏移實際狀態及其對應漏電流功耗值。
 
事實上在粗略估算時,可以從資料庫中輕易找到各種類元件的漏電流功耗參考值,而且多半和其處在什麼狀態無關,一般來說該值來源和估算方式主要分為兩種:
一、 將所有狀態中具備最大漏電流功耗值者視為該元件的統計狀態,再乘上全晶圓平均製程偏移倍率常數
二、 將所有狀態的漏電流功耗值加總後取加權平均值,再乘上全晶圓平均製程偏移倍率常數
 
顯而易見,第一種方法會偏高估,不過好處是以此為參考值做散熱措施會比較安全;第二種方法相對精確一點,倒不是說每個元件真的大都處在漏電流功耗平均值的狀態,而是既然難以統計,乾脆就用平均值或稍作調整以加權平均做為參考再乘上全晶圓平均製程偏移倍率常數亦是此概念
 
目前主流估算方式比較偏向第二種我不否認如此估算漏電流功耗時存在很多假設和簡化,然而這並不妨礙其參考值的有效性。
 
原因在於相同製程偏移下的相同種類元件處在不同狀態時,對應到的漏電流功耗值差異不大,故所謂粗略估算造成的誤差,只要不是犯下搞錯製程偏移和元件種類這種誇張錯誤,不太可能出現和實際值有動輒三成、五成甚至數倍這種數量級的落差。
 
所以在面對漏電流功耗這件事,以基本功耗模型再略偏高估的標準去準備散熱等應對措施即可,額外付出的物料成本並不高。
 
反之若想進行極限挑戰,非得一絲一毫絕對精確,首先必須具備精確估算的能力,其次是所能省下來的物料成本並不多,再把研發和時間成本考慮進去的話,恐怕會淪為標準的事倍功半、吃力不討好。
 
最糟的情況是,若出現估算失誤而以略偏低估去準備散熱等應對措施,由於散熱能力不足,漏電流功耗無法排除而不斷累積,從而形成一個溫度和功耗間的正回授,最終結果是晶片因過熱而無法工作,甚至導致產品毀損。
 
漏電流功耗的評估雖然稱不上困難,但想精確估算以進行極限挑戰也不是那麼簡單,不過於工程角度來看,縱使估算得不是很精確,總是略偏高估,只要額外付出的整體成本划算,又有何不可呢?



沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。