SlideShare a Scribd company logo
1 of 45
Memoria Caché: Funciones de Correspondencia
Objetivos
 Entender el modo de operación de las distintas
funciones de correspondencia utilizadas en las
memorias caché
 Entender como cada función mapea las direcciones de
la memoria principal en la memoria caché
 Entender las ventajas y desventajas de cada función de
correspondencia
Objetivos
2 Arquitectura de Computadores
Indica la forma como mapeo los bloques de
memoria principal en las líneas de la memoria
caché
Arquitectura de Computadores3
 Determina donde guardar un bloque
 Determina donde buscar un dato
 Permite determinar qué bloque hay en cada línea
Memoria Caché
Función de Correspondencia
Arquitectura de Computadores4
 Correspondencia Directa (directly mapped)
 Correspondencia Asociativa (fully associative)
 Correspondencia Asociativa por conjuntos (N-way
associative)
Funciones de Correspondencia
Tipos de Correspondencia
Arquitectura de Computadores5
Correspondencia Directa
(directly mapped)
Funciones de Correspondencia
Arquitectura de Computadores6
 Correspondencia Directa (directly mapped)
 Mapea a priori
 Cada bloque tiene asociada una línea de la caché
Correspondencia Directa
Arquitectura de Computadores7
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
estacionamiento determinado
por sus últimos 2 dígitos del
número de alumno.
Correspondencia Directa
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores8
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
estacionamiento determinado
por sus últimos 2 dígitos del
número de alumno.
Correspondencia Directa
 Llega alumno 814
 Se estaciona en 14
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores9
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
estacionamiento determinado
por sus últimos 2 dígitos del
número de alumno.
Correspondencia Directa
 Llega alumno 764
 Se estaciona en 64
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
 Llega alumno 102
 Se estaciona en 02
Arquitectura de Computadores10
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
estacionamiento determinado
por sus últimos 2 dígitos del
número de alumno.
Correspondencia Directa
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores11
Correspondencia Directa
 Queremos ir a buscar el auto
del alumno 683
 ¿Cómo sabemos si el auto
del estacionamiento 83 es el
de él?
 Necesitamos almacenar
información extra que indique
que auto es el que está en
cada estacionamiento.
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores12
Correspondencia Directa
TAG
 Queremos ir a buscar el auto
del alumno 683
 ¿Cómo sabemos si el auto
del estacionamiento 83 es el
de él?
 Necesitamos almacenar
información extra que indique
que auto es el que está en
cada estacionamiento.
82
83
84
85
6
00
01
02
13
14
15
62
63
64
96
97
98
99
Arquitectura de Computadores13
 ¿Qué guardo?
 El dígito de las centenas
 El resto determinado por número de
n° estacionamiento
Correspondencia Directa
TAG
8
7
1
9
5
 Entonces el auto guardado en
83 no corresponde al 683
sino al 583.
 Hay que ir a buscar el auto
683 fuera del campus y
actualizar el tag.
82
83
84
85
6
00
01
02
13
14
15
62
63
64
96
97
98
99
Arquitectura de Computadores14
 ¿Si quiero el auto del alumno
963?
 Voy a 63 y leo el tag.
 El auto es el que busco.
Correspondencia Directa
TAG
8
7
1
9
Arquitectura de Computadores15
Correspondencia Directa
Memoria Cache
00
01
10
11
 Cada línea de caché corresponde a un “estacionamiento” .
 Cada bloque de la memoria principal se asocia a una línea
particular.
 Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
Arquitectura de Computadores16
Correspondencia Directa
 Cada línea de caché corresponde a un “estacionamiento” .
 Cada bloque de la memoria principal es asociada a una línea
particular.
 Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes,
Determina el byte
dentro del bloque
o de la línea
0
1
0
1
0
1
0
1
Arquitectura de Computadores17
Correspondencia Directa
 Cada línea de caché corresponde a un “estacionamiento” .
 Cada bloque de la memoria principal es asociada a una línea
particular.
 Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes,
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
Determina la línea
de la caché
00
00
01
01
10
10
11
11
Arquitectura de Computadores18
Correspondencia Directa
 Cada línea de caché corresponde a un “estacionamiento” .
 Cada bloque de la memoria principal es asociada a una línea
