Cortex-Nachwuchs bei ARM

Der digitale Signal Controller Cortex-M4 soll dort eingesetzt werden, wo Signale mit wenig Energieeinsatz bearbeitet werden müssen, zum Beispiel in Motorsteuerungen und Audiogeräten.

In Pocket speichern vorlesen Druckansicht 56 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Benjamin Benz

Der Cortex-M4 von ARM soll als Digital Signal Controller überall da punkten, wo Signale mit wenig Energieeinsatz bearbeitet werden müssen. Dazu gehören komplexe Motorsteuerungen ebenso wie MP3-Player oder Bordelektronik von Autos. Den M4 – Codename Merlin – siedelt ARM in puncto Performance und Befehlsumfang oberhalb des schon länger erhältlichen Cortex-M3 an und spendiert ihm eine ganze Menge an neuen Befehlen. Die meisten davon sind für Signalverarbeitungsalgorithmen ausgelegt. So erledigen sie ein Multiply-Accumulate (MAC), das zwei 32-Bit Zahlen miteinander multipliziert und das Ergebnis zu einem 64-Bit-Register addiert, in einem Taktzyklus. Allerdings bearbeiten die DSP-Befehle allesamt nur Integer-Zahlen. Eine Gleitkommaeinheit (FPU) gibt es optional.

Bei der Synthese des Cortex-M4 kann der Chiphersteller frei wählen welche der gepunkteten Einheiten wie Wakeup Interrupt Controller (WIC) oder die Floating Point Unit er einbaut.

Code ist innerhalb der Cortex-M-Familie aufwärtskompatibel, der M4 führt also auch Binärcode des M3, M1 oder M0 aus. Um die neuen DSP-Befehle aus Hochsprachen heraus nutzen zu können, stehen einerseits Compiler-Intrinsics zur Verfügung. Andererseits pflegt ARM einen eigenen "Cortex Mikrocontroller Software Interface Standard" (CMSIS), zu dem auch optimierte Bibliotheken gehören, unter anderem für die Signalverarbeitung.

Wie alle anderen Cortex-Kerne vertreibt ARM auch den M4 nicht als fertigen Prozessor, sondern vergibt nur Lizenzen. Der Kunde muss den Kern dann synthetisieren, das heißt ihn in einen eigenen Chip integrieren. Dabei kann er noch einiges konfigurieren, beispielsweise die Anzahl der Interrupts (1 bis 240) oder ob der Chip eine Memory Protection Unit bekommt.

Die Befehlssätze der Cortex-M-CPUs sind aufwärtskompatibel. So kann der M4 Binärcode des M3, M0 oder M1 ausführen aber nicht umgekehrt..

In einer typischen Konfiguration ohne FPU und für eine Taktfrequenz von 150 MHz braucht der Cortex-M4 rund 65.000 Gatter oder umgerechnet 260.000 Transistoren. Die FPU belegt weitere 25.000 Gatter. Damit ist der M4 rund 30 Prozent größer als der M3, liefert aber dank der neuen Befehle etwa die doppelte DSP-Performance. Um MP3s zu dekodieren braucht der Cortex-M4 gerade einmal 0,5 Milliwatt.

Derzeit haben laut ARM bereits fünf Chiphersteller Cortex-M4-Lizenzen erworben, darunter ST Micro, NXP und Texas Instruments. (bbe)