From my understand from the external memory handbook, looks like if I want to use Cyclone 5 ddr3, I can use either hard or soft memory controller? What is the difference between these 2 types of controller?
hard memory controller always give the better performance compare to soft memory controller. I will suggest you to use hard memory controller if you starting a new design. I believe the soft controller is maintain in Cyclone V device is because is for some user that upgrading their design from older device and do not want to make big changes to their existing working design.