Memoria Principal Arquitectura de la Memoria Principal Memoria

  • Slides: 18
Download presentation
Memoria Principal Arquitectura de la Memoria Principal

Memoria Principal Arquitectura de la Memoria Principal

Memoria Principal La Memoria Principal, comúnmente referida como Memoria RAM, es uno de los

Memoria Principal La Memoria Principal, comúnmente referida como Memoria RAM, es uno de los componentes fundamentales de todas las computadoras modernas que, acoplado a unidad central de procesamiento (CPU), conforman el modelo arquitectónico de computadora conocido como Arquitectura Von Neumann. Esta memoria es utilizada para almacenar los datos e instrucciones de los programas (procesos) que están siendo ejecutados en la computadora. La memoria principal generalmente se distingue por tener una gran capacidad de almacenamiento, pero una lenta velocidad de acceso. • La memoria principal es de tipo semiconductor y de acceso aleatorio. • Es comúnmente implementada en memoria RAM (Random Access Memory, permite tanto operaciones de escritura como de lectura en la memoria), pero que también, en ocasiones, puede contener partes de memoria ROM (Read Only Memory, permite únicamente operaciones de lectura de la memoria).

Memoria Principal El elemento básico de una memoria tipo semiconductor se conoce como celda

Memoria Principal El elemento básico de una memoria tipo semiconductor se conoce como celda de memoria, la cual permite almacenar un solo bit. Independientemente de que existan varias tecnologías electrónicas para implementar estas celdas de memoria, una celda de memoria semiconductor tiene comúnmente las siguientes propiedades: • Contiene o representa uno de dos estables (o semiestables) posibles, generalmente implementados por dos valores o rangos de valores de voltaje, usados para representar los valores binarios 1 y 0.

Memoria Principal • Permiten que se les escriba (almacene) un 0 o un 1

Memoria Principal • Permiten que se les escriba (almacene) un 0 o un 1 para establecer su estado o valor. • Permiten ser leídas para sentir (sense) o extraer su estado o valor. En la gráfica, la señal select podría corresponder a la señal de salida de un decodificador de direcciones, misma que habilitaría todas las celdas correspondientes a la localidad de memoria cuya dirección coincide con la dirección proporcionada por el registro MAR al bus de direcciones. La señal de control podría indicar una operación de lectura (R) o escritura (W). Las líneas Data in y Sense podrían ser una misma línea en el bus de datos e instrucciones. Una localidad de memoria es la unidad de almacenamiento a la que le corresponde una dirección de memoria única y exclusiva. Cada localidad de memoria está compuesta por el número de celdas acorde al número de bits por localidad. Por ejemplo, en una computadora PC, la memoria está organizada en localidades de 8 bits (1 byte), es decir, la memoria es direccionable en bytes, por lo que cada localidad está compuesta por 8 celdas de memoria de un bit cada una.

Memoria Principal Memorias Tipo Semiconductor de Acceso Aleatorio RAM y ROM Todos los tipos

Memoria Principal Memorias Tipo Semiconductor de Acceso Aleatorio RAM y ROM Todos los tipos de memoria principal que se ven en esta clase son de tipo acceso aleatorio, lo que significa que las palabras o localidades de memoria son manipuladas mediante una lógica de direccionamiento incrustada en el hardware de la computadora. Anteriormente se mencionó que la memoria principal es una memoria de tipo semiconductor. Entre las memoria de tipo semiconductor, tenemos la más común, la memoria RAM (Random Access Memory, permite tanto operaciones de escritura como de lectura en la memoria), y la memoria ROM (Read Only Memory). Nota: El término RAM es frecuentemente mal utilizado, ya que los otros tipos de memoria semiconductor, incluso la memoria ROM, son memorias de de acceso aleatorio.

Memoria Principal Memoria RAM (Random Access Memory – Memoria de Acceso Aleatorio) En una

Memoria Principal Memoria RAM (Random Access Memory – Memoria de Acceso Aleatorio) En una memoria RAM es posible leer de la memoria como escribir en ella de manera fácil y rápida. Una de sus características es que es volátil; es decir, a una memoria RAM hay que energizarla ininterrumpidamente o, de lo contrario, la información se pierde. Entonces, una memoria RAM puede ser usada únicamente para almacenamiento temporal. La tecnología de la memoria RAM puede ser dividida en dos tecnologías: la RAM Dinámica (DRAM) y la RAM Estática (SRAM).

Memoria Principal • Memoria RAM Dinámica (DRAM) • Una RAM Dinámica (DRAM) está hecha

