Ontwerpen voor een krap stroombudget

Regelmatig batterijen vervangen en zelfs dagelijks accu's opladen: het lijkt soms alsof ik continu bezig ben om hongerige elektronica te voeden. Ik houd de laadstatus van mijn gadgets redelijk in de gaten, en toch gebeurt het vaker dan ik zou willen dat mijn fitness-wearable of Bluetooth-oordopjes er midden in mijn training mee ophouden. En ook mijn smartphone is al op de meest ongelukkige momenten uitgevallen.

Ik ben natuurlijk maar één persoon, maar trek die ervaring met een handvol elektronische apparaten eens door naar een toepassing in het Internet of Things (IoT) met duizenden apparaten op batterijvoeding. Alleen al het batterijonderhoud kan die hele toepassing laten falen. En of het nu gaat om persoonlijke elektronica of om grootschalige IoT-netwerken, dit probleem wordt alleen maar groter: er is namelijk steeds meer vraag naar real-time gegevens van sensoren die permanent werken. Gelukkig wordt er al gewerkt aan oplossingen om deze dystopie gevuld met hongerige elektronische apparaten te voorkomen. Siliconenfabrikanten verbeteren de energiezuinigheid van microcontrollers en dragen de rekenlast over naar de periferie, weg van de hoofdprocessor.

Klassiek energiebeheer, versterkt met geavanceerde technologieën

Standaard ligt de focus bij microcontrollersystemen vooral op het werk van de hoofdprocessor, omdat die in kleine ingebedde systemen normaal gesproken het grootste gedeelte van de energie verbruikt. Designers hebben geleerd om ervoor te zorgen dat de processor zo min mogelijk tijd doorbrengt in de actieve staat met het hoogste verbruik. Een zuinig systeem wordt hiervoor zo ontworpen dat de processor zoveel mogelijk in de energiebesparende stand-bymodus blijft. Voor toepassingen die periodiek gegevens op moeten halen van sensoren, is het de standaard benadering om de processor in stand-by te houden en deze door de perifere instrumenten net lang genoeg te laten activeren om de gegevens te verzamelen en verwerken. Vervolgens keert de processor dan weer terug naar de slaapstand.

