反映全球低功耗趨勢(shì),微控制器制造商正面臨越來越大的壓力,以降低其 MCU 的功耗;當(dāng)前的“沙中線”為 100 μA/MHz。
但為什么這對(duì)原始設(shè)備制造商來說變得如此重要,更重要的是,這在實(shí)踐中的可實(shí)現(xiàn)性如何?IDM 為實(shí)現(xiàn)超低功耗運(yùn)行做了哪些工作?選擇具有低功耗特性的設(shè)備只是故事的一部分。同樣重要的是如何實(shí)現(xiàn)和構(gòu)建 MCU 的 CPU 以提供超低功耗操作。
本文將著眼于這一趨勢(shì),考察德州儀器( MSP430FR5720 )、飛思卡爾( MKL15Z128VLK4-ND、MKL2??5Z128VLH4-ND )、NXP ( LPC1100L )、Energy Micro ( Gecko )、Atmel ( UC3 L 系列) 和Silicon Labs ( SiM3Lxx ),并查看現(xiàn)有解決方案,這些解決方案可能同樣能夠通過良好的設(shè)計(jì)實(shí)現(xiàn)超低功耗運(yùn)行技巧。
迄今為止,OEM 從 8 位微控制器到 32 位微控制器的遷移路徑主要基于中長(zhǎng)期觀點(diǎn),即假設(shè)應(yīng)用程序只會(huì)變得越來越復(fù)雜,因此在某些時(shí)候需要采用更強(qiáng)大的架構(gòu)。
這個(gè)論點(diǎn)通常被簡(jiǎn)化為“軟件級(jí)別的復(fù)雜性不斷提高”,其中大部分是有根據(jù)的;近年來取得的許多效率提升主要是通過工業(yè)控制應(yīng)用中使用的更復(fù)雜的算法實(shí)現(xiàn)的。此外,OEM 現(xiàn)在需要更高級(jí)別的連接,這通常需要復(fù)雜的協(xié)議。很少有人會(huì)爭(zhēng)辯說,功能更強(qiáng)大的微控制器 (MCU) 能夠輕松集成這種復(fù)雜性和連接性,無需額外的分立器件即可提供顯著優(yōu)勢(shì)。
曾經(jīng)屬于微處理器領(lǐng)域的現(xiàn)代 32 位架構(gòu)現(xiàn)在支持一系列功能強(qiáng)大且功能強(qiáng)大的 MCU,其特點(diǎn)是在 MCU 中部署 ARM? 的 Cortex?-M 系列內(nèi)核,現(xiàn)在成本低至 0.50 美元/每個(gè)在生產(chǎn)量。然而,自問世以來,32 位 MCU 就面臨著整個(gè)行業(yè)的強(qiáng)烈抵制。通過 32 位產(chǎn)品的發(fā)展和改進(jìn),阻力已被系統(tǒng)地削弱。32 位設(shè)備在很多方面都比 8 位設(shè)備做得更好。
然而,最新的,也許是最長(zhǎng)的爭(zhēng)論點(diǎn)是功耗。誠(chéng)然,您不會(huì)白白得到任何東西,并且某些應(yīng)用程序能夠接受系統(tǒng)功率的整體增加,如果它能夠?qū)崿F(xiàn)客戶價(jià)值的整體和相應(yīng)的增加,這反過來可以提供競(jìng)爭(zhēng)優(yōu)勢(shì)或提高利潤(rùn)率。然而,一些應(yīng)用程序——尤其是那些由低端 MCU 服務(wù)的應(yīng)用程序——無法接受增加的系統(tǒng)功率,設(shè)備制造商正是在這里集中精力進(jìn)行改進(jìn)。
最新的攻擊角度是強(qiáng)調(diào)有功功率,即 MCU 實(shí)際執(zhí)行某些操作時(shí)消耗的系統(tǒng)功率量。有功功率是 32 位 MCU 的“房間里的大象”,因?yàn)樗鼈兺ǔR员?8 位設(shè)備更高的頻率運(yùn)行,主要是因?yàn)樗鼈兊?RISC 指令周期比 8 位“獲取-執(zhí)行”方法更復(fù)雜。
因此,工程師們開始看到聲稱提供低于 100 μA/MHz 有功功耗的 32 位器件。雖然這無疑可以節(jié)省整體系統(tǒng)功耗,但它仍然是一個(gè)相對(duì)術(shù)語。許多 32 位設(shè)備的運(yùn)行頻率約為 80 MHz,使有功功率高達(dá) 8 mA,并將其帶回到舊 8 位設(shè)備的范圍內(nèi)。那么設(shè)備制造商還使用哪些其他方法來最小化 32 位設(shè)備的功耗呢?
核心優(yōu)勢(shì)
當(dāng)使用像 ARM 的 Cortex-M 系列這樣的商品化 IP 時(shí),很難在內(nèi)核級(jí)別進(jìn)行區(qū)分。然而,并非所有設(shè)備制造商都針對(duì)其超低功耗產(chǎn)品在此架構(gòu)上進(jìn)行了標(biāo)準(zhǔn)化。德州儀器 (TI) 繼續(xù)推廣其 16 位系列 MSP430 的優(yōu)勢(shì),該系列現(xiàn)在具有超低功耗版本,代號(hào)為 Wolverine (MSP430FR57xx)。
該系列的獨(dú)特之處在于它用傳統(tǒng)的嵌入式閃存替代了不太傳統(tǒng)的 FRAM(鐵電 RAM)。TI 聲稱,與基于 32 位閃存的器件相比,這顯著降低了系統(tǒng)功耗,使其有功功耗低于“100 μA/MHz”行業(yè)基準(zhǔn)。例如,MSP430FR5720記錄為提供 81.4 μA/MHz 的典型功耗。
在 ARM 陣營(yíng)中,飛思卡爾和 NXP 現(xiàn)在都提供基于最新 Cortex-M0+ 超低功耗內(nèi)核的設(shè)備,這兩款產(chǎn)品都聲稱達(dá)到了低于 100 μA/MHz 的功率點(diǎn)。兩者都已經(jīng)在市場(chǎng)上提供低功率產(chǎn)品。
飛思卡爾憑借其 Kinetis L 系列率先將其 Cortex-M0+ 部件(由于是 ARM 新架構(gòu)的主要設(shè)計(jì)合作伙伴)推向市場(chǎng)。Digi-Key 提供一系列 Kinetis L 設(shè)備,包括MKL15Z128VLK4-ND和MKL25Z128VLH4-ND. 飛思卡爾 Kinetis L 系列中的所有器件都具有運(yùn)行頻率高達(dá) 48 MHz 的 Cortex-M0+ 內(nèi)核,該內(nèi)核集成了一系列時(shí)鐘模式,可在軟件控制下將開關(guān)活動(dòng)限制在內(nèi)核的不同部分。正確理解和使用這些時(shí)鐘模式可以顯著降低器件消耗的有功功率。
恩智浦最近發(fā)布了其 Cortex-M0+ 系列,已經(jīng)提供了一系列基于現(xiàn)有 Cortex-M0 內(nèi)核的 MCU,包括LPC1100L系列。盡管該系列采用較舊版本的內(nèi)核,但它仍然提供 ARM 固有的以功耗為中心的低功耗處理方法,并集成了一系列功能以最大限度地降低有功功耗。
例如,LPC1100L 集成了許多預(yù)配置但靈活的“電源配置文件”,可以修改和控制設(shè)備的時(shí)鐘域。它們以駐留在設(shè)備 ROM 中的軟件例程的形式呈現(xiàn),這意味著配置文件可以通過應(yīng)用程序代碼中的簡(jiǎn)單 API 調(diào)用來啟動(dòng)。它們旨在提供 CPU 性能、CPU 效率和有源電流的最佳組合,在整個(gè)電源電壓范圍(1.8 V 至 3.6 V)內(nèi)提供最大工作頻率。API 的重點(diǎn)是降低有功電流,同時(shí)保持 CPU 性能提高,NXP 聲稱基準(zhǔn)測(cè)試顯示,通過使用電源配置文件,功耗降低了 30%。
NXP 的低功耗 LPC1100L 系列基于較舊的 Cortex-M0 內(nèi)核,集成了一些出色的低功耗技術(shù)。
然而,正如接下來將要展示的,除了優(yōu)化的內(nèi)核之外,設(shè)備制造商還可以采用許多其他技術(shù)來降低有功功率。
外設(shè)視覺
雖然原始處理能力在 MCU 應(yīng)用中變得越來越重要,但任何微控制器的關(guān)鍵屬性仍然是其外設(shè)集。在傳統(tǒng)架構(gòu)中,內(nèi)核及其外圍設(shè)備以“握手”方式協(xié)同工作,其中數(shù)據(jù)從外圍設(shè)備傳遞到內(nèi)核,然后通過外圍設(shè)備返回到更大的系統(tǒng)。
盡管這種方法在響應(yīng)時(shí)間和吞吐量方面無疑是有效的——并且完美地描述了 MCU 的初衷——但它反映了典型應(yīng)用要求不高且工程師開發(fā)節(jié)能解決方案的壓力較小的時(shí)代。現(xiàn)代 32 位 MCU 現(xiàn)在針對(duì)要求更高的應(yīng)用,同時(shí)努力保持“低功耗”,這個(gè)術(shù)語越來越被過度使用和不合理。然而,大多數(shù)制造商都明白,如果 MCU 系列不完全滿足低功耗操作的需求并提供創(chuàng)新技術(shù)來實(shí)現(xiàn)它,超出內(nèi)核,他們不太可能獲得設(shè)計(jì)勝利。一個(gè)越來越流行的解決方案是減少核心做任何事情的需要,前提是核心可以保持不活動(dòng)的時(shí)間越長(zhǎng),較低的整體功耗將保持不變。該理論正在通過能夠自主運(yùn)行的外圍設(shè)備實(shí)現(xiàn)。
隨著此功能的發(fā)展,制造商已對(duì)其進(jìn)行了擴(kuò)展,以允許外圍設(shè)備在內(nèi)核保持深度睡眠模式時(shí)相互交互,甚至可以通過標(biāo)志和寄存器修改自己的行為。
該領(lǐng)域的先驅(qū)是 Atmel 及其 picoPower 技術(shù)。Atmel 實(shí)施 picoPower 的第一個(gè) 32 位系列是UC3 L 系列,它基于其專有的 AVR 內(nèi)核。它使用 DMA(直接內(nèi)存訪問)控制器,允許外設(shè)通過專用且確定性的背板相互傳遞數(shù)據(jù),使其適用于實(shí)時(shí)應(yīng)用程序,但無需使用內(nèi)核。
另一家實(shí)施自主外圍設(shè)備的制造商是 Silicon Labs,他們開發(fā)了SiM3Lxx基于超低功耗 ARM Cortex-M3 的系列,將這一概念更進(jìn)一步,引入了數(shù)據(jù)傳輸管理器 (DTM) — 允許在多個(gè)階段配置和控制多個(gè)外設(shè),而無需任何 CPU 干預(yù)。DTM 使用狀態(tài)驅(qū)動(dòng)配置增強(qiáng)了標(biāo)準(zhǔn) DMA 的更基本功能。
Silicon Labs 的 Precision32 系列是該公司的第一款 ARM Cortex-M 產(chǎn)品,具有自主外圍設(shè)備。
睡眠行走
自主外設(shè)的主要目標(biāo)是讓 MCU 的內(nèi)核更長(zhǎng)時(shí)間地保持在更深的睡眠狀態(tài)。在許多應(yīng)用中,MCU 是反動(dòng)的;只有在對(duì)外部刺激做出反應(yīng)時(shí)才需要操作。將初始處理和決策轉(zhuǎn)移到更“智能”的外圍設(shè)備,這些外圍設(shè)備僅在刺激滿足預(yù)定參數(shù)時(shí)才喚醒內(nèi)核,從而無需定期喚醒內(nèi)核以檢查可能發(fā)生的事件的“內(nèi)務(wù)管理”循環(huán)。另一方面,自主外圍設(shè)備會(huì)在需要時(shí)產(chǎn)生中斷,讓內(nèi)核進(jìn)入睡眠狀態(tài)。
Energy Micro 是最早采用這種方法的制造商之一,它在其“超低功耗”MCU 系列中使用了 Cortex-M3 內(nèi)核。Gecko系列實(shí)現(xiàn)了在內(nèi)核和主系統(tǒng)時(shí)鐘有效關(guān)閉時(shí)保持活動(dòng)的自主外圍設(shè)備,而是依靠獨(dú)立的較低頻率時(shí)鐘源來保持外圍設(shè)備活動(dòng),而無需內(nèi)核干預(yù)。當(dāng)啟用中斷請(qǐng)求功能時(shí),自主外設(shè)僅在需要處理數(shù)據(jù)時(shí)才能喚醒內(nèi)核。
Energy Micro 是自主外圍設(shè)備的先驅(qū),現(xiàn)在提供其 Gecko 系列的封裝越來越小。
Atmel 的 picoPower 技術(shù)也包含此功能,它實(shí)際上將其稱為 SleepWalking。本質(zhì)上,它使外圍設(shè)備能夠根據(jù)外圍設(shè)備的能力做出“決策”;例如,如果輸入超過預(yù)先配置的限制,ADC 可以啟動(dòng)中斷。
這些功能是對(duì)現(xiàn)代 MCU 中現(xiàn)有標(biāo)準(zhǔn)過多的睡眠模式的補(bǔ)充,尤其是那些具有 32 位內(nèi)核的睡眠模式。雖然 ARM 負(fù)責(zé)其中許多低功耗模式,但制造商通常需要實(shí)施一個(gè)系統(tǒng)范圍的解決方案,該解決方案考慮到將內(nèi)核置于睡眠模式的影響。最終,這意味著從內(nèi)核及其子系統(tǒng)內(nèi)的各個(gè)域中移除電源和/或時(shí)鐘信號(hào)。為外設(shè)提供單獨(dú)的時(shí)鐘域現(xiàn)在被視為“標(biāo)準(zhǔn)”,但它仍然是一項(xiàng)相對(duì)較新的功能,并且由于需求減少,8 位設(shè)備可能不太可能開發(fā)該功能,并且可能認(rèn)為 8 位的壽命設(shè)備。
概括
具有諷刺意味的是,盡管設(shè)備制造商竭盡全力將 OEM 遷移到更高性能的 32 位 MCU 架構(gòu),但設(shè)備制造商仍然需要付出巨大的努力,以使這些設(shè)備盡可能長(zhǎng)時(shí)間地保持非活動(dòng)狀態(tài),同時(shí)在它們運(yùn)行時(shí)保持非常低的功耗。變得活躍。然而,這種二分法只能通過增加核心級(jí)別的設(shè)備功率和通過更復(fù)雜的外圍設(shè)備來實(shí)現(xiàn)。如果投資于 8 位架構(gòu),這種水平的設(shè)計(jì)努力似乎不太可能獲得回報(bào),這意味著他們的日子真的屈指可數(shù)——無論行業(yè)是否喜歡。
當(dāng)然,設(shè)備制造商致力于持續(xù)供應(yīng);許多 8 位器件用于工業(yè)應(yīng)用,它們的商業(yè)壽命已經(jīng)很多年了,制造商不太可能在沒有充分理由的情況下強(qiáng)迫客戶遷移到 32 位系列。
雖然下一波 MCU 將以更低的有功功率(目前為 100 μA/MHz)展開競(jìng)爭(zhēng),但市場(chǎng)上已經(jīng)有多種低功耗解決方案可以量產(chǎn),這讓工程團(tuán)隊(duì)相信無論他們采用何種解決方案選擇,它很可能在路線圖上進(jìn)一步降低功耗。
評(píng)論