fbpx
Wikipedia

Field-programmable gate array

Una matriz de puertas lógicas programable en campo[1][2]​ o FPGA (del inglés field-programmable gate array), es un dispositivo programable que contiene bloques de lógica cuya interconexión y funcionalidad puede ser configurada en el momento, mediante un lenguaje de descripción especializado. La lógica programable puede reproducir desde funciones tan sencillas como las llevadas a cabo por una puerta lógica o un sistema combinacional hasta complejos sistemas en un chip.

Una FPGA de Altera.
Una Spartan de Xilinx.

Las FPGA se utilizan en aplicaciones similares a los ASIC sin embargo son más lentas, tienen un mayor consumo de energía y no pueden abarcar sistemas tan complejos como ellos. A pesar de esto, las FPGA tienen las ventajas de ser reprogramables (lo que añade una enorme flexibilidad al flujo de diseño), sus costes de desarrollo y adquisición son mucho menores para pequeñas cantidades de dispositivos y el tiempo de desarrollo es también menor.

Ciertos fabricantes cuentan con FPGA que solo se pueden programar una vez, por lo que sus ventajas e inconvenientes se encuentran a medio camino entre los ASIC y las FPGA. Históricamente las FPGA surgen como una evolución de los conceptos desarrollados en las PAL y los CPLD.

Historia: FPGA frente a CPLD

 
Arquitectura interna de una FPGA.

Las FPGA fueron inventadas en el año 1984 por Ross Freeman y Bernard Von Der Schmitt, cofundadores de Xilinx, y surgen como una evolución de los CPLD.

Tanto los CPLD como las FPGA contienen un gran número de elementos lógicos programables. Si medimos la densidad de los elementos lógicos programables en puertas lógicas equivalentes (número de puertas NAND equivalentes que podríamos programar en un dispositivo) podríamos decir que en un CPLD hallaríamos del orden de decenas de miles de puertas lógicas equivalentes y en una FPGA del orden de cientos de miles hasta millones de ellas.

Aparte de las diferencias en densidad entre ambos tipos de dispositivos, la diferencia fundamental entre las FPGA y los CPLD es su arquitectura. La arquitectura de los CPLD es más rígida y consiste en una o más sumas de productos programables cuyos resultados van a parar a un número reducido de biestables síncronos (también denominados flip-flops). La arquitectura de las FPGA, por otro lado, se basa en un gran número de pequeños bloques utilizados para reproducir sencillas operaciones lógicas, que cuentan a su vez con biestables síncronos. La enorme libertad disponible en la interconexión de dichos bloques confiere a las FPGA una gran flexibilidad.

Otra diferencia importante entre FPGA y CPLD es que en la mayoría de las FPGA se pueden encontrar funciones de alto nivel (como sumadores y multiplicadores) embebidas en la propia matriz de interconexiones, así como bloques de memoria.

FPGA frente a ASIC

Las FPGA se utilizan en aplicaciones similares a los ASIC pero tienen una serie de inconvenientes históricos así como de ventajas respecto a estos últimos:

Inconvenientes:

  • Son más lentas.
  • Consumen mayor potencia.
  • No pueden realizar sistemas excesivamente complejos.

Ventajas:

  • Son reprogramables.
  • Los costes de desarrollo y adquisición son mucho menores.
  • El tiempo de diseño y manufacturación es menor.

Los inconvenientes listados aquí se mantienen más por razones históricas que por motivos reales, actualmente existen FPGAs lo suficientemente grandes para contener sistemas complejos, la velocidad de recursos de interconexión han aumentado exponencialmente y se ha reducido su consumo energético sobre todo para FPGAs destinadas especialmente para dispositivos de bajo consumo.

Historia

