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