Anda di halaman 1dari 58

ING.

GREYSON PAUL ALBERCA PRIETO


Captulo III Arquitectura de Computadores 1

1. Organizacin del Computador 2. Componentes de computador y Buses 3. MEMORIA

4. Entrada/Salida
Bibliografa Organizacin y Arquitectura de Computadores, William Stalling
Captulo III 2

Identificarlos diferentes tipos de memoria junto con sus caractersticas principales Conocer las jerarqua de los sistemas de memoria y as poder diferenciar capacidades, rapidez, costos. Ejemplificar los tipos de memoria de acuerdo a la aplicabilidad y uso Captulo III 3 adecuados. Arquitectura de Computadores

Palabra.
Igual al nmero de bits utilizados para representar un nmero entero y la longitud de una instruccin.
Captulo III Arquitectura de Computadores 4

Unidad direccionable.
Es el tamao mnimo que podemos direccionar en la memoria. El tamao puede o no coincidir con el ancho de palabra
Captulo III Arquitectura de Computadores 5

Unidad de transferencia.
Para la memoria principal es el nmero de bits que se leen o escriben en memoria a la vez, lo mnimo que puedo leer.
Captulo III Arquitectura de Computadores 6

Acceso secuencial
(SAM: Sequencial Access Memory). Gran capacidad de almacenamiento

Acceso directo
(DAM: Direct Access Memory). Acceso directo y luego uno secuencial

Acceso aleatorio
(RAM: Random Access Memory).

M. cache Acceso asociativo


Captulo III

(CAM: Content Addressable Memory). Modo de acceso por contenido se busca en toda la memoria al Arquitectura de Computadores 7 mismo tiempo

Tiempo de Acceso (TA).


. RAM: tiempo que transcurre desde el instante en el que se presenta una direccin a la memoria hasta que el dato, o ha sido memorizado, o est disponible para su uso (es decir, desde que doy la direccin hasta que L/E en memoria). CAM o la SAM: tiempo que se emplea en situar el mecanismo de L/E en la posicin deseada, es decir, tiempo que tarda en el registro.
8

Tiempo de Ciclo de memoria (TC). .


Tiempo que transcurre desde que se da la orden de una operacin de L/E hasta que se puede dar otra orden de L/E porque sino NO le da tiempo a responder y creara un tiempo muerto que nos interesa que sea lo menor posible
9

Velocidad de Transferencia (VT).


. Es la velocidad a la que se pueden transferir datos a, o desde, una unidad de memoria. Segn el tipo de memoria existen dos casos de velocidad:

10

Los sistemas de memorias empleados en los computadores utilizan diferentes dispositivos fsicos. Para la MEMORIA PRINCIPAL se utilizan memorias semiconductoras. Para MEMORIA SECUNDARIA, ya que responden a la necesidad de almacenar grandes cantidades de informacin, se emplean: Memorias magnticas, cintas, discos, etc. Memorias pticas, utilizadas. Captulo III 11 Memorias magnetopticas.

ALTERABILIDAD. Memorias ROM (Read Only Memory) y RWM (Read Writable Memory). PERMANENCIA DE LA INFORMACIN. Relacionado con la duracin de la informacin almacenada en memoria: LECTURA DESTRUCTIVA. Memorias de lectura destructiva DRO (Destructive Read Out) y memorias de lectura no destructiva NDRO (Non Destructive Read Out). VOLATILIDAD. corte en el suministro elctrico. Memorias voltiles y no voltiles. ALMACENAMIENTO ESTTICO/DINMICO. SRAM (Static Random Access Memory) DRAM (Dynamic Random Access 12 Memory)

La vida es cuestin de prioridades


Costo por bit Capacidad

Tiempo de acceso
Frecuencia de acceso

Captulo III

Arquitectura de Computadores

NIVEL CACH MEMORIA PRINCIPAL DISCO


Captulo III

TECNOLOGA SRASM

TIEMPO DE ACCESO
3 - 10 ns

COSTO POR MBYTE


$ 100 - 150

DRAM
Disco Magntico

80 - 400 ns
2 - 5 ms

$ 5 - 10
$ 1 - 0.2
14

Tipo de memoria RAM

Clase

Borrado

Mecanismo de escritura Elctricamente

Volatilidad

Lectura/escri tura Solo lectura

Elctricamen te por bytes No posible

Voltil

ROM

Mediante mascaras

No voltil

PROM EPROM Memoria de Luz sobretodoultravioleta lectura Elctricamen te por bloques Elctricamen Arquitectura bytes te por de Computadores

Electrnicamente

FLASH

EEPROM Captulo III

15

La CPU y la memoria tienen tiempos de acceso muy diferentes. Para mejorar la situacin se inserta una memoria intermedia

CPU

CACHE

MEMORIA RAM

Captulo III

Captulo III

Arquitectura de Computadores

Captulo III

Arquitectura de Computadores

Arquitectura de Computadores

19

