5.1 介紹
能量以熱量形式消耗,溫度升高芯片失效率也會增加,增加散熱片或風扇會增加整體重量和成本,在SoC級別對功耗進行控制就可以減少甚至可能消除掉這些開支,產品也更小更便宜更可靠,本章描述了減少動態功耗和靜態功耗的各種技術,
5.2 功耗源
三個主要的功耗源:浪涌、靜態功耗、動態功耗,
浪涌電流:器件上電時最大瞬時輸入電流,浪涌電流在應用中也稱為啟動電流,浪涌電流與設備有關,如電機啟動電流前幾個周期時正常滿載電流的數倍,
基于SRAM的FPGA也有很明顯的浪涌電流,上電時器件沒有配置,需要外部下載資料配置編程資源(查找表、布線資源),反熔絲FPGA無需上電配置,所以沒有浪涌電流,
待機電流:關斷主電源或系統進入待機模式下產生的電流,待機電流產生的功耗稱為待機功耗,待機功耗也與元件電氣特征密切相關,待機功耗也稱為靜態功耗,靜態功耗也包括晶體管漏電流產生的功耗,
動態功耗(開關功耗)是門電路輸出轉換時,由邏輯轉換所引起的功耗,動態功耗定義公式:

邏輯0->1,電容充電;邏輯1->0,電容放電,
ASIC總功耗:

在典型應用中,動態功耗占到了總功耗的80%
5.3 在各設計抽象層次降低功耗
降低功耗應該在所有設計層次上進行:系統層、邏輯層、物理層,層次越高就可能越有效,
在高的抽象層次上進行功耗的優化效果更好,如在系統和體系結構級可以達到最大的降低效果,

為了最大程度降低功耗,各抽象層次在設計時就要把功耗因素考慮在內,

上面的100X打錯了是100%
5.4 系統級低功耗技術
5.4.1 片上系統方法
納米級高端芯片的IO使用比內核更高的電壓供電(3V3),占總功耗的50%,如果整個系統包含多個芯片,這些芯片間的連線將產生大量功耗,片上系統方法學主要關注降低功耗,縮減面積以及降低成本的手段,
5.4.2 硬體/軟體劃分
嵌入式處理器在大規模數字系統中廣泛使用,某些功能可以用硬體實作,其余部分可以用軟體實作,
通信演算法具有高度遞回的性質,少量代碼可以負責大量的處理任務,這些資源密集型模塊用硬體識別和實作,就可以節約大量功耗,

使用硬體綜合工具從Verilog或者VHDL描述的模塊中提取出物理模型,編譯器也可以將用高級語言撰寫的程式編譯成嵌入式處理器所使用的原生指令集,
一種比常規方式更有效的HW/SW劃分方法是使用基于模型的方式,如下圖,

這是一種基于給定規范建立系統模型的想法,模型要么完全自己建立要么使用可復用的已有模型庫,隨著庫的增加,可以大大縮短設計時間,
可以使用SystemC建立模型,該語言可以用于對硬體建模,
5.4.3 低功耗軟體
修改應用程式可以節約大量能耗,得到“更綠色”和能效更高的系統,
高級語言便于使用,但是有些結構難以用其實作,使用高頻輪詢實作這樣的結構,這會導致較高的能耗,所以使用高級語言時要避免使用復雜原語,
嵌入式應用使用的C代碼可能會使用若干回圈,一些應用中,90%的運行時間可能都在執行這些回圈,
優化方法:合并回圈,使執行的指令數減少,基于硬體體系結構或處理器指令和暫存器的實作,我理解的就是更高效的利用硬體,而不是通過軟體程式,
5.4.4 選擇處理器
首先要選擇合適資料寬度的處理器,如果使用簡單的MAC(Multiply Accumulate Unit)能滿足運算要求,就沒必要用專用的DSP處理器,這樣可以顯著降低功耗,

圖中是一個節省功耗的系統體系結構,利用微處理器進行控制,同時用協處理器或DSP進行資料處理,最好的系統體系結構用特定的機器(協處理器)來執行這個任務,使任務在最小且能效最高的機器中完成,即特定功能使用特定硬體實作從而實作降低功耗的目的,大多數情況下,微處理器和協處理器不會并行運行,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/539855.html
標籤:其他
