Вы находитесь на странице: 1из 10

Memorias

CARACTERISTICAS

Los dispositivos digitales más elementales capaces de almacenar información en forma binaria
son los biestables y los registros de desplazamiento
Las memorias son dispositivos capaces de almacenar grandes cantidades de información debido
a que internamente están constituidas por un determinado número de registros que utilizan unas
entradas y unas salidas comunes para acceder a todos ellos. La información se almacena en las
memorias en forma dé palabras formadas, normalmente, por uno, cuatro u ocho bits. Cada
palabra se almacena en una posición que se identifica con una determinada dirección de
memoria expresada numéricamente en el sistema hexadecimal.
Los datos se introducen y se extraen de la memoria durante las operaciones de escritura y
lectura respectivamente a través de un conjunto de líneas que se denominan bus de datos. De
lo anterior se deduce que el bus de datos es bi-direccional, lo que significa que los datos pueden
ir en cualquiera de las dos direcciones, es decir, hacia la memoria o desde la memoria. En el
caso de una memoria organizada en byte, el bus de datos debe poseer ocho líneas de manera
que los ocho bits de un byte de datos seleccionados se transmitan en paralelo.

En resumen las memorias son dispositivos de almacenamiento de datos binarios de largo o


corto plazo. Existen tres tipos principales de memoria:
a) Memorias semiconductoras
b) Memorias magnéticas
c) Memorias ópticas

MEMORIAS SEMICONDUCTORAS

Las memorias semiconductoras están formadas por matrices de elementos de almacenamiento


que pueden ser latches o flip - flop, condensadores, transistores, o cualquier otro elemento de
almacenamiento de carga eléctrica.

RAMs Y ROMs

Las dos principales categorías de memorias semiconductoras son las memorias ROM y RAM.

La memoria RAM (Random-Access Memory, memoria de acceso aleatorio) es un tipo de


memoria de acceso directo- es decir- el tiempo que se tarda en acceder a cualquier dirección de
memoria es la misma y estas se pueden seleccionar en cualquier orden, tanto en una operación
de escritura como de lectura. Todas las RAM’s poseen la capacidad de lectura y escritura.
Debido a que las memorias RAM pierden los datos almacenados cuando se desconecta la
alimentación, reciben el nombre de memorias volátiles.

La memoria ROM (Read-Only Memory, memoria de solo lectura) es un tipo de memoria en la que
los datos se almacenan de forma permanente o semipermanente. Los datos se pueden leer de
una ROM, pero no existe la operación de escritura como en las RAM’s. Debido a que las ROM’s
mantienen los datos almacenados incluso cuando se desconecta la alimentación, reciben el
nombre de memorias no volátiles.

TIPOS DE MEMORIA
• RAM = Random Access Memory
• ROM = Read Onlv Memory
• PROM = Programmable Read-Only Memory
• EPROM, (Erasable Prograrnmable Read-0nly Memory)
• EEPROM = (Electrically Erasable Programmable-Read- only Memory
• FLASH
• VRAM = Video RAM
• SRAM = Static RAM
• DRAM = Dynamic RAM
• FPM = Fast Page Mode
• EDO = Extended Data Output)
• BEDO = Burst EDO
• SDRAM = Synchronous DRAM)
• DDR SDRAM ó SDRAM II = Double Data Rate SDRAM
• PB SRAM = Pipeline Burst SRAM)

ENCAPSULADOS

• SIMM Single In line Memory Module


• DIMM Dual In line Memory Module
• DIP Dual in line Package

MEMORIAS DE LECTURA / ESCRITURA DE ACCESO ALEATORIO (RAM)

Como ya habíamos dicho anteriormente, en una memoria RAM los datos se pueden leer y
escribir rápidamente en cualquier dirección especificada y en cualquier orden. La operación de
escritura es destructiva, y la operación de lectura es no destructiva. Esta operación no destructiva
de lectura se puede entender como una copia del contenido de una dirección, dejando intacto
dicho contenido. La RAM se utiliza para almacenamiento de datos a corto plazo, ya que no puede
retener los datos cuando se desconecta la alimentación.

