Menu
Coddy logo textTech

Repeat-Schleife

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

Die repeat-Schleife führt einen Codeblock eine feste Anzahl von Malen aus. Im Gegensatz zur for-Schleife verwendet sie keine Schleifenzählervariable.

Eine repeat-Schleife wird eine bestimmte Anzahl von Malen ausgeführt. Sie übergeben ihr eine Konstante oder einen Ausdruck, der bestimmt, wie viele Iterationen ausgeführt werden sollen.

Syntax:

repeat (number) begin
  // Code zum Wiederholen
end

Einfaches Beispiel

repeat (5) begin
  $display("Hello");
end

Ausgabe:

Hello
Hello
Hello
Hello
Hello

Die Nachricht wird genau 5 Mal gedruckt.

Repeat mit einem Ausdruck

integer count = 3;

repeat (count) begin
  $display("Looping");
end

Ausgabe:

Looping
Looping
Looping

Repeat vs For Loop

 For LoopRepeat Loop
Counter variableJa (explizit)Nein
When to useBenötigt IndexwertBenötigt nur Wiederholung
Examplefor (i=0; i<5; i=i+1)repeat (5)

Generierung mehrerer Taktzyklen

initial begin
  clk = 0;
  repeat (20) begin
    #5 clk = ~clk;
  end
end

Dies erzeugt 20 Taktflanken (10 vollständige Zyklen).

Wichtige Regeln

RegelErklärung
number muss nicht-negativ seinKann nicht negative Mal wiederholt werden (repeat)
Kann Konstante oder Ausdruck verwendenrepeat (10) oder repeat (count)
Keine loop-Variable verfügbarKann die Iterationsnummer nicht verfolgen
Verwende begin/end für mehrere AnweisungenErforderlich für mehr als eine Zeile
challenge icon

Aufgabe

Was zu tun ist:

Füge die fehlende repeat-Schleife hinzu, um "Verilog" 4-mal auszugeben.

Probier es selbst

module repeat_challenge;
  
  initial begin
    $display("Printing 4 times:");
    
    // TODO: repeat-Schleife hinzufügen
    // 4 Mal wiederholen
    // Innen "Verilog" ausgeben
    
    $finish;
  end
endmodule
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen