organizaÇÃo e arquitetura de computadores i aula 07: …max.santana/material/aoc-i/aula07... ·...
TRANSCRIPT
![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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/1.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/2.jpg)
• 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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/3.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/4.jpg)
• 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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/5.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/6.jpg)
• 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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/7.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/9.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/10.jpg)
• 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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/11.jpg)
• 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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/12.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/13.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/14.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/15.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/16.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/18.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/19.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/20.jpg)
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](https://reader033.vdocuments.com.br/reader033/viewer/2022043005/5f8b013f45d28f305a72e381/html5/thumbnails/21.jpg)