54 lines
1.3 KiB
VHDL
54 lines
1.3 KiB
VHDL
----------------------------------------------------------------------------------
|
|
-- Company:
|
|
-- Engineer:
|
|
--
|
|
-- Create Date: 09.03.2026 15:47:51
|
|
-- Design Name:
|
|
-- Module Name: mux - Behavioral
|
|
-- Project Name:
|
|
-- Target Devices:
|
|
-- Tool Versions:
|
|
-- Description:
|
|
--
|
|
-- Dependencies:
|
|
--
|
|
-- Revision:
|
|
-- Revision 0.01 - File Created
|
|
-- Additional Comments:
|
|
--
|
|
----------------------------------------------------------------------------------
|
|
|
|
|
|
library IEEE;
|
|
use IEEE.STD_LOGIC_1164.ALL;
|
|
|
|
-- Uncomment the following library declaration if using
|
|
-- arithmetic functions with Signed or Unsigned values
|
|
--use IEEE.NUMERIC_STD.ALL;
|
|
|
|
-- Uncomment the following library declaration if instantiating
|
|
-- any Xilinx leaf cells in this code.
|
|
--library UNISIM;
|
|
--use UNISIM.VComponents.all;
|
|
|
|
entity mux is
|
|
Port ( I0 : in STD_LOGIC_VECTOR (3 downto 0);
|
|
I1 : in STD_LOGIC_VECTOR (3 downto 0);
|
|
I2 : in STD_LOGIC_VECTOR (3 downto 0);
|
|
I3 : in STD_LOGIC_VECTOR (3 downto 0);
|
|
S : in STD_LOGIC_VECTOR (1 downto 0);
|
|
Y : out STD_LOGIC_VECTOR (3 downto 0));
|
|
end mux;
|
|
|
|
architecture Behavioral of mux is
|
|
|
|
begin
|
|
with S select
|
|
Y <= I0 when "00",
|
|
I1 when "01",
|
|
I2 when "10",
|
|
I3 when "11",
|
|
"0000" when others;
|
|
|
|
end Behavioral;
|