VHDL: contador

author-image

Por

VHDL: Contador de comportamiento

Este ejemplo implementa un contador de comportamiento con características de carga, claridad y arriba/abajo. No se ha optimizado para una arquitectura de dispositivo en particular, por lo que el desempeño puede variar. Intel® FPGA recomienda utilizar la función de lpm_counter para implementar un contador (consulte VHDL: Contador descendente). Este ejemplo se proporciona para mostrar la implementación del contador que no requiere el LPM.

Para obtener más información sobre el uso de este ejemplo en su proyecto, vaya a:

counters.vhd

CONTADORES DE LA ENTIDAD IS   
        PORT(d:       EN EL RANGO    DE ENTEROS 0 A 255;     clk: EN    BIT;
        borrar:   IN    BIT;
        carga:    EN    BIT;
        up_down: EN    BIT;      qd: RANGO DE ENTEROS DE SALIDA   0 A 255);
Contadores END;

ARQUITECTURA QUE COMIENZA UN OF contadores: PROCESO de
    contador ascendente/descendente
    (clk):
         RANGO DE       ENTEROS 0 A 255;    Dirección VARIABLE: ENTERO;
    BEGIN
        IF (up_down = '1') Y, a  continuación, --Generate up/down counter
            direction:= 1;
                Dirección ELSE:= -1;
        FINALIZAR SI;
            IF (clk'EVENT AND clk = '1') Y LUEGO
                IF (load = '1') ENTONCES         --Generate loadable 
                    cnt := d;                --counter. Aproveche estas 
                    líneas ELSE                     para aumentar el desempeño.
                    cnt:= cnt + dirección; 
                 FINALIZAR SI;
                --Las siguientes líneas producirán un --clear síncrono 
                en el contador IF
                  (clear = '0') Y luego     
                     cnt := 0;
                  FINALIZAR SI;
             FINALIZAR SI;
    qd <= cnt;   --Genere salidas
    END PROCESS;
FINALIZAR A;

El contenido de esta página es una combinación de la traducción humana y automática del contenido original en inglés. Este contenido se ofrece únicamente para su comodidad como información general y no debe considerarse completa o precisa. Si hay alguna contradicción entre la versión en inglés de esta página y la traducción, prevalecerá la versión en inglés. Consulte la versión en inglés de esta página.