Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porOvidio Cabello Modificado hace 10 años
1
Circuitos Digitales II Jerarquía de memoria Memoria Cache (Parte II) Semana No.14 Semestre 2012-1 Prof. Eugenio Duque Pérez eaduque@udea.edu.co Prof. Felipe Cabarcas fcabarcas@udea.edu.co Departamento de Ingeniería Electrónica Facultad de Ingeniería
2
El contenido de esta clase se complementa con el capítulo 7 del texto : Computer Organization David A. Patterson, John L. Hennessy. Tercera Edición
3
3
4
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Recordando : Los cinco componentes de cualquier computador Con: o registros para almacenar variables, y o modos de direccionamiento para accesar la memoria.
5
Ejemplos reales de sistemas computacionales y sus jerarquías de memoria
8
Pentium Board
9
Asus Eee PC
10
Asus Eee PC (…cont)
12
Ipods and Iphones
13
Arquitectura
17
17
18
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Jerarquía de Memoria Soportada en la diferencia de las tecnologías de memoria (SRAM,DRAM y Magnética) y en el principio de localidad (espacial, y temporal).
20
20
21
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1
22
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Recordando la terminología utilizada en Cache
23
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Cache : Consideraciones y términos 23
24
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Cache : Consideraciones y términos (…cont) Miss Penalty (Tiempo de penalización) : Tiempo necesario para recuperar una falta y suministrar el bloque requerido a la CPU. 24
25
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Calculating Miss Penalties Cache (k-word blocks) DRAM 1. Ask for data (send address to DRAM), 1 cycle typical 2. DRAM finds and reads the data e.g. 5 cycles 3. DRAM delivers 1 word each cycle What happens during a miss? CPU Address
26
Fundamentos de Cache Mapeamiento Directo y Desempeño
27
27
28
28
29
29
30
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Accessing Cache (...cont) = 20 32 DataTagV 31 30 29...15 14 13 12 11 10 9...3 2 1 0 Data Hit Slot # Tag 0 1 2 1022 1023 Address 2010 Total cache size: 1024x (1 + 20 + 32) = 53 Kbits
31
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Como trabaja el controlador cache 31
32
Tamaño de Bloques y Desempeño 32
33
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Exploiting Spatial Locality: Bigger Blocks To better exploit spatial locality caches fetch several words after a miss 20 32 0 1 2 Data TagV 20 64 0 1 2 Data TagV 1022 1023 511 choose desired word 32
34
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Read address 28 ( 0011100): Block index 01, Word 11 within block, tag 0. Example: 4-word Blocks 0 0 1 1 1 0 0 Chooses byte within word Chooses slot Chooses word within block Is stored in Tag field
35
35
36
36
37
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1
38
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1
39
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 39
40
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 40
41
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 41
42
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 42
43
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 43
44
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 44
45
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 45
46
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 46
47
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 47
48
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 48
49
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 49
50
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 50
51
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 51
52
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 52
53
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 53
54
54
55
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Determining Cache Performance Factors (total) cache size hit rate increases with size access time increases with size block size hit rate increases with size up to some limit miss penalty increases with size (since time to load increase) miss penalty also depends on organisation of lower levels Cache performance is more significant for faster processors miss penalties become much more serious
56
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Calculating Miss Penalties Cache (k-word blocks) DRAM 1. Ask for data (send address to DRAM), 1 cycle typical 2. DRAM finds and reads the data e.g. 5 cycles 3. DRAM delivers 1 word each cycle What happens during a miss? CPU Address
57
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Datos para ejemplo 57
58
Más formas de Organización de la Cache Asociatividad
59
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Organización de la Cache
60
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Organización de la Cache 60
61
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Organización de la Cache (…cont) 61
62
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Campos de Dirección
63
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Recordando : Mapeo Directo
64
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Recordando : Mapeo Directo - Bloques de Varias Palabras 64
65
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Asociatividad por Conjuntos 65
66
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Asociatividad por Conjuntos (…cont)
67
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Asociatividad 67
68
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Ubicando un bloque en una cache Asociativa
69
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Cache Completamente Asociativa 69
70
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Efecto de la Asociatividad en la Tasa de Fallas (Miss Rate)
71
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Operación de lectura de memoria 71
72
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Problem 1: Caches Misses On a read miss Stall the pipeline A special control unit loads the cache from DRAM The cycle that caused the miss is redone If it was an instruction fetch ensure PC isnt updated! On a write miss Keep going No need to stall the pipeline… (see next slide)
73
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Problem 2: Cache Writes When the processor writes a result to memory The result must go into the cache The result must go to main memory as well, eventually The write-through technique Every write to cache is copied to main memory Should we wait for write to DRAM to complete? A write-buffer helps Overwrites must be avoided. The write-back technique Multiple writings in cache block require a writing in the memory lower level.
74
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Resolviendo las faltas de Cache
75
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Escritura mediante uso de Buffer
76
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Ventajas de: Write Through y Write back Write through (escritura directa) La escritura directa es más fácil de implementar que la postescritura, con la ayuda del buffer. Write back (postescritura) Las palabras individuales son escritas por el procesador a la velocidad de la caché. Múltiples escrituras en un bloque, requieren solo una escritura en el nivel más bajo de la jerarquía. El bloque de la caché se transfiere cuando va a ser reemplazado.
77
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Ejemplo de Estructura Interna de Memoria
78
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Jerarquía de Memoria 78
79
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Estrategias de Reemplazo de Bloques
80
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Ejemplo de Organización de la Cache en un procesador
81
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Cache de Instrucciones (Primer Nivel de Cache)
82
Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2012-1 Cache de Datos (Primer Nivel de Cache)
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.