Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se...

29
Entrada e Saída (E/S)

Transcript of Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se...

Page 1: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Entrada e Saída (E/S)

Page 2: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Introdução

•Vimos até o momento como o processador funciona, como se interliga com a memória, etc...

•Mas para que tudo isto funcione, o computador precisa que os dados sejam inseridos (entrada) nele para que ele os processe e nos dê o resultado (saída).

Page 3: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Introdução

•Os dispositivos de entrada e saída provêem uma comunicação entre a máquina e o exterior.

•Em geral os dispositivos de entrada e saída são denominados periféricos (porque encontram-se fisicamente fora do conjunto memória/processador)

Page 4: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

IntroduçãoSubsistema de E/S

Page 5: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

IntroduçãoUm subsistema de E/S deve ser capaz de:

•Receber / Enviar informações ao mundo exterior;

•Converter as informações (de E/S) em uma forma inteligível para a máquina (recebendo) ou para o usuário (enviando)

Page 6: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Interfaces de E/S - Observações•Dispositivos diferentes transmitem dados a

velocidades distintas.

Dispositivo Taxa de transmissão (KB/s)

Teclado 0,01

Mouse 0,02

Impressora Matricial 1

Impressora Laser 200

Scanner 400

CD-ROM 1000

Rede Local 500 a 6000

HD 2000

Page 7: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Interfaces de E/S - Observações•As atividades de E/S são assíncronas, ou seja, não estão sincronizadas ao “clock” da máquina.

▫Naturalmente não são previsíveis ao longo do tempo e nem igualmente espaçadas;

▫É preciso então estabelecer regras para o início e o término das comunicações entre os dispositivos e os barramentos

Page 8: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Interfaces de E/S - Observações•As conexões físicas são longas.

▫Pode haver interferência na transmissão dos sinais;

▫Há necessidade então de mecanismos de detecção e correção de possíveis erros.

Page 9: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Interfaces de E/S - Observações•Dispositivos têm naturezas diferentes. Logo

não podemos conectá-los diretamente ao processador/memória.

•É preciso um ter uma “interface” entre os dispositivos e os “barramentos” para realizar a conexão.

Page 10: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Exemplo de comunicação direta hipotética

Page 11: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Interfaces de E/S - Tarefas•Controlar e sincronizar o fluxo de dados entre

barramento e periférico (compatibilização).

•Realizar a comunicação com o processador (inclusive interpretar os sinais de controle e instruções) para o acesso físico ao periférico.

•Servir de memória auxiliar (buffer de dados) para o trânsito das informações.

•Realizar algum tipo de detecção e correção de erro

Page 12: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Exemplo de Interfaces de E/S

Page 13: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Exemplo de etapas de comunicação

•Enviar caracter para impressora:▫Antes de enviar caracter o processador

precisa verificar o estado da impressora, que pode ser: ociosa (idle) ou ocupada (busy), sem papel, etc... Para isto ele interroga a interface verificando o registrador de estado;

▫O registrador possuí bits específicos para cada função. Por exemplo: o Bit 2 pode ter a informação de estado, sendo 1 para ocupado e 0 para ocioso;

Page 14: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Exemplo de etapas de comunicação

▫Se está ocioso, então o caracter é enviado e armazenado no registrado de dados; além disso o registrador de controle recebe o comando de envio do caracter armazenado para impressão.

▫O processador acessa os registradores internos através de uma porta de E/S que existe na placa mãe; esta porta é logicamente o endereço de um registrador do periferico (pela interface)

Page 15: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Tipos de transmissão•Dispositivos podem ser classificados em:

▫Os que recebem/transmitem informações inteligíveis pelo ser humano. São adequados para interface com usuário (impressora, monitor, teclado...)

▫Os que recebem/transmitem informações inteligíveis apenas pela máquina. (discos magnéticos, sensores)

▫Os que recebem/transmitem dados para dispositivos remotos. (modem)

Page 16: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Tipos de transmissão•Transmissão serial

▫Na transmissão serial o dispositivo (ou periférico) é conectado à interface de E/S por uma única linha de dados;

▫A transmissão é feita bit a bit, embora o controlador possa se ligado à interface através de barramento de várias linhas.

▫Teclado e mouse usam transmissão serial.▫Atualmente as transmissões seriais atingem

altas velocidades

Page 17: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Tipos de transmissão

•Exemplo de transmissão serial

Page 18: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Tipos de transmissão•Transmissão paralela

▫Um grupo de bits é transmitido de cada vez, cada um sendo enviado por uma linha de transmissão;

▫O custo se torna maior devido a maior quantidade de linhas de dados, logo é usado para conectar dispositivos “próximos”.

Page 19: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Tipos de transmissão•Transmissão paralela

▫Intuitivamente pode se pensar que a transmissão paralela possa ser mais rápida que serial, porém, para a comunicação ocorrer, todos os bits devem chegar ao receptor no mesmo momento. Situações de skew (desvio) podem impedir aumento de velocidade.

▫Quanto maior a velocidade, maior a chance de problemas que gerem skew.

▫Solução: voltar à comunicação serial e fazê-la em alta velocidade (USB)

Page 20: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Tipos de transmissão•Transmissão paralela

Page 21: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Métodos para realização de operações de E/S

•A comunicação entre UCP e a interface de E/S pode ocorrer de três formas:▫Entrada/Saída por programa▫Entrada/Saída com emprego de interrupção▫Acesso Direto à Memória (DMA)

Page 22: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Entrada/Saída por programa

•O processador é intensamente utilizado para a realização de uma operação de E/S.

•O processador interroga o dispositivo sobre seu estado. Enquanto o dispositivo não responde “pronto”, o processador processa o loop de questionamento.

Page 23: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Entrada/Saída por programa

Page 24: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Entrada/Saída por interrupção

•O processador não fica mais executando o loop de questionamento.▫Processador emite a instrução de E/S para a

interface e ao invés de ficar verificando o estado do periférico, o processador desvia-se para realizar outra tarefa;

▫Quanto a interface está pronta para enviar/receber os dados do periférico para o processador ela “avisa” ao processador através de um sinal de interrupção que por sua vez interrompe a execução do processador para que ele atenda à interface

Page 25: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Entrada/Saída por interrupção

▫O processador então inicia a transmissão como no método anterior.

Page 26: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Acesso direto à memória - DMA

•Melhor alternativa para operações de E/S com máximo de rendimento.

•De um modo geral é a transferência de dados entre uma determinada interface e a MP praticamente sem a intervenção do processador.

•O processador limita-se a solicitar a transferência para um dispositivo chamado “controlador de acesso direto à memória”, que será responsável pela transferência.

Page 27: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

Acesso direto à memória - DMA

•Quando o controlador termina a transferência, ela avisa a CPU através de interrupção.

•O DMA age como um mestre controlando o barramento.

Page 28: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

** USB **

•Criado em 1995 (USB 1.0) -> Transmissão até 12 Mbps

•Evolução: 2.0 -> Transmissão até 480 Mbps•Veio para substituir portas paralelas•Usa topologia em árvore, com dispositivos

conectados por uma raiz•Suporta até 127 dispositivos em uma única

porta•Hotplug

Page 29: Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se interliga com a memória, etc... Mas para que tudo isto funcione,

** USB **

•Possuí 4 fios▫2 para transmitir dados▫1 para passagem de voltagem de alimentação▫1 para aterramento

•Permite transferência continua (boa para áudio e vídeo)