Upload
internet
View
108
Download
0
Embed Size (px)
Citation preview
Organização de Computadoresrganização de Computadores
Melhorias de DesempenhoMelhorias de Desempenhocom com PipelinesPipelines
Capítulo 6 – Patterson & HennessyCapítulo 6 – Patterson & Hennessy
Prof. Fábio M. CostaInstituto de InformáticaUniversidade Federal de Goiás
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores2
Pipelining - Introdução Fatores que facilitam
– Todas as instruções com o mesmo tamanho– Poucos formatos de instruções– Operandos em memória aparecem apenas em loads e stores
Fatores que dificultam– Problemas estruturais: apenas uma memória– Problemas de controle: necessário considerar instruções de
desvio cuidadosamente– Problemas com os dados: uma instrução que depende da
instrução anterior
Exemplificar estas questões com um pipeline simples Considerar outras questões de projeto de pipelines em
processadores modernos– Tratamento de exceções– Melhoria de desempenho com execução fora de ordem, etc.
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores3
Pipelines – Idéia Geral
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores4
Estágios do pipeline do MIPS (simplificado)
1. Busca de instrução
2. Decodificação de instrução e busca de operandos em registradores
3. Execução (ALU)
4. Acesso à memória (leitura ou escrita)
5. Escrita de resultados (em registradores)
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores5
Pipeline de Instruções e Duração dos Ciclos de Relógio
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores6
Problemas com Desvios
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores7
Solução: Predição de Desvio (ou não)
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores8
Solução: Reordenação de Instruções
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores9
Dependências de Dados
Obs.: Instruções Tipo R
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores10
Dependências de dados envolvendo a memória
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores11
Caminho de Dados em Pipeline: Delimitação dos Estágios (partindo do caminho de dados monociclo)
Fig. 6.10
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores12
Execução de instruções em pipeline
Fig. 6.11
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores13
Versão em Pipeline do Caminho de Dados
Fig. 6.12
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores14
Execução da Instrução LW: Busca
Fig. 6.13a
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores15
Execução da Instrução LW: Decodificação e Leitura dos Registradores
Fig. 6.13b
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores16
Execução da Instrução LW: Execução
Fig. 6.14
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores17
Execução da Instrução LW: Acesso à Memória
Fig. 6.15a
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores18
Execução da Instrução LW: Escrita do Resultado no Registrador de Destino
Fig. 6.15b
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores19
Execução da Instrução SW: Execução
Fig. 6.16
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores20
Execução da Instrução SW: Acesso à Memória
Fig. 6.17a
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores21
Execução da Instrução SW: Escrita de Resultado
Fig. 6.17b
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores22
Algum problema com o Caminho de Dados para a Instrução LW???
Como passar o número do registrador onde ocorrerá a escrita do resultado (registrador de destino) para o último estágio do pipeline (estágio de escrita de resultado)?
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores23
Correção no Caminho de Dados para a Instrução LW
Fig. 6.18
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores24
Uso global do Caminho de Dados pela Instrução LW
Fig. 6.19
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores25
Visão do Pipeline na execução de múltiplas instruções
Fig. 6.21
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores26
Paralelismo entre os elementos funcionais do pipeline
Fig. 6.20
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores27
Execução de Instruções em Paralelo no Pipeline
Fig. 6.22a
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores28
Execução de Instruções em Paralelo no Pipeline
Fig. 6.22b
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores29
Execução de Instruções em Paralelo no Pipeline
Fig. 6.23a
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores30
Execução de Instruções em Paralelo no Pipeline
Fig. 6.23b
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores31
Execução de Instruções em Paralelo no Pipeline
Fig. 6.24a
Prof. Fábio M. Costa - Instituto de Informática - UFG Organização de Computadores32
Execução de Instruções em Paralelo no Pipeline
Fig. 6.24b