電流監(jiān)控和調(diào)試工具在MCU設(shè)計(jì)中應(yīng)用
出處:維庫電子市場網(wǎng) 發(fā)布于:2023-06-20 14:51:20
構(gòu)成物聯(lián)網(wǎng) (IoT) 的眾多器件關(guān)聯(lián)在一起的其中一個(gè)原因是對低能耗的要求。為了滿足這一要求,需要在一個(gè)整體策略內(nèi),從多個(gè)層面進(jìn)行優(yōu)化。一個(gè)成功的設(shè)計(jì)不僅需要選擇低功耗的元器件,還要使用軟件以有效的方式使這些元器件協(xié)同工作,從而節(jié)省可用的電池容量。即使是硬件和軟件實(shí)現(xiàn)的稍微變動,也會對整體能耗造成很大的影響。
大多數(shù) IoT 器件的是為高能效設(shè)計(jì)的微控制器 (MCU)。典型的低能耗 MCU 包括一系列智能外設(shè),其代表處理器來控制 I/O 和基本的系統(tǒng)功能。串行端口 (UART) 通常能夠自主地發(fā)送和接收數(shù)據(jù),而在處理器內(nèi)核上運(yùn)行的軟件只需在數(shù)據(jù)接收完成后從相應(yīng)的緩沖器中傳輸字節(jié)。通過在諸如 Silicon Labs 的 Gecko EFM32 系列的 MCU 等器件上提供鏈接的 DMA 傳輸,甚至是這種交互都可以減至少。這種情況下,處理器內(nèi)核只需在收到完整消息后喚醒以檢查存儲器的內(nèi)容。
通過允許外設(shè)管理 I/O,MCU 可以在大部分時(shí)間里都處于休眠模式,這樣 MCU 的許多部分將關(guān)閉,而不會耗電。占空比是處于活動模式的時(shí)間與處于休眠模式的時(shí)間之比。低占空比對于電池供電的 IoT 應(yīng)用非常重要,因?yàn)樾菝吣J絻H僅消耗微安量級的電流,而活動模式通常會高出幾個(gè)數(shù)量級。
低占空比允許處理器內(nèi)核大部分時(shí)間處于休眠模式,僅在需要時(shí)喚醒以收集數(shù)據(jù)或進(jìn)行通信。實(shí)施低占空比策略的關(guān)鍵是了解軟件如何與硬件進(jìn)行交互。需要確定哪些功能導(dǎo)致 MCU 喚醒時(shí)間過長,然后盡可能更換或重寫。一直以來,在開發(fā)階段的早期很難實(shí)現(xiàn)這一點(diǎn),因?yàn)樾枰獙τ布善愤M(jìn)行測試才能確定。
Silicon Labs 的 Pearl Gecko 入門套件及類似評估板包括能量監(jiān)視器 (AEM) 功能。當(dāng)與公司的 Simplicity Studio 中的工具結(jié)合使用時(shí),可以在軟件開發(fā)期間,提供極有價(jià)值的洞察信息,讓開發(fā)人員了解應(yīng)用需要多少能量。這些信息不僅顯示了休眠模式的有效性,還揭示功能層級的優(yōu)化。
AEM 功能可監(jiān)控從通過 USB 總線獲取電力的板載 LDO 流出的電流。通常,USB 將用于支持調(diào)試及將軟件到目標(biāo) MCU。如圖 1 所示,當(dāng)板載開關(guān)設(shè)置為電池供電模式時(shí),將無法測量電流。
當(dāng)電源開關(guān)設(shè)置為 AEM 模式時(shí),板控制器收集的數(shù)據(jù)將傳送至 Simplicity Studio 工具,并可使用能量分析器進(jìn)行顯示。AEM 可以測量 0.1 μA 至 50 mA 大范圍(動態(tài)范圍達(dá) 114 dB)的電流。這樣便可分析不同休眠模式狀態(tài)的影響以及活動模式的功耗。
為了測量跨如此大范圍的電流消耗,可以將電流檢測放大器與雙增益級一起使用。放大器用于測量小型串聯(lián)電阻器上的壓降,而增益級使用兩種不同的增益設(shè)置進(jìn)一步放大該電壓,從而獲得兩個(gè)電流范圍。這兩個(gè)范圍之間的過渡發(fā)生在 250 μA 左右。在樣本導(dǎo)出之前,會在評估板控制器內(nèi)對數(shù)字進(jìn)行濾波和平均化處理。
每經(jīng)過一個(gè)計(jì)時(shí)器刻度,AEM 便會對電流進(jìn)行采樣和轉(zhuǎn)換,并通過 USB 將電壓和計(jì)時(shí)信息一起發(fā)送至開發(fā)工具,其每秒生成的電流樣本高達(dá) 6250 個(gè)。
由于能量分析依賴于跟蹤數(shù)據(jù)進(jìn)行關(guān)聯(lián),因此需要將 MCU 上運(yùn)行的代碼編譯為包含發(fā)送使用任意記錄格式調(diào)試 (DWARF) 數(shù)據(jù)的語句。發(fā)送至調(diào)試器的程序計(jì)數(shù)器 (PC) 樣本通過調(diào)試數(shù)據(jù)與目標(biāo)文件相關(guān)聯(lián),以找到在 MCU 上運(yùn)行的相關(guān)源文件、函數(shù)和 C 代碼行。這樣便可以將功率測量與各個(gè)功能和任務(wù)關(guān)聯(lián)起來。
在 Simplicity Studio 中使用分析工具時(shí),用戶可以訪問三個(gè)窗口。它們顯示了相關(guān)代碼、電流消耗圖和功能級別視圖。通過單擊電流圖上的任意點(diǎn),可高亮顯示代碼列表窗口中的部分代碼。這對應(yīng)于在給定時(shí)刻運(yùn)行且具有給定級別的電流消耗的實(shí)際代碼段。功能列表提供了每個(gè)功能的總能耗及其占整個(gè)應(yīng)用測量總量的百分比。如果用戶想要稍后分析信息,則可以將數(shù)據(jù)導(dǎo)出到文件,然后再將其導(dǎo)入以供進(jìn)一步分析。
為了說明如何使用 Simplicity Studio 中提供的功耗監(jiān)控工具,我們來看一個(gè)通過 UART 端口進(jìn)行通信的 MCU 示例。將數(shù)據(jù)從 Gecko 的 LEUART 緩沖器移至主存儲器以供稍后處理的一種簡單直接的方法是定期輪詢外設(shè)。如果數(shù)據(jù)可用,狀態(tài)標(biāo)記 (LEUART_STATUS_RXDATAV) 將指示可以檢索數(shù)據(jù)。
在活動處理器內(nèi)核上運(yùn)行代碼會導(dǎo)致產(chǎn)生幾毫安的恒定電流消耗。通過單擊圖表,可以高亮顯示產(chǎn)生此功耗的功能。為了節(jié)省能耗,MCU 需要避免使用輪詢來檢查數(shù)據(jù)可用性。為實(shí)現(xiàn)此目的,可以在數(shù)據(jù)獲取之間將處理器置于休眠狀態(tài),并在接收緩沖器數(shù)據(jù)變得可用時(shí)使用中斷來喚醒處理器。電流消耗在休眠期間明顯下降,而在中斷服務(wù)例程 (ISR) 運(yùn)行時(shí)則會達(dá)到峰值。在能量分析器窗口中準(zhǔn)確找到 ISR 后便可以看出這一點(diǎn)。
但是,處理數(shù)據(jù)接收中斷后,代碼的其他部分可能顯示為因保持處理器處于活動狀態(tài)而消耗了比預(yù)期更多的功率。單擊相關(guān)功能可顯示傳輸功能現(xiàn)在負(fù)責(zé)額外的功耗。雖然對傳輸功能進(jìn)行編程的一個(gè)簡單方法是設(shè)置 while{} 循環(huán)以等待每個(gè)字節(jié)的傳輸完成,但這將使處理器的運(yùn)行時(shí)間超過必要的運(yùn)行時(shí)間。與接收端口的情況類似,可以將該循環(huán)替換為中斷(在每個(gè)字節(jié)傳輸完成后喚醒處理器)。現(xiàn)在處理器會在每幀字節(jié)之間進(jìn)入休眠模式,從而降低平均電流消耗。
Gecko MCU 上的 LEUART 模塊可以在深度休眠模式下工作。在此模式下,高頻振蕩器處于關(guān)閉狀態(tài),而低頻振蕩器(RC 或晶體)仍在運(yùn)行并為 LEUART 提供時(shí)鐘。利用這種模式可以使 ISR 處理之間的電流消耗降至微安量級。
通過將更多的緩沖器處理移至鏈接的 DMA 引擎,使其負(fù)責(zé)在發(fā)送或接收全部幀后觸發(fā)中斷,可以實(shí)現(xiàn)進(jìn)一步的改進(jìn)。這種策略可以使處理器內(nèi)核休眠更長時(shí)間,且主要通過功能級別的數(shù)據(jù)分析任務(wù)來優(yōu)化功耗。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 電表互感器匝數(shù)倍率怎么看?2025/9/5 17:05:11
- 顏色傳感器原理及實(shí)際應(yīng)用案例2025/9/5 16:09:23
- 調(diào)諧器和調(diào)制器的區(qū)別2025/9/4 17:25:45
- 有載變壓器和無載變壓器的區(qū)別有哪些2025/9/4 17:13:35
- 什么是晶體諧振器?晶體諧振器的作用2025/9/4 16:57:42
- 高速PCB阻抗控制核心實(shí)操規(guī)范
- 高速數(shù)字系統(tǒng)(如DDR、SerDes)中的信號完整性濾波
- MOSFET在UPS電源中的應(yīng)用解析
- 電源管理IC在物聯(lián)網(wǎng)設(shè)備中的應(yīng)用
- SMT連接器焊接缺陷分析
- MOSFET在汽車電子中的應(yīng)用要求
- 通信設(shè)備電源管理IC應(yīng)用解析
- 通信設(shè)備連接器選型與設(shè)計(jì)
- PCB電磁兼容性(EMC)設(shè)計(jì)核心實(shí)操規(guī)范
- 物聯(lián)網(wǎng)節(jié)點(diǎn)低功耗設(shè)計(jì):信號鏈中的濾波與功耗管理









