Elektroniknet Logo

Ultra-Low-Power neu definiert

TIs MSP432-Mikrocontroller mit ARM Cortex-M4

Der MSP432 mit ARMs Cortex-M4 erzielt den niedrigsten Energieverbrauch aller Mikrocontroller.
Der MSP432 mit ARMs Cortex-M4 erzielt den niedrigsten Energieverbrauch nicht nur aller TI-Mikrocontroller.
© TI, Fachzeitschrift Elektronik

Nachdem wir schon im Februar 2013 exklusiv berichtet hatten, dass Texas Instruments an einem neuen Ultra-Low-Power-Mikrocontroller mit 32-bit-ARM-CPU arbeitet, wurde heute offiziell die erste Produktfamilie enthüllt. Der MSP432 dürfte der Konkurrenz noch viele Kopfschmerzen bereiten.

Der MSP430 mit seiner proprietären 16-bit-CPU war in den 90er Jahren und auch noch später seiner Konkurrenz um Längen voraus. Heute allerdings bei schrumpfenden Prozessgeometrien, der zunehmenden Ablösung von Assembler durch C und dem steigenden Wunsch der Kunden nach Betriebssystemen kann er mit ARMs 32-bit-CPU des Typs Cortex-M, die eine deutlich höhere Rechenleistung und einfacherer Programmierbarkeit bieten, außerhalb von Nischenmärkten wie Metering, wo der Sleep-Mode dominiert und der aktive Mode unter 1 % der Gesamtzeit ausmacht, nicht mehr konkurrieren.

Die aufgenommene Energie im aktiven Modus (=Leistungsaufnahme x Rechenzeit) wird von fast allen Cortex-M-Derivaten der Konkurrenz unterboten (abgesehen von den FRAM-Derivaten, die allerdings deutlich teurer als ihre Brüder mit konventionellem Flash sind), da die 16-bit-CPU bei auch noch niedrigeren Taktfrequenzen entsprechend länger braucht, den Workload abzuarbeiten. Zum Vergleich: Der höchste CoreMark-Wert eines MSP430 wurde mit einem MSP430F5529 und dem Compiler IAR EW430 V.5.52.1 erzielt (1,11 CoreMark/MHz), der Cortex-M4 kommt auf 3,41 CoreMark/MHz, das ist ein mehr als deinmal so hoher Wert.

TI arbeitete daher schon seit Jahren an einem ARM-Cortex-basierenden 32-bit-Ultra-Low-Power-Mikrocontroller, und zwar parallel in Freising und im Design-Center in Indien. Die nun vorgestellte Familie MSP432 (die 32 kommt von 32-bit-CPU) dürfte nicht nur bei schon existierenden MSP-Kunden viel Freude hervorrufen.

Die MCU wird es mit Flash-Größen von 64 KB bis 2 MB geben, als SRAM sind 32 oder 64 KB verfügbar. Im aktiven Modus erreicht der mit 48 MHz getaktete Cortex-M4 eine Stromaufnahme von 95 µA/MHz, einen Wert, der sogar unter Cortex-M0+ - Implementierungen der Konkurrenz liegt - so kommt z.B. Freescales Kinetis-KL17 auf 120 μA/MHz. Dafür gibt es zwei Hauptgründe: Zum ersten ein neu entwickelter 90-nm-Fertigungsprozess u.a. mit Transistoren unterschiedlicher Schwellenspannungen und optimierter Zellbibliotheken, der exklusiv in TIs eigenen Fabs läuft. Zum anderen ein LDO und DC/DC-Wandler auf dem Chip, die je nach Einsatzzweck die Stromversorgung vornehmen. Während der LDO bei einer etwas höheren Stromaufnahme (110 µA/MHz) einen schnelleren Wechsel vom aktiven in die Energiesparmodi (und umgedreht) ermöglicht (z.B. 10 µs vom Sleep-Mode mit aktiver Echtzeituhr in aktiven Modus), erreicht das System mit dem DC/DC-Wandler einen Wirkungsgrad von bis zu 95 Prozent und damit die erwähnten 95 µA/MHz.

Typischerweise müssen sich Entwickler dabei entweder für den LDO oder den DC/DC-Wandler entscheiden, nicht so beim MSP432. Hier kann dynamisch gewechselt werden z.B. im Sleep-Mode zum LDO für eine schnellere Aufwachzeit und bei längeren Phasen im aktiven Modus zum DC/DC-Wandler.

