Hace poco asistí a una conferencia en línea sobre FPGA con la nota principal: "En caso de que su próximo procesador sea un FPGA".
El FPGA básicamente tiene sentido en cualquier aplicación que requiera flujos de trabajo altamente paralelizables, un ejemplo utilizado fue el análisis de imágenes Full HD para encontrar peatones, por ejemplo.
Lo que debes recordar es que debes inicializar tu FPGA cada vez que se enciende, creo que el Xilinx con FPGA que viene (que tiene un núcleo ARM en el chip) es una buena opción, pero probablemente costosa. También puede ser útil examinar los de Actel con flash en chip.
En cuanto al rendimiento, la compañía BDTI realizó un punto de referencia en cómputos altamente paralelos en los que vio un aumento de rendimiento de 40x a un FPGA. Lo interesante es que compararon los chips con costos similares (creo que $ 23 frente a $ 28).
Aquí están los enlaces que podrían interesarte:
Guía de bolsillo para la selección del procesador
Archivos de la Conferencia FPGA (registro gratuito, pero solo disponible durante aproximadamente 6 meses después de esta respuesta)
Realmente no se puede comparar el rendimiento de los sistemas basados en FPGA basados en estadísticas MIPS o Mhz. La forma en que se utiliza un FPGA para procesar ciertas tareas es simplemente muy diferente de un Microcontrolador. El diseño del firmware para un FPGA es algo que tiene que hacer utilizando VHDL, por ejemplo, que es similar a la Asamblea. Un nivel de transferencia de registro (RTL) de abstracción. Se están produciendo algunos entornos para proporcionar más abstracción, pero estos a menudo son específicos del proveedor. Wikipedia tiene una visión general decente de los idiomas disponibles para programar el código FPGA:
Wikipedia: Programming FPGA
Wikipedia: Diseño digital de circuitos
Si tiene dinero para quemar, puede usar los sistemas LabView para construir sistemas de medición en tiempo real basados en FPGA, por ejemplo. Estos dispositivos necesarios para esto están en un rango de cambio completamente diferente (1500 $ y más), pero abren el diseño FPGA a una audiencia mucho más amplia con programación gráfica.
Cada vez más proveedores ofrecen placas que combinan microcontroladores, como un chip ARM con un FPGA para proporcionar características adicionales específicas y poder de procesamiento paralelo. Puede encontrar un ejemplo de dichos productos aquí: EmbeddedARM: FPGA series