Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC...

31

Transcript of Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC...

Page 1: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle
Page 2: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 3: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 4: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 5: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 6: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

◦ 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

Page 7: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

Buscar a próxima instrução

Início

Interpretar instrução (decodificar)

Buscar operandos

Executar instrução

Armazenar resultados

Fim

Page 8: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 9: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 10: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 11: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 12: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador de instruções

RI

PC RDM

REM

Barramento de endereços

Barramento de dados

Relógio

Barramento de controle

Page 13: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador de instruções

RI

PC RDM

REM

Barramento de endereços

Barramento de dados

Barramento de controle

Relógio

Page 14: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador de instruções

RI

PC RDM

REM

Barramento de endereços

Barramento de dados

Barramento de controle

Relógio

Page 15: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

Operações da ULA:

Soma

Multiplicação

Subtração

Divisão

Operação AND

Operação OR

Operação XOR

Deslocamento à direita

Deslocamento à esquerda

Incremento

Decremento

Page 16: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 17: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 18: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 19: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

Regs de 8 bits

25 + 2C

3A + 17

CPU

3A

25

17

2C

MP

8 bits

Barramento de dados

8 bits

8 bits

Processador com palavra de 8 bits

A operação de soma é realizada em duas etapas

A

B

Page 20: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

Regs de 16 bits

3A25 + 172C

CPU

3A

25

17

2C

MP

8 bits

Barramento de dados

16 bits

16 bits

Processador com palavra de 16 bits

A operação de soma dos mesmos números é realizada em uma etapa

A

B

Page 21: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 22: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 23: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 24: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 25: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

Gerador de tempo

Unidade de controle

Relógio t0

t1 t2 t3 t4 t5

Um clock t0 e seus 5 subclocks

Processador: Relógio

Page 26: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

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

Page 27: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

Buscar a próxima instrução

O reg. de instruções recebe a instrução

buscada RI 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ções Para a busca de uma instrução

subciclo

Page 28: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador 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

Page 29: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador de instruções

RI

1000 RDM

REM

Barramento de endereços

Barramento de dados

Relógio

Barramento de controle

PC

CI CI + N

1000

1000

1004 1004

Page 30: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador 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

Page 31: Todo processador é constituído de circuitos capazes de ... · Decodificador de instruções RI PC RDM REM Barramento de endereços Barramento de dados Relógio Barramento de controle

ULA Registradores 0 a R-1

ACC

UC Decodificador 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