particular.
 Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes,
Tag asociado a la
dirección
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 0
0000 0
0000 0
0000 0
0000 0
0000 0
0000 0
0000 0
Arquitectura de Computadores19
Correspondencia Directa
 ¿Qué pasa si duplicamos la memoria principal?
 El tag aumenta en un bit
Tag asociado a la
dirección
0
0
0
0
0
0
0
0
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 0
0000 0
0000 0
0000 0
0000 0
0000 0
0000 0
0000 0
Arquitectura de Computadores20
Correspondencia Directa
 ¿Qué pasa si duplicamos la cantidad de líneas de la caché?
 Los bits que determinan las líneas aumentan en 1
 El tag se reduce en un bit
Determina la línea
de la caché
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
00
00
01
01
10
10
11
11
0
0
0
0
0
0
0
0
Arquitectura de Computadores21
Correspondencia Directa
 ¿Qué pasa si duplicamos el tamaño de las líneas?
 Índice del byte en el bloque o línea aumenta en un bit
 Bit de la línea se mantiene, pero se desplaza.
 Tag se reduce en 1
Determina el byte
dentro del bloque
o de la línea
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
00
00
01
01
10
10
11
11
0
1
0
1
0
1
0
1
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
Arquitectura de Computadores22
Correspondencia Directa
 Ventajas
 Tag pequeño (menos memoria extra)
 Muy rápidas
 No requieren políticas de reemplazo
 Lógica simple
 Desventajas
 Poca eficiencia en el uso del espacio
 Puedo sobrescribir datos aún cuando hay lugares libres
 Muchas colisiones
Arquitectura de Computadores23
Correspondencia Directa
 Ej.
 Memoria principal de 2 Mb
 2 * 220  21 bits.
 Caché de 64 Kb
 Línea de 4 bytes
 64Kb / 4b = 16K_líneas
 24 * 210  14 bits
 Para una dirección cualquiera
A20 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
Índice
del
byte
LíneaTag
Arquitectura de Computadores24
Correspondencia Asociativa
(fully associative)
Funciones de Correspondencia
Arquitectura de Computadores25
 Correspondencia Asociativa (fully associative)
 Mapea en forma dinámica
 Cada bloque puede estar en cualquier línea
Correspondencia Asociativa
Arquitectura de Computadores26
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
primer estacionamiento libre.
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Correspondencia Asociativa
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores27
 Llega alumno 814
Correspondencia Asociativa
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
primer estacionamiento libre.
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores28
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
primer estacionamiento libre.
 Llega alumno 764
Correspondencia Asociativa
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
 Llega alumno 102
Arquitectura de Computadores29
Correspondencia Asociativa
 Ej. 1000 alumnos: 0-999
 Cada uno se estaciona en el
primer estacionamiento libre.
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores30
 Queremos ir a buscar el auto
del alumno 683
 ¿Cómo sabemos donde
está?
Correspondencia Asociativa
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
TAG
814
764
102
 ¿Qué almacenamos en el
tag?
 Todo el n° de alumno
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Arquitectura de Computadores31
TAG
 ¿Qué pasa si se llena el
estacionamiento?
 Al llegar un nuevo auto,
sacamos alguno conforme a
alguna política
Correspondencia Asociativa
814
764
102
Arquitectura de Computadores32
Memoria Cache
00
01
10
11
 Cualquier bloque de memoria principal puede estar en cualquier
línea de la caché
 Ej. Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa
Arquitectura de Computadores33
 Cualquier bloque de memoria principal puede estar en cualquier
línea de la caché
 Ej. Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa
Determina el byte
dentro del bloque
o de la línea
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0
1
0
1
0
1
0
1
Arquitectura de Computadores34
 Cualquier bloque de memoria principal puede estar en cualquier
línea de la caché
 Ej. Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2
bytes.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
Tag asociado a la
dirección
0
1
0
1
0
1
0
1
Arquitectura de Computadores35
Correspondencia Asociativa
 Ventajas
 Uso eficiente de la memoria (100%)
 Desventajas
 Tag muy grande.
 Requiere politicas de reemplazo
 Requiere almacenar información adicional para las políticas
de reemplazo.
 Es muy caro determinar qué bloque está en cada línea
 Búsqueda puede ser muy lenta si la caché aumenta de tamaño
