Please enable JavaScript.
Coggle requires JavaScript to display documents.
Capítulo 19 Hardware de entrada/saída - Coggle Diagram
Capítulo 19
Hardware de entrada/saída
Dispositivos de entrada/saída
Interação da CPU com o mundo exterior.
Função: informações ⬌ físicas informações digitais
Grande variedade de dispositivos:
Impressão e captura
de dados: impressora, scanner
Comunicação
com outros sistemas: ethernet, Bluetooth
Armazenamento
de dados: discos, SSDs, CDROMs
Gerência
do sistema: tempo, energia, temperatura
Interação
com o usuário: mouse, teclado, tela, fones
Localização
: GPS, bússola, giroscópio
Componentes de um dispositivo de E/S
Entrada de dados:
Sensor
: transforma grandeza física em sinal elétrico
Amplificador
: aumenta e limpa o sinal elétrico
Conversor AD
: converte o sinal em informação digital.
Saída de dados:
Conversor DA:
converte dados em sinais elétricos.
Transdutor:
transforma sinais elétricos em ações físicas.
Elementos comuns:
Controlador de barramento
: permite acesso da CPU.
Microcontrolador
: gerencia o hardware do dispositivo.
Buffer
: armazena dados coletados e/ou enviados
Firmware:
código executado pelo controlador.
Barramentos
Barramento: via de comunicação:
interliga CPU, memória e dispositivos de E/S
parte do chipset da placa-mãe
North-bridge: componentes rápidos
CPU e RAM
Portas AGP e PCI-express (vídeo)
South-bridge: componentes lentos
PCI, USB, SATA
BIOS, legacy controllers
Interface de acesso
Interação CPU ⬌ device feita por
portas de E/S
Existem 4 tipos básicos de portas:
saída
CPU → disp
Enviar dados ao dispositivo
status
disp → CPU
Consultar o
estado
do dispositivo;
Verificar status de uma operação.
entrada
disp → CPU
Receber dados do dispositivo.
controle
CPU → disp
Enviar
comandos
ao dispositivo;
Alterar configuração do dispositivo.
Endereçamento
Como acessar os registradores da interface do dispositivo?
Entrada/saída mapeada em memória
Registradores dos dispositivos vistos como RAM:
Podem ser usadas as instruções de acesso à memória.
Usado para dispositivos de rede, áudio e vídeo.
São mapeados em faixas de endereços de RAM.
Canais de entrada/saída
Deixa o processador principal livre para outras tarefas.
Adotada em sistemas de grande porte (mainframes).
Uso de um hardware independente com processador dedicado
Usada em periféricos de alto desempenho (GPU vídeo).
Entrada/saída mapeada em portas
Registradores acessados por instruções específicas
Na família Intel: instruções IN e OUT.
IN %AL, $0x60 // lê caractere do teclado em AL
OUT $0x3f8, %AL // escreve byte em AL na saída paralela
Espaço de endereços de E/S:
Separado da memória principal.
CPU usa um sinal IO/M no barramento de controle
Geralmente de 8 ou 16 bits.
Interrupções
As portas servem para as interações iniciadas pela CPU.
Como fazer para interações iniciadas
pelo controlador?
Requisição de interrupção
(IRq - Interrupt Request):
Notifica o processador sobre algum evento importante.
Desvia a execução para uma rotina de tratamento
Sinal elétrico enviado através do barramento de controle.
Roteiro de uma interrupção:
O controlador gera uma interrupção
A CPU recebe a interrupção e desvia sua execução para uma rotina de tratamento da interrupção.
O usuário aciona uma tecla do teclado.
A rotina interage com o controlador do teclado
para buscar os dados do buffer.
A CPU está executando um programa
A rotina conclui e o programa anterior retoma a execução.
PIC - Programmable Interrupt Controller
Hardware dedicado no chipset da placa-mãe ou na CPU.
Organiza o sistema de interrupções de hardware:
Informa a CPU sobre cada interrupção ocorrida.
Enfileira as interrupções não-tratadas (pendentes)
Associa cada dispositivo a um número.
Pode ser programado pela CPU
Recebe as interrupções dos dispositivos.
Pode ignorar/mascarar ou priorizar interrupções.