Menu
Coddy logo textTech

Bucle Repeat

Parte de la sección Fundamentos del Journey de Verilog de Coddy — lección 60 de 90.

El bucle repeat ejecuta un bloque de código un número fijo de veces. A diferencia del bucle for, no utiliza una variable de contador de bucle.

Un bucle repeat se ejecuta un número determinado de veces. Le proporcionas una constante o expresión que determina cuántas iteraciones ejecutar.

Sintaxis:

repeat (number) begin
  // Código a repetir
end

Ejemplo simple

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

Salida:

Hello
Hello
Hello
Hello
Hello

El mensaje se imprime exactamente 5 veces.

Repeat con una expresión

integer count = 3;

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

Salida:

Looping
Looping
Looping

Repeat vs For Loop

 Bucle ForBucle Repeat
Variable de contadorSí (explícita)No
Cuándo usarloNecesita el valor del índiceSolo necesita repetición
Ejemplofor (i=0; i<5; i=i+1)repeat (5)

Generación de múltiples ciclos de reloj

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

Esto genera 20 flancos de reloj (10 ciclos completos).

Reglas importantes

ReglaExplicación
El número debe ser no negativoNo se puede repetir un número negativo de veces
Se puede usar una constante o una expresiónrepeat (10) o repeat (count)
No hay variable de bucle disponibleNo se puede rastrear el número de iteración
Usar begin/end para múltiples sentenciasRequerido para más de una línea
challenge icon

Desafío

Qué hacer:

Agrega el bucle repeat que falta para imprimir "Verilog" 4 veces.

Pruébalo tú mismo

module repeat_challenge;
  
  initial begin
    $display("Printing 4 times:");
    
    // TODO: Añade un bucle repeat
    // Repite 4 veces
    // Dentro, imprime "Verilog"
    
    $finish;
  end
endmodule
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos