Entrada e Saída Introdução
Introdução Constituem a interface de comunicação com o mundo exterior Conecta-se com o barramento ou com o comutador do sistema Controla um ou mais dispositivos Possui uma lógica dedicada a desempenhar a função de comunicação entre periférico e o barramento
Dispositivos externos (1/3) Dispositivos periféricos ligados ao sistema via módulo E/S Classificados em: Comunicação com o usuário Comunicação a máquina Comunicação com dispositivo remoto
Dispositivos externos (2/3) A unidade básica de troca de dados é o caractere A cada caractere é associado um código tipicamente de 7 ou 8 bits A codificação mais utilizada é a ASCII que possui 7 bits Permite representar 27 = 128 caracteres
Dispositivos externos (3/3) Uma tecla pressionada gera um sinal eletrônico, que é interpretado pelo transdutor do teclado em código ASCII O transdutor é usado para Converter dados codificados em outra forma de energia, na saída Converter energia em dados na entrada
Funções do modulo E/S Controle e temporização Comunicação com o Processador Comunicação com dispositivos Área de armazenamento temporário de dados Detecção de erros
Controle e Temporização Controla o fluxo de dados entre o ambiente externo e interno Ex - Uma determinada seqüência de execução representada pelas seguintes etapas: O processador consulta o estado do modulo E/S O modulo reponde informando o estado Se um dispositivo do modulo E/S estiver pronto para transmitir, a os dados são transferidos para processador
Comunicação com o processador Decodificar comandos Interpreta um sinal de controle e executa o mesmo Ex: READS para iniciar um ciclo de leitura da dados num setor do disco Informar estado Reponde a uma requisição do processador sobre o estado de um dispositivo Importante, pois dispositivos são lentos Ex: BUSY que representa que o modulo E/S esta ocupado
Comunicação com o processador Transferir dados A função obvia do módulo Reconhecer Endereços Cada dispositivo de entrada ou saída tem um endereço O modulo E/S tem que reconhecer um endereço distinto para cada dispositivo
Comunicação com os dispositivos Essa comunicação envolve comandos, informação de estado e dados Sinais de controle do módulo E/S Sinais de estado para o módulo E/S Sinais de dados (bits) de e para o módulo E/S Lógica de controle Área de armazenamento temporário Transdutor Dados de e para o Ambiente
Armazenamento temporário A taxa de transferência entre a memória e o processador é alta Porem a taxa de transferência dos periféricos e são da ordem de grandezas menores Essas taxas são variáveis Para melhorar a transferência parte dos dados é armazenada temporariamente no modulo E/S
Armazenamento temporário A transferência entre a memória e o modulo E/S é rápida Os dados são armazenados temporariamente no modulo E/S e depois transferido para os periféricos num taxa adequada No sentido oposto os dados também são armazenados temporariamente
Detecção de Erros Detectar e enviar informações de erro para o processador É utilizado um bit de paridade para verificação O 8 bit no código ASCII Possíveis erros incluem: Mau funcionamento mecânico ou elétrico falta de papel na impressora Alteração no padrão de bits transmitidos
Estrutura do modulo E/S Diagrama de blocos Dados Lógica de Interface com dispositivo externo Registradores de dados Estado Controle Registradores de estado/controle Lógica de Interface com dispositivo externo Dados Linhas de endereço Estado Lógica de E/S Controle Linhas de dados
E/S programada (1/5) Técnica para realização de operações E/S Os dados são transferidos entre o processador e módulo E/S Método de implementação simples Comum em sistemas de baixo desempenho Ex: Sistemas embarcados
E/S programada (2/5) Cada dispositivo possui dois registradores associados: status e buffer de dados Processador testa registrador de status periodicamente, em laço Continua até verificar se o dispositivo esta pronto para: receber (saída) ou disponibilizou um dado (entrada)
E/S programada (3/5) O processo de teste continuo de status é chamado Espera Ocupada Mantém o processador ocioso enquanto realiza operação de entrada ou saída Gera baixo desempenho Útil em aplicações dedicadas
E/S programada (4/5) Instruções IN e OUT permitem ler e escrever nos registradores. Instruções selecionam um dos dispositivos de E/S disponíveis. 1 caractere é lido ou escrito por vez no registrador de dados Processador precisa executar um seqüência de instruções para cada caractere lido ou escrito
E/S programada (5/5) Ex: terminal com um dispositivos de E/S Teclado (Entrada)
Tabela ASCII Ao bits de cada caractere são rotulados de b7 a b1 O bit b7 é o mais significativo (importante) e b1, o menos significativo Geralmente se utiliza um oitavo bit de paridade, o b8 Os caracteres são divididos em imprimíveis e de controle
Tabela ASCII
Tabela ASCII Os imprimíveis representam aqueles que posem ser exibidos na tela Números, letras, símbolos especiais Ex: 1001001 representa a letra I Os de controle servem para controlar a impressão ou exibição de caracteres Ex: 0000010 representa o comando STX que delimita o inicio de um Texto