Historia de los FPGA'S
Ross Freman, co-fundador de Xilinx, inventó el arreglo matricial de compuertas. La raíz histórica de las FPGA son los dispositivos de lógica programable compleja (CPLD) de mediados de los 1980. CPLD y FPGA incluyen un relativo gran número de elementos lógicos programables. El rango de densidad de los CPLD va desde miles a decenas de miles de compuertas lógicas, mientras que el de las FPGA va típicamente desde decenas de miles hasta muchos millones.
La diferencia primaria entre CPLDs y FPGAs son sus arquitecturas. Un CPLD tiene una estructura un poco restringida, consistiendo la unión de uno o más arreglos lógicos que alimentan a un número pequeño de registros con entrada de reloj (clock). El resultado de estos es menos flexibilidad, con la ventaja de una mejor predicción de los tiempos de retraso. La arquitectura de las FPGAs, por otro lado, son dominadas por las interconexiones. Esto las hace más flexibles (en términos del rango de diseños prácticos para los cuales pueden ser usadas) pero también es posible irse un poco más lejos en cuanto al diseño. Otra notable diferencia entre CPLDs y FPGAs es la presencia de funciones de más alto nivel (tales como sumadores y multiplicadores) dentro de las FPGAs, además de memorias.
Una diferencia importante es que muchas FPGAs modernas, soportan una total o parcial re-configuración del sistema, permitiendo que una parte del diseño sea re-programada mientras las otras partes siguen funcionando. Una tendencia reciente ha sido llevar la arquitectura un paso más lejos, combinado los bloques lógicos e interconexiones de las tradicionales FPGAs, con microprocesadores y con periféricos relacionados para formar un completo “Sistema programable en un chip”. Ejemplo de tales tecnologías hibridas pueden ser encontradas en los Xilinx Virtex-II PRO y dispositivos Virtex-4, los cuales incluyen uno o mas procesadores PowerPC incrustados junto con la lógica FPGA. El Atmel FPSLIC es otro dispositivo como tal, el cual usa un procesador AVR en combinación con la arquitectura lógica programable de Atmel.
Otra alternativa es hacer uso de núcleos de procesadores, los cuales son implementados junto con la lógica FPGA. Esos núcleos incluyen el Xilinx MicroBlaze y PicoBlaze, el Altera Nios y procesador Nios II, y los de open source LatticeMicro32 y LatticeMicro8. Como previamente se dijo, muchas FPGA modernas, tienen la habilidad de ser reprogramadas en “Tiempo de funcionamiento”, y este es el principio de la idea de computación re-configurable o sistemas re-configurables, lo cual permite que estos sistemas se reconfiguren a sí mismos para cumplir con la tarea actual. Sin embargo no todas las FPGA actuales soportan esta metodología.
Referencia
Marín de la Rosa, J. M. (s. f.-a). FIELD PRGRAMMABLE GATE ARRAY (FPGA). http://bibing.us.es/proyectos/abreproy/11375/fichero/MEMORIA%2FFPGAs.pdf
Comentarios
Publicar un comentario