Sie sind auf Seite 1von 19

DISPOSITIVOS LOGICOS PROGRAMABLES FPLA

PLD

Un dispositivo lgico programable se refiere a cualquier tipo de circuito integrado que un


diseo lgico puede ser implementado y reconfigurado en el campo por el usuario final.
Dado que estos dispositivos lgicos pueden ser programados en el campo tambin se
denominan Dispositivos Lgicos Programables en Campo (FPLDs). El PLD proporciona
flexibilidad para que los diseadores implementen muchos diseos diferentes en
complejidades variadas para muchas aplicaciones diferentes. Uno de los PLD ms
comunes es la nica memoria programable de lectura (PROM). Esto viene en dos tipos
diferentes: (a) los dispositivos programables de la mscara programados por el vendedor
usando una mscara y las interconexiones de encargo y (b) los dispositivos programables
de campo que son configurados por el usuario. Una de las grandes ventajas de los PLD
es que son muy baratos en cantidades bajas

Un dispositivo que fue un seguimiento de la tecnologa PROM que se puede utilizar para
los diseos lgicos fue la PLA (Programmable Logic Array). El PLA usando la estructura
PROM result ser el primer Arreglo de Lgica Programable de Campo (FPLA). El primer
FPLA fue introducido a mediados de los aos setenta. El FPLA tena un nmero fijo de
entradas, salidas y trminos de producto que consistan en AND y OR arrays que
contenan entradas programables. La FPLA no tuvo gran xito porque era muy lenta y
complicada de usar. El diseador tuvo que disear un mapa de fusibles en lugar de las
ecuaciones booleanas convencionales o la captura esquemtica.

Entre nos principales tipos de PLDs tenemos :

PAL.
PROM.
PLA o FPLA.

PAL

PAL (Programmable Array Logic) en espaol Arreglo lgico programable Es un PLD en el que se
pueden programar las uniones en la matriz de compuertas AND, siendo fijas las uniones en la
matriz de compuertas OR (vase la sig. Figura 4.2). Los dispositivos con arquitectura PAL son los
ms populares y los ms utilizados.
PROM (PROGRAMMABLE READ ONLY MEMORY)

En espaol memoria de solo lectura programable. Es un dispositivo lgico programable (PLD) en


el que las uniones en la matriz de compuertas AND es fija, siendo programables las uniones en
la matriz de compuertas OR (vase la figura 4.4). Una PROM es un sistema combinacional
completo que permite realizar cualquier funcin lgica con las n variables de entrada, ya que
dispone de 2n trminos producto. Estn muy bien adaptas para aplicaciones tales como: tablas,
generadores de caracteres, convertidores de cdigos, etc. Generalmente las PROM tienen
menos entradas que las PAL y FPLA. Se pueden encontrar PROM con capacidades de potencia
de 2, que van desde las 32 hasta las 8192 palabras de 4, 8 o 16 bits de ancho.
FPLA o PLA

Un Array Lgico Programable (PLA), es un circuito PLD que puede programarse para ejecutar
una funcin compleja. Normalmente se utilizan para implementar lgica combinacional, pero
algunos PLA pueden usarse para implementar diseos lgicos secuenciales. El PLA es una
solucin con un solo circuito integrado a muchos problemas lgicos, que pueden tener muchas
entradas y muchas salidas. Se trata de una solucin AND-OR de dos niveles combinacional que
puede programarse para realizar cualquier expansin lgica de suma de productos, sujeta a las
limitaciones del producto. Estas limitaciones son el nmero de entradas (n), el nmero de salidas
(m) y el nmero de trminos productos (p). Se puede describir como un PLA n x m con p
trminos productos. Por tanto su utilidad est limitada a funciones que puedan expresarse en
forma de suma de productos usando p o menos trminos productos

El siguiente diagrama presenta la estructura de un PLA (no real) de 2 entradas y 1 salidas que
nos servir para describir su funcionamiento. Un producto comercial tpico puede tener hasta
20 entradas y 10 salidas. Se observa la solucin AND-OR que puede implementar cualquier
expresin booleana en mintrminos. Solo la Parte AND puede ser programada en este caso. Para
programarla, hay que quemar los fusibles que deben quedar abiertos. En la figura est tal y como
lo proporciona el fabricante
Aqu se muestra el PLA anterior programado para realizar una funcin booleana en mintrminos:
= +
Para que los esquemas no queden demasiado grande se usa un sistema de notacin abreviado,
denominado diagrama de fusibles. Aqu cada puerta parece tener una sola entrada aunque en
realidad las AND tienen 4 y las OR 3.
En esta figura se muestra un circuito ms complejo de PLA. Aqu se pueden programar tanto la
parte AND como la parte OR:
Este es el diagrama de fusibles de un dispositivo comercial: PAL10H8ANC, para programarlo es
preciso indicar cules son las coordenadas de los fusibles que hay que quemar.
Ejemplo.

