Download ROMs, PALs y PLAs

Document related concepts
no text concepts found
Transcript
Sistemas Digitales
Memoria ROM (Read-Only
Memory)
Memoria de sólo lectura
Circuito es matriz bidimensional de 0s y 1s
 Dispositivo programable que se fija sólo una
vez y después solo puede ser leído

ROMs, PALs y PLAs

Mario Medina C.
[email protected]



Memoria ROM (Read-Only
Memory)

Almacenamiento en ROM es no volátil

Esquema funcional de una
ROM

El decodificador selecciona sólo una de las
filas para ser leída

Los datos de esa fila son enviados a las líneas de
salida
Permanece si se desenergiza el circuito
Cada fila del arreglo se llama palabra ó word
Éstas se identifican mediante una ubicación
única llamada dirección de memoria
 El número de columnas es llamado el ancho
de bit o tamaño de la palabra


Generalmente potencias de 2
n líneas
de dirección
Esquema interno de una ROM

Decodificador

Transistores conectados a H ó L
n
2 -1
Decodificador
i
Palabra 0011
j
Palabra 1010
0
n-1
Matriz de memoria
2n líneas
de palabras
2n palabras
de m bits
m líneas
de salida
Esquema funcional de una
ROM
Desde el punto de vista de las funciones
booleanas, cada fila corresponde a un
minitérmino de una función de n entradas
 Cada uno de los m bits de la palabra permite
guardar los valores de salida asociados a un
minitérmino para una función dada

+5V +5V +5V +5V
0
Casi todas las ROMS de hoy en día son reprogramables
Proceso de programación suele ser costoso
Uso principal es la lectura de datos estáticos

Bits
Se pueden almacenar las tablas de verdad de m
funciones de n variables
Dirección
© 2014 Mario Medina C.
1
Sistemas Digitales
Ejemplo de implementación
con ROM
Address
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
F0
0
1
0
0
1
1
0
0
F1
0
1
1
0
0
0
0
1
F2
1
1
0
0
1
0
0
0
F3
0
0
0
1
1
0
1
0
Esquema general de
implementación con ROM
Word Contents
ROM
8 w ords ¥by
4 bits
F0  A B C  A B C  A B C
F1  A B C  A B C  A B C
F2  A B C  A B C  A B C
F3  A B C  A B C  A B C
A B C
F0
address
F1
F2
F3
outputs
Implementaciones con ROM
Implementaciones con ROM
ROM guarda directamente tabla de verdad
de una función facilitando el diseño
 A diferencia de lo observado con los MUX y
DEMUX, no impone limitantes en el tamaño
de las funciones



La memoria 27512 EPROM contiene 256
palabras de 8 bits





Tiempo de diseño reducido
No requiere proceso de minimización
Bueno para gran número de entradas

Permite implementar 8 funciones de 8 variables en
un chip de 28 pines
Ejemplo: Conversor
hexadecimal a código ASCII
Ventajas de implementación con ROM
No hay muchos términos compartidos entre las
funciones
Desventajas de implementación de ROM


El tamaño se duplica con cada entrada adicional
No aprovecha los términos superfluos
Tipos de ROM

ROM de máscara


Contenido viene determinado de fábrica
ROM programables (PROM)

Programables una sola vez
UV EPROM borrables con luz ultravioleta
 ROM eléctricamente borrables (EEPROM)




© 2014 Mario Medina C.
Programables y borrables con circuitos especiales
Sólo un número limitado de veces
Son la base de las memorias Flash
2
Sistemas Digitales
Familia de memorias ROM
Arreglos de puertas lógicas

Bloques funcionales prefabricados que
contienen gran volumen de puertas lógicas
con estructura definida



Tipos básicos


PLAs (Programmable Logic Array)
PALs (Programmable Array Logic)
Ejemplo: PLA antes de la
programación
Arreglos de puertas lógicas
A
 Estructura básica

