eFEX firmware  1.7.3
ATLAS l1-calo - electron and tau feature extraction firmware for eFEX boards

Back to eFEX documentation
cntr_ram_addr_10b.vhd
Go to the documentation of this file.
1 
9 
10 
11 library IEEE;
12 use IEEE.STD_LOGIC_1164.ALL;
13 USE ieee.std_logic_arith.all;
14 
17  Port (
18  CE : in STD_LOGIC;
19  CLK : in STD_LOGIC;
20  RST : in STD_LOGIC;
21  Q : out STD_LOGIC_VECTOR (9 downto 0)
22  );
24 
26 architecture Behavioral of cntr_ram_addr_10b is
27 
28 begin
29 process (CLK)
30  variable temp : unsigned (9 downto 0) ;
31  begin
32 
33  if CLK'event AND CLK = '1' then
34  if RST = '1' then -- this is a synchronous reset
35  temp := (others => '0') ; -- set counter to zero
36  else
37  if CE = '1' then
38  temp := temp + 1;
39  end if;
40  end if;
41  end if;
42  Q <= std_logic_vector(temp) ; -- push out new value
43  end process;
44 
45 
46 end Behavioral;