Uso por el sistema
Se utiliza como memoria de trabajo para el sistema
operativo, los programas y la mayoría del software. Es allí donde se cargan
todas las instrucciones que ejecutan el procesador y otras unidades de cómputo.
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, no siendo necesario seguir un orden para acceder a la información de
la manera más rápida posible. Durante el encendido del computador, la rutina POST verifica que los módulos de
memoria RAM estén conectados de manera correcta. En el caso que no existan o no
se detecten los módulos, la mayoría de tarjetas madres emiten una serie de
pitidos que indican la ausencia de memoria principal. Terminado ese proceso, la
memoria BIOS puede realizar un test básico
sobre la memoria RAM indicando fallos mayores en la misma.
Uno de los primeros tipos de memoria RAM fue la memoria de núcleo magnético, desarrollada entre 1949 y 1952 y usada en muchos computadores hasta el desarrollo de circuitos integrados a finales de los años 60 y principios de los 70. Esa memoria requería que cada bit estuviera almacenado en un toroide de material ferromágnetico de algunos milímetros de diámetro, lo que resultaba en dispositivos con una capacidad de memoria muy pequeña. Antes que eso, las computadoras usaban relés y líneas de retardo de varios tipos construidas para implementar las funciones de memoria principal con o sin acceso aleatorio.
En 1969 fueron lanzadas una de las primeras
memorias RAM basadas en semiconductores de silicio por parte de Intel con el integrado 3101 de 64 bits
de memoria y para el siguiente año se presentó una memoria DRAM de 1 Kibibyte, referencia 1103
que se constituyó en un hito, ya que fue la primera en ser comercializada con
éxito, lo que significó el principio del fin para las memorias de núcleo
magnético. En comparación con los integrados de memoria DRAM actuales, la 1103
es primitiva en varios aspectos, pero tenía un desempeño mayor que la memoria
de núcleos.
En 1973 se presentó una innovación que permitió
otra miniaturización y se convirtió en estándar para las memorias DRAM: la
multiplexación en tiempo de la direcciones de memoria. MOSTEK lanzó la referencia MK4096 de 4 Kb en un empaque de
16 pines, mientras sus competidores las
fabricaban en el empaque DIP de 22 pines. El esquema de
direccionamiento se convirtió en un estándar de
facto debido a la gran popularidad que logró esta referencia de DRAM. Para
finales de los 70 los integrados eran usados en la mayoría de computadores
nuevos, se soldaban directamente a las placas base o se instalaban en zócalos,
de manera que ocupaban un área extensa de circuito impreso. Con el tiempo se
hizo obvio que la instalación de RAM sobre el impreso principal, impedía la
miniaturización , entonces se idearon los primeros módulos de memoria como el SIPP, aprovechando las ventajas de la construcción modular. El formato SIMM fue una mejora al anterior,
eliminando los pines metálicos y dejando unas áreas de cobre en uno de los
bordes del impreso, muy similares a los de las tarjetas de expansión, de hecho los módulos SIPP y los primeros SIMM tienen la misma
distribución de pines.
A finales de los 80 el aumento en la velocidad de
los procesadores y el aumento en el ancho de banda requerido, dejaron rezagadas
a las memorias DRAM con el esquema original MOSTEK, de manera que se realizaron
una serie de mejoras en el direccionamiento como las siguientes:
Módulos formato SIMM de 30 y 72
pines, los últimos fueron utilizados con integrados tipo EDO-RAM.
FPM-RAM (Fast Page Mode
RAM)
Inspirado en técnicas como el "Burst
Mode" usado en procesadores como el Intel 486, se implantó un modo direccionamiento
en el que el controlador de memoria envía una sola dirección y recibe a cambio
esa y varias consecutivas sin necesidad de generar todas las direcciones. Esto
supone un ahorro de tiempos ya que ciertas operaciones son repetitivas cuando
se desea acceder a muchas posiciones consecutivas. Funciona como si deseáramos
visitar todas las casas en una calle: después de la primera vez no seria
necesario decir el número de la calle únicamente seguir la misma. Se
fabricaban con tiempos de acceso de 70 ó 60 ns y fueron muy populares en
sistemas basados en el 486 y los primeros Pentium.
EDO-RAM (Extended Data
Output RAM)
Lanzada en 1995 y con tiempos de accesos de 40 o 30
ns suponía una mejora sobre su antecesora la FPM. La EDO, también es capaz de
enviar direcciones contiguas pero direcciona la columna que va utilizar
mientras que se lee la información de la columna anterior, dando como resultado
una eliminación de estados de espera, manteniendo activo el búffer de salida hasta que comienza el próximo ciclo de
lectura.
§
BEDO-RAM (Burst Extended
Data Output RAM)
Fue la evolución de la EDO RAM y competidora de la
SDRAM, fue presentada en 1997. Era un tipo de memoria que usaba generadores
internos de direcciones y accedía a más de una posición de memoria en cada
ciclo de reloj, de manera que lograba un desempeño un 50% mejor que la EDO.
Nunca salió al mercado, dado que Intel y otros fabricantes se decidieron
por esquemas de memoria sincrónicos que si bien tenían mucho del
direccionamiento MOSTEK, agregan funcionalidades distintas como señales de
reloj.
Tecnologías de memoria
La tecnología de memoria actual usa una señal
de sincronización para realizar las funciones de lectura-escritura de manera
que siempre esta sincronizada con un reloj del bus de memoria, a diferencia de las
antiguas memorias FPM y EDO que eran asíncronas. Hace más de una década toda la
industria se decantó por las tecnologías síncronas, ya que permiten construir
integrados que funcionen a una frecuencia superior a 66 MHz.
Memorias RAM con
tecnologías usadas en la actualidad.
SDR SDRAM
Artículo principal: SDRAM
Memoria síncrona, con tiempos de acceso de
entre 25 y 10 ns y que se presentan en módulos DIMM de 168 contactos. Fue
utilizada en los Pentium II y en losPentium III , así como en los AMD K6, AMD Athlon K7 y Duron. Está muy
extendida la creencia de que se llama SDRAM a secas, y que la denominación SDR
SDRAM es para diferenciarla de la memoria DDR, pero no es así, simplemente se
extendió muy rápido la denominación incorrecta. El nombre correcto es SDR SDRAM ya que ambas (tanto la SDR como la
DDR) son memorias síncronas dinámicas. Los tipos disponibles son:
PC100: SDR SDRAM,
funciona a un máx de 100 MHz.
PC133: SDR SDRAM,
funciona a un máx de 133 MHz.
DDR SDRAM
Artículo principal: DDR SDRAM
Memoria síncrona, envía los datos dos veces
por cada ciclo de reloj. De este modo trabaja al doble de velocidad del bus del
sistema, sin necesidad de aumentar la frecuencia de reloj. Se presenta en
módulos DIMM de 184 contactos en
el caso de ordenador de escritorio y en módulos de 144 contactos para los
ordenadores portátiles. Los tipos disponibles son:
PC2100 o DDR 266:
funciona a un máx de 133 MHz.
PC2700 o DDR 333:
funciona a un máx de 166 MHz.
PC3200 o DDR 400:
funciona a un máx de 200 MHz.
DDR2 SDRAM
Módulos de memoria
instalados de 256 MiB cada uno en un sistema con doble canal.
Artículo principal: DDR2
Las memorias DDR 2 son una mejora de las
memorias DDR (Double Data
Rate), que permiten que los búferes de entrada/salida trabajen al doble de
la frecuencia del núcleo, permitiendo que durante cada ciclo de reloj se
realicen cuatro transferencias. Se presentan en módulos DIMM de 240 contactos. Los
tipos disponibles son:
PC2-4200 o DDR2-533:
funciona a un máx de 533 MHz.
PC2-5300 o DDR2-667:
funciona a un máx de 667 MHz.
PC2-6400 o DDR2-800:
funciona a un máx de 800 MHz.
PC2-8600 o DDR2-1066:
funciona a un máx de 1066 MHz
PC2-9000 o DDR2-1200:
funciona a un máx de 1200 MHz
DDR3 SDRAM
Artículo principal: DDR3
Las memorias DDR 3 son una mejora de las
memorias DDR 2, proporcionan significantes mejoras en el rendimiento en niveles
de bajo voltaje, lo que lleva consigo una disminución del gasto global de
consumo. Los módulos DIMM DDR 3 tienen 240
pines, el mismo número que DDR 2; sin embargo, los DIMMs son físicamente
incompatibles, debido a una ubicación diferente de la muesca. Los tipos
disponibles son:
PC3-8600 o DDR3-1066:
funciona a un máx de 1066 MHz.
PC3-10600 o
DDR3-1333: funciona a un máx de 1333 MHz.
PC3-12800 o
DDR3-1600: funciona a un máx de 1600 MHz.
Módulos de la memoria RAM
Formato SO-DIMM.
Los módulos de memoria RAM son tarjetas de circuito impreso que tienen soldados integrados de memoria DRAM por una o ambas caras. La
implementación DRAM se basa en una topología de Circuito eléctrico que permite alcanzar densidades altas de memoria
por cantidad de transistores, logrando integrados de decenas o cientos de
Megabits. Además de DRAM, los módulos poseen un integrado que permiten la
identificación de los mismos ante el computador por medio del protocolo de
comunicación SPD.
La conexión con los demás componentes se realiza
por medio de un área de pines en uno de los filos del circuito impreso, que
permiten que el modulo al ser instalado en un zócalo apropiado de la placa
base, tenga buen contacto eléctrico con los controladores de memoria y las
fuentes de alimentación. Los primeros módulos comerciales de memoria eran SIPP de formato propietario, es decir
no había un estándar entre distintas marcas. Otros módulos propietarios
bastante conocidos fueron los RIMM, ideados por la empresa RAMBUS.
La necesidad de hacer intercambiable los módulos y
de utilizar integrados de distintos fabricantes condujo al establecimiento de
estándares de la industria como los JEDEC.
Módulos SIMM: Formato usado en computadores antiguos. Tenían un
bus de datos de 16 o 32 bits
Módulos DIMM: Usado en computadores de escritorio. Se
caracterizan por tener un bus de datos de 64 bits.
Módulos SO-DIMM: Usado en computadores
portátiles. Formato miniaturizado de DIMM.
Relación con el resto del sistema
Diagrama de la arquitectura de un
ordenador.
Dentro de la jerarquía de memoria la RAM se encuentra en un nivel después de los
registros del procesador y de las cachés en cuanto a velocidad. Los módulos de
memoria se conectan eléctricamente a un controlador de memoria que gestiona las señales
entrantes y salientes de los integrados DRAM. Las señales son de tres tipos:
direccionamiento, datos y señales de control. En el módulo de memoria esas
señales están divididas en dos buses y un conjunto misceláneo de líneas de
control y alimentación, Entre todas forman el bus de memoria que conecta la RAM con su
controlador:
§ Bus de datos: Son las líneas que llevan
información entre los integrados y el controlador. Por lo general están
agrupados en octetos siendo de 8,16,32 y 64 bits, cantidad que debe igualar el
ancho del bus de datos del procesador. En el pasado, algunos formatos de modulo,
no tenían un ancho de bus igual al del procesador.En ese caso había que montar
módulos en pares o en situaciones extremas, de a 4 módulos, para completar lo
que se denominaba banco de memoria, de otro modo el sistema no funciona. Esa fue la
principal razón para aumentar el número de pines en los módulos, igualando al
ancho de bus de procesadores como el Pentium a 64 bits, a principios de los
90.
§ Bus de direcciones: Es un bus en el cual se colocan
las direcciones de memoria a las que se requiere acceder. No es igual al bus de
direcciones del resto del sistema, ya que está multiplexado de manera que la
dirección se envía en dos etapas.Para ello el controlador realiza
temporizaciones y usa las líneas de control. En cada estándar de módulo se establece un tamaño máximo en
bits de este bus, estableciendo un límite teórico de la capacidad máxima por
módulo.
§ Señales misceláneas: Entre las que están las de la
alimentación (Vdd, Vss) que se encargan de entregar potencia a los integrados.
Están las líneas de comunicación para el integrado de presencia que sirve para identificar cada módulo. Están las
líneas de control entre las que se encuentran las llamadas RAS (row address
strobe) y CAS (column address strobe) que controlan el bus de direcciones, por
ultimo estan las señales de reloj en las memorias sincrónicas SDRAM.
Algunos controladores de memoria en sistemas como
PC y servidores se encuentran embebidos en el llamado "North Bridge" o "Puente Norte" de la placa base. Otros sistemas
incluyen el controlador dentro del mismo procesador (en el caso de los
procesadores desde AMD Athlon 64 e Intel Core i7 y posteriores). En la mayoría de
los casos el tipo de memoria que puede manejar el sistema está limitado por los
sockets para RAM instalados en la placa base, a pesar que los controladores de
memoria en muchos casos son capaces de conectarse con tecnologías de memoria
distintas.
Una característica especial de algunos
controladores de memoria, es el manejo de la tecnología canal doble (Dual Channel), donde el controlador maneja
bancos de memoria de 128 bits, siendo capaz de entregar los datos de manera
intercalada, optando por uno u otro canal, reduciendo las latencias vistas por
el procesador. La mejora en el desempeño es variable y depende de la
configuración y uso del equipo. Esta característica ha promovido la
modificación de los controladores de memoria, resultando en la aparición de
nuevos chipsets (la serie 865 y 875 de Intel) o de nuevos zócalos de procesador
en los AMD (el 939 con canal doble , reemplazo el 754 de canal sencillo). Los
equipos de gama media y alta por lo general se fabrican basados en chipsets o zócalos que soportan doble
canal o superior.
Detección y corrección de errores
Existen dos clases de errores en los sistemas de
memoria, las fallas (Hard fails) que son daños en el hardware y
los errores (soft errors)provocados por causas fortuitas. Los primeros son
relativamente fáciles de detectar (en algunas condiciones el diagnóstico es
equivocado), los segundos al ser resultado de eventos aleatorios, son más
difíciles de hallar. En la actualidad la confiabilidad de las memorias RAM
frente a los errores, es suficientemente alta como para no realizar
verificación sobre los datos almacenados, por lo menos para aplicaciones de
oficina y caseras. En los usos más críticos, se aplican técnicas de corrección
y detección de errores basadas en diferentes estrategias:
§ La técnica del bit de paridad consiste en guardar un bit
adicional por cada byte de datos, y en la lectura se comprueba si el número de
unos es par (paridad par) o impar (paridad impar), detectándose así el error.
§ Una técnica mejor es la que usa ECC, que
permite detectar errores de 1 a 4 bits y corregir errores que afecten a un sólo
bit. Esta técnica se usa sólo en sistemas que requieren alta fiabilidad.
Por lo general los sistemas con cualquier tipo de
protección contra errores tiene un costo más alto, y sufren de pequeñas
penalizaciones en desempeño, con respecto a los sistemas sin protección. Para
tener un sistema con ECC o paridad, el chipset y las memorias deben tener
soporte para esas tecnologías. La mayoría de placas base no poseen dicho
soporte.
Para los fallos de memoria se pueden utilizar
herramientas de software especializadas que realizan pruebas sobre los módulos
de memoria RAM. Entre estos programas uno de los más conocidos es la aplicación Memtest86+ que detecta fallos de memoria.
REFLEXION
Hay muchos tipos de memorias RAM unas ya mas descontinuadas que otras y por lo mismo diferencian en tamaño tanto de capacidad como en dimencion.
Estos dispositivos tambien almacenan datos pero otros diferentes a los que guarda una memoria flash o un Disco Duro, estos son datos en bites.
No hay comentarios:
Publicar un comentario