Was ist Verilog
Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy. Lektion 1 von 90.
Verilog ist eine Hardwarebeschreibungssprache (HDL), die zum Modellieren, Entwerfen und Simulieren digitaler elektronischer Schaltungen verwendet wird – von einfachen Logikgattern bis hin zu komplexen Prozessoren.
Im Gegensatz zu Programmiersprachen, 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 lernst du Verilog von Grund auf, beginnend mit grundlegenden Simulationsausgaben, dann dem Aufbau kombinatorischer und sequentieller Schaltungen und schließlich dem Entwurf echter Module wie Zählern, Schieberegistern und UART-Schnittstellen.
Aufgabe
EinfachWillkommen bei deinem ersten Verilog-Programm! Der Code ist bereits für dich geschrieben.
Was zu tun ist:
- Sieh dir den Code an. Er verwendet
$display, um Text auszugeben, ähnlich wieprintfin C - Klicke auf Code ausführen, um ihn zu kompilieren und zu simulieren
- In der Ausgabe solltest du
Hello World!sehen
Hinweis: Jedes Verilog-Programm läuft innerhalb eines module. Der initial-Block wird zu Beginn der Simulation einmal ausgeführt, und $finish beendet sie.
Probier es selbst
module main;
initial begin
$display("Hello World!");
$finish;
end
endmoduleAlle Lektionen in Grundlagen
1Einführung
Was ist VerilogHardware vs. SoftwareIhr erstes ModulKommentareAbstraktionsebenen des Designs4Operators Part 1
Arithmetic OperatorsModulo OperatorComparison OperatorsRecap - Simple MathBitwise Operators7Assign And Gates
Continuous AssignmentAssign With OperatorsBuilt In Gate PrimitivesAND OR NOT GatesXOR XNOR GatesRecap - Logic Gate Circuit10Decision Making
If StatementIf - ElseRecap - Simple ComparatorCase StatementCasex And CasezRecap - ALU Design5Operators Part 2
Logical OperatorsReduction OperatorsShift OperatorsConcatenation OperatorConditional OperatorRecap - Operator Challenge3Number System
Binary RepresentationSized NumbersUnsized NumbersNegative NumbersSpecial Values X And ZRecap - Number Formats6Modules
Module StructureInput And Output PortsInout PortsModule InstantiationPort Mapping By NamePort Mapping By OrderRecap - Build A Module9Procedural Blocks
Always BlockInitial BlockSensitivity ListBlocking AssignmentNon Blocking AssignmentRecap - Always vs Initial15Traffic Light Controller
Defining The StatesState Machine LogicÜbe selbstständig: Online-Verilog-Compiler