Especificaciones técnicas de la memoria RAM

Rafa Morales 18 Mayo 2019
7min
0
Memoria RAM - via https://www.freepik.es/fotos-vectores-gratis/personas

Estas son algunas de las características que tendremos que tener en cuenta a la hora de comparar o adquirir un módulo de memoria RAM para nuestro equipo microinformático.

 

Tecnología

Indica la tecnología de la memoria RAM (leer más): SDRAM, DDR, DDR2...

 

Capacidad

Indica la cantidad de datos que es capaz de almacenar, en MB o GB.

 

Frecuencia o velocidad

La frecuencia o velocidad indica las operaciones (lecturas y escrituras) que puede realizar en un segundo. Se mide en MegaHercios (MHz), es decir, millones de operaciones por segundo. Por ejemplo, 800MHz, significa que con ella se pueden realizar 800 millones de operaciones (lecturas y escrituras) en un segundo. En este caso podríamos hablar también de MT/s (millones de transferencias por segundo) ya que coinciden las cifras.

Podemos hablar de dos velocidades diferentes:

  • Velocidad real: Es la velocidad a la que trabaja realmente la memoria, que es la mitad de la velocidad de funcionamiento efectiva en ese momento en módulos con tecnología DDR, ya que esta tecnología refresca la información en doble canal.
  • Velocidad SPD (SPD speed) o velocidad JEDEC: Es la velocidad máxima a la que puede trabajar la memoria y sin tener que configurar nada en la placa base.
  • Velocidad efectiva o velocidad de prueba (tested speed): Es la velocidad máxima a la que puede trabajar la memoria. Si es superior a la velocidad SPD tendremos que activar perfiles XMP en la placa base (se explica más abajo).

La velocidad que nos va a indicar el fabricante en sus especificaciones hace referencia a la velocidad efectiva.

 

Transferencia de datos

La transferencia de datos (o ancho de banda) indica el número de MB/s que es capaz de transmitir la memoria RAM al microprocesador. Viene indicado de la siguiente manera por ejemplo, PC4-12800, donde el número después de PC indica la tecnología de la memoria (PC es DDR, PC2 es DDR2, PC3 es DDR3 y PC4 es DDR4), y donde el siguiente número es la transferencia 12.800MB/s.

Esta transferencia viene calculada en función de la frecuencia. Si el sistema trabaja con un ancho de palabra de 64 bits, hacemos 64bits / 8 = 8 bytes. Si la memoria trabaja a 1600MHz, podemos hacer 1600MHz x 8 bytes = 12.800MB/s.

 

Timings (Latencias)

Los timings (Memory timings o RAM timings) o latencias (latency) marcan los ciclos de reloj que la memoria tarda en realizar sus operaciones. Conocer estos valores nos permitirán comparar las prestaciones de las memorias entre sí. Cuanto menores sean estos valores mejores prestaciones va a tener la memoria.

Los timings van a venir dados mediante estos principales valores, aunque existen algunos más:

  • CAS Latency (CL / tCL / tCAS): Indica el número de ciclos de reloj que la memoria necesita desde que se envía una señal CAS (seleccionar columna) hasta que el dato es dado al microprocesador. Es el timing más importante, muchas veces los fabricantes en sus especificaciones no nombran ninguno más.

  • RAS to CAS Delay (tRCD): Indica el número de ciclos de reloj mínimo entre una señal RAS (seleccionar fila) y una señal CAS (seleccionar columna). Este número de ciclos dependerá de si ya está abierta o no la fila previamente.

  • RAS Precharge (tRP): Indica el número de ciclos de reloj entre la señal PRECHARGE (desbloquear fila) y la siguiente señal RAS (seleccionar fila).

  • Row Active (tRAS): Indica el número de ciclos de reloj entre la señal ACTIVE (bloquear fila) y la señal PRECHARGE (desbloquear fila).

  • Command Rate (CR o CMD): Indica el número de ciclos de reloj entre que el banco de memoria es activado mediante la señal CS (Chip Select) hasta que cualquier comando puede ser ejecutado. Este parámetro lleva la letra T o N y sus posibles valores son 1T/1N o 2T/2N, que indican un ciclo o dos ciclos respectivamente. Si esta valor no es dado debemos sobreentender que se trata de 2T.

Existe otro timing que a veces podemos encontrar, pero en realidad es la suma de los timings anteriores:

  • Row Cycle (tRC): Indica el número de ciclos de reloj entre la señal ACTIVE (bloquear fila) y la señal PRECHARGE (desbloquear fila). Es decir, tRC = tRAS + tRP.

En la siguiente imagen de muestran los timings en función de la señal de manera gráfica.

Un ejemplo completo de timings en las especificaciones de una memoria RAM podría ser el siguiente:

16-16-16-38-2T

Y otro ejemplo obtenido de un software de análisis de hardware:

 

Latencia efectiva

La latencia efectiva (latency) mide el tiempo en nanosegundos que tarda la memoria en devolver un dato pedido por el microprocesador. La latencia efectiva dependerá de la frecuencia de la memoria y del número de ciclos de reloj necesarios para devolver el dato (timings).

La latencia efectiva se puede calcular con la siguiente fórmula:

Latencia efectiva = (1000 / Frecuencia real) * Latencia CAS

Ejemplo para una memoria con frecuencia de 2666MHz (por tanto 1333Mhz de frecuencia real) y un tCL15:

(1000 / 1333) * 15 = 11.25ns

Ejemplo para una memoria con frecuencia de 3000MHz (por tanto 1500Mhz de frecuencia real) y un tCL17:

(1000 / 1500) * 17 = 11.33ns

Podríamos pensar que la segunda memoria va a ser mucho mejor que la primera, al tener más velocidad, pero como tiene un timing mayor, la latencia efectiva al final queda similar a la primera. Como observamos, calcular este parámetro sería el más interesante al comparar memorias.

 

Voltaje

Indica el voltaje al que funciona la memoria. Un voltaje más bajo hará sufrir menos al controlador de memoria y tendrá menos consumo energético. El voltaje se mide en Voltios (V).

 

Perfiles

La memoria está preparada para trabajar a diferentes frecuencias y diferentes latencias. Cada configuración de frecuencias, latencias y voltaje se conoce como perfil, y el fabricante asegura que el rendimiento es óptimo con esos perfiles. Estos perfiles se almacenan en el circuito SPD de la memoria.

Existen dos tipos de perfiles, dentro de cada tipo, el fabricante puede configurar diferentes variantes.

  • Perfiles JEDEC: son configuraciones aprobadas por el organismo encargado de la estandarización de la memoria RAM. Estas configuraciones son muy seguras pero no aprovechan las altas frecuencias de las memorias RAM actuales. Suelen venir indicadas con un número, por ejemplo, JEDEC #4, JEDEC #5, etc.
  • Perfiles XMP (Intel eXtreme Memory Performance): son configuraciones aprobadas por Intel para conseguir obtener frecuencias de funcionamiento de la memoria superiores a las aprobadas por JEDEC. Sólo funciona con microprocesadores Intel. Suelen venir indicadas con un número, por ejemplo, XMP-3200, XMP-4000, etc.

Por defecto la placa base sólo funciona con perfiles JEDEC, detectando automáticamente el perfil que mejor rendimiento tenga. Si la placa base está preparada para admitir perfiles XMP, estos se podrán configurar desde la BIOS.

Desde un software de análisis de hardware podemos tener información de estos perfiles:

 

ECC

La tecnología ECC (Error Checking and Correction – Chequeo y corrección de errores) en las memorias RAM sirve para que sean capaces de detectar y corregir los errores de lectura y escritura. Esta característica está presente en la gama alta de memorias RAM, normalmente utilizadas en servidores.

Cuando no está presente esta tecnología puede venir indicado como Non-ECC.

 

Buffered / Registered

Es una característica que incorporan ciertas memorias para asegurar la estabilidad a costa de perder rendimiento. Estas memorias incluyen también ECC.

Cuando no poseen esta característica nos puede venir indicado como Unbuffered o Unregistered.

 

Bibliografía