Sie sind auf Seite 1von 6

RESUMO P2 ORG2

Discuta os possveis 6 modos de endereamento: suas diferenas e seme!anas


R: Endereamento imediato " # ampos
O campo endereo contm o prprio operando direto e no o endereo onde ele est armazenado. Ele imediato
porque buscada na memria ao mesmo tempo em que a instruo buscada.
Vantagem: no tem acesso a memria para buscar operando.
Desvantagem: tamano restrito de bits para representar o campo operando! alem disso o valor no pode ser modi"icado.
Endereamento direto # $remos "ornecer o endereo da palavra de memria onde o operando est contido.
Vantagem: O valor do operando pode ser modi"icado% especi"ica variveis.
Desvantagens: Os valores dos endereos diretos so muito curtos para enderear todos os espaos de endereamento.
E&: 'e o campo endereo tem ( bits! podemos enderear )* celular de memria! podendo ter que realizar acessos
e&tras a +,.
Endereamento por re$istradores - $remos "ornecer o endereo da palavra de memria onde o operando est contido!
assim como no endereamento direto! a di"erena que o operando estar armazenado no registrador e no na +,.
.omo o numero de registradores bem menor que o numero de palavras de memria! o campo de endereamento
mais curto assim! "ormatos de instruo /s so utilizados para representar op dos registradores e op da +,.
,ara saber se o operando da instruo pertence a +p ou aos registradores! deve se por ) bit a 0 para identi"icar se
dese1a acessar a +, ou ) dos registradores.
Vantagem: Os acessos aos registradores so 0 rpidos que a 23,% .omo so pequenos em pequenos n4meros so
necessrios poucos bits para endere-los.
Desvantagem: .omplica muito a programao! isto ! a manipulao% e&istem poucos regs ento a capacidade
reduzida.
Endereamento indireto: O campo operando contem endereo para a memria principal que aponta para outro
endereo onde esta o valor.
Vantagem: implementao de ponteiros.
Desvantagens 5 ou 0 acessos a +,.
%nde&ado 'Endereamento por %nde&a(o) - 6tilizado quando e&ecutada operao sobre uma seq78ncia de
estruturas de dados armazenadas consecutivamente em memria.
.onsiste na utilizao de registradores de 9ndice.
O endereo possui 5 partes.
O numero de reg de 9ndices.
6ma etc.
Obs: O endereo do registrador onde esta o op : numero do registrador 0 cte de 9ndice.
Vantagens: implementao de vetores.
Desvantagens: acessos a +,% controlar o inc do deslocamento% tem ; acessos a +,.
Endereamento por pi!a - Organizando a maquina em pila poss9vel o +a&imo em reduo de comprimentos de
endereos! ou se1a! instruo em endereo algum s com cdigos de operao. 3ssociado a cada pila um reg ou
palavras de memria que contem o endereo do topo da pila <apontador de pila=.
Vantagem: implementao de camada de procedimento.
Desvantagem: acesso a +,! limitao 23+ da pila.
3ssociativo por con1unto.
Obs. >4mero de linas tem que ser pot8ncia de 5
,ossui ( entradas
>4mero de slots : 5;* ?( : 5@*
2ag : n4mero de blocos ? n4mero de slots : 5@5A?5@* : 5@5) : 5) bits p? tag
*onsidere um sistema de cac!+ associativa de mapeamento direto com 2,-. in!as ou sots/ e mem0ria
principa com 212234tes555
a= .omo esto organizadas as linas ou slots da cace.
b= 2odo programa pode ser armazenado na caceB E&plique.
c= Descreva o que acontece quando a pr&ima instruo buscada na cace.
d= Descreva o que acontece quando a pr&ima instruo no esta na cace! considerando que no e&istem slots
vazios.
a= >4mero de blocos : 5@C5 ? 5@( : 5@5D bits p? endereo
>4mero de blocos : 2zE n de slots -F 5 elevado a 5D : t&E 5 GG! tzE : 5 elevado a )A
V : ) bit! 2zE : )A e valor : )5D% total : )(* bits.
b= >o ! pois o programa usa mais de 5H(D palavras% 5 elevado a )( bEtes -F )*CD(
c= O microprograma vai veri"icar todas as entradas da cace! procurando por uma vlida que contena o bloco
com n4mero do endereo da instruo. >o acando! ela vai "azer uma requisio ao barramento para
buscar a palavra na memria <cace associativa=.
.omo 1 temos o endereo do bloco! calculamos o slot <resto da diviso do numero de blocos pelo numero
de slots= e por meio da cace veri"icamos se ele 1 esta ou no na memria cac8.
d= Iusca-se a instruo na +,! e o endereo vai ser armazenado no campo 2zE e o que est nesse campo
e&purgado.
Um sistema de cac!+ tem uma ta&a de acerto de 6,7/ um tempo de acesso de 8,ns 9uando o dado for
encontrado no cac!+ e um tempo de acesso de 8,,ns se o cac!+ n(o contiver o dado5 :ua ; o tempo de
acesso efetivo<
2 : c 0 <) - =m : JHK : H!J
c : )Hns m : )HHns
t : )H0 <) - H!J= & )HH : 5Hns
Uma cac!+ foi pro=etada para m computador de 216- 34tes de mem0ria5 O cac!+ tem -> sots e o 3oco tem 22
34tes5 :uantos 34tes a cac!e ocupar?/ tanto para cac!+ associativa 9uanto para o mapeamento direto<
+p .ace (L slots
>4mero de blocos : 5@*(?5@; : 5@;J ;J bits p? endereo
3ssociativo
V : ) bit n blocos: ;J bits valor : 5;* bits
.ada slot ) 0;J05;* : C)* bits
Ento cada 4k slots 2^2 x 2^10 = 316/8 = 161.792 bytes
Mapeaento !"#eto