La familia de las memorias RAMs.

Los dos principales tipos de memoria RAM son las RAM’s estáticas (SRAM, STATIC RAM) y las
RAM’s dinámicas (DRAM, DINAMIC RAM).

Memorias SRAM.

Denominadas así porque utilizan elementos de almacenamiento tales como latches, para datos,
que pueden almacenarse durante un período de tiempo indefinido mientras que esté conectada
la alimentación o que se escribe un nuevo bit de datos: La SRAM es una memoria volátil.

Memorias DRAM

Una memoria RAM dinámica (DRAM) es aquella en la que los datos se almacenan en
condensadores, que requieren recargarse (refrescarse) periódicamente para mantener el dato.
La ventaja de este tipo de celda es que es muy sencilla, lo que permite construir matrices de
memorias muy grandes en un chip, a un coste por bit más bajo que el de las memorias estáticas.
La desventaja es que el condensador de almacenamiento no puede mantenerse cargado más
que un periodo de tiempo, y el dato almacenado se pierde si su carga no se refresca
periódicamente. La operación de refresco requiere circuitería de memoria adicional y complica el
funcionamiento de la DRAM. Por ejemplo cuando se quiere acceder a una dirección de memoria
cuando se está ejecutando la operación de refresco; primero hay que esperar que éste termine
para poder acceder a la dirección deseada.

MEMORIAS DE SOLO LECTURA

Coma ya habíamos dicho anteriormente, una ROM mantiene de forma permanente o


semipermanente los datos almacenados en él, que pueden ser leídos pero no se pueden cambiar
en absoluto, o se requiere un equipo especial para ello. Una ROM almacena datos que se utilizan
repetidamente en las aplicaciones, tales como tablas, instrucciones programadas para la
inicialización y el funcionamiento de un sistema.

ROM de máscara

La ROM de máscara, denominada sencillamente ROM. Es una memoria programada de forma


permanente durante el proceso de fabricación para proporcionar funciones estándar de uso
extendido, tales como conversiones populares o para proporcionar funciones especificadas por el
usuario. Una vez que la memoria se programa, su contenido no puede cambiarse. La mayoría de
los Circuitos Integrados ROM utilizan la presencia o ausencia de un transistor en una unión
fila/columna para representar un 1 o un 0.

Tiempo de acceso de la ROM.

El tiempo de acceso a la ROM, es el tiempo que transcurre desde que se aplica un código de
dirección válido en las líneas de entrada hasta que los datos validos aparezcan en las líneas de
salida.
figura 1 memorias
Unidades de datos binarios.

Como sabemos, la menor unidad de datos binarios es el bit. Las memorias almacenan datos en
unidades que tienen de uno a ocho bits dependiendo del fabricante. Una unidad completa de
información se denomina word o palabra y esta formada generalmente por uno o más bytes. Las
palabras también pueden estar constituidas por grupos de menos de ocho bits.

Las características más significativas de las memorias son las siguientes:

• Tiempo de lectura y escritura.

• Cadencia de transferencia.

• Densidad de información.

• Volatilidad.

• Capacidad.

CAPACIDAD DE UNA MEMORIA

Entendemos por capacidad de una memoria el número de posiciones y, por tanto, de palabras
que puede almacenar. La capacidad total de una memoria expresada en bits será el producto de
las posiciones m por el número de bits n que componen cada posición:

N=mxn
La operación de selección de una determinada posición de memoria se denomina direccio-
namiento. La cantidad de líneas necesarias para direccionar las m posiciones será n1, de tal
forma que siempre se cumpla la igualdad:

2n1 = m

Las memorias se identifican por el número de posiciones y por el número de bits de cada una de
ellas. Los dispositivos de gran capacidad se miden en K’s. Un K equivale a 1024 posiciones. La
capacidad de una memoria que utiliza n, variables binarias para direccionar todas sus posiciones,
expresada en K’s, será:
2n1 - 10

