📄 alt_cusp72_muxhot64_wire.vhd
字号:
-- alt_cusp72_muxhot64_wire.vhd
library ieee, altera;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use std.textio.all;
use altera.alt_cusp72_package.all;
entity alt_cusp72_muxhot64_wire is
generic (
NAME : string := "";
PORTS : integer := 64;
WIDTH : integer := 1
);
port (
sel : in std_logic_vector(PORTS-1 downto 0) := (others => '0');
data0 : in std_logic := '0';
data1 : in std_logic := '0';
data2 : in std_logic := '0';
data3 : in std_logic := '0';
data4 : in std_logic := '0';
data5 : in std_logic := '0';
data6 : in std_logic := '0';
data7 : in std_logic := '0';
data8 : in std_logic := '0';
data9 : in std_logic := '0';
data10 : in std_logic := '0';
data11 : in std_logic := '0';
data12 : in std_logic := '0';
data13 : in std_logic := '0';
data14 : in std_logic := '0';
data15 : in std_logic := '0';
data16 : in std_logic := '0';
data17 : in std_logic := '0';
data18 : in std_logic := '0';
data19 : in std_logic := '0';
data20 : in std_logic := '0';
data21 : in std_logic := '0';
data22 : in std_logic := '0';
data23 : in std_logic := '0';
data24 : in std_logic := '0';
data25 : in std_logic := '0';
data26 : in std_logic := '0';
data27 : in std_logic := '0';
data28 : in std_logic := '0';
data29 : in std_logic := '0';
data30 : in std_logic := '0';
data31 : in std_logic := '0';
data32 : in std_logic := '0';
data33 : in std_logic := '0';
data34 : in std_logic := '0';
data35 : in std_logic := '0';
data36 : in std_logic := '0';
data37 : in std_logic := '0';
data38 : in std_logic := '0';
data39 : in std_logic := '0';
data40 : in std_logic := '0';
data41 : in std_logic := '0';
data42 : in std_logic := '0';
data43 : in std_logic := '0';
data44 : in std_logic := '0';
data45 : in std_logic := '0';
data46 : in std_logic := '0';
data47 : in std_logic := '0';
data48 : in std_logic := '0';
data49 : in std_logic := '0';
data50 : in std_logic := '0';
data51 : in std_logic := '0';
data52 : in std_logic := '0';
data53 : in std_logic := '0';
data54 : in std_logic := '0';
data55 : in std_logic := '0';
data56 : in std_logic := '0';
data57 : in std_logic := '0';
data58 : in std_logic := '0';
data59 : in std_logic := '0';
data60 : in std_logic := '0';
data61 : in std_logic := '0';
data62 : in std_logic := '0';
data63 : in std_logic := '0';
q : out std_logic
);
end entity;
architecture rtl of alt_cusp72_muxhot64_wire is
signal masks : STD_LOGIC_VECTOR(64 downto 0);
begin
assert WIDTH = 1
report "WIDTH generic must be 1 for wire muxes"
severity ERROR;
assert PORTS <= 64
report "PORTS generic must be 64 or less"
severity ERROR;
unused_mask_gen: masks(64 downto PORTS) <= (others=>'0');
used_mask_gen: masks(PORTS-1 downto 0) <= sel;
with masks select
q <= data0 when "00000000000000000000000000000000000000000000000000000000000000001",
data1 when "00000000000000000000000000000000000000000000000000000000000000010",
data2 when "00000000000000000000000000000000000000000000000000000000000000100",
data3 when "00000000000000000000000000000000000000000000000000000000000001000",
data4 when "00000000000000000000000000000000000000000000000000000000000010000",
data5 when "00000000000000000000000000000000000000000000000000000000000100000",
data6 when "00000000000000000000000000000000000000000000000000000000001000000",
data7 when "00000000000000000000000000000000000000000000000000000000010000000",
data8 when "00000000000000000000000000000000000000000000000000000000100000000",
data9 when "00000000000000000000000000000000000000000000000000000001000000000",
data10 when "00000000000000000000000000000000000000000000000000000010000000000",
data11 when "00000000000000000000000000000000000000000000000000000100000000000",
data12 when "00000000000000000000000000000000000000000000000000001000000000000",
data13 when "00000000000000000000000000000000000000000000000000010000000000000",
data14 when "00000000000000000000000000000000000000000000000000100000000000000",
data15 when "00000000000000000000000000000000000000000000000001000000000000000",
data16 when "00000000000000000000000000000000000000000000000010000000000000000",
data17 when "00000000000000000000000000000000000000000000000100000000000000000",
data18 when "00000000000000000000000000000000000000000000001000000000000000000",
data19 when "00000000000000000000000000000000000000000000010000000000000000000",
data20 when "00000000000000000000000000000000000000000000100000000000000000000",
data21 when "00000000000000000000000000000000000000000001000000000000000000000",
data22 when "00000000000000000000000000000000000000000010000000000000000000000",
data23 when "00000000000000000000000000000000000000000100000000000000000000000",
data24 when "00000000000000000000000000000000000000001000000000000000000000000",
data25 when "00000000000000000000000000000000000000010000000000000000000000000",
data26 when "00000000000000000000000000000000000000100000000000000000000000000",
data27 when "00000000000000000000000000000000000001000000000000000000000000000",
data28 when "00000000000000000000000000000000000010000000000000000000000000000",
data29 when "00000000000000000000000000000000000100000000000000000000000000000",
data30 when "00000000000000000000000000000000001000000000000000000000000000000",
data31 when "00000000000000000000000000000000010000000000000000000000000000000",
data32 when "00000000000000000000000000000000100000000000000000000000000000000",
data33 when "00000000000000000000000000000001000000000000000000000000000000000",
data34 when "00000000000000000000000000000010000000000000000000000000000000000",
data35 when "00000000000000000000000000000100000000000000000000000000000000000",
data36 when "00000000000000000000000000001000000000000000000000000000000000000",
data37 when "00000000000000000000000000010000000000000000000000000000000000000",
data38 when "00000000000000000000000000100000000000000000000000000000000000000",
data39 when "00000000000000000000000001000000000000000000000000000000000000000",
data40 when "00000000000000000000000010000000000000000000000000000000000000000",
data41 when "00000000000000000000000100000000000000000000000000000000000000000",
data42 when "00000000000000000000001000000000000000000000000000000000000000000",
data43 when "00000000000000000000010000000000000000000000000000000000000000000",
data44 when "00000000000000000000100000000000000000000000000000000000000000000",
data45 when "00000000000000000001000000000000000000000000000000000000000000000",
data46 when "00000000000000000010000000000000000000000000000000000000000000000",
data47 when "00000000000000000100000000000000000000000000000000000000000000000",
data48 when "00000000000000001000000000000000000000000000000000000000000000000",
data49 when "00000000000000010000000000000000000000000000000000000000000000000",
data50 when "00000000000000100000000000000000000000000000000000000000000000000",
data51 when "00000000000001000000000000000000000000000000000000000000000000000",
data52 when "00000000000010000000000000000000000000000000000000000000000000000",
data53 when "00000000000100000000000000000000000000000000000000000000000000000",
data54 when "00000000001000000000000000000000000000000000000000000000000000000",
data55 when "00000000010000000000000000000000000000000000000000000000000000000",
data56 when "00000000100000000000000000000000000000000000000000000000000000000",
data57 when "00000001000000000000000000000000000000000000000000000000000000000",
data58 when "00000010000000000000000000000000000000000000000000000000000000000",
data59 when "00000100000000000000000000000000000000000000000000000000000000000",
data60 when "00001000000000000000000000000000000000000000000000000000000000000",
data61 when "00010000000000000000000000000000000000000000000000000000000000000",
data62 when "00100000000000000000000000000000000000000000000000000000000000000",
data63 when "01000000000000000000000000000000000000000000000000000000000000000",
'0' when "00000000000000000000000000000000000000000000000000000000000000000",
'X' when others;
end architecture;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -