Descargar

Principios básicos sobre las memorias

Enviado por Pablo Turmero


    edu.red

    Temas Subsistema de Memoria Organización de Memoria Principal Memoria Cache

    edu.red

    Contexto actual (1) Velocidad del procesador: se duplica cada 18 meses (sin variar su precio) la cantidad de instrucciones ejecutadas por segundo.

    Memoria: se cuadruplica su tamaño cada 36 meses (al mismo precio). Velocidad aumenta a razón de un 10% anual.

    edu.red

    Contexto actual (2) A medida que aumenta la brecha entre las velocidades del procesador y de la memoria, las distintas arquitecturas buscan tender un puente sobre esta brecha.

    Una computadora típica suele tener distintos tipos de memoria, desde una rápida y cara (registros) hasta una barata y lenta (discos).

    edu.red

    Contexto actual (3) La interacción entre los diferentes tipos de memoria se aprovecha de forma tal que se logra un comportamiento, por parte de la computadora, equivalente al que tendría con una memoria única, grande y rápida, cuando en realidad tiene distintos tipos de memoria trabajando en forma coordinada.

    edu.red

    Jerarquía de memorias (1) La forma en que se organizan estos distintos tipos de memoria es lo que se conoce como jerarquía de memoria. En la cima de la jerarquía están los registros. En la base, las memorias secundarias (discos magnéticos) y de almacenamiento “off line” (CD, DVD, cintas).

    edu.red

    Jerarquía de memorias (2)

    edu.red

    Jerarquía de memorias (3) A medida que ascendemos tenemos mayor rendimiento y más costo por bit. Entre la memoria principal y la secundaria hay otro tipo de memoria para salvar la brecha. Cuando ascendemos, también aumenta la frecuencia de accesos a ese tipo de memoria

    edu.red

    Jerarquía de memorias (4) Memoria del computador : • Tecnologías diferentes • Fundamentos físicos distintos • Localización en lugares distintos Objetivo : • Capacidad de almacenamiento • Tiempo de acceso reducido

    edu.red

    Jerarquía de memorias (4)

    edu.red

    Características (1) Duración de la información: • Memorias volátiles: RAM • Memorias no volátiles: discos, cintas • Memorias permanentes: ROM, EPROM

    Modo de acceso: • Acceso por palabra: memoria principal • Acceso por bloque: discos, caché

    edu.red

    Características (2) Velocidad Memorias semiconductoras: Tiempo de acceso: tiempo máximo que transcurre desde que se inicia la operación de lec/esc hasta obtener/almacenar el dato. Tiempo de ciclo: Tiempo mínimo que tiene que haber entre dos operaciones sucesivas sobre la memoria tciclo > tacceso

    edu.red

    Características (3) Memorias magnéticas: ¿como se calcula? Tiempo de acceso: tiempo de posicionar el cabezal + tiempo de latencia (+ tiempo de lectura) Velocidad de transferencia: bytes/seg

    edu.red

    Características (4) Métodos de acceso • Acceso aleatorio: el tiempo para acceder a una locación dada es independiente de la secuencia de accesos anteriores y es constante. Ejemplo la memoria principal. • Acceso secuencial: el acceso debe hacerse en una secuencia lineal específica. Variable. Ejemplo son las unidades de cinta.

    edu.red

    Características (5) • Acceso directo: los bloques ó registros individuales tienen una dirección única que se basa en la localización física. Variable. Ejemplo los discos magnéticos. • Acceso asociativo: memoria caché

    edu.red

    Organización de la memoria (3)

    edu.red

    Celda de memoria

    edu.red

    Memoria de acceso aleatorio RAM (Random Access Memory). Aleatorio significa que se puede acceder a cualquier celda de memoria en el mismo tiempo, independientemente de la posición en la estructura de la memoria. Hay dos tipos: Basada en flip flops: memoria estática (SRAM) Basada en transistores: memoria dinámica (DRAM). Cargas almacenadas en transistores (capacitores) El acceso a las ROM también es de éste tipo

    edu.red

    RAM estática o SRAM (1) El almacenamiento en RAM estática se basa en circuitos lógicos denominados flip-flop, que retienen la información almacenada en ellos mientras haya energía suficiente para hacer funcionar el dispositivo .

    Un chip de RAM estática puede almacenar tan sólo una cuarta parte de la información que puede almacenar un chip de RAM dinámica de la misma complejidad.

    edu.red

    RAM estática o SRAM (2) La RAM estática no requiere ser actualizada y es normalmente mucho más rápida que la RAM dinámica (el tiempo de ciclo de la SRAM es de 8 a 16 veces más rápido que las SRAM).

    También es más cara, por lo que se reserva generalmente para su uso en la memoria de acceso aleatorio(caché).

    edu.red

    RAM dinámica o DRAM DRAM almacenan la información en circuitos integrados que contienen condensadores, que pueden estar cargados o descargados .Almacena más información que SRAM en la misma superficie. Los “capacitores” son más chicos que los flip flop. Como éstos pierden su carga en el transcurso del tiempo, se debe incluir los circuitos necesarios para "refrescar" los chips de RAM cada pocos milisegundos, para impedir la pérdida de su información Usada como memoria principal

    edu.red

    RAM dinámica o DRAM Algunas memorias dinámicas tienen la lógica del refresco en la propia pastilla, dando así gran capacidad y facilidad de conexión a los circuitos. Estas pastillas se denominan casi estáticas. Mientras la RAM dinámica se refresca, el procesador no puede leerla. Si intenta hacerlo en ese momento, se verá forzado a esperar. Como son relativamente sencillas, las RAM dinámicas suelen utilizarse más que las RAM estáticas, a pesar de ser más lentas.

    edu.red

    TIPOS DE MODULOS DE RAM

    edu.red

    SDRAM Synchronous DRAM (SDRAM) Actualmente en DIMMs Acceso sincronizado con un reloj externo Se presenta una dirección a la RAM RAM encuentra los datos (y CPU esperaría la DRAM) SDRAM mueve datos en tiempo del reloj del sistema, la CPU conoce cuando los datos estarán listos. CPU puede hacer otra cosa mientras tiene que esperar Modo Burst permite SDRAM trabajar en bloques

    edu.red

    TIPOS DE MODULOS DE RAM

    edu.red

    Organización interna de la memoria Una celda de memoria es capaz de almacenar un bit de información. Por lo general, varias celdas se organizan en forma de arreglo. En general la celda tiene 3 terminales funcionales capaces de llevar una señal eléctrica: Selección: selecciona una celda de memoria Control: especifica lectura ó escritura Escritura/Lectura de datos

    edu.red

    Las nuevas tecnologías en RAM (1) Enhanced DRAM (ESDRAM)

    Para superar algunos de los problemas de latencia inherentes con los módulos de memoria DRAM standard, se incluye una cantidad pequeña de SRAM directamente en el chip, eficazmente creando un caché en el chip. Permite tiempos de latencia más bajos y funcionamientos de 200 mhz. La SDRAM oficia como un caché dentro de la memoria. 7.Una de las desventajas de estas memorias es que su valor es 4 veces mayor al de la memoria DRAM.

    edu.red

    Las nuevas tecnologías en RAM (3) Sysnclink DRAM – SLDRAM Es una DRAM es una extensión más rápida y mejorada de la arquitectura SDRAM que amplía el actual diseño de 4 bancos a 16 bancos. El ancho de banda de SLDRAM es de los más altos 3.2GB/s y su costo no seria tan elevado.

    edu.red

    Bibliografía recomendada Capítulo 4: Memoria Interna. Stallings. 5ta Ed.

    Link sugerido: http://www.pctechguide.com/14Memory.htm

    edu.red

    ?

    MEMORIA CACHE

    edu.red

    Memoria Caché

    ?Históricamente CPU han sido más rápidas que las memorias. ?El aumento de circuitos que es posible incluir en un chip ?Diseñadores de CPU lo usaron para hacerla más veloz (ej. pipeline). ?Los diseñadores de memoria lo usaron para aumentar la capacidad del chip (más memoria, más grandes decodificadores).

    edu.red

    Memoria Caché (2)

    ?Esta diferencia implica: después que la CPU „emite? una solicitud de lectura a la memoria (bus de direcciones, bus de control) pasan muchos ciclos de reloj antes que reciba la palabra que necesita, por el bus de datos.

    edu.red

    Memoria Caché (3)

    ?En todos los ciclos de instrucción, la CPU accede a memoria al menos una vez, para buscar la instrucción y muchas veces accede a buscar operandos. ?La velocidad a la cual la CPU ejecuta instrucciones está limitada por el tiempo del ciclo de memoria.

    edu.red

    Memoria Caché (4)

    ?El problema no es tecnológico sino económico. Se pueden construir memorias tan rápidas como la CPU, pero para obtener la máxima velocidad tiene que estar dentro del chip de la CPU llegar a la memoria por el bus del sistema es “lento?.

    edu.red

    Memoria Caché (5)

    ?Solución Técnicas para combinar una cantidad pequeña de memoria rápida con una cantidad grande de memoria lenta, para obtener la velocidad de memoria “casi? rápida.

    edu.red

    Funcionamiento de la Memoria Caché

    edu.red

    Principios (1)

    ? El uso de la memoria caché se sustenta en dos principios ó propiedades que exhiben los programas: 1.Principio de localidad espacial de referencia ? cuando se accede a una palabra de memoria, es “muy probable? que el próximo acceso sea en la vecindad de la palabra anterior.

    edu.red

    Localidad Espacial

    Se sustenta en: ?Ejecución secuencial del código

    ?Tendencia de los programadores a hacer próximas entre sí variables relacionadas

    ?Acceso a estructuras tipo matriz ó pila

    edu.red

    Principios (2)

    2.Principio de localidad temporal de referencia cuando se accede a una posición de memoria, es “muy probable? que un lapso de “tiempo corto?, dicha posición de memoria sea accedida nuevamente.

    edu.red

    Localidad Temporal

    Se sustenta en: ?Formación de ciclos o bucles

    ?Subrutinas (Procedimientos o Funciones)

    ?Pilas

    edu.red

    Ejemplo

    Estas 2 sentencias exhiben los dos principios antes mencionados: for i=1 to i=10, do A[i]:=0;

    ?En cada ciclo se consulta cuanto vale i.

    ?Cada asignación A[i]:=0 almacena un 0 en un elemento del arreglo (el siguiente).

    edu.red

    Memoria Cache

    La idea general es que cuando se hace referencia a una palabra, ella y alguna de las vecinas se traen de la memoria grande y lenta a la caché, para que en el siguiente acceso la palabra buscada se encuentre en el caché.

    edu.red

    Memoria Cache

    edu.red

    Aciertos y fallos (1)

    ?La efectividad de la caché se expresa a través de la frecuencia de aciertos: es decir el número de veces que la caché acierta direcciones.

    ?Un acierto de caché sucede cuando los datos que necesita el procesador están almacenados en la caché entonces la CPU obtiene los datos a alta velocidad.

    edu.red

    Aciertos y fallos (2)

    ?Un fallo de caché ocurre cuando los datos buscados no se encuentran en la caché. En este caso la CPU tiene que obtenerlos de la memoria principal, a una velocidad menor.

    edu.red

    MEMORIA EXTERNA SubProgramación II

    edu.red

    Tipos de memoria Externa

    ?Discos magnéticos ?Discos ópticos • CD-ROM • CD-R • CD-RW • DVD ?Cintas Magnéticas

    edu.red

    Discos Magnéticos

    Platos • Superficies de Al cubiertos con óxido de Fe, material magnético.

    ?Ahora también se usa vidrio • Se dilata menos que el Al. • Superficie más uniforme. • Reducción de defectos superficiales.

    edu.red

    Principios Físicos

    Pequeñas áreas del disco son magnetizadas en diferentes direcciones por un transductor. Debe existir un movimiento relativo entre disco y el transductor al momento de la lectura/escritura.

    Cambios en la dirección de magnetización es lo que se detecta en la lectura

    edu.red

    Mecánica de Lectura y Escritura

    Lectura y escritura es a través de una cabeza transductora (bobina).

    Durante lectura/escritura, la cabeza es estacionaria y el plato gira.

    Se almacenan ceros y unos por medio de la magnetización de pequeñas áreas del material.

    edu.red

    edu.red

    Organización de los Datos

    Anillos concéntricos: pistas ó tracks. • Espacios (gaps) entre pistas • Reducir gaps para aumentar capacidad • Mismo No de bits por pista • Velocidad angular constante Pistas divididas en sectores Mínimo tamaño de bloque: sector Bloque: más de un sector (cluster)

    edu.red

    Características posibles

    ?Cabeza fija (raro) o móvil. ?Disco removible o fijo. ?Simple ó doble lado. ?Uno ó múltiples platos. ?Mecanismo de cabeza: • Contacto (Floppy) • Distancia Fija • Aerodinámica (Winchester)

    edu.red

    Estructura de un disco

    Múltiples platos Una cabeza por cara Todas las cabezas se mueven solidariamente Pistas alineadas en cada plato forman cilindros Datos son almacenados por cilindros Reduce movimientos de cabezas Aumenta velocidad de respuesta

    edu.red

    Cilindros

    edu.red

    Constitución de un disco

    edu.red

    Escritura/Lectura del disco magnetico

    Lectura: El flujo magnético del disco se transforma en corriente eléctrica sobre la bobina del cabezal.

    Escritura: La corriente que circula por la bobina provoca un flujo magnético sobre el núcleo y por lo tanto sobre la superficie del disco. El sentido de la corriente ? dirección de magnetización. El núcleo ferromagnético posee una separación llamada gap que permite que el flujo electromagnético se propague hasta la superficie de grabación. Podemos hacernos una idea de su tamaño: Gap = 40 µm.

    edu.red

    Escritura/Lectura del disco magnetico

    edu.red

    Medio de grabación

    Sustrato: Suelen ser de alumnio ya que debe cumplir varios requisitos: • Debe tener un bajo coeficiente de dilatación, pues la fuerza centrífuga de la rotación podría deformar el soporte difucultando la lectura y escritura. • La superficie debe ser muy lisa.

    Superficie magnetizable: Se trata de una capa de material magnético y por tanto susceptible a los campos electromagnéticos. • En general se utilizan dos tipos de capas: óxido y película delgada.

    edu.red

    Pistas

    Pistas (Tracks) Cada una de las lineas concéntricas en que se divide la superficie de un disco.

    Una pista es un anillo circular sobre un lado del disco. Cada pista tiene un número. El diagrama muestra 3 pistas. 

    edu.red

    Sectores

    Se llama sector de un disco, una parte en forma de cuña del mismo. Cada sector está numerado.

    En un disquete de 5 1/4” hay 40 pistas con 9 sectores cada una.  En un disquete de 3 1/2” hay 80 pistas con 9 sectores cada una. De manera que, en un disquete de 3 1/2” hay el doble de lugares que en un disquete de 5¼” .

    edu.red

    Bloques

    Bloque (Clusters) Un cluster es un conjunto de sectores de pista , desde 2 a 32 o más, dependiendo del esquema de formateo que se use.

    El esquema más común para PC determina la cantidad de sectores de pista por cada cluster sobre la base de la capacidad del disco.

    Un disco rígido de 1.2 gigabytes tendrá el doble de clusters que un disco rígido de 500 MB. 

    edu.red

    Pista y Sector

    Un número entero de sectores se graban en una pista.

    El sector es la unidad de transferencia de/hacia el disco.

    edu.red

    Disposición de datos en el disco

    edu.red

    Cilindros

    Cilindro (Cylinder) Pistas de todos los platos que equidistan del eje.

    Es decir, pistas a las que acceden las cabezas cuando el brazo no se mueve.

    Ejemplo: Parámetros de un disquete de 3’5 pulgadas,1’44MBytes: – 80 Cylinders, 2 Heads, 512 Bytes/Sector, 18 Sectors/Track – Multiplicando: 80 x 2 x 18 x 512 = 1.474.560 bytes

    edu.red

    Capacidad del disco

    Se desperdicia espacio en pistas externas. Hoy en día se usan zonas para incrementar la capacidad • c/zona tiene fija la cantidad de bits/pista. • requieren circuitos más complejos.

    edu.red

    Sector típico Sucesión o serie de bits divididos en campos ? Encabezado con información para sincronizar la lectura e identificar el sector. ? Datos con longitud en bytes expresada usualmente como potencia de 2. ? Código para errores con información para detectar y/o corregir posibles errores.

    edu.red

    Velocidad de giro del disco

    Rota a velocidad angular constante – CAV (rpm) Un bit más cercano al centro gira más lento que un bit en la periferia. Los bits (sectores) ocupan distinto espacio en diferentes pistas. En lectura o escritura se requiere sólo mover la cabeza hasta una pista y esperar un sector. Determina la velocidad de transferencia de datos (bits/seg).

    edu.red

    Velocidad de giro del disco

    El procedimiento para leer/escribir datos en un disco duro tiene 4 pasos:1. Búsqueda (seek)2. Rotación (Latencia)3. Ubicación4. Transferencia de datos

    Ver animación en el blog o desde:

    http://www.jegsworks.com/Lessons-sp/lesson6/lesson6-5.htm

    edu.red

    Tiempos

    1. Tiempo de seek (búsqueda) Mover al cilindro (o pista) correcto

    2. Tiempo de latencia (por rotación) Esperar que el sector “pase” por debajo de la cabeza

    3. Tiempo de Acceso: T.seek + T.latencia

    4. Tiempo Total: T. de Acceso + T. de Transferencia de datos

    edu.red

    Formato

    Define cantidad, tamaño y función de distintos campos en cada pista • Hardware: tamaño de sector fijo por marcas físicas. •Software: tamaño de sector determinado por S.O.

    edu.red

    Bibliografía

    Capítulo 5: Memoria Externa. Stallings. 5ta Ed.

    Link sugerido http://www.pctechguide.com/02Storage.htm