Skip Navigation LinksInvent a Chip

Mikroelektronik 

FPGA statt Mikrocontroller 

Wir zeigen euch bei INVENT a CHIP, wie man eine eigene Idee als Schaltung realisiert. Dazu nutzen wir eine sogenannte Hardwarbeschreibungssprache und ein FPGA-Board. Was verbirgt sich dahinter? Was ist der Unterschied zur Softwareprogrammierung, die ihr vielleicht schon kennt?

Schaut euch dazu auch unseren kurzen Workskhopfilm an: Video

Unsere Experten aus Hannover haben ein paar Stichpunkte zusammen gefasst:

Wenn man sich heutzutage umschaut, entdeckt man eine Menge von Anwendungen, bei denen die Mikroelektronik zum Einsatz kommt. Es werden beispielsweise Servomotoren angesteuert, verschiedene Sensoren ausgelesen und komplizierte Prozesse geregelt. Dieses ermöglicht z.B. das Laufen von Robotern, das Stabilisierung von Fluggeräten und das Steuern von Fahrzeugen.
Das Herzstück der ganzen Anwendungen ist dabei entweder ein Mikrocontroller oder ein Field Programmable Gate Array (FPGA). Die bekanntesten Plattformen für den Einsatz von Mikrocontrollern sind Arduino, Raspberry Pi oder BeagleBone.
Diese Plattformen sind jedoch deutlich von einem FPGA zu unterscheiden:


• Ein Mikrocontroller ist mit einem Prozessor eines Rechners zu vergleichen. Je nach Typ besitzt dieser einen Satz von Befehlen, die der Mikrocontroller interpretieren kann und die Befehle nacheinander abarbeitet. Es wird demnach ein „Programm“ ausgeführt. Die am häufigsten eingesetzte Hochsprache für Mikrocontroller ist C.


• Ein FPGA dagegen ist ein integrierter Schaltkreis, mit dem eine logische Schaltung programmiert werden kann – kurz gesagt eine „konfigurierbare Logik“ anstelle eines Programms. Die Konfiguration (Programmierung) eines FPGA wird mittels einer Hardwarebeschreibungssprache erstellt, das sind primär VHDL (benutzen wir) oder Verilog. Ähnlich wie Hardware auf einer Platine können Abläufe parallel ausgeführt werden.


Bei Mikrocontrollern sind parallele Prozesse nicht realisierbar, eingeschränkt durch den Ablauf eines Programms. Das macht die Vorteile eines FPGAs deutlich. Ein FPGA kann z.B. 128 Sensorkanäle gleichzeitig auswerten und in Echtzeit parallel Aktoren wie z.B eine LED oder einen Motor, steuern. Ein Mikrocontroller hingegen müsste jeden einzelnen Prozess sequentiell, also nacheinander abarbeiten. Deshalb ist ein FPGA viel flexibler als ein Mikrocontroller.

Und das ist der Grund für folgende Schlagzeilen. Und vielleicht eine weitere Motivation für euch, an INVENT a CHIP teilzunehmen:

„Die Nachfrage nach selbstständigen Ingenieuren mit Know-how im Bereich FPGA-Entwicklung wuchs im Jahr 2012 im Vergleich zum Vorjahr um 70%.“ [1]

„Die fünf Top-Skills für Ingenieure sind laut der Personalagentur GULP derzeit FPGA-Entwicklung, Funktionale Sicherheit, CAD, Embedded-Entwicklung und Automatisierungstechnik/SPS. Und gerade der Bedarf an FPGA-Entwicklern ist immens. FPGAs werden in der Entwicklung moderner Elektronikgeräte und Systeme immer wichtiger.“ [2]

 

 


[1] http://www.elektronikpraxis.vogel.de/berufkarriere/articles/394800/
[2] http://www.elektronikpraxis.vogel.de/hardwareentwicklung/pld-und-asic/articles/443007/