Вы находитесь на странице: 1из 47

Jerarqua de Memoria

Sistemas Computacionales
Sistemas computacionales

Procesador
Entrada
Seccin de
Control Memoria

Seccin de
Salida
Datos

Sistema de memoria
Almacena datos e instrucciones durante ejecucin
Incidencia dramtica en desempeo del sistema global
Ejecucin de cdigo acceso memoria de instrucciones
Instrucciones movq, pushq, popq acceso memoria de datos
Modelo de memoria

Modelo de memoria utilizado hasta ahora


Vector lineal de bytes
Almacena datos e instrucciones
Tiempo de acceso constante a cualquier posicin
En la prctica, memoria est compuesta por
una jerarqua de dispositivos con diferentes
capacidades
costos
tiempos de accesos
Jerarqua de memoria

Costo Capacidad
WORM (write once, read many) Tiempo de acceso
Jerarqua de memoria

Una jerarqua en memoria est organizada en


varios niveles, cada uno ms pequeo, ms
rpido y ms caro por byte que el siguiente
Jerarqua de memoria

Requerimientos
Entregar gran cantidad de memoria,
permitida por tecnologa ms barata
Proveer alta velocidad de acceso, permitido
por tecnologa ms rpida
El tiempo de acceso ms rpido posible al
costo ms barato posible
Jerarqua de memoria

Principio de funcionamiento
Jerarqua de almacenamiento de creciente
tamao y tiempo de acceso
Mientras ms grandes, ms lentas
Niveles ms rpidos de la jerarqua
contienen una copia temporal del
subconjunto de datos ms utilizados de los
niveles de mayor tamao
Principio de inclusin
Principio de localidad
Principio de inclusin

Dispositivo ms rpido, pequeo


y caro en nivel k almacena un
Nivel k: 4 9 14 3
subconjunto de los bloques del
nivel k+1

Los datos se transfieren entre


niveles en bloques

0 1 2 3

4 5 6 7
Nivel k+1: Dispositivo ms grande, barato y
8 9 10 11 lento del nivel k+1 est dividido
en bloques
12 13 14 15
Los niveles de la jerarqua estn contenidos en el siguiente: todos
los datos de un nivel se encuentran tambin en el nivel siguiente y
as sucesivamente hasta que alcancemos el extremo inferior de la
jerarqua (principio de inclusin)
Jerarqua de memoria

En cada nivel encontramos estructuras de


informacin.
BLOQUE: la mnima unidad presente o no
presente.
Bloques ayudan en la gestin de niveles de
memoria.
Presencia hit o acierto.
Ausencia miss o fallo.
La tasa de aciertos o fallos nos indica la
frecuencia con la que hay que acceder a un
nivel inferior.
Jerarqua de memoria

numero de accesos existosos


Tasa aciertos nivel i ( aciertos, i )
numero total de accesos a ese nivel

numero accesos fallidos


Tasa de fallos nivel i ( fallos,i )
numeros de accesos a ese nivel
Jerarqua de memoria

Conociendo el tiempo de acceso de los niveles


tiempo medio de acceso a un nivel i.

ta ,i aciertos ,i ti fallos,i ti 1

ti :tiempo de acceso del sistema de almacenamiento


de nivel i
ti+1: el del nivel inmediatamente inferior.
Jerarqua de memoria

Cmo determino que informacin debe


ubicarse en cada uno de los niveles superiores
a un nivel?
Principio de localidad temporal: si un
elemento ha sido referenciado es muy probable
que pronto se vuelva a referenciar de nuevo.(caso
de los bucles en programacin)
Principio de localidad espacial: si un elemento
ha sido referenciado es probable que pronto sean
referenciados los elementos cercanos a este.
Jerarqua de Memoria
Memoria Interna:
Considera Registros, memoria cache y memoria principal.

Existen diversos parmetros para determinar las

