MIPS - Pipe Line

1211 palavras 5 páginas
PIPELINE

É uma técnica de implementação que visa maximizar a utilização dos diferentes recursos de HW

Pipeline permite que várias instruções sejam processadas simultaneamente com cada parte do HW atuando numa instrução distinta

Aumento do número de estágios do pipeline aumenta o desempenho

Estágios de um Pipeline:
IF (Instruction Fetch) : Busca instrução
ID (Instruction Decode): Decodifica instrução e lê registradores
EX (EXecute operation) : Calcula dados ou endereços
MEM (Access MEMory operand): Acessa operando na memória
WB (Write result Back to register): Escreve resultado no registrador

MIPS projetado para pipeline:
• Todas as instruções são de 32 bits, mais fácil de buscar e decodificar em um ciclo
• Poucas instruções e instruções regulares, permite decodificação e leitura de registradores em um estágio
• Endereçamento do Load/store : Permite cálculo de endereço no terceiro estágio e acesso no quarto estágio

Melhora de desempenho por utilizar pipeline:
• Estágios com a mesma duração
• Instruções independentes de resultados calculados em instrução anterior
• Execução sequencial das instruções

Conflitos : Situações que evitam que uma nova instrução seja iniciada no próximo ciclo
• Estruturais: Recurso necessário para execução de uma instrução está ocupado, por exemplo, 2 instruções tentam acessar a memória no mesmo ciclo. Solução é replicar recurso.

• Dados : Dependência de dados entre instruções, uma instrução depende de um dado gerado por uma instrução anterior. o Soluções em software (compilador/montador) : Inserção de NOPs e Re-arrumação de código. o Soluções em hardware : Método de Curto-circuito (Forwarding), Usa o resultado desejado assim que é computado; Inserção de retardos (stalls).
Como Implementar Forwarding?
• Idéia é acrescentar HW com uma lógica capaz de detectar conflitos de dados e controlar unidade de processamento para realizar o forwarding
• Deve-se acrescentar mais conexões para permitir que

Relacionados

  • A evolução dos processadores
    3824 palavras | 16 páginas
  • Intel vs amd
    4690 palavras | 19 páginas
  • Evolução dos processadores multicore
    4687 palavras | 19 páginas
  • Arquiteturas de computador
    4761 palavras | 20 páginas
  • 444250112
    222581 palavras | 891 páginas
  • Virtualização
    13742 palavras | 55 páginas
  • Evans
    158528 palavras | 635 páginas
  • Guia de instalação do debian gnu/linux official
    52530 palavras | 211 páginas
  • Relação publica
    36519 palavras | 147 páginas
  • linux
    16606 palavras | 67 páginas