Professional Documents
Culture Documents
Introducción
En este tema se trata de la clasificación de estas estructuras desde dos puntos de
vista: la tecnología de fabricación empleada y la arquitectura interna de las mismas.
Se realizan los adecuados procesos de comparación entre diferentes familias,
destacando las ventajas e inconvenientes de cada una de ellas.
Los dispositivos más antiguos se denominan PAL (Programmable Logic Array); que
se puede traducir como matriz lógica programable. Esta familia es programable por
fusible y debemos distinguir en ella dos subfamilias
• PAL combinatorias o PAL simples, sólo contienen puertas
• PAL con biestables o PLS (Programmable Logic Sequence). Contienen biestables,
por lo que se pueden implementar sistemas secuenciales.
PAL es una marca registrada de la empresa MMI (en la actualidad fusionada con
AMD).
Dispositivos Lógicos Programables.
• CPLD:Complex PLD.
• EPLD:Erasable PLD
• GAL o Red lógica genérica (Generic Array Logic). son estructuras PAL grabables y
borrables eléctricamente.
El transistor utilizado en una célula EPROM tiene dos puertas, una de ellas está conectada a la tensión
de puerta Vg y la segunda es flotante. En esta segunda puerta se puede acumular carga por medio de un
mecanismo denominado inyección por avalancha (avalanche injection o también hot electron injection).
Este mecanismo se induce aplicando una tensión de programación (típicamente 20V) a la puerta de
drenaje y seleccionando el transistor por medio de la tensión de puerta. El alto campo eléctrico generado
entre ambas terminales arrastra a electrones, de forma que algunos tienen suficiente energía como para
atravesar la barrera que existe entre el sustrato p y la puerta. Este tipo de transistores se denomina
FAMOS: Floating gate Avalanche-injection MOS.
En operación normal un transistor FAMOS que tiene carga en su puerta flotante no conducirá en ningún
caso, incluso si se selecciona la tensión de puerta es Vcc. En el caso en que el transistor no disponga de
carga en su puerta flotante, éste se comportará como un transistor de tipo NMOS.
Tecnología EEPROM.
La figura ilustra la estructura básica de un transistor EEPROM: Como es puede observar es
muy parecida a la estructura del transistor FAMOS. De nuevo encontramos dos puertas, una de
ellas flotante. La región de óxido es muhc más pequeña (espesores típicos de menos de 100
angstroms frente a los 200 angtroms del FAMOS).
Desde el punto de vista funcional las estructuras PAL son las más simples de las
PLD.
Consisten en una matriz de puertas AND y una matriz de puertas OR. La primera
de ellas es programable, mientras que la segunda es fija. Para entender la
estructura de una PAL mostramos un diagrama de un grupo de sumas de
productos de la PAL 16L8 (16 entradas L de Lógico y 8 salidas), obtenido de la
información técnica de Cypress. Debemos observar la posibilidad de tener en la
misma línea o bien una entrada o bien una salida, en función de una línea
triestado, controlada por un término producto.
Un paso más consiste en poner biestables a la salida de cada bloque, la
estructura equivalente es la 16R8 (16 entradas, R de Registro y 8 salidas). En la
siguiente figura se observa que las realimentaciones hacia la matriz AND se
obtienen de las salidas de los biestables.
Fusible de seguridad.
El desarrollo de una aplicación exige, por parte de una empresa del uso de
recursos humanos y materiales, que influyen en el coste final del producto
desarrollado. Para evitar determinado tipo de “ingeniería inversa"; esto es la
copia del diseño por parte de otra empresa competidora estas estructuras
disponen de un bit de seguridad (security bit o security fuse) de forma que
impide leer la distribución de conexiones en la matriz programable.
PAL versátiles o V PAL.
Estas estructuras presentan una evolución de la PAL hacia los PLD de más alto
nivel. En las mismas se incluyen una estructura de celda de salida que se parece
cada vez más a las macroceldas que analizaremos con posterioridad.
Cada macrocelda se puede configurar de forma independiente. Los bits de configuración
permiten poner a la salida el resultado del bloque de matrices en diferentes formas:
directamente o bien a través de un registro. La gestión viene determinada por la salida de un
multiplexor que, en función de las líneas de control, selecciona un tipo de salida. (ver figura)
• Permitir una sustitución, patilla a patilla, de las PAL bipolares en cualquier aplicación.
• Ofrecer un consumo mucho más reducido que las PAL bipolares de complejidad
equivalente.
Interconexiones programables
Las interconexiones programables, conducen las señales de los dispositivos de
entrada/salida (I/O) hacia los bloques lógicos. Cada uno de estos bloques tiene un
número predeterminado de entradas.
Un bloque lógico equivale a una pequeña estructura PAL: Dispone de una matriz
que implementa términos produto y macroceldas. Las celdas de I/O son a veces
consideradas parte de un bloque logico. El tamaño de un bloque lógico es una
medida de su capacidad (cuanta lógica se puede implementar) y se expresa,
habitualmente en términos del número de macroceldas, el número de entradas y el
número de términos producto, así de cómo su distribución.
Macroceldas.
Como en las PLD más sencillas, las CPLD incluyen macroceldas en las que se dispone de
biestables y señales de control de polaridad4. Además se aumenta la flexibilidad de las
mismas.
Por ejemplo muchas CPLDs ofrecen la posibilidad de configurar los biestables como tipo D o
T, para mejorar el proceso de implementación. Además los CPLDs suelen disponer de
macroceldas de I/O (esto es, asociada con una entrada/salida) y macroceldas con salidas
sólo a la matriz programble (buried macrocell).
Otras características de las CPLD
JTAG tambiénespecifica un modo BIST (built-in self-test): Un dispositivo en este modo genera un
conjunto devectores de test pseudo-aleatorio como vectores de estímulo, compara las salidas
con losresultados esperado e informa de los posibles errores.
FPGA´s
Esta programación consiste en establecer un contacto entre dos superficies metálicas que
previamente se encuentran aisladas. Para ello se puede utilizar silicio no cristalizado (amorfo)
que hace las veces de aislante entre los metales. Al aplicar un pulso entre 10 y 12 V durante
el tiempo necesario, las capas de metal penetran en esta vía estableciendo el contacto
La principal ventaja de los antifusibles radica en su pequeño tamaño y la posibilidad
de integrar gran cantidad en una pequeña área de silicio. Su desventaja fundamental
es que, una vez programados, no se pueden reprogramar.
Las células SRAM se pueden utilizar como control de transistores de paso, de forma que
establezcan conexiones entre los canales verticales y horizontales. Una celda SRAM es
reprogramable ya que no se altera físicamente en el proceso de programación. Las FPGAs que
utilizan esta tecnología deben ser reprogramadas cada vez que se conecta el circuito
(habitualmente desde una EPROM).
Por otra parte una celda de tipo SRAM asociada a un transistor de paso es considerablemente
mas grande que un elemento antifusible, por lo que no se puede alcanzar los niveles de
integración que ofrecen los antifusible. Cada ingeniero de desarrollo debe buscar un
compromiso entre la flexibilidad que ofrecen las FPGAs progrmadas por SRAM y el nivel de
integración y las prestaciones que ofrecen las basabas en programación por antifusible.