Buscar

Máquina de Von Neumann

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Arquitetura de computadores 
 Prof. Fábbio Anderson Silva Borges 
 [Material 04] - Arquitetura de Von Neuman 
 Funções 
 Estrutura interna do computador 
 • Existem quatro componentes estruturais principais: 
 • Memória 
 • Barramento 
 • Entrada/saída 
 • Unidade Central de Processamento (CPU) 
 Componentes básicos de um computador 
 1 
 Estrutura interna do computador 
 • Existem quatro componentes estruturais principais: 
 - Memória 
 - Conjunto de circuitos capazes de armazenar os dados e os programas a 
 serem executados pela máquina. 
 - Barramento 
 - Mecanismo que oferece comunicação entre CPU, memória principal e E/S. 
 - O tamanho de um barramento determina quantos dados podem ser 
 transmitidos por vez. 
 - Entrada/saída 
 - São equipamentos utilizados como portadores das informação que o 
 computador irá processar 
 - Unidade Central de Processamento (CPU) 
 - Busca e executa as instruções existentes na memória. 
 Arquitetura de Von Neumann 
 • A tarefa de alterar programas para o ENIAC era extremamente enfadonha. 
 • Conceito de programa armazenado 
 - Processo de programação poderia ser facilitado 
 - Programa armazenamento na memória junto com os dados. 
 - Computador iria obter suas instruções lendo na memória. 
 • IAS – computador com programa armazenado 
 Máquina de Von Neumann 
 2 
Lenovo
Realce
Lenovo
Realce
Lenovo
Realce
Lenovo
Realce
Lenovo
Sublinhado
Lenovo
Sublinhado
Lenovo
Chamada
tamanho = capacidade de transmissão de dados
Lenovo
Sublinhado
Lenovo
Sublinhado
Lenovo
Realce
Lenovo
Sublinhado
Lenovo
Sublinhado
Lenovo
Sublinhado
 1. Executar operações elementares de computação. 
 - Multiplicação, divisão, subtração e adição. 
 2. Executar o controle lógico do dispositivo, ou seja, a ordem como as instruções serão 
 executadas. 
 3. Para executar sequências de instruções é necessário ter memória para armazenar. 
 4. Unidades para transferir informações do meio exterior para as partes específicas. 
 5. Unidades para transferir informações das partes específicas para o meio exterior. 
 1. CA: Executar operações elementares de computação. 
 - Multiplicação, divisão, subtração e adição 
 2. CC: Executar o controle lógico do dispositivo, ou seja, a ordem como as instruções serão 
 executadas. 
 3. M: Para executar sequências de instruções é necessário ter memória para armazenar. 
 4. E: Unidades para transferir informações do meio exterior para as partes específicas. 
 5. S: Unidades para transferir informações das partes específicas para o meio exterior. 
 Estrutura expandida do computador IAS 
 • CPU 
 - Unidade de controle 
 - Busca instruções da memória e executando-as uma de cada vez. 
 - ULA: Unidade lógica aritmética 
 - Executa operações lógicas (AND, OR e NOT) 
 - Executa operações aritméticas 
 - Contém registradores: pequena unidade de memória que são utilizados para 
 guardar instruções, endereços ou dados. 
 Ciclo de instrução 
 3 
