Entradas saídas

Em um sistema baseado em um processador , microprocessador , microcontrolador ou PLC , a troca de informações entre o processador e os periféricos associados a ele é chamada de entrada-saída . Desta forma, o sistema pode reagir às mudanças em seu ambiente, ou mesmo controlá-lo. Às vezes, eles são designados pela sigla I / O , derivada do inglês I nput / O utput ou mesmo I / O para entradas / saídas.

Em um sistema operacional  :

Exemplo simplificado:

Estrutura de um sistema microprocessado

Um sistema de microprocessador inclui necessariamente os seguintes elementos:

Os vários elementos do sistema são conectados por 3 ônibus  :

A evolução da tecnologia permite que sistemas que antes exigiam várias caixas possam ser perfeitamente integrados em uma única caixa que reúne as diferentes funções; veja, por exemplo, a família ADuC de processadores da Analog Devices .

Exemplo de um sistema de microprocessador

Uma máquina de lavar é um excelente exemplo de sistema de controle acionado por microprocessador. Os principais elementos da máquina são:

O processador receberá informações dos dispositivos de entrada:

Com base nessas informações, ele enviará comandos para os dispositivos de saída:

Portas de entrada / saída

Os periféricos são conectados ao resto do sistema por meio de circuitos chamados portas de entrada e portas de saída (algumas portas podem combinar as duas funções).

Essencialmente, uma porta de entrada é composta de buffers tri-state . Estes se comportam como chaves eletrônicas que mostram, no momento desejado, os níveis lógicos do periférico de entrada (escolhido pelo barramento de endereços) no barramento de dados; esses níveis serão armazenados em um registro do processador (o registro é um slot de RAM).

Uma porta de saída é essencialmente composta de flip - flops do tipo D. Eles se comportam como pequenas memórias. Sua entrada é conectada ao barramento de dados. O processador grava um nível lógico 0 ou 1 em cada um dos flip-flops. As saídas dos flip-flops controlam os periféricos, geralmente por meio de um estágio de alimentação.

Dispositivos de entrada

Uma entrada é um fluxo de dados proveniente de:

Esses sinais de entrada geram interrupções de hardware que são processadas em prioridade pelo manipulador de interrupções no kernel do sistema operacional .

Em sistemas microprocessados, como a máquina de lavar mencionada acima, existem botões e interruptores.

Muitos microcontroladores incorporam contadores; os sinais moldados e aplicados às entradas de contagem também constituem sinais de entrada para o sistema.

Em sistemas de computador, a escolha é muito mais ampla: teclado, mouse , caneta de luz, digitalizador, conversores analógico / digital, etc.

Enfatize que, para serem processados ​​pelo processador, quaisquer sinais devem ser convertidos em sinais lógicos compatíveis com o processador. Em alguns casos, será necessário colocar conversores de nível ou estágios de isolamento (geralmente opto-acopladores ).

Dispositivos de saída

As saídas são associadas a alçapões ou chamadas do sistema .

Uma saída pode ser (esta lista não é exaustiva):

Em sistemas baseados em microprocessador, diodos emissores de luz ( LEDs ) ou lâmpadas incandescentes são usados ​​como luzes ou indicadores, LED digital ou alfanumérico ou visores de cristal líquido para exibir mensagens do sistema, relés (para controlar sinais). Cargas que requerem altas correntes e / ou tensões), optoacopladores, etc.

Nos sistemas informáticos, a escolha é vasta: ecrã para display, impressora para produção de documentos em papel, conversores digital / analógico, etc.

Dispositivos de entrada / saída

Muitos dispositivos são dispositivos de entrada e saída. O modem , por exemplo, permite enviar ou receber informação do exterior: correio electrónico, navegação na Internet, mas também envio e recepção de faxes, telefonia informática ( VoIP , Voice over IP ).

As placas de rede usadas para conectar vários computadores para obter uma rede de computadores local, que permite compartilhar arquivos e recursos como uma impressora de rede, scanner ...

Também existe uma gama completa de dispositivos de armazenamento em massa: disco rígido , cartão de memória , unidade de disquete , unidade de DVD , chave USB .

Da mesma forma, monitores de computador , quando equipados com telas sensíveis ao toque .

Gestão de entrada / saída

Existem basicamente três maneiras de gerenciar entradas / saídas.

Entradas / saídas programadas

Durante a execução de seu programa principal, o microprocessador lerá periodicamente o estado dos dispositivos de entrada e modificará, se necessário, o estado das portas de saída. Esta é a técnica mais simples. Exemplo: sistema de controle de aquecimento em um edifício.

Interrupções

Essa técnica é usada quando o processador precisa reagir rapidamente a uma mudança no estado de uma porta de entrada. O periférico informa o processador por meio de uma linha de interrupção fornecida para esse fim. O processador interrompe a tarefa atual, salta para a sub-rotina destinada a gerenciar a solicitação específica endereçada a ele; no final da sub-rotina, o processador retoma a execução do programa principal de onde parou e dá um resultado consistente.

Acesso direto à memória

Esta técnica, muitas vezes conhecida por suas iniciais DMA ( Direct Memory Access ), é utilizada quando é necessário realizar uma transferência rápida de uma grande quantidade de dados entre, por exemplo, um CD player e um disco rígido. Em vez de transferir os bytes primeiro para um registro no processador e depois apenas para o disco rígido, os bytes são transferidos diretamente de um dispositivo para outro, sem passar pelos registros do processador. A transferência de dados é organizada por um circuito especial denominado controlador DMA, que ocupa o lugar do processador durante a transferência e gerencia o endereço e os barramentos de controle.

Performances

O desempenho de um computador é uma medida do tempo que leva para executar um determinado processamento. Três elementos influenciam esse desempenho:

O tempo necessário para qualquer processamento de dados é sempre determinado por um desses três elementos, mas o das entradas / saídas é geralmente preponderante. Na verdade, o tempo dedicado às operações de E / S é contado em milissegundos, enquanto o tempo dedicado às instruções executadas pelo processador é contado em nanossegundos.

O tamanho da memória é especialmente importante na medida em que permite reduzir o número de operações de entrada / saída, seja porque uma parte maior dos programas de aplicação pode residir na memória, reduzindo assim os fenômenos de paginação, ou porque parte desta memória pode ser usado como um buffer ( memória cache ) para o armazenamento dos fluxos de dados das operações de E / S.


Tanto na programação como no nível do sistema (por exemplo em mainframes ), dois elementos de hardware (entre outros) influenciam o desempenho das entradas / saídas, ou seja, sua velocidade:

Se os recursos de CPU ou I / O são insuficientes durante a execução de um ou mais processos simultâneos, falamos de saturação.

Veja também