Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se...
Transcript of Entrada e Saída (E/S). Introdução Vimos até o momento como o processador funciona, como se...
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, o computador precisa que os dados sejam inseridos (entrada) nele para que ele os processe e nos dê o resultado (saída).
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)
IntroduçãoSubsistema de E/S
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)
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
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
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.
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.
Exemplo de comunicação direta hipotética
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
Exemplo de Interfaces de E/S
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;
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)
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)
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
Tipos de transmissão
•Exemplo de transmissão serial
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”.
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)
Tipos de transmissão•Transmissão paralela
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)
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.
Entrada/Saída por programa
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
Entrada/Saída por interrupção
▫O processador então inicia a transmissão como no método anterior.
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.
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.
** 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
** 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)