4 bit BCD decoder

entity bin4bcd is
port ( b : in STD_LOGIC_VECTOR (3 downto 0);
p : out STD_LOGIC_VECTOR (4 downto 0));
end bin4bcd;

architecture meh of bin4bcd is

begin
process (b)
begin
case b is
when "0000" => p <= "00000"; when "0001" => p <= "00001"; when "0010" => p <= "00010"; when "0011" => p <= "00011"; when "0100" => p <= "00100"; when "0101" => p <= "00101"; when "0110" => p <= "00110"; when "0111" => p <= "00111"; when "1000" => p <= "01000"; -- 8 when "1001" => p <= "01001"; -- 9 when "1010" => p <= "10000"; -- 10 when "1011" => p <= "10001"; when "1100" => p <= "10010"; when "1101" => p <= "10011"; when "1110" => p <= "10100"; when others => p <= "10101"; -- 15 end case; end process; end meh;