FPGA架構(gòu)的功耗及影響功耗的用戶選擇方案
7 Block RAM的構(gòu)建
多個Block RAM常??梢越M合起來構(gòu)成一個大型RAM。組合的方式可以對功耗意義重大。時序驅(qū)動的方法是并行訪問所有RAM。例如,可以用4個2k×9 RAM構(gòu)成一個2k×36 RAM。這個較大RAM的訪問時間與單個Block RAM相同;然而,其每次訪問的功耗卻相當于4個Block RAM的功耗之和。
一種低功耗的解決方案是用4個512×36b RAM 構(gòu)成同樣的2k×36b RAM。每次訪問都會預(yù)先解碼,以選擇訪問4個Block RAM之一。盡管預(yù)解碼延長了訪問時間,但較大RAM每次訪問的功耗卻與單個Block RAM大致相同。
低功耗研究
1 降低電壓
降低電壓是減少功耗的最有效方式之一,而且隨之而來的性能下降對許多并不要求最高性能的設(shè)計來說是可以接受的。不過,目前FPGA的工作電壓范圍很小,在某些電壓敏感型電路上還不能使用。
在Xilinx研究實驗室,CLB電路被重新設(shè)計成能在降低許多的電壓下工作,以便在較低功耗情況下提供寬裕的性能權(quán)衡余地。例如,對于90nm工藝,電壓下降200mV可降低功耗40%,最高性能損失25%;電壓下降400mV可降低功耗70%,最高性能損失55%。
2 細粒度電源開關(guān)
可編程邏輯設(shè)計特有的開銷之一是并非所有片上資源都用于給定的設(shè)計??墒?,未使用的資源保持供電狀態(tài),并以漏電功耗的形式增加了總功耗。模塊級電源開關(guān)可分別關(guān)掉未使用模塊的供電。每個模塊通過一個電源開關(guān)耦接到電源。開關(guān)閉合時,該模塊工作。開關(guān)斷開時,該模塊從電源有效斷開,從而使漏電功耗降到1/50~1/100。電源開關(guān)的粒度可以小到單個CLB和Block RAM。在設(shè)計中,這些電源開關(guān)可以通過配置比特流進行編程,也可由用戶直接控制或通過訪問端口控制。實際設(shè)計的基準測試結(jié)果表明,細粒度電源開關(guān)可減少漏電功耗30%。
3 深睡眠模式
便攜電子產(chǎn)品的主要要求之一是器件空閑時功耗極低或無功耗。以Xilinx Spartan-3A FPGA為例,該芯片可通過進入休眠模式來達到此目的,這需要外部控制,蘇醒緩慢,且不能恢復(fù)FPGA狀態(tài)。設(shè)計動態(tài)控制上述細粒度電源開關(guān),令其關(guān)閉所有內(nèi)部模塊供電,僅保留配置和電路狀態(tài)存儲組件為供電狀態(tài)。這樣形成的狀態(tài)是一種深睡眠模式,其漏電功耗為額定功耗的1%~2%,保存FPGA狀態(tài),退出此模式僅需數(shù)微秒。
4 異構(gòu)架構(gòu)
電路的最高時鐘頻率取決于其時序關(guān)鍵型路徑的延遲。非關(guān)鍵型路徑的速度可以較慢而不影響整體芯片性能。在大型系統(tǒng)中,可以有幾個速度關(guān)鍵型模塊(如處理器中的數(shù)據(jù)通路),其他模塊可以是非關(guān)鍵型(如緩存)。
當今的FPGA就功耗和速度而言是相同的;每個CLB 均有同樣的功耗和速度特性。異構(gòu)架構(gòu)可降低功耗,這種架構(gòu)包含一些低功耗(同時也較慢)的模塊,方法是在低功耗模塊中實現(xiàn)非關(guān)鍵型模塊。這樣做不影響整體芯片性能,因為時序關(guān)鍵型模塊并未損失性能。
創(chuàng)建異構(gòu)架構(gòu)的一種方法是,分配兩條核心供電軌,即一條高電壓軌(VDDH)和一條低電壓軌(VDDL)。FPGA的每個器件用嵌入式電源開關(guān)選擇這二者之一,并相應(yīng)采用高速度或低功耗特性。設(shè)計的詳細時序確定之后,電壓選擇便告完成,所以只有非關(guān)鍵型模塊才應(yīng)以VDDL供電。
創(chuàng)建異構(gòu)架構(gòu)的另一種方法是,將FPGA分成不同的區(qū),并將這些區(qū)分別預(yù)制為具有高速度和低功耗特性??梢杂貌煌娫措妷?、不同閾值或通過若干其他設(shè)計權(quán)衡條件來實現(xiàn)這些區(qū)。要避免性能下降,設(shè)計工具必須將設(shè)計的時序關(guān)鍵型器件映像成高速度區(qū),而將非關(guān)鍵型器件映射成低功耗區(qū)。
5 低擺幅信令
隨著FPGA容量增加,片上可編程互連的功耗越來越大。減少這種通信功耗的一種有效方法是使用低擺幅信令,其中導(dǎo)線上的電壓擺幅比電源電壓擺幅低得多?,F(xiàn)今,低擺幅信令常見于在高電容性導(dǎo)線(如總線或片外鏈接)上進行通信的情況。低擺幅驅(qū)動器和接收器比CMOS 緩沖器更復(fù)雜,所以占用更多芯片面積。但是,隨著片上互連逐漸成為總體功耗的較大組成部分,低擺幅信令的功耗優(yōu)勢將證明增加設(shè)計復(fù)雜性是值得的。當然,F(xiàn)PGA用戶不會看到內(nèi)部信號電壓的差異。
圖3所示為具有上述某些概念的FPGA架構(gòu),其可編程異構(gòu)架構(gòu)由高速度和低功耗兩個區(qū)組成。一個片上功耗模式控制器可管理各種降功耗模式,即深睡眠模式、懸掛模式和休眠模式。在架構(gòu)內(nèi)部,可以用專用的供電開關(guān)關(guān)掉每個邏輯塊的電源。通過布線架構(gòu)的通信信號流經(jīng)低擺幅驅(qū)動器和接收器,以降低互連功耗。
圖3 具有多種降低功耗解決方案的概念架構(gòu)
結(jié)論
除了目前用于現(xiàn)代FPGA設(shè)計的能源優(yōu)化方案,一些用戶設(shè)計決策也可以產(chǎn)生顯著的功耗效益??梢灶A(yù)見,未來的新技術(shù)中會有更大膽地遏制功耗的架構(gòu)解決方案,從而使新的FPGA應(yīng)用成為可能。
評論