otsdaq_prepmodernization  v2_05_02_indev
MUX64_8.vhd
1 ----------------------------------------------------------------------------------
2 -- Company:
3 -- Engineer:
4 --
5 -- Create Date: 13:41:24 06/18/2008
6 -- Design Name:
7 -- Module Name: MUX64_2 - Behavioral
8 -- Project Name:
9 -- Target Devices:
10 -- Tool versions:
11 -- Description:
12 --
13 -- Dependencies:
14 --
15 -- Revision:
16 -- Revision 0.01 - File Created
17 -- Additional Comments:
18 --
19 ----------------------------------------------------------------------------------
20 library IEEE;
21 use IEEE.STD_LOGIC_1164.ALL;
22 use IEEE.STD_LOGIC_ARITH.ALL;
23 use IEEE.STD_LOGIC_UNSIGNED.ALL;
24 
25 ---- Uncomment the following library declaration if instantiating
26 ---- any Xilinx primitives in this code.
27 --library UNISIM;
28 --use UNISIM.VComponents.all;
29 
30 entity MUX64_8 is
31  Port ( in0 : in STD_LOGIC_VECTOR (63 downto 0);
32  in1 : in STD_LOGIC_VECTOR (63 downto 0);
33  in2 : in STD_LOGIC_VECTOR (63 downto 0);
34  in3 : in STD_LOGIC_VECTOR (63 downto 0);
35  in4 : in STD_LOGIC_VECTOR (63 downto 0);
36  in5 : in STD_LOGIC_VECTOR (63 downto 0);
37  in6 : in STD_LOGIC_VECTOR (63 downto 0);
38  in7 : in STD_LOGIC_VECTOR (63 downto 0);
39  sel : in STD_LOGIC_VECTOR (2 downto 0);
40  muxout : out STD_LOGIC_VECTOR (63 downto 0));
41 end MUX64_8;
42 
43 architecture Behavioral of MUX64_8 is
44 
45 begin
46 
47  process(sel,in0,in1,in2,in3,in4,in5,in6,in7)
48  begin
49 
50  if sel = 0 then muxout <= in0;
51  elsif sel = 1 then muxout <= in1;
52  elsif sel = 2 then muxout <= in2;
53  elsif sel = 3 then muxout <= in3;
54  elsif sel = 4 then muxout <= in4;
55  elsif sel = 5 then muxout <= in5;
56  elsif sel = 6 then muxout <= in6;
57  elsif sel = 7 then muxout <= in7;
58  end if;
59 
60  end process;
61 end Behavioral;
62