entity SelectorWithHiZ_using_Generate is
generic (
candidates_num : integer := 8);
port (
candidates : in std_logic_vector(candidates_num - 1 downto 0);
selects : in std_logic_vector(candidates_num - 1 downto 0);
result : out std_logic);
end SelectorWithHiZ_using_Generate;
architecture Behavioral of SelectorWithHiZ_using_Generate is
begin
gen : for i in selects'range generate
result <= candidates(i) when selects(i) = '1'
else 'Z';
end generate;
end Behavioral;