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

1. Jerarquía de memorias

1.1. Memoria cache

1.1.1. Fabricada por SDRAM

1.1.2. Controlada por el controlador de caché incluida en el mismo chip

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

1.2. Memoria principal

1.2.1. Fabricada con DRAM

1.2.2. Controlada por el controlador de memoria principal

1.2.2.1. Se encarga de planificar los accesos a la MP

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

1.3. Memoria virtual

1.3.1. Ubicada en el disco duro

1.3.2. Fabricada con tecnología magnética

1.3.3. Se controla desde el SO

1.4. Diseño

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

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

1.5. Propiedades

1.5.1. Inclusion

1.5.1.1. Información en un nivel, debe estar en los niveles superiores

1.5.2. Coherencia

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

1.5.3. Correspondencia

1.5.3.1. Correspondencia de direcciones entre los distintos niveles de la jerarquia

1.6. Evaluación de prestaciones

1.6.1. Fórmulas

1.6.1.1. tMEM = taciertoMC + TF • pF

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

1.6.1.3. t = tCPU + tMEM

1.6.2. Latencia

1.6.2.1. Tiempo que transcurre desde un acceso a memoria

1.6.3. Ancho de banda

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

2. Acierto y fallos en el acceso

2.1. Memoria Cache

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

2.1.2. Penalización dependerá de la latencia de MP y de su ancho de banda

2.1.3. Principio de localidad

2.1.3.1. Localidad Espacial

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

2.1.3.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.1.3.1.3. Operaciones con matrices y arrays, ejecución secuencial de un programa

2.1.3.2. Localidad Temporal

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

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

2.1.3.2.3. Estructura de los programas: datos y bucles

2.2. Memoria Principal

2.2.1. se divide en páginas o segmentos

2.2.2. se produce se debe acceder a la MV

2.2.3. Penalización mayor que la MV

2.2.4. Interviene el SO

2.3. Mecanismo de acceso a memoria

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

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

2.3.3. Tipos de fallo en la MC

2.3.3.1. Iniciales

2.3.3.1.1. refrencia una palabra por primera vez

2.3.3.2. De capacidad

2.3.3.2.1. cuando se producen reemplazos

2.3.3.3. De conflicto

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

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

2.3.5. El controlador planifica acceso a la MP

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

2.3.7. Fallo: se resuelve desde MV

2.3.8. SO realiza un cambio de contexto

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

3. Diseño de la memoria cache

3.1. Almacena bloques de información denominados marcos

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

3.3. Aspectos básicos

3.3.1. Organización de la memoria caché

3.3.1.1. Tamaño de la memoria caché

3.3.1.1.1. Demasiado pequeña.

3.3.1.1.2. Demasiado grande.

3.3.1.2. Tamaño de marco.

3.3.1.2.1. Bloques grandes.

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

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

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

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

3.3.1.4. Implementación de cachés multinivel

3.3.1.4.1. Nivel L1

3.3.1.4.2. Nivel L2

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

3.3.2. Política de ubicación

3.3.2.1. Correspondencia directa

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

3.3.2.2. Totalmente asociativa

3.3.2.2.1. Cualquier bloque de MP se puede ubicar en cualquier bloque de MC

3.3.2.3. Asociativa por conjunto

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

3.3.3. Política de reemplazo

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

3.3.3.2. Correspondencia directa

3.3.3.2.1. Solo se puede desalojar un bloque

3.3.3.3. Totalmente asociativa

3.3.3.3.1. Aleatorio

3.3.3.3.2. FIFO

3.3.3.3.3. LRU

3.3.3.4. Asociativa por conjunto

3.3.3.4.1. Aleatorio

3.3.3.4.2. FIFO

3.3.3.4.3. LRU

3.3.4. Política de escritura

3.3.4.1. Posición de memoria esta en MC

3.3.4.2. Posición de memoria no esta en MC

3.3.5. Buffer de escritura

3.3.5.1. Escrituras suponen una penalizacion menor

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

3.3.5.3. Escritura directa

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

3.3.5.4. Post-escritura

3.3.5.4.1. se utiliza para volcar los bloques sucios

4. Diseño de la memoria principal

4.1. Chips de memoria

4.1.1. Matrices cuadradas de celdas DRAM

4.1.1.1. Cada celda almacena un bit

4.2. Controlador de memoria gestiona los accesos

4.2.1. Dentro del propio procesador o en un chipset o hub externo

4.3. Mapea la dirección física a ubicación física

4.4. Evolución de tecnologías de memoria

4.4.1. DRAM convencional

4.4.1.1. Modelo obsoleto

4.4.1.2. tecnología asincrónica

4.4.2. FPM DRAM: Fast Page mode DRAM

4.4.2.1. División de la memoria en páginas

4.4.2.2. Accesos en modo burst

4.4.2.2.1. 5-3-3-3

4.4.2.2.2. tiempos de acceso de 70 ó 60 ns

4.4.2.3. tecnología asincrónica

4.4.3. SDRAM o DRAM Sincrónica

4.4.3.1. utilizando el reloj global del sistema

4.4.3.2. funcionar en modo 5-1-1-1

4.4.3.3. Tiempos de acceso de entre 25 y 10 ns

4.4.3.4. frecuencia superior a 66 MHz

4.4.4. DDR

4.4.4.1. Double Date Rate

4.4.4.2. transfiere información dos veces en cada ciclo de reloj

4.4.4.2.1. En flanco de subida

4.4.4.2.2. En flanco de bajada

4.4.4.3. se llegan a los 400MHz

4.4.5. DDR2

4.4.5.1. trabaja a mayores frecuencias

4.4.5.2. Se reduce la tensión de alimentación a 1,8 V

4.4.6. DDR3

4.4.6.1. reduce de nuevo la tensión de alimentación

5. Diseño de la memoria virtual

5.1. Permite la multiprogramación

5.2. ejecutar procesos más grandes que la MP

5.3. tecnología

5.3.1. almacenamiento magnético

5.4. unidad de información

5.4.1. segmento o la página

5.5. alojamiento

5.5.1. asociativo

5.6. política de escritura

5.6.1. post-escritura

5.7. Organización

5.7.1. Dirección virtual

5.7.1.1. generada por el procesador

5.7.2. Dirección física

5.7.2.1. maneja la unidad de memoria

5.7.3. MMU

5.7.3.1. Memory Management Unit

5.7.3.2. Traduce direcciones virtuales a direcciones físicas

5.8. Asignación de memoria

5.8.1. Paginación

5.8.1.1. Esta estructura se la denomina tabla de páginas

5.8.1.2. Memoria física

5.8.1.2.1. Se divide en bloques de tamaño fijo

5.8.1.3. Memoria virtual

5.8.1.3.1. se divide en bloques del mismo tamaño

5.8.2. Segmentación

5.8.2.1. tamaño variable

5.8.3. Híbrido

5.8.3.1. paginada/segmentada

5.9. Esquema de traducción de direcciones

5.10. Fallo de página