A mikrokontrollerek energiagazdálkodása optimálisan kihasználja az MCU-k alacsony fogyasztású lehetőségeit;

2014. március 12., 8:29 | Rich Miron

Ma a beágyazott rendszereknek a lehető leghosszabb ideig kell működniük, egyetlen akkumulátor töltéssel. Itt fontos a mikrovezérlők belső alacsony fogyasztású módjainak optimális kihasználása. A Microchip, az STMicroelectronics és a Texas Instruments alacsony fogyasztású opcióinak összehasonlítása.

A hordozható elektronikai eszközök élettartama egyetlen feltöltéssel majdnem ugyanolyan fontos, mint az eszköz tényleges funkciói. Mert ha az akkumulátor lemerült, nem mindegy, milyen nagyszerű teljesítményt tud nyújtani az eszköz. A modern mikrokontrollerek (MCU-k) olyan platformokkal, amelyeket kifejezetten alacsony energiafogyasztással történő üzemeltetésre terveztek, jó megoldásokat kínálnak itt. Számos energiatakarékos módot is kínálnak, például alvó üzemmódot, hibernált állapotot stb., Valamint olyan funkciókat, mint a különálló csapok, amelyek automatikusan kikapcsolják a rendszert az akkumulátor tartalék működésére, amikor az áramot kikapcsolják. Végül az energiatakarékossági intézkedések mellett ott van a szoftverfejlesztés művészete olyan eszközökkel, mint az »IAR Embedded Workbench«

amely megmutatja az egyes kódsorok végrehajtásának energiafogyasztását. A rendszer viselkedésének valós időben történő ellenőrzésével a fejlesztők ezen információk segítségével finomhangolhatják a rendszert a maximális működési hatékonyság érdekében, például megváltoztathatják az órajel frekvenciáját vagy alacsonyabb energia üzemmódba állíthatják a rendszert.

Ha továbbra is kétségek merülnek fel az energiahatékonyság fontosságáról a mai beágyazott rendszerekben, vessen egy pillantást a JEDEC által kiadott legutóbbi DRAM-szabványokra: A szervezet nemcsak a hordozható elektronika szabványának új verzióját, a legújabb általános DRAM-ot, az LPDDR3-at tette közzé. -A szabványos DDR4 számos funkciót tartalmaz a csökkentett energiafogyasztás érdekében, például ál-nyitott lefolyású architektúrát. Függetlenül attól, hogy a mikrovezérlő okostelefonban vagy autóban van - egy dolog világos: csak akkor tud megfelelni a vásárlói követelményeknek, ha energiatakarékos működést kínál.

Az energiafogyasztás optimalizálása érdekében a fejlesztőknek két fő célra kell összpontosítaniuk: a lehető legrövidebb időre aktív módban és a minimális energiafogyasztásra inaktív módban. Nem is olyan régen a mikrovezérlőknek csak egyetlen készenléti módjuk volt, de ma a modulok számos lehetőséget kínálnak az aktív mód elkerülésére és csak akkor engedélyezésére, amikor ez feltétlenül szükséges.

A »PIC-ek« energiát takarítanak meg

energiagazdálkodása

1. ábra: Doze módban a »PIC24F-J128GA310« processzora (itt, az »Explorer 16« fejlesztõpanel plug-in modulján) lassabban tud futni, mint a perifériák

A Microchip (»PIC24FJ128GA310« mikrovezérlő család1. kép), például az energiagazdálkodási lehetőségek egész sora:

lehetővé teszi a modul számára az akkumulátorra való áttérést a lehető legkisebb energiafogyasztás érdekében az RTCC segítségével (valós idejű naptár/óra, valós idejű óra naptárral),

"Mély alvó üzemmód" a szinte teljesen erõteljes mûködéshez, lehetõséggel ébreszteni egy külsõ triggerrel és rendkívül alacsony energiafogyasztással (3,3 V-nál tipikus WDT: 270 nA, RTCC: 400 nA 32 kHz-nél, mély alvás) -Áram: 40 nA),

Alvó és tétlen üzemmódokban

Perifériák és/vagy magok

Kapcsolja szelektíven a jelentős energiacsökkentés és a gyors ébresztés érdekében,

Doze mód, amely lehetővé teszi a CPU alacsonyabb órajel-frekvenciát, mint a perifériák,

az alternatív óramódok lehetővé teszik a menet közbeni alacsonyabb órajel-váltást a szelektív teljesítménycsökkentés érdekében.

Az alvó és az üresjárati üzemmódok lehetővé teszik a tervezők számára, hogy a perifériákat és/vagy a vezérlő magját leállítsák az energiafogyasztás csökkentése érdekében, miközben fenntartják a gyors ébredés képességét. A "retenciós alvás" üzemmódban a kulcsáramköröket külön kisfeszültségű szabályozó látja el. A VBAT üzemmód a rendszert tartalék akkumulátorra kapcsolja, ha a VDD-t eltávolítják, ezzel minimalizálva az energiafogyasztást az RTCC-vel. Az RTCC nélküli mély alvás szinte teljes leállást kínál, és egyidejűleg szoftver vezérlést kap, hogy a modul külső indítókon keresztül újraindulhasson. A vállalat szerint a vezérlő ebben az üzemmódban csak 40 nA-n működik (tipikusan 3,3 V-nál), szemben az RTCC-módban mért 400 nA-val 32 kHz-nél.

Az óra frekvenciájának módosítása sok energiát takaríthat meg. Fél alvás üzemmódban például a felhasználó csökkentheti a teljesítményt, ha a CPU-t alacsonyabb órajelen futtatja, mint a perifériák. Ezenkívül a mikrovezérlő lehetőséget kínál az órajel frekvenciájának csökkentésére működés közben, és ezáltal lehetővé teszi a teljesítménycsökkentés finomhangolását.

