Was ist Verilog
Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy — Lektion 1 von 90.
Verilog ist eine Hardwarebeschreibungssprache (HDL), die zur Modellierung, zum Entwurf und zur Simulation digitaler elektronischer Schaltungen verwendet wird — von einfachen Logikgattern bis hin zu komplexen Prozessoren.
Im Gegensatz zu Softwaresprachen, die sequenziell auf einer CPU ausgeführt werden, beschreibt Verilog Hardware, die parallel arbeitet. Es ist der Industriestandard für FPGA- und ASIC-Design und wird in Tools wie ModelSim, Vivado und Quartus verwendet.
In diesem Kurs lernen Sie Verilog von Grund auf – angefangen bei der einfachen Simulationsausgabe über den Aufbau kombinatorischer und sequentieller Schaltungen bis hin zum Entwurf realer Module wie Zähler, Schieberegister und UART-Schnittstellen.
Aufgabe
EinfachWillkommen zu deinem ersten Verilog-Programm! Der Code ist bereits für dich geschrieben.
Was zu tun ist:
- Schau dir den Code an — er verwendet
$display, um Text auszugeben, ähnlich wieprintfin C - Klicke auf Run Code, um ihn zu kompilieren und zu simulieren
- Du solltest
Hello World!in der Ausgabe sehen
Hinweis: Jedes Verilog-Programm läuft innerhalb eines module. Der initial-Block wird einmal zu Beginn der Simulation ausgeführt, und $finish beendet sie.
Spickzettel
Verilog ist eine Hardwarebeschreibungssprache (HDL), die parallel arbeitende Hardware beschreibt und für das FPGA- und ASIC-Design verwendet wird.
Jedes Verilog-Programm läuft innerhalb eines module ab. Der initial-Block wird einmal zu Beginn der Simulation ausgeführt; $finish beendet die Simulation. Verwenden Sie $display, um Text auszugeben (ähnlich wie printf in C):
module example;
initial begin
$display("Hello World!");
$finish;
end
endmoduleProbier es selbst
module main;
initial begin
$display("Hello World!");
$finish;
end
endmoduleAlle Lektionen in Grundlagen
1Einführung
Was ist VerilogHardware vs. SoftwareAbstraktionsebenen im DesignDein erstes ModulKommentare4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorVergleichsoperatorenWiederholung – Einfache MathematikBitweise Operatoren7Zuweisung und Gatter
Kontinuierliche ZuweisungZuweisung mit OperatorenIntegrierte Gatter-PrimitiveAND OR NOT GatterXOR XNOR GatterZusammenfassung - Logikgatterschaltung10Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher KomparatorCase-AnweisungCasex und CasezWiederholung - ALU-Design5Operatoren Teil 2
Logische OperatorenReduktionsoperatorenShift-OperatorenVerkettungsoperatorBedingter OperatorZusammenfassung – Operator-Challenge11Schleifen
For-SchleifeWhile-SchleifeRepeat-SchleifeEndlosschleifeDisable-AnweisungRückblick – Schleifenmuster3Zahlensystem
Binäre DarstellungZahlen mit GrößenangabeZahlen ohne GrößenangabeNegative ZahlenSpezialwerte X und ZZusammenfassung – Zahlenformate6Module
ModulstrukturEingangs- und Ausgangs-PortsInout-PortsModul-InstanziierungPort-Mapping nach NamePort-Mapping nach ReihenfolgeZusammenfassung – Ein Modul erstellen