Arquitetura de Computadores
    Professor:   Sérgio Vieira
        Email:   sergiosvieira.fatene@gmail.com
         Data:   16-10-2012
         Aula:   Interrupções e Interconexões




1
Interrupções
São responsáveis por interromper a sequência normal de execução de instruções
do processador.




2
Interrupções (cont.)
Classes de Interrupções
    • Software - gerada por alguma condição que ocorra como resultado da
      execução de um instrução (Ec: overflow, divisão por zero etc).
    • Relógio - gerado pelo relógio interno do processador. Permite que o sistema
      operacional execute certas funções em intervalos de tempos regulares.
    • E/S - gerada por um controlador de E/S para sinalizar a conclusão de uma
      operação ou erro.
    • Falha de Hardware




3
Interrupções (cont.)
Funções
Visa melhorar a eficiência de processamento.
Como os dispositivos de E/S são muito mais lentos que o processador, ele deve
esperar o término de certas operações o que é um despedício de tempo de
processamento.
A interrupção serve para que um dispositivo de E/S, por exemplo, monopolize o
uso de processaodr.




4
Interrupções e o ciclo de instrução
Com o uso do mecanismo de interrupções, o processador pode executar outras
tarefas enquanto uma operação de E/S está em andamento.




5
Interruções e o ciclo de instrução (cont.)
Ciclo do processamento com interrupção




6
Interruções e o ciclo de instrução (cont.)
Do ponto de vista do programa de usuário, uma interrupção faz apenas isto:
    Interrompe o ciclo normal de execução de uma instrução, que depois
    prossegue normalmente, quando o processamento dessa interrupção é
    concluída.




7
Interruções e o ciclo de instrução (cont.)




