Você está na página 1de 30

SEL-0415 Introdução à Organização de

SEL/EESC-USP Grupo de Sistemas Digitais


Computadores

Dispositivos de Entrada e Saída

Aula 9

Prof. Dr. Marcelo Andrade da Costa Vieira


ENTRADA e SAÍDA (E/S)
(I/O - Input/Output)
SEL/EESC-USP Grupo de Sistemas Digitais

n  Inserção dos dados (programa)

n  Apresentação dos resultados

n  Comunicação Homem/Máquina


ENTRADA e SAÍDA (E/S)
(I/O - Input/Output)
SEL/EESC-USP Grupo de Sistemas Digitais
ENTRADA e SAÍDA (E/S)
(I/O - Input/Output)
n Entrada Æ Dispositivos (geralmente baseados
em chaves) por onde informações entram na
SEL/EESC-USP Grupo de Sistemas Digitais

memória
n  Ex.: Teclados, Portas
n Saída Æ Dispositivos que mostram o resultado
da operação executada
n  Ex:
Ø  Monitores
Ø  Impressoras
Ø  Armazenamento secundário…
Dispositivos de Entrada
Periféricos
n  Existem alguns que são especializados apenas em
SEL/EESC-USP Grupo de Sistemas Digitais

ENTRADA:
Ø Teclado Æ Lê os caracteres digitados pelo usuário
Ø MOUSE Æ Lê os movimentos e toque de botões
Ø Drive de CD-ROM Æ Lê dados de discos CD-ROM
Ø Microfone Æ Transmite sons para o computador
Ø SCANNER Æ Usado para “digitalizar" figuras ou fotos
Dispositivos de Saída
Periféricos
n  Outros especializados apenas em SAÍDA:
SEL/EESC-USP Grupo de Sistemas Digitais

Ø Vídeo Æ Mostra ao usuário, na tela caracteres e gráficos


Ø Impressora Æ Imprime caracteres e gráficos
Ø Alto-falante Æ Realiza comunicação com o usuário através
de som
Dispositivos de Entrada e Saída
Periféricos
n Outros em ENTRADA E SAÍDA
SEL/EESC-USP Grupo de Sistemas Digitais

Ø Disco rígido - Grava e lê dados


Ø Drive de disquete - Grava e lê dados em disquetes
Ø Unidade de fita magnética - Grava e lê dados em fitas
magnéticas
Ø  MODEM - Transmite e recebe dados pela linha telefônica
Dispositivos de Entrada e Saída
para Controle de Processos
Periféricos
SEL/EESC-USP Grupo de Sistemas Digitais

n Menos Tradicionais (microcontroladores)

Ø Sensores
Ø Motores de Passo
Ø Fotocélulas
Ø Termostatos
SEL/EESC-USP Grupo de Sistemas Digitais
Dispositivos de Entrada e Saída
Interfaces de Entrada e Saída
Interfaces de (I/O)
n  Geralmente a CPU não pode comunicar-se diretamente
SEL/EESC-USP Grupo de Sistemas Digitais

