As it appears we are to be just "shooting in the dark" for suggestions - how about implementing some picoblaze or microblaze processors in your FPGA, with either some quadrature encoder receivers or hook up an external A/D which you control. The processors can generate pwm signals out based on set point and simple PI loop implemented in blaze code. You don't have to use motors & drives, you could use thermistor/temp sensor and heaters, or some simple circuits to model any sort of process outside the FPGA - it just has to generate a command voltage/current in response to closing the error an an input signal. This would give you plenty of pieces - mostly all within the FPGA, but not entirely - to work on. You could even try to implement a simplified fuzzy logic control code in a processor versus traditional PID..