0% encontró este documento útil (0 votos)
19 vistas29 páginas

Transparencias Parte1

El documento aborda la memoria caché, destacando su importancia en la jerarquía de memoria debido a la creciente brecha de velocidad entre la CPU y la memoria. Se discuten las características generales de las memorias caché, incluyendo el principio de localidad y la jerarquía de memorias, así como los parámetros de diseño como el bloque, la correspondencia y las políticas de reemplazo. Además, se menciona la tasa de aciertos y fallos en el acceso a la memoria, que son cruciales para la eficiencia del sistema.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
19 vistas29 páginas

Transparencias Parte1

El documento aborda la memoria caché, destacando su importancia en la jerarquía de memoria debido a la creciente brecha de velocidad entre la CPU y la memoria. Se discuten las características generales de las memorias caché, incluyendo el principio de localidad y la jerarquía de memorias, así como los parámetros de diseño como el bloque, la correspondencia y las políticas de reemplazo. Además, se menciona la tasa de aciertos y fallos en el acceso a la memoria, que son cruciales para la eficiencia del sistema.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Tema 1: Memoria cache (parte 1)

Iñigo Perona Balda (CAS)


Agustin Arruabarrena (EUS)  Olatz Arbelaitz (ENG)

Universidad del País Vasco (UPV/EHU)


Grado en Ingeniería Informática
Arquitectura de Computadores

2 de septiembre de 2022

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 1 / 29


Índice de parte 1 + parte 2

Introducción: jerarquía de memoria

Características generales de las memorias cache

Principales parámetros de diseño:


Bloque
Correspondencia
Algoritmo de reemplazo
Política de escritura

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 2 / 29


Índice

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 3 / 29


Introducción: jerarquía de memoria El gap de velocidad

Tabla de contenidos

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 4 / 29


Introducción: jerarquía de memoria El gap de velocidad

Introducción

Problema

El procesador es más rápido que la memoria y esta diferencia de


velocidad entre la CPU y la memoria (gap) es cada vez mayor.
La CPU debe utilizar la memoria lo más rápido posible para acceder a
las instrucciones y a los datos
Atención: el componente más lento, la memoria, determina la
velocidad de todo el sistema

El tiempo de acceso a memoria aumenta con el tamaño de la misma:


las memorias pequeñas serán más rápidas. Sin embargo, necesitamos
memorias grandes.
¾Cómo estructurar el sistema de memoria para realizar las operaciones
(lectura/escritura) lo más rápido posible? Repasemos los conceptos
principales.

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 5 / 29


Introducción: jerarquía de memoria El gap de velocidad

Introducción

Tipos de memoria RAM

1 RAM estática (SRAM): rápida, pero necesita 4-5 transistores para


cada bit de memoria (tipo biestable D).

2 RAM dinámica (DRAM): mayor integración (un transistor por cada


bit de memoria: carga de un condensador), pero más lenta.
Si el parámetro crítico es la velocidad, se utiliza RAM estática;
sin embargo, si es la capacidad, mejor RAM dinámica.

3 Memorias asociativas: La búsqueda no se realiza por dirección, sino


sí ,
mediante el contenido. Dada una palabra, el resultado puede ser:
está en memoria; o no, no está (además de la información asociada a
esa palabra; por ejemplo, dónde está). Son más complejas que las
memorias RAM habituales y tienen un uso especial en las memorias
cache.

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 6 / 29


Introducción: jerarquía de memoria Direcciones: palabra y byte

Tabla de contenidos

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 7 / 29


Introducción: jerarquía de memoria Direcciones: palabra y byte

Introducción

Estructura de la memoria principal (RAM)

Una posición de memoria se accede mediante su dirección, tanto para


leer como escribir.

Las direcciones de una memoria con P posiciones son de log2 P bits;


una dirección de n bits direcciona 2n posiciones.

Comunicación entre la CPU y la MP


Direcciones ⇒ bus de dirección
Datos ⇒ bus de datos
Operación (rd/wr) ⇒ bus de control

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 8 / 29


Introducción: jerarquía de memoria Direcciones: palabra y byte

Introducción

Estructura de la memoria principal (RAM)

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 9 / 29


