You are on page 1of 20

Ejercicios

de
Arquitectura
de
Computadoras
Jos Garza
2009
En este tipo de ejercicios debemos tener siempre presentes estas tres ecuaciones:
( )
particin por
palabras de Cantidad
Principal Memoria la en s particione de Cantidad ) Principal Memoria en palabras de Cantidad ( = MP

( )
particin por
palabras de Cantidad

conjunto por
s particione de Cantidad
cach la en conjuntos de Cantidad ) cach la en palabras de Cantidad ( = cach
cach la en conjuntos de Cantidad
Principal Memoria en s particione de Cantidad
) Principal Memoria la en pginas de Cantidad ( =
Arquitectura de Computadoras 1 Ejercicios de Memoria Cach
c
conjunto nmero de pgina (etiqueta)
w bits
offset
conjunto 0
irectorio cach
partici!n 0 partici!n 1
c
partici!n "
k
#1
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
p
#1
...
conjunto 0
conjunto 1
conjunto "
c
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n "
k
#1
partici!n "
k
#1
...
...
...
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
c
#1
c
c bits p bits
p
Una memoria cach asociatia por conjuntos dispone de !" conjuntos # utili$a particiones de % palabras& siendo su capacidad total de
'()*% palabras( +a memoria principal tiene una capacidad de !()'*, palabras( -Cuantos bits ha# en los di.erentes campos de .ormato de
direccin/(
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
conjunto por
s particione
.
"
conjunto por
s particione de Cantidad
partici!n por
pa,abras
/
"
-
conjunto por
s particione de Cantidad
- conjuntos
.
" pa,abras
11
" = |
.
|

\
|
=
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
10
" (rincipa, Memoria en s particione de Cantidad
partici!n por
pa,abras
/
"
1 (rincipa, Memoria ,a en s particione de Cantidad
"0
" = =
( ) pginas
1/
"
conjuntos
.
"
s particione
10
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria en s particione de Cantidad
(rincipa, Memoria en pginas de Cantidad = = =
Una memoria cach asociatia por conjuntos dispone de 0' conjuntos& utili$a particiones de % palabras # su capacidad total es de '()*%
palabras( -1 cuntas posiciones distintas de la cach (suponindola ac2a) puede ir cada palabra de MP/
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach en pa,abras de (Cantidad cach =
s particione
/
"
2
"
11
"
conjunto por
s particione de Cantidad
partici!n por
pa,abras
/
"
-
conjunto por
s particione de Cantidad
- conjuntos
2
" "
11 0
' =

=
|
.
|

\
|
=
$o podemos ca,cu,ar ,a ,ongitud de todos ,os campos3 pues no nos dieron e, tama4o de ,a Memoria (rincipa,5
e todas formas3 cada pa,abra de Memoria (rincipa, puede ir a una cua,quiera de ,as "
/
6 7 particiones de cada conjunto5
Arquitectura de Computadoras " Ejercicios de Memoria Cach
.
conjunto nmero de pgina (etiqueta)
/ bits
offset
conjunto 0
irectorio cach
partici!n 0 partici!n 1
.
partici!n "
.
#1
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
1/
#1
...
conjunto 0
conjunto 1
conjunto "
.
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n "
.
#1
partici!n "
.
#1
...
...
...
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
.
#1
4
. bits 1/ bits
1/
2
conjunto nmero de pgina (etiqueta)
/ bits
offset
conjunto 0
irectorio cach
partici!n 0 partici!n 1
2
partici!n "
/
#1
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
p
#1
...
conjunto 0
conjunto 1
conjunto "
2
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n "
/
#1
partici!n "
/
#1
...
...
...
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
2
#1
2
2 bits 8p9 bits
p
Un computador tiene una unidad de memoria con !" l2neas de direccin& # una memoria cach de !, palabras( +a memoria cach utili$a
correspondencia asociativa por conjuntos& con un tama3o de particin de !" palabras # * particiones por conjunto( E4pli5ue ra$onadamente
en 5u campos se diide la direccin de memoria principal 0000110111000011 e indi5ue el alor de cada uno de estos campo en decimal(
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad cach) en pa,abras de (Cantidad cach =
( ) ( ) conjuntos
.
"
"
"
10
"
conjuntos de Cantidad
partici!n por
pa,abras
.
"
-
conjunto por
s particione
"
"
- conjuntos de Cantidad "
10 *
' =

= =
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
1"
"
.
"
1:
"
(rincipa, Memoria en s particione de Cantidad
partici!n por
pa,abras "
- (rincipa, Memoria en s particione de Cantidad
1:
"
.
= = =
( ) pginas "
conjuntos
.
"
s particione
1"
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad
7
= = =
Una memoria cach asociatia por conjuntos consta de !" conjuntos con * particiones por conjunto( +a memoria principal tiene una
capacidad de ! Mb ('
')
palabras) diidida en particiones de '
6
palabras( +a palabra almacenada en la direccin de memoria principal&
e4presada en binario es: 1010 0001 1001 0011 0000(
a) -1 5u conjunto debe ir/(
b) -7u eti5ueta deber tener la particin donde a#a/(
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach en pa,abras de (Cantidad cach =
pa,abras cach
partici!n por
pa,abras
0
"
-
conjunto por
s particione
"
"
- conjuntos
.
" cach
!0
' =
|
.
|

\
|
= & pero este resu,tado no se necesitaba en este ejercicio5
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
1/
" (rincipa, Memoria ,a en s particione de Cantidad
partici!n por
pa,abras "
- (rincipa, Memoria ,a en s particione de Cantidad
"0
"
0
= =
( ) pginas
;
"
conjuntos
.
"
s particione
1/
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
Arquitectura de Computadoras / Ejercicios de Memoria Cach
.
1100 00001101
. bits
0011
conjunto 0
irectorio cach
partici!n 0 partici!n 1
.
partici!n /
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
7
#1
...
conjunto 0
conjunto 1
conjunto "
.
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n /
partici!n /
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
.
#1
.
. bits 7 bits
7
...
partici!n "
partici!n "
partici!n "
.
.
.
.
0010 101000011
0 bits
0110000
conjunto 0
irectorio cach
partici!n 0 partici!n 1
.
partici!n /
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
;
#1
...
conjunto 0
conjunto 1
conjunto "
.
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n /
partici!n /
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
.
#1
.
. bits ; bits
;
...
partici!n "
partici!n "
partici!n "
.
.
.
Un computador tiene una unidad de memoria de '
!0
palabras # una memoria cach asociatia por conjuntos de '
6
palabras& suponiendo
5ue la UCP genera la direccin de memoria principal 00101 1011 0111& indi5ue cul es el conjunto cach donde ir # 5u eti5ueta
tendr su particin(
a) 8i la memoria cach tiene * conjuntos # % particiones por conjunto(
b) 8i la memoria cach tiene % conjuntos # * particiones por conjunto(

a) <i ,a memoria cach tiene . conjuntos = 7 particiones por conjunto5
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
pa,abras
/
"
"
"
0
"
partici!n por
pa,abras de Cantidad
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione
/
"
- conjuntos
"
" "
0 '
' =

=
|
.
|

\
|
=
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memmoria en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
11
"
"
"
1/
"
(rincipa, Memoria en s particione de Cantidad
partici!n por
pa,abras
"
"
- (rincipa, Memoria en s particione de Cantidad
1/
" = = =
( ) pginas "
conjuntos
"
"
s particione
11
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad
;
= = =
b) <i ,a memoria cach tiene 7 conjuntos = . particiones por conjunto5
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
pa,abras
"
"
/
"
0
"
partici!n por
pa,abras de Cantidad
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione Cantidad
- conjuntos
/
" "
0 '
' =

=
|
.
|

\
|
=
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
11
"
"
"
1/
"
(rincipa, Memoria en s particione de Cantidad
partici!n por
pa,abras de
"
"
1 (rincipa, Memoria en s particione de Cantidad
1/
" = =
( ) pginas "
conjuntos
/
"
s particione
11
"
cach ,a en conjuntos de Cantidad
(rincipa, Memmoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad
7
= = =
Arquitectura de Computadoras . Ejercicios de Memoria Cach
"
>016?1 >001011011 6 ?;1
" bits
>116?/
conjunto 0
irectorio cach
partici!n 0 partici!n 1
"
partici!n "
/
#1
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
;
#1
...
conjunto 0
conjunto 1
conjunto "
"
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n "
/
#1
partici!n "
"
#1
...
...
...
.
.
.
conjunto "
"
#1
"
" bits ; bits
;
partici!n 0 partici!n 1 partici!n "
"
#1
...
conjunto "
conjunto "
/
>1016?2 >01011016?.2
" bits
>116?/
conjunto 0
irectorio cach
partici!n 0 partici!n 1
/
partici!n /
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
7
#1
...
conjunto 0
conjunto 1
conjunto "
/
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n /
partici!n /
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
/
#1
/
/ bits 7 bits
7
...
partici!n "
partici!n "
partici!n "
.
.
.
Un computador tiene una unidad de memoria de '
!'
palabras # una memoria cach de '
%
palabras( +a memoria cach es asociatia por
conjuntos& con !" conjuntos # ' particiones por conjunto( Cuando se necesita un reempla$o en la cach& en el conjunto correspondiente se
reempla$a la particin ms antigua(
8uponiendo 5ue inicialmente la memoria cach est ac2a( -Cuantos .allos se producir2an en la cach si se le#eran consecutiamente las
siguientes direcciones de la MP/(
0000 0000 1111
0000 0100 1111
0001 0000 1111
0001 0000 1100
0010 1000 1111
0000 0000 1101
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
pa,abras
/
"
partici!n por
pa,abras de Cantidad
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione "
- conjuntos
.
"
7
" = |
.
|

\
|
=
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
;
" (rincipa, Memoria ,a en s particione de Cantidad
partici!n por
pa,abras de
/
"
- (rincipa, Memoria ,a en s particione de Cantidad
1"
" = =
( ) pginas
2
"
conjuntos
.
"
s particione
;
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
00000 0001 111 @a a, conjunto 15 (roAoca fa,,o3 pues ,a cach est inicia,mente Aacia5
00000 1001 111 @a a, conjunto ;5 (roAoca fa,,o5
00010 0001 111 @a a, conjunto 15 (roAoca fa,,o3 ,a etiqueta que habBa en e, conjunto 1 era 000005
+sta tiene como etiqueta 00010( (uede ir a ,a partici!n 1 de este mismo conjunto3 por ,o que no proAoca reemp,aCo5
00010 0001 100 @a a, conjunto 15 $o proAoca fa,,o3 pues ,a etiqueta 00010 =a estaba en ,a partici!n 1 de, conjunto 15
00101 0001 111 @a a, conjunto 15 (roAoca fa,,o3 pues ,a etiqueta 00101 no estaba presente5
Dambin proAoca reemp,aCo3 pues e, conjunto 1 =a estaba ,,eno5
ebe ser reemp,aCada ,a que estaba en ,a partici!n 0 de, conjunto 15
00000 0001 101 @a a, conjunto 15 (roAoca fa,,o3 pues ,a etiqueta 00000 acaba de ser reemp,aCada5
Dambin proAoca reemp,aCo5 ebe ser reemp,aCada ,a partici!n 1 de, conjunto 15
Arquitectura de Computadoras 2 Ejercicios de Memoria Cach
.
conjunto nmero de pgina (etiqueta)
/ bits
offset
conjunto 0
irectorio cach
partici!n 0 partici!n 1
.
partici!n /
partici!n 0 partici!n 1
partici!n 0 partici!n 1
conjunto 1
$mero
de
conjunto
pgina 0 pgina 1 pgina "
2
#1
...
conjunto 0
conjunto 1
conjunto "
.
#1
...
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
partici!n /
partici!n /
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
conjunto "
.
#1
.
. bits 2 bits
2
...
partici!n "
partici!n "
partici!n "
.
.
.
8ea una memoria cach de !'% b#tes con estrategia de ubicacin asociatia por conjuntos& de .orma 5ue ha# * conjuntos # cada uno
puede almacenar * particiones( +as direcciones .2sicas estn compuestas por 0' bits # la unidad ms pe5ue3a direccionable es el b#te(
a) 9race un es5uema de la seccin de control # la $ona de almacenamiento de la cach& indicando cmo se relacionan las direcciones
.2sicas con las direcciones cach(
b) -1 5u particiones de la cach puede asignarse la direccin .2sica 000010AF (he4adecimal)/
c) 8i las direcciones .2sicas (he4adecimales) 00001AF # FFFF7Axy pueden ser asignadas simultneamente al mismo conjunto cach& -5u
alores pueden tener x e y/(
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
pa,abras
/
"
partici!n por
pa,abras de Cantidad
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione
"
"
- conjuntos
"
" pa,abras
0
" = |
.
|

\
|
=
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
";
" (rincipa, Memoria ,a en s particione de Cantidad
partici!n por
pa,abras de
/
"
- (rincipa, Memoria ,a en s particione de Cantidad
/"
" = =
( ) pginas
"0
"
conjuntos
"
"
s particione
";
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
a)
b)
EF 000010AE
A ,as cuatro ,Bneas de, conjunto 01
c)
(ueden ser asignadas a, mismo conjuntoF 01
G Dodas ,as combinaciones de x con e, bit menos significatiAo a 05
= Dodas ,as combinaciones con e, bit ms significatiAo a 15
x y
0000
0010
0100
0110
1000
1010
1100
1100
0
"
.
:
7
A
C
E
1000
1001
1010
1011
1100
1101
1110
1111
7
;
A
H
C

E
E
Arquitectura de Computadoras : Ejercicios de Memoria Cach
0000 0000 0000 0000 0001 0000 101 0 1 111
conjunto
ZA: 0000215
DL: 000085 I
000010AF: 0000 0000 0000 0000 0001 0000 101 0 1 111
FFFF7Axy: 1111 1111 1111 1111 0111 1010
G =
2 0
conjunto nmero de pgina (etiqueta)
" / /1 .
offset
E
conjunto 0
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
partici!n 0 partici!n 1 partici!n " partici!n /
partici!n 0 partici!n 1 partici!n " partici!n /
partici!n 0 partici!n 1 partici!n " partici!n /
conjunto 1
conjunto "
conjunto /
pgina 0 pgina 1 pgina "
"0
#1
...
...
conjunto 0
conjunto 1
conjunto "
conjunto /
"
/ bits
"
$mero
de
conjunto
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
" bits "0 bits
"0
"
8ea un computador con una memoria cach de una capacidad de % particiones de ' b#tes cada una& incluida en un sistema sin memoria
irtual( +a cach est organi$ada asociatiamente en * conjuntos( +a operacin de b:s5ueda en la cach es por demanda( El reempla$o es
;<;= (el primero en entrar es el primero en salir)( +a actuali$acin de la memoria principal es mediante post>escritura bajo .allo( +a memoria
principal est organi$ada en b#tes # tiene una capacidad de 0' b#tes& de .orma 5ue el contenido de la posicin o es 'o( 8i de.inimos W(x& o)
como la escritura del contenido de la ariable x sobre la posicin de memoria de direccin o? # la .uncin R(x& o) como la lectura sobre la
ariable x del contenido de la posicin de memoria de direccin o& analice cmo eoluciona el contenido de la $ona de almacenamiento # del
directorio de la cach # el contenido de la memoria principal cuando el procesador emite la siguiente secuencia de operaciones:
R(x0, 17)
R(x1, 6)
W(100, 8)
W(101, 16)
R(x2, 9)
R(x3, 25)
1nalice tambin el contenido de las ariables x0& x!& x2 # x3(
%rganiCaci!n = contenidos (en base decima,) inicia,esF
'nstrucci!n 1JF R(x
0
, 17)
<e debe acceder a ,a posici!n 10001 (10) de ,a M(5 (or supuesto3 ocurre un fa,,o de pgina cach3 pues inicia,mente est AacBa5
10001 determinaF
Conjunto 05
"J pa,abra dentro de ,a ,Bnea5
A,macenar 10b6"d en e, directorio5
Como es a,macenada una ,Bnea entera3 tambin se a,macena e, contenido de ,a direcci!n anterior (?1:)6?/"5
Estado actua,F
'nstrucci!n "JF R(x
1
, 6)
00110 determinaF
Conjunto /5
A,macenar 0b60d en e, directorio5
Estado actua,F
Arquitectura de Computadoras 0 Ejercicios de Memoria Cach
/ 0
conjunto nmero de pgina (etiqueta)
1 . "
offset
E
pgina 1
"
1 bit
MEM%&'A (&'$C'(A)
" bits " bits
"
"
irectorio cach Kona de a,macenamiento
MEM%&'A CAC*+
conjunto 0
conjunto 1
conjunto "
conjunto /
C0
C1
C"
C/
000 0 008 4 016 8 024 12 032 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
pgina 1
MEM%&'A (&'$C'(A)
"
irectorio cach Kona de a,macenamiento
MEM%&'A CAC*+
conjunto 0 032 034 "
conjunto 1
conjunto "
conjunto /
C0
C1
C"
C/
000 0 008 4 016 8 024 12 032 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
34 G
0
G
1
G
"
G
/
@A&'AH)E<
pgina 1
MEM%&'A (&'$C'(A)
"
irectorio cach Kona de a,macenamiento
MEM%&'A CAC*+
conjunto 0 032 034 "
conjunto 1
conjunto "
conjunto / 012 014 0
C0
C1
C"
C/
000 0 008 4 016 8 024 12 032 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
34 G
0
12 G
1
G
"
G
/
@A&'AH)E<
'nstrucci!n /JF W(100, 8)
<e debe acceder a ,a posici!n 01000 de ,a M(5
<e anota 100 en su correspondiente pa,abra cach5
Estado actua,F
'nstrucci!n .JF W(101, 16)
<e debe acceder a ,a posici!n 100003 ,a cua, =a est en ,a cach5
Estado actua,F
*asta ahora no ha habido ningn reemp,aCo3 por ,o cua,3 ,a M( an no se ha modificadoF
'nstrucci!n 2JF R(x
2
, 9)
<e debe acceder a ,a posici!n 100005
10000 determinaF
Conjunto 05 $o ha= fa,,o de ,Bnea3 pues =a estaba a,,B5
A,macenar 0b60d en e, directorio5
Estado actua,F
'nstrucci!n :JF R(x
3
, 25)
<e debe acceder a ,a posici!n 110015
11001 determinaF
$ueAa ir6/5 $o coincide con ninguna de ,as que habBa5
Conjunto 05 Como este conjunto estaba ,,eno3 se debe reemp,aCar ,a ,Bnea ms antiguamente referenciada5
Con e, reemp,aCo3 es e, momento de actua,iCar ,a memoria principa,5
Estado actua,F
)os contenidos de ,a M( son ,os inicia,es3 eGcepto en ,as posiciones 7 = 1:L cu=os contenidos son 100 = 1013 respectiAamente5
Arquitectura de Computadoras 7 Ejercicios de Memoria Cach
pgina 1
MEM%&'A (&'$C'(A)
"
irectorio cach Kona de a,macenamiento
MEM%&'A CAC*+
conjunto 0 048 050 / 100 018 1
conjunto 1
conjunto "
conjunto / 012 014 0
C0
C1
C"
C/
000 0 008 4 100 8 024 12 101 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
34 G
0
12 G
1
18 G
"
50 G
/
@A&'AH)E<
Dambin se a,macena (sin modificar) e, contenido de ,a pa,abra siguiente
pgina 1
MEM%&'A (&'$C'(A)
"
irectorio cach Kona de a,macenamiento
MEM%&'A CAC*+
conjunto 0 032 034 " 100 018 1
conjunto 1
conjunto "
conjunto / 012 014 0
C0
C1
C"
C/
000 0 008 4 010 8 024 12 032 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
34 G
0
12 G
1
G
"
G
/
@A&'AH)E<
)a M( no se modifica hasta que se reemp,aCa esta ,Bnea
10 00 0
pgina 1
MEM%&'A (&'$C'(A)
"
irectorio cach
MEM%&'A CAC*+
conjunto 0 101 034 " 100 018 1
conjunto 1
conjunto "
conjunto / 012 014 0
C0
C1
C"
C/
000 0 008 4 016 8 024 12 032 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
34 G
0
12 G
1
50 G
"
50 G
/
@A&'AH)E<
pgina 1
MEM%&'A (&'$C'(A)
"
irectorio cach Kona de a,macenamiento
MEM%&'A CAC*+
conjunto 0 101 034 " 100 018 1
conjunto 1
conjunto "
conjunto / 012 014 0
C0
C1
C"
C/
000 0 008 4 016 8 024 12 032 16 040 20 048 24 056 28
002 1 010 5 018 9 026 13 034 17 042 21 050 25 058 29
100 2 012 6 020 10 027 14 036 18 044 22 052 26 060 30
006 3 014 7 022 11 030 15 038 19 046 23 054 27 062 31
pgina 0 pgina " pgina /
"
34 G
0
12 G
1
18 G
"
G
/
@A&'AH)E<
8ea un sistema cach capa$ de almacenar * particiones& cada una de ellas de % b#tes( +a memoria principal es de "* ,b#tes( +a cach
inicialmente est ac2a( 8i es necesario reempla$ar alguna particin& sta se elige mediante el algoritmo +@U( El procesador emite la
siguiente secuencia de direcciones .2sicas (en notacin he4adecimal):
32B5& 32B8& 4A91& 4220& A727 # C0AA
1nalice cmo eoluciona el contenido de la $ona de almacenamiento # del directorio de la cach& haciendo un recuento de los .allos de l2nea
con cada algoritmo de ubicacin:
a) 9otalmente asociatia(
b) Airecta
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
1/
" (rincipa, Memoria ,a en s particione de Cantidad
partici!n por
pa,abras de
/
"
- (rincipa, Memoria ,a en s particione de Cantidad
1:
" = =
M M( M 6 :. Nb=tes 6 "
1:
b=tes MM E MM 6 1: bits
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
a) Con a,goritmo de ubicaci!n tota,mente asociatiAa5
pa,abras
2
"
partici!n por
pa,abras
/
"
-
conjunto por
s particione
"
"
- conjuntos
0
" cach = |
.
|

\
|
=
( ) pginas
1/
"
conjuntos
0
"
s particione
1/
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
EAo,uci!n de ,a cachF
Arquitectura de Computadoras ; Ejercicios de Memoria Cach
0
nmero de pgina (etiqueta)
" / 12
offset
E
conjunto 0
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
pgina 0 pgina 1 pgina "
1/
#1
...
...
conjunto 0
/ bits
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
1/bits
1/
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
MEM%&'A CAC*+
1/
1:"" (1622)
'nstrucci!n 1JF 32B5
Ea,,o de cach (inicia,mente est AacBa)5
0011 0010 1011 0 101
offset etiqueta
(directorio cach)
DC = 1622
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
MEM%&'A CAC*+
1/
1:"" (1623) (1622) 1:"/
'nstrucci!n "JF 32B8
Ea,,o de cach5
0011 0010 1011 1 000
offset etiqueta
(directorio cach)
DC = 1623
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
MEM%&'A CAC*+
1/
1:"" (2366) (1623) (1622) 1:"/ "/::
'nstrucci!n /JF 4A91
Ea,,o de cach5
0100 1010 1001 0 001
offset etiqueta
(directorio cach)
DC = 2366
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
MEM%&'A CAC*+
1/
1:"" (2096) (2366) (1623) (1622) 1:"/ "/:: "0;:
'nstrucci!n .JF 4220
Ea,,o de cach5
0100 0010 0010 0 000
offset etiqueta
(directorio cach)
DC = 2096
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
MEM%&'A CAC*+
1/
2/.7 (2096) (2366) (1623) (5348) 1:"/ "/:: "0;:
'nstrucci!n 2JF A727
Ea,,o de cach = reemp,aCo5
1010 0111 0010 0 111
offset etiqueta
(directorio cach)
DC = 5348
irectorio cach
partici!n 0 partici!n 1 partici!n " partici!n /
MEM%&'A CAC*+
1/
2/.7 (2096) (2366) (6129) (5348) :1"; "/:: "0;:
'nstrucci!n :JF C0AA
Ea,,o de cach = reemp,aCo5
1100 0000 1010 1 010
offset etiqueta
(directorio cach)
DC = 6129
b) Con a,goritmo de ubicaci!n directa5
pa,abras
2
"
partici!n por
pa,abras
/
"
-
conjunto por
s particione
0
"
- conjuntos
"
" cach = |
.
|

\
|
=
( ) pginas
11
"
conjuntos
"
"
s particione
1/
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
EAo,uci!n de ,a cachF
Arquitectura de Computadoras 10 Ejercicios de Memoria Cach
2 0
conjunto nmero de pgina (etiqueta)
" / 12 .
offset
E
conjunto 0
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 1
conjunto "
conjunto /
pgina 0 pgina 1 pgina "
11
#1
...
...
conjunto 0
conjunto 1
conjunto "
conjunto /
"
/ bits
"
$mero
de
conjunto
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
" bits 11bits
11
"
0011 0010 101 11 000
conjunto
C = 3
offset etiqueta
(directorio cach)
DC = 405
partici!n fBsicaF 1623
conjunto 00
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 01
conjunto 10
conjunto 11
"
MEM%&'A CAC*+
(1622) .02
.02
'nstrucci!n "JF 32B8
Ea,,o de cach5
(1623)
11
0100 1010 100 10 001
conjunto
C = 2
offset etiqueta
(directorio cach)
DC = 596
partici!n fBsicaF 2366
conjunto 00
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 01
conjunto 10
conjunto 11
"
MEM%&'A CAC*+
(2366) 2;:
.02
'nstrucci!n /JF 4A91
Ea,,o de cach = reemp,aCo5
(1623)
11
0100 0010 001 00 000
conjunto
C = 0
offset etiqueta
(directorio cach)
DC = 529
partici!n fBsicaF 2096
conjunto 00
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 01
conjunto 10
conjunto 11
"
MEM%&'A CAC*+
2";
(2366) 2;:
.02
'nstrucci!n .JF 4220
Ea,,o de cach5
(2096)
(1623)
11
1010 0111 001 00 111
conjunto
C = 0
offset etiqueta
(directorio cach)
DC = 1337
partici!n fBsicaF 5348
conjunto 00
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 01
conjunto 10
conjunto 11
"
MEM%&'A CAC*+
1//0
(2366) 2;:
.02
'nstrucci!n 2JF A727
Ea,,o de cach = reemp,aCo5
(5348)
(1623)
11
0011 0010 101 10 101
conjunto
C = 2
offset etiqueta
(directorio cach)
DC = 405
partici!n fBsicaF 1622
conjunto 00
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 01
conjunto 10
conjunto 11
"
MEM%&'A CAC*+
(1622) .02
'nstrucci!n 1JF 32B5
Ea,,o de cach (inicia,mente est AacBa)5
11
1100 0000 101 01 010
conjunto
C = 1
offset etiqueta
(directorio cach)
DC = 1541
partici!n fBsicaF 2366
conjunto 00
irectorio cach
partici!n 0
partici!n 0
partici!n 0
partici!n 0
conjunto 01
conjunto 10
conjunto 11
"
MEM%&'A CAC*+
1//0
12.1
(2366) 2;:
.02
'nstrucci!n :JF C0AA
Ea,,o de cach5
(6129)
(5348)
(1623)
11
8ea un computador cu#a memoria principal es de "*, palabras # su memoria cach es de de !, palabras con correspondencia directa #
tama3o de blo5ue de '
6
palabras( El tiempo de acceso a la memoria principal es de !)t # el tiempo de acceso a la memoria cach es de !t(
En dicho computador se ejecuta un programa cu#a estructura general se muestra en la siguiente .igura:
9iene dos bucles anidados& un bucle interior menor 5ue se ejecuta ') eces # un bucle e4terior 5ue se ejecuta !) eces( +as direcciones
mostradas se corresponden con el principio # .inal de cada uno de estos bucles& # el principio # .inal del programa( +as direcciones se
muestran en .ormato decimal (hexadecimal)& por ejemplo !"Bd (00A5h)(
9odas las direcciones de memoria de las di.erentes secciones& !6>''& '0>!"*& !"B>'0%& etc(& contienen instrucciones 5ue deben ejecutarse
en secuencia de l2nea recta(
a) Especi.i5ue el n:mero de bits de los campos en 5ue se descompone una direccin de memoria principal de este sistema(
b) Calcule cunto tiempo se tardar2a en ejecutar este programa si este computador no tuiera memoria cach(
c) 1nalice cuntos .allos se producen en la cach durante la ejecucin de este programa( (8ugerencia: di.erencie entre la primera ejecucin
del bucle e4terior # las nuee restantes()
d) 8i cada e$ 5ue se produce un .allo primero se muee el blo5ue completo de memoria principal a memoria cach # despus se lee el
dato de la cach& calcule cunto tiempo se tardar2a en ejecutar este programa en este computador(
a)
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
( ) ( ) conjuntos conjuntos de Cantidad
partici!n por
pa,abras "
-
directa) encia correspond ser (por conjunto por
partici!n 1
- conjuntos de Cantidad
10
"
0
0
' = =
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione
;
" (rincipa, Memoria en s particione de Cantidad
partici!n por
pa,abras "
- (rincipa, Memoria ,a en s particione de Cantidad
1:
"
0
= =
( ) pginas
:
"
conjuntos
/
"
s particione
;
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
b)
$O de ,ecturas fuera de, buc,e eGternoF ("/#10) P (1201#1"01) 6 /0:
$O de ,ecturas en e, buc,e internoF ( (".0#1:2) )-"0 6 1200
$O de ,ecturas en e, buc,e eGternoF ( (1:2#"/) P (Cantidad de ,ecturas en buc,e interno) P (1"01#".0) )-10 6 (1." P 1200 P ;:1)-10 6":0/0
$O tota, de ,ecturasF /0: P ":0/0 6"://:
Diempo tota, debido a ,as ,ecturas sin memoria cach "://:-10t 6 "://:0-t
Arquitectura de Computadoras 11 Ejercicios de Memoria Cach
17 (H0011)
23 (H0017)
165 (H00A5)
239 (H00EF)
1200 (H04B0)
1500 (H05DC)
/
10 0
nmero de pgina
(etiqueta)
: 0 12 ;
offset
E
conjunto 0
irectorio cach
partici!n 0
partici!n 0
partici!n 0
conjunto 1
conjunto "
/
#1
pgina 0 pgina 1 pgina "
:
#1
...
...
conjunto 0
conjunto 1
conjunto "
/
#1
0 bits
/
$mero
de
conjunto
MEM%&'A (&'$C'(A)
MEM%&'A CAC*+
/ bits : bits
:
/
conjunto
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
c)
'nstrucciones preAias a ,a entrada en e, buc,e eGterno
0011h 0000 00 | 00 0 | 001 00015 Fallo3 pues en e, conjunto 0 de ,a cach no nabBa nada5
.... .... .. | .. . | ... ....
001:h 0000 00 | 00 0 | 001 01105
Dota, de fa,,os en este segmento de, programaF 1
(rimera ejecuci!n de, buc,e eGterno5
0010h 0000 00 | 00 0 | 001 01115 Entrada en e, buc,e eGterno5
.... .... .. | .. . | ... ....
000Eh 0000 00 | 00 0 | 111 11115
0070h 0000 00 | 00 1 | 000 00005 Fallo3 pues en e, conjunto 1 de ,a cach no nabBa nada5
0071h 0000 00 | 00 1 | 000 00015
.... .... .. | .. . | ... ....
00A2h 0000 00 | 00 1 | 010 01015 Entrada en e, buc,e interno5
.... .... .. | .. . | ... ....
00EEh 0000 00 | 00 1 | 110 11115 Ein de, buc,e interno5
Ahora (si este buc,e interno an no se ha repetido "0 Aeces) se Aue,Ae a ,a direcci!n 00A2h5 Eijmonos que todas ,as direcciones de, buc,e
interno estn en e, conjunto 1 de ,a pgina 05 (or este motiAo3 durante ,a ejecuci!n de, buc,e interno no se producen fa,,os ni se proAocan
reemp,aCos5
Continuamos tras sa,ir de, buc,e internoF
00E0h 0000 00 | 00 1 | 111 00005
.... .... .. | .. . | ... ....
00EEh 0000 00 | 00 1 | 111 11115
0100h 0000 00 | 01 0 | 000 00005 Fallo3 pues en e, conjunto " de ,a cach no nabBa nada5
0101h 0000 00 | 01 0 | 000 00015
.... .... .. | .. . | ... ....
010Eh 0000 00 | 01 0 | 111 11115
0170h 0000 00 | 01 1 | 000 00005 Fallo3 pues en e, conjunto / de ,a cach no nabBa nada5
0171h 0000 00 | 01 1 | 000 00015
.... .... .. | .. . | ... ....
01EEh 0000 00 | 01 1 | 111 11115
0"00h 0000 00 | 10 0 | 000 00005 Fallo3 pues en e, conjunto . de ,a cach no nabBa nada5
0"01h 0000 00 | 10 0 | 000 00015
.... .... .. | .. . | ... ....
0"0Eh 0000 00 | 10 0 | 111 11115
0"70h 0000 00 | 10 1 | 000 00005 Fallo3 pues en e, conjunto 2 de ,a cach no nabBa nada5
0"71h 0000 00 | 10 1 | 000 00015
.... .... .. | .. . | ... ....
0"EEh 0000 00 | 10 1 | 111 11115
0/00h 0000 00 | 11 0 | 000 00005 Fallo3 pues en e, conjunto : de ,a cach no nabBa nada5
0/01h 0000 00 | 11 0 | 000 00015
.... .... .. | .. . | ... ....
0/0Eh 0000 00 | 11 0 | 111 11115
0/70h 0000 00 | 11 1 | 000 00005 Fallo3 pues en e, conjunto 0 de ,a cach no habBa nada5
0/71h 0000 00 | 11 1 | 000 00015
.... .... .. | .. . | ... ....
0/EEh 0000 00 | 11 1 | 111 11115
0.00h 0000 01 | 00 0 | 000 00005 Fallo y reemplazo3 pues e, conjunto 0 de ,a cach procedBa de ,a pgina 05
0.01h 0000 01 | 00 0 000 00015
.... .... .. | .. . | ... ....
0.0Eh 0000 01 | 00 0 | 111 11115
0.70h 0000 01 | 00 1 | 000 00005 Fallo y reemplazo3 pues e, conjunto 1 de ,a cach procedBa de ,a pgina 05
0.71h 0000 01 | 00 1 | 000 00015
.... .... .. | .. . | ... ....
0.H0h 0000 01 | 00 1 | 001 00005 Ein de, buc,e eGterno5
Dota, de fa,,os en este segmento de, programaF ;
<iguientes ejecuciones de, buc,e eGterno5
<e produce fa,,o = reemp,aCo a, pedir ,os conjuntos 0 = 1 de ,a pgina 03 pues son reemp,aCados a, fina, de, buc,e3 a, pedir sus conjuntos
toca=os de ,a pgina 15
$o se produce fa,,o a, pedir ,os conjuntos "3 /3 .3 23 : ni 0 de ,a pgina 03 pues =a estaban en ,a cach desde ,a primera pasada por e,
buc,eL = nunca son reemp,aCados5
<e produce fa,,o = reemp,aCo a, pedir ,os conjuntos 0 = 1 de ,a pgina 13 pues son reemp,aCados a, comienCo de, buc,e3 a, pedir sus
conjuntos toca=os de ,a pgina 05
Dota, de fa,,os en este segmento de, programaF .
Arquitectura de Computadoras 1" Ejercicios de Memoria Cach
Huc,e interno
'nstrucciones posteriores a ,a sa,ida de, buc,e eGterno5
0.H1h 0000 01 | 00 1 | 001 00015
.... .... .. | .. . | ... ....
0.EEh 0000 01 | 00 1 | 111 11115
0200h 0000 01 | 01 0 | 000 00005 Fallo y reemplazo3 pues e, conjunto " de ,a cach procedBa de ,a pgina 05
0201h 0000 01 | 01 0 | 000 00015
.... .... .. | .. . | ... ....
020Eh 0000 01 | 01 0 | 111 11115
0270h 0000 01 | 01 1 | 000 00005 Fallo y reemplazo3 pues e, conjunto / de ,a cach procedBa de ,a pgina 05
0271h 0000 01 | 01 1 | 000 00015
.... .... .. | .. . | ... ....
02Ch 0000 01 | 01 1 | 101 11005 Ein de, programa5
Total de fallos en este fragmento del programa: 2
Nmero total de fallosF 1 + 91 + 49 + 2 = 4
d) <egn nos especifican3 cuando se produce un fa,,o3 e, contenido de ,a direcci!n fa,,ida no se ,,eAa desde ,a memoria principa,
simu,taneamente a ,a cach = a ,a C(Q5 Da, como est dise4ado este sistema de cach3 cuando se produce e, fa,,o3 primero se ,,eAa e,
contenido de ,as 1"7 direcciones cu=a partici!n contiene a ,a direcci!n pedida desde ,a memoria principa, a ,a cach = despus se ,ee en ,a
cach ,a direcci!n de marras5 (or este motiAo3 siempre se ,ee en ,a cach3 tanto si no ha= fa,,o3 como si ,o ha=5 )a conc,usi!n es queF
!oste total = "Nmero total de d#recc#ones $%scadas& "T#empo de cac'(& + "Nmero total de fallos& "penal#zac#)n por fallo&
<iendoF
"penal#zac#)n por fallo& = 121*t = 12*t
!oste total = 2+,,+t + 4 12*t = ---+t
Arquitectura de Computadoras 1/ Ejercicios de Memoria Cach
Un computador tiene una memoria principal de "*, palabras de !" bits por palabra( 9ambin tiene una memoria cach totalmente
asociatia de ', palabras # 'B" palabras por blo5ue( +a memoria cach es 6 eces ms elo$ 5ue la memoria principal( Considrese 5ue la
memoria cach est inicialmente ac2a # 5ue cuando est llena& se reempla$a el blo5ue 5ue se ha#a utili$ado ms recientemente( 8upngase
5ue la UCP ejecuta un bucle B eces& en el 5ue accede a '0)! palabras& desde la direccin ) hasta la direccin '0))( 8e pide:
a) Especi.i5ue el n:mero de bits de los en 5ue se descompone una direccin de memoria principal de este sistema(
b) Calcule cunto tiempo se tardar2a en reali$ar estos accesos a memoria principal si este computador no tuiera memoria cach(
c) 1nalice la eolucin del directorio cach(
d) Calcule cuntos .allos se producen en la cach a la hora de reali$ar estos accesos a memoria principal(
e) 8i cada e$ 5ue se produce un .allo primero se muee el blo5ue completo de memoria principal a la memoria cach # despus se
lee el dato de la cach& calcule cunto tiempo tardar2a la UCP en reali$ar estos accesos a memoria(
8olucin:
a)
( )
partici!n por
pa,abras de Cantidad
-
conjunto por
s particione de Cantidad
- conjuntos de Cantidad ) cach ,a en pa,abras de (Cantidad cach =
( ) s particione
7
"
11
"
conjunto por
s particione de Cantidad
partici!n por
pa,abras
7
"
-
conjunto por
s particione de Cantidad
- ) asociatiAa nte comp,etame ser (por conjunto 1 "
11 0
' = = =
( )
partici!n por
pa,abras de Cantidad
- (rincipa, Memoria ,a en s particione de Cantidad ) (rincipa, Memoria ,a en pa,abras de (Cantidad M( =
( ) ( ) s particione "
7
"
1:
"
(rincipa, Memoria en s particione de Cantidad
partici!n por
pa,abras "
- (rincipa, Memoria en s particione de Cantidad "
7
7
1:
= = =
( ) pginas
7
"
conjuntos
0
"
s particione
7
"
cach ,a en conjuntos de Cantidad
(rincipa, Memoria ,a en s particione de Cantidad
(rincipa, Memoria ,a en pginas de Cantidad = = =
b) <i definimos t como e, tiempo de ,ectura en ,a cach3 e, tiempo de ,ectura en ,a memoria principa, es 0t5
E, tiempo tota, sin memoria cach esF
C
C
%)B0B B =

= buc,e de iteraci!n
buc,e de iteraci!n por
pa,abras "/01
pa,abra por
0
buc,e de s iteracione de Cantidad
buc,e de iteraci!n por
pa,abras de Cantidad
pa,abra por
,ectura de Diempo
cach <in
D
Arquitectura de Computadoras 1. Ejercicios de Memoria Cach
0
nmero de pgina (etiqueta)
0 7 12
offset
E
irectorio cach
pgina 0 pgina 1 pgina "
7
#1
...
...
C0
7 bits
MEM%&'A (&'$C'(A) MEM%&'A CAC*+
7 bits
7
C0
partici!n
1
partici!n
"
partici!n
/
partici!n
.
partici!n
2
partici!n
:
partici!n
0
partici!n
7
c)
'teraci!n 1JF
00 | 00 (roAoca fa,,o3 pues ,a cach est inicia,mente AacBa5 @a a ,a partici!n 0 con ,a etiqueta 005
01 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 015 @a a ,a partici!n 1 con ,a etiqueta 015
02 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 0"5 @a a ,a partici!n " con ,a etiqueta 0"5
03 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 0/5 @a a ,a partici!n / con ,a etiqueta 0/5
04 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 0.5 @a a ,a partici!n . con ,a etiqueta 0.5
05 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 025 @a a ,a partici!n 2 con ,a etiqueta 025
06 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 0:5 @a a ,a partici!n : con ,a etiqueta 0:5
07 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 005 @a a ,a partici!n 0 con ,a etiqueta 005
*asta aquB ha habido 7 fa,,os = ningn reemp,aCo5 (ero ahora acaba de ,,enarse ,a cach5 A partir de ahora3 en cada fa,,o habr reemp,aCo5
08 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 075
&eemp,aCa a ,a ms recientemente usada (,a que habBa en ,a partici!n 0 con ,a etiqueta 00)3 actua,iCando ,a etiqueta a 075
Estado actua, de, directorio cachF
Arquitectura de Computadoras 12 Ejercicios de Memoria Cach
00 | 01
.. | .. Aciertos
00 | FF
01 01
.. | .. Aciertos
01 FF

02 01
.. | .. Aciertos
02 FF

03 01
.. | .. Aciertos
03 FF

04 01
.. | .. Aciertos
04 FF

05 01
.. | .. Aciertos
05 FF

06 01
.. | .. Aciertos
06 FF

07 01
.. | .. Aciertos
07 FF

08 01
.. | .. Aciertos
07 FC

07 FC
E
irectorio cach
MEM%&'A CAC*+
7
C0
partici!n
0
00
partici!n
1
01
partici!n
"
02
partici!n
/
03
partici!n
.
04
partici!n
2
05
partici!n
:
06
partici!n
0
08
'teraci!n "JF
07 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 005
&eemp,aCa a ,a ms recientemente usada (,a que habBa en ,a partici!n : con ,a etiqueta 0:)3 actua,iCando ,a etiqueta a 005
Estado actua, de, directorio cachF
Arquitectura de Computadoras 1: Ejercicios de Memoria Cach
00 00
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n 0 de ,a cach5
00 FF

01 00
.. | .. Aciertos3 pues ,a etiqueta 01 est presente en ,a partici!n 1 de ,a cach5
01 FF

02 00
.. | .. Aciertos3 pues ,a etiqueta 0" est presente en ,a partici!n " de ,a cach5
02 FF

04 00
.. | .. Aciertos3 pues ,a etiqueta 0. est presente en ,a partici!n . de ,a cach5
04 FF

05 00
.. | .. Aciertos3 pues ,a etiqueta 02 est presente en ,a partici!n 2 de ,a cach5
05 FF

06 00
.. | .. Aciertos3 pues ,a etiqueta 0: est presente en ,a partici!n : de ,a cach5
06 FF

08 00
.. | .. Aciertos3 pues ,a etiqueta 07 est presente en ,a partici!n 0 de ,a cach5
08 FC

03 00
.. | .. Aciertos3 pues ,a etiqueta 0/ est presente en ,a partici!n / de ,a cach5
03 FF

07 01
.. | .. Aciertos
07 FF

08 FC
E
irectorio cach
MEM%&'A CAC*+
7
C0
partici!n
0
00
partici!n
1
01
partici!n
"
02
partici!n
/
03
partici!n
.
04
partici!n
2
05
partici!n
:
07
partici!n
0
08
'teraci!n /JF
06 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 0:5
&eemp,aCa a ,a ms recientemente usada (,a que habBa en ,a partici!n 2 con ,a etiqueta 02)3 actua,iCando ,a etiqueta a 0:5
Estado actua, de, directorio cachF
Arquitectura de Computadoras 10 Ejercicios de Memoria Cach
00 00
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n 0 de ,a cach5
00 FF

01 00
.. | .. Aciertos3 pues ,a etiqueta 01 est presente en ,a partici!n 1 de ,a cach5
01 FF

02 00
.. | .. Aciertos3 pues ,a etiqueta 0" est presente en ,a partici!n " de ,a cach5
02 FF

03 00
.. | .. Aciertos3 pues ,a etiqueta 0/ est presente en ,a partici!n / de ,a cach5
03 FF

04 00
.. | .. Aciertos3 pues ,a etiqueta 0. est presente en ,a partici!n . de ,a cach5
04 FF

05 00
.. | .. Aciertos3 pues ,a etiqueta 02 est presente en ,a partici!n 2 de ,a cach5
05 FF

06 01
.. | .. Aciertos
06 FF

07 01
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n : de ,a cach5
07 FF

08 00
.. | .. Aciertos3 pues ,a etiqueta 07 est presente en ,a partici!n 0 de ,a cach5
08 FC

08 FC
E
irectorio cach
MEM%&'A CAC*+
7
C0
partici!n
0
00
partici!n
1
01
partici!n
"
02
partici!n
/
03
partici!n
.
04
partici!n
2
06
partici!n
:
07
partici!n
0
08
'teraci!n .JF
05 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 025
&eemp,aCa a ,a ms recientemente usada (,a que habBa en ,a partici!n . con ,a etiqueta 0.)3 actua,iCando ,a etiqueta a 025
Estado actua, de, directorio cachF
Arquitectura de Computadoras 17 Ejercicios de Memoria Cach
00 00
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n 0 de ,a cach5
00 FF

01 00
.. | .. Aciertos3 pues ,a etiqueta 01 est presente en ,a partici!n 1 de ,a cach5
01 FF

02 00
.. | .. Aciertos3 pues ,a etiqueta 0" est presente en ,a partici!n " de ,a cach5
02 FF

03 00
.. | .. Aciertos3 pues ,a etiqueta 0/ est pesente en ,a partici!n / de ,a cach5
03 FF

04 00
.. | .. Aciertos3 pues ,a etiqueta 0. est presente en ,a partici!n . de ,a cach5
04 FF

05 01
.. | .. Aciertos
05 FF

06 00
.. | .. Aciertos3 pues ,a etiqueta 0: est presente en ,a partici!n 2 de ,a cach5
06 FF

07 01
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n : de ,a cach5
07 FF

08 00
.. | .. Aciertos3 pues ,a etiqueta 07 est presente en ,a partici!n 0 de ,a cach5
08 FC

08 FC
E
irectorio cach
MEM%&'A CAC*+
7
C0
partici!n
0
00
partici!n
1
01
partici!n
"
02
partici!n
/
03
partici!n
.
05
partici!n
2
06
partici!n
:
07
partici!n
0
08
'teraci!n 2JF
04 | 00 (roAoca fa,,o3 pues en ,a cach no ha= ninguna partici!n con ,a etiqueta 0.5
&eemp,aCa a ,a ms recientemente usada (,a que habBa en ,a partici!n / con ,a etiqueta 0/3 actua,iCando ,a etiqueta a 0.5
Estado actua, de, directorio cachF
d) *aciendo e, recuento de fa,,osF
; fa,,os en ,a primera pasada
1 fa,,o en ,a segunda pasada
1 fa,,o en ,a tercera pasada
1 fa,,o en ,a cuarta pasada
1 fa,,o en ,a quinta pasada
En tota, 1/ fa,,os5
e) <egn nos especifican3 cuando se produce un fa,,o3 e, contenido de ,a direcci!n fa,,ida no se ,,eAa desde ,a memoria principa,
simu,tneamente a ,a cach = a ,a C(Q5 Da, como est dise4ado este sistema de cach3 cuando se produce e, fa,,o3 primero se ,,eAa e,
contenido de ,as "2: direcciones cu=a partici!n contiene a ,a direcci!n pedida desde ,a memoria principa, a ,a cach = despus se ,ee en ,a
cach ,a direcci!n de marras5 (or este motiAo3 siempre se ,ee en ,a cach3 tanto si no ha= fa,,o3 como si ,o ha=5 )a conc,usi!n es queF
!oste total = "Nmero total de d#recc#ones $%scadas& "T#empo de cac'(& + "Nmero total de fallos& "penal#zac#)n por fallo&
<iendoF
"penal#zac#)n por fallo& = 2.+- t = 1-92t
!oste total = 2,*1. t + 1, 1-92t = ,4*1t
Arquitectura de Computadoras 1; Ejercicios de Memoria Cach
00 00
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n 0 de ,a cach5
00 FF

02 00
.. | .. Aciertos3 pues ,a etiqueta 0" est presente en ,a partici!n " de ,a cach5
02 FF

03 00
.. | .. Aciertos3 pues ,a etiqueta 0/ est presente en ,a partici!n / de ,a cach5
03 FF

04 01
.. | .. Aciertos
04 FF

05 00
.. | .. Aciertos3 pues ,a etiqueta 0. est presente en ,a partici!n . de ,a cach5
05 FF

06 00
.. | .. Aciertos3 pues ,a etiqueta 0: est presente en ,a partici!n 2 de ,a cach5
06 FF

07 01
.. | .. Aciertos3 pues ,a etiqueta 00 est presente en ,a partici!n : de ,a cach5
07 FF

08 00
.. | .. Aciertos3 pues ,a etiqueta 07 est presente en ,a partici!n 0 de ,a cach5
08 FC

08 FC
E
irectorio cach
MEM%&'A CAC*+
7
C0
partici!n
0
00
partici!n
1
01
partici!n
"
02
partici!n
/
04
partici!n
.
05
partici!n
2
06
partici!n
:
07
partici!n
0
08
01 00
.. | .. Aciertos3 pues ,a etiqueta 01 est presente en ,a partici!n 1 de ,a cach5
01 FF

You might also like