Memorias caché privadas y compartidas

Solo disponible en BuenasTareas
  • Páginas : 97 (24172 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de noviembre de 2011
Leer documento completo
Vista previa del texto
Memorias caché Privadas y Compartidas

A lo largo de los años, la diferencia de velocidad entre el procesador y la memoria principal ha sido un incremento exponencial [5]. Para minimizar esta diferencia, los procesadores actuales cuentan con memorias de rápido acceso llamadas memorias caché. Estas aprovechan el principio de localidad de las referencias a memoria que sepresenta en la mayoría de las aplicaciones.
Otra característica que se busca para mejorar el rendimiento de los procesadores, es la de lograr la máxima capacidad de transferencia de información con la memoria principal. Esto se logra cuando se accede a conjuntos de datos relativamente grandes ubicados en forma consecutiva. El inconveniente para lograr este objetivo es que elprocesador usualmente consume los datos en un orden distinto al que estan estos alojados. De esta manera se da una de las caracte- r´ısticas principales de las memorias cach´e que es la de transferir datos con la memoria principal en bloques (tambi´en llamados l´ıneas ) de un taman˜o espec´ıfi- co y del lado del procesador, se efectu´en las transferencias de instrucciones y datoscomo ´ıtems individuales.
Dentro de los parametros principales de una organizaci´on de memoria cach´e se encuentran:

Taman˜o: El taman˜o de una memoria cach´e depende de su ubicaci´on dentro de la jerarqu´ıa de memoria del procesador. Los procesadores actuales cuentan con mu´ltiples niveles de memoria cach´e siendo el m´as cercano al procesador (Nivel 1) una memoria cach´ede muy poco taman˜o, como algunas decenas de Kilobytes, pero de una velocidad tal que no produce demora al procesador. A medida que se incrementa el nivel (Niveles 2, 3, etc), tambi´en se incrementa el taman˜o, con el consecuente incremento en el tiempo de acceso.

Taman˜o de Bloque: El taman˜o de bloque es la cantidad de bytes que son transferidos entre dos niveles de memoriacach´e o a memoria principal.

Pol´ıtica de reemplazo: Cuando se produce un desacierto, uno de los bloques de la memoria cach´e debe ser reemplazado por el nuevo bloque a ingresar que contiene la referencia requerida por el procesador. Este bloque a reemplazar debe ser elegido segu´n una pol´ıtica adoptada al disen˜ar la cach´e. Las siguientes son las pol´ıticas mas usuales:Aleatoria: Se elige un bloque en forma aleatoria para ser reemplazado.

FIFO: Se usa un algoritmo First In First Out (FIFO) para determinar

qu´e bloque ser

el reemplazado.


Menos recientemente usado (LRU): Se reemplaza el bloque que hace m´as tiempo que no se ha referenciado en la cach´e.

Pol´ıtica de ubicacion:

Correspondencia Directa: Cuando un nuevo datosolo puede ser ubicado en un u´nico bloque en la cach´e.

Asociativa por conjuntos: Cuando el nuevo dato puede ser ubicado en un conjunto de bloques posibles.


Totalmente Asociativa: Cuando el nuevo dato puede ser ubicado en cualquier lugar.

Bu´squeda: Determinada por la pol´ıtica de ubicaci´on, el acceso a la infor- macion alojada en una memoria cach´e es medianteindexaci´on. La direcci´on de memoria de un dato buscado puede descomponerse segu´n se muestra en la figura
2:

Dirección del Bloque

Rótulo (TAG)
Índice (Index)
Desplazamiento (OFFSET)

Figura 2: Descomposicion de una direcci´on de memoria.

La forma de acceso es la siguiente: Primero se toman los bits que conforman el ´ındice o index, este permite acceder a un conjunto enparticular dentro de la cach´e. Luego con los bits que conforman el rotulo o tag se verifica si el conjunto indizado contiene el bloque buscado y finalmente con los bits que restan, que son los que forman el desplazamiento u offset, se selecciona dentro del bloque elegido al ´ıtem solicitado.

Pol´ıtica de Escritura: Cuando se escribe un ´ıtem en un bloque de una memo- ria cach´e, este debe...
tracking img