Zusammenfassung – Timing-Steuerung
Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy — Lektion 72 von 90.
Aufgabe
Diese Herausforderung testet Ihr Verständnis von Delays, Gate Delays, Assignment Delays, timescale und Clock-Generierung.
Was zu tun ist:
- Fügen Sie eine
timescale-Direktive mit1ns / 1pshinzu - Erzeugen Sie eine Clock, die alle 5 Zeiteinheiten umschaltet (toggles)
- Fügen Sie ein AND-Gate mit einem Gate Delay von 3 Zeiteinheiten hinzu
- Verwenden Sie ein Assignment Delay, um
anach 2 Zeiteinheitenbzuzuweisen (lesen Sieasofort)
Probier es selbst
// TODO: Timescale-Direktive hinzufügen (1ns / 1ps)
module timing_challenge;
reg clk;
reg a, b;
wire out;
initial begin
clk = 0;
end
// TODO: Erzeuge Clock, der alle 5 Zeiteinheiten umschaltet
// TODO: Füge AND-Gatter mit 3 Zeiteinheiten Verzögerung hinzu (Eingänge a, b, Ausgang out)
initial begin
$monitor("Time %0t: clk=%b, a=%b, b=%b, out=%b", $time, clk, a, b, out);
a = 1;
// TODO: Verwende Zuweisungsverzögerung, um a nach 2 Zeiteinheiten b zuzuweisen
// Lese a jetzt, weise b nach 2 Zeiteinheiten zu
#20;
$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-Design13Timing und Verzögerungen
Was sind VerzögerungenGatter-VerzögerungenZuweisungsverzögerungenTimescale-DirektiveTakterzeugungZusammenfassung – Timing-Steuerung5Operatoren 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