Las FPGA son el resultado de la convergencia de dos tecnologías diferentes, los dispositivos lógicos programables (PLD Programmable Logic Devices) y los circuitos integrados de aplicación específica (ASIC, circuito integrado de aplicación específica). La historia de los PLD comenzó con los primeros dispositivos PROM (memoria programable de solo lectura) y se les añadió versatilidad con los PAL (matriz lógica programable) que permitieron un mayor número de entradas y la inclusión de registros. Esos dispositivos han continuado creciendo en tamaño y potencia. Mientras, los ASIC siempre han sido potentes dispositivos, pero su uso ha requerido tradicionalmente una considerable inversión tanto de tiempo como de dinero. Intentos de reducir esta carga han provenido de la modularización de los elementos de los circuitos, como los ASIC basados en celdas, y de la estandarización de las máscaras, tal como Ferranti fue pionero con la ULA (Uncommitted Logic Array). El paso final era combinar las dos estrategias con un mecanismo de interconexión que pudiese programarse utilizando fusibles, antifusibles o celdas RAM y celdas ROM, como los innovadores dispositivos Xilinx de mediados de los 80. Los circuitos resultantes son similares en capacidad y aplicaciones a los PLD más grandes, aunque hay diferencias puntuales que delatan antepasados diferentes. Además de en computación reconfigurable, las FPGA se utilizan en controladores, codificadores/decodificadores y en el prototipado de circuitos VLSI y microprocesadores a medida.

El primer fabricante de estos dispositivos fue Xilinx y los dispositivos de Xilinx se mantienen como uno de los más populares en compañías y grupos de investigación. Otros vendedores en este mercado son Atmel, Altera, AMD y Motorola.

Características

Una jerarquía de interconexiones programables permite a los bloques lógicos de un FPGA ser interconectados según la necesidad del diseñador del sistema, algo parecido a una placa de inserción (es una placa de uso genérico reutilizable o semipermanente) programable. Estos bloques lógicos e interconexiones pueden ser programados después del proceso de manufactura por el usuario/diseñador, así que la FPGA puede desempeñar cualquier función lógica necesaria.

Una tendencia reciente ha sido combinar los bloques lógicos e interconexiones de las FPGA con microprocesadores y periféricos relacionados para formar un sistema programable en un chip. Ejemplo de tales tecnologías híbridas pueden ser encontradas en los dispositivos Virtex-II PRO y Virtex-4 de Xilinx, los cuales incluyen uno o más procesadores PowerPC embebidos junto con la lógica de la FPGA. El FPSLIC de Atmel es otro dispositivo similar, 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 implementados haciendo uso de la lógica de la FPGA. Esos núcleos incluyen los procesadores MicroBlaze y PicoBlaze de Xlinx, Nios y Nios II de Altera, y los procesadores de código abierto LatticeMicro32 y LatticeMicro8.

Muchas FPGA modernos soportan la reconfiguración parcial del sistema, permitiendo que una parte del diseño sea reprogramada, mientras las demás partes siguen funcionando. Este es el principio de la idea de la computación reconfigurable, o los sistemas reconfigurables.

Puertas lógicas

  • 1982: 8192 puertas, Burroughs Advanced Systems Group
  • 1987: 9 000 puertas, Xilinx
  • 1992: 600 000, Naval Surface Warfare Department
  • Principios de los 2000: millones

Evolución de mercado

  • 1985: primera FPGA comercial por Xilinx, XC2064
  • 1987: 14 millones de dólares
  • 1993: más de 385 millones de dólares
  • 2005: 1 900 millones de dólares
  • 2010: alrededor de 2 750 millones de dólares
  • 2013: 5 400 millones de dólares
  • 2020: alrededor de 9 800 millones de dólares

Programación

En la FPGA no se realiza programación tal cual como se realiza en otros dispositivos como DSP, CPLD o microcontroladores. La FPGA tiene celdas que se configuran con una función específica ya sea como memoria (FLIP-FLOP tipo D), como multiplexor o con una función lógica tipo AND, OR, XOR. La labor del programador es describir el hardware que tendrá la FPGA. Por consiguiente, la tarea del programador es definir la función lógica que realizará cada uno de los CLB, seleccionar el modo de trabajo de cada IOB e interconectarlos.

El diseñador cuenta con la ayuda de entornos de desarrollo especializados en el diseño de sistemas a implementarse en una FPGA. Un diseño puede ser capturado ya sea como esquemático, o haciendo uso de un lenguaje de programación especial. Estos lenguajes de programación especiales son conocidos como HDL o lenguajes de descripción de hardware. Los HDL más utilizados son:

En un intento de reducir la complejidad y el tiempo de desarrollo en fases de prototipado rápido, y para validar un diseño en HDL, existen varias propuestas y niveles de abstracción del diseño. Los niveles de abstracción superior son los funcionales y los niveles de abstracción inferior son los de diseño al nivel de componentes hardware básicos. Entre otras, National Instruments LabVIEW FPGA propone un acercamiento de programación gráfica de alto nivel.

Aplicaciones

Cualquier circuito de aplicación específica puede ser implementado en una FPGA, siempre y cuando esta disponga de los recursos necesarios. Las aplicaciones donde más comúnmente se utilizan las FPGA incluyen a los DSP (procesamiento digital de señales), radio definido por software, sistemas aeroespaciales y de defensa, prototipos de ASIC, sistemas de imágenes para medicina, sistemas de visión para computadoras, reconocimiento de voz, bioinformática, emulación de hardware de computadora, entre otras. Cabe notar que su uso en otras áreas es cada vez mayor, sobre todo en aquellas aplicaciones que requieren un alto grado de paralelismo.

Existe código fuente disponible (bajo licencia GNU GPL)[3][4]​ de sistemas como microprocesadores, microcontroladores, filtros, módulos de comunicaciones y memorias, entre otros. Estos códigos se llaman cores.

Actualmente es posible implementar todo un SoC mediante una FPGA única, existen herramientas libres y núcleos de propiedad intelectual del código abierto que facilitan su implementación, tal es es caso de la Arquitectura de Bus Simple (SBA) que provee una librería de código VHDL portable para la implementación en FPGAs de distintos fabricantes.

Tecnología de la memoria de programación

Las FPGA también se pueden diferenciar por utilizar diferentes tecnologías de memoria:

  • Volátiles: basadas en RAM. Su programación se pierde al quitar la alimentación. Requieren una memoria externa no volátil para configurarlas al arrancar (antes o durante el reinicio).
  • No Volátiles: basadas en ROM. Hay de dos tipos, las reprogramables y las no reprogramables.
  1. Reprogramables: basadas en EPROM o flash. Estas se pueden borrar y volver a reprogramar aunque con un límite de unos 10 000 ciclos.
  2. No reprogramables: basadas en fusibles o antifusibles. Solo se pueden programar una vez, lo que las hace poco recomendables para trabajos en laboratorios.

Ejemplo de tarjeta de desarrollo que incorpora una FPGA:[5]

Fabricantes

A principios del 2007, el mercado de las FPGA se ha colocado en un estado en el que hay dos grandes productores de FPGA de propósito general y un conjunto de otros competidores que ofrecen dispositivos con características específicas.

  • Xilinx es uno de los grandes líderes en la fabricación de FPGA.
  • Altera es el otro gran gigante. Anunció un acuerdo con Intel en 2015 para desarrollar una plataforma de supercomputación con CPUs con FPGA integradas.
  • Lattice Semiconductor sacó al mercado FPGA con tecnología de 90nm. Es el líder en tecnología no volátil como FPGA basadas en tecnología Flash y con productos de 90nm y 130 nm. En 2014, Lattice semiconductor comenzó a ofrecer dispositivos programables basados en RAM combinados con memoria no volátil no reprogramable.
  • Actel (actualmente Microsemi) tiene FPGA basadas en tecnología Flash reprogramable.
  • QuickLogic dispone de productos basados en antifusibles, programables una sola vez.
  • Atmel es uno de los fabricantes que produce dispositivos reconfigurables. Se enfocó en microcontroladores AVR con FPGA juntos en un mismo encapsulado.
  • Achronix Semiconductor desarrollan FPGA muy rápidas.
  • MathStar Inc. ofrece FPGA que ellos denominan FPOA (Field Programmable Object Arrays por sus siglas en inglés).
  • anunció en marzo de 2010 una nueva tecnología FPGA que utiliza la lógica de tiempo multiplexado y la interconexión de mayor potencial de ahorro para aplicaciones de alta densidad.

