周濤林
(江西應用工程職業(yè)學院,江西 萍鄉(xiāng) 337042)
近年來,隨著微電子技術的快速發(fā)展,高性能微處理器不斷更新迭代,尤其是便攜式電子產(chǎn)品大量充斥于市場,但是困擾高性能微處理器的功耗問題一直沒有得到良好的解決。由于門控電源技術對控制微處理器的功耗能夠起到一定的輔助作用,因此對其技術要點進行分析具有重要意義。
目前,低功耗已經(jīng)成為微處理器發(fā)展的主要趨勢和設計的重要目標[1]。在芯片研發(fā)過程中,功耗一直是難以有效解決的問題。芯片的功耗按照來源可以分為靜態(tài)功耗和動態(tài)功耗,而以漏電流功耗為代表的靜態(tài)功耗隨著大規(guī)模集成電路芯片的更新迭代也呈現(xiàn)不斷上升的態(tài)勢。較大的功耗不僅增加了芯片設計和運行的成本,而且還會影響設備的續(xù)航時間和電路的可靠性與穩(wěn)定性[2]。想要降低大規(guī)模集成電路芯片的漏電流功耗,相關設計人員可以通過門控電源技術對芯片中尚未使用的功能模塊進行關閉。
2.1.1 帶緩存的中央處理器系統(tǒng)
帶緩存的中央處理器(Central Processing Unit,CPU)系統(tǒng)是門控電源技術中經(jīng)常使用的系統(tǒng),該系統(tǒng)內(nèi)部有部分單元在較長一段時間內(nèi)均處于休眠狀態(tài)。CPU常以中斷觸發(fā)的形式來被喚醒,系統(tǒng)的喚醒需要一定的緩沖時間才能進入到工作狀態(tài),相關技術人員在對系統(tǒng)進行設計時要特別注意這個時間緩沖段產(chǎn)生的延遲效果,必要時可以設置容量更大的先進先出(First In First Out,F(xiàn)IFO)存儲器。當CPU下電之后,系統(tǒng)中高速緩沖存儲器的數(shù)據(jù)也會隨之消失。每次CPU上電后都要對存儲器中的數(shù)據(jù)內(nèi)容進行恢復,然后再進入工作流程。由于數(shù)據(jù)恢復的過程也會產(chǎn)生必要的能量消耗,因此在帶緩存的CPU系統(tǒng)中利用門控電源技術節(jié)省的功耗實際上是切斷電源后節(jié)省的能耗與上電之后數(shù)據(jù)恢復階段能耗的差值。
2.1.2 外設系統(tǒng)
外設系統(tǒng)由驅(qū)動軟件中的電源管理模塊來執(zhí)行上下電操作,其上下電準備工作與帶緩存的CPU系統(tǒng)相似,都需要對數(shù)據(jù)進行存儲和恢復。不可否認的是,上下電的工作延遲會在一定程度上增加軟件的工作負擔。為了有效解決這一問題,可以將內(nèi)部信息進行保存與加載的動作外設化,但是這一操作會在原有的系統(tǒng)中再額外鋪設供外設裝置運行的電路,在設計上具有一定的難度。
2.1.3 多核處理器
由于單核處理器的性能難以提升,因此多核處理器應用逐漸成為提高處理器性能的主要研究方向[3]。在多核處理器運行中,當處理器內(nèi)部的某單核或多核已經(jīng)完成當前任務正在等待下一項任務分配時,可以選擇終段處于等待階段內(nèi)核的電源來減少漏電流的功耗損失。因為多核處理器中處于關閉狀態(tài)的內(nèi)核完成了上一階段的任務后不需要像CPU和外設系統(tǒng)那樣繼續(xù)加載前項任務,所以在上電之后可以進行完全復位并開始執(zhí)行下一階段的任務。門控電源在多核處理器中的設計需要創(chuàng)設一個最小均方算法(Least Mean Square,LMS)來根據(jù)處理器內(nèi)部引擎的工作量數(shù)量變動決定睡眠引擎核心的具體增減[4]。
門控電源技術在高性能微處理器中涵蓋的范圍較廣,相關研究人員在對門控電源技術進行設計時需要注意各部分的結構。高性能微處理器的一種典型門控電源設計結構如圖1所示。

