20/10/11

Pipeline

Introdução

Na  década  de  70  surgiu  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.

Exemplo


O que antes demorava 8horas demora agora com a utilização do pipeline cerca de 4horas, basicamente metade.


Divisão da Instrução em Estágios

Em condições ideais:
- O ganho devido ao pipeline é igual ao número de estágios do pipeline, logo, idealmente, um pipeline de 5 estágios é 5 vezes mais rápido que o processador não pipeline.


Pipeline


A imagem seguinte demonstra o funcionamento do processador sem e com Pipeline.




Síntese Final



Em suma, o pipeline melhora o desempenho por meio do 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