prestaciones de memoria.
Tiempo de acceso a memoria (ta) o latencia.
Tiempo que transcurre desde el instante en que se
presenta una direccin en la memoria y el instante en
que el dato esta disponible para ser usado.
Tiempo ciclo de memoria (tc): tiempo mnimo entre dos
accesos sucesivos.
Ancho de banda (AB): numero mximo de bytes que se
pueden transmitir por segundo entre el procesador y
memoria.
Jerarqua de Memoria
En cada ciclo de instruccin el procesador debe
acceder a memoria principal al menos una vez
para consultar la instruccin.

Ciclos de acceso a memoria limitacin ante la


diferencia de velocidades entre el procesador y la
memoria.
Tecnologas de almacenamiento

Registros
Memoria SRAM
Memoria DRAM
Discos magnticos
Discos de estado slido
Memoria Terciaria
etc.
Registros

Registros
Internos al chip
Rpidos (a la velocidad de la CPU)
Pocos
Elementos individuales
Escritura sincronizada por reloj
Muy alta velocidad y baja densidad
Utilizados en banco de registros: mltiples puertas
de lectura y escritura
Memoria Principal
Memoria principal
Organizada en palabras de memoria.
Su numero de bits n se denomina ancho o longitud de
palabra o ancho de memoria.
Se puede escribir, leer en ella indicando la direccin del
dato o instruccin.
Para acceder memoria principal se dispone de un bus de
direcciones de m hilos y uno o dos buses de datos de n bits
(para entrada o salida).
Su rendimiento se mide a travs de su ancho de banda y su
latencia (esta ultima se mide a travs del tiempo de acceso y
ciclo de reloj).
Memoria esttica (SRAM)

Almacena un bit en una celda biestable


Circuito de 6 transistores por bit
Consume ms energa que DRAM
Mantiene el estado del bit mientras tenga energa
Memoria ms rpida y cara que DRAM
Tiempo de acceso cercano a TCPU
Organizada como vector
Utilizada en memorias cache
Tanto dentro como fuera del chip
Memoria dinmica (DRAM)

Almacena bit como carga en un capacitor


Slo 1 transistor y 1 capacitor por bit
Capacitor necesita ser refrescado ~8ms
Sensibles a perturbaciones como luz y ruido
Memoria puede ser muy densa
Organizada como matriz de filas y columnas
Utilizada para memoria principal y grfica
Algunas utilizan cdigos correctores de errores
Tiempo de acceso cercano a 10xTCPU
Tamao de bit de memoria
Mdulos de memoria DRAM

Chips de memoria DRAM se encapsulan en


mdulos de memoria DIMM (Dual Inline
Memory Modules)
Chips DRAM generalmente son de 8 bits (x8)
Transferencias entre memoria y CPU en
palabras de 64-bits
Mdulos de memoria DDR (Dual Data Rate)
transfieren datos en los flancos de subida y
bajada del reloj
Mdulos de memoria DRAM
Direccin A (fila = i, columna = j)
: Supercelda (i,j)
DRAM 0

Mdulo de memoria
de 512 MB
Compuesto por
DRAM 7
64Mx8 DRAMs
data

bits bits bits bits bits bits bits bits


56-63 48-55 40-47 32-39 24-31 16-23 8-15 0-7

63 56 55 48 47 40 39 32 31 24 23 16 15 8 7 0
Controlador
de memoria
Palabra de 64-bits en la direccin A

Palabra de 64-bits enviada a CPU


Memorias DRAM

Single Data Rate RAM (SDR SDRAM)


Una palabra por ciclo (Pentium III)
Dual Data Rate RAM (DDR SDRAM)
Dos palabras por ciclo (Pentium 4)
Dual Data Rate RAM (DDR2 SDRAM)
2da generacin de DDR (Intel Core)
Dual Data Rate RAM (DDR3 SDRAM)
3ra. Generacin de DDR (Intel Core 2)
Dual Data Rate RAM (DDR3 SDRAM)
4ta. Generacin de DDR ( Intel i7 Haswell)
Tasas de transferencia RAM
CPU Reloj del bus Transferencias por Ancho del bus Transferencias
(MHz) ciclo (MB/s)
Pentium 50 - 66 1 64 bits bus 400 528
datos ext,
32 bits bus
direcciones
Pentium II 66 100 1 64 bits Bus de 528 800
sistema ; 64 bit
Bus Cache
Pentium 4 100 133 4 64 bit Bus de 3200 4256
sistema
Pentium Dual-Core 200 266 4 64 bits 6400 8512

