新聞中心

EEPW首頁(yè) > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 利用多電壓架構(gòu)在32位MCU上實(shí)現(xiàn)高性能和超低功耗待機(jī)模式

利用多電壓架構(gòu)在32位MCU上實(shí)現(xiàn)高性能和超低功耗待機(jī)模式

作者: 時(shí)間:2012-01-23 來(lái)源:網(wǎng)絡(luò) 收藏


  在微控制器芯片上分離區(qū)會(huì)遇到很多設(shè)計(jì)限制因素,例如:

  ●必須在后備區(qū)完整的喚醒和模擬電路,結(jié)果很難提供大量的喚醒信號(hào)源;
  ●必須在斷電期間分離兩個(gè)區(qū)(內(nèi)核電壓傳出的所有信號(hào)都是浮空的) ;
  ●需要以特殊的順序停止時(shí)鐘源,電源斷電/上電必須可靠。例如,主內(nèi)核電壓邏輯電路需要一個(gè)專用復(fù)位;
  ●因?yàn)閮蓚€(gè)電壓區(qū)在電壓和工藝方面幾乎是相互獨(dú)立的,而在溫度方面卻是相互關(guān)聯(lián)的,所以必須考慮到兩個(gè)電壓區(qū)的時(shí)序限制。這意味著在時(shí)序分析過(guò)程中必須兼顧更多的情況(例如,電壓和工藝最差的備用電壓區(qū),以及工藝和電壓最好的主內(nèi)核電壓區(qū)) ;
  ●為防止程序意外地進(jìn)入輸入,必須在備用電壓區(qū)內(nèi)某些安全功能,如看門狗;
  ●為了保證產(chǎn)品在小封裝內(nèi)擁有的性能,還必須保持可用I/O與I/O總個(gè)數(shù)的比例。在STM32上,主內(nèi)核穩(wěn)壓器無(wú)需外部去耦合電容器,所以這個(gè)產(chǎn)品并沒(méi)有因?yàn)槭请p電壓區(qū)而損失封裝上的引腳,即沒(méi)有采用額外的電源輸入。

本文引用地址:http://m.butianyuan.cn/article/178018.htm