Omdat er steeds geavanceerdere on-chip perifere instrumenten zijn, kan de processor steeds langer inactief blijven. Microcontrollers bevatten vaak geïntegreerde randapparatuur, zoals analoog-naar-digitaal converters (ADC's) die sensorgegevens kunnen verzamelen zonder de hoofdprocessor überhaupt wakker te maken. Fabrikanten van halfgeleiders hebben dit concept nog uitgebreid in meer geavanceerde microcontrollerarchitectuur, die erop is gebouwd om een 'tussenmodus' tussen volledig actief en volledig inactief te ondersteunen. In deze apparaten kan de tussenmodus de verschillende aparte vermogensbereiken selectief inschakelen voor de processorcore, het geheugen op de chip, de analoge randapparatuur en de digitale randapparatuur.

Geavanceerde processorfamilies, zoals de Darwin microcontrollers van Maxim Integrated, tillen deze benadering naar een nog hoger niveau. Ze bevatten een uitgebreide set mechanismen die specifiek zijn ontworpen om het energieverbruik te verminderen, zonder compromissen aan de functionaliteit en prestatievereisten (zie ook "Build More Effective Smart Devices: Part 1 – Low-Power Design with MCUs and PMICs", voorlopig nog alleen in het Engels). Hiermee kunnen ontwikkelaars een fijn evenwicht vinden tussen verbruik en prestaties en strakke verbruikstargets halen.

Randapparatuur krijgt eigen processors

Om de functionaliteit van randapparatuur te scheiden van de core processing, hebben meer geavanceerde microcontrollers randsystemen uitgerust met eigen processoren. De Darwin-serie van Maxim Integrated is een goed voorbeeld. Net als bij veel andere apparatuur in deze klasse wordt hier gebruik gemaakt van een managementunit voor de periferie (PMU), die meer levert dan alleen de gebruikelijke ondersteuning voor processen met directe geheugentoegang (Engels: DMA, voor "direct memory access"). De Darwin-PMU's werken bijvoorbeeld ook met round-robin scheduling en andere meer geavanceerde functionele capaciteiten.

Deze verwerkingscapaciteit buiten de core vormt de basis van een van de meest effectieve strategieën om verbruik te verlagen en prestaties verbeteren. Een duidelijk voorbeeld van deze trend zijn de cryptografische hardwareversnellers die worden ingebouwd in de meeste geavanceerde microprocessors voor het IoT en andere verbonden toepassingen. Door de uitvoering van de algoritmes te versnellen, zorgen speciale versnellers ervoor dat het apparaat in kortere tijd kan terugkeren naar de stand-bymodus met lager verbruik.

Een interessanter voorbeeld van deze trend zien we in draadloze microcontrollers, zoals de SimpleLink-productreeks van Texas Instruments. De draadloze microcontroller CC2640R2F Bluetooth low energy (BLE) van Texas Instruments combineert bijvoorbeeld een Cortex®-M3 hoofdprocessor van Arm® met een dedicated BLE-subsysteem, bestaande uit een eigen Arm Cortex-M0-processor en RF-transceiver (afbeelding 1).

Afbeelding 1: geavanceerde draadloze microcontrollers, zoals de CC2640R2F BLE van Texas Instruments, optimaliseren het stroomverbruik met behulp van een efficiënte Arm Cortex-M0 processor core die de draadloze verbinding in stand houdt, waarbij de hoofdprocessor Arm Cortex-M3 in de slaapstand kan blijven. (Bron afbeelding: Texas Instruments)

De hoofdprocessor voert de toepassing uit, en de Cortex-M0 processor is niet beschikbaar voor de ontwikkelaar. Hierop draait uitsluitend de BLE protocol-stack. Omdat de energiezuinige Cortex-M0 core kan blijven werken met lage energieniveaus terwijl de hoofdprocessor stand-by is, kan deze microcontroller een permanente connectiviteit bieden, zonder dat dit het stroombudget overschrijdt.

Natuurlijk geldt de always-on eis van permanente functionaliteit niet alleen voor connectiviteit. Bij steeds meer detectietoepassingen verwachten gebruikers dat hun apparaten direct reageren op veranderingen in temperatuur, beweging, luchtkwaliteit en andere kenmerken. Met conventionele methoden zou deze always-on functie de microcontroller dan in principe dwingen om vrijwel continu in de actieve modus te werken, terwijl gegevens voor significante gebeurtenissen worden verzameld en verwerkt.

In veel geavanceerde sensoren kunnen ontwikkelaars minimum- en maximumwaarden programmeren als trigger. Hierdoor kan de microcontroller stand-by blijven, totdat er een trigger plaatsvindt. Voor sommige toepassingen is deze drempelwaardefunctie echter niet afdoende. Voor een always-on bewegingssensor kan het bijvoorbeeld nodig zijn om karakteristieke veranderingen in patronen te herkennen, bijvoorbeeld in de gemeten versnelling of oriëntatie van het apparaat. Hieruit kan worden afgeleid of de gebruiker loopt, rent, trappen klimt of nog iets anders. Zelfs bij geavanceerde sensoren met drempelwaardefunctie zou de microcontroller van de host actief moeten blijven om deze karakteristieke patronen te detecteren. De LSM6DSOX sensormodule van STMicroelectronics lost dit probleem op: de module kan relevante patronen zelf herkennen, dankzij de ingebouwde eindige-toestandsmachine en de verwerkingsengine met beslissingsboom.

Ontwikkelaars hebben dus verschillende opties om ontwerpen met accuvoeding op een energiedieet te zetten, waaronder autonoom werkende randapparatuur, speciale verwerkingsengines en lokale verwerking van sensorgegevens.

Referentie:

Build More Effective Smart Devices: Part 1 – Low-Power Design with MCUs and PMICs - https://www.digikey.com/en/articles/techzone/2018/oct/build-more-effective-smart-devices-part-1-low-power-design-mcus-pmics

Achtergrondinformatie over deze auteur

Image of Stephen Evanczuk

Stephen Evanczuk heeft meer dan 20 jaar ervaring in het schrijven voor en over de elektronicasector met betrekking tot heel wat onderwerpen, waaronder hardware, software, systemen en toepassingen zoals het IoT. Hij behaalde zijn filosofiediplomain neurowetenschappen over neuronale netwerken en werkte in de ruimtevaartsector op massaal verspreide veilige systemen en algoritmeversnellingsmethoden. Wanneer hij geen artikels over technologie en techniek schrijft, werkt hij aan toepassingen voor “deep learning” voor herkennings- en aanbevelingssystemen.

More posts by Stephen Evanczuk
 TechForum

Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.

Visit TechForum