Tamao Funcin de correspondencia Algoritmo de sustitucin Poltica de escritura Tamao del bloque Nmero de caches
Captulo III Arquitectura de Computadores 20

Captulo III

Arquitectura de Computadores

21

Correspondencia directa

Correspondencia asociativa.

Correspondencia asociativa por conjuntos.


Primero se determina un conjunto de forma directa, y dentro del conjunto puede ubicarse en cualquier lugar.

Cada bloque tiene solamente un lugar donde puede aparecer en la cache

Se puede colocar un bloque en cualquier parte.

Un conjunto es un grupo de bloques.

Si hay n bloques en un conjunto, la cach se dice asociativa por conjuntos de n vias (n-asociativa).
Captulo III Arquitectura de Computadores 22

Cada bloque(memoria principal) solo puede ir en una posicin de la cache


Cj Mi si i= j (mod C).
Siendo Cj = lnea j de la cache Mi = bloque i de la M. principal C = n de lneas de la cache

Captulo III

Etiqueta (s-r bits)

Lnea (r bits)

Palabra (w bits)

codifica el bloque de memoria asociado a esa lnea de cache

codifica el n de lnea de cache donde se realiza la bsqueda

codifica el n de palabras de memoria de cada bloque de memoria

Etiqueta (s-r bits)

Lnea (r bits)
Direccin de 24 bits

Palabra (w bits)

14

2
bloques de 4 bytes

Identificador de bloque de 22 bits. Etiqueta de 8 bits (=22-14). Ranura o lnea de 14 bits. Ninguno de los dos bloques en la misma lnea tiene el mismo campo de etiqueta.

Compruebe los contenidos de la cache mediante la bsqueda de la lnea y la comprobacin de la etiqueta.

Captulo III

Arquitectura de Computadores

26

Podemos ver un ejemplo con una memoria principal de 32 Kpalabras y una cache de 512 palabras con bloques de 8 palabras. El nde bits de cada campo ser:

Captulo III

Analizando vemos que: M. Principal = 32 kpalabras Cache = 512 palabras Cada bloque = 8 palabras
Arquitectura de Computadores

27

Analizando vemos que: M. Principal = 32 kpalabras Cache = 512 palabras Cada bloque = 8 palabras
Ahora para saber cuantos bloques tendr la M. principal debemos dividir las 32 kpalabras para las 8 palabras que contiene cada bloque

32 4 8
El # de bloques de la M. principal es 4

kbloques
28

Analizando vemos que: M. Principal = 32 kpalabras Cache = 512 palabras Cada bloque = 8 palabras
para saber cuantas lneas tendr la M. cache debemos dividir las 512 palabras para las 8 palabras que contiene cada bloque

512 64 8

El # de lneas de la cache es 64

lneas

Analizando vemos que: M. Principal = 32 kpalabras Cache = 512 palabras Cada bloque = 8 palabras
Tenemos: # de bits

M. Principal = 4kpalabras Cache = 64 lneas

12 2

6 2

Analizando vemos que: M. Principal = 32 kpalabras Cache = 512 palabras Cada bloque = 8 palabras
Por ultimo debemos calcular w

8 palabras = 23

W=

3 2

Ahora vamos a colocar los datos obtenidos en la grafica de la direccin de memoria

Etiqueta (s-r bits)

Lnea (r bits)

Palabra (w bits)

Recordemos que w = 23 es decir se necesitan 3 bits en la palabra

Etiqueta (s-r bits)

