Clase - 4-5 Memoria Cache
Clase - 4-5 Memoria Cache
Clase - 4-5 Memoria Cache
Memoria Caché
joalcasta@gmail.com
Conceptos generales
El objetivo de la memoria caché es lograr
que la velocidad de la memoria sea lo
más rápida posible, consiguiendo al
mismo tiempo un tamaño grande al
precio de memorias semiconductoras
menos costosas.
Cantidad pequeña de memoria rápida.
Está entre la memoria principal normal y
la CPU.
joalcasta@gmail.com
Conceptos generales
La memoria caché es un búfer especial
de memoria que poseen las
computadoras, que funciona de manera
semejante a la memoria principal, pero
es de menor tamaño y de acceso más
rápido. Es usada por el microprocesador
para reducir el tiempo de acceso a
datos ubicados en la memoria principal
que se utilizan con más frecuencia.
https://es.wikipedia.org/wiki/Cach%C3%A9_(inform%C3%A1tica
)
joalcasta@gmail.com
Ubicación de la Caché
Organización de la Caché
ELEMENTOS DE DISEÑO DE LA
CACHÉ
Aunque hay muy diversas implementaciones de
caché, existen unos cuantos criterios básicos de
diseño que sirven para clasificar y diferenciar
entre arquitecturas de caché.
Niveles de la Memoria Caché
Es habitual encontrar tres niveles:
L1 o nivel 1:
Caché interna: la más cercana a la CPU
Tamaño pequeño (8KB-128KB) y máxima
velocidad
joalcasta@gmail.com
Niveles de la Memoria Caché
L2 ó nivel 2:
Caché externa: entre L1 y L3 (o entre L1 y
M. Principal)
Tamaño mediano (256KB – 4MB) y menor
velocidad que L1.
L3 ó nivel 3:
Último nivel antes de M. Principal
Tamaño mayor y menor velocidad que L2
joalcasta@gmail.com
Ejemplo: AMD quad-core
joalcasta@gmail.com
Ejemplo: AMD quad-core
joalcasta@gmail.com
Ejemplo: Intel Core i7
joalcasta@gmail.com
Estructura y diseño de la
cache
Función de correspondencia
Se requiere de un algoritmo que haga
corresponder los bloques de memoria
principal a las líneas de caché.
Además, se requiere algún medio para
determinar qué bloque de memoria principal
ocupa actualmente una línea dada de caché.
La elección de la función de correspondencia
determina cómo se organiza la caché.
Pueden utilizarse tres técnicas: directa,
asociativa, y asociativa por conjuntos.
joalcasta@gmail.com
Función de correspondencia
Función de correspondencia
Función de correspondencia
Algoritmo de sustitución
Una vez que se ha llenado la caché, para
introducir un nuevo bloque debe sustituirse uno
de los bloques existentes.
Para conseguir alta velocidad, tales algoritmos
deben implementarse en hardware. Se han
probado diversos algoritmos;
El más efectivo es probablemente el denominado
“utilizado menos recientemente” (LRU, least-
recently used) En este se sustituye el bloque que
se ha mantenido en la caché por más tiempo sin
haber sido referenciado
joalcasta@gmail.com
Algoritmo de sustitución
Ubicación de la Caché
• CPU
• Externa
• Interna
Transferencia de datos
• Interna
—Depende del tamaño del bus
• Externa
—Se utilizan bloques que son agrupaciones de
palabras
• Unidad direccionable
—Menor localización que puede ser direccionada
—Palabra
Métodos de acceso
• Secuencial
—Inicia en el comienzo de la memoria y va
leyendo posición por posición
—El tiempo de acceso depende de la localización
—Ejemplo: Un caset
• Directo
—Los bloques individuales tienen una única
dirección
—Acceso es un salto con respecto al acceso
secuencial
—El tiempo de acceso depende de la posición
anterior
—Ejemplo: Un disco
Métodos de acceso
• Aleatorio
—Las direcciones individuales identifican
direcciones exactamente
—El tiempo de acceso es independiente de la
localización anterior o sucesos anteriores
—Ejemplo: RAM
• Asociativo
—Los datos estan localizados por comparación
con el contenido de una porción de los datos
—El tiempo de acceso es independiente de
accesos previos
—Ejemplo cache
Direccionamiento
• ¿Ubicación de la cache?
— Entre el procesador y la unidad administradora de
memoria (MMU)
—Entre la MMU y la memoria principal
• La cache lógica (Cache virtual) almacena la
información utilizando direcciones virtuales
— Procesador accede la cache directamente, pero no la
cache física
—La cache se accede muy rápido
— Las direcciones virtuales usan el mismo espacio para
aplicaciones diferentes
• La caché fisica almacena información utilizando
direcciones de memoria principal
Pentium 4
Considere un computador de 32 bits con las siguientes
características:
Memoria física instalada de 256 MB
con un tiempo de acceso de 70 ns.
Direccionamiento de la memoria por bytes.
Tamaño de la memoria caché de 64 KB.
Tamaño de la línea 64 bytes.
La caché es asociativa por conjuntos de 4 vías.
El tiempo de acceso a la caché es de 5 ns y el tiempo
de penalización en caso de fallo es de 100 ns.
Se requiere:
a) ¿Cuántos bloques tiene la memoria principal?