Dispositivos de E/S (I/O)
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Sistema de E/S
barramento de sist.
CPU
Mem.
Disp. E/S: comunicação
computador/ambiente
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Contr.
disp 1
Contr.
disp 2
Contr.
disp N
Dispositivos E/S
(barram. dedicado)
Disp. E/S
(barram. compart.)
Subsistema de E/S
Sistema de E/S
Dispositivos de E/S




DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Tipos
• Armazenamento
• Comunicação com o ambiente
Tempo de acesso
• Muito maior que o de acesso à memória
• Varia com dispositivo
Taxa de transferência
• Depende da taxa e quantidade de info.
Taxa de erro
• Códigos corretores
Controladores de I/O (E/S)

Função
• Controlar um ou mais dispositivos e trocar dados entre estes
dispositivos, memória e /ou registradores da CPU.
• Exemplos:
– Controle de temporização
– Comunicação com CPU
– Comunicação com dispositivos
– Armazenamento de dados (Data Buffering)
– Detecção de Erro
•
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Modelo Genérico de um
controlador de Entrada/Saída
• Linhas de endereços
• Linhas de dados
• Linhas de Controle
Barramentos
do sistema
Controlador de E/S
• Controle
• Status
• Dados
Links para
dispositivos
externos
Dipsositivos periféricos ou periférivcos
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Módulo de Entrada/Saída (I/O)
Interface para
barramento
do sistema
Interface para
dispositivo
externo
Registrador de dados
Linhas de
Dados
Linhas
de Endereço
Linhas de
Controle
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Status/Registrador de Controle
Lógica
de E/S
Interface
lógica com
dispositivo
exerno
Dados
Status
Controle
Interface
lógica com
dispositivo
externo
Dados
Status
Controle
Dispositivos de E/S

Diversidade
– Quais dispositivos de E/S podem ser conectados ao
computador ?

Capacidade
– Quantos dispositivos de E/S podem ser conectados ao
computador ?

Medidas de Performance
– Throughput ou Largura de Banda (I/O bandwidth)
• Número médio de tarefas computadas pelo servidor na
unidade de tempo
– Tempo de resposta ou tempo de latência (latency)
• Tempo gasto desde que uma tarefa é colocada na fila de
execução até sua execução pelo servidor
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Dispositivos de E/S

Características na organização de
dispositivos de E/S
– Utilização
– Entrada (Input)
– Saída (Output)
– Armazenamento
– Interface
– Um ser humano ou máquina está do outro lado
do dispositivo de E/S, oferecendo ou lendo
dados
– Taxa de transferência
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
– Volume de dados por segundo transf. entre os
dispositivos de E/S e a memória principal
Dispositivos de E/S
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Dispositivo
Utilização
Interface
Taxa (KB/s)
Teclado
Mouse
Scanner
Impressora. de linha
Impressora laser
Network
Disco Magnético
Disco Ótico
Entrada
Entrada
Entrada
Saída
Saída
Entrada/Saída
Armazenamento
Armazenamento
Humana
Humana
Humana
Humana
Humana
Máquina
Máquina
Máquina
0.01
0.02
200
1
100
10000
2000
500
Dispositivo Externo
Determina a função
do dispositivo
- Input ou Read
- Output ou Write
Info. para o
controlador
de E/S
Indica estado
do dispositivo
- Ready
- Not Ready
Status para
controlador
de E/S
Lógica de
controle
Conjunto de bits
a serem enviados
para ou recebidos
do módulo de I/O
Dados para e
do controlador
de E/S
- Converte dados elétricos
para outras formas de
energia durante Output
- Converte outras formas
de energia em eletric.
durante Input
Buffer
Transdutor
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Dados para e do ambiente
Dispositivos de E/S
 Modelo
Servidor/Produtor
Fila
Produtor
de tarefas
Gera tarefas a
serem executadas
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Servidor
Executa tarefas
enviadas pela fila
Dispositivos de E/S
 Modelo
Servidor/Produtor
Aumento de Througput
dividindo tarefas
Fila
Servidor
Produtor
de tarefas
Gera tarefas a
serem executadas
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Fila
Executa tarefas
enviadas pela fila
Servidor
Executa tarefas
enviadas pela fila
Interface de Saída - Impressora
Buffer de saída
do sistema
Buffer de entrada
da impressora
bit 0
bit 0
bit 1
bit 1
bit 2
bit 2
bit 7
bit 7
Impressora
Sinal de
Transferência
Status
Q
S
Pronto
R
Dado Presente
Flag
Q
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
CPU
Impressora
Põe dado no buffer de saída
Se Status = 1
- Ativa Sinal de Transferência
Se Dado Presente = 0
- Lê dado
- Ativa sinal Pronto
Software de E/S

