quarta-feira, 5 de janeiro de 2011

Pipeline

Na década de 70 surge uma nova técnica chamada pipeline, onde a execução das instruções é dividida em várias fases consecutivas e o processador é organizado em estágios correspondentes para execução dessas
instruções.

Pipeline é uma técnica de implementação de processadores que permite a sobreposição temporal de diversas fases de execução de instruções.

Em outras palavras, é uma técnica de projeto onde o hardware processa mais de uma instrução de cada vez sem esperar que uma instrução termine antes de começar a outra.

Clique para ampliar
Clique para ampliar

Os mesmos princípios podem ser aplicados aos processadores que executam suas tarefas em pipeline.

Tradicionalmente, as instruções do MIPS (Microprocessor without interlocked pipeline stages Microprocessador sem estágios interligados de pipeline) são executadas em até cinco passos:

Clique para ampliar

1) Busca Instrução na memória
2) Leitura dos registradores e decodificação das instruções
3) Execução de operação ou cálculo de endereço
4) Acesso a operando na memória
5) Escrita do resultado em registrador


Clique para ampliar


Em suma, o pipeline melhora o desempenho por meio dob aumento do throughput das instruções, ou seja, aumento o número de instruções executadas na unidade de tempo, e não pela diminuição do tempo de execução de uma instrução individual.

Speedup ideal é o número de estágios no pipeline.
Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro, ou a quantidade de dados processados em um determinado espaço de tempo.

Speedup potencial = número de estágios do pipeline.

Sem comentários:

Enviar um comentário