Arquitetura de computadores
This presentation is the property of its rightful owner.
Sponsored Links
1 / 67

Arquitetura de computadores PowerPoint PPT Presentation


  • 49 Views
  • Uploaded on
  • Presentation posted in: General

Arquitetura de computadores. Prof. Edivaldo Serafim Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013 IFSP – Campus Capivari. Estrutura e Funcionamento da CPU. 22/05/2013. Tópicos abordados. Organização do processador; Organização de registradores; Ciclo de instrução;

Download Presentation

Arquitetura de computadores

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Arquitetura de computadores

Arquitetura de computadores

Prof. Edivaldo Serafim

Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013

IFSP – Campus Capivari


Estrutura e funcionamento da cpu

Estrutura e Funcionamento da CPU

22/05/2013


T picos abordados

Tópicos abordados

  • Organização do processador;

  • Organização de registradores;

  • Ciclo de instrução;

  • Pipeline de instruções;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o do processador

Estrutura e Funcionamento da CPU

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Organização do processador


Organiza o do processador1

ORGANIZAÇÃO DO PROCESSADOR

  • Para compreender o funcionamento da CPU vamos relembrar algumas de suas funções:

    • Busca de instrução: a CPU lê uma instrução da memória.

    • Interpretação de instrução: a instrução é decodificada para determinar a ação requerida.

    • Busca de dados: a execução de uma instrução pode requerer leitura de dados da memória ou de um módulo de E/S.

    • Processamento de dados: a execução de uma instrução pode requerer efetuar uma operação aritmética ou lógica sobre os dados.

    • Escrita de dados: os resultados da execução podem requerer escrever dados na memória ou em um módulo de E/S.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o do processador2

ORGANIZAÇÃO DO PROCESSADOR

  • Em cada um desses passos necessita armazenar informações, podendo ser:

    • Manter a posição de memória da última instrução, para saber onde obter a próxima instrução;

    • Precisa também armazenar instruções e dados temporariamente, enquanto uma instrução está sendo executada.

  • Portanto a CPU necessita de uma memória interna.

  • Essa memória compreende os registradores, que podemos ver em uma visão simplificada da CPU:

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o do processador3

ORGANIZAÇÃO DO PROCESSADOR

  • Visão simplificada da CPU:

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o do processador4

ORGANIZAÇÃO DO PROCESSADOR

  • Em uma visão mais detalhada da CPU, podemos ver:

    • Caminhos internos da CPU (barramento interno);

    • Detalhamento da ULA;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o do processador5

ORGANIZAÇÃO DO PROCESSADOR

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o do processador6

ORGANIZAÇÃO DO PROCESSADOR

  • Exemplo de diagrama de estados do processador MIPS

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Organiza o de registradores

Estrutura e Funcionamento da CPU

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Organização de registradores


Organiza o dos registradores

ORGANIZAÇÃO DOS REGISTRADORES

  • CPU precisa ter algum espaço de trabalho (armazenamento temporário);

  • Registradores são de alto nível na hierarquia de memoria:

    • Mais caros e mais rápidos.

  • Numero e função variam entre os projetos de processador;

  • Os registradores têm duas funções:

    • Registradores visíveis ao usuário:

      • Visíveis ao programador Assembly;

      • Minimizam acesso a memoria;

    • Registradores de controle de estado:

      • Visíveis ao SO e unidade de controle para controle do processador;

      • Unidade de controle utiliza para controlar a CPU.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores vis veis ao usu rio

Registradores visíveis ao usuário

  • Registradores visíveis ao usuário podem ser referenciados pela linguagem de máquina e podem ser:

    • De propósito geral;

    • De dados;

    • De endereços;

    • De códigos de condições.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores de prop sito geral

Registradores de propósito geral

  • Registradores de propósito geral podem conter operandos para quaisquer códigos de operação;

  • Mas, em alguns casos podem haver restrições como:

    • Registradores de números inteiros e de ponto flutuante;

  • Algumas vezes podem ser utilizados para endereçamento e dados.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores de endere os e dados

Registradores de endereços e dados

  • Muitas vezes registradores de propósito geral podem ser utilizados para armazenar dados e endereços;

  • Porém, geralmente existe separação entre:

    • Registradores para dados;

      • Exemplo: Acumulador;

    • Registradores para endereços.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores de c digos de condi o

