Your code is done in continous fashion, there are no clock. All architecture body is theated as "main" process. In the simulation it is computed at every simulation step. In the FPGA circuit it will be simple combinatorial function, with out any registers/clock.
It can be written in more elegant form (for better clarity and any changes in the future):
Code:
with in_s(1 downto 0) select
out_s(3 downto 0) <=
"0101" when "00",
"0111" when "01",
"1101" when "10",
"1111" when "11"; -- or when others;
How it is synthetized? It depends from FPGA internals and synthesis options. It can be 4xLUT (even 2xLUT) with 2 inputs, or small 4 bit memory with two bit address lines or... even it can be done on some spare resources inside CLB's of your FPGA if your synthetizer is smart. For exactly this data the good synthetizer will find that two of the output signals are constant and for the rest it is simple copy of the inputs. It looks that there are no real resources inside FPGA will be used, only interconnections.
bis