Pero por que la memoria RAM puede hacer mas lenta o mas rápida a nuestra computadora?
la respuesta mas sencilla seria que la memoria RAM se utiliza para cargar los programas que se guardan en nuestro disco duro, como el sistema operativo, y aplicaciones que se ocupan para los diversos programas que ejecutamos en nuestras computadora.
Pero por que no se leen directamente al disco duro???
Esto es por que el disco duro es un dispositivo de mayor lentitud de acceso y por que nos consumiría mucho energía estar teniendo acceso a este dispositivo con mucha frecuencia entre otros inconvenientes.
Así que entre mas RAM tenemos podemos cargar mas información a estas memorias sin tener que acceder a nuestro disco duro.
Tipos de memoria
La primera distinción la haremos entre memorias volátiles y no volátiles. Las memorias no volátiles no pierden su contenido cuando no están conectadas o alimentadas a una fuente de energía o corriente, un claro ejemplo de ellas es
En realidad el tipo de memorias utilizado en las cache es diferente a las de las memorias utilizadas como principales y esto es a que en cache se utilizan SRAM (Static RAM o RAM estática), que son mucho mas rápidas pero también son mas carras, ocupan mayor espacio y son de mayor consumo.
Funcionamiento básico
El funcionamiento básico de las memorias esta ligado a los fundamentos de la computación y el uso del sistema binario.
Las memorias cuentan con millones de células las cuales son capaces de almacenar cargas eléctricas, las cuales darán un valor de 1 o 0 esto dependerá de si están cargadas o descargadas, si esta una célula cargada guardara en u interior un valor binario de 1 y si no lo esta guardara en su interior una valor 0.
Módulos de memoria
Los módulos mas comunes actualmente son los DIMM (Dual Inline Memory Module o Modulo de Memoria Dual en Línea),este tipo de modulo se inserta en la placa base con ayuda de unos engranes que ayudan a asegurar el modulo contra una desprendimiento repentino o inesperado.
Sin embargo los módulos DIMM no son todos iguales al igual que todas las cosas han evolucionado, los módulos DIMM tiene hasta ahora tres generaciones la primera que es
Sin embargo con la llegada de Dual Chanel tendremos que adquirir los módulos de dos en dos, lo cual antes no era necesario.
SDRAM
este tipo de memoria esta obsoleta o en desuso aunque es muy común verla actualmente en equipos de generaciones no muy lejanas como las Pentium 4.
Las memorias sincronías (todas las actuales)se llaman así por que la frecuencia de la memoria esta sincronizada con el bus es decir trabajan a la misma velocidad que este, esto quiere decir que trabajan a la misma velocidad para que no existan retrasos ni esperas mas que las propias que introduce la misma memoria, esto hace un trafico fluido .
Este tipo de memoria cuenta básicamente con las mismas virtudes que una DDR, con la diferencia de que
DDR
ste tipo de memoria al igual que
Lo interesante de este tipo de memoria es su nombre y lo que ello conlleva, DDR(Double Data Rate) este tipo de memoria es capas de transferir el doble de de datos de lo que por su frecuencia de reloj le permitiría , lo cual es mandando dos pulsos en cada ciclo de reloj y no uno por cada ciclo como es con las memorias de tipo SDRAM, lo cual duplica ”virtualmente” la frecuencia de la memoria de tipo DDR.
DDR2
este tipo de memoria es la evolución de las DDR ya que parte de la velocidad de 400MHz (la cual esta disponible en DDR) pero ahora esta con nuevas especificaciones a 533, 667, 800 MHz.
DDR sigue contando con un ancho de datos de 64 bits y emplea al igual que las memorias de tipo SDRAM, módulos RIMM, pero con mayor densidad en los contactos ya que ahora cuenta con 240 pines. Dichos módulos son incompatibles con las placas bases actuales y requieren nuevos conjuntos de chipset ( que no es mas que los circuitos integrados en este casi los procesadores) para poder funcionar,
Memorias cache
Se le denomina CACHE por que representa un área “secreta” de almacenamiento, no puede ser diseccionada de forma habitual y es prácticamente invisible para el programador(hablando en arquitectura de computadoras )Las memorias de tipo cache utilizan una memoria RAM denominada SRAM (Static o estática) que es mucho mas rápida pero también mas costosa y voluminosa que
Este tipo de memoria temporal se utiliza en dispositivos como el procesador o el disco duro, para agilizar su funcionamiento.
En ella se almacena la información procedente de un medio mas lento, por ejemplo un disco duro, la ubicación de la memoria cache seria entre el CPU y el almacenamiento principal (el disco duro) esto es para que sea accesible incluso antes de que sea requerida cierta información, esto se consigue leyendo mas datos de lo que se solicita hasta llenar toda la cache.
La memoria cache esta organizada de forma diferente que la memoria regular, esta se estructura en bloques, cada uno de los cuales tiene una cantidad de almacenamiento , quizá de 8 o 16 bytes y sirven para guardar una copia exacta de la cantidad correspondiente de almacenamiento proveniente de algún sitio de la memoria principal.
También contiene etiquetas que identifican las localidades en la memoria principal que corresponde a la información contenida en el bloque. En otras palabras las etiquetas funcionan como un directorio para determinar que localidades de la memoria principal están disponibles en la memoria cache, una memoria ordinaria de cache de 64KB consta de 8192 bloques de 8 bytes.
Un CONTROLADOR CACHE verifica las etiquetas para determinar si la localidad de memoria de la petición se halla actualmente dentro de la memoria cache.
De ser así, esta se usa como si fuera memoria principal si la petición es una lectura simplemente se envía al CPU la palabra o dato correspondiente de la memoria cache , de igual manera si es una petición de escritura los datos del CPU se mandan a la localidad correspondiente de la memoria cache(a este tipo de peticiones se le da el nombre de aciertos).
En caso de que los datos requeridos no se encuentren en la memoria cache se tendrá que realizar un paso mas, un bloque del tamaño de uno de la memoria cache que contenga la ubicación deseada, se copia de la memoria a la memoria cache, se le da el nombre de línea cache a la unidad de transferencia entre el almacenamiento y la memoria cache, terminada la operación se realiza la transferencia de ella o desde ella como antes.
Cuando la memoria cache esta llena algunos bloques tienen que seleccionarse para ser reemplazados, para estos se ocupa un algoritmo llamado (menos recientemente usado) en sus siglas en ingles LRU, como su nombre lo indica elimina el menos o usado.
Cuando los bloques son leídos pero no alterados pueden sobre escribirse durante la misma situación, hay problema cuando hay solicitudes de guardar esto crea mas trabajo para la cache, pues los datos que se guardan también tiene que guardarse en la memoria principal para que esto asegura la integridad de el programa y los datos.
Se emplean comúnmente dos instrucciones para administrar el paso de la información de la cache a la memoria principal.
El primero llamado escribir a través, guarda otra vez los datos en la memoria principal después de ser modificados en la cache, tiene la ventaja de que las copias de la cache y la principal siempre son idénticas.
Se utiliza otro método denominado guardar en, pos escritura o poscopia, este método es mas rápido en las escrituras en la memoria se realizan solo cuando una línea cache es remplazada realmente, pero el diseño requiere mas esfuerzo para evitar circunstancias donde se puede perder la información.
Por ejemplo si dos programas están usando los mismos datos en bloques independientes cache y uno los cambia, el diseño ha de garantizar que el otro programa tenga acceso a los datos actualizados esto lo garantiza el controlador cache.
En el caso del procesador, la cache es limitada por razones de tamaño el CPU, por lo que es normal utilizar tamaños por debajo del mega bité, por eso el procesador no siempre encontrara en la memoria cache el dato que requiere, y aquí es cuando se produce un fallo de cache.
Como una forma para contrarrestar este tipo de fallos de cache ,se trabaja con algo conocido como niveles de cache y es normal tener dos o tres de estos niveles.
L1(level 1) aquí es donde buscara los datos de menos tamaño en caso de que no
Se encuentra en este nivel ira al siguiente.
L2(level2)será una zona de mayor memoria pero en caso de que tampoco se en
Cuentre en este nivel pasara al siguiente.
L3(level 3)habitualmente este nivel de cache esta situada en la placa base ,o
Pasara hasta la lenta memoria RAM.
cabe mencionar que ni el CPU ni el software están enterados de las acciones de la memoria cache ni de su presencia así también de las acciones del controlador
Dual chanel
Esto no es más que una técnica para intentar reducir el llamado cuello de botella que se produce en el subsistema de la memoria, el cual se produce por que los procesadores cada vez tienen mayores velocidades.
Un hecho es que tanto como el cpu como el bus han aumentado su frecuencia de trabajo a comparación de cómo lo han hecho las memorias
Así con el DUALCHANEL se duplica el bus de acceso de la memoria y se consigue que si tenemos dos módulos de memoria conveniente conectados (uno a cada canal), el acceso a estos canales será del doble de rápido, teniendo en cuenta que el ancho de la memoria actual es de 64bits, con el dual chanel se tienen 128bits, ya que podemos almacenar 64bits en un modulo DIMM y los 64bits siguientes en el otro.
Otra de las ventajas del DUAL CHANEL es que reduce la latencia ya que dispone de dos controladores independientes (uno para casa canal), mientras se procesa con la lectura de un canal el segundo controlador puede estar preparando la entrega del siguiente.
Latencia
Por lo regular para adquirir un modulo de memoria solo ocupamos saber su capacidad y su velocidad y por ende el nombre impuesto por JEDEC(joint electronic device engineering council), como por ejemplo una PC 3200.
Aunque si se quiere o se acude a una tienda especializada podemos conocer otros datos tales como la latencia, la cual nos indica cuanto tiempo tarde una memoria en regresarnos el dato que se solicita (esto es en ciclos de reloj), definitivamente entre mas pequeño sea el valor de
La latencia se denomina como CL(Cas Latency), aunque es diferente en cada memoria , por lo regular la latencia se presenta en un formato parecido e este 3-3-3 o3.5-3-3 donde el primer numero es
Memoria grafica
Las tarjetas graficas actuales son grandes consumidoras de memoria RAM y esto es más que nada a las texturas las que son las mayoras consumidoras de memoria
El tipo de memoria empleada en las tarjetas graficas son de tipo DDR o DDR2, aunque a diferencia de las que se ocupan en la placa base, están trabajan a 128 y 256 bits y por ende cuentan con una mayor capacidad de transferencia.
Memoria compartida
No todas las tarjetas graficas tiene una buena cantidad de memoria RAM integrada en su lugar se utilaza lo que se denomina lo que se llama shared memory, esta técnica permite construir adaptadores gráficos sin memoria utilizando solo la memoria RAM de la memoria principal, esto reduce el coste ya que se ahorra el costo de la memoria grafica, pero esto implica que el sistema tiene que contar con mas memoria principal o RAM .
Esto solo puede ser interesante en entornos dónde no vallan a utilizarse las capacidades 3D de la tarjeta grafica, ya que en estos casos es suficiente con asignar al adaptador 4 megas, los cuales no se notaran mucho en el sistema.
Claro que este valor se puede cambiar entrando al setup del BIOS
1 comentario:
Darle las gracias a este amigo por su conocimiento y por haber querido compartirlo con todos nosotros. Me ha sido muy util y clarificador para entender parte de mi asignatura de ingenieria informatica. Es una excelente aportación. Lo dicho... gracias
oscarrr64@yahoo.es
Publicar un comentario