IoT-bereite Mikrocontroller werden in Low-Power-Innovationen verbaut

Marktprognosen besagen, dass 18-50 Milliarden „Dinge“ bis 2020 mit dem Internet verknüpft sein könnten. Viele Geräte für das „Internet of Things“ (IoT) sind autonom, versorgen sich selbst mit Energie und müssen über einen langen Zeitraum wartungsfrei laufen. Da eventuell andere Beschränkungen den Gebrauch kleiner Knopfzellen-Batterien oder von Energiegewinnungssystemen mit begrenzten Mengen an zur Verfügung gestellter Elektrizität vorschreiben, sind energiebewusste Designs mit Komponenten mit extrem niedriger Leistungsaufnahme – darunter Mikrocontroller – ausgesprochen wichtig.

Historisch betrachtet zielten leistungsbeschränkte Anwendungen oftmals lediglich auf einfachste Mikrocontroller ab. Ein 16- oder 32-bit Core kann jedoch mit Hilfe sehr kurzer Ausführungszeiten sehr effektiv Energie einsparen. Zu den wichtigsten 16-bit-Geräten heutzutage zählen Microchip’s eXtreme Low Power PIC® Mikrocontroller der PIC24F Reihe und ähnliche Komponenten, die eine geringe Leistungsaufnahme im Betriebs-/Standby-Modus mit einer hohen Funktionsintegration kombinieren.

Verschiedenste Reihen an 32-bit-Mikrocontrollern liefern eine geeignete Ultra-Low-Power-Performance. Hierzu zählen der Freescale Kinetis L und Silicon Labs EFM32™ auf der Grundlage des ARM® Cortex®-M0+ Cores, NXP Semiconductors LPC1100 mit einem Cortex-M0 Core sowie die Reihe </7 STM32 L1 von STMicroelectronics mit einem Cortex-M3 Core. Alternativen wie der Atmel® AVR® UC3 L und der TI C2000 basieren auf eigenständigen 32-bit-Cores.

In Kombination mit kurzen Ausführungszeiten bieten typische Energiesparfunktionen eine sehr geringe Leistungsaufnahme im aktiven Betrieb wie auch im Standby-Modus. Hinzu kommen energiesparende Peripheriegeräte, die den Core während des Betriebs nicht zwingend aufwecken müssen (siehe Abbildung 1).

 

 

English

Translation

Very Low Active and Standby Power Consumption

Sehr geringe Leistungsaufnahme im aktiven Betrieb und im Standby-Modus

Energy-Saving Peripherals

Energiesparende Peripheriegeräte

Reduced Processiing Time

Verringerte Ausführungszeiten

Initialization

Initialisierung

Control

Steuerung

Compute

Rechenleistung

Ultra-Low Active Current

Extrem geringe Leistungsaufnahme im aktiven Modus

Ultra-Low Standby Current

Extrem geringe Leistungsaufnahme im Standby-Modus

Deep Sleep Mode

Tiefschlafmodus

Energy Savings

Energieeinsparungen

Power

Leistung

Time

Zeit

 

Abbildung 1. Energieeinsparungen durch einen Core und Peripheriegeräte mit einem Mikrocontroller mit extrem niedriger Leistungsaufnahme (Quelle: Freescale Energy-Efficient Solutions Infoblatt ENEFFSOLKINLSWP).

Verschiedene Betriebsmodi maximieren die Flexibilität, damit die nicht verwendeten Komponenten des Geräts abgeschaltet oder verlangsamt laufen können. Kinetis L Geräte wie der MKL02Z32 bieten 10 Modi, darunter zwei RUN-Modi mit unterschiedlichen Taktoptionen für mehr Core-Power, zwei SLEEP-Modi mit abgeschaltetem Core, sowie sechs DEEP-SLEEP-Modi, die nach und nach die interne Logik abschalten. Auf der anderen Seite bieten diese Geräte auch zahlreiche Aufwachoptionen. In dem Modus mit der geringsten Leistungsaufnahme, VLL Stop 0, wird der RAM-Inhalt nicht aufrechterhalten und sogar der 1-kHz-Low-Power-Oszillator abgeschaltet. Andere Produktreihen bieten ähnliche Funktionen: So verfügt die STM32 L1 Reihe über fünf verschiedene Low-Power-Modi. Hinzu kommt, dass die besonders kurze Aufwachzeit (bis zu 2 µs bei Silicon Labs’ EFM32 Geräten) die aufgenommene Leistung verringert, während der Core weiterhin in Betrieb ist.

Manche Aspekte des Cortex-M0+ Cores können zur Steigerung von Energieeinsparungen optimiert werden. Die Reihe Kinetis L minimiert die erforderlichen Anweisungen für Lesen-Ändern-Schreiben-Aufgaben mittels Bit-Manipulation-Engine, während eine Low-Power Boot-Option Leistungsspitzen beim Booten oder Aufwachen aus dem Tiefschlafmodus minimiert.

Die Leistungsaufnahme eines Core kann mittels dynamischer Spannungsskalierung optimiert werden. Der STM32L151 erlaubt die Einstellung der Core-Spannung im Bereich von 1,8 V bei maximaler CPU-Frequenz bis 1,2 V bei geringeren Frequenzen, die beispielsweise bei der Erhebung von Daten von Analog-Front-End-Schaltungen auftreten. Hiermit kann die Leistungsaufnahme um 25 % oder mehr verringert werden. NXPs LPC1100 Geräte wie der LPC1114 erlauben die Einstellung der Taktfrequenzen der CPU und der Peripheriegeräte.

Repräsentativ für intelligente Peripheriegeräte, die unabhängig von dem Core arbeiten, sind die SleepWalking™ Peripheriegeräte von Atmel® AVR® UC3 L Mikrocontrollern wie dem AT32UC3L0128. Diese Geräte können die Gültigkeit von Dateneingaben überprüfen und somit fehlerhafte CPU-Wakeups verhindern. Ebenso können sie Signale direkt an andere Peripheriegeräte übertragen und sogar dann aktiv sein, wenn der Rest des Systems sich im Tiefschlafmodus befindet. Zu guter Letzt können sie einzeln von einem ungetakteten Zustand aufgeweckt werden. Das Silicon Labs EFM32 Peripheral Reflex System bietet ähnliche Funktionen.

Im Allgemeinen bietet die Integration von Peripheriegeräten ein hohes Maß an Unterstützung für IoT-Anwendungen. Die meisten Geräte unterstützen grundlegende Peripheriegeräte wie USARTs, I2C, USB-Touch-Controller, ADC, DAC, Komparatoren und Timer. TI's C2000 Mikrocontroller wie der TMS320F28062PZPS unterstützen zudem erweiterte Peripheriegeräte wie PWM sowie hochauflösende Erfassungs- und Quadraturencoder-Module.