SlideShare una empresa de Scribd logo
1 de 73
UNIVERSIDAD NACIONAL DE SAN AGUSTÍN
FACULTAD DE INGENIERÍA DE PRODUCCIÓN Y SERVICIOS
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
CURSO: ARQUITECTURA DE COMPUTADORAS
GRUPO C
CAP 4. SISTEMA DE MEMORIA
• Integrantes
:
Callo Mendoza Wilson
Chambilla Condori Guido
Ramos Magaño Ricardo
Soto Acosta Carlos
You can Resize without
losing quality
You can Change Fill
Color &
Line Color
FREE
PPT
TEMPLATES
www.allppt.com
¿Cómo aprovechar las prestaciones de un procesador?
Para poder
aprovechar
dichas
prestaciones es
necesario poder
acceder de
forma eficaz a
las instrucciones
y datos
Distribución de los accesos a memoria para varias arquitecturas
SPARC(int) SPARC(fp) MIPS(int) MIPS(fp) IBM 5/360 Media
Instrucciones 0.79 0.80 0.76 0.77 0.50 0.72
Read (dat) 0.15 0.17 0.15 0.19 0.35 0.20
Store (dat) 0.06 0.03 0.09 0.04 0.15 0.07
Debemos saber que:
• El crecimiento exponencial al que experimentan
los procesadores es diferente al ritmo de mejora
del tiempo de acceso a la memoria DRAM.
• El procesador crece a un ritmo del 55%anual
• El tiempo de acceso a las memorias solo un 10%
anual
VS
PC XT con procesador 8088
PC con procesador Intel Pentium
Pro (1995)
Se dieron mejoras considerables como:
• Un procesador 900veces mas rápido
• 64veces mas memoria
• 85veces mas capacidad de disco
• El tiempo de acceso a la memoria solo era del orden de 10veces menor
GAP DE MEMORIA
La diferencia entre el
tiempo de ciclo del
procesador y la
latencia de memoria
se incrementa en un
factor próximo a 6
(5.6)
You can Resize without
losing quality
You can Change Fill
Color &
Line Color
FREE
PPT
TEMPLATES
www.allppt.com
Prestaciones del sistema de memoria
Ancho de banda
Es el numero de bytes
por unidad de tiempo
de que es capaz de
transferir el sistema
de memoria
Depende del tiempo de ciclo de los circuitos de
memoria
Depende del numero de bits que proporciona la
memoria en cada acceso
Depende de la anchura de los buses que conectan
el procesador y la memoria
You can Resize without
losing quality
You can Change Fill
Color &
Line Color
FREE
PPT
TEMPLATES
www.allppt.com
Prestaciones del sistema de memoria
Latencia
Es el tiempo que
transcurre desde que
el procesador inicia el
acerca
situando
a memoria
la dirección
del dato en las líneas
correspondientes
hasta que la memoria
proporciona dicho
dato
Depende del tiempo de acceso a los chips de
memoria
Depende de los retardos que introduzca la
conexión entre el procesador y memoria
- Los asociados a la sincronización
- El arbitraje de los buses
Reducción de la latencia
Lo que se busca es equilibrar el ritmo al que el
procesador necesita datos e instrucciones de la
memoria y el ritmo al que la memoria puede
proporcionarlos.
• Para ello se puede implementar estrategias en
el procesador para tolerar los retardos de la
memoria
Planificación dinámica de
instrucciones y el
adelantamiento de instrucciones
de carga y almacenamiento
Los accesos
especulativosa
memoria
El procesamiento
multihebraa
Multithreading
Mejoramiento de las prestaciones
• Se organiza como una jerarquía de niveles.
• El nivel mas próximo al procesador se
implementa en una tecnología mas rápida y
mas costosa en cuanto a hardware y consumo,
como también una capacidad menor.
Cachés on-chip
• Memoria caché dentro del
mismo circuito integrado
del procesador
Cachés off-chip
• Memoria caché externa al
circuito integrado del
procesador
OFF-CHIP
• Son mas rápidas que las memorias DRAM.
• Necesitan un mayor numero de transistores.
• Presenta mayor consumo
• Existe la posibilidad de tener hasta tre niveles L1,L2y L3
de cache
Prestaciones del sistema de memoria
Determinados por tres factores:
1. La propia eficacia de la organización de
la jerarquía de memoria.
2. La organización del bus de memoria
3. Las prestaciones de la memoria DRAM
Técnicas orientadas a mejorar la
memoria en los tres factores
anteriores:
• El uso de varios niveles de cache.
• Los accesos de memoria no
bloqueantes.
• El entrelazado de la memoria y el
desarrollo de sistemas de
interconexión de alta velocidad con
la memoria.
Datos sobre jerarquias de memoria de los procesadores Alpha
Microprocesador 21064 21164 21264 21364
Proceso CMOS
Frec. Reloj
CPI gcc
1 – caché
Latencia (ciclos)
D – caché
Latencia (ciclos)
Buffer
Bloque (bytes)
Bus off chip (bits)
L2 on-chip (unificada)
Latencia (ciclos)
L2 o L3 off-chip (unif)
Latencia
Tamaño de memoria
Latencia (ciclos)
Latencia (instrucciones)
Circuitos de memoria
• Cada celda (circuito capaz de almacenar
el estado e un bit) es un biestable.
de una celda de
(6 transistores/bit) es
la de una DRAM (1
• La complejidad
memoria SRAM
mucho mayor a
transistor por bit).
• Los circuitos de memoria que presenta
tienen menor capacidad de los CI de
memoria DRAM.
• Presenta mayor consumo y coste que
las memorias DRAM.
• Las SRAM son mas rápidas.
SRAM y DRAM
Diagrama de bloques memoria SRAM y DRAM
Memorias DRAM
2
Protocolo más complejo para lectura y escritura de datos
1
Utilizada para configurar la memoria principal de los computadores
3
Celda consiste en un capacitor y transistor
4
Estado eléctrico guardado cambia según el
capacitor se descarga.
Arquitectura de memoria DRAM
Diagrama de Tiempos
Operación de lectura de una celda de memoria
Acceso a una fila de memorias
• Se sitúa la dirección de la fila en las líneas de
dirección de memoria.
• Se valida mediante la señal RAS
• Se activa la línea de celdas correspondiente y se
transfiere la carga al amplificador de señal
• Se almacena los bits en cada una de las celdas de
la fila accedida.
1
2
3
.
.
.
.
.
.
N-1
N
1 2 3 4 5 6 7 8
Operación de lectura de una celda de memoria
Acceso a una columna
• Se sitúa la dirección de la columna en las líneas de
dirección de memoria.
• Se valida mediante la señal CAS y se lee el bit del
amplificador correspondiente.
• La lectura modifica la carga de las celdas.
• Los datos de la fila seleccionada debe volver a
escribirse en paralelo con el acceso a la columna.
1
2
3
.
.
.
N-1
N
1 2 3 4 5 6 7 8
Operación de lectura de una celda de memoria
Precarga
• Se precarga la matriz de celdas para la siguiente
operación.
• Se desactiva RAS.
𝑅𝐴𝑆
𝑡𝑅𝐴𝑆 𝑡𝑃𝑅
Serie de tiempos característicos
Activación a otro
acceso de
memoria.
𝒕𝑷𝑹
Tiempo de
precarga
𝒕𝑹𝑪 = 𝒕𝑹𝑨𝑺 + 𝒕𝑷𝑹
Tiempo de ciclo del chip
de memoria.
Relacionado con el ancho
de banda.
Ckto en palabras de 1 bit,
ancho de banda es 1/𝑡𝑅𝐶
Incremento de AB con
circuitos de memoria (𝑤).
𝒕𝑹𝑨𝑺
Tiempo de acceso
Activación señal
RAS hasta dato en
la salida.
Ejemplo
¿Cuál es el ancho de banda de un chip DRAM con tiempo de ciclo de 100 ns? Si se configura la memoria
a 32 bits de ancho, ¿cuál sería su nuevo ancho de banda?
𝑡𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑐𝑖𝑐𝑙𝑜: 𝑡𝑅𝐶 = 100 𝑛𝑠
Ancho de banda
1
𝑡𝑅𝐶
1
=
100 𝑛𝑠
= 10 𝑀𝑏𝑖𝑡𝑠/𝑠
Se configura una memoria de 32 bits de ancho.
𝑤 = 32
1
𝑅𝐶
𝑤 ∗
𝑡
= 32 ∗ 10 𝑀𝑏𝑖𝑡𝑠/𝑠
NuevoAncho de banda
320 𝑀𝑏𝑖𝑡𝑠/𝑠 = 40 𝑀𝑏𝑦𝑡𝑒𝑠/𝑠
Evolución de tiempos de acceso y tiempos de ciclo
Año
Tamaño del chip
(Más lenta)
RAS (ns)
(más rápida)
RAS(ns) CAS (ns)
Tiempo de
ciclo (ns)
1980 64 Kb 180 150 75 250
1985 256 Kb 150 120 50 220
1986 1 Mb 120 100 25 190
1989 4 Mb 100 80 20 165
1992 16 Mb 80 60 15 120
1996 64 Mb 70 50 12 110
1998 128 Mb 70 50 10 100
2000 256 Mb 65 45 7 90
2002 512 Mb 60 40 5 80
ARQUITECTURA MEMORIA DRAM
Tipos de localidades:
Los programas presentan ambos
tipos de localidades
LOCALIDAD ESPACIAL
LOCALIDAD TEMPORAL
Es muy probable ejecutar instrucciones cercanas
Es muy probable repetir instrucciones
ARQUITECTURA MEMORIA DRAM
Ejemplos
Elementos de datos a los que se accede en
una matriz donde cada vez se accede a un
elemento diferente (o simplemente al
siguiente)
Elementos de datos a los que se accede en
bucles (donde se accede a los mismos
elementos de datos varias veces)
• Los patrones de acceso de memoria tienen una localidad espacial
considerable.
ARQUITECTURA MEMORIA DRAM
Esto ocurre cuando en un caso
probable, no se pueda encontrar la
información que busca en cache previo,
por lo que accede a todas las posiciones
consecutivas para pasarla a caché
ARQUITECTURA DRAM
COMPARATIVA ARQUITECTURAS
DRAM
1 2
Acceso convencional
FPM
EDO
BEDO
FPM DRAM (FAST PAGE MODE RAM)
Mantiene constante la
dirección y realiza lecturas
de varias columnas de forma
consecutiva
FPM
1 2
EDO DRAM (EXTENDED DATA OUT
RAM) y BEDO (BURST)
EDO: Añade un Latch para
mantener el estado del
terminal.
BEDO: Añade un registro que
lleva la cuenta de los registros
a leer.
EDO
BEDO
EDO DRAM (EXTENDED DATA OUT
RAM) y BEDO (BURST)
SDRAM (SYNCHRONOUS DRAM) Y
DDR SDRAM
SDRAM: Sincronizada al bus del sistema, quiere decir que
cambia de estado en un momento señalado por la señal.
DDR SDRAM:
Permite el
registro de
datos en flanco
de subida como
de bajada
TIPOS DE DDR
SDRAM
Existen 4 tipos de memoria DDR SDRAM por
versiones:
• DDR SDRAM (Primera versión)
• DDR2 SDRAM (Segunda versión)
• DDR3 SDRAM (Tercera versión)
• DDR4 SDRAM (Cuarta y actual versión)
MEMORIA GDDR
(GRAPHICS DOUBLE
DATA RATE)
Memorias con funcionamiento igual al DDR,
operando 2 o 4 bits por ciclo de reloj, son
especiales por su optimización para alcanzar
mayores frecuencias y ancho de bus
Al igual que el anterior cuenta con distintas
generaciones (desde el GDDR hasta GDDR6)
RDRAM
CONTROLADOR
DEMEMORIA
MEMORIA
RDRAM
BUS DE UN BYTE
DE ANCHO
Se multiplexa para transportar datos y
direcciones.
f = 300 MHz
Transfiere en ambos ciclos de reloj
Transfiere 600 Mbytes/s
• 64 Mbits, se
divide en cuatro
bancos.
• Mantener abiertas
4 filas.
Memoria
RDRAM
• Transacción de
datos cada 4
ciclos.
Bus
multiplexado • Se mandan
paquetes
(direcciones)
• Se intercambian
paquetes de datos
Transferencia
de paquetes
DRDRAM (Direct Rambus DRAM)
Bits de datos y control:
• Paquetes de 8 bytes
• 10 ns = 4 ciclos
• Señales entre 1 V y 1.8 V
• Se transfieren en ambos ciclos
de reloj
8 𝑏𝑦𝑡𝑒𝑠 𝑥 2
10 𝑛𝑠
= 1.6 𝐺𝐵/𝑠
• Dividido en 16 bancos
• Partición del bus en 3
componentes.
• 3 transferencias distintas
Sucesor de
RDRAM
Bus:
• 400 MHz
• 3 canales de un byte cada
uno.
SDRAM VS. RDRAM
• RDRAM necesita 20% más
de tamaño de dado para
igual capacidad
• DRDRAM 3 a 4 veces más
costoso que SDRAM
DRDRAM VS. DRAM
• 8 veces más prestaciones
que un chip DRAM
convectional.
• Cambio con DDR SDRAM.
DRDRAM
• Mejoras de 1% a 2% en
juegos
• 10% - 15% en aplicaciones
gráficas
PRESTACIONES
RDRAM VS.
SDRAM
SDRAM
• Se necesita mucha
memoria
• Disponer de altos anchos
de banda.
DRDRAM
• Limitaciones de capacidad
• Anchos de banda
elevados
PRESTACIONES
RDRAM VS.
SDRAM
NUEVAS PROPUESTAS
• Subdividen el núcleo
en bancos
• Reduce el tiempo de
acceso (cercano a una
SRAM)
FCRAM y MoSys DRAM
VCRAM
Buffer SRAM asociativo por
conjuntos en el chip
Tener en cuenta los buses que transfieren
la información al procesador
01Mejorar los buses
Carga almacenada en la celda de memoria
DRAM se disipa con el tiempo.
02Diferencias entre SRAM y DRAM
De las celdas de memoria debe refrescarse
continuamente (16-32 ms)
03Carga de los transistores
Durante el proceso de refresco el
procesador no puede acceder a la memoria.
04Posibles colisiones
PRESTACIONES
Añade una penalización de entre 6% y 12%.
Tiempo de espera = 50% de la latencia
05Penalizaciones
Controlador de memoria
Se ubica en un circuito integrado
llamado chipset
Chipset
Circuitería de refresco de memoria
DRAM
Circuitos que permiten el intercambio
de información con el procesador y los
circuitos de memoria DRAM
DRAM
You can Resize without
losing quality
You can Change Fill
Color &
Line Color
FREE
PPT
TEMPLATES
www.allppt.com
La memoria debe
proporcionar
instrucciones y
datos necesarios.
• Un procesador es capaz de captar 4
instrucciones por ciclo
• Frecuencia de 1 GHz
• Tamaño de palabra de 32 bits
Por ejemplo:
• 𝐵𝑖𝑛𝑠𝑡 = 𝑇𝑖𝑛𝑠𝑡 𝑥 𝐼𝑃𝐶 𝑋 𝐹 =
4 4 109 𝑏𝑦𝑡𝑒𝑠/𝑠 = 16𝐺𝑏𝑦𝑡𝑒𝑠/𝑠
El ancho de
banda necesario
(lectura de
instrucciones):
Para que un
procesador pueda
procesar las
instrucciones del
programa a pleno
rendimiento:
El acceso a 4 instrucciones
implica acceder a 2 datos
(lectura/escritura), el ancho
de banda para datos es:
𝐵𝑑𝑎𝑡𝑜 = 𝑁𝐷 𝑥 𝑇𝑑𝑎𝑡𝑜 𝑥 𝐹
= 2 4 109 𝑏𝑦𝑡𝑒𝑠Τ𝑠 = 8 𝐺𝑏𝑦𝑡𝑒𝑠/𝑠
𝐵𝐶𝑃𝑈 = 𝐵𝑖𝑛𝑠𝑡 + 𝐵𝑑𝑎𝑡𝑜
= 16 + 8 = 24 𝐺𝑏𝑦𝑡𝑒𝑠/𝑠
You can Resize without
losing quality
You can Change Fill
Color &
Line Color
FREE
PPT
TEMPLATES
www.allppt.com
• Bus de 800 MHz
• 𝐵𝑀𝐸𝑀 = 12 𝐺𝑏𝑦𝑡𝑒𝑠/𝑠
Tecnología
DDR2
• El procesador encuentra datos e
instrucciones en una cache rápida
Disponer de
una jerarquía
eficiente
• Tiempo de latencia: retardo entre que se
solicita acceso y se termina el acceso.
(Acceder a un dato)
• Ancho de banda: número de palabras por
unidad de tiempo. (Acceder a un bloque)
Prestaciones
de la
memoria:
Capa de
almacenamiento
de datos de alta
velocidad
¿Qué es una
memoria
cache?
Tipos de correspondencia
Memoria cache
asociativa por conjuntos
Conjunto que almacena la
línea
Vía: Línea del conjunto.
Cache: 2𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜+𝑁𝑣í𝑎
Cache con correspondencia
directa
Conjunto: Cada uno con 1
línea; línea a la que irá la línea
de memoria principal.
𝑁𝑣í𝑎 = 0
Suministro de líneas: 2𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜
Cache completamente asociativa
Un solo conjunto: 𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜 = 0 𝑦 𝑁𝑣í𝑎 = 0
Marca: Bits de dirección de memoria principal y
línea de cache.
Campos que se puede
distinguir en las direcciones
de memoria
Número de bits de campos
𝑁𝑚𝑎𝑟𝑐𝑎, 𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜, 𝑁𝑣í𝑎
Jerarquía de dos niveles (𝐿1 y memoria
principal):
𝑇2 = (𝑎1)(𝑡1) + (1 − 𝑎1)(𝑡1 + 𝑡𝑀)
Jerarquía de tres niveles (𝐿1 , 𝐿2 y memoria
principal):
𝑇3 = (𝑎1)(𝑡1) + (1 − 𝑎1)(𝑎2)(𝑡1+𝑡2) + (1 − 𝑎1)(1 − 𝑎2)(𝑡1 + 𝑡2 + 𝑡𝑀)
𝑇3 < 𝑇2 por lo tanto:
𝑡2
𝑡𝑀
< 𝑎2
a: Tasa de acierto a la cache
t: Tiempo de acceso a la
cache
En una jerarquía
de dos niveles TIEMPO DE CONSUMO
Se actualiza el contenido de la
línea reemplazada en la memoria
principal
Se reemplaza una línea de cache con
información desde la memoria
principal
Se puede mejorar la jerarquía de la memoria, tiempos de acceso a los niveles,
reducer la tasa de fallos y reducir la penalización.
𝑇2 = (𝑎1)(𝑡1) + (1 − 𝑎1)(𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜 + 𝑡𝑙í𝑛𝑒𝑎)
Controlador de memoria
Genera dos direcciones
Fila de celdas
Primer acceso
ACCESO A UNA MEMORIA DRAM
PRIMER
ACCESO
SEGUNDO
ACCESO
Acceso a una matriz de
celdas de memoria DRAM
Columna de celdas
Segundo acceso
BIT deseado
DIVERSAS ARQUITECTURAS DRAM
Para configurar la
memoria principal
MEJORA  ANCHO DE BANDA
• Aprovechar la localidad de los
accesos a memoria principal.
• Leer/Escribir  Línea de cache
completa.
• Segmentación de lecturas.
TRANSFERENCIA ENTRE EL PROCESADOR Y LA MEMORIA
CICLO DE BUS
• Conjunto de ciclos para una transferencia.
• Variable que depende del tiempo de
transacción.
CICLOS BURST O A
RÁFAGAS
• Procesador genera solo dirección de una
palabra dentro de la línea.
• Desea todas las palabras.
• Controlador de memoria genera señales
para que la DRAM proporcione los datos.
• Posiciones consecutivas  eficiencia
MÁXIMOANCHO DE
BANDA
• Para un ciclo de acceso a memoria que
𝑐𝑖𝑐𝑙𝑜
𝑠
necesite 𝑁 mínimo:
𝐵 =
𝑁𝑏𝑖𝑡𝑠(𝐹𝑏𝑢𝑠)
𝐵𝑏𝑢𝑟𝑠𝑡 =
𝑁𝑐𝑖𝑐𝑙𝑜𝑠
• Para una transferencia en modo burst:
𝑁𝑏𝑖𝑡𝑠(𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑠_𝑙í𝑛𝑒𝑎 )(𝐹𝑏𝑢𝑠
) 𝑐𝑖𝑐𝑙𝑜
𝑠
𝑁 + 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑠_𝑙í𝑛𝑒𝑎 − 1
Problema 1
En un computador el bus de memoria principal es de 100 MHz y 64 bits de datos.
a) Si el ciclo de lectura del bus necesita dos ciclos de reloj, ¿cuál sería el tiempo máximo de acceso que
debería tener la memoria para que no se necesiten introducir estados de espera?
b) Suponga que quiere cargar desde la memoria una línea de cache constituida por 64 bytes ¿Cuál es la
ganancia en ancho de banda que se obtiene si se utiliza acceso en modo burst con relación a acceso
palabra a palabra si el tiempo de acceso de la memoria es de 45 ns?
Datos
𝐶𝑖𝑐𝑙𝑜𝑠 𝑑𝑒 𝑟𝑒𝑙𝑜𝑗 = 2
𝑓𝑏𝑢𝑠 = 100 𝑀𝐻𝑧
64 𝑏𝑖𝑡𝑠 𝑑𝑒 𝑑𝑎𝑡𝑜𝑠 = 8 𝑏𝑦𝑡𝑒𝑠
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 45𝑛𝑠
Solución
a) Dado que el tiempo de ciclo de lectura del bus necesita dos ciclos de
reloj, el tiempo de acceso de la memoria, para no tener que
introducir estados de espera en una lectura, es igual a
𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑎𝑥
𝑇 = 𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑙𝑒𝑐𝑡𝑢𝑟𝑎
× 𝑇𝑐𝑖𝑐𝑙𝑜𝑏𝑢𝑠
𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑙𝑒𝑐𝑡𝑢𝑟𝑎
=
𝐹𝑏𝑢𝑠
2
𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑎𝑥 =
100 × 106 = 20 𝑛𝑠
b)
Si el tiempo de acceso a la memoria es de 45 ns
1
𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑐𝑖𝑐𝑙𝑜 =
100 𝑀𝐻𝑧
= 10 𝑛𝑠
Se necesitarían 5 ciclos de reloj
45 𝑛𝑠
10 𝑛𝑠
= 4.5
Entonces se debe de introducir 3 ciclos de espera
𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑖𝑛
𝐹𝑏𝑢𝑠
𝑁𝑐𝑖𝑐𝑙𝑜𝑠
= =
5
100 𝑀𝐻𝑧
𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑖𝑛
= 50 𝑛𝑠
Problema 1
b)
Para acceder a 64 bytes con 64 bits (es decir 8 bytes), se necesitarían 8 accesos de memoria
𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 = 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑠 × 𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑖𝑛
𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 = 8 × 50 𝑛𝑠
𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 = 400 𝑛𝑠
Si se usa el modo burst, el tiempo de acceso será el siguiente
𝑇𝑏𝑢𝑟𝑠
𝑡
𝐹𝑏𝑢𝑠 100 𝑀𝐻𝑧
𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑏𝑢𝑟𝑠𝑡 5 + 1 + 1 + 1 + 1 + 1 + 1
= = = 120 𝑛𝑠
La ganancia se puede calcular como:
𝑇𝑏𝑢𝑟𝑠𝑡
𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 400 𝑛𝑠
𝑆 = =
120 𝑛𝑠
𝑆 = 3.33
Problema 1
Problema 2
Un computador dispone de un procesador de 64 bits y utiliza una memoria cache de correspondencia directa
de 64 Kbytes y una memoria principal de 32 Mbytes.
(a) Indique la posición de cache que ocupa la instrucción que se encuentra en la dirección 0x110AB48H
teniendo en cuenta que cada línea es de 128 bytes.
(b) ¿Y si, con los mismos datos, la memoria cache fuese asociativa por conjuntos de 4 vías?
Datos Solución
𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑝𝑟𝑖𝑛𝑐𝑖𝑝𝑎𝑙 32 𝑀𝑏𝑦𝑡𝑒𝑠 = 225 𝑏𝑦𝑡𝑒𝑠
25 bits para memoria RAM
𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑐𝑎𝑐ℎé 𝑑𝑒 64 𝐾𝑏𝑦𝑡𝑒𝑠 = 216 𝑏𝑦𝑡𝑒𝑠
16 bits para memoria caché
𝑇𝑎𝑚𝑎ñ𝑜 𝑝𝑜𝑟 𝑙í𝑛𝑒𝑎 𝑑𝑒 𝑐𝑎𝑐ℎé 128 𝑏𝑦𝑡𝑒𝑠
= 27𝑏𝑦𝑡𝑒𝑠
a) Hallando el número de líneas caché
𝑁𝐿𝑖𝑛𝑒𝑎𝑠 =
𝑡𝑎𝑚𝑎ñ𝑜 𝑐𝑎𝑐ℎé
𝑡𝑎𝑚𝑎ñ𝑜 𝑝𝑜𝑟 𝑙í𝑛𝑒𝑎
216
27
= = 29 𝑙í𝑛𝑒𝑎𝑠
Si la memoria cache es de correspondencia directa, los 7 bits
menos significativos de la dirección indican la posición del
byte dentro de la línea
9 9 7
9 7
Mem. Principal
Mem. Caché
Problema 2
(a) Indique la posición de cache que ocupa la instrucción que
0x110AB48H teniendo en cuenta que cada línea es de 128 bytes.
Datos Solución
se encuentra en la dirección
𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑝𝑟𝑖𝑛𝑐𝑖𝑝𝑎𝑙 32 𝑀𝑏𝑦𝑡𝑒𝑠 = 225 𝑏𝑦𝑡𝑒𝑠
25 bits para memoria RAM
𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑐𝑎𝑐ℎé 𝑑𝑒 64 𝐾𝑏𝑦𝑡𝑒𝑠 = 216 𝑏𝑦𝑡𝑒𝑠
16 bits para memoria caché
𝑇𝑎𝑚𝑎ñ𝑜 𝑝𝑜𝑟 𝑙í𝑛𝑒𝑎 𝑑𝑒 𝑐𝑎𝑐ℎé 128 𝑏𝑦𝑡𝑒𝑠
= 27𝑏𝑦𝑡𝑒𝑠
9 9 7
9 7
Mem. Principal
Mem. Caché
1 0001 0000 1010 1011 0 100 1000
1010 1011 0 100 1000
110 AB 48
Posición en caché: AB48H
Campo de Marca: 110H
Marca Línea Byte
Mem. Principal
Mem. Caché
Problema 2
(b) ¿Y si, con los mismos datos, la memoria cache fuese asociativa por conjuntos de 4 vías?
Solución
Si la memoria caché fuera de 4 vías, las
líneas estarían agrupadas en conjuntos de
4, por lo que el número de conjuntos sería.
29
22 = 27 𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜𝑠
11 7 7
7 2 7
Mem. Principal
Mem. Caché
1 0001 0000 10 10 1011 0 100 1000
442H 56H ACC8H
Posición en caché: ACC8H
Conjunto: 56H
Campo de Marca: 442H
Marca Conjunto Byte
Mem. Principal
Mem. Caché
10 1011 0 XX 100 1000
01
Problema3
En un computador, la cache interna del procesador tiene un tiempo de acceso de 2.5 ns y una tasa de
aciertos del 80%, y la memoria principal tiene un tiempo de acceso de 10 ns. Suponga que dispone de una
memoria cache SRAM con un tiempo de acceso de 5 ns.
a) ¿Qué tasa de fallos ha de tener para que el tiempo de acceso medio a memoria se reduzca con respecto
a la situación anterior?
b) ¿Es posible obtener un tiempo de acceso medio de 3.7 ns?
c) ¿Cuál es el mínimo tiempo de acceso medio que se puede conseguir?
Datos
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 2.5𝑛𝑠
Memoria principal
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 10𝑛𝑠
Memoria cache SRAM
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 5𝑛𝑠
Solución
a) El tiempo medio de acceso al sistema de memoria constituido
por dos niveles (la memoria cache interna L1 y la memoria principal
DRAM) es igual a:
donde 𝑎1 es la tasa de aciertos en la cache L1, 𝑡1 es el tiempo de
acceso a la memoria cache L1, y 𝑡𝑀 el de la memoria principal.
Problema 3
Solución
Se ha supuesto que el dato buscado siempre está en la memoria principal y que la memoria cache es del tipo
look-through.
En el caso de un sistema de memoria con tres niveles, en el que se añade una memoria implementada con
celdas SRAM que constituye el nivel de cache externa L2, se tiene que, si 𝑎2 es la tasa de aciertos de la
memoria cache L2 (que se supone también de tipo look-through), el tiempo medio de acceso es igual a:
De esta forma, para que T3 < T2 es preciso que
1 < 2𝑎2
es decir, que 𝑎2 > 0.5, o lo que es lo mismo, que la memoria cache L2 tiene que tener una tasa de aciertos
mayor del 50%.
Para responder al segundo apartado, teniendo en cuenta que 𝑇3 = 5.5 – 2 × 𝑎2, si se quiere que 𝑇3 sea
igual a 3.7 se debe cumplir que:
Problema 3
Solución
de donde se puede despejar 𝑎2 = 0.9.
Por último, para responder al tercer apartado, el mínimo tiempo de acceso medio se correspondería a la
situación en la que 𝑎2 = 1 (siempre que se busca un dato en L2 se encuentra allí):
Este tiempo es el mismo que se obtendría si en la expresión del cálculo de 𝑇2 (para el sistema de memoria de
dos niveles) se hiciera el tiempo de acceso a la DRAM igual al tiempo de acceso a la memoria cache L2.
Problema 4
En un computador, el bus tiene una frecuencia de 200 MHz, y la memoria principal un tiempo de acceso de
30 ns, que, tras el primer acceso, puede proporcionar (o recibir) una palabra por ciclo en los accesos burst.
El procesador superescalar de 1 GHz dispone de una cache interna con líneas de 4 palabras.
En los programas, por término medio, un 30% de las instrucciones necesitan leer o escribir un dato (una
palabra) en memoria, la tasa de aciertos de la cache interna es del 90%, y, en un 20% de los accesos a
datos se necesita reemplazar el bloque, en caso de que se haya producido un fallo.
a) ¿Cuál es el tiempo medio de acceso a la memoria?
b) ¿Cuántas instrucciones por ciclo se pueden ejecutar, por término medio, en el procesador? ¿y si
la tasa de aciertos pasa a ser de un 95%?
Datos
𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠
𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧
𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠
Instrucción Proporción
Leer o escribir un
dato 30%
Aciertos de la cache
interna 90%
Reemplazar el
bloque 20%
Problema 4
a) ¿Cuál es el tiempo medio de acceso a la memoria?
Datos
𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠
𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧
𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠
Instrucción Proporción
Leer o escribir
un dato 30%
Aciertos de la
cache interna 90%
Reemplazar el
bloque 20%
Solución
• 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 𝑎1𝑥𝑡1 + 1 − 𝑎1 𝑥 𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜𝑥𝑡𝑙í𝑛𝑒𝑎
De los datos:
𝑎1 = 0.9 (aciertos a cache)
𝑡1 = 1𝑛𝑠 (tiempo de acceso a la cache)
𝑡𝑀 = 30𝑛𝑠 (tiempo de acceso a la memoria)
Hay un reemplazo de línea en un 20 % de los accesos y un 30%
de instrucciones acceden a datos:
• 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑡𝑜𝑡𝑎𝑙
𝑁𝐼+0.3𝑥𝑁
𝐼
𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑑𝑎𝑡𝑜𝑠 0.3𝑥𝑁𝐼
= 0.2 𝑥 = 0.2 𝑥 = 0.046
Problema 4
a) ¿Cuál es el tiempo medio de acceso a la memoria?
Datos
𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠
𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧
𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠
Instrucción Proporción
Leer o escribir
un dato 30%
Aciertos de la
cache interna 90%
Reemplazar el
bloque 20%
Solución
• Tiempo de actualización de una línea cuando debe
reemplazarse (4 palabras)
𝑡𝑙í𝑛𝑒
𝑎
𝐹𝑏𝑢𝑠 200 𝑀𝐻𝑧
𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑏𝑢𝑟𝑠𝑡 6 + 1 + 1 + 1
= = = 45𝑛𝑠
Reemplazando valores en la primera expresión:
1 − 𝑎1
𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 𝑎1𝑥𝑡1 + 𝑥 𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜𝑥𝑡𝑙í𝑛𝑒𝑎
𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 0.9𝑥1𝑛𝑠 + 1 − 0.9 𝑥 1𝑛𝑠 + 30𝑛𝑠 + 0.046𝑥45𝑛𝑠
𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 4.207 𝑛𝑠
Problema 4
Datos
𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠
𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧
𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠
a) ¿Cuántas instrucciones por ciclo se pueden ejecutar, por término medio, en el procesador? ¿y si
la tasa de aciertos pasa a ser de un 95%?
Solución
Instrucción Proporción
Leer o escribir
un dato 30%
Aciertos de la
cache interna 90%
Reemplazar el
bloque 20%
• Primero calculamos el tiempo mínimo que tardaría el
procesador en ejecutar el programa.
𝑇𝐶𝑃𝑈 = 𝐶𝑃𝐼 𝑥 𝑁𝐼 𝑥 𝑇𝑐𝑖𝑐𝑙𝑜
𝐶𝑃𝐼𝑥𝑁𝐼 𝐶𝑃𝐼𝑥𝑁𝐼
= = = 10−9𝐶𝑃𝐼𝑥𝑁𝐼
𝐹 1 𝐺𝐻𝑧
• Calculando el ancho de banda del procesador:
𝐶𝑃𝑈
𝑇𝐶𝑃𝑈
𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑡𝑜𝑡𝑎𝑙𝑒𝑠 𝑁𝐼 + 0.3 𝑥 𝑁𝐼 1.3 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠
𝐵 = = = 𝑥109
10−9𝐶𝑃𝐼𝑥𝑁𝐼 𝐶𝑃𝐼 𝑠
• Igualamos este dato al ancho de banda de la memoria:
𝐵𝑀𝐸𝑀 =
1
𝑇𝑎𝑐𝑐𝑒𝑠𝑜 𝐶𝑃𝐼
1.3
= 𝑥109𝑝𝑎𝑙𝑎𝑏𝑟𝑎/𝑠
1
4.207 𝑥 10−9 =
1.3
𝐶𝑃𝐼
𝑥109𝑝𝑎𝑙𝑎𝑏𝑟𝑎/𝑠
𝐶𝑃𝐼 = 5.47
Problema 4
Datos
𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧
𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠
𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧
𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠
a) ¿Cuántas instrucciones por ciclo se pueden ejecutar, por término medio, en el procesador? ¿y si
la tasa de aciertos pasa a ser de un 95%?
Solución
Instrucción Proporción
Leer o escribir
un dato 30%
Aciertos de la
cache interna 90%
Reemplazar el
bloque 20%
• Si la tasa de aciertos cambia a 95% debemos calcular el
tiempo de acceso nuevamente.
1 − 𝑎1
𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 𝑎1𝑥𝑡1 + 𝑥 𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜𝑥𝑡𝑙í𝑛𝑒𝑎
𝑇𝑎𝑐𝑐𝑒𝑠
𝑜
= 0.95𝑥1𝑛𝑠 + 1 − 0.95 𝑥 1𝑛𝑠 + 30𝑛𝑠 + 0.046𝑥45𝑛𝑠
𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 2.603 𝑛𝑠
• Entonces el ancho de banda de la memoria será:
𝐵𝑀𝐸𝑀 =
𝑇𝑎𝑐𝑐𝑒𝑠𝑜
=
1 1
2.603𝑛𝑠
• Ahora el numero de ciclos por instrucción es:
1.3 1
𝑥109𝑝𝑎𝑙𝑎𝑏𝑟𝑎/𝑠 =
𝐶𝑃𝐼 2.603𝑛𝑠
𝐶𝑃𝐼 = 3.38

