Entrada e Saída (E/S ou I/O) Livro Introdução à Organização de Computadores Capítulo: 10 – Entrada e Saída
Entrada e Saída (E/S ou I/O) Qual a utilidade de um sistema capaz de fazer milhões de cálculos por segundo, se não pudermos dizer a ele que cálculos deve fazer, ou então vermos os resultados destes cálculos?
Entrada e Saída (E/S ou I/O) Processador Modelo de estrutura de um sistema de computação Memória cache Memória principal Interface de E/S Interface de E/S Interface de E/S Disco Vídeo Rede
Entrada e Saída (E/S ou I/O) Fonte: http://www.pcmag.com/encyclopedia/term/48076/northbridge
Entrada e Saída (E/S ou I/O) Interfaces E/S Interfaces de E/S podem ter velocidades diferentes, de acordo com o que esta conectado; E/S é usualmente assíncrona; A transmissão, devido à distância, pode ser corrompida, exigindo mecanismos de controle de erro; Cada dispositivo de E/S tem natureza própria, considerando velocidade, formato dos dados, quantidade de informações envolvidas, etc.
Entrada e Saída (E/S ou I/O) Barramento do sistema Dispositivo de E/S Dados Endereço Registrador de endereço Dados Registrador de dados Registrador de dados Dados Controle Lógica Sinais de controle
Entrada e Saída (E/S ou I/O) Funções (interface de E/S): Controla e sincroniza o fluxo de dados; Realiza a comunicação com a UCP; Serve de memória auxiliar para o trânsito de informações; Realiza algumas funções de detecção e correção de erros na transmissão.
Entrada e Saída (E/S ou I/O) Tipos de transmissão: Comunicação homem-máquina; Comunicação máquina-máquina; Comunicação remota.
Entrada e Saída (E/S ou I/O) Tipos de transmissão – Serial Antigamente era a mais lenta; Informações são transmitidas bit a bit; Ambas as partes (transmissor e receptor) precisam estar sincronizados ou pelo menos trabalhando na mesma velocidade; A transmissão pode ser síncrona ou assíncrona.
Entrada e Saída (E/S ou I/O) Tipos de transmissão – Assíncrona Não usa sinais de relógio para sincronizar a transmissão; Pra indicar o inicio de um byte envia um sinal 0 (zero), e dois sinais 1 (um) para indicar o final do byte; Um dispositivo comum para transmissão e recepção é denominado UART (Universal Asynchronous Receiver/Transmitter), representado a seguir;
Entrada e Saída (E/S ou I/O) Unidade de controle Buffer de saída: dados para transmissão Buffer de saída: dado recebido Registrador de transmissão Registrador de recepção Relógio externo Registrador de estado Sinal de controle Dados em série Dados de entrada (1 caractere) Dados de saída
Entrada e Saída (E/S ou I/O) Tipos de transmissão – Síncrona Transmissor e receptor tem os relógios sincronizados: Através de um canal separado; Através de uma sinalização específica junto com os dados transmitidos; Mais eficiente, pois não precisam ser transmitidos bits de sincronização entre os bytes (somente no início da transmissão) Dispositivo típico é a USART (Universal Synchronous Asynchronous Receiver Transmitter)
Entrada e Saída (E/S ou I/O) Tipos de transmissão – Paralela Bits são transmitidos por vários fios em paralelo; Além dos barramentos de comunicação, interfaces mais comuns são a Centronics e a SCSI; É tipicamente usada hoje somente dentro dos computadores; Velocidade é limitada pelo alinhamento entre os bits.
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Teclado Tipos comuns: Numérico, dedicado e geral; Tecnologias: Mecânica, capacitiva, efeito-hall;
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Teclado Processo de leitura: Processador interno procura sinais de teclas; Confirma se tecla foi pressionada; Gera código da tecla pressionada; Gera um sinal de interrupção; Troca sinais com o processador para transmissão; BIOS analisa se tecla foi pressionada em alguma combinação (ALT, Shift, outros).
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Monitor de vídeo Tipos mais comuns: CRT, LCD, LED, Flat; Dois modos de utilização principais: Modo texto e modo gráfico;
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Monitor de vídeo Modo texto: Tela dividida em linhas e colunas, em cada local podendo representar algum símbolo válido; Cada campo tem um número de pontos usados para representar o caractere, mais pontos em volta para dar espaço entre os caracteres e as linhas;
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Monitor de vídeo Modo gráfico: Tela é mapeada em uma única matriz de pontos, não em linhas e colunas; Flexibilidade muito maior; Exige muito mais memória e capacidade de processamento, principalmente quando inclui também cores;
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Impressoras Tecnologia típicas: Matriciais, jato de tinta, Laser, Transferência de cera, sublimação de tinta;
Entrada e Saída (E/S ou I/O) Dispositivos de E/S – Mouse Tecnologias típicas: Mecânico; Opto-mecânico; Ótico.
Entrada e Saída (E/S ou I/O) Métodos de E/S: E/S por programa Interrupção Acesso direto à memória (DMA – Direct Memory Access)
Há três formas básicas: Por programa Por interrupção Entrada e saída Leitura de E/S Há três formas básicas: Por programa Por interrupção Por acesso direto à memória (DMA – Direct Memory Acess)
Entrada e Saída (E/S ou I/O) Programa envia comando à interface E/S por programa Interrogação do estado do dispositivo Pronto? Não Sim Ler (ou escrever) dado Terminou? Não Sim Continua
Entrada e saída Leitura de E/S – Por programa A CPU fica verificando continuamente a situação do dispositivo a ser tratado, e quando este está pronto, lê ou escreve dados no mesmo.
Entrada e Saída (E/S ou I/O) Leitura de E/S – Por interrupção Ao invés de ficar verificando a interface, a interface interrompe a CPU indicando que está pronta para transmitir ou receber. Tempo Programa principal Interrupção de teclado Interrupção de impressora
Entrada e Saída (E/S ou I/O) Interrupções podem ser: Internas: De programas, erros como overflow, etc; Externas: Interrupções externas à CPU. Usualmente de interfaces de E/S.
Entrada e Saída (E/S ou I/O) Leitura de E/S – DMA Em uma leitura/escrita por DMA, a interface de E/S transfere os dados diretamente da/para a MP, e somente sinaliza à CPU quando a transferência está concluída, liberando a CPU para outras tarefas
Entrada e Saída (E/S ou I/O) UCP Periférico (disco,...) Controlador DMA Registrador de endereço Memória principal Chave 1 Chave 3 Chave 2 Barramento de endereços Barramento de dados