你可能已經(jīng)在智能手機上播放過數(shù)百甚至數(shù)千個視頻了。但是你有沒有想過,當你按下“播放”鍵時會發(fā)生什么?
你一碰到那個小三角形,許多事情就同時發(fā)生了。在幾微秒內(nèi),手機處理器上的空閑計算核心就開始活躍起來。當他們這樣做時,其電壓和時鐘頻率會迅速上升,以確保視頻解壓縮和顯示不會延遲。同時,在后臺運行任務的其他內(nèi)核也會減速。電荷涌進有源磁芯的數(shù)百萬個晶體管中,而在新閑置的晶體管中,電荷則逐漸變慢。
這種被稱為動態(tài)電壓和頻率縮放(dynamic voltage and frequency scaling,DVFS)的“動作”不斷地發(fā)生在處理器(稱為片上系統(tǒng)(SoC))中,它運行著你的手機和筆記本電腦以及支持它們的服務器。
這一切都是為了平衡計算性能和功耗,這對智能手機來說尤其具有挑戰(zhàn)性。盡管有電流浪涌,協(xié)調(diào)DVF的電路仍努力確保穩(wěn)定的時鐘和堅如磐石的電壓水平 —— 但這部分也是設計中最累人的。
這主要是因為時鐘生成和電壓調(diào)節(jié)電路是模擬的,這與智能手機SoC上的幾乎所有其他電路不同。由于半導體制造業(yè)的進步,我們已經(jīng)習慣于近一年一次的新處理器的更新 —— 新處理器的計算能力大大提高。
將一個數(shù)字設計從一個舊的半導體工藝移植到一個新的工藝上絕非易事,但與嘗試將模擬電路轉(zhuǎn)移到一個新工藝相比,這算不了什么。支持DVFS的模擬組件,特別是一種稱為低壓差穩(wěn)壓器(low-dropout voltage regulator,LDO)的電路,不像數(shù)字電路那樣會縮小規(guī)模,基本上每新一代都必須從頭開始重新設計。
如果我們可以用數(shù)字元件代替LDO或其他模擬電路,那么它們的移植難度將大大低于處理器的任何其他部分,從而節(jié)省了大量的設計成本,并幫助工程師能夠解決尖端芯片設計所面臨的其他問題。
此外,由此產(chǎn)生的數(shù)字LDO可能比模擬LDO小得多,并且在某些方面性能更好。在過去的幾年里,工業(yè)界和學術界的研究小組已經(jīng)測試了至少12種設計,盡管存在一些缺點,但一種商業(yè)上有用的數(shù)字LDO可能很快就會實現(xiàn)。
低壓差電壓調(diào)節(jié)器(LDO)允許同一輸入電壓軌(VIN)上的多個處理器內(nèi)核根據(jù)其工作負載在不同的電壓下工作。在這種情況下,Core 1具有最高的性能要求。它的頭部開關,實際上是一組并聯(lián)的晶體管,是閉合的,繞過LDO并直接將Core 1連接到VIN,VIN由外部電源管理IC提供。但是,Cores 2到4的工作負載要求較低。他們的LDO被用于為磁芯提供電壓,以節(jié)省電力。
基本模擬低壓差穩(wěn)壓器[左]通過反饋回路控制電壓。它試圖通過控制通過功率PFET的電流,使輸出電壓(VDD)等于參考電壓。在基本數(shù)字設計中[右],一個獨立的時鐘觸發(fā)一個比較器[三角形],該比較器將參考電壓與VDD進行比較。結果告訴控制邏輯需要激活多少功率PFET。
智能手機典型的片上系統(tǒng)是集成的奇跡。在一塊硅片上,它集成了多個CPU核、圖形處理單元、數(shù)字信號處理器、神經(jīng)處理單元、圖像信號處理器以及調(diào)制解調(diào)器和其他專用邏輯塊。
當然,提高驅(qū)動這些邏輯塊的時鐘頻率會提高它們完成工作的速率。但要以更高的頻率工作,它們還需要更高的電壓。沒有這一點,晶體管就無法在處理器時鐘的下一個滴答聲之前打開或關閉。
當然,更高的頻率和電壓是以功耗為代價的。因此,這些核心和邏輯單元動態(tài)地改變它們的時鐘頻率和電源電壓,通常在0.95到0.45伏之間——根據(jù)它們在分配給它們的任何工作負載中所需的能量效率和性能平衡,拍攝視頻、播放音樂文件、在通話中傳輸語音等等。
通常,外部電源管理IC為手機SoC生成多個輸入電壓(VIN)值。這些電壓沿著稱為軌道的寬互連線傳輸?shù)絊oC芯片的各個區(qū)域。但是,電源管理芯片和SoC之間的連接數(shù)量是有限的。因此,SoC上的多個核必須共享同一VIN軌。
但由于低壓差穩(wěn)壓器,它們不必都獲得相同的電壓。LDO和專用時鐘發(fā)生器允許共享軌道上的每個磁芯以獨特的電源電壓和時鐘頻率運行。需要最高電源電壓的磁芯決定共享VIN值。電源管理芯片將VIN設置為該值,該核心通過稱為頭開關的晶體管完全繞過LDO。
為了將功耗保持在最低限度,其他內(nèi)核可以在較低的電源電壓下工作。軟件決定了這個電壓應該是多少,模擬LDO在提供這個電壓方面做得很好。它們結構緊湊,制造成本低,集成在芯片上相對簡單,因為它們不需要大的電感器或電容器。
但這些LDO只能在特定的電壓窗口中工作。On the high end,目標電壓必須低于VIN和LDO本身壓降之間的差值(同名“壓降”電壓)。例如,如果堆芯最有效的電源電壓為0.85 V,但VIN為0.95 V,LDO的漏失電壓為0.15 V,則該堆芯無法使用LDO達到0.85 V,必須在0.95 V下工作,從而浪費一些電源。類似地,如果VIN已設置為低于某個電壓限制,LDO的模擬組件將無法正常工作,電路也無法接合以進一步降低堆芯電源電壓。
迄今為止,限制數(shù)字LDO使用的主要障礙是緩慢的瞬態(tài)響應。
但是,如果所需電壓落在LDO窗口內(nèi),軟件將啟用電路并激活等于目標電源電壓的參考電壓。
LDO如何提供正確的電壓?