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

Fundamentos De Rede

Pesquisas Acadêmicas: Fundamentos De Rede. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  2/10/2013  •  574 Palavras (3 Páginas)  •  404 Visualizações

Página 1 de 3

Aula-tema 05: Arquitetura Pipeline

A técnica que divide a execução da instrução em diversas partes, sendo que cada parte de hardware manipula uma instrução, e todas estas podem ser executadas simultaneamente, é conhecida como pipeline. A técnica de pipelining pode ser aplicada em sistemas com um ou mais processadores, e tem sido a técnica de paralelismo mais utilizada para um melhor desempenho dos sistemas de computadores.

As etapas de execução de uma instrução seguem uma ordem:

• Busca da instrução;

• Identificação;

• Busca dos operandos;

• Execução da operação, e

• Armazenamento do resultado.

Podemos representar essas etapas de execução tal como se expõe na figura 1, em que cada subciclo é representado por um quadrado (MONTEIRO, 2007):

Em arquiteturas não pipelined, temos a seguinte sequência, em que uma nova instrução somente é executada após o término da primeira, ainda que não haja dependência entre elas, como ilustra a figura 2:

Este, porém, não é o método mais eficiente. Assim, otimizando tal processo e ganhando desempenho, encontramos o método pipeline na figura 3:

O conceito de processamento pipeline se assemelha muito a uma linha de montagem, em que uma tarefa é dividida em uma sequência de subtarefas, executadas em diferentes estágios, dentro da linha de produção.

Os 5 estágios da implementação do pipeline são:

1. Busca da instrução na memória (ou IF - Instruction Fetch);

2. Leitura dos registradores enquanto uma instrução é decodificada; o formato das instruções do MIPS permite que a leitura e a codificação ocorram simultaneamente (ou ID - Instruction Decoder);

3. Execução de uma operação ou cálculo de um endereço (ou EX - Execution);

4. Acesso a um operando de memória (ou MEM - Memory Access);

5. Escrita do resultado em um registrador (ou WB - Ciclo write-back).

Como o processamento de cada instrução passa, tipicamente, por etapas, alguns computadores usam pipelines para aumentar a quantidade de instruções processadas por unidade de tempo; nesses computadores, em determinado instante, diferentes instruções podem estar em diferentes etapas de seus processamentos (HENNESSY & PATTERSON, 2009).

Contudo, toda esta otimização pode gerar conflitos. Esses conflitos são definidos como riscos ou perigos do uso de Pipelining, que podem ser de três tipos (HENNESSY & PATTERSON, 2009):

• Perigos de dados: Quando há conflito por dependência de dados entre instruções, alguns estágios precisam ficar ociosos, desperdiçando tempo, como por exemplo, na instrução: (x = a + b) e (c = x + d).

• Perigos de controle: Quando há dependência de controle, em que a próxima instrução não é sequencial; ou seja, há desvios, como na instrução: se y = 1;

...

Baixar como (para membros premium)  txt (4.2 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com