Véase también

Referencias

  1. Morris Mano, M. (2003). Diseño Digital. Pearson. p. 61. ISBN 970-26-0438-9. 
  2. Gonzáles Maxinez, David Jaime (2014). Grupo Editorial Patria, ed. Programación de Sistemas Digitales con VHDL. p. 330. ISBN 978-607-438-932-6. 
  3. opencores.org el 26 de febrero de 2011 en Wayback Machine. {{subst:en}}
  4. «SBA IP Cores». 
  5. C. Quintáns, J.M. Lago, L.M. Menéndez y E. Mandado. “Plataforma hardware para el autoaprendizaje de las FPGA y sus aplicaciones”. Actas del VII Congreso de Tecnologías Aplicadas a la Enseñanza de la Electrónica. Madrid, 12-14 de julio, 2006. ISBN 84-689-9590-8.

Enlaces externos

  •   Wikimedia Commons alberga una categoría multimedia sobre Field-programmable gate array.
  • Grupo HDL-FPGA Lista de correo, en idioma español, para discusión de temas relacionados con HDLs y FPGAs.
  • Más información sobre FPGA. (en inglés)
  • Lista de grupos de discusión FPGA, administrados por el MC Luis Orantes graduado de la Universidad de Pittsburgh en EUA.
  • Proyecto para intercambiar programas para FPGA (En castellano)
  • Sitio de descarga de cores libres y gratuitos. (en inglés)
  • (en inglés)
  • (En español)
  • Fabricantes: Actel, Altera, Atmel, , Lattice, QuickLogic, Xilinx. (en inglés)
  • Portal sobre FPGAs Argentina
  • Fpga Libres Fpga Libres

Recursos

  • Arquitectura de las FPGA y CPLD (inglés)
  • - Archivos en VHDL y Verilog HDL.
  • Lista de sistemas y tarjetas FPGA (inglés)
  • FPGA Tutoriales (inglés)
  • DSP-FPGA.com Revista de electrónica (inglés)
  • OpenFPGA el 10 de julio de 2007 en Wayback Machine.
  • Simple Bus Architecture

el 10 de julio de 2007 en Wayback Machine.

  • - Código abierto de algunas IP (Intelectual Property) (inglés)
  • Conceptos claves del lenguaje VHDL
  • Simulador de códigos HDL usando el compilador de C (en inglés)
  • Diseño Digital para FPGA, con herramientas libres

Utilidades

  • Altium Designer - Utilidad de diseño de Altera, Xilinx, Actel, y otras familias FPGA/CPLD
  • Quartus - Utilidad de diseño para los dispositivos Altera
  • ISE - Utilidad de diseño para los dispositivos Xilinx
  • ispLEVER - Paquete de aplicaciones para los dispositivos Lattice
  • LogicSim - Herramienta de simulación FPGA
  • ModelSim - Simulador de diferentes lenguajes de programación hardware HDL/Verilog
  • - Herramienta de síntesis FPGA
  • Yosys - Herramienta libre para síntesis en FPGA
  • Arachne-pnr - Herramienta libre de emplazado y rutado para FPGA de Lattice
  • Icestorm - Documentación y utilidad de configuración para FPGA de Lattice. Junto a Yosys y Arachne-pnr forman un conjunto de herramientas libres para cerrar el ciclo de diseño completo, obteniendo el fichero de configuración (bitstream) a partir de código en Verilog
  • Icarus Verilog - Simulador libre para Verilog
  • SBA System Creator - Herramienta para generar SoC basado en SBA.
  • Gtkwave - Visualizador libre de señales