8
Interruções e o ciclo de instrução (cont.)
Se houver alguma interrupção pendente, o processador faz o seguinte:

      1. Suspende a execução do programa atual e salva seu contexto
         (endereço da próxima instrução a ser executada e qualquer outro dado
         relevante para a atividade corrente do processador.
      2. Armazena no PC o endereço de início da rotina apropriada de
         tratamento de interruções.




9
Interruções e o ciclo de instrução (cont.)
Custo Adicional
Devem ser executadas instruções adicionais no tratamento de interrupções para
determiná-las e para executar ações adequadas.
Elas permitem que o processador seja utilizado de maneira muito mais eficiente.




10
Estruturas de Interconexão
Coleção de caminhos que conectam os vários módulos (processador, memória,
E/S)
Principais trocas de informações para cada tipo de módulo:

      1. Memória: operações de leitura e escrita na memória.
      2. E/S: operações de leitura e escrita nos dispositivos periféricos. Pode
         enviar sinais de interrupção para o processador.
      3. Processador: lê dados e instruções, escreve dados após seu
         processamento e usa sinais de controle para controlar a operação do
         sistema todo.




11
Interconexão de Barramentos
Um barramento é uma caminho de comunicação entre dois ou mais dispositivos.
É um meio de comunicação compartilhado.
Se dois dispositivos transmitirem sinais ao barramento ao mesmo tempo, esses
sinais irão se sobrepor e e serão adulterados.
Apenas um dispositivo pode transmitir sinais pelo barramento a cada instante.




12
Interconexão de Barramentos (cont.)
Um barramento consiste em vários caminhos ou linhas de comunicação, cada
qual capaz de transmitir sinais que representam um único dígito binário, 0 ou 1.
As diversas linhas de barramento podem ser usadas em conjunto para trasmitir
vários dígitos binários simultaneamente (em paralelo).
É no barramento do sistema que os principais componentes do computador
estão interconectados.




13
Estrutura de Barramentos
Um barramento de sistema contém diversas linhas distintas (50-100)
Cada linha possui uma função ou siognificado particular.
Elas são classificadas em três grupos funcionais:

      1. Linhas de Dados
      2. Linhas de Endereço
     3. Linhas de Controle
Além disso, devem existir linhas para a distribuição de energia.




14
Estrutura de Barramentos (cont.)
Linhas de Dados
Fornecem um caminho para a transferência de dados entre os módulos do
sistema.
Barramento de Dados
Tipicamente possui 8, 16 ou 32 linhas (largura de barramento de dados)
A largura de barramento de dados define o desempenho global do sistema.




15
Estrutura de Barramentos (cont.)
Linhas de Endereço
São utilizados para designar a fonte ou o destino dos dados transferidos pelo
barramento de dados.
     • Exemplo:
          Quando o processador deseja ler uma palavra (8, 16 ou 32 bits) da
          memória, ele coloca o endereço da palavra nas linhas de endereço.




16
Estrutura de Barramentos (cont.)
Linhas de Controle
São usadas para controlar o acesso e a utilização das linhas de dados e de
endereço.
São utilizados tanto para transmitir comandos quanto para transmitir informações
entre os módulos do sistema.




17
Estrutura de Barramentos (cont.)
Linhas de controle típicas
Escrita na memória:
     Dados existentes na linha de dados do barramento são gravados na posição
     de memória especificada na linha de endereço.
Leitura de memória:
Escrita em porta de E/S
Leitura de porta de E/S
Confirmação (ACK) de transferência
     Confirma o envio ou o recebimento de dados
Requisições de barramento
18
indica que um módulo do sistema necessita obter o controle do barramento
Concessão de barramento
     indica a concessão de uso ao barramento a um módulo que fez uma
     requisição
Requisição de interrupção
Confirmação de requisição
Relógio
     Utilizado para temporização de operações
Inicialização (reset)
     inicializa todos os módulos do sistema




19

Interrupções e interconexões

  • 1.
    Arquitetura de Computadores Professor: Sérgio Vieira Email: sergiosvieira.fatene@gmail.com Data: 16-10-2012 Aula: Interrupções e Interconexões 1
  • 2.
    Interrupções São responsáveis porinterromper a sequência normal de execução de instruções do processador. 2
  • 3.
    Interrupções (cont.) Classes deInterrupções • Software - gerada por alguma condição que ocorra como resultado da execução de um instrução (Ec: overflow, divisão por zero etc). • Relógio - gerado pelo relógio interno do processador. Permite que o sistema operacional execute certas funções em intervalos de tempos regulares. • E/S - gerada por um controlador de E/S para sinalizar a conclusão de uma operação ou erro. • Falha de Hardware 3
  • 4.
    Interrupções (cont.) Funções Visa melhorara eficiência de processamento. Como os dispositivos de E/S são muito mais lentos que o processador, ele deve esperar o término de certas operações o que é um despedício de tempo de processamento. A interrupção serve para que um dispositivo de E/S, por exemplo, monopolize o uso de processaodr. 4
  • 5.
    Interrupções e ociclo de instrução Com o uso do mecanismo de interrupções, o processador pode executar outras tarefas enquanto uma operação de E/S está em andamento. 5
  • 6.
    Interruções e ociclo de instrução (cont.) Ciclo do processamento com interrupção 6
  • 7.
    Interruções e ociclo de instrução (cont.) Do ponto de vista do programa de usuário, uma interrupção faz apenas isto: Interrompe o ciclo normal de execução de uma instrução, que depois prossegue normalmente, quando o processamento dessa interrupção é concluída. 7
  • 8.
    Interruções e ociclo de instrução (cont.) 8
  • 9.
    Interruções e ociclo de instrução (cont.) Se houver alguma interrupção pendente, o processador faz o seguinte: 1. Suspende a execução do programa atual e salva seu contexto (endereço da próxima instrução a ser executada e qualquer outro dado relevante para a atividade corrente do processador. 2. Armazena no PC o endereço de início da rotina apropriada de tratamento de interruções. 9
  • 10.
    Interruções e ociclo de instrução (cont.) Custo Adicional Devem ser executadas instruções adicionais no tratamento de interrupções para determiná-las e para executar ações adequadas. Elas permitem que o processador seja utilizado de maneira muito mais eficiente. 10
  • 11.
    Estruturas de Interconexão Coleçãode caminhos que conectam os vários módulos (processador, memória, E/S) Principais trocas de informações para cada tipo de módulo: 1. Memória: operações de leitura e escrita na memória. 2. E/S: operações de leitura e escrita nos dispositivos periféricos. Pode enviar sinais de interrupção para o processador. 3. Processador: lê dados e instruções, escreve dados após seu processamento e usa sinais de controle para controlar a operação do sistema todo. 11
  • 12.
    Interconexão de Barramentos Umbarramento é uma caminho de comunicação entre dois ou mais dispositivos. É um meio de comunicação compartilhado. Se dois dispositivos transmitirem sinais ao barramento ao mesmo tempo, esses sinais irão se sobrepor e e serão adulterados. Apenas um dispositivo pode transmitir sinais pelo barramento a cada instante. 12
  • 13.
    Interconexão de Barramentos(cont.) Um barramento consiste em vários caminhos ou linhas de comunicação, cada qual capaz de transmitir sinais que representam um único dígito binário, 0 ou 1. As diversas linhas de barramento podem ser usadas em conjunto para trasmitir vários dígitos binários simultaneamente (em paralelo). É no barramento do sistema que os principais componentes do computador estão interconectados. 13
  • 14.
    Estrutura de Barramentos Umbarramento de sistema contém diversas linhas distintas (50-100) Cada linha possui uma função ou siognificado particular. Elas são classificadas em três grupos funcionais: 1. Linhas de Dados 2. Linhas de Endereço 3. Linhas de Controle Além disso, devem existir linhas para a distribuição de energia. 14
  • 15.
    Estrutura de Barramentos(cont.) Linhas de Dados Fornecem um caminho para a transferência de dados entre os módulos do sistema. Barramento de Dados Tipicamente possui 8, 16 ou 32 linhas (largura de barramento de dados) A largura de barramento de dados define o desempenho global do sistema. 15
  • 16.
    Estrutura de Barramentos(cont.) Linhas de Endereço São utilizados para designar a fonte ou o destino dos dados transferidos pelo barramento de dados. • Exemplo: Quando o processador deseja ler uma palavra (8, 16 ou 32 bits) da memória, ele coloca o endereço da palavra nas linhas de endereço. 16
  • 17.
    Estrutura de Barramentos(cont.) Linhas de Controle São usadas para controlar o acesso e a utilização das linhas de dados e de endereço. São utilizados tanto para transmitir comandos quanto para transmitir informações entre os módulos do sistema. 17
  • 18.
    Estrutura de Barramentos(cont.) Linhas de controle típicas Escrita na memória: Dados existentes na linha de dados do barramento são gravados na posição de memória especificada na linha de endereço. Leitura de memória: Escrita em porta de E/S Leitura de porta de E/S Confirmação (ACK) de transferência Confirma o envio ou o recebimento de dados Requisições de barramento 18
  • 19.
    indica que ummódulo do sistema necessita obter o controle do barramento Concessão de barramento indica a concessão de uso ao barramento a um módulo que fez uma requisição Requisição de interrupção Confirmação de requisição Relógio Utilizado para temporização de operações Inicialização (reset) inicializa todos os módulos do sistema 19