Random Access Memory, normalmente conocida como Memoria RAM) es un tipo de dispositivo de almacenamiento de datos. Adopta la forma de circuitos integrados que permiten que los datos se almacenen y sea accesible a ellos mediante ordenes.

La RAM es una memoria volátil, que significa que la información o instrucciones que almacena en ella se pierden en el momento que deja de recibir voltaje. Se trata de una memoria de semiconductor en la que se puede leer como escribir información. Se utiliza normalmente como memoria temporal para almacenar resultados intermedios y datos similares no permanentes. Se dicen “de acceso aleatorio/random” o “de acceso directo” porque los diferentes accesos son independientemente entre sí.

En general, las RAMs se dividen en estáticas y dinámicas. Una Memoria RAM estática mantiene su contenido mientras esté alimentada. En cambio, en una Memoria RAM dinámica la lectura es destructiva, es decir que la información se pierde al leerla, para evitarlo hay que restaurar la información contenida en sus celdas, operación denominada refresco.

Cada celda de la RAM tiene una ubicación o nombre en una nomenclatura aceptada por la comunidad científica: el sistema hexadecimal. Cada depósito de un dato en la memoria (operando, resultado, etc.) se ubica por una dirección en hexadecimal.

Errores de memoria

Considerando que el trabajo que se realiza en la memoria es sumamente delicado, se han creado procedimientos de control de errores a fin de poder confiar en los resultados que muestran las máquinas. Los dos más utilizados son el control de paridad y el método ECC (Error Correction Code). Para entender el porqué hay que tener implementados sistemas de verificación, hay que recordar dos factores que intervienen en el trabajo de la RAM:

1.- La circuitería electrónica de la memoria utiliza pequeños capacitadores (almacenes de electricidad) que se ven afectados por interferencias que reciben al estar permanentemente refrescándose.

2.- El software puede tener error de código.

Afortunadamente ambos escollos continúan siendo superados tecnológicamente por lo que cada vez menos integradores de PCs utilizan RAM sin función de integridad de datos.

El sistema de control de paridad consiste en agregar un BIT adicional a cada Byte (8 bits + 1 bit adicional) transmitido. Contando el número de 1 existentes en el byte, se establece dos normas: adicionar un bit de señal 1 cuando el número de 1 es par (sistema de control de paridad impar), o adicionar un bit de señal 0 cuando la suma de 1 es impar (sistema de control de paridad par).

Un chip de control (Parity generator/checker) compara los datos y pasa a la CPU un mensaje de error cuando no hay correspondencia. El procedimiento detecta el error de transmisión pero no lo corrige. Por supuesto, que esta operación sólo es posible con el apoyo del circuito lógico (Parity generator/checker) y una BIOS que dé apoyo a la función de control de paridad.

Aunque parezca un sistema ingenioso, la practica ha demostrado que este procedimiento no puede detectar todos los errores posibles que podrían presentarse en el byte (varios bits con señal cambiada). Afortunadamente, los fabricantes de RAM siguen mejorando sus tecnologías por lo que cada vez menos integradores de PC utilizan RAM con control de paridad (son más costosos debido a la adición de una pequeña memoria cache en la RAM).

El sistema de control de errores ECC es un sistema basado en complejos algoritmos haciendo que detecte y corrija errores en la RAM. Se utiliza principalmente para respaldar el trabajo en equipos de función crítica (como los grandes servidores o mainframes). Está creada principalmente para detectar y corregir los casos en que hay un bit errado, ante cuya situación ejecuta su operación y el trabajo del sistema continua normal (el operador no se entera). En niveles más avanzados de ECC, cuando detecta varios bits erróneos, puede suceder que lance un aviso en pantalla o que proceda a corregir los errores automáticamente.

A finales de 2003, la empresa Hewlett Packard creó para sus servidores una tecnología llamada Hot Plug RAID que, según ellos, era mejor que el sistema ECC, ya que garantizaba un sistema cero de errores. El sistema radica en un conjunto de dispositivos DIMMs redundantes. De este modo, un servidor dotado de tecnología de memoria Hot Plug RAID utiliza cinco controladores de memoria para gestionar cinco cartuchos DRAM síncronos estándar (SDRAM).

