Date post: | 07-Jul-2018 |
Category: |
Documents |
Upload: | wilson-francisco-brito |
View: | 347 times |
Download: | 17 times |
of 48
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
1/48
Carlos Novillo Montero Can
M e m o r i a s
Un procesador digital generalmente requiere medios
o dispositivos para almacenar información. La
información así almacenada puede consistir de números
que se usarán en un cálculo, o resultados de cálculosintermedios, o instrucciones para un procesador o
los tres. Cuando no se involucra un cálculo, puede
llamarse simplemente dato almacenado. Por ejemplo,
si se quiere imprimir documentos, será necesario un
dispositivo de memoria para almacenar los documentos.
La parte de un procesador digital que proporciona
la facilidad de almacenamiento de información se
denomina memoria.
En la fig. 5.1, puede verse que los diferentestipos de memoria generalmente están relacionados a
los computadores, que las utilizan internamente para
procesar información. Para el correcto funcionamiento
se requieren 3-buses de información: Datos,
direcciones y control, que conectan la CPU (Unidad
Central de Procesamiento ) y la memoria. Algunos de
los dispositivos externos también constituyen
diferentes tipos de memoria, por ejemplo la cinta
magnética es un tipo de memoria, lo mismo que una
memoria flash, un disco duro o un CD-ROM. Cada uno
de estos tipos de memoria realiza alguna función
específica y por tanto se le da un tratamiento
adecuado.
CAPÍTULO 5 - MEMORIAS - 319 -
Carlos Novillo Montero Can
Términos utilizados
Celda de Memoria.- Dispositivo o circuito eléctrico
que se usa para almacenar un solo bit [0 o 1]. Algunos
ejemplos de celdas de memorias son: un flip-flip,
FIGURA 5.1 RELACIÓN DE LA MEMO RIA DENTRO DEL
MICROPROCESADOR
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
2/48
CAPÍTULO 5 - MEMORIAS - 320 -
Carlos Novillo Montero Can
un capacitor con carga o un punto en una cinta o en
un disco magnéticos.
Palabra de Memoria.- Grupo de bits [celdas] en una
memoria que representa instrucciones o datos de algún
tipo. Por ejemplo, un registro que consta de ocho
FFs puede considerarse como una memoria que almacena
una palabra de ocho bits. El tamaño de las palabras
en los computadores modernos varía comúnmente de 4-
a 64-bits, según la capacidad de la computadora. Una
palabra digital puede representar: una DIRECCIÓN,
una INSTRUCCIÓN o un DATO.
Bit.- Dígito binario, solo puede tomar los valores
0 o 1. [Binary digit]
Bus.- Grupo de conductores que llevan un mismo tipo
de información.
Byte.- Término especial que se usa para una palabra
de 8-bits. Un byte siempre consta de 8-bits, que es
el tamaño de palabra más común en las micro-
computadoras.
CAPÍTULO 5 - MEMORIAS - 321 -
Carlos Novillo Montero Can
Capacidad.- Especifica cuántos bits puede almacenar
una memoria particular o un sistema de memoria
completo. Supongamos que se tiene una memoria que
puede almacenar 4096 palabras de 32-bits. Esto
representa una capacidad total de 121 072-bits. La
capacidad de la memoria, también puede expresarse
como 4096x32. Cuando se expresa de esta manera, el
primer valor [4096] representa el número de palabras
y el segundo [32], el número de bits por palabra
[tamaño de la palabra]. El número de palabras
contenidas en una memoria a menudo es múltiplo de
1024. Cuando se refiere a la capacidad de la memoria,
es común utilizar la designación “1K” [= 1KILO] para
representar 1024 = 2 ; 1M [= 1MEGA] para representar10
1 048 576 = 2 ; 1G [= 1GIGA] para representar 1 073
20
741 824 = 2 . Por tanto, una memoria que tiene una30
capacidad de almacenamiento de 4K x32 es en realidad
una memoria de 4096x32. Así mismo, una memoria RAM
de 256MBytes, tiene una capacidad total de 256 x 1
048 576 = 268 435 456-Bytes, o 2 147 483 648-bits.
Dirección.- Número que identifica la localidad de una
palabra en la memoria. Cada palabra almacenada en
una memoria tiene una dirección única. Las direccionessiempre se especifican como un número binario, aunque
algunas veces, por conveniencia, se utilizan números
hexadecimales y decimales. La tabla anterior ilustra
una pequeña memoria que consta de ocho palabras de
4-bits/palabra. Cada una de estas ocho palabras tiene
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
3/48
CAPÍTULO 5 - MEMORIAS - 322 -
Carlos Novillo Montero Can
una dirección específica representada como un número
2 1 0 2 2de 3 bits [A A A ] que varía de 000 a 111 . Siempre
que se haga referencia a una localidad específica
de una palabra en la memoria, se utilizará su código
de dirección [ADDRESS] para identificarla.
M E M O R I A
HEX Dirección Contenido HEX
0 0 0 0 0 1 1 0 6
1 0 0 1 1 1 1 0 E
2 0 1 0 1 0 0 1 9
3 0 1 1 0 1 1 1 7
4 1 0 0 1 1 0 0 C
5 1 0 1 1 0 1 0 A
6 1 1 0 1 0 0 1 9
7 1 1 1 1 0 1 1 B
A2 A1 A0 b3 b2 b1 b0
DVD.- Digital Versatile Disk [Disco Versátil Digital]
o Digital Video Disk [Disco para Video Digital] que
permite almacenar grandes volúmenes de información:
largometrajes, audio e imagen [videos musicales],
etc.
Operación de Escritura.- Operación por medio de la cualse coloca una nueva información en cierta localidad
de la memoria. También se llama operación de
almacenaje. Siempre que una palabra se escribe en
una localidad de la memoria, ésta reemplaza a la
palabra que se encontraba anteriormente ahí. En una
CAPÍTULO 5 - MEMORIAS - 323 -
Carlos Novillo Montero Can
operación de escritura, el dato anteriormente
almacenado se pierde.
Ejemplo; instrucciones para la operación de
escritura.
STOR 0D3H,A
LOAD 0D3H,A
MOV @0D3H,A
Destino Origen
en este caso, el contenido del registro A de la CPU
se almacena [carga] en la localidad de memoria D3H.
Proceso de Escritura:1. La CPU proporciona la dirección binaria de la localidad de
memoria donde va a almacenarse el dato. Para esto se usa
el bus de dirección.
2. La CPU coloca, en el bus de datos, el dato de se va a almacenar.
3. La CPU genera las señales de comando apropiadas para la
operación de escritura en la memoria.
4. Los CIs [CI = Circuito Integrado] que forman la memoria
decodifican la dirección para determinar la localidad
seleccionada para efectuar la escritura.
5. El dato que está en el bus de datos se almacena en la localidadde memoria seleccionada.
Operación de Lectura.- Operación con la cual la palabra
binaria almacenada en una localidad [dirección]
específica de la memoria se la capta y después se
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
4/48
CAPÍTULO 5 - MEMORIAS - 324 -
Carlos Novillo Montero Can
la transfiere a otro dispositivo. Por ejemplo, si
se desea utilizar la palabra almacenada en la
localidad-4 de la memoria de la tabla anterior con
algún fin, se tiene que realizar una operación de
2lectura en la dirección 100 . A la operación de
lectura a menudo la se conoce como operación de
extracción [fetch], ya que se extrae una palabra de
la memoria. Se utilizarán indistintamente ambos
términos.
Ejemplo; instrucciones para la operación de lectura.
READ A,0F5H
LOAD A,0F5H
MOV A,@0F5H
Destino Origen
en este caso, el contenido de la localidad de memoria
F5H se carga en el registro A de la CPU. En una
operación de lectura, la información de la localidad
seleccionada no se pierde.
Proceso de Lectura:
1. La CPU proporciona, a través del bus de dirección, la localidadde memoria donde se encuentra el dato que se va a leer.
2. La CPU activa las señales de comando adecuadas para la
operación de lectura.
3. Los CIs que forman la memoria decodifican la dirección para
determinar la localidad seleccionada para efectuar la lectura.
4. Los CIs que forman la memoria, colocan el contenido de la
CAPÍTULO 5 - MEMORIAS - 325 -
Carlos Novillo Montero Can
localidad seleccionada en el bus de datos de donde se transfiere
a la CPU.
Tiempo de Acceso.- Medida de la velocidad de operación
del dispositivo de memoria. Es la cantidad de tiempo
que se requiere para realizar una operación de
lectura. En términos más específicos, es el tiempoque transcurre entre la recepción de una nueva
dirección en la entrada de la memoria y la disposición
de los datos en la salida. Para especificar el tiempo
ACCde acceso se usa el símbolo t .
Memoria Volátil.- Cualquier tipo de memoria que requiere
la aplicación de energía eléctrica a fin de almacenar
información. Si se retira la energía eléctrica, toda
la información almacenada en la memoria se perderá.
Muchas memorias de semiconductor son volátiles,
mientras que todas las memorias magnéticas son no
volátiles.
Memoria No Volátil.- Una memoria no volátil almacenada
la información aún cuando se desconecte la energía
eléctrica.
Memoria de Acceso Aleatorio [RAM].- Memoria en la cual
la localización física real de una palabra de la
memoria no tiene efecto sobre el tiempo que se tarda
en leer de esa localidad o escribir en ella. En otras
palabras, el tiempo de acceso es el mismo para
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
5/48
CAPÍTULO 5 - MEMORIAS - 326 -
Carlos Novillo Montero Can
cualquier localidad de la memoria. Muchas memorias
de semiconductor y de núcleo magnético son RAM.
Memoria de Acceso Secuencial [SAM].- Tipo de memoria
en la cual el tiempo de acceso no es constante, sino
que varía según la dirección de la localidad. Cierta
palabra almacenada se halla por sucesión a través
de todas las localidades hasta que se llega a la
dirección deseada. Esto produce tiempos de acceso
que son muchos más largos que en una memoria de acceso
aleatorio. Algunos ejemplos de dispositivos de memoria
con acceso secuencial son la cinta y el disco
magnéticos, y la memoria de burbuja magnética [MBM].
Para ilustrar la diferencia entre las memorias SAM
y RAM, considere la situación en la que se han grabado
60 minutos de música en una cinta de audio. Cuando
desea escuchar una melodía en particular, por lo
general hay que rebobinar o adelantar la cinta hasta
encontrarla. Este proceso es relativamente lento y
la cantidad de tiempo requerido depende del sitio
sobre la cinta donde se encuentra grabada la melodía.
Este es un buen ejemplo de memoria SAM ya que se tiene
que recorrer toda la información hasta que se
encuentre lo que se está buscando. Su contraparteRAM, es un tocadiscos automático [CD driver], donde
es posible seleccionar cualquier melodía al
proporcionar el código apropiado y la operación
siempre transcurre en la misma cantidad de tiempo,
sin importar cuál sea la melodía seleccionada.
CAPÍTULO 5 - MEMORIAS - 327 -
Carlos Novillo Montero Can
Memoria de Lectura y Escritura [RWM].- Cualquier memoria
de la que se puede leer información o en la que se
puede escribir en ella con la misma facilidad.
Memoria Solo para Lectura [ROM].- Extensa clase de
memorias de semiconductor diseñadas para aplicaciones
donde la proporción de operaciones de lectura a
operaciones de escritura es muy alta. En términos
técnicos, en una ROM sólo puede escribirse
[programarse] una vez y esta operación normalmente
se efectúa en la fábrica. Por lo tanto, la información
sólo puede leerse de la memoria. Otros tipos de ROM
son en realidad memorias en su mayoría sólo de lectura
[ROM], en las que puede escribirse más de una vez,
pero la operación de escritura es más complicada que
la de lectura y no se realiza a menudo. Toda memoria
ROM es no volátil, y guarda los datos aún cuando se
desconecte la energía eléctrica.
Memoria Estática [SRAM].- Dispositivos de memoria de
semiconductor en los cuales los datos almacenados
se quedarán permanentemente guardados en tanto se
aplique energía, sin necesidad de escribir los datos
periódicamente en la memoria.
Memoria Dinámica [DRAM].- Dispositivo de memoria de
semiconductor en el que los datos almacenados no
quedarán permanentemente guardados, aún con energía
aplicada, a menos que se los reescriba [refresque]
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
6/48
CAPÍTULO 5 - MEMORIAS - 328 -
Carlos Novillo Montero Can
periódicamente en la memoria.
Memoria Flash.- Son memorias del tipo EEPROM, de alta
capacidad y de fácil transporte. Reemplazan con mucha
ventaja a los diskettes, por ejemplo una Flash USB
de 1GBytes, reemplaza a un equivalente mayor a 700
diskettes.
Memoria Caché.- Memoria de Visitas. Es una copia de
las páginas recientemente visitadas que el navegador
mantiene en la computadora. De esta manera, si el
usuario necesita volver a entrar a esos sitios, lo
hará a través de su disco duro y no desde Internet.
La ventaja de este tipo de memoria es que disminuye
el tiempo de carga de páginas, la desventaja es que
si se actualiza la página, el usuario no puede hacerlo
porque tiene la versión anterior.
Memoria Interna [Principal].- Guarda los datos e
instrucciones con los que trabaja la CPU. Es la
memoria más rápida del sistema de cómputo y, en
general, está constituida por dispositivos de memoria
de semiconductor.
Memoria Secundaria [Auxiliar].- Almacena grandes
cantidades de información externa a la computadora.
Es más lenta que la memoria interna y siempre es no
volátil. El disco duro [hard disk], la cinta y los
discos magnéticos son dispositivos comunes de esta
CAPÍTULO 5 - MEMORIAS - 329 -
Carlos Novillo Montero Can
clase de memoria.
MBM [Memoria de Burbuja Magnética].- Dispositivo de
almacenamiento secundario, de estado sólido, de acceso
secuencial, no volátil que está formada por elementos
magnéticos muy pequeños [burbujas] en un CI. Es
relativamente lenta y no puede usarse como memoria
interna.
Memoria de Disco-Óptico [OROM].- Memoria de Disco-Compacto
[CD-ROM].- Sirven para almacenar grandes cantidades
de información, como enciclopedias, diccionarios,
procesadores de texto, etc.
Disco Óptico de Lectura/Escritura.- Emplea una superficie
diferente, está recubierta con material magnético
cuyas propiedades magnéticas pueden cambiarse mediante
luz láser.
Ratón [Mouse].- Dispositivo periférico que permite
trabajar fácilmente dentro de un programa basado en
Windows.
Compuerta de 3-Estados.- Compuerta digital que tieneL Llos dos estados normales: 0 y 1 y un tercer estado
de alta-impedancia [Hi-Z].
Diskette [Flopy-Disk].- Guarda información en una lámina
de plástico recubierta de material magnético [baja
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
7/48
CAPÍTULO 5 - MEMORIAS - 330 -
Carlos Novillo Montero Can
capacidad de almacenamiento].
Scanner .- Dispositivo periférico que permite capturar
imágenes o texto.
Plotter .- Dispositivo periférico que permite imprimir
imágenes o texto en formato grande.
USB [Universal Serial Bus].- Es un tipo de conector o
puerto de entrada o salida de un computador. Transmite
información en serie a través de 4-cables: uno de
polarización, otro de tierra [común o referencia]
y los dos restantes para los datos que se los envía
Len forma balanceada [si se transmite un 1 con 2,5V,
una línea está en +2,5V y la otra en -2,5V]. La
velocidad de lectura [USB 2.0] es de 9Mbps y para
escritura, 8Mbps.
Operación General de la Memoria
1.- Seleccionar la localidad de la memoria a la que se quiere tener
acceso para una operación de lectura o de escritura.
2.- Seleccionar la operación que se efectuará [lectura/escritura].
3.- Proporcionar los datos de entrada que se almacenarán durante
una operación de escritura.
4.- Retener los datos de salida que vienen de la memoria duranteuna operación de lectura.
5.- Habilitar [deshabilitar] la memoria para que responda [no]
a las entradas de dirección y al comando lectura/escritura.
La fig. 5.2 ilustra estas funciones básicas en
CAPÍTULO 5 - MEMORIAS - 331 -
Carlos Novillo Montero Can
el diagrama simplificado de una memoria 16 x 4 [16-
palabras de 4-bits cada palabra = 64-bits de
capacidad]. Como el tamaño de cada palabra es de 4-
bits, hay 4-líneas para entrada de datos y 4-líneas
para salida de datos. Durante una operación de
escritura, que almacenará una palabra en la memoria,
los datos deben aplicarse a las líneas de entrada
de datos. Durante una operación de lectura, la palabra
leída desde la memoria aparece en las líneas de salida
de datos.
DIRECCIÓN DE
LA MEMORIA
CELDAS DE
LA MEMORIA
3 2 1 0 3 2 1 0HEX A A A A D D D D HEX
0H 0 0 0 0 0 1 1 0 6H
1H 0 0 0 1 1 1 1 0 EH
2H 0 0 1 0 1 0 1 1 BH
FIGURA 5.2 MEMORIA 16x4
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
8/48
CAPÍTULO 5 - MEMORIAS - 332 -
Carlos Novillo Montero Can
3H 0 0 1 1 1 0 0 1 9H
4H 0 1 0 0 0 0 0 0 0H
5H 0 1 0 1 0 1 1 1 7H
6H 0 1 1 0 1 1 0 0 CH
7H 0 1 1 1 1 1 0 1 D H
8H 1 0 0 0 0 0 1 0 2H
9H 1 0 0 1 0 0 0 1 1H
AH 1 0 1 0 1 0 1 0 AH
BH 1 0 1 1 1 0 0 0 8H
CH 1 1 0 0 0 1 0 0 4H
DH 1 1 0 1 1 0 1 0 AH
EH 1 1 1 0 0 1 0 1 5H
FH 1 1 1 1 1 1 1 1 FH
D I R E C C I Ó N C O N T E N I D O
3 0Entradas de Dirección [A - A ].- Se requieren N-líneas
de dirección para una memoria que tiene 2 palabras.N
Cada localidad de la memoria [palabra] requiere una
dirección específica. Por ejemplo: N = 4, entonces
2 = 16 localidades [o palabras].4
Entrada [Lectura/Escritura].- Determina el tipo de
operación que realiza la memoria. Algunas memorias
tienen líneas separadas para lectura/escritura. Cuando
solo se dispone de una entrada , entonces= 1 implica lectura y cuando = 0, significa
escritura. La operación de escritura reemplaza al
dato que estuvo anteriormente ahí. La operación de
lectura no destruye al dato que estuvo almacenado.
CAPÍTULO 5 - MEMORIAS - 333 -
Carlos Novillo Montero Can
Habilitación de la Memoria.- [CE (Chip Enable), CS (Chip
Select), ME (Memory Enable), etc.]. Entrada que
permite deshabilitar toda o parte de la memoria de
modo que no responda a las otras entradas. Normalmente
Lla memoria se habilita con 0 y se deshabilita con
L1 , [aunque existen memorias que funcionan al
contario]. Esta entrada es muy útil cuando se combinan
varios módulos de memoria para formar una de mayor
capacidad.
Tipos de Memoria: - Memoria de Acceso Secuencial [SAM]
- Memoria de Acceso Aleatorio [RAM]
- Memoria Solo para Lectura [ROM]
Memorias de Acceso Secuencial [SAM = Secuential Access
Memory] .- La característica principal de las
memorias de acceso secuencial, es que las palabras
se escriben y se leen en secuencia. Esta es la
principal limitación de este tipo de memoria. Una
ventaja de estas memorias es que son relativamente
baratas y muy eficientes cuando es posible [conviene]
escribir los datos en la memoria en el mismo orden
en que se los utilizará posteriormente. Algunos
ejemplos de memorias de acceso secuencial son
S Cintas de papel perforado
S Cintas magnéticas
S Discos magnéticos
S Discos compactos [CDs o DVDs].
S Memorias con registros de desplazamiento: LIFO [Last In -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
9/48
CAPÍTULO 5 - MEMORIAS - 334 -
Carlos Novillo Montero Can
First Out] y FIFO [Firts In - First Out] [Stacks o Pilas]
Memorias de Acceso Aleatorio [RAM = Random Access
Memory].- Las palabras se almacenan en localidades.
Para referirse a una localidad particular hay que
indicar la dirección de esa localidad, para la
escritura de datos en una localidad direccionada opara sacar el dato, es decir, lectura desde una
localidad direccionada. El tiempo necesario para
completar la operación de escritura de una palabra
en la memoria se denomina tiempo de acceso-de-
escritura (y el correspondiente para lectura tiempo
de acceso-de-lectura). Asumir que se debe escribir
o leer una palabra desde una localidad de la memoria,
suponer, además, que se pone atención en una segunda
localidad tomada al azar, y se quiere acceder a esa
localidad para lectura o escritura. En una memoria
de acceso aleatorio, el tiempo de acceso a la segunda
localidad es el mismo que para todas las localidades.
Esta situación es diferente en el caso de las memorias
de acceso secuencial, en las que el tiempo de acceso
depende de su ubicación respecto de la primera
localidad accedida.
Memoria Solo para Lectura [ROM = Read Only Memory].-
Es un tipo de memoria de acceso al azar. La ROM
difiere de la RAM en que en la ROM no se puede
escribir información mientras está operando el
sistema, es decir, en tiempo real. El contenido de
CAPÍTULO 5 - MEMORIAS - 335 -
Carlos Novillo Montero Can
la memoria generalmente lo establece el fabricante
o el usuario y posteriormente no se puede alterar.
Tipos de ROM: [ROM = Read-Only Memory; PROM =
Programmable-ROM; EPROM = Erasable-ROM; EEPROM =
Electrical-EPROM, todas ellas tiene la denominación
común de memorias ROM].
MEMORIA SÓLO PARA LECTURA [ROM]
Una memoria sólo para lectura es un dispositivo que
almacena información en forma permanente. Esto es,
hay una operación inicial durante la cual se escribe
la información en la memoria y de ahí, la memoria
es sólo para lectura y no se puede volver a escribir
en ella. Generalmente la información la pone el
fabricante de la ROM. Sin embargo, hay memorias que
permiten al usuario escribir la información, a tales
memorias se las conoce como memorias programables
(PROM = Programmable-ROM ). También hay memorias ROM
en las que puede cambiarse la información. Sin
embargo, en tales casos, la operación de escritura
requiere un tiempo que es muchísimo mayor que el
tiempo requerido para lectura. Tales dispositivos
[conocidos como PROM borrables EPROM] son ROM en elsentido de que para cambiar la información, es
necesario interrumpir el proceso digital en el que
está involucrada la memoria.
La característica más importante de las ROM es que
la información almacenada no se pierde aunque se
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
10/48
CAPÍTULO 5 - MEMORIAS - 336 -
Carlos Novillo Montero Can
interrumpa la energía eléctrica. A estas memorias
se las conoce como no-volátiles. En contraste, las
RAM son memorias volátiles.
Aplicaciones de las ROM.- En los Sistemas Digitales,
las ROM tienen un campo muy amplio de aplicaciones.
Se las utiliza en:
Realización de tablas de verdad arbitrarias que
requieren muchas variables de entrada y de salida,
en este caso, la ROM reemplaza una gran cantidad
de compuertas lógicas, de modo que una ROM puede
ser mucho más conveniente en tamaño, conexiones,
peso y costo.
Las ROM se utilizan ampliamente en conversión de
códigos, y a veces, relacionadas con displays
alfanuméricos, o generación de caracteres. Los
caracteres alfanuméricos en un monitor en general
se presentan como un grupo de puntos. Dependiendo
del carácter presentado, algunos puntos son
luminosos mientras que otros son oscuros. Cada
carácter debe ajustarse a un patrón de puntos que
generalmente se disponen como una matriz de 5x7
o de 7x9. El modelo de puntos de cada carácter puederepresentarse como un código binario [es decir,
punto luminoso = 1; punto oscuro = 0].
Para producir resultados que podrían obtenerse
mediante cálculos que involucran una secuencia de
operaciones aritméticas, por ejemplo:
CAPÍTULO 5 - MEMORIAS - 337 -
Carlos Novillo Montero Can
multiplicación, división, evaluación de funciones
trigonométricas o logarítmicas.
Para generación de funciones booleanas que tienen
muchas variables de entrada y de salida.
Para almacenar programas de las microcomputadoras
(Firmware, ROM-BIOS ), lenguajes de programación:
BASIC, etc.Sistemas Operativos. Memoria de arranque; las gran-
des computadoras y las personales no tienen el OS
[Operanting System] en la ROM sino en diskettes
o en CDs. En ese caso, se utiliza la ROM para
almacenar un pequeño programa de arranque que sirve
para inicializar la circuitería interna y externa
del computador.
Juegos electrónicos.
Cajas registradoras.
Inyección de combustible en automóviles controlados
con microprocesador.
Tabla trigonométrica.- El CI-MM4220BM de la National
Semiconductors almacena la función seno para ángulos
entre 0° y 90°. La ROM se organiza como una memoria
de 128x8 con 7 líneas para dirección y 8 líneas
para datos. Las entradas representan el ángulo en
incrementos de aproximadamente 0,7°. La dirección000 0000 = 0°; la dirección 000 0001 = 0,7°; la
dirección 000 0010 = 0,14°; así sucesivamente hasta
la dirección 111 1111 = 89,3°. Las salidas de datos
representan el valor aproximado de la función seno
del ángulo. Para la dirección 100 0000 = 45°, la
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
11/48
CAPÍTULO 5 - MEMORIAS - 338 -
Carlos Novillo Montero Can
salida es 1011 0101, puesto que la función seno
es menor que la unidad, estos valores se interpretan
como un fracción, esto es, como 0,1011 0101 que
equivale al 0,707 = sen 45°.
La fig. 5.3 muestra una memoria ROM utilizada como
un circuito para generar una función sinusoidal.
El generador de funciones es un circuito que produce
formas de onda: sinusoidales, triangulares, dientes
de sierra, cuadradas, etc. La fig. 5.3 muestra cómo
utilizar una tabla de búsqueda en ROM y un convertidor
de Digital-a-Analógico (DAC) para generar una onda
sinusoidal.
En este caso, la ROM guarda 256 valores diferentes
de 8-bits que corresponden a la forma de onda, [es
decir, a un punto con diferente voltaje sobre la ondasinusoidal]. El contador de 8-bits recibe de manera
continua la señal de reloj y con esto proporciona
en forma secuencial las direcciones de entrada a la
ROM. Conforme el contador recorre sus 256 estados,
que generan 256 direcciones, la ROM da salida a 256
FIGURA 5.3 APLICACIÓN DE MEMORIAS ROM [GENERADOR DE FUNCIONES]
CAPÍTULO 5 - MEMORIAS - 339 -
Carlos Novillo Montero Can
puntos al DAC. La salida del DAC será una forma de
onda escalonada con 256 valores de voltaje analógicos
diferentes, los que corresponden a los datos. El
filtro pasa bajos reduce la amplitud de los pasos
de salida del DAC para producir una forma de onda
casi lisa. Circuitos como este se emplean en algunos
generadores de funciones comerciales. La misma idease utiliza en algunos sintetizadores de voz , donde
la forma de onda digitalizada de la voz se almacena
en una ROM.
La ROM como Encoder .- Un encoder es una estructura
0con compuertas lógicas que tienen M entradas: I ,
1 M-1 0 1 K-1I , ..., I y K salidas: O , O , ..., O . Es
necesario que en cualquier instante una sola entrada
i i Lindividual, digamos I sea igual a 1 [I = 1 ] mientras
Lque todas las demás estén en nivel bajo [0 ]. [Al-
i Lternativamente, podemos tener I = 0 y todas las
L idemás entradas a 1 ]. Correspondiente a cada I , que
Lpuede estar a 1 , las K-salidas tomarán el nivel
0 1 K-1lógico O , O , ..., O .
3 2 1 0 7 6 5 4 3 2 1 0Z Z Z Z W W W W W W W W
0 0 0 1 1 1 0 0 1 1 1 10 0 1 0 1 0 0 1 0 0 1 1
0 1 0 0 0 0 1 0 1 1 1 0
1 0 0 0 1 1 1 1 0 1 0 0
DIRECCIÓN C O N T E N I D O
M E M O R I A
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
12/48
CAPÍTULO 5 - MEMORIAS - 340 -
Carlos Novillo Montero Can
W7 = Z0 + Z1 + Z3 W3 = Z0 + Z2
W6 = Z0 + Z3 W2 = Z0 + Z2 + Z3
W5 = Z2 + Z3 W1 = Z0 + Z1 + Z2
W4 = Z1 + Z3 W0 = Z0 + Z1
La fig. 5.4 muestra la estructura lógica de un
encoder, en ella se muestra la tabla de función y
su implementación con compuertas OR. La ROM indicadaalmacena 4-palabras de 8-bits cada una.
iEsto es, el encoder acepta la entrada I
L= 1 e identifica esta situación mediante la palabra
0 1 K-1código O , O , ..., O ; o si al encoder se lo
mira en su aplicación como memoria, la localidad de
ialmacenamiento i se direcciona poniendo I ma
FIGURA 5.4 MEMORIA ROM COMO ENCODER
CAPÍTULO 5 - MEMORIAS - 341 -
Carlos Novillo Montero Can
L= 1 y la ROM responde presentando en sus salidas
la palabra almacenada en esa localidad.
Generalmente la dirección de una palabra almacenada
se la da en un sistema hexadecimal como una palabra
codificada en binario. Entonces es necesario poner
entre la dirección codificada en binario y la ROM
un dispositivo que tome en cuenta la dirección ygenere una salida simple correspondiente a una línea
individual.
Tal dispositivo realiza la función de un
decodificador . La fig. 5.5 muestra el diagrama de
bloque de tal decodificador y la fig. 5.6 el circuito
con compuertas AND.
En las memorias comerciales, el decodificador seencuentra incluido en el CI, de manera que no hay
que preocuparse por diseñar el decodificador de
dirección. Esto disminuye grandemente el número de
líneas de dirección que serían necesarias en el chip.
La fig. 5.7 muestra el diagrama de bloques de una
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
13/48
CAPÍTULO 5 - MEMORIAS - 342 -
Carlos Novillo Montero Can
memoria ROM como encoder en la que se incluye el
decodificador de dirección.
FIGURA 5.8 MEMORIA ROM CON MATRIZ DE DIODOS
CAPÍTULO 5 - MEMORIAS - 343 -
Carlos Novillo Montero Can
La fig. 5.8 muestra a la memoria ROM, implementada
con una matriz de diodos.
La fig. 5.9 muestra una memoria ROM programable
por el usuario [PROM], para lo cual habrá que eliminar
[quemar] los fusibles de los diodos que no se
requieren para la información que se desea almacenar.
Se observa que la memoria vacía almacena unos [todounos], lo que se debe programar son los ceros.
En la fig. 5.10 se han sustituido los diodos por
transistores NPN, en este caso, la juntura BE funciona
FIGURA 5.9 MEMORIA PROM CON MATRIZ DE DIODOS
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
14/48
CAPÍTULO 5 - MEMORIAS - 344 -
Carlos Novillo Montero Can
como un diodo, debido a que los colectores están
CCconectados a V .
En la fig. 5.11, los transistores NPN se sustituyen
por E-MOSFETs, las resistencias también se sustituyen
por E-MOSFETs que trabajan en la región óhmica
[resistencia dinámica].
FIGURA 5.10 ROM CON MATRIZ DE TRANSISTORES BJT
CAPÍTULO 5 - MEMORIAS - 345 -
Carlos Novillo Montero Can
EPROM [ROM programable y borrable o alterable].-
También se la conoce como UV-EPROM porque se la borra
con luz ultravioleta, utiliza transistores E-MOSFET
FIGURA 5.11 MEMORIA ROM N-MOS
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
15/48
CAPÍTULO 5 - MEMORIAS - 346 -
Carlos Novillo Montero Can
con Compuerta flotante [(Floating-Gate FG), cada
transistor es de un tipo de MOSFET conocido como FAMOS
= Floating-gate Avalanche-injection Metal Oxide
Silicon].
FIGURA 5.12 ARQUITECTURA DE UNA MEMORIA EPROM 8x8 - FAMOS
CAPÍTULO 5 - MEMORIAS - 347 -
Carlos Novillo Montero Can
FIGURA 5.14 FOTO DEUNA MEMORIA EPROM
La fig. 5.12 muestra la arquitectura de una EPROM
[8x8] N-MOSFET de compuerta flotante. La fig. 5.13
muestra un MOSFET-FAMOS, un tipo de transistores en
el que la Compuerta en operación normal está
completamente aislada [rodeada de material aislante
2de muy alta impedancia O Si] y separada de conexión
eléctrica de cualquier otra parte del CI.
Es posible establecer una carga negativa entre las
Compuertas [fija y flotante] aplicando un alto voltaje
2[próximo a la ruptura de la capa de O Si] entre el
Drenaje [Drain] y la Compuerta [Gate]. La carga
negativa insertada entre las Compuertas mediante este
tratamiento, deja al correspondiente transistor con
un canal conductor. La EPROM se borra exponiéndola
a luz ultravioleta de cierta longitud de onda, que
sirve para descargar las Compuertas cargadas y que
permite que la Compuerta flotante se haga ligeramente
conductora; para esto, la EPROM se aloja en un chip
FIGURA 5.13 TRANSISTOR
FAMOS
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
16/48
CAPÍTULO 5 - MEMORIAS - 348 -
Carlos Novillo Montero Can
con ventana de cuarzo [fig. 5.14] a través de la que
pasa la luz ultravioleta que borra a la EPROM. Una
vez que se borra la información, la EPROM almacena
1s. La EPROM puede ser programada por el usuario y
puede borrarse y reprogramarse algunas veces. Cuando
está programada, la EPROM es una memoria no volátil.
Compuertas de 3-Estados.- El circuito que se muestra
en la fig. 5.18 corresponde a un buffer-inversor de
3-estados TTL. Cuando la entrada de habilitación [G]
L Lestá en 1 , la salida es Y = . Cuando G = 0 , la
salida se pone en alta impedancia. También se indica
el símbolo lógico.
EEPROM [ROM programable y borrable -
Eléctricamente].- Se basa en el mismo principio de
FIGURA 5.18 COMPUERTA NOT TTL DE 3-ESTADOS
CAPÍTULO 5 - MEMORIAS - 349 -
Carlos Novillo Montero Can
FIGURA 5.15 DISTRIBUCIÓN DE PINES DE LA MEMORIA
EPROM 2732, DE 4KBYTES
las memorias EPROM, solo que en los transistores
FAMOS, la capa de dióxido de silicio, es más delgada
por lo que las cargas que se almacena entre las
Compuertas fija y flotante, pueden eliminarse con
un voltaje negativo.
Memoria EPROM 2732.- Como ejemplo para estudio seha tomado la 2732, que es una EPROM-NMOS de 4K x 8
[4K-Bytes] y que en funcionamiento normal utiliza
una sola fuente de polarización de +5V. La fig. 5.15
muestra la distribución de pines de la EPROM-2732.
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
17/48
CAPÍTULO 5 - MEMORIAS - 350 -
Carlos Novillo Montero Can
MODOPP /V IL
SALIDAS V = TTL-Bajo
IL IL IHLectura/Verificación V V DATO-sal. V = TTL-Alto
DESHABILITAR
salida IL IHV V Alta-Z
X = No importa
PPV = 21V Nominal
IHESPERA V X Alta-Z Modo de espera = 175mW
IL PPPROGRAMA V V DATO-ent. Modo Normal = 500mW
La tabla de función anterior es la que proporciona
el fabricante para la memoria EPROM-2732.
Ciclo de Programación y Verificación [Temporización] de la
EPROM-2732.- La fig. 2.16 muestra el diagrama de
la temporización de la EPROM 2732. Donde
11. Al tiempo t , se pone la dirección de la localidad donde se quiere
almacenar la palabra.
PP2. Al mismo tiempo, en la entrada se aplica el pulso V
[21V].
CAPÍTULO 5 - MEMORIAS - 351 -
Carlos Novillo Montero Can
3. Simultáneamente, se ponen los datos en el bus de datos [que
PPen este modo, funciona como entrada de datos], porque V
aplicado a desactiva los buffers de salida de datos.
4. Cuando se estabilizan los datos, se aplica un pulso de nivel
wpbajo en [t = 50ms].
6. Termina la programación, regresa al estado alto y
pasa al estado bajo. Las líneas de datos pasan al estado de alta-Z[alta-impedancia].
7. Por último, se verifica que la palabra de datos se haya escrito
de manera correcta en la localidad de memoria seleccionada.
El modo de verificación es similar al proceso de lectura. La
Lentrada se mantiene en 0 y se aplica un pulso de nivel
3bajo en la entrada al tiempo t . Lo anterior hace que la
circuitería interna de la EPROM lleve el dato desde la localidad
de memoria seleccionada hacia los buffers de salida, donde puede
leerse.
La EPROM de la fig. 5.17 corresponde a una memoria
de 256 K-bits distribuidos en un arreglo de 32K x 8
[32KBytes] para lo que se necesitan 15 líneas de
14 0dirección [A -A ]. En este caso, se dispone de una
PPlínea OE independiente de V . Las otras líneas son
similares a las de la EPROM 2732. La programación
se la realiza de la misma manera que antes.
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
18/48
CAPÍTULO 5 - MEMORIAS - 352 -
Carlos Novillo Montero Can
FIGURA 5.17 DISTRIBUCIÓN DE PINES DE LA MEMORIA
EPROM 27256, DE 32KBYTES
Memorias Sólo para Lectura CMOS EPROM.- Teóricamente
el proceso de grabado y borrado de una celda CMOS
es reversible hasta el infinito. En la práctica, las
memorias EPROM empiezan a dar problemas a partir de
los 1000 ciclos de programación y borrado, [suficiente
para las necesidades de la mayoría de los usuarios].
Se debe tener en cuenta que fuentes de luz
habituales en nuestro entorno, como lámparas
fluorescentes o la luz solar, también emiten energía
en longitudes de onda del UV, aunque en mucha menor
medida. No obstante es aconsejable proteger la ventana
de una EPROM con un adhesivo opaco, para evitar que
este tipo de luz degrade el contenido de la memoria.
CAPÍTULO 5 - MEMORIAS - 353 -
Carlos Novillo Montero Can
En cuanto al voltaje de programación, es necesario
saber con qué tipo de memoria se trabaja. Las primeras
memorias de este tipo necesitaban voltajes de
DCprogramación de 25V . Versiones más modernas permiten
DCvoltajes de programación de 12,5V .
En cuanto a los tiempos de acceso, las primeras
memorias de tipo MOS ofrecían unos tiempos de accesodel orden de 200ns. En la actualidad, los tiempos
de acceso se han reducido considerablemente, y son
comparables a las memorias bipolares, por lo que éstas
han caído en desuso.
La organización y la distribución de pines de la
EPROM 27C256 se muestran en la fig. 5.19. En ella
se observan las líneas de dirección [A14-A0], las
FIGURA 5.19
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
19/48
CAPÍTULO 5 - MEMORIAS - 354 -
Carlos Novillo Montero Can
líneas de datos [D7-D0], una línea de habilitación
del integrado [ ] y la línea de habilitación de
las salidas [ ]. En el encapsulado, además se pueden
ver las líneas de polarización y la del voltaje de
PPprogramación V .
La fig. 5.20 muestra el modo de operación mediante
el diagrama de temporización de una memoria EPROM.
En el diagrama se observa que es necesario un tiempo
CEde habilitación del chip [t ] para que los datos
se presenten de manera estable en la salida. Así
mismo, mientras la línea se encuentra en nivel
alto, la salida de la memoria está en alta impedancia
[HI-Z].
Además del modo de operación de lectura de datos,
las EPROM disponen de otros modos, entre los que se
CAPÍTULO 5 - MEMORIAS - 355 -
Carlos Novillo Montero Can
encuentra el modo de programación, para escribir nueva
información; el modo de inhabilitación de la salida,
esta se pone en alta impedancia; el modo de reposo,
que permite menor consuno de energía, etc.
FUNCIÓN DE LOS PINES1
M ODO CE OE VPP A0 A9 SALIDASLEER VIL VIL VCC A0 A9 SALIDA DE DATOS
DESHABILITAR SALIDAS VIL VIH VCC X X ALTA-Z
STAND-BY [TTL] VIH X VCC X X ALTA-Z
PROGRAM A VILP VIHP VPP A0 A9 ENTRADA DE DATOS
VERIFICACIÓN PROPGRAM A VIHP VILP VPP A0 A9 SALIDA DE DATOS
DESBHABILITAR PROGRAMA VIHP VIHP VPP X X ALTA-Z
LEER IDENTIFICACIÓN [MFG] VIL VIL VCC VL VHV 34H2 3
LEER IDENTIFICACIÓN [DEV] VIL VIL VCC VIH VHV 1FH2 3
1. PUEDE SER VIL O VIH
2. VHV = 12V ± 0,5V
3. A1 - A8 y A10 - A14 = VIL.
Versiones más complejas incluyen el modo de
verificación de la programación, que permite comprobar
que el dato que se escribió es el correcto. Este modo
asegura la correcta programación de las memorias y
es muy útil para memorias de gran capacidad de
almacenamiento [por ejemplo 1Mbyte]. En el modo de
verificación la memoria permanece en modo de lectura
mientras se aplica el voltaje de programación. Esto
permite verificar muy rápidamente la programación
correcta o incorrecta del dato.
El modo de identificación automática [Signature]
permite leer una zona concreta de la memoria, en la
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
20/48
CAPÍTULO 5 - MEMORIAS - 356 -
Carlos Novillo Montero Can
cual están codificadas de forma particular el nombre
del fabricante y el tipo de memoria. Las líneas de
datos proporcionan el código del fabricante cuando
LA0 está en nivel bajo [0 ] y el código de la memoria
Lcuando A0 está en nivel alto [1 ].
Las EPROMs almacenan bits de datos en celdas
formadas a partir de transistores FAMOS [FloatingGate Avalanche-Injection Metal-Oxide Semiconductor]
de carga almacenada.
Estos transistores son similares a los transistores
de efecto de campo [FETs] canal-P, pero tienen dos
Compuertas. La Compuerta interior o flotante está
completamente rodeada por una capa aislante de dióxido
de silicio; la Compuerta exterior o Compuerta de
control [o fija] es la efectivamente conectada a la
circuitería externa.
La cantidad de carga eléctrica almacenada sobre
la Compuerta flotante determina que el bit de la celda
contenga un 1 o un 0; las celdas cargadas almacenan
un 0, mientras que las que no lo están, almacenan
un 1.
Tal como las EPROMs salen de la fábrica, todas las
celdas se encuentran descargadas, por lo cual el bit
asociado es un 1; de ahí que una EPROM virgen presente
el valor hexadecimal FF en todas sus localidades.
Cuando se debe cambiar [programar] el bit de una
celda de uno a cero, se hace pasar una corriente
a través del canal de transistor desde la Fuente
[Source] hacia la Compuerta [Gate] (los electrones
CAPÍTULO 5 - MEMORIAS - 357 -
Carlos Novillo Montero Can
siguen el camino inverso). Al mismo tiempo se aplica
un voltaje relativamente alto sobre la compuerta de
control del MOSFET, creándose de esta manera un campo
eléctrico fuerte dentro de las capas del material
semiconductor.
Ante la presencia de este campo eléctrico fuerte,
algunos de los electrones que pasan el canal Fuente-Compuerta ganan suficiente energía como para formar
un túnel y atravesar la capa de dióxido de silicio
que normalmente aísla la Compuerta flotante.
En la medida que estos electrones se acumulan en
la Compuerta flotante, dicha Compuerta toma carga
negativa, lo que finalmente produce que la celda tenga
un 0.
Tal como se mencionó anteriormente, el proceso de
borrado de los datos contenidos en una EPROM se lleva
a cabo exponiendo la misma a luz ultravioleta. El
punto reside en que la misma contiene fotones [Cuantos
de energía electromagnética] de energía relativamente
alta.
Los fotones incidentes excitan los electrones
almacenados en la Compuerta flotante hacia un estado
de energía lo suficientemente alta como para que los
mismos puedan formar un túnel a través de la capa
aislante y “escapar” de la Compuerta flotante, lo
que descarga la misma y retorna la celda al estado 1.
Programación de las EPROM.- Para la programación de
este tipo de memorias es necesario respetar los
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
21/48
CAPÍTULO 5 - MEMORIAS - 358 -
Carlos Novillo Montero Can
cronogramas de grabado que indican los fabricantes.
Para memorias de tamaño pequeño es suficiente con
utilizar programadores que siguen estos cronogramas,
en los cuales el tiempo de grabado por byte es del
orden de 100ms.
Para memorias de mayor capacidad este tiempo se
hace demasiado largo [una memoria 27512 necesitaríacasi dos horas], por lo que es necesario el desarrollo
de algoritmos de programación más rápidos. Estos
algoritmos sólo se encuentran en los programadores
comerciales, y dependen de cada dispositivo y de cada
fabricante.
PROM Eléctricamente Borrable [EEPROM].- Se
desarrolló al rededor de 1980 como una mejora de la
EPROM.
FIGURA 5.21 MEMORIA
EEPROM
CAPÍTULO 5 - MEMORIAS - 359 -
Carlos Novillo Montero Can
Aprovecha la misma estructura de Compuerta flotante
de la EPROM y agrega la característica de borrado
eléctrico mediante la adición de una delgada región
de óxido sobre el Drenaje de la celda de memoria
MOSFET. Aplicando un alto voltaje [21V] entre la
Compuerta y el Drenaje del MOSFET, puede inducirse
una carga a la Compuerta flotante, donde permaneceráaun cuando se suspenda el suministro de energía. La
inversión del mismo voltaje produce la eliminación
de las cargas capturadas en la Compuerta flotante
y borra la celda. Debido a que el mecanismo de
transporte de cargas requiere corrientes bajas, la
programación y el borrado de una EEPROM puede hacerse,
por lo general, en el circuito de trabajo.
La circuitería interna borra de manera automática
las celdas correspondientes en la localidad de memoriaantes de escribir los nuevos datos.
Tiempo de borrado completo de una EEPROM,
aproximadam ente 10ms [en el circuito].
Tiempo de program ación de una localidad de
EEPROM, aproximadamente 10ms.
ACC I nt e l 2816, EEPR OM de 2Kx8 [ T = 250ns ]
Intel 2864, EEPROM de 8Kx8
ENTRADAS
MODO SALIDAS
IL IL IHLECTURA V V V Dato-Sal
IL IH ILESCRITURA V V V Dato-Ent
IHESPERA V X X Alta-Z
Debido a que la EEPROM puede borrarse yreprogramanse aplicando voltajes adecuados, no se
necesita retirarla del circuito del que forma parte,
siempre que los componentes de soporte adicionales
sean parte de la circuitería. La circuitería de
soporte incluye el voltaje de programación de 21V
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
22/48
CAPÍTULO 5 - MEMORIAS - 360 -
Carlos Novillo Montero Can
PP[V ], que usualmente se genera a partir de la fuente
de +5V mediante un convertidor DC-DC y la circuitería
para controlar la temporización y secuenciación de
10ms para las operaciones de borrado y programación.
Memoria RPROM o EEPROM.- Los datos contenidos en
este CI se borran eléctricamente si se aplican a lasentradas valores de voltaje adecuados. Para el borrado
de los circuitos RPROM, como para la programación,
se necesita un programador especial. Las memorias
EEPROM no pueden tratarse como si fuesen RAM no
volátiles, pues aunque pueden leerse igual que una
ROM o RAM, su escritura es un proceso mucho más lento
y que requiere voltajes y corrientes más elevados
que en la lectura.
Las memorias EEPROM se emplean principalmente para
almacenar programas, aunque en la actualidad es cada
vez más frecuente el uso de combinaciones RAM +
EEPROM, utilizando estas últimas como memorias de
seguridad que guardan el contenido de las RAM. Una
vez reanudada la alimentación, el contenido de la
EEPROM se vuelve a copiar en la RAM. Las soluciones
de este tipo, sustituyen a las clásicas RAM + batería
[NVRAM] puesto que presentan muchos menos problemas.
Memoria FLASH.- Son dispositivos evolucionados de
las EPROM, en las que se accede a la información por
bloques. Para grabar un bloque de datos en una memoria
FLASH, primero es necesario borrarlo completamente,
CAPÍTULO 5 - MEMORIAS - 361 -
Carlos Novillo Montero Can
FIGURA 5.22 DIAGRAMA DE BLOQUES SIMPLIFICADO DE UNA
MEMORIA FLASH USB
luego se escriben los nuevos datos. Los bloques suelen
ser de 512 Bytes a 56KBytes. Las memorias FLASH USB
contienen varios CIs de memoria FLASH con un
controlador y una interfaz tipo USB. Emulan el
comportamiento de un disco magnético.
Los bloques de memoria se asocian a sectores de
disco de 512 Bytes, leyéndose y escribiéndose porbloques. En la memoria FLASH se genera un archivo
que indica el contenido de la memoria en cuanto a
directorios [carpetas] y archivos que tiene
almacenados, así como la ubicación de los archivos
dentro de la memoria. Este tipo de memoria es muy
popular y conveniente porque reemplaza una gran
cantidad de diskettes en un espacio físico muy pequeño
y a un costo muy adecuado. Además, son del tipo “Plug
& Play”. Los Sistemas Operativos actuales lasreconocen fácilmente.
El gráfico de la fig. 5.22 muestra la implementación
C Í O O S C Í O O S
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
23/48
CAPÍTULO 5 - MEMORIAS - 362 -
Carlos Novillo Montero Can
en diagrama de bloques de una memoria FLASH del tipo
USB. Puede verse el bloque de memoria propiamente
dicho y la circuitería adicional para facilitar la
conexión al computador.
Se trata de una memoria no volátil, de bajo consumo,
en la que se puede escribir y borrar. Funciona como
una ROM y una RAM pero consume menos energía y esmás pequeña. A diferencia de la ROM, la memoria FLASH
es programable en el circuito. Es más rápida y de
mayor densidad que la EEPROM. La alternativa FLASH
está recomendada frente a la EEPROM cuando se precisa
de gran cantidad de memoria no volátil de programa.
Es más veloz y tolera más ciclos de escritura/borrado.
Las memorias EEPROM y FLASH son muy útiles al
permitir que los microcontroladores que las incorporan
puedan ser reprogramados en el circuito, es decir,sin tener que sacar el CI de la tarjeta.
RAM DE SEMICONDUCTOR
El término RAM significa memoria de acceso aleatorio
[Random Access Memory], lo que quiere decir que se
puede tener fácil acceso a cualquier localidad de
memoria. Muchos tipos de memoria pueden clasificarse
como de acceso aleatorio, pero cuando el término RAM
se utiliza con memorias de semiconductor, generalmente
se considera que significa memoria de lectura y
escritura (RWM ) en contraste con la ROM. Ya que es
una práctica común usar el término RAM para referirse
CAPÍTULO 5 - MEMORIAS - 363 -
Carlos Novillo Montero Can
a la RWM de semiconductor, se lo utilizará de aquí
en adelante.
Las RAM se emplean en las computadoras como
dispositivos de almacenamiento temporal para programas
y datos. El contenido de muchas de las localidades
de la RAM se leerá o escribirá en ellas a medida que
la computadora ejecuta un programa. Esto requiereque la RAM tenga ciclos de lectura y escritura rápidos
para que no reduzca la velocidad de operación de la
computadora.
La mayor desventaja de las RAM es que son volátiles,
es decir, que pierden toda la información contenida
en ellas si se interrumpe la energía. Sin embargo,
algunas RAM-CMOS emplean una pequeña cantidad de
energía en el modo de espera [ninguna tarea de
escritura o lectura], que se las puede alimentar conbaterías cada vez que se interrumpe la fuente de
alimentación principal, reciben el nombre de NVRAM
[RAM no volátiles]. Por supuesto, la ventaja principal
de las RAM es que se puede escribir en ellas y se
puede leer de ellas muy rápidamente y con la misma
facilidad, las veces que sea necesario.
Arquitectura de la RAM.- Como sucede con la ROM,
es útil pensar que la RAM consta de varios registros,
cada uno de los cuales almacena una sola palabra de
datos y con una dirección única. Las RAM comúnmente
vienen con capacidades de 1K, 4K, 8K, 16K, 32K, 64K,
128K, 256K, y tamaños de palabras de 1-, 4- u 8-bits.
CAPÍTULO 5 MEMORIAS 364 CAPÍTULO 5 MEMORIAS 365
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
24/48
CAPÍTULO 5 - MEMORIAS - 364 -
Carlos Novillo Montero Can
Como se observará más adelante, la capacidad de
palabra y tamaño de estas puede expandirse combinando
circuitos integrados.
La fig. 5.23 muestra la arquitectura simplificada
de una RAM que almacena 32-palabras de 4-bits [es
decir, una memoria de 32 x4]. Estas palabras tienen
10direcciones que van desde 0 hasta 31 . A fin deseleccionar una de las 32 localidades para leer o
escribir, se aplica un código binario a un circuito
decodificador de dirección. Puesto que 32 = 2 , el5
decodificador requiere de un código de entrada de
5-bits.
Cada código de dirección activa una determinada
FIGURA 2.23 ARQUITECTURA DE UNA RAM DE 32x4
CAPÍTULO 5 - MEMORIAS - 365 -
Carlos Novillo Montero Can
salida del decodificador la que, a su vez, habilita
su correspondiente registro. Por ejemplo, suponga
el siguiente código de dirección
4 3 2 1 0 2 10A A A A A = 1 1010 [1AH = 26 ]
2 10como 1 1010 = 1AH = 26 , la salida 26 deldecodificador pasará al estado alto, seleccionando
el registro [localidad] 26 para una operación de
lectura o de escritura.
Terminales Comunes de Entrada/Salida.- A fin de disminuir
el número de pines en el encapsulado del CI. Los
fabricantes a menudo combinan las funciones de entrada
y salida de datos utilizando pines comunes de entra-
da/salida. La entrada controla la función de
estos pines I/O [E/S]. Durante una operación de
lectura, los pines E/S actúan como salidas de datos
que reproducen el contenido de la localidad
seleccionada.
Durante una operación de escritura, los pines E/S
FIGURA 5.24 TRANSCEIVER
CAPÍTULO 5 MEMORIAS 366 CAPÍTULO 5 MEMORIAS 367
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
25/48
CAPÍTULO 5 - MEMORIAS - 366 -
Carlos Novillo Montero Can
actúan como entradas de datos. Como se ve en la fig.
5.24, para que no haya interferencia entre los datos
que entran y los que salen, se utilizan buffers de
3-estados, este tipo de arreglo se denomina
transceiver.
Se puede observar por qué se hace esto considerando
el CI de la fig. 5.22. Con pines de entrada/salidaseparados, se requiere un total de 17 pines
[incluyendo tierra y fuente de polarización], con
4-pines comunes E/S, sólo se necesitan 13-pines. La
disminución del número de pines se hace más
significante en CIs con palabras de mayor tamaño.
La fig. 5.25 muestra una memoria SRAM 2x2
implementada con Flip-Flops de estado sólido. El bus
de datos es bidireccional, para esto se utilizan los
FIGURA 5.25 ARQUITECTURA DE UNA SRAM 2x2CON BUS DE DATOS BIRIRECCIONAL
CAPÍTULO 5 - MEMORIAS - 367 -
Carlos Novillo Montero Can
buffers de 3-estados tanto para la entrada como para
la salida de datos. El decodificador de dirección
interno junto con las líneas de comando permiten que
solo se activen los buffers correspondientes al evento
que se desea.
Cuando la línea está en 1L, los bufferscorrespondientes de Ent/Sal de la memoria quedan en
alta impedancia. Las figs. 5.26 a) y b) muestran una
celda de memoria con transistores BJT y con MOSFET
respectivamente. La siguiente tabla muestra los modos
de operación de la memoria de la fig. 5.25.
CE A FUNCIÓN
0 0 0 Escribe en la Loc. 0
0 0 1 Escribe en la Loc. 1
0 1 0 Lee la Loc. 0
0 1 1 Lee la Loc. 0
1 X X Alta-Z
a) FLIP-FLOP BJT b) FLIP-FLOP MOSFET-N
FIGURA 5.26 CELDA DE MEMORIA SRAM
CAPÍTULO 5 - MEMORIAS - 368 - CAPÍTULO 5 - MEMORIAS - 369 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
26/48
CAPÍTULO 5 MEMORIAS 368
1 Algunos fabricantes de CIs, ut il izan el símbolo [habi li tación de escritura ]
o en vez de . En cualquier caso, la operación es la misma .
Carlos Novillo Montero Can
Operación de Escritura.- Para escribir una nueva palabra
de 4-bits en el registro seleccionado, se requiere
L Lque = 0 y = 0 . Esta combinación habilita
los buffers de entrada de manera que la palabra de
2-bits aplicada a las entradas de datos se cargará
Len el registro seleccionado. = 0 , también
deshabilita los buffers de salida que son de 3-
estados, de manera que las salidas de datos se
encuentren en estado de alta-Z durante una operación
de escritura. La operación de escritura, desde luego,
destruye la palabra que estuvo almacenada antes en
esa localidad.
Operación de Lectura.- El código de dirección selecciona
un registro de la memoria para leer o escribir. Afin de leer el contenido del registro seleccionado,
Lla entrada LECTURA/ESCRITURA [ ] debe ser 1 .1
Además, la entrada [selección del CI] debe estar
Lactivada [0 , en este caso]. La combinación de
L L= 1 y CS = 0 , habilita los buffers de salida de
manera que el contenido del registro seleccionado
Laparecerá en las 2-salidas de datos. = 1 ,
también deshabilita a los buffers de entrada de maneraque las entradas de datos no afecten el contenido
CAPÍTULO 5 MEMORIAS 369
Carlos Novillo Montero Can
FIGURA 5.27 ARQUITECTURA DE UNA MEM ORIA SRAM 4x4 CON BUS DE
DATOS BIDIRECCIONAL
de la memoria durante la operación de lectura.
La fig. 5.27 corresponde a la arquitectura de una
memoria SRAM 4x4 de semiconductor, se requieren dos
líneas de dirección, dos líneas para Ent/Sal de datos,
dos líneas de comando y .
Habilitación del CI.- Muchos circuitos de memoria tienen
una o más entradas que se usan para habilitar
CAPÍTULO 5 - MEMORIAS - 370 - CAPÍTULO 5 - MEMORIAS - 371 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
27/48
Carlos Novillo Montero Can
o deshabilitar al circuito en su totalidad. En el
modo deshabilitado, todas las entradas y salidas de
datos se deshabilitan [alta-Z], de manera que no se
puede ejecutar ninguna operación ni de lectura ni
de escritura. La razón para tener varias entradas
se aclarará cuando se combinen CIs de memoria para
obtener memorias de mayor capacidad. Note que muchosfabricantes llaman [Chip Enable] a estas entradas.
Cuando las entradas o se encuentran en su
estado activo, se dice que se ha seleccionado el CI
de memoria; de otro modo se dice que no está
seleccionado. Muchos CIs de memoria están diseñados
para consumir una potencia mucho menor cuando no están
seleccionados. En grandes sistemas de memoria, para
una operación dada de memoria, serán seleccionados
uno o más CIs de memoria mientras que los demás no.
RAM Estática [SRAM].- La operación de la RAM que
se ha venido analizando hasta ahora, se aplica a una
RAM estática [aquella que puede almacenar datos
mientras se aplica energía al circuito]. Las celdas
de la memoria RAM estática son en esencia flip-flops
que permanecerán en un estado determinado [almacenarán
un bit] indefinidamente, siempre y cuando no seinterrumpa el suministro de energía al circuito. Más
adelante se describirá la RAM dinámica [DRAM], que
almacena datos como cargas en capacitores. Con la
RAM dinámica los datos almacenados desaparecerán
gradualmente debido a la descarga del capacitor, de
Carlos Novillo Montero Can
manera que es necesario refrescar los datos en forma
periódica [recargar los capacitores].
Las SRAM se encuentran disponibles en tecnologías
bipolar y MOS, aunque la vasta mayoría de las
aplicaciones hace uso de RAMs NMOS o CMOS. Las
bipolares tienen la ventaja en velocidad [a pesar
que la NMOS cierra gradualmente la brecha] y losdispositivos MOS tienen capacidades mucho mayores
con menor consumo de energía. La celda bipolar tiene
2 transistores bipolares y 2 resistencias, en tanto
que la celda NMOS tiene 4 MOSFET de canal N. La celda
bipolar requiere más área de circuito debido a que
un transistor bipolar es más complejo que un E-MOSFET,
y la celda bipolar requiere resistencias separadas,
mientras que la celda MOS utiliza MOSFET como
resistencias. Una celda de memoria CMOS es semejentea una celda NMOS, excepto que emplearía MOSFET de
canal N y P [complementarios]. Esto disminuye el
consumo de energía, pero incrementa la complejidad
del circuito.
Temporización de la SRAM.- Los CIs de RAM son los que
más frecuentemente se utilizan como memoria interna
de una computadora. La CPU efectúa en forma continua
operaciones de lectura y escritura en su memoria a
muy alta velocidad determinada por las limitaciones
de la CPU. Los circuitos de memoria que se conectan
con la CPU, deben ser lo suficientemente rápidos para
responder a los comandos de lectura y escritura de
CAPÍTULO 5 - MEMORIAS - 372 - CAPÍTULO 5 - MEMORIAS - 373 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
28/48
Carlos Novillo Montero Can
la CPU, y un diseñador de computadoras debe
interesarse en las diversas características de
temporización de la RAM.
No todas las RAM tienen las mismas característicasde temporización pero muchas de ellas son similares,
de manera que se utilizará un conjunto de caracterís-
ticas comunes con fines ilustrativos. La nomenclatura
de los diferentes parámetros de temporización variará
de un fabricante a otro, pero el significado de cada
parámetro es por lo general fácil de determinar a
partir de los diagramas de tiempo de la memoria en
las hojas de especificaciones de la RAM. Las
siguientes figuras muestran los diagramas de tiempo
de un ciclo de escritura y uno de lectura respecti-
vamente de una RAM común.
Ciclo de Escritura.- La fig. 5.28 muestra la actividad
Carlos Novillo Montero Can
de las señales para un ciclo de escritura, que
0comienza cuando la CPU proporciona, en t , una nueva
dirección a la RAM. La CPU lleva las líneas y
al estado BAJO después de esperar un intervalo de
AStiempo, t , denominado tiempo de establecimiento
de dirección. Esto brinda, a los decodificadores de
dirección de la RAM, el tiempo necesario para
responder a la nueva dirección. Las señales y
se mantienen en el nivel BAJO un intervalo de tiempo
Wigual a t , denominado tiempo de escritura.
AST = Tiempo de establecimiento de la nueva dirección [Address
Setup Time]
WPT = Tiempo de escritura [Write Pulse Time]
DST = Tiempo de establecimiento del dato [Data Setup Time]
DHT = Tiempo de retención del dato [Data Hold]
AHT = Tiempo de retención de la dirección [Address Hold]
WCT = Tiempo del ciclo completo de escritura
1En t , durante el intervalo de tiempo de escritura,
la CPU envía al bus de datos el dato válido que se
va a escribir en la RAM. Los datos tienen que
mantenerse en la entrada de la RAM por lo menos por
DSun intervalo de tiempo t previo a, y por lo menos
DHun intervalo de tiempo t después de la desactivación
2 DSde las señales y en t . El intervalo t recibe
el nombre de tiempo de establecimiento del dato,
DHmientras que t se denomina tiempo de retención del
dato. De manera similar, las entradas de dirección
CAPÍTULO 5 - MEMORIAS - 374 - CAPÍTULO 5 - MEMORIAS - 375 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
29/48
Carlos Novillo Montero Can
deben permanecer estables durante el intervalo de
AH 2retención de la dirección, t , después de t . Si no
se satisface cualquiera de estos requisitos de tiempo,
la operación de escritura no se llevará a cabo de
manera confiable. El ciclo completo de escritura,
WC 0 4t , que se extiende desde t hasta t , termina cuando
la CPU cambia el estado de las líneas de direcciónpara colocar en ellas una nueva dirección para el
siguiente ciclo de escritura o lectura.
Ciclo de Lectura.- Las formas de onda de la fig. 5.29
muestran la manera en que se comportan las entradas
de dirección, de datos, y de selección del CI
durante un ciclo de lectura de memoria. Como ya se
indicó, la CPU proporciona estas señales de entrada
a la RAM cuando se desea leer el dato almacenado en
una localidad de memoria específica. La RAM puede
tener muchas localidades cuya dirección proviene del
bus de direcciones de la CPU, en el diagrama aparecen,
por claridad, como bus. En él también se encuentra
la salida de datos de la RAM. Recuerde que la salida
de datos de la RAM está conectada al bus de datos
de la CPU.
0El ciclo de lectura empieza en el tiempo t . Antesde ese instante, las entradas de dirección tendrán
la que se encuentre sobre el bus de dirección, que
corresponde a la operación previa. Debido a que la
entrada de selección del CI de RAM no está activa,
ésta no responderá a la dirección “anterior”. Note
Carlos Novillo Montero Can
que la línea se encuentra en el estado activo
0ALTO antes de t y permanece en él durante todo el
ciclo de lectura. En muchos sistemas de memoria, por
lo general, se mantiene en el estado ALTO excepto
cuando se lleva al estado BAJO durante el ciclo de
escritura. La salida de datos de la RAM se encuentra
en su estado de alta-Z ya que = 1.
ACCT = Tiempo de acceso [Access Time]
COT = Tiempo requerido obtener en la salida un dato válido [Chip-
Enable Output Valid]
ODT = Tiempo de salida de datos [Output-Data Time]
RCT = Tiempo del ciclo de lectura [Read-Cycle Time]
0En t , la CPU envía una nueva dirección a las
entradas de la RAM; esta es la dirección de la
localidad donde se realizará la operación de lectura.
Después de dejar transcurrir el tiempo necesario para
CAPÍTULO 5 - MEMORIAS - 376 - CAPÍTULO 5 - MEMORIAS - 377 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
30/48
Carlos Novillo Montero Can
que las señales de dirección se estabilicen, se activa
1la línea . En t la RAM responde colocando el dato,
contenido en la localidad cuya dirección envía la
CPU, en la línea de salida de datos. El intervalo
0 1 ACCentre t y t es el tiempo de acceso, t , de la RAM
y es el tiempo que transcurre entre la aplicación
de una nueva dirección y la aparición de un datoválido en la salida de la memoria. El parámetro de
COtemporización, t , es el tiempo que le toma a la
salida de la RAM para cambiar su estado de alta-Z
al estado de dato válido una vez activada la señal
.
2En t , regresa al estado ALTO mientras que la
salida de la RAM regresa a su estado de alta-Z después
ODde transcurrir cierto tiempo, t . De este modo, los
datos colocados por la RAM en su salida pasan al bus
1 3de datos entre t y t . La CPU puede tomar el dato
del bus en cualquier momento dentro de este intervalo.
En muchas computadoras, la CPU emplea la TPP
2[transición positiva] de la señal en t , para
retener los datos en sus registros internos.
RCEl tiempo del ciclo de lectura completo, t , se
0 4extiende desde t hasta t , que es cuando la CPU
cambia las entradas de dirección a una direccióndiferente para el siguiente ciclo de lectura o
escritura.
RCEl tiempo que dura el ciclo de lectura, t , o el
WCde escritura, t , está determinado esencialmente
Carlos Novillo Montero Can
por la rapidez con la que trabaja el circuito de
memoria. Por ejemplo, en una aplicación real, la CPU
lee a menudo palabras sucesivas de datos, una después
RCde otra. Si la memoria tiene un t de 50ns, la CPU
puede leer una palabra cada 50ns, es decir 20 millones
de palabras por segundo [20MHz].
ENTRADAS
M ODO CS2 SALIDAS
LECTURA 1 0 1 0 DATO-SAL
ESCRITURA 0 0 1 X DATO-ENT
DESHABILITACIÓN DE
LAS SALIDAS1 X X 1 ALTA-Z
NO SELECCIONADAS
[Reducción de energía]
X 1 X X ALTA-Z
X X 0 X
FIGURA 5.30 MEMORIA
SRAM
CAPÍTULO 5 - MEMORIAS - 378 - CAPÍTULO 5 - MEMORIAS - 379 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
31/48
Carlos Novillo Montero Can
Memorias Dinámicas [DRAM].- Se fabrican con
tecnología MOS. Gran capacidad de almacenamiento.
Bajo consumo de potencia. Velocidad de acceso media.
Las DRAM guardan la información en forma de cargas
eléctricas en pequeños capacitores [pocos pF] MOS.
Debido a que la información tiende a perderse con
el tiempo, es necesario un proceso que se denominarefresco de la DRAM, cuyo periodo es desde 2 hasta
10ms. Esto es una desventaja puesto que requieren
más elementos para el diseño del sistema de memoria.
Hay que incluir la circuitería para la operación de
refresco durante los intervalos de acceso para la
operación de lectura o de escritura. Para baja
capacidad [64KBytes]
una versión usa chips denominados controladores para
memorias dinámicas que contienen toda la lógica
necesaria para refrescar los chips de DRAM que
conforman el sistema. Esto reduce grandemente la
circuitería de refresco.
La fig. 5.31 es una representación simbólica de
una celda de memoria dinámica. Los interruptores [SW1
- SW4] son MOSFETs controlados por la salida de varios
decodificadores que actúan junto con la señal .
L LUn 1 en DATA-IN carga al capacitor y O lo descarga.
Carlos Novillo Montero Can
En una operación de escritura los interruptores
SW1 y SW2 se cierran [SW3 y SW4, abiertos]. En una
operación de lectura todos los interruptores se
cierran a excepción de SW1, esto significa que cada
vez que se efectúa una operación de lectura se
refresca la DRAM.
Direcciones Multiplexadas.- La matriz de una DRAM de16K X1 tiene 14 entradas para direcciones. Una matriz
DRAM de 64K X1 tendrá 16 entradas para direcciones.
Una DRAM de 1M X4 necesita 20 entradas de dirección.
Los CIs de memoria de alta capacidad como estos,
necesitan muchos terminales si para cada bit de
dirección se utiliza un terminal separado. Para
reducir el número de terminales en los CIs DRAM de
alta capacidad, los fabricantes emplean la
multiplexión de direcciones, lo que permite que cada
terminal dé cabida a dos bits de dirección. El ahorro
en el número de terminales se traduce en una reducción
importante en el tamaño de los CIs. A su vez, esto
es muy importante en tarjetas de memoria de gran
CAPÍTULO 5 - MEMORIAS - 380 - CAPÍTULO 5 - MEMORIAS - 381 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
32/48
Carlos Novillo Montero Can
capacidad, donde se desea maximizar la cantidad de
memoria que se puede acomodar en una tarjeta.
RSt = Row Setup Time
CSt = Column Setup Time
Carlos Novillo Montero Can
En la fig. 5.32 BLQ-1 Registro de 7-bits para la dirección de
filas
BLQ-2 Decodificador de dirección de filas
BLQ-3 Registro de 7-bits para la dirección de
columnas
BLQ-4 Decodificador de dirección de columnas
Se utilizará el CI-4116, una DRAM de 16K X 1, parailustrar la idea de la multipleción de direcciones.
En la figura 5.32 a) se encuentra un diagrama
simplificado de la arquitectura interna de este CI.
El CI contiene una matriz de celdas dispuestas en
128 filas y 128 columnas. Existe una sola línea de
entrada de datos, una sola línea de salida para datos
y una entrada . También existen siete entradas
para direcciones y cada una tiene una doble función
0 7 0 7[por ejemplo A /A funcionará como A y A ]. Asimismo,
se incluyen dos entradas de selección para sincronizar
las direcciones de fila y columna en los
correspondientes registros que se encuentran en el
CI. La señal de selección de fila [Row Address
Selection] almacena los 7-bits menos significantes
del bus de dirección en el registro de 7-bits [BLQ-1]
asociado con las direcciones de filas, mientras que
la señal de selección de columna [Column Address
Selection] almacena los 7-bits más significantes del
bus de dirección en el registro de 7-bits [BLQ-3]
asociado con las direcciones de columnas.
La dirección de 14 bits se envía a la DRAM en dos
pasos, utilizando para ello las señales y .
CAPÍTULO 5 - MEMORIAS - 382 - CAPÍTULO 5 - MEMORIAS - 383 -
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
33/48
Carlos Novillo Montero Can
El diagrama de temporización se ilustra en la fig.
5.32b). Inicialmente, y se encuentran en
0estado ALTO. En el tiempo t , se aplica en las
entradas de dirección los 7 bits menos significantes
0 6que corresponden a la dirección de la fila A a A .
Después de esperar a que transcurra el tiempo de
RSestablecimiento requerido [t ] para el registro de1dirección de fila, la señal cambia a t hacia
el nivel BAJO. La transición negativa carga la
dirección de la fila en el registro de direcciones
0 6de fila, por lo que ahora A a A aparecen en la
entrada del decodificador de filas. El nivel BAJO
en también habilita este decodificador para que
pueda decodificar las direcciones de fila y
seleccionar una de las filas de la matriz.
2En el tiempo t se aplica la dirección de 7 bits7 13más significantes [A a A ] correspondiente a la
3columna. En t , la entrada cambia a nivel BAJO
para cargar la dirección de la columna en el registro
de direcciones de la columna. también habilita
el decodificador de columna para que éste pueda
decodificar la dirección de columna y seleccionar
una columna de la matriz.
Ahora, las dos partes de la dirección se encuentran
en sus respectivos registros, y los decodificadores
las han decodificado para seleccionar la celda que
corresponde a las direcciones de fila y columna; por
tanto, ya se puede realizar una operación de escritura
o lectura sobre esa celda, al igual que en una RAM
Carlos Novillo Montero Can
estática. Esta DRAM no tiene una entrada de selección
de circuito [CS]. Las señales y llevan a
cabo esa función ya que ambas deben estar en nivel
BAJO para que los decodificadores seleccionen una
celda para escritura o lectura.
Cambio de Formato de las Memorias.- En muchasaplicaciones de memoria la capacidad de almacenamiento
requerido en RAM o ROM o bien el tamaño de la palabra
no puede ser satisfecha por un microcircuito de
memoria. En cambio, varios circuitos integrados de
memoria pueden combinarse para ofrecer la capacidad
y el tamaño de palabra deseados. Se observará cómo
se hace esto a través de varios ejemplos que ilustran
los conceptos más importantes que se necesitarán
cuando se conecten los CIs de memoria con unmicroprocesador.
Expansión del Tamaño de la Palabra.- Suponga que se
necesita una memoria que pueda almacenar M-palabras
de 8-bits [M = 2 ] y todo lo que se tiene sonn
circuitos RAM como arreglos de M-palabras de 4 líneas
de E/S comunes. Podemos combinar dos de estos CIs
de M-palabras x 4 para producir la memoria que se
busca. La configuración para realizar esto se muestra,
como diagrama de bloques, en la fig. 5.33. Examine
este diagrama cuidadosamente y vea qué puede indagar
de él antes de seguir.
Por ejemplo, se dispone de memorias de 1K X4 y se
CAPÍTULO 5 - MEMORIAS - 384 -
d i l d 1 d i i
CAPÍTULO 5 - MEMORIAS - 385 -
d di i i ódi li á b
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
34/48
Carlos Novillo Montero Can
desea implementar una de 1KByte. Como cada circuito
puede almacenar 1024 palabras de 4-bits y se desea
almacenar 1024 palabras de 8-bits, se utilizan 2 CI-
RAM cada uno para almacenar la mitad de cada palabra,
es decir, la RAM-0 almacena los 4-bits menos
significantes de cada una de las 1024 palabras y la
RAM-1 almacena los 4-bits más significantes de cada
una de las 1024 palabras. En las salidas de la RAM
conectadas al bus de datos se dispone de una palabra
completa de 8-bits.
Cualquiera de estas 1024 palabras se selecciona
mediante la aplicación del código de dirección
n-1adecuado al bus de direcciones de n-líneas [A , ...,
0A ]. Las líneas de dirección generalmente provienen
de la CPU. Observe que cada línea del bus de dirección
está conectada a la correspondiente entrada de
dirección de cada circuito. Esto significa que una
vez que un código de dirección se coloque en el bus
Carlos Novillo Montero Can
FIGURA 5.34 MEMORIA 1Kx8
de direcciones, este mismo código se aplicará a ambos
circuitos de manera que se tenga acceso simultáneo
a la misma localidad en cada circuito.
Una vez seleccionada la dirección, se puede
escribir o leer en esta dirección con las líneas del
control y . Para leer, debe estar en alto
y debe estar en bajo. Esto ocasiona que las líneasde E/S de la RAM actúen como salidas. La RAM-1 coloca
su palabra de 4-bits seleccionada en las 4 líneas
superiores del bus de datos y la RAM-0 las coloca
en las 4 líneas inferiores del mismo bus de datos.
Así, el bus de datos contiene la palabra de 8-bits
seleccionada, la que ahora puede transmitirse hacia
otro dispositivo [generalmente un registro de la CPU].
La fig. 5.34 muestra la memoria RAM de 1Kx8 pedida.
CAPÍTULO 5 - MEMORIAS - 386 - CAPÍTULO 5 - MEMORIAS - 387 -
di i l t d difi d
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
35/48
Carlos Novillo Montero Can
Para escribir, = 0 y = 0 hacen que las
líneas de E/S de la RAM actúen como entradas. La pala-
bra de 8-bits que se va a escribir se coloca sobre
el bus de datos, [lo que en general hace la CPU].
Los 4-bits más significantes se escriben en la locali-
dad seleccionada de la RAM-1, mientras que los 4 menos
significantes se escriben en la RAM-0. En esencia,la combinación de las dos RAMs, actúa como una sola
memoria de 1K X 8. A esta combinación se la conoce
como un módulo de memoria de 1K X 8 [1KByte].
No todas las RAM tienen las mismas características
de temporización pero muchas de ellas son similares,
de manera que se utilizará un conjunto de caracterís-
ticas comunes con fines ilustrativos. La nomenclatura
de los diferentes parámetros de temporización variará
de un fabricante a otro, pero el significado de cada
parámetro es por lo general fácil de determinar a
partir de los diagramas de tiempo de la memoria en
las hojas de especificaciones de la RAM. Las
siguientes figuras muestran los diagramas de tiempo
de un ciclo de escritura y uno de lectura respecti-
vamente de una RAM común.
Expansión del Número de Palabras.- La fig. 5.35 muestra
el caso en que se dispone de memorias RAM de M-
palabras de 8-bits cada una, con ellas se ha cons-
truido una memoria de 2M-palabras de 8-bits. Para
tal propósito se requiere de un decodificador de
dirección externo para las líneas de dirección
Carlos Novillo Montero Can
FIGURA 5.35 MEMORIA 1Kx8-2Kx8
adicionales, que en este caso es un decodificador
de 1-a-2.
Las líneas de salida de cada una de las memorias
debe ser de 3-estados para evitar la interferencia
de los datos, de modo que cuando se seleccione uno
de los bloques, las salidas del otro estén en alta
impedancia.
Ejemplo.- Con memorias RAM de 1K X 8, diseñar una
memoria RAM de 2K X 8.
CAPÍTULO 5 - MEMORIAS - 388 - CAPÍTULO 5 - MEMORIAS - 389 -
Aumento del Número de Palabras y del Número de Bits El
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
36/48
Carlos Novillo Montero Can
FIGURA 5.36 AMPLIACIÓN DEL N ÚMERO DE PALABRAS
La fig. 5.36 muestra la memoria RAM pedida, para
este caso se requiere una línea de dirección adicional
10[A ]. La línea de dirección adicional va a un deco-
dificador de dirección constituido por un
decodificador de 2-1. Para mayores capacidades de
memoria, el decodificador de dirección puede resultar
más complejo, en cuyo caso se recomienda utilizar
un decodificador MSI, como el CI-74139, el CI-74138,etc. La RAM-0 entrega las 1024 primeras palabras
[localidades de 0 a 1023] y la RAM-1 las otras 1024
palabras [localidades de 1024 a 2047].
Carlos Novillo Montero Can
Aumento del Número de Palabras y del Número de Bits.- El
siguiente caso se da cuando se requiere aumentar la
capacidad de palabras y la capacidad de bits por
palabra. La fig. 5.37 muestra un diagrama de bloques
en el que se han utilizado bloques de memoria de M-
palabras de 4-bits cada una y se ha implementado una
memoria de 4M-palabras de 8-bits.
Para poder realizar esta memoria se requieren 2-
n n+1líneas de dirección adicionales [A y A ] que
ingresan a un decodificador de dirección de 2-4 con
salida de acuerdo al tipo de CE de las memorias
utilizadas, en este caso, como los CE de las memorias
se activan con nivel bajo, las salidas del decodifi-
cador deben ser de nivel activo bajo como se indica en
la fig. 5.37. La línea de habilitación [G] del de-
codificador se comanda con el bus de control que vienede la CPU.
La fig. 5.38 muestra un ejemplo de expansión del
número de palabras y del número de bits por palabra.
En este caso de dispone de memorias de 256 X 2 y se
desea implementar una memoria de 1024 x8. Cada bloque
de memoria dispone de 8-líneas para el bus de
0 7 0dirección [A -A ], 2-líneas para el bus de datos[D -
1D ], una línea y una línea . El circuito de
memoria resultante tendrá de 10-líneas para el bus
0 9de dirección [A -A ], 8-líneas para el bus de datos
0 7[D -D ], un decodificador de dirección de 2-a-4
[salidas con nivel activo bajo] para las 2-líneas
8 9de dirección adicionales [A -A ] requeridas para
CAPÍTULO 5 - MEMORIAS - 390 -
completar las 10
CAPÍTULO 5 - MEMORIAS - 391 -
número de líneas de dirección estrictamente necesario
8/18/2019 Sistemas Digitales - Carlos Novillo M. - Cap.5C
37/48
Carlos Novillo Montero Can
FIGURA 5.38 EJEMPLO DE AMPLIACIÓN DEL NÚMERO DE PALABRAS Y DE BITS
completar las 10.
Para esto se utilizan 16 bloques de memoria de
256 X2, en un arreglo matricial de 4x4 bloques, como
se indica en la fig. 5.38. Cada fila contribuye con
256-palabras y cada columna con 2-bits, dando un totalde 1024-palabras de 8-bits cada palabra.
Decodificación Completa.- Hasta este momento para variar
la capacidad de la memoria se ha utilizado solo el
Carlos Novillo Montero Can
número de líneas de dirección estrictamente necesario
para este propósito, esto es una forma de
decodificación parcial del bus de dirección.
Cuando se trabaja con una CPU se dispone de un
número de líneas de dirección bien definido, por
ejemplo, los micro controladores de la serie 8751/52
disponen de un bu