Shared bus in FPGA (arbiter + perypherial bus) [VHDL]
As FPGAs* do NOT support on-chip tri-state drivers you can not implement option-1 on them. 

You should go for the MUX version.

*At least I don't know any FPGA of reasonable size which still has them.