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

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

Unidade Central De Processamento: Processador

Apresentações semelhantes


Apresentação em tema: "Unidade Central De Processamento: Processador"— Transcrição da apresentação:

1 Unidade Central De Processamento: Processador
Instruções de Máquina

2 Instruções de Máquina – 01
Operação básica (primitiva) que o hardware é capaz de executar diretamente Conjunto de bits que indica ao processador uma operação que ele deve realizar

3 Instruções de Máquina – 02
O projeto de um processador é centrado no conjunto de instruções de máquina que se deseje que ele execute Quanto menor e mais simples o conjunto de instruções, mais rápido é o ciclo de tempo do processador

4 Instruções de Máquina – 03
Existem duas tecnologias de projeto de computadores: Sistemas com conjunto de instruções complexo (complex instruction set computers – CISC) Sistemas com conjunto de instruções reduzido (reduced instruction set computers – RISC)

5 Instruções de Máquina – 04
Um processador possui instruções capazes de realizar: Operações matemáticas Movimentação de dados (memória – UCP e vice- versa) Entrada e saída (leitura e escrita em dispositivo de E/S) Controle (desvio de seqüência de execução, parar, etc...)

6 Instruções de Máquina – 05
Exemplos: Intel 8080: 78 instruções Intel 8088: 117 instruções 80486: 286 instruções Pentium II: 217 instruções

7 Formato de Instruções – 01
Uma instrução é dividida basicamente em dois campos: Código de operação ou opcode C. Op. Operandos

8 Formato de Instruções – 02
Código de Operação: indica qual operação deverá ser realizada, por exemplo: Realizar uma operação lógica entre dois valores Parar a execução de um programa Testar uma condição: Se teste verdadeiro, então desviar para outro endereço fora da seqüência

9 Formato de Instruções – 03
O campo código de operação possui, nos processadores atuais, 1 byte de tamanho Pode-se, então, ter 28 instruções diferentes

10 Formato de Instruções – 04
Operando: indica a localização do dado que será manipulado O campo operando pode estar subdividido em outros campos no caso de mais de um operando, por exemplo: Em uma instrução cujo código de operação é uma soma, são necessários três operandos Dois operandos para armazenar as parcelas Um operando para armazenar o total

11 Formato de Instruções – 05
Instrução de Soma: C. Op. Operando 1 Operando 2 Operando 3 (operando 3) (operando 1) + (operando 2)

12 Formato de Instruções – 06
Outro formato para instrução de soma que produz o mesmo efeito: C. Op. Operando 1 Operando 2 (operando 1) (operando 1) + (operando 2) (operando 2) (operando 1) + (operando 2)

13 Formato de Instruções – 07
Pode-se também usar o registrador acumulador para representar a mesma operação C. Op. Operando ACC ACC + (operando)

14 Funcionamento do Processador – 01
Iremos analisar as etapas realizadas pelo processador para a execução de uma instrução de máquina Ciclo de Instrução

15 Funcionamento do Processador – 02
Iremos considerar um computador hipotético com as seguintes características: Palavra de 12 bits Endereços de 8 bits (256 células de memória) Células de 12 bits ACC, RI e RDM com 12 bits de tamanho CI e REM com 8 bits de tamanho

16 Funcionamento do Processador – 03
Instruções de um operando apenas C. Op. de 4 bits e operando de 8 bits Campo operando sempre indica o endereço de memória do dado, exceto em instruções de desvio C. OP. Operando 4 bits 8 bits Instruções disponíveis: listadas na tabela a seguir

17 C. Op. Sigla Descrição HLT Parar execução do programa (HALT, em inglês) 1 LDA op ACC (op) (LOAD, em inglês) 2 STR op (op) ACC (STORE, em inglês) 3 ADD op ACC ACC + (op) 4 SUB op ACC ACC - (op) 5 JZ op Se ACC = 0, então CI op 6 JP op Se ACC > 0, então CI op 7 JN op Se ACC < 0, então CI op 8 JMP op CI op

