Liebe Kunden,

wir befinden uns ab dem 20.12.2018 (14:00 Uhr) in Betriebsferien. Alle Bestellungen nach diesem Zeitpunkt werden erst wieder ab dem 03.01.2019 versendet. Wir möchten Sie bitten, dies in Ihrer Bestellplanung zu berücksichtigen!

Eine besinnliche Weihnachtszeit und ein gesundes neues Jahr wünscht Ihnen
Ihr EXP-Tech Team

Kategorie ausblenden

Programmierung: FPGA vs. Mikrocontroller

Bei FPGAs und Microcontrollern handelt es sich um sehr unterschiedliche Geräte. Bei einem Mikrocontroller, wie einem Arduino, ist der Chip bereits für Sie konfiguriert. Sie schreiben Ihren Code, normalerweise in C oder C ++, und kompilieren diesen in eine Hex-Datei, die Sie auf den Mikrocontroller laden. Der Mikrocontroller speichert das Programm im Flash-Speicher bis es gelöscht oder ersetzt wird. Mit Mikrocontrollern haben Sie die Kontrolle über die Software.

FPGAs sind anders. Sie sind derjenige, der die Schaltung entwirft. Es gibt keinen Prozessor, auf dem Software ausgeführt werden kann, zumindest solange, bis Sie ein Design erstellt haben. Um Ihr Design zu erstellen, schreiben Sie etwas in einer HDL (Hardware Description Language). Die zwei beliebtesten HDLs sind Verilog und VHDL. Diese wandeln dann Ihre HDL in eine Bit-Datei um, mit der Sie das FPGA konfigurieren können. Ein kleiner Nachteil für FPGAs ist, dass sie ihre Konfiguration im RAM speichern und nicht im Flash. Das bedeutet, dass Sie ihre Konfiguration verlieren, sobald die Stromversorgung endet. Die FPGAs müssen bei jedem Einschalten konfiguriert werden. Dies ist jedoch nicht so schlimm, da es Flash-Chips gibt, die automatisch die gespeicherte Bit-Datei beim Einschalten konfiguriert. Es gibt auch einige Entwicklungsboards, die überhaupt keinen Programmierer benötigen und das FPGA beim Start konfigurieren. Mit FPGAs haben Sie die Kontrolle über die Hardware.

FPGA Anwendungen

Mit einem FPGA können Sie die eigentliche Schaltung erstellen, also entscheiden Sie selbst, an welche Pins die serielle Schnittstelle angeschlossen wird. Das bedeutet auch, dass Sie so viele serielle Ports erstellen können, wie Sie möchten. Die einzigen Einschränkungen, die Sie wirklich haben, sind die Anzahl der physischen I / O-Pins und die Größe des FPGA.

Genau wie bei Mikrocontrollern, die über eine bestimmte Menge an Speicher für Ihr Programm verfügen, können FPGAs nur eine so große Schaltung emulieren.

Eine der interessantesten Anwendungen von FPGAs ist, dass Sie die Hardware als einen Prozessor entwerfen können, für den Sie dann Software schreiben! In der Tat verwenden Unternehmen wie Intel oder nVidia, die digitale Schaltungen entwickeln, häufig FPGAs, um ihre Chips vor der Erstellung zu testen.