Buscar

Lista 4 - Pipelining Respondida

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Instituto Federal de Brasília - Campus Taguatinga
Superior em Computação 
Lista 4
Pipelining
Arquitetura de Computadores II - 1/2020
	
	
1) Um certo processador utilizava a implementação de ciclo único, onde qualquer instrução operava em 10 ns. Foi dada a ideia de atualizar este processador para uma implementação em pipeline. Para isso, o ciclo único de clock foi dividido em 5 estágios: IF (2 ns), ID (1,5 ns), EX (3,5 ns), MEM (2 ns) e WB (1 ns). Devido à implementação em pipeline é gerado um atraso do registrador de pipeline de 0,2 ns. 
a. Qual é o tempo de ciclo de clock do processador atualizado com o pipeline em 5 estágios?
Respostas:
Tempo do estágio de maior duração + atraso do registrador de pipeline = 3,5 + 0,2 = 3,7ns
b. Se houver 2 atrasos a cada 8 instruções, qual será o CPI da nova implementação? 
Respostas:
c. Qual o ganho de velocidade da implementação de pipeline em relação à implementação de ciclo único? Dica: Leve em consideração os resultados obtidos anteriormente. 
Respostas:
Tempo de execução: IC × CPI × ciclo de clock
d. Se o estágio EX deste pipeline fosse dividido em infinitas etapas, qual seria o ganho de velocidade em relação à implementação de ciclo único? 
Respostas:
Ganho sem considerar stalls 
Ganho considerando os stalls da 4.2 
Então como o estágio Ex foi dividida em infinitas etapas, não determina mais o tempo de ciclo de clock e sim a etapa de IF.
2) Uma implementação reduzida de hardware do clássico pipeline de cinco estágios pode usar o hardware do estágio EX para realizar uma comparação de instrução de desvio e não entregar realmente o PC-alvo do desvio para o estágio IF até o ciclo de clock no qual a instrução de desvio atinge o estágio MEM. Stalls de hazard de controle podem ser reduzidos resolvendo as instruções de desvio no ID, mas melhorar o desempenho em um aspecto pode reduzir o desempenho em outras circunstâncias. Escreva um pequeno trecho de código no qual calcular o desvio no estágio ID causa um hazard de dados, mesmo com o avanço de dados.
Repostas:
Levando em considerando a instrução fornecida para gravar o snippet de código para a ramificação no estágio de ID. E se a ramificação estiver recebendo dados anteriores, não ajuda a calcular a ramificação no estágio de ID. O loop ira depender de um valor de memória existente, quando a memória está sendo acessada usando uma lista vinculada em vez da matriz. O código do snippet é:
LOOP: LW R4, 4 (R5)
LW R5, 0 (R2)
BNE R5, R0, LOOP
3) De acordo com o fragmento de código e o esquema de processador pipeline multiciclo abaixo, responda as questões a seguir:
S.D F1, 0(R2)
ADD.D F1,F1,F2
MUL.D F2,F3,F4
L.D F2,0 (R2)
S.D F2,0(R2)
a. Analisando o código acima, quais tipos de hazards de dados podem acontecer? indique quais instruções e quais registradores poderão causar o hazard caso não exista nenhum hardware de adiantamento ou bypassing. 
b. Mostre a temporização dessa sequência de instruções sem nenhum hardware de adiantamento ou bypassing, mas supondo que uma leitura e uma escrita de registrador no mesmo ciclo de clock “adiantam” através do banco de registradores. Além disso, só é possível realizar uma única escrita no banco de registradores por vez e apenas um acesso à memória de dados ou de instruções ao mesmo tempo. 
c. Mostre a temporização dessa sequência de instruções com hardware completo de adiantamento ou bypassing. Indique em sua resposta quais foram os adiantamentos ou bypassing realizados. Além disso, só é possível realizar uma única escrita no banco de registradores por vez e apenas um acesso à memória de dados ou de instruções ao mesmo tempo.

Continue navegando