Contador
Enviado por hitachi1992 • 9 de Marzo de 2014 • Síntesis • 349 Palabras (2 Páginas) • 321 Visitas
Contador
Un contador es un circuito secuencial que pasa por una secuencia prescrita de estados. La secuencia puede seguir un conteo binario o cualquier otra secuencia de estados. Los contadores se encuentran en casi todo sistema digital. Se utiliza para contar el número de ocurrencias de un evento o para generar secuencias de temporizado para controlar operaciones en un sistema digital.
De las diversas secuencias que puede seguir un contador, la secuencia binaria directa es la más simple y la más directa. Un contador que sigue la secuencia binaria se denomina contador binario n bits, consta de n flip-flops y puede contar en binario desde 0 hasta 2n-1. Un contador con n flip-flops no necesariamente debe contar 2 n números. Puede truncarse la secuencia para contar un número menor de estados.
En los contadores síncronos las entradas de reloj de todos los flip-flops se conectan juntas a un reloj común. De esta manera todos los FF cambian de estado simultáneamente (en paralelo). El circuito a continuación muestra un contador síncrono de 3 bits. Analice el diagrama de tiempo para comprender el funcionamiento del contador y verifique que todos los FF cambian simultáneamente.
Forma de onda de contador 0-15
Codigo de VHDL
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity Cont16 is
Port ( CLK : in STD_LOGIC;
reset : in STD_LOGIC;
Cuenta : out STD_LOGIC_VECTOR (3 downto 0)); --reset agregarlo
end Cont16;
architecture Behavioral of Cont16 is
shared variable AUX: std_logic_vector(3 downto 0) := "0000"; --shared para todos los procesos
begin
process (CLK)
begin
if (reset = '1') then
AUX := "0000" ;
elsif (CLK='1' and CLK'event) then
AUX := AUX + 1; --señal auxiliar para evitar problemas
end if;
Cuenta <= AUX;-- asignacion del puerto aux a la salida Cuenta
--elsif checa clk
end process;
end Behavioral;
Simulaciones
Conclusiones
Este tipo de contador de 0-15 es de gran utilidad, ya que lo usaremos como nuestro contador del programa, este nos automatizara nuestros diferentes casos, ya que , estamos usando circuitos de 4 bits, tenemos 16 posibles combinaciones, así que, con un contador, usaremos los 16 estados con un pulso de reloj automáticamente.
...