View
213
Download
0
Category
Preview:
Citation preview
Tema 6: Memorias
Escuela Superior de Informática
Universidad de Castilla-La Mancha
Índice
• Introducción. Jerarquía de memoria.
• Fundamentos de las memorias.
• Características de las memorias.
• Dispositivos de almacenamiento masivo.
• Dispositivos de acceso aleatorio.
• Memoria interna del computador.
Introducción
• Almacenamiento de la información: datos y programas.
• Operación de Lectura: sacar información.
• Operación de Escritura: meter información.
• Bus de Direcciones.
• Bus de Datos.
• Señales de control: orden de lectura y orden de escritura.
Esquema de una memoria
• Memoria de 4x8 (4 palabras de 8 bits)
R
E
G.
D
I
R.
REGISTRO DE DATOS
Palabra de 8 bits
Celda de 1 bit
Bus de datos
Bus de
direccionesChip habilitado
Orden de lectura
Orden de escritura
Parámetros de la memoria
• Coste por bit.
• Tiempo de acceso (velocidad).
• Capacidad de almacenamiento, depende de la cantidad de palabras y del número de bits de cada palabra. Ejemplo 8Kx4 sería una memoria de 8.192 palabras de 4 bits.
• A mayor tiempo de acceso, menor coste.
• A mayor capacidad, menor velocidad.
Jerarquía de memoria (I)
• Es deseable gran capacidad, tiempo de acceso pequeño y bajo coste.
• La memoria se estructura en varios niveles.
• Nivel alto, de baja capacidad y rápido.
• Nivel bajo, alta capacidad y lento.
• Información más utilizada en nivel alto.
• La información cambia de nivel según convenga en ambos sentidos.
Jerarquía de memoria (II)
CPU
MemoriaInterna
E/S
Fundamentos de las memorias
• Para que un elemento pueda ser utilizado como dispositivo de memoria requiere:
1) Medio o soporte.
2) Transductor de escritura.
3) Transductor de lectura.
4) Mecanismo de direccionamiento.
Medio o soporte (I)
• Para que un medio pueda almacenar información debe cumplir las siguientes condiciones:
1) Presentar al menos dos estados diferenciados y estables.
2) Cambiar de estado mediante la aplicación de alguna señal exterior.
3) Poder detectar el estado en cualquier momento.
Medio o soporte (II)
• Se debe poder cambiar el estado siempre que sean necesario sin que ello suponga deterioro.
• Medios magnéticos, presentan una de dos posibles direcciones de magnetización.
• Medios discretos, almacenan un bit.
• Medios continuos, almacenan muchos bits, unos detrás de otros (señal de reloj).
Medio o soporte (III)
Medios magnéticos:
1) Ferrita, clásico.
2) Cinta magnética.
3) Disco.
4) Tambor.
Memorias de semiconductores.
Medio o soporte (IV)
• Duradera, la información se mantiene en ausencia de alimentación (no volátil).
• Volátil, se necesita alimentación para mantener la información.
• Con refresco, se necesita cada cierto tiempo restaurar la información (condensadores que se descargan).
• Lectura destructiva, cuando se lee la información, se destruye. Necesita volver a escribirse para conservarla.
• Permanente, la información es fija y no se puede modificar ni borrar. Sólo se puede leer.
Transductor
• De escritura: proporciona la energía necesaria para cambiar de estado.
• De lectura: captan las magnitudes físicas adecuadas para conocer el estado.
• Unidos al medio, conexionado con el punto de memoria (estáticas).
• Independientes del medio, el punto de memoria se coloca frente al transductor (dinámicas).
Direccionamiento
• Seleccionar el punto de memoria deseado para leer o escribir.
• En memorias estáticas se realizan mediante cableado o conexionado de los transductores. El acceso es por palabras y se llama aleatorio. Tarda el mismo tiempo para acceder a cualquier palabra.
• En memorias dinámicas, se almacena una información adicional de direccionamiento, junto con los datos, que es interpretada. El acceso se realiza por bloques.
Direccionamiento cableado (I)
• Direccionamiento 2D.
• Un decodificador de m entradas selecciona una y sólo una línea, conectada a todas las células de memoria de una palabra de n bits.
• Hay n parejas de transductores, una para cada bit, que hacen las funciones de escritura (uno de ellos) y de lectura (el otro).
Direccionamiento cableado (II)
• Direccionamiento 3D.
• Se establecen n planos horizontales de memoria, uno por cada bit de la palabra.
• Dentro de cada plano se selecciona un elemento de memoria de la siguiente forma:
a) El bus de direcciones se divide en dos partes (que pueden ser iguales) y cada parte entra en un decodificador.
b) La intersección de la línea activa de cada decodificador determina una y sólo una posición de memoria dentro del plano.
• Cada bit de la palabra se encuentra en un plano y todos los bits de la misma palabra en vertical.
• Ventaja frente al 2D: Los decodificadores son más pequeños y sencillos.
Direccionamiento en memorias dinámicas (I)
• Llevan cabecera e información.
• En la cabecera se incluye una información que la unidad de control del dispositivo de memoria interpreta. La cabecera también “consume” memoria.
• La lectura y escritura se hace a nivel de bloques y no de palabras.
• Los bloques pueden tener miles de bytes.
Direccionamiento en memorias dinámicas (II)
• Se necesita sincronización con reloj, que puede ser externo o grabado en el medio.
• Se pueden direccionar por acceso secuencial, con un transductor fijo. Ejemplo, la cinta magnética.
• Se pueden direccionar por acceso directo, bien con un transductor móvil o con varios fijos.
Características de las memorias
• Por la duración: duradera (no volátil), volátil, con refresco, destructiva y permanente.
• Por el modo de acceso: aleatorio y por bloques.
• Por la capacidad.
• Por la velocidad.
• Por el número de puertas.
Tamaño o capacidad
• En las cableadas, existe un relación entre el número de bits de bus de direcciones y la cantidad de palabras que se pueden seleccionar.
• En las memorias dinámicas, la capacidad depende de la longitud del medio y de la densidad de grabación (bits/unidad longitud o superficie).
Velocidad memorias estáticas
• En memorias estáticas, la velocidad es la misma para cualquier posición de memoria.
• TA es el tiempo que se tarda en leer una palabra conocida la dirección y dada la orden de lectura.
• El tiempo para realizar n lecturas consecutivas no es n·TA, ya que se necesita un tiempo de regeneración (o refresco) TRES
para decodificadores, transductores o puntos de memoria.
• El tiempo parar hacer n lecturas consecutivas sería:
n·TA + (n-1)·TRES
• TC = TA + TRES es el llamado ciclo de lectura.
• Lo mismo se puede decir para la escritura.
Memorias en el computador
• Las memorias estáticas se emplean para construir la memoria principal.
• Se usa acceso aleatorio (RAM) y un registro de direcciones de m bits y otro de datos de n bits (longitud de palabra del computador). Ambos registros se unen con los buses del computador.
• Las memorias dinámicas se emplean para construir la memoria secundaria, de gran capacidad.
Dispositivos de almacenamiento masivo
• Cinta y banda magnética.
• Disco y tambor magnético.
• Memorias ópticas (Ej: Compact Disc).
Cinta magnética
• Capas de óxidos de hierro, cromo y otros metales.
• Cintas de 1/2” y 800 metros. Memoria dinámica. La cinta debe moverse.
• 9 pistas. Se leen 9 bits en paralelo, 8 de datos y uno de paridad impar en vertical.
• Contacto físico entre las cabezas y la cinta.
• Acceso secuencial.
• No volátil.
• Lectura no destructiva.
• Bit de paridad par en horizontal.
• Soporte muy económico.
• En desuso. Sólo usado para copias de seguridad.
Discos magnéticos
• Acceso directo y no volátiles.
• Permiten lectura (no destructiva) y escritura.
• Disco recubierto de una fina película magnética que gira a 3.000 r.p.m. o mayores, girando constantemente.
• Entrada y salida de bits en serie, con velocidades de transferencia de varios Mbytes/s.
• Capacidades de hasta cientos de Gbytes.
• Acceso lento, del orden de los ms.
• Las cabezas no tocan el disco, si bien están extremadamente cerca-
• En los disquetes (bajo coste) sí que se produce contacto, con lo que su vida es menor. Por ello no giran a no ser que se acceda a ellos.
Discos ópticos
• La grabación se produce por láser.
• La lectura se produce por láser de menor potencia.
• Alta densidad de grabación.
• Resistencia a polvo y manipulación.
• Bajo coste.
• Tiempos de acceso algo peores que los magnéticos.
Discos ópticos: CD-ROM
• Diámetro de 12 cm y 1,2 mm de espesor.
• Policarbonato con una lámina de aluminio que hace de espejo.
• Un láser infrarrojo de 780 nm de longitud de onda ilumina la pista y un fotodiodo detecta las hendiduras del soporte.
• Una única pista de 5,3 Km en forma de espiral, de dentro hacia fuera.
• Usados como soporte de almacenamiento de audio, se leen a una velocidad constante de 1,2 m/s, obteniéndose una secuencia de palabras de 16 bits muestreados a 44,1 KHz. Cuando se lee el interior la velocidad es de 500 r.p.m. y de 200 r.p.m. cuando se lee el exterior.
• Capacidad de unos 600 MB, lo que equivale aproximadamente a 1 hora de registro de audio.
• A partir de 1996 empiezan a usarse lectores con velocidad angular constante, para datos.
Discos ópticos: DVD-ROM
• Procede del video digital.
• Se puede grabar por una o dos caras.
• En cada cara se pueden usar una o dos superficies activas.
• Las capacidades varían desde 4,7 GB para una cara y una capa hasta 17 GB para dos caras dos capas.
• Láser rojo de 635 nm de longitud de onda y muescas más pequeñas, de longitud mínima de 0,4 micras y separación entre pistas de 0,74 micras.
Discos ópticos de lectura y escritura
• La grabación y borrado se realizan mediante la acción conjunta de un láser y un campo magnético.
• Tiene lugar en una película magnética.
• El láser calienta el punto hasta 150 ºC y en esas condiciones el campo magnético cambia la polarización.
• El material cambia sus propiedades ópticas según la magnetización.
• La lectura se hace con el láser a menor potencia.
• A principio de los años 2000 se comercializan grabadores DVD, que no siempre son compatibles con el lector convencional DVD.
Memorias de semiconductores tipo Flash
• A partir del año 2002 se comercializan lápices USB de memoria, de tamaño muy reducido y gran capacidad (en la actualidad hasta 32 GB).
• Utilizan puertos USB (Universal Serial Bus) para conectarse con los distintos periféricos.
Otros soportes
• Floptical: similar al disquete de 3 1/2”, de tamaños 720 KB y 1,44 MB, que puede grabar hasta 21 MB.
• Unidades Bernoulli, disquete sin contacto físico gracias al aire que arrastra el disco (efecto Bernoulli).
Dispositivos de acceso aleatorio
• Memorias de ferrita.
• Memorias de semiconductores.
Memorias de ferrita
• En desuso, si bien han servido para crear los emblemas de las Escuelas y Facultades de Informática.
• Se comenzaron a usar en los años 50 del siglo pasado en el M.I.T. y siguieron usándose hasta 1970.
• Cada bit se almacena en un anillo de ferrita atravesado por cables que producen dos direcciones de magnetización.
• Diámetro exterior entre 0,5 y 3 mm.
• Memoria estática con direccionamiento cableado (RAM).
• No volátil.
• Lectura destructiva. Hay que volver a grabar después de leer, borrando antes de escribir.
• Relativamente rápidas, tiempos del orden de microsegundos.
• Capacidades pequeñas, pocos KB a pocos MB, generalmente con módulos de 4 KB.
Memorias de semiconductores
• Aparecen a finales de los años 60.
• Son estáticas de direccionamiento cableado.
• Son de Acceso Aleatorio (RAM).
• Pueden ser también dinámicas DRAM, necesitan refresco.
Clasificación de las memorias de semiconductores
• De lectura y escritura, también conocidas como RAM (ya vistas).
• De sólo lectura:
– ROM (Read Only Memory).
– PROM (Programmable ROM).
– EPROM (Erasable PROM) (borrado por Ultraviolados).
– EEPROM (Electricaly EPROM) (borrado eléctico lento).
– Flash.
Memorias ROM
• Se fabrican en pastillas integradas• El bus de direcciones puede ser completo o multiplexado
en el tiempo• El bus de datos tiene salida triestado, con lo que se
pueden conectar varios circuitos al mismo bus siempre que no se active más de uno a la vez
• Señales de control activas a nivel bajo:• CS (Chip Select) o CE (Chip Enable), debe activarse para
que funcione • RAS, si el bus de direcciones está multiplexado, indica
qué parte de la dirección se está leyendo
RAM estáticas (SRAM)
• No son volátiles.
• 256 Kb. Configuración 32Kx8, 28 pines, bus dirección 15 líneas, bus de datos 8 bits bidireccionales, 3 pines de control, acceso 12 ns.
• 1 Mb. Configuración 256Kx4, 28 pines, bus dirección 18 líneas, bus de datos 4 bits bidireccionales, 3 pines de control, acceso 10 ns.
• 4 Mb. Configuración 1Mx4, 28 pines, bus dirección 18 líneas, bus de datos 4 bits bidireccionales, 3 pines de control, acceso 10 ns.
RAM dinámicas (DRAM)
• Deben refrescarse y por ello son más lentas.
• 1 Mb. Configuración 1Mx1, 18 pines, bus dirección 10 líneas, bus de datos 2 bits (entrada y salida diferenciados), 3 pines de control, acceso 80 ns. Refresco 8 ms.
• 4 Mb. Configuración 4Mx1, 20 pines, bus dirección 11 líneas, bus de datos, 2 bits (entrada y salida diferenciados), 3 pines de control, acceso 60 ns. Refresco 16 ms.
• 16Mb. Configuración 4Mx4, 28 pines, bus dirección 12 líneas, bus de datos 4 bits bidireccionales, 4 pines de control, acceso 60 ns. Refresco 16 ms.
ROM, PROM, EPROM, EEPROM Y FLASH
• ROM, grabada en fábrica.
• PROM grabada una sola vez por el usuario.
• EPROM y EEPROM, sólo lectura que se pueden borrar con luz ultravioleta o una tensión eléctrica, respectivamente. La Flash también se puede borrar eléctricamente.
• La EPROM se borra en su totalidad y la EEPROM lo hace selectivamente a nivel de palabra, y la Flash a nivel de bloque.
Memoria interna del Computador
• Está compuesta por:– Registros, de poca capacidad pero rápidos. Se incluyen
los registros de la ALU. 256 bytes, 1 ns.
– Memoria principal, donde residen los programas y datos. 1 GB, 20 ns.
– Memoria caché (no siempre existe), es una memoria auxiliar que se emplea para acelerar los accesos a memoria principal. Es transparente al usuario. 1 M, 7 ns.
Mapa de memoria
• En la memoria principal residen los programas y datos.
• Si el contador de programa tiene m bits, se pueden asignar 2m direcciones, de 0 a 2m-1, que no tiene porqué usarse íntegramente.
• La anchura de palabra n no tiene por qué coincidir con m.
• El mapa de memoria es todo el espacio direccionable por un computador.
Ampliación del mapa (I)
• La ampliación supone aumentar el número de bits del bus de direcciones.
• Se puede hacer rediseñando el computador o añadiendo unos bits adicionales que se concatenan con los bits existentes, que consiguen, a través de un decodificador, seleccionar uno de entre varios mapas de memoria distintos.
Ampliación del mapa (II)
• La solución citada es sencilla y económica, pero es incómoda, ya que hay que estar constantemente cambiando de mapa y puede haber mapas vacíos sin instrucciones ni datos.
• Una solución alternativa es mantener fija una cuarta parte del mapa (y los bits que la direccionan) y cambiar de tabla con el resto de los bits.
• Otra alternativa es mediante la llamada conmutación de bancos de memoria (no explicada aquí).
Diseño de memorias
• Si se desea una memoria de palabras de n bits y se parte de circuitos con ancho de palabra de t bits, se necesitarán r/t circuitos en paralelo para alcanzar el ancho de palabra deseado. El valor típico de t es 1, 4, 8 o 16.
• Si la capacidad pretendida es rK palabras y se emplean circuitos de zK palabras, se necesitarán r/zfilas de circuitos en serie para lograr dicha capacidad.
Ejemplos de diseño
• Memoria deseada 128 Kpalabras.
• Palabra de 16 bits.
• Circuitos de memoria de 64Kx1.
• Solución:
– Se necesitan 16/1 = 16 circuitos por fila para formar el ancho de palabra deseado.
– Se necesitan 128/64=2 filas de circuitos.
Otro ejemplo
• Memoria deseada 32 Kpalabras.
• Palabra de 8 bits.
• Circuitos de memoria de 8Kx8.
• Solución:
– Se necesitan 8/8 = 1 circuito por fila para formar el ancho de palabra deseado.
– Se necesitan 32/8=4 filas de circuitos.
Conexionado (I)
• Bus de datos, bus de dirección, CS, OE y W/R.
• Triestado, se puede conectar sin problema entre sí distintas salidas a un mismo punto eléctrico siempre que no se activen dos o más a la vez. Los pines del bus de datos de los circuitos se conectan directamente al bus de datos.
• De esta forma se aumenta la capacidad sin cambiar el tamaño de palabra.
Conexionado (II)
• Para aumentar la longitud de palabra, se usan tantos circuitos como sean necesarios y la asociación en paralelo de todas las líneas supone una palabra de tamaño mayor.
• Para direccionar en el conjunto, se selecciona la fila de circuitos que contiene la palabra de interés.
• Si los buses no son bidireccionales, se separa la parte de entrada de la parte de salida, pero se siguen aplicando las ideas anteriores.
Memoria RAM de 32Mx32 a partir de módulos de RAM de 4Mx8
• Para pasar de palabras de 8 a 32 bits se necesitan 4 módulos en paralelo, con lo que se tendrán 4Mx32.
• Dicha fila de 4 módulos deberá repetirse otras 7 veces más para completar los 32M.
• Para direccionar cada una de las 8 filas de 4 módulos se utiliza un DEC 3x8, cuyas salidas se conectan con las entradas CS de los módulos de cada fila y en cuya entrada (la del decodificador) se introducen los 3 bits más significativos de los 25 necesarios. Los restantes 22 bits se colocan en paralelo en TODOS los módulos de RAM de 4Mx8.
Fuente: Fundamentos de Computadores 9ª Edición. Pedro de Miguel Anasagasti.
Recommended