library IEEE; use IEEE.std_logic_1164.all; entity V3to8dec is port ( G1: in STD_LOGIC; G2: in STD_LOGIC; G3: in STD_LOGIC; A: in STD_LOGIC_VECTOR (2 downto 0); Y: out STD_LOGIC_VECTOR (0 to 7) ); end V3to8dec; architecture V3to8dec_b of V3to8dec is signal Y_s: STD_LOGIC_VECTOR (0 to 7); -- internal signal begin process(A, G1, G2, G3, Y_s) begin case A is when "000" => Y_s <= "10000000"; when "001" => Y_s <= "01000000"; when "010" => Y_s <= "00100000"; when "011" => Y_s <= "00010000"; when "100" => Y_s <= "00001000"; when "101" => Y_s <= "00000100"; when "110" => Y_s <= "00000010"; when "111" => Y_s <= "00000001"; when others => Y_s <= "00000000"; end case; if (G1 and G2 and G3)='1' then Y <= Y_s; else Y <= "00000000"; end if; end process; end V3to8dec_b;