El rol de la memoria:
El término "memoria" se aplica a cualquier
componente electrónico capaz de almacenar datos en forma temporal. Existen dos
categorías principales de memorias:
La memoria interna que almacena datos en forma temporal
mientras los programas se están ejecutando. La memoria interna utiliza
microconductores, es decir circuitos electrónicos rápidos especializados. La
memoria interna corresponde a lo que llamamos memoria de acceso aleatorio
(RAM).
La memoria auxiliar (llamada también memoria física o
memoria externa) que almacena información a largo plazo, incluso después de
apagar el equipo. La memoria auxiliar corresponde a los dispositivos magnéticos
de almacenamiento como por ejemplo el disco duro, dispositivos ópticos de
almacenamiento como los CD-ROM y DVD-ROM, y a las memorias de sólo lectura.
Características técnicas:
Las principales características de una memoria son las
siguientes:
Capacidad, que representa el volumen global de información
(en bits) que la memoria puede almacenar.
Tiempo de acceso, que corresponde al intervalo de tiempo
entre la solicitud de lectura/escritura y la disponibilidad de los datos.
Tiempo de ciclo, que representa el intervalo de tiempo
mínimo entre dos accesos sucesivos.
Rendimiento, que define el volumen de información
intercambiado por unidad de tiempo, expresado en bits por segundo.
No volatilidad, que caracteriza la capacidad de una memoria
para almacenar datos cuando no recibe más electricidad.
La memoria ideal posee una gran capacidad con tiempos de
acceso y tiempos de ciclo muy restringidos, un rendimiento elevado y no es
volátil.
Sin embargo, las memorias rápidas también son las más
costosas. Ésta es la razón por la cual se utilizan en un equipo memorias que
usan diferentes tecnologías, interconectadas entre sí y organizadas de manera
jerárquica.
Las memorias más rápidas están ubicadas en pequeñas
cantidades cerca del procesador. Las memorias auxiliares, que no son tan
rápidas, se utilizan para almacenar información permanentemente.
Tipos de memorias
Memoria de acceso aleatorio
La memoria de acceso aleatorio, llamada generalmente RAM es
la memoria principal del sistema, es decir, un espacio que permite almacenar
datos temporalmente mientras un programa se está ejecutando.
A diferencia del almacenamiento de datos en una memoria
auxiliar como un disco duro, RAM es volátil, lo que significa que solamente
almacena datos mientras recibe electricidad. Por lo tanto, cada vez que el
equipo se apaga, todos los datos de la memoria se borran irremediablemente.
Memoria de sólo lectura
La memoria de sólo lectura, llamada ROM, es un tipo de
memoria que permite guardar la información contenida en ella aun cuando la
memoria no recibe electricidad. Básicamente, este tipo de memoria tiene
únicamente acceso de sólo lectura. Sin embargo, es posible guardar información
en algunos tipos de memoria ROM.
Memoria flash
La memoria flash es un punto intermedio entre las memorias
de tipo RAM y ROM. La memoria flash posee la no volatilidad de las memorias ROM
mientras que provee acceso a la lectura y escritura. En contrapartida, los
tiempos de acceso de las memorias flash son más prolongados que los de RAM.
Tipos de memoria de acceso aleatorio
En términos generales, existen dos grandes categorías de
memoria de acceso aleatorio:
La memorias DRAM (Módulo de Acceso Aleatorio Dinámico), las
cuales son menos costosas. Se utilizan principalmente para la memoria principal
del ordenador
Las memorias SRAM (Módulo de Acceso Aleatorio Estático),
rápidas pero relativamente costosas. Las memorias SRAM se utilizan en
particular en la memoria caché del procesador
Funcionamiento de la memoria de acceso aleatorio:
La memoria de acceso aleatorio consta de cientos de miles de
pequeños capacitadores que almacenan cargas. Al cargarse, el estado lógico del
capacitador es igual a 1; en el caso contrario, es igual a 0, lo que implica
que cada capacitador representa un bit de memoria.
Teniendo en cuenta que se descargan, los capacitadores deben
cargarse constantemente (el término exacto es actualizar) a intervalos
regulares, lo que se denomina ciclo de actualización. Las memorias DRAM, por
ejemplo, requieren ciclos de actualización de unos 15 nanosegundos (ns).
Cada capacitador está acoplado a un transistor (tipo MOS),
lo cual posibilita la "recuperación" o modificación del estado del
capacitador. Estos transistores están dispuestos en forma de tabla (matriz), de
modo que se accede a la caja de memoria (también llamada punto de memoria)
mediante una línea y una columna.
De
este modo, en el caso de la memoria DRAM, por ejemplo, el tiempo de acceso es
de 60 nanosegundos (35 ns del tiempo del ciclo más 25 ns del tiempo de
latencia).
En el ordenador, el tiempo del ciclo corresponde al opuesto de la frecuencia de
reloj; por ejemplo, en un ordenador con una frecuencia de 200 MHz, el tiempo
del ciclo es de 5 ns (1/200*106).
En consecuencia, en un ordenador con alta frecuencia, que
utiliza memorias con un tiempo de acceso mucho más prolongado que el tiempo del
ciclo del procesador, se deben producir estados de espera para que se permita
el acceso a la memoria. En el caso de un ordenador con una frecuencia de 200
MHz que utiliza memorias DRAM (y con un tiempo de acceso de 60 ns), se generan
11 estados de espera para un ciclo de transferencia. El rendimiento del
ordenador disminuye a medida que aumenta el número de estados de espera, por lo
que es recomendable implementar el uso de memorias más rápidas.
Formatos de módulos RAM
Existen diferentes tipos de memoria de acceso aleatorio.
Estas se presentan en forma de módulos de memoria que pueden conectarse a la
placa madre.
Las primeras memorias fueron chips denominados DIP (Paquete
en Línea Doble). Hoy en día, las memorias por lo general se suministran en
forma de módulos, es decir, tarjetas que se colocan en conectores designados
para tal fin. En términos generales, existen tres tipos de módulos RAM:
módulos en formato SIMM (Módulo de Memoria en Línea Simple):
se trata de placas de circuito impresas, con uno de sus lados equipado con
chips de memoria. Existen dos tipos de módulos SIMM, según el número de
conectores:
Los módulos SIMM con 30 conectores (de 89x13mm) son memorias
de 8 bits que se instalaban en los PC de primera generación (286, 386)
Los módulos SIMM con 72 conectores (sus dimensiones son
108x25mm) son memorias capaces de almacenar 32 bits de información en forma
simultánea. Estas memorias se encuentran en los PC que van desde el 386DX hasta
los primeros Pentiums. En el caso de estos últimos, el procesador funciona con un
bus de información de 64 bits, razón por la cual, estos ordenadores necesitan
estar equipados con dos módulos SIMM. Los módulos de 30 clavijas no pueden
instalarse en posiciones de 72 conectores, ya que la muesca (ubicada en la
parte central de los conectores) imposibilitaría la conexión.
Los módulos en formato DIMM (Módulo de Memoria en Línea
Doble), son memorias de 64 bits, lo cual explica por qué no necesitan
emparejamiento. Los módulos DIMM poseen chips de memoria en ambos lados de la
placa de circuito impresa, y poseen a la vez, 84 conectores de cada lado, lo
cual suma un total de 168 clavijas. Además de ser de mayores dimensiones que
los módulos SIMM (130x25mm), estos módulos poseen una segunda muesca que evita
confusiones
Cabe observar que los conectores DIMM han sido mejorados
para facilitar su inserción, gracias a las palancas ubicadas a ambos lados de
cada conector.
También existen módulos más pequeños, conocidos como SO DIMM
(DIMM de contorno pequeño), diseñados para ordenadores portátiles. Los módulos
SO DIMM sólo cuentan con 144 clavijas en el caso de las memorias de 64 bits, y
con 77 clavijas en el caso de las memorias de 32 bits.
Los módulos en formato RIMM (Módulo de Memoria en Línea
Rambus, también conocido como RD-RAM o DRD-RAM) son memorias de 64 bits
desarrolladas por la empresa Rambus. Poseen 184 clavijas. Dichos módulos poseen
dos muescas de posición, con el fin de evitar el riesgo de confusión con
módulos previos.
Dada la alta velocidad de transferencia de que disponen, los
módulos RIMM poseen una película térmica cuyo rol es el mejorar la
transferencia de calor.
Al igual que con los módulos DIMM, también existen módulos
más pequeños, conocidos como SO RIMM (RIMM de contorno pequeño), diseñados para
ordenadores portátiles. Los módulos SO RIMM poseen sólo 160 clavijas.
DRAM PM
La DRAM (RAM Dinámica) es el tipo de memoria más
común en estos tiempos. Se trata de una memoria cuyos transistores se disponen
en forma de matriz, en forma de filas y columnas. Un transistor, acoplado con
un capacitador, proporciona información en forma de bits. Dado que un octeto
contiene 8 bits, un módulo de memoria DRAM de 256 Mo contendrá por lo tanto 256
* 2^10 * 2^10 = 256 * 1024 * 1024 = 268.435.456 octetos = 268.435.456 * 8 =
2.147.483.648 bits =
2.147.483.648 transistores. De esta manera, un módulo de 256
Mo posee una capacidad de 268.435.456 octetos, o 268 Mo. Los tiempos de acceso
de estas memorias son de 60 ns.
Además, el acceso a la memoria en general se relaciona con
la información almacenada consecutivamente en la memoria. De esta manera, el
modo de ráfaga permite el acceso a las tres partes de información que siguen a
la primera parte, sin tiempo de latencia adicional. De este modo, el tiempo
necesario para acceder a la primera parte de la información es igual al tiempo
del ciclo más el tiempo de latencia, mientras que el tiempo necesario para
acceder a las otras tres partes de la información sólo es igual al tiempo de
ciclo; los cuatro tiempos de acceso se expresan, entonces, en la forma X-Y-Y-Y.
Por ejemplo, 5-3-3-3 indica que la memoria necesita 5 ciclos del reloj para
acceder a la primera parte de la información, y 3 para acceder a las
subsiguientes.
DRAM FPM
Para acelerar el acceso a la DRAM, existe una técnica,
conocida como paginación, que permite acceder a la información ubicada en una
misma columna, modificando únicamente la dirección en la fila, y evitando de
esta manera, la repetición del número de columna entre lecturas por fila. Este
proceso se conoce como DRAM FPM (Memoria en Modo Paginado). El FPM alcanza
tiempos de acceso de unos 70 u 80 nanosegundos, en el caso de frecuencias de
funcionamiento de entre 25 y 33 Mhz.
DRAM EDO
La DRAM EDO (Salida de Información Mejorada, a veces
denominada "híper- página") se introdujo en 1995. La técnica
utilizada en este tipo de memoria implica direccionar la columna siguiente
mientras paralelamente se está leyendo la información de una columna anterior.
De esta manera, se crea un acceso superpuesto que permite ahorrar tiempo en
cada ciclo. El tiempo de acceso de la memoria EDO es de 50 a 60 nanosegundos,
en el caso de una frecuencia de funcionamiento de entre 33 y 66 Mhz.
De modo que la RAM EDO, cuando se utiliza en modo ráfaga,
alcanza ciclos 5-2-2-2, lo cual representa una ganancia de 4 ciclos al acceder
a 4 partes de información. Dado que la memoria EDO no funcionaba con
frecuencias mayores a 66 Mhz, se suspendió su uso en favor de la SDRAM.
La SDRAM (DRAM Sincrónica), introducida en 1997, permite la
lectura de la información sincronizada con el bus de la placa madre, a
diferencia de lo que ocurre con las memorias EDO y FPM (conocidas como
asincrónicas), las cuales poseen reloj propio. La SDRAM elimina de esta manera,
los tiempos de espera ocasionados por la sincronización con la placa madre.
Gracias a esto se logra un ciclo de modo ráfaga de 5-1-1-1, con una ganancia de
3 ciclos en comparación con la RAM EDO. La SDRAM puede, entonces, funcionar con
una frecuencia mayor a 150 MHz, logrando tiempos de acceso de unos 10 ns.
DR-SDRAM (Rambus DRAM)
La DR-SDRAM (DRAM Directa de Rambus), es un tipo de memoria
que permite la transferencia de datos a un bus de 16 bits y a una frecuencia de
800 Mhs, lo que proporciona un ancho de banda de 1,6 GB/s. Al igual que la
SDRAM, este tipo de memoria está sincronizada con el reloj del bus, a fin de
mejorar el intercambio de información. Sin embargo, la memoria RAMBUS es un
producto de tecnología patentada, lo que implica que cualquier empresa que
desee producir módulos RAM que utilicen esta tecnología deberá abonar regalías,
tanto a RAMBUS como a Intel.
DDR-SDRAM
La DDR-SDRAM (SDRAM de Tasa Doble de Transferencia de Datos)
es una memoria basada en la tecnología SDRAM, que permite duplicar la tasa de
transferencia alcanzada por ésta utilizando la misma frecuencia.
La información se lee o ingresa en la memoria al igual que
un reloj. Las memorias DRAM estándares utilizan un método conocido como SDR
(Tasa Simple de Transferencia de Datos), que implica la lectura o escritura de
información en cada borde de entrada.
La DDR permite duplicar la frecuencia de lectura/escritura
con un reloj a la misma frecuencia, enviando información a cada borde de
entrada y a cada borde posterior.
Las memorias DDR por lo general poseen una marca, tal como
PCXXXX, en la que "XXXX" representa la velocidad en MB/s.
DDR2-SDRAM
Las memorias DDR2 (o DDR-II) alcanzan velocidades dos veces
superiores a las memorias DDR con la misma frecuencia externa.
El acrónimo QDR (Tasa Cuádruple de Transferencia de Datos o
con Quad-pump) designa el método de lectura y escritura utilizado. De hecho, la
memoria DDR2 utiliza dos canales separados para los procesos de lectura y
escritura, con lo cual es capaz de enviar o recibir el doble de información que
la DDR.
La DDR2 también posee más conectores que la DDR clásica (la
DDR2 tiene 240, en comparación con los 184 de la DDR).
Cuadro de resumen
El siguiente cuadro muestra la equivalencia entre la
frecuencia de la placa madre (FSB), la frecuencia de la memoria (RAM) y su
velocidad
Memoria
|
Nombre
|
Frecuencia (RAM)
|
Frecuencia (RAM)</th>
|
Velocidad
|
DDR200
|
PC1600
|
200 MHz
|
100 MHz
|
1,6 GB/s
|
DDR266
|
PC2100
|
266 MHz
|
133 MHz
|
2,1 s
|
DDR333
|
PC2700
|
333 MHz
|
166 MHz
|
2,7 s
|
DDR400
|
PC3200
|
400 MHz
|
200 MHz
|
3,2 s
|
DDR433
|
PC3500
|
433 MHz
|
217 MHz
|
3,5 s
|
DDR466
|
PC3700
|
466 MHz
|
233 MHz
|
3,7 s
|
DDR500
|
PC4000
|
500 MHz
|
250 MHz
|
4 s
|
DDR533
|
PC4200
|
533 MHz
|
266 MHz
|
4,2 s
|
DDR538
|
PC4300
|
538 MHz
|
269 MHz
|
4,3 s
|
DDR550
|
PC4400
|
550 MHz
|
275 MHz
|
4,4 s
|
DDR2-400
|
PC2-3200
|
400 MHz
|
100 MHz
|
3,2 s
|
DDR2-533
|
PC2-4300
|
533 MHz
|
133 MHz
|
4,3 s
|
DDR2-667
|
PC2-5300
|
667 MHz
|
167 MHz
|
5,3 s
|
DDR2-675
|
PC2-5400
|
675 MHz
|
172,5 MHz
|
5,4 s
|
DDR2-800
|
PC2-6400
|
800 MHz
|
200 MHz
|
6,4 s
|
Sincronización (tiempos)
No es poco común ver valores como "3-2-2-2" ó
"2-3-3-2" para describir los parámetros de la memoria de acceso
aleatorio. Esta sucesión de cuatro cifras describe la sincronización de la
memoria (tiempo); es decir, la secuencia de ciclos de reloj necesaria para
acceder a la información almacenada en la RAM. Las cuatro cifras corresponden,
en orden, a los siguientes valores:
demora de CAS o latencia de CAS (CAS significa Señalizador
de Direccionamiento en Columna): es el número de ciclos de reloj que transcurre
entre el envío del comando de lectura y la llegada de la información. En otras
palabras, es el tiempo necesario para acceder a una columna.
Tiempo de precarga de RAS (conocido como tRP; RAS significa
Señalizador de Direccionamiento en Fila): es el número de ciclos de reloj
transcurridos entre dos instrucciones de RAS, es decir, entre dos accesos a una
fila.
demora de RAS a CAS (a veces llamada tRCD): es el número de
ciclos de reloj correspondiente al tiempo de acceso de una fila a una columna.
tiempo activo de RAS (a veces denominado tRAS): es el número
de ciclos de reloj correspondiente al tiempo de acceso a una columna.
Las tarjetas de memoria están equipadas con un dispositivo
llamado SPD (Detección de Presencia en Serie), el cual permite al BIOS averiguar
los valores de ajuste nominales definidos por el fabricante. Se trata de una
EEPROM, cuya información puede cargarse en el BIOS si el usuario elige el
ajuste "auto".
Corrección de errores
Algunas memorias poseen mecanismos de corrección de errores,
con el fin de garantizar la integridad de la información que contienen. Este
tipo de memoria se utiliza por lo general en sistemas que trabajan con
información esencial, motivo por el cual este tipo de memoria se encuentra en
servidores
Bit de paridad
Los módulos con bits de paridad garantizan que los datos
contenidos en la memoria sean los necesarios. Para obtener esto, uno de los
bits de cada octeto almacenado en la memoria se utiliza para almacenar la suma
de los bits de datos. El bit de paridad vale 1 cuando la suma de los bits de
información arroja un número impar, y 0 en el caso contrario.
De este modo, los módulos con bit de paridad permiten la
integración de los datos que se verificarán, aunque por otro lado, no prevén la
corrección de errores. Además, de 9 Mo de memoria sólo 8 se emplearán para
almacenar datos, dado que el último mega-octeto se utiliza para almacenar los
bits de paridad.
Módulos ECC
Los módulos de memoria ECC (Códigos de Corrección de
Errores), disponen de varios bits dedicados a la corrección de errores
(conocidos como bits de control). Dichos módulos, utilizados principalmente en
servidores, permiten la detección y la corrección de errores.
Canal Doble
Algunos controladores de memoria disponen de un canal doble
para la memoria. Los módulos de memoria se utilizan en pares con el fin de
lograr un mayor ancho de banda y así poder utilizar al máximo la capacidad del
sistema. Al utilizar el Canal Doble, resulta indispensable utilizar un par de
módulos idénticos (de la misma frecuencia y capacidad, y, preferentemente, de
la misma marca).

No hay comentarios:
Publicar un comentario