memoria cache

Post on 10-Feb-2016

216 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Descripcion de la memoria cache

TRANSCRIPT

Memoria Cache

Memoria rápida y

pequeña.

Situada entre el CPU y la memoria principal

(relativamente grande y

lenta).

Puede encontrarse dentro del

chip del CPU o en un módulo

externo a él.

Contiene una copia de

partes de la memoria principal.

Se trata de un banco de SRAM de muy alta velocidad, que contiene una copia de los datos e instrucciones que están en memoria principal

El arte consiste en que esta copia esté disponible justo cuando el procesador la necesita permitiéndole acceder a esos ítems sin recurrir en tiempos de espera

Combinada con una gran cantidad de memoria DRAM, para almacenar el resto de códigos y datos, resuelve el problema mediante una solución de compromiso típica.

Requiere de hardware adicional que asegure que este pequeño banco de memoria cache contenga los datos e instrucciones mas frecuentemente utilizados por el procesador.

RAM dinámica (DRAM)

Consumo mínimo. Capacidad de

almacenamiento comparativamente alta.

Costo por bit bajo. Tiempo de acceso alto

(lento), debido al circuito de regeneración de carga.

Si construimos el banco de memoria utilizando RAM dinámica, no aprovechamos la velocidad del procesador.

RAM estática (SRAM)

Alto consumo relativo. Capacidad de

almacenamiento comparativamente baja.

Costo por bit alto. Tiempo de acceso bajo

(es mas rápida). Si construimos el banco

de memoria utilizando RAM estática, el costo y el consumo de la computadora son altos.

Tamaño del bloque Rendimiento

•Relación entre los bloques de MP y los que se

encuentran en la Cache.

• Determina la ubicación qué ocupará el bloque en

la memoria caché. ¿hay sitio?

Función de correspondencia

• Determina qué bloque se tiene que reemplazar si no hay sitio.

El algoritmo del reemplazo o sustitución

• Cada vez que el bloque se actualiza.

• Cada vez que el bloque se reemplace.

• ¿Cuándo tiene lugar la operación de escritura en memoria?

• Minimiza la operación de la memoria.

• Deja la memoria en un estado obsoleto

Política de escritura.

Directa Asociativa Asociativa por

conjuntos

Cada bloque de memoria principal se asocia a una línea de la memoria cache

Cada bloque de memoria

principal se carga en

cualquier línea de la memoria

cache

Cada bloque de memoria

principal se carga en

cualquier línea de un conjunto i de líneas de la memoria cache

• Todas las operaciones de escritura se hacen tanto en cache como en memoria principal

• No hay incoherencia

• Mucho tráfico

Escritura

inmediata

• Las actualizaciones se hacen solo en la cache

• Hay incoherencia

• Rápida

• Poco tráfico

Escritura diferida o

postescritura

Política de actualización

•¿De qué depende el numero de la

cache?

•¿Cuántos niveles de chache?

•¿Se debe compartir una única

cache para instrucciones y datos o

debe haber caches separadas?

PRIMER NIVEL DE CACHE

SEGUNDO NIVEL DE CACHE

TERCER NIVEL DE

CACHE

CACHE DE DATOS E INSTRUCCIONES

MISMO ENCAPSULADO

MAYOR CAPACIDAD DE ALMACENAMIENTO

POLITICA POSTESCRITURA

MEMORIA ASOCIATIVA POR CONJUNTOS

MENOR CAPACICDAD DE ALMACENAMIENTO L1 MEMORIA ASOCIATIVA

ENCAPSULADO INDEPENDIENTE

Al incluir la caché dentro del mismo chip de la CPU ¿ merece la pena disponer de otra cache externa ?

•No conviene que la caché sea muy grande,

ya que se pierde velocidad de acceso.

•Espacio reducido del chip

•La falta de caché genera accesos a

memoria principal con un tiempo de acceso

lento.

Si

¿Cache compartida o separada?

• Equilibrio automático de instrucciones y datos

• Mayor tasa de aciertos

• Mas simple de diseñar e implementar

compartida

• (arquitectura Harvard)

• En procesadores con preferching y pipeline se permite acceso a datos mientras se extrae la siguiente instrucción

separadas

top related