郵 箱:joan.fan@bjminzs.com
傳 真:010-82618347
地 址:總部:北京市昌平區(qū)龍域北街金域
國際中心B座907
重慶Office:重慶市渝北區(qū)仙桃街
道錦熙路88號龍湖天際1號
樓1703
本文討論影響高性能DSP功耗的因素,介紹一些DSP功耗的優(yōu)化方法。 隨著嵌入式應(yīng)用需求的不斷提高,DSP的速度也不斷提高。現(xiàn)在常見的高性能DSP速度已達到1GHz,TI(Texas Instruments)的TMS320C6455最高速度已達到1.2GHz。然而,DSP的功耗也隨著DSP的速度提升而快速增加。DSP功耗越來越成為DSP工程師關(guān)注的重要問題。 另外,1.2GHz目前幾乎是DSP速度的上限,主要原因還是功耗的限制。更高速度DSP所帶來的高功耗的負面影響已超過了其在性能方面帶來的好處。基于這個原因,現(xiàn)在普遍采用的提高DSP性能的技術(shù)是在單芯片內(nèi)集成更多的核,而不是單純提高單核的運行速度。
數(shù)字電路的功耗不外乎兩種:一種是動態(tài)功耗,消耗于邏輯的轉(zhuǎn)換;另一種是靜態(tài)功耗,由于CMOS晶體管存在的各種泄漏造成。對于較老的DSP,或者說基于大于130nm工藝的DSP,靜態(tài)功耗可以忽略不計;但隨著工藝不斷精微,靜態(tài)功耗所占的比例越來越大。
TI在DSP功耗方面一直處于業(yè)界領(lǐng)先的地位,下表列出了TI一些基于不同工藝的DSP的典型靜態(tài)功耗在總功耗中所占的比例。
DSP | 工藝 | 靜態(tài)功耗所占比例 |
TMS320C6201 | 180nm | <1% |
TMS320C6416 | 130nm | 11% |
TMS320C6455 | 90nm | 24% |
對于最新的基于65nm工藝的DSP,靜態(tài)功耗所占的比例達到50%左右。另外,靜態(tài)功耗也受DSP工作溫度的影響,下圖列出TMS320C6455在不同溫度下的靜態(tài)功耗。
從上圖可以看出,隨著工作溫度上升,靜態(tài)功耗呈指數(shù)級上升,這使得靜態(tài)功耗在總功耗中所占的比例進一步提高。另外,值得注意的是,溫度升高會增加功耗,而功耗增加又使芯片溫度進一步升高,溫度和功耗這種互相助長的特性使得DSP散熱系統(tǒng)的設(shè)計顯得更為重要。
當(dāng)門發(fā)生邏輯狀態(tài)轉(zhuǎn)換并產(chǎn)生內(nèi)部結(jié)點充電所需的開關(guān)電流以及P通道及N通道同時暫態(tài)開啟引起直通電流時,就會出現(xiàn)動態(tài)功耗。通過以下公式可以估算其近似值:
其中,Cpd為動態(tài)電容,F(xiàn)為開關(guān)頻率,Vcc為電源電壓。上述關(guān)系中包含兩個重要概念:動態(tài)功耗與開關(guān)頻率呈線性關(guān)系,與電源電壓呈二次關(guān)系。下圖列出了TMS320C6455在不同工作頻率下的典型功耗。
另外,最大安全開關(guān)頻率往往取決于電源電壓,所以這兩者是相互關(guān)聯(lián)的。以TMS320C6455為例,當(dāng)工作頻率小于或等于850MHz時,其要求的核電壓為1.2V;而當(dāng)工作頻率大于850MHz時,其核電壓必須為1.25V。
靜態(tài)功耗主要取決于芯片的設(shè)計和工藝。而實際應(yīng)用中可采取的主要優(yōu)化方法是控制溫度。常見的散熱方法包括散熱片和風(fēng)扇。對于高功耗DSP,散熱片是低成本而且有效的散熱方式;而風(fēng)扇的使用則需要仔細考慮更多的因素,如風(fēng)扇的尺寸,位置,成本及可靠性等等。
優(yōu)化動態(tài)功耗的方法則比較多。在不影響系統(tǒng)性能的前提下,通過降低電壓和頻率就可能大大降低動態(tài)功耗。不過,降低CPU時鐘速率也會成比例地延長執(zhí)行該任務(wù)集的時間,因此必須仔細分析應(yīng)用以確保滿足其實時需求。
電壓的調(diào)節(jié)需要特殊的可配置電源的支持,這可能會增加系統(tǒng)的成本;頻率的調(diào)節(jié)則可利用DSP內(nèi)部自帶的可編程PLL來實現(xiàn),配置不同的倍頻系數(shù)即可得到不同的頻率。為了實現(xiàn)電壓/頻率的調(diào)節(jié),DSP上的軟件需要實時監(jiān)控DSP的負載,根據(jù)負載選擇功耗最小而又能滿足實時處理要求的電壓/頻率配置。
在DSP電壓/頻率一定的情況下,DSP動態(tài)功耗還受DSP使用率的影響。通常可采用以下方法來降低DSP使用率:
1. 關(guān)閉不需要或暫時不使用的外設(shè)。例如,TMS320C6455 DSP上,所以的外設(shè)模塊的時鐘都可以通過軟件關(guān)閉或打開。
2. 空閑時,將DSP置于低功耗或睡眠模式。例如,在TMS320C6455 DSP上可以通過執(zhí)行IDLE指令來實現(xiàn)。處于IDLE狀態(tài)的DSP可被任何中斷事件喚醒。因此,在等待處理數(shù)據(jù)時,為了節(jié)省功耗,應(yīng)避免采用查詢方式,而采用IDLE與中斷結(jié)合的方式。 3. 不訪問存儲器時將其置于低功耗或睡眠模式。例如,TMS320C6455 DSP上,所有片內(nèi)存儲器都可通過軟件使其處于低功耗模式,而任何對內(nèi)存的訪問又可使其自動恢復(fù)到正常工作模式。外部擴展SDRAM也支持自刷新模式以節(jié)省功耗。
為了更進一步降低DSP功耗,還有一些細節(jié)值得注意:
1. 充分利用Cache或其它技術(shù)減少存儲器的訪問。例如,TMS320C6455的SPLOOP Buffer和16-bit壓縮指令可以減少代碼的大小及訪問頻率。訪問外部擴展存儲器的功耗往往比訪問內(nèi)部存儲器高得多,盡量將頻繁訪問的數(shù)據(jù)放在片內(nèi),以減少外部存儲器的訪問。另外,外部SDRAM往往基于突發(fā)(Burst)的方式訪問,即使你只需要一個字節(jié),存儲器也可能會存取8個字,所以對SDRAM的要盡量采用連續(xù)大塊的訪問方式。