O(n).
 Ó muy cara electrónicamente si se usa búsqueda en paralelo.
Arquitectura de Computadores36
Correspondencia Asociativa por conjuntos
(N-way associative)
Funciones de Correspondencia
Arquitectura de Computadores37
 Correspondencia Asociativa por conjuntos (N-way
associative)
 Mezcla de la correspondencia directa y asociativa
Correspondencia Asociativa por Conjuntos
Arquitectura de Computadores38
 Ej. 1000 alumnos: 0-999
00
01
02
13
14
15
62
63
64
82
83
84
85
96
97
98
99
Correspondencia Asociativa por Conjuntos
 Las 100 entradas se dividen
en 10 grupos de 10.
 El grupo donde se estaciona
alguien depende del último
dígito de su n° de alumno
(~directly mapped)
 Dentro del grupo se estaciona
donde mejor le parezca
(~fully-associative)
Arquitectura de Computadores39
Memoria Cache
00
01
10
11
 Ej. 2 vías.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa por Conjuntos
Las vías indican la cantidad de líneas
por conjunto… NO LA CANTIDAD DE
CONJUNTOS
Arquitectura de Computadores40
 Ej. 2 vías.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa por Conjuntos
Determina el byte
dentro del bloque
o de la línea
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0
1
0
1
0
1
0
1
Arquitectura de Computadores41
 Ej. 2 vías.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa por Conjuntos
Determina el
conjunto de la
memoria cache
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0
0
1
1
0
0
1
1
Arquitectura de Computadores42
 Ej. 2 vías.
 Memoria Principal = 128 bloques
 Caché = 4 líneas
Correspondencia Asociativa por Conjuntos
Tag asociado a la
dirección
0000 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Arquitectura de Computadores43
 Ventajas
 Tag más pequeño que en fully – associative, pero más grande
que Directly – Mapped
 Permite mayor eficiencia en el uso de la memoria por la
flexibilidad.
 Búsqueda dentro del conjunto es más rápida.
Correspondencia Asociativa por Conjuntos
Arquitectura de Computadores44
 Ej, 4 vías.
 Memoria Principal de 1Kb  210
 10 bits
 Líneas de 2 bytes
 1 bit para especificar línea
 Caché de 64 bytes  64 / 2 bytes por línea = 32 líneas.
 32 líneas / 4 vías = 8 conjuntos.
 3 bits para especificar conjunto.
 ¿ En que direcciones de la caché podría estar el dato
almacenado en la dirección 1101100111 ?
Correspondencia Asociativa por Conjuntos
Arquitectura de Computadores45
Correspondencia Asociativa por Conjuntos
Memoria Caché
00h
01h
02h
03h
04h
05h
06h
07h
08h
1Bh
1Ch
1Dh
1Eh
1Fh
 Conjunto 0 : líneas 0 – 3
 Conjunto 1 : líneas 4 – 7
 Conjunto 2 : líneas 8 – 11
 …
 Conjunto n :
líneas N*n  N*n + N-1
 Ej, 4 vías.
¿ En que dirección de la caché podría estar el
dato almacenado en la dirección 1101100111 ?
1101100111
conjunto 3
byte 1
 Línea 0 : direcciones 0 – 1
 Línea 1 : direcciones 2 – 3
 …
 Línea n : direcciones 2*n +
2*n+1
 Conjunto 3 : líneas 12 -15
Línea 12 : direcciones 24 - 25
13 : 26 - 27
14 : 28 - 29
15 : 30 - 31

More Related Content

What's hot

Registros de la cpu
Registros de la cpuRegistros de la cpu
Registros de la cpu
jomapuga
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
Isaí Beto Matz Mijes
 
DIAPOSITIVAS DE LA MEMORIA RAM
DIAPOSITIVAS DE LA MEMORIA RAMDIAPOSITIVAS DE LA MEMORIA RAM
DIAPOSITIVAS DE LA MEMORIA RAM
guest69ff84
 
Clasificación de las memorias en informática
Clasificación de las memorias en informáticaClasificación de las memorias en informática
Clasificación de las memorias en informática
a11konti
 
Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesos
sueich
 

What's hot (20)

