Menu
Coddy logo textTech

Boucle While

Fait partie de la section Fondamentaux du Journey Verilog de Coddy. Leçon 59 sur 90.

La boucle while répète un bloc de code tant qu’une condition est vraie. Contrairement à la boucle for, elle ne possède pas de compteur intégré. Tu dois mettre à jour toi-même la variable de boucle.

Une boucle while vérifie une condition avant chaque itération. Si la condition est vraie, la boucle s’exécute. Si elle est fausse, la boucle s’arrête.

Syntaxe :

while (condition) begin
  // Code à répéter
end

Exemple simple

integer i = 0;

while (i < 5) begin
  $display("i = %d", i);
  i = i + 1;
end

Sortie :

i = 0
i = 1
i = 2
i = 3
i = 4

La boucle s’exécute tant que i < 5.

Boucle While ou For

 Boucle ForBoucle While
CompteurIntégréVous le gérez
Quand l’utiliserNombre d’itérations connuMoment où la boucle s’arrêtera inconnu
Syntaxefor (i=0; i<5; i=i+1)while (i < 5)

Boucle while dans les bancs de test

Les boucles while sont utiles lorsque vous ne savez pas exactement de combien d’itérations vous avez besoin :

integer i = 0;

while (i < 16) begin
  $display("Testing value %d", i);
  i = i + 1;
end

Trouver une valeur spécifique

integer i = 0;
reg [7:0] data;

while (data[i] != 1) begin
  i = i + 1;
end
$display("First 1 found at position %d", i);

Règles importantes

RègleExplication
La condition doit devenir fausseSinon, boucle infinie
Mettre à jour la variable de boucle à l’intérieurSinon, la boucle ne se termine jamais
La variable de boucle doit être integer ou regElle ne peut pas être wire
Utiliser begin/end pour plusieurs instructionsNécessaire pour plus d’une ligne
challenge icon

Défi

Que faire :

Ajoutez la boucle while manquante pour afficher les nombres de 0 à 2.

Essayez vous-même

module while_challenge;
  integer i;
  
  initial begin
    i = 0;
    $display("Printing 0 to 2:");
    
    // TODO: Ajouter une boucle while
    // Boucler tant que i < 3
    // À l'intérieur, afficher i
    // Incrémenter i de 1
    
    $finish;
  end
endmodule
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Compilateur Verilog en ligne