El documento describe los diferentes tipos de memoria cache, incluyendo la memoria cache de nivel 1, 2 y 3. Explica que la memoria cache se organiza en niveles jerárquicos desde el procesador hacia afuera, y que cuanto más cerca esté un nivel al procesador más rápido pero más pequeño será. También discute los diferentes métodos de mapeo de la memoria cache como el mapeo directo, totalmente asociativo y por conjunto, así como los algoritmos comunes de reemplazo como FIFO, LFU y LRU.
0 calificaciones0% encontró este documento útil (0 votos)
248 vistas8 páginas
El documento describe los diferentes tipos de memoria cache, incluyendo la memoria cache de nivel 1, 2 y 3. Explica que la memoria cache se organiza en niveles jerárquicos desde el procesador hacia afuera, y que cuanto más cerca esté un nivel al procesador más rápido pero más pequeño será. También discute los diferentes métodos de mapeo de la memoria cache como el mapeo directo, totalmente asociativo y por conjunto, así como los algoritmos comunes de reemplazo como FIFO, LFU y LRU.
El documento describe los diferentes tipos de memoria cache, incluyendo la memoria cache de nivel 1, 2 y 3. Explica que la memoria cache se organiza en niveles jerárquicos desde el procesador hacia afuera, y que cuanto más cerca esté un nivel al procesador más rápido pero más pequeño será. También discute los diferentes métodos de mapeo de la memoria cache como el mapeo directo, totalmente asociativo y por conjunto, así como los algoritmos comunes de reemplazo como FIFO, LFU y LRU.
El documento describe los diferentes tipos de memoria cache, incluyendo la memoria cache de nivel 1, 2 y 3. Explica que la memoria cache se organiza en niveles jerárquicos desde el procesador hacia afuera, y que cuanto más cerca esté un nivel al procesador más rápido pero más pequeño será. También discute los diferentes métodos de mapeo de la memoria cache como el mapeo directo, totalmente asociativo y por conjunto, así como los algoritmos comunes de reemplazo como FIFO, LFU y LRU.
Descargue como PDF, TXT o lea en línea desde Scribd
Descargar como pdf o txt
Está en la página 1de 8
Claudia Salas Torres
Adriana Natividad Cruz Ortega Pgina 1
UNIVERSIDAD AUTNOMA DEL ESTADO DE MXICO CENTRO UNIVERSITARIO VALLE TEOTIHUACAN
Arquitectura de computadoras
Memoria Cache
ALUMNaS: CLAUDIA SALAS TORRES Adriana Natividad Cruz Ortega
DOCENTE: I.A. MARTIN ALVAREZ PULIDO
septiembre-2014
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 2
Memoria CACHE Qu es la memoria cache? La memoria cach se utiliza para mantener una copia en tu disco duro de las pginas de Internet visitadas recientemente. Esta funcionalidad reduce el tiempo de carga de las pginas que visitas con mayor frecuencia. La memoria cach puede configurarse de formas distintas en tu navegador de Internet, segn tus necesidades: Inhabilitarla por completo, o bien asignar un lmite mximo de espacio en tu disco duro ocupado por los archivos almacenados en la memoria cach cuando navegues por ScotiaWeb, las pginas a la que vayas accesando se mantendrn en la memoria cach segn hayas configurado tu navegador de Internet. Por lo anterior, si no accesas a ScotiaWeb desde tu propia computadora personal te recomendamos que borres por completo el contenido de la memoria cach al finalizar tu conexin con ScotiaWeb, para que nadie tenga acceso a las pginas que hayas visitado. Hay tres tipos diferentes de memoria cach para procesadores:
Cach de 1er nivel (L1):
Esta cach est integrada en el ncleo del procesador, trabajando a la misma velocidad que este. La cantidad de memoria cach L1 vara de un procesador a otro, estando normalmente entra los 64KB y los 256KB. Esta memoria suele a su vez estar dividida en dos partes dedicadas, una para instrucciones y otra para datos.
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 3
Cach de 2 nivel (L2):
Integrada tambin en el procesador, aunque no directamente en el ncleo de este, tiene las mismas ventajas que la cach L1, aunque es algo ms lenta que esta. La cach L2 suele ser mayor que la cach L1, pudiendo llegar a superar los 2MB. A diferencia de la cach L1, esta no est dividida, y su utilizacin est ms encaminada a programas que al sistema.
Cach de 3er nivel (L3):
Es un tipo de memoria cach ms lenta que la L2, muy poco utilizada en la actualidad.
En un principio esta cach estaba incorporada a la placa base, no al procesador, y su velocidad de acceso era bastante ms lenta que una cach de nivel 2 o 1, ya que si bien sigue siendo una memoria de una gran rapidez (muy superior a la RAM, y mucho ms en la poca en la que se utilizaba), depende de la comunicacin entre el procesador y la placa base. Cmo funciona la memoria cache? Se organiza en niveles, de menor a mayor tamao segn lo alejada que est del micro, si el procesador necesita un dato de la memoria se comprueba si este se encuentra en el primer nivel. En caso de no encontrarlo, se busca en el segundo nivel y si no en el tercero. Todo funciona si se colocan los datos ms utilizados en los niveles ms cercanos al procesador.
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 4
Cada uno de estos niveles tiene un bloque de control el cual se encarga de almacenar y poner los datos a disposicin del micro. El tiempo que tarda en buscar la informacin es proporcional al tamao de la propia memoria que administra. Como queremos que los datos lleguen lo antes posible al micro los niveles ms bajos tendrn menor capacidad. Cada nivel superior, por tanto, es bastante ms grande que el anterior. En comparacin con la memoria RAM, la cache de algunos micros de nivel tres, que es la mayor de todas, es unas mil veces ms pequea. Por suerte, los programas suelen realizar muchas operaciones sobre los mismos datos y por lo tanto se consiguen grandes mejoras al usar esta tcnica. Mapeo Al pasar los datos desde la memoria principal a la memoria cache estos se traen por bloques. El motivo de llevar los datos por bloques se debe a que, por ejemplo, si el procesador pide el dato de la direccin n entonces es muy probable que despus pida el dato de la direccin n+1, por lo tanto, se ahorra tiempo al llevar los datos por bloques a la cache. Por otro lado como ya hemos visto en los prrafos anteriores la memoria Cache es de poca capacidad, en relacin con la memoria principal, por lo tanto cobra importancia el tema de que y como pongo datos en la memoria Cache. Es necesario entonces contar con un proceso de conversin de las direcciones, que se llama MAPEO. Mapeo Directo Mapeo Asociativo (totalmente asociativo) Mapeo Asociativo por conjunto
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 5
Mapeo Directo Para explicar, el mapeo directo es mejor comenzar con un ejemplo, que por el momento, es slo, ilustrativo y no tiene relacin con la realidad (es de mentira) MM 512B ----> 9b 64 bloques MC 32B ------> 5b 4 bloques Cada bloque de 8B El Mapeo Directo funciona de la siguiente forma : Segn las condiciones antes definidas se tiene lo siguiente: cada bloque ser de 8 Byte, es decir 8 palabras de largo 8. La memoria principal al ser dividida por 8 (512 B / 8) dar como resultado 64 bloques de 8 palabras cada uno. La memoria Cache tambin se divide por 8 (32B / 8), lo cual da como resultado 4 bloques Cada bloque de la memoria principal se coloca dentro de uno de los bloques de la memoria Cache siguiendo un orden establecido de la siguiente forma (La fig 00 muestra parte de esta asignacin): En el bloque cero de la cache pueden ir cualquiera de los mltiplos exactos de 4 (0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60), que son 16. En el bloque uno de la cache van (1,5,9,13,17,21,25...............) En el bloque dos (2,6,10,14,18,22,26..................................) En el bloque tres van (3,7,11,15,19,23,27..................) Para distinguir entre las 16 alternativas que corresponden a un bloque determinado de la memoria cache existe una memoria, en este caso de 4 bit, que lleva el registro. Esta memoria se denomina TAG.
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 6
Mapeo Totalmente Asociativo La fig explica la diferencia que existe entre una memoria asociativa y una memoria comn.
En el mapeo Totalmente Asociativo un bloque de la memoria Principal puede estar en cualquier bloque de la cache. Para buscar un dato en la cache se hace necesario entonces revisar todos los bloques de la cache, lo cual es muy lento, razn por la cual este tipo de mapeo no se utiliza en la prctica. Mapeo Asociativo Por Conjunto (De tamao 4) En el mapeo Asociativo por Conjunto un determinado bloque de la memoria principal puede estar en cualquier bloque de la memoria cache, que sea parte del conjunto que le corresponde. La siguiente figura, grfica esta situacin
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 7
Como se puede ver la memoria cache tiene dividido sus bloques en dos nuevos bloques (0 y 1) que reciben el nombre de SET. Esta nueva distribucin significa que para buscar un dato se debe acceder a tantos subconjuntos como tenga cada SET (en este caso 2). En la prctica esto se traduce en duplicar el hardware de bsqueda (solo para este caso). Cabe destacar que la mayora de las memorias tienen TAG de tamao 4. El tamao del SIC es igual a N / S donde N = Tamao del cache en bloques, S = Tamao del conjunto. SIC = SET in cache Politicas de reemplazo (Algoritmos) Los algoritmos de reemplazo son los encargados de seleccionar que lnea de la memoria cache se va a reemplazar cuando la memoria cach est llena y tenemos que asignar una lnea de la memoria principal en la memoria cach. Cada vez que el procesador accede a la memoria cache para buscar un dato y este no se encuentra en la memoria cach, se produce lo que se denomina fallo en la memoria cache, entonces ocurre que tenemos que ir a buscar ese dato a la memoria principal, obtener la fila en la que se encuentra y llevar este bloque de datos a la memoria cach La memoria cach directa es la nica que no utiliza ningn algoritmo de reemplazo, puesto que cada bloque ocupar una sola lnea, y la asignacin es directa. Los ejemplos que vienen a continuacin son para memorias cach completamente asociativas.
Claudia Salas Torres Adriana Natividad Cruz Ortega Pgina 8
Los algoritmos de reemplazo ms utilizados en las memorias cach son los siguientes: FIFO: Este algoritmo es el clsico, first in, first out, primero en entrar ser el primero en salir. La utilizacin de este algoritmo no es muy eficiente, ya que una lnea que lleve mucho tiempo en la memoria cache no tiene porque no utilizarse ms que una que acabe de entrar. Utilizando FIFO se irn reemplazando las lneas de la memoria cache que lleven ms tiempo por las nuevas. LFU: Con este algoritmo se irn reemplazando las lneas que se hayan utilizado menos veces por las nuevas. LRU: Este algoritmo reemplaza las lneas que hace ms tiempo que no se utilizan por las lneas nuevas que necesita el procesador.