Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Escuela de Ingeniería
Departamento de Ciencia de la Computación
[ Arquitectura de Computadores ]
SISTEMAS DE MEMORIA
IIC 2342
Semestre 2005-2
Domingo Mery
Präsentat
ion
Localización
• CPU
• Interna
• Externa
Capacidad
• Tamaño de la palabra
– La unidad <<natural>> de organización de
la memoria
• Número de palabras o bytes
Unidad de Transferencia
• Interna
- Normalmente gobernada por un bus ancho de datos.
• Externa
– Los datos se transfieren normalmente en bloques,
que son unidades mucho más grandes que las
palabras.
• Unidad Direccionable
– La unidad más pequeña que puede ser accesada
– Palabras o en algunos casos Bytes
– Bloques en discos
D.Mery 7 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Sistemas de almacenamiento
Métodos de Acceso
• Secuencial
– Iniciar al prinicipio y leer en orden
– El tiempo de acceso depende de la localización
de los datos y de dónde se localizaban
previamente.
• Ejemplo: Cinta
• Directo
– Bloques individuales, tienen direcciones únicas
– El acceso se hace mediante un acceso directo a
una vecinidad dada
– El tiempo de acceso es variable
D.Mery 8 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Sistemas de almacenamiento
Jerarquía de Memoria
• Registros
– Dentro del CPU
• Memoria interna o principal
– Puede incluir uno o más niveles de caché.
– “RAM”
• Memoria Externa
– Almacenamiento de respaldo
• Tasa de transferencia
– Velocidad a la cual los datos pueden ser movidos
D.Mery 11 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Sistemas de almacenamiento
Tipos Físicos
• Semiconductores
– RAM, ROM
• Magnético
– Disco y cinta
• Óptico
– CD y DVD
Organización
• Arreglo físico de los bits en palabras
• No siempre es obvio
– Ejemplo. Intercalado
Consideraciones
• ¿Qué tanto?
– Capacidad
Consideraciones
Lista de Jerarquía
• Registros
• Caché de nivel 1 (L1)
• Caché de nivel 2 (L2)
• Memoria Principal
• Caché de disco
• Disco
• Óptico
• Cinta
US$ /
0.01 US$
US$ / Gbyte
¿Queremos velocidad?
• Es posible construir una computadora
que use sólo RAM estática
• Sería muy rápida
• No necesitaría caché
– ¿Para qué?
• Pero, siempre hay peros, sería
costosísima
Memoria semiconductora
• RAM (Memoria de acceso aleatorio)
– En realidad todas las memorias son de
acceso aleatorio
– Lectura/Escritura
– Volátil
– Almacenamiento Temporal
– Estática o dinámica
Registro de 8 bits
D.Mery 25 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Sistemas de almacenamiento
RAM 4 x 3
RAM Dinámica
• Lleva tiempo
• Aparentemente baja el rendimiento
SRAM DRAM
4K
D.Mery 37 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Sistemas de almacenamiento
RAM
Notebook
Memorias de semiconductor
0 0000 0000
1 0000 0001
2 0000 0010
:
255 1111 1111
10 0001 0000
52 0101 0010
99 1001 1001
Base: 45 45
+2 47
+3 50
+0 50
-1 49
Exceso a 3
ASCII (7 bits)
128 combinaciones:
64 para mayúsculas y cifras
32 códigos de control
32 para minúsculas y signos
especiales
ASCII extendido
(8 bits)
256 combinaciones
se usa en los PC’s y
minicomputadores
Blanco 20 40 3 33 F3 9 39 F9
“ 22 7F 4 34 F4 A 41 C1
& 26 50 5 35 F5 B 42 C2
0 30 F0 6 36 F6 C 43 C3
1 31 F1 7 37 F7 D 44 C4
2 32 F2 8 38 F8 a 61 81
Compresión
El almacenamiento de grandes cantidades de datos en
soporte magnético u óptico tiene un coste elevado.
Tipos de compresión
1. Codificación diferencial
2. Codificación estadística (según frecuencia de uso)
3. Método basado en diccionarios
¿Ventajas y desventajas?
D.Mery 66 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Compresión
2. Codificación estadística
2. LZW
Se usan códigos extendidos de mayor longitud que los
originales.
i) Se reserva un código por cada dato individual original
ii) Se usan códigos adicionales para codificar secuencias de
datos frecuentes.
La primera vez que aparece una secuencia de datos, se
almacena la secuencia junto con el código asignado.
Las siguientes veces que aparece la secuencia se escribe
sólo su código
• Registros
– Dentro del CPU
• Memoria interna o principal
– Puede incluir uno o más niveles de caché.
– “RAM”
• Memoria Externa
– Almacenamiento de respaldo
Lista de Jerarquía
• Registros
• Caché de nivel 1 (L1)
• Caché de nivel 2 (L2)
• Memoria Principal
• Caché de disco
• Disco
• Óptico
• Cinta
US$ /
0.01 US$
US$ / Gbyte
M K
información paridad
N
Se adhieren con
el objeto de detectar
o corregir errores
D.Mery 90 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Manejo de errores
• La detección de errores se basa en añadir información redundante:
• Ejemplo:
– Bit de paridad: En el sistema de paridad par/impar se añade un bit a la
información, de forma que el número de 1’s totales ha de ser
par/impar.
0
1
1 1
0 0 0
1
1 1
0 0 0
1
1 1
0 0 0
1
1 0
0 0 0
1
1 0
Círculo “impar”
0 0 0
1
1 0
1
Círculo “impar”
Círculo “impar”
0 0 0
1 Culpable, hay
1 0
que modificarlo.
1
Círculo “impar”
Círculo “impar”
0 0 0
1 Bit modificado.
1 1
1
Círculo “impar”
Círculo “impar”
0 0 0
1 Bit modificado.
1 1
El dato es 0111.
1
Círculo “impar”
M K
información paridad
N
Se adhieren con
el objeto de detectar
o corregir errores
D.Mery 102 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Manejo de errores
C1 = M1 + M2 + M4 + M5 + M7
C2 = M1 + M3 + M4 + M6 + M7
C4 = M2 + M3 + M4 + M8
C8 = M5 + M6 + M7 + M8
¿Qué sucede?
D.Mery 106 Arquitectura de Computadores
Präsentat
ion
[ Índice ]
Cada celda tiene una dirección asociada, con los cuales los
programas pueden referirse a ella.
Ejemplo:
a) Registro en big endian,
b) registro en little endian,
c) resultado de transferir el registro de un big a un little endian,
d) intercambio de los bits de c)
D.Mery 111 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Organización
Organización 2D:
Organización 2D:
D.Mery 113 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Organización
Organización 3D:
Organización 3D:
8000-8FFF RAM-8
:
:
3000-3FFF RAM-3
2000-2FFF RAM-2
1000-1FFF RAM-1
0000-0FFF ROM
Latencia:
Tiempo de ciclo:
Ancho de banda:
1KB 256 KB 1 GB 80 GB
1ns 5 ns 100 ns 5 ms
Caché:
– Mantiene las palabras (datos o instrucciones) de memoria
de mayor uso
Características:
• Alta velocidad
• Capacidad pequeña
• Físicamente: SRAM (varias veces más rápidas que DRAM)
Elementos de diseño:
– Tamaño
– Función de correspondencia
– Algoritmo de sustitución
– Política de escritura
– Tamaño de línea
– Número de cachés
Solución de compromiso:
– Tamaño pequeño ↑ rapidez,
↓ costo,
↓ direccionamiento
– Tamaño grande ↓ accesos a main memory
↓ tiempo de acceso medio
• Otros factores
– Superficie disponible en el chip o tarjeta
– Algunos estudios: 1K-512K
D.Mery 135 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Caché
Caché: Memoria principal:
K palabras
Nº Etiqueta Bloque Dir Datos
Bloque:
0 0
1 1
2 2
3 3
: :
C×K<<2n
C-1
2n-1
K palabras
D.Mery 136 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Caché
Caché: Memoria principal:
K palabras
Nº Etiqueta Bloque Dir Datos
Bloque:
0 Como hay menos líneas de caché que 0 bloques
1 de memoria principal, se necesita un1 algoritmo
2 2
que haga corresponder bloques de memoria
3
3 principal a líneas de caché.
: :
C×K<<2n
C-1
2n-1
K palabras
D.Mery 137 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Caché
2. Función de correspondencia:
• directa,
• asociativa y
• asociativa por conjuntos.
Correspondencia directa:
Correspondencia directa:
Correspondencia directa:
Correspondencia asociativa:
Correspondencia asociativa:
Random (aleatorio):
1KB 256 KB 1 GB 80 GB
1ns 5 ns 100 ns 5 ms
1. Inmediatamente
2. Post-escritura
Escritura inmediata:
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K X 0 0-2K
2-4K 3 Ejemplo: se desea leer el
0-2K 2 contenido de la memoria 0
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K X 0 0-2K
2-4K 3 Ejemplo: se desea leer el
0-2K 2 contenido de la memoria 0
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K X 0 0-2K
2-4K 3 Ejemplo: se desea leer el contenido
0-2K 2 de la memoria 2050
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K X 0 0-2K
2-4K 3 Ejemplo: se desea leer el contenido
0-2K 2 de la memoria 2050
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K X 0 0-2K
2-4K 3 Ejemplo: se desea leer el contenido
0-2K 2 de la memoria 4100
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K X 0 0-2K
2-4K 3 Ejemplo: se desea leer el contenido
0-2K 2 de la memoria 4100
10-12K X 3 6-8K
8-10K X 2 4-6K
6-8K X 1 2-4K
4-6K 1 0 0-2K
2-4K 3 Ejemplo: se desea leer el contenido
0-2K 2 de la memoria 4100
Ejemplo:
Memoria Virtual: 16 páginas de 4K
Dirección de 16 bits
Memoria Virtual
Memoria física
D.Mery 175 Arquitectura de Computadores
Präsentat
ion
[ Memoria ] Memoria virtual
Cómo se hace?
1. De la página virtual se
establece el número de la
página virtual.
1. De la página virtual se
establece el número de la
página virtual.