18 C. Op. Sigla Descrição 9 GET op Ler dado da porta de entrada e armazená-lo em Op A PRT op Colocar na porta referente à impressora o valor armazenado em (op)

19 Funcionamento do Processador - 06
O ciclo de instrução pode ser mais detalhado conforme as especificações do processador listadas anteriormente

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

21 Buscar a próxima instrução
Início Buscar a próxima instrução Subciclo de busca Incrementar O CI Decodificação do C. Op. Tem operando? Buscar e armazenar operando Subciclo de Execução sim não Executar a operação Armazenar resultados Fim

22 Funcionamento do Processador – 09
A fase de busca de instrução é idêntica para qualquer instrução A fase de decodificação e execução depende da instrução Vamos analisar como exemplo a execução de duas instruções na seguinte seqüência: LDA op e ADD op

23 Ciclo das Instruções LDA op e ADD op – 01
Considere que a instrução LDA está armazenada na MP no endereço decimal 2 (216 ou ) 1B4 0001 C. Op. Operando B416

24 Ciclo das Instruções LDA op e ADD op – 02
Considere que a instrução ADD está armazenada na MP no endereço decimal 3 (316 ou ) 3B5 0011 C. Op. Operando B516

25 Estado Inicial da Memória
1B4 3B5 1A7 07D 00 01 02 03 B4 B5 B6 FF

26 Estado Inicial do Processador
Valores dos registradores: CI=02 (Endereço colocado pelo sistema operacional para iniciar a execução do programa) RI=31716 (última instrução executada) ACC=20B16 (valor obtido da execução anterior) REM=B3 e RDM=7BC

27 CPU MP 00 01 ACC CI RDM 02 ULA 1B4 03 3B5 REM B4 1A7 RI B5 07D B6 UC
7BC 03 3B5 B3 REM B4 1A7 RI 317 B5 07D B6 UC DI FF Barramento de controle

28 Ciclo de Instrução LDA op - 01
A partir desta configuração, inicia-se o ciclo da instrução LDA Busca da Instrução A UC aciona a transferência do conteúdo de CI para REM (endereço de LDA) REM CI O conteúdo de REM é colocado no barramento de endereços e a UC ativa a linha READ do barramento de controle

29 Ciclo de Instrução LDA op - 02
A memória recebe o endereço e coloca o conteúdo da célula 02 no barramento de dados (1B4) O conteúdo do barramento de dados chega no RDM RDM Mem O conteúdo do RDM é enviado para o RI RI RDM

30 Ciclo de Instrução LDA op - 03
Enquanto está acontecendo a operação de leitura na memória, o CI está sendo incrementado Como, no nosso exemplo, qualquer instrução ocupa uma célula de memória, o CI será incrementado de uma unidade (CI = 03) para apontar para a próxima instrução CI CI + 1

31 Valores dos registradores após o subciclo de busca da instrução 1B4
CPU MP 00 01 ACC CI RDM 02 ULA 1B4 20B 02 03 7BC 1B4 03 3B5 B3 02 REM B4 1A7 RI 317 1B4 B5 07D B6 UC D I FF Barramento de controle

32 Ciclo de Instrução LDA op - 05
Decodificação de Instrução A UC emite um sinal para que o RI transfira para o decodificador de instruções os 4 bits do C. Op. Decodificador O decodificador seleciona, através de uma lógica nele existente, a linha de saída correspondente para a UC que emitirá os sinais adequados e em uma determinada seqüência para a execução da instrução

33 Ciclo de Instrução LDA op - 06
Como na instrução LDA não há operando a ser buscado, inicia-se então a execução da instrução

34 Ciclo de Instrução LDA op - 07
Execução de Instrução A execução da instrução LDA resume-se em buscar na memória o conteúdo da célula B4 A UC comanda o RI para enviar os bits referentes ao endereço de memória para o REM A UC ativa a linha READ do barramento de controle

