Vous êtes sur la page 1sur 5

Introduccin (I)

Jerarquia de memoria
 Registros

Memoria Cach

 Cache

L1
L2
 Cache L3
 Memoria principal
 Cache de disco
 Memoria secundaria
 Cache

Sistemas Informticos I.E.S. Virgen


de la Paloma
Carlos Barahona

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 2 CAC

Introduccin (II)



El trmino Cach proviene de un vocablo


frances que significa oculto.
La razn fundamental de la aparicin de la
memoria cach es la alta latencia que sufrimos
al acceder a la informacin alojada en memoria.
Latencia: es el retraso entre el momento en que
se inicia algo, y el momento en que uno de sus
efectos comienza

Introduccin (III)



El objetivo de la memoria cach es reducir el tiempo


de latencia en los accesos a memoria.
La memoria cach es una memoria intermedia de
pequeo tamao y muy rpido acceso, gestionada
por hardware, que se encuentra entre la CPU y la
memoria principal y que se aprovecha del concepto
de localidad.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 3 CAC

Introduccin (IV)

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 4 CAC

Introduccin (V)


Localidad
 Puede

ser de dos tipos:

Temporal: tendencia a usar en breve los mismos


datos que se acaban de utilizar.
 Espacial: tendencia a usar datos ubicados muy
cerca de los que se acaba de acceder.


CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 5 CAC

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 6 CAC

Introduccin (VI)


Operacin de la cach
CPU solicita contenidos de la localizacin de
memoria.
 Comprueba la cach para estos datos.
 Si est, la obtiene de la cache (rpidamente).
 Si no est, lee el bloque requerido a partir de la
memoria principal hasta la cach.
 Despus, de la cach los entrega a la CPU.
 La cach incluye etiquetas para identificar qu bloque
de la memoria principal est en cada ranura de la
cache.

Diseo (I)


Memoria principal:


 La

Segn la figura anterior, la memoria principal dispone de 2


palabras direccionables, cada una con una direccin de n bits.
La memoria se la considera dividida en bloques iguales
compuestos por p palabras (nmero de bloques = m)

Memoria cach:
Dispone de l lneas de p palabras cada una, cumplindose que
l<<m, por lo que en la cach solo cabr un pequeo subconjunto
de la memoria principal.
 De este modo, no es posible que cada lnea de la cach se
asigne a un bloque de manera fija, por ello, y para conocer que
bloque se encuentra en la lnea es necesario etiquetar cada
lnea con algn valor que permita identificar al bloque.


CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 7 CAC

Diseo (II)


Conceptos a tener en cuenta a la hora de


disear una cach.
 Tamao

de la cach.
de correspondencia.
 Algoritmo de sustitucin.
 Poltica de escritura.
 Funcin

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 8 CAC

Diseo (III)
El tamao de la cach viene limitado por
el coste de este tipo de memorias, por lo
que suelen ser de un tamao reducido.
 Existen estudios que indican que un
aumento desmesurado del tamao de la
cach redundara en una disminucin de
su eficacia.


CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 9 CAC

Funcin de Correspondencia (I)




Para poder determinar a qu bloque de


memoria principal corresponde una lnea de
memoria cach se utiliza una funcin de
correspondencia.
Dependiendo de esta funcin de
correspondencia hablamos de tres tipos de
correspondencia:
 Directa

Funcin de Correspondencia (II)




Directa
 Cada

bloque de la memoria tiene una lnea de la


cach asignada, de manera que cuando ha de
cargarse lo hace en esta lnea y no en otra.
 Ventajas:


por conjuntos

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 11 CAC

La localizacin de un bloque en la memoria es muy rpida.

 Inconvenientes:


 Asociativa
 Asociativa

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 10 CAC

Si en un momento dado un programa hace referencia a


bloques de memoria cuya lnea de referencia de la cach es
la misma se producirn conflictos de ubicacin.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 12 CAC

Funcin de Correspondencia (III)

Funcin de Correspondencia (IV)




Asociativa
 Permite

que cada bloque de memoria se


cargue en cualquier lnea de la cach.

Ventajas

Desventajas

 Se

Cach

evitan conflictos de ubicacin (a priori)

 Circuitera
 Bsqueda

compleja.
mucho ms lenta.

Memoria
CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 13 CAC

Funcin de Correspondencia (V)

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 14 CAC

Funcin de Correspondencia (VI)




Asociativa por conjuntos


Es una mezcla de las dos anteriores.
La cach se divide en c conjuntos cada uno con k lneas de
modo que el nmero total de lneas es de l = c*k.
 Cada bloque de la memoria tienen un conjunto asignado, pero
dentro del conjunto puede ocupar cualquier lnea.
 De este modo el acceso al conjunto es directo, mientras que
dentro de cada conjunto cada bloque es buscado siguiendo
tcnicas asociativas.
 Al nmero de lneas por conjunto se le denomina va, por
ejemplo, una cach asociativa por conjuntos de ocho vas tendr
c conjuntos de ocho lneas cada uno.



Cach

Memoria
CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 15 CAC

