La RAM o memoria de acceso aleatorio (en inglés: Random Access Memory), es la memoria principal de un equipo microinformático y se encarga de almacenar de manera temporal tanto las instrucciones como los datos que ejecuta el microprocesador.
Es una memoria volátil, es decir, la información se pierde al interrumpirse el flujo eléctrico (apagar el ordenador).
Se denominan «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.
Físicamente es un conjunto de chips soldados sobre una PCB, a este conjunto de chips, se le denomina módulo de memoria RAM.
Los fabricantes tienen que fabricar los módulos de memoria siguiendo los estándares marcados por JEDEC (Joint Electron Device Engineering Council) (https://www.jedec.org/)
El Circuito SPD (Serial Presence Detect Chip): Es el encargado de almacenar datos relativos al módulo de memoria RAM, como el tamaño de la memoria, el tiempo de acceso, la velocidad y el tipo de memoria. De esta forma el ordenador conocerá que memoria RAM tiene instalada de manera automática sin intervención del usuario.
PMIC (Power management integrated circuits o Circuitos integrados de gestión de energía)
https://www.crucial.es/articles/about-memory/how-is-memory-made
Bank (Bancos de memoria). Son los componentes físicos encargados de almacenar los registros de memoria. Lo forman chips de circuitos integrados(IC) que están compuestos en su interior por transistores y capacitores que forman celdas de almacenamiento lo que permite almacenar bits de información dentro de ellos. Un chip contiene varios bancos, cada banco está distribuido en filas y columnas y la intersección de estas son los bits.
Rank (Rango de memoria). El término rango (Rank) fue creado y definido por el JEDEC y es un conjunto de chips conectados entre sí que son accedidos por el controlador de memoria al mismo tiempo formando un bloque o área de datos. El tamaño de un rango es de 64 bits (si tiene ECC se añaden 8 bits más hasta DDR o 2x8=16 bits en DDR5)
No todas las memorias tienen el mismo número de chips ni la misma capacidad, es decir, su wide o ancho de bus no es el mismo. En las memorias DDR actuales podemos encontrar chips con un ancho de bus individual de 4, 8 o 16 bits (nomenclaturas de X4, X8 o X16). Cada Rank es un conjunto de chips que forman 64 bits (4 chips de 16 bits, 8 chips de 8 bits o 16 chips de 4 bits)
Single Rank: Memoria RAM con un solo bus de datos de 64 bits será determinada como Single Rank o 1R. Un módulo Single Rank tendrá una nomenclatura similar a alguna de estas → 1Rx4, 1Rx8 o 1Rx16.
Dual Rank: Si un módulo tiene 2 buses de datos de 64 bits. (2R) → 2Rx4, 2Rx8 o 2Rx16
Quad Rank: Si un módulo tiene 4 buses de datos de 64 bits . (4R) → 4Rx8 o 4Rx16
El Rank no da pistas claras de la capacidad del módulo de memoria, ya que los chips pueden ser de 512 MB, 1 GB, 2 GB, 4GB o incluso más. Claro que sabiendo los ranks que dispone un módulo y la capacidad, podremos calcular el bus y la capacidad individual de ellos.
IMC (Integrated Memory Controller). Es el circuito digital situado en el procesador que controla el flujo de datos entre el procesador y la memoria RAM.
Los controladores de memoria contienen la lógica necesaria para leer y escribir en la memoria RAM
Hasta DDR4 la comunicacción entre el procesador y la memoria es a traves de un bus de 64 bits
En DDR5 la comunicacción entre el procesador y la memoria es a traves de un bus de 2x32 bits.
Single Channel describe cualquier configuración en la que la CPU solo tiene acceso a un solo bus de 64 bits de ancho en DDR4 o 2x32 en DDR5 para acceder a la memoria.
La tecnología Dual-Channel o doble canal es una tecnología que aumenta el rendimiento porque se permite el paso simultáneo a los 2 módulos de memoria RAM duplicando (teóricamente*) el ancho de banda entre la memoria y la CPU pero que en la práctica no pasa de un 20 a 45%.
Para disponer de Dual-Channel, la placa base lo debe soportar. Además hay que instalar 2 módulos de memoria idénticos: mismos timings, capacidad, etc.
La capacidad hace referencia a la cantidad de datos que se pueden almacenar en la RAM. La memoria RAM es un almacén de datos y lógicamente una característica importante es cuántos datos puede almacenar.
Los transistores del interior de los bancos de memoria tienen un determinado tamaño, con lo cual a menor tamaño de transistor mayor densidad de celdas lo que implica más capacidad.
Esta capacidad se mide actualmente en los módulos DDR en GB (GigaBytes).
La cantidad de memoria estará directamente relacionada con el uso que hagas del equipo. Cada uso requiere una cantidad de RAM diferente. No se necesita la misma memoria RAM para navegar, que para jugar o editar vídeo o fotos.
Al instalar algunos módulos de memoria, la placa puede configurarlos para que trabajen a una frecuencia inferior a la que el fabricante prometía. En ese caso se tendrá que configurar la frecuencia de la memoria RAM manualmente desde la BIOS o UEFI para subir el multiplicador de sus frecuencias y hacer que funcionen a la velocidad correcta.
La tasa de transferencia de datos se refiere a cuántos bytes puede transferir un módulo en un tiempo concreto.
Por ejempo: Crucial DDR4 2400 PC4-19200 4GB →
Tasa de transferencia de datos= 2400Hz*8B = 19200 MB/s
El ancho de banda máximo de memoria o BW (BandWidth) es la velocidad máxima a la cual el procesador puede leer o almacenar datos en una memoria. Actualmente se mide en GB/s.
El ancho de banda máximo teórico de la memoria se puede calcular multiplicando la frecuencia real de la memoria multiplicado por el número de bytes de ancho (64) y multiplicado por el número de canales (o interfaces) compatibles con el procesador.
La frecuencia de reloj DRAM de la RAM -> Dato de fabricante/2
Ancho Bus de la memoria -> actualmente y desde hace años es de 64 bits por canal (32 bits x 2 en DDR5)
Número ciclo de reloj -> SDR=1 (1 operación por ciclo) y DDR=2 (2 operaciones por ciclo )
Número de canales (Interfaces) -> o lo que es igual, el número de canales máximos de memoria que pueden funcionar al mismo tiempo. Esto lo determina la plataforma en sí misma, donde actualmente en escritorio tenemos(Single-Channel = 1) o (Dual-Channel = 2) disponibles.
BW = FrecuenciaReal x 64 bits x Número de ciclos de reloj x Canales
Team Group Delta White RGB DDR4 3200 PC4-25600 → Frecuencia real=3200Mhz/2=1600Mhz
BW(Dual-Channel) = 160000000Hz X 64 bits X 2 X 2= 409.600.000.000 bits por segundo
Recordamos que Hz=1/s
Divimos entre 8 para pasar a bytes BW= 51,2 GB/s
La estructura interna de la memoria RAM es como la de un tablero de ajedrez tridimensional en el que cada cuadro del tablero es una celda en la que se escriben los datos que se almacenan.
La latencia es el tiempo que tarda la memoria RAM en situarse en una determinada celda para leer o escribir su contenido. Cuanto mayor sea la latencia de la memoria RAM, mayor es el tiempo que “pierde” en llegar a una determinada celda y, por lo tanto, menos eficiente en su trabajo.
Por lo tanto, a igualdad de frecuencias de reloj para un módulo de memoria RAM, es preferible elegir una memoria RAM con una latencia baja.
https://pcpro.es/guias/latencia-memoria-ram-que-es-y-tipos/
Timings. Suelen visualizarse en formato numérico: 9-9-9-24 es un ejemplo de tiempos o timings de una memoria DDR.
¿Qué significa cada uno de los cuatro números?
Corsair Value Select DDR4 2666Mhz PC4-21300 8GB CL18
Memoria | Velocidad de reloj(MT/s) | Frecuencia real(MHz) | Ciclo de reloj (ns) | Latencia CAS | Latencia real (ns) |
---|---|---|---|---|---|
DD4 | 2666 | 1333 | 0.75 | 18 | 13.5 |
Latencia real style=”color:#58585A”>(ns) style=”color:#58585A”> = tiempo de ciclo de reloj style=”color:#58585A”>(ns) style=”color:#58585A”> x números de ciclos de reloj(CAS)
Frecuencia real= 2666(MT/s) /2 = 1333MHz
Ciclo de reloj= 1/1333x10^6Hz = 0.75x10^-9s = 0.75ns
Recordamos que Hz=1/s
Latencia real= 0.75ns x 18 = 13.5ns
El voltaje es el valor de tensión a la que el módulo de memoria RAM trabaja.
Disminuye a la vez que la tecnología avanza, es decir el consumo de los módulos DDR5 es inferior al de los módulos DDR4.
Tipo | Pines | Longitud |
---|---|---|
SO-DIMM DDR | 200 | 67.6 mm |
SO-DIMM DDR2 | 200 | 67.6 mm |
SO-DIMM DDR3 | 204 | 67.6 mm |
SO-DIMM DDR4 | 260 | 69.6 mm |
SO-DIMM DDR5 | 262 |
En la memoria principal, los contenidos son almacenados en forma de código binario, en otras palabras, están compuestos por unos y ceros para que el ordenador pueda procesarlos. Los dígitos binarios se conocen como bits. Factores como (fluctuaciones del voltaje, overclocking, módulos de memoria defectuosos y viejos, o radiación de alta energía) pueden generar un error de bit. Estos fallos de bit se presentan cuando un bit toma el valor falso, es decir “1” en vez de “0” y viceversa. En muchas aplicaciones, las consecuencias de estos fallos son apenas perceptibles, pero en otros ámbitos esos fallos no son asumibles
La solución a este problema se llama style=”color:#58585A”> Error Correcting Code style=”color:#58585A”> (ECC), un código que tiene la capacidad de detectar y corregir errores de bit
La memoria ECC (Error Correcting Code) o código de corrección de errores es un tipo de memoria de ordenador que detecta y corrige los tipos más comunes de corrupción de datos de la memoria.
El Rank contiene 8 bits de memoria adicionales, lo que hace un total de 72 bits.
El Rank en DDR5 contiene 2*8 bits de memoria adicionales, lo que hace un total de 80 bits.
A medida que se procesan los datos, la memoria ECC está constantemente analizando código con un algoritmo especial para detectar y corregir errores de memoria de un solo bit → ( código Hamming style=”color:#58585A”>)
Se utiliza en servidores, sitios con información sensible o cálculos complejos.
Generalmente, la memoria ECC es más cara y puede ser un poco más lenta que la memoria normal.
Los demás componentes del sistema, como la CPU y la placa base, también deben ser compatibles con una memoria ECC.
Cuando no está presente esta tecnología puede venir indicado como _ _Non-ECC .
La Memoria RAM “Buffered” o Memoria “Registered” tiene un registro situado entre la DRAM y el Controlador de Memoria del Sistema. Esto hace que haya menos carga eléctrica en el Controlador de Memoria y permite que sistemas con muchos módulos de memoria permanezcan estables, de otra forma esto no sería posible.
Más cara de construir y utilizada en servidores.
Cuando se fabrica como un módulo de memoria dual en línea (DIMM), un módulo de memoria registrado se denomina RDIMM , mientras que la memoria no registrada se denomina UDIMM o simplemente DIMM
Cuando no poseen esta característica nos puede venir indicado como Unbuffered o Unregistered .
https://www.kingston.com/spain/es/memory/memory-part-number-decoder
KVR32N22D8/16 ( http://www.kingston.com/dataSheets/KVR32N22D8_16.pdf )
KVR. Corresponde a las iniciales del fabricante (Kingston)
N. NonECC (No corrige errores). Si fuera E (ECC) corrige errores.
D. Dual Channel. Si fuera S (Single), Q(Quad)
Número de chips de memoria.
Capacidad del módulo (16GB)
KVR16N11K2/16 ( http://www.kingston.com/dataSheets/KVR16N11K2_16.pdf )
KVR. Corresponde a las iniciales del fabricante (Kingston)
N. NonECC (No corrige errores). Si fuera E (ECC) corrige errores.
K2. Kit de 2 piezas
KVR26S19S8/16 ( http://www.kingston.com/dataSheets/KVR26S19S8_16.pdf )
KVR. Corresponde a las iniciales del fabricante (Kingston)
S. Tipo de módulo SODIMM
S. SODIMM
Número de chips de memoria.
Capacidad del módulo (16GB)
CT32G4S266M ( https://www.crucial.es/memory/ddr4/ct32g4s266m )
CT. Crucial
32G. Capacidad del módulo (32GB)
S. SODIMM
M. compatible con MAC
CT32G4DFD8266 ( https://www.crucial.es/memory/ddr4/ct32g4dfd8266 )
CT. Crucial
32G. Capacidad del módulo (32GB)
4DF
D8. Dual Channel
CMK64GX4M4B3600C18 ( https://www.corsair.com/es/es/Categor%C3%ADas/Productos/Memoria/VENGEANCELPX/p/CMK64GX4M4B3600C18#tab-tech-specs )
CMK. Corsair
64GX4M4. Kit de 64 GB (4x16GB cada uno)
Corresponde a la velocidad efectiva en MHz (3600MHz)
Latencia (CAS).
¿Cómo saber qué memoria tengo instalada? Podemos usar software de terceros o acceder al símbolo de sistema (Windows+r→cmd→y ejecutar “wmic memorychip”
Video Ram o memoria de vídeo está presente en todas las tarjetas gráficas, es un tipo de memoria diseñada especialmente para llevar a cabo un tipo concreto de tareas en aplicaciones gráficas y videojuegos.
GDDR SDRAM, es el tipo de RAM de gráficos más popular, y es lo que encontrará en la gran mayoría de las GPUs actuales. La abreviatura significa Graphics Double Data Rate Synchronous Dynamic Random-Access Memory
HBM(High Bandwidth Memory), tipo de memoria gráfica que tiene un ancho de banda mucho mayor que GDDR6, alto coste (HBM, HBM2 style=”color:#58585A”>, HBM2E style=”color:#58585A”>)
https://computerhoy.com/noticias/hardware/todo-que-necesitas-saber-memoria-ram-37541
https://hardzone.es/2018/01/17/asi-funciona-atencia-memoria-ram-ddr4/
https://www.profesionalreview.com/2018/07/21/latencia-memoria-ram/
https://hardzone.es/2019/01/06/single-rank-vs-dual-rank-amd-ryzen/
https://hardzone.es/tutoriales/componentes/tipos-memoria-ram-pc-historia/
https://hardzone.es/tutoriales/componentes/diferencias-memoria-ram-ddr/
https://lau-re.wixsite.com/laure/post/dimm-vs-so-dimm-hay-diferencia-de-rendimiento
https://www.ionos.es/digitalguide/servidores/know-how/memoria-ecc-almacenamiento-seguro-de-datos/
https://infopcgamer.com/gddr5-vs-gddr5x-vs-hbm-vs-hbm2-vs-gddr6/
https://hardzone.es/reportajes/que-es/vram-tarjeta-grafica/
https://www.ticarte.com/contenido/especificaciones-tecnicas-de-la-memoria-ram