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

Back to eFEX documentation
srl16e_35.vhd
Go to the documentation of this file.
1 
7 
8 library ieee;
9 use ieee.std_logic_1164.all;
10 use ieee.std_logic_arith.all;
11 Library UNISIM;
12 use UNISIM.vcomponents.all;
14  entity SRL16E_35 is
15  port (
17  clk : in std_logic;
19  srl_en : in std_logic;
21  address : in std_logic_vector (3 downto 0);
23  data_in : in std_logic_vector (36 downto 0);
25  data_out : out std_logic_vector (36 downto 0)
26  );
27 
28  end SRL16E_35;
30 
31  architecture Behavioral of SRL16E_35 is
32  signal d_i,q_i :std_logic_vector (36 downto 0);
33 
34 begin
35 
36 data_out <= q_i;
37 d_i <= data_in;
38 
39  shift_mux36 : for i in 0 to 36
40  generate
41  SRL16E_inst_36 : SRL16E
42  generic map (
43  INIT => X"0000")
44  port map (
45  Q => q_i(i) , -- SRL data output
46  A0 => address(0), -- Select(0) input
47  A1 => address(1), -- Select(1) input
48  A2 => address(2), -- Select(2) input
49  A3 => address(3), -- Select(3) input
50  CE => srl_en, -- Clock enable input
51  CLK => CLK, -- Clock input
52  D => d_i(i) -- SRL data input
53  );
54  end generate shift_mux36 ;
55 end Behavioral;
shift register
Definition: srl16e_35.vhd:31
shift register
Definition: srl16e_35.vhd:14
in clk std_logic
clock
Definition: srl16e_35.vhd:17
in srl_en std_logic
enable of shifter
Definition: srl16e_35.vhd:19
in data_in std_logic_vector( 36 downto 0)
data in
Definition: srl16e_35.vhd:23
out data_out std_logic_vector( 36 downto 0)
data out
Definition: srl16e_35.vhd:26
in address std_logic_vector( 3 downto 0)
shift depth
Definition: srl16e_35.vhd:21