Multimedia

    •   Datos: Q190411
    •   Multimedia: Field-programmable gate arrays

    field, programmable, gate, array, matriz, puertas, lógicas, programable, campo, fpga, inglés, field, programmable, gate, array, dispositivo, programable, contiene, bloques, lógica, cuya, interconexión, funcionalidad, puede, configurada, momento, mediante, leng. Una matriz de puertas logicas programable en campo 1 2 o FPGA del ingles field programmable gate array es un dispositivo programable que contiene bloques de logica cuya interconexion y funcionalidad puede ser configurada en el momento mediante un lenguaje de descripcion especializado La logica programable puede reproducir desde funciones tan sencillas como las llevadas a cabo por una puerta logica o un sistema combinacional hasta complejos sistemas en un chip Una FPGA de Altera Una Spartan de Xilinx Las FPGA se utilizan en aplicaciones similares a los ASIC sin embargo son mas lentas tienen un mayor consumo de energia y no pueden abarcar sistemas tan complejos como ellos A pesar de esto las FPGA tienen las ventajas de ser reprogramables lo que anade una enorme flexibilidad al flujo de diseno sus costes de desarrollo y adquisicion son mucho menores para pequenas cantidades de dispositivos y el tiempo de desarrollo es tambien menor Ciertos fabricantes cuentan con FPGA que solo se pueden programar una vez por lo que sus ventajas e inconvenientes se encuentran a medio camino entre los ASIC y las FPGA Historicamente las FPGA surgen como una evolucion de los conceptos desarrollados en las PAL y los CPLD Indice 1 Historia FPGA frente a CPLD 2 FPGA frente a ASIC 3 Historia 4 Caracteristicas 5 Puertas logicas 6 Evolucion de mercado 7 Programacion 8 Aplicaciones 9 Tecnologia de la memoria de programacion 10 Fabricantes 11 Vease tambien 12 Referencias 13 Enlaces externos 13 1 Recursos 13 2 Utilidades 13 3 MultimediaHistoria FPGA frente a CPLD Editar Arquitectura interna de una FPGA Las FPGA fueron inventadas en el ano 1984 por Ross Freeman y Bernard Von Der Schmitt cofundadores de Xilinx y surgen como una evolucion de los CPLD Tanto los CPLD como las FPGA contienen un gran numero de elementos logicos programables Si medimos la densidad de los elementos logicos programables en puertas logicas equivalentes numero de puertas NAND equivalentes que podriamos programar en un dispositivo podriamos decir que en un CPLD hallariamos del orden de decenas de miles de puertas logicas equivalentes y en una FPGA del orden de cientos de miles hasta millones de ellas Aparte de las diferencias en densidad entre ambos tipos de dispositivos la diferencia fundamental entre las FPGA y los CPLD es su arquitectura La arquitectura de los CPLD es mas rigida y consiste en una o mas sumas de productos programables cuyos resultados van a parar a un numero reducido de biestables sincronos tambien denominados flip flops La arquitectura de las FPGA por otro lado se basa en un gran numero de pequenos bloques utilizados para reproducir sencillas operaciones logicas que cuentan a su vez con biestables sincronos La enorme libertad disponible en la interconexion de dichos bloques confiere a las FPGA una gran flexibilidad Otra diferencia importante entre FPGA y CPLD es que en la mayoria de las FPGA se pueden encontrar funciones de alto nivel como sumadores y multiplicadores embebidas en la propia matriz de interconexiones asi como bloques de memoria FPGA frente a ASIC EditarLas FPGA se utilizan en aplicaciones similares a los ASIC pero tienen una serie de inconvenientes historicos asi como de ventajas respecto a estos ultimos Inconvenientes Son mas lentas Consumen mayor potencia No pueden realizar sistemas excesivamente complejos Ventajas Son reprogramables Los costes de desarrollo y adquisicion son mucho menores El tiempo de diseno y manufacturacion es menor Los inconvenientes listados aqui se mantienen mas por razones historicas que por motivos reales actualmente existen FPGAs lo suficientemente grandes para contener sistemas complejos la velocidad de recursos de interconexion han aumentado exponencialmente y se ha reducido su consumo energetico sobre todo para FPGAs destinadas especialmente para dispositivos de bajo consumo Historia EditarLas FPGA son el resultado de la convergencia de dos tecnologias diferentes los dispositivos logicos programables PLD Programmable Logic Devices y los circuitos integrados de aplicacion especifica ASIC circuito integrado de aplicacion especifica La historia de los PLD comenzo con los primeros dispositivos PROM memoria programable de solo lectura y se les anadio versatilidad con los PAL matriz logica programable que permitieron un mayor numero de entradas y la inclusion de registros Esos dispositivos han continuado creciendo en tamano y potencia Mientras los ASIC siempre han sido potentes dispositivos pero su uso ha requerido tradicionalmente una considerable inversion tanto de tiempo como de dinero Intentos de reducir esta carga han provenido de la modularizacion de los elementos de los circuitos como los ASIC basados en celdas y de la estandarizacion de las mascaras tal como Ferranti fue pionero con la ULA Uncommitted Logic Array El paso final era combinar las dos estrategias con un mecanismo de interconexion que pudiese programarse utilizando fusibles antifusibles o celdas RAM y celdas ROM como los innovadores dispositivos Xilinx de mediados de los 80 Los circuitos resultantes son similares en capacidad y aplicaciones a los PLD mas grandes aunque hay diferencias puntuales que delatan antepasados diferentes Ademas de en computacion reconfigurable las FPGA se utilizan en controladores codificadores decodificadores y en el prototipado de circuitos VLSI y microprocesadores a medida El primer fabricante de estos dispositivos fue Xilinx y los dispositivos de Xilinx se mantienen como uno de los mas populares en companias y grupos de investigacion Otros vendedores en este mercado son Atmel Altera AMD y Motorola Caracteristicas EditarUna jerarquia de interconexiones programables permite a los bloques logicos de un FPGA ser interconectados segun la necesidad del disenador del sistema algo parecido a una placa de insercion es una placa de uso generico reutilizable o semipermanente programable Estos bloques logicos e interconexiones pueden ser programados despues del proceso de manufactura por el usuario disenador asi que la FPGA puede desempenar cualquier funcion logica necesaria Una tendencia reciente ha sido combinar los bloques logicos e interconexiones de las FPGA con microprocesadores y perifericos relacionados para formar un sistema programable en un chip Ejemplo de tales tecnologias hibridas pueden ser encontradas en los dispositivos Virtex II PRO y Virtex 4 de Xilinx los cuales incluyen uno o mas procesadores PowerPC embebidos junto con la logica de la FPGA El FPSLIC de Atmel es otro dispositivo similar el cual usa un procesador AVR en combinacion con la arquitectura logica programable de Atmel Otra alternativa es hacer uso de nucleos de procesadores implementados haciendo uso de la logica de la FPGA Esos nucleos incluyen los procesadores MicroBlaze y PicoBlaze de Xlinx Nios y Nios II de Altera y los procesadores de codigo abierto LatticeMicro32 y LatticeMicro8 Muchas FPGA modernos soportan la reconfiguracion parcial del sistema permitiendo que una parte del diseno sea reprogramada mientras las demas partes siguen funcionando Este es el principio de la idea de la computacion reconfigurable o los sistemas reconfigurables Puertas logicas Editar1982 8192 puertas Burroughs Advanced Systems Group 1987 9 000 puertas Xilinx 1992 600 000 Naval Surface Warfare Department Principios de los 2000 millonesEvolucion de mercado Editar1985 primera FPGA comercial por Xilinx XC2064 1987 14 millones de dolares 1993 mas de 385 millones de dolares 2005 1 900 millones de dolares 2010 alrededor de 2 750 millones de dolares 2013 5 400 millones de dolares 2020 alrededor de 9 800 millones de dolaresProgramacion EditarEn la FPGA no se realiza programacion tal cual como se realiza en otros dispositivos como DSP CPLD o microcontroladores La FPGA tiene celdas que se configuran con una funcion especifica ya sea como memoria FLIP FLOP tipo D como multiplexor o con una funcion logica tipo AND OR XOR La labor del programador es describir el hardware que tendra la FPGA Por consiguiente la tarea del programador es definir la funcion logica que realizara cada uno de los CLB seleccionar el modo de trabajo de cada IOB e interconectarlos El disenador cuenta con la ayuda de entornos de desarrollo especializados en el diseno de sistemas a implementarse en una FPGA Un diseno puede ser capturado ya sea como esquematico o haciendo uso de un lenguaje de programacion especial Estos lenguajes de programacion especiales son conocidos como HDL o lenguajes de descripcion de hardware Los HDL mas utilizados son VHDL Verilog ABEL ICESTUDIOEn un intento de reducir la complejidad y el tiempo de desarrollo en fases de prototipado rapido y para validar un diseno en HDL existen varias propuestas y niveles de abstraccion del diseno Los niveles de abstraccion superior son los funcionales y los niveles de abstraccion inferior son los de diseno al nivel de componentes hardware basicos Entre otras National Instruments LabVIEW FPGA propone un acercamiento de programacion grafica de alto nivel Aplicaciones EditarCualquier circuito de aplicacion especifica puede ser implementado en una FPGA siempre y cuando esta disponga de los recursos necesarios Las aplicaciones donde mas comunmente se utilizan las FPGA incluyen a los DSP procesamiento digital de senales radio definido por software sistemas aeroespaciales y de defensa prototipos de ASIC sistemas de imagenes para medicina sistemas de vision para computadoras reconocimiento de voz bioinformatica emulacion de hardware de computadora entre otras Cabe notar que su uso en otras areas es cada vez mayor sobre todo en aquellas aplicaciones que requieren un alto grado de paralelismo Existe codigo fuente disponible bajo licencia GNU GPL 3 4 de sistemas como microprocesadores microcontroladores filtros modulos de comunicaciones y memorias entre otros Estos codigos se llaman cores Actualmente es posible implementar todo un SoC mediante una FPGA unica existen herramientas libres y nucleos de propiedad intelectual del codigo abierto que facilitan su implementacion tal es es caso de la Arquitectura de Bus Simple SBA que provee una libreria de codigo VHDL portable para la implementacion en FPGAs de distintos fabricantes Tecnologia de la memoria de programacion EditarLas FPGA tambien se pueden diferenciar por utilizar diferentes tecnologias de memoria Volatiles basadas en RAM Su programacion se pierde al quitar la alimentacion Requieren una memoria externa no volatil para configurarlas al arrancar antes o durante el reinicio No Volatiles basadas en ROM Hay de dos tipos las reprogramables y las no reprogramables Reprogramables basadas en EPROM o flash Estas se pueden borrar y volver a reprogramar aunque con un limite de unos 10 000 ciclos No reprogramables basadas en fusibles o antifusibles Solo se pueden programar una vez lo que las hace poco recomendables para trabajos en laboratorios Ejemplo de tarjeta de desarrollo que incorpora una FPGA 5 Fabricantes EditarA principios del 2007 el mercado de las FPGA se ha colocado en un estado en el que hay dos grandes productores de FPGA de proposito general y un conjunto de otros competidores que ofrecen dispositivos con caracteristicas especificas Xilinx es uno de los grandes lideres en la fabricacion de FPGA Altera es el otro gran gigante Anuncio un acuerdo con Intel en 2015 para desarrollar una plataforma de supercomputacion con CPUs con FPGA integradas Lattice Semiconductor saco al mercado FPGA con tecnologia de 90nm Es el lider en tecnologia no volatil como FPGA basadas en tecnologia Flash y con productos de 90nm y 130 nm En 2014 Lattice semiconductor comenzo a ofrecer dispositivos programables basados en RAM combinados con memoria no volatil no reprogramable Actel actualmente Microsemi tiene FPGA basadas en tecnologia Flash reprogramable QuickLogic dispone de productos basados en antifusibles programables una sola vez Atmel es uno de los fabricantes que produce dispositivos reconfigurables Se enfoco en microcontroladores AVR con FPGA juntos en un mismo encapsulado Achronix Semiconductor desarrollan FPGA muy rapidas MathStar Inc ofrece FPGA que ellos denominan FPOA Field Programmable Object Arrays por sus siglas en ingles Tabula anuncio en marzo de 2010 una nueva tecnologia FPGA que utiliza la logica de tiempo multiplexado y la interconexion de mayor potencial de ahorro para aplicaciones de alta densidad Vease tambien EditarGate array LabVIEW CPLD GAL PLA PAL PLD ASIC VLSI Circuito integrado Hardware GSDReferencias Editar Morris Mano M 2003 Diseno Digital Pearson p 61 ISBN 970 26 0438 9 Gonzales Maxinez David Jaime 2014 Grupo Editorial Patria ed Programacion de Sistemas Digitales con VHDL p 330 ISBN 978 607 438 932 6 opencores org Archivado el 26 de febrero de 2011 en Wayback Machine subst en SBA IP Cores C Quintans J M Lago L M Menendez y E Mandado Plataforma hardware para el autoaprendizaje de las FPGA y sus aplicaciones Actas del VII Congreso de Tecnologias Aplicadas a la Ensenanza de la Electronica Madrid 12 14 de julio 2006 ISBN 84 689 9590 8 Enlaces externos Editar Wikimedia Commons alberga una categoria multimedia sobre Field programmable gate array Grupo HDL FPGA Lista de correo en idioma espanol para discusion de temas relacionados con HDLs y FPGAs Mas informacion sobre FPGA en ingles Grupos de trabajo con FPGA Lista de grupos de discusion FPGA administrados por el MC Luis Orantes graduado de la Universidad de Pittsburgh en EUA Proyecto para intercambiar programas para FPGA En castellano Cores libres Sitio de descarga de cores libres y gratuitos en ingles Central de FPGA vendedor foro IP webcast en ingles JCRA Congreso espanol sobre Computacion Reconfigurable y Aplicaciones En espanol Fabricantes Actel Altera Atmel Cypress Lattice QuickLogic Xilinx en ingles Portal sobre FPGAs Argentina Fpga Libres Fpga Libres FPGA DatabaseRecursos Editar Arquitectura de las FPGA y CPLD ingles Como funcionan la logica programable ingles FPGA Central Vendor Forum IP Webcast ingles Almacen FPGA FAQ ingles Altera Tutorials and Lab Exercises Ingles Archivos en VHDL y Verilog HDL Lista de sistemas y tarjetas FPGA ingles FPGA Tutoriales ingles DSP FPGA com Revista de electronica ingles OpenFPGA Archivado el 10 de julio de 2007 en Wayback Machine Simple Bus ArchitectureArchivado el 10 de julio de 2007 en Wayback Machine OpenCores org Codigo abierto de algunas IP Intelectual Property ingles Diseno de FPGA desde cero ingles Diseno digital utilizando logicas programables Conceptos claves del lenguaje VHDL Simulador de codigos HDL usando el compilador de C en ingles Diseno Digital para FPGA con herramientas libresUtilidades Editar Altium Designer Utilidad de diseno de Altera Xilinx Actel y otras familias FPGA CPLD Quartus Utilidad de diseno para los dispositivos Altera ISE Utilidad de diseno para los dispositivos Xilinx ispLEVER Paquete de aplicaciones para los dispositivos Lattice LogicSim Herramienta de simulacion FPGA ModelSim Simulador de diferentes lenguajes de programacion hardware HDL Verilog Synplify Herramienta de sintesis FPGA Yosys Herramienta libre para sintesis en FPGA Arachne pnr Herramienta libre de emplazado y rutado para FPGA de Lattice Icestorm Documentacion y utilidad de configuracion para FPGA de Lattice Junto a Yosys y Arachne pnr forman un conjunto de herramientas libres para cerrar el ciclo de diseno completo obteniendo el fichero de configuracion bitstream a partir de codigo en Verilog Icarus Verilog Simulador libre para Verilog SBA System Creator Herramienta para generar SoC basado en SBA Gtkwave Visualizador libre de senalesMultimedia Editar Prof Bob Brodersen General Purpose Low Power Supercomputing Using Reconfiguration Datos Q190411 Multimedia Field programmable gate arraysObtenido de https es wikipedia org w index php title Field programmable gate array amp oldid 135170704, wikipedia, wiki, leyendo, leer, libro, biblioteca,

    español

    , española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos