提高低功耗嵌入式項(xiàng)目中電池使用的壽命
設(shè)計一個嵌入式的電池壽命系統(tǒng)已經(jīng)成為許多團(tuán)隊重要的設(shè)計考慮。優(yōu)化電池壽命的能力有助于降低現(xiàn)場維護(hù)成本,并確保客戶有良好的產(chǎn)品經(jīng)驗(yàn),不必不斷更換或充電電池。
有很多團(tuán)隊使用的標(biāo)準(zhǔn)技術(shù)來幫助提高電池壽命。例如,將處理器放入低功率模式,關(guān)閉未使用的外圍設(shè)備等。然而,我發(fā)現(xiàn)開發(fā)團(tuán)隊經(jīng)常忽略一些標(biāo)準(zhǔn)技術(shù)。
在今天的帖子中,我們將探索幾種低功率設(shè)計技術(shù),我經(jīng)常看到這些技術(shù)被忽視,但這可能會帶來很大的不同。
技術(shù)#1-使用商業(yè)編譯器
作為軟件開發(fā)者和團(tuán)隊,我們對使用免費(fèi)和開放源代碼工具感到自滿。我們經(jīng)常忘記,在大多數(shù)情況下,你得到了你要的東西。雖然開源是一個很棒的工具,但它并不適用于所有情況,其中一個例子是低功率電池操作設(shè)備。
我最近做了一些性能測試,以比較代碼執(zhí)行與IAR的EWE編譯器。用相同的設(shè)置為同一處理器編譯相同的代碼后,測試代碼的性能提高了20-30%。手術(shù)結(jié)果各不相同,但數(shù)字驚人。
它是什么意思?這意味著,使用商業(yè)編譯器,您可以更快地執(zhí)行相同的代碼,這意味著您可以更快地回到睡眠模式。在睡眠模式中花費(fèi)更多的時間意味著更少的電流吸引和更高的可能性電池持續(xù)更長!
使用商業(yè)編譯器可能是一些低效率的成果,你不僅可以從代碼中獲得更好的性能,而且還可以節(jié)省電池壽命。
注意:結(jié)果將根據(jù)您手頭優(yōu)化代碼的好壞而有所不同.但是為什么要浪費(fèi)這么多的時間呢?
技術(shù)#2-使用空閑模式保持更長時間的睡眠
使用低功率模式的一個問題是,如果您使用了rtos,內(nèi)核滴滴將會周期性地喚醒系統(tǒng)。這種情況并不少見,它設(shè)置在一毫秒。如果你想讓你的設(shè)備在醒來前睡一分鐘怎么辦?那么,在那一分鐘里,你醒來的次數(shù)會比你想象的多6000次,浪費(fèi)了寶貴的電池壽命。
在許多循環(huán)中,一個簡單的解決方案是使用無問題模式。這種模式背后的想法是,當(dāng)系統(tǒng)進(jìn)入睡眠狀態(tài)時,它按下了一個低功率的定時器,所以rtos的滴答聲不會每毫秒發(fā)生。相反,它可能不會發(fā)生在幾分鐘,幾個小時,甚至一天!
正如您所想象的,這可以保持系統(tǒng)睡眠,防止它醒來并運(yùn)行大量不必要的CPU周期。結(jié)果是使用的電流較少,等同于更長的電池壽命。
注意:啟用無提示模式的方法和開發(fā)人員可能需要投入的工作從一個rto到下一個。
技術(shù)#3-利用內(nèi)部緩存
多年來,微控制器沒有緩存。它們是資源受限的設(shè)備,相對于功能豐富的年長兄弟姐妹來說,相對簡單。今天的情況并非如此。如果您查看ST、NXP和其他許多微控制器部件,您會發(fā)現(xiàn)性能部件都有內(nèi)部緩存。如果您正在設(shè)計低功率,您可以利用緩存提高能源消耗。
幾個機(jī)制允許緩存幫助您減少電流消耗。大多數(shù)與緩存的主要功能有關(guān):提供對常用數(shù)據(jù)或指令的更快訪問,從而減少CPU訪問較慢主內(nèi)存的時間。
例如,您可以使用緩存來優(yōu)化內(nèi)存訪問模式。緩存可以顯著優(yōu)化具有可預(yù)測內(nèi)存訪問模式的應(yīng)用程序的能量使用。通過有效地預(yù)取和緩存所需的數(shù)據(jù)和指令,微控制器最大限度地減少了對主存儲器的耗能訪問。
該緩存提供了比其他車載內(nèi)存更低的延遲和更快的訪問速度。結(jié)果是內(nèi)存訪問花費(fèi)的時間較少,這使得CPU的閑置周期較少。更快的訪問也意味著CPU可以更快地完成任務(wù),減少總體的活動CPU時間。所有這些都有助于降低處理器的整體能耗,從而延長電池壽命。
結(jié)論
當(dāng)開發(fā)人員和團(tuán)隊看到低功率設(shè)計時,他們通常會直接跳到睡眠模式、時鐘控控和其他降低能耗的技術(shù)上。雖然這些都是偉大的技術(shù),但他們有時忽略了簡單的技術(shù),也是低掛水果。我們在這篇文章中看到了一些你可以用來幫助改善你的設(shè)備的電池壽命或者減少你的動力設(shè)備的能量消耗的東西。
歸根結(jié)底,低功率的設(shè)計有很多。你可以無限期地優(yōu)化能量,但是在優(yōu)化過程中經(jīng)常會有一個"瓶頸",這將減少電池壽命的增加。要時刻關(guān)注你的技術(shù)如何提高你的電池壽命;當(dāng)你撞到瓶頸時,是時候停止優(yōu)化了!