Pipeline (ou pipelining) é uma tecnologia que visa uma maior velocidade de execução das instruções, paralelizando as etapas.
Para entender o mecanismo do pipeline, é preciso, em primeiro lugar, entender as fases de execução de uma instrução. As fases de execução de uma instrução para um processador que contém um pipeline "tradicional" de 5 andares são os seguintes:
LI : (Leitura da Instrução (em inglês FETCH instruction) a partir do cache ;
DI : Decodificação da Instrução (DECODE instruction) e busca das operações (Registro ou valores imediatos);
EX : Execução da Instrução (EXECUTE instruction) (se for « ADD », somamos, se for SUB, subtraímos, etc.);
MEM : Acesso à memória (MEMORY access), gravação na memória, se necessário ou carregamento a partir da memória;
ER : Gravação (Write instruction) do valor calculado nos registros.
As instruções são organizadas em uma fila de espera na memória e são carregadas uma após a outra.
Graças ao pipeline, o processamento das instruções precisa das cinco etapas anteriores. Na medida em que a ordem dessas etapas é invariável (LI, DI, EX, MEM e ER), é possível criar no processador certo número de circuitos específicos para cada uma dessas fases.
Pipeline versão tirinha
http://cstrips.bitstrips.com/ef741983254c9b5e8a3b58b5f145e60a.png