Você está na página 1de 46

Organizao e Arquitetura de Computadores

Entrada e Sada (E/S)

Givanaldo Rocha de Souza


http://docente.ifrn.edu.br/givanaldorocha
givanaldo.rocha@ifrn.edu.br

Baseado no material do prof. Slvio Fernandes - UFERSA


Introduo

Alm do processador e da memria, o sistema de computao ainda


possui os mdulos de entrada e sada (E/S).

A arquitetura de E/S do sistema de computao a sua interface com


o mundo exterior.

Oferece um meio sistemtico de controlar a interao com o


mundo exterior.

Fornece ao sistema operacional as informaes de que precisa


para gerenciar a atividade de E/S de modo eficaz.
Introduo

Cada mdulo de E/S se conecta ao barramento ou comutador central e


controla um ou mais perifricos.

Um mdulo de E/S contm uma lgica para realizar uma funo de


comunicao entre o perifrico e o barramento.

Placa PCI USB 2.0


Introduo

Dvida: por que os perifricos no so conectados diretamente no


barramento do sistema?

Existe uma grande variedade de perifricos, com diversos mtodos de


operao, inviabilizando o controle pelo processador.

A taxa de transferncia de dados dos perifricos normalmente diferente


(mais lenta ou mais rpida) do que a da memria ou do processador.

Os perifricos normalmente utilizam formatos de dados e tamanhos de


palavras diferentes do que usado pelo computador ao qual esto
conectados.

Assim, um mdulo de E/S necessrio!!!


Funes Principais do Mdulo de E/S

Interface com o processador e a memria por meio do barramento do sistema


ou comutador central.
Interface com um ou mais dispositivos perifricos por conexes de dados
adequadas.

Barramento
do sistema

Mdulo genrico de um dispositivo de E/S


Dispositivos Externos

Legveis ao ser humano: adequados para a comunicao com usurios


Monitor, impressora, teclado

Legveis mquina: adequados para a comunicao com equipamentos


Disco magntico e fita
Sensores e atuadores

Comunicao: adequados para a comunicao com dispositivos remotos


Modem
Placa de interface de rede
Dispositivos Externos

Diagrama em blocos de um dispositivo externo

Sinais de controle Sinais de estado do


do mdulo de E/S mdulo de E/S Bits de dados de e
(READ / WRITE) (READY / BUSY) para o mdulo de E/S

Buffer
Lgica de
Controle

Transdutor

Dados de e para
o ambiente
Funes de um Mdulo de E/S

Controle e Temporizao
Coordenar o fluxo de trfego entre os recursos internos e os dispositivos externos.

Comunicao com o processador


Comunicao entre o processador e o dispositivo externo.

Comunicao com dispositivos


Comunicao envolve comandos, informao de estado e dados (figura do slide anterior).

rea de armazenamento temporrio de dados (buffering)


Necessria devido diferena de taxas de transferncia j comentadas.

Deteco de erros
Relatar erros ao processador: defeitos mecnicos e eltricos, erros na transferncia de bits etc.
Controle e Temporizao - Exemplo

1. O processador interroga o mdulo de E/S para verificar o estado do


dispositivo.

2. O mdulo retorna o estado do dispositivo.

3. Se o dispositivo estiver em operao e pronto para transmitir dados, o


processador requisitar a transferncia enviando um comando para o
mdulo de E/S.

4. O mdulo de E/S obtm uma unidade de dados (p.ex., 8 ou 16 bits) do


dispositivo.

5. Os dados so transferidos do mdulo de E/S para o processador .


Comunicao com o processador

Decodificao de comandos
Converso entre sinais transmitidos atravs do barramento de
controle e comandos usados pelos dispositivos.

Dados
So transferidos entre o processador e o mdulo de E/S atravs do
barramento de dados.

Informao de estado
Lentido dos perifricos faz com que seja importante conhecer o
estado do mdulo de E/S.

Reconhecimento de endereo
O mdulo de E/S deve reconhecer um endereo distinto para cada
perifrico controlado.
Buffering de dados

A transferncia de dados da memria principal para o mdulo de E/S


feita rapidamente.
Esses dados so temporariamente armazenados no mdulo de E/S e
ento enviados para o dispositivo numa taxa adequada.

No caminho oposto, os dados so armazenados temporariamente no


mdulo de E/S para no reter a memria numa transferncia de dados
com baixa velocidade.

O mdulo de E/S deve ser capaz de realizar operaes tanto


velocidade da memria quanto do dispositivo externo.
Deteco de erros

Relatar erros ao processador:

Mau funcionamento eltrico ou mecnico.


o Falha de alimentao de papel
o Papel emperrado
o Trilha de disco defeituosa
o etc.

Alteraes no padro de bits transmitidos por um dispositivo para o


mdulo de E/S.
o Bit de paridade
Mdulo de E/S : estrutura interna
Tcnicas usadas para E/S

Sem interrupes Com interrupes

Transferncia entre
memria e E/S por meio E/S programada E/S controlada por interrupo
do processador

Transferncia direta Acesso direto memria


---
entre memria e E/S (DMA)
E/S programada

Em um programa, a execuo de uma instruo relacionada a E/S faz


com que um comando seja enviado para o mdulo de E/S.

O mdulo de E/S executa a operao requisitada e sinaliza o seu


trmino carregando um valor no registrador de estado.

Nenhuma ao executada pelo mdulo para alertar o processador


sobre o trmino da operao.

responsabilidade do processador verificar periodicamente o estado


do mdulo, para ver se a operao foi completada.
E/S programada
Leitura de um bloco de dados
Endereamento de dispositivos de E/S

E/S mapeada na memria


H um nico espao de endereamento para posies de memria
e dispositivos de E/S.
Exemplo:
Endereamento de Byte
Endereos de 10 bits 1024 Bytes
Endereos 0-511: memria principal
Endereos 512-1023: dispositivos de E/S
E/S independente
Espao de endereamento de E/S independente do espao de
endereamento da memria.
E/S mapeada na memria
E/S independente

Acesso aos dispositivos de E/S feito atravs de instrues especiais


(comandos).
E/S controlada por interrupo

Processador envia um comando de E/S para o mdulo e continua a


executar outras instrues.

O mdulo de E/S interrompe o processador quando o mesmo estiver


pronto para trocar dados.

Processador efetua a transferncia de dados e depois retorna ao seu


processamento original.

mais eficiente que a E/S programada, pois elimina ciclos de espera


desnecessrios.
E/S controlada por interrupo
Leitura de um bloco de dados

No h espera
pelo dispositivo
Processamento da interrupo
Processamento da interrupo

Registrador PSW Program Status Word


Mdulo de E/S Intel 82C55A

Mdulo de E/S de uso geral em um nico chip, projetado para uso com
o processador Intel 80386.

Pode ser programado para E/S programada ou E/S controlada por


interrupo.

Como interface externa para dispositivos, possui 3 grupos de linhas de


8 bits (A, B e C).
Em um modo de operao especfico, os 3 grupos funcionam como
3 portas de E/S.
Nos demais modos, as linhas dos grupos A e B funcionam como
portas de E/S e as do grupo C como linhas de controle para os
grupos A e B.
Mdulo de E/S Intel 82C55A
Mdulo de E/S Intel 82C55A
Acesso Direto Memria (DMA)

Envolve um mdulo adicional no barramento do sistema.

Esse mdulo, denominado controlador de DMA, imita o processador


nas funes de E/S de dados.

O controlador de DMA pode operar das seguintes maneiras:


Usando o barramento apenas quando o processador no o utiliza.
Forando o processador a suspender temporariamente sua
operao tcnica conhecida como roubo de ciclo.
Tcnica de roubo de ciclo
Estrutura interna de um mdulo DMA
Configuraes de DMA

