Arquitetura de Computadores Processadores 3 Instrues Waldemiro Arruda

  • Slides: 41
Download presentation
Arquitetura de Computadores Processadores 3 Instruções Waldemiro Arruda

Arquitetura de Computadores Processadores 3 Instruções Waldemiro Arruda

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Leitura das

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Leitura das instruções • Na memória • Instruções Sequenciais ou Interruptivas

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Sequencial • Algoritmos • Compiladores • Interpretadores • Processamento em Batch

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Sequencial • A execução segue uma sequência que pode ser alterada através de outras instruções • PARA, ENQUANTO, FAÇA, SENÃO, VÁ PARA,

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Sequencial • Atualmente as instruções são aparentemente executadas de forma sequencial; • Na realidade são executadas em paralelo;

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Interrupções • Agente externo causa a parada do processamento • Causada por eventos • Se um descanso de tela está aparecendo no monitor e o usuário mexe o mouse, ocorre uma interrupção de uma execução

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Interrupções • Processos longos podem sofrer interrupções • “ESC para cancelar o salvamento” • “CTRL + BREAK para interromper” • “Press any key to finish”

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Tipos • Leitura e Escrita / Entrada e Saída • Leitura • READ -> lê o dado do dispositivo de entrada • WRITE -> grava o dado no dispositivo de saída

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Tipos • Lógicas e Matemáticas • ADD - > Soma • SUB -> Subtrai • MULT -> Multiplica • DIV -> Divide

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Tipos • Transferência de dados / Movimentação de Dados • LOAD / MOV -> Carrega no registrador o conteúdo da memória • STORE / MOV -> Grava da memória o conteúdo do registrador

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Tipos • Controle de Fluxo • STOP -> Interrompe, Finaliza • JMP -> Desvia a execução

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formato • OPCODE • OP 1 • OP 2 • OP 3 • OP 4

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formato • OPCODE • OP -> Operação • CODE -> Código • OPCODE -> Código da Operação • OP 1. . n -> Operação 1. . n

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formato • OP 1. . . N • Os operandos, na verdade, são ponteiros para um endereço de memória ou um registrador;

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formato • Exemplos • Pascal • cont : = cont + cont 2 • Linguagem de Máquina • ADD CONT 2

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formato • Exemplos • Pascal • cont : = 5 • Linguagem de Máquina • ADD CONT

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formato • OPERAÇÃO OPERANDOS

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formatos • Leitura e Escrita / Entrada e Saída • Ler • READ 251 • READ – Lê o dado do dispositivo de entrada • 251 – Endereço da memória onde irá armazenar o dado

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formatos • Leitura e Escrita / Entrada e Saída • Escrita • WRITE 251 • WRITE – Grava o dado do dispositivo de saída • 251 – Endereço da memória onde irá armazenar o dado

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formatos • Leitura e Escrita • READ • 1001 • WRITE • 1010

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções •

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções • Formatos • READ 251 • 1001 011111011 • WRITE 251 • 1010 011111011

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções -

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções - Formatos • Exemplo programa • Ler dois números e imprimir a soma dos mesmos.

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções -

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções - Formatos • Algoritmo • VAR N 1, N 2, TOTAL: INTEIRO; • INICIO • LEIA (N 1, N 2) ; • TOTAL : = N 1 + N 2; • ESCREVA(TOTAL); • FIM

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções -

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções - Formatos • Pascal • var n 1, n 2, total: integer; • begin • read(n 1, n 2); • total: = n 1 + n 2; • write(total); • end

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções -

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções - Formatos • Linguagem de Máquina • READ 100 • READ 101 • LOAD 100 • ADD 101 • STORE 102 • WRITE 102 registrador • STOP -> lê o valor e armazena no endereço 100 -> lê o valor e armazena no endereço 101 -> carrega no registrador o valor contido em 100 -> adiciona o valor em 101 ao valor do registrador -> armazena em 102 o valor do registrador -> escreve no dispositivo de saída o valor do -> encerra o programa

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções -

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções - Formatos • Como o processador trabalha • 1001 001100100 • 1001 001100101 • 0000 001100100 • 0010 001100101 • 0001 00110 • 1010 00110 • 1100 -> READ 101 -> LOAD 100 -> ADD 101 -> STORE 102 -> WRITE 102 -> STOP

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções -

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções - Formatos • Load 0000 Store 0001 Add 0010 Sub 0011 Mult 0100 Div 0101 Jmp 0110 Read 1001 Print 1010 Stop 1100

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções –

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • Processador • Instruções – Controle de fluxo • SE, SENÃO • Altera o fluxo, alterando o CI (Contador de instruções) • JMP 110 -> 0110 001101110

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • READ 100 • READ

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores • READ 100 • READ 101 • LOAD 100 • ADD 101 • STORE 102 • WRITE 102 • STOP

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 1 - Quando você pressiona

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 1 - Quando você pressiona a tecla 2, o microprocessador é alertado e instrui a unidade de pré-solicitação de dados (Prefetch Unit) para perguntar à memória principal do computador por uma instrução específica para lidar com o novo dado, uma vez que não há nada ainda no cachê de instruções (Instruction Cache) (veja a seqüência no caminho em amarelo). A nova instrução entra no chip através da unidade de transporte de dados (Bus Unit) da memória principal do computador e é armazenada no Instruction Cache, onde recebe o código "2=X" (veja em azul).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 2 – A Prefetch Unit

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 2 – A Prefetch Unit então solicita ao Instruction Cache uma cópia do código "2=X" e o envia à unidade de decodificação (Decode Unit – Decodificador de instruções) para posterior processamento (veja em amarelo). No decodificador de instruções (Decode Unit), a instrução "2=X" é traduzida ou decodificada em uma seqüência de códigos binários que vai para a unidade de controle (Control Unit); o cachê de dados (Data Cache) pergunta a eles o que deve fazer com a instrução (veja em azul escuro). Como a Decode Unit tinha a informação de que o número 2 deveria ser armazenado para uso futuro no Data Cache, a Control Unit agora produz a instrução para "2=X". Isso faz com que o número 2 seja enviado a um endereço no Data Cache chamado "X", onde você o vê aguardando futuras instruções (em azul claro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 3 – Agora, quando você

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 3 – Agora, quando você pressiona a tecla 3, a Prefetch Unit repete o processo, perguntando à memória principal do computador e ao Instruction Cache por instruções específicas para este novo dado. Não encontra ainda nenhuma instrução no Instruction Cache, então a instrução deve vir da memória principal (veja em amarelo). Como você vê no caminho em azul, o novo dado entra no microprocessador procedente da memória principal e é armazenado em outro endereço do Instruction Cache, com o código "3=Y".

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 4 – Mais uma vez,

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 4 – Mais uma vez, a Prefetch Unit obtém uma cópia do código "3=Y" do Instruction Cache e o envia à Decode Unit para posterior processamento (veja em amarelo) Na Decode Unit, a instrução "3=Y" é traduzida ou decodificada em uma seqüência de código binário que é emitida para a Control Unit e o Data Cache pergunta o que fazer com a instrução (veja em azul escuro). Como a Decode Unit tinha instruído que o número 3 deveria ser armazenado para uso futuro no Data Cache, a Control Unit agora monta a instrução "3=Y". Isso faz com que o número 3 seja enviado para um endereço no Data Cache chamado "Y", onde fica esperando por novas ordens, da mesma forma como havia sido feito com o número 2 (veja em azul claro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 5 – Quando você pressiona

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 5 – Quando você pressiona a tecla de [+], a Prefetch Unit pergunta à memória principal do computador e ao Instruction Cache sobre o novo dado, que deve ser obtido da memória principal (veja em amarelo). Por ser uma nova instrução, o [+] chega ao chip procedente da memória principal, sendo armazenado em um endereço no Instruction Cache como um código "X+Y=Z", mostrando que o ato de adicionar vai ser então realizado ali (veja em azul escuro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 6 – A Prefetch Unit

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 6 – A Prefetch Unit então requisita ao Instruction Cache uma cópia do código "X+Y=Z" e o envia para ser processado na Decode Unit (veja em amarelo). Na Decode Unit (veja em azul escuro), "X+Y=Z" é traduzido ou decodificado e então enviado à Unidade de Controle e o Data Cache pergunta o que fazer com a instrução. A Unidade de Controle (UC) envia mensagem de que a função de adição deve ser realizada (veja em azul escuro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 7 – Na Control Unit,

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 7 – Na Control Unit, o código é desmontado e o comando de adição é enviado para a ULA, onde X e Y são somados, depois de enviados pelo Data Cache. A ULA então envia o resultado (5) para a área dos registradores, e esse valor é armazenado num dos endereços ali disponíveis (veja em azul claro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 8 – Bem, agora você

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 8 – Bem, agora você quer o resultado, então pressiona a tecla [=]. Nesse momento, a Prefetch Unit verifica o Instruction Cache para ver se há algum dado novo, e não o encontra (veja em amarelo). A instrução para [=] segue da memória principal do computador para o chip através da Bus Unit, sendo armazenada num endereço do Instruction Cache como o código "imprima Z" (veja em azul escuro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 9 – A Prefetch Unit

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 9 – A Prefetch Unit então pergunta ao Instruction Cache por uma cópia do código "Imprima Z" e a envia à Decode Unit para posterior processamento (veja em amarelo). Na Decode Unit, essa instrução "Imprima Z" é traduzida como uma seqüência de código binário e emitida para a Unidade de Controle, que pergunta o que fazer com a instrução (veja em azul escuro).

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 10 – Agora que o

Gestão da Tecnologia da Informação Arquitetura de Computadores Processadores 10 – Agora que o valor de Z foi computado e está residindo na entrada #5 do registrador, o comando de impressão tem apenas de recuperar o conteúdo do registro 5 e mostrá-lo na tela, para que você finalmente possa ver a soma de 2+3 (siga o caminho em azul claro). O microprocessador completou o trabalho e aguarda sua próxima tarefa.