Summary

Este documento proporciona una descripción general sobre la unidad de "Memoria". Introduce los conceptos fundamentales de memorias, sus tipos y características. Esta información está organizada para un uso académico o educativo, probablemente como notas de clase o material de estudio.

Full Transcript

UNIDAD 3 - MEMORIAS Resultados de Aprendizaje: Que el alumno pueda: Describir la organización o arquitectura básica de una memoria electrónica o de semiconductores. Identificar las distintos tipos de celdas de memoria y los diferentes clases de memoria. Identificar los distintos tipos de...

UNIDAD 3 - MEMORIAS Resultados de Aprendizaje: Que el alumno pueda: Describir la organización o arquitectura básica de una memoria electrónica o de semiconductores. Identificar las distintos tipos de celdas de memoria y los diferentes clases de memoria. Identificar los distintos tipos de memorias RAM. Identificar los distintos tipos de memorias ROM. Comprender las causas de la elección de un tipo. Definir el concepto de tiempo de acceso y como se compone. Comprender la diferencia entre una memoria SDRAM y una DDR. Explicar el porque de la necesidad de las memorias Cache y cuales son los fundamentos de su utilización. Identificar las partes de una memoria cache y explicar su funcionamiento. Resultados de Aprendizaje: Que el alumno pueda: Explicar el fundamento del funcionamiento de los dispositivos de almacenamiento magnéticos. Identificar y graficar las partes de un disco duro y de una unidad de disco. Describir el funcionamiento básico de las unidad de acceso secuencial. Describir el funcionamiento básico de las unidad ópticas. Características de las memorias Volátiles o No Volátiles Acceso Aleatorio, Directo o Secuencial Lectura-Escritura o Sólo Lectura Primaria o Secundaria 4 Volatilidad Volátil – Retiene información sólo mientras este recibiendo alimentación eléctrica ej: Memorias principal (RAM) del computador No Volátil – Retiene información aún cuando no este siendo alimentada eléctricamente ej: ROM, SSD, Disco Duro 5 Lectura-Escritura (R/W) – Su contenido puede ser actualizado (Escritura), como también accedido por otro dispositivo (Lectura) ejemplo: RAM Sólo Lectura – Sólo puede ser leída ejemplo: ROM Principalmente de Sólo Lectura – Esta diseñada para almacenar información en forma permanente, pero también puede ser actualizada. – ejemplo: SSD, Flash 6 Random (Aleatorio) El tiempo de acceso es independiente de la posición o acceso previo. Directo Se direccionan o identifican bloques de datos El tiempo de acceso es variable Secuencial El tiempo de acceso depende de la ubicación de los datos y de dónde se estaba leyendo previamente. 7 Memoria Principal – Almacena datos e instrucciones que serán procesadas por la Unidad Central de Proceso. ejemplo: RAM o ROM BIOS Memoria Secundaria (Storage) – Retiene información en forma permanente ej: SSD, Disco Duro 8 Tecnología de Construcción Semiconductores – Circuitos integrados (Chips) basados en Silicio (Si) – Se utilizan principalmente transistores y capacitores para almacenar bits – Ejemplos: SRAM, DRAM, Flash Magnéticas – Utiliza patrones de magnetización sobre una superficie con propiedades magnéticas. – Ejemplos: Discos duro, Cintas (DDS, LTO, etc) Ópticas – Almacena información como deformaciones en la superficie de un disco circular, leyéndola con un laser que lo ilumina mientras éste gira – Ejemplos: CD, DVD, Blu Ray Capacidad La unidad de capacidad es el byte Las unidad mas usadas son múltiplos del byte. SI ISO/IEC 80000-13 Símbolo Símbolo decimal binario Kilobyte (KB) 103 Kibibyte (KiB) 210 = 1.024 Megabyte (MB) 106 Mebibyte (MiB) 220 Gigabyte (GB) 109 Gibibyte (GiB) 230 Terabyte (TB) 1012 Tebibyte (TiB) 240 Petabyte (PB) 1015 Pebibyte (PiB) 250 Exabyte(EB) 1018 Exbibyte(EiB) 260 Zettabyte(ZB) 1021 Zebibyte(ZiB) 270 Yottabyte(YB) 1024 Yobibyte(YiB) 280 10 Tiempo de Acceso (Latencia) Tiempo que transcurre desde el inicio de una operación y la finalización de la misma. Pueden ser distintos para lectura o escritura. Tiempo de Ciclo Tiempo que transcurre entre dos operaciones consecutivas. Tiempo de ciclo de lectura (tRC) y tiempo de ciclo de escritura (tWC) 11 ¡¡¿$$$$?!! JERARQUIAS DE MEMORIA 13 Jerarquías de Memoria Un computador necesita: Memorias muy rápidas para almacenar datos e instrucciones que son procesadas por la CPU. Memorias de gran capacidad para almacenar programas y datos en forma permanente o durante largos periodos de tiempo. Obviamente el costo debe ser tal que satisfaga a la industria y a los usuarios. Existe un trade-off ( solución de compromiso ) entre velocidad, capacidad, y costo Los distintos tipos de tecnologías de memoria se combinan y organizan en una Jerarquía para responder a las necesidades del sistema de procesamiento. 14 Niveles de una Jerarquía de Memorias Capacity Capacidad Access latency Tiempo de acceso Costo/GB Cost per GB 100s B ns Reg’s $Millions 10s KB a few ns Cache 1 $100s Ks MBs 10s ns $10s Ks Cache 2 100s MB 100s ns Speed Main DRAM $1000s gap 10s GB 10s ms DISCOS Secondary $10s TBs min+ Tertiary TAPES o CINTAS $1s Se mantiene una copia de un bloque de los datos del nivel n en el nivel n-1 MEMORIAS DE SEMICONDUCTORES ARQUITECTURA DE UNA MEMORIA Col1 Col2 Col3 Col4 Col5 … … Col_n Fila1 bit11 - - - - - - bit1n Bus de L S Fila2 - - - - - - - - Direcciones O E G L Fila3 - - - - - Línea- de bit- - I E C C Fila4 A C Matriz de Memoria I Fila5 D O … E N - Línea -de palabra - - - Celda - de -Memoria - … Fila_m bitm1 - - - - - - bitmn LOGICA DE CONTROL BUFFERS DE E/S Señales de control Bus de Datos MEMORIAS DE LECTURA/ESCRITURA (R/W) RAM SRAM DRAM RAM (Random Access Memory) Memoria de Acceso Aleatorio. El tiempo de acceso es el mismo para cualquier posición de memoria independiente de su ubicación. SRAM MEMORIA DE ACCESO ALEATORIO ESTATICA https://www.youtube.com/watch?v=9JKj-wlEPMY Transistores MOSFET 0 1 Existen distintos símbolos para representar a los MOSFET. Utilizaremos los indicados en el cuadro. Inversor y Transistor CMOS “1” “1” “0” “1” “0” “0” Inversor y Transistor CMOS “1” “0” “1” “0” “1” “0” Celda de una memoria Estática (SRAM) Word line Línea Worddeline palabra Vcc Pass Línea de bit transistor Línea de bit Capacitor Línea Compl. Compl. BitLínea de palabra Bit de bit bit Línea line line deline bit 1(a)bit = 1 Flip-flop DRAM cell (b) Typical SRAM cell 6T = 1 bit Organización o Arquitectura SRAM (Asíncrona) Un chip Chip SRAM de 12 bits organizados en una matriz de 4 filas por 3 columnas. SRAM Organización Interna Bus de Direcciones Selecciona una fila de la memoria. SRAM Bus de Datos Operación de Escritura Bus 0 De 1 Direcciones Proceso de Escritura 1. La CPU pone los datos sobre el bus de datos 2. La CPU pone sobre el bus de direcciones la información (dirección) para seleccionar la fila de bits que se van a escribir (se actualizará la información de los flip-flops seleccionados). 3. La CPU genera una señal de escritura en el bus de control. 4. Los flip-flops seleccionados leen el valor de sus entradas en el momento en que se produce un cambio en el nivel lógico de su entrada de reloj y se produce la actualización de la información guardada en los mismos. La operación de escritura destruye la información guardada con anterioridad. SRAM Bus de Datos Operación de Lectura 𝐑𝐃 Bus 1 De 1 Direcciones DRAM MEMORIA DE ACCESO ALEATORIO DINAMICA Celda de una memoria Dinámica (DRAM) Línea de Palabra (Fila) Transistor de Paso Capacitor Línea de Bit (Columna) 1T- 1C Para leer un bit debe descargarse el capacitor, lo que implica que luego de cada lectura debe restituirse la carga del mismo.(PRECARGA) Como el dato (0/1) depende de la carga del capacitor y estos se descargan con tiempo debe restituirse la carga cada cierto tiempo.(REFRESCO) DRAM Una característica importante de las memorias dinámicas es que la operación de lectura destruye la carga almacenada en el capacitor. Por lo tanto luego de una lectura se realiza una operación que restituye la carga perdida y se conoce como precarga. Esta operación trae como consecuencia que el bit de memoria leído no puede ser vuelto a acceder hasta tanto se termine con la operación de precarga y esto es la causa de definición de tiempo de ciclo. Tiempo de ciclo: tiempo que transcurre entre dos operaciones consecutivas. Esta es otra de las razones por las cuales las memorias de este tipo son mas lentas que las estáticas. Refresco de una DRAM “0” Write Refresco Refresco Refresco VC Almacenado “1” VDD VDD REFRESCO: Operación que devuelve la carga perdida. Normalmente cada memoria debe ser refrescada periódicamente en un tiempo cercano al tiempo de ciclo. CUADRO COMPARATIVO CARACTERISTICAS DRAM SRAM # TRANSISTORES 1 6 CELDA 1T-1C 6T TAMAÑO > LECTURA Destructiva No Destructiva LATENCIA >> UTILIZACION Memoria Principal Caché COSTO >>> Organización o Arquitectura de las DRAM AF MUX AC Un chip DRAM Síncrono Un chip DRAM Síncrono En las memorias SDRAM los cambios de estado están sincronizadas con el reloj del Bus del sistema del computador. (Front Side Bus) Chipset y el controlador de memoria Slots o ranuras y Módulos de memoria Módulo de Memoria Rank 1 Banco 1 Lado 1 16.384x1.024x8 Rank: Conjuntos de chips con un DIMM CS común y con una palabra de 64 2GB Buffers de Datos bits. DDR de E/S DIMM – Dual In Line Memory Module Factores de Forma de DIMMs DDR - Dual Data Rate Memoria DDR1 o simplemente DDR: permite leer o escribir 2 bits por ciclo de reloj. Los buffers de pre-búsqueda para lectura/escritura son de 2 bits. En la figura superior n = 1. SDRAM DDR DDR3 La frecuencia del arreglo de memoria es de 133 Mhz. , mientras que las del bus externo con el controlador de memoria es de 533 Mhz. Como cada acceso realiza una pre búsqueda de 8 bits la velocidad de transferencia es de 1066 Mbps. (DQ0-DQ7) La Tasa de transferencia La Frecuencia del bus La Frecuencia del bus del bus (Ancho de Banda) interno es de 133 MHz externo es de 533 MHz es de 1066 Mbps La frecuencia del reloj externo es 4 veces la del interno y se transfieren 8 bits por cada medio ciclo. Se transfieren 8 bits por cada ciclo del reloj del core o núcleo de la memoria. Todas las memorias DDRx transmiten 2 bits por cada período del reloj del bus. Cada generación ha sufrido mejoras que permiten que trabajen a mayor frecuencia e internamente sus buffers de pre-búsqueda son mas grandes debido a que son mayores la cantidad de bits de la operación interna de pre-búsqueda. MEMORIAS NO VOLATILES ROM PROM MASK ROM EPROM EEPROM EEPROM FLASH ROM PROGRAMABLE POR MASCARA (NOR) Salida del decodificador de direcciones Ausencia de un Transistor → “1” Almacenado Presencia de un Transistor → “0” Almacenado ROM de 4 palabras de 4 bits. Datos de salida ¡Observar que una memoria ROM es un circuito combinacional! Cm = f (Rn) Características de una memoria Flash Comparación entre un transistor MOS y una celda Flash Acumulación de carga Celda FLASH https://www.youtube.com/watch?v=vUDP1XTmF9A https://www.youtube.com/watch?v=AO7CNNZmtTw Una celda Flash Programación o Escritura: Se aplica una tensión alta a la puerta de control (Control Gate). Los electrones quedan atrapados en la compuerta flotante. En una operación de lectura se lee un “0” Borrado: Se aplica una tensión alta al substrato de silicio (Drenador) y la compuerta flotante pierde la carga. En una operación de lectura se lee un “1” Tipos de configuraciones de Flash Menor tiempo de acceso Mayor Densidad de integración EPROM Compuerta Flotante Tiene una compuerta flotante. La carga almacenada puede ser removida al exponerla a Luz Ultravioleta. Almacenamiento Secundario Storage DISCOS RIGIDOS O DUROS COMPONENTES DE UN DISCO DURO Actuador Brazo Alimentación Controladora Interface Partes de un plato Cada plato tiene dos caras y está divido en pistas concéntricas. Las pista están divididas en sectores de igual tamaño ( 512 Bytes o 4KB) Se denomina cilindro a todas las pistas que se encuentran la misma distancia del eje de los platos. Principio de funcionamiento La superficie de los platos de alumnio o cristal, está recubierta de una delgada película de un material con propiedades magnéticas como el óxido de Fe o Co. Las partículas de estos materiales que constituyen los denominados dominios magnéticos tiene la habilidad de alinearse en una dirección específica dependiendo de la circulación de una corriente eléctrica que circula por las cabezas de lectura/escritura. (Grabación magnética) Principio de Funcionamiento Escritura: El sentido de circulación de la corriente eléctrica en la cabeza (o el cabezal) de escritura ordena los dominios magnéticos de una pista en un sentido (bit = 1). Al cambiar el sentido se interpreta como un cero (bit=0). Lectura: El movimiento de la pista con respecto a la cabeza de lectura produce un campo magnético que induce una corriente eléctrica que dependiendo del sentido será interpretada como uno(1) o como cero(0) Capacidad Se mide en GigaB o TeraB. Capacidad de una unidad de disco o drive: Es igual al número de cilindros por la capacidad de un cilindro. Capacidad de un cilindro: Es igual al número de caras o superficies por la capacidad de una pista Capacidad de una pista: Es igual al número de sectores/pista por el número de bytes/sector Esta relacionada, desde el punto de vista de la tecnología de fabricación del disco, con la densidad areal del plato, que depende del número de pistas por pulgada por el número de bits por pulgada (tpi x bpi) Tiempo de acceso 3) Tiempo de transferencia 2) Latencia Rotacional Sector deseado 1) Tiempo de búsqueda Tiempo de acceso [ms] = T. de búsqueda + Latencia rotacional + T. de transferencia Tiempo de acceso Tiempo de Búsqueda: Es el tiempo que tarda el disco en desplazar el brazo desde la posición actual hasta la pista deseada. Los valores medios se encuentran entre 3 ms y 14 ms. Latencia Rotacional: Es el tiempo que tarda en situarse sobre el sector deseado, una vez que se encuentra sobre la pista correcta. Depende de la velocidad de rotación del disco. Para discos de 15.000 rpm el valor promedio es de 2 ms. Tiempo de transferencia: Es el tiempo en que tarda en transferir un bloque de bits. Tiempo del controlador: Tiempo que le toma al controlador realizar una operación de lectura o escritura Tiempo de acceso: Es la suma de los tiempos anteriores Algunos enlaces a videos en Youtube https://www.youtube.com/watch?v=oC4ZtMmaHPQ https://www.youtube.com/watch?v=NtPc0jI21i0 https://www.youtube.com/watch?v=wteUW2sL7bc DISCOS DE ESTADO SOLIDO SSD Características de una memoria Flash VTotal 1 Bit/Celda 2 Bits/Celda 3 Bits/Celda Un Bloque NAND Flash con multiples “dies” Wafer u Oblea Die Chip SSD Organización de una memoria Flash DISCOS OPTICOS Un rayo laser graba (Escritura) la información en pistas en forma de espiral, formando mesetas y valles (pits y lands). Otro laser de menor potencia ilumina las pistas y un sistema óptico recibe la luz reflejada y la decodifica como 1’s o 0’s según el laser incida sobre un valle o una meseta (Lectura). Mientras menor la longitud de onda (λ) del laser son menores los tamaños de los valles y mesetas y mayor la cantidad de información que se puede almacenar. Operación de lectura de un CD-ROM Como funciona un cd/dvd. https://www.youtube.com/watch?v=Vv4EqePYt9I Dispositivos de acceso secuencial La Cinta Magnética (Tape) Un Carrete de Cinta IBM 726 Capacidad (algunos MB) Año 1952 LTO (Linear Tape Open) Librería de Cintas (Tape Library) Almacena cientos de Petabytes MEMORIA CACHE Tacceso ~ 100s ns palabra 1 GHz 109 ciclos/s DRAM 10-9 s = 1ns cluster cluster MIPS: Millones de Instrucciones por segundo Tacceso ~ 10s ms palabra palabra bloque CPU CACHE Fallo o (SRAM) Miss DRAM bloque Acierto o Marco de Hitt bloque cluster cluster DISCO DURO Cómo funciona una memoria Cache La funcionalidad de la memoria Cache esta vinculada al principio de las jerarquías de memorias. Siempre se guarda una copia de parte de la información almacenada en el nivel superior Ln en el inferior L(n-1) Cuando el procesador busca un dato o instrucción en el sistema de memoria, lo hace siguiendo el orden de la jerarquía. Si la información no se encuentra en el nivel inferior inmediato, la búsqueda se realiza en el nivel siguiente y así hasta encontrar el dato o instrucción. Cuando se encuentra el dato ( o instrucción) se copia en el nivel inferior no sólo el dato buscado, sino también los bytes contiguos (bloque o línea). En la siguiente búsqueda existe una gran probabilidad (>90%) de que la información se encuentre en el nivel inferior mas cercano. Esto disminuye el tiempo de acceso y mejora la performance de la computadora u ordenador. Porque funciona esto? Principio de Uso Principio de localidad de las referencias: Los programas tienden a reusar datos e instrucciones en direcciones de memoria próximas entre sí o que han sido usados recientemente. – Localidad Temporal: Los objetos recientemente referenciados es muy probable sean referenciados en el futuro cercano. – Localidad Espacial: Los objetos con direcciones próximas o incluso con la misma dirección tienden a volver a ser referenciados. sum = 0; for (i = 0; i < n; i++) sum += a[i]; return sum; Datos –Referencia a elementos de un arreglo “Localidad Espacial” –Referencia a la iteración de la variable sum “Localidad Temporal” Instrucciones –Referencia a instrucciones en secuencia “Localidad Espacial” –Referencias en un ciclo repetitivo “Localidad Temporal” CLASIFICACION DE CACHES SEGÚN SU UBICACION L1 Nivel 1. Dentro del Chip de la CPU. Arquitectura Harvard, datos e instrucciones en caches separadas L2 Nivel 2. Dentro del Chip de la CPU. De mayor tamaño que L1 L3 Nivel 3. Exterior a la CPU, en la Motherboard, de mayor tamaño que L2 Placa Madre 94 Arquitectura Harvard DRAM BANKS DRAM INTERFACE DRAM MEMORY CORE 1 CORE 3 CONTROLLER 96 L2 CACHE 1 L2 CACHE 3 L2 CACHE 0 L2 CACHE 2 CORE 2 CORE 0 SHARED L3 CACHE Componentes de una memoria Cache Memoria Cache o Cache de Datos o Data Cache (SRAM) Lógica de Administración de la memoria Cache o Controlador de Cache Directorio de la Memoria Cache o Memoria de Etiquetas o TAG RAM CPU B A L O D D Q D A U Controlador E R Directorio de Cache T _ E A P S Directorio A Hit o acierto S Bloque 1 B L Bloque 2 A Bloque 3 U B Caché R B S A U Bloque k S Bloque 1 Bloque 2 Bloque 3 DRAM Bloque m LECTURA DE UNA MEMORIA CACHE CPU genera dirección Acceso a DRAM para obtener dato ¿Está en cache? Asignar bloque en cache Leer dato y pasar a CPU Copiar bloque en cache Pasar dato a CPU Continuar Glosario Nivel inferior: Nivel mas próximo a la CPU en la jerarquía de memorias. Bloque o Línea: Unidad de transferencia entre la DRAM y la Caché. (Tipicamente 64 bytes) Cache Hit o acierto: La CPU encuentra el dato buscado en el nivel inferior. Cache Miss o fallo: El dato buscado por la CPU no se encuentra en el nivel inferior. Hit rate o tasa de aciertos: Porcentaje de estos respecto del total de búsquedas o lecturas. Penalidad por fallos: Tiempo para reemplazar un bloque desde el nivel superior, incluido el tiempo para actualizar la CPU.

Use Quizgecko on...
Browser
Browser