Geringer Energieverbrauch und Energiesparmaßnahmen sind auf der Prioritätenliste der Elektronikentwickler ganz weit nach vorne gerückt, zunächst aus Umwelt- und Kostengründen, aber auch infolge der bei gleich bleibenden Energiebudgets immens und unablässig steigenden Ansprüche der Anwender an Leistungsfähigkeit, Nutzerfreundlichkeit und Bequemlichkeit. Dieses anspruchsvolle Aufgabenpaket lässt sich wirtschaftlich nur mit entsprechend vorbereiteten und eingesetzten Mikrocontrollern (MCUs) lösen. Diese müssen jedoch selbst auch entsprechend ausgelegt sein: Angesichts vor allem der unzähligen batteriebetriebenen Geräte, von Energy-Harvesting-Anwendungen - bei denen um jedes Mikrowatt gerungen wird - oder der im doppelten Sinne eingebetteten Elektronik für medizinische Implantate, jedoch auch hinsichtlich der Einhaltung von Energiestandards kommt im Rahmen des modernen, hochentwickelten Power-Managements dem Leistungsverbrauch des Mikrocontrollers selbst erhöhte Bedeutung zu.
Schnell in den Ruhebetrieb
Eine wichtige Voraussetzung für die Minimierung der Leistungsaufnahme eines Gesamtsystems ist eine hohe Verarbeitungsleistung der MCU: Dadurch lassen sich die Aufgaben schneller abarbeiten, der Mikrocontroller kann früher in den Schlafmodus übergehen und länger darin verbleiben. Bei Minus-Verbrauchswerten im Ruhebetrieb purzeln die Rekorde fast täglich. Vorläufiger Höhepunkt ist ein dieser Tage gemeinsam von STMicroelectronics und dem MIT vorgestelltes 32-Bit-SoC als Ergebnis eines F&E-Projekts. Es zeichnet sich durch eine skalierbare Versorgungsspannung aus und verbindet eine hervorragende maximale Leistung mit äußerster Energieeffizienz. Der Baustein wendet sich an energiesparende Applikationen mit zeitlich stark wechselnder Arbeitsbelastung, so in der Medizintechnik. Er senkt die Leistungsaufnahme auf 10,2 pJ/Zyklus bei 0,54 V, wobei die SRAM-Speicherzellen mit einer Spannung von 0,4 V arbeiten können. Die durch Speicherzugriffe entstehende Verlustleistung wird zusätzlich durch kleine, Latch-basierte Befehls- und Daten-Caches reduziert, die auf der ersten Hierarchie-Ebene angeordnet sind.
Ferroelektrischer Speicher
Das Zeitalter der so genannten Ultra-Low-Power-(ULP-) Mikrocontroller wurde bereits vor 18 Jahren von TI mit der Reihe MSP430 ULP eingeläutet. Von dieser Familie wurden bis zum heutigen Tag über eine Milliarde MCUs verkauft. Als jüngste Neuheit ist ein ferroelektrischer Speicher (FRAM) integriert: nichtflüchtig wie ein Flash, aber so schnell wie ein RAM. In Tests lag die Leistungsaufnahme um den Faktor 250 besser als bei Flash-basierten ULP-MCUs. Die auf der ISSCC vorgestellte Lösung glänzt mit lediglich 82 µA/MHz und zielt somit klar auf Energy Harvesting. Darüber hinaus bietet TI mittlerweile von Stellaris Cortex-M-MCUs bis hin zu den hochleistungsfähigen Echtzeit-Controllern C2000 und den Hercules-Sicherheits-MCUs die größte Auswahl an Mikrocontrollerlösungen an, die sämtlich extrem großen Wert auf geringen Energiebedarf legen.
Einfacher Vergleich reicht nicht
Heutzutage haben zwar alle MCU-Anbieter stromsparende Ausführungen im Sortiment, etwa die NanoWatt-XLP-Produkte von Microchip, doch stellt die Auswahl des bestgeeigneten Modells die Entwickler vor große Herausforderungen. Der bloße Vergleich der allseits laut beworbenen Stichpunkte reicht nicht; die Merkmale der MCUs müssen detailliert evaluiert werden: Power-Down- Betrieb, Zeittaktsystem, mögliche Ereignissteuerungen, Peripherie auf dem Chip, Erkennung von Spannungsabfällen, Schutzeinrichtungen und Leckverluste. In der Mehrzahl batteriebetriebener Geräte arbeitet die CPU die meiste Zeit (90 bis 99 Prozent) im Stromspar- oder Schlafmodus. Ein Mikrocontroller muss eine attraktive Kombination aus Betriebsarten, Weckquellen und Reaktionszeiten bieten, damit Entwickler die Aktivität der Peripherie und die Reaktionszeiten auf die Anforderungen der jeweiligen Applikation optimieren und so die verfügbare Batterieleistung optimal nutzen können.
Intelligent kombinieren
Es gibt keine Einzeltechnik zur Minimierung des Energieverbrauchs, die alle diesbezüglichen Anforderungen des Gesamtsystems zu erfüllen vermag. Hingegen sind Architektur, Plattform und Schaltungstechniken mit System- und Anwendungssoftware, Prozesstechnologie sowie Designmethodik und Design-Tools intelligent zu kombinieren. Das waren auch die Voraussetzungen für die Entwicklung der Kinetis-Familie von Freescale, die auf dem Rechenkern ARM-Cortex-M4 basiert und bei deren Entwicklung der Stromverbrauch eine zentrale Rolle spielte. Sie wurde daher mit zehn Betriebsmodi (statt der üblichen drei) ausgestattet. Darüber hinaus wurden mehrere leckstromarme Modi sowie ein neuer Wake-up-Controller mit besonders geringen Leckströmen konzipiert, um auch sehr aggressiven Energievorgaben gerecht zu werden. Im Run-Modus verarbeitet die CPU den Softwarecode mit voller Geschwindigkeit und kommt mit 200 µA/MHz aus. Wird der maximale Bustakt nicht benötigt, so bietet sich der VLPR-Modus (Very Low Power Run) an. Der CPU-Takt wird auf 2 MHz gedrosselt, und der integrierte Spannungsregler wird in den Standby-Modus gefahren, während die Funktion der Peripherie und die Erkennung von Unterspannung voll gewährleistet ist.
Effizienter Gecko
Es haben sich indes auch Low-Power-MCU-Spezialisten auf diesem Feld etabliert, so das junge norwegische Startup-Unternehmen Energy Micro. Deren Gründer nehmen für ihre 32-Bit-MCU-Familien in Anspruch, der weltweit energieeffizienteste Mikrocontroller zu sein. In den Sleep-Perioden sollen die EFM32-Gecko-MCUs die niedrigste Gesamtenergieaufnahme ermöglichen. Gängige Anwendungen können damit und einer einzigen Knopfzelle, Benchmark-Vergleichen zufolge, bis zu viermal länger betrieben werden. Sie eignen sich vor allem für Anwendungen, die so lange wie möglich (manchmal sogar zwei Jahrzehnte) ohne externe Stromversorgung oder Eingreifen seitens des Betreibers in Betrieb sein müssen und bei denen ein Batterieaustausch nicht möglich ist. Der Gecko vereint durch ein unkonventionelles Schaltungsdesign eine sehr geringe Stromaufnahme im Aktivmodus mit einer kurzen Datenverarbeitungsdauer, einer sehr schnellen Wake-up-Zeit und einen sehr niedrigen Standby-Strom. Bei 32 MHz und 3 V verbraucht die MCU nur 160 µA/MHz bei der Code-Ausführung aus dem internen Flash-Speicher. Sie basiert auf ARMs 32-Bit-Cortex-M3-Prozessor-Core; die Tasks werden also mit weniger Taktzyklen ausgeführt als mit 8- und 16-Bit-CPUs. Außerdem minimieren die MCUs die ineffiziente, jedoch nicht vernachlässigbare Wake-up-Zeitdauer von den Deep-Sleep-Modi in den Aktivmodus auf 2 µs. EFM32-MCUs kombinieren eine Ultra- Low-Power-Technologie mit einem ausgereiften Power Management und verringern so den Energieverbrauch im Standby-Modus, während gleichzeitig grundlegende Funktionen ausgeführt werden können. Der Deep-Sleep-Modus ermöglicht einen RAM- und CPU-Erhalt, bietet Power-on-Reset und Brownout-Erkennung, einen Echtzeit-Zähler und verbraucht nur 900 nA Strom. Im Shutoff-Modus sinkt die Stromaufnahme auf nur 20 nA. Neben dem niedrigsten Energieverbrauch im Aktiv- und Sleep-Modus kann die EFM32-Peripherie im Stromsparmodus arbeiten, ohne dabei die CPU zu nutzen. Mit Hilfe autonomer Peripherie kann eine Anwendung den Energieverbrauch verringern, während weiterhin wichtige Aufgaben ausgeführt werden. Das Peripherie-Reflexsystem der EFM32-MCUs ermöglicht die direkte Verbindung einer Peripherie an eine andere, ohne dabei die CPU mit einzubinden. Damit kann eine Peripherie-Einheit Signale erzeugen, die eine andere Einheit verarbeitet und darauf reagiert - während die CPU im Sleep-Modus verweilt. Fünf effiziente Energieverbrauchsmodi bieten dem Entwickler Flexibilität bei der Optimierung seines Systems hinsichtlich höchster Leistungsfähigkeit und längster Batterielebensdauer. Ein Feature, das bei den brandneuen Familien Leopard Gecko and Giant Gecko eingeführt wurde, ist ein 400-nA-Backup-Power-Modus, bei dem die Echtzeituhr (RTC) weiterläuft und 512 Backup-Register-Bytes bereitstellt, um so bei zeitweisem Stromausfall gegen Clock Reset und Datenverlust zu schützen. Überdies ermöglicht die neue energiesparende Sensorschnittstelle „Lesense“ eine autonome Überwachung von bis zu 16 externen Sensoren in einem Sub- Mikroampere Deep-Sleep-Mode, ohne die CPU aufzuwecken.