Blick ins Kerngehäuse Der Cortex-M3 im Vergleich zu ARM7 – Was ist neu?

Der Cortex-M3 soll die Nachfolge der erfolgreichen ARM7-Rechenkerne antreten. Da ARM7 schon etwas in die Jahre gekommen ist, schöpft der M3 das Verbesserungspotential aus, das aus den Erfahrungen mit ARM7 gewonnen wurde. Ein leistungsfähigeres Debug-Interface und ein neuer Befehlssatz, der Code-Größe und Performance gleichermaßen optimiert, sind Änderungen, die den Entwickler zum Umlernen zwingen.

Im Februar 2008 konnte man in der Fachpresse eine neue Erfolgsmeldung der IP-Schmiede ARM lesen: Seit Firmengründung im Jahre 1990 wurden 10 Mrd. Mikrocontroller mit ARM-Kern ausgeliefert. Aktuell sind es 3 Mrd. Controller im Jahr, die von den Lizenznehmern von ARM, den eigentlichen Chipherstellern, produziert und ausgeliefert werden. Sehr viele davon sind am Markt nicht allgemein sichtbar, sie werden für spezielle Produkte gefertigt. Das bekannteste hiervon dürfte das Handy sein. Einige der Chiphersteller nutzen die ARM-Cores aber auch als sog. „General Purpose“-Mikrocontroller, also die, die jedermann für eigene Entwicklungen auch in kleineren Stückzahlen kaufen kann. Die bekanntesten sind wahrscheinlich die von Atmel, NXP und STMicroelectronics.

Die klassische ARM-Controllerfamilie besteht aus den ARM7-, ARM9- und ARM11-Cores. Die „General Purpose“- Controller sind überwiegend ARM7- oder ARM9-Typen, während sich in Handys meist ARM9- oder gar ARM11-Kerne befinden. Der Vorteil dieser Familie ist, dass vom kleinen, preiswerten ARM7 bis zum leistungsfähigen ARM11 hochgerüstet werden kann, wobei die Cores weitgehend abwärtskompatibel sind. Dies, die große Akzeptanz der Cores durch die Chiphersteller mit der daraus resultierenden großen Anzahl von ARM-Mikrocontrollern, aber auch die Unterstützung durch eine ganze „Gemeinde“ von Tool-, Software-, Hardware- und Dienstleistungs-Anbietern („ARM Connected Community“) erleichtern das Entwickeln von Applikationen mit ARM-Controllern und tragen zu der großen Verbreitung bei.

Die neuen Cortex-Cores

Parallel zu den ARM-Cores hat ARM nun eine neue Core-Familie entwickelt, und es gibt bereits seit einiger Zeit die ersten realen Mikrocontroller davon auf dem Markt. Cortex-M3 ist der kleinste Bruder, wobei es hiervon sogar schon eine für FPGAs optimierte Variante gibt, den Cortex-M1. Zielmärkte sind Anwendungen, die bisher typischerweise von 8- oder 16-bit- Controllern bedient wurden, wo preisgünstige, aber doch leistungsfähige Controller benötigt werden und auch überall dort, wo geringer Stromverbrauch wichtig ist. Cortex-M3-Mikrocontroller sind damit auch direkte Konkurrenten zu ARM7-Bausteinen. Für Echtzeit-Anwendungen, die mehr Performance benötigen, ist der Cortex-R4 konzipiert. Mit bis zu 400 MHz CPU-Takt eignet er sich z.B. für Automotive Safety, industrielle Anwendungen oder Festplatten. High- End-Multimedia-Anwendungen können auf den Cortex-A8 oder die neuere Variante Cortex-A9 setzen. Gemeinsam ist allen Cortex-Cores ein neues, skalierbares Debug-Interface mit Verbesserungen und Neuerungen gegenüber der ARM7/9-Familie. Hier wird stellvertretend der Cortex- M3 genauer vorgestellt, zumal es auf seiner Grundlage bereits erste Mikrocontroller gibt. Dazu gehört z.B. die STM32-Familie von STMicroelectronics, an der Eigenschaften und Vorteile beispielhaft erläutert werden.