Der EMBCC ULPBench dient einem quantitativen Vergleich von Herstelleraussagen über die ULP-Eigenschaften von Mikrocontrollern. In der uns vorliegenden ersten Version sind keine Untersuchungen des Energieverbrauchs von Pheripherie-Elementen enthalten, es wird lediglich die CPU und das Speichersystem untersucht. In folgenden Versionen des ULPBenchs sollen dann auch typische Peripherien wie A/D-Wandler untersucht werden.
Es wurden einige aktuelle Mikrocontroller, die allesamt als Ultra-Low-Power-MCUs vermarketet werden, vergleichend untersucht. Alle Hersteller der hier untersuchten Mikrocontroller haben in der entsprechenden EEMBC-Arbeitsgruppe mitgearbeitet und das Arbeitsergebnis, d.h. den Benchmark und das Meßverfahren, abgesegnet.
Die eingesetzten Entwicklungsumgebungen, wie IAR Embedded Workbench, Keil MDK 5, Microchip‘s MPLAB 2.35, Atmel Studio 6.2, weisen eine hohe Komplexität aus, die eine gewisse Einarbeitung erfordern.
Die Unterstützung durch die Hersteller bezüglich Konfiguration der Hardware und der Toolchain war notwendig und wurde meist großzügig gewährt. Zahlreiche eMails und einige Telefonkonferenzen haben geholfen, die hier gezeigten Ergebnisse zu erhalten. Die betreffenden Kontakte sind in der Tabelle aufgelistet.
Das Bild zeigt nun abschließend und zusammenfassend die erreichten EMBCC ULPBench Scores. Auffallend ist, dass die Spitzenwerte ausschließlich von Controllern mit 32-bit-ARM-CPUs (und zwar M4 und M0+) erreicht wurden - keine MCU mit proprietären 16-bit-CPUs konnte annähernd mithalten, eine Ausnahme ist ein Nischenprodukt von TI in Form eines FRAM-Controllers, dessen Speichersystem-Energieeffizienz die CPU-Schwäche überkompensiert.
Ausblick
Natürlich kann man trefflich darüber diskutieren, wie repräsentativ der ULPBench für reale Ultra-Low-Power-Anwendungen ist. Es wird immer Anwendungen mit z.B. abweichenden Duty-Cycles (Verhältnis Laufzeit aktiver/Sleep-Mode) geben, die unterschiedliche Ergebnisse bringen würden. Auf der anderen Seite haben sich die Hersteller - um überhaupt eine Vergleichbarkeit herzustellen - auf den ULPBench geeinigt. Und selbst wenn es Abweichungen in realen Applikationen geben sollte, gibt der Benchmark zumindest einen Anhaltspunkt, wessen Mikroarchitektur und Fertigungstechnologie zu mehr oder weniger Energieeffizienz führen. Selbst wenn dann am Ende für ein reales Projekt basierend auf diesen Ergebnissen nur noch 5 statt 10 Chips evaluiert werden müssen, hat man als Entwickler ja schon enormen Zeitaufwand eingespart, weshalb wir diese Untersuchungen auch in der Zukunft dann mit aktuellen Produkten und ULPBench-Versionen fortführen werden.