ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... ·...

21
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E FUNCIONAMENTO DE UMA CPU MULTICICLO Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação

Transcript of ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... ·...

Page 1: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I

AULA 07: ESTRUTURA E FUNCIONAMENTO DE

UMA CPU MULTICICLO

Prof. Max Santana Rolemberg Farias [email protected]

Colegiado de Engenharia de Computação

Page 2: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

• Vantagem: – Simplicidade de implementação

• Datapath e Controle

• Desvantagens: – Custo de hardware

• Duplicação de componentes devido a restrição de um ciclo para o processamento de instruções.

– Desempenho • Ciclo de clock longo para comportar instrução mais lenta • Instruções que demandam menos tempo deixam CPU ociosa • Implementação pouco eficiente

ANALISE DE UMA CPU MONOCICLO

Page 3: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

COMO MELHORAR O DESEMPENHO NA EXECUÇÃO DE VÁRIAS INSTRUÇÕES?

Page 4: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

• Dividir processamento de instrução em diferentes estágios.

• Executar cada estágio da CPU em um ciclo de relógio. – Ciclo pode ser menor

• Reutilizar componentes de hardware.

– Componente de hardware pode ser utilizado em estágios diferentes.

• Começar uma instrução antes da última instrução terminar.

– Diferentes instruções requerem quantidade de estágios diferentes. – Algumas instruções podem ser processadas em menos tempo – Tempo médio de processamento pode melhorar.

CPU MULTICICLO

COMO MELHORAR O DESEMPENHO

Page 5: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

COMO DIVIDIR O PROCESSAMENTO DE UMA INSTRUÇÃO EM ESTÁGIOS?

Page 6: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

• Estágios

– Busca

– Decodifica

– Opera com ALU

– Acesso a memória

– Escreve em registradores

PROCESSAMENTO EM ESTÁGIOS

Sempre executado

Depende da instrução, pode não ser executado.

Page 7: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

VISÃO ABSTRATA DE UMA CPU MONOCICLO

Duplicação de componentes para realizar soma

Memória diferentes para instruções e dados

Busca - Decodifica - Executa

Clock

Page 8: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

VISÃO ABSTRADA DE UMA CPU MULTICICLO

Memória única para instruções e dados Componente único para realizar operações

Page 9: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

VISÃO ABSTRADA DE UMA CPU MULTIMODO (MAIS REGISTRADORES)

Registradores auxiliares entre unidades funcionais maiores

Serão usados na mesma instrução, mais em ciclo de clock diferente

Page 10: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

• Um ciclo de clock pode acomodar uma das operações: – Acesso de memória – Acesso ao banco de registradores (2 leitura ou 1 escrita) – Operação da ALU.

• Unidades funcionais só podem ser utilizadas uma vez durante um ciclo: – ALU, memória, registradores auxiliares – Exceção: registradores auxiliares

• IR: Armazena instruções lida da memória • MDR: Armazena dado lido da memória • A e B: Armazenam operandos lidos do banco de registradores • ALUOut: Armazena saída da ALU

IMPLEMENTAÇÃO DE UMA CPU MULTICICLO

Page 11: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

• Dados de uma instrução que precisam ser utilizados em outra instrução são armazenados nas unidades visível ao programador.

– Memória

– Banco de registardores

– PC

• Dados necessários entre estágios (ciclo) diferentes de uma mesma instrução

IMPLEMENTAÇÃO DE UMA CPU MULTICICLO

Page 12: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

ESTRUTURA DE UMA CPU MONOCICLO

Page 13: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

UNIDADE DE PROCESSAMENTO DE UMA CPU MULTICICLO

Mais multiplexadores ou multiplexadores expandido

Page 14: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

ENTRADA DE ENDEREÇO DE UMA CPU MULTICICLO

Escolha entre endereço de instrução (PC) ou endereço de dado (ALUOut)

Page 15: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

PRIMEIRO OPERANDO DA ALU DE UMA CPU MULTICICLO

Escolha entre endereço de instrução (PC) ou operando de saída do banco de registrador (A)

Page 16: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

SEGUNDO OPERANDO DA ALU DE UMA CPU MULTICICLO

Escolha entre saída do banco de registradores (B), a constante 4 (para incrementar o PC), o sinal estendido de deslocamento de 2 bits (para BEQ) e o sinal simplesmente estendido (para LW/SW)

Page 17: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

SEGUNDO OPERANDO DA ALU DE UMA CPU MULTICICLO

Os registradores auxiliares não precisam de sinal de controle de escrita porque são atualizados em todo ciclo de clock

Page 18: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

UNIDADE DE PROCESSAMENTO COM CONTROLE UMA CPU MULTICICLO

Page 19: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

UNIDADE DE CONTROLE UMA CPU MULTICICLO (SINAIS DE 1 BIT)

Page 20: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E

UNIDADE DE CONTROLE UMA CPU MULTICICLO (SINAIS DE 2 BIT)

Page 21: ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: …max.santana/material/aoc-i/Aula07... · 2017-02-23 · ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 07: ESTRUTURA E