Lnea (r bits) Palabra (3bits) (r

Ahora vamos a colocar los datos obtenidos en la grafica de la direccin de memoria


Cache = 64 lneas

26

Tambin tenamos que la lnea tiene o necesita 6 bits

Etiqueta (s-r bits)

Lnea 6 bits) Lnea ((r bits) Palabra (3bits)

Ahora vamos a colocar los datos obtenidos en la grafica de la direccin de memoria


Cache = 64 lneas M. Principal = 4kpalabras

26 212

r s

Finalmente la etiqueta es igual a s-r, en nuestro ejemplo 12-6 = 6 Etiqueta (6 bits) Etiqueta (s-r bits)

Lnea (6 bits) Palabra (3bits)

Captulo III

Arquitectura de Computadores

35

Simple, sin algoritmos de reemplazo Poco costosa Hay una posicin concreta para cada bloque dado:
Si un programa accede a dos bloques que se corresponden a la misma lnea de forma repetida, las prdidas de cache son muy grandes (ocupacin de cache ineficiente) 36

Cada bloque(memoria principal) puede ir en cualquier posicin(lnea) de cache

Captulo III

Arquitectura de Computadores

37

Etiqueta (s bits)

Palabra (w bits)

Etiqueta indica el n de bloque de memoria principal que se est buscando


Captulo III Arquitectura de Computadores 38

Etiqueta (22 bits)

Palabra (2 bits)

La etiqueta de 22 bits est almacenada con cada bloque de datos de 32 bits. Compare el campo de etiqueta con la entrada de etiqueta en la cache para comprobar si ha tenido xito.

La direccin de 2 bits menos significativa identifica qu palabra de 16 bits se necesita en un bloque de datos de 32 bits.
Ejemplo: Direccin FFFFFC
Captulo III

Etiqueta FFFFFC

Datos 24682468

Lnea de cache 3FFF

Captulo III

Arquitectura de Computadores

40

Captulo III

Arquitectura de Computadores

41

Necesita el uso de memorias asociativas Necesita algoritmos de reemplazo Es la mas eficiente en la ocupacin de la cache.
Captulo III Arquitectura de Computadores 42

Conjunto: grupo de lnea de la cache Primero las lneas de memoria cach se asocian en conjuntos y la correspondencia se establece de forma directa entre cada bloque de la memoria principal y cada conjunto de la cach.

Captulo III

Arquitectura de Computadores

43

Dentro de cada conjunto la correspondencia es asociativa. Al nmero de bloques del conjunto se le llama nmero de vas o grado de asociatividad.

Captulo III

Arquitectura de Computadores

44

Etiqueta (s-d bits) Conjunto (d bits)

Palabra (w bits)

codifica el bloque de memoria asociado a ese conjunto


Captulo III

codifica el n de conjunto de cache donde se realiza la bsqueda


Arquitectura de Computadores

codifica el n de palabras de memoria

45

Direccin de 24 bits

Etiqueta (9 bits)

Conjunto (13 bits)

Palabra (2 bits)

Utilice los campos de conjunto a la hora de determinar el conjunto de cache que necesita para poder verlo. Compare los campos de etiqueta para ver si tenemos xito: Ejemplo: Direccin 1FF 7FFC Etiqueta 1FF Datos 12345678 Nmero de conjuntos 1FFF

001 7FFC

001

11223344

1FFF

Captulo III

Arquitectura de Computadores

47

Un bloque determinado se hace corresponder a cualquier lnea en un conjunto determinado.


Ejemplo: El bloque B puede asignarse en cualquiera de las lneas del conjunto i.

Ejemplo: 2 lneas por conjunto.


Correspondencia asociativa de 2 vas. Un bloque determinado puede asignarse en una de las dos lneas en un nico conjunto.

Captulo III

Arquitectura de Computadores

49

Captulo III

Arquitectura de Computadores

50

Captulo III

Arquitectura de Computadores

51

Considere que una cache asociativa por conjuntos consta de 64 lneas divididas en conjuntos de 4 lneas. La memoria principal contiene 4K bloques de 128 palabras cada uno.
Etiqueta (s-d bits) Conjunto (d bits)
Captulo III Arquitectura de Computadores

Palabra (w bits)
52

Primero vamos a ver de cuantos bits ser el total de la memoria

4*1024*128 = 524288 esto equivale a 219 palabras entonces el tamao del formato de direccin de memoria principal en bits es 19
Direccin de 19 bits

Etiqueta (s-d bits) Conjunto (d bits)

Palabra (w bits)

Para encontrar el valor de la palabra: Sabemos que la memoria principal tiene 4k bloque de 128 palabras a estas 128 debemos sacar su equivalente en 2n y es 27 , entonces w = 7, es decir que se necesitan 7 bits para direccionar las palabras que estn dentro del bloque de memoria

Etiqueta (s-d bits) Conjunto (d bits)

Palabra (7 Palabra (w bits)


54

Recordemos que el total de bits del es de 19 ya sabemos que la palabra es 7 entonces la diferencia entre 19 7 = 12. 12 bis son los que necesitamos para la etiqueta y el conjunto

Direccin de 19 bits

Etiqueta (s-d bits) Conjunto (d bits)


12 bits

Palabra (7 bits)

Sabemos que la cache tiene 64 lneas que estn divididas en conjuntos de 4 y queremos saber cuantos conjuntos hay. Esto es 24 entonces el nmero de conjuntos 64 16 que tiene la memoria cache es de 4

Direccin de 19 bits

(4 Etiqueta (s-d bits) Conjunto (d bits)


12 bits

Palabra (7 bits)

Finalmente restamos 4 12 y nos da el valor de la etiqueta que es 8

Direccin de 19 bits

Etiqueta (s-dbits) Conjunto (4 bits) Etiqueta (8 bits)


12 bits

Palabra (7 bits)

La memoria es cara, por ello si queremos una memoria rpida deber ser pequea. Las memorias cada vez son ms rpidas, grandes y baratas, pero no avanzan solas, las memorias cache no se quedan atrs. De todas maneras la diferencia de velocidad entre el procesador y la memoria sigue siendo un hecho, y mientras no se igualen, se seguir usando la cache. La jerarquizacin de la memoria en niveles no ser posible sin el principio de localidad, el cual nos permite acceder lo mnimo posible a los niveles58 ms lentos.

Anda mungkin juga menyukai