關(guān)于FPGA的功耗優(yōu)化,筆者曾經(jīng)在一個(gè)項(xiàng)目上做過深入的比對(duì)實(shí)踐。近期在Xilinx官網(wǎng)搜到這篇文章,有種醍醐灌頂、相見恨晚的感覺。這篇文章的原創(chuàng)應(yīng)該是來自科通的FAE技術(shù)分享集,值得大家好好研讀一番。
AMD -Xilinx FPGA功耗優(yōu)化設(shè)計(jì)簡介
重要的事情說三遍,文章里面說一遍,筆者接下來將會(huì)結(jié)合自身的設(shè)計(jì)經(jīng)驗(yàn)和體會(huì)再說一遍,讀后也請(qǐng)大家默默回味一遍。若能牢記在心,相信這些要點(diǎn)將來一定能夠成為指導(dǎo)大家設(shè)計(jì)的一些基本原則。
● 仔細(xì)檢查一下設(shè)計(jì)中的PLL,是不是可以把兩個(gè)PLL整合為一個(gè);或者是否可以對(duì)時(shí)鐘頻率做一些“整合”,盡量減少時(shí)鐘頻率數(shù)量,從而省去一個(gè)PLL。如果可以,恭喜你,你將收獲的是幾十mW的功耗降低,這個(gè)數(shù)值很可能是整個(gè)功耗優(yōu)化項(xiàng)目中的top1。
● 盡可能降低FPGA資源的使用,這句話只能在優(yōu)化功耗的時(shí)候說,因?yàn)閺恼麄€(gè)設(shè)計(jì)角度看,“速度”和“資源”有時(shí)是蹺蹺板的兩端,必須在它們之間做出權(quán)衡。或者換句話說,在滿足“速度”性能要求的情況下,盡可能減少“資源”的消耗。一種看似行之有效的方法,就是在產(chǎn)品應(yīng)用允許的情況下,讓FPGA器件的加載者在多個(gè)不同的比特流之間切換,這樣就能做到在單獨(dú)運(yùn)行某個(gè)功能時(shí),其它功能不會(huì)白白消耗任何的靜態(tài)功耗。這也可能會(huì)帶來一點(diǎn)麻煩,需要設(shè)計(jì)者為一個(gè)設(shè)計(jì)維護(hù)多個(gè)工程,并且最重要的是,產(chǎn)品應(yīng)用以及存在一個(gè)合適的FPGA加載者支持這么干。
● 接著上面的點(diǎn),如果要在片內(nèi)存儲(chǔ)器和邏輯資源之間做選擇,盡量減少片內(nèi)存儲(chǔ)器的使用,原因很簡單,片內(nèi)存儲(chǔ)器相比邏輯資源更耗電。
● 使用門控時(shí)鐘或片選信號(hào)(存儲(chǔ)器的CE信號(hào)),在非運(yùn)行時(shí)間關(guān)閉時(shí)鐘或邏輯(存儲(chǔ)器),從而降低不必要的動(dòng)態(tài)功耗。
FPGA內(nèi)部的功耗優(yōu)化,其實(shí)就如同水龍頭,要么減少開啟時(shí)間,要么盡可能調(diào)小流量。很多時(shí)候很難像去掉一個(gè)PLL那樣有立竿見影的效果,大多數(shù)的優(yōu)化嘗試可能收獲的都是杯水車薪,但是積少成多,一點(diǎn)一滴也可能省出一個(gè)可觀的百分比。有很多細(xì)節(jié)的優(yōu)化,也并不是筆者可以一一娓娓道來的,只有工程師結(jié)合自身具體的工程應(yīng)用,耐心細(xì)致的進(jìn)行不斷嘗試和比對(duì)測試,才可以做到設(shè)計(jì)功耗的最優(yōu)化。
-
amd
+關(guān)注
關(guān)注
25文章
5443瀏覽量
133946 -
FPGA設(shè)計(jì)
+關(guān)注
關(guān)注
9文章
428瀏覽量
26485 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7452瀏覽量
163606
原文標(biāo)題:FPGA設(shè)計(jì)功耗優(yōu)化
文章出處:【微信號(hào):FPGA快樂學(xué)習(xí),微信公眾號(hào):FPGA快樂學(xué)習(xí)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論