Assuming all the compulations are done by a PC or an external processor, I designed a motion-control FPGA as follows:
If a soft processor such as MIcroBlaze or Nios II is placed on the FPGA, construction of a standalone motion controller (without a PC or an external processor) is possible.
Because both MicroBlaze and NIOS II are Linux/Xenomai-ready, porting Linux/Xenomai software to MicroBlazer or NIOS II is trivial.