Introducción: jerarquía de memoria Direcciones: palabra y byte

Introducción

Estructura de la memoria principal (RAM)

Unidad de información direccionada por el procesador:


byte (habitual)
palabra: 4 u 8 bytes
En general, las direcciones que genera el procesador suelen ser
alineadas a la palabra (indican el comienzo de una palabra).
Estructura de una dirección:

palabra = dir div tam_pal (división entera: 11/4 = 2)


byte = dir mod tam_pal (resto de la división: 11 mod 4 = 3)

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 10 / 29


Introducción: jerarquía de memoria Direcciones: palabra y byte

Introducción

Estructura de la memoria principal (RAM)

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 11 / 29


Introducción: jerarquía de memoria Direcciones: palabra y byte

Introducción

Un apunte sobre las direcciones de memoria

Al cargar el programa/datos en la MP, hay que decidir en qué


posiciones se ubican, según qué espacio de memoria está libre en ese
momento. Por tanto, las posiciones en las que se carga un programa
en memoria no son jas. El programa cargador decide en qué
posiciones físicas se cargan el programa y sus datos.

Por ello, el procesador utiliza direcciones lógicas, no direcciones


físicas concretas. Las direcciones lógicas deben traducirse a
direcciones físicas (de memoria). Esta traducción se realiza a través
de un hardware especial: TLB (translation look-ahead buer).

Para simplicar, en este tema trabajaremos con direcciones físicas.

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 12 / 29


Introducción: jerarquía de memoria Modulos: buers de entrelazado

Tabla de contenidos

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 13 / 29


Introducción: jerarquía de memoria Modulos: buers de entrelazado

Introducción

Estructura de la memoria principal (RAM)

La memoria principal se organiza en varios módulos, de forma que las


direcciones/posiciones se entrelazan entre los módulos.

De esta forma,se puede acceder de forma simultánea a


direcciones consecutivas, ya que estarán en módulos diferentes. El
contenido de estas direcciones se guarda en los buers de entrelazado
y desde aquí, mediante el bus de datos, se transeren al procesador

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 14 / 29


Introducción: jerarquía de memoria Modulos: buers de entrelazado

Introducción

Estructura de la memoria principal (RAM)

El nivel de entrelazado dene el tamaño del bloque (en el ejemplo, 4


palabras)

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 15 / 29


Características generales de las MC Jerarquía de memorias

Tabla de contenidos

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 16 / 29


Características generales de las MC Jerarquía de memorias

Características generales

Principio de localidad (locality)

¾Por qué se entrelaza la memoria? El acceso a las instrucciones y a los


datos no es aleatorio
El 90 % del tiempo de acceso se consume en el 10 % del código

localidad temporal: si se utiliza una palabra, seguramente pronto se


volverá a utilizar: bucles. . .

t → @i ⇒ t + ∆t → @i
localidad espacial: si se utiliza una palabra, seguramente la siguiente
palabra será la palabra consecutiva: ejecución secuencial, acceso a
vectores. . .
t → @i ⇒ t + 1 → @(i + ∆)

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 17 / 29


Características generales de las MC Jerarquía de memorias

Características generales

Principio de localidad (locality)

Debido al principio de localidad, el sistema de memoria se organiza en


varios niveles, deniendo una jerarquía de memoria
En los niveles superiores: memoria cache (MC)
Memoria pequeña pero rápida (cerca). RAM estática.
Instrucciones y datos que más utiliza el procesador.
Repartida en varios niveles (L1, el más pequeño; L2, L3).
Dado que se pueden integrar muchos transistores en un chip, L1 y L2
se integran dentro del chip: acceso rápido.
En los niveles inferiores: memoria principal (MP)
Memoria más grande (1.000 veces) pero más lenta (510 veces)
RAM dinámica

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 18 / 29


Características generales de las MC Jerarquía de memorias

Características generales

Jerarquía de memoria

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 19 / 29


Características generales de las MC Apuesta: hit y miss

Tabla de contenidos

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 20 / 29


Características generales de las MC Apuesta: hit y miss

Características generales

Principio de inclusión

El contenido de un nivel de la jerarquía de memoria es un