35 Ciclo de Instrução LDA op - 08
A memória recebe o endereço que chega pelo barramento de endereço, decodifica e envia o conteúdo da célula B4 para o barramento de dados RDM recebe o conteúdo do barramento de dados RDM A7 A UC emite um sinal para o RDM enviar o seu conteúdo para o ACC ACC RDM

36 Valores dos registradores após a execução da instrução 1B4
CPU MP 00 01 ACC CI RDM 02 ULA 1B4 20B 1A7 02 03 1B4 1A7 03 3B5 02 B4 REM B4 1A7 RI 317 1B4 B5 07D B6 UC D I FF Barramento de controle

37 Ciclo de Instrução ADD op - 01
Considerando que ADD é a instrução seguinte a ser executada, o CI já contém o seu endereço Inicia-se a busca da próxima instrução

38 Ciclo de Instrução ADD op - 02
Busca da Instrução A UC aciona a transferência do conteúdo de CI para REM (03) REM CI O conteúdo de REM é colocado no barramento de endereços e a UC ativa a linha READ do barramento de controle A memória recebe o endereço e coloca o conteúdo da célula 03 no barramento de dados (3B5)

39 Ciclo de Instrução ADD op - 03
O conteúdo do barramento de dados chega no RDM RDM Mem O conteúdo do RDM é enviado para o RI RI RDM Enquanto está acontecendo a operação de leitura na memória, o CI está sendo incrementado, passando a valer 4 CI CI + 1

40 Valores dos registradores após o subciclo de busca da instrução 3B5
CPU MP 00 01 ACC CI RDM 02 ULA 1B4 20B 1A7 03 04 1A7 3B5 03 3B5 B4 03 REM B4 1A7 RI 1B4 3B5 B5 07D B6 UC D I FF Barramento de controle

41 Ciclo de Instrução ADD op - 05
Decodificação de Instrução A UC emite um sinal para que o RI transfira para o decodificador de instruções os 4 bits do C. Op. Decodificador O decodificador seleciona a linha de saída correspondente para a UC que emitirá os sinais adequados para a busca do operando

42 Ciclo de Instrução ADD op - 06
Busca de Operando O endereço do operando a ser buscado na MP está do RI, no campo operando (B5) UC emite sinais para que o REM receba o operando REM B5 REM coloca o seu conteúdo no barramento de endereços A UC ativa a linha READ no barramento de controle

43 Ciclo de Instrução ADD op - 07
A memória recebe o endereço e coloca o conteúdo da célula B5 no barramento de dados (07D) O conteúdo do barramento de dados chega no RDM RDM Mem

44 Valores dos registradores após
a busca do operando 07D CPU MP 00 01 ACC CI RDM 02 ULA 1B4 20B 1A7 03 04 3B5 07D 03 3B5 03 B5 REM B4 1A7 RI 1B4 3B5 B5 07D B6 UC D I FF Barramento de controle

45 Ciclo de Instrução ADD op - 09
Execução de Instrução A ULA recebe o primeiro operando da soma que está no acumulador ULA 1A7 O conteúdo do RDM (segunda parcela da soma) é colocado no ACC ACC RDM A ULA recebe a segunda parcela da soma ULA ACC

46 CPU MP 00 01 ACC CI RDM 02 1B4 03 3B5 REM B4 1A7 RI B5 07D B6 UC D I
1A7 07D 03 04 3B5 07D 03 3B5 03 B5 REM B4 1A7 RI 1B4 3B5 B5 07D B6 UC D I FF Barramento de controle

47 Ciclo de Instrução ADD op - 11
A UC comanda a ULA para realizar a adição dos dois valores 1A7 + 07D = 224 O resultado da adição é colocado no ACC ACC

48 Valores dos registradores após a execução da instrução 3B5
CPU MP 00 01 ACC CI RDM 02 ULA 1B4 07D 224 03 04 3B5 07D 03 3B5 03 B5 REM B4 1A7 RI 1B4 3B5 B5 07D B6 UC D I FF Barramento de controle


Carregar ppt "Unidade Central De Processamento: Processador"

Apresentações semelhantes


Anúncios Google