Lenovo
Retângulo
 Unidade de controle 
 4 
 Computador IAS 
 O computador IAS foi o primeiro computador eletrônico construído pelo Instituto de 
 Estudos Avançados de Princeton (IAS). 
 Estrutura expandida do computador IAS 
 • Memória 
 - 4096 locais de armazenamento 
 - Chamados palavras: unidade básica de transferência da/para memória 
 - 40 dígitos binários (bits) 
 - Número 
 - Duas instruções 
 5 
 Instrução IAS 
 • O computador IAS tinha um total de 21 instruções. 
 • Agrupadas da seguinte forma: 
 - Transferência de dados 
 - Desvio incondicional 
 - Desvio condicional 
 - Aritméticas 
 - Modificação de endereço 
 Estrutura expandida do computador IAS 
 • CPU 
 - Registrador de buffer de memória - mBR: recebe ou armazena uma palavra da 
 memória ou da unidade de E/S 
 - Registrador de endereço de memória - mAR: especifica o endereço na memória da 
 palavra a ser escrita ou lida no MBR. 
 - Registrador de instrução - IR: contém o opcode de 8 bits da instrução que está 
 sendo executada. 
 6 
 - Registrador de buffer de instrução - IBR: mantém temporariamente a próxima 
 instrução a ser executada. 
 - Contador de programa - pc: contém o endereço do próximo par de instruções a ser 
 apanhado da memória. 
 - Acumulador (Ac) e quociente multiplicador (mq): mantém temporariamente 
 operandos e resultados de operações da ALU. 
 - O resultado de multiplicar dois números de 40 bits é um número de 80 
 bits. 
 Exemplo de Instruções 
 • Algoritmo Alto nível ➭ A = B + C 
 • Algoritmo baixo nível ➭ Load |M(B)| - Transfere o valor absoluto de M(B) para o AC. 
 ➭ ADD |M(C)| - Soma |M(C)| a AC; coloca o resultado em AC. 
 ➭ STOR M(A) - Transfere o conteúdo de AC para o local de memória A. 
 Execução de um programa IAS 
 • As instruções do computador do IAS são executadas uma a uma através de uma 
 sequência de operações; 
 • Quando ligado, o computador executa a instrução à esquerda da primeira palavra da 
 memória (endereço 0); 
 • Depois a instrução à direita da primeira palavra da memória. 
 Ciclo de instrução IAS 
 • IAS opera realizando repetidamente um ciclo de instrução. 
 • Cada ciclo de instrução consiste em dois subciclos. 
 Execução de um programa IAS 
 • Busca da instrução (fetch): buscar a instrução da memória (ou do registrador IBR) e 
 armazenar no IR; 
 • Execução da instrução: Unidade de controle interpretar a instrução armazenada no 
 registrador IR e realizar as operações necessárias; 
 7 
 Passos do Ciclo de busca IAS 
 • A UC move o endereço em PC para MAR; 
 • A UC envia um sinal de controle para a memória fazer uma operação de leitura; 
 • A memória lê a palavra de memória e transfere o conteúdo para o registrador MBR; 
 • A UC copia a segunda metade (bits 20 a 39) do registrador MBR e salva no registrador 
 IBR. 
 • A UC copia os 8 bits à esquerda do registrador MBR para o registrador IR. 
 • A UC copia os 12 bits subsequentes ao campo de operação (bits 8 a 19) e os transfere para 
 o registrador MAR. 
 • Atualiza o PC. 
 Ciclo de busca IAS 
 1. O endereço da palavra a ser lida é escrito no registrador MAR; 
 2. Os circuitos de controle da unidade de controle (UC) enviam um sinal de controle à 
 memória principal, solicitando a leitura do dado; 
 3. A memória principal lê o endereço do registrador MAR e fornece o valor armazenado da 
 palavra; 
 4. A memória principal grava o valor lido no registrador MBR; 
 5. A UC copia a segunda metade (bits 20 a 39) do registrador MBR e salva no registrador 
 IBR; 
 6. A UC copia os 8 bits à esquerda do registrador MBR para o registrador IR; 
 7. A UC copia os 12 bits subsequentes ao campo de operação (bits 8 a 19) e os transfere 
 para o registrador MAR; 
 8. Atualiza o PC. 
 Passos do Ciclo de Execução 
 • Interpretação dos bits do campo operação da instrução, armazenados em IR. 
 • Dependendo da instrução os passos são diferentes. 
 - UC verifica se a instrução requer a busca de operandos da memória 
 - Se a instrução envolve a realização de uma operação lógica ou aritmética: 
 • Passos para realizar a leitura de operandos: 
 - UC envia um sinal para a memória realizar uma operação de leitura 
 - Endereço do operando já foi transferido para o registrador MAR no ciclo de 
 busca. 
 - A memória lê a palavra de memória e transfere o conteúdo para o registrador MBR; 
 8 
 • Passos para realizar uma operação lógica ou aritmética: 
 - A UC envia sinais de controle para a unidade lógica aritmética realizar a operação 
 associada com a instrução; 
 - Operando já devem está nos registradores – AC ou MBR. 
 - A ULA realiza a operação lógica ou aritmética de acordo com os sinais enviados 
 pela UC; 
 - A ULA grava o resultado da operação em seus registradores: AC, MQ ou MBR. 
 • Passos para realizar uma gravação do resultado na memória: 
 - A UC envia um sinal para a memória realizar uma operação de escrita. 
 - Endereço do operando já foi transferido para o registrador MAR no ciclo de 
 busca. 
 - A memória lê o dado de MBR e o grava na palavra dememória associada ao 
 endereço lido de MAR. 
 Gargalo de Von Neumann 
 • Tráfego no barramento: 
 - Instruções e dados utilizam o mesmo barramento; 
 - A cada ciclo do computador somente uma instrução trafega no barramento. 
 • Soluções para eliminar o gargalo: 
 - Manter informações na CPU; 
 - Diminuir o tamanho das informações. 
 Noções de Desempenho 
 • Ciclo de Relógio (clock): 
 - É um circuito oscilador que tem a função de sincronizar o processamento. 
 - Intervalos básicos de tempo nos quais são executadas as operações elementares 
 de uma instrução. 
 - Transferências de valores entre registradores; 
 - Operações aritméticas na ALU. 
 • Frequência é medida em ciclos por segundo (Hertz). 
 •Um processador é controlado por um clock com uma frequência constante. 
 • Período do relógio (T): Tempo de duração de um ciclo do relógio. 
 • Frequência do relógio (f): Frequência de repetição de ciclos de clock por segundo. 
 • Exemplo: Se o período do relógio é de T = 4 ns = 4x10-9 
 f = 1/T = ¼ x 10^-9 = 250 MHz 
 *Para um período de 4ns a máquina pode executar 250 milhões de operações por 
 segundo. 
 9 
