TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Arquitetura de computadores

Por:   •  6/3/2018  •  Exam  •  927 Palavras (4 Páginas)  •  332 Visualizações

Página 1 de 4

1-Quando um designer de processadores considera um possível melhoramento para o caminho de dados do processador, a decisão usualmente depende do trade-off entre custo/desempenho. Nos três problemas que seguem, assuma que iniciamos com o caminho de dados da figura 1, onde os blocos I-Mem, Add, Mux, ALU, Regs, DMem e controle tem latências de 400 ps, 100 ps, 30 ps, 120 ps, 200 ps, 350 ps e 100 ps, respectivamente, e custam 1000, 30, 10, 100, 200, 2000, e 500 respectivamente. Considere a adição de um multiplicador à ALU. O multiplicador irá adicionar 300 ps a latência da ALU e 600 ao custo da ALU. O resultado será uma redução de 5% de instruções executadas, visto que não será mais necessário emular a instrução MUL.

1- T. inst.=400+200+30+120+350+30=1130ps

custo=1000+200+500+30+30+30+10+10+10+1000+2000=3840.

custo=3840+600=4440.   T.inst=1130+300=1430

  1. Qual é o tempo do ciclo de clock com e sem esta melhoria?

a-antigo/novo= 1130/0.95*1430=0,83.

b) Qual será o speedup alcançado por esta melhoria?

b-speedup=1/0,83=1,20.

c)Compare a taxa entro o custo e desempenho com e sem esta melhoria.

c-custo desempenho sem melhoria  3820/1130=3,44

custo desempenho com melhoria 4490/1430=3,13

2- Assuma que não existem paradas do pipeline e o percentual de instruções executadas conforme a tabela abaixo. Qual o percentual de tempo que a memória de dados é usada?

2-35%

3-Considere o tempo de execução de cada estágio do pipeline conforme a tabela abaixo.

[pic 1]

Também considere que as instruções executadas pelo processador possuem os seguintes percentuais:

[pic 2]

  1. Qual é o tempo do ciclo de clock de um processador com pipeline e em outro sem pipeline?

a-ciclo de clock=250+350+150+300+200=1250ps

com pipeline-T. ciclo=350ps

  1. Qual é o tempo total de uma instrução LW em um processador com pipeline e em outro sem pipeline?

execução lwi sem pipeline.250+350+150+300+200=1250ps.

execução lw, com pipeline:nº estagios* t. ciclos clok=5*350=1750ps.

  1. Se nós dividirmos um estágio do caminho de dados do pipeline em dois novos estágios com a metade do tempo de execução do estágio original, qual seria o estágio que deveria ser dividido e qual seria o novo tempo do ciclo de clock do processador?

Dividindo ID=350ps/2=175ps {sem pipeline:1250ps.

                                      {com pipeline: 350ps.

d) Assuma que não existem paradas ou hazards, qual é a taxa (percentual) de utilização da memória de dados?

lw+sw=20%+15%=35%

lw+alu=45%+20%=65%

4. Neste exercícios vamos examinar o efeito da dependência de dados na execução do pipeline básico de 5 estágios (fetch, decodificação, execução, memória e write-back). para isto vamos usar a seguinte sequência de instruções:

or r1, r2, r3

or r2, r1, r4

or r1, r1, r2

Considere os seguintes tempos para o ciclo de clock conforme as opções do mecanismo de forwarding:

[pic 3]

  1. Indique as dependências e o seu tipo:

é so ligar os repetidos da linha 2 e 3 para a primeira.

  1. Assuma que não é utilizado o forwarding neste processador. Indique os hazards e adicione instruções nop para eliminá-los.

1- or r1,r2,r3-------2- nop-----------3- nop---------4- or r2,r1,r4---------5- nop------6- nop---------7-or r1,r1,r2

  1. Assuma que o processador possui encaminhamento completo. Indique os hazards e adicione instruções nop para eliminá-los.

nao possui hazards

  1. Qual é o tempo total de execução desta sequência de instruções sem forwarding e com forwarding completo? Qual o speedup alcançado pela adição do forwarding completo.

sem fowarding=7+4=11 ciclos ---> 11*250=2750ps.

com fowarding=3+4=7 ciclos --->7*300=2100ps.

speedup=2100/2750=0,76.

com fowarding completo tempos 24% a mais no desempenho.

  1. Adicione nop neste código para eliminar os hazards para um pipeline com forwarding alu-alu (não existe forwarding do estágio de memória para o estágio de execução).

  1. Qual é o tempo total de execução desta sequência de instruções com forwarding alu-alu? Qual o speedup sobre o pipeline sem forwarding?

com fowarding alu-alu=5+4=9ciclos.

t. exec=9*290=2610ps

7. Quais os ganhos obtidos com a utilização do pipeline?

Ganho em transporte.

8. Quais os principais desafios para a implementação de uma cpu com pipeline?

Hazards

9. O que são hazards de dados? Apresente um código que possua hazards de dados.

Hazards de Dados acontecem quando uma instrução depende no resultado de uma instrução anterior de modo que a primeira instrução ainda não computou esse resultado.exemplo:

...

Baixar como (para membros premium)  txt (5.8 Kb)   pdf (112.3 Kb)   docx (30 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no TrabalhosGratuitos.com