Modos de direccionamiento y formatos
Modos de direccionamiento y formatosModos de direccionamiento y formatos
Modos de direccionamiento y formatos
 
Unidad 2 concepto de Programa,Proceso y Procesador
Unidad 2  concepto de Programa,Proceso y ProcesadorUnidad 2  concepto de Programa,Proceso y Procesador
Unidad 2 concepto de Programa,Proceso y Procesador
 
Gestion de memoria en Linux
Gestion de memoria en LinuxGestion de memoria en Linux
Gestion de memoria en Linux
 
Registros de la cpu
Registros de la cpuRegistros de la cpu
Registros de la cpu
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumann
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
 
Arquitectura de Computadores Cap VI:Repertorio de Instrucciones
Arquitectura de Computadores Cap VI:Repertorio de InstruccionesArquitectura de Computadores Cap VI:Repertorio de Instrucciones
Arquitectura de Computadores Cap VI:Repertorio de Instrucciones
 
Arquitectura de Computadoras - Memoria
Arquitectura de Computadoras - MemoriaArquitectura de Computadoras - Memoria
Arquitectura de Computadoras - Memoria
 
Estructura y funcionamiento del procesador
Estructura y funcionamiento del procesadorEstructura y funcionamiento del procesador
Estructura y funcionamiento del procesador
 
Registros del cpu
Registros del cpuRegistros del cpu
Registros del cpu
 
Memoria caché (Explicación)
Memoria caché  (Explicación)  Memoria caché  (Explicación)
Memoria caché (Explicación)
 
1.2 La función Informática como ventaja competitiva en las organizaciones
1.2 La función Informática como ventaja competitiva en las organizaciones1.2 La función Informática como ventaja competitiva en las organizaciones
1.2 La función Informática como ventaja competitiva en las organizaciones
 
Gestion entrada y salida
Gestion entrada y salidaGestion entrada y salida
Gestion entrada y salida
 
DIAPOSITIVAS DE LA MEMORIA RAM
DIAPOSITIVAS DE LA MEMORIA RAMDIAPOSITIVAS DE LA MEMORIA RAM
DIAPOSITIVAS DE LA MEMORIA RAM
 
Control Microprogramado
Control MicroprogramadoControl Microprogramado
Control Microprogramado
 
Arquitectura harvard
Arquitectura harvardArquitectura harvard
Arquitectura harvard
 
Clasificación de las memorias en informática
Clasificación de las memorias en informáticaClasificación de las memorias en informática
Clasificación de las memorias en informática
 
MEMORIA VIRTUAL
MEMORIA VIRTUAL MEMORIA VIRTUAL
MEMORIA VIRTUAL
 
Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesos
 

Similar to Funciones de correspondencia

Memoria del computador
Memoria del computadorMemoria del computador
Memoria del computador
Sofylutqm
 
Solucion examenfeb12
Solucion examenfeb12Solucion examenfeb12
Solucion examenfeb12
xavazquez
 
Ac iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauara
Ac iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauaraAc iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauara
Ac iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauara
zumichibie
 
Problemas m3
Problemas m3Problemas m3
Problemas m3
xavazquez
 

Similar to Funciones de correspondencia (20)

Memoria del computador
Memoria del computadorMemoria del computador
Memoria del computador
 
Arquitectura de Computadores Capitulo III
Arquitectura de Computadores Capitulo IIIArquitectura de Computadores Capitulo III
Arquitectura de Computadores Capitulo III
 
Ejercicios tema6
Ejercicios tema6Ejercicios tema6
Ejercicios tema6
 
Solucion examenfeb12
Solucion examenfeb12Solucion examenfeb12
Solucion examenfeb12
 
Ac iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauara
Ac iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauaraAc iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauara
Ac iinf u1_arq_basicatiposarq_peñalozadenissezuñigalauara
 
Ec6
Ec6Ec6
Ec6
 
Estrucutura de computadoras
Estrucutura de computadorasEstrucutura de computadoras
Estrucutura de computadoras
 
Intro arquitectura-del-computador
Intro arquitectura-del-computadorIntro arquitectura-del-computador
Intro arquitectura-del-computador
 
Jerarquia de memorias
Jerarquia de memoriasJerarquia de memorias
Jerarquia de memorias
 
