Technical documentation required for understanding how Xilinx Spartan FPGAs work and must be programmed