圖4STM32電壓區(qū)電路示意圖


  不過(guò),作為復(fù)雜設(shè)計(jì)的回報(bào),STM32獲得了真正的,有助于應(yīng)用開(kāi)發(fā)人員優(yōu)化電池使用時(shí)間。

  STM32的功率及優(yōu)化的電池使用時(shí)間

  因?yàn)?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/實(shí)現(xiàn)">實(shí)現(xiàn)了雙電壓區(qū),STM32提供了兩個(gè)不同的低:停止模式和模式。兩個(gè)功能中電壓監(jiān)控器都是導(dǎo)通的,以便在出現(xiàn)電壓下降時(shí)保護(hù)應(yīng)用。

  在停止模式下,低穩(wěn)壓器保持通態(tài),但是時(shí)鐘停止運(yùn)行。通過(guò)內(nèi)部阻容振蕩器,穩(wěn)壓器提供極短的重啟時(shí)間(10mS),并保留軟件環(huán)境。在環(huán)境溫度下的典型電流為15mA(3.3V),但是這個(gè)模式無(wú)法減輕泄漏電流問(wèn)題,因?yàn)樾孤╇娏鲿?huì)隨著溫度以冪數(shù)形式升高。

  在待機(jī)模式下,穩(wěn)壓器是斷態(tài),在環(huán)境溫度下電流消耗為2mA(3.3V),電流幾乎不會(huì)隨溫度升高(在85℃下,一個(gè)典型器件的電流為2.4mA)。不過(guò),待機(jī)模式重啟意味著軟件內(nèi)容丟失,RAM、內(nèi)核和大多數(shù)外設(shè)寄存器都會(huì)丟失數(shù)據(jù)。

  為具體應(yīng)用選擇最佳的模式能夠極大地影響電池的使用壽命,下面是在選擇省電方式時(shí)應(yīng)考慮的基本要求。

  ●檢查微控制器的待機(jī)狀態(tài)是否符合應(yīng)用要求(例如,I/O待機(jī)狀態(tài)、喚醒信號(hào)源);
  ●考慮最惡劣的但是能夠保證應(yīng)用功能正常運(yùn)行的溫度條件對(duì)電池使用壽命的影響;
  ●檢查從待機(jī)時(shí)間開(kāi)始的重啟時(shí)間是多少,是否達(dá)到應(yīng)用對(duì)重啟時(shí)間的要求;
  ●檢查待機(jī)模式是否比停止模式省電,在兩個(gè)事件之間,待機(jī)功耗與待機(jī)重啟功耗之和是否小于停止模式的功耗。

  這些問(wèn)題與應(yīng)用有關(guān),待機(jī)模式重啟時(shí)間包括從喚醒到讀取復(fù)位向量這個(gè)過(guò)程所用的時(shí)間,待機(jī)模式重啟時(shí)間取決于硬件(穩(wěn)壓器啟動(dòng)時(shí)間,STM32的時(shí)鐘源啟動(dòng)時(shí)間大約為40ms)和軟件恢復(fù)應(yīng)用環(huán)境所需的時(shí)間。軟件通常必須檢查喚醒信號(hào)源,從備份寄存器恢復(fù)環(huán)境信息,并重新配置應(yīng)用系統(tǒng)使用的微控制器功能。

  因?yàn)榇龣C(jī)軟啟動(dòng)與軟件有關(guān),所以在喚醒階段消耗的能量也與應(yīng)用有關(guān)。一個(gè)實(shí)用的估計(jì)能量損耗的方法是,在一個(gè)時(shí)限內(nèi)(從喚醒后到軟件立即回到待機(jī)模式)生成數(shù)個(gè)給定的喚醒信號(hào),然后比較在喚醒信號(hào)沒(méi)有生成時(shí)的平均電流消耗。為了優(yōu)化待機(jī)模式啟動(dòng)時(shí)間,開(kāi)發(fā)人員不得忘記優(yōu)化編譯器增加的初始化階段,并盡可能減少初始化階段(例如,應(yīng)該去除RAM初始化過(guò)程)。

  含有自動(dòng)電源開(kāi)關(guān)的實(shí)時(shí)時(shí)鐘及數(shù)據(jù)備份專用電壓區(qū)

  電池供電應(yīng)用都需要一個(gè)實(shí)時(shí)時(shí)鐘,不過(guò),內(nèi)核電壓關(guān)閉必然導(dǎo)致整個(gè)程序環(huán)境丟失,這相當(dāng)于一個(gè)產(chǎn)品的復(fù)位重啟。給程序?qū)崿F(xiàn)一個(gè)備份寄存器庫(kù),有助于恢復(fù)程序執(zhí)行所需的最小環(huán)境。

  可以在一個(gè)備用電壓區(qū)內(nèi),把所有這些功能都直

