FPGA programming is a very known and mature process. These articles are the best overview of FPGA programming:
FPGA programming
The ultimate guide to FPGA programming