Memoria “cache”.
Enviado por Albert • 16 de Octubre de 2017 • 3.481 Palabras (14 Páginas) • 810 Visitas
...
- SDRAM (Syncronous DRAM): Es muy diferente de la DRAM, pues ésta transmite información a través de la activación de señales mientras que SDRAM recibe y emite información sincronizada a un reloj externo.
El uso de un reloj permite que las SDRAM sean extremadamente más rápidas para leer y escribir.
También se pueden distinguir diversos tipos de memoria ROM:
- PROM (Programable ROM): Una vez grabadas no se pueden borrar.
- EPROM (Erasable PROM): Se pueden borrar con rayos ultravioletas y volver a grabar.
□ EEPROM (Electricaly EPROM): Son EPROM que se borran eléctricamente.
3.2. JERARQUÍAS DE MEMORIA
La forma más efectiva de conseguir un alto compromiso entre tamaño y rapidez de memoria RAM es dividir esta en varias partes jerarquizadas. La idea es, aparte de los propios registros de la CPU, que son la memoria más rápida y accesible a la CPU (están dentro de ella), tener una memoria pequeña pero que muy rápida, aunque no tan rápida como los registros, pero de mayor tamaño. Esta memoria se denomina memoria caché.
Por otra parte, a un nivel más alejado de la CPU, se dispondría de la memoria principal como tal, de mucho mayor tamaño que la memoria caché pero mas lenta que ésta. Así pues, según una jerarquía en donde prime la proximidad a la CPU, podemos distinguir los siguientes tipos de memoria.
- Registros: Es la memoria local e interna de la propia CPU. Es la memoria más rápida pero hay un número muy limitado de ellos. Se comunica con la memoria caché mediante palabras.
- Memoria Caché: Memoria intermedia entre la CPU y la Memoria Principal. Más rápida que ésta pero más pequeña, destinada a contener los datos que más usa, y que más probablemente usará, la CPU. Es frecuente usar memorias caché de 16Kb, 64Kb, 128Kb y 512Kb en los procesadores normales y hasta 2Mb en grandes ordenadores que funcionan como servidores. Por otra parte, como se quiere que la caché sea rápida pero de poco tamaño, suele usarse memoria SRAM para su construcción.
- Memoria Principal: Esta memoria es conocida usualmente con el nombre de memoria RAM, aunque realmente es una parte de ella. Es la memoria más grande y más lenta. Se comunica con la memoria caché por bloques. También se comunica con dispositivos de memoria secundaria, como el disco duro.
Lo habitual para implementar esta memoria es usar DRAM o SDRAM, por sus mejores prestaciones.
La otra gran idea para conseguir un gran rendimiento en la memoria es establecer una política tal que siempre se tienda a tener el la memoria caché los datos que más estén siendo usados por el procesador, o los que se piense
que serán más usados. Para esto hay diversas políticas predictivas, como considerar que los datos que van a ser más usados son los que están más cercanos a los que ya están siendo usados (principio de localidad espacial) o que los más usados serán los que han sido usados más recientemente (principio de localidad temporal).
Entre la CPU y la memoria caché se producirá un paso de palabras, puesto que la CPU solicitará a la caché datos de los que va a hacer uso en el acto, mientras que desde la caché a la memoria principal se transferirán bloques de palabras, también llamados páginas o segmentos, de forma que la caché obtenga de la memoria principal no sólo datos que van a ser usados en el acto, sino datos que se prevea que se usaran en un futuro próximo.
[pic 1]
Figura 20. Comunicación entre CPU, memoria Caché y Memoria principal
El siguiente gráfico ilustra muy claramente como se establece la jerarquía en la memoria en función de su proximidad a la CPU. Cuanto más próxima a la CPU, más rápida pero de menor tamaño será la memoria.
Además, el objetivo de la gestión de la memoria es maximizar las veces que el dato o instrucción accedido por la CPU esté disponible en los registros o en la memoria caché, reduciendo al mínimo los accesos a memoria principal o a otras memorias secundaria, como los disco duros y flexibles o los discos ópticos (CD-ROM, DVD,...).
[pic 2]
[pic 3]
[pic 4]
Figura 21. Jerarquía de memoria.
3.3. MEMORIA CACHÉ
Es una memoria auxiliar de acceso aleatorio de baja capacidad y muy rápida, que se añade entre la memoria principal y la CPU para mejorar el rendimiento de la unidad central. En la memoria caché, el sistema guarda el contenido o las posiciones de la memoria principal que más frecuentemente prevé que van a ser usadas, y gracias a esto gana mucha velocidad en el acceso a éstas.
La caché es el primer nivel dentro de la jerarquía de memoria, situándose bajo el procesador. Hoy en día la utilización de esta memoria es casi indispensable para cualquier ordenador, pudiendo utilizar en muchos de ellos varias memorias caché.
Al disponer de menos memoria caché que la que hay en niveles inferiores de la jerarquía, mucha información tendrá que ser buscada fuera de ella. El bloque de información que contiene el dato que provocó el fallo debe ser cargado en la caché sobre otro bloque ya situado en ella. El bloque seleccionado para ser reemplazado debe ser escrito en el siguiente nivel, siguiendo una estrategia determinada. Como el acceso a un nivel inferior supone una pérdida de tiempo o penalización de fallo, es muy importante tener en cuenta cual es la frecuencia de acierto, es decir, la probabilidad de encontrar la información en la caché. Para aumentar la tasa de acierto se debe ubicar y reemplazar la información en la caché para aprovechar lo mejor posible el principio de localidad espacial.
Pero no sólo es importante construir la caché de forma que se incremente la frecuencia de acierto. También es necesario conseguir que el tiempo de acierto y la penalización de fallo sean lo más pequeños posible. Desde el punto de vista de la caché se pueden conseguir estos objetivos mediante una organización que permita determinar rápidamente si un bloque de información se encuentra en la caché o no, y mediante una política acertada de escritura de los bloques en los niveles inferiores.
Casi todos los modelos de ordenadores ofrecen memoria caché
...