Está en la página 1de 26

Lgica Programable

Electrnica Digital
Electrnica Bsica
Jos Ramn Sendra Sendra
Dpto. de Ingeniera Electrnica y Automtica
ULPGC
Matrices lgicas Programables (PLAs)
Bloques funcionales prefabricados de muchas puertas AND/OR (o NOR, o NAND)
"personalizados" al crear o destruir conexiones entre las puertas
Diagrama de bloques de una matriz programable para generacin de una
suma de productos
Entradas
Matriz de puertas
And
Lista de Minterms
Matriz de puertas
Or
Salidas
Ejemplo: PLA 3x4 con 5 trminos producto
Todas las conexiones estn intactas
antes de la programacin
Matrices lgicas Programables (PLAs)
Datos:
F0 = A + B' C'
F1 = A C' + A B
F2 = B' C' + A B
F3 = B' C + A
Ecuaciones lgicas
Matriz de conexiones
Implantacin de cuatro funciones lgicas en nuestra PLA ejemplo
1 = trmino activo
0 = trmino negado
- = No participa
1 = producto conectado
0 = producto no conectado
Variables en los productos:
Trminos en las sumas:
Matrices lgicas Programables (PLAs)
Salidas Entradas
Productos
Conexiones
a
eliminar
A
1
-
1
-
1
B
1
0
-
0
-
C
-
1
0
0
-
F
0
0
0
0
1
1
F
1
1
0
1
0
0
F
2
1
0
0
1
0
F
3
0
1
0
0
1
A B
B C
A C
B C
A
Las conexiones no deseadas se eliminan
Implantacin de cuatro funciones lgicas en nuestra PLA ejemplo
Matrices lgicas Programables (PLAs)
Representacin alternativa que simplifica las estructuras con fan-in alto
Notacin abreviada
de modo que no tenemos
que dibujar todas las lneas
Adems esta notacin se
parece ms a la implantacin
real del dispositivo.
Notacin para implantar
F0 = A B + A' B'
F1 = C D' + C' D
Matrices lgicas Programables (PLAs)
ABC
A
B
C
A
B
C
ABC
ABC
ABC
ABC
ABC
ABC
ABC
F1 F2 F3 F4 F5 F6
Ejemplo de diseo
F1 = A B C
F2 = A + B + C
F3 = A B C
F4 = A + B + C
F5 = A xor B xor C
F6 = A xnor B xnor C
Mltiples funciones de A, B, C
Matrices lgicas Programables (PLAs)
Inciso: lgica de diodos.
Funcin de transferencia de un diodo
Smbolo de un diodo
V =(V - V )
Anodo Ctodo
D
I
Anodo
Ctodo
Corriente positiva
Tensin umbral (0.6V)
Inciso: lgica de diodos.
A ( )
B ( )
C ( )
D ( )
R pull-up
V
CC
F
V
CC
V
CC
V
CC
V
CC
I0
I0
I0
I0
V
CC
I0
A ( )
B(Gnd )
C ( )
D ( )
R pull-up
V
CC
F 0.6V
V
CC
V
CC
V
CC
I0
I>0
I0
I0
I>0
Puerta And de diodos
Inciso: lgica de diodos.
Inconvenientes: Degradacin gradual de la seal cuando incrementamos
los niveles de la lgica.
Puerta Or: Igual que la And pero con resistencia de pull-down
0V
5V
5V
5V
0.6V
1.2V
5V
1.8V
2.4V
Dispositivos Lgicos Programables (PLDs)
V
CC
V
CC
I
3 1
I
2
I
4
I
O
1
O
2
Fusible
Fusible
Tecnologa bipolar
NAND-NAND
Inciso: inversor bipolar.
V
CC
Gnd
R1
R2
IN
OUT
IN OUT

