www.pudn.com > CLOCK.rar > counter6.vhd


library IEEE; 
use IEEE.STD_LOGIC_1164.ALL; 
use IEEE.STD_LOGIC_UNSIGNED.ALL; 
entity counter6 is 
    Port ( clk : in std_logic; 
          reset : in std_logic; 
          din : in std_logic_vector(3 downto 0); 
          dout : out std_logic_vector(3 downto 0); 
		  c:out std_logic); 
end counter6; 
architecture Behavioral of counter6 is 
   signal count : std_logic_vector(3 downto 0); 
begin 
	process(clk,reset) 
	begin 
	   if reset='0'then 
		 
		 count<=din; 
		 c<='0'; 
       elsif rising_edge(clk) then 
		   if count = "0101" then 
			   count <= "0000"; 
			   c<='1'; 
           else  
			   count <= count+1; 
			   c<='0'; 
           end if; 
      end if; 
     dout <= count; 
    end process; 
end Behavioral;