8‑Bit- vs. 32‑Bit-Mikrocontroller: Auswahl des richtigen Mikrocontrollers für Ihr Leiterplattendesign

Erstellt: February 27, 2018
Aktualisiert am: November 4, 2020
8‑Bit- vs. 32‑Bit-Mikrocontroller: Auswahl des richtigen Mikrocontrollers für Ihr Leiterplattendesign

Bei elektronischen Geräten habe ich sehr schlechte Kaufgewohnheiten. Ich weiß nicht, ob ich mir einen neuen Laptop kaufen oder mein Tablet auf ein iPad Pro upgraden soll. Am Ende kaufe ich beides und kann mir endlose Vorträge von meinem Verlobten anhören.

Zum Glück bin ich bei der Wahl zwischen 8‑Bit- und 32‑Bit-Mikrocontrollern für meine Hardware-Designs etwas entscheidungsfreudiger. In Sachen Kosten unterscheiden sie sich nicht besonders, doch einer ist leistungsstärker als der andere. Doch um die richtige Auswahl zu treffen, muss man die grundlegenden Unterschiede zwischen 8‑Bit- und 32‑Bit-MCUs kennen.

Elektronische Geräte, die innerhalb eines Hauses vernetzt sind


8‑Bit- vs. 32‑Bit-Mikrocontroller: Die Grundlagen

Streng genommen verarbeitet ein 8‑Bit-Mikrocontroller zu jedem Zeitpunkt nur 8 Bit an Daten. Die Anzahl der Bits, die von einer MCU verwendet werden (diese wird manchmal als "Bittiefe" oder "Datenbreite" bezeichnet), definiert auch die Größe des Registers (8 Bit pro Register), die Anzahl der Speicheradressen (nur 28, also 256 Adressen) sowie die größte Zahl, die verarbeitet werden kann (auch hier 28, also 256 Ganzzahlen: 0 bis 255). Zwar verfügen 8‑Bit-Mikrocontroller nur über begrenzte Adressen, doch einige von ihnen verwenden Paging. Hierbei bestimmt der Inhalt des Seitenregisters, welche Onboard-Speicherbank verwendet wird.

32-Bit-Mikrocontroller können theoretisch Zahlen bis 232 verarbeiten. Sie verfügen über 32‑Bit-Arithmetik-Logikeinheiten, -Register und -Busbreite. Im Allgemeinen heißt das, dass ein 32‑Bit-Controller viermal so viele Daten verarbeiten kann wie sein 8‑Bit-Pendant, wodurch er technisch deutlich dateneffizienter ist. Es gibt jedoch weitere Unterschiede zwischen 8‑Bit- und 32‑Bit-Mikrocontrollern, die über Rechenoperationen hinausgehen.

Rechenoperationen

Eine Einschränkung ist recht offensichtlich: die von Rechenoperationen. Ein 8‑Bit-Mikrocontroller unterstützt normalerweise nur Rechenoperationen, die Zahlen im Bereich von 0 bis 255 ergeben (oder von -127 bis 128). Größere Zahlen lassen sich jedoch in zwei Threads aufteilen. Hierdurch wird jedoch die Programmierung komplexer, da das Threading nicht automatisch auf Hardware-Ebene erfolgt.

Im Allgemeinen ermöglichen Mikrocontroller mit größerer Datenbreite Rechenoperationen mit höheren Zahlen. Ein 32‑Bit-Mikrocontroller kann vorzeichenlose Zahlen von 0 bis 4.294.967.295 verarbeiten (bzw. -2.147.483.647 bis 2.147.483.648 bei Zahlen mit Vorzeichen). Wenn Sie eine höhere Programmiersprache wie C oder eine spezielle IDE (z. B. AtmelStudio) verwenden, sollten Sie Zugang zu einer Bibliothek haben, die größere Zahlen oder die Verwendung wissenschaftlicher Schreibweisen unterstützt.

Formfaktor bei 8-, 16- und 32‑Bit-Mikrocontrollern

Es mag vielleicht so klingen, als würde der 32‑Bit-Mikrocontroller in jedem Fall ein größeres Gehäuse als die 8‑Bit-Variante brauchen. Das ist jedoch nicht immer so. Einige 8‑Bit-, 16‑Bit- und 32‑Bit-Mikrocontroller sind im selben Formfaktor verfügbar (Microchip bietet beispielsweise eine Reihe von Mikrocontrollern mit verschiedenen Bittiefen, die allesamt im TQFP-64-Format erhältlich sind). 8‑Bit-Mikrocontroller sind in DIP-Gehäusen verfügbar, wie es bei den beliebten Arduino-Leiterplatten der Fall ist.

Zwei beliebte Gehäuse für 8‑Bit- und 32‑Bit-Mikrocontroller
Two common packages for 8-bit (left) and 32-bit (right) microcontrollers.

