You are on page 1of 10
Aula 9 — Entrada e Saida (E/S) Objetivos Conhecer as interfaces de E/S de contato com o mundo extern. Abordar as principais técnicas de E/S. Apresentar as principais interfaces de E/S, Além dos componentes até agora apresentados (como processador e meméria), um terceiro elemento é fundamental na composicao do sistema: 0s médulos de B/S, Cada médulo se conecta ao barramento do sistema, podendo controlar um ou mais dispositivos periféricos. O médulo de &/S vai além de ser apenas um conjunto de conectores e cabos que ligam 0 dispositivo ao barramento, ele possui légica associada para exercer o controle sobre os dispositivos periféricos. tT 7 ff Interface de bls BARRAMENTO DE DADOS EDEN ee TO BARRAMENTO DE ENDERE Figura 9.1: Exemplos de modelo de um médulo de E/S Fomerdo ar ‘Aula 9 ~ Entrada e Saida (E/S) 87 e-Tec Brasil Segundo Stallings (2002), os periféricos nao sao ligados diretamente ao barramento do sistema pelos seguintes motivos: a) agrande variedade de periféricos com diferentes mecanismos de operagao torna impraticével incorporar ao processador toda a légica necessaria; bb) a taxa de transferéncia de dados dos periféricos é muito menor do que a taxa de transferéncia de dados da meméria ou da CPU, tornando inviavel © uso do barramento do sistema para comunicagao direta com os dispo- sitivos periféricos; 9) 05 formatos de dados e tamanhos das palavras dos periféricos sao usual- mente diferentes dos usados no computador ao qual estao conectados. Para resolver os problemas de comunicacao com 0 barramento, o médulo de E/S fornece uma interface com 0 processador e a meméria e permite tam- bém interfaces com um ou mais dispositivos periféricos 9.1 Dispositivos externos 0s dispositivos externos oferecem um meio de troca de dados entre o am- biente externo e o computador. A conexao, como jé sabemos, é feita através de um médulo de &/5. Os dispositivos externos podem ser classificados em trés categorias a) voltados para a comunicagao com o usuario - podemos citar aqui os mo- nitores, terminals de video, impresoras, teclados, mouse, dentre outros; b) voltados para a comunicagéo com a maquina - discos magnéticos (discos rigidos) e discos épticos s4o exemplos. £ importante lembrar que, nesse momento, o ponto de vista das unidades é estrutural, ou seja, a forma como eles séo conttolados pelos médulos de £/S. Do ponto de vista de hierarquia, eles ja foram apresentados como meméria externa; 9) voltados para a comunicacao com dispositivos remotos - redes de compu- tadores usando interfaces de rede ou modem podem servir de exemplo. 88 Arquitetura de Computadores Sinai de estado Sinais de dados e Sinais de Controle para o médulo para médulo do médulo de €/5 de EIS des Dados (especificas ‘20 dispositive) de e para o ambiente Figura 9.2: Modelo geral de um dispositive externo Feed aor Na Figura 9.2 podemos descrever detalhes da interacdo do dispositivo ex- terno com o médulo de E/S. A interface com o médulo de E/S é formada de sinais de controle, estado e dados. Observe 4) os sinais de controle determinam a fungao a ser executada pelo dispositi- vo (como enviar dados para 0 médulo de E/S - realizando urn INPUT - ou receber dados do médulo de E/S - realizando um OUTPUT); €) 05 sinais de estado indicado o status do dispositive, como por exemplo, se ele estd pronto ou nao (ligado, desligado, ocupado); f) 08 sinais de dados formam o conjunto de bits a serem enviados para 0 médulo de E/S ou recebido dele. A légica de controle controla a operacao do dispositivo, como por exemplo, © recebimento de um comando para movimentar 0 cabecote de um disco para determinada posicao, essa funcéo € dada pelo sinal de controle. O transdutor converte dados decodificados para sinais elétricos e vice-versa e geralmente usa um espaco temporario para armazenar os dados trabalhados ‘Aula 9~ Entrada e Saida (E/S) 89 0 & Um exemple clissco que podemos abservar com relagao ans sinals de estado € 0 uso de uma impressor, Esse disposi, geralmente informa a0 usuario. alguns status, como par exemple, cise, pronta, sem papel, sem tina ee e-Tec Brasil Conforme ji ctade, 0 armazenamento temporaio ce dados se constitu numa funcio extremamente necessaria, Enquanto a taxa de transeréncia de dados entre a memoria princial © rocessador& bastante aka, ‘25 odens do grandezas dos| lispastivos per éicos sie bem rmenotes, comoreendende numa ampla faa de valores ste armazenamento serve como buffer (meméria mermesiaa agiizando os processos cenvalvendo 0 modulo de 5 @ 0 processador. 9.2 Modulos e funcées de E/S As fungées mais importantes de um médulo de E/S podem ser assim divididos: a) controle e temporizagao; b) comunicagao com 0 processador; 9 comunicacao com dispositivos; 4d) rea de armazenamento temporario de dados; €) deteccao de erros. Levando em consideracao que o processador pode se cormunicar com urn ou mais dispositivos para realizar E/S, um acesso a disco, por exemplo, o médulo de &/S inclu fungdes de controle e temporizacao. Observe 0 Quadro 9.1 a seguir. CMe ee ke 1 ( procesagointeage 0 médulb de ES para veiia seu status 2 ‘Om de 5 retomao status do posto. St soso esiver em operagio pronto, oprocesadorequstaré a ranserénca de datos, por un oman para o dub de BS. 4 ‘Om de reebe um bco de dacs do dipole exer 5 (0s dads so transfers do médule de ES para o processadet 3 © modelo apresentado no Quadro 9.1 indica que ha necessidade de intera- ‘80 entre o médulo de E/S e o processador. Com isso, a comunicagao com 0 processador envolve os seguintes aspects: a) decodificagdo de comando - © médulo de E/S recebe comandos do pro- cessador, enviados como sinais, pelo barramento de controle; b) dados - sao os dados transferidos entre o processador e o médulo de E/S pelo barramento de dados; ©) informacao de estado - 0s periféricos, em geral, sao mais lentos do que © conjunto processadormeméria. Assim, & necessério saber seu estado antes de requisitar seus recursos novamente, como por exemplo, a es- crita de um arquivo no disco, sendo que o médulo de E/S ainda estava processando uma solicitacao anterior; 4) reconhecimento de endereco - da mesma forma que cada byte em me- méria tem seu endereco, cada dispositive esté associado a um enderego de E/S exclusivo 90 Arquitetura de Computadores Por iltimo € ndo menos importante, o médulo de E/S precisa realizar detec- a0 de erros. Tais erros podem variar desde um mau funcionamento mecani co ou elétrico até a alteracao no padrao de bits transmitidos. Para se detec- tar erros de transmissao, utiliza-se algum tipo de cédigo de transmissao. Um. exemplo classico ¢ 0 bit de paridade. Atividades de aprendizagem: Complete as lacunas em branco com o conceito correto: 1.0 6 0 responsével por fazer interface entre os disposi- tivos externos e 0 processador. 2, Os dispositivos externos voltados 8 comunicagao com a podem ser os discos rigidos, unidades dpticas e unidades de fitas. 3. Os emitem fungdes, como por exemplo, uma acao de INPUT, enviando dados para 0 médulo de E/S. 4, Os indicam se um dispositivo, por exemplo, esta ou nao pronto para receber dados. 5. Ao receber um comando para gravar determinado setor do disco, a controla a agao do dispositivo, enviando comandos primiti- vos para que ele movimente sua cabeca de gravacao até determinado setor. Assinale (V) ou (F) para as proposicées: a) (__) Na primeira etapa de controle ¢ temporizagao de E/S, 0 médulo de £/S retorna o status do dispositivo. b) (__ ) Para se comunicar com processador, © médulo de E/S utiliza um endereco exclusive para cada periférico 9 ( ) Na decodificagao de comando, 0 médulo de E/S recebe, pelo barramento de endereco, os sinais enviados pela unidade de controle do processador. ‘Aula 9~ Entrada e Saida (E/S) 1 Bit Obit de parade funciona da Sseguinte forma: na ransssie de um bloco de dados ha uma assocagio a um tipo de cbdigo de paidade, ue pode ser impar 0 pa, dependendo de como o Ceuitotrabalha. Dessa forma, conta-se a quartidade de bts "1" transmitidos; por exemplo: na transmissio do loco "0 1 1 01.10", qual é 0 bit de pa dade de considrarmos o cédigo come impar? Solugio: no bloco do exerplo, existem quatro its "1", Como aparidade &impar o kim bt (chamada de bt de pardede) serd 1 fcando assim: 0.1101 101 Seno mesmo exemplo fesse corsiderado o cédigo como ay obit de pardade seria "0° pois a quaridade de bits "1" & Aquat (que 6 urn numero pat, ) (_) Aexisténcia de um buffer no processo entre troca de dados entre 0 médulo de E/S e o processador, faz com que a CPU trabalhe numa velo- cidade menor, para acompanhar os dispositivos externos lentos ©) (0 bit de paridade da sequéncia 11111101 (nessa sequéncia nao hé o bit de paridade) 6 “1” se levarmos em consideracao circuito utilizando paridade impar. #) ( )Asequéncia 0.010 11.001 (0 titimo bit sublinhado ja 6 o bit de paridade) esta correto se consideramos circuito utilizando paridade par. 9.3 Principais técnicas de E/S Existem, basicamente, trés técnicas principais de E/S, que so’ a) E/S programada (PIO - Programmed Input Output), que é efetuada pelo programa que requisitou a operacéo de F/S; b) B/S dirigida por interrupcao, o programa requisita a E/S ao médulo de B/S e continua sua execucéo até que ocorra uma interrupcao gerada por hardware; 9) Acesso direto a meméria (DMA - Direct Memory Access), em que a E/S & controlada por um processador especial, encarregado por transferir locos de dados. A seguir serdo abordados agora aspectos relevantes sobre todas as técnicas apresentadas 9.3.1 E/S programada Nessa técnica, processador é utilizado intensamente para a realizacao de uma operacdo de E/S. Isso acontece, pois, durante o perfodo da operacao, a CPU fica a todo o momento questionando se o dispositivo esta pronto ou nao para uma nova operacao. 92 Arquitetura de Computadores Figura 9.3: Fluxograma da técnica de E/S programada Fone: rouge 8 Organzagio de Compuraderes 5° Ed, Maio A, Mone, 2007IAdapaci) Conforme explica Monteiro (2007), na E/S programada, o processador testa © estado do dispositivo para verificar sua situacdo, podendo estar pronto, livre ou ocupado. Essa é a fase de interrogasao, ¢, desse modo, se o dis- positivo nao estiver respondendo pronto, o processador realiza um loop de interrogagao (observe a Figura 9.3). Ainda no mesmo fluxograma da Figura 9.3, quando o estado é reconhecido come pronto, o processador comanda a operagao de escrita ou leitura, até completar todo 0 processo. ‘Aula 9~ Entrada e Saida (E/S) 93 e-Tec Brasil ‘As iraces de Spar discos vigiosartigasutleam 0 PIO Moe (Medo ES progamaco) ras agies de eta e eset s0 fa faclmente vist no software «de monitoramento do uso da CPU quando hai eitra ou gravagio de grances blocs de datos, e-Tec Brasil Interface com 0 Interface com bbarramento do dispositivos sistema ‘externas Linhas de dads Linhas de cendereso Linhas de «controle Figura 9.4: Diagrama de blocos de um médulo de E/S Fone Agutevae Organza de Conputaeres roa para Desenpeho.illan Stalls, 2002 adapta A Figura 9.4 consiste num diagrama funcional basico de um médulo de F/S. Na E/S programada, para executar urna operacao de E/S, 0 processador deve executar os seguintes passos: a) enviar 0 endereco do dispositive através das linhas de endereco do bar- ramento do sistema; b) enviar o comando, que é colocado nas linhas de controle e pode ser, por exemplo, de leitura, dessa maneira, a légica de £/S interpreta o comando, busca 0 byte do dispositivo e 0 coloca em seu registrador de dados). 0) 0 processador precisa posteriormente receber o dado, solicitando que a interface o coloque nas linhas de dados do barramento do sistema Ha uma grande desvantagem na E/S programada: 0 uso intenso do proces- sador para comandar operagées corriqueiras de E/S em vez de ser utilizado para o processamento de outras atividades mais importantes 9.3.2 E/S dirigida por interrupgao Vimos que o método de E/S programada usa muito tempo do processador, principalmente nas interrogacées do estado do dispositive, Um método al- ternativo a esse modelo é 0 uso de uma técnica chamada interrupcao, A secéo 4.3.2 abordou os tipos de interrupgdes existentes. Revise-a antes de continuar. No caso do uso de interrupgées, a comunicagao do processador com 0 mé- dulo de E/S e o periférico funciona da seguinte forma: 94 Arquitetura de Computadores a) processador emite uma instrugao para o médulo de E/S, e como nao deve- r4 ter logo uma resposta, ele nao espera o periférico ficar pronto, desviando sua atencao para atender outra atividade (executar outro programa); b) quando o periférico est pronto, seu médulo de E/S avisa 0 processador por um sinal de interrupgao, © processador para o que esta fazendo e atende ao dispositive que o chamou; ©) finalmente, 0 processador inicia 0 programa de E/S, como no método anterior (parte de baixo da Figura 9.3) 9.3.3 Acesso Direto 4 Memo: mory Access) Para Monteiro (2007), a melhor alternativa para se realizar operacées de E/S com 0 maximo de rendimento do processador é utiliza a técnica de Acesso Direto & Meméria -DMA, (DMA - Direct Me- De modo geral, essa técnica consiste na realizado de transferéncia de dados entre uma determinada interface e a meméria principal praticamente sem intervencao do processador. Para que a técnica de DMA funcione corretamente, 0 médulo de DMA usa © barramento quando 0 mesmo nao est sendo usado pelo processador ou quando esse médulo forca o processador a suspender sua operacio. Esta Ultima acao é chamada de roubo de ciclo. De forma pratica, quando © processador deseja ler ou escrever um bloco de dados, um comando é enviado ao médulo DMA com as seguintes informacoes: a) indicagao de operagao de leitura ou de escrita, enviada pela linha de controle de leitura ou de escrita entre o processador e 0 médulo de DMA; b) 0 endereco do dispositivo de E/S envolvido; do endereco de memeéria para inicio da leitura ou escrita de dados; d) numero de palavras a serem lidas ou escritas ‘Aula 9~ Entrada e Saida (E/S) 95 Isso & possivel porque a tecnica de DMA envolve a adigao de um ‘méduloacicional ao barramente Go sistema, Esse mca & capaz de imitar o processador © controlar seu sistema, impondo interupgées 2 ele quando precisa transfer blocas de Sados dos madulos de E'S para a e-Tec Brasil Periférico. (disco, ex) ~ ~ L tT Figura 9.5: Operagio de E/S com 0 uso da técnica de DMA Forte: do ater Vamos exemplificar como funciona esse processo. Na Figura 9.4, durante a operacao normal da CPU, sua chave (chave 1) esta ligada, permitindo a pas- sagem de dados e enderecos entre CPU e meméria principal. Enquanto isso, as chaves do controlador de DMA e de Periférico estéo desligadas (chaves 2. 3). Quando o controlador de DMA entra em acéo, as chaves 2 @ 3 so ligadas. Dessa forma, o controlador de DMA coloca um endereco no barra- mento de endereco para a meméria principal, e, ao mesmo tempo, autoriza (por sinal de controle) que o periférico envie ou receba dados diretamente da meméria principal. Quando esta operacao finaliza, o controlador de DMA devolve 0 controle do barramento ao processador. Resumo © médulo de E/S ¢ responsavel por coordenar 0 acesso aos recursos de pro- cessamento. Um dispositivo nao pode estar conectado diretamente ao bar- ramento de acesso ao processador, pois ele possui varias primitivas de acesso que © processador pode nao entender, lembrando que existem milhares de dispositivos de E/S. Outro detalhe € que eles s80 mais lentos do que 0 pro- cessador, 0 que poderia tomar o sistema ineficiente. Assim, o médulo de E/S faz interface com o processador e 0 seu barramento. Com relacéo a E/S em meméria, que constitui um processo que necesita de alto desempenho, a técnica de DMA é a mais eficiente, pois é adicionado um controlador de me- méria especifico para controlar o uso da meméria pelo dispositive, Iberando © processador para executar outras instrucoes. 96 Arquitetura de Computadores

You might also like