李航
(上海交通大學(xué)微納電子學(xué)系,上海 200240)
動態(tài)調(diào)頻調(diào)壓(Dynamic Voltage and Frequency Scaling,DVFS)技術(shù)能夠根據(jù)電路的工作負(fù)載變化,動態(tài)地調(diào)節(jié)電路的工作電壓和頻率,從而在滿足電路性能要求的前提下,有效降低電路的功耗和能耗[1-2]。為了保證電路在電壓頻率調(diào)節(jié)期間的時序正確,DVFS 調(diào)高電壓頻率時先升壓后升頻,DVFS 調(diào)低電壓頻率時先降頻后降壓。如圖1 所示,在電壓轉(zhuǎn)換時間內(nèi),電路不得不工作在一個較低的時鐘頻率,帶來不必要的能耗和性能損失。目前,多數(shù)數(shù)字集成電路使用基于電感調(diào)制的片外DC-DC 降壓轉(zhuǎn)換器來提供可編程的電源電壓[3-4]。片外DC-DC 降壓轉(zhuǎn)換器的電壓轉(zhuǎn)換時間很長,一般在微秒甚至毫秒數(shù)量級。較長的電壓轉(zhuǎn)換時間帶來了顯著的能耗和性能損失。
圖1 電壓轉(zhuǎn)換時間帶來的能耗和性能損失[5]
在這種情況下,許多旨在加快調(diào)壓速度的設(shè)計(jì)方法被提出。文獻(xiàn)[6]在片上集成了基于開關(guān)電容的調(diào)壓模塊,降低了電壓轉(zhuǎn)換時間,但是它的開關(guān)電容只能調(diào)制3 個電壓值,而且輸出電壓紋波較大,不得不設(shè)計(jì)自適應(yīng)的時鐘頻率保證電路時序正確。文獻(xiàn)[7]在眾核處理器中實(shí)現(xiàn)了一種雙電壓軌切換的調(diào)壓電路,兩個電壓之間的轉(zhuǎn)換時間縮短到納秒級別,但是,其可調(diào)的電壓值只有2 個,可調(diào)電壓數(shù)目受限于電壓軌的數(shù)目。
為了提高DVFS 的電壓調(diào)節(jié)速度,減小因電壓轉(zhuǎn)換時間帶來的能耗或性能損失,本文提出了一種基于切換電壓軌的DVFS 技術(shù)。當(dāng)需要調(diào)壓時,DVFS 把負(fù)載電路切換到一個電壓恒定的電壓軌上工作,同時控制片外DC-DC 模塊改變另一個電壓軌的電壓值。等待DC-DC 模塊調(diào)壓完成后,DVFS 再把負(fù)載電路切換到目標(biāo)電壓的電壓軌上。本文提出的DVFS 技術(shù),結(jié)合片內(nèi)切換電壓軌調(diào)壓和片外DC-DC 模塊調(diào)壓兩種方式,在保證可調(diào)電壓變化的靈活性的同時,縮短了電壓轉(zhuǎn)換時間,降低了負(fù)載電路的能耗和性能損失。
快速切換電壓軌會帶來噪聲問題,這種噪聲包括電壓軌的電壓下沖和負(fù)載電路的電壓波動。對于電壓軌而言,接通一個新的負(fù)載電路時的過沖電流會導(dǎo)致電壓軌出現(xiàn)過大的壓降,可能影響該電壓軌上的其他上電模塊的功能。過沖電流主要來源于電壓軌對去耦電容的充放電過程。這種壓降噪聲和電壓軌導(dǎo)通速度相關(guān),延長切換電壓軌的時間,可以減小噪聲。
對于負(fù)載電路來說,切換電壓軌時,如果還沒有完全關(guān)掉負(fù)載電路與當(dāng)前電壓軌的連接,就開始導(dǎo)通負(fù)載電路與目標(biāo)電壓軌的連接,則可能在一段時間內(nèi)負(fù)載電路同時連接兩個不同電壓的電壓軌,導(dǎo)致這兩個不同電壓的電壓軌之間的短路電流,進(jìn)而帶來額外能耗和電流噪聲。因此,切換電壓軌時,必須要留有把負(fù)載電路和兩個電壓軌同時斷開的間隙時間。但如果間隙時間過長,負(fù)載電路的漏電流導(dǎo)致其虛電壓軌的電壓降,可能丟失負(fù)載電路中的數(shù)據(jù)。因此,間隙時間應(yīng)該較短。
本文設(shè)計(jì)了一種基于雙電壓軌切換的DVFS 控制電路,切換時間可以由軟件動態(tài)配置,以滿足負(fù)載電路對切換速度和電壓噪聲的不同要求。該設(shè)計(jì)采用一個自定時的切換銜接電路實(shí)現(xiàn)較短的切換間隙時間。本設(shè)計(jì)提出的兩組電壓軌由恒壓軌和變壓軌組成,恒壓軌的電壓恒定為電路性能需求的最高電壓,變壓軌的電壓來自片外DC-DC 降壓轉(zhuǎn)換器的調(diào)制。面向低功耗應(yīng)用的電路普遍采用了多電壓域設(shè)計(jì)[8],其中至少有一個電壓域的電壓恒定,為一些模擬電路和存儲器模塊供電。因此,本設(shè)計(jì)中的恒壓軌可以復(fù)用多電壓域電路設(shè)計(jì)中的恒壓域的電壓軌,避免了增加電壓軌帶來的布局布線的復(fù)雜度。
圖2 雙電壓軌切換控制電路
圖2 是本設(shè)計(jì)的雙電壓軌切換控制電路,包括切換銜接電路(Link)、電源門控電路(Power Gate)、檢測電路(Check)。兩個電源門控電路分別耦合恒壓軌(VDDH)和虛電壓軌(VDD)、變壓軌(VDDX)和虛電壓軌(VDD),切換銜接電路控制兩個電源門控電路的開關(guān)順序,檢測電路檢測電壓軌切換是否完成。輸入信號switch 用于選擇恒壓軌或變壓軌,輸入信號rate 用于配置電源門控電路的開關(guān)速度,輸出信號switch_done 用于指示電壓軌切換是否完成。
兩個電源門控電路分別耦合恒壓軌和虛電壓軌、變壓軌和虛電壓軌,由多組PMOS 門控管和緩沖器組成。每個電源門控電路包括16 個門控單元(Group),前后級聯(lián)。其中,前8 個門控單元的每個單元包括24個PMOS 管,相鄰PMOS 管之間都設(shè)置三級緩沖器連接。這些PMOS 管在耦合電壓軌時會被先打開,因此管子尺寸較小、緩沖器延遲較大以減小電壓噪聲。后8個門控單元的每個單元包括8 個PMOS 管,管子尺寸較大,相鄰PMOS 管之間都設(shè)置一級緩沖器連接。門控單元之間插入的多路選擇器接收rate 的信號,用于控制門控單元的開關(guān)速度。如圖3 所示,當(dāng)rate=0 時,門控單元只能被逐個開或關(guān),當(dāng)rate=1 時,相鄰兩組PMOS 單元可以被同時開或關(guān),當(dāng)rate=2 時,相鄰三組PMOS 單元可以被同時開或關(guān),以此類推。
圖3 門控單元開關(guān)速度的控制結(jié)構(gòu)
圖4 是本設(shè)計(jì)采用的切換銜接電路。輸入信號switch 發(fā)生翻轉(zhuǎn)時,切換銜接電路首先向當(dāng)前處于導(dǎo)通狀態(tài)的電源門控電路發(fā)出關(guān)斷信號(將s1 或者s2 置1)。當(dāng)接收到電源門控電路被完全關(guān)斷的信號(t1 或t2)后,切換銜接電路向另一個電源門控電路發(fā)出導(dǎo)通信號(將 s2 或者 s1 置 0)。電路復(fù)位后,控制信號switch 為0。切換銜接電路的左側(cè)輸出是0,右側(cè)輸出是1。當(dāng)switch 跳變?yōu)? 時,只有左側(cè)的異或門可以輸出高電平脈沖,引發(fā)對應(yīng)的D觸發(fā)器輸出信號s1 狀態(tài)翻轉(zhuǎn)為1。當(dāng)這個高電平信號經(jīng)過s1 連接的整個電源門控電路后,反饋到輸入信號t1,引起右側(cè)D 觸發(fā)器的輸出s2 翻轉(zhuǎn)為0。因此,該切換電路的設(shè)計(jì)保證了總是先關(guān)斷一個電壓軌后導(dǎo)通另一個電壓軌的順序,避免了短路電流的問題。
圖4 切換銜接電路
本設(shè)計(jì)的切換銜接電路提供了較短的間隙時間。這個間隙時間是從輸入信號t1(或t2)到輸出信號s2(s1)的組合路徑延時,如圖4 中的虛線所示,即兩個與門、一個或門、一個D 觸發(fā)器和一個反相器的延時。這個時間即為兩個電壓軌和負(fù)載電路同時斷開的時間。該組合路徑的延遲時間足夠短,不會引發(fā)負(fù)載電路的數(shù)據(jù)丟失問題。
本文提出的調(diào)節(jié)策略,充分利用雙電壓軌的冗余性,在片外DC-DC 調(diào)壓時間內(nèi),通過切換電壓軌,使電路工作在一個恒定的電壓下。根據(jù)負(fù)載電路當(dāng)前耦合的電壓軌類型和目標(biāo)電壓值,本文設(shè)計(jì)了具體的調(diào)節(jié)方法。當(dāng)目標(biāo)電壓正好是當(dāng)前兩電壓軌的電壓值時,直接切換電壓軌調(diào)壓。否則,需要判斷負(fù)載電路當(dāng)前耦合的電壓軌類型。如果當(dāng)前耦合恒壓軌,則保持當(dāng)前的耦合狀態(tài),同時控制片外DC-DC 調(diào)節(jié)變壓軌的電壓值為目標(biāo)電壓值,等待片外調(diào)壓完成后,切換電壓軌。如果當(dāng)前耦合變壓軌,則先把負(fù)載電路切換到恒壓軌,同時控制片外DC-DC 調(diào)節(jié)變壓軌的電壓值為目標(biāo)電壓值,等待片外調(diào)壓完成后,切換電壓軌。
本文基于TSMC 28nm 工藝庫完成了電壓軌切換控制電路設(shè)計(jì),使用Verilog 和Verilog-a 語言完成了DVFS 控制模塊(DVFS Controller)、負(fù)載電路(32bit Adder)和DC-DC 模塊的建模,使用Ultrasim 軟件仿真了本文提出的DVFS 控制器和傳統(tǒng)DVFS 控制器對負(fù)載電路的性能和能耗的影響。為了綜合評估負(fù)載電路的性能和能耗,本文能耗-延時積(Energy-Delay Product,EDP)作為衡量指標(biāo)。圖5 分別是本文的DVFS 控制器仿真電路和傳統(tǒng)DVFS 控制器仿真電路。
圖5 仿真電路
本文設(shè)計(jì)了4 種電壓頻率檔位(1 檔到4 檔,電壓頻率值依次降低)作為DVFS 控制器的測試激勵。片外調(diào)壓的時間和調(diào)壓幅度與DC-DC 模塊有關(guān)。本文采用德州儀器公司的DC-DC 調(diào)壓芯片——TPS62363的數(shù)據(jù)作為仿真所用的DC-DC 模型參數(shù),其電壓調(diào)節(jié)速率為32mV/us。
圖6 切換電壓軌得到的EDP降幅
當(dāng)目標(biāo)電壓正好是當(dāng)前兩電壓軌的電壓值時,本文的DVFS 控制器直接切換電壓軌調(diào)壓,傳統(tǒng)DVFS 控制器通過片外DC-DC 模塊調(diào)壓。本文仿真了兩種DVFS 控制器將負(fù)載電路在4 種電壓頻率檔位之間切換時執(zhí)行相同的計(jì)算任務(wù)的能耗-延時積。圖6 是在各種檔位之間調(diào)節(jié)時,本文的DVFS 控制器調(diào)節(jié)相比傳統(tǒng)DVFS 控制器調(diào)節(jié)的負(fù)載電路能耗-延時積的降幅。結(jié)果表明,電壓調(diào)節(jié)幅度越大,能耗-延時積降幅越高。在1 檔位和4 檔位之間調(diào)壓時,電壓調(diào)幅最大,升壓和降壓調(diào)節(jié)能耗-延時積分別可以降低73.9%和33.4%。
當(dāng)目標(biāo)電壓不是當(dāng)前兩電壓軌的電壓值時,根據(jù)不同的當(dāng)前檔位和目標(biāo)檔位,共有9 種具體調(diào)節(jié)情形。本文仿真了全部調(diào)節(jié)情形在兩種DVFS 控制器調(diào)節(jié)下的負(fù)載電路的能耗-延時積,結(jié)果如表1 所示。仿真表明,在全部9 種調(diào)節(jié)情形中,負(fù)載電路在本文提出的DVFS 控制器調(diào)節(jié)下的能耗-延時積更低,能耗-延時積的平均降幅達(dá)到29.74%。
表1 兩種調(diào)節(jié)方法下的負(fù)載電路的能耗-延時積
本文分析了利用切換電壓軌調(diào)壓的調(diào)節(jié)速度優(yōu)勢和需要解決的電壓噪聲問題,設(shè)計(jì)了可以把負(fù)載電路在兩個電壓軌之間穩(wěn)定快速切換的控制電路?;谠O(shè)計(jì)的電壓軌切換控制電路,本文提出了結(jié)合電壓軌切換和DC-DC 調(diào)節(jié)兩種手段的DVFS 混合調(diào)節(jié)策略。仿真結(jié)果表明,本文的DVFS 控制器顯著降低了負(fù)載電路在調(diào)節(jié)期間的能耗-延時積,平均降幅達(dá)到了29.74%。