1. 2. - REDES LGICAS PROGRAMABLES ( PLA )

Los PLA fueron concebidos sobre la base del principio de que cualquier funcin
de conmutacin puede escribirse en forma de una suma de mintermes ( forma
cannica ). Es decir, por ejemplo, la funcin : F = bd + ab +a cd.

Esta funcin es la suma de los tres mintermes siguientes : bd, ab


y un cd.

El PLA hace posible generar un cierto nmero de mintermes a partir


de n variable y realizar la suma de estos mintermes.

La figura 3 representa la estructura fundamental de un PLA .


Cada puerta Y ( A, B, C, D, E ) en cinco entradas hace posible generar un
minterme a partir de las cinco variables de entrada ( I0, I1, I2, I3, I4 ).

Cada puerta O ( A ', B', C ' ) a cuatro entradas permite realizar la suma de los
mintermes necesarios para obtener una funcin de conmutacin definida.

El circuito se presenta en forma de matriz con conexiones horizontales y


verticales.

En la parte superior, las lneas horizontales representan las entradas I0, I1, I2,
I3 y I4 del PLA y las lneas verticales corresponden a las entradas de las
puertas AND .

Inicialmente, las lneas horizontal y vertical se cruzan sin contacto entre


ellas. La programacin consistir ms tarde en unir una lnea horizontal
con una lnea vertical en un punto de ensamblaje simbolizado en la figura 3
por un punto.

El estado lgico de la salida de una puerta Y, por lo tanto, corresponde al valor


de un minterme.

Ser suficiente, durante la programacin, para unir las salidas de las


puertas Y que se desee a las entradas de las puertas O para realizar la suma
lgica de estas mintermes.

En el ejemplo de la figura 3, uno "cre" por lo tanto tres redes


combinatorias ; siendo sus salidas respectivas las tres salidas F1, F2 y F3 .

El circuito que tiene salida de F1 est formado con la puerta O ( A ' ) y con las
puertas Y A y B ; que teniendo para salida F2 est formada con las puertas B ',
A y C ; por ltimo, que teniendo por F3 salida se forma con las puertas C',
DyE.

La figura 4 representa el primero de estos tres circuitos combinatorios.


La funcin de conmutacin F1 se escribe :

En general, la programacin de PLA es realizada por el fabricante a partir de


los datos proporcionados por el cliente.

Este ltimo, por ejemplo, puede proporcionar una tabla de funcionamiento


relativa al problema a resolver.

Examinaremos un ejemplo voluntariamente simple partiendo de la tabla


localizada en la figura 5.
Es necesario constituir cinco mintermes. Uno necesita por lo menos cinco
puertas Y para tres entradas (hay tres variables). Es necesario tambin dos
puertas O ya que hay dos funciones ( F1 y F2 ) para generar.

El PLA programado para responder al problema que surge se da la figura 6.


Notar que no se us AND not B. De hecho, en la mesa de operacin de la
figura 5 , con la segunda lnea, que tenga en cuenta que las dos
salidas F1 y F2 estn con el estado L, por lo tanto, no es necesario cable de las
entradas de la puerta B .

Finalmente, cuatro puertas Y son suficientes para resolver el problema que


surge.

Sera posible resolver este problema utilizando una ROM . Tericamente, se


necesitara una ROM con tres entradas y dos salidas una memoria ROM cuya
capacidad de 2 3(combinaciones posibles con tres entradas) se multiplicara
por 2 (un nmero de salidas), es decir 8 x 2 = 16 bits

En el caso de un PLA, uno define la capacidad de la matriz , que es igual al


producto del nmero de puertas Y por el nmero de puertas OR . Esta
capacidad se expresa en bits. En este caso, es de 4 x 2 = 8 bits.

La ventaja de la PLA en comparacin con la ROM es manifiesta si se


considera un PLA en 14 entradas y 8 salidas, disponibles en el mercado.
Consideremos un PLA que comprende 96 puertas Y , lo que permite ya
muchas posibilidades, por ejemplo la constitucin de 96 mintermes . La
capacidad de la matriz de este PLA es igual a 96 x 8 = 768 bits.

Un equivalente ROM debe tener una capacidad de 2 14 x 8 = 131 072 bits.

Por lo tanto, un PLA es mucho ms ventajoso que un ROM. De hecho, en el


caso de este ltimo, es necesario tener en cuenta todas las combinaciones
posibles de las entradas : con 14 entradas , se necesita una ROM con 2 14 = 16
384 direcciones , mientras que con un PLA se interesa slo en las
combinaciones dadas por la tabla de operacin que son necesarias para
resolver el problema.

1. 3. - FPLA

A medida que los fabricantes concibieron y producan la PROM despus de


la ROM , apareci despus de la PLA el FPLA ( Field Programmable Logic
Array = redes lgicas programables por fusibles ) .

Su principio sigue siendo el mismo que el del PLA. Los FPLA son fcilmente
programables por el usuario. Basta con que se tenga programado un aparato
que a menudo sea un simple programador de PROM.

El principio de la programacin de estos FPLA consiste en disolver fusibles en


los lugares adecuados hacindolos cruzar por una sobrecorriente corta de
corriente, exactamente como uno procede con memorias PROM.

La figura 7 representa el diagrama de un FPLA ya programado. Los fusibles


estn representados por el smbolo .
El FPLA representado tiene 16 entradas notadas I0 con
I15 y 8 observ salidas F0 con F7.
Para cada entrada de la FPLA , hay dos lneas horizontales ; la seal presente
en una es complementaria a la presente en la otra, como indica el siguiente
smbolo :

El punto S (como , S ', S "... ) es la salida de uno Y consisti en diodos en


paralelo.

Si se quiere representar el primer AND de FPLA, se obtiene el diagrama de la


figura 8.

Este primer minterme puede escribirse de la siguiente manera :

S = I0. 1

De la misma manera, el segundo minterme (a la izquierda) se escribir :

S '= I0. 0. I1. 1 ... I15. 15

Es obvio que S '= 0 para todas las combinaciones de las variables de entrada.

OR son transistores constituidos en paralelo. El primer OR correspondiente a


lasalida F0 se puede representar como se indica en la figura 9.
La salida F0 ' de OR es igual a F0' = S '+ S " .

La puerta O Exclusiva hace posible invertir la seal de salida


de OR correspondiente. Es suficiente disolver el fusible y esta entrada se
encuentra entonces en el nivel lgico H. Es el caso de la salida F1 ( figura 7 ).

Ejemplo :

Hay una entrada de orden notado (inicial de E nable C hip = validacin de


caso). Se valida las ocho salidas cuando se est en el nivel L . Por otro lado,
cuando esta entrada est en el nivel H , ocho salidas estn con la alta
impedancia estatal (tri-estado izquierdo).

1. 4. - FPLA CON MEMORIA

Otro tipo de red lgica tambin se desarroll, el FPLA con memoria .

Este FPLA tiene un registro, generalmente formado por una unidad de


balancines sincrnicos de tipo RS.

Este registro permite el establecimiento en el FPLA de un circuito lgico


secuencial. El estado de las salidas al este al mismo tiempo funcin del estado
de las entradas y el estado lgico de las salidas ante la cara del reloj.
El sinptico de la figura 10 representa un FPLA con memoria.

Gracias al registro, los datos presentes a la salida de la FPLA se reintroducen


a la entrada de la red de puertas a la cara de reloj segn.

El diagrama de la figura 11 es sinptico ms desarrollado de un FPLA con


memoria llamada FPLS ( Field Programmable Logic Sequencer ).
El buffer es una unidad lgica que recoge al mismo tiempo los datos presentes
en las 16 entradas principales y las 6 salidas del registro de memorizacin.

El registro de salida se utiliza para mantener los datos entre dos pulsos de
reloj.

Uno adems encuentra la red de puertas AND y O caracterstica del PLA.

1. 5. - ARRAY SPOILS

A veces, el PLA descrito en los prrafos anteriores, son inadecuados para


resolver ciertos problemas ; ya sea que no son suficientemente flexibles de
empleo, o que se debe llevar a cabo un nmero significativo de circuitos
bastante complejos.

Una primera solucin consiste en concebir costumbres


especficas o circuitos integrados.

Una segunda solucin consiste en utilizar circuitos cuyo principio es


intermedia entre la de la PLA y la de las costumbres y que uno
nombres Matriz de puertas ( red de puertas lgicas )
o FPGA ( F ield P rogrammable G comi A RRay).

Estos circuitos consisten en un nmero significativo de


puertas NAND generalmente situadas entre 500 y 2 000.

La tecnologa empleada es, ya sea tecnologa TTL S ( Schottky ), o


tecnologa CMOS.

La programacin consiste en conectar entre ellas las puertas NAND para


constituir la red lgica adecuada.

La ventaja de Gate Array reside en el hecho de que se puede producir a gran


escala para aplicaciones variadas.

Un circuito integrado de este tipo puede sustituir a 50 circuitos integrados


SSI y MSI

Array Gate, ya que el PLA es programado por el fabricante a partir del


problema especfico sugerido por el cliente. Todos los circuitos que acabamos
de ver, FPLA, FPLS y FPGA aveces se llaman IFL ( I ntegrated F use L ogic =
lgico por fusibles integrados)

Das könnte Ihnen auch gefallen