subconjunto del nivel anterior. Por ello, puede haber varias copias
de un bloque de datos, tal y como se indica en el esquema.

No obstante, en algunos procesadores no se cumple esta condición y la


cache L2 no es inclusiva: un bloque puede estar en L1 sin estar en L2.

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 21 / 29


Características generales de las MC Apuesta: hit y miss

Características generales

Principio de inclusión

El procesador buscará la información en la memoria más cercana. Si


no están en ese nivel, buscará en el siguiente nivel y así sucesivamente.
Por ello, el tiempo de acceso a la información es variable,
dependiendo de su localización.
Acceso rápido: la información que se busca está en un nivel cercano (en
MC). Pero en la MC no cabe toda la información!
Hay que hacer una APUESTA: ¾qué se lleva a MC?

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 22 / 29


Características generales de las MC Apuesta: hit y miss

Características generales

A la hora de buscar la información en la memoria cache, se puede


producir un acierto (la información está en MC) o un fallo (no está
en MC). Por ejemplo, al leer una palabra (solamente con L1 y MP):

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 23 / 29


Características generales de las MC Apuesta: hit y miss

Características generales

En resumen, así se puede expresar el tiempo de acceso a la jerarquía


de memoria:

Tacceso = h × TMC + (1 − h) × Tfallo

h: tasa de acierto (1 − h, tasa de fallos)


TMC : tiempo de acceso a memoria cache
Tfallo : tiempo para acceder a la información (instrucción/ dato) en el
siguiente nivel (en función de la tasa de aciertos de cada nivel)
Para que sea eciente, la tasa de aciertos, h, debe ser muy alta
(>95 %).

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 24 / 29


Características generales de las MC Apuesta: hit y miss

Características generales

A la unidad de transferencia entre MC y MP se le llama bloque


(line)
Bloque: 2n palabras consecutivas en memoria.
Por ejemplo, 64 bytes: 8 palabras de 8 bytes.
¾Por qué bloque y no palabra? ½Localidad!
Si se transere una palabra a MC para usarse en un determinado
momento, seguramente el siguiente acceso será a una palabra
consecutiva. Eso sí, se trata de una apuesta.
Por ello, se aprovecha la transferencia MP → MC para transferir más
de una palabra, casi al mismo coste.
En general, el tamaño del bloque coincide con el entrelazado de la
memoria.

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 25 / 29


Características generales de las MC MC: directorio / contenido

Tabla de contenidos

1 Introducción: jerarquía de memoria


El gap de velocidad
Direcciones: palabra y byte
Modulos: buers de entrelazado

2 Características generales de las MC


Jerarquía de memorias
Apuesta: hit y miss
MC: directorio / contenido

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 26 / 29


Características generales de las MC MC: directorio / contenido

Características generales

Estructura de la memoria cache: directorio / contenido

La dirección de una palabra indica su posición en MP. ¾Pero en la


memoria cache, cuál es su dirección?

Una memoria cache tiene dos partes:


contenido : SRAM para almacenar los bloques de datos.
directorio : información acerca de los bloques de datos almacenados en
la cache, una palabra por cada bloque de datos: marcas de dirección
(tag) y varios bits de control del bloque.
Dependiendo de la organización de la cache, el directorio puede ser una
memoria asociativa (búsqueda por contenido).
Además, hardware habitual: multiplexores, codicadores. . .

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 27 / 29


Características generales de las MC MC: directorio / contenido

Características generales

Estructura de la memoria cache: directorio / contenido

Directorio: hay información necesaria para saber si la palabra que se


busca está en MC o no (SRAM / M. asoc.)

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 28 / 29


Características generales de las MC MC: directorio / contenido

Tema 1: Memoria cache (parte 1)

Iñigo Perona Balda (CAS)


Agustin Arruabarrena (EUS)  Olatz Arbelaitz (ENG)

Universidad del País Vasco (UPV/EHU)


Grado en Ingeniería Informática
Arquitectura de Computadores

2 de septiembre de 2022

I. Perona (UPV/EHU) Tema 1: Memoria cache (parte 1) 2 de septiembre de 2022 29 / 29

También podría gustarte