Algumas possibilidades:

Barramento nico, DMA separado

Barramento nico, DMA-E/S integrados

Barramento especfico de E/S


Configuraes de DMA
Barramento nico, DMA separado

Barata

Ineficiente a transferncia de cada palavra consome vrios ciclos de


barramento
Configuraes de DMA
Barramento nico, DMA-E/S Integrados

Custosa

Eficiente
Configuraes de DMA
Barramento Especfico de E/S
Custosa

Eficiente
Controlador DMA Intel 8237A

Interfaces com famlia 80x86 e DRAM

Quando o mdulo de DMA precisa de barramentos, ele envia sinal


HOLD ao processador.

CPU responde HLDA (hold acknowledge) .

Mdulo de DMA pode usar barramentos.


Controlador DMA Intel 8237A
Controlador DMA Intel 8237A

Exemplo: transferir dados da memria para o disco.

1. Dispositivo requisita servio de DMA levantando DREQ (requisio de


DMA).

2. DMA levanta sua linha HRQ (hold request)

3. CPU termina ciclo de barramento presente (no necessariamente


instruo presente) e levanta linha HDLA HDLA (hold acknowledge).
HOLD permanece ativo pela durao do DMA.
Controlador DMA Intel 8237A

Exemplo: transferir dados da memria para o disco.

4. DMA ativa DACK (DMA acknowledge), dizendo ao dispositivo para iniciar


a transferncia.

5. DMA inicia transferncia colocando endereo do primeiro byte no


barramento de endereo e ativando MEMR; depois, ativa IOW para
escrever no perifrico. DMA decrementa contador e incrementa
ponteiro de endereo. Repete at contagem chegar a zero.

6. DMA desativa HRQ, retornando o controle do barramento de volta


CPU.
Canais de E/S

Dispositivos de E/S se tornam mais sofisticados.

Por exemplo, placas grficas 3D.

CPU instrui controlador de E/S a realizar transferncia.

Controlador de E/S realiza transferncia inteira.

Melhora velocidade.
Retira carga da CPU.
Processador dedicado mais rpido.
Evoluo

1. Processador controla diretamente dispositivos.


2. Mdulos de E/S so adicionados.
3. Interrupes so utilizadas.
4. introduzido o mdulo de DMA
5. O mdulo de E/S evolui para um canal, e executa programas de
E/S carregados da memria principal.
6. O canal evolui para um processador, possuindo sua prpria
memria local.

Enquanto se prossegue nesse caminho de evoluo, cada vez mais a


funo de E/S realizada sem envolvimento da CPU, melhorando o
desempenho da mesma.
Tipos de Canais de E/S

Seletores

Dedicam-se transferncia de dados apenas com um nico


dispositivo por vez

Multiplexadores

Transferem dados de/para vrios dispositivos simultaneamente


Canal Seletor
Canal Multiplexador
Estudo de Caso: USB

Universal Serial Bus: interface para transmisso de dados e


distribuio de energia que foi introduzido para melhorar as interfaces
serial (RS-232) e em paralelo.
Capaz de conectar at 127 dispositivos de E/S: mouse, teclado,
impressora, scanner, joystick, disco externo, DVD player, mquina
digital , VoIP-phone etc.
Estudo de Caso: Firewire (IEEE 1394)

Similar ao USB, contudo o desempenho do Firewire superior, sendo


cerca de 30 vezes mais rpido.
Capaz de conectar at 63 dispositivos de E/S: discos externos, cmeras
digitais, televiso digital etc.
Estudo de Caso: HDMI

High-Definition Multimidia Interface: sistema digital de conexo capaz


de transmitir udio e vdeo atravs de um nico cabo.
Os resultados sero belssimas imagens de alta qualidade e definio,
em um padro superior com relao ao sistema analgico de conexo.
Perguntas?

Você também pode gostar