Frage

Ich bin ein autodidaktischer eingebetteter Entwickler. Ich benutze meistens AVRs, die in C und ASM programmiert sind, aber ich habe mich mit anderen Systemen beschäftigt. Ich möchte auf komplexere Geräte wie CPLDs und FPGAs wechseln, aber ich habe keine Ahnung, wo ich anfangen soll. Meine eineinhalb Fragen sind also:

  1. Bevorzugen Sie VHDL oder Verilog und warum?
  2. Was ist eine gute Möglichkeit für eine ohne vorherige Erfahrung in HDLs und starten Sie mit dem Erlernen eines solchen Tieres?
War es hilfreich?

Lösung

Kaufen Sie ein billiges Starter -Kit bei Xilinx oder Altera (die beiden großen FPGA -Spieler). Ein Xilinx Spartan3 Starter Kit kostet 200 US -Dollar.

Ich persönlich bevorzuge VHDL. Es ist stark tippt und hat fortgeschrittenere Funktionen als Verilog. VHDL ist in Europa beliebter und Verilog dominiert in den USA.

Kaufen Sie ein Buch (z. B. Peter Ashendens Der Designer -Leitfaden für VHDL) und beginnen Sie, Ihre Designs in einem kostenlosen Simulator zu simulieren. Modelsim von Mentor Grafis ist gut und es gibt kostenlose Versionen (mit verkrüppelter Simulationsgeschwindigkeit).

Machen Sie ein interessantes Projekt (Mini -CPU, VGA -Grafiken, Synthesizer) und beginnen Sie mit dem Design. Simulieren Sie immer und stellen Sie sicher, dass Ihr Design funktioniert, bevor Ihr Design in die Hardware gesteckt wird ...

Wenn Sie keinen Hintergrund in der digitalen Elektronik haben, kaufen Sie auch ein Buch in diesem Thema.

Andere Tipps

Früher, als ich an ASIC -Design arbeitete, war es in Verilog. In vielen Fällen als Designer können Sie nicht entscheiden: Die ASIC -Synthese -Tools für ein HDL kosten einen erheblichen Geldbetrag, und Unternehmen kaufen nur die vollständige Toolchain für eine "gesegnete" Sprache. Mein Arbeitgeber hatte auf Verilog standardisiert, also haben wir das verwendet.

FPGA -Synthese -Tools sind wesentlich billiger, sodass Sie als FPGA -Designer mehr Freiheit haben, Ihre bevorzugte Sprache und Tools auszuwählen.

Es gibt auch kostenlose Verilog -Simulatoren bei Verilog.net.

Wie @KRIS erwähnte, ist auch ein FPGA -Starterbrett ein guter Weg. Wenn Ihr Verilog -Code eine LED auf einer Platine beleuchtet, ist es unendlich zufriedenstellender als eine Simulatorwellenform auf dem Bildschirm.

Auch auschecken opencores.org - Es gibt einige Artikel und viel Open -Source -Code in Verilog und VHDL, von denen Sie lernen können.

Soweit ich das beurteilen kann, wird Vhdl gegen Verilog genauso religiös wie Ruby gegen Python oder Java gegen C#. Unterschiedliche Menschen haben ihre eigenen Favoriten.

Schauen Sie sich diese Seite an:http://www.fpga4fun.com/

Schöne einfache Projekte mit einfachen Werkzeugen. Ich habe vor einigen Jahren eines dieser Boards verwendet, um ein kleines VGA -Display -System für die Verwendung als Mitteilung auszubauen.

Wenn ich mich die Website wieder ansehe, denke ich daran, ein Xylo-LM-Board zu bekommen, da es einen ARM-Prozessor sowie SDRAM und einen Xilinx Spartan 3E hat.

Ein weiteres Board, das ich zuvor verwendet habe, war der Xport 2 von Charmed Labs. Dies steckt in einen Gameboy -Fortschritt, der mit Open -Source -Entwicklungstools gut unterstützt wird.

Kasse:http://www.charmedlabs.com/index.php?option=com_virtuemart&page=shop.browse&category_id=6&itemid=43

Eine weitere Sache, über die Sie nachdenken sollten, ist, ob Sie mit dem Erlernen eines HDL oder durch Lernen von Boolean Logic, Karnaugh Maps, Demorgans Theorem, Toren, Implementierung der Arithmetik in Toren usw. Haben Sie ein genaues mentales Modell dafür, wie die zugrunde liegende Hardware aussehen wird.

