Mikrocontroller

Strategien zur Auswahl der richtigen MCU

4. September 2013, 16:41 Uhr | Von Erich Brockard und Frank Riemenschneider
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

ARM oder nicht ARM?

Wenn die Entscheidung für ARM erst einmal gefallen ist, dann steht den Entwicklern praktisch die Welt offen, denn mit Cortex-M0, -M3 und -M4 in unterschiedlichen Leistungsklassen mit sehr vielen verschiedenen Peripherie-Konfigurationen und Speichern ist das Angebot äußerst breit gefächert. Bereits innerhalb der Palette eines einzigen Herstellers ist dabei das Angebot sehr vielfältig, und bei den vielen Herstellern von ARM-Mikrocontrollern fällt es oft schwer, überhaupt noch das gesamte Angebot zu überschauen. Wenn dann eines Tages andere Peripherie oder eine höhere Verarbeitungsleistung gefragt ist, verläuft der Wechsel zu anderen Mikrocontrollern aus der ARM-Familie äußerst sanft.

Mit einer Entscheidung für die Produkte eines bestimmten Halbleiterherstellers legt sich der Entwickler allerdings zu einem gewissen Grade fest, denn obwohl die einzelnen Halbleiterhersteller jeweils oft die gleiche Art der Peripherie anbieten, unterscheiden sich diese Peripherieelemente dennoch in der Art und Struktur der Register beziehungsweise Registersätze. Wenn allerdings bestimmte Gründe für den Wechsel des Halbleiterherstellers sprechen, dann können die Entwickler innerhalb der ARM-Welt durchaus ihren Quellcode mit einem C-Compiler für das neue Derivat kompilieren, aber es ist kein Plug and Play zwischen den Halbleiterherstellern. Die Wiederverwendbarkeit großer Teile der Applikations-Software ist somit gegeben, aber bei den Hardware-nahen Aspekten sind Anpassungen erforderlich.

STM32 Blockschaltbild
Bild 2. STMicroelectronics begann als erster Hersteller mit der Auslieferung von 32-bit-MCUs mit dem Core ARM Cortex-M3. Es gibt fast unzählige Derivate, die sich in Taktfrequenz, Speicherumfang und Peripherie unterscheiden.
© EBV Elektronik

Auch ein Blick auf die Zahlen spricht für den Einsatz von ARM-Cores: 75 % der Geräte, die mit dem Internet verbunden sind, arbeiten im Inneren mit einem ARM-Core, und allein im Jahr 2012 lieferten die Halbleiterhersteller 8,7 Milliarden ARM-basierte Chips aus - die meisten ARM-Cortex-M3-basierenden Controller kommen von STMicroelectronics, der als erster Hersteller mit der Auslieferung von 32-bit-ARM-MCUs in Form seiner STM32-Familie (Bild 2) begann. Die legendär niedrige Verlustleistungsaufnahme der ARM-Cores ist ein weiterer Aspekt, der für Mikrocontroller mit derartigen Rechenkernen spricht.

Immer dann, wenn das Betriebssystem Microsoft Windows auf einem System laufen soll, dann ist die x86-Welt nach wie vor die erste Wahl, aber mit der fortschreitenden Verbreitung der Betriebssysteme Linux und Android wird auch die ARM-Welt immer interessanter. Weil die ARM-Architektur mit ihrer Kombination aus geringer Verlustleistung, gutem Preis und hoher Verarbeitungsleistung sehr attraktiv ist, rückt die ARM-Welt zunehmend in den Fokus der Entwickler. Da auch viele Entwickler und Software-Ingenieure sich schon sehr gut im Bereich Linux und Android auskennen, liegt die Hemmschwelle hier mittlerweile recht niedrig, bei neuen Designs auf die ARM-Welt zu setzen, zumal die Prozessor- und Mikrocontroller-Hersteller ihre Chips zusammen mit einem BSP (Board Support Package) ausliefern - und das ist bei der ARM-Welt in der Regel auf Linux oder Android ausgerichtet.

Wenn ein Unternehmen allerdings bereits über eine breite Software-Basis verfügt, beispielsweise für die Windows-Welt, dann fällt ein Wechsel zur ARM-Welt zumindest schwerer, wenn er nicht gar fast schon ausgeschlossen ist.

Was sind die Auswahlkriterien?

Bei der Auswahl des Mikrocontrollers spielt zunächst die Verarbeitungsleistung eine entscheidende Rolle. Wichtig ist die Frage, ob die MCU auch DSP-Befehle oder Sicherheitsmerkmale aufweisen soll oder besonders schnelle High-Speed-Schnittstellen erforderlich sind. Aber auch die benötigte Peripherie hat großen Einfluss auf die richtige Wahl.

Außerdem ist es erforderlich, die voraussichtlich benötigte Speichergröße des Applikationsprogramms und daraus abgeleitet die Größe des Flash-Speichers und auch des RAM abzuschätzen. Teilweise ist auch eine externe Bus-Schnittstelle erforderlich, um beispielsweise Daten extern wegzuspeichern oder die Kommunikation mit einem anderen Prozessor zu ermöglichen. Zudem ist die Verlustleistung ein wesentliches Thema. Last, but not least ist natürlich auch der Preis ein ganz wichtiger Aspekt, denn auch der Mikrocontroller muss in das Preisgefüge der Anwendung passen. Aus diesem Grund müssen die Ingenieure zunächst in einer Art Blockschaltbild festlegen, welche Peripherie notwendig ist. Meistens geht dieser Prozess dann über mehrere Iterationen, denn einen Mikrocontroller, der exakt die Aufgaben erledigt, die für die aktuelle Applikation erforderlich sind, gibt es in den wenigsten Fällen. In der Regel sind auch einige Peripherie-Elemente auf dem Chip integriert, die in der entsprechenden Anwendung überhaupt nicht zum Einsatz kommen. Zusätzliche Peripherie bedeutet aber auch eine höhere Stromaufnahme sowie einen höheren Preis.

Daher steht prinzipiell auch die Überlegung im Raum, eventuell einen Mikrocontroller mit abgespecktem Peripherie-Satz zu nutzen und die noch zusätzlich erforderlichen Funktionen mit einem externen IC abzudecken. Ein externer A/D-Wandler oder eine externe Schnittstelle kann somit durchaus sinnvoll sein. Gerade bei der Vielfalt der ARM-Cortex-Welt ist es für die Entwickler ohne externe Hilfe oft recht schwierig, in annehmbarer Zeit die passende Lösung aus einer für die individuelle Applikation gut geeigneten Mikrocontroller-Familie zu finden.

Immer wieder kommt es auch vor, dass die in technischer Hinsicht optimale Lösung sich nicht mit den Preisvorstellungen für die entsprechende Anwendung deckt, so dass mindestens eine weitere Iteration unter Berücksichtigung des Preisaspekts erforderlich ist.

Allerdings gibt es nach wie vor keinen Mikrocontroller mit einem ARM-Cortex-M-Core, der Automotive-qualifiziert ist. In diesem Fall heißt es, andere Architekturen wie zum Beispiel XC166 von Infineon einzusetzen.


  1. Strategien zur Auswahl der richtigen MCU
  2. ARM oder nicht ARM?
  3. Erfolgskritische Peripherie
  4. Beratung nutzen!
  5. Tools und Referenz-Boards

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu EBV Elektronik GmbH & Co. KG

Weitere Artikel zu Mikrocontroller