Elementos de un FPGA

 ARQUITECTURA FPGA - LÓGICA ELECTRÓNICA PROGRAMABLE


Las FPGAs (Field Programmable Gate Arrays) y CPLD son dispositivos semiconductores reprogramables, basados en matrices de bloques de lógica configurables (conocidos como CLBs) cuyas conexiones se pueden modificar según las necesidades del diseñador.

Esta capacidad de reprogramación, unida a un proceso de desarrollo y fabricación menos costoso y largo que el de otros dispositivos otorga a las FPGAs una posición privilegiada para una gran variedad de aplicaciones frente a otros circuitos integrados.

En la actualidad las FPGAs está implantada en muchos sectores de la industria, tales como procesamiento digital de señales, sistemas militares, prototipado de la funcionalidad de otros dispositivos electrónicos (por ejemplo un ASIC), etc.

Características de una arquitectura interna de una FPGA

Una matriz de bloques de lógica configurables (CLB): bloques lógicos cuyos parámetros se pueden modificar de forma que presente diferentes funcionalidades. Cada CLB consiste, de forma genérica, en varias tablas de LUTs (look-up tables, o tablas de consulta) cuyas salidas están multiplexadas y unos parámetros de configuración de dicho CLB. El diseño de un CLB varía de un fabricante a otro. En la figura puede verse un CLB de una XC4000 de Xilinx:

Una matriz de rutado, encargada de conectar los CLBs entre ellos, y a su vez éstos con las celdas de entrada y salida.
Celdas de entrada y salida (IOB): su misión es comunicar la lógica interna de la FPGA con el exterior.
No sólo los bloques de lógica son configurables, sino que tanto la matriz de rutado como las celdas de entrada y salida son programables, otorgándole a las FPGAs de una gran flexibilidad a la hora de ajustarse a las especificaciones de cada diseño.

Referencia
Arquitectura FPGA - GENERA Tecnologías. (s. f.). GENERA | Computación Embebida, Monitorización y Control - GENERA Tecnologías. https://www.generatecnologias.es/arquitectura_fpga.html





Comentarios

Entradas populares de este blog

ARREGLO LOGICO GENERICO (GAL)

Función "rising_edge" para VHDL

Señal del reloj en VHDL