summaryrefslogtreecommitdiff
path: root/Example/combinational_logic/counter/decadecounter.vhdl
blob: 6d842807200e3a0f7114d7085ca34974567823c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity decadecounter is
	port(CLK : in std_logic;
	     RST : in std_logic;
	     Count : out std_logic_vector(9 downto 0));
end decadecounter;

architecture beh of decadecounter is
	signal a: std_logic_vector(9 downto 0) := "0000000001";
begin
	process(CLK, RST)
	begin
		if RST = '1' then
			a <= "0000000001";
		elsif rising_edge(CLK) then
			a <= a(0) & a(9 downto 1);  -- rotating left
		end if;
	end process;
	Count <= std_logic_vector (a);
end beh;