Arduino und Raspberry Pi werden als ideale Programmierplatinen für Anfänger und Bastler angepriesen. Könnte De0-Nano auch in diese Rolle passen?
Was hat Arduino oder RaspberryPi, was De0-Nano nicht hat?
Der Versuch, die Arduino-Serie und RPi mit einem FPGA beliebiger Leistungsfähigkeit zu vergleichen, ist ein Vergleich zwischen Äpfeln und Kartoffeln. Können sie dazu gebracht werden, ähnliche Dinge zu tun? Absolut, aber der Weg dorthin ist ein ganz anderer.
Arduino basiert auf Atmels AVR-Serie von RISC-Prozessoren (und einer Atmel-ARM-Version), RasberryPi ist ein Einplatinencomputer, der auf einem ARM-Prozessor basiert. Unabhängig davon, welcher Teil den Kern des Entwicklungsboards bildet, gibt es eine definierte Prozessorarchitektur. Das Datenblatt zeigt ein Blockdiagramm dieser Architektur, wie dieses aus dem ATMega168-Datenblatt.
Dies ist Hardware, die vom Hersteller entwickelt wurde, aus Silizium besteht und nicht geändert werden kann. Der Hersteller veröffentlicht einen Befehlssatz, entweder mit dem Datenblatt oder als separates Dokument, in dem detailliert beschrieben wird, wie das Teil programmiert werden kann.
Das DE0-Nano ist ein FPGA-Board. Wenn Sie sich ein FPGA-Datenblatt ansehen, finden Sie einen umfangreichen Satz elektrischer Spezifikationen, kein Blockdiagramm der Architektur. Es ist Sache des Entwicklers, seine eigene Architektur zu entwickeln, um die technischen Anforderungen zu erfüllen. Der Designer implementiert dann die entsprechende Logik in einer Hardwarebeschreibungssprache (HDL), typischerweise VHDL oder Verilog. Diese Sprachen sind nicht wie das Schreiben von C oder Assembler. HDLs wurden entwickelt, um die Hardware zu beschreiben, und nicht um eine sequentielle Liste von auszuführenden Operationen. Dies bedeutet, dass mehrere Operationen parallel ausgeführt werden können und fast immer stattfinden. Dies ist einer der leistungsstärksten Aspekte eines FPGA und der Grund, warum sie in Anwendungen verwendet werden, in denen eine hohe Leistung erforderlich ist.
In Wirklichkeit kann kein Projekt, das auf einem Arduino oder RPi abgeschlossen werden kann, die Verwendung eines FPGA rechtfertigen. Sie sind schwieriger zu handhaben und erfordern einige tatsächliche elektrische Kenntnisse, um ihr Potenzial auszuschöpfen, und das ist wahrscheinlich der Grund, warum es keine FPGA-Hobbyisten-Community gibt.
mng
Benutzer1975053
Benutzer43859