Más contenido relacionado

Similar a U02 - Capítulo 4 EXPOSICIÓN teorica (1).pptx

Similar a U02 - Capítulo 4 EXPOSICIÓN teorica (1).pptx (20)

Trabajo de mantenimiento
Trabajo de mantenimientoTrabajo de mantenimiento
Trabajo de mantenimiento
 
Trabajo de mantenimiento
Trabajo de mantenimientoTrabajo de mantenimiento
Trabajo de mantenimiento
 
Memoria ram y rom modificada
Memoria ram y rom modificadaMemoria ram y rom modificada
Memoria ram y rom modificada
 
Memoria ram ::: http://leymebamba.com
Memoria ram  ::: http://leymebamba.comMemoria ram  ::: http://leymebamba.com
Memoria ram ::: http://leymebamba.com
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Estructura de lcomputador grupo 4
Estructura de lcomputador grupo 4Estructura de lcomputador grupo 4
Estructura de lcomputador grupo 4
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
ESTRUCTURA DEL COMPUTADOR
ESTRUCTURA DEL COMPUTADORESTRUCTURA DEL COMPUTADOR
ESTRUCTURA DEL COMPUTADOR
 
Clasificación de las Memorias
Clasificación de las MemoriasClasificación de las Memorias
Clasificación de las Memorias
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Grupo #4
Grupo #4Grupo #4
Grupo #4
 
