Você está na página 1de 55

Arquitetura de Computadores

Professor:
Vilson Heck Junior
(Material: Douglas Juliani)
Agenda

• Conceitos
• Componentes
• Funcionamento ou tarefas
• Otimização e desempenho
Processador Conceitos

• Componente de Hardware que executa um


fluxo de instruções em linguagem de máquina
• Busca as instruções na memória e as executa
• Existem processadores com diferentes
arquiteturas
• Possuem registradores internos para
armazenar variáveis importantes e resultados
temporários
Processador Instruções

Tratam-se de um conjunto limitado de operações


bem definidas existentes na CPU utilizando-se de
códigos numéricos;

SOMA a b
Obs: o comprimento da instrução depende da
arquitetura do processador. Ex: um processador de
32 bits manipula dados de 32 bits.
Processador Componentes

- Unidade de busca de instrução: carrega as


instruções na memória de alta velocidade
denominada registradores de instruções, para que
o processador possa executá-la rapidamente;

- Unidade de decodificação de instrução:


interpreta a instrução e passa à unidade de
execução;
Processador Componentes

-Unidade lógica e aritmética – ULA (ALU –


Arithmetic and Logic Unit)
que executa operações básicas de aritmética e
lógica;

-Interface de barramento: permite que o


processador interaja com a memória e com
outros dispositivos do sistema;
Processador Componentes

- Cache: memória de alta velocidade;

- Registradores: memórias de altas velocidades


que guardam dados de uso imediato do
processador.
Processador Componentes

ULA

Unidade de busca /
Registradores
decodificação

Cache de Cache de
instrução L1 dados L1

Cache L2

Interface de Barramento
Processador Tarefas
Processador Tarefas
Processador Tarefas
Processador Tarefas
Processador Tarefas

Ex:
– Linguagem de alto nível
A = A + B;
– Linguagem de maquina
Carregue um registrador com o conteúdo da posição
de memória A;
Adicionar o conteúdo da posição de memória B ao
registrador;
Armazenar o conteúdo do registrador na posição de
memória A
Processador Tarefas
Processador Tarefas

•A execução de uma instrução pode requerer leitura de dados


da memória ou de um modulo de entrada e saída

•Ex:
•Carregue um registrador com o conteúdo da posição de
memória A;
•Adicionar o conteúdo da posição de memória B ao
registrador;
Processador Tarefas
Processador Tarefas

•A execução de uma instrução pode requerer


efetuar operações aritméticas ou lógicas

•Etapa realizada pela ULA


Processador Tarefas

•Circuito lógico combinacional que realiza operações


booleanas

•Os dados para essas execuções devem estar nos


registradores da CPU

• Depois de calculado ela armazena o resultado


nesses registradores
Processador Tarefas

Operadores aritméticos e sua ordem de prioridade


Operador Tipo Operação Prioridade
+ Binário Adição 4
- Binário Subtração 4
* Binário Multiplicação 3
/ Binário Divisão 3
** Binário Exponenciação 2
+ Unário Manuten. do sinal 1
- Unário Inversão do sinal 1
Processador Tarefas

Operadores lógicos e suas relações de prioridade


Operador Tipo Operação Prioridade
OU Binário Disjunção 3
E Binário Conjunção 2
NÃO Unário Negação 1
Processador Tarefas
Processador Tarefas

• Os resultados da execução podem requerer


escrever dados na memória ou no modulo E/S
• EX:
• Armazenar o conteúdo do registrador na posição
de memória A
• Exibir o resultado da operação A = A + B na tela.
Processador Tarefas
Componentes da UCP
Processador Componentes
Processador Tarefas

• Circuito lógico seqüencial

• Responsável pela geração dos sinais de controle do


Caminho de Dados

• Deve gerar sinais na seqüência adequada para


implementar interpretação de instruções
Processador Tarefas

• Tarefas desempenhadas:
• Transferir dados:
• de um registrador para outro
• de um registrador para fora da CPU
• externos para os registradores
• Coordenar a execução das operações lógicas e
aritméticas
Processador Tarefas

• As tarefas anteriormente citadas podem ser resumidas e duas:


• Sequenciar
•Onde a unidade de controle define a seqüência lógica de
realização das tarefas
•Isso envolve a movimentação de dados entre os
registradores e componentes externos
• Executar
•Onde a unidade de controle ordena que a ULA execute
as tarefas
Processador Tarefas
Processador Componentes

São áreas de trabalho (memórias) especiais dentro


do processador que são mais rápidos que os
operandos de memória. São projetados para
trabalhar com códigos operacionais.
Processador Componentes

•Conjunto de unidades de armazenamento;


•Funcionam num nível de hierarquia acima da
memória principal e da memória cache;
•Também conhecida como memória de
rascunho;
Processador Componentes

Parte destes registradores armazenam valores de


dados e ponteiros durante a execução
(registradores de propósito geral),

os outros (registradores de controle) armazenam


informações específicas de sistema, como por
exemplo o contador de programa.
Processador Componentes

•Podem ser acessados pelo usuário através das


linguagens de maquina ou de montagem;

•Minimizam as referencias a memória principal;

•São classificados em:


•Registrador de Propósito geral
•Registrador de dados;
•Registrador de endereço;
•Registrador de código de condição;
Processador Tarefas
Ciclo de
Processador
instruções

Ciclo de busca Ciclo de execução


Ciclo de
Processador
instruções

– Lê a próxima instrução da memória


– Essa instrução esta armazenada no Contador de
Programas (PC)
– O processador incrementa o valor de PC
– A instrução buscada é armazenada no
registrador de instruções (IR)
– Isso envolve um tráfego de dados comandado
pela Unidade de Controle
Ciclo de
Processador
instruções

– Para realizar a busca o processador utiliza o


barramento:
- Interno (interliga os componentes da CPU)
- Principal (do sistema)
-Os dados trafegam entre os registradores através
do barramento interno
- Eles trafegam entre a memória principal e os
registradores através do barramento do sistema
Ciclo de
Processador
instruções
Ciclo de execução

• Interpreta o código da operação e efetua a


mesma;
• As ações efetuadas podem ser:
• Processador-memória
• Processador-E/S
• Processamento de dados
• Controle
Ciclo de
Processador
instruções
Exemplo:
• Ciclo de instruções para o código A = A + B;
• São necessárias 3 instruções:
•Carregar o valor de A
•Carregar e Somar o valor de B com valor de A
•Guardar o resultado em A e armazenar na
memória
• Será realizado é 3 ciclos de busca e execução
totalizando 6 passos;
Ciclo de
Processador
instruções
Exemplo:

Lista de operações
– 0001 (1) – Carregar o valor em AC
– 0010 (2) – Armazenar o valor de AC na memória
– 0101 (5) – Somar o valor de AC com o valor de um endereço
Ciclo de
Processador
instruções
Ciclo de
Processador
instruções
Ciclo de
Processador
instruções
Ciclo de
Processador
instruções
Ciclo de
Processador
instruções
Ciclo de
Processador
instruções
Processador Tarefas
Processador desempenho

Atualmente as CPUs executam mais que uma


instrução por vez;

Objetiva o aumento do desempenho nas


arquiteturas dos processadores
Processador melhorias

- Utiliza a organização pipeline com a intenção de


executar mais que uma instrução ao mesmo
tempo:

unidade de busca -> unidade de decodificação ->


unidade de execução.

Iniciar uma nova instrução antes que a instrução


corrente termine
Processador Pipeline
•Suponha que existe uma lavanderia, que
divide seu processo de trabalhos em 3
etapas:
– Colocar a roupa na maquina de lavar
– Depois de lavada colocar na secadora
– Depois de secada passar o ferro e
dobrar

•Suponha que cada etapa possa ser


realizada em 30 minutos:
Processador Pipeline
Processador Pipeline
Processador Pipeline

• Aumenta o número de instruções


executadas simultaneamente
• Aumenta taxa de instruções iniciadas e
terminadas por unidade de tempo
• Melhora o desempenho do processo
(throughput)
• Não reduz o tempo gasto para completar
cada instrução individualmente.

Você também pode gostar