Вы находитесь на странице: 1из 23

Entrada e Sada

Tcnicas para operaes E/S

Reviso

Constituem a interface de comunicao com o mundo exterior Conecta-se com o barramento ou com o comutador do sistema Controla um ou mais dispositivos Possui uma lgica dedicada a desempenhar a funo de comunicao entre perifrico e o barramento

Reviso - Funes do modulo E/S


Controle e temporizao Comunicao com o Processador Comunicao com dispositivos rea de armazenamento temporrio de dados Deteco de erros

Reviso - Estrutura do modulo E/S

Diagrama de blocos
Registradores de dados Lgica de Interface com dispositivo externo

Dados Estado

Controle

Registradores de estado/controle Lgica de Interface com dispositivo externo

Dados
Estado Controle

Linhas de endereo Lgica de E/S Linhas de dados

Reviso - E/S programada


Tcnica para realizao de operaes E/S Os dados so transferidos entre o processador e mdulo E/S Mtodo de implementao simples Comum em sistemas de baixo desempenho

Ex: Sistemas embarcados

Reviso - E/S programada


Cada dispositivo possui dois registradores associados: status e buffer de dados Processador testa registrador de status periodicamente, em lao Continua at verificar se o dispositivo esta pronto para:

receber (sada) ou disponibilizou um dado (entrada)

Reviso - E/S programada

Ex: terminal com um dispositivos de E/S

Teclado (Entrada)

E/S Dirigida por Interrupo (1/5)


Processador apenas inicia a operao de E/S Processador habilita interrupes Processador sai do processo, ficando livre para outras tarefas Vantagem: o processador no precisa esperar que o dispositivo acabe operao de E/S. Desvantagem: a cada caractere transmitido necessrio tratar uma interrupo

E/S Dirigida por Interrupo (2/5)


Quando o caractere escrito ou recebido, o dispositivo gera uma interrupo Isso ativa um sinal no pino de interrupo do processador

Sinal de interrupo = (bit Pronto ou bit Caractere Disponvel) AND (bit Habilita Interrupes)

Isso serve como aviso de que a operao de E/S foi concluda

E/S Dirigida por Interrupo (3/5)


Ex: Dispositivo est Pronto para receber um novo caractere Processador coloca um caractere no registrador buffer, o que desliga o bit Pronto Processador liga o bit Habilita Interrupes e sai do processo

E/S Dirigida por Interrupo (4/5)


Concluda a operao de sada, o dispositivo liga o bit Pronto. Sinal de interrupo para o processador gerado como (bit Habilita Interrupo) AND (bit Pronto).

E/S Dirigida por Interrupo (5/5)


Processador desliga bit Habilita Interrupes. Processador interrompe o programa corrente e executa rotina de atendimento a interrupo. Processador retoma o programa interrompido.

Acesso direto a memria (1/6)

A E/S dirigida por interrupo, embora mais eficiente que a programada, ainda requer uma interveno ativa do processador quando

Dados so transferidos da memria para o mdulo E/S A transferncia feita por um caminho que passa pelo processador

Acesso direto a memria (2/6)

Isso gera duas desvantagens:

A taxa de transferncia de E/S limitada pela velocidade com que o processador pode testar e servir um dispositivo O processador se ocupa de gerenciar a transferncia de dados de E/S, tendo de executar varias instrues a cada transferncia

Acesso direto a memria (3/6)

A tcnica de acesso direto a memria (DMA) utiliza um controlador dedicado para acessar diretamente a memria Ele toma posse do barramento e realiza E/S programada Avisa ao processador, por meio de interrupo, quando a operao de E/S estiver finalizada

Acesso direto a memria (4/6)

Vantagens:

O processador no precisa ficar em espera ocupada Ele fica livre para realizar outras tarefas No necessrio tratar uma interrupo por caractere transmitido A interrupo s gerada aps a transmisso de um bloco de caracteres de tamanho especificado

Acesso direto a memria (5/6)

Desvantagens:

Toda vez que o controlador requisita o barramento, seja para acessar a memria ou para acessar o dispositivo, ele tem prioridade sobre o processador Diz-se que o controlador de DMA rouba ciclos de barramento do processador.

Acesso direto a memria (6/6)

Controlador de DMA possui, no mnimo, quatro registradores:


Endereo: armazena o endereo de memria a ser lido ou escrito. Contador: armazena o nmero de bytes a serem lidos ou escritos. Dispositivo: armazena o nmero do dispositivo E/S a ser usado. Direo: indica se operao de leitura ou escrita no dispositivo

Acesso direto a memria - Exemplo

Escrever 256 bytes armazenados na memria principal a partir do endereo 1023, para um dispositivo de sada identificado pelo nmero 7 Considere para direo:

Leitura = 0 Escrita = 1

Acesso direto a memria - Exemplo

Inicio

Acesso direto a memria - Exemplo

O DMA requisita barramento para ler o endereo 1023 da memria, fazendo a sua leitura e obtendo um byte.

Acesso direto a memria - Exemplo


Controlador solicita escrita no dispositivo 7 para enviar um byte Quando o byte for enviado, controlador incrementa o endereo e decrementa o contador, verificando se este chegou em zero. Caso o contador no seja igual a zero processo todo repetido para enviar o prximo byte.

Acesso direto a memria - Exemplo

Quando o contador chegar a zero, o controlador de DMA para o processo e avisa o fim da operao de E/S ao processador por meio de uma interrupo.

Interrupo

Вам также может понравиться