CONFIGURACION EXTERNA DE UNA MEMORIA

Las entradas y salidas más significativas de un circuito de memoria son las de direccionamiento,
las de lectura/escritura de datos y las de control.

En la Figura 2 se muestra de forma simbólica una RAM con todos los terminales necesarios.
Las ROM no necesitan la entrada de control R/W que permite leer o escribir en función del nivel
lógico aplicado. La entrada CS (Chip Select . se utiliza, como veremos más adelante, para
seleccionar un determinado chip cuando la unidad de memoria está formada por más de un
circuito integrado.
Figura 2. Representación simbólica de una memoria RAM con sus entradas y salidas.

EXPANSION DE LA CAPACIDAD Y DE LA LONGITUD DE PALABRA DE UNA MEMORIA

Es posible agrupar Ws para expandir la longitud de la palabra del sistema. En la Figura 3 se


muestra la unidad de memoria de un sistema que requiere una palabra de cuatro bits construida
con Ws cuyas posiciones están constituidas por un solo bit.

Los diferentes circuitos pueden estar conectados simultáneamente a las mismas líneas de
dirección y de datos, gracias a las puertas de tres estados que mantienen los Ws que no han sido
seleccionados en el tercer estado o estado de alta impedancia.

Figura 3. Expansión de la longitud de palabra de una unidad de memoria.

ORGANIZACION INTERNA DE UNA MEMORIA

Los circuitos de memoria de tecnologías LSI y VLSI están constituidos básicamente por los
siguientes elementos:
a) Por matrices de celdas; en la cuál cada celda está constituida por un elemento de
almacenamiento (latch o flip-flops, condensador etc) que puede almacenar un 1 o un 0
(señal alta o señal baja) ( 1 bit de información),
En la figura de abajo, se utilizan 64 celdas a modo de ejemplo pudiendo ser más. Cada bloque
de la matriz de memoria representa una celda de almacenamiento y su ubicación se puede
determinar mediante una fila y una columna
• La figura (a) es una matriz de 8 filas por 8 columnas, que se puede entender como una
memoria de 64 bits o como una memoria de 8 bytes.
• La figura (b) es una matriz 32x4 que es una memoria de 128 bits o memoria de 16 bytes.
• La figura (c) es una matriz 32x1 que es una memoria de 32 bits. La memoria se identifica
mediante el número de palabras que puede almacenar, multiplicado por el tamaño de la
palabra. Por ejemplo, una memoria de 32 k b x 8 puede almacenar 32.768 palabras de 8
bits cada uno.

b) Uno o dos decodificadores para seleccionar cada una de las posiciones de la matriz.

c) Un conjunto de buffers formados por puertas de tres estados que gobierna la entrada/salida
de datos bajo un circuito de control, al cual se le aplican las señales de lectura/escritura y
selección de chips.

DIRECCION Y CAPACIDAD DE LAS MEMORIAS

La ubicación de una unidad de datos en una matriz de memoria se denomina dirección. La


dirección de una unidad de datos se específica mediante la fila y la columna que ocupa. Véase
las figuras de abajo:
• En la figura (a), la dirección de un bit en la matriz corresponde a la fila 4, columna 5.
• En la figura (b) obsérvese que hay ocho bits o 1 byte en la matriz. La dirección de un byte
se especifica únicamente mediante la fila que ocupa; en este caso corresponde a la fila 4.
Como puede ver, la dirección depende de cómo se organice la memoria en unidades de
datos (en bit, en byte etc.).

La capacidad de una memoria es el número total de unidades de datos que puede almacenar.
Por ejemplo en la matriz organizada en bits de la figura (a), la capacidad total es 64 bits. En la
matriz de memoria organizada en byte de la figura (b) la capacidad es de 8 bytes.

EJERCICIOS

1. Calcular el número de posiciones y el número total de bits de la unidad de memoria


de un sistema cuya capacidad total es de 8K x 4 (8K posiciones de cuatro bits cada una).

Solución: Como K equivale a 1024 posiciones:

m = 8 x 1024 = 8 192 posiciones

