domingo, 24 de noviembre de 2013

1.8.9 Módulos de memoria RAM.

Memoria RAM: Su proceso

Su función es primordial, ya que se ocupa de almacenar la información de las instrucciones que el procesador debe gestionar, los resultados de dichas tareas y cualquier otro dato que fuera necesario.
En el proceso de encendido, la rutina POST (Power On Self Test o autodiagnóstico de encendido) del BIOS chequea la presencia o no de la misma, y emite una serie de beeps en caso de que no estuviera instalada o no fuera compatible (cada fabricante de BIOS tiene una secuencia específica de beeps de error, que puede encontrarse fácilmente en Internet). Luego, el BIOS puede realizar un chequeo básico de la memoria y detectar la presencia de fallas en ella.
ACTUALMENTE, LA MEMORIA DDR3 HA COMENZADO UN LENTO DESCENSO DE PRECIOS; SERÁ CUESTIÓN DE EVALUAR SI CONVIENE ESPERAR O IR PORLA DDR4.

Historia

Los primeros módulos de memoria RAM tenían 30 contactos, con capacidades de 256 KB, 1 MB o 2 MB, y había que conectar de a cuatro módulos para completar un banco de memoria. Se denominaban SIMM (Single In-line Memory Module) y tenían 30 pines, que rápidamente fueron reemplazados por los SIMM de 72 contactos. Luego siguieron los módulos DIMM (Double In-line Memory Module) de 168 contactos, de mayor capacidad, más rápidos y con la posibilidad de conectarse de a uno por banco de memoria, con aún mayores velocidades de acceso (latencias), mayor densidad (más MB) y mayor velocidad de proceso (entre 100 y 133 MHz). Hasta aquí, todos los módulos de memoria estaban agrupados en el conjunto de las SDR, o Single Data Rate.

Esta placa madre permite colocar tres módulos de memoria en Triple Channel. Con esto, la velocidad de transmisión de datos aumenta en forma considerable, aunque por ahora está reservada para algunos modelos de motherboards.

DDR Y DDR 2

Los sucesores inmediatos fueron los módulos denominados DDR, o Double Data Rate, que tienen la capacidad de transferir el doble de datos por ciclo que los modelos anteriores. Los primeros modelos DDR vieron la luz en 2001 con una latencia de 10 ns (nanosegundos) y una velocidad de 100 MHz por ciclo; fueron conocidos como DDR-200 (ya que, al duplicar la información manejada por ciclo, tienen una velocidad teórica de 200 MHz). Luego aparecieron las versiones DDR266 (2×133 MHz), DDR300, DDR333, y así sucesivamente hasta llegar a las DDR533 (2×266 MHz).
La aparición de los módulos DDR2 de 240 contactos permitió duplicar la velocidad de los anteriores DDR, gracias a un pequeño buffer que almacena 4 bits en vez de los 2 de la arquitectura DDR, para luego enviarlos.
Esto redunda en la duplicación de la velocidad nominal de los módulos sin necesidad de aumentar la velocidad real. Por último, tenemos lo más avanzado de la tecnología en materia de memoria: DDR3. Si bien también tienen 240 contactos, estas memorias son incompatibles con las DDR2, dado que la muesca en la placa es diferente. Poseen una latencia mayor (son más lentas) que las DDR2, la frecuencia es superior y el consumo de energía es sensiblemente menor, además de permitir módulos de hasta 16 GB de capacidad. Pero aquí no termina la historia, ya que las industrias que manejan la fabricación de memorias RAM avanzan con gran rapidez, y nos sorprenden con nuevas velocidades y tamaños de memoria cada cierto tiempo.
Los primeros módulos DDR podían funcionar en lo que se conoce como Single Channel, es decir, cada memoria tenía un solo canal de comunicación. Luego apareció la tecnología Dual Channel, que permitía acceder a dos módulos de memoria en simultáneo, con lo cual aumentaba la velocidad nominal de acceso a memoria por parte de la plataforma. Para aprovechar esta tecnología hay que instalar dos módulos de idénticas características en cada banco de memoria del motherboard (los bancos Dual Channel se diferencian con dos colores distintos). Lo más nuevo es el Triple Channel, exclusivo de las memorias DDR3, que da la posibilidad de conectar tres módulos por cada banco de memoria; esto redunda en una velocidad de acceso a los datos mucho mayor. Esta tecnología está presente en algunos modelos de motherboards de gama media y gama alta.

