《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計應(yīng)用 > FPGA設(shè)計中常用的低功耗技術(shù)
FPGA設(shè)計中常用的低功耗技術(shù)
摘要: 結(jié)合采用低功耗元件和低功耗設(shè)計技術(shù)在目前比以往任何時候都更有價值,。隨著元件集成更多功能,并越來越小型化,,對低功耗的要求持續(xù)增長,。當(dāng)把可編程邏輯器件用于低功耗應(yīng)用時,限制設(shè)計的低功耗非常重要,。本文將討論減小動態(tài)和靜態(tài)功耗的各種方法,,并且給出一些例子說明如何使功耗最小化。
Abstract:
Key words :

結(jié)合采用低功耗元件和低功耗設(shè)計技術(shù)在目前比以往任何時候都更有價值,。隨著元件集成更多功能,,并越來越小型化,對低功耗的要求持續(xù)增長,。當(dāng)把可編程邏輯器件用于低功耗應(yīng)用時,,限制設(shè)計的低功耗非常重要。本文將討論減小動態(tài)和靜態(tài)功耗的各種方法,,并且給出一些例子說明如何使功耗最小化,。

功耗的三個主要來源是啟動、待機(jī)和動態(tài)功耗,。器件上電時產(chǎn)生的相關(guān)電流即是啟動電流,;待機(jī)功耗又稱作靜態(tài)功耗,是電源開啟但I(xiàn)/O上沒有開關(guān)活動時器件的功耗,;動態(tài)功耗是指器件正常工作時的功耗,。

啟動電流因器件而異。例如,,基于SRAM的FPGA具有高啟動電流,,因為這類器件剛上電時是沒有配置的,而需要從外部存儲芯片下載數(shù)據(jù)來配置它們的可編程資源,,如路由連接和查找表,。相反地,反熔絲FPGA不需要上電配置,,因而沒有高啟動電流,。

像啟動電流一樣,待機(jī)功耗主要依賴于器件的電子特性,。由于SRAMFPGA互連中SRAM單元的數(shù)量相當(dāng)大,,它們甚至在待機(jī)時也要消耗數(shù)百毫安電流。反熔絲FPGA具有金屬到金屬互連,,不需要額外的晶體管來保持互連,,因而也就不會產(chǎn)生額外的功耗。但是,,對上述兩種FPGA類型來說,,漏電流將隨工藝幾何尺寸的縮小而增加,,這加劇了功耗問題。

另一個難題是動態(tài)功耗,,其動輒比待機(jī)功耗大好幾倍,。動態(tài)功耗與FPGA內(nèi)部單元(如寄存器和組合邏輯)寄生電容的充電和放電頻率成比例,因而通常要針對設(shè)計進(jìn)行優(yōu)化,。

下面將介紹FPGA設(shè)計中常用的一些可以降低功耗的技術(shù):

采用FPGA的低功耗系統(tǒng)設(shè)計技術(shù)

1.狀態(tài)機(jī)編碼,。大量的邏輯資源是由實現(xiàn)的有限狀態(tài)機(jī)的類型來定義的。One-hlt狀態(tài)機(jī)編碼創(chuàng)建每個狀態(tài)的一個觸發(fā)器的狀態(tài)機(jī),,與Gray和二進(jìn)制狀態(tài)機(jī),,較少利用one-hot狀態(tài)機(jī)可以獲得功效更好的設(shè)計。一些綜合器軟件能自動對狀態(tài)機(jī)進(jìn)行編碼,,但最有效的方法是直接在HDL代碼中定義狀態(tài)值,。

2.保護(hù)賦值。賦值保護(hù)的關(guān)鍵在于:若最終的輸出不需要更新,,則阻止輸入信號向下傳播到其它邏輯塊,。對輸入信號的賦值保護(hù)可確保僅在適當(dāng)時改變輸出值,從而將不必要的輸出開關(guān)減至最少,。