Memoria Principal • Memoria RAM Dinámica (DRAM) • Una RAM Dinámica (DRAM) está hecha con celdas que almacenan información mediante la carga de un capacitor, por lo que es esencialmente un dispositivo análogo. El Capacitor puede almacenar cualquier carga dentro de un rango; un valor de umbral o referencia determina si la carga es suficientemente baja para ser interpretada como un 0 o suficientemente alta para ser interpretada como un 1. • Dado que la tendencia natural de un capacitor es la de descargarse, las DRAMs requieren de un refrescamiento periódico de la carga del capacitor para mantener el valor adecuado almacenado. El término dinámica se refiere a esta tendencia de fuga de la carga almacenada, aún si la energía eléctrica se aplica continuamente. • Una DRAM es una memoria de alta densidad, es decir, más bits por unidad de área, ya que el circuito por celda es mínimo. o o o La línea de dirección (proveniente del decodificador de direcciones) es activada cuando el valor de bit de esta celda va a leerse o escribirse. El transistor actúa como un interruptor que está cerrado (permite que la corriente fluya) si se aplica un voltaje a la línea de dirección y abierto (no fluye corriente) si no existe un voltaje en la dirección de voltaje. Para la operación de escritura, una señal de voltaje es aplicada a la línea de bit; un voltaje alto representa un 1, y un voltaje bajo representa un 0. Entonces, una señal es aplicada a la línea de dirección, permitiendo que se transfiera una carga al capacitor. Para la operación de lectura, cuando se selecciona una línea de dirección, el transistor se enciende y la carga almacenada en el capacitor es transferida a la línea de bit y a un amplificador. El amplificador compara el voltaje del capacitor con un valor de referencia y determina si la celda contiene un 1 lógico o un 0 lógico. La lectura de la celda descarga el capacitor, el cual debe ser recargado para completar la operación.

Memoria Principal • Memoria RAM Estática (SRAM) • Una RAM estática (SRAM) es un

Memoria Principal • Memoria RAM Estática (SRAM) • Una RAM estática (SRAM) es un dispositivo digital, el cual usa los mismos elementos lógicos usados en el procesador. En una SRAM, los valores binarios son almacenados en configuraciones de flip-flops. • Una SRAM mantiene el valor del dato contenido, siempre y cuando se le suministre energía eléctrica al circuito. A diferencia de una DRAM, no requiere de refrescamiento. • Una estructura típica de SRAM para una celda individual consiste en 6 transistores (se requieren 6 transistores por bit, por lo que la densidad de una SRAM es menor a la de una DRAM).

Memoria Principal Memoria ROM (Read Only Memory – Memoria de Solo Lectura) Como su

Memoria Principal Memoria ROM (Read Only Memory – Memoria de Solo Lectura) Como su nombre lo sugiere, una memoria de solo lectura (ROM – Read Only Memory) contiene un patrón permanente de datos que no puede ser cambiado. Es posible leer una ROM, pero no es posible escribir en ella. Una ROM es no volátil; esto es, no se requiere una fuente de poder para mantener los valores de los bits en memoria. • Una aplicación importante de la ROM es como almacenamiento de microprogramación, tal como es el caso de las unidades de control microprogramadas. Otras aplicaciones potenciales incluye: • • Almacenamiento del BIOS (Basic Input Output System – Sistema Básica de Entrada y Salida) usado para diagnosticar un sistema de cómputo al iniciar su operación, cargar algunos drivers y ejecutar el programa de arranque (bootstrap) encargado de cargar e ceder control al sistema operativo. Librería de subrutinas para funciones frecuentemente usadas. Programas del sistema. Tablas de funciones. • Para un requerimiento de tamaño modesto, la ventaja de una ROM es que los datos o el programa se encuentran permanentemente en la memoria principal y nunca deben ser cargados de un dispositivo de almacenamiento secundario. • Una ROM es fabricada como cualquier otro chip en el que los datos son alambrados (fijados) en el chip durante el proceso de fabricación. Esto resulta en dos problemas : • El paso de inserción de datos implica un costo fijo relativamente grande, ya sea que se fabriquen una o miles de copias del mismo ROM. • No hay posibilidad de error. Si un bit está equivocado, todos los ROMs del mismo bloque de producción deben ser desechados.

Memoria Principal Lógica de un Chip de Memoria Como cualquier otro producto de circuitos