Manual c18
Manual c18Manual c18
Manual c18
 
Itcr el 3310 i semestre 2008 soluciones
Itcr el 3310  i semestre 2008 solucionesItcr el 3310  i semestre 2008 soluciones
Itcr el 3310 i semestre 2008 soluciones
 
ARQUITECTURA - JERARQUIA DE MEMORIAS
ARQUITECTURA - JERARQUIA DE MEMORIASARQUITECTURA - JERARQUIA DE MEMORIAS
ARQUITECTURA - JERARQUIA DE MEMORIAS
 
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN SISTEMAS EMBEBIDOS, 1er Parcial (2020 PAO 1)
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN SISTEMAS EMBEBIDOS, 1er Parcial (2020 PAO 1)⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN SISTEMAS EMBEBIDOS, 1er Parcial (2020 PAO 1)
⭐⭐⭐⭐⭐ SOLUCIÓN LECCIÓN SISTEMAS EMBEBIDOS, 1er Parcial (2020 PAO 1)
 
Hardware
Hardware Hardware
Hardware
 
memoria cache
memoria cachememoria cache
memoria cache
 
Problemas m3
Problemas m3Problemas m3
Problemas m3
 
tecnologia dram
tecnologia dram tecnologia dram
tecnologia dram
 
Concepto
ConceptoConcepto
Concepto
 
medios de almacenamiento
medios de almacenamientomedios de almacenamiento
medios de almacenamiento
 
Unidad 2 harware
Unidad 2 harwareUnidad 2 harware
Unidad 2 harware
 

More from Israel Rey

More from Israel Rey (20)

Análisis de Procesos
Análisis de ProcesosAnálisis de Procesos
Análisis de Procesos
 
Construir un BSC
Construir un BSCConstruir un BSC
Construir un BSC
 
Caso CoE y Gobierno BPM
Caso CoE y Gobierno BPMCaso CoE y Gobierno BPM
Caso CoE y Gobierno BPM
 
Mejora Continua en Multifabrik
Mejora Continua en MultifabrikMejora Continua en Multifabrik
Mejora Continua en Multifabrik
 
Integración: Proceso siniestro de una aseguradora
Integración: Proceso siniestro de una aseguradoraIntegración: Proceso siniestro de una aseguradora
Integración: Proceso siniestro de una aseguradora
 
Aplicación de BPM para iniciativas Blockchain
Aplicación de BPM para iniciativas BlockchainAplicación de BPM para iniciativas Blockchain
Aplicación de BPM para iniciativas Blockchain
 
Análisis BPMS
Análisis BPMSAnálisis BPMS
Análisis BPMS
 
Decálogo de Beneficios Implantación BPM
Decálogo de Beneficios Implantación BPMDecálogo de Beneficios Implantación BPM
Decálogo de Beneficios Implantación BPM
 
Modelado DMN
Modelado DMNModelado DMN
Modelado DMN
 
Mapas cognitivos y Mapas causales para comprender el proceso de negocio
Mapas cognitivos y Mapas causales para comprender el proceso de negocioMapas cognitivos y Mapas causales para comprender el proceso de negocio
Mapas cognitivos y Mapas causales para comprender el proceso de negocio
 
Automatización e implementación de Procesos en un Motor BPM
Automatización e implementación de Procesos en un Motor BPMAutomatización e implementación de Procesos en un Motor BPM
Automatización e implementación de Procesos en un Motor BPM
 
Análisis de Procesos con Adonis
Análisis de Procesos con AdonisAnálisis de Procesos con Adonis
Análisis de Procesos con Adonis
 
Modelización y Análisis de Procesos bajo BPMN
Modelización y Análisis de Procesos bajo BPMNModelización y Análisis de Procesos bajo BPMN
Modelización y Análisis de Procesos bajo BPMN
 
Software testing
Software testingSoftware testing
Software testing
 
Instalación de Jmeter
Instalación de JmeterInstalación de Jmeter
Instalación de Jmeter
 
Qa Testing - Cucumber
Qa Testing - CucumberQa Testing - Cucumber
Qa Testing - Cucumber
 
Crear archivo war desde Jenkins
Crear archivo war desde JenkinsCrear archivo war desde Jenkins
Crear archivo war desde Jenkins
 