在大型組合邏輯(例如寬總線復(fù)用器)的輸入端加鎖存器,,這能抑制無效的開關(guān)活動,因為僅當(dāng)輸出需要更新時輸入才被鎖好,。類似地,,可利用控制寄存器來打開或關(guān)閉低級別的模塊(如子模塊中的狀態(tài)機(jī))。使大總線和子模塊保持在一個恒定狀態(tài)有助于減少不相關(guān)輸出開關(guān)的數(shù)量,。

3.組合環(huán),。在不注意的時候,設(shè)計師偶爾可能在FPGA設(shè)計中創(chuàng)建了組合環(huán),。當(dāng)一組相關(guān)的組合邏輯在特定的條件下不斷振蕩時,,就會形成這些組合環(huán)。振蕩器將消耗FPGA中的許多電流,。因此,,最好是評估振蕩器,或確保在重新評估之前任何反饋邏輯都由一個寄存器來進(jìn)行門控,。

4.門控時鐘,。對于暫時不使用的模塊,系統(tǒng)可以減慢或停止其時鐘,。在任一給定時間,,通過時鐘可以節(jié)省功耗。門控時鐘可以極大地節(jié)省功耗,,因為有源時鐘緩沖器的數(shù)目減少,,翻轉(zhuǎn)觸發(fā)器的次數(shù)將減少,因而那些觸發(fā)器的輸出端將減少可能反轉(zhuǎn),。門控時鐘要求仔細(xì)地規(guī)劃和分割算法,,但節(jié)省的功耗相當(dāng)可觀。

系統(tǒng)級應(yīng)用的功耗節(jié)省方法:

1.系統(tǒng)時鐘速度,。系統(tǒng)時鐘頻率對電路板的總功耗有顯著影響,,因為時鐘信號的開關(guān)活動最多,電容性負(fù)載最大,。不過,,時鐘速度又與帶寬性能直接相關(guān)。為了在功耗和吞吐量之間取得一個最佳平衡,,設(shè)計者可以向不需要快時鐘的元件提供較慢的時鐘,,而向那些對帶寬很關(guān)鍵的元件提供快時鐘,或使用一個內(nèi)建的鎖相環(huán)來為需要高速性牟的特定模塊產(chǎn)生一個快時鐘,。

2.元件使能,。有時,即使它們行為對目前功能而言是不必需的,,輸出端仍會被賦值,。為了減少示使用的I/O產(chǎn)生的多余功耗,可以把一個系統(tǒng)控制器映射到FPGA,,以關(guān)閉暫時不用的器件,。當(dāng)一個器件與當(dāng)前操作無關(guān)時,系統(tǒng)控制可以解除其使用信號,;或者,,若該器件將在長時間內(nèi)不被訪問,則可以把它置于睡眠模式,。在低功耗FPGA中實現(xiàn)這樣一個系統(tǒng)控制器可以減少系統(tǒng)的總開關(guān)活動,,并智能地使一些暫不需要的器件保持在睡眠模式。元件使能類似于賦值保護(hù),,只不過元件使能是在系統(tǒng)級實現(xiàn)的,,它控制的對象是電路板上的元件而非FPGA中的模塊。

3.智能協(xié)處理器,。一般來說不得,,液晶顯示屏和微處理器占用了設(shè)計中的大部分功耗預(yù)算,

因此,,常常通過降低LCD屏幕亮度或部分關(guān)閉屏幕來節(jié)省功耗,。同樣地,使微處理器保持在睡眠模式也可以延長電池壽命,。

不幸的是,,微處理器通常需要處理多個器件的中斷服務(wù)程序,,這就使微處理器很難處于睡眠模式。鑒于此,,把外圍振作和中斷控制等任務(wù)卸載到一個低功耗FPGA上可以大大降低功耗,。在FPGA中實現(xiàn)的一個低功耗中斷控制器或數(shù)據(jù)協(xié)處理能夠自己處理一些中斷活動,所以可以避免為了低優(yōu)先級活動而喚醒微處理器,。

對于那些嚴(yán)格要求低功耗的系統(tǒng)而言,,采用合適的低功耗可編程邏輯器件和可以節(jié)省功耗的設(shè)計技術(shù),有助于使系統(tǒng)功耗降至最小,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。