Funcin de Correspondencia (VII)

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 16 CAC

Algoritmos de Reemplazo (I)


Para el esquema directo no hay eleccin,
ya que cada bloque de memoria solo
puede estar en un sitio.
 Para los otros esquemas:


Cach de
2 vias

 LRU

(Less Recently Used)


(First In First Out)
 LFU (Less Frequently Used)
 Random
 FIFO

Memoria
CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 17 CAC

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 18 CAC

Algoritmos de Reemplazo (II)




LRU

Algoritmos de Reemplazo (III)




El algoritmo LRU toma su nombre de Less Recently Used


(Menos recientemente usada) y parte de la suposicin de que
los bloques ms usados seguirn usndose en un futuro
cercano.
 Esta suposicin implica que los bloques menos usados tienen
menos probabilidad de usarse en un futuro cercano.
 El algoritmo se encarga de desalojar de la memoria cach aquel
bloque que lleve ms tiempo sin usarse.
 Para poder utilizar este algoritmo la cach ha de almacenar para
cada bloque una referencia de tiempo indicando su ltimo uso.


FIFO
 El

algoritmo FIFO toma su nombre de First In First


Out (El primero en entrar es el primero en salir) .
 El algoritmo crea una lista de la secuencia de la
entrada de los bloques a la memoria cach,
desalojando la entrada ms antigua de esta lista
cuando haya que realizar un reemplazo.
 Cuidado, no se reemplaza aquella entrada cuyo uso
sea el ms antiguo, eso seria LRU, si no aquella que
lleva mas tiempo en la cach.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 19 CAC

Algoritmos de Reemplazo (IV)




LFU
algoritmo LFU toma su nombre de Less Frecuently
Used (Menos frecuentemente usada) .
 Este algoritmo sustituye aquella entrada que haya
experimentado menos referencias.
 Para utilizar este algoritmo la cach ha de guardar un
contador por cada bloque que indique las veces que
ha sido referenciado, sustituyendo la entrada cuyo
contador es el ms bajo.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 21 CAC

Polticas de escritura (I)




Algoritmos de Reemplazo (V)




 El

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 20 CAC

Antes de que pueda ser reemplazado un bloque


de la cach es necesario comprobar si ha sido
alterado en la cach y no en la memoria
principal.
Si la memoria principal se encuentra
actualizada, el bloque puede ser sobreescrito.
En caso contrario habr que actualizar la
memoria principal antes de sobreescribir el
bloque.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 23 CAC

Random
 El

algoritmo Random toma su nombre de la


funcin aleatoria que utiliza para realizar la
seleccin de la entrada a sustituir.
 Diferentes estudios han mostrado que la
sustitucin aleatoria proporciona un
rendimiento ligeramente menor a cualquiera
de los algoritmos de reemplazo vistos con
anterioridad.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 22 CAC

Polticas de escritura (II)

Problemas de diseo: qu lee el dispositivo de


E/S si se sobreescribe una entrada de cach
modificada que no ha sido volcada a memoria?

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 24 CAC

Polticas de escritura (III)

Polticas de escritura (IV)

Cundo escribir (de la cach a la


memoria principal)?
 Existen dos tcnicas:

 Escritura
 Escritura

inmediata
demorada

Escritura inmediata
 Todas

las operaciones de escritura se hacen tanto en


la cach como en la memoria principal
inmediatamente.
 As se asegura que el contenido de la memoria
principal sea siempre vlido.
 Desventaja: se genera un trfico de sustancial a la
memoria principal que puede disminuir el
rendimiento.
 Estudios sealan que el porcentaje de referencias a
memoria para escritura es del orden del 15%.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 25 CAC

Polticas de escritura (V)




Escritura demorada
 Cada

bloque de la cach posee un bit de


actualizacin que se inicializa en 0 cuando
se carga un bloque nuevo en la cach.
 Cada vez que se escriba en el bloque el bit
de actualizacin se pone en 1.
 Cuando se desee reemplazar el bloque, el
bloque se copia a la memoria principal slo si
el bit de actualizacin es 1.

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 27 CAC

Cach Multinivel (II)

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 26 CAC

Cach Multinivel (I)


 Inicialmente,

se usaba slo una cach externa (offchip) a la CPU.




Si haba un fallo de cach se acceda directo a memoria

 Luego

se desarrollaron cachs on-chip (mas rpidas).


Colocar una cach ms grande detrs de la
cach, antes de la memoria principal
 Actualmente se tienen sistemas con cachs on-chip y
off-chip.
 Idea:

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 28 CAC

Cach Multinivel (III)

 Adems,

existe una clasificacin de cachs


unificadas y otras partidas:
Las unificadas tienen instrucciones y datos.
Las partidas tienen una cach dedicada a
instrucciones y otra dedicada a datos.
 Las cachs partidas tiene la ventaja de la
paralelizacin ya que mientras se lee una
instruccin se puede estar leyendo un dato.



Estructura actual de cach multinivel

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 29 CAC

CBF IES Virgen de la Paloma SIMR DAI Tarde 0809 Pgina 30 CAC

Vous aimerez peut-être aussi