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;