圖1 門控電源設計結構
2.2.1 電源開關網(wǎng)絡設計
門控電源結構中的電源開關網(wǎng)絡設計要點是預防瞬態(tài)電流數(shù)值過大,如果瞬態(tài)電流得不到有效控制,超出了預設合理的電流范圍后就會對電源網(wǎng)絡上工作的其他模塊產(chǎn)生消極影響。正常情況下,一個電源開關網(wǎng)絡上會存在多個電源開關單元。為了預防這些開關在同一時間內(nèi)閉合或斷開而產(chǎn)生較強的瞬態(tài)電流,可以利用菊花鏈的方式連接電源開關網(wǎng)絡中的開關,再通過緩沖器將開關產(chǎn)生的信號按照層次性梯度傳達到各個開關,控制開關按照順序依次進行閉合與斷開。微單元由菊花鏈串聯(lián),可以實現(xiàn)對芯片的準確控制[5]。
相關研究人員需要注意緩沖器的緩沖時間,合理控制各個開關執(zhí)行操作的延遲,避免影響使用效果。當電源網(wǎng)絡中的開關全部打開后,可以在菊花鏈的末端向電源控制器傳達一個表示已經(jīng)打開全部電源開關的信號,從而為下一步工作的開展奠定基礎。此外,相關研究人員在設計電源開關網(wǎng)絡時,可以將細粒度和粗粒度兩種電源開關方式應用在集成電路中[6]。
(1)細粒度電源開關控制。細粒度電源開關控制方式是為電源網(wǎng)絡中存在的每一個標準單元門都設立一個電源開關,其中電源開關的設立標準以單元門承受電流上限為依據(jù)。在設計中為了保障單元門的性能不受其他因素的影響,開關的規(guī)格一般都會設計的比較大,大約是標準單元門的4倍,以此保證每一個單元都可以正常工作。
(2)粗粒度電源開關控制。粗粒度電源開關控制是電路整體都使用一組電源開關單元列陣進行控制[7]。由于不能準確獲取支撐電路運行的電流值,因此無法確定具體的開關數(shù)量,通常采用估計和后端試驗來得出具體的數(shù)值。雖然在電流值域上與細粒度電源開關相比不占優(yōu)勢,但是粗粒度電源開關的列陣形式要比細粒度開關的菊花鏈形式更加節(jié)省芯片的占用空間。
2.2.2 隔離單元設計
在門控電源的結構設計中,隔離單元主要是為避免處于休眠狀態(tài)需要斷開的輸出端與正在進行工作的模塊輸出端連接在一起,從而部分模塊下電時對工作模塊造成消極影響。當模塊下電時,相應的輸出端口數(shù)值會出現(xiàn)忽高忽低的情況,還有可能出現(xiàn)上下漏電流處于平衡狀態(tài),將輸出端口的點位鉗到中間值的位置。如果在輸入端以中間的數(shù)值為切入點位進行輸入,會對模塊的內(nèi)在邏輯性造成嚴重影響。基于此,相關研究人員進行門控電源設計時要對下電模塊的輸出端采取措施進行隔離,保證下電模塊的輸出值準確且不會對整個工作單元的邏輯功能造成干擾,避免電路出現(xiàn)異?,F(xiàn)象。在門控電源的結構設計中,要注意隔離單元輸出端的鉗位值和隔離單元插入的具體位置界定,保障電路系統(tǒng)平穩(wěn)運行。
2.2.3 記憶存儲單元設計
當電源被切斷時,高性能微處理器芯片內(nèi)部的寄存器數(shù)據(jù)會全部丟失,如果想在上電時恢復工作狀態(tài),就要設計寄存器存儲單元來存儲內(nèi)部數(shù)據(jù)。現(xiàn)階段,常用的寄存器存儲單元的保存恢復方式有3種,分別是利用隨機存取存儲器來保存寄存器值、利用掃描鏈將內(nèi)部狀態(tài)進行串入串出以及利用狀態(tài)保持寄存器儲存記憶。
(1)利用隨機存取存儲器保存寄存器值。隨機存取存儲器具有較好的兼容性,當系統(tǒng)下電時,可以利用軟件控制將內(nèi)部寄存器的具體數(shù)值讀出并保存在存取存儲器中[8]。當系統(tǒng)通電上電時,再把數(shù)據(jù)從存取存儲器中調(diào)取出來并寫入到電源域的內(nèi)部寄存器中。利用隨機存取存儲器保存寄存器值的方式雖然比較容易操作和實現(xiàn),但是存儲和寫入的速度較慢,需要花費一定的時間,而且在存儲過程中還需要借助總線的資源,不可避免地會對整個系統(tǒng)的性能造成一定不良影響。
(2)通過掃描鏈將內(nèi)部狀態(tài)進行串入串出。串入串出移位寄存器設計簡單,若干逆向位掃描指令(Bit Scan Reverse,BSR)通過串行移位的方式連接[9,10]。當電源域下電時,可以利用芯片內(nèi)部的寄存器掃描鏈將寄存器的狀態(tài)掃描并錄刻在隨機存取存儲器中。當上電時,再將存儲器中存放的寄存器狀態(tài)寫回寄存器中。利用這種方式來對記憶存儲單元設計時,相關研究人員要注意以下2個方面的問題。一方面,采用該方式對記憶存儲單元進行設計需要多條鏈同時對數(shù)據(jù)進行串入串出工作,以提升隨機存取存儲器的儲存與讀取速度。相關試驗表明,采用8條掃描鏈最合適。通過統(tǒng)一這些鏈的長度,控制器利用一組信號就可以完成對掃描鏈的控制。根據(jù)設置掃描鏈的實際情況,調(diào)整一些附加值附加到較短的掃描鏈上,以達到平衡8條鏈條長度的作用。另一方面,對寄存器進行掃描錄入和從隨機存取存儲器中讀取數(shù)據(jù)時需要耗費較長的時間,對于隨機存取存儲器來說要保持持續(xù)供電狀態(tài)。如果隨機存取存儲器在片外時,對寄存器的讀取和寫回都會產(chǎn)生極大的功耗。如果利用片內(nèi)的存取存儲器存儲數(shù)據(jù)時,多個寄存器值會同時發(fā)生變化,電流數(shù)值也會隨之提升,從而對芯片產(chǎn)生嚴重的消極影響。
(3)利用狀態(tài)保存寄存器儲存狀態(tài)信息。狀態(tài)保存寄存器是主從式結構,結構內(nèi)部還存在著一個從式寄存器。在電源下電時,從式寄存器可以保持主寄存器的狀態(tài);當電源上電時,主寄存器可以讀取從式寄存器中的數(shù)據(jù)。狀態(tài)保存寄存器需要更加復雜的電源控制器,電源控制管理必須對保存和恢復狀態(tài)的操作時序進行定義。寄存器的數(shù)據(jù)記錄速度緩慢,為了保證記錄的穩(wěn)定性,一般都會對主寄存器的時鐘進行關停,狀態(tài)保存完畢后再切掉電源。同理,在上電時,要保證狀態(tài)值完全恢復后再恢復時鐘。
綜上所述,通過對高性能微處理器門控電源技術的設計要點進行討論,深入了解該技術的結構組成及其工作原理,有效掌握其在解決處理器功耗問題方面的積極作用,從而推動高性能微處理器實現(xiàn)進一步優(yōu)化完善。