¡MÁS MEMORIA!

Si trabajamos con aplicaciones de edición de video y/o de sonido, nos será de suma utilidad contar con una buena cantidad de memoria RAM en nuestra computadora. Hoy en día, hay motherboards de gama alta que soportan hasta 24 GB corriendo en Triple Channel (seis módulos de 4 GB cada uno). ¿Qué opinan, serán suficientes?

Funcionamiento de la memoria de acceso aleatorio

La memoria de acceso aleatorio consta de cientos de miles de pequeños capacitadores que almacenan cargas. Al cargarse, el estado lógico del capacitador es igual a 1; en el caso contrario, es igual a 0, lo que implica que cada capacitador representa un bit de memoria. 
Teniendo en cuenta que se descargan, los capacitadores deben cargarse constantemente (el término exacto es actualizar) a intervalos regulares, lo que se denomina ciclo de actualización. Las memorias DRAM, por ejemplo, requieren ciclos de actualización de unos 15 nanosegundos (ns). 
Cada capacitador está acoplado a un transistor (tipo MOS), lo cual posibilita la "recuperación" o modificación del estado del capacitador. Estos transistores están dispuestos en forma de tabla (matriz), de modo que se accede a la caja de memoria (también llamada punto de memoria) mediante una línea y una columna. 
representación de una memoria

Cada punto de memoria se caracteriza así por una dirección que corresponde a su vez a un número de fila y a un número de columna. Este acceso no es instantáneo; el período de tiempo que lleva se denomina tiempo de latencia. En consecuencia, el tiempo necesario para acceder a la información en la memoria es igual al tiempo del ciclo más el tiempo de latencia. 
De este modo, en el caso de la memoria DRAM, por ejemplo, el tiempo de acceso es de 60 nanosegundos (35 ns del tiempo del ciclo más 25 ns del tiempo de latencia). En el ordenador, el tiempo del ciclo corresponde al opuesto de la frecuencia de reloj; por ejemplo, en un ordenador con una frecuencia de 200 MHz, el tiempo del ciclo es de 5 ns (1/200*106). 
En consecuencia, en un ordenador con alta frecuencia, que utiliza memorias con un tiempo de acceso mucho más prolongado que el tiempo del ciclo del procesador, se deben producir estados de espera para que se permita el acceso a la memoria. En el caso de un ordenador con una frecuencia de 200 MHz que utiliza memorias DRAM (y con un tiempo de acceso de 60 ns), se generan 11 estados de espera para un ciclo de transferencia. El rendimiento del ordenador disminuye a medida que aumenta el número de estados de espera, por lo que es recomendable implementar el uso de memorias más rápidas. 

Formatos de módulos RAM

Existen diferentes tipos de memoria de acceso aleatorio. Estas se presentan en forma de módulos de memoria que pueden conectarse a la placa madre. 
Las primeras memorias fueron chips denominados DIP (Paquete en Línea Doble). Hoy en día, las memorias por lo general se suministran en forma de módulos, es decir, tarjetas que se colocan en conectores designados para tal fin. En términos generales, existen tres tipos de módulos RAM:
  • módulos en formato SIMM (Módulo de Memoria en Línea Simple): se trata de placas de circuito impresas, con uno de sus lados equipado con chips de memoria. Existen dos tipos de módulos SIMM, según el número de conectores:
    • Los módulos SIMM con 30 conectores (de 89x13mm) son memorias de 8 bits que se instalaban en los PC de primera generación (286, 386).
      Módulo de memoria SIMM de 30 conectores
    • Los módulos SIMM con 72 conectores (sus dimensiones son 108x25mm) son memorias capaces de almacenar 32 bits de información en forma simultánea. Estas memorias se encuentran en los PC que van desde el 386DX hasta los primeros Pentiums. En el caso de estos últimos, el procesador funciona con un bus de información de 64 bits, razón por la cual, estos ordenadores necesitan estar equipados con dos módulos SIMM. Los módulos de 30 clavijas no pueden instalarse en posiciones de 72 conectores, ya que la muesca (ubicada en la parte central de los conectores) imposibilitaría la conexión.

