Baixe o app para aproveitar ainda mais
Prévia do material em texto
Exercícios – processamento superescalar 1 - A seguinte sequência de instruções lógicas e aritméticas será executada por um processador em pipeline de 5 estágios busca da instrução, leitura de registradores, execução, acesso à memória e escrita de registradores. A sequência, no entanto, apresenta conflito de dados. and R5, R4, R3 or R6, R4, R2 add R1, R2, R2 mul R3, R2, R1 sub R1, R1, R4 O pipeline foi implementado sem hardware adicional para a resolução de conflitos, mas os valores dos registradores podem ser escritos na primeira metade do ciclo e lidos na segunda metade. Sabendo-se que o primeiro operando das instruções é o registrador destino, avalie as afirmações a seguir. I. A troca de posição entre as intruções or e add soluciona o conflito de dados. II. A troca de posição entre as instruções add e and soluciona o conflito de dados. III, A inserção de uma operação nop (sem operação) entre add e mul soluciona o conflito de dados. É correto o que se afirma: A) I, apenas. B) II, apenas. C) I e III, apenas. D) II e III, apenas. E) I, II e III. 2 - O trecho de código em linguagem de montagem do MIPS64 a seguir faz a soma do conteúdo de dois vetores, armazenando o resultado em um terceiro vetor. loop: ld R1, A(R5) ;; R1 = MEM[A+R5] ld R2, B(R5) ;; R2 = MEM[B+R5] dadd R3, R1, R2 ;; R3 = R1 + R2 sd R3, C(R5) ;; MEM[C+R5] = R3 daddi R5, R5, - 1 ;; R5 = R5 - 1 bnez R5, loop ;; IF R5 <> 0 THEN PC=LOOP nop Assinale a alternativa que indica quantas dependências diretas, antidependências e dependências de saída respectivamente, podem ser encontradas nesse trecho de código, não considerando a mesma dependência mais de uma vez para o caso de laço: A) 3, 1, 1 B) 4, 3, 0 C) 2, 2, 1 D) 1, 2, 3 E) Nenhuma das respostas anteriores. 3 - Analise as seguintes afirmativas. I. O processador que apresenta o melhor desempenho é sempre aquele que tem a freqüência de relógio mais alta. II. A técnica de pipeline é utilizada para aumentar o desempenho em processadores. Dessa forma, o pipeline alivia o tempo de latência das instruções. III. A maneira mais simples de aumentar a taxa de acertos em memória cache é aumentar a sua capacidade. IV. Em arquiteturas superescalares, os efeitos das dependências e antidependências de dados são reduzidos na etapa de renomeação de registradores. A análise permite concluir que A) todas as afirmativas são verdadeiras. B) somente as afirmativas II e III são verdadeiras. C) somente as afirmativas III e IV são verdadeiras. D) somente as afirmativas II, III e IV são verdadeiras. E) nenhuma das afirmativas é verdadeira. 4- Analise as seguintes definições de pipeline de instruções simples, superescalar e superpipeline: I. Pipeline instruções simples: instruções individuais que são executadas através de um pipeline de estágios, de maneira que, enquanto uma instrução está sendo executada em um estágio, outra instrução está sendo executada em outro estágio do pipeline. II. Superescalar: um pipeline é construído por meio da replicação de recursos de execução, o que permite a execução paralela de instruções em pipelines paralelos. III. Superpipeline: permite a execução de duas tarefas em um único ciclo de clock do processador. Quais estão corretas? A) Apenas I. B) Apenas III. C) Apenas I e II. D) Apenas II e III. E) I, II e III. 5 - Com relação a processadores, considere as afirmativas a seguir. I. Arquiteturas superescalares podem executar instruções concorrentemente em pipelines diferentes. II. Superescalar implica em múltiplos pipelines que operam em paralelo. III. Paralelismo a nív el de instrução é equivalente a paralelismo de máquina. IV. Superpipeline significa que muitos estágios de pipeline executam tarefas que requerem menos do que metade de um ciclo de clock. Assinale a alternativa correta. a) Somente as afirmativas I e II são corretas. b) Somente as afirmativas I e IV são corretas. c) Somente as afirmativas III e IV são corretas. d) Somente as afirmativas I, II e III são corretas. e) Somente as afirmativas I, II e IV são corretas. 1. (POSCOMP 2003 - 22) Para que serve a segmentação de um processador (pipelining )? a) Permitir a execução de mais de uma instrução por ciclo de relógio b) Aumentar a velocidade do relógio c) Simplificar o conjunto de instruções d) Reduzir o número de instruções estáticas nos programas e) Simplificar a implementação do processador 2. (POSCOMP 2004 - 30) Ao segmentar um processador, trans formando-o num pipeline, obtém-se: a) Redução no número de ciclos necessários para executar uma instrução b) Redução no número de ciclos necessários para executar um programa c) Redução no número de ciclos necessários para tratar uma exceção d) Redução no número de ciclos necessários para tratar uma interrupção e) O circuito do processador fica mais simples 3. (POSCOMP 2005 - 21) Considere uma CPU usando uma estrutura pipeline com 5 estágios (IF, ID, EX, MEM, WB) e com memórias de dados e de instruções separadas , sem mecanismo de data forwarding, escrita no banc o de registradores na borda de subida do relógio e leitura na borda de descida do relógio e o conjunto de instruções a seguir: I1: lw $2, 100($5) I2: add $1, $2, $3 I3: sub $3, $2, $1 I4: sw $2, 50($1) I5: add $2, $3, $3 I6: sub $2, $2, $4 •Quantos cic los de relógio são gastos para a execução deste código? a) 30 b) 17 c) 16 d) 11 e) 10 4. (POSCOMP 2014, Questão 45) Sobre pipelines, assinale a alternativa correta. a) Cada estágio do pipeline possui seu próprio tempo de duração b) Um pipeline precisa de registradores para armazenar dados entre estágios c) Dependências de dados irão paralisar o pipeline d) O pipeline é paralisado ao executar uma instrução de desvio e) O tempo de leitura de uma instrução é maior que o tempo de execução 5. (POSCOMP 2008 - 54) Um processador tem cinco estágios de pipeline. Suponha que cada uma das etapas do processador (busca, decodificação, execução, leitura ou escrita de dados em memória e escrita em registrador) seja executada em 5ns. O tempo total para que 5 instruções sejam executadas em pipeline, supondo que não haja dependência de dados entre as instruções é: a) 15ns b) 25ns c) 30ns d) 45ns e) 50ns
Compartilhar