Crear war en jenkins
Crear war en jenkinsCrear war en jenkins
Crear war en jenkins
 
Innovación educativa enfocada a la acción tutorial
Innovación educativa enfocada a la acción tutorialInnovación educativa enfocada a la acción tutorial
Innovación educativa enfocada a la acción tutorial
 
Requerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaRequerimientos de usuario y del sistema
Requerimientos de usuario y del sistema
 

Recently uploaded

Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
UPTAIDELTACHIRA
 

Recently uploaded (20)

Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Diapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundariaDiapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundaria
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptxEL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
EL HABITO DEL AHORRO en tu idea emprendedora22-04-24.pptx
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 

Funciones de correspondencia

  • 1. Memoria Caché: Funciones de Correspondencia
  • 2. Objetivos  Entender el modo de operación de las distintas funciones de correspondencia utilizadas en las memorias caché  Entender como cada función mapea las direcciones de la memoria principal en la memoria caché  Entender las ventajas y desventajas de cada función de correspondencia Objetivos 2 Arquitectura de Computadores
  • 3. Indica la forma como mapeo los bloques de memoria principal en las líneas de la memoria caché Arquitectura de Computadores3  Determina donde guardar un bloque  Determina donde buscar un dato  Permite determinar qué bloque hay en cada línea Memoria Caché Función de Correspondencia
  • 4. Arquitectura de Computadores4  Correspondencia Directa (directly mapped)  Correspondencia Asociativa (fully associative)  Correspondencia Asociativa por conjuntos (N-way associative) Funciones de Correspondencia Tipos de Correspondencia
  • 5. Arquitectura de Computadores5 Correspondencia Directa (directly mapped) Funciones de Correspondencia
  • 6. Arquitectura de Computadores6  Correspondencia Directa (directly mapped)  Mapea a priori  Cada bloque tiene asociada una línea de la caché Correspondencia Directa
  • 7. Arquitectura de Computadores7  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el estacionamiento determinado por sus últimos 2 dígitos del número de alumno. Correspondencia Directa 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99
  • 8. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores8  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el estacionamiento determinado por sus últimos 2 dígitos del número de alumno. Correspondencia Directa  Llega alumno 814  Se estaciona en 14
  • 9. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores9  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el estacionamiento determinado por sus últimos 2 dígitos del número de alumno. Correspondencia Directa  Llega alumno 764  Se estaciona en 64
  • 10. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99  Llega alumno 102  Se estaciona en 02 Arquitectura de Computadores10  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el estacionamiento determinado por sus últimos 2 dígitos del número de alumno. Correspondencia Directa
  • 11. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores11 Correspondencia Directa  Queremos ir a buscar el auto del alumno 683  ¿Cómo sabemos si el auto del estacionamiento 83 es el de él?  Necesitamos almacenar información extra que indique que auto es el que está en cada estacionamiento.
  • 12. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores12 Correspondencia Directa TAG  Queremos ir a buscar el auto del alumno 683  ¿Cómo sabemos si el auto del estacionamiento 83 es el de él?  Necesitamos almacenar información extra que indique que auto es el que está en cada estacionamiento.
  • 13. 82 83 84 85 6 00 01 02 13 14 15 62 63 64 96 97 98 99 Arquitectura de Computadores13  ¿Qué guardo?  El dígito de las centenas  El resto determinado por número de n° estacionamiento Correspondencia Directa TAG 8 7 1 9 5  Entonces el auto guardado en 83 no corresponde al 683 sino al 583.  Hay que ir a buscar el auto 683 fuera del campus y actualizar el tag.
  • 14. 82 83 84 85 6 00 01 02 13 14 15 62 63 64 96 97 98 99 Arquitectura de Computadores14  ¿Si quiero el auto del alumno 963?  Voy a 63 y leo el tag.  El auto es el que busco. Correspondencia Directa TAG 8 7 1 9
  • 15. Arquitectura de Computadores15 Correspondencia Directa Memoria Cache 00 01 10 11  Cada línea de caché corresponde a un “estacionamiento” .  Cada bloque de la memoria principal se asocia a una línea particular.  Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes.  Memoria Principal = 128 bloques  Caché = 4 líneas
  • 16. 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 Arquitectura de Computadores16 Correspondencia Directa  Cada línea de caché corresponde a un “estacionamiento” .  Cada bloque de la memoria principal es asociada a una línea particular.  Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes, Determina el byte dentro del bloque o de la línea 0 1 0 1 0 1 0 1
  • 17. Arquitectura de Computadores17 Correspondencia Directa  Cada línea de caché corresponde a un “estacionamiento” .  Cada bloque de la memoria principal es asociada a una línea particular.  Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes, 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 Determina la línea de la caché 00 00 01 01 10 10 11 11
  • 18. Arquitectura de Computadores18 Correspondencia Directa  Cada línea de caché corresponde a un “estacionamiento” .  Cada bloque de la memoria principal es asociada a una línea particular.  Ej.Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes, Tag asociado a la dirección 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0000 0 0000 0 0000 0 0000 0 0000 0 0000 0 0000 0 0000 0
  • 19. Arquitectura de Computadores19 Correspondencia Directa  ¿Qué pasa si duplicamos la memoria principal?  El tag aumenta en un bit Tag asociado a la dirección 0 0 0 0 0 0 0 0 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0000 0 0000 0 0000 0 0000 0 0000 0 0000 0 0000 0 0000 0
  • 20. Arquitectura de Computadores20 Correspondencia Directa  ¿Qué pasa si duplicamos la cantidad de líneas de la caché?  Los bits que determinan las líneas aumentan en 1  El tag se reduce en un bit Determina la línea de la caché 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 00 00 01 01 10 10 11 11 0 0 0 0 0 0 0 0
  • 21. Arquitectura de Computadores21 Correspondencia Directa  ¿Qué pasa si duplicamos el tamaño de las líneas?  Índice del byte en el bloque o línea aumenta en un bit  Bit de la línea se mantiene, pero se desplaza.  Tag se reduce en 1 Determina el byte dentro del bloque o de la línea 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 00 00 01 01 10 10 11 11 0 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
  • 22. Arquitectura de Computadores22 Correspondencia Directa  Ventajas  Tag pequeño (menos memoria extra)  Muy rápidas  No requieren políticas de reemplazo  Lógica simple  Desventajas  Poca eficiencia en el uso del espacio  Puedo sobrescribir datos aún cuando hay lugares libres  Muchas colisiones
  • 23. Arquitectura de Computadores23 Correspondencia Directa  Ej.  Memoria principal de 2 Mb  2 * 220  21 bits.  Caché de 64 Kb  Línea de 4 bytes  64Kb / 4b = 16K_líneas  24 * 210  14 bits  Para una dirección cualquiera A20 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 Índice del byte LíneaTag
  • 24. Arquitectura de Computadores24 Correspondencia Asociativa (fully associative) Funciones de Correspondencia
  • 25. Arquitectura de Computadores25  Correspondencia Asociativa (fully associative)  Mapea en forma dinámica  Cada bloque puede estar en cualquier línea Correspondencia Asociativa
  • 26. Arquitectura de Computadores26  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el primer estacionamiento libre. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Correspondencia Asociativa
  • 27. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores27  Llega alumno 814 Correspondencia Asociativa  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el primer estacionamiento libre.
  • 28. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores28  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el primer estacionamiento libre.  Llega alumno 764 Correspondencia Asociativa
  • 29. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99  Llega alumno 102 Arquitectura de Computadores29 Correspondencia Asociativa  Ej. 1000 alumnos: 0-999  Cada uno se estaciona en el primer estacionamiento libre.
  • 30. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores30  Queremos ir a buscar el auto del alumno 683  ¿Cómo sabemos donde está? Correspondencia Asociativa 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 TAG 814 764 102  ¿Qué almacenamos en el tag?  Todo el n° de alumno
  • 31. 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Arquitectura de Computadores31 TAG  ¿Qué pasa si se llena el estacionamiento?  Al llegar un nuevo auto, sacamos alguno conforme a alguna política Correspondencia Asociativa 814 764 102
  • 32. Arquitectura de Computadores32 Memoria Cache 00 01 10 11  Cualquier bloque de memoria principal puede estar en cualquier línea de la caché  Ej. Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa
  • 33. Arquitectura de Computadores33  Cualquier bloque de memoria principal puede estar en cualquier línea de la caché  Ej. Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa Determina el byte dentro del bloque o de la línea 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0 1 0 1 0 1 0 1
  • 34. Arquitectura de Computadores34  Cualquier bloque de memoria principal puede estar en cualquier línea de la caché  Ej. Memoria principal de 256 bytes, caché de 8 bytes, bloques de 2 bytes.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 Tag asociado a la dirección 0 1 0 1 0 1 0 1
  • 35. Arquitectura de Computadores35 Correspondencia Asociativa  Ventajas  Uso eficiente de la memoria (100%)  Desventajas  Tag muy grande.  Requiere politicas de reemplazo  Requiere almacenar información adicional para las políticas de reemplazo.  Es muy caro determinar qué bloque está en cada línea  Búsqueda puede ser muy lenta si la caché aumenta de tamaño O(n).  Ó muy cara electrónicamente si se usa búsqueda en paralelo.
  • 36. Arquitectura de Computadores36 Correspondencia Asociativa por conjuntos (N-way associative) Funciones de Correspondencia
  • 37. Arquitectura de Computadores37  Correspondencia Asociativa por conjuntos (N-way associative)  Mezcla de la correspondencia directa y asociativa Correspondencia Asociativa por Conjuntos
  • 38. Arquitectura de Computadores38  Ej. 1000 alumnos: 0-999 00 01 02 13 14 15 62 63 64 82 83 84 85 96 97 98 99 Correspondencia Asociativa por Conjuntos  Las 100 entradas se dividen en 10 grupos de 10.  El grupo donde se estaciona alguien depende del último dígito de su n° de alumno (~directly mapped)  Dentro del grupo se estaciona donde mejor le parezca (~fully-associative)
  • 39. Arquitectura de Computadores39 Memoria Cache 00 01 10 11  Ej. 2 vías.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa por Conjuntos Las vías indican la cantidad de líneas por conjunto… NO LA CANTIDAD DE CONJUNTOS
  • 40. Arquitectura de Computadores40  Ej. 2 vías.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa por Conjuntos Determina el byte dentro del bloque o de la línea 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0 1 0 1 0 1 0 1
  • 41. Arquitectura de Computadores41  Ej. 2 vías.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa por Conjuntos Determina el conjunto de la memoria cache 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0 0 1 1 0 0 1 1
  • 42. Arquitectura de Computadores42  Ej. 2 vías.  Memoria Principal = 128 bloques  Caché = 4 líneas Correspondencia Asociativa por Conjuntos Tag asociado a la dirección 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1
  • 43. Arquitectura de Computadores43  Ventajas  Tag más pequeño que en fully – associative, pero más grande que Directly – Mapped  Permite mayor eficiencia en el uso de la memoria por la flexibilidad.  Búsqueda dentro del conjunto es más rápida. Correspondencia Asociativa por Conjuntos
  • 44. Arquitectura de Computadores44  Ej, 4 vías.  Memoria Principal de 1Kb  210  10 bits  Líneas de 2 bytes  1 bit para especificar línea  Caché de 64 bytes  64 / 2 bytes por línea = 32 líneas.  32 líneas / 4 vías = 8 conjuntos.  3 bits para especificar conjunto.  ¿ En que direcciones de la caché podría estar el dato almacenado en la dirección 1101100111 ? Correspondencia Asociativa por Conjuntos
  • 45. Arquitectura de Computadores45 Correspondencia Asociativa por Conjuntos Memoria Caché 00h 01h 02h 03h 04h 05h 06h 07h 08h 1Bh 1Ch 1Dh 1Eh 1Fh  Conjunto 0 : líneas 0 – 3  Conjunto 1 : líneas 4 – 7  Conjunto 2 : líneas 8 – 11  …  Conjunto n : líneas N*n  N*n + N-1  Ej, 4 vías. ¿ En que dirección de la caché podría estar el dato almacenado en la dirección 1101100111 ? 1101100111 conjunto 3 byte 1  Línea 0 : direcciones 0 – 1  Línea 1 : direcciones 2 – 3  …  Línea n : direcciones 2*n + 2*n+1  Conjunto 3 : líneas 12 -15 Línea 12 : direcciones 24 - 25 13 : 26 - 27 14 : 28 - 29 15 : 30 - 31