Você está na página 1de 10

Pipeline

Uma tcnica de hardware


Trabalho de Arquitetura de Computadores
Prof. MSc. Lucilena de Lima


Jos Aparecido Bicharelli RA 180084
Renan Borilli Fernandes RA 199806
Vinicius do Nascimento Souza RA 199975
Pipeline: Otimizando o processamento
A instruo executada em fases
Ganho substancial de velocidade
utilizada para acelerar a velocidade de
operao da CPU
Instrues sem Pipeline
Execuo Sequencial

Considere a execuo sequencial de 4 instrues em
um processador onde cada instruo composta de 4
estgios, cada um consumindo um ciclo de clock:

Instruo 1
E1 E2 E3 E4






Instruo 2
E1 E2 E3 E4












Instruo 3
E1 E2 E3 E4

















Instruo 4
E1 E2 E3 E4



T T T T
Tempo total = 4T (16 ciclos de clock)
Pipeline de 4 estgios


Execuo em Paralelo (Pipeline)

Considere agora que as mesmas instrues sejam
executadas em um processador cuja execuo feita
em pipeline:

Instruo 1
E1 E2 E3 E4

Instruo 2
E1 E2 E3 E4

Instruo 3
E1 E2 E3 E4

Instruo 4
E1 E2 E3 E4


As mesmas 4 instrues
passam a ser executadas
em menos da metade do
tempo do processador
anterior.




1,75T (7 ciclos de clock)
Pipeline de 4 estgios



Para o exemplo anterior, a partir do 4 ciclo de clock, os
circuitos de cada um dos estgios passam a ser
permanentemente utilizados, cada ciclo por uma
instruo diferente.


Instruo 1
E1 E2 E3 E4
Instruo 5
E1 E2 E3 E4
Instruo 9
E1 E2 E3 E4
Instruo 13
E1 E2 E3 E4

Instruo 2
E1 E2 E3 E4
Instruo 6
E1 E2 E3 E4
Instruo 10
E1 E2 E3 E4
Instruo
E1 E2 E3

Instruo 3
E1 E2 E3 E4
Instruo 7
E1 E2 E3 E4
Instruo 11
E1 E2 E3 E4
Instru
E1 E2

Instruo 4
E1 E2 E3 E4
Instruo 8
E1 E2 E3 E4
Instruo 12 In
E1 E2 E3 E4 E1





Todos os 4 estgios esto em uso
Pipeline de 4 estgios

Naturalmente, para os circuitos de cada estgio de uma
mquina possam operar em pipeline, devem haver
registradores ou latches separando um estgio do outro:

Eles garantem que o resultado do estgio anterior,
necessrio operao do estgio atual, no ser alterado
pela prxima instruo ao usar o estgio anterior.
Ex.: Arquitetura para Execuo Sequencial

E1:
Busca de
Instruo
E2:
Decodificao
e Leitura dos
Registradores
E3: Operao
da ULA e do
Deslocador

E4: Escrita
nos
Registradores
Ex.: Arquitetura para Execuo em Pipeline

E1:
Busca de
Instruo
E2:
L1
Decodificao
L2
e Leitura dos
Registradores
E3: Operao
da ULA e do
Deslocador

E4:
L3 Escrita nos
Registradores

Exemplo clssico da Lavanderia


4 pessoas (A, B, C, D) possuem
sacolas de roupa para lavar, secar e
dobrar







A B C D

Lavar leva 30 minutos




Secar leva 40 minutos


Dobrar leva 20 minutos
Sem pipelining
6 Meia-noite 7 8 9
Tempo
11 10


30 40 20 30 40 20 30 40 20 30 40 20
T

a
A

r
e
B

f
a
C

s

D



Lavanderia sequencial leva 6 horas para terminar

Se eles conhecessem computao, quanto tempo levaria?
Com pipelining


30 40 40 40 40
40
T

a
A

r
e
B

f
a
C

s

D






Lavanderia com pipelining leva 3,5 horas
6 Meia-noite 7 8 9
Tempo
11 10
Caractersticas
Pipeline no melhora a latncia de uma nica tarefa, mas
melhora o throughput de todo trabalho

Tempo de execuo de uma tarefa o mesmo, com ou sem
pipelining

Ganho comea a existir a partir da segunda tarefa

Taxa de insero de tarefas limitada pela tarefa mais lenta

Pipeline explora o paralelismo entre as instrues em um fluxo
de instrues sequenciais

uma tcnica invisvel ao programador, ao contrrio de tcnicas
de multiprocessadores