quinta-feira, 12 de dezembro de 2013

SUBSISTEMA DE PROCESSAMENTO



Processadores

A execução de operações de algoritmos em processadores ocorre através de uma organização criada por Von Neumann.
Para que processadores possam executar instruções, no entanto, diferentes componentes precisam estar presentes em sua arquitetura. A organização desses componentes permite a execução das instruções através de uma serie de etapas chamadas de micro-instruções. A execução de uma seqüência de micro-instruções acaba por executar cada instrução dos algoritmos que os processadores executam.



1) Contador de instruções:
Pequena memória que guarda o endereço de memória da próxima instrução a ser executada: a instrução que está no endereço que corresponde ao conteúdo do contador de instruções é a próxima instrução que o processador irá executar.

2) Registrador de instruções:
Pequena memória que armazena as instruções que serão executadas pelo processador. Como inicialmente todas as instruções estão na memória de instruções, estas precisam ser armazenadas internamente no processador para execução.
 
3) Decodificador de instruções:
Circuito que decodifica, ou seja, descobre o que é a instrução (o que ela faz) e quais os seus operandos. O decodificador de instruções descobre o que tem na palavra de instrução (palavras de instrução foram estudadas na aula 3).

4) Banco de registradores:
Registradores podem ser entendidos como pequenas memórias que se localizam internamente em processadores. Os registradores que armazenam as variáveis dos algoritmos são chamados de banco de registradores. Existem registradores para armazenar também palavras de instrução (registrador de instruções, item 2, acima) e algumas informações de controle para o processador, como por exemplo, se uma instrução resultou em resultado negativo. Os processadores possuem tipicamente entre 8 e 128 registradores.

5) Unidade Lógica e Aritmética (ULA):
É a unidade executora do processador. A ULA é composta por uma série de circuitos que executam as operações lógico-aritméticas dos processadores: todas as instruções que o processador possui em seu conjunto de instruções devem poder ser executadas na sua ULA. Por exemplo, se o processador possuir uma instrução de multiplicação no seu conjunto de instruções, a ULA deve possuir um circuito multiplicador. Lembre que, como visto na aula 3, mesmo que determinada instrução não esteja presente no conjunto de instruções (e portanto não pode executar na ULA) ainda assim o processador é capaz de executa-la.

6) Barramentos de comunicação internos.
São os canais de comunicação que existem internamente na arquitetura do processador. Estes canais permitem que os componentes internos do processador consigam se comunicar, o que é essencial para a execução de instruções, como pode ser visto na figura 1, onde é mostrada a execução de uma instrução através de micro-instruções. Observe também que cada micro-instrução executa sobre um componente interno do processador (de acordo com as figuras a seguir); aí se pode perceber a importância de cada um desses componentes para que a instrução possa ser executada.

As principais micro-instruções presentes em qualquer processador são:
1) Endereçamento da próxima instrução a ser executada: a instrução é endereçada através do envio do conteúdo do Contador de Programa (PC), que está localizado na Unidade de Controle (UC), para a memória de instruções. Este conteúdo representa o endereço da próxima instrução a ser executada. Estes passos são observados na figura abaixo;





2) Leitura da instrução da memória de instruções: a memória faz a leitura de uma palavra de instrução. A figura abaixo representa essa etapa;




3) Escrita da instrução no registrador de instruções: a instrução lida é escrita dentro do processador no registrador de instruções. No nosso exemplo o valor da instrução lida é 1B;



4) Decodificação dos operandos: a instrução é decodificada, ou seja, o processador passa a conhecer qual é a instrução (que operação ela executa) e quais são os operandos fonte e destino (ver aula 3, sobre operandos). Esse passo pode ser visualizado na figura abaixo.




5) Leitura dos operandos da memória ou dos registradores: os operandos fonte são lidos da memória ou dos registradores e colocados nas entradas da ULA;



6) Execução da instrução: quando a ULA recebe os operandos fonte, então o próximo passo será a execução da operação através da ULA ,como é encontrado na figura a seguir;



7) Escrita do resultado: a saída da ULA, que contém o resultado da operação que acabou de ser executada é escrita no operando destino, que pode estar em algum registrador ou na memória. Esse passo é demonstrado na figura a seguir.




0 comentários:

Postar um comentário