As FPGAs can be more coomplex than small CPUs .They require SIMULATION and CO-simulation .This can be accosmplished in several enviroments .On that is popular is MATLAB/SIMULINK .here you can simulate complex designs and later cosimulate with real hardware using the same enviroment .Each FPGA has its own tools that install in MATLAB and can be accessed for simulation .One popular is called system generator .Another is Chipchecker ans so forth .
There is also another enviroment calle LABVIEW .Where you can also simulate and design FPGA and DSP base projects.