$%y = 47 b"ts
&'e#o de blocos = $%y. &'e#o de slots 2^(9 = $%y . 2^2 x 2^10
$%y = 2^(9 /2^47 = 2^12.
)ada slot 1 * 47 * 2(6 = 304 b"ts
Ento+ 4k slots 2^2 x 2^10 x 304 = 1((.648 bytes.
Para que serve pipelining? Como funciona e quais os problemas podem ocorrer quando se
utiliza esse mtodo? Considere uma maquina onde 20% das instrues so desvios
condicionais e 0% so desvios de loop! "esvios condicionais podem ser previstos com #0% de
acerto e desvios de loop com $0%! % penalidade de adivin&ar errado de ' ciclos! (ual a
e)ci*ncia do uso de pipeline nessa maquina?
,"pel"n"n- . /a t.cn"ca pa#a a/enta# o desepen0o de / cop/tado#. )ons"ste na d"1"so de ta#e2as
e 1"sa a exec/3o de a"s "nst#/34es po# c"clo. E /a a5/"na co p"pel"ne6 ex"ste d"spos"t"1os
espec78cos 5/e #eal"%a6 cada / deles6 /a ta#e2a espec"8ca. 9 t"po de p"pel"ne a"s co/ . a d"1"so
e do"s est:-"os6 e 5/e d/#ante / eso c"clo6 / d"spos"t"1o b/sca /a "nst#/3o6 en5/anto o/t#o
exec/ta a "nst#/3o b/scada ante#"o#ente. Essa d"1"so de ta#e2as . excelente e a/enta
cons"de#a1elente o desepen0o da a5/"na se o p#o-#aa no t"1e# ce#tas depend;nc"as. 9 p#oblea
da t.cn"ca de p"pel"n"n- . 5/e os p#o-#aas poss/e depend;nc"as de "nst#/34es <des1"os e loops= e
dados6 o 5/e "poss"b"l"ta a obten3o do desepen0o Max"o dessa t.cn"ca s""la# a /a l"n0a de
onta-e. &/a a5/"na e 5/e 20> so des1"os cond"c"ona"s6 10> loops6 des1"os cond"c"ona"s pode
se# p#e1"stos co 60> de ace#to e des1"os de loop co 90> de ace#to6 tendo /a penal"dade de 4 c"clos6
te ? se 5/e a e8c";nc"a do p"pel"ne se#: dada po# +
Ep = 1<1 * b@,d@,a * b@,A@,a=B
Ep = <1 * 4@062@066 * 4@061@069=B
Ep = <1 * 0648 * 0636=B
Ep = 1/1684 = 06(4 = (4>6 ap#ox"adaente.
Para 9ue serve pipeinin$< *omo funciona e 9uais os pro3emas podem ocorrer 9uando se utii@a esse
m;todo<5 *onsidere uma ma9uina onde 2,7 das instruAes s(o desvios condicionais e 8,7 s(o desvios de
oop5 Desvios condicionais podem ser previstos com 6,7 de acerto e desvios de oop com 6,75 B penaidade de
adivin!ar errado ; de - cicos5 :ua a efici+ncia do uso de pipeine nessa ma9uina<
,d : pdc 0 pdl
,dc : 5;K
,dl : ;K
,adc : *HK
,adl : DHK b : * ciclos
<)-pd= 0 pdlMpdlN<)-padl=.<)0b=O 0 pdcMpadcN<)-padc=<)0b=O 0 dd'8#3dd)
,"pel"ne
,a#a acele#a# a a5/"na podeos const#/"# o 0a#dCa#e a pa#t"# de 1:#"as /n"dades 2/nc"ona"s e colocaDlas
n/a l"n0a de onta-e. $endo a .d"a de 1 "nst#/3o exec/tada po# c"clo.
!anos ao p"pel"ne
!es1"os "ncond"c"ona"s
!es1"os cond"c"ona"s
Eoops.
9 5/e podeos 2a%e# pa#a el0o#a# o desepen0oF
,odeos b/sca# a "nst#/3o ade5/ada e el""na# a penal"dade
>a "ormula substituir ,2 por ,P <probabilidade de adivinar errado=%
,reviso
Esttica # um tempo de compilao
DinQmica # um tempo de e&ecuo
Cormatos de instruAes
a= 'upona que e&iste um processador com )* registradores de C5 bits e uma memria principal de )*L bEtes.
,ro1ete! se poss9vel! opcode crescente <e&pandido= para permitir que todas as instruRes seguintes se1am
codi"icadas:
); instruRes com dois endereos e um n4mero de registrados
;HH instruRes com um endereo e um n4mero de registrador
;H instruRes sem endereo nem registradores.
b= Endereo 5H contendo (H. Endereo CH contendo ;H
Endereo (H contendo *H. Endereo ;H contendo AH.
Sesposta: a= Segistradores de C5bits
+emria de )*L
); instruRes com 5 endereos e um n4mero de registrador
;H instruRes sem endereos nem registradores
;HH instruRes com um endereo e um registrador
)* registradores : F ( bits para endereamento dos registradores
)*L -F )( bits para endereamento da memria.
i= ); instruRes com 5 endereos e ) registrador - F C5 # 5N)( # ( -FH bits dispon9veis - F opcode : H
ii= ;H instruRes sem endereos nem registradores - F C5 bits dispon9veis -F opcode : * bits
iii= ;HH instruRes com um endereo e um registrador -F C5 # )(-( -F)( bits dispon9veis -F opcode : J bits.
b=
Cormato de instruAes
'upona que e&iste um processador que pode buscar 5 instruRes por acesso de memria principal! que tem C5L bEtes.
2odos os registradores t8m *( bits e C5 so acess9veis para o programador. ,ro1ete se poss9vel! e&plique como! se no
poss9vel! 1usti"ique opcode crescentes <e&pandidos= para permitir que todas as instruRes seguintes se1am codi"icadas:
)= A inst com C operandos<dois em +, e ) em registrador
5= *( com C
C= C5 com 5
+,-FC5LbEtes # 5@); bEtes
C5regs c?*(bEtes <se busco 5 inst num regs! cada inst tem C5 bits=
>umero de regs : 5@);?5@* . 5@C : 5@)5 )5 bits p?ident m regs<numero de end=
)=
000..
110
End Me 12
b"ts
End
Me 12
b"ts
Ge- ( b"ts
1110000000...
1110111111
End Me 12
b"ts
Ge- (
b"ts
Ge- (
b"ts
5=
C=
Um cac!+ esta sendo pro=etada pD um computador com 2122 34tes de MP5 *ac!+ tem 2 sots e 3oco ; d 86
34tes5 *acue tanto pD cac!+ associativa 9uanto pD mapeamento direto o tota de 3its 9ue a cac!+ pode
arma@enar
Mapeamento associativo
>umero de blocos : 5@C5 ?5@( : 5 @5D blocos
)05D0)5D : );A bits por slot
>o total a cace armazena );A & 5@)) : C5);C* bits
Mapeamento Direto
>umero de bits do tag : numero total de blocos ? numero total de slots : numero de blocos mapeados por slots
: 5@5D ? 5@)) : 5@)A bits.
3 cace com 5@)) slots armazena 5@)).)(* : 5JJHHD
*op4 3ac> E s atualiza a +, com o bloco cu1o conte4do "oi modi"icado na cace no momento da substituio
Frite t!rou$! E toda escrita na cace corresponde T escrita na +,.
11110 00000 00000
11110 00000 01111
End e
12 b"ts
Ge- ( b"ts
H1D
1b"t
28b"ts = n
de blocos
)onte'do do
bloco
2^4.2^3 =
128 b"ts

Das könnte Ihnen auch gefallen