I am using FPGA board and servo, I read that with PWM I can control where the servo will rotate. If the duty cycle in PWM is 1.5 ms it goes to the center, if it is 2 ms it goes to clockwise and if it is 1 ms it rotates to counter-clockwise. But I couldn’t find any clue on how to control the speed of the servo. Can you help me please?
Many of the dedicated servo-controlling boards include an option to set the speed for each servo. I know for a fact that the Pololu Maestro boards do (as I've used those myself), and I'd expect that the Lynxmotion and Adafruit branded boards also have that feature. But, FPGA boards don't have it built in. You'll need to create your own function to send a signal for incremental movements at an interval.
Lowering the voltage can work, but I believe that it lowers the torque as well, so that may not be ideal for your situation.