Dein erstes Modul
Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy — Lektion 4 von 90.
Ein Modul ist der grundlegende Baustein in Verilog. Jedes Stück Verilog-Code befindet sich innerhalb eines Moduls.
Stellen Sie sich ein Modul als eine Komponente vor, die Folgendes besitzt:
- Eingänge (eingehende Signale)
- Ausgänge (ausgehende Signale)
- Verhalten (was es tut)
Modulsyntax
module module_name ( inputs, outputs );
// Alles hier drin
endmoduleJedes Modul beginnt mit module und endet mit endmodule.
Eingänge und Ausgänge
module and_gate(
input a, // a kommt IN das Modul
input b, // b kommt IN das Modul
output c // c geht AUS dem Modul heraus
);
// Verhalten wird hier definiert
endmodule- input = Signal tritt in das Modul ein
- output = Signal verlässt das Modul
Verhalten hinzufügen
Jetzt lassen wir das Modul etwas tun:
module and_gate(
input a,
input b,
output c
);
assign c = a & b; // c ist nur 1, wenn a UND b 1 sind
endmoduleassignverbindet die rechte Seite kontinuierlich mit der linken Seite&bedeutet UND in Verilog
Aufgabe
In dieser Herausforderung müssen Sie ein einfaches Modul erstellen, das die OR-Operation ausführt.
Was zu tun ist:
- Das Modul sollte den Namen
or_gatehaben - Es sollte einen Eingang namens
xhaben - Es sollte einen Eingang namens
yhaben - Es sollte einen Ausgang namens
zhaben - Verwenden Sie innerhalb des Moduls
assign, umzgleichx OR yzu machen
Hinweis: In Verilog wird OR mit dem Pipe-Symbol | geschrieben. Es gibt 1 (wahr) aus, wenn mindestens einer der Eingänge 1 (wahr) ist.
Spickzettel
Ein Modul ist der grundlegende Baustein in Verilog und fungiert als Komponente mit Eingängen, Ausgängen und Verhalten.
module module_name (
input a,
input b,
output c
);
// behavior
endmoduleVerwenden Sie assign, um ein Ausgangssignal kontinuierlich anzusteuern:
assign c = a & b; // AND
assign c = a | b; // OR&— AND-Operator|— OR-Operator
Probier es selbst
// Schritt 1: Erstellen Sie ein Modul namens or_gate
// Schritt 2: Erstellen Sie den Eingang x
// Schritt 3: Erstellen Sie den Eingang y
// Schritt 4: Erstellen Sie den Ausgang z
// Schritt 5: Verwenden Sie assign, um z = x ODER y zu setzen
// In Verilog wird ODER als | geschrieben
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle 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