Takarékos »STM8« vezérlők

2. kép: Az »STM8L« mikrovezérlő család négy alacsony fogyasztású módot kínál, így a felhasználó optimális egyensúlyt találhat a hatékonyság, a teljesítmény és az indítási idő között

Az STMicroelectronics »STM8L152C6T6« mikrovezérlője négy alacsony fogyasztású módot kínál (2. kép) elérhető, hogy a felhasználó optimális egyensúlyt találjon a hatékonyság, a teljesítmény és az indítási idő között (3. kép).

3. ábra: Az »STM8L« mikrovezérlő család alacsony fogyasztású üzemmódjai összehasonlítva

Várakozási módban a CPU órája leáll, amíg a perifériák tovább működnek. A chip elhagyhatja ezt a várakozási állapotot belső vagy külső megszakítás, trigger esemény vagy visszaállítás révén. Alacsony fogyasztású üzemmódban a CPU bizonyos funkciókat végez a kiválasztott perifériás egységekkel együtt. Például a Flash és a Data EEPROM szüneteltethető, amíg a rendszer alacsony frekvencián hajt végre kódot a RAM-ból. A felhasználó szoftveren keresztül vezérelheti a rendszert alacsony fogyasztású üzemmódban és azon kívül. A rendszer resetből is kiléphet az üzemmódból, de megszakításokkal nem.

Számos beágyazott rendszerben a mikrovezérlők pazarolják az áramot, mert a futásidő nagy részét várják egy eseményre. Itt az STM8L152C6T6 várakozási módot kínál alacsony energiafogyasztással (Low Power Wait), amelyben a CPU órája leáll. Alaphelyzetbe állítás vagy belső vagy külső esemény, például időzítő vagy I/O események által kiváltva, visszavezeti a rendszert alacsony fogyasztású üzemmódba.

Az aktív leállítási mód (Active Halt) egy lépéssel tovább megy, és leállítja a CPU és az összes perifériás eszköz generátorát - az RTC kivételével. A külső megszakítások, az RTC megszakítások vagy a visszaállítás vissza tudja ébreszteni a rendszert az aktív leállítás módból. A Szünet mód (Szünet) végül leállítja az összes perifériás eszköz és az CPU óráit. A blokk továbbra is be van kapcsolva annak érdekében, hogy az adatok a RAM-ban maradjanak. Külső megszakítás vagy visszaállítás újra felébreszti a vezérlőt. A kiválasztott perifériás egységek szintén készenléti állapotból ébreszthetők fel. Ezenkívül a blokk úgy konfigurálható, hogy várakozási módban a belső referencia nélkül működjön, ami további energiát takarít meg a belső referenciafeszültség kikapcsolásával.

»MSP430« FRAM-mal

4. ábra: Az alacsony fogyasztású »MSP430« architektúra néhány származéka különösen energiatakarékos FRAM memóriával rendelkezik

A Texas Instruments 16 bites "MSP430FR5739" mikrovezérlője hét alacsony fogyasztású módot kínál (4. kép) a beágyazott rendszerek hordozható alkalmazásokban. A legfelső szinten az alacsony energiafogyasztású 0 (LPM0) mód inaktiválja a CPU-t és a master órát, miközben az összes adat megmarad. A perifériás egységek órái aktívak maradnak, és a felhasználó kiválaszthatja a submaster óra állapotát. Az energiatakarékosság felső végén a Low Power Mode 4.5 (LPM4.5) fenntartja az I/O padok állapotát, de az adatokat nem, és deaktiválja a belső vezérlőt is. Energiatakarékos tervezésének részeként a mikrovezérlő ferroelektromos RAM-ot (FRAM) is integrál az alacsony fogyasztású, nem felejtő memória érdekében.

Teljesítmény hibakeresésNem mindegy, hogy egy mikrovezérlő hány energiatakarékos üzemmóddal rendelkezik, ha nem ésszerűen és helyesen használják őket. Itt lépnek életbe az energiaellátás-hibakereső eszközök, például az IAR Software Systems I-Jetje. Ez az eszköz folyamatosan rögzíti a rendszer energiafogyasztását működés közben, és az IAR beágyazott munkaasztal-szoftvere korrelálja ezeket az energiafogyasztási adatokat a rendszer folyamataival.

5. ábra: Az idővonal ablakban az »I-Jet« eszköz korrelálja az energiafogyasztást a függvényhívásokkal és más programrészekkel

A tökéletes világban a fejlesztő az áramfeszültséget közvetlenül a kódsorhoz kapcsolhatja. A valóság azonban az, hogy a rendszerkapacitások idővel elosztják a fogyasztást, így egy ilyen diszkrét megközelítés lehetetlen. Ezért a legjobb választás az energiafogyasztás függvényhívásokhoz (5. kép). Ezután a felhasználó rákattinthat egy teljesítménycsúcsra és visszavezetheti a kódra.

A rendszer mélyreható áttekintése segítségével a fejlesztő felismerheti azokat a perifériás egységeket, amelyek feleslegesen fogyasztják az áramot. Ennek orvoslására képes lehet beállítani az óra frekvenciáit, vagy energiatakarékos üzemmódba állítani a rendszert, miközben az üresjáratban van, és újra felébred, amikor választ kap. Ily módon a fejlesztők kihasználhatják az energiagazdálkodási lehetőségeket az optimális hardver működés érdekében.

A szerzőről:

Rich Miron a Digi-Key műszaki tartalmi csapatában van