Esa placa es una placa de CPLD, similar, pero usted declara una placa FPGA en la pregunta. La programación será hecha por JTAG, y varios proveedores hacen las cosas de manera diferente, por lo que no hay una solución (satisfactoria) para "un programador para todos los proveedores" (avíseme si encuentra una :-)) Hay cosas como OpenOCD y OpenJTAG y Presto, Wiggler , etc.
Necesitaría el programador JTAG de Xilinx (o un clone de eBay debería funcionar bien, o uno de los Presto / Wiggler tipo de cosas, pero entonces estás arriesgando frustración ...) para programar este tablero.
Sin embargo, muchas de las placas FPGA de demostración tienen la capacidad de programar por USB (a diferencia de la placa CPLD anterior, que es solo a través de un encabezado JTAG) Necesitará el IDE de Xilinx (ISE webpack creo - descarga here ), que se puede descargar de su sitio web, y el software de programación. No estoy completamente seguro de todos los detalles, ya que utilizo los FPGA de Actel (ahora Microsemi). Esperemos que alguien pueda confirmar lo anterior.
Aunque no he usado Xilinx, conozco a algunos que obtuvieron uno de los tableros Nexys y estaban contentos con ellos, aunque están por encima de su presupuesto. Sin embargo, eBay podría ser un poco barato. Si no sabe mucho acerca de los FPGA y no está seguro de por dónde empezar, una de las tarjetas Digilent basadas en USB es probablemente su mejor opción, ya que vienen con todo lo que necesita para programar y un montón de documentación / tutoriales / diseños de ejemplo.
Usted programará en Verilog o VHDL (o en System Verilog, o en algunas otras opciones)
EDABoard tiene un buen foro sobre FPGA / CPLD para cuando te quedas atascado, y FPGAforfun es otro sitio decente (con algunos tableros disponibles por cierto)
Prepárese para una ruta más difícil con FPGA que p. ej. Microcontroladores, hay mucho menos por ahí ayuda / ejemplo, y las herramientas de diseño (compilar, simular, sintetizar, colocar / enrutar / cronometrar, etc.) son muy complejas: prepárese para una gran cantidad de lecturas :-)
Habiendo dicho eso, deberías poner en marcha algunas cosas simples con un buen tablero de desarrollo.