Você está na página 1de 2

Universidade Federal de Mato Grosso do Sul Curso de Anlise de Sistemas a Disciplina: Arquitetura de Computadores I Professor: Ricardo Santos Lista

de exerc cios 3
1. Com base na tabela a seguir, responda: IF 300ps 200ps ID 400ps 150ps EX 350ps 120ps MEM 500ps 190ps WB 100ps 140ps

(I) (II)

(a) Qual o tempo do ciclo de clock em um processador com e sem pipeline (monociclo)? e (b) Qual a latncia total de uma instruo lw em um processador com e sem pipeline (monoe e ca ciclo)? 2. Baseado na sequncia de instrues a seguir, responda: e co (I) lw $1, 40($6) add $6, $2, $2 sw $6, 50($1) lw $5, -16($5) sw $5, -16($5) add $5, $5, $5

(II)

(a) Indique os tipos de dependncias(verdadeira - de dados -, antidependncia, de sa e e da). (b) Suponha que no exista o forwarding no pipeline de execuo. Indique onde os conitos a ca ocorrem e adicione bolhas(instrues nop) para elimin-los. co a 3. Observe a tabela de tempos a seguir: Classe Load word Store word Formato R Branch Responda: (a) Qual o tempo do ciclo caso este grupo de instrues fossem implementadas no MIPS co monociclo? (b) Qual seria o tempo do ciclo caso este grupo de instrues fossem implementadas no MIPS co multiciclo pipeline? (c) Mostre de quanto a razo de ganho ou perda entre as duas abordagens anteriores caso e a fosse executadas, em sequncia e sem conitos, as instrues lw, add e sw. e co 4. Observe o seguinte segmento de cdigo em C: o a = b + e; c = b + f; Fetch 200ps 200ps 200ps 200ps Reg. Load 100ps 100ps 100ps 100ps ALU 200ps 200ps 200ps 200ps Data Access 200ps 200ps Reg. Write 100ps 100ps

Gerando o cdigo MIPS relativo ao segmento anterior assumindo todas as variveis em o a memria e endereveis com osets de $t0 temos: o ca lw lw add sw lw add sw $t1, $t2, $t3, $t3, $t4, $t5, $t5, 0($t0) 4($t0) $t1, $t2 12($t0) 8($t0) $t1, $t4 16($t0) # # # # # # # b e a a f c c <- mem <- mem = b + e -> mem <- mem = b + f -> mem

Identique os conitos no cdigo MIPS acima e reordene as instrues para evitar qualquer o co stall (bolha, pausa) no pipeline. 5. Para a sequncia de cdigos a seguir, informe se eles iro obrigatoriamente ter stalls, podero e o a a evitar stalls usando apenas forwarding ou podem executar diretamente sem ambos. (a) (b) lw $t0, 0($t0) add $t1, $t0, $t0 add $t1, $t0, $t0 addi $t2, $t0, 5 addi $t4, $t1, 5 addi addi addi addi addi $t1, $t2, $t3, $t3, $t5, $t0, $t0, $t0, $t0, $t0, 1 2 2 4 5

(c)

6. A partir da mquina de estados nitos bsica da unidade de controle do processador MIPS mula a ticiclo, indique quais alteraes (incluso de novos estados, incluso de novos sinais de controle, co a a contedo dos sinais de controle em cada novo estado) so necessrias para que a unidade de u a a controle tenha suporte ` instruo jr. a ca 7. Quais so as condies necessrias e sucientes que devem existir no pipeline do processador a co a MIPS para que a unidade de forwarding seja utilizada? 8. Baseando-se na tabela de latncias do exerc (1) e no trecho de cdigo apresentado no exerc e cio o cio (2), informe o tempo necessrio para execuo desse trecho de cdigo na via de dados monociclo, a ca o multiciclo e pipeline (caso ocorram stalls, considere as bolhas no pipeline) do MIPS. 9. Existe alguma diferena entre o CPI (Ciclos por Instruo) entre um processador monociclo e c ca um processador multiciclo pipeline? Explique.