1
resposta

[Dúvida] Não entendi o conceito de duplicar uma Pipeline

No momento 4:45, é dito "Por exemplo, quando o processador está buscando informações na memória RAM, a Unidade Lógica Aritmética não está fazendo nada, apenas aguardando." como exatamente isto é possível? seria entendível para o primeiro ciclo aonde nenhuma instrução foi mandada ainda, mas nos ciclos seguintes, a ULA deveria estar constantemente ocupada com a ultima instrução que foi decodificada, não?

E como exatamente duas instruções são buscadas, decodificadas e executadas? cada passo é repetido duas vezes? duas informação são buscadas de uma vez?

1 resposta

Oi, Pedro! Tudo bem?

A ideia de que a Unidade Lógica Aritmética (ULA) está "aguardando" enquanto o processador busca informações na memória RAM é porque, em um processador sem pipeline, cada etapa do ciclo de instrução (buscar, decodificar, executar) é feita uma após a outra. Ou seja, a ULA só começa a executar uma instrução depois que ela foi buscada e decodificada, e enquanto isso, a ULA fica em estado de espera.

No entanto, com a introdução do conceito de pipeline, essas etapas podem ser realizadas simultaneamente para diferentes instruções. Isso é semelhante ao exemplo da lavanderia mencionado no texto: enquanto uma remessa de roupas está sendo lavada, outra remessa pode estar sendo secada, otimizando o tempo e o uso dos recursos.

Quando falamos em duplicar uma Pipeline, estamos nos referindo a duplicar os componentes do processador que realizam essas etapas, permitindo que duas instruções sejam buscadas, decodificadas e executadas ao mesmo tempo. Isso é possível através da criação de um processador Dual-Core, que possui dois núcleos, cada um com sua própria ULA, Unidade de Controle e Registradores de Núcleo.

Nesse caso, cada núcleo pode buscar, decodificar e executar uma instrução simultaneamente, de forma independente do outro núcleo. Isso é como se tivéssemos duas linhas de montagem funcionando ao mesmo tempo, cada uma processando uma instrução diferente.

Portanto, não é que cada passo é repetido duas vezes, mas sim que cada passo é realizado duas vezes simultaneamente, cada um em um núcleo diferente. E sim, duas informações são buscadas de uma vez, cada uma em um núcleo diferente.

Espero ter ajudado! Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software