Cuando un controlador de memoria necesita escribir datos en la memoria, divide la línea de cache de datos en cuatro bloques. Cada uno de esos bloques es escrito en cuatro de los cartuchos de memoria. Un motor RAID calcula la paridad de la información y la almacena en el quinto cartucho. Con los cuatro cartuchos de datos y el de paridad, el subsistema de datos es redundante, de forma que si un dato de cualquiera de los DIMM es incorrecto o cualquiera de los cartuchos es extraído, los datos pueden recrearse tomando como referencia los cuatro cartuchos restantes.

Memoria DRAM (Dynamic RAM)

La memoria DRAM es una memoria RAM electrónica construida mediante condensadores. Los condensadores son capaces de almacenar un bit de información almacenando una carga eléctrica. Lamentablemente los condensadores sufren de fugas lo que hace que la memoria DRAM necesite refrescarse cada cierto tiempo: el refresco de una memoria RAM consiste en recargar los condensadores que tienen almacenado un uno para evitar que la información se pierda por culpa de las fugas (de ahí lo de “Dynamic”). La memoria DRAM es más lenta que la memoria SRAM, pero por el contrario es mucho más barata de fabricar y por ello es el tipo de memoria RAM más comúnmente utilizada como memoria principal.

DDR SDRAM (Double Data Rate SDRAM)

Centrándome en la memoria RAM más utilizada en la actualidad, la memoria DDR SDRAM es una memoria síncrona que envía los datos dos veces por cada ciclo de reloj. De este modo trabaja al doble de velocidad del bus del sistema sin necesidad de aumentar la frecuencia de reloj. Se presenta en módulos (circuito impreso donde se encuentra soldados los chips de memoria RAM) DIMM de 184 contactos. En función de la frecuencia del sistema se clasifican en:

* PC 1600 ó DDR200 funciona a 2.5 V, trabaja a 200 MHz, es decir, 100 MHz de bus de memoria y ofrece tasas de transferencia de hasta 1.6 GB/s (de ahí el nombre de PC1600).
* PC 2100 ó DDR266 funciona a 2.5 V, trabaja a 266 MHz, es decir, 133 MHz de bus de memoria y ofrece tasas de transferencia de hasta 2.1 GHz.
* PC 2700 ó DDR333 funciona a 2.5 V, trabaja a 333 MHz, es decir, 166 MHz de bus de memoria y ofrece tasas de transferencia de hasta 2.7 GHz.
* PC 3200 ó DDR400 funciona a 2.5 V, trabaja a 400 MHz, es decir, 200 MHz de bus de memoria y ofrece tasas de transferencia de hasta 3.2 GHz.
* DDR433, DDR466, DDR500, DDR533 y DDR600 son también existentes, pero según muchos ensambladores es poco práctico utilizar DDR a más de 400 MHz, por lo que se han sustituido por la revisión DDR2.
* PC 4200 ó DDR2-533 funciona a 1.8 V, trabaja a 533 MHz, es decir, 133 MHz de bus de memoria y ofrece tasas de transferencia de hasta 4.2 GB/s.
* PC 4800 ó DDR2-600 funciona a 1.8 V, trabaja a 600 MHz, es decir, 150 MHz de bus de memoria y ofrece tasas de transferencia de hasta 4.8 GB/s.
* PC 5300 ó DDR2-667 funciona a 1.8 V, trabaja a 667 MHz, es decir, 166 MHz de bus de memoria y ofrece tasas de transferencia de hasta 5.3 GB/s.
* PC 6400 ó DDR2-800 funciona a 1.8 V, trabaja a 800 MHz, es decir, 200 MHz de bus de memoria y ofrece tasas de transferencia de hasta 6.4 GB/s.
* También existen versiones DDR2-400, DDR2-433, DDR2-500, DDR2-1000, DDR2-1066, DDR2-1150 y DDR2-1200, pero por el mismo motivo que comentaba antes, no se considera práctico DDR2 a menos de 533 MHz ni superiores a 800 MHz.
* DDR3: La explicamos un poco más detallada a continuación debido a que es tipo más rápido en la actualidad y se está empezando a explotar.

Memoria Ram: Arquitectura y funcionamiento

DDR3 SDRAM

