summaryrefslogtreecommitdiff
path: root/Example/combinational_logic/counter/decadecounter.vhdl
diff options
context:
space:
mode:
Diffstat (limited to 'Example/combinational_logic/counter/decadecounter.vhdl')
-rw-r--r--Example/combinational_logic/counter/decadecounter.vhdl23
1 files changed, 23 insertions, 0 deletions
diff --git a/Example/combinational_logic/counter/decadecounter.vhdl b/Example/combinational_logic/counter/decadecounter.vhdl
new file mode 100644
index 0000000..6d84280
--- /dev/null
+++ b/Example/combinational_logic/counter/decadecounter.vhdl
@@ -0,0 +1,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;