マルチプレクサの「テンプレート」を書きました。
私の目標は、s="01" または s="11" のときに y=1 になることです。
では、d0 とそれが保持する値をどのようにリンクすればよいでしょうか。
(この例では、d0 は 0、d1=1、d2=0、d3=1 を保持する必要があります。)
library IEEE;
use IEEE.std_logic_1164.all;
entity mux4v1 is
port(
d0 : in std_logic; -- 0
d1 : in std_logic; -- 1
d2 : in std_logic; -- 0
d3 : in std_logic; -- 1
s : in std_logic_vector(1 downto 0); -- my inputs controller via switches
y : out std_logic
);
end mux4v1;
architecture struct of mux4v1 is
begin
with s select
y <= d0 when "00",
d1 when "01",
d2 when "10",
d3 when "11";
end struct;