Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> VHDL

Cómo usar Loop y Exit en VHDL

En el tutorial anterior aprendimos cómo retrasar el tiempo usando el wait for declaración. También aprendimos sobre el ciclo del proceso. Ahora sabemos que si lo permitimos, el "hilo" del proceso se repetirá dentro del proceso para siempre.

Pero, ¿y si queremos hacer algo solo una vez al principio del proceso? ¿Y luego repetir algún otro código al final? El tipo de bucle más simple en VHDL se puede crear usando el loop declaración.

Esta publicación de blog es parte de la serie Tutoriales básicos de VHDL.

La sintaxis del bucle simple es:

loop
end loop;

Tal ciclo continuará indefinidamente, o hasta que un exit; se encuentra El exit La declaración se puede utilizar para salir de cualquier bucle.

Ejercicio

Este video tutorial le enseña cómo crear un bucle simple y cómo salir de él:

El código final que creamos en este tutorial:

entity T03_LoopTb is
end entity;

architecture sim of T03_LoopTb is
begin

    process is
    begin
 
        report "Hello!";
        
        loop
            report "Peekaboo!";
            exit;
        end loop;
        
        report "Goodbye!";
        wait;
        
    end process;

end architecture;

La salida a la consola del simulador cuando presionamos el botón ejecutar en ModelSim:

VSIM 2> run
# ** Note: Hello!
#    Time: 0 ns  Iteration: 0  Instance: /t03_looptb
# ** Note: Peekaboo!
#    Time: 0 ns  Iteration: 0  Instance: /t03_looptb
# ** Note: Goodbye!
#    Time: 0 ns  Iteration: 0  Instance: /t03_looptb

Análisis

Al ejecutar el código final en el simulador vimos que el primer "¡Hola!" se imprimió en la consola de ModelSim. Luego, el “¡Peekaboo!” entre el loop; y end loop; fue impreso. En la siguiente línea, el programa presionó el exit; instrucción, lo que hace que el programa salga del bucle. Finalmente, "¡Adiós!" fue impreso. Después de esto no pasa nada más porque el programa se detiene para siempre en el wait; declaración.

Podemos ver en las marcas de tiempo de las impresiones que todo sucedió en el tiempo de simulación de 0 ns. Como aprendimos en el tutorial anterior, todo lo que no sea wait las declaraciones consumen cero tiempo.

Para llevar

Ir al siguiente tutorial »


VHDL

  1. Cómo usar un procedimiento en un proceso en VHDL
  2. Cómo usar una función impura en VHDL
  3. Cómo usar una función en VHDL
  4. Cómo usar un procedimiento en VHDL
  5. Cómo crear un temporizador en VHDL
  6. Cómo usar constantes y mapas genéricos en VHDL
  7. Cómo usar la creación de instancias de mapas de puertos en VHDL
  8. Cómo usar una instrucción Case-When en VHDL
  9. Cómo instalar un simulador y editor VHDL gratis
  10. Microcontrolador PIC18:qué es y cómo usarlo
  11. ¿Qué es un designador de referencia y cómo lo usamos en ensamblaje?