La memoria interna de un ordenador es el dispositivo que almacena datos informáticos. Estos datos pueden ser instrucciones, variables de control, operaciones realizadas por el microprocesador, programas en ejecución, entre otros.
La tecnología de las memorias ha ido evolucionando a lo largo de los años pasando desde las antiguas memorias que funcionaban con flujos magnéticos, hasta las modernas memorias de semiconductores que trabajan mediante condensadores o transistores.
El estudio de la memoria interna es elemental ya que cada vez se precisa disponer de más memoria para utilizar programas complejos y gestionar grandes cantidades de información.
Además, el tema que nos ocupa es crucial para cualquier profesional que necesite utilizar el ordenador de la forma más eficiente posible. Saber seleccionar el hardware adecuado es esencial para diseñar equipos con un rendimiento acorde al uso que se le vaya a dar.
En este artículo veremos en detalle las características y el funcionamiento de los distintos tipos de memoria interna.
La memoria se organiza en varios niveles en función de sus prestaciones: velocidad, coste y capacidad. Esta distribución se conoce como jerarquía de memoria.
El nivel superior está constituido por memorias muy rápidas, de pequeña capacidad y coste alto. Conforme bajamos de nivel las memorias serán más lentas, con mayor capacidad y de menor coste, tal y como se puede ver en la figura 1.
La memoria interna es la formada por los tres primeros niveles: registros, memoria caché y memoria principal o RAM (Random Access Memory). El cuarto nivel conforma la memoria externa o secundaria.
Los registros se utilizan en los microprocesadores para almacenar las operaciones que éste realiza. Para su implementación se utilizan bancos de registros o elementos de memoria SRAM (Static Random Access Memory) cuyas características se estudiarán en la siguiente sección.
La memoria caché es una memoria auxiliar que almacena la información que más se utiliza de la memoria principal. La caché se implementa mediante tecnología SRAM y está dispuesta en varios niveles (L1, L2…) siendo la L1 la más rápida y de menor capacidad, ver figura 2.
La memoria principal se utiliza para guardar datos de forma temporal. En esta memoria se puede leer y escribir, pero su información se borra cuando se apaga el dispositivo (memoria volátil). Utiliza elementos de memoria DRAM (Dynamic Random Access Memory) cuyas características se verán en los siguientes apartados.
La memoria se clasifica de forma general en memorias volátiles (SRAM, DRAM, RDRAM, VRAM y ECC) y no volátiles (ROM, PROM, EPROM, EEPROM y Flash).
La SRAM (Static Random Access Memory) es una memoria estática con una capacidad reducida que alcanza grandes velocidades. Se implementa con biestables y conserva la información mientras se le suministre corriente eléctrica. Su elevado precio hace que se use únicamente en memoria caché y registros.
La memoria DRAM (Dynamic Random Access Memory), a diferencia de la anterior, tiene mayor capacidad, pero es más lenta y más económica. Dado su bajo coste, se utiliza como memoria principal de las computadoras. Está compuesta de celdas de memoria construidas con condensadores.
Los tipos de memoria DRAM y sus características más importantes se muestran en la tabla siguiente:
Nombre | Voltaje | Nº Accesos por ciclo | Número de contactos |
SDRAM | 3,3 | 1 | 168 |
DDR SDRAM | 2,4 | 2 | 184 |
DDR2 SDRAM | 1,8 | 4 | 240 |
DDR3 SDRAM | 1,5 | 8 | 240 |
DDR4 SDRAM | 1,2 | 8 | 288 |
DDR5 SDRAM | 1,1 | 8 | 288 |
Como podemos ver en la tabla, las memorias han evolucionado mucho desde la SDRAM (Synchronous Dynamic Random Access Memory) hasta la DDR5 (Double Data Rate 5) SDRAM. En este contexto, las memorias siguen evolucionando y han salido modalidades que son cada vez más rápidas y con menor consumo de energía. Por ejemplo las memorias “low voltage” que veremos en el apartado de “nuevas tecnologías”.
Además de las características mostradas en la tabla, merece la pena mencionar la latencia que es el retardo introducido en cada acceso de memoria.
Por otra parte, otra característica importante es la tasa de transferencia o ancho de banda que nos indica la velocidad a la que se transfieren los datos.En las memorias actuales DDR se utilizan las siguientes nomenclaturas:
Siendo:
Ancho de banda (MB/s) = Vefect (MHz) x Ancho bus (8 bytes)
Vefect = Vfísica x Nº accesos por cicloVfísica= Frecuencia de reloj = Frecuencia del bus (MHz)
La RDRAM (Rambus DRAM) es una memoria dinámica de acceso aleatorio y síncrona. Se utilizaba en Pentium 4 y en Nintendo 64, entre otros dispositivos. Dejó de utilizarse por su elevado precio y escasa comercialización.
La memoria de vídeo o VRAM (Vídeo Ram) está presente en las tarjetas gráficas, ya sean integradas o dedicadas. Suele tener mejores prestaciones que la RAM y son más caras. La principal característica de esta memoria es que es accesible de forma simultánea por dos dispositivos.
Las memorias ECC (Error Correcting Code) son usadas mayormente en servidores, donde es crucial minimizar errores. Disponen de un bit extra que nos indica si se ha detectado un fallo. El 1 nos señala que hay errores y el 0 que no hay.
A continuación se describen las características de las memorias no volátiles más relevantes:
El avance de la tecnología ha permitido el surgimiento de los tipos de memorias que hemos ido viendo a lo largo del tema. A continuación, estudiaremos algunos avances tecnológicos que han tenido mucha repercusión.