Como o processamento de cada instrução passa, tipicamente, por etapas, alguns computadores usam pipelines para aumentar a quantidade de instruções processadas por unidade de tempo; nesses computadores, em determinado instante, diferentes instruções podem estar em diferentes etapas de seus processamentos.
- Certo Errado
Pipeline é uma técnica de hardware que permite que a CPU realize a busca de uma ou mais instruções além da próxima a ser executada. Estas instruções são colocadas em uma fila de memória dentro do processador (CPU) onde aguardam o momento de serem executadas.
A técnica de pipeline é utilizada para acelerar a velocidade de operação da CPU, uma vez que a próxima instrução a ser executada está normalmente armazenada dentro da CPU e não precisa ser buscada da memória, normalmente muito mais lenta que a CPU.
--------------------------
A técnica de pipeline é semelhante a uma linha de produção de fábrica. Cada instrução de um microprocessador passa por diversas fases até sua execução. Estas fases podem ser:
- Decodificação
- Acesso memória ou registradores
- Processamento aritmético
Se conseguirmos separar todas estas fases de forma independente, e separar cada fase por ciclo de relógio teríamos (neste exemplo) 3 ciclos por instrução. Se usarmos uma técnica de pipeline poderíamos colocar 3 instruções ao mesmo tempo no microprocessador (cada uma numa fase distinta) e termos 3 instruções em 3 ciclos (1 instrução por ciclo idealmente). Outros problemas advem desta técnica, como desvios (como saber as próximas instruções), e dependência de instruções (a próxima depende da anterior). Na prática todos os microprocessadores modernos utilizam-se de várias (dezenas) fases no processamento para usufruir de clocks maiores (quanto menor a fase, mais rápido pode ser o ciclo).
Nenhum comentário:
Postar um comentário