En ingeniería electrónica, DDR3 SDRAM o Double Data Rate three Synchronous Dynamic Random Access Memory es una memoria de acceso aleatorio de alta velocidad de almacenamiento que forma parte de la familia SDRAM y una de las muchas DRAM. La memoria DDR3 SDRAM es una mejora respecto a su predecesora DDR2 SDRAM. Los módulos de memoria de la DDR3, utilizan el mismo número de pines que la memoria DDR2, 240 pines.

El principal beneficio de la DDR3 es la capacidad de ejecutar sus buses I/O cuatro veces más rápido que la memoria que contiene las células, lo que permite velocidades de bus más rápido. Sin embargo, una mayor velocidad de bus y un alto rendimiento, es logrado a costa de un mayor tiempo de latencia. Además, el estándar DDR3 permite chips de capacidad entre 512 megabits y 8 gigabits, permitiendo módulos efectivos de memoria hasta un máximo de 16 gigabytes.

La memoria DDR3 reduce un consumo de energía de ~ 17% respecto a las actuales DDR2, ya que el voltaje de las DD3 es de 1.5 V. Este voltaje funciona bien con la tecnología fabricada a 90 nm que utiliza la mayoría de los chips DDR3. Algunos de los fabricantes proponen utilizar transistores de “doble-puerta” para reducir las fugas de corriente.

De acuerdo con JEDEC (Solid State Technology Association), la tensión máxima recomendada es de 1.575 voltios y debe ser considerado como el máximo absoluto ya que se debe de considerar la estabilidad por encima de todo, como se hace en los servidores u otros dispositivos de misión crítica. Aún esto, JEDEC afirma que los módulos de memoria deben de poder soportar hasta los 1.975 voltios antes de incurrir en daño permanente, pero si que pueden no funcionar correctamente a estos niveles.

Cómo ya hemos comentado antes, el principal beneficio de la DDR3 es el mayor ancho de banda, 8 bits de prefetch buffer (4 bits la DDR2 y 2 bits la DDR).

En teoría, los módulos DDR3 pueden transferir datos a una tasa de reloj efectiva de 800 a 1600 Mhz, aunque poco a poco las están perfeccionando más, aumentando su frecuencia hasta 2000 MHz (PC3-16000) y disminuyendo bastantes sus latencias en relación con esta frecuencia (CL 8-8-8-28).

Dual Channel

Dual Channel es una tecnología que permite el incremento del rendimiento gracias al acceso simultáneo a dos módulos distintos de memoria. Esto se consigue mediante un segundo controlador de memoria en el Northbridge (componente del chipset).

El rendimiento de esta tecnología es perceptible en algunas aplicaciones o características del ordenador, como por ejemplo cuando la tarjeta gráfica está integrada en la placa base y utilizan la memoria RAM como memoria gráfica, pero actualmente, con la potencia que tienen los ordenadores actuales, es difícil apreciar dicha tecnología (esto no quiere decir que no sea más eficiente).

Cuello de Botella CPU-RAMPara que el ordenador pueda funcionar en Dual Channel, se debe de tener dos módulos idénticos de memoria DDR, DDR2 ó DDR3 en los slots correspondientes de la placa base, y el chipset de la placa base debe de soportar dicha tecnología (los slots de la placa base suelen tener del mismo color el par de slots para su uso en Dual Channel). Hay que tener en cuenta que las memorias sean totalmente idénticas (Frecuencia, Latencias y Fabricante), ya que en caso contrario puede que haya alguna incompatibilidad y no funcione correctamente.

Reconociendo la placa base que son dos módulos idénticos y que pueden funcionar en Dual Channel, es habilitado el Dual Channel y empieza a utilizar dos canales de datos de 64 bits cada uno, dejando un resultado un ancho de banda de 128 bits para mover los datos de la RAM a la CPU.

memoria

La finalidad de la tecnología Dual Channel ha sido creada para solucionar el problema de los cuello de botella. El aumento de la velocidad y rendimiento del procesador y de otros componentes del ordenador, como el del la memoria RAM, el bus de memoria se hacía pequeño. De esta forma, el controlador de memoria determina los tipos de velocidades de la RAM, así como el tamaño máximo de cada módulo del sistema. Cuando el flujo de datos entre CPU y memoria RAM es incapaz de subastecer a las necesidades de la CPU, es cuando se produce el efecto botella. Aunque el Dual Channel no anule por completo el cuello de botella, si que lo reduce considerablemente.

Fuente: http://www.islabit.com/