Unidade Central De Processamento: Processador
Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:◦ Somar e subtrair◦ Mover um dado de um local de armazenamento
para outro◦ Transferir um dado para um dispositivo de saída
Processador: Funções Básicas
A função do processador é executar programas:◦ Um programa executável é constituído de um
conjunto de instruções de máquina seqüencialmente organizadas
Processador: Funções Básicas
Para que a execução de um programa tenha início é necessário que:◦ As instruções devem estar armazenadas em
células sucessivas, na MP ou MC◦ O endereço da primeira instrução deve estar
armazenado no processador
Processador: Funções Básicas
A partir daí, o processador:◦ Busca uma instrução (op. de leitura), uma de
cada vez, cujo endereço deve estar armazenado em um registrador específico
◦ Interpreta a instrução◦ Busca os dados (operandos) onde estiverem
armazenados, para trazê-los até o processador
Processador: Funções Básicas
◦ Executa efetivamente a operação com os dados buscados e guarda o resultado no local definido na instrução
◦ Reinicia o processo buscando uma nova instrução Os passos descritos formam um ciclo de instrução e ele é repetido até que seja encontrada uma instrução de parada ou até que ocorra algum erro
Processador: Funções Básicas
Buscar a próxima instrução
Início
Interpretar instrução(decodificar)
Buscar operandos
Executar instrução
Armazenar resultados
Fim
As atividades do processador estão divididas em duas categorias:◦ Função de processamento◦ Função de controle
Busca, interpretação e controle da execução das instruções
Controle dos componentes do sistema
Processador: Funções Básicas
Para efeito didático, o processador executará as instruções seqüencialmente ◦ Processo lento e pouco eficiente
Os processadores atuais utilizam a técnica pipeline◦ Execução de instruções em paralelo
Processador: Funções Básicas
O diagrama de blocos a seguir ilustra os principais componentes de um processador e sua organização lógica◦ Não se trata de uma organização física
Os componentes principais são:◦ ULA (Unidade Lógica Aritmética)◦ UC (Unidade Controle)◦ Banco de Registradores
ProcessadorOrganização Interna
Registradores específicos◦RI - registrador de instrução: armazena
instrução corrente em execução◦CI (contador de instruções) ou PC (Program
Counter): armazena o endereço da próxima instrução
◦ACC: acumulador◦RDM: registrador de dados da memória◦REM: registrador de endereço da memória
Registradores de propósito geral: 0 a R-1
ProcessadorOrganização Interna
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
RI
PC RDM
REM
Barramento de endereços
Barramento de dados
Relógio
Barramento de controle
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
RI
PC RDM
REM
Barramento de endereços
Barramento de dados
Barramento de controle
Relógio
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
RI
PC RDM
REM
Barramento de endereços
Barramento de dados
Barramento de controle
Relógio
Operações da ULA:
ULA – Unidade Lógica E Aritmética
SomaMultiplicaçãoSubtraçãoDivisãoOperação ANDOperação OR
Operação XORDeslocamento à direitaDeslocamento à esquerda
IncrementoDecremento
As operações podem utilizar:◦ Dois operandos pois a ULA tem somente duas
entradas◦ Um operando no caso do incremento ou
decremento A saída da ULA está ligada diretamente aos
registradores, através do barramento interno
ULA – Unidade Lógica e Aritmética
A capacidade de processamento de uma CPU (velocidade que ela executa uma instrução) é determinado pelo tamanho da palavra
O tamanho da palavra determina o tamanho da ULA, do barramento interno e dos registradores
Processador: Palavra
Para comparar processadores em relação ao tamanho da palavra, considere a seguinte operação:◦ 3A25 + 172C (A + B)◦ Ambos números inteiros, sem sinal com 16 bits de
tamanho cada um
Processador: Palavra
Regs de 8 bits
25 + 2C
3A + 17
CPU
3A
25
17
2C
MP
8 bits
Barramento de dados8 bits
8 bits
Processador com palavra de 8 bits A operação de soma é
realizada em duas etapas
A
B
Regs de 16 bits
3A25 + 172C
CPU
3A
25
17
2C
MP
8 bits
Barramento de dados16 bits
16 bits
Processador com palavra de 16 bitsA operação de soma dos mesmos números
é realizada em uma etapa
A
B
O tamanho da palavra influencia também no tamanho do barramento de dados◦ Para melhor desempenho, o BD deve ter uma
palavra de largura◦ Se a largura do barramento for menor, por
exemplo, metade da palavra, seriam necessários dois ciclos de tempo do barramento
Processador: Palavra
O tamanho da palavra influencia também na organização da memória◦A memória está organizada em bytes
mas os dados que se movimentam entre processador e memória devem estar organizados em palavras Se isto não ocorrer, o processador ficará em
estado de espera (wait state) até que a palavra completa seja transferida
A transferência irá gastar mais de um ciclo de memória
Processador: Palavra
Dispositivo gerador de pulsos cuja duração é chamada de ciclo
A quantidade de vezes que o pulso se repete em um segundo define a freqüência◦ A freqüência é usada para definir a velocidade do
processador
Processador: Relógio
Durante um ciclo de clock ocorre a realização de uma operação elementar do ciclo de instrução
Uma operação elementar não se realiza em um só passo logo o ciclo de clock é dividido em ciclos menores (subciclos)
Os passos de uma operação elementar denominam-se microoperações
Processador: Relógio
Gerador de tempo
Unidade de controle
Relógiot0
t1t2t3t4t5
Um clock t0 e seus 5 subclocks
Processador: Relógio
Buscar a próxima instrução
Início
Interpretar instrução(decodificar)
Buscar operandos
Executar instrução
Armazenar resultados
Fim
Passo elementar que ocorre em um ciclo de clock
Buscar a próxima instrução
O reg. de instruções recebe a instrução
buscadaRI RDM
O RDM recebe a instrução
RDM Mem
Incrementar o CI para armazenar o
endereço da próxima instrução
PC PC + N
Colocar o endereço da
instrução a ser buscada no REM
REM (PC)
MicrooperaçõesPara a busca de uma instrução
subciclo
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
RI
1000 RDM
1000
Barramento de endereços
Barramento de dados
Relógio
Barramento de controle
1000
PC
REM
REM (PC)
1000
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
RI
1000RDM
REM
Barramento de endereços
Barramento de dados
Relógio
Barramento de controle
PC
CI CI + N
1000
1000
10041004
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
RI
1004 A = B + C
REM
Barramento de endereços
Barramento de dados
Relógio
Barramento de controle
PC
RDM Mem
RDM
ULA Registradores0 a R-1
ACC
UCDecodificador de instruções
A = B + C
1004 A = B + C
REM
Barramento de endereços
Barramento de dados
Relógio
Barramento de controle
PC
RI RDM
A = B + C
RI
RDM