許多電池供電的手持系統都要求具備數字信號處理功能,設計這種產(chǎn)品時(shí),我們必須高度重視功耗問(wèn)題。 選擇既能符合計算能力要求又在功率預算之內的DSP是決定設計在市場(chǎng)成敗的關(guān)鍵,否則,設計小組必須勞民傷財重新設計。 不過(guò),大多數設計工程師已經(jīng)痛苦地了解到,傳統 DSP 功耗估算方法最多也只能獲得近似值,因此我們需要用軟件來(lái)管理功耗并估算功耗的新技術(shù)。 數據表不夠用 以前,設計小組選擇處理器時(shí)首先要查看備選DSP的數據表。以 mA/MIP 或mA/MHz 為單位的測量值通常與芯片的最大 IDD 配套提供。幾乎所有數據表都提供上述信息。 上述數據的問(wèn)題在于,功耗很大程度上取決于應用本身,而數據表中的統計數據往往不能完全符合實(shí)際應用。 半導體公司認識到上述問(wèn)題,通常只給出基本情況,供估算功耗數值參考。舉例來(lái)說(shuō),常見(jiàn)的 TI DSP 會(huì )給出以下工作情況:CPU 執行 75% 雙 MAC 和 25% ADD,數據總線(xiàn)活動(dòng)適中(正弦波形圖表)。CPU 及 CLKGEN (DPLL) 域處于工作狀態(tài)中。 除非設計小組的應用情況與上述描述一致,否則數據表中的數據僅用于比較同一制造商推出的類(lèi)似芯片。事實(shí)上,其他半導體公司很可能會(huì )在不同情況下測量功耗。 對那些功耗限制更嚴的設計人員來(lái)說(shuō)有些狀況讓數據表的價(jià)值更成問(wèn)題。 DSP是復雜的芯片,其包括休眠模式和斷電模式等節電功能。上述功能會(huì )將單次估算中的誤差加以放大。 數據表未考慮到功耗實(shí)際上由兩部分組成:工作在內核電壓源上的處理器和工作在 I/O 電源上的外設都涉及功耗問(wèn)題。 設計小組希望用不同的實(shí)施方法和平臺比較功耗。 這些挑戰造成的后果就是,設計小組往往需要構建原型板,并根據不同處理器、實(shí)施方法及平臺等因素對功耗加以估算。上述方法盡管要花很多時(shí)間而且成本不菲,但至少還能為我們提供比較精確的數據。 變量測量 我們對估算不同情況及實(shí)施方法下的功耗所用的方法已經(jīng)有了較好的了解。只有經(jīng)過(guò)細分,并根據實(shí)際測量得出的數據才會(huì )更加有用。具體過(guò)程通常如下: ·將芯片分為子系統; ·獨立執行每個(gè)子系統; ·用減法分析來(lái)確定每個(gè)子系統的功耗; ·確定每個(gè)子系統的最大功耗及閑置功耗; ·用內插法估算子系統功耗; ·最后用疊加法估算芯片功耗。 我們通常將經(jīng)測量得出的數據連同制造商給出的數據(如內核電壓)制成電子數據表,并通過(guò)適當運算進(jìn)行估算。如圖 1 所示,右側的灰白部分即為功耗估算結果。 圖1. 電子數據表有一定的用處,但仍不能反映實(shí)際情況。 這種方法與數據表值比較法相比盡管有一定改進(jìn),但仍需進(jìn)一步完善。舉例來(lái)說(shuō),我們不妨假設主要用于過(guò)濾應用的 DSP,其工作時(shí)間約占 20%,待機時(shí)間約占80%。 目前的 DSP 需要考慮到占空比問(wèn)題,這有助于節電。舉例來(lái)說(shuō),芯片不工作時(shí),電壓可降至待機數值。頻率在 CMOS 功耗中起主要作用,如果芯片不參與過(guò)濾工作,那么我們就能降低頻率。 電源優(yōu)化技術(shù) TI 等半導體廠(chǎng)商努力推出芯片級電源控制技術(shù)。以前設計小組是無(wú)法應用這種特性的,F在,設計人員能通過(guò)軟件發(fā)揮電源優(yōu)化技術(shù)的優(yōu)勢。 為了說(shuō)明如何實(shí)現上述工作,我們不妨先來(lái)看看設計小組能采用哪些優(yōu)化性能的方法。 在芯片自身內部,系統設計人員能采用深度休眠模式、動(dòng)態(tài)電壓和頻率縮放等技術(shù),而且還能在芯片閑置時(shí)關(guān)閉不必要的資源。 我們還能在系統啟動(dòng)過(guò)程中節約大量電力。通常說(shuō)來(lái),啟動(dòng)過(guò)程中會(huì )開(kāi)啟所有系統,不過(guò)我們可以讓那些應用及啟動(dòng)過(guò)程中不用的部分關(guān)閉或保持閑置狀態(tài)。 我們在軟件代碼優(yōu)化時(shí)也要想到功耗問(wèn)題。通常的規律是,我們應以盡可能小的占用空間集成盡可能多的必需功能,這樣可以縮減存儲器的占用面積。不過(guò),由于應用不得不更頻繁的執行代碼,這種做法往往會(huì )導致功耗的加大。 編寫(xiě)代碼時(shí)還應減少指令存取的數量,并優(yōu)化緩存和內部指令緩沖。上述措施都有助于節約DSP的工作模式時(shí)間,并最大化閑置時(shí)間,以此來(lái)降低頻率和電壓。 我們還能用其他技術(shù)來(lái)實(shí)現系統級控制,包括: ·認真選擇組件 ·盡可能減少組件數量 ·首先采用內部存儲器來(lái)最小化芯片間的功率損耗 ·對于啟動(dòng)或低速運算以及偶爾用到的功能采用外部存儲器 ·啟動(dòng)后給啟動(dòng)存儲器斷電 新一代電源控制技術(shù) 通常說(shuō)來(lái),半導體廠(chǎng)商在芯片中內置的節電功能會(huì )自動(dòng)工作,舉例來(lái)說(shuō),芯片進(jìn)入閑置狀態(tài)后電壓和頻率就會(huì )自動(dòng)降低。 不過(guò),我們現在有了更尖端的技術(shù),系統設計人員現在能對 DSP BIOS 進(jìn)行工作,從而進(jìn)一步加強電源管理。 自動(dòng)的電壓或頻率縮放是一種有用的特性。不過(guò) DSP 的內核電壓快速變動(dòng)往往會(huì )對外設造成意料不到的影響。操作系統的時(shí)基可能會(huì )因頻率變動(dòng)而受到影響,有些外設驅動(dòng)程序可能需要了解頻率和電源狀態(tài)的變化,這樣才能繼續有效工作。 操作系統調度程序的有效性也會(huì )因為頻率縮放而受影響。通常說(shuō)來(lái),系統應進(jìn)行協(xié)調,以確保安全的電壓和頻率控制,適當地進(jìn)入閑置狀態(tài)。 半導體廠(chǎng)商通過(guò)創(chuàng )建DSP BIOS功率調整程序庫,可實(shí)現更高級的功耗控制,同時(shí)還能確保避免因電壓和頻率縮放而發(fā)生問(wèn)題。通過(guò)GPIO引腳向外設發(fā)送消息,我們還能將上述控制技術(shù)從芯片延伸到外設。 圖2顯示了功率調整例程的實(shí)例(如下圖中的 PSL),設計人員通過(guò)代碼編寫(xiě),可從程序庫中直接調用。 我們不妨假設 DSP 正在運行非常復雜的算法。通常說(shuō)來(lái),內核電壓為 1.6V,頻率為 200 MHz,如圖 2 中左側藍線(xiàn)所示。不過(guò),當未運行算法時(shí),我們可用功率調整程序庫將頻率降至 72 MHz。 一般來(lái)說(shuō),內核電壓會(huì )保持為1.6V。不過(guò)我們也可用功率調整程序庫安全地將電壓降至1.2V,從而在算法不運行期間使功耗進(jìn)一步降低 30 mW。 TI 率先在其TMS320VC5509A DSP中采用功率調整程序庫,這就是本例所用的DSP。 圖2. 功率調整程序庫功能實(shí)現功耗微調。 新一代功耗估算技術(shù) 除了上述各種功耗工具的幫助之外,設計人員還需要想辦法估算整個(gè)系統的功率。解決這一問(wèn)題的最新方法需要將半導體公司提供的軟件與虛擬儀表廠(chǎng)商(如美國國家儀器公司National Instruments)提供的硬件進(jìn)行集成。 在采用這種方法時(shí),開(kāi)發(fā)人員可利用美國國家儀器公司提供的 LabView 來(lái)監控實(shí)際應用過(guò)程中芯片的執行情況。TI 在數據表中提供了有關(guān) TMS320VC5509 的豐富功率測試數據。 采用 LabView 和 C55 電源優(yōu)化 DSK (C55 Power Optimization DSP Starter Kit),設計小組能?chē)L試采用不同的實(shí)施方案,并用類(lèi)似于圖 3 所示的 GUI 工具對功耗加以調節。 圖3. 調節 DSP 內核、I/O及電路板功耗。 我們可用上述工具包探索各種設計方案,并分別測得 DSP 內核、DSP I/O 以及包括閃存存儲器、編解碼器及其他外設在內的整個(gè)電路板的高精度功耗。 通過(guò)結合采用上述創(chuàng )新方法來(lái)控制芯片功耗并估算系統功耗,設計人員能夠獲得一種功能強大的新型方法,適用于功耗要求嚴格的 DSP 應用。 |