設(shè)計(jì)低功耗 MCU 并不容易,為您的特定嵌入式設(shè)計(jì)選擇合適的 MCU 也不是一件容易的事。許多應(yīng)用特定的考慮因素使比較 MCU 規(guī)格表具有挑戰(zhàn)性。本文分析了在分析競(jìng)爭(zhēng)性 MCU 替代品的電源效率時(shí)應(yīng)考慮的關(guān)鍵因素。
節(jié)約能源對(duì)環(huán)境有益,也更省錢。提高能源效率的諸多好處已得到充分證明:降低消費(fèi)者的電費(fèi)、減少公用事業(yè)的負(fù)擔(dān)、降低電子產(chǎn)品的擁有成本以及減少在垃圾填埋場(chǎng)丟棄的廢舊電池。
隨著電子設(shè)備的使用幾乎滲透到我們生活的方方面面,降低功耗必須從半導(dǎo)體層面開(kāi)始。在芯片級(jí)設(shè)計(jì)的節(jié)能技術(shù)影響深遠(yuǎn)。對(duì)于作為當(dāng)今大多數(shù)電子設(shè)備背后的智能引擎的微控制器 (MCU) 而言尤其如此。
從系統(tǒng)架構(gòu)的角度來(lái)看,識(shí)別哪些 MCU 真正是“低功耗”的挑戰(zhàn)要求設(shè)計(jì)人員通過(guò)各種半導(dǎo)體供應(yīng)商提出的無(wú)數(shù)聲明進(jìn)行導(dǎo)航。由于供應(yīng)商使用的指標(biāo)不同(并且經(jīng)常令人困惑),這不是一項(xiàng)簡(jiǎn)單的任務(wù)。
讓我們仔細(xì)看看在分析競(jìng)爭(zhēng)性 MCU 替代品的電源效率時(shí)應(yīng)考慮的關(guān)鍵因素。
在基本層面上,MCU 功耗可以定義為以下各項(xiàng)的總和:
總功耗 = 活動(dòng)模式功耗 + 待機(jī)(睡眠)模式功耗
但是,要記住的另一個(gè)重要指標(biāo)是MCU 從待機(jī)狀態(tài)轉(zhuǎn)換到活動(dòng)狀態(tài)。由于 MCU 在所有數(shù)字和模擬組件完全穩(wěn)定并運(yùn)行之前無(wú)法進(jìn)行任何有用的處理,因此在計(jì)算總功耗時(shí)添加這個(gè)(浪費(fèi)的)功率很重要:
總功耗 = 活動(dòng)模式功率 + 待機(jī)(睡眠) 模式功率+喚醒功率