Registradores de códigos de condição

  • São visíveis ao usuário apenas para leitura, ao contrário dos anteriores;

  • Indicam alguma condição da CPU ou da ULA:

    • Se uma conta produziu um resultado negativo, positivo, overflow ou zero.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores de controle de estado

Registradores de controle de estado

  • São usados para controlar a CPU;

  • Geralmente não são visíveis ao usuário;

  • Podem existir muitos tipos diferentes, mas geralmente possuem quatro tipos comuns:

    • PC;

    • IR;

    • MAR;

    • MBR;

    • PSW (processor status word).

  • São utilizados para transferência de dados entre CPU e memória.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores de controle de estado1

Registradores de controle de estado

  • PC:

    • Utilizado para armazenar o endereço da próxima instrução;

    • Incrementado automaticamente pela CPU após cada busca de instrução;

    • Podem ser alterados por instruções de salto ou de desvio;

  • A instrução após ser buscada é armazenada no IR:

    • Aqui, código de operação e referências a operandos são analisados;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Registradores de controle de estado2

Registradores de controle de estado

  • MAR:

    • Possuem os endereços de uma posição de memória;

  • MBR.

    • Possuem dados para serem utilizados pela ULA;

  • PSW – palavra de estado de programa:

    • É um banco de registradores que contém informações de estado como:

      • Sinal, “vai um”, overflow, habilitar/desabilitar IRQ, etc...

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Ciclo de instru es

Estrutura e Funcionamento da CPU

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Ciclo de instruções


Ciclo de instru es1

Ciclo de instruções

  • Relembrando:

  • O ciclo de instruções possui os seguintes subciclos:

    • Busca;

    • Execução;

    • Interrupção

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Ciclo de instru es2

Ciclo de instruções

  • Relembrando:

  • O ciclo de instruções possui os seguintes subciclos:

    • Busca;

    • Execução;

    • Interrupção

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Ciclo indireto

Ciclo indireto

  • Com mais detalhes, podemos acrescentar outros subciclos no ciclo de instrução;

  • Um deles é o ciclo indireto;

  • Depende de cálculo para determinar o endereço do operando;

  • Endereçamento indireto requer mais acessos à memória;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Fluxo de dados

Fluxo de dados

  • O fluxo de dados de uma CPU depende muito de sua arquitetura;

  • Em termos gerais podemos ter:

    • Fluxo de dados no ciclo de busca de instruções;

    • Fluxo de dados no ciclo indireto;

    • Fluxo de dados no ciclo de interrupções;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Fluxo de dados ciclo de busca

Fluxo de dados – Ciclo de busca

  • O ciclo de busca de instruções compreende:

    • O PC contém o valor da próxima instrução a ser buscada;

    • Esse endereço é movido para o MAR e colocado no barramento de endereços;

    • A unidade de controle requisita uma leitura na memória;

    • O resultado é colocado no barramento de dados e gravado no MBR, e então movido para IR;

    • O contador de programa é incrementado;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Fluxo de dados ciclo de busca1

Fluxo de dados – Ciclo de busca

  • O ciclo de busca de instruções:

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Fluxo de dados ciclo de execu o

Fluxo de dados – Ciclo de execução

  • Este ciclo pode ter várias formas de trabalhar, dependendo da instrução;

  • Pode envolver:

    • Transferência de dados entre registradores;

    • Transferência de dados entre a memória e a CPU;

    • Transferência de dados entre CPU e I/O;

    • Invocação da ULA.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Fluxo de dados ciclo de interrup o

Fluxo de dados – Ciclo de interrupção

  • Este ciclo é simples e previsível;

  • O conteúdo de PC deve ser salvo para que possa ser tratada a interrupção;

    • O conteúdo de PC deve ir para o MBR e depois escrito na memória;

    • A unidade de controle aponta um endereço para gravar o valor de PC atual, colocando-o no MAR;

    • O PC é carregado com o endereço da rotina de interrupção;

    • Começa um novo ciclo de Busca.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Fluxo de dados ciclo de interrup o1

Fluxo de dados – Ciclo de interrupção

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipeline de instru es

Estrutura e Funcionamento da CPU

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Pipeline de instruções


T cnicas para melhoramento da cpu

