T4.3. S. Memoria

Anuncio
Tema 4. Subsistema de Memoria
4.1. Introducción
4.2. Memoria cache
4.3. Memoria principal
Conceptos generales
4.4. Memoria virtual
Organizaciones para mejorar el
rendimiento
Algunas tecnologías DRAM
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
53
4.3
M
P
R
I
N
C
I
P
A
L
Conceptos generales
•
La memoria principal es el siguiente nivel de la jerarquía de memorias, a
continuación de la/s cache/s, y por tanto satisface las demandas de ese nivel.
•
Además, sirve de interface para la E/S del sistema computador Æ Destino de
las entradas y fuente de las salidas.
•
Está construida con DRAMs, las cuales están pensadas para aumentar la
densidad en lugar de disminuir el tiempo de acceso
•
Al ser el siguiente nivel de la jerarquía, y por el hecho de ser un nivel más
lento que la cache, su organización influye en la penalización de fallo y por
tanto influye en el rendimiento.
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
54
1
4.3
M
P
R
I
N
C
I
P
A
L
Rendimiento de la memoria principal
•
Los parámetros para evaluar el rendimiento de la memoria principal son
– Latencia : tiempo en obtener el primer acceso
– Ancho de banda : número de bytes leídos o escritos por unidad de tiempo
•
Para lograr un buen rendimiento, hay que conseguir el mejor ancho de banda
posible entre la cache y la memoria principal, ya que así se disminuye el
tiempo de transferencia. El tiempo de acceso o latencia es difícil de reducir.
•
Las posibles organizaciones para mejorar el rendimiento de la memoria
principal son
– Aumentar el ancho de la memoria
– Utilizar memoria entrelazada
– Utilizar bancos de memoria independientes
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
55
4.3
M
P
R
I
N
C
I
P
A
L
Organización con ancho de una palabra
•
La conexión de la CPU con la cache es de 1 palabra de
ancho, al igual que la conexión entre la cache y la
memoria principal.
•
Si suponemos:
– 1 ciclo para enviar la dirección.
– 15 ciclos para cada acceso a una posición de la
DRAM.
– 1 ciclo para enviar una palabra de datos.
– Bloque de cache de 4 palabras (16 bytes).
•
Penalización de fallo = 1 + 4x15 + 4x1 = 65 ciclos
•
Medida del ancho de banda entre la cache y la
memoria principal
Nº bytes transferidos /ciclo = 16 / 65 = 0,25
CPU
Cache
Bus
Memory
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
56
2
4.3
M
P
R
I
N
C
I
P
A
L
Organización con ancho de varias palabras
•
Se aumenta el ancho de banda haciendo la
memoria y el bus de varias palabras de ancho.
•
Aumentar el ancho de la memoria y del bus
disminuye el tiempo de acceso y el tiempo de
transferencia Æ disminuye la penalización de
fallo
•
Se necesita un multiplexor que seleccione la
palabra del bloque de cache que se va a
suministrar a la CPU
•
CPU
Multiplexor
Cache
Todas estas medidas aumentan el coste, y
aumentan también el tiempo de acceso a la
cache.
Bus
Memory
•
Si ancho de memoria es de 2 palabras
Penalización de fallo = 1 + 2x15 + 2x1 = 33 ciclos
Nº bytes transferidos/ciclo = 16/33 = 0,48
•
Si ancho de memoria = 4 palabras
Penalización de fallo = 1 + 1x15 + 1x1 = 17 ciclos
Nº bytes transferidos/ciclo = 16/17 = 0,94
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
57
4.3
M
P
R
I
N
C
I
P
A
L
Organización de memoria entrelazada (1)
•
Se incrementa el ancho de banda ensanchando la memoria pero no el bus de
conexión.
•
Memoria organizada en bancos de 1 palabra de ancho. Se leen/escriben
simultáneamente varias palabras (tantas como bancos) con un solo tiempo de
acceso.
– Hay una parte común en la dirección que
se envía a todos los bancos
– Todos
los
bancos
acceden
simultáneamente al dato ubicado en esa
dirección
– Se lee el dato disponible en cada banco →
se obtiene un bloque de datos
CPU
Cache
Bus
•
Los bits menos significativos de la dirección
seleccionan el banco de memoria. Direcciones
consecutivas de memoria (Dn) se ubican en
bancos consecutivos.
Memory
bank 0
Memory
bank 1
Memory
bank 2
Memory
bank 3
– Ejemplo con 4 bancos:
D0 -> Banco0; D1 -> Banco1;
D2 -> Banco2; D3 -> Banco3;
Dn -> Banco(Dn MODULO Nº Bancos)
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
58
3
4.3
M
P
R
I
N
C
I
P
A
L
Organización de memoria entrelazada (2)
•
Se sigue pagando el coste de transmitir cada palabra secuencialmente, pero
se evita pagar más de una vez la latencia de acceso.
– Con 4 bancos de memoria
Penalización de fallo = 1 + 1x15 + 4x1 = 20 ciclos
Nº bytes transferidos/ciclo = 16/20 = 0,80
•
Se hacen más rápidas las escrituras Æ importante en write through.
•
Funcionan al mismo tiempo todos los módulos Æ más consumo
•
Dificultad para expandir la memoria
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
59
4.3
M
P
R
I
N
C
I
P
A
L
Aspectos de diseño de la memoria principal (1)
•
Las DRAMs evolucionan hacia mayor densidad, no menor tiempo de acceso.
•
Una DRAM es una matriz de d x w elementos, siendo d el número de filas
distintas y w el número de bits de salida para cada fila (1≤ w≤ 16, común 4 y
8)
•
Si aumenta la densidad, el tamaño total de la DRAM crece, pero como w se
mantiene constante (coste de verificación y encapsulado menor) Æ d crece.
•
Aumentar el tamaño total conduce a que la configuración mínima de memoria
crezca, y esto puede no interesarnos por razones de coste, etc... Æ Cada vez
es menos atractivo construir la memoria con múltiples bloques de memoria
porque la configuración mínima de memoria crece.
•
Ejemplo: Construir una memoria de 64 MB con chips de 4Mx 1 , y palabras de
32 bits.
4 bancos, c/u con 32 DRAMs de 4Mbit x 1 Æ 128 DRAMS de 4Mx 1
•
Si usamos chips de 16M x 1 Æ 1 solo banco con 32 chips de 16M x1, y si
quisieramos tener 4 bancos (por hacer la memoria entrelazada), estaríamos
obligados a poner 32x4 chips de 16M x 1, haciendo un total de 256MB de
memoria.
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
60
4
4.3
M
P
R
I
N
C
I
P
A
L
Aspectos de diseño de la memoria principal (2)
•
Ejercicio: Diseña una memoria de 64 MB con chips de 64 Mbits de forma
de obtengamos 4 bancos. ¿Qué características (d y w) deben tener los
chips de 64 Mbits? ¿Cuántos chips de 64 Mbits tendrá cada banco?
•
Si no fijamos el tamaño total de la memoria a diseñar, sino la
características de los chips a utilizar y el nº de bancos Æ el tamaño total
de la memoria crece.
•
A medida que aumenta la densidad de los chips DRAM es más caro
construir memoria entrelazada porque hay que poner un tamaño total de
memoria mayor.
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
61
4.3
M
P
R
I
N
C
I
P
A
L
Aspectos de diseño de la memoria principal (3)
•
¿Cómo hacer para aumentar la velocidad de transmisión desde memoria
principal a las caches aprovechándonos de la estructura de las DRAM?
•
Una DRAM es una matriz de celdas de memoria.
•
El acceso se divide en acceso a fila y acceso a columna. Son tiempos de
acceso secuenciales.
Dirección de memoria completa
Nº Fila
Activar RAS: row access strobe
Nº Columna
Activar CAS: column access strobe
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
62
5
4.3
M
P
R
I
N
C
I
P
A
L
Aspectos de diseño de la memoria principal (4)
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
63
4.3
M
P
R
I
N
C
I
P
A
L
Aspectos de diseño de la memoria principal (5)
•
Tecnologías DRAM
– DRAM estándar Æ acceso a fila (RAS) y luego acceso a columna (CAS); siempre
activar y desactivar ambas señales.
– DRAM con Fast Page Mode Æ Mejora del anterior. Se accede a una secuencia de
datos. El primer acceso especifica fila y columna, RAS se mantiene activo para toda
la secuencia. Los siguientes accesos sólo tienen que especificar la columna y activar
CAS Æ mejora el tiempo de acceso.
– DRAM EDO (Extended Data Output)Æ En las anteriores CAS debe estar activa el
tiempo suficiente para que el usuario pueda disponer del dato. La mejora EDO Æ
poner el dato en un buffer, así CAS se puede desactivar antes y mejora el tciclo
(determina el momento en que se puede comenzar otro acceso).
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
64
6
4.3
M
P
R
I
N
C
I
P
A
L
Aspectos de diseño de la memoria principal (6)
– DRAM Síncrona (SDRAM)
• Permiten acceso en masa a datos secuenciales de la DRAM.
• Se proporciona dirección inicial y longitud de la secuencia (burst), y los datos se
transfieren al ritmo que fija una señal de reloj.
• Ventajas:
– Uso del reloj Æ no necesita sincronización.
– No necesita suministrar una dirección para cada dato a acceder (un
controlador las genera)
– Usa la circuitería ya existente en las DRAM añadiendo un pequeño coste al
sistema. A cambio se aumenta bastante el ancho de banda, sin incurrir en
desventajas de expansividad (como en organizaciones de memoria de
palabra ancha) o de tamaño mínimo de memoria (como en la memoria
entrelazada).
• MEJORA ADICIONAL Æ Dual Data Rate SDRAM (DDR SDRAM ó DDR)
– Permiten transferir datos en los dos flancos de reloj Æ dobla el ancho de
banda
Fundamentos de Computadores 2 - ITIG 2004/2005 – Tema 4. Subsistema de memoria
65
7
Descargar