因?yàn)槊總€(gè)應(yīng)用程序都是不同的,系統(tǒng)設(shè)計(jì)人員傾向于將其中一些元素的權(quán)重超過(guò)其他元素。例如,水表等一些應(yīng)用程序大部分時(shí)間都處于待機(jī)狀態(tài),因此很明顯,它們的長(zhǎng)占空比需要非常低的待機(jī)功耗。其他應(yīng)用(例如數(shù)據(jù)記錄器)經(jīng)常進(jìn)入和退出活動(dòng)狀態(tài),因此限制在喚醒轉(zhuǎn)換模式中花費(fèi)的時(shí)間至關(guān)重要。但是,開(kāi)發(fā)引人注目的 MCU 解決方案的供應(yīng)商不會(huì)試圖猜測(cè)這些指標(biāo)中的哪一個(gè)最重要,而是會(huì)從頭開(kāi)始設(shè)計(jì)一個(gè)解決方案,專注于最小化這個(gè)等式的每個(gè)部分。要實(shí)現(xiàn)這一點(diǎn),需要強(qiáng)大的混合信號(hào)專業(yè)知識(shí)來(lái)解決架構(gòu)級(jí)和電路級(jí)挑戰(zhàn),以最大限度地降低模擬和數(shù)字域的功耗。對(duì)每個(gè)變量的簡(jiǎn)短討論將有助于突出系統(tǒng)設(shè)計(jì)人員在嘗試為其應(yīng)用選擇最佳 MCU 解決方案時(shí)需要注意的問(wèn)題類型。
主動(dòng)模式電流
對(duì)于 CMOS 邏輯門,動(dòng)態(tài)功耗可以用以下眾所周知的公式重寫:
主動(dòng)模式功率 = C x V2 xf
其中 C 是負(fù)載電容,V 是電源電壓,f 是開(kāi)關(guān)頻率。
電容項(xiàng)是所使用的設(shè)計(jì)和處理技術(shù)的函數(shù),頻率項(xiàng)是應(yīng)用程序處理要求的函數(shù)。但是,從前面的等式可以看出,電源電壓對(duì) MCU 消耗的總功率有不成比例的影響。因此,在 MCU 設(shè)計(jì)中添加電壓調(diào)節(jié)可以通過(guò)為 MCU 電路提供低得多的穩(wěn)定電源電壓來(lái)顯著節(jié)省有源模式的功耗。開(kāi)關(guān)型轉(zhuǎn)換器可能是一種可能的解決方案,但它們最適合需要大電壓轉(zhuǎn)換比的穩(wěn)壓器環(huán)境。但是,對(duì)于平均電壓轉(zhuǎn)換比很?。ㄔ陔姵貕勖Y(jié)束時(shí)接近 1:1)的電池類型應(yīng)用,
為了說(shuō)明使用 LDO 穩(wěn)壓器的好處,重述 CMOS 動(dòng)態(tài)功率方程會(huì)很有幫助:
有源模式功率= C x V2 xf
= V x (C x V xf)
= V x I,其中動(dòng)態(tài)電流 I = C x V xf
通常將動(dòng)態(tài)電流標(biāo)準(zhǔn)化為 1MHz 的頻率和特定的電源電壓。例如,最近推出的一款超低功耗 MCU 在 1.8 V 時(shí)的動(dòng)態(tài)電流消耗為 160 μA/MHz。如果沒(méi)有電源調(diào)節(jié),該指標(biāo)將增加到 (160) x (3.2/1.8) = 284 μA/MHz,當(dāng)電源電壓為 3.2 V。使用 LDO,電池電流將在整個(gè)電源范圍內(nèi)保持固定在 160 μA/MHz。
可以看出,這種先進(jìn)的電源架構(gòu)可用于在整個(gè)工作電壓范圍內(nèi)保持恒定的有源電流,并可幫助系統(tǒng)設(shè)計(jì)人員顯著降低功耗。因此,從系統(tǒng)設(shè)計(jì)人員的角度來(lái)看,確定在整個(gè)工作電壓范圍內(nèi)工作時(shí)的 MCU 電流消耗非常重要——而不僅僅是在 MCU 供應(yīng)商通常引用的 1.8 V 最小工作條件下。引用一個(gè)過(guò)于樂(lè)觀的電流數(shù)字,假設(shè)任何電壓都低于典型的電壓供應(yīng),并不能準(zhǔn)確地反映應(yīng)用程序在現(xiàn)實(shí)世界中的使用方式。例如,在 2 x AA/AAA 和紐扣電池應(yīng)用中,電池最常在其 3 V 初始電壓附近運(yùn)行,因此引用的 1.8 V 規(guī)格可能具有欺騙性,因?yàn)椋?/p>
此外,由于功耗與開(kāi)關(guān)頻率成正比,因此系統(tǒng)設(shè)計(jì)人員必須將引用的電流數(shù)字標(biāo)準(zhǔn)化為電流/MHz 為基礎(chǔ)。通過(guò)結(jié)合這兩個(gè)因素,可以根據(jù)以下指標(biāo)對(duì) MCU 進(jìn)行并排比較:
電流消耗/MHz @ 3 V
當(dāng)真正有意義的值是指令時(shí)鐘速度時(shí),一些供應(yīng)商會(huì)試圖通過(guò)將“MHz”等同于系統(tǒng)時(shí)鐘速度來(lái)混淆這個(gè)問(wèn)題。這是具有欺騙性的,因?yàn)橄到y(tǒng)時(shí)鐘速度可以以兩倍(或更多)的實(shí)際指令速度運(yùn)行,從而使其有效功耗增加一倍(或更多)。因此,確保一切都按照指令時(shí)鐘速度標(biāo)準(zhǔn)化很重要。通過(guò)這樣做,并通過(guò)使用典型的電源電壓,可以正確得出實(shí)際的活動(dòng)模式電流消耗預(yù)算。
待機(jī)(睡眠)電流
實(shí)現(xiàn)最大能效(和電池壽命)意味著確保每個(gè) MCU 任務(wù)在盡可能短的持續(xù)時(shí)間內(nèi)以盡可能低的電壓消耗盡可能少的電流,從而使設(shè)備大部分時(shí)間都處于非常低功耗的睡眠模式。在某些應(yīng)用中,睡眠模式電流是對(duì)整體能耗最有影響的參數(shù)。然而,經(jīng)常被忽視的是,MCU 可實(shí)現(xiàn)的絕對(duì)最小睡眠電流主要受其漏電流的限制。例如,輸入漏電流規(guī)格為 100 nA 的 20 輸入設(shè)備在睡眠模式下可能消耗高達(dá) 2 μA 的功率。
泄漏電流受許多因素影響,但最重要的因素是所使用的底層工藝技術(shù)。在某些情況下,供應(yīng)商會(huì)選擇使用 0.25 或 0.35 微米的工藝技術(shù)來(lái)降低泄漏引起的休眠電流,但這種選擇是以更高的有源電流為代價(jià)的。在其他情況下,MCU 供應(yīng)商選擇使用 0.18 微米或更小的工藝技術(shù)來(lái)降低主動(dòng)模式電流,但這是以更高的泄漏電流為代價(jià)的。解決這一困境的一個(gè)獨(dú)特解決方案是應(yīng)用混合信號(hào)專業(yè)知識(shí)來(lái)實(shí)施一個(gè)高級(jí)電源管理單元 (PMU),該單元專為限制泄漏和實(shí)現(xiàn)超低睡眠電流而設(shè)計(jì),無(wú)論使用何種底層工藝技術(shù)。
當(dāng)使用 0.25 微米或更小的工藝技術(shù)時(shí),最小化睡眠模式電流需要切斷數(shù)字內(nèi)核的電源。在睡眠模式下運(yùn)行的模塊,例如電源管理電路、I/O 焊盤單元和 RTC,必須在未穩(wěn)壓的電源下運(yùn)行,以避免在 LDO 中燃燒額外的電流。切斷數(shù)字核心邏輯的電源還可以防止其關(guān)閉狀態(tài)泄漏對(duì)睡眠模式電流產(chǎn)生影響;但是,MCU 必須在睡眠模式下保留 RAM 內(nèi)容和所有寄存器的狀態(tài),以便代碼執(zhí)行可以從中斷的地方恢復(fù)。這種保存可以通過(guò)一些非常低的電流、睡眠模式、鎖存器偏置方案來(lái)執(zhí)行,或者通過(guò)使用可以在睡眠模式下保持狀態(tài)而沒(méi)有明顯泄漏的特殊保持鎖存器來(lái)執(zhí)行。
因此,從系統(tǒng)設(shè)計(jì)人員的角度來(lái)看,檢查底層漏電流規(guī)范以確定哪些 MCU 供應(yīng)商已應(yīng)用其混合信號(hào)專業(yè)知識(shí)來(lái)解決這一復(fù)雜問(wèn)題非常重要。設(shè)計(jì)人員還應(yīng)考慮大多數(shù)供應(yīng)商提供許多不同的待機(jī)電流選項(xiàng)這一事實(shí)。大多數(shù)供應(yīng)商會(huì)強(qiáng)調(diào)其絕對(duì)最低的睡眠模式電流,這通常對(duì)應(yīng)于禁用實(shí)時(shí)時(shí)鐘和掉電檢測(cè)器時(shí)消耗的電流。一些供應(yīng)商會(huì)更進(jìn)一步,并引用不保留內(nèi)存且需要復(fù)位才能喚醒的關(guān)斷模式電流,這通常不是一種非常實(shí)用的模式。因此,由于大多數(shù)應(yīng)用程序需要完整的 RAM 和寄存器保留,
待機(jī)/睡眠模式電流,實(shí)時(shí)時(shí)鐘和掉電禁用(RAM 保留)
禁用實(shí)時(shí)時(shí)鐘和啟用掉電的待機(jī)/睡眠模式電流
啟用實(shí)時(shí)時(shí)鐘和掉電的待機(jī)/睡眠模式電流
然后,系統(tǒng)設(shè)計(jì)人員可以在根據(jù)其應(yīng)用的占空比計(jì)算整體待機(jī)模式功率預(yù)算時(shí)使用正確的值。
喚醒能量
如前所述,在使用睡眠模式的系統(tǒng)中,可能會(huì)浪費(fèi)大量功率來(lái)喚醒 MCU 并使其準(zhǔn)備好獲取或處理數(shù)據(jù)。事實(shí)上,在某些應(yīng)用中,MCU 在脫離待機(jī)狀態(tài)時(shí)通常可以使用與設(shè)備完全處理數(shù)據(jù)時(shí)一樣多的能量。因此,重要的是設(shè)計(jì)一個(gè) MCU 以在極短的時(shí)間內(nèi)喚醒和穩(wěn)定,以最大限度地減少在能源浪費(fèi)狀態(tài)下花費(fèi)的時(shí)間。
MCU 應(yīng)該能夠從外部觸發(fā)事件或內(nèi)部定時(shí)器退出睡眠模式。最靈活的周期性喚醒源是實(shí)時(shí)時(shí)鐘,它能夠從外部晶體振蕩器(適用于需要精確定時(shí)的應(yīng)用)或低頻內(nèi)部振蕩器運(yùn)行,從而在低精度應(yīng)用中無(wú)需晶體。 避免對(duì)高速系統(tǒng)時(shí)鐘使用慢啟動(dòng)晶振;準(zhǔn)確、快速啟動(dòng)的片上振蕩器是更好的選擇。
此外,由于許多產(chǎn)品會(huì)定期喚醒以使用片上 ADC 對(duì)輸入進(jìn)行采樣,因此為數(shù)字電路的喚醒和模擬電路的穩(wěn)定留出足夠的時(shí)間以開(kāi)始進(jìn)行有效測(cè)量非常重要。模擬模塊的啟動(dòng)行為可能會(huì)對(duì)在活動(dòng)模式下花費(fèi)的時(shí)間量產(chǎn)生重大影響;使用外部去耦電容的穩(wěn)壓器或基準(zhǔn)電壓可能需要幾毫秒才能穩(wěn)定下來(lái)。有時(shí),MCU 供應(yīng)商只會(huì)引用數(shù)字電路的喚醒時(shí)間,而忽略模擬電路穩(wěn)定所需的時(shí)間。因此,系統(tǒng)設(shè)計(jì)人員必須分析數(shù)字和模擬電路的整體喚醒和穩(wěn)定時(shí)間,以考慮這種浪費(fèi)能源的真實(shí)成本。
其他注意事項(xiàng)
當(dāng)然還有其他方法可以進(jìn)一步降低系統(tǒng)中的功率。例如,通常使用 2 節(jié) AA/AAA 電池配置,因?yàn)?MCU 通??梢栽诘椭?1.8 V 的電壓下運(yùn)行,即便如此,有時(shí)也只能降低功能(無(wú) ADC;降低指令時(shí)鐘速度)。降低功耗(和環(huán)境影響)的一種創(chuàng)新方法是將設(shè)計(jì)轉(zhuǎn)換為單電池配置,在這種配置中,電池可以一直運(yùn)行到其使用壽命結(jié)束(0.9 V)。為此,MCU 必須集成一個(gè)高度優(yōu)化的 DC-DC 轉(zhuǎn)換器,該轉(zhuǎn)換器可以在電池的最低可用電壓下工作,在堿性化學(xué)物質(zhì)的情況下為 0.9 V。這種方法還可以節(jié)省供應(yīng)商和/或消費(fèi)者的電池成本。
另一種降低功耗的方法是使用高度集成的 MCU,包括 ADC、DAC 和其他外圍設(shè)備,因?yàn)?MCU 可以根據(jù)應(yīng)用程序的需要控制啟用和禁用這些外圍設(shè)備。例如,一些 MCU 提供具有突發(fā)模式的專用低功耗 ADC,可以在 CPU 關(guān)閉時(shí)進(jìn)行模擬測(cè)量,以進(jìn)一步降低功耗。
總結(jié)
分析 MCU 供應(yīng)商提出的各種相互矛盾的聲明是一項(xiàng)挑戰(zhàn)。然而,對(duì)于大多數(shù)應(yīng)用,最好簡(jiǎn)單地恢復(fù)到基本功耗方程以消除混亂:
總功耗 = 活動(dòng)模式功率 + 待機(jī)(睡眠)模式功率 + 喚醒功率
由于每個(gè)應(yīng)用都會(huì)受到待機(jī)功耗、活動(dòng)模式功耗和喚醒功耗的組合影響,因此系統(tǒng)設(shè)計(jì)人員可以通過(guò)系統(tǒng)地將功耗數(shù)字分解為上面顯示的部分來(lái)簡(jiǎn)單地開(kāi)始任何分析,這可能會(huì)有所幫助。一旦得出這些數(shù)字,系統(tǒng)設(shè)計(jì)人員就可以考慮應(yīng)用程序的占空比——應(yīng)用程序預(yù)計(jì)在待機(jī)、活動(dòng)和喚醒模式下花費(fèi)的時(shí)間量——來(lái)計(jì)算總體平均功耗數(shù)字。結(jié)果值應(yīng)為系統(tǒng)設(shè)計(jì)人員提供一個(gè)接近的近似值,可用于客觀地評(píng)估和比較 MCU 替代方案,以實(shí)現(xiàn)盡可能低的系統(tǒng)級(jí)功耗。
評(píng)論