Fatores importantes no funcionamento eficiente da máquina de encanamento
Artigo: Fatores importantes no funcionamento eficiente da máquina de encanamento. Pesquise 861.000+ trabalhos acadêmicosPor: dudunerd • 9/9/2014 • Artigo • 729 Palavras (3 Páginas) • 318 Visualizações
Nas arquiteturas que utilizam pipeline de instruções, o processamento da instrução é decomposto em
estágios que possuem duração aproximadamente igual e podem ser executados de forma independente.
Desta forma, uma instrução tem sua execução iniciada antes que a instrução anterior a ela seja finalizada.
Nesta arquitetura, o ganho de desempenho da máquina se deve ao aumento do número de instruções que
podem ser executadas em uma unidade de tempo.
Um fator importante para o funcionamento eficiente de uma máquina com pipeline é assegurar um fluxo
constante de instruções nos estágios iniciais da pipeline. O principal impedimento a isso é a existência de
desvios condicionais. Existem várias soluções implementadas para resolver este problema.
A seguir, são descritas alguma implementações pipeline existentes:
Na Arquitetura CISC
Intel 486 implementa uma pipeline de 5 estágios:
Estágio de Busca: que compreende a busca da instrução
Decodificação 1: decodificação do código de operação e do modo de endereçamento
Decodificação 2: expande cada código de operação em sinais de controle para ULA e cálculo de
endereços, no caso de modos de endereçamentos mais complexos
Execução de instrução: execuções de operações pela ULA
Escrita de resultados: se necessário, atualiza registradores e códigos de condição.
Na arquitetura RISC
Os primeiros processadores RISC tinham uma taxa de execução de aproximadamente uma instrução
por ciclo de clock. Foram organizados em duas classes de processadores: com arquitetura
superescalar e com arquitetura superpipeline. Uma arquitetura superescalar essencialmente replica
cada um dos estágios da pipeline, possibilitando que duas ou mais instruções em um mesmo estágio
da pipeline possam ser processadas simultaneamente. Uma arquitetura superpipeline é um
refinamento da estrutura da pipeline, que usa maior número de estágios. São exemplos de
superescalares os PowerPC e de superpipelines os RS4000.
Em um MIPS R3000, a pipeline avança uma vez por ciclo de relógio. Todas as instruções seguem a
mesma seqüência de cinco estágios na pipeline:
Busca da instrução
Busca do operando fonte no banco de registradores
Operação da ULA ou geração de endereço de operando
Referência ao dado na memória
Armazenamento do resultado no banco de registradores.
A técnica de superpipeline explora o fato de que muitos dos estágios de uma pipeline desempenham
tarefas que requerem um tempo menor que a metade de um ciclo de relógio.
A pipeline do MIPS R4000 tem oito estágios, podendo estar executando até 8 instruções ao mesmo
tempo. A pipeline avança a uma taxa de dois estágios por ciclo de relógio.
Os ciclos são:
Primeira metade da busca de instrução
Segunda metade da busca de instrução
Busca de operandos em registradores
Execução da instrução
Primeira metade de cache de dados
Segunda metade de cache de dados
Verificação de rótulos
Escrita de resultados
1º.ciclo de clock
2º.ciclo de clock
3º.ciclo
...