FPGA

Field Programmable Gate Array

FPGA de AlteraUna FPGA es un circuito integrado cuya tecnología se encuentra entre las PALs y las matrices de puertas a medida. Las PALs se desarrollaron en la década de los años 70 y tuvieron muchas aplicaciones reemplazando entre 1 y 10 circuitos integrados discretos tipo TTL en el diseño de sistemas físicos. Este tipo de dispositivos utilizaba la tecnología de fusibles, es decir eran del tipo OTP (programables una sola vez). Por otro lado, los dispositivos a medida se utilizaban para grandes series de fabricación (el punto óptimo se encontraba en 10.000 unidades).

Las FPGAs se basan en estas tecnologías pero las interconexiones pueden ser definidas por el usuario mediante tecnología fusible (como las PALs) y ser del tipoFPGA de ClearLogic OTP, mediante antifusibles o mediante células tipo SRAM.

El diseño de una FPGA se lleva a cabo especificando la función lógica a desarrollar, bien mediante un sistema CAD de dibujo de esquemas, bien mediante un leguage de programación de alto nivel. Una vez definida la función a realizar, el diseño se traslada a la FPGA. Este proceso programa los bloques lógicos configurables (CLBs) para realizar una función específica (existen miles de bloques lógicos configurables en la FPGA). La configuración de estos bloques y la flexibilidad de sus interconexiones son las razones por las que se pueden conseguir diseños de gran complejidad. Las interconexiones permiten conectar los bloques lógicos (CLBs) entre sí.

La figura muestra el esquema básico de una FPGA con los bloques lógicos configurables (CLBs), las interconexiones y los bloques de entrada/salida (IOB).

Esquema básico de una FPGA (Xilinx)

Se pueden implementar múltiples diseños de sistemas físicos mediante FPGAs.

Los elementos programables de una FPGA son:

  1. Los bloques lógicos (CLBs)

  2. Los bloques de entrada/salida (IOB)

  3. Las interconexiones

VOLVER   |   ÍNDICE GLOSARIO