Dieses Buch Ist die Verilog -Version des, die ich im Studenten verwendet habe, und meiner Meinung nach hat es ziemlich gute Arbeit geleistet. Es startet Sie mit dem oben genannten Material sowie einigen grundlegenden grundlegenden Informationen zur Implementierung von Gates auf Transistorebene und führt Sie dann in eine HDL ein und erstellt zunehmend komplexere strukturelle und verhaltensbezogene Hardwareblöcke. Ja, ich weiß, dass es gottlos ist, ebenso wie die meisten College -Lehrbücher, aber dies ist eines der Dinge, für die die Informationen, die ich zumindest online finden konnte, unzureichend waren.

Sobald Sie bereit sind, einen HDL zu wählen, empfehle ich Verilog von Herzen (nachdem Sie zuerst VHDL gelernt haben). Ja, VHDL war einst viel merkmalsreicher als Verilog, aber später haben die Sprachrevisionen (Verilog 2001, Verilog 2005, Systemverilog usw.) die meisten interessanten Funktionen, und es gibt weitaus robustere Toolchain-Unterstützung Für Verilog und seine Variante heutzutage ist es zusätzlich dazu, dass die dominierende Sprache in den USA verwendet wird (meiner Erfahrung nach wird VHDL hier nur beim Umgang mit extremen Legacy -Blöcken und in akademischen Kontexten verwendet, was teilweise auf die erwähnten Tools unterstützt wird bisher). Sobald Sie die HDL gelernt haben, haben Sie eine Hardware-Überprüfungssprache (HVL) in Systemverilog mit strikter Superset-Syntax, wodurch Sie ein gutes Stück der Lernkurve ersparen. Nicht so für VHDL, meines Wissens.

Bei Altera und Xilinx werden Simulatoren in ihre kostenlosen Werkzeugsätze eingebaut. Sie sind begrenzte Versionen der sehr beliebten Mentor -Models -Tools. Sie werden die Größe der Designs bewältigen, die Sie wahrscheinlich in ein <$ 500 (US) Board einfügen.

Für die HDL -Auswahl ist Verilog zu C als VHDL für ADA. Verilog ist also leichter zu beginnen, aber Sie können Fehler leichter machen. Überprüfen Sie Ihre Simulations- und Kompilierungswarnungen, um diese Probleme zu vermeiden.

Verilog ist viel einfacher zu erlernen und einfachere Syntax. Es ist auch eine neuere Sprache. Zweitens verwenden die meisten Menschen Verilog. VHDL hat viele Datenatypen, die ihm eine Lernkurve verleihen. Sobald Sie Verilog kennen, ist es einfacher, die Lücke an VHDL zu schließen. Oh und es gibt auch Makros in Verilog, die sehr neet sind. Ich habe eine Sprache damit erfunden. Schließlich können Sie irgendwann in der Lage sein, ein Mischsprachen -HW -Design durchzuführen. Ich begann mit VHDL, lernte dann Verilog und bin jetzt pro Verilog.

Ich war im selben Boot wie vor einem Semester. Mein bevorzugtes Buch war Dies Einer, seit es über FPGAs gesprochen hat, indem er die digitale Logik überprüft hat. Es zeigt auch nebeneinander von VHDL- und Verilog-Code vergleichende Vergleiche, so dass Sie anstatt eines zu wählen, zu dem die Leute Sie möglicherweise drängen, diejenigen lernen, die Sie stilistisch mögen.

Verwenden Sie für eine FPGA selbst Xilinx Ise webpack Um Ihre Programmierung durchzuführen (es ist kostenlos) und mit FPGAs wie dem beginnen Basys2 FPGA -Board. Es ist eine sehr kleine FPGA, die Sie zu einem kleinen Preis starten sollte, hat jedoch den zusätzlichen Vorteil, dass Sie sehr früh die Ressourcen- und Speicherverwaltung lernen. Sie können Digilent's verwenden Geschickt (Auch kostenlos) Um das Leben einfach zu erleichtern, Ihren "kompilierten" Code in das Board hochzuladen.

Viel Glück!

Bevor Sie in Verilog/VHDL stürzen oder ein FPGA -Entwickler -Kit kaufen, empfehlen ich, einen Einführungskurs zum digitalen Design zu nehmen. Es gibt gute online OpenCourseware MIT Klassen.

Viel Glück.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top