Lenovo
Realce
Lenovo
Sublinhado
 Os componentes do computador trocam informações: 
 10 
 Estrutura de interconexão 
 • A coleção de caminhos, conectando os diversos módulos do computador. 
 • A estrutura de interconexão deve admitir os seguintes tipos de transferências: 
 - memória para processador 
 - processador para memória 
 - e/s para processador 
 - processador para e/s 
 - e/s de ou para a memória 
 • Denominada Barramento 
 Barramento 
 • Caminho de comunicação que conecta dois ou mais dispositivos. 
 • Meio de transmissão compartilhado 
 - Múltiplos dispositivos se conectam ao barramento 
 - Sinal transmitido por qualquer dispositivo está disponível para todos 
 - Somente um dispositivo de cada vez pode transmitir com sucesso. 
 • Sistemas de computação contêm diversos barramentos diferentes 
 - Barramento do sistema: conecta os componentes do PC. 
 Estrutura de barramento 
 • Conjunto de linhas interconectadas. 
 - Cada linha trafega um bit 0 ou 1. 
 • As linhas podem ser classificadas em três grupos funcionais: 
 • Barramento de dados 
 - Oferecem um caminho para movimentação de dados entre os módulos do 
 sistema. 
 - A largura do barramento de dados é um fator chave para determinar o 
 desempenho geral do sistema. 
 - Se o barramento de dados tiver 32 bits de largura e cada instrução tiver 64 
 bits de extensão, então é necessário acessar o módulo duas vezes. 
 • Barramento de endereço 
 - Designar a origem ou o destino dos dados no barramento de dados. 
 - A largura do barramento de endereço determina a capacidade de memória 
 máxima possível do sistema. 
 - 8, 16, 32 ou 64 bits 
 • Barramento de controle 
 - Controlar o acesso e o uso das linhas de dados e endereço 
 11 
