Escolar Documentos
Profissional Documentos
Cultura Documentos
Processadores
Processadores
Também conhecido como UCP ( Unidade Central de Processamento
) ou CPU ( Central Process Unit ) na sigla em inglês, processador é o
cérebro do computador. Sua função é executar os programas
armazenados na memória principal, buscando cada uma das instruções,
examinando-as e executando-as uma após a outra. É constituído de
diversas partes: a unidade de controle é responsável por buscar as
instruções na memória principal e por determinar o tipo de cada instrução,
isto é, decodificar as instruções. A unidade de lógica aritmética ( ULA
) realiza um conjunto de operações necessárias à execução das
instruções. O processador possui uma pequena memória de alta
velocidade,composta pelos registradores da CPU, utilizada para
armazenar resultados temporários e informações de controle. Essa
memória é formada por um conjunto de registradores, cada qual com
determinado tamanho e função. O registrador mais importante é o
Program Counter, ( PC ) cujo valor aponta para a próxima instrução a ser
buscada na memória para ser executada. Outros registradores
importantes são o Registrador de Instruções ( IR - Instruction Register )
que armazena a instrução que está sendo executada, o Registrador de
Status, que armazena os bits ( flags ) referentes ao resultado da última
operação executada ( se o resultado foi zero ou negativo, por exemplo ),
e o Acumulador, utilizado pelos programas para armazenar os
resultados das operações processadas.
Figura 3- Estrutura de um Processador
1- Estágio de Busca:
2- Estágio de Decodificação:
- determinação do tipo de instrução que está armazenada no registrador de
instruções,
Conforme vimos, as instruções devem estar armazenadas no
registrador de instruções ( IR ), para serem decodificadas.
Na verdade, cada instrução é composta por dois campos de bits:
o Opcode ( ou código da operação ) e o campo dos operandos.
O primeiro contém o código binário que representa qual
operação a instrução executa ( por exemplo, uma operação aritmética,
lógica, de controle ou movimento de dados ). O segundo,
representa a informação de entrada que será tratada.
Portanto, o Opcode é decodificado por um decodificador da
Unidade de Controle do processador para que a instrução correta
seja executada.
4- Execução:
- execução da instrução,
Com todos os dados armazenados em registradores da CPU e o
opcode da instrução já decodificado, a instrução está no ponto de
ser executada, pois todas as informações necessárias tornara-se
disponíveis ou já foram interpretadas pelo processador.
Desse modo, a Unidade de Controle da CPU já pode coordenar
os circuitos digitais da Unidade Lógica e Aritmética ( ULA ) para os
dados serem processados pelos circuitos selecionados e os
resultados serem obtidos.
5- Gravação do resultado:
- armazenamento do resultado,
Os resultados obtidos, são os dados de saída da instrução
executada. Resultados de operações aritméticas e lógicas tendem a ser
armazenados em registradores da CPU ( geralmente no
registrador acumulador ).
Se deseja-se que tais dados resultantes sejam armazenados na
memória principal, faz-se necessária a execução de outra
instrução para movimentar o dado de um registrador da CPU
para a memória.
Pipeline ( Pipelining )
Usando a tecnologia pipeline, a arquitetura do processador tira
proveito do fato de a maioria das instruções serem compostas por
diversos estágios comuns. Por exemplo, toda instrução, precisa ser
buscada na memória ( onde se encontra o programa que a contém );
depois será decodificada ( nesse estágio o processador lê o código da
instrução para definir qual operação será executada ); algumas instruções
requerem a busca de um operando na memória ( dado de entrada da
operação ), e por fim a execução da operação e a gravação do resultado.
Esses estágios são muitas vezes denominados em inglês como:
Processadores Superescalares
Um processador de super-escalar é capaz de executar
mais de uma instrução por ciclo de clock. A manutenção dessa taxa de
execução elevada é principalmente um problema de alocação de recursos
do processador (que possui diversas unidades funcionais de execução de
instrução ).