接集成在微控制器上。不過(guò),實(shí)時(shí)時(shí)鐘功能通常應(yīng)在很長(zhǎng)時(shí)期(數(shù)年)內(nèi)有效,即便電池供電的主應(yīng)用也是以充電電池為電源的。為實(shí)時(shí)時(shí)鐘設(shè)計(jì)第三個(gè)電壓區(qū),并設(shè)置一個(gè)實(shí)時(shí)時(shí)鐘電源專用引腳,就可以使用一個(gè)很小的專用鈕扣電池給實(shí)時(shí)時(shí)鐘供電,同時(shí)主應(yīng)用由另一個(gè)主要電源供電,這樣鈕扣電池只給實(shí)時(shí)時(shí)鐘和相關(guān)的振蕩器供電,而不給其它功能供電,例如,在待機(jī)模式下才可用的電壓監(jiān)控器。

  不過(guò),實(shí)現(xiàn)第三電壓區(qū)也不是最完美的,因?yàn)楫?dāng)主電源可用時(shí),鈕扣電池仍然給實(shí)時(shí)時(shí)鐘和備份寄存器供電。為此,STM32采用了一個(gè)聰明的延長(zhǎng)實(shí)時(shí)時(shí)鐘電池使用時(shí)間的方法,具體做法是給實(shí)時(shí)時(shí)鐘和備份寄存器增加一個(gè)電源開(kāi)關(guān),當(dāng)主電源可用時(shí),從主電源給實(shí)時(shí)時(shí)鐘和備份寄存器供電;當(dāng)主電源不可用時(shí),從電池給實(shí)時(shí)時(shí)鐘和備份寄存器供電。STM32電壓區(qū)電路如圖4所示。

  主電壓監(jiān)控制器通過(guò)一個(gè)閂鎖機(jī)制向電源開(kāi)關(guān)發(fā)布命令,當(dāng)發(fā)現(xiàn)VDD電壓低于VDD的下限時(shí),開(kāi)關(guān)把實(shí)時(shí)時(shí)鐘和備份寄存器的電源轉(zhuǎn)接到外部Vbat電源。如果VDD電壓高于VDD上限時(shí),開(kāi)關(guān)自動(dòng)選擇VDD給這個(gè)特殊的電壓區(qū)供電。

  采用電源開(kāi)關(guān)設(shè)計(jì)還有另外一個(gè)優(yōu)點(diǎn),軟件對(duì)這個(gè)特殊的電壓區(qū)讀寫(xiě)操作(通過(guò)電平轉(zhuǎn)換器)產(chǎn)生的額外動(dòng)態(tài)功耗決不會(huì)增加對(duì)鈕扣電池的功耗,這是因?yàn)樵谶\(yùn)行模式下,電池始終是由主電源提供的。因此,根據(jù)實(shí)時(shí)時(shí)鐘的功耗和鈕扣電池的電量,可以直接計(jì)算鈕扣電池最短使用時(shí)間。

  STM32的實(shí)時(shí)時(shí)鐘典型電流消耗為1.4mA(環(huán)境溫度,3.3V),當(dāng)使用一枚CR2032電池時(shí),電池最短使用時(shí)間近20年。然而,如果應(yīng)用在大多數(shù)時(shí)間都連接著主電源,電池的使用時(shí)間可以更長(zhǎng),即便電池電量非常低,還能照常使用。

  STM32實(shí)現(xiàn)的實(shí)時(shí)時(shí)鐘和備份寄存器在待機(jī)模式下仍正常工作,因此,實(shí)時(shí)時(shí)鐘可以作為待機(jī)喚醒的信號(hào)源,而且在系統(tǒng)進(jìn)入待機(jī)模式前,備份寄存器還可以保存一些重要的參數(shù)值。

  增添電源開(kāi)關(guān)的方法大幅度提高了微控制器設(shè)計(jì)的復(fù)雜性,因?yàn)樗螅?br />
  ●電壓區(qū)之間的隔離變得更加復(fù)雜;
  ●可靠的電源開(kāi)關(guān)設(shè)計(jì),經(jīng)過(guò)正確調(diào)整后,功耗可達(dá)到預(yù)期的水平(為避免小封裝上可用的GPIO數(shù)量減少,內(nèi)部實(shí)時(shí)時(shí)鐘電壓區(qū)沒(méi)有外部引腳,因此無(wú)需增添去耦合電容器);
  ●考慮到了不增加Vbat靜態(tài)功耗的各種啟動(dòng)情況,例如,當(dāng)VDD不存在時(shí)Vbat電壓的升高不應(yīng)產(chǎn)生意外狀態(tài)(鈕扣電池可能在生產(chǎn)線上被焊接到產(chǎn)品內(nèi),這時(shí)不應(yīng)有額外的功率消耗,否則電池的電量會(huì)被白白地消耗掉);
  ●實(shí)時(shí)時(shí)鐘電壓區(qū)在轉(zhuǎn)接VbatV電壓前必須能承受VDD最低閾壓以下的大電壓降。

  支持電池供電應(yīng)用

  盡管在應(yīng)用層面考慮了在待機(jī)狀態(tài)下允許內(nèi)容丟失的情況,像STM32這樣的功耗待機(jī)和多電壓電源仍不失為一個(gè)有效的解決方案,它允許應(yīng)用系統(tǒng)在運(yùn)行模式下實(shí)現(xiàn)優(yōu)異的性能,同時(shí)降低靜態(tài)功耗對(duì)待機(jī)狀態(tài)的影響。此外,在STM32內(nèi)集成獨(dú)立的功能(如實(shí)時(shí)時(shí)鐘),使設(shè)計(jì)工程師能夠快速高效地開(kāi)發(fā)電池供電的應(yīng)用設(shè)備,并充分利用產(chǎn)品的電源能效。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