Lenovo
Sublinhado
Lenovo
Sublinhado
Lenovo
Realce
 - Transmitem informações de comando e sincronização entre os módulos do 
 sistema: 
 - Escrita ou Leitura de memória; 
 - Escrita ou leitura de e/s; 
 - AcK de transferência; 
 - Solicitação de barramento; 
 - Concessão de barramento; 
 - Requisição de interrupção; 
 - AcK de interrupção; 
 - Clock. 
 Operação do barramento 
 • Módulo deseja enviar dados para outro: 
 1. Obter o uso do barramento; 
 2. Transferir dados por meio do barramento. 
 • Módulo deseja requisitar dados de outro módulo: 
 1. Obter o uso do barramento; 
 2. Transferir uma requisição ao outro módulo; 
 3. Esperar que o segundo módulo envie dados. 
 Configuração de Barramento 
 • Arquitetura de barramento tradicional: 
 • Arquitetura de barramento de alto desempenho: 
 12 
 Interrupções: 
 • Mecanismo por meio do qual outros módulos (E/S, memória) podem interromper o 
 processamento normal do processador. 
 • As interrupções são fornecidas primeiramente como um modo de melhorar a eficiência 
 do processamento. Por exemplo, a maioria dos dispositivos externos é muito mais lenta do 
 que o processador. Suponha que o processador esteja transferindo dados a uma 
 impressora usando o esquema de ciclo de instrução da Figura 3.3. Após cada operação de 
 escrita, o processador deve parar e permanecer ocioso até que a impressora o alcance. A 
 extensão dessa pausa pode estar na ordem de muitas centenas ou mesmo milhares de 
 ciclos de instrução que não envolvem memória. Claramente, esse é um grande 
 desperdício de uso do processador. 
 A Figura 3.7a ilustra esse estado de coisas. O programa do usuário realiza uma série de 
 chamadas WRITE intercaladas com processamento. Os segmentos de código 1, 2 e 3 
 referem-se às sequências de instruções que não envolvem E/S. As chamadas WRITE são 
 para um programa de E/S que é um utilitário do sistema e que realizará a 
 operação de E/S real. O programa de E/S consiste em três seções: 
 - Uma sequência de instruções, rotuladas como 4 na figura, para preparar para a 
 operação de E/S real. Isso pode incluir a cópia dos dados para a saída em um buffer 
 especial e a preparação dos parâmetros para um comando de dispositivo. 
 - O comando de E/S real. Sem o uso de interrupções, quando esse comando é 
 emitido, o programa precisa esperar pelo dispositivo de E/S para realizar a função 
 solicitada (ou sondar o dispositivo periodicamente). O programa poderia esperar 
 simplesmente realizando uma operação de teste repetidamente, para determinar 
 se a operação de E/S terminou. 
 - Uma sequência de instruções, rotulada como 5 na figura, para completar a 
 operação. Isso pode incluir a marcação de um flag, indicando o sucesso ou a falha 
 da operação. 
 Como a operação de E/S pode levar um tempo relativamente longo para terminar, o 
 programa de E/S fica preso, esperando que a operação termine; daí o programa de E/S ser 
 interrompido no ponto da chamada WRITE por algum período considerável. 
 INTERRUPÇÕES E O CICLO DE INSTRUÇÃO Com as interrupções, o processador pode 
 estar engajado na execução de outras instruções enquanto uma operação de E/S está em 
 andamento. Considere o fluxo de controle na Figura 3.7b. Como antes, o programa do 
 usuário alcança um ponto em que faz uma chamada do sistema na forma de uma 
 chamada WRITE. O programa de E/S que é invocado, nesse caso, consiste apenas no 
 código de preparação e o comando de E/S real. Depois que essas poucas instruções 
 tiverem sido executadas, o controle retorna ao programa do usuário. Enquanto isso, o 
 dispositivo externo está ocupado aceitando e imprimindo dados vindos da memória do 
 computador. Essa operação de E/S é realizada simultaneamente com a execução de 
 instruções no programa do usuário. 
 Quando o dispositivo externo estiver pronto para ser atendido ou seja, quando estiver 
 pronto para aceitar mais dados do processador , o módulo de E/S para o dispositivo 
 externo envia um sinal de requisição de interrupção ao processador. O processador 
 responde suspendendo a operação do programa atual, desviando para um programa para 
 atender a esse dispositivo de E/S em particular, conhecido como tratador de interrupção, 
 e retomando a execução original depois que o dispositivo for atendido. Os pontos em que 
 essas interrupções ocorrem são indicados por um asterisco na Figura 3.7b. 
 13 
Lenovo
Realce
 14 
 Ciclo de instrução com tratamento de interrupção: 
 Interrupções múltiplas 
 • Processamento de interrupção sequencial: 
 • Processamento de interrupção aninhado: 
 15

Continue navegando