Eingebettete Software und Speichernutzung

Auf Software-Ebene bestimmen die in Ihrem Code verwendeten Datentypen, welche Art von Mikrocontroller Sie einsetzen sollten. Zum Beispiel nutzt eine vorzeichenlose Ganzzahl, die in einem 8‑Bit-Controller deklariert wird, nur 1 Byte an Daten. In einem 32‑Bit-Mikrocontroller belegt die gleiche Variable jedoch 4 Byte. Vielleicht denken Sie jetzt: "Moment! Eine 32‑Bit-MCU hat 16 Millionen Mal mehr Adressen. Was interessiert mich da, ob eine Zahl vier Byte belegt?" Die maximale Anzahl der verfügbaren eindeutigen Adressen sagt nichts über die tatsächliche Speichermenge in einem Mikrocontroller aus. Der On‑Chip-Speicher ist in der Regel im KB‑Bereich angesiedelt – es kommt also auf die Menge der Daten an, die in Ihrem Code erforderlich ist.

Bei der Entscheidung zwischen einem 8‑Bit- und einem 32‑Bit-Mikrocontroller müssen Sie mehr als nur die Datenbreite beachten. Indem Sie die größten Unterschiede zwischen 8‑Bit- und 32‑Bit-Mikrocontrollern berücksichtigen, können Sie fundierte Entscheidungen für Ihr Design treffen.

Geschwindigkeit und Speicher

Einer der größten Vorteile von 32‑Bit-Mikrocontrollern gegenüber der 8‑Bit-Variante ist die deutlich überlegene Verarbeitungsgeschwindigkeit. Ein normaler 8‑Bit-Mikrocontroller läuft in der Regel mit 8 MHz, während die 32‑Bit-Version auf mehrere Hundert MHz getaktet werden kann. Vielleicht fällt Ihnen der Geschwindigkeitsunterschied bei der eingebetteten Datenverarbeitung nicht auf, wenn Sie den Mikrocontroller zum Einschalten eines mechanischen Relais verwenden. Er wird sich jedoch bemerkbar machen, wenn Sie Anwendungen ausführen, für die viele Daten verarbeitet werden müssen. Ein Türzugangs-Controller, der pro Tag Tausende von Transaktionen verarbeiten muss, benötigt beispielsweise einen 32‑Bit-Mikrocontroller-Prozessor.

8‑Bit-Controller sind günstig und einfach in der Anwendung. Und so sind sie auch vier Jahre nach ihrer Einführung noch äußerst beliebt. Wenn Sie jedoch an einem Produkt arbeiten, das einen großen internen Arbeitsspeicher (RAM) benötigt, müssen Sie den 8‑Bit-Mikrocontroller möglicherweise durch eine 32‑Bit-Variante ersetzen. 32‑Bit-Mikrocontroller haben oft achtmal mehr RAM als ihre 8‑Bit-Pendants. Wenn Sie einen großen Puffer zum Speichern von Audiodaten benötigen, ist ein 32‑Pin-Mikrocontroller die bessere Prozessoroption.

Linien aus Licht auf einer gewundenen Straße
Get a 32-Bit microcontroller if your design can’t live without speed.

Hinzufügen von Peripheriegeräten

Zu den Grundlagen von Embedded-Systems-Designs zählt auch das Erstellen einer Liste erforderlicher Peripheriegeräte anhand der Projektanforderungen. Wenn Sie Ethernet, Universal Serial Bus (USB-Stack), mehrere UART-Geräte (Universal Asynchronous Receiver-Transmitter) und einen CAN-Bus (Controller Area Network) benötigen, reicht ein 8‑Bit-Mikrocontroller nicht aus. Möglicherweise müssten Sie zusätzliche Peripheriechips einsetzen, die mehr kosten können als ein 32‑Bit-Mikrocontroller allein.

Im Allgemeinen sind 32‑Bit-Mikrocontroller gegenüber 8‑Bit-Varianten mit einer Vielzahl von Funktionen ausgestattet. Dank seiner überragenden Verarbeitungsgeschwindigkeit kann ein 32‑Bit-Mikrocontroller effizient mehrere Peripheriegeräte verarbeiten. Bedenken Sie jedoch, dass 32‑Bit-Mikrocontroller mehr Strom verbrauchen, insbesondere wenn alle Embedded Systems und Peripheriegeräte eingeschaltet sind.

Hardwaredesign und Lernkurve