Memoria Principal Lógica de un Chip de Memoria Como cualquier otro producto de circuitos integrados, la memoria semiconductor viene empaquetada en chips. Cada chip contiene un arreglo de celdas de memoria. • Anteriormente se vio que en la jerarquía de memoria siempre había ventajas y desventajas al optar por velocidad, capacidad y costo. Esto también existe cuando consideramos la organización de las celdas de memoria y su lógica funcional en un chip. • En el caso de memorias semiconductoras, uno de los aspectos claves de diseño es el número de bits de datos que pueden ser leídos/escritos a la vez. • En un extremo tenemos la organización en la que la disposición física de las celdas en el arreglo de memoria es el misma que la del arreglo lógico (tal como lo percibe el procesador) de las palabras en memoria. El arreglo está organizado en W palabras de B bits cada una. Por ejemplo, un chip de 16 Mbits puede ser organizado como 1 M de palabras de 16 bits. El otro extremo es la llamada organización un-bit-por chip, en la que los datos son leídos/escritos un bit a la vez.

Memoria Principal Ejemplo de lógica de un chip de memoria: Organización de una DRAM

Memoria Principal Ejemplo de lógica de un chip de memoria: Organización de una DRAM de 16 Mb (Megabits)

Memoria Principal o Hay varios arreglos físicos posibles. En cualquier caso, los elementos del

Memoria Principal o Hay varios arreglos físicos posibles. En cualquier caso, los elementos del arreglo (celdas) están conectados por los cruces (operación and) de líneas horizontales (filas o rows) y líneas verticales (columnas o columns). Las líneas horizontales las provee un decodificador de fila y las verticales un decodificador de columna. o En este ejemplo, se pueden leer o escribir 4 bits a la vez (localidades de 4 bits). Lógicamente, el arreglo de memoria está organizado como cuatro matrices cuadradas de 2048 X 2048 elementos, cada una de ellas contribuyendo con una celda de un bit para conformar en conjunto la localidad de 4 bits. Para tener acceso a una localidad de memoria, ya sea para leer o escribir, se requiere direccionar una celda (bit) en cada una de las 4 matrices (las 4 celdas que conforman la localidad o palabra tienen la misma dirección en cada matriz). o Ya que solo 4 bits son leídos o escritos a esta DRAM, deben haber múltiples DRAMs conectadas al control de memoria para leer/escribir una palabra de datos en el bus. Si la palabra es de 32 bits, se requieren 8 módulos DRAM como el de este ejemplo. o Ya que en cada matriz se tienen 2048 X 2048 = 222 celdas de memoria, se requieren direcciones de 22 bits para especificar de manera única una celda de memoria en cada matriz.

Memoria Principal

Memoria Principal

Memoria Principal

Memoria Principal

Memoria Principal Organización Modular Si un chip de RAM contiene solo un bit por

Memoria Principal Organización Modular Si un chip de RAM contiene solo un bit por palabra, entonces se requerirá al menos un número de chips igual al número de bits por palabra. Ejemplo: • Sistema de memoria de 256 K palabras de 8 bits (256 KB). Cada chip provee un bit de la palabra de 8 bits. • Para 256 K palabras se requieren direcciones de 18 bits (normalmente proporcionadas por el bus de direcciones al cual se conecta el módulo). • La dirección es presentada a 8 chips de 256 K x 1 bit, cada uno de los cuales provee un bit de entrada/salida.

Memoria Principal Si se requiere ampliar el tamaño de memoria a 1 MB, es

Memoria Principal Si se requiere ampliar el tamaño de memoria a 1 MB, es decir 1 M de palabras de 8 bits, un posible arreglo sería el que se muestra en la figura. • En este caso, se tienen cuatro columnas de chips, cada columna contiene 256 K palabras organizadas de la misma manera que la configuración presentada en la página anterior. • Para 1 M de palabras, se requieren direcciones de 20 bits. Los 18 bits menos significativos de la dirección son transmitidos a los 32 módulos. Los 2 bits más significativos restantes son usados como entrada a un módulo de lógica de selección de grupo que envía a una señal de habilitación de chip a una de las cuatro columnas de módulos.

Memoria Principal Memoria Intercalada (Interleaved Memory) La memoria principal se compone de una colección

Memoria Principal Memoria Intercalada (Interleaved Memory) La memoria principal se compone de una colección de chips de memoria DRAM. Un número de chips se pueden agrupar para formar un banco de memoria. Es posible organizer los bancos de memoria en una forma conocida como interleaved memory (memoria intercalada). • Cada banco es independientemente capaz de servir una solicitud de lectura o escritura, de tal manera que un sistema con K bancos puede servir K solicitudes simultáneamente, incrementando la velocidad de lectura o escritura en un factor K. • Si palabras consecutivas de memoria son almacenadas en bancos diferentes, entonces la transferencia de un bloque de memoria se acelera.

Memoria Principal Tipos de DRAM utilizados en computadoras actuales (información complementaria) En el documento

Memoria Principal Tipos de DRAM utilizados en computadoras actuales (información complementaria) En el documento Tipo de Memorias DRAM se puede ver los distintos de tecnologías y circuitos de memoria para computadoras PC actuales.