你的位置:首頁 > 測試測量 > 正文

眾說紛紜:暢所欲言FPGA的低功耗設計

發(fā)布時間:2014-12-23 責任編輯:echolady

【導讀】關于FPGA想必大家都不陌生,本文就帶大家一起來探討關于FPGA的低功耗設計。關于低功耗設計,本文將從兩方面入手,一是算法優(yōu)化,二是FPGA資源使用效率優(yōu)化。具體內容請聽下文分解。

1. 功耗分析

整個FPGA設計的總功耗由三部分功耗組成:1. 芯片靜態(tài)功耗;2. 設計靜態(tài)功耗;3. 設計動態(tài)功耗。

芯片靜態(tài)功耗:FPGA在上電后還未配置時,主要由晶體管的泄露電流所消耗的功耗

設計靜態(tài)功耗:當FPGA配置完成后,當設計還未啟動時,需要維持I/O的靜態(tài)電流,時鐘管理和其它部分電路的靜態(tài)功耗

設計動態(tài)功耗:FPGA內設計正常啟動后,設計的功耗;這部分功耗的多少主要取決于芯片所用電平,以及FPGA內部邏輯和布線資源的占用

顯而易見,前兩部分的功耗取決于FPGA芯片及硬件設計本身,很難有較大的改善??梢詢?yōu)化是第3部分功耗:設計動態(tài)功耗,而且這部分功耗占總功耗的90%左右,因此所以降低設計動態(tài)功耗是降低整個系統(tǒng)功耗的關鍵因素。上面也提到過功耗較大會使FPGA發(fā)熱量升高,那有沒有一個定量的分析呢?答案當然是有,如下式:

Tjmax > θJA * PD + TA

其中Tjmax表示FPGA芯片的最高結溫(maximum junction temperature);θJA表示FPGA與周圍大氣環(huán)境的結區(qū)熱阻抗(Junction to ambient thermal resistance),單位是°C/W;PD表示FPGA總功耗(power dissipation),單位是W;TA表示周圍環(huán)境溫度。

以XC7K410T-2FFG900I系列芯片為例,θJA = 8.2°C/W,在TA = 55°C的環(huán)境中,想要結溫Tjmax不超過100°C的情況下,可以推算FPGA的總功耗:PD <(Tjmax – TA)/θJA=(100 - 55)/8.2=5.488W,之前估算的20W與之相差太遠,因此優(yōu)化是必不可少的:

1) 降低θJA:熱阻抗取決于芯片與環(huán)境的熱傳導效率,可通過加散熱片或者風扇減小熱阻抗

2) 減小PD:通過優(yōu)化FPGA設計,降低總功耗,這也是本文重點講解的部分。

2. 低功耗設計

關于FPGA低功耗設計,可從兩方面著手:1) 算法優(yōu)化;2) FPGA資源使用效率優(yōu)化。

1) 算法優(yōu)化

算法優(yōu)化可分為兩個層次說明:實現結構和實現方法

首先肯定需要設計一種最優(yōu)化的算法實現結構,設計一種最優(yōu)化的結構,使資源占用達到最少,當然功耗也能降到最低,但是還需要保證性能,是FPGA設計在面積和速度上都能兼顧。比如在選擇采用流水線結構還是狀態(tài)機結構時,流水線結構同一時間所有的狀態(tài)都在持續(xù)工作,而狀態(tài)機結構只有一個狀態(tài)是使能的,顯而易見流水線結構的功耗更多,但其數據吞吐率和系統(tǒng)性能更優(yōu),因此需要合理選其一,使系統(tǒng)能在面積和速度之間得到平衡;

另一個層面是具體的實現方法,設計中所有吸收功耗的信號當中,時鐘是罪魁禍首。雖然時鐘可能運行在 100 MHz,但從該時鐘派生出的信號卻通常運行在主時鐘頻率的較小分量(通常為 12%~15%)。此外,時鐘的扇出一般也比較高。這兩個因素顯示,為了降低功耗,應當認真研究時鐘。 首先,如果設計的某個部分可以處于非活動狀態(tài),則可以考慮禁止時鐘樹翻轉,而不是使用時鐘使能。時鐘使能將阻止寄存器不必要的翻轉,但時鐘樹仍然會翻轉,消耗功率。其次,隔離時鐘以使用最少數量的信號區(qū)。不使用的時鐘樹信號區(qū)不會翻轉,從而減輕該時鐘網絡的負載。

2) 資源使用效率優(yōu)化

資源使用效率優(yōu)化是介紹一些在使用FPGA內部的一些資源如BRAM,DSP48E1時,可以優(yōu)化功耗的方法。FPGA動態(tài)功耗主要體現為存儲器、內部邏輯、時鐘、I/O消耗的功耗。

相關閱讀:

FPGA有門道?一款軟件無線電平臺的設計
利用CPLD數字邏輯和FPGA實現ADC
基于FPGA的航空電子系統(tǒng)的設計

要采購晶體么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