Hace poco asistí a una conferencia en línea sobre FPGA con la frase principal "¿Debería su próximo procesador ser un FPGA?".
El FPGA básicamente tiene sentido en cualquier aplicación que requiera flujos de trabajo altamente paralelizables, un ejemplo que se utilizó fue analizar imágenes Full HD para encontrar peatones, por ejemplo.
Lo que debe recordar es que debe inicializar su FPGA cada vez que se enciende, creo que el Xilinx del FPGA (que tiene un núcleo ARM en el chip) es una buena opción, pero probablemente costosa. Examinar los Actel con flash en chip también puede ser útil.
En cuanto al rendimiento, la compañía BDTI hizo un punto de referencia en los cálculos altamente paralelos donde vieron una ganancia de rendimiento de aproximadamente 40x al cambiar a un FPGA. Lo interesante es que compararon chips con costos similares (23 $ vs 28 $, creo).
Aquí están los enlaces que pueden interesarle:
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 de firmware para un FPGA es algo que tiene que hacer usando VHDL, por ejemplo, que es similar al ensamblaje. Un nivel de transferencia de registro (RTL) de abstracción. Algunos entornos se están produciendo para proporcionar más abstracción, pero estos todavía son a menudo específicos del proveedor. Wikipedia tiene una descripción general decente de los idiomas disponibles para programar el código FPGA:
Wikipedia: Programación de FPGA
Wikipedia: Diseño de circuitos digitales
Si tiene dinero para gastar, puede usar los sistemas LabView para construir, por ejemplo, sistemas de medición en tiempo real basados en FPGA. Estos dispositivos necesarios para esto están en un rango de precios 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 están proporcionando placas que combinan microcontroladores como un chip ARM con un FPGA para proporcionar funciones adicionales específicas y potencia de procesamiento en paralelo. Un ejemplo de tales productos se puede encontrar aquí: EmbeddedARM: serie FPGA