Fpgas

Solo disponible en BuenasTareas
  • Páginas : 26 (6311 palabras )
  • Descarga(s) : 0
  • Publicado : 29 de noviembre de 2010
Leer documento completo
Vista previa del texto
DISPOSITIVOS LOGICOS PROGRAMABLES

FPGA'S
La FPGA representa uno de los ultimo avances en tecnología de dispositivos lógicos programables, es importante señalar que una FPGA realmente se re configura con un programa, a diferencia de lo que normalmente se conoce como sistema programado (microcontrolador, microprocesador etc) en donde un hardware fijo es capaz de interpretar y ejecutar unprograma especificado como un conjunto de instrucciones por el programador, en las FPGA lo que se tiene es un hardware que se configura realizando conexiones físicas que son especificadas por un programa o cadena de configuración.
Es importante notar que al realizar un diseño con FPGA se presentan los mismos inconvenientes que al realizar un sistema con componentes discretos, es decir tomanrelevancia los fenómenos de retardo de propagación y los relacionados con las señales de clock.
Los primeros dispositivos lógicos programables eran las PAL o los SPLD, estos presentaban compuertas (AND / OR) fijas que podían ser programadas para responder a determinadas funciones de transferencias.
Las FPGA a diferencia de los SPLD y PAL, es que su estructura no esta compuesta por compuertas AND/OR , ensu lugar contienen blocks lógicos para implementar las funciones requeridas. La estructura general de una FPGA se muestra en la Fig. 27.


Figura 27, Estructura general de una FPGA

ESTRUCTURA DEL FPGA
Un FPGA consiste en arreglos de varios bloques programables (bloques lógicos) los cuales están interconectados entre sí y con celdas de entrada/salida mediante canales de conexiónverticales y horizontales, tal como muestra la figura 27. En general, se puede decir que posee una estructura bastante regular, aunque el bloque lógico y la arquitectura de rutado varía de un fabricante a otro.
La estructura de un FPGA, comparada con la de una CPLD, es mucho más regular, y se encuentra más orientada a diseños que manejan mayores transferencias de datos y registros, en tanto que las CPLDimplementan más efcientemente diseños con una parte combinacional más intensa.
La arquitectura de una CPLD es una agrupación de PALs o GALs, interconectadas entre sí. Cada bloque lógico tiene su propia parte combinacional que permite realizar un gran número de funciones lógicas programables, más un biestable asociado al pin de entrada/salida en caso de encontrarse habilitado. La arquitectura de laFPGA cuenta también con un bloque lógico con una parte combinacional y una parte secuencial. La parte combinacional es mucho más simple que la de una de las PAL interna de una CPLD. La parte secuencial posee uno o dos biestables, que no están generalmente asociados a un pin de entrada salida, pues los bloques lógicos se distribuyen regularmente en todo el dispositivo. Ver figura 28.


Figura28, Esquema basico de un FPGA

No todas las FPGA son iguales. Dependiendo del fabricante nos podemos encontrar con diferentes soluciones. Las FPGAs que existen en la actualidad en el mercado se pueden clafisicar como pertenecientes a cuatro grandes familias, dependiendo de la estructura que adoptan los bloques logicos que tengan detenidos. Las cuatro estructuras se pueden ver en la figura 29,sin que aparezcan en la misma los bloques de entrada/salida.
1. Matriz simetrica, como son las de XILINX 2. Basada en canales, ACTEL 3. Mar de puertas, ORCA 4. PLD jerarquica, ALTERA o CPLDs de XILINX.
En concreto, para explicar el funcionamiento y la estructura basica de este tipo de dispositivos programables solo se consideraran las distintas familias de XILINX.


Figura 29, Tipos deFPGA's

Bloques Lógicos
El bloque lógico consta de una parte combinacional, que permite implementar funciones lógicas booleanas, más una parte secuencial que permite sincronizar la salida con una señal de reloj externa e implementar registros. La parte combinacional varía de un fabricante a otro. A continuación, explicaremos dos de ellas, representativas porque poseen unas prestaciones opuestas....
tracking img