Grupo 4....mermoria ram
Grupo 4....mermoria ramGrupo 4....mermoria ram
Grupo 4....mermoria ram
 
Inf grupo 4
Inf grupo 4Inf grupo 4
Inf grupo 4
 
GRUPO 4 ESTRUCTURA DEL COMPUTADOR
GRUPO 4 ESTRUCTURA DEL COMPUTADORGRUPO 4 ESTRUCTURA DEL COMPUTADOR
GRUPO 4 ESTRUCTURA DEL COMPUTADOR
 
Grupo 4
Grupo 4Grupo 4
Grupo 4
 
Grupo #4
Grupo #4Grupo #4
Grupo #4
 

Más de GUIDOCHAMBILLACONDOR1

Más de GUIDOCHAMBILLACONDOR1 (6)

Exposición_Unidad Terminal Maestra (MTU).pptx
Exposición_Unidad Terminal Maestra (MTU).pptxExposición_Unidad Terminal Maestra (MTU).pptx
Exposición_Unidad Terminal Maestra (MTU).pptx
 
EXPOSICIÓN INTRODUCCION A LA INVESTIGACIÓN METODOLOGIA-1.pptx
EXPOSICIÓN INTRODUCCION A LA INVESTIGACIÓN METODOLOGIA-1.pptxEXPOSICIÓN INTRODUCCION A LA INVESTIGACIÓN METODOLOGIA-1.pptx
EXPOSICIÓN INTRODUCCION A LA INVESTIGACIÓN METODOLOGIA-1.pptx
 
