Todos los PC necesitan varios tipos de memoria para poder funcionar en conjunto. Tenemos la memoria de almacenamiento, pero también tenemos la memoria RAM y la ROM, dos tipos de memoria que a veces se confunden y, por este motivo, hoy vamos a contaros cuáles son sus diferencias, sus tipos y para qué se utiliza cada una de ellas.
Seguramente tengáis ya claro qué es la memoria RAM, dado que es uno de los componentes de los que hablamos habitualmente cuando se trata de hardware para PC, y se puede comprar en cualquier tienda de informática. Sin embargo, aunque no lo sepáis los ordenadores también tienen memoria ROM, y es fundamental para su funcionamiento. Vamos a ver qué es cada uno de estos tipos de memoria y para qué sirve para conocer sus diferencias.
¿Qué es la memoria RAM?
La memoria RAM se llama así por las siglas en inglés Random Access Memory, o memoria de acceso aleatorio. Su nombre es este precisamente porque su contenido cambia constantemente dependiendo de lo que necesite el PC en cada momento –y está gestionada por el procesador. Se usa para almacenar los programas y datos que se están utilizando en cada momento, de manera que el procesador tenga un acceso a ellos de manera inmediata, en tiempo real, de hecho. Es uno de los elementos clave de un ordenador y cuanta más tengas, mejor será el rendimiento general del equipo.
Este tipo de memoria es volátil, lo que significa que cualquier información almacenada en ella desaparece cuando apagamos el PC. Es por ello que es necesaria una memoria secundaría para almacenar los programas que el PC va a ejecutar. Dicha memoria secundaría, al contrario que la RAM, no se utiliza para ejecutar programas por parte del procesador, ya que no es lo suficientemente rápida para servirle los datos necesarios a la suficiente velocidad, lo que supondría una ralentización general de todo el sistema. Vamos, que el PC iría extremadamente lento.
Tipos de memoria RAM
De tipos de memoria RAM los hay de muchos tipos, pero todas ellas parten de dos tipos diferentes, las cuales se diferencian en la electrónica básica que se usa para almacenar temporalmente un bit de información. Estas son, fundamentalmente, los distintos tipos que nos podemos encontrar:
- DRAM: significa Dynamic RAM, y es la más utilizada en PCs y, de hecho, en casi cualquier dispositivo incluyendo smartphones. Este tipo de memoria está formada por condensadores que requieren que la controladora almacene varias veces por segundo los datos almacenados en ella para que no se pierdan. Se utiliza para memorias RAM convencionales y a diferencia de la SRAM necesita ser refrescada cada cierto tiempo para mantener los datos.
- SRAM: significa Static RAM, y como su nombre indica es estática. En este caso los datos se almacenan hasta que se corte el suministro eléctrico sin que el controlador tenga que estar refrescando los datos constantemente; es más rápida y consume menos energía que la DRAM, pero se utiliza menos porque es más cara de fabricar y permite unas densidades (capacidades) muy inferiores. La SRAM se utiliza para las cachés y los registros tanto de CPUs como de GPUs
- HBM: son las siglas de High Brandwitch Memory o memoria de gran ancho de banda. Habitualmente se utiliza en GPU y GPU de tipo profesional para grandes cargas de trabajo. Este tipo de memoria está muy asociada con la Inteligencia Artificial, ya que es perfecta para esas tareas por la gran velocidad y volumen de datos que soporta. No se utiliza, normalmente, en tarjetas gráficas y procesadores comerciales por el elevadísimo coste de fabricación. También suponen un reto en el proceso final de ensamblaje del componente
Por otro lado, hay que aclarar que la memoria NVRAM, Non Volatile RAM, hace referencia a las memorias NAND Flash de diferentes tipos. A este tipo de memoria se le accede como a la RAM tradicional, pero se diferencia en que no pierden los datos. Desgraciadamente, no pueden ser usadas como memorias primarias por su menor velocidad, así que se quedan como memorias de almacenamiento masivo por lo que quedamos a la espera de que en un futuro puedan evolucionar para ser utilizadas como memoria del equipo que no se vacía cuando lo apagamos.
¿Qué es la memoria ROM?
La memoria ROM se llama así por las siglas en inglés Read Only Memory, o memoria de solo lectura. La mayor diferencia entre la memoria RAM y la ROM es que la ROM no es volátil, es decir, la información almacenada se retiene, aunque apaguemos el PC. Este tipo de memoria tiene una capacidad muy inferior a la RAM y además es mucho más lenta. Como curiosidad, los viejos cartuchos de las consolas de los años 80 y 90 se grababan en memorias EEPROM que eran capaces de mantener la información al margen de si tenían alimentación o no. Lo que facilitó en aquellos tiempos, a falta de otro soporte de almacenamiento masivo, que el mercado creciera y evolucionara como lo hizo en los años siguientes.
En los primeros ordenadores, debido a que la memoria de almacenamiento que se solía utilizar era muy lenta, ya que se solían utilizar discos magnéticos o cintas, se solía incluir una ROM donde se cargaba todo el sector de arranque del sistema. Por otro lado, fue un formato típico en las primeras consolas de videojuegos, 8 y 16 bits, por el hecho de que la velocidad de acceso a la RAM no era más alta.
Con el paso del tiempo la ROM cayó en desuso, y dejo de usarse a gran escala. El motivo fue que ya no podía competir con la RAM y paso a ser más rentable instalar el sistema operativo en el disco duro. A día de hoy se sigue usando, pero para almacenar información crucial para el funcionamiento del PC que es peligroso o dañino para su funcionamiento que estos fueran reescritos.
Tipos de memoria de solo lectura
Hemos de tener en cuenta que la memoria ROM es solo de lectura y, por tanto, una vez se ha fabricado el chip, en teoría es imposible almacenar la información de nuevo dentro del mismo. No obstante, esto es un despilfarro de recursos y a día de hoy existen variantes que se pueden volver a programar en cuanto al contenido que almacenan. No desde unos pines de entrada de datos u otros bidireccionales como las memorias NAND Flash, sino con equipamiento especial.
Estos son los tipos principales de memoria ROM que se utilizan hoy en día:
- Mask ROM: este tipo de memoria se utiliza durante el proceso de fabricación de los dispositivos, y una vez escritos los datos no pueden ser modificados.
- PROM: significa «Programmable ROM», y como su nombre indica, los datos que almacena se pueden programar (a diferencia de la Mask ROM, después del proceso de fabricación). Tiene la particularidad de que una vez que se escribe en ella, estos datos ya no pueden ser modificados nunca más.
- EPROM: significa «Electrically Programmable ROM», y es parecida a la PROM pero permite que los datos se eliminen en condiciones específicas (esencialmente exponiéndola a luz ultravioleta de alta intensidad). Como curiosidad, decir que en los años 90 fue el sistema más utilizado para grabar las versiones beta de los viejos cartuchos de NES, Master System, Game Boy, Game Gear, Super Nintendo o Mega Drive, antes de pasar al proceso de producción de las versiones finales que también utilizaban pastillas de memoria de este tipo.
- EEPROM: significa «Electrically Erasable Programmable ROM», y es el tipo de memoria ROM más usado porque permite que los datos se eliminen y reescriban un número ilimitado de veces.
¿Dónde se usa la memoria ROM?
Aunque parezca mentira, la memoria ROM se ha usado históricamente en una gran cantidad de dispositivos y se sigue usando a día de hoy.
- Se utiliza principalmente en la BIOS de nuestro ordenador y es su uso más conocido. Es necesario que la información persista aun no existiendo tensión y que se pueda actualizar sencillamente. En muchos casos se agregan dos de estos chips, por si hay algún problema en el proceso de actualización, restaurarla de fabrica
- Es donde se almacenaban los juegos en las consolas de antaño, lo cual permitía jugar a los juegos de forma directa. Sin instalaciones ni tiempos de carga ya que la transferencia de información se realizaba prácticamente en tiempo real. Como os hemos indicado, las consolas de 8 y 16 bits no hubieran podido existir sin esta tecnología: todos los cartuchos que se vendían eran, esencialmente, memorias ROM con juegos grabados dentro, inalterables al paso del tiempo
- En los primeros ordenadores estos solían tener una ROM donde almacenaban el sistema operativo y no era posible actualizarlo. Tal cual salían al mercado, así se mantenían durante toda su vida útil
- La unidad de control de un procesador cualquiera para funcionar contiene una tabla para descodificar instrucciones
- Todo componente tiene una memoria de solo lectura donde se encuentran los datos de sus especificaciones. Lo cual es esencial para la intercomunicación entre los diferentes elementos del ordenador
Es decir, la memoria ROM se usa en muchos dispositivos, pero a día de hoy es tan pequeña (literalmente) que apenas la podemos ver a ojo desnudo en la mayoría de casos o se encuentra dentro de otros chips. Habitualmente, microcontroladores así que, aunque no penséis que tenéis una delante, es seguro que contáis con una más cerca de lo que imagináis, pero no por ello pierden la importancia que han tenido durante los últimos 45 años dentro del mundo de la informática y de los propios videojuegos, donde se ha utilizado de forma masiva.
El chip de vídeo de tu microordenador de 8 bits podría ser una ROM
Como curiosidad, muchos de los chips de función fija que se empleaban en hardware antiguo se construían con memorias ROM, estos chips a partir de unos datos de entrada concretos acaban ejecutando siempre el mismo «programa», el cual se encuentra codificado en la ROM. Pero dicha codificación no es binaría como en una memoria RAM o ROM convencional. Lo que se busca es que los bits al pasar por los diferentes transistores de la ROM se manipulen de una determinada manera para sacar un tipo de resultado concreto.
Aunque a día de hoy su utilización está muy limitada a componentes y situaciones concretas, durante muchos años han sido un recurso muy eficaz y seguro para almacenar información que no debía modificarse nunca, de tal forma que se mantuviera siempre inalterable y lejos de las manos de usuarios que pudieran cambiarla.
En resumen, ¿qué diferencias hay?
En esencia, la memoria RAM es un tipo de almacenamiento temporal, en el que básicamente se almacenan los datos a los que el procesador debe acceder de manera inmediata para que no tenga que estar buscándolos en el almacenamiento del sistema, o cálculos que ha hecho el procesador y que necesita usarlos después, para no tener que volver a calcularlos.
La memoria ROM, en cambio, almacena de manera permanente datos que son necesarios para el correcto funcionamiento de un ordenador y que sería perjudicial perderlo tras un corte del suministro eléctrico. En este tipo de memoria se almacenan cosas como la BIOS o el firmware de los dispositivos. Por lo general se almacena en la ROM la información correspondiente a las especificaciones de los componentes y dispositivos, ya que algunas son cruciales para que el procesador pueda interactuar correctamente con el resto. Normalmente en chips muy pequeños que no se venden aparte y suelen venir soldados a la placa del hardware en concreto. De ahí que sea tan crítico en este tipo de memorias todos los procedimientos de actualización ya que, de producirse una interrupción o un error, podría dar al traste con su funcionalidad y, también, la del equipo o componente al que pertenece.