Organização em camadas:
Proc. usuário
sw indep. disp.
driver disp.
tratam. interr.
gerencia execução de comandos
tradução endereços
reordena pedidos
comunicação com controlador
tratamento de erros
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
comandos simbólicos
nomes simbólicos
conv. bloco lógico em físico
alocação e liberação de esp.
Técnicas para entrada de um
bloco de dados



DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
I/O programado
I/O dirigido por interrupção
Acesso Direto à Memória (DMA)
Interrupção
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Como funciona um computador?
Início
Executa a
instrução
Há interrupção?
Não
Busca a próxima
instrução
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Término
Sim
Salta p/ rotina
de interrupção
Processo de Interrupção simples
Dispositivo Controlador
ou outro dispositivo do
sistema pede interrupção
Processador termina a
execução da instrução
em andamento
Salve resto da Informação
do estado do proesso
Processa Interrupção
Software
Hardware
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Processador sinaliza
reconhecimento de
interrupção
Restaura Informação do
estado do processo
Processador salva PSW
e PC na pilha de controle
(Push)
Restaura PSW e PC do
programa pri ncipal ( em
execução) antes da
interrupção
Processador carrega
novo valor do PC
baseado na interrupção
Interrupção - Ajuste e execução
T
Y
N+1
Contador de
programa(PC)
Registradores
Y
Start
Y+L
Return
Ponteiro da pliha
(Stack Pointer)
T
N
N+1
Programa do
usuário
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Rotina de serviço
de interrupção
T+M
T+M
Controle da
pilha
Interrupção - Retorno ao
programa principal
T +M
N+1
Y+L
Contador de
programa(PC)
Registradores
N
N+1
Y+L
Programa do
usuário
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Ponteiro da pliha
(Stack Pointer)
T
Start
Y
Return
Rotina de serviço
de interrupção
T
N+1
Controle da
pilha
T+M
Tratamento de Interrupções

Como determinar qual dispositivo gerou a interrupção ?
• Várias linhas de interrupção
• Software Poll
• Daisy Chain (hardware poll, vetorizada)
• Arbitragem de interrupção (vetorizada)

Controlador de Interrupção (ex. 8259A)
– Prioridades fixas
– Prioridades rotativas
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Tratamento de Interrupções
INT
INTA
CPU
RD
WR
CS
DADOS

DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Controlador
de
Interrupções
IRQ0
IRQ1
IRQ2
IRQ3
IRQ4
IRQ5
IRQ6
IRQ7
.........
Sinais de controle:
–
–
–
–
–
–
IRQx - Interrupt request x
INT (Interrupt) - Houve interrupção
INTA (Int. Acknowledge) - Interrupção recebida
RD (Read) - Leitura
WR (Write) - Escrita
CS (Chip select) - Seleção do chip do controlador
Tratamento de Interrupções

