Memorias

Track and organize your meetings within your company

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Memorias por Mind Map: Memorias

1. Acierto y fallos en el acceso

1.1. MC

1.1.1. Si se encuentra en la caché, acierto, sino entonces es fallo

1.1.2. La penalización dependerá de la latencia de MP y de su ancho de banda

1.1.3. Principio de localidad

1.1.3.1. Localidad espacial

1.1.3.2. Localidad temporal

1.2. MP

1.2.1. se divide en páginas o segmentos

1.2.2. se produce un fallo de página o segmento, se debe acceder a la MV

1.2.3. La penalización en este caso es mayor ya que la MV es la más lenta de la jerarquía

1.2.4. interviene el SO

1.3. Mecanismo de acceso a memoria

1.3.1. Se traduce la dirección virtual a una dirección física

1.3.2. Se traduce, es porque esta en MP, y con esa direccion se accede a MC

1.3.3. Tipos de fallo en la MC

1.3.3.1. iniciales

1.3.3.1.1. refrencia una palabra por primera vez

1.3.3.2. De capacidad

1.3.3.2.1. cuando se producen reemplazos

1.3.3.3. De conflicto

1.3.3.3.1. varios bloques con la misma ubicación en MC

1.3.4. En caso de fallo, hay que pasar por el controlador de MP

1.3.5. El controlador planifica acceso a la MP

1.3.6. Acierto: bloque que incluye la palabra se envia a MC

1.3.7. Fallo: se resuelve desde MV

1.3.8. SO realiza un cambio de contexto

1.3.9. Cuando el segmento esta en MP se lleva el bloque a MC

2. Jerarquía de memorias

2.1. Memoria caché

2.1.1. Fabricada con SDRAM

2.1.2. Controlada por el controlador de caché incluído en el mismo chip

2.1.3. Existen actualmente 3 niveles: L1, L2, L3

2.2. Memoria principal

2.2.1. Fabricada con DRAM

2.2.2. Controlada por el controlador de memoria principal que se encarga de planificar los accesos a la misma

2.2.3. El controlador se ubica en el mismo chip que el procesador y la memoria caché.

2.3. Memoria virtual

2.3.1. Ubicada en el disco duro

2.3.2. Fabricada con tecnología magnética

2.3.3. Se controla desde el SO

2.4. Diseño de una jerarquía de memoria básica

2.4.1. Órdenes de magnitud de capacidades y tiempos de acceso

2.4.2. Tecnologías y características de los diferentes niveles

2.5. Propiedades

2.5.1. Inclusión

2.5.1.1. Cualquier información en un nivel, debe estar también en los niveles superiores

2.5.2. Coherencia

2.5.2.1. Las copias de la misma información tiene que ser coherencia entre sí en todos los niveles

2.5.3. Correspondencia

2.5.3.1. Debe existir una correspondencia de direcciones entre los distintos niveles de la jerarquía

2.6. Principio de localidad

2.6.1. Localidad Espacial

2.6.1.1. Si se referencia un elemento, los elementos cercanos a él también tenderán a ser referenciados

2.6.1.2. La jerarquía de memoria mueve bloque con palabras contiguas en memoria a los niveles más altos de la jerarquía

2.6.1.3. Operaciones con matrices y arrays, ejecución secuencial de un programa

2.6.2. Localidad Temporal

2.6.2.1. Si se referencia un elemento, este tenderá a ser referencia pronto

2.6.2.2. La jerarquía de memoria mantiene los datos accedidos recientemente lo más cerca posible del procesador

2.6.2.3. Estructura de los programas: datos y bucles

2.7. Evaluacion de prestaciones

2.7.1. tMEM = taciertoMC + TF • pF

2.7.2. TF = núm de fallos / núm total accesos a memoria

2.7.3. t = tCPU + tMEM

3. Evaluaciones de prestaciones de la jerarquía de memoria

3.1. Latencia

3.1.1. Tiempo que transcurre desde un acceso a memoria, comienza hasta que finaliza.

3.2. Ancho de banda

3.2.1. Cantidad de información por unidad de tiempo que puede transferirse desde/hacia la memoria

4. Diseño de la memoria cache

4.1. Almacena unos determinados bloques de información denominados marcos

4.2. Para determinar qué bloque está ocupando un determinado marco, se utilizan etiquetas o tags

4.3. Aspectos básicos

4.3.1. Organización de la memoria caché

4.3.1.1. Tamaño de la memoria caché

4.3.1.1.1. Demasiado pequeña.

4.3.1.1.2. Demasiado grande.

4.3.1.2. Tamaño de marco.

4.3.1.2.1. Bloques grandes.

4.3.1.2.2. Se debe llegar a un compromiso teniendo en cuenta la latencia y el ancho de banda.

4.3.1.3. Unificación o división de las instrucciones y los datos.

4.3.1.3.1. Segmentación del procesador obliga a la división para evitar riesgos estructurales entra las etapas F y M.

4.3.1.3.2. Cuando no se trata del primer nivel se puede optar por unificar.

4.3.1.4. Implementación de cachés multinivel

4.3.1.4.1. Nivel L1

4.3.1.4.2. Nivel L2

4.3.1.4.3. Penalización por fallo menor, va a cache L2 en lugar de MP

4.3.2. Política de ubicación

4.3.2.1. Correspondencia directa.

4.3.2.1.1. A cada bloque de memoria principal solo le corresponde un marco de memoria caché

4.3.2.1.2. Ventajas

4.3.2.1.3. Inconvenientes

4.3.2.2. Totalmente asociativa.

4.3.2.2.1. La etiqueta se compara con todas las etiquetas almacenadas en caché

4.3.2.2.2. Ventajas

4.3.2.2.3. Incovenientes

4.3.2.3. Asociativa por conjuntos.

4.3.2.3.1. Dividir la MC en C conjuntos de B bloques o vías

4.3.2.3.2. Correspondencia directa a nivel de conjuntos

4.3.2.3.3. Correspondencia asociativa a nivel de bloques

4.3.3. Política de reemplazo

4.3.3.1. fallo en MC determinar qué bloque de MC desalojar para traer bloque de fallo desde MP

4.3.3.2. Correspondencia directa

4.3.3.2.1. Solo se puede desalojar un bloque

4.3.3.3. Totalmente asociativa

4.3.3.3.1. Aleatorio

4.3.3.3.2. FIFO

4.3.3.3.3. LRU

4.3.3.4. Asociativa por conjunto

4.3.3.4.1. Aleatorio

4.3.3.4.2. FIFO

4.3.3.4.3. LRU

4.3.4. Política de escritura

4.3.4.1. Posición de memoria esta en MC

4.3.4.1.1. Escritura directa

4.3.4.1.2. Post - escritura

4.3.4.2. Posición de memoria no esta en MC

4.3.4.2.1. Escritura con ubicacion

4.3.4.2.2. Escritura sin ubicacion

4.3.5. Buffer de escritura

4.3.5.1. Estructura hardware en la que se realizan las escrituras en primera instancia

4.3.5.2. Escrituras suponen una penalizacion menor

4.3.5.3. solapa la escritura con el siguiente nivel de la jerarquía con la ejecución de las siguientes instrucciones

4.3.5.4. Escritura directa

4.3.5.4.1. Las escrituras se hacen palabra a palabra en caché

4.3.5.5. Post-escritura

4.3.5.5.1. se utiliza para volcar los bloques sucios

5. Diseño de la memoria principal