A respeito dos sistemas de computadores, responda:
Descreva o que é e forneça um exemplo de pipelining.

Passo 1

Beleza, mano! O enunciado pede pra gente falar sobre pipelining em sistemas de computadores: o que é e dar um exemplo. Isso cai na matéria de Organização de Computadores ou Arquitetura de CPUs. Pra resolver, a gente vai revisar primeiro como funciona o ciclo de instrução (busca, decodificação etc.) e aí mostrar como o pipelining “encurta” o tempo, depois colocar um exemplo prático de pipeline de 5 estágios.

Passo 2

Antes de falar de pipelining, é importante entender o ciclo básico de uma instrução na CPU. Ele costuma ter estas fases:
  1. IF (Instruction Fetch): buscar instrução na memória
  2. ID (Instruction Decode): decodificar e ler registradores
  3. EX (Execute): executar operação (soma, comparação…)
  4. MEM (Memory): ler ou escrever na memória, se precisar
  5. WB (Write Back): gravar resultado no registrador
Sem pipeline, cada instrução só começa a fase seguinte depois que a anterior termina completamente. Se cada fase leva tempo τ, rodar n instruções custa:
.

Passo 3

Agora entra o pipelining: é como uma linha de montagem numa fábrica. Enquanto a instrução 1 está na fase EX, a instrução 2 já pode estar na fase ID e a 3 na IF, tudo em paralelo! Assim, depois da “enchente” inicial, a cada ciclo de clock sai uma instrução concluída. O tempo total vira:
.
Ou seja, para muitas instruções, a gente chega perto de 1 instrução por τ, em vez de 1 a cada .

Passo 4

Exemplo prático de um pipeline de 5 estágios:
Suponha 3 instruções: I1, I2 e I3. Num quadro de ciclos fica assim:
Ciclo Estágio I1 Estágio I2 Estágio I3
1 IF
2 ID IF
3 EX ID IF
4 MEM EX ID
5 WB MEM EX
6 WB MEM
7 WB
Repare que, a partir do ciclo 3, tudo anda junto. Em 7 ciclos terminam 3 instruções, enquanto sem pipeline seriam 15 ciclos.

Resposta

Pipelining é a técnica de dividir o ciclo de instrução em estágios independentes e sobrepor a execução de várias instruções simultaneamente, como numa linha de montagem. Um exemplo clássico é o pipeline de 5 estágios (IF, ID, EX, MEM, WB), onde várias instruções se “empilham” e, após o preenchimento inicial, sai uma instrução completa a cada ciclo de clock.

Exercícios relacionados