Arquitetura e organização de
computadores
Tratamento de interrupções
Aula 12
Prof. Diovani Milhorim
Introdução
A arquitetura E/S de um computador
constitui sua interface com o mundo
exterior
Existem 3 técnicas principais de E/S:
E/S programada
E/S dirigida por interrupção
DMA (Acesso Direto à Memória)
Formado por módulos E/S
Introdução
Por que existem módulos E/S?
Grande variedade de periféricos
Periféricos tem velocidade baixa
Usam formatos de dados e palavras diferentes
Dispositivos Externos
Também chamados de periféricos
Três tipos:
Dispositivos para comunicação com o usuário
Dispositivos para comunicação com a máquina
Dispositivos para comunicação com
dispositivos remotos
Módulos de E/S
Funções principais:
Controle e temporização
Comunicação com o processador
Comunicação com dispositivos
Área de armazenamento temporário de dados
Detecção de erros
E/S Programada
Os dados são transferidos entre o
processador e o modulo de E/S
O processador executa um programa e
tem controle direto da operação de E/S
O módulo E/S executa a operação e
sinaliza o término através de um
registrador de estado
Comandos de E/S
 Controle
 Ativa um periférico e indica uma ação a ser executada
 Teste
 Testa as condições de estado associadas a um módulo de E/S e
seus periféricos
 Leitura
 Obter um dado do periférico
 Gravação
 Faz com que o módulo E/S obtenha um dado do barramento de
dados e o transmita para o periférico
Instruções E/S
Modos de endereçamento
Mapeado na memória
Único espaço de endereçamento para posições de
memória e dispositivos E/S
Endereçamento independente
Instruções dependem do modo de
endereçamento
Vantagem/Desvantagem
E/S Dirigida por Interrupção
O problema da E/S programada é que o
processador tem que ficar esperando o
módulo E/S ficar pronto
A solução são as interrupções
É mais eficiente pois elimina ciclos de
espera desnecessários
Operações de E/S
Com Interrupção: processador envia um
comando para o módulo de E/S e continua
a executar outras instruções. Ele será
interrompido pelo módulo de E/S quando
este estiver pronto
10
Como funciona um computador?
Início
Executa a instrução
Há interrupção?
Sim
Não
Busca a próxima
instrução
Término
Salta p/ rotina
de interrupção
Processamento de Interrupção

Feito em 9 etapas:
1.
2.
3.
4.
5.
6.
7.
8.
9.
O dispositivo envia um sinal de interrupção
O processador termina a execução da instrução atual
O processador testa se existe uma interrupção pendente
O processador salva o contexto atual
O processador carrega o contador de programa com o
endereço da rotina de tratamento da interrupção
A rotina de interrupção armazena os registradores na pilha
A rotina então é iniciada
Os registradores são restaurados
O contexto é restaurado
Processo de Interrupção simples
Dispositivo Controlador
ou outro dispositivo do
sistema pede interrupção
Processador termina a
execução da instrução
em andamento
Salve resto da Informação
do estado do processo
Processa Interrupção
Software
Hardware
Processador sinaliza
reconhecimento de
interrupção
Restaura Informação do
estado do processo
Processador salva PSW
e PC na pilha de controle
(Push)
Restaura PSW e PC do
programa pri ncipal ( em
execução) antes da
interrupção
Processador carrega
novo valor do PC
baseado na interrupção
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Múltiplas linhas de interrupção
Identificação por software
Daisy chain
Arbitração do barramento
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Múltiplas linhas de interrupção
Cada dispositivo tem sua identificação (irq) junto ao
processador.
Problema: número finito de irqs.
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Múltiplas linhas de interrupção
Cada dispositivo tem sua prioridade determinada pelo processador.
Aspectos de projeto
IRQ 0 - Sinal de clock da placa mãe (fixo)
IRQ 1 - Teclado (fixo)
IRQ 2 - Cascateador de IRQs (fixo)
IRQ 3 - Livre (serial 2 desativada)
IRQ 4 - Modem
IRQ 5 - Livre
IRQ 6 - Drive de disquetes
IRQ 7 - Livre (porta paralela desativada)
IRQ 8 - Relógio do CMOS (fixo)
IRQ 9 - Placa de som, placa de rede (1), placa de rede (2)
IRQ 10 - Placa de vídeo
IRQ 11 - Controlador USB (Mouse, impressora e scanner)
IRQ 12 - Porta PS/2
IRQ 13 - Coprocessador aritmético
IRQ 14 - IDE Primária
IRQ 15 - Livre (IDE Secundária desativada)
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Daisy chain
Processador recebe requisição e varre o barramento
a procura de quem emitiu o sinal.
O elemento que emitiu o sinal interrompe o
barramento de requisição para se identificar.
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Daisy chain
Barramento verde: permissão de uso
Obs: dispositivo que emitiu a requisição interrompe o barramento.
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Arbitração do barramento
O dispositivo observa se o barramento de dados está
ocupado.
Se o barramento está livre ele emite sua prioridade
no barramento de requisição
Em seguida ele interrompe o barramento de
permissão e utiliza o barramento de dados livre.
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Arbitração do barramento
Aspectos de projeto
Técnicas de identificação de qual dos
módulos E/S enviou a interrupção:
Identificação por software
Cada barramento tem um arbitro que decide por
prioridade qual dispositivo deve ocupar o
barramento.
O arbitro utiliza uma única irq para se comunicar com
processador.
Toda requisição será mascarada como sendo do
arbitro (ex. pci, usb)
Acesso Direto à Memória (DMA)
 Desvantagens da E/S programada e da
