MacStone,
It's great to hear it works. I hope you enjoy the process to make it work.
I did not design the MDC interface by my own. I remember I ported from another project. But I cannot clearly remember which project now. You can go to Opencore website to check if there is any MDC project overthere.
The algorithm of MDC interface is similar to I2C interface. The MDC logic looks like a I2C controller. If you have experience with I2C, I will be easier to understand it. the Reg_int.v designed a general host interface. Yes, it's easier to use a host to access MDC interface. Another alternative is using a statemachine to emulate the host, it should work but a little trivial. FPGA is not effcient to to that. I recommend you to instantiate a Microblaze or Picoblaze CPU inside your eval board. You could learn more about a small SOC design.
Good luck and enjoy it.
Jon.