Core 2 Extreme 266 400 4 64 bits 8512 12800

Core i7 1600 2 64 bits 25600

Core i7 usa QPI (Intel QuickPath


Interconnect) en vez de bus CPU-memoria
Evolucin de memorias DRAM

Transferencias entre CPU y memoria DRAM


usan datos de 64 bits
Chip Mdulo Reloj de bus Reloj de bus Tasa de Voltaje
de memoria de sistema transferencia
SDR-133 PC-133 133 MHz 133 MHz 133 MT/s 3.3 V.

DDR-400 PC-3200 200 MHz 200 MHz 400 MT/s 2.5 V.

DDR2-1066 PC2-8500 266 MHz 533 MHz 1066 MT/s 1.8 V.

DDR3-2400 PC3-19200 300 MHz 1200 MHz 2400 MT/s 1.5 V.

DDR4-3200 PC4-25600 400 MHz 1600 MHz 3200 MT/s 1.2 V.


Memorias no voltiles

No pierden la informacin si se corta la energa


ROM programables (PROM)
Programables una sola vez
UV EPROM borrables con luz ultravioleta
Slo un nmero limitado de veces
ROM elctricamente borrables (EEPROM)
Programables y borrables con circuitos especiales
Puede ser reprogramada ~105 veces
Usadas en memorias Flash
Familia de memorias ROM
Interfaz CPU-memoria

Diseos recientes incorporan la interfaz de


memoria dentro de la CPU
AMD Hypertransport
Intel Quick Path Interconnect
CPU

Registros

ALU

Bus del sistema Bus de memoria

Interfaz Memoria
Interfaz de bus
de memoria DRAM
Intel Quick Path Interconnect
Discos magnticos

Almacenan del orden de 1012 bytes


1956: primer disco magntico (2KiB)
2015: 3TB por $100K
Transferencias de bloques de datos son del
orden de 10-3 s.
Velocidad de rotacin entre 5400 y 15000
rpm
Disco Duro
Disco duro:
Principal medio almacenamiento secundario.
Constituido por torre de platos de metal o plstico
cubiertos por superficie magntica

Platos rotan a velocidad constante
Cabezal vuela sobre la superficie y lee o escribe bits
Electrnica y firmware maneja cabezal y comunicacin
con CPU.
Notar que fabricantes de discos utilizan prefijos mtricos.
Ej. Giga = 109. Pero sistemas operativos frecuentemente
usan prefijos binarios. (Giga = 230)
Disco Duro

Superficie de disco dividida en pistas.


Anillos concntricos recorridos por cabezal mientras
disco gira.
Plato: Cada uno de los discos que hay dentro del disco
duro.
Cara: Cada uno de los dos lados de un plato
Cabeza: Nmero de cabezales;
Pista: Una circunferencia dentro de una cara; la pista 0
est en el borde exterior.
Disco Duro

Cilindro: Conjunto de varias pistas; son todas las


circunferencias que estn alineadas verticalmente (una
de cada cara).
Sector : Cada una de las divisiones de una pista. El tamao
del sector no es fijo, siendo el estndar actual 512 bytes.
Tecnologa ZBR (grabacin de bits por zonas) aumenta el
nmero de sectores en las pistas exteriores, y usa ms eficientemente
el disco duro.
Sistemas operativo agrupa sectores en bloques lgicos.
Estructura de un disco duro

Pistas
Cara
Pista k Espacios

Eje

Sectores
Estructura de un disco duro

Las pistas se organizan en cilindros concntricos


Los cilindros se llenan de afuera hacia adentro
Discos rotan a velocidad constante
Cilindro k

Cara 0
Disco 0
Cara 1
Cara 2
Disco 1
Cara 3
Cara 4
Disco 2
Cara 5

Eje
Disco Duro:

Distribucin de sectores y pistas en la superficie de un disco. El


brazo se desplaza radialmente en busca de la pista que quiere
acceder.
Ley de Kryder
Disco Duro

Disco Duro:
Sistemas de comunicacin con la placa madre.
IDE: Integrated Device Electronics ("Dispositivo
con electrnica integrada") o ATA (Advanced
Technology Attachment).
SCSI: Son discos duros de gran capacidad de
almacenamiento.
SATA (Serial ATA): estndar de conexin que utiliza
un bus serie para la transmisin de datos.
Ejemplo de disco magntico

Disco magntico Seagate S2000NM0011


Capacidad de 2 TiB
Latencia: 4.16 ms
Velocidad de rotacin 7,200 RPM
MTBF: 1.2x106 horas
Interfaz SATA: 6 GiB/s
Buffer interno: 64MiB
Transferencias: 150 MB/s
Tiempo de bsqueda R/W: 8.5/9.5 ms
Diseado para operacin 24/7/365
Discos de estado slido

Usan grandes volmenes de memoria flash


(EEPROM) para presentar una interfaz
equivalente a un disco magntico
Incluye un firmware de traduccin que
reemplaza al controlador de disco
Fsicamente compatibles con un disco duro
Ms robustos
No tienen partes mviles
Menor consumo de potencia
Vida til limitada
Discos de estado slido

Tpicamente, una pgina tiene 512 bytes a 4


KiB, y un bloque tiene 32 a 128 pginas
Bus de entrada/salida

Solicitudes de lecturas y
escrituras de pginas
Disco de estado slido (SSD)

Firmware de
traduccin

Memoria flash
Bloque 0 Bloque B-1

Pg. 0 Pg. 1 Pg. P-1 Pg. 0 Pg. 1 Pg. P-1


Discos de estado slido

Transferencias de datos se hacen en pginas


Pgina nueva slo se puede escribir en un bloque
que ha sido borrado
Una vez borrado el bloque, todas las pginas de
ste se pueden escribir una vez
Modificar una pgina ya escrita involucra borrar el
bloque y recopiar todas las otras pginas ya usadas
Borrar un bloque toma ~1ms, y slo puede hacerse
unos pocos cientos de miles de veces antes que el
bloque se desgaste
Balanceo de desgaste reparte las escrituras a travs
del disco de estado slido
Discos de estado slido

Lecturas
Lectura secuencial: 250 MB/s
Lectura aleatoria: 140 MB/s
Tiempo de acceso de lectura aleatoria: 30 s
Escrituras
Escritura secuencial: 170 MB/s
Escritura aleatoria: 14 MB/s
Tiempo de acceso de escritura aleatoria: 300 s
Memoria terciaria

CD
700 MiB (80 min)
1X: 150 KiB/s, 50X: 7.5 MiB/s
DVD
3.78 GiB (DVD-5)
1X: 1318 KiB/s, 16X: 21.1 MiB/s
Blu-Ray
25 GB (Single layer)
1X: 4.5 MiB/s, 6X: 27 MiB/s
Costo por GiB (Junio 15)

Memoria RAM
DDR3 8GB, 1866 GHz: $10K/GiB
Disco magntico
Maxtor SATA 3000 GB: $35/GiB
Disco estado slido
Samsung 840 EO 1TB: $440/GiB
CD / DVD
CD-R 700 MiB: $140/GiB
DVD-R 4.37 GiB: $32/GiB
Blu-ray 50GiB: $20/GiB
SSD v/s HDD
Ventajas:
Arranque del sistema operativo rpido
Mayor velocidad de lectura y escritura
Resistencia a condiciones extremas (movimiento y golpes)
Menor produccin de calor
Menor consumo de energa
No produce ruido
Borrado seguro (los datos no se pueden recuperar)
Desventajas:
Precio: La razn precio/GB es muy elevado, razn por la cual una gran
cantidad de usuarios utilizan discos HDD
Capacidad: Los discos SSD tienen una menor capacidad que los discos
duro convencionales que llegan a cantidades de terabytes.

Вам также может понравиться