新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > FPGA低功耗設(shè)計(jì)小貼士

FPGA低功耗設(shè)計(jì)小貼士

作者: 時(shí)間:2017-06-05 來源:網(wǎng)絡(luò) 收藏

的功耗高度依賴于用戶的設(shè)計(jì),沒有哪種單一的方法能夠?qū)崿F(xiàn)這種功耗的降低,如同其它多數(shù)事物一樣,降低功耗的設(shè)計(jì)就是一種協(xié)調(diào)和平衡藝術(shù),在進(jìn)行低功耗器件的設(shè)計(jì)時(shí),人們必須仔細(xì)權(quán)衡性能、易用性、成本、密度以及功率等諸多指標(biāo)。

目前許多終端市場(chǎng)對(duì)可編程邏輯器件設(shè)計(jì)的低功耗要求越來越苛刻。工程師們?cè)谠O(shè)計(jì)如路由器、交換機(jī)、基站及存儲(chǔ)服務(wù)器等通信產(chǎn)品時(shí),需要密度更大、性能更好的,但滿足功耗要求已成為非常緊迫的任務(wù)。而在消費(fèi)電子領(lǐng)域,OEM希望采用的設(shè)計(jì)能夠?qū)崿F(xiàn)與ASIC相匹敵的低功耗。

盡管基于90nm工藝的FPGA的功耗已低于先前的130nm產(chǎn)品,但它仍然是整個(gè)系統(tǒng)功耗的主要載體。此外,如今的終端產(chǎn)品設(shè)計(jì)大多要求在緊湊的空間內(nèi)完成,沒有更多的空間留給氣流和大的散熱器,因此熱管理、功率管理繼續(xù)成為FPGA設(shè)計(jì)的一個(gè)重要課題。

采用FPGA進(jìn)行低功耗設(shè)計(jì)并不是一件容易的事,盡管有許多方法可以降低功耗。FPGA的類型、IP核、系統(tǒng)設(shè)計(jì)、軟件算法、功耗分析工具及個(gè)人設(shè)計(jì)方法都會(huì)對(duì)產(chǎn)品功耗產(chǎn)生影響。值得注意的是,如果使用不當(dāng),有些方法反而會(huì)增加功耗,因此必須根據(jù)實(shí)際情況選擇適當(dāng)?shù)脑O(shè)計(jì)方法。

FPGA設(shè)計(jì)的總功耗包括靜態(tài)功耗和動(dòng)態(tài)功耗兩個(gè)部分。其中,靜態(tài)功耗是指邏輯門沒有開關(guān)活動(dòng)時(shí)的功率消耗,主要由泄漏電流造成的,隨溫度和工藝的不同而不同。靜態(tài)功耗主要取決于所選的FPGA產(chǎn)品。

動(dòng)態(tài)功耗是指邏輯門開關(guān)活動(dòng)時(shí)的功率消耗,在這段時(shí)間內(nèi),電路的輸入輸出電容完成充電和放電,形成瞬間的軌到地的直通通路。與靜態(tài)功耗相比,通常有許多方法可降低動(dòng)態(tài)功耗。

采用正確的結(jié)構(gòu)對(duì)于設(shè)計(jì)是非常重要的,最新的FPGA是90nm的1.2 V器件,與先前產(chǎn)品相比可降低靜態(tài)和動(dòng)態(tài)功耗,且FPGA制造商采用不同的設(shè)計(jì)技術(shù)進(jìn)一步降低了功耗,平衡了成本和性能。這些90nm器件都改變了門和擴(kuò)散長(zhǎng)度,優(yōu)化了所需晶體管的開關(guān)速率,采用低K值電介質(zhì)工藝,不僅提高了性能還降低了寄生電容。結(jié)構(gòu)的改變,如增強(qiáng)的邏輯單元內(nèi)部互連,可實(shí)現(xiàn)更強(qiáng)大的功能,而無需更多的功耗。StraTIx II更大的改變是采用了六輸入查找表(LUT)架構(gòu),能夠通過更有效的資源利用,實(shí)現(xiàn)更快速、低功耗的設(shè)計(jì)。