EXPOSICION RTU.pdf
EXPOSICION  RTU.pdfEXPOSICION  RTU.pdf
EXPOSICION RTU.pdf
 
4 Moduladores de AM.pptx
4 Moduladores de AM.pptx4 Moduladores de AM.pptx
4 Moduladores de AM.pptx
 
S03 - Planos de fase.pdf
S03 - Planos de fase.pdfS03 - Planos de fase.pdf
S03 - Planos de fase.pdf
 
2 ANALISIS DE SEÑALESggg.pdf
2 ANALISIS DE SEÑALESggg.pdf2 ANALISIS DE SEÑALESggg.pdf
2 ANALISIS DE SEÑALESggg.pdf
 

Último

Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IILauraFernandaValdovi
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaSantiagoSanchez353883
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 

Último (20)

Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo II
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación pública
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 

U02 - Capítulo 4 EXPOSICIÓN teorica (1).pptx

  • 1. UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE INGENIERÍA DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA CURSO: ARQUITECTURA DE COMPUTADORAS GRUPO C
  • 2. CAP 4. SISTEMA DE MEMORIA • Integrantes : Callo Mendoza Wilson Chambilla Condori Guido Ramos Magaño Ricardo Soto Acosta Carlos
  • 3.
  • 4. You can Resize without losing quality You can Change Fill Color & Line Color FREE PPT TEMPLATES www.allppt.com ¿Cómo aprovechar las prestaciones de un procesador? Para poder aprovechar dichas prestaciones es necesario poder acceder de forma eficaz a las instrucciones y datos Distribución de los accesos a memoria para varias arquitecturas SPARC(int) SPARC(fp) MIPS(int) MIPS(fp) IBM 5/360 Media Instrucciones 0.79 0.80 0.76 0.77 0.50 0.72 Read (dat) 0.15 0.17 0.15 0.19 0.35 0.20 Store (dat) 0.06 0.03 0.09 0.04 0.15 0.07
  • 5. Debemos saber que: • El crecimiento exponencial al que experimentan los procesadores es diferente al ritmo de mejora del tiempo de acceso a la memoria DRAM. • El procesador crece a un ritmo del 55%anual • El tiempo de acceso a las memorias solo un 10% anual
  • 6. VS PC XT con procesador 8088 PC con procesador Intel Pentium Pro (1995) Se dieron mejoras considerables como: • Un procesador 900veces mas rápido • 64veces mas memoria • 85veces mas capacidad de disco • El tiempo de acceso a la memoria solo era del orden de 10veces menor
  • 7. GAP DE MEMORIA La diferencia entre el tiempo de ciclo del procesador y la latencia de memoria se incrementa en un factor próximo a 6 (5.6)
  • 8. You can Resize without losing quality You can Change Fill Color & Line Color FREE PPT TEMPLATES www.allppt.com Prestaciones del sistema de memoria Ancho de banda Es el numero de bytes por unidad de tiempo de que es capaz de transferir el sistema de memoria Depende del tiempo de ciclo de los circuitos de memoria Depende del numero de bits que proporciona la memoria en cada acceso Depende de la anchura de los buses que conectan el procesador y la memoria
  • 9. You can Resize without losing quality You can Change Fill Color & Line Color FREE PPT TEMPLATES www.allppt.com Prestaciones del sistema de memoria Latencia Es el tiempo que transcurre desde que el procesador inicia el acerca situando a memoria la dirección del dato en las líneas correspondientes hasta que la memoria proporciona dicho dato Depende del tiempo de acceso a los chips de memoria Depende de los retardos que introduzca la conexión entre el procesador y memoria - Los asociados a la sincronización - El arbitraje de los buses
  • 10. Reducción de la latencia Lo que se busca es equilibrar el ritmo al que el procesador necesita datos e instrucciones de la memoria y el ritmo al que la memoria puede proporcionarlos. • Para ello se puede implementar estrategias en el procesador para tolerar los retardos de la memoria Planificación dinámica de instrucciones y el adelantamiento de instrucciones de carga y almacenamiento Los accesos especulativosa memoria El procesamiento multihebraa
  • 12. Mejoramiento de las prestaciones • Se organiza como una jerarquía de niveles. • El nivel mas próximo al procesador se implementa en una tecnología mas rápida y mas costosa en cuanto a hardware y consumo, como también una capacidad menor. Cachés on-chip • Memoria caché dentro del mismo circuito integrado del procesador Cachés off-chip • Memoria caché externa al circuito integrado del procesador
  • 13. OFF-CHIP • Son mas rápidas que las memorias DRAM. • Necesitan un mayor numero de transistores. • Presenta mayor consumo • Existe la posibilidad de tener hasta tre niveles L1,L2y L3 de cache
  • 14. Prestaciones del sistema de memoria Determinados por tres factores: 1. La propia eficacia de la organización de la jerarquía de memoria. 2. La organización del bus de memoria 3. Las prestaciones de la memoria DRAM Técnicas orientadas a mejorar la memoria en los tres factores anteriores: • El uso de varios niveles de cache. • Los accesos de memoria no bloqueantes. • El entrelazado de la memoria y el desarrollo de sistemas de interconexión de alta velocidad con la memoria.
  • 15. Datos sobre jerarquias de memoria de los procesadores Alpha Microprocesador 21064 21164 21264 21364 Proceso CMOS Frec. Reloj CPI gcc 1 – caché Latencia (ciclos) D – caché Latencia (ciclos) Buffer Bloque (bytes) Bus off chip (bits) L2 on-chip (unificada) Latencia (ciclos) L2 o L3 off-chip (unif) Latencia Tamaño de memoria Latencia (ciclos) Latencia (instrucciones)
  • 16. Circuitos de memoria • Cada celda (circuito capaz de almacenar el estado e un bit) es un biestable. de una celda de (6 transistores/bit) es la de una DRAM (1 • La complejidad memoria SRAM mucho mayor a transistor por bit). • Los circuitos de memoria que presenta tienen menor capacidad de los CI de memoria DRAM. • Presenta mayor consumo y coste que las memorias DRAM. • Las SRAM son mas rápidas.
  • 18. Diagrama de bloques memoria SRAM y DRAM
  • 19. Memorias DRAM 2 Protocolo más complejo para lectura y escritura de datos 1 Utilizada para configurar la memoria principal de los computadores 3 Celda consiste en un capacitor y transistor 4 Estado eléctrico guardado cambia según el capacitor se descarga.
  • 22. Operación de lectura de una celda de memoria Acceso a una fila de memorias • Se sitúa la dirección de la fila en las líneas de dirección de memoria. • Se valida mediante la señal RAS • Se activa la línea de celdas correspondiente y se transfiere la carga al amplificador de señal • Se almacena los bits en cada una de las celdas de la fila accedida. 1 2 3 . . . . . . N-1 N 1 2 3 4 5 6 7 8
  • 23. Operación de lectura de una celda de memoria Acceso a una columna • Se sitúa la dirección de la columna en las líneas de dirección de memoria. • Se valida mediante la señal CAS y se lee el bit del amplificador correspondiente. • La lectura modifica la carga de las celdas. • Los datos de la fila seleccionada debe volver a escribirse en paralelo con el acceso a la columna. 1 2 3 . . . N-1 N 1 2 3 4 5 6 7 8
  • 24. Operación de lectura de una celda de memoria Precarga • Se precarga la matriz de celdas para la siguiente operación. • Se desactiva RAS. 𝑅𝐴𝑆 𝑡𝑅𝐴𝑆 𝑡𝑃𝑅
  • 25. Serie de tiempos característicos Activación a otro acceso de memoria. 𝒕𝑷𝑹 Tiempo de precarga 𝒕𝑹𝑪 = 𝒕𝑹𝑨𝑺 + 𝒕𝑷𝑹 Tiempo de ciclo del chip de memoria. Relacionado con el ancho de banda. Ckto en palabras de 1 bit, ancho de banda es 1/𝑡𝑅𝐶 Incremento de AB con circuitos de memoria (𝑤). 𝒕𝑹𝑨𝑺 Tiempo de acceso Activación señal RAS hasta dato en la salida.
  • 26. Ejemplo ¿Cuál es el ancho de banda de un chip DRAM con tiempo de ciclo de 100 ns? Si se configura la memoria a 32 bits de ancho, ¿cuál sería su nuevo ancho de banda? 𝑡𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑐𝑖𝑐𝑙𝑜: 𝑡𝑅𝐶 = 100 𝑛𝑠 Ancho de banda 1 𝑡𝑅𝐶 1 = 100 𝑛𝑠 = 10 𝑀𝑏𝑖𝑡𝑠/𝑠 Se configura una memoria de 32 bits de ancho. 𝑤 = 32 1 𝑅𝐶 𝑤 ∗ 𝑡 = 32 ∗ 10 𝑀𝑏𝑖𝑡𝑠/𝑠 NuevoAncho de banda 320 𝑀𝑏𝑖𝑡𝑠/𝑠 = 40 𝑀𝑏𝑦𝑡𝑒𝑠/𝑠
  • 27. Evolución de tiempos de acceso y tiempos de ciclo Año Tamaño del chip (Más lenta) RAS (ns) (más rápida) RAS(ns) CAS (ns) Tiempo de ciclo (ns) 1980 64 Kb 180 150 75 250 1985 256 Kb 150 120 50 220 1986 1 Mb 120 100 25 190 1989 4 Mb 100 80 20 165 1992 16 Mb 80 60 15 120 1996 64 Mb 70 50 12 110 1998 128 Mb 70 50 10 100 2000 256 Mb 65 45 7 90 2002 512 Mb 60 40 5 80
  • 28. ARQUITECTURA MEMORIA DRAM Tipos de localidades: Los programas presentan ambos tipos de localidades LOCALIDAD ESPACIAL LOCALIDAD TEMPORAL Es muy probable ejecutar instrucciones cercanas Es muy probable repetir instrucciones
  • 29. ARQUITECTURA MEMORIA DRAM Ejemplos Elementos de datos a los que se accede en una matriz donde cada vez se accede a un elemento diferente (o simplemente al siguiente) Elementos de datos a los que se accede en bucles (donde se accede a los mismos elementos de datos varias veces)
  • 30. • Los patrones de acceso de memoria tienen una localidad espacial considerable. ARQUITECTURA MEMORIA DRAM Esto ocurre cuando en un caso probable, no se pueda encontrar la información que busca en cache previo, por lo que accede a todas las posiciones consecutivas para pasarla a caché
  • 32. COMPARATIVA ARQUITECTURAS DRAM 1 2 Acceso convencional FPM EDO BEDO
  • 33. FPM DRAM (FAST PAGE MODE RAM) Mantiene constante la dirección y realiza lecturas de varias columnas de forma consecutiva FPM 1 2
  • 34. EDO DRAM (EXTENDED DATA OUT RAM) y BEDO (BURST) EDO: Añade un Latch para mantener el estado del terminal. BEDO: Añade un registro que lleva la cuenta de los registros a leer. EDO BEDO
  • 35. EDO DRAM (EXTENDED DATA OUT RAM) y BEDO (BURST)
  • 36. SDRAM (SYNCHRONOUS DRAM) Y DDR SDRAM SDRAM: Sincronizada al bus del sistema, quiere decir que cambia de estado en un momento señalado por la señal. DDR SDRAM: Permite el registro de datos en flanco de subida como de bajada
  • 37. TIPOS DE DDR SDRAM Existen 4 tipos de memoria DDR SDRAM por versiones: • DDR SDRAM (Primera versión) • DDR2 SDRAM (Segunda versión) • DDR3 SDRAM (Tercera versión) • DDR4 SDRAM (Cuarta y actual versión)
  • 38. MEMORIA GDDR (GRAPHICS DOUBLE DATA RATE) Memorias con funcionamiento igual al DDR, operando 2 o 4 bits por ciclo de reloj, son especiales por su optimización para alcanzar mayores frecuencias y ancho de bus Al igual que el anterior cuenta con distintas generaciones (desde el GDDR hasta GDDR6)
  • 39.
  • 40. RDRAM CONTROLADOR DEMEMORIA MEMORIA RDRAM BUS DE UN BYTE DE ANCHO Se multiplexa para transportar datos y direcciones. f = 300 MHz Transfiere en ambos ciclos de reloj Transfiere 600 Mbytes/s
  • 41. • 64 Mbits, se divide en cuatro bancos. • Mantener abiertas 4 filas. Memoria RDRAM • Transacción de datos cada 4 ciclos. Bus multiplexado • Se mandan paquetes (direcciones) • Se intercambian paquetes de datos Transferencia de paquetes
  • 42. DRDRAM (Direct Rambus DRAM) Bits de datos y control: • Paquetes de 8 bytes • 10 ns = 4 ciclos • Señales entre 1 V y 1.8 V • Se transfieren en ambos ciclos de reloj 8 𝑏𝑦𝑡𝑒𝑠 𝑥 2 10 𝑛𝑠 = 1.6 𝐺𝐵/𝑠 • Dividido en 16 bancos • Partición del bus en 3 componentes. • 3 transferencias distintas Sucesor de RDRAM Bus: • 400 MHz • 3 canales de un byte cada uno.
  • 43. SDRAM VS. RDRAM • RDRAM necesita 20% más de tamaño de dado para igual capacidad • DRDRAM 3 a 4 veces más costoso que SDRAM DRDRAM VS. DRAM • 8 veces más prestaciones que un chip DRAM convectional. • Cambio con DDR SDRAM. DRDRAM • Mejoras de 1% a 2% en juegos • 10% - 15% en aplicaciones gráficas PRESTACIONES RDRAM VS. SDRAM
  • 44. SDRAM • Se necesita mucha memoria • Disponer de altos anchos de banda. DRDRAM • Limitaciones de capacidad • Anchos de banda elevados PRESTACIONES RDRAM VS. SDRAM
  • 45. NUEVAS PROPUESTAS • Subdividen el núcleo en bancos • Reduce el tiempo de acceso (cercano a una SRAM) FCRAM y MoSys DRAM VCRAM Buffer SRAM asociativo por conjuntos en el chip
  • 46. Tener en cuenta los buses que transfieren la información al procesador 01Mejorar los buses Carga almacenada en la celda de memoria DRAM se disipa con el tiempo. 02Diferencias entre SRAM y DRAM De las celdas de memoria debe refrescarse continuamente (16-32 ms) 03Carga de los transistores Durante el proceso de refresco el procesador no puede acceder a la memoria. 04Posibles colisiones PRESTACIONES Añade una penalización de entre 6% y 12%. Tiempo de espera = 50% de la latencia 05Penalizaciones
  • 47. Controlador de memoria Se ubica en un circuito integrado llamado chipset Chipset Circuitería de refresco de memoria DRAM Circuitos que permiten el intercambio de información con el procesador y los circuitos de memoria DRAM DRAM
  • 48.
  • 49. You can Resize without losing quality You can Change Fill Color & Line Color FREE PPT TEMPLATES www.allppt.com La memoria debe proporcionar instrucciones y datos necesarios. • Un procesador es capaz de captar 4 instrucciones por ciclo • Frecuencia de 1 GHz • Tamaño de palabra de 32 bits Por ejemplo: • 𝐵𝑖𝑛𝑠𝑡 = 𝑇𝑖𝑛𝑠𝑡 𝑥 𝐼𝑃𝐶 𝑋 𝐹 = 4 4 109 𝑏𝑦𝑡𝑒𝑠/𝑠 = 16𝐺𝑏𝑦𝑡𝑒𝑠/𝑠 El ancho de banda necesario (lectura de instrucciones): Para que un procesador pueda procesar las instrucciones del programa a pleno rendimiento:
  • 50. El acceso a 4 instrucciones implica acceder a 2 datos (lectura/escritura), el ancho de banda para datos es: 𝐵𝑑𝑎𝑡𝑜 = 𝑁𝐷 𝑥 𝑇𝑑𝑎𝑡𝑜 𝑥 𝐹 = 2 4 109 𝑏𝑦𝑡𝑒𝑠Τ𝑠 = 8 𝐺𝑏𝑦𝑡𝑒𝑠/𝑠 𝐵𝐶𝑃𝑈 = 𝐵𝑖𝑛𝑠𝑡 + 𝐵𝑑𝑎𝑡𝑜 = 16 + 8 = 24 𝐺𝑏𝑦𝑡𝑒𝑠/𝑠
  • 51. You can Resize without losing quality You can Change Fill Color & Line Color FREE PPT TEMPLATES www.allppt.com • Bus de 800 MHz • 𝐵𝑀𝐸𝑀 = 12 𝐺𝑏𝑦𝑡𝑒𝑠/𝑠 Tecnología DDR2 • El procesador encuentra datos e instrucciones en una cache rápida Disponer de una jerarquía eficiente • Tiempo de latencia: retardo entre que se solicita acceso y se termina el acceso. (Acceder a un dato) • Ancho de banda: número de palabras por unidad de tiempo. (Acceder a un bloque) Prestaciones de la memoria:
  • 52. Capa de almacenamiento de datos de alta velocidad ¿Qué es una memoria cache?
  • 53. Tipos de correspondencia Memoria cache asociativa por conjuntos Conjunto que almacena la línea Vía: Línea del conjunto. Cache: 2𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜+𝑁𝑣í𝑎 Cache con correspondencia directa Conjunto: Cada uno con 1 línea; línea a la que irá la línea de memoria principal. 𝑁𝑣í𝑎 = 0 Suministro de líneas: 2𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜 Cache completamente asociativa Un solo conjunto: 𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜 = 0 𝑦 𝑁𝑣í𝑎 = 0 Marca: Bits de dirección de memoria principal y línea de cache. Campos que se puede distinguir en las direcciones de memoria Número de bits de campos 𝑁𝑚𝑎𝑟𝑐𝑎, 𝑁𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜, 𝑁𝑣í𝑎
  • 54. Jerarquía de dos niveles (𝐿1 y memoria principal): 𝑇2 = (𝑎1)(𝑡1) + (1 − 𝑎1)(𝑡1 + 𝑡𝑀) Jerarquía de tres niveles (𝐿1 , 𝐿2 y memoria principal): 𝑇3 = (𝑎1)(𝑡1) + (1 − 𝑎1)(𝑎2)(𝑡1+𝑡2) + (1 − 𝑎1)(1 − 𝑎2)(𝑡1 + 𝑡2 + 𝑡𝑀) 𝑇3 < 𝑇2 por lo tanto: 𝑡2 𝑡𝑀 < 𝑎2 a: Tasa de acierto a la cache t: Tiempo de acceso a la cache
  • 55. En una jerarquía de dos niveles TIEMPO DE CONSUMO Se actualiza el contenido de la línea reemplazada en la memoria principal Se reemplaza una línea de cache con información desde la memoria principal Se puede mejorar la jerarquía de la memoria, tiempos de acceso a los niveles, reducer la tasa de fallos y reducir la penalización. 𝑇2 = (𝑎1)(𝑡1) + (1 − 𝑎1)(𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜 + 𝑡𝑙í𝑛𝑒𝑎)
  • 56. Controlador de memoria Genera dos direcciones Fila de celdas Primer acceso ACCESO A UNA MEMORIA DRAM PRIMER ACCESO SEGUNDO ACCESO Acceso a una matriz de celdas de memoria DRAM Columna de celdas Segundo acceso BIT deseado
  • 57. DIVERSAS ARQUITECTURAS DRAM Para configurar la memoria principal MEJORA  ANCHO DE BANDA • Aprovechar la localidad de los accesos a memoria principal. • Leer/Escribir  Línea de cache completa. • Segmentación de lecturas.
  • 58. TRANSFERENCIA ENTRE EL PROCESADOR Y LA MEMORIA CICLO DE BUS • Conjunto de ciclos para una transferencia. • Variable que depende del tiempo de transacción. CICLOS BURST O A RÁFAGAS • Procesador genera solo dirección de una palabra dentro de la línea. • Desea todas las palabras. • Controlador de memoria genera señales para que la DRAM proporcione los datos. • Posiciones consecutivas  eficiencia MÁXIMOANCHO DE BANDA • Para un ciclo de acceso a memoria que 𝑐𝑖𝑐𝑙𝑜 𝑠 necesite 𝑁 mínimo: 𝐵 = 𝑁𝑏𝑖𝑡𝑠(𝐹𝑏𝑢𝑠) 𝐵𝑏𝑢𝑟𝑠𝑡 = 𝑁𝑐𝑖𝑐𝑙𝑜𝑠 • Para una transferencia en modo burst: 𝑁𝑏𝑖𝑡𝑠(𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑠_𝑙í𝑛𝑒𝑎 )(𝐹𝑏𝑢𝑠 ) 𝑐𝑖𝑐𝑙𝑜 𝑠 𝑁 + 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑠_𝑙í𝑛𝑒𝑎 − 1
  • 59.
  • 60. Problema 1 En un computador el bus de memoria principal es de 100 MHz y 64 bits de datos. a) Si el ciclo de lectura del bus necesita dos ciclos de reloj, ¿cuál sería el tiempo máximo de acceso que debería tener la memoria para que no se necesiten introducir estados de espera? b) Suponga que quiere cargar desde la memoria una línea de cache constituida por 64 bytes ¿Cuál es la ganancia en ancho de banda que se obtiene si se utiliza acceso en modo burst con relación a acceso palabra a palabra si el tiempo de acceso de la memoria es de 45 ns? Datos 𝐶𝑖𝑐𝑙𝑜𝑠 𝑑𝑒 𝑟𝑒𝑙𝑜𝑗 = 2 𝑓𝑏𝑢𝑠 = 100 𝑀𝐻𝑧 64 𝑏𝑖𝑡𝑠 𝑑𝑒 𝑑𝑎𝑡𝑜𝑠 = 8 𝑏𝑦𝑡𝑒𝑠 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 45𝑛𝑠 Solución a) Dado que el tiempo de ciclo de lectura del bus necesita dos ciclos de reloj, el tiempo de acceso de la memoria, para no tener que introducir estados de espera en una lectura, es igual a 𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑎𝑥 𝑇 = 𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑙𝑒𝑐𝑡𝑢𝑟𝑎 × 𝑇𝑐𝑖𝑐𝑙𝑜𝑏𝑢𝑠 𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑙𝑒𝑐𝑡𝑢𝑟𝑎 = 𝐹𝑏𝑢𝑠 2 𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑎𝑥 = 100 × 106 = 20 𝑛𝑠
  • 61. b) Si el tiempo de acceso a la memoria es de 45 ns 1 𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑐𝑖𝑐𝑙𝑜 = 100 𝑀𝐻𝑧 = 10 𝑛𝑠 Se necesitarían 5 ciclos de reloj 45 𝑛𝑠 10 𝑛𝑠 = 4.5 Entonces se debe de introducir 3 ciclos de espera 𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑖𝑛 𝐹𝑏𝑢𝑠 𝑁𝑐𝑖𝑐𝑙𝑜𝑠 = = 5 100 𝑀𝐻𝑧 𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑖𝑛 = 50 𝑛𝑠 Problema 1
  • 62. b) Para acceder a 64 bytes con 64 bits (es decir 8 bytes), se necesitarían 8 accesos de memoria 𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 = 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑠 × 𝑇𝑎𝑐𝑐𝑒𝑠𝑜𝑚𝑖𝑛 𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 = 8 × 50 𝑛𝑠 𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 = 400 𝑛𝑠 Si se usa el modo burst, el tiempo de acceso será el siguiente 𝑇𝑏𝑢𝑟𝑠 𝑡 𝐹𝑏𝑢𝑠 100 𝑀𝐻𝑧 𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑏𝑢𝑟𝑠𝑡 5 + 1 + 1 + 1 + 1 + 1 + 1 = = = 120 𝑛𝑠 La ganancia se puede calcular como: 𝑇𝑏𝑢𝑟𝑠𝑡 𝑇𝑙𝑒𝑐𝑡𝑢𝑟𝑎𝑠 400 𝑛𝑠 𝑆 = = 120 𝑛𝑠 𝑆 = 3.33 Problema 1
  • 63. Problema 2 Un computador dispone de un procesador de 64 bits y utiliza una memoria cache de correspondencia directa de 64 Kbytes y una memoria principal de 32 Mbytes. (a) Indique la posición de cache que ocupa la instrucción que se encuentra en la dirección 0x110AB48H teniendo en cuenta que cada línea es de 128 bytes. (b) ¿Y si, con los mismos datos, la memoria cache fuese asociativa por conjuntos de 4 vías? Datos Solución 𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑝𝑟𝑖𝑛𝑐𝑖𝑝𝑎𝑙 32 𝑀𝑏𝑦𝑡𝑒𝑠 = 225 𝑏𝑦𝑡𝑒𝑠 25 bits para memoria RAM 𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑐𝑎𝑐ℎé 𝑑𝑒 64 𝐾𝑏𝑦𝑡𝑒𝑠 = 216 𝑏𝑦𝑡𝑒𝑠 16 bits para memoria caché 𝑇𝑎𝑚𝑎ñ𝑜 𝑝𝑜𝑟 𝑙í𝑛𝑒𝑎 𝑑𝑒 𝑐𝑎𝑐ℎé 128 𝑏𝑦𝑡𝑒𝑠 = 27𝑏𝑦𝑡𝑒𝑠 a) Hallando el número de líneas caché 𝑁𝐿𝑖𝑛𝑒𝑎𝑠 = 𝑡𝑎𝑚𝑎ñ𝑜 𝑐𝑎𝑐ℎé 𝑡𝑎𝑚𝑎ñ𝑜 𝑝𝑜𝑟 𝑙í𝑛𝑒𝑎 216 27 = = 29 𝑙í𝑛𝑒𝑎𝑠 Si la memoria cache es de correspondencia directa, los 7 bits menos significativos de la dirección indican la posición del byte dentro de la línea 9 9 7 9 7 Mem. Principal Mem. Caché
  • 64. Problema 2 (a) Indique la posición de cache que ocupa la instrucción que 0x110AB48H teniendo en cuenta que cada línea es de 128 bytes. Datos Solución se encuentra en la dirección 𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑝𝑟𝑖𝑛𝑐𝑖𝑝𝑎𝑙 32 𝑀𝑏𝑦𝑡𝑒𝑠 = 225 𝑏𝑦𝑡𝑒𝑠 25 bits para memoria RAM 𝑀𝑒𝑚𝑜𝑟𝑖𝑎 𝑐𝑎𝑐ℎé 𝑑𝑒 64 𝐾𝑏𝑦𝑡𝑒𝑠 = 216 𝑏𝑦𝑡𝑒𝑠 16 bits para memoria caché 𝑇𝑎𝑚𝑎ñ𝑜 𝑝𝑜𝑟 𝑙í𝑛𝑒𝑎 𝑑𝑒 𝑐𝑎𝑐ℎé 128 𝑏𝑦𝑡𝑒𝑠 = 27𝑏𝑦𝑡𝑒𝑠 9 9 7 9 7 Mem. Principal Mem. Caché 1 0001 0000 1010 1011 0 100 1000 1010 1011 0 100 1000 110 AB 48 Posición en caché: AB48H Campo de Marca: 110H Marca Línea Byte Mem. Principal Mem. Caché
  • 65. Problema 2 (b) ¿Y si, con los mismos datos, la memoria cache fuese asociativa por conjuntos de 4 vías? Solución Si la memoria caché fuera de 4 vías, las líneas estarían agrupadas en conjuntos de 4, por lo que el número de conjuntos sería. 29 22 = 27 𝑐𝑜𝑛𝑗𝑢𝑛𝑡𝑜𝑠 11 7 7 7 2 7 Mem. Principal Mem. Caché 1 0001 0000 10 10 1011 0 100 1000 442H 56H ACC8H Posición en caché: ACC8H Conjunto: 56H Campo de Marca: 442H Marca Conjunto Byte Mem. Principal Mem. Caché 10 1011 0 XX 100 1000 01
  • 66. Problema3 En un computador, la cache interna del procesador tiene un tiempo de acceso de 2.5 ns y una tasa de aciertos del 80%, y la memoria principal tiene un tiempo de acceso de 10 ns. Suponga que dispone de una memoria cache SRAM con un tiempo de acceso de 5 ns. a) ¿Qué tasa de fallos ha de tener para que el tiempo de acceso medio a memoria se reduzca con respecto a la situación anterior? b) ¿Es posible obtener un tiempo de acceso medio de 3.7 ns? c) ¿Cuál es el mínimo tiempo de acceso medio que se puede conseguir? Datos 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 2.5𝑛𝑠 Memoria principal 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 10𝑛𝑠 Memoria cache SRAM 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 5𝑛𝑠 Solución a) El tiempo medio de acceso al sistema de memoria constituido por dos niveles (la memoria cache interna L1 y la memoria principal DRAM) es igual a: donde 𝑎1 es la tasa de aciertos en la cache L1, 𝑡1 es el tiempo de acceso a la memoria cache L1, y 𝑡𝑀 el de la memoria principal.
  • 67. Problema 3 Solución Se ha supuesto que el dato buscado siempre está en la memoria principal y que la memoria cache es del tipo look-through. En el caso de un sistema de memoria con tres niveles, en el que se añade una memoria implementada con celdas SRAM que constituye el nivel de cache externa L2, se tiene que, si 𝑎2 es la tasa de aciertos de la memoria cache L2 (que se supone también de tipo look-through), el tiempo medio de acceso es igual a: De esta forma, para que T3 < T2 es preciso que 1 < 2𝑎2 es decir, que 𝑎2 > 0.5, o lo que es lo mismo, que la memoria cache L2 tiene que tener una tasa de aciertos mayor del 50%. Para responder al segundo apartado, teniendo en cuenta que 𝑇3 = 5.5 – 2 × 𝑎2, si se quiere que 𝑇3 sea igual a 3.7 se debe cumplir que:
  • 68. Problema 3 Solución de donde se puede despejar 𝑎2 = 0.9. Por último, para responder al tercer apartado, el mínimo tiempo de acceso medio se correspondería a la situación en la que 𝑎2 = 1 (siempre que se busca un dato en L2 se encuentra allí): Este tiempo es el mismo que se obtendría si en la expresión del cálculo de 𝑇2 (para el sistema de memoria de dos niveles) se hiciera el tiempo de acceso a la DRAM igual al tiempo de acceso a la memoria cache L2.
  • 69. Problema 4 En un computador, el bus tiene una frecuencia de 200 MHz, y la memoria principal un tiempo de acceso de 30 ns, que, tras el primer acceso, puede proporcionar (o recibir) una palabra por ciclo en los accesos burst. El procesador superescalar de 1 GHz dispone de una cache interna con líneas de 4 palabras. En los programas, por término medio, un 30% de las instrucciones necesitan leer o escribir un dato (una palabra) en memoria, la tasa de aciertos de la cache interna es del 90%, y, en un 20% de los accesos a datos se necesita reemplazar el bloque, en caso de que se haya producido un fallo. a) ¿Cuál es el tiempo medio de acceso a la memoria? b) ¿Cuántas instrucciones por ciclo se pueden ejecutar, por término medio, en el procesador? ¿y si la tasa de aciertos pasa a ser de un 95%? Datos 𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠 𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧 𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠 Instrucción Proporción Leer o escribir un dato 30% Aciertos de la cache interna 90% Reemplazar el bloque 20%
  • 70. Problema 4 a) ¿Cuál es el tiempo medio de acceso a la memoria? Datos 𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠 𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧 𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠 Instrucción Proporción Leer o escribir un dato 30% Aciertos de la cache interna 90% Reemplazar el bloque 20% Solución • 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 𝑎1𝑥𝑡1 + 1 − 𝑎1 𝑥 𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜𝑥𝑡𝑙í𝑛𝑒𝑎 De los datos: 𝑎1 = 0.9 (aciertos a cache) 𝑡1 = 1𝑛𝑠 (tiempo de acceso a la cache) 𝑡𝑀 = 30𝑛𝑠 (tiempo de acceso a la memoria) Hay un reemplazo de línea en un 20 % de los accesos y un 30% de instrucciones acceden a datos: • 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑡𝑜𝑡𝑎𝑙 𝑁𝐼+0.3𝑥𝑁 𝐼 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑑𝑎𝑡𝑜𝑠 0.3𝑥𝑁𝐼 = 0.2 𝑥 = 0.2 𝑥 = 0.046
  • 71. Problema 4 a) ¿Cuál es el tiempo medio de acceso a la memoria? Datos 𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠 𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧 𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠 Instrucción Proporción Leer o escribir un dato 30% Aciertos de la cache interna 90% Reemplazar el bloque 20% Solución • Tiempo de actualización de una línea cuando debe reemplazarse (4 palabras) 𝑡𝑙í𝑛𝑒 𝑎 𝐹𝑏𝑢𝑠 200 𝑀𝐻𝑧 𝑁𝑐𝑖𝑐𝑙𝑜𝑠𝑏𝑢𝑟𝑠𝑡 6 + 1 + 1 + 1 = = = 45𝑛𝑠 Reemplazando valores en la primera expresión: 1 − 𝑎1 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 𝑎1𝑥𝑡1 + 𝑥 𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜𝑥𝑡𝑙í𝑛𝑒𝑎 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 0.9𝑥1𝑛𝑠 + 1 − 0.9 𝑥 1𝑛𝑠 + 30𝑛𝑠 + 0.046𝑥45𝑛𝑠 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 4.207 𝑛𝑠
  • 72. Problema 4 Datos 𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠 𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧 𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠 a) ¿Cuántas instrucciones por ciclo se pueden ejecutar, por término medio, en el procesador? ¿y si la tasa de aciertos pasa a ser de un 95%? Solución Instrucción Proporción Leer o escribir un dato 30% Aciertos de la cache interna 90% Reemplazar el bloque 20% • Primero calculamos el tiempo mínimo que tardaría el procesador en ejecutar el programa. 𝑇𝐶𝑃𝑈 = 𝐶𝑃𝐼 𝑥 𝑁𝐼 𝑥 𝑇𝑐𝑖𝑐𝑙𝑜 𝐶𝑃𝐼𝑥𝑁𝐼 𝐶𝑃𝐼𝑥𝑁𝐼 = = = 10−9𝐶𝑃𝐼𝑥𝑁𝐼 𝐹 1 𝐺𝐻𝑧 • Calculando el ancho de banda del procesador: 𝐶𝑃𝑈 𝑇𝐶𝑃𝑈 𝑁𝑎𝑐𝑐𝑒𝑠𝑜𝑡𝑜𝑡𝑎𝑙𝑒𝑠 𝑁𝐼 + 0.3 𝑥 𝑁𝐼 1.3 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠 𝐵 = = = 𝑥109 10−9𝐶𝑃𝐼𝑥𝑁𝐼 𝐶𝑃𝐼 𝑠 • Igualamos este dato al ancho de banda de la memoria: 𝐵𝑀𝐸𝑀 = 1 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 𝐶𝑃𝐼 1.3 = 𝑥109𝑝𝑎𝑙𝑎𝑏𝑟𝑎/𝑠 1 4.207 𝑥 10−9 = 1.3 𝐶𝑃𝐼 𝑥109𝑝𝑎𝑙𝑎𝑏𝑟𝑎/𝑠 𝐶𝑃𝐼 = 5.47
  • 73. Problema 4 Datos 𝑓𝑏𝑢𝑠 = 200 𝑀𝐻𝑧 𝑡𝑎𝑐𝑐𝑒𝑠𝑜 = 30𝑛𝑠 𝑓𝐶𝑃𝑈 = 1 𝐺𝐻𝑧 𝑐𝑎𝑐ℎ𝑒 𝑖𝑛𝑡𝑒𝑟𝑛𝑎 → 4 𝑝𝑎𝑙𝑎𝑏𝑟𝑎𝑠 a) ¿Cuántas instrucciones por ciclo se pueden ejecutar, por término medio, en el procesador? ¿y si la tasa de aciertos pasa a ser de un 95%? Solución Instrucción Proporción Leer o escribir un dato 30% Aciertos de la cache interna 90% Reemplazar el bloque 20% • Si la tasa de aciertos cambia a 95% debemos calcular el tiempo de acceso nuevamente. 1 − 𝑎1 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 𝑎1𝑥𝑡1 + 𝑥 𝑡1 + 𝑡𝑀 + 𝑝𝑟𝑒𝑒𝑚𝑝𝑙𝑎𝑧𝑜𝑥𝑡𝑙í𝑛𝑒𝑎 𝑇𝑎𝑐𝑐𝑒𝑠 𝑜 = 0.95𝑥1𝑛𝑠 + 1 − 0.95 𝑥 1𝑛𝑠 + 30𝑛𝑠 + 0.046𝑥45𝑛𝑠 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 2.603 𝑛𝑠 • Entonces el ancho de banda de la memoria será: 𝐵𝑀𝐸𝑀 = 𝑇𝑎𝑐𝑐𝑒𝑠𝑜 = 1 1 2.603𝑛𝑠 • Ahora el numero de ciclos por instrucción es: 1.3 1 𝑥109𝑝𝑎𝑙𝑎𝑏𝑟𝑎/𝑠 = 𝐶𝑃𝐼 2.603𝑛𝑠 𝐶𝑃𝐼 = 3.38