Strategien für die Entwicklung effizienter Ultra-Low-Power-Geräte - Teil 2

| Autor / Redakteur: Markus Levy und Monica Redon * / Sebastian Gerstl

Über die ULPMark-CP des EEMBC lässt sich die Energieeffizienz einer sogenannten Ultra-Low-Power-MCU ziemlich genau ermitteln. Doch wie können die aus der Benchmark gewonnenen Erkenntnise sinnvoll umgesetzt werden?
Über die ULPMark-CP des EEMBC lässt sich die Energieeffizienz einer sogenannten Ultra-Low-Power-MCU ziemlich genau ermitteln. Doch wie können die aus der Benchmark gewonnenen Erkenntnise sinnvoll umgesetzt werden? (Bild: Clipdealer)

Im ersten Teil dieses Artikels sind wir darauf eingegangen, wie sich die Leistungswerte und die Zahl der möglichen erreichbaren Zyklen eines Mikrocontrollers ermitteln lassen. Nun gehen wir näher darauf ein, wie Sie die aus der Benchmark ULPMark gewonnenen Erkenntnisse auf einen konkreten Energiewert für Ihr angestrebtes ULP-Produkt übertragen können.

In Teil 1 wurde die Benchmark ULPMark zur Ermittlung tauglicher Vergleichswerte von Ultra-Low-Power-MCUs näher erläutert. Im ULPMark-CoreProfile eine Formel verwendet, die auf dem Kehrwert der Energiewerte basiert (Mittelwert der pro Sekunde durchschnittlich verbrauchten Energie bei 10 Durchläufen):

Energie (µJ) = 100 / EEMarkCP

Die Energie wird als Summe der verbrauchten Energie ermittelt, während das Gerät die zu erledigenden Aufgaben abarbeitet (im Aktivmodus) und während es im Hibernate-Modus ist:

Energie = Energie Aktivmodus + Energie Schlafmodus

Dem ADuCM3029-Datenblatt zufolge beträgt der typische Wert für einen aktiven Strom 980 µA beim Ausführen von Primzahlencode. Dieser Code passt in den Cache und profitiert von dessen geringer Leistungsaufnahme. Beim ULPMark-CoreProfile-Code, der größtenteils linear ist, bedeutet ein aktivierter Cache keinen nennenswerten Vorteil. Also entspricht die Stromaufnahme in etwa dem Wert, der auf dem Datenblatt bei Cache-Disabled angegeben wird, d.h. 1,28 mA. Für die Ermittlung des Hibernate-Stroms erfordert das ULPMark-CoreProfile die Aktivierung des LFXTAL und RTC. Die Stromaufnahme im Schlafmodus beträgt also 830 nA (gemäß Datenblatt). Wie bereits erwähnt, ist die aktive Zeitspanne 420 µs.

Energie = Spannung × Strom × Zeit

Energie Aktivmodus = 3 V × 1280 µA × 0,42 ms = 1,61 µJ

Energie Schlafmodus = 3 V × 0,83 µA × 999,58 ms = 2,49 µJ

Entsprechend der Datenblatt-Angaben und der Ausführungszeit beträgt die Energie für den Aktivstrom 1,61 µJ; während der Zeitspanne im Schlafmodus werden 2,49 µJ an Energie verbraucht. Die Punktzahl basierend auf diesen Werten stimmt mit denen überein, die mit der EEMBC EnergyMonitor-Software gemessen wurden.

Energie (µJ) =1,61 + 2,49 = 4,10 µJ ~= 100 / 245,5 = 4,07 µJ.

Ein Schwachpunkt von ULPMark der ersten Generation ist, dass die Betriebsspannung aufgrund der Ablaufregeln auf 3V begrenzt wird (von der Arbeitsgruppe so vereinbart, um ein gemeinsames Level für alle Geräte zu etablieren). Die meisten neueren MCUs haben eine weit höhere Energieeffizienz bei niedrigeren Spannungen (obwohl die Temperatur und Betriebsfrequenz diese beeinflussen können). Zum Beispiel verbessert sich das ULPMark-Ergebnis für den STMicro STM32L476RG um 19%, wenn ein DC/DC-Wandler verwendet wird, der die Spannung von 3V auf 1,8V herabregelt.

Inhalt des Artikels:

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 44841621 / Energieeffizienz)