La longitud de palabra es de cuatro bits, por tanto:

N = m x n = 8 192 x 4 = 32 768 bits


2. ¿Cuántas posiciones de memoria se pueden direccionar mediante 12 líneas?

Solución: Utilizando la expresión 2N1 = m, donde n1, es el número de líneas, tendremos:

m = 212 = 4 096 posiciones

3. ¿Cuántas líneas de dirección son necesarias para seleccionar todas las posiciones de
una memoria de 16K x 8? ¿Cuál será el número total de células de la matriz?

Solución:

a) La primera parte del problema se puede abordar de dos maneras distintas.

En primer lugar, mediante la expresión 2n1 = m, sabiendo que m = 16 x 1024 = 16 384


posiciones, podemos deducir, después de un sencillo tanteo, que n, = 14, ya que

211 = 16 384 posiciones

Por otra parte, sabemos que el valor de la capacidad, expresada en K’s vale 2n1-10 ; de esta
expresión deducimos que n1 = 14, ya que

214 - 10 = 24 = 16K

b) Respondiendo a la segunda cuestión, el número total de células de la matriz o número total


de bits que es posible almacenar será

N = m - n = 16 384 x 8 = 131072 bits

4. Si una memoria tiene una capacidad de 2 048 x 8 bits, calcular:


a) Número de células de la matriz.
b) Estructura de la matriz suponiendo que la memoria tenga dos decodificadores.
c) Número de líneas de dirección.
d) Número de líneas de datos.

Solución:

a) El número total de células será

N = 2 048 x 8 = 16 384 células

b) La estructura de la matriz será

128 x 128, ya que /1-6384 = 128

c) El número de líneas de dirección será

n1 = 11, ya que 211 = 2 048

d) Las líneas de datos serán ocho, puesto que la palabra es de ocho bits.

5. Para direccionar las posiciones de una memoria se utiliza la notación hexadecimal. Las
65536 posiciones de una unidad de memoria de un determinado sistema se encuentran
entre las direcciones 0000 (la primera) y FFFF (la última). Calcular las direcciones de las
posiciones que ocupan los lugares: a) 5; b) 255; e) 1024, y d) 32 769.

Solución:

a) 0004, ya que la primera será la 0000.


b) OOFE, que corresponde al número decimal 254.
c) 03FF, correspondiente al número decimal 1023.
d) 8000, que corresponde al número decimal 32 768.

6. Cuántas posiciones de memoria hay desde la dirección 0400 hasta la 11FF, ambas
inclusive?
Solución
El número decimal equivalente al 0400 utilizando la expresión polinómica, será

4 x 162 + 0 x 161 + 0 x 160 = 1024


El decimal equivalente al 11FF vale

1 x 163 + 1 x 162 + 15 x 161 + 15 x 160 = 4607

El número total de posiciones existentes entre las direcciones señaladas será

m1 = 4 607 - 1024 + 1 = 3 584

7. Las necesidades de memoria de un sistema programable son las siguientes: a) una


zona de 12K para el sistema operativo; b) una zona para un intérprete de 4K; c) una zona
libre para el usuario de 6K, y d) una ROM de 2K.
Dibujar el mapa de memoria indicando la dirección de principio y la de final de cada tramo,
suponiendo que el orden de almacenamiento sea el señalado.
Solución En el primer tramo hay 12 288 posiciones; la primera se encuentra en la dirección 0
(decimal) y la última en la dirección 12 287 (decimal), cuyo equivalente hexadecimal es 2FFF.

El siguiente tramo comenzará en la dirección siguiente; es decir, en la 3000. Como la suma de


este tramo más el primero vale 16K; es decir, 16 384 posiciones, la última dirección será la 16383
(decimal), cuyo equivalente hexadecimal es 3FFF.

Con el mismo proceso deducimos que los principios y finales de los restantes tramos son, por
este orden: 4000, 57FF, 5800 y 5FFF ( ver figura).

Mapa de una unidad de memoria de 24K.

Вам также может понравиться