Wire-Typ
Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy. Lektion 6 von 90.
In Verilog müssen wir deklarieren, welchen Signaltyp wir verwenden. Der häufigste Typ ist wire.
Ein wire stellt eine physische Verbindung zwischen Komponenten dar. Er ist wie ein echter Draht in einer Schaltung.
- Wires können keine Werte speichern – sie leiten Werte lediglich weiter
- Wires werden mit
assign-Anweisungen verwendet - Wires werden verwendet, um Module miteinander zu verbinden
Einen Wire deklarieren
wire a; // Einzelbit-Wire
wire b, c; // Mehrere Wires in einer ZeileWie Drähte funktionieren
module wire_example;
wire x;
reg y;
assign x = y; // x folgt immer y
endmodulex ist mit y verbunden. Wann immer sich y ändert, ändert sich x sofort.
Drähte werden häufig verwendet, um Eingänge und Ausgänge zu verbinden:
module and_gate(
input a, // 'a' ist standardmäßig ein wire
input b, // 'b' ist standardmäßig ein wire
output c // 'c' ist standardmäßig ein wire
);
assign c = a & b; // c wird durch diese Zuweisung getrieben
endmoduleIn diesem Beispiel sind a, b und c allesamt Leitungen.
Leitungen sind der „Klebstoff“, der verschiedene Teile deiner Schaltung miteinander verbindet!
Aufgabe
Was zu tun ist:
- Füge einen
tempgenannten Draht hinzu
Probier es selbst
module simple(
input a,
input b,
output c
);
assign c = a & b;
// Deklariere wire temp hier
endmoduleDiese 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. SoftwareIhr erstes ModulKommentareAbstraktionsebenen des Designs4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorVergleichsoperatorenWiederholung – einfache MathematikBitweise Operatoren7Zuweisungen und Gatter
Kontinuierliche ZuweisungZuweisung mit OperatorenIntegrierte Gatter-GrundelementeUND-, ODER- und NICHT-GatterXOR- und XNOR-GatterRückblick – Logikgatter-Schaltung10Entscheidungsfindung
If-AnweisungIf – ElseRückblick – Einfacher KomparatorCase-AnweisungCasex und CasezRückblick – ALU-Entwurf13Zeitsteuerung und Verzögerungen
Was sind Verzögerungen?GatterverzögerungenZuweisungsverzögerungenTimescale-DirektiveTakterzeugungZusammenfassung – Zeitsteuerung2Datentypen
Wire-TypReg-TypInteger und RealVektorenArraysParameterZusammenfassung – Signale deklarieren5Operatoren Teil 2
Logische OperatorenReduktionsoperatorenSchiebeoperatorenVerkettungsoperatorBedingter OperatorRückblick – Operatoren-Herausforderung11Schleifen
For-SchleifeWhile-SchleifeWiederholungsschleifeEndlosschleifeAnweisung deaktivierenRückblick – Schleifenmuster3Zahlensystem
Binäre DarstellungZahlen mit fester BreiteZahlen ohne feste BreiteNegative ZahlenSpezialwerte X und ZZusammenfassung – Zahlenformate6Module
ModulstrukturInput- und Output-PortsInout-PortsModulinstanziierungPortzuordnung nach NamenPortzuordnung nach ReihenfolgeRückblick – Ein Modul erstellenÜbe selbstständig: Online-Verilog-Compiler