Eine Leiterplatte mit einem 32‑Bit-Mikrocontroller, der in der Regel über mehr als 100 Pins verfügt, ist definitiv komplexer als ein 8‑Bit-Mikrocontroller, der nur selten 30 Pins übersteigt. Was die Bestückung angeht, ist das Löten des SOIC-Formats auf jeden Fall einfacher als bei QFP- (Quad Flat Package) oder BGA-Gehäusen (Ball Grid Array). Außerdem gibt es auf SOIC-Gehäusen weniger Qualitätsprobleme mit breiteren Abständen. Wenn ein 8‑Bit-Mikrocontroller-Gerät für Ihr Projekt ausreicht, sollten Sie keinen 32‑Pin-Mikrocontroller verwenden. Verwenden Sie andernfalls vorgefertigte Footprints in der PCB-Designsoftware, um den Designaufwand zu minimieren.

Wenn Sie nach Tutorials für Mikrocontroller-Programmierung suchen, werden Sie feststellen, dass sich die meisten auf 8‑Bit-Mikrocontroller beziehen, wie z. B. 8051 oder Arduino, eine beliebte 8‑Bit-basierte Mikrocontroller-Leiterplatte. Das liegt daran, dass der Einstieg mit einem 8‑Bit-Mikrocontroller leichter fällt. Ein 32‑Bit-Mikrocontroller verfügt über eine komplexere Architektur, weshalb es länger dauert, bis Benutzer damit vertraut sind. Bei Projekten mit einfachem Code, wie z. B. einem Produktionszähler, ist es nicht besonders wirtschaftlich, dass Firmware-Entwickler eine Woche lang Mikrocontroller studieren, wenn sie die gesamte Firmware viel günstiger mit einem 8‑Bit-Mikrocontroller einrichten könnten.

Arduino-Leiterplatte mit 32‑Bit-Mikrocontroller
Expect a steeper learning curve with 32-bit microcontrollers. Editorial credit: goodcat / Shutterstock.com

Anwendungen für 32‑Bit-Mikrocontroller

Es gibt viele Anwendungen für 32‑Bit-Mikrocontroller. Wir konzentrieren uns jedoch darauf, wann sie nicht verwendet werden sollten. Im Allgemeinen gilt, dass Sie für jede Anwendung, die schnelle Berechnungen großer Zahlen erfordert, einen 16- oder 32‑Bit-Mikrocontroller verwenden sollten. Zu den Beispielen zählen FFT-Berechnungen, Bildverarbeitung, hochwertige Audio- oder Videoanwendungen und Edge Computing. Einige speicher- und verarbeitungsintensive Aufgaben, die maschinelles Lernen oder KI beinhalten, erfordern leistungsstärkere Hardware, wie z. B. eine ARM-MCU oder einen Einplatinencomputer.

Wenn Sie analoge Signale messen müssen, ist ein 32‑Bit-Mikrocontroller nicht unbedingt besser als eine 8‑Bit-Variante. Die Bittiefe, die bei Mikrocontrollern angegeben wird, entspricht nicht der Bittiefe des integrierten Analog-Digital-Wandlers (ADC). Handelsübliche Mikrocontroller beinhalten einen Onboard-ADC, der Raten von 8, 10, 12 oder 16 Bit erreicht.

Bei mobilen Anwendungen bieten 32‑Bit-Mikrocontroller eine höhere Rechenleistung, jedoch zu Lasten des Stromverbrauchs. Mit einem 32‑Bit-Mikrocontroller lassen sich wichtige Berechnungen zwar schneller durchführen, sodass die CPU mehr Zeit im Ruhemodus verbringen kann. Das bedeutet jedoch nicht, dass 32‑Bit-Mikrocontroller energieeffizienter sind. 8‑Bit-Mikrocontroller bieten in der Regel längere Akkulaufzeiten und ausgewogenere Peripheriefunktionen als vergleichbare 32‑Bit-Geräte.

Wählen Sie die beste MCU für Ihr Leiterplattendesign

Um den besten Mikrocontroller für Ihr Leiterplattendesign auszuwählen und gleichzeitig Aufwand und Kosten zu minimieren, müssen Sie die wichtigsten Vor- und Nachteile von 8‑Bit- und 32‑Bit-Mikrocontrollern sorgfältig abwägen. Indem Sie Designanforderungen wie Geschwindigkeit, Komplexität, Peripheriegeräte und Flash-Speicher berücksichtigen, können Sie bei der Auswahl des besten Mikrocontrollers für Ihr Design langwierige Entscheidungen vermeiden und potenzielle Rückschläge minimieren.

Mit einem professionellen Werkzeug für Leiterplattendesign, wie z. B. CircuitStudio® von Altium, können Sie die Designanforderungen im Voraus bestimmen und gleichzeitig Ihre Lernkurve optimieren.

Sie wissen immer noch nicht, ob Sie für Ihr Projekt einen 8‑Bit- oder einen 32‑Bit-Mikrocontroller verwenden sollten? Sprechen Sie mit einem Experten für Altium Designer.

 

Vordenkerposition

neueste Artikel

Zur Startseite