Ich habe einen Kurs in Digital Design in diesem Semester und liebe es einfach. Jetzt weiß ich, dass der Großteil der Arbeit im Bereich Embedded System und Digital Design zunächst auf Computersimulatoren erledigt und dann mithilfe von Hardware implementiert wird. Also habe ich mich gefragt, wie ich HDL lernen soll. Ich habe einige Fragen
- Was? Ich weiß nicht, was die Standards sind, möchte aber lernen, welche einfach zu erlernen sind. Ich verstehe, dass die meisten HDLs für die Verwendung mit FPGAs entwickelt wurden.
- Wie? Soll ich einem Lehrbuch mit unabhängigen Beispielen folgen oder mich auf ein Projekt wie die Implementierung eines kleinen Systems einlassen (kann so etwas wie eine Ampelsteuerung sein).
- Woher? Woher würde ich die Ressourcen bekommen?
simulation
vhdl
verilog
hdl
Rick_2047
quelle
quelle
Antworten:
Können Sie klarstellen, welches HDL Sie verwenden möchten? Die Auswahlmöglichkeiten sind im Grunde Verilog oder VHDL, [EDIT] und ihre Verwandten, Verilog-ASM und VHDL-ASM (Analog Mixed-Signal). [/ EDIT] Verilog verfügt über eine C-ähnliche Syntax, die es einfacher macht, C zu erlernen, wenn Sie zuvor mit C gearbeitet haben. Dies erleichtert jedoch auch das Entwickeln von schlechten Gewohnheiten. Sie können Hardware nicht in C programmieren, da dies der Fall ist alle parallel! Ebenso wie bei C wird davon ausgegangen, dass Sie wissen, was Sie tun, und es ist einfach, sich in den Fuß zu schießen. VHDL zwingt Sie dazu, ganz anders zu denken, was hilfreich, aber schwierig ist. Es ist ausführlicher und warnt Sie eher, wenn Sie etwas Seltsames tun. Siehe diese Slashdot-Diskussion oder diesen Artikel .
BEARBEITEN : Die "Netlist-Sprachen" habe ich nicht für die Entwurfsarbeit (in einem Texteditor) verwendet, aber ich nehme an, dass Sie könnten. SPICE, das Format von Cadsoft Eagle und EDIF sind Beispiele (mit sehr unterschiedlichen Zwecken), die mir in den Sinn kommen. Ich habe Netzlisten nur verwendet, um zu überprüfen, ob mein Schaltplan korrekt ist (macht jede Verbindung in meinem Eagle-Schaltplan Sinn), um die Abstraktion zu optimieren, die von einem Simulator (SPICE, ähnlich wie bei der Verwendung von ASM-Anweisungen in C) bereitgestellt wird, oder um Export / Import zwischen verschiedenen Programmen (EDIF).
Die Spectre- Netzlistensprache ist mit Verilog-A [nalog] und SPICE verwandt und wurde für Entwurfs- und Überprüfungsarbeiten entwickelt. MASTist eine Komponentenmodellierungssprache, die mit Verilog-AMS und VHDL-AMS kompatibel ist. Die Suche nach Tutorials für diese Sprachen zeigt, dass häufig Tools verwendet werden, die wie Dienstprogramme für die schematische Erfassung aussehen, anstatt in der Netzlistensprache selbst zu programmieren.
Ich werde auch das Xilinx Spartan FPGA und ein Digilent-Entwicklungsboard unterstützen . Allerdings würde ich mich für Basys (60 US-Dollar) oder Nexys (100 US-Dollar) entscheiden, wenn Sie das von O Engenheiro erwähnte Ethernet auf der Starterkarte (150 US-Dollar) nicht benötigen (Preise mit Bildungsrabatt). Die Basys und Nexys sind billiger und daher in Schulen beliebter, sodass mehr Tutorials und Labs online sind.
quelle
Ich bin fast in der gleichen Situation wie Sie.
Was mache ich:
Ich hatte an dem College, das ich studiert hatte, einen kostenlosen VHDL-Grundkurs belegt. Ich hatte mit dem Spartan 3E-Board gespielt .
Also habe ich das Board gekauft und werde anfangen zu spielen.
Ein Freund von mir hat folgende Bücher vorgeschlagen:
Und er hat dieses Dokument auch vorgeschlagen:
Xilinx Synthesis and Simulation Design Guide
quelle
Es gibt zwei HDL-Sprachen, VHDL und Verilog. Fragen Sie Ihren Professor, welche Sprache Sie lernen werden, und versuchen Sie herauszufinden, wie sie funktioniert: Die Syntax und wie Sie Module dazu erstellen und einen großen Überblick über ALLE digitalen Schaltungen geben können.
Vergewissern Sie sich, dass Sie wirklich alles über digitale Schaltkreise wissen, 1 bevor Sie etwas tun, da HDL nichts Neues erstellt und Sie diese Dinge nur auf eine andere Art und Weise verwenden. Sie können also eines der beiden oben genannten Bücher verwenden, um einige Übungen zu machen, den Lehrer nach den von ihm empfohlenen Büchern fragen und sie oder eines der beiden oben genannten verwenden.
Fragen Sie Ihren Lehrer, welches FPGA für die Klassen verwendet wird, ob es sich um Altera, Xilinx, Lattice oder ein anderes handelt, ob Altera den Download der Quartus Web Edition vornimmt, ob Xilinx, das ISE-Webpack, einen dieser und einen kostenlosen Download durchführt Versuchen Sie, etwas über eine der Software zu lernen, und machen Sie einige Ihrer Übungen und Simulationen mit einer von ihnen.
Sie haben Recht, etwa 90% der Arbeit in HDL sind Simulatoren. Lernen Sie also den Modelsim-Simulator und / oder den ISIM-Simulator in xilinx kennen, sie befehlen und wie Testbenches ausgeführt werden.
quelle
Überall dort, wo Sie arbeiten, müssen Sie dieselbe HDL verwenden, die sie bereits verwenden. Wenn Sie also die Chance haben, eingestellt zu werden, sollten Sie versuchen, ein wenig Zeit mit Verilog und VHDL zu verbringen. Früher war es ziemlich einfach: Verilog wurde in den USA und VHDL in Europa verwendet - heutzutage ist es kein einfaches.
Upthread Jemand hat erwähnt, dass man für VHDL lernen muss, anders zu denken - das muss man auch für Verilog tun, es sieht aus wie C, aber es ist nicht so - ein guter Anfang ist, nachzusehen, wo Drähte und Flops während der Synthese erzeugt werden - sobald man ankommt An dem Punkt, an dem Sie diese sehen und die Zeitrisiken in Ihrem Kopf „sehen“ können, sind Sie auf dem größten Weg dorthin
quelle
icarus verilog oder verilator empfehle ich zum lernen oder spielen mit verilog. ghdl ist das, was ich verwenden würde, um mit vhdl zu spielen. Weit entfernt vom Mainstream, aber ich würde auch cyclicity-cdl.sf.net empfehlen, das eine eigene Sim-Umgebung usw. hat und einen synthetisierbaren Verilog produziert. Verwenden und Erlernen von gtkwave zum Überprüfen der von den Simulatoren generierten VCD-Dateien.
quelle
Ich habe Verilog im College in einem Kurs gelernt. Der Höhepunkt dieses Kurses war die Implementierung eines 2-Wege-Superscalar-MIPS-Prozessors (30% der Klasse haben es vollständig zum Laufen gebracht; ich war in den anderen 70%). Ich denke, die Dinge in der Industrie bewegen sich im Großen und Ganzen weg von Verilog und hin zu VHDL. Davon abgesehen gibt es viele Online-Tutorials für beide Sprachen. Hier ist einer über VHDL und hier ist einer über Verilog .
Sie werden wahrscheinlich ModelSim verwenden wollen und Sie können wahrscheinlich die Student Edition verwenden (ich denke, sie ist kostenlos; möglicherweise mit Einschränkungen). Im Übrigen empfehlen sie, Digital Systems Design Using VHDL 2nd Edition als Lehrbuch zu verwenden.
quelle
Hier finden Sie ein günstiges FPGA-Entwicklungskit, das möglicherweise zu Ihnen passt. Ich bin mir jedoch nicht sicher, welche Open Source-Tools damit arbeiten. Die Toolkit-Ketten des Anbieters können kostenlos heruntergeladen werden. Ich habe gehört, dass es sich zum Preis lohnt, dieses Kit zu kaufen.
quelle