![]() |
||||||||||
MEMORIAS RAM
La memoria de acceso aleatorio (en inglés: random-access memory cuyo acronímo es RAM) es la memoria desde donde el procesador recibe las instrucciones y guarda los resultados. Es el área de trabajo para la mayor parte del software de un computador. Existe una memoria intermedia entre el procesador y la RAM, llamada cache,
pero ésta sólo es una copia (de acceso rápido) de la memoria principal (típicamente discos duros) almacenada en los módulos de RAM. Se trata de una memoria de estado sólido tipo DRAM en la que se puede tanto leer como escribir información. Se utiliza como memoria de trabajo para el sistema operativo, los programas y la mayoría del software. Es allí donde se cargan todas las instrucciones que ejecutan el procesador y otras unidades de cómputo. Se dicen "de acceso aleatorio" porque se puede leer o escribir en una posición de memoria con un tiempo de espera igual para cualquier posición, no siendo necesario seguir un orden para acceder a la información de la manera más rápida posible.
La frase memoria RAM se utiliza frecuentemente para referirse a los módulos de memoria que se usan en los computadores personales y servidores. En el sentido estricto, los módulos de memoria contienen un tipo, entre varios de memoria de acceso aleatorio , ya que las ROM, memorias Flash, caché (SRAM) , los registros en procesadores y otras unidades de procesamiento también poseen la cualidad de presentar retardos de acceso iguales para cualquier posición. Los módulos de RAM son la presentación comercial de este tipo de memoria, que se compone de integrados soldados sobre un circuito impreso, en otros dispositivos como las consolas de videojuegos, esa misma memoria va soldada sobre la tarjeta principal.
![]() MÓDULOS DE MEMORIA RAM
Los módulos de memoria RAM son tarjetas de circuito impreso que tienen soldados integrados de memoria DRAM por una o ambas caras. La implementación DRAM se basa en una topología de Circuito eléctrico que permite alcanzar densidades altas de memoria por cantidad de transistores, logrando integrados de cientos o miles de Kilobits. Además de DRAM, los módulos poseen un integrado que permiten la identificación del mismos ante el computador por medio del protocolo de comunicación SPD.
La conexión con los demás componentes se realiza por medio de un área de pines en uno de los filos del circuito impreso, que permiten que el modulo al ser instalado en un zócalo apropiado de la placa base, tenga buena conexión eléctrica con los controladores de memoria y las fuentes de alimentación. Los primeros módulos comerciales de memoria eran de formato propietario, es decir no había un estándar entre distintas marcas. Otros módulos propietarios bastante conocidos fueron los RIMM, ideados por la empresa Rambus.
La necesidad de hacer intercambiable los módulos y de utilizar integrados de distintos fabricantes condujo al establecimiento de estándares de la industria como los JEDEC.
RELACIÓN CON EL RESTO DEL SISTEMA
Dentro de la jerarquía de la memoria la RAM se encuentra en un nivel después de los registros del procesador y de las caches. Es una memoria relativamente rápida y de una capacidad media: en la actualidad (año 2010), es fácil encontrar memorias con velocidades de más de 1 Ghz y capacidades de hasta 8 GB. La memoria RAM contenida en los módulos, se conecta a un contralador de memoria que se encarga de gestionar las señales entrantes y salientes de los integrados DRAM. Algunas señales son las mismas que se utilizan para utilizar cualquier memoria: Direcciones de las posiciones, datos almacenados y señales de control.
El controlador de memoria debe ser diseñado basándose en una tecnología de memoria por lo general soporta solo una, pero existen excepciones de sistemas cuyos controladores soportan dos tecnologías (por ejemplo SDR y DDR o DDR1 y DDR2), esto sucede en las épocas de entrada de un nuevo tipo de RAM. Los controladores de memoria en sistemas como PC y servidores se encuentran embebidos en el llamado " North Bridge" o dentro del mismo procesador (en el caso de los procesadores AMD Athlon e interl core i7) y son los encargados de manejar la mayoría de información que entra y sale del procesador.
Las señales básicas en el módulo están divididas en dos buses y un conjunto misceláneo de líneas de control y alimentación. Entre todas forman el bus de memoria:
Entre las características sobresalientes del controlador de memoria, está la capacidad de manejar la tecnología de canal doble (Dual Channel) o tres canales, donde el controlador maneja bancos de memoria de 128 bits. Aunque el ancho del bus de datos del procesador sigue siendo de 64 bits, el controlador de memoria puede entregar los datos de manera intercalada, optando por uno u otro canal, reduciendo las latencias vistas por el procesador. La mejora en el desempeño es variable y depende de la configuración y uso del equipo. Esta característica ha promovido la modificación de los controladores de memoria, resultando en la aparición de nuevos chipsets (la serie 865 y 875 de Intel) o de nuevos zócalos de procesador en los AMD (el 939 con canal doble, reemplazo el 754 de canal sencillo). Los equipos de gama media y alta por lo general se fabrican basados en chipsets o zócalos que soportan doble canal.
ESQUEMA DE UNA MEMORIA RAM
Las entradas de control C y R/W permiten inhibir la memoria y leer o escribir (Read-Write) respectivamente. ![]() Su funcionamiento es el siguiente:
Veamos un diagrama de los tiempos de las señales que intervienen en la operación
![]() Ciclo de lectura ![]() CS AUTORIZACION DE FUNCIONAMIENTO
Una vez expuesto el principio de una memoria RAM en general, vamos a ver cómo están realizadas las de tipo semiconductor.
Se pueden clasificar en dos grupos: Las RAM estáticas están basadas en estructuras biestable con un tipo de transistor u otro.
Las RAM dinámicas están formadas por células dinámicas, (registros de desplazamiento dinámicos), las cuales están basadas en el aprovechamiento de las capacidades estructurales de los transistores MOS, para almacenar una carga determinada. Como sabemos, cada célula de memoria es capaz de almacenar 1 bit. Sin embargo, la forma de trabajo habitual de los sistemas digitales, obliga a almacenar grandes cantidades de información, bien en forma de bits aislados, o bien en forma de palabras.
Ello da lugar a dos tipos diferentes de organización de las memorias RAM En la organización por palabras, al direccionar una posición de memoria, se tiene a la salida una palabra que puede estar constituida por 6, 8, 12, 16, 32, 64 ó incluso más bits.
Sin embargo, al direccionar una posición de memoria organizada en bits, sólo se obtiene un bit de salida. Para poder introducir datos en la memoria, y para poder sacarlos de ella, cada posición de memoria viene dada por su correspondiente "dirección". La dirección es, pues, una palabra binaria que define la posición. Es importante distinguir entre lo que es una dirección de una posición de memoria, y el dato que puede ser almacenado en esa dirección.
En general a nivel de pastillas de memoria en C.I. los fabricantes, ponen a disposición del usuario organizaciones de un bit (por ejemplo: 256 X 1 bits, 4096 x 1 bits, etc.) que asociadas en paralelo permiten obtener palabras de la longitud requerida. Memoria RAM estática.-
Las memorias estáticas tiene células de memoria en forma de flip-flops o biestables. Por tanto, como los flip-flops pueden ser unos más rápidos que otros, así ocurrirá con las memorias. Si se desea una memoria rápida puede elegirse una RAM a base de flip-flops en TTL Schottky o ECL. Si se desea una memoria barata aunque lenta, puede realizarse a partir de flip-flops con MOS. Si el consumo ha de ser extremadamente bajo, deberá elegirse una RAM CMOS. RAM estática bipolar
Una célula de memoria en una memoria bipolar está constituida por un flip-flop sencillo a base de transistores bipolares. RAM ORGANIZADA EN PALABRAS
![]() RAM ORGANIZADA EN BITS
![]() Estos biestables constan de dos transistores multiemisores en acoplamiento cruzado.
![]() LINEA DE SELECCION DE PALABRA
En condiciones normales, un transistor se encontrará siempre saturado y el otro en estado de bloqueo.
- Para leer el estado del biestable, se eleva la tensión de la línea de palabra y el transistor saturado dejará pasar corriente a través de la línea de bit, lo que a su vez es detectado para determinar el estado del biestable..
- Para escribir datos, la tensión de la línea de palabra se eleva nuevamente y la tensión de una de las líneas de bit se baja, provocando que el transistor asociado a esta línea de bit se sature. En la matriz de memoria, todas las celdas de una columna comparten la misma línea de bit, y todas las celdas en una fila tienen la misma línea de palabra.
En cuanto al biestable de una memoria MOS estática, su celda corresponde a la estructura siguiente, formada utilizando transistores unipolares MOS de acumulación.
![]() LINEA DE SELECCION DE PALABRA
Los transistores T1 y T2 trabajan en conmutación y son los encargados de almacenar el bit de información. Por su parte T3 y T4 actúan como puerta de intercambio con el exterior. Cada uno de ellos canaliza una información binaria (0 ó 1) desde la línea de bit correspondiente hasta el transistor de almacenamiento
Cuando T3 y T4 se hallen en reposo, el biestable permanece aislado del exterior, preservando la información memorizada.
La escritura de un bit "0" ó "1" se produce al excitar, a través de T3 o T4 , al par T1-T2; uno de los dos transistores pasará a saturación, mientras que el otro evolucionará hacia el estado de bloqueo (OFF) Dependiendo de la transición de estados del par T1-T2 , el punto de memoria almacenará un estado lógico u otro. Para leer la información almacenada, se introduce un impulso de tensión a través de la línea de selección, lo que provocará una corriente a través de la rama T1-T3 o T2-T4, según sea "0" o "1" el bit almacenado. En definitiva, la lectura se efectúa detectando la presencia de corriente en una u otra línea de bit. Para terminar, diremos que el mayor inconveniente de las RAM estáticas lo constituye su elevado consumo energético, comparativamente con las dinámicas. Ello se debe, como hemos visto, a que las resistencias R1 y R2 consumen permanentemente, al mantener el estado lógico en el que se halla posicionado el biestable. El hecho de que cada celda de memoria incorpore un notable número de componentes, también limita las posibilidades de integración de este tipo de memorias. Algunos ejemplos comerciales de RAM estáticas
Nos referiremos a continuación a modelos reales de memoria de lectura/escritura. Para cada uno de estos integrados se dan sus características básicas más importantes, así como su esquema de bloques y relación de patillas.
La primera característica de cada una de ellas es su organización de almacenamiento o número de palabras de "n" bits que memoriza, extremo importante puesto que especificando su capacidad podemos deducir el número de líneas de direcciones y datos que acceden a la memoria en cuestión. Por ejemplo, una memoria de 128 palabras de 8 bits cada una (128x8), estará dotada de 7 entradas de direccionamiento y poseerá 8 líneas de datos. Esto es lógico ya que para seleccionar los 128 bytes son necesarias 128 configuraciones de direccionamiento, ( 128=27 ), lo que significa que existirán 7 líneas de direcciones. Al mismo tiempo, puesto que cada palabra es de 8 bits, se requerirán 8 líneas para canalizar la entrada y salida de datos. Así pues, observaremos los siguientes tipos de líneas: A0-An: entradas de direccionamiento.
D0-Dn: entrada/salida de datos R/W: contra lectura/escritura. CS0-CSn: selección de chip Las entradas CS pueden ser una o varias y a su vez pueden activarse por niveles "0" ó "1" lógicos.
En el caso de existir varias CS, éstas suelen estar cableadas internamente en forma de puerta "Y". En consecuencia, la selección de chip se conseguirá cuando todas las entradas reciban simultáneamente sus posicionamientos activos. RAM estática 6810 Está organizada en 128 palabras de 8 bits y se emplea mucho en los sistemas basados en el microprocesador 6800 de Motorola, debido a la facilidad de adaptación. Dispone de 6 entradas CS: dos con activación alta y cuatro con nivel bajo.
|
![]() |