V =V - R2 (V -0.6)/R1
OUT
IN
CC
Si V >0.2V
OUT
es el factor de ganancia de corriente del transistor bipolar
Dispositivos Lgicos Programables (PLDs)
V
Tecnologa CMOS
CC
V
CC
I
3 1
I
2
I
4
I
O
1
O
2
Fusible
Fusible
/I1' /I1 /I2' /I2 /I3' /I3 /I4' /I4
AND-OR
Dispositivos Lgicos Programables (PLDs)
Tecnologa CMOS
Las PLDs vistas hasta ahora slo pueden grabarse una vez
Veamos ahora tipos de PLDs regrabables, conocidas como EPLDs
(erasable programmable logic device)
Puerta
no
flotante
Puerta
flotante
GRABADO:
Los dielctricos entre la puerta flotante
y el semiconductor se cargan negativamente
cuando aplicamos una tensin positiva alta,
de forma que el dielctrico entre la puerta
flotante y el semiconductor queda permanentemente
cargado inutilizando el transistor
GRABADO:
Los dielctricos entre la puerta flotante
y el semiconductor se cargan negativamente
cuando aplicamos una tensin positiva alta,
de forma que el dielctrico entre la puerta
flotante y el semiconductor queda permanentemente
cargado inutilizando el transistor
BORRADO: Para eliminar esta carga se puede permitir la descarga mediante luz
ultravioleta o mediante una tensin negativa (depende del tipo de aislante )
BORRADO: Para eliminar esta carga se puede permitir la descarga mediante luz
ultravioleta o mediante una tensin negativa (depende del tipo de aislante )
Dispositivos Lgicos Programables (PLDs)
Tipos de dispositivos comerciales
PAL son una modificacin de las PLAs consisten en eliminar el
plano OR de forma que quedamos limitados y no podemos
usar un minterm en varias salidas. Una mejora sobre las
PLAs es que tiene entradas bidireccionales, con lo que podemos
usar segn nos convenga algunos pines como entrada o
como salida y tambin podemos disear lgica con ms de
dos niveles.
GAL admiten las variaciones de las PAL pero a su vez disponen
de una puerta XOR a la salida, con lo que podemos escoger
entre la salida o la salida negada, esto permitir una gran
versatilidad.
PALs y PLAs
Cul es la diferencia entre Programmable Array Logic (PAL) y
Programmable Logic Array (PLA)?
PAL construida por Monolithic Memories, la topologa del plano OR est
limitada
Cada columna del plano OR
tiene acceso slo a un subconjunto
de los minterms
PLA topologas generalizadas en los planos AND y OR
PALs y PLAs
Ejemplo de diseo: conversor de cdigo BCD a cdigo Gray
Tabla de verdad
Mapas de Karnaugh
W = A + B D + B C
X = B C'
Y = B + C
Z = A'B'C'D + B C D + A D' + B' C D'
Funciones minimizadas:
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
W
0
0
0
0
0
1
1
1
1
1
X
X
X
X
X
X
X
0
0
0
0
1
1
0
0
0
0
X
X
X
X
X
X
Y
0
0
1
1
1
1
1
1
0
0
X
X
X
X
X
X
Z
0
1
1
0
0
0
0
1
1
0
X
X
X
X
X
X
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 0 X 1
0 1 X 1
0 1 X X
0 1 X X
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 1 X 0
0 1 X 0
0 0 X X
0 0 X X
mapa-K para X
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 1 X 0
0 1 X 0
1 1 X X
1 1 X X
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 0 X 1
1 0 X 0
0 1 X X
1 0 X X
mapa-K para W
mapa-K para Y
mapa-K para Z
PALs y PLAs
PAL programada:
Hay 4 minterms por puerta OR
A B C D
0
0
0
0
0
0
PALs y PLAs
Implantacin del cdigo en puertas de circuitos SSI
5 circuitos SSI vs. 1 circuito PLA/PAL
B
\ B
C
C
A
D
\ D
D
W
X
Y
B
B
B
B
C
C
A
D
\ A
\ C
\ B
\B
\C
\A
\ D
2
2
1
1: 7404 inversores
2,5: 7400 NAND dos entradas
3: 7410 NAND tres entradas
4: 7420 NAND cuatro entradas
4
4
3
3
5
Z
1
3
2
1
2
D 1
1
4
2
Otro ejemplo: Comparador de magnitud
EQ NE LT GT
ABCD
ABCD
ABCD
ABCD
AC
AC
BD
BD
ABD
BCD
ABC
BCD
PALs y PLAs
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Mapa K para EQ
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 1 1 1
1 0 1 1
1 1 0 1
1 1 1 0
Mapa K para NE
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 0 0 0
1 0 0 0
1 1 0 1
1 1 0 0
Mapa K para L T
AB
CD
00 01 11 10
00
01
11
10
D
B
C
A
0 1 1 1
0 0 1 1
0 0 0 0
0 0 1 0
Mapa K para GT
PLA
I1
I2
I3
I4
I5
I6
I7
I8
I9
O1
IO2
IO3
IO4
IO5
IO6
IO7
O8
I10
PAL16L8
PAL16L8
Polaridad de las seales
No importa la polaridad de las seales de entrada ya que tenemos
un buffer inversor y no inversor y por tanto ambas seales estn
presentes, la nica diferencia ser que lnea lleve la seal y que
lnea lleve su negada
En cuanto a las salidas es diferente, veamos que hay un inversor a
la salida de cada puerta OR, y entonces la funcin realizada es la
AND-OR-Invert.
Normalmente uno no calcula cual va a ser el mapa de
contactos eliminados a mano, esto se deja a un ordenador y por tanto
hay que fijarse en las funciones de salida.
PAL16L8
Polaridad de las seales
Ejemplo de salida.
/salir= /(A1 A2 A3 A4 A5 A6 A7 A8)
Correcto
salir = A1 A2 A3 A4 A5 A6 A7 A8 Incorrecto
/salir=/A1+ /A2 + /A3 + /A4 + /A5 + /A6 + /A7 + /A8
salir = (A1 A2 A3 A4 A5 A6 A7 A8)
Antes del inversor de salida queda un slo sumando
Antes del inversor de salida quedan ocho sumandos
Ejemplo: Disear un multiplexor de ocho entradas de un bit.
Entradas Salidas
de control
EN C B A Y0
0 x x x 0
1 0 0 0 D0
1 0 0 1 D1
1 0 1 0 D2
1 0 1 1 D3
1 1 0 0 D4
1 1 0 1 D5
1 1 1 0 D6
1 1 1 1 D7
Tabla de verdad
Y0 = EN C B A D0 +
EN C B A D1 +
EN C B A D2 +
EN C B A D3 +
EN C B A D4 +
EN C B A D5 +
EN C B A D6 +
EN C B A D7)
PAL16L8
Atencin : la funcin lgica implantada
es AND-OR-Invert y por
tanto la salida ser activa a
nivel bajo
Cuidado: tenemos una OR de ocho
entradas y por lo tanto
deberemos utilizar lgica
de cuatro niveles
Ejemplo: Disear un multiplexor de ocho entradas de un bit.
PAL16L8
/(EN C B A D0 +
EN C B A D1 +
EN C B A D2 +
EN C B A D3)
/Y01=
/(EN C B A D4 +
EN C B A D5 +
EN C B A D6 +
EN C B A D7)
/Y02=
Y0 = /(/Y01 /Y02)=Y01+Y02
O1
IO2
IO3
IO4
IO5
IO6
IO7
O8
I10
I1
I2
I3
I4
I5
I6
I7
I8
I9
GAL16V8C

También podría gustarte