A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

 Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento.

Apresentações semelhantes


Apresentação em tema: " Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento."— Transcrição da apresentação:

1

2  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  Etc...

3  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

4  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

5  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

6  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

7  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

8 Buscar a próxima instrução Início Interpretar instrução (decodificar) Buscar operandos Executar instrução Armazenar resultados Fim

9  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

10  Para efeito didático, nosso processador executará as instruções sequencialmente  Processo lento e pouco eficiente  Os processadores atuais utilizam a técnica pipeline  Execução de instruções em paralelo

11  Veremos o funcionamento do pipeline em um módulo separado...  Apenas para contextualizar, considere a seguinte situação:  Processo de lavagem, secagem e armazenamento de 4 trouxas de roupas sujas (A, B, C e D);  As trouxas não podem ser misturadas  As roupas de determinada trouxa devem ser lavadas em uma máquina, secadas em outra, dobradas, e por último armazenadas (4 passos)  Cada passo consome 30 minutos

12 Lavagem de Roupas sem Pipeline

13  Serão gastas 8 horas para lavar as 4 trouxas  O tempo gasto para lavar cada trouxa é de 2 horas

14  O que podemos fazer para otimizar o desempenho da lavagem de roupas?  Será que podemos iniciar o processo de lavagem da segunda trouxa assim que a máquina for liberada pela lavagem da primeira trouxa?

15 Lavagem de Roupas em Pipeline

16  Com a sobreposição das 4 tarefas, as trouxas ficarão prontas em 3 horas e meia  O tempo decorrido entre o momento em que um par de meias é colocado na lavadora até o momento em que ele estará seco, dobrado e guardado no armário não diminui com a técnica de pipeline  O tempo gasto para lavar cada trouxa continua sendo de 2 horas

17  O diagrama de blocos que veremos 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

18  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

19 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

20  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

21  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

22  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

23  Para comparar processadores em relação ao tamanho da palavra, considere a seguinte operação:  3A25 + 172C ; que corresponde a (A + B)  Ambos números inteiros, sem sinal com 16 bits de tamanho cada um

24 Regs de 8 bits 25 + 2C 3A + 17 CPU 3A 25 17 2C MP 8 bits Barramento de dados 8 bits Processador com palavra de 8 bits A operação de soma é realizada em duas etapas A B

25 Regs de 16 bits 3A25 + 172C CPU 3A 25 17 2C MP 8 bits Barramento de dados 16 bits Processador com palavra de 16 bits A operação de soma dos mesmos números é realizada em uma etapa A B

26  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

27  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

28  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

29  Durante um ciclo de clock ocorre a realização de uma operação elementar do ciclo de instrução  Como uma operação elementar não se realiza em um só passo, o ciclo de clock é dividido em ciclos menores (subciclos)  Os passos de uma operação elementar denominam-se microoperações

30 Gerador de tempo Unidade de controle Relógio t0 t1 t2 t3 t4 t5 Um clock t0 e seus 5 subclocks Processador: Relógio

31 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

32 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

33 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

34 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 1004

35 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

36 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


Carregar ppt " Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento."

Apresentações semelhantes


Anúncios Google