Típicamente AND-OR (o NAND o NOR)
Programables para funciones específicas
B
C
Suma de términos productos (AND-OR)
Entradas
Arreglo masivo de
puertas AND
Arreglo masivo de
Términos producto
puertas OR
Salidas
F0
Definición de entradas




1 : activa en el término
0 : negada en el término
- : no aparece en el
término
Definición de salidas


1: término conectado a la
salida
0: término no conectado
a la salida
F0  A  B C
F3
A
B
C
F1  A C  A B
F2  B C  A B
A
F3  B C  A
B’C’
Matriz de personalización
Product Inputs
term
A B C
1 1 AB
- 0 1
BC
1 - 0
AC
- 0 0
BC
1 - A
Outputs
F0 F1 F2 F3
0 1 1 0
0 0 0 1
0 1 0 0
1 0 1 0
1 0 0 1
AB
AC’
Reuse
of
terms
B’C
F0
© 2014 Mario Medina C.
F2
Ejemplo: PLA después de la
programación
Diseño con PLA

F1
F1
F2
F3
3
Sistemas Digitales
Programando una PLA

PLAs de máscara



Definidas de fábrica
Máscara litográfica
PLAs programables


Ejemplo de PLA
Implementan las conexiones mediante fusibles,
los que son quemados en los términos no usados
Otras implementaciones generan las
conexiones en lugar de destruirlas
Ejemplo de PLA
Representación simplificada
• Notación abreviada
que no dibuja todos los
cables
• Cruces representan
conexiones de entrada
a bloques AND y
bloques OR
Ejemplo usando
representación simplificada
Ejemplo de PLA
F1 = A’BD + ABD + AB’C’ + B’C

A B C D
F2 = A’BD + C
AB
F3 = BC + AB’C’ + ABD
CD
AB
CD
Notación abreviada
para la
implementación de
F0 = AB + A’B’
F1 = CD’ + C’D
AB+A’B’
CD’+C’D
© 2014 Mario Medina C.
4
Sistemas Digitales
PLA: Implementación de
múltiples funciones
PLA
A B C
ABC
F1  A B C
Philips PLS100
A
F2  A  B  C
B
F3  A B C
A
F4  A  B  C
C
C
B
ABC
F5  A XOR B XOR C
ABC
ABC
F6  A XNOR B XNOR C
ABC
ABC
ABC
ABC
F1
F2
F3
F4
F5
F6
PLS 100 (Detalles)
16 Entradas
PLAs y PALs
8 Salidas de 3 estados
XOR actúa como inversor


Ambas tienen la misma estructura
La diferencia está en las capacidades de
programación


PALs
PLA: permite la programación de ambos planos
(AND y OR)
PAL: permite la programación sólo del plano
AND. Las conexiones en el plano de salida OR
vienen predefinidas.
Programando una PAL
• En una PAL, cada
puerta OR tiene acceso
solo a un subconjunto
predefinido de
términos producto
Z = I1I2’ + I1 ’I2
© 2014 Mario Medina C.
5
Sistemas Digitales
Sumador completo
implementado con PAL
PLAs y PALs

Las PLA permiten aprovechar al máximo la
reutilización de términos compartidos

Suelen ser más lentas y más caras que las PAL

Cout = XCin + YCin + XY

PAL 16L8
PAL eléctricamente más eficientes que PLA

Sum = X’Y’Cin + X’YC’in +
XY’C’in + XYCin
Resistencia de un nodo programable es mayor a la de
un cable directo

Se optimizan durante el proceso de fabricación
No permiten aprovechar al máximo los términos
compartidos
PAL 16L8 (Detalles)

Terminales IO2 a IO7 son de Entrada/Salida

Salida de
OR puede
ser
entrada
para otro
OR
Función
lógica
controla
buffers
de 3
estados

ROMs vs PLAS y PALs

Ventajas


ROMs pueden implementar m funciones de las n
variables de entrada
Desventajas




ROMs son más lentas
ROMs consumen más potencia
ROMs son más caras
ROMs son más susceptibles a glitches
© 2014 Mario Medina C.
6