ULP-Mikrocontroller befinden sich typischerweise einen großen Anteil der Zeit in einem Energiesparmodus, z.B. um auf die Verarbeitung von durch Sensoren gelieferte Daten zu warten. Umso wichtiger ist eine extrem niedrige Leistungsaufnahme. Die Tabelle zeigt die fünf implementierten Energiesparmodi, deren niedrige Werte durch zahlreiche architektonische Verbesserungen wie z.B. den intensiven Einsatz von Power-Gating erreicht werden. Dazu kommen Innovationen wie ein konfigurierbarer Datenerhalt im RAM: Die acht Speicherbänke können einzeln abgeschaltet werden, wenn die Daten nicht erhalten werden müssen (z.B. beim Einsatz als temporärer Puffer oder Scratchpad-Speicher).

Grundsätzlich klar ist, je geringer die Versorgungsspannung, desto weniger Energie wird verbraucht. Der MSP432 kann im LDO-Betrieb zwischen 1,62 und 3,7 V arbeiten, was für fast alle Batterietypen passen dürfte und eine externe Spannungsregelung überflüssig macht (Ausnahme: Wenn der Supervisor für die Versorgungsspannung, Flash und LDO aktiv sind, werden statt 1,62 dann minimal 1,71 V benötigt). Im Gegensatz zu vielen Konkurrenzprodukten und auch den eigenen MSP430 kann die maximale Taktfrequenz auch bei niedrigster Versorgungsspannung aufrecht erhalten werden, auch auf den Flash kann bei 1,62 V (ohne Supervisor für die Versorgungsspannung) zugegriffen werden. Ohne LDO und mit DC/DC-Wandler beträgt im aktiven Mode die minimale Versorgungsspannung 2,18 V.

Ein 128 bit großer Puffer wird als Prefetch-Cache für den Flash-Speicher eingesetzt. Damit können pro Lesezugriff bis zu 8 ARM-Thumb-Instruktionen gelesen werden, was einerseits den Energieverbrauch durch Flash-Zugriffe reduziert und andererseits die Wait-States reduziert. Bei 48 MHz CPU-Frequenz würden ohne Puffer grundsätzlich 2 Wartezyklen pro Flash-Zugriff auftreten, mit dem Puffer geht diese Zahl in realen Applikationen zwar nicht auf Null zurück (im Idealfall bei linearem Code ohne Verzweigung denkbar, aber nur in der Theorie) aber wird eben deutlich reduziert. Das SRAM weist ohnehin einen Zugriff in einem Taktzyklus (0 Waitstates) auf.

Interessant ist, dass der MSP432 jedem SRAM- und Peripherie-Bit eine individuelle 32-bit-Adresse zuweist. Damit können diese durch eine einfache Schreib-Operation gesetzt bzw. gelöscht werden, statt drei Instruktionen (Speicheradresse lesen, Bit modifizieren, Speicheradresse schreiben) ausführen zu müssen. Der Code wird nicht nur kompakter, sondern natürlich auch energiesparender.

Wie schon beim MSP430 stellt TI eine Treiberbibliothek im 32 KB großen ROM zur Verfügung. Der Vorteil ist, dass auch hier bei 48 MHz ein Zugriff ohne Wait-States möglich ist, was einerseits zu einer bis zu 200 % schnelleren schnelleren Codeausführung, anderseits aber auch erneut zu einem geringeren Energieverbrauch führt - bis zu 35 % weniger als bei Ausführung aus dem Flash.

Last but not least werden jetzt statt drei (beim MSP430) nunmehr acht DMA-Kanäle unterstützt, was dazu führt, dass noch mehr Speicheroperationen ohne CPU-Intervention durchgeführt werden können, was noch mehr Energie spart. Nebenbei hat der Entwickler natürlich auch mehr Flexibilität bei der Konfiguration des Speichersystems.

 

Anbieter zum Thema

zu Matchmaker+
 

Aktiver
Modus

(48 MHz)

Aktiver
Modus niedrige Frequenz, Low-Leakage

(128 KHz)

LPM 0

LPM 3/4
(Sleep-Mode
ohne/mit Echtzeituhr)

LPM 3.5
(Shut-Down mit Echtzeituhr)

LPM 4.5
(Shut-Down ohne Echtzeituhr)
MSP 432P401xx Stromaufnahme mit LDO 160 μA/MHz 90 μA 23,8 μA/MHz 850 nA/1,35 µA 800 nA 100 nA
MSP 432P401xx Stromaufnahme mit DC/DC-Wandler 95,8 μA/MHz 16,6 µA/MHz
Aufwachzeit, Wechsel vom Energiespar- in aktiven Modus     nicht verfügbar 3-4 Taktzyklen
 
10 µs (typ.)/16 µs (max.) 0,9 ms (typ.)/0,95 ms (max.)
 
1 ms (typ.)

  1. TIs MSP432-Mikrocontroller mit ARM Cortex-M4
  2. Höchster zertifizierter ULPBench-Wert aller 8-, 16- und 32-bit-Mikrocontroller

Das könnte Sie auch interessieren

Verwandte Artikel

Texas Instruments, Texas Instruments Deutschland GmbH

Matchmaker+