低功耗運(yùn)行仍然是各行各業(yè)應(yīng)用的關(guān)鍵驅(qū)動(dòng)因素。隨著睡眠模式的加入,電源管理突然從單純的硬件問(wèn)題轉(zhuǎn)變?yōu)檐浖_(kāi)發(fā)人員必須考慮的問(wèn)題。
電源模式的最簡(jiǎn)單應(yīng)用是,當(dāng)系統(tǒng)空閑時(shí),將其置于睡眠狀態(tài)。然而,當(dāng)今的MCU提供多種低功耗模式,使低功耗設(shè)計(jì)進(jìn)一步復(fù)雜化。現(xiàn)在,開(kāi)發(fā)人員需要考慮多核、高頻信號(hào)處理的復(fù)雜獨(dú)立性,以及如何可靠地滿足系統(tǒng)的所有實(shí)時(shí)期限。
我請(qǐng)賽普拉斯半導(dǎo)體的系統(tǒng)工程師Greg Verge分享他的經(jīng)驗(yàn),如何優(yōu)化雙核PSoC 6的多種電源模式的使用。除了活動(dòng)(例如 LP 或低功耗)和睡眠(例如 ULP 或超低功耗)模式外,這款 Cortex M0 + Cortex M4 SoC 還支持深度睡眠和休眠模式。開(kāi)發(fā)人員還可以選擇降低內(nèi)核電壓以節(jié)省功耗。
每種電源模式點(diǎn)亮 SoC 的不同部分(請(qǐng)參閱表 1)。Active 為整個(gè)芯片供電,而 Hibernate 僅驅(qū)動(dòng)保持 RAM、實(shí)時(shí)時(shí)鐘和 I/O 引腳配置所需的最低功率。模式節(jié)省的電量越大,SoC 的功能就越少,喚醒回活動(dòng)模式所需的時(shí)間就越長(zhǎng)。
睡眠模式仍然是您的空閑循環(huán)。CPU 時(shí)鐘停止,但可以通過(guò)中斷或來(lái)自另一個(gè)內(nèi)核的請(qǐng)求快速恢復(fù)到活動(dòng)模式。外設(shè)可以保持活動(dòng)狀態(tài),CPU “立即”從中斷的位置執(zhí)行代碼。
深度睡眠很像睡眠,但更多的芯片關(guān)閉,喚醒時(shí)間更長(zhǎng)。使用睡眠或深度睡眠的決定取決于系統(tǒng)需要喚醒的速度以及系統(tǒng)關(guān)閉時(shí)哪些外圍設(shè)備需要處于活動(dòng)狀態(tài)。高頻時(shí)鐘不會(huì)上電,因此您會(huì)丟失一些通信鏈路(UART),同時(shí)能夠保留其他鏈路(SPI和I2C)。ADC也需要一個(gè)MHz時(shí)鐘。您的PWM也會(huì)消失,所以當(dāng)LED熄滅時(shí)不要擔(dān)心。
事情開(kāi)始變得復(fù)雜的地方是多核。低功耗模式會(huì)影響 CPU 和系統(tǒng)。將一個(gè) CPU 放入深度睡眠不會(huì)自動(dòng)關(guān)閉系統(tǒng)資源,因?yàn)榱硪粋€(gè) CPU 可能正在使用它們。因此,只有當(dāng)兩個(gè) CPU 都處于深度睡眠狀態(tài)時(shí),您才能獲得完全的低功耗優(yōu)勢(shì)。如果您的內(nèi)核在嘗試深度睡眠時(shí)不同步,這可能會(huì)嚴(yán)重影響您的整體電源效率。
休眠模式
休眠模式使系統(tǒng)進(jìn)入最低功耗狀態(tài)。休眠是一種承諾,因?yàn)槟悴荒芎?jiǎn)單地恢復(fù)執(zhí)行;系統(tǒng)需要重置。休眠在很長(zhǎng)的睡眠期間很有用,此時(shí)您只需要一點(diǎn)智能即可喚醒系統(tǒng)。這對(duì)于實(shí)現(xiàn)斷電/打開(kāi)功能或操作低頻傳感器非常有用。
休眠模式還支持保留 RAM 來(lái)保存有限的狀態(tài)信息。例如,您可以存儲(chǔ)以前的傳感器讀數(shù)。重置系統(tǒng)時(shí),它會(huì)檢查傳感器并將當(dāng)前值與以前的值進(jìn)行比較。如果它們?cè)陂撝祪?nèi),則不會(huì)觸發(fā)任何事件,系統(tǒng)將回落到休眠模式。實(shí)現(xiàn)最大功率效率。
僅僅因?yàn)槟O(shè)法使CPU進(jìn)入正確的低功耗模式并不意味著您正在運(yùn)行。在深度睡眠和休眠中,I/O 引腳泄漏可能會(huì)主導(dǎo)功耗。考慮一個(gè)用于偏置電阻器的引腳。除了確保盡可能使用最高電阻外,引腳還需要適當(dāng)?shù)乇3指唠娖交虻碗娖剑宰畲蟪潭鹊販p少功耗(即漏電)。
休眠模式保持 I/O 引腳的配置,以便您可以將所有引腳保持在最低功耗狀態(tài)。例如,通常的做法是將電阻器直接連接到電源。如果將電阻連接到 GPIO,而不是電阻器不斷獲取功率,則現(xiàn)在可以打開(kāi)和關(guān)閉電阻器。如果您不知道這一點(diǎn),您可能會(huì)認(rèn)為系統(tǒng)以7 μA的低電流運(yùn)行,而引腳實(shí)際上正在消耗1 mA。從這個(gè)角度來(lái)看,效率降低了 143 倍,將 10 年的使用壽命縮短到 25 天。
影響低功耗運(yùn)行的另外兩個(gè)主要因素是降低內(nèi)核電壓和穩(wěn)壓器的選擇。例如,PSoC 6 可以為內(nèi)核提供 1.1 V 或 0.9 V。你無(wú)法以0.9V的速度為內(nèi)核提供時(shí)鐘,但如果你只是檢查溫度傳感器,50 MHz的處理能力仍然比你需要的要多得多。
穩(wěn)壓器(集成LDO或高效開(kāi)關(guān)模式降壓轉(zhuǎn)換器)的選擇允許您以功率效率換取成本。使用降壓轉(zhuǎn)換器可提供 90% 的效率,但代價(jià)是使用外部電感器。
隨著芯片制造商不斷改進(jìn)低功耗操作,我們的嵌入式系統(tǒng)將能夠事半功倍。請(qǐng)記住,隨著更多選項(xiàng)的出現(xiàn),更多的方法可以消除您優(yōu)化系統(tǒng)的所有辛勤工作,而對(duì)系統(tǒng)實(shí)際在做什么的單一,簡(jiǎn)單的誤解。
表 1:不同的電源操作模式使開(kāi)發(fā)人員能夠優(yōu)化運(yùn)行時(shí)功耗,但您仍然需要小心。這里顯示的是賽普拉斯半導(dǎo)體雙核PSoC 6的模式、電流和喚醒時(shí)間。
-
電源
+關(guān)注
關(guān)注
184文章
17734瀏覽量
250466 -
嵌入式
+關(guān)注
關(guān)注
5083文章
19133瀏覽量
305656 -
cpu
+關(guān)注
關(guān)注
68文章
10872瀏覽量
211973 -
soc
+關(guān)注
關(guān)注
38文章
4173瀏覽量
218381 -
嵌入式軟件
+關(guān)注
關(guān)注
4文章
240瀏覽量
26653
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論