19

Click here to load reader

Interrupções e interconexões

Embed Size (px)

Citation preview

Page 1: Interrupções e interconexões

Arquitetura de ComputadoresProfessor: Sérgio Vieira

Email: [email protected]: 16-10-2012Aula: Interrupções e Interconexões

1

Page 2: Interrupções e interconexões

InterrupçõesSão responsáveis por interromper a sequência normal de execução de instruçõesdo processador.

2

Page 3: Interrupções e interconexões

Interrupções (cont.)

Classes de Interrupções

• Software - gerada por alguma condição que ocorra como resultado daexecução de um instrução (Ec: overflow, divisão por zero etc).

• Relógio - gerado pelo relógio interno do processador. Permite que o sistemaoperacional execute certas funções em intervalos de tempos regulares.

• E/S - gerada por um controlador de E/S para sinalizar a conclusão de umaoperação ou erro.

• Falha de Hardware

3

Page 4: Interrupções e interconexões

Interrupções (cont.)

FunçõesVisa melhorar a eficiência de processamento.

Como os dispositivos de E/S são muito mais lentos que o processador, ele deveesperar o término de certas operações o que é um despedício de tempo deprocessamento.

A interrupção serve para que um dispositivo de E/S, por exemplo, monopolize ouso de processaodr.

4

Page 5: Interrupções e interconexões

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

5

Page 6: Interrupções e interconexões

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

Ciclo do processamento com interrupção

6

Page 7: Interrupções e interconexões

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 depoisprossegue normalmente, quando o processamento dessa interrupção éconcluída.

7

Page 8: Interrupções e interconexões

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

8

Page 9: Interrupções e interconexões

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 dadorelevante para a atividade corrente do processador.

2. Armazena no PC o endereço de início da rotina apropriada detratamento de interruções.

9

Page 10: Interrupções e interconexões

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

Devem ser executadas instruções adicionais no tratamento de interrupções paradeterminá-las e para executar ações adequadas.

Elas permitem que o processador seja utilizado de maneira muito mais eficiente.

10

Page 11: Interrupções e interconexões

Estruturas de InterconexãoColeçã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. Podeenviar sinais de interrupção para o processador.

3. Processador: lê dados e instruções, escreve dados após seuprocessamento e usa sinais de controle para controlar a operação dosistema todo.

11

Page 12: Interrupções e interconexões

Interconexão de BarramentosUm 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, essessinais irão se sobrepor e e serão adulterados.

Apenas um dispositivo pode transmitir sinais pelo barramento a cada instante.

12

Page 13: Interrupções e interconexões

Interconexão de Barramentos (cont.)Um barramento consiste em vários caminhos ou linhas de comunicação, cadaqual 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 trasmitirvários dígitos binários simultaneamente (em paralelo).

É no barramento do sistema que os principais componentes do computadorestão interconectados.

13

Page 14: Interrupções e interconexões

Estrutura de BarramentosUm 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 ControleAlém disso, devem existir linhas para a distribuição de energia.

14

Page 15: Interrupções e interconexões

Estrutura de Barramentos (cont.)

Linhas de DadosFornecem um caminho para a transferência de dados entre os módulos dosistema.

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

Page 16: Interrupções e interconexões

Estrutura de Barramentos (cont.)

Linhas de EndereçoSão utilizados para designar a fonte ou o destino dos dados transferidos pelobarramento de dados.

• Exemplo:

Quando o processador deseja ler uma palavra (8, 16 ou 32 bits) damemória, ele coloca o endereço da palavra nas linhas de endereço.

16

Page 17: Interrupções e interconexões

Estrutura de Barramentos (cont.)

Linhas de ControleSão usadas para controlar o acesso e a utilização das linhas de dados e deendereço.

São utilizados tanto para transmitir comandos quanto para transmitir informaçõesentre os módulos do sistema.

17

Page 18: Interrupções e interconexões

Estrutura de Barramentos (cont.)

Linhas de controle típicasEscrita na memória:

Dados existentes na linha de dados do barramento são gravados na posiçãode 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

Page 19: Interrupções e interconexões

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 umarequisiçã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