Buscar

Exercícios sobre pipeline e superescalar Arquitetura de Computadores 2

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

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

Continue navegando