Módulo de memoria SIMM de 72 conectores
  • Los módulos en formato DIMM (Módulo de Memoria en Línea Doble), son memorias de 64 bits, lo cual explica por qué no necesitan emparejamiento. Los módulos DIMM poseen chips de memoria en ambos lados de la placa de circuito impresa, y poseen a la vez, 84 conectores de cada lado, lo cual suma un total de 168 clavijas. Además de ser de mayores dimensiones que los módulos SIMM (130x25mm), estos módulos poseen una segunda muesca que evita confusiones.

Módulo de memoria SIMM de 72 conectores

Cabe observar que los conectores DIMM han sido mejorados para facilitar su inserción, gracias a las palancas ubicadas a ambos lados de cada conector. 
También existen módulos más pequeños, conocidos como SO DIMM (DIMM de contorno pequeño), diseñados para ordenadores portátiles. Los módulos SO DIMM sólo cuentan con 144 clavijas en el caso de las memorias de 64 bits, y con 77 clavijas en el caso de las memorias de 32 bits.
  • Los módulos en formato RIMM (Módulo de Memoria en Línea Rambus, también conocido como RD-RAM o DRD-RAM) son memorias de 64 bits desarrolladas por la empresa Rambus. Poseen 184 clavijas. Dichos módulos poseen dos muescas de posición, con el fin de evitar el riesgo de confusión con módulos previos.

Dada la alta velocidad de transferencia de que disponen, los módulos RIMM poseen una película térmica cuyo rol es el mejorar la transferencia de calor. 
Al igual que con los módulos DIMM, también existen módulos más pequeños, conocidos como SO RIMM (RIMM de contorno pequeño), diseñados para ordenadores portátiles. Los módulos SO RIMM poseen sólo 160 clavijas. 

DRAM PM

La DRAM (RAM Dinámica) es el tipo de memoria más común en estos tiempos. Se trata de una memoria cuyos transistores se disponen en forma de matriz, en forma de filas y columnas. Un transistor, acoplado con un capacitador, proporciona información en forma de bits. Dado que un octeto contiene 8 bits, un módulo de memoria DRAM de 256 Mo contendrá por lo tanto 256 * 2^10 * 2^10 = 256 * 1024 * 1024 = 268.435.456 octetos = 268.435.456 * 8 = 2.147.483.648 bits = 2.147.483.648 transistores. De esta manera, un módulo de 256 Mo posee una capacidad de 268.435.456 octetos, o 268 Mo. Los tiempos de acceso de estas memorias son de 60 ns. 
Además, el acceso a la memoria en general se relaciona con la información almacenada consecutivamente en la memoria. De esta manera, el modo de ráfaga permite el acceso a las tres partes de información que siguen a la primera parte, sin tiempo de latencia adicional. De este modo, el tiempo necesario para acceder a la primera parte de la información es igual al tiempo del ciclo más el tiempo de latencia, mientras que el tiempo necesario para acceder a las otras tres partes de la información sólo es igual al tiempo de ciclo; los cuatro tiempos de acceso se expresan, entonces, en la forma X-Y-Y-Y. Por ejemplo, 5-3-3-3 indica que la memoria necesita 5 ciclos del reloj para acceder a la primera parte de la información, y 3 para acceder a las subsiguientes. 

DRAM FPM

Para acelerar el acceso a la DRAM, existe una técnica, conocida comopaginación, que permite acceder a la información ubicada en una misma columna, modificando únicamente la dirección en la fila, y evitando de esta manera, la repetición del número de columna entre lecturas por fila. Este proceso se conoce como DRAM FPM (Memoria en Modo Paginado). El FPM alcanza tiempos de acceso de unos 70 u 80 nanosegundos, en el caso de frecuencias de funcionamiento de entre 25 y 33 Mhz. 

DRAM EDO

La DRAM EDO (Salida de Información Mejorada, a veces denominada "híper- página") se introdujo en 1995. La técnica utilizada en este tipo de memoria implica direccionar la columna siguiente mientras paralelamente se está leyendo la información de una columna anterior. De esta manera, se crea un acceso superpuesto que permite ahorrar tiempo en cada ciclo. El tiempo de acceso de la memoria EDO es de 50 a 60 nanosegundos, en el caso de una frecuencia de funcionamiento de entre 33 y 66 Mhz. 
De modo que la RAM EDO, cuando se utiliza en modo ráfaga, alcanza ciclos 5-2-2-2, lo cual representa una ganancia de 4 ciclos al acceder a 4 partes de información. Dado que la memoria EDO no funcionaba con frecuencias mayores a 66 Mhz, se suspendió su uso en favor de la SDRAM. 

SDRAM

La SDRAM (DRAM Sincrónica), introducida en 1997, permite la lectura de la información sincronizada con el bus de la placa madre, a diferencia de lo que ocurre con las memorias EDO y FPM (conocidas como asincrónicas), las cuales poseen reloj propio. La SDRAM elimina de esta manera, los tiempos de espera ocasionados por la sincronización con la placa madre. Gracias a esto se logra un ciclo de modo ráfaga de 5-1-1-1, con una ganancia de 3 ciclos en comparación con la RAM EDO. La SDRAM puede, entonces, funcionar con una frecuencia mayor a 150 MHz, logrando tiempos de acceso de unos 10 ns. 

DR-SDRAM (Rambus DRAM)

La DR-SDRAM (DRAM Directa de Rambus), es un tipo de memoria que permite la transferencia de datos a un bus de 16 bits y a una frecuencia de 800 Mhs, lo que proporciona un ancho de banda de 1,6 GB/s. Al igual que la SDRAM, este tipo de memoria está sincronizada con el reloj del bus, a fin de mejorar el intercambio de información. Sin embargo, la memoria RAMBUS es un producto de tecnología patentada, lo que implica que cualquier empresa que desee producir módulos RAM que utilicen esta tecnología deberá abonar regalías, tanto a RAMBUS como a Intel. 

DDR-SDRAM

La DDR-SDRAM (SDRAM de Tasa Doble de Transferencia de Datos) es una memoria basada en la tecnología SDRAM, que permite duplicar la tasa de transferencia alcanzada por ésta utilizando la misma frecuencia. 
La información se lee o ingresa en la memoria al igual que un reloj. Las memorias DRAM estándares utilizan un método conocido como SDR (Tasa Simple de Transferencia de Datos), que implica la lectura o escritura de información en cada borde de entrada. 
SDR - Tasa Simple de Transferencia de Datos

La DDR permite duplicar la frecuencia de lectura/escritura con un reloj a la misma frecuencia, enviando información a cada borde de entrada y a cada borde posterior. 
DDR - Tasa Doble de Transferencia de Datos

Las memorias DDR por lo general poseen una marca, tal como PCXXXX, en la que "XXXX" representa la velocidad en MB/s. 

DDR2-SDRAM

Las memorias DDR2 (o DDR-II) alcanzan velocidades dos veces superiores a las memorias DDR con la misma frecuencia externa. 
El acrónimo QDR (Tasa Cuádruple de Transferencia de Datos o con Quad-pump) designa el método de lectura y escritura utilizado. De hecho, la memoria DDR2 utiliza dos canales separados para los procesos de lectura y escritura, con lo cual es capaz de enviar o recibir el doble de información que la DDR. 
QDR - Tasa Cuádruple de Transferencia de Datos

La DDR2 también posee más conectores que la DDR clásica (la DDR2 tiene 240, en comparación con los 184 de la DDR). 

cuadro de resumen

El siguiente cuadro muestra la equivalencia entre la frecuencia de la placa madre (FSB), la frecuencia de la memoria (RAM) y su velocidad: 

MemoriaNombreFrecuencia (RAM)Frecuencia (RAM)</th>Velocidad
DDR200PC1600200 MHz100 MHz1,6 GB/s
DDR266PC2100266 MHz133 MHz2,1 s
DDR333PC2700333 MHz166 MHz2,7 s
DDR400PC3200400 MHz200 MHz3,2 s
DDR433PC3500433 MHz217 MHz3,5 s
DDR466PC3700466 MHz233 MHz3,7 s
DDR500PC4000500 MHz250 MHz4 s
DDR533PC4200533 MHz266 MHz4,2 s
DDR538PC4300538 MHz269 MHz4,3 s
DDR550PC4400550 MHz275 MHz4,4 s
DDR2-400PC2-3200400 MHz100 MHz3,2 s
DDR2-533PC2-4300533 MHz133 MHz4,3 s
DDR2-667PC2-5300667 MHz167 MHz5,3 s
DDR2-675PC2-5400675 MHz172,5 MHz5,4 s
DDR2-800PC2-6400800 MHz200 MHz6,4 s

Sincronización (tiempos)

No es poco común ver valores como "3-2-2-2" ó "2-3-3-2" para describir los parámetros de la memoria de acceso aleatorio. Esta sucesión de cuatro cifras describe la sincronización de la memoria (tiempo); es decir, la secuencia de ciclos de reloj necesaria para acceder a la información almacenada en la RAM. Las cuatro cifras corresponden, en orden, a los siguientes valores:
  • demora de CAS latencia de CAS (CAS significa Señalizador de Direccionamiento en Columna): es el número de ciclos de reloj que transcurre entre el envío del comando de lectura y la llegada de la información. En otras palabras, es el tiempo necesario para acceder a una columna.
  • Tiempo de precarga de RAS (conocido como tRP; RAS significaSeñalizador de Direccionamiento en Fila): es el número de ciclos de reloj transcurridos entre dos instrucciones de RAS, es decir, entre dos accesos a una fila.
  • demora de RAS a CAS (a veces llamada tRCD): es el número de ciclos de reloj correspondiente al tiempo de acceso de una fila a una columna.
  • tiempo activo de RAS (a veces denominado tRAS): es el número de ciclos de reloj correspondiente al tiempo de acceso a una columna.

Las tarjetas de memoria están equipadas con un dispositivo llamado SPD(Detección de Presencia en Serie), el cual permite al BIOS averiguar los valores de ajuste nominales definidos por el fabricante. Se trata de una EEPROM, cuya información puede cargarse en el BIOS si el usuario elige el ajuste "auto".

Corrección de errores

Algunas memorias poseen mecanismos de corrección de errores, con el fin de garantizar la integridad de la información que contienen. Este tipo de memoria se utiliza por lo general en sistemas que trabajan con información esencial, motivo por el cual este tipo de memoria se encuentra en servidores. 

Bit de paridad

Los módulos con bits de paridad garantizan que los datos contenidos en la memoria sean los necesarios. Para obtener esto, uno de los bits de cada octeto almacenado en la memoria se utiliza para almacenar la suma de los bits de datos. El bit de paridad vale 1 cuando la suma de los bits de información arroja un número impar, y 0 en el caso contrario. 
De este modo, los módulos con bit de paridad permiten la integración de los datos que se verificarán, aunque por otro lado, no prevén la corrección de errores. Además, de 9 Mo de memoria sólo 8 se emplearán para almacenar datos, dado que el último mega-octeto se utiliza para almacenar los bits de paridad. 

Módulos ECC

Los módulos de memoria ECC (Códigos de Corrección de Errores), disponen de varios bits dedicados a la corrección de errores (conocidos como bits de control). Dichos módulos, utilizados principalmente en servidores, permiten la detección y la corrección de errores. 

Canal Doble

Algunos controladores de memoria disponen de un canal doble para la memoria. Los módulos de memoria se utilizan en pares con el fin de lograr un mayor ancho de banda y así poder utilizar al máximo la capacidad del sistema. Al utilizar el Canal Doble, resulta indispensable utilizar un par de módulos idénticos (de la misma frecuencia y capacidad, y, preferentemente, de la misma marca).






No hay comentarios.:

Publicar un comentario