Mecanismo de Interrupção
– Dispositivo I/O ativa IRQx
– 8259A ativa INT para a CPU
– CPU ativa INTA pedindo identificação do dispositivo que gerou
a interrupção
– 8259A envia dado (vetor de interrupção identificando o
dispositivo. Se houver mais de um, 8259A realiza arbitragem.
– CPU usa o vetor para executar a rotina apropriada a aquele
dispositivo.

DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
O sistema operacional deve estabelecer níveis de
prioridade para os dispositivos.
Técnicas para entrada de um
bloco de dados

I/O programado
• A CPU executa programa para controlar a operação de
I/O
(verifica status do dispositivo, envia/recebe dados).
• CPU espera até o final da operação de I/O.

I/O dirigido por interrupção
• CPU requisita um comando do dispositivo de I/O
• CPU continua a executar outras operações
• CPU é interrompida pelo módulo de I/O e ocorre
transferência de dados.

DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Acesso Direto à Memória (DMA)
• O módulo de I/O e a memória trocam informações sem
o envolvimento da CPU.
• Um controlador especial com acesso direto a memória
controla a troca de dados com o dispositivo de I/O
Fluxo de programas
Pois não Sr. um momento
Programa sem interrupção
Secretária, por favor escreva o contrato
agora para que eu possa assiná-lo;
estou esperando, ok?
Contrato pronto, estou enviando
Ok, Obrigado
Secretária, por favor escreva o contrato
agora, quando estiver pronto me avise, ok?
Pois não Sr.
Programa com interrupção
Um momento, estou terminado de escrever um
ofício. ... agora pode enviar o contrato,
obrigado. Após receber o contrato, o chefe
continua fazendo as outras atividades......
Contrato pronto, posso enviá-lo?
Preciso envinhar
os contratos que
estáo sobre a
mesa do chefe
para o correio
Correio
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Boy por favor apanhe os contratos que estão
na pasta sobre a mesa do chefe para mim.
Por favor não incomode o chefe, ok?
Obrigada
Acesso Direto à Memória
CPU
E/S
BUS
Técnicas de transferência de dados
E/S dirigida por
interrupção
E/S programada
Comando
de leitura
para módulo
de E/S
Comando
de leitura
para módulo
de E/S
Outras tarefas
Ler status
de E/S
Interrupção
OK
OK
Status
de E/S
OK
Ler dado de E/S
Escreve memória
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
CPU --> E/S
Status
de E/S
OK
Ler dado de E/S
Escreve memória
E/S --> CPU
CPU --> Mem.
Volta ao que
estava fazendo
Técnicas de transferência de dados
Control. de DMA
transfere dados
entre memória e
módulo de E/S
Comando
de leitura
de E/S para
controlador
de DMA
Outras tarefas
Interrupção
Status
de E/S
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Parâmetros para DMA
• End. memória
• End. dispositivo
• Tamanho bloco
CPU --> DMA
DMA --> CPU
Volta ao que
estava fazendo
Mapeamento de I/O:
Isolado e em Memória
• Linhas de endereços
• Linhas de dados
• Linhas de Controle
Mreq / I/O
Controlador de E/S
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Memória
Barramento Isolado tem sinal especial (Mreq / I/O) que identifica o tipo de
endereço presente no barramento
• Permite o uso de instruções especiais para dispositivos de I/O
• Para o mesmo núm. de bits de endereço => dobro de I/O + Memória
• Requer um sinal extra e, consequentemente, hardware extra na CPU
DMA - Acesso Direto à memória
 O módulo de I/O e a memória principal
trocam dados diretamente sem o envolvimento da CPU.
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Contador
de dados
Linhas
de dados
Registrador
de dados
Linhas de
endereço
Registrador
de endereços
DMA REQ
DMA ACK
INTR
Read
Write
Lógica de
Controle
DMA e pontos de acesso durante
ciclos de instrução
Cycle Stealing
Ciclo de Instrução
Ciclo do
Ciclo do
Ciclo do
Ciclo do
Ciclo do
Ciclo do
processador processador processador processador processador processador
Apanha
Decodifica
instrução
Instrução
(Fetch
Instruction)
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Apanha
Operando
(Fetch
Operand)
Pontos de acesso
de DMA
Executa
Instrução
Armazena
resultado
Processa
Interrupção
Acesso de
Interrupção
Diferentes configurações de DMA
CPU
Módulo
DMA
I/O
I/O
Memória
1. Barramento simples, DMA simples
CPU
Módulo
DMA
I/O
Módulo
DMA
I/O
Memória
I/O
2. Barramento simples, DMA-I/O Integrados
CPU
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Módulo
DMA
I/O
Memória
I/O
I/O
3. Barramento de I/O
Dispositivos de E/S - exemplos



DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Impressoras
PCMIA
Terminais
Impressoras

As impressoras são dispositivos de saída de
dados. Podem ser classificá-las sob vários
aspectos. Por interface de comunicação:
– Impressora com interface serial-RS232
– Twisted pair
– Impressora paralela centronics, bicentronics

DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Quanto a tecnologia de impressão:
– matriz de pontos
– linha
– jato de tinta
– laser
Impressoras

Outros aspectos importantes:
– velocidade de impressão (ppm)
– resolução da impressora (dpi)
– Preto/branco ou colorida

DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Com o advento de sistemas distribuídos e de
novos sistemas operacioniais para rede
deve-se observar também a disponibilidade
de impressoras que:
– aceitem protocolo de rede como TCP/IP,
Windows NT, Windows 95, protocolo de
transferência de arquivos como FTP, etc.
– aceitem arquivos Postscript, texto, etc.
PCMCIA

PCMCIA - Personal Computer Memory Card
International
• Conhecido como PC card
• Usado em laptops
• Arquitetura Plug-and-Pla

Aplicações
• LAN (Ethernet - 10Mbits/s)
• Hard disk
• Fax/Modem
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Monitor
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO

Monitor
• Monitores requerem controladores de vídeo (alta banda
passante) que se conectam a barramentos como:
– Barramento PCI
– Barramento VESA Local bus

Características técnicas do adaptador do display
• Resolução gráfica - número de pontos na tela (dots)
– 640x480 (VGA)
– 800x600 (SVGA)
– 1024x768
– 1280x1024, 1600x1200
Dispositivos de Rede
Mainframe
VMS
Micro
emulando
terminal X
Rede local
windows NT
ETHERNET
Estações de trabalho
emulamdo terminal
VT-100 conectado
remotamente ao
Maniframe
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Rede local
Unix
Terminais



DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Permitem uma interação direta (on-line) com um
computador remoto através de dispositivos
auxiliares de entrada e saída como teclado, mouse,
monitor, etc.
Não executam processamento local, a não ser o
básico (vídeo, teclado, mouse)
Modelos mais comuns:
VT-100, 3270, Terminal X
Download

orgcomp7-io - Centro de Informática da UFPE