com os periféricos [ a comunicação é feita com a


ajuda de circuitos chamados de Interfaces ou
Módulos de I/O

n  Funções:
n  Presentes entre o barramento e o periférico
n  Compatibilidade entre os dispositivos e o µP
n  Controle da comunicação
n  Ex.: controlador de vídeo, controlador de disco, etc...
SEL/EESC-USP Grupo de Sistemas Digitais
Interfaces de Entrada e Saída
SEL/EESC-USP Grupo de Sistemas Digitais
Interface de Entrada e Saída

Buffers

Interface
SEL/EESC-USP Grupo de Sistemas Digitais

Operações de E/S
Operações de I/O
Métodos para realização de operações de I/O
SEL/EESC-USP Grupo de Sistemas Digitais

u  Três tipos principais:

u  Programada (Pooling)


u  Interrupção
u  Acesso Direto à Memória (DMA)
SEL/EESC-USP Grupo de Sistemas Digitais
EXEMPLO FIGURATIVO

A EMPREGADA ESTÁ
LIMPANDO A CASA E TEM
COMO FUNÇÃO RECEBER O
RECADO DE QUEM LIGAR.
EXEMPLO FIGURATIVO

PROGRAMADA (telefone SEM


campainha): a empregada de tempos
SEL/EESC-USP Grupo de Sistemas Digitais

em tempos verifica se há alguém


querendo lhe falar ao telefone
INTERRUPÇÃO (telefone COM
campainha): a empregada pára de
fazer o serviço quando o telefone
toca, pois há alguém querendo lhe
falar ao telefone
DMA - ACESSO DIRETO À MEMÓRIA
(telefone COM campainha e COM
secretária eletrônica): o telefone toca, a
secretária eletrônica armazena o recado
e a empregada pára de fazer o serviço
quando lhe convier para ouvir o recado.
Varredura
I/O por Programa (Varredura)
SEL/EESC-USP Grupo de Sistemas Digitais

u  A CPU controla diretamente todas as etapas da


comunicação
u  O programa deve verificar os dispositivos de
entrada e saída e parar o processamento durante a
transmissão
u  Subrotina de verificação dos dispositivos de
entrada e saída
u  Tempo de transmissão dos dispositivos de I/O são
muito altos comparados ao µP
u  Processo muito pouco eficiente
Interrupção
I/O por Interrupção
SEL/EESC-USP Grupo de Sistemas Digitais

u  A CPU aguarda a interface de I/O requisitar uma


transmissão
u  Enquanto isso o µP pode realizar outras tarefas
u  Quando a interface está pronta para a transmissão
ela avisa o µP
u  O µP interrompe a atividade corrente e inicia a
comunicação com o dispositivo de I/O
u  Processo mais eficiente do que a operação por
varredura, mas ainda sobrecarrega o µP durante a
comunicação com o periférico
INTERRUPÇÃO

1.  Atende à acontecimentos assíncronos (imprevisível);


SEL/EESC-USP Grupo de Sistemas Digitais

2.  Não precisa esperar para que ele ocorra – o


microprocessador não deixa de ser utilizado para outras
funções;
3.  Pode ser interna ou externa
4.  Interna: divisão por zero, overflow, etc.
5.  Externa: Interface de I/O
INTERRUPÇÃO
6.  O evento envia um sinal de pedido de interrupção (INTERRUPT
REQUEST – IRQ) ao µP por meio de uma linha de controle do
barramento externo do sistema
SEL/EESC-USP Grupo de Sistemas Digitais

7.  O µP pode aceitar ou rejeitar o pedido, gerando um sinal de


reconhecimento de interrupção (INTERRUPT ACKNOWLEDGE –
IACK) numa linha de controle do barramento externo do sistema
8.  O µP pára a execução do programa (via hardware), grava o
endereço de retorno (PC+1) na pilha e atende à rotina de
interrupção
9.  Após a execução da rotina de interrupção, a microprocessador
volta ao ponto onde parou no programa principal
10.  Nem sempre é possível prever o local exato de retorno da
interrupção
11.  Uma subrotina é um evento síncrono (previsível) – varredura, a
interrupção não é.
SEL/EESC-USP Grupo de Sistemas Digitais

INTERRUPÇÃO
Pilha (Stack)

§  Memória Sequencial do tipo LIFO (Last in First Out)


§  Acessada sequencialmente pela CPU
§  Reservada geralmente para armazenamento de
endereços de retorno de sub-rotina ou interrupção
Grupo de Sistemas Digitais
Pilha (Stack)
ü uso mais importante Æ chamada de sub-rotina:
ü  CALL Æ instrução que diz à CPU para ir ao
endereço de início de uma sub-rotina e executá-
la
ü  RETURN Æ última instrução

Guarda automaticamente o endereço de retorno


Grupo de Sistemas Digitais

na pilha (PC+1) antes de ir para a sub-rotina

Resgata da pilha o endereço de retorno e salva


no registrador PC (program counter)
Pilha (Stack)

§  Pode também ser usada para armazenar/ler dados


temporários sequenciais se necessário (instruções Push e
Pop)
§  Cada posição da pilha possui m bits [ tamanho necessário
para armazenar cada endereço de retorno (do registrador
Program Counter – PC).
No microcontrolador PIC 16F877, por exemplo, a pilha é
Grupo de Sistemas Digitais

§ 
uma memória de 8 posições separada da RAM interna.
§  No microcontrolador 8051, por exemplo, usa uma área da
RAM que deve ser reservada para a pilha, que é indicada
por um ponteiro (Stack Pointer - SP)
Ponteiro de Pilha
Registrador Stack Pointer
•  SP Æ Ponteiro de Pilha (Stack Pointer)
•  Indica o último endereço da pilha (topo da pilha) e é
incrementado cada vez que é usado
•  O SP tem largura de n bits [ o qual define o
tamanho máximo da pilha (número de endereços)
•  cada posição da pilha possui m bits [ tamanho
Grupo de Sistemas Digitais

suficiente para armazenar cada endereço de retorno


(do registrador Program Counter – PC).
Ponteiro de Pilha
Registrador Stack Pointer
•  SP é incrementado antes dos dados serem
armazenados como resultado de uma instrução PUSH
ou CALL ou de um atendimento à interrupção
•  SP é decrementado após os dados serem lidos como
resultado de uma instrução POP ou RETURN
•  A pilha pode ficar em qualquer posição na RAM
interna, carregando-se o endereço adequado no SP
Grupo de Sistemas Digitais
DMA

I/0 por DMA (Direct Memory Access)


SEL/EESC-USP Grupo de Sistemas Digitais

u  Permite a movimentação de dados entre os


dispositivos de I/O e a memória do
microcomputador sem envolver o processador
nesta transferência

u  Processo
mais eficiente do que todos os outros,
pois não utiliza o µP e não sobrecarrega o
barramento.
DMA - ACESSO DIRETO À MEMÓRIA

u  Dispositivo de hardware dedicado à operação de


transferência de dados entre um dispositivo de I/O e a
SEL/EESC-USP Grupo de Sistemas Digitais

memória;

u  Coloca a saída do microprocessador em estado de


alta impedância (desligado) para permitir a um
dispositivo externo o Acesso Direto à Memória – Bus
Request

u  Acesso direto à memória (DMA) permite uma forma


mais rápida de mover dados entre as portas de I/O e a
memória.
SEL/EESC-USP Grupo de Sistemas Digitais

DMA - ACESSO DIRETO À MEMÓRIA


SEL/EESC-USP Grupo de Sistemas Digitais

FIM