Energy Micro Energie-Effizienz neu definiert

Energy Micro hat – basierend auf der 32-bit-ARM-Cortex-M3- Architektur – die EFM32-Mikrocontroller-Familie entwickelt. Ihre Leistungsaufnahme ist mindestens um das Vierfache niedriger ist als die anderer 8-, 16- oder 32-bit-Mikrocontroller. Der sparsame Energieverbrauch macht den EFM32 in Verbindung mit hohem Datendurchsatz zur geeigneten Wahl bei energiesensiblen Anwendungen wie Gas-, Wasser-, Wärmemengen- und Stromzählern, ferner für Applikationen wie Gebäudeautomatisierung, Alarm- und Sicherheitssysteme sowie Medizin- und Diagnosegeräte.

Die Zielsetzung für batteriebetriebene Anwendungen besteht vorrangig in einer möglichst langen Batterielebensdauer. Folglich muss die Leistungsaufnahme so niedrig wie möglich gehalten werden. Energy Micro begegnet diesen zunehmenden Energieanforderungen mit der Umsetzung des Begriffs „Energiefreundlichkeit“. Der Schwerpunkt bei neuen Chipdesigns wird also darauf gelegt, die benötigte Energie zur Ausführung der Anwendungs-Tasks zu minimieren. Denn ein geringerer Energieverbrauch pro Arbeitsschritt in Verbindung mit sehr geringer Leistungsaufnahme im Tiefschlaf-Modus bedeutet, dass die verfügbare Energiemenge in der Batterie deutlich länger reichen wird. Ein gutes Beispiel für die gelungene Umsetzung dieser Prämisse ist der 32-bit- Mikrocontroller EFM32. Im Folgenden werden neun Faktoren aufgezeigt, die den EFM32 zum energiefreundlichen Mikrocontroller machen:

1. Niedrige Stromaufnahme im Aktiv-Modus

Die EFM32-MCU benötigt für eine Code- Ausführung im integrierten Flash lediglich 180 μA/MHz bei einer Versorgungsspannung von 3 V. Dieser Wert wird mit einem Primzahlen- Suchalgorithmus- Code bei Ausführung aus dem integrierten Flash und mit RAM-Zugriff mit erzielt.

2. Hohe Prozessorleistung

Bei der EFM32-Familie wird die Cortex-M3-Architektur von ARM verwendet, bietet sie doch hohe Leistung (1,25 DMIPS/MHz) in Verbindung mit fortschrittlichen Energiesparfunktionen. Der Cortex-M3 verwendet hierbei den Thumb-2-Befehlssatz, der die kompakten 16-bit-Thumb-Befehle nahtlos mit den leistungsfähigen 32-bit-ARM-Befehlen kombiniert. Zirka 90 % des Codes können bei einer üblichen Anwendung mit der Verwendung von 16-bit-Befehlen implementiert werden. Durch die 32-bit-Zugriffe auf den Flash-Speicher können zumeist zwei Befehle auf einmal geladen werden, wodurch Lesevorgänge vom Flash deutlich gesenkt werden.

3. Kurze Aufwachzeit

Bei den EFM32-MCUs wurde die Aufwachzeit vom Tiefschlaf bis zur Programmausführung auf nur 2 μs gesenkt. Dies bedeutet, dass enge Anforderungen an die Echtzeit-Latenz erfüllt werden können, gleichzeitig aber auch das Gerät in den Tiefschlaf-Modus versetzt werden kann, um die Leistungsaufnahme zu reduzieren.

4. Äußerst niedriger Standby-Strom

Die Leistungsfähigkeit des EFM32 ermöglicht dem System, den Großteil der Zeit im Tiefschlaf-Modus zu bleiben. Die Standby-Leistungsaufnahme wird dadurch zu einem wesentlichen Faktor im gesamten Energiebudget. Beim EFM32 wurden innovative Methoden eingesetzt, um die Standby-Stromaufnahme zu minimieren, während gleichzeitig wichtige Teile der Peripherie aktiv bleiben. Im Tiefschlaf- Modus (EM2, siehe Bild 1) nimmt der EFM32 nur 0,9 μA auf, und dies bei vollem Speichererhalt, aktiver Echtzeituhr, Brown-out-Erkennung und weiteren aktiven Peripheriekomponenten.

5. Autonome Peripherie

Alle EFM32-MCUs verfügen über einen DMA-Controller, der Datentransfers zwischen dem Hauptspeicher und den Kommunikations- und Datenverarbeitungsschnittstellen abwickelt und dadurch die CPU entlastet. Die integrierte Low-Energy-UART (LEUART) des EFM32 wird mit einem 32-kHz- Oszillator betrieben und kann sogar im Tiefschlaf-Modus aktiviert werden, wobei beim Warten auf eingehende Daten nur 150 nA aufgenommen werden. Empfängt die LEUART Daten, dann holt der DMA-Controller diese Daten und speichert sie. Die LEUART kann große Datenblöcke empfangen, während die CPU sich noch im Tiefschlaf- Modus befindet.

Ebenso wichtig ist der 160-Segment- LCD-Controller, der so programmiert werden kann, dass Animationen auf einer Reihe von LCD-Segmenten ohne Interaktion durch die CPU ablaufen. Dabei werden nur 550 nA aufgenommen.

6. Peripheral-Reflex-System

In einem Mikrocontrollersystem gibt es viele Szenarien, die eine Interaktion zwischen Komponenten der Peripherie erfordern. Ein typisches Beispiel wäre hier eine Analog/Digital-Wandlung, die von einem Timer periodisch gestartet wird. Herkömmlicherweise werden solche Interaktionen über einen Timer-Interrupt gestartet. In der EFM32-MCU indes ist dafür das Peripheral-Reflex-System (PRS) zuständig, über das die peripheren Komponenten direkt miteinander kommunizieren, ohne dass dabei die CPU aktiv ist. Dieser Vorgang ist vergleichbar mit menschlichen Reflexen, bei denen verschiedene Körperteile ohne Einbeziehung des Gehirns Reaktionen in anderen Körperteilen auslösen. Jeder der acht PRS-Kanäle kann einzeln konfiguriert werden, um ein peripheres Reflexsignal zu übermitteln.