Técnicas para melhoramento da CPU

  • Conforme a tecnologia vai evoluindo, várias técnicas vão surgindo para melhorar o desempenho;

  • Exemplos disso:

    • Melhoramento interno da CPU tornando-a mais rápida;

    • Melhoramento da arquitetura interna da CPU, como:

      • Acréscimo de registradores;

      • Memória cache;

      • O uso de Pipeline.

    • Outras técnicas como uso de dois núcleos.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Estrat gia de pipeline

Estratégia de Pipeline

  • Pipeline (canalizar) é semelhante a uma linha de produção fabril;

  • O produto passa por vários estágios para concluir o processo;

  • Os vários estágios de produção são realizados simultaneamente;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Linha de produ o fabril

Linha de produção fabril

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Estrat gia de pipeline1

Estratégia de Pipeline

  • Pipeline de instruções funciona de forma análoga a linha de produção;

  • As entradas que que são aceitas ocorrem antes que entradas anteriores sejam completamente finalizadas;

  • Isso ocorre já que uma instrução passa por vários estágios dentro da CPU;

  • Quando um dado sai de determinado elemento da CPU, outro pode assumir seu lugar;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Estrat gia de pipeline2

Estratégia de Pipeline

I1

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Estrat gia de pipeline3

Estratégia de Pipeline

I2

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

I1


Estrat gia de pipeline4

Estratégia de Pipeline

I3

I1

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

I2


Estrat gia de pipeline5

Estratégia de Pipeline

I2

I4

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

I3

I1


Busca antecipada prefetch

Busca antecipada (prefetch)

  • Existem alguns ciclos do processador que a memória não está sendo acessada;

  • A informação dentro da ULA é um exemplo, já que a ULA normalmente não acessa memória principal;

  • A CPU pode então buscar a próxima instrução durante execução da instrução atual;

  • Isso Chama-se busca antecipada da instrução, ou prefetch;

  • Isso a acelera o processamento, mas normalmente não dobra o processamento;

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining

Pipelining

  • Vamos considerar a seguinte decomposição do processamento de uma instrução:

    • Busca de instrução (BI);

    • Decodificação da instrução (DI);

    • Cálculo de operandos (CO);

    • Busca de operandos (BO);

    • Execução da instrução (EI);

    • Escrita de operando (EO).

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining1

Pipelining

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining2

Pipelining

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining3

Pipelining

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining4

Pipelining

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining5

Pipelining

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining6

Pipelining

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Problemas com o pipelining

Problemas com o Pipelining

  • O uso de Pipeline introduz o conceito de paralelismo de instruções;

  • Esse paralelismo nem sempre é alcançado e a sequência do fluxo da Pipeline pode ser quebrado por vários motivos;

  • Quando o fluxo do Pipeline é quebrado, ocorrem bolhas de Pipeline, também chamadas de Hazards e podem ser:

    • Hazards de dados;

    • Hazards de recursos;

    • Hazards de controle.

  • Hazards proporcionam desperdício de ciclos e as vezes com instruções que serão descartadas.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Hazards de recursos

Hazards de recursos

  • Ocorre quando a CPU necessita acessar algum recurso em dois estágios do Pipeline:

    • Por exemplo um registrador ou a memória.

Leitura da memória

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Hazards de recursos1

Hazards de recursos

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Bolha de Pipeline


Hazards de dados

Hazards de dados

  • Ocorre quando a CPU necessita de um dado ainda em execução não completa :

    • Por exemplo dado na entrada depende do dado da saída.

Irá fornecer operando paraa instrução 2

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Esta busca depende dooperando que será escrito no tempo 6


Hazards de dados1

Hazards de Dados

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Bolha de Pipeline


Hazards de controle

Hazards de controle

  • Ocorre quando a CPU necessita de um desvio de instruções – também conhecido como Hazard de instrução.

    • Pipeline toma decisão errada sobre previsão de desvio;

    • Traz para o Pipelineinstruções que precisam ser descartadas subsequentemente.

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio1

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio2

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio3

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio4

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio5

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio6

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio7

Pipelining – com desvio

Desvio para Instrução 15

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio8

Pipelining – com desvio

Desvio para Instrução 15

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013

Instruções não úteis sãoretiradas da Pipeline


Pipelining com desvio9

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio10

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio11

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio12

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio13

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


Pipelining com desvio14

Pipelining – com desvio

Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013


  • Login