E/S dirigida por interrupção
1. A taxa de transferência de E/S é limitada pela
velocidade com que o processador pode
testar e servir um dispositivo
2. O processador se ocupa de gerenciar a
transferência de dados de E/S, tendo de
executar várias instruções a cada
transferência
Acesso Direto à Memória (DMA)
DMA – Acesso direto à memória
Inclusão de um módulo ou controlador de
DMA direto no barramento do sistema
Utiliza um barramento quando este não
está sendo usado pelo processador ou
força o processador a suspender sua
operação temporariamente (roubo de
ciclo)
Acesso Direto à Memória (DMA)
 Para ler ou escrever dados, o processador envia
as seguintes informações para o controlador
DMA:
Indicação de operação (leitura ou escrita)
Endereço do dispositivo de E/S envolvido
Endereço de memória inicial
Número de palavras a serem lidas ou escritas
 O processador fica liberado, e ao término da
execução o controlador DMA gera uma
interrupção
Pontos de suspensão de DMA
26
Evolução da E/S
No início CPU controlava diretamente o
dispositivo (microprocessor-controlled
devices)
Módulo de E/S (ou controlador) é
adicionado
Assim CPU não precisa conhecer detalhes específicos
dos dispositivos
CPU usa E/S programada sem interrupção
27
Evolução da E/S
 Surge então a interrupção
CPU trabalha enquanto ocorre E/S
 O módulo de E/S ganha poder para acessar
memória diretamente (DMA)
 O módulo de E/S torna-se um processador
Conjunto próprio de instruções para E/S
Módulo de E/S é capaz de executar um programa sem
intervenção alguma da CPU
Também conhecido por canal de E/S
28
Evolução da E/S
 Módulo de E/S ganha uma memória local
própria
Maior número de dispositivos podem ser controlados
Tamanho de buffer maior para troca de dados
Também conhecido como processador de E/S
 Ocasionalmente os termos canais de E/S (I/O
Channel) e processador de E/S (I/O Processor)
são usados para designar os mesmos módulos
de E/S
29
Canais e Processadores de E/S
 A evolução da função de E/S
1. A CPU controla diretamente cada dispositivo periférico
2. Um controlador ou módulo de E/S é adicionado. A
CPU usa E/S programada sem interrupções
3. E/S com interrupções
4. DMA
5. O módulo de E/S é aprimorado, tornando-se um
processador de E/S
6. O módulo de E/S inclui uma memória local própria,
tornando-se um computador
Download

Aulas 12 - professordiovani.com.br