Dispositivos de Entrada e Saída - iris.sel.eesc.usp.briris.sel.eesc.usp.br/sel415m/Aula 8 -...
Transcript of Dispositivos de Entrada e Saída - iris.sel.eesc.usp.briris.sel.eesc.usp.br/sel415m/Aula 8 -...
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Dispositivos de Entrada e Saída
SEL-0415 Introdução à Organização de Computadores
Prof. Dr. Marcelo Andrade da Costa Vieira
Aula 8
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
ENTRADA e SAÍDA (E/S) (I/O - Input/Output)
n Inserção dos dados (programa)
n Apresentação dos resultados
n Comunicação Homem/Máquina
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
ENTRADA e SAÍDA (E/S) (I/O - Input/Output)
SE
L/E
ES
C-U
SP
Gru
po
de
Sis
tem
as
Dig
ita
is
ENTRADA e SAÍDA (E/S) (I/O - Input/Output)
nEntrada Æ Dispositivos (geralmente baseados
em chaves) por onde informações entram na
memória
n Ex.: Teclados, Portas
nSaída Æ Dispositivos que mostram o resultado
da operação executadan Ex: Ø Monitores
Ø Impressoras
Ø Armazenamento secundário…
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Dispositivos de Entrada
Periféricosn Existem alguns que são especializados apenas em
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
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Dispositivos de Saída
Periféricosn Outros especializados apenas em SAÍDA:
Ø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
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Dispositivos de Entrada e Saída
PeriféricosnOutros em ENTRADA E SAÍDA
Ø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
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Dispositivos de Entrada e Saída para Controle de Processos
Periféricos
nMenos Tradicionais (microcontroladores)
ØSensoresØMotores de PassoØFotocélulasØTermostatos
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Dispositivos de Entrada e Saída
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Interfaces de Entrada e Saída
Interfaces de (I/O)n Geralmente a CPU não pode comunicar-se diretamente
com os periféricos [ a comunicação é feita com a
ajuda de circuitos chamados de Interfaces ouMó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...
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Interfaces de Entrada e Saída
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Interface
Interface de Entrada e Saída
Buffers
Operações de E/S
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
Métodos para realização de operações de I/O
u Três tipos principais:
Operações de I/O
u Programada (Pooling)
u Interrupção
u Acesso Direto à Memória (DMA)
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
EXEMPLO FIGURATIVO
A EMPREGADA ESTÁ LIMPANDO A CASA E TEM
COMO FUNÇÃO RECEBER O RECADO DE QUEM LIGAR.
SE
L/E
ES
C-U
SP
Gru
po
de
Sis
tem
as
Dig
ita
is
EXEMPLO FIGURATIVO
PROGRAMADA (telefone SEM campainha): a empregada de tempos
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.
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
I/O por Programa (Varredura)
u A CPU controla diretamente todas as etapas dacomunicação
u O programa deve verificar os dispositivos deentrada e saída e parar o processamento durante atransmissão
u Subrotina de verificação dos dispositivos deentrada e saída
u Tempo de transmissão dos dispositivos de I/O sãomuito altos comparados ao µP
u Processo muito pouco eficiente
Varredura
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
I/O por Interrupção
u A CPU aguarda a interface de I/O requisitar umatransmissão
u Enquanto isso o µP pode realizar outras tarefasu Quando a interface está pronta para a transmissão
ela avisa o µPu O µP interrompe a atividade corrente e inicia a
comunicação com o dispositivo de I/Ou Processo mais eficiente do que a operação por
varredura, mas ainda sobrecarrega o µP durante acomunicação com o periférico
Interrupção
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
1. Atende à acontecimentos assíncronos (imprevisível);
2. Não precisa esperar para que ele ocorra – omicroprocessador não deixa de ser utilizado para outrasfunções;
3. Pode ser interna ou externa
4. Interna: divisão por zero, overflow, etc.
5. Externa: Interface de I/O
INTERRUPÇÃO
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
6. O evento envia um sinal de pedido de interrupção (INTERRUPTREQUEST – IRQ) ao µP por meio de uma linha de controle dobarramento externo do sistema
7. O µP pode aceitar ou rejeitar o pedido, gerando um sinal dereconhecimento 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 oendereço de retorno (PC+1) na pilha e atende à rotina deinterrupção
9. Após a execução da rotina de interrupção, a microprocessadorvolta ao ponto onde parou no programa principal
10. Nem sempre é possível prever o local exato de retorno dainterrupção
11. Uma subrotina é um evento síncrono (previsível) – varredura, ainterrupção não é.
INTERRUPÇÃO
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
INTERRUPÇÃO
Gru
po d
e S
iste
mas
Dig
itais
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
Gru
po d
e S
iste
mas
Dig
itais Guarda automaticamente o endereço de retorno
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)ü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
Gru
po d
e S
iste
mas
Dig
itais
Pilha (Stack)
§ Pode também ser usada para armazenar/ler dadostemporários sequenciais se necessário (instruções Push ePop)
§ Cada posição da pilha possuim bits [ tamanho necessáriopara armazenar cada endereço de retorno (do registradorProgramCounter – PC).
§ No microcontrolador PIC 16F877, por exemplo, a pilha éuma memória de 8 posições separada da RAM interna.
§ No microcontrolador 8051, por exemplo, usa uma área daRAM que deve ser reservada para a pilha, que é indicadapor um ponteiro (Stack Pointer - SP)
Gru
po d
e S
iste
mas
Dig
itais
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 otamanho máximo da pilha (número de endereços)
• cada posição da pilha possui m bits [ tamanhosuficiente para armazenar cada endereço de retorno(do registrador Program Counter – PC).
Gru
po d
e S
iste
mas
Dig
itais
• SP é incrementado antes dos dados seremarmazenados como resultado de uma instrução PUSHou CALL ou de um atendimento à interrupção
• SP é decrementado após os dados serem lidos comoresultado de uma instrução POP ou RETURN
• A pilha pode ficar em qualquer posição na RAMinterna, carregando-se o endereço adequado no SP
Ponteiro de Pilha Registrador Stack Pointer
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
I/0 por DMA (Direct Memory Access)
u Permite a movimentação de dados entre osdispositivos de I/O e a memória domicrocomputador sem envolver o processadornesta transferência
u Processo mais eficiente do que todos os outros,pois não utiliza o µP e não sobrecarrega obarramento.
DMA
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
u Dispositivo de hardware dedicado à operação detransferência de dados entre um dispositivo de I/O e amemória;
u Coloca a saída do microprocessador em estado dealta impedância (desligado) para permitir a umdispositivo externo o Acesso Direto à Memória – BusRequest
u Acesso direto à memória (DMA) permite uma formamais rápida de mover dados entre as portas de I/O e amemória.
DMA - ACESSO DIRETO À MEMÓRIA
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
DMA - ACESSO DIRETO À MEMÓRIA
SE
L/E
ES
C-U
SP
Gru
po d
e S
iste
mas
Dig
itais
FIM