Prozessortechnik Mikrocontroller oder Mikroprozessor?
Wenn Sie hundert Leute fragen, bekommen Sie hundert verschiedene Antworten auf die Frage: „Wie definieren Sie den Unterschied zwischen einem Mikroprozessor (MPU) und einem Mikrocontroller (MCU)?"
Anbieter zum Thema

Meine Lieblingsantwort auf diese Frage kam ohne Zögern von der siebenjährigen Tochter eines meiner Kollegen und guten Freundes, die nach langen Diskussionen und Erklärungen meinte: „Naja, der Prozessor macht sich eine Menge Gedanken und ist viel größer als der Controller. Das ist so wie bei Vati, weil er zur Arbeit geht und dick ist. Der Controller ist der kleine, der entscheidet was passiert. Genau das tut Mami.“
Das also ist es – die Antwort in aller Kürze. Mamis sind die Controller und Vatis die Prozessoren. Sie müssen also nicht mehr weiterlesen! Natürlich sind aber auch noch 99 andere Definitionen von den 99 anderen Befragten zu berücksichtigen. Das hilft uns, die Komplexität dieser Frage besser zu verstehen und den Grund für die vielen verschiedenen Meinungen. Aber für jede Definition gibt es auch zahllose Argumente und Beispiele, warum sie jeweils nicht ganz richtig ist.
Prozessoren verarbeiten und Controller steuern
Die einfachste Antwort, die ich erhielt, könnte direkt aus einem Lexikon stammen. Es ist sicher richtig, dass Mikroprozessoren ursprünglich zur Verarbeitung von Daten in hoher Geschwindigkeit gedacht waren, während Mikrocontroller meist als Bauteile galten, die eine Reihe von Sensoreingängen auswerteten und Entscheidungen fällten bzw. Systeme auf der Basis dieser Eingangssignale steuerten. Die Logik dieser Aussage ist offensichtlich und ihre Einfachheit unbestreitbar.
In etlichen Punkten aber versagt diese Definition, denn einige Mikrocontroller-basierte Lösungen auf dem Markt leisten etwas mehr als nur „Daten zu verarbeiten“. Ein üblicher Motorsteuerungs-Algorithmus ist kaum mehr als eine Datenverarbeitungsaufgabe und er wird in zunehmendem Maße auf Mikrocontroller-basierten Architekturen ausgeführt, die MAC-Instruktionen umfassen und daher die Daten wesentlich schneller als ein normaler Prozessor verarbeiten können. Außerdem gibt es zahlreiche Beispiele von Mikroprozessoren, die auf dem Markt für Systemsteuerungen zum Einsatz kommen.
Wenn Sie eine Steuerkonsole oder eine Mensch-Maschine Schnittstelle (HMI) in Ihrer Lösung haben, dann wird diese HMI nicht sonderlich viele Daten verarbeiten und darüber hinaus höchstwahrscheinlich einfach das System anhand der durch den Benutzer bestimmten Sensor-Eingangsdaten über Tasten oder Touch-Panel steuern. Insofern verarbeiten Controller in bestimmten Fällen und Prozessoren steuern auch gelegentlich.
Mikroprozessoren sind schnell, Mikrocontroller langsamer
Auf meine Frage habe ich keine hundert verschiedenen Antworten erhalten, denn die gängigste Antwort bezog sich einfach auf die Geschwindigkeit. Zweifellos ist es richtig, dass der Mikrocontroller mit dem geringsten Stromverbrauch von Renesas (der RL78) langsamer ist als der schnellste Mikroprozessor von einem Hersteller wie z.B. Intel, der mit 3,8 GHz läuft. Sicherlich gibt es aber Beispiele für Geschwindigkeit, die nicht einfach nur auf MHz beruhen.
Stellen Sie sich ein kleines System vor, das hochfahren, einen Sensor-Eingang abfragen, Daten absenden und sich dann wieder abschalten muss. Linux-Hochfahrzeiten lassen sich bis in den Zeitbereich von knapp unter einer Sekunde senken, ein 8-Bit-Mikrocontroller aber hätte den Großteil dieser Zeit bereits wieder im Schlafzustand verbracht und die gesamte Operation ausgeführt, bevor der Mikroprozessor gerade einmal die erste Instruktion zum Auslesen des Sensors ausgeführt hätte. Je nach Anwendung können also Mikrocontroller tatsächlich schneller als Mikroprozessoren sein.
Externer Speicher für MPUs; Embedded-Speicher für MCUs
Betrachtet man ausschließlich moderne MCUs und MPUs und ignoriert EPROM-gestützte Lösungen vergangener Tage, so erscheint das als vernünftige Schlussfolgerung. Aber auch hier gibt es mehr Ausnahmen als Regeln. Die SuperH-Mikrocontrollerfamilie umfasst eine Reihe von Pin-kompatiblen Bausteinen mit dem SH2-CPU-Kern, von denen die meisten einen auf dem Chip integrierten Flash-Speicher enthalten, mit Ausnahme einiger Produkte, die als „ROMless“-Versionen erhältlich sind. Natürlich bedeutet dies nicht, dass diese Mikrocontrollerfamilie zusätzlich einige Mikroprozessoren umfasst.
Angesichts immer besserer Mikroprozessor-Fertigungsprozesse und der zunehmenden Bedeutung von „Secure-Boot“-Optionen enthalten viele Mikroprozessoren nicht nur etwas Embedded-Speicher zum Hochfahren, sondern auch zum Speichern von Daten, wie zum Beispiel eine individuelle Kennung für ein sicheres Hochfahren.
Verwandelt also ein solcher Embedded-Speicher einen Mikroprozessor automatisch in einen Mikrocontroller? Die Antwort ist natürlich nein. Es bedeutet einfach, dass die Definition womöglich nicht perfekt ist, weil Mikroprozessoren manchmal tatsächlich internen Speicher enthalten und Mikrocontroller gelegentlich nicht.
Artikelfiles und Artikellinks
(ID:37812400)