Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Processador Superescalar, Notas de estudo de Design de Sistemas Digitais

Processador Superescalara Processador Superescalara Processador Superescalara

Tipologia: Notas de estudo

2020

Compartilhado em 03/11/2020

karen-muller-12
karen-muller-12 🇧🇷

4.3

(13)

18 documentos

1 / 32

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Aula 12
Organização de Computadores
Processadores Paralelos - Superescalar
Profa. Débora Matos
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20

Pré-visualização parcial do texto

Baixe Processador Superescalar e outras Notas de estudo em PDF para Design de Sistemas Digitais, somente na Docsity!

Aula 12

Organização de Computadores

Processadores Paralelos - Superescalar Profa. Débora Matos

Contextualização de Paralelismo em nível de

instrução

Vamos considerar a possibilidade de despachar 2 instruções por ciclo. O que muda?

  1. O despacho de duas instruções por ciclo no MIPS exigirá a decodificação de 64 bits de instruções.

A primeira ideia por trás do paralelismo em nível de instrução é a adição de mais recursos de hardware. No entanto, verificaremos que uma série necessidades e restrições precisam ser observadas e controladas nestas arquiteturas. Exemplos:

  • (^) Processadores superescalares
  • (^) VLIW – Very Long Instruction Word
  • (^) Processadores com superpipelines

Contextualização de Paralelismo em nível de

instrução

Processadores superescalares

  • (^) Um processador superescalar utiliza múltiplos e independentes pipelines de instruções;
  • (^) Permite executar um número variado de instruções por ciclo de clock.
  • (^) Cada pipeline consiste de múltiplos estágios e pode lidar com múltiplas instruções ao mesmo tempo;
  • (^) Quando ocorrem dependências entre as instruções, o processador pode executá-las fora de ordem;

Processadores superescalares Modelo de arquitetura superescalar

Processadores superescalares No entanto, um processador superescalar precisa se preocupar com as seguintes situações:

  • (^) Dependência de dados
  • (^) Dependência procedural
  • (^) Conflitos de recursos
  • (^) Dependência de saída
  • Antidependência

Processadores superescalares No entanto, um processador superescalar precisa se preocupar com as seguintes situações:

  • (^) Dependência de dados
  • (^) Dependência procedural
  • (^) Conflitos de recursos
  • (^) Dependência de saída
  • Antidependência

Processadores superescalares Dependência de saída: Exemplo: I1: R3 <= R3 op R I2: R4 <= R3 + 1 I3: R3 <= R5 + 1 I4: R7 <= R3 op R

Processadores superescalares Antidependência: Exemplo: I1: R3 <= R3 op R I2: R4 <= R3 + 1 I3: R3 <= R5 + 1 I4: R7 <= R3 op R

Processadores superescalares Antidependência: Exemplo: I1: R3 <= R3 op R I2: R4 <= R3 + 1 I3: R3 <= R5 + 1 I4: R7 <= R3 op R A instrução I3 não pode concluir sua execução antes da instrução I2 ter obtido seus operandos. despacho da instrução I3 precisa ser congelado até que a instrução I2 tenha lido valor de R3.

Execuções fora de ordem

  • (^) A janela de instruções é uma solução para permitir a execução fora-de-ordem com conclusão fora-de-ordem;
  • (^) Sempre que uma instrução não apresenta dependências, o processador pode decodificá-la e colocá-la na janela de instruções.
  • (^) Quando houver uma unidade funcional livre, uma instrução da janela de instruções pode ser emitida para o estágio de execução.

Execução fora de ordem Banco de Registradores Cache de Instruções IF Janela de Instruções ALU branch store load Cache de dados Exemplo de Janela de Instruções Centralizada

...

Renomeação de Registradores Exemplo: I1: R3 <= R3 op R I2: R4 <= R3 + 1 I3: R3 <= R5 + 1 I4: R7 <= R3 op R São utilizados registradores internos escolhidos dinamicamente. Elimina antidependência e dependência de saída

  • (^) Arquiteturas superescalares retomaram as técnicas de previsão de desvio empregadas antes da arquitetura RISC;
  • (^) Processadores mais simples empregam previsões estáticas, enquanto processadores mais sofisticados usam previsão dinâmica, baseando-se em históricos de desvios. Previsão de Desvios