O documento discute interrupções e interconexões em arquitetura de computadores. Explica que interrupções interrompem a execução normal do processador para lidar com eventos como E/S ou erros. Detalha os tipos de interrupções e como elas melhoram a eficiência. Também descreve estruturas de interconexão como barramentos que conectam componentes através de linhas de dados, endereço e controle.
3. 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
4. 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
5. 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
6. Interruções e o ciclo de instrução (cont.)
Ciclo do processamento com interrupção
6
7. 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
9. 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
10. 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
11. 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
12. 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
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
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
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 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