Menu
Coddy logo textTech

Zusammenfassung – Zeitsteuerung

Teil des Abschnitts Grundlagen der Verilog-Journey von Coddy. Lektion 72 von 90.

challenge icon

Aufgabe

Diese Herausforderung testet dein Verständnis von Verzögerungen, Gatterverzögerungen, Zuweisungsverzögerungen, Zeitskala und Taktsignalerzeugung.

Aufgabe:

  1. Füge eine timescale-Direktive mit 1ns / 1ps hinzu
  2. Erzeuge ein Taktsignal, das alle 5 Zeiteinheiten umschaltet
  3. Füge ein AND-Gatter mit einer Gatterverzögerung von 3 Zeiteinheiten hinzu
  4. Verwende eine Zuweisungsverzögerung, um a nach 2 Zeiteinheiten b zuzuweisen (lies a sofort)

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: Takt generieren, der alle 5 Zeiteinheiten umschaltet
  
  
  // TODO: AND-Gatter mit 3 Zeiteinheiten Verzögerung hinzufügen (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: Zuweisungsverzögerung verwenden, um a nach 2 Zeiteinheiten b zuzuweisen
    // a jetzt lesen, nach 2 Zeiteinheiten b zuweisen
    
    
    #20;
    $finish;
  end
endmodule

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Verilog-Compiler