除常規(guī)的可重配置邏輯外,F(xiàn)PGA正不斷集成更多的專用電路。最先進(jìn)的PLD就集成了專門的乘法器、DSP模塊、可變?nèi)萘縍AM模塊以及閃存等,這些專用電路為FPGA提供了更加高效的功能。總體上看,采用這些模塊節(jié)約了常規(guī)邏輯資源并增加了系統(tǒng)執(zhí)行的速度,同時(shí)可以減少系統(tǒng)功耗。因此更高的邏輯效率也意味著能夠?qū)崿F(xiàn)更小的器件設(shè)計(jì),并進(jìn)一步降低靜態(tài)功耗和系統(tǒng)成本。

不同供應(yīng)商所提供的IP內(nèi)核對(duì)于低功耗所起的作用各有側(cè)重。選擇正確的內(nèi)核對(duì)高效設(shè)計(jì)至關(guān)重要,有的產(chǎn)品將注意力集中在空間、性能和功耗的平衡上。某些供應(yīng)商提供的IP內(nèi)核具有多種配置(如Altera的Nios II嵌入式處理器內(nèi)核采用快速、標(biāo)準(zhǔn)和經(jīng)濟(jì)等三種版本),用戶可根據(jù)自己的設(shè)計(jì)進(jìn)行選擇。例如,如果一個(gè)處理器在同一個(gè)存儲(chǔ)分區(qū)中進(jìn)行多個(gè)不同調(diào)用,則采用帶板載緩存的Nios II/f就比從片外存儲(chǔ)器訪問數(shù)據(jù)的解決方案節(jié)約更多功耗。

如果用戶能夠從多種I/O標(biāo)準(zhǔn)中進(jìn)行選擇,則低壓和無端接(nON-terminated)標(biāo)準(zhǔn)通常利于降低功耗,任何電壓的降低都會(huì)對(duì)功耗產(chǎn)生平方的效果。靜態(tài)功耗對(duì)于接口標(biāo)準(zhǔn)特別重要,當(dāng)I/O緩沖器驅(qū)動(dòng)一個(gè)高電平信號(hào)時(shí),該I/O為外部端接電阻提供電壓源;而當(dāng)其驅(qū)動(dòng)低電平信號(hào)時(shí),芯片所消耗的功率則來自外部電壓。差分I/O標(biāo)準(zhǔn)(如典型值為350 mV的低開關(guān)電壓LVDS)可提供更低的功耗、更佳的噪聲邊緣、更小的電磁干擾以及更佳的整體性能。

利用FPGA的結(jié)構(gòu)來降低功耗還有賴于所使用的軟件工具。用戶可以從眾多綜合工具經(jīng)銷商那里進(jìn)行選擇,那些能夠使用專用模塊電路并智能地設(shè)計(jì)邏輯功能的綜合工具,將有助于用戶降低動(dòng)態(tài)功耗。此外,根據(jù)自己的設(shè)計(jì),用戶可以嘗試以面積驅(qū)動(dòng)來替代時(shí)序驅(qū)動(dòng)的綜合,以降低邏輯電平。不同綜合工具的選項(xiàng)有所差別,因此應(yīng)當(dāng)了解哪個(gè)“開關(guān)”或“按鈕”是必需的。同樣重要的還有布局與布線工具,一旦用戶選擇了某種特殊的FPGA,他就必須采用該供應(yīng)商的布局布線工具。由于互連會(huì)潛在地增加功耗,因而仔細(xì)進(jìn)行布局規(guī)劃和設(shè)計(jì)尤為重要。即便設(shè)計(jì)不需要很快完成,設(shè)計(jì)者也希望盡可能地加快進(jìn)度。諸如Altera LogicLock之類的工具所增加的設(shè)計(jì)功能可使用戶在器件定制區(qū)域內(nèi)進(jìn)行邏輯分組布局,因而一旦用戶找到一種高效布局,就能很快改編為他用?! 槭乖O(shè)計(jì)消耗最小的動(dòng)態(tài)功耗,可采用優(yōu)化的算法來降低多余和無意義的開關(guān)活動(dòng),例如具有許多不同狀態(tài)的狀態(tài)機(jī)。一個(gè)二進(jìn)制編碼的狀態(tài)機(jī)將通過觸發(fā)器產(chǎn)生多個(gè)比特并形成組合邏輯,采用格雷碼或One-hot編碼可降低從一個(gè)狀態(tài)到另一個(gè)狀態(tài)的開關(guān)次數(shù)。同時(shí)工程師在實(shí)現(xiàn)降低功耗的目標(biāo)時(shí),需要平衡格雷碼所需的額外組合邏輯,或One-hot編碼所需的附加觸發(fā)器。

數(shù)據(jù)保護(hù)和操作數(shù)隔離是另一種降低功耗的技術(shù)。在這種技術(shù)中只要沒有輸出,數(shù)據(jù)路徑算子的輸入都會(huì)保持穩(wěn)定。輸入的開關(guān)行為會(huì)波及其它電路,因此即使在忽略輸出的情況下也能消耗功率,例如某個(gè)集成了基本算術(shù)邏輯單元(ALU)的設(shè)計(jì)。通過保持輸入的穩(wěn)定性(停止開關(guān)),開關(guān)動(dòng)作的數(shù)量就能得到減少。這種方法為每個(gè)模塊的輸入端提供了保護(hù)邏輯(觸發(fā)器和/或門電路),減少了開關(guān)動(dòng)作,從而降低了系統(tǒng)整體的功耗。
在時(shí)鐘網(wǎng)絡(luò)上減少開關(guān)動(dòng)作也可大幅降低功耗。多數(shù)可提供獨(dú)立全局時(shí)鐘的FPGA是分割為幾部分的,若一個(gè)設(shè)計(jì)間歇地采用部分邏輯,就可關(guān)掉其時(shí)鐘以節(jié)省功耗。最新FPGA中的PLL可禁止時(shí)鐘網(wǎng)絡(luò)并支持時(shí)鐘轉(zhuǎn)換,因此既可關(guān)掉時(shí)鐘也可轉(zhuǎn)換為更低頻率的時(shí)鐘。更小的邏輯部分能夠潛在地使用本地/局域時(shí)鐘來替代全局時(shí)鐘,因此不必使用不相稱的大型時(shí)鐘網(wǎng)絡(luò)。

對(duì)易受干擾的設(shè)計(jì)而言,減少意外的邏輯干擾可大幅降低動(dòng)態(tài)功耗。意外干擾是在組合邏輯輸出時(shí)產(chǎn)生的暫時(shí)性邏輯轉(zhuǎn)換。減少這種效應(yīng)的一個(gè)方法是重新考慮時(shí)序設(shè)計(jì),以平衡時(shí)序關(guān)鍵路徑和非關(guān)鍵路徑間的延遲。用戶可在軟件工具的幫助下應(yīng)用這種方法,例如某軟件可通過組合邏輯移動(dòng)寄存器的位置,以實(shí)現(xiàn)平衡時(shí)序。另外一種方法是引入流水線結(jié)構(gòu),以減少組合邏輯深度,流水線還有助于增加速度。第二種方法對(duì)無意外干擾設(shè)計(jì)的效果不明顯,相反還可能增加功耗。

方便快捷的精確工具,不僅有助于設(shè)計(jì)工程師對(duì)功率進(jìn)行定量評(píng)估,同時(shí)也有助于加快產(chǎn)品設(shè)計(jì)進(jìn)度。如果在初期功率評(píng)估工具和數(shù)據(jù)表中沒有實(shí)際數(shù)據(jù),設(shè)計(jì)工程師就不能在設(shè)計(jì)階段走得更遠(yuǎn)。獲取初期評(píng)估數(shù)據(jù)工具,可使設(shè)計(jì)人員在設(shè)計(jì)開始之前就進(jìn)行。此外作為設(shè)計(jì)規(guī)劃,工程師可將布局和布線設(shè)計(jì)加載到更精確的功率評(píng)估持續(xù)當(dāng)中,從而得到一個(gè)更精準(zhǔn)的功耗描述。最好的評(píng)估工具可使仿真文件無縫集成到電源工具中,因而能夠獲得開關(guān)功率的精確描述;若不能進(jìn)行仿真,則該工具也能自動(dòng)給出FPGA設(shè)計(jì)的評(píng)估參數(shù)。

本文引用地址:http://m.butianyuan.cn/article/201706/349024.htm


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