La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

SISTEMAS DE MEMORIA DEL COMPUTADOR

Presentaciones similares


Presentación del tema: "SISTEMAS DE MEMORIA DEL COMPUTADOR"— Transcripción de la presentación:

1 SISTEMAS DE MEMORIA DEL COMPUTADOR
LECCIÓN 2. MEMORIAS CACHE Departamento de Informática. Curso

2 NECESIDAD DE LA MEMORIA CACHE
La CPU y la memoria tienen tiempos de acceso muy diferentes. Para mejorar la situación se inserta una memoria intermedia CPU MEMORIA RAM Departamento de Informática. Curso

3 NECESIDAD DE LA MEMORIA CACHE
La CPU y la memoria tienen tiempos de acceso muy diferentes. Para mejorar la situación se inserta una memoria intermedia llamada memoria cache con mejores tiempos de acceso CPU CACHE MEMORIA RAM Departamento de Informática. Curso

4 ESTRUCTURA DE UNA MEMORIA CACHE
Departamento de Informática. Curso

5 Departamento de Informática. Curso 2005-2006

6 LECTURA DE UNA MEMORIA CACHE
CPU genera dir Acceso a Mp para obtener dato ¿Está en cache? Asignar bloque en cache Leer dato y pasar a CPU Pasar dato a CPU Copiar bloque en cache Continuar Departamento de Informática. Curso

7 MEDIDAS DE CALIDAD DE UNA MEMORIA CACHE
Tiempo de acceso Ta Ta = h Tc + (1-h) Tp Donde Tc es el tiempo de acceso a la cache Tp es el tiempo de acceso a la memoria principal h es el índice de aciertos de la cache. Departamento de Informática. Curso

8 MEDIDAS DE CALIDAD DE UNA MEMORIA CACHE
Definimos índice de mejora  = TP /Ta Mide el aumento de rendimiento cuando se incluye una memoria caché en un sistema de memorias. Se puede demostrar que = 1/(1-h(1- )) Donde  = Tc /Tp Departamento de Informática. Curso

9 ORGANIZACIÓN DE LA MEMORIA CACHE
FUNCIONES DE MAPA: Son las distintas formas de correspondencia entre los bloques de la memoria cache y los bloques de la memoria principal. Tenemos tres modelos básicos: Correspondencia directa Correspondencia asociativa Correspondencia asociativa por conjuntos Departamento de Informática. Curso

10 CORRESPONDENCIA DIRECTA
Asocia a cada bloque de la memoria principal una línea de la cache, de acuerdo con la siguiente expresión: Cj  Mi si i= j (mod C). Siendo Cj = línea j de la cache Mi = bloque i de la memoria principal C = nº de líneas de la cache Departamento de Informática. Curso

11 FORMATO DE LAS DIRECCIONES
Palabra : codifica el nº de palabras de memoria de cada bloque de memoria Línea : codifica el nº de línea de cache donde se realiza la búsqueda Etiqueta: codifica el bloque de memoria asociado a esa línea de cache Departamento de Informática. Curso

12 MECANISMO DE BÚSQUEDA EN CACHE
Departamento de Informática. Curso

13 VALORACIÓN DE LA CORRESPONDENCIA DIRECTA
Sencilla de implementar porque no necesita algoritmos de reemplazo Ocupación de la cache ineficiente Departamento de Informática. Curso

14 Departamento de Informática. Curso 2005-2006
EJEMPLO Departamento de Informática. Curso

15 CORRESPONDENCIA TOTALMENTE ASOCIATIVA
Cualquier bloque de la memoria principal puede ocupar cualquier línea de la cache. Donde Etiqueta indica el nº de bloque de memoria principal que se está buscando Departamento de Informática. Curso

16 Departamento de Informática. Curso 2005-2006
MECANISMO DE BÚSQUEDA Departamento de Informática. Curso

17 VALORACIÓN DE LA CORRESPONDENCIA ASOCIATIVA
Necesita el uso de memorias asociativas Necesita algoritmos de reemplazo Es la mas eficiente en la ocupación de la cache. Departamento de Informática. Curso

18 Departamento de Informática. Curso 2005-2006
EJEMPLO Departamento de Informática. Curso

19 CORRESPONDENCIA ASOCIATIVA POR CONJUNTOS
Es una solución intermedia entre las dos anteriores, las líneas de memoria caché se asocian en conjuntos y la correspondencia se establece de forma directa entre cada bloque de la memoria principal y cada conjunto de la caché. Dentro de cada conjunto la correspondencia es asociativa. Al número de bloques del conjunto se le llama número de vias o grado de asociatividad. Departamento de Informática. Curso

20 CORRESPONDENCIA ASOCIATIVA POR CONJUNTOS
Sea pues una caché con Q conjuntos de R bloques por conjunto. La relación entre los bloques de memoria principal y los conjuntos de la caché, viene dada por la expresión siguiente: Qj  Mi si i= j (mod Q). Departamento de Informática. Curso

21 FORMATO DE LAS DIRECCIONES
Palabra : codifica el nº de palabras de memoria de cada bloque de memoria Conjunto : codifica el nº de conjunto de la cache donde se realiza la búsqueda Etiqueta: codifica el bloque de memoria asociado a ese conjunto Departamento de Informática. Curso

22 Departamento de Informática. Curso 2005-2006
MECANISMO DE BÚSQUEDA Departamento de Informática. Curso

23 Departamento de Informática. Curso 2005-2006
TIPOS DE FALTAS Frías: Aparecen en el momento inicial cuando la caché está vacía. Por capacidad: Debida a que la caché está llena Por conflicto : Cuando varios bloques de memoria principal ocupan una misma línea de la caché y computen por esa posición Departamento de Informática. Curso

24 ALGORITMOS DE REEMPLAZO
Sustitución aleatoria. Se selecciona un bloque al azar para ser desalojado. Los resultados no son tan malos como cabría esperar. FIFO. Se desaloja el bloque mas antiguo en la cache. Para facilitar su implementación cada bloque de la cache lleva asociado un contador de edad que se pone a cero en el momento de la carga y se incrementa en uno en cada acceso a memoria. LRU En este caso se desaloja el bloque que lleva mas tiempo inactivo (Least recently used). Usa un contador similar al caso anterior salvo porque se pone a cero cada vez que se accede al bloque. LFU Se desaloja al bloque que se usa menos frecuentemente (Least frecuently used). Necesitaremos pues un contador de uso para cada línea. Departamento de Informática. Curso

25 ACTUALIZACIÓN DE LA CACHE
Lectura: En este caso se utiliza el sistema llamado lectura directa consistente en que el dato se busca en memoria principal y se transfiere a la caché el bloque que contiene a la palabra buscada. Departamento de Informática. Curso

26 ACTUALIZACIÓN DE LA CACHE
Escritura : En este caso existen dos políticas posibles: Escritura inmediata (write through) Consiste en actualizar de forma inmediata la memoria principal cada vez que se modifica el bloque en la caché Escritura diferida (write back) Solo actualiza la memoria principal cuando se desaloja el bloque en la caché. Para ello lleva un bit de control que indica si se ha modificado el bloque o no ( bit sucio). ( Problemas de coherencia caché) Departamento de Informática. Curso

27 Departamento de Informática. Curso 2005-2006
Power-PC Departamento de Informática. Curso

28 Departamento de Informática. Curso 2005-2006
PENTIUM IV Departamento de Informática. Curso


Descargar ppt "SISTEMAS DE MEMORIA DEL COMPUTADOR"

Presentaciones similares


Anuncios Google