Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Dispositivos de ES, Notas de estudo de Eletrônica

Entrada e saida

Tipologia: Notas de estudo

2013

Compartilhado em 20/05/2013

synty-x-12
synty-x-12 🇧🇷

5

(4)

47 documentos

1 / 5

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Organização e Arquitetura de Computadores
Carlos Augusto de S. Almeida
prof . c augusto almeida @gmail.com
Universidade Federal de Sergipe (UFS)
São Cristovão Sergipe
Abril de 2012
Dispositivos de Entrada/Saída
Roteiro da Aula
2
Dispositivos de Entrada / Saída
Além do processador e da memória, existe um terceiro elemento
fundamental de um sistema de computação,
o conjunto de módulos de Entrada e Saída ( E / S );
Mas qual é a melhor forma de conectar o periférico a CPU ?
(1) conecta-lo diretamente a CPU ou
(2) conecta-lo a CPU via Barramento do Sistema (FSB)
E qual a melhor forma de conectar um periférico ao barramento (FSB) ?
(1) conecta-lo diretamente ao barramento (FSB) ou
(2) conecta-lo através de um módulo de E/S
Um módulo de E/S é um dispositivo inserido entre o periférico e o
barramento, responsável por:
(1) "traduzir" a conversa entre os dispositivos e a CPU;
(2) realizar algumas tarefas de controle do dispositivo.
3
[certo]
[errado]
[certo]
[errado]
Dispositivos de Entrada / Saída
Os módulos de E/S também são chamados de:
(1) controladora + <nome do dispositivo> (p.ex. controladora de disco)
Termo mais usado quando o módulo de E/S é bastante simples,
requer maior intervenção da CPU.
(2) canal de E/S; ou
(3) processador de E/S (ou processador de periferíco);
Termo mais usado quando o módulo de E/S é complexo, abstraindo a maioria
dos detalhes de implementação da CPU;
Apresenta uma interface com alto nível de abstração para a CPU;
Realiza a maioria das tarefas sozinha (p.ex. detecção de erros).
(4) interface de E/S;
(5) comutador;
(6) adaptador;
4
Dispositivos de Entrada / Saída
Algumas razões para conectar um periférico ao barramento,
passando por uma controladora:
Variedade de periféricos
É impraticável incorporar ao processador a lógica para lidar com toda a variedade
de periféricos.
Taxas de transferências distintas
P.ex. o teclado tem uma taxa de transf. muito mais baixa do que a MM, não faz
sentido ligar o teclado no FSB (barramento do sistema), q é alta velocidade.
Tb existem alguns periféricos cuja taxa de transf. e maior que o da FSB.
Diferentes (i) formatos de dados, (ii) palavras, e (iii) unidades de transf.
P.ex.no disco a unid. de transf. é o cluster, enquanto na MM é o bloco. Sendo o
cluster > bloco.
As atividades de E/S são assíncronas
P.ex. no teclado, não é possível prever quando o usuário irá pressionar uma tecla.
Mas antes do teclado despejar dados no barramento, ele precisa saber se pode
fazer isso. Mas como?
Através da controladora, que gerencia as comunicações com o barramento
(como um guarda de trânsito). 5
Componentes de um Dispositivo de E/S
1. Transdutor: faz a comunicação entre o dispositivo meio-físico
2. Lógica de Controle: faz a comunicação dispos itivo módulo de E/S,
para isso, implementa um protocolo de comunicação
3. Buffer (opcional): agiliza e/ou ameniza a transmissão de dados com a módulos
de E/S, depende do dispositivo.
Pode armazenar dados temporariamente antes de: (1) envia-los ao módulo de
E/S; e/ou (2) recebe-los do módulo de E/S p/ depois envia-los ao meio-físico.
Sinais de Controle p.ex. READ ou WRITE
Sinais de Estado p.ex. IDLE (disponível), BUSY (ocupado), READY (pronto), ...
Dados
6
Lógica de
Controle
Buffer
Transdutor
módulo de E/S
dados
sinais de estado
sinais de controle
meio-físico
dados
Periférico de E/S
12
3
Módulo de E/S
Funções Básicas:
1. [intermediário, ou atravessador]: intercepta e traduz toda a comunicação
entre a CPU Periférico.
2. [controle]: intercepta e traduz:
(i) as instruções enviadas pelo processador; e
(ii) os sinais de controle recebidos pelo barramento (afinal, nem sempre o
periférico está se comunicando com a CPU, p.ex. disco MM).
[buffering](opcional): para agilizar ou amenizar a trans. de dados,
visto que os periféricos possuem velocidades diferentes.
[detecta e corrige os erros na transmissão]
P.ex. alguns periféricos possuem cabos longos, no SCSI o cabo pode chegar
até 25 m, havendo perda de força.
7
Controladora de E/S
É formada por 3 componentes principais:
1. (FSB Controladora): formada pelos registradores que fazem a interação
entre controladora e o barramento (FSB)
Registradores: (i) endereço; (ii) dados; e (iii) controle
2. (Controladora Periférico): contém um buffer de dados para agilizar ou
amortecer a transf. de dados;
3. (Lógica da Controladora): circuito responsável "traduzir" a comunicação
entre o CPU Periférico, como tbdetectar e corrigir erros na transmissão
dos dados.
Uma controladora pode se
comunicar com N periféricos.
Até mesmo periféricos
diferentes.
O FSB (barramento) pode se
comunicar com diversas
controladoras. 8
1
2
3
pf3
pf4
pf5

Pré-visualização parcial do texto

Baixe Dispositivos de ES e outras Notas de estudo em PDF para Eletrônica, somente na Docsity!

Organização e Arquitetura de Computadores

Carlos Augusto de S. Almeida

prof. c augusto almeida @gmail.com

Universidade Federal de Sergipe (UFS)

São Cristovão – Sergipe

Abril de 2012

Dispositivos de Entrada/Saída

Roteiro da Aula

2

Dispositivos de Entrada / Saída

  • Além do processador e da memória, existe um terceiro elemento

fundamental de um sistema de computação,

o conjunto de módulos de Entrada e Saída ( E / S );

  • Mas qual é a melhor forma de conectar o periférico a CPU?
    • (1) conecta-lo diretamente a CPU ou
    • (2) conecta-lo a CPU via Barramento do Sistema (FSB)
  • E qual a melhor forma de conectar um periférico ao barramento (FSB)?
    • (1) conecta-lo diretamente ao barramento (FSB) ou
    • (2) conecta-lo através de um módulo de E/S
  • Um módulo de E/S é um dispositivo inserido entre o periférico e o

barramento, responsável por:

  • (1) "traduzir" a conversa entre os dispositivos e a CPU;
  • (2) realizar algumas tarefas de controle do dispositivo.

3

[certo]

[errado]

[certo]

[errado]

Dispositivos de Entrada / Saída

  • Os módulos de E/S também são chamados de:
    • (1) controladora + (p.ex. controladora de disco)
      • Termo mais usado quando o módulo de E/S é bastante simples, requer maior intervenção da CPU.
    • (2) canal de E/S; ou

(3) processador de E/S (ou processador de periferíco);

  • Termo mais usado quando o módulo de E/S é complexo, abstraindo a maioria dos detalhes de implementação da CPU;
  • Apresenta uma interface com alto nível de abstração para a CPU;
  • Realiza a maioria das tarefas sozinha (p.ex. detecção de erros).
  • (4) interface de E/S;

(5) comutador;

(6) adaptador;

4

Dispositivos de Entrada / Saída

  • Algumas razões para conectar um periférico ao barramento,

passando por uma controladora:

  • Variedade de periféricos
    • É impraticável incorporar ao processador a lógica para lidar com toda a variedade de periféricos.
  • Taxas de transferências distintas
    • P.ex. o teclado tem uma taxa de transf. muito mais baixa do que a MM, não faz sentido ligar o teclado no FSB (barramento do sistema), q é alta velocidade.
    • Tb existem alguns periféricos cuja taxa de transf. e maior que o da FSB.
  • Diferentes (i) formatos de dados, (ii) palavras, e (iii) unidades de transf.
    • P.ex. no disco a unid. de transf. é o cluster, enquanto na MM é o bloco. Sendo o cluster > bloco.
  • As atividades de E/S são assíncronas
    • P.ex. no teclado, não é possível prever quando o usuário irá pressionar uma tecla. Mas antes do teclado despejar dados no barramento, ele precisa saber se pode fazer isso. Mas como?
    • Através da controladora, que gerencia as comunicações com o barramento (como um guarda de trânsito). 5

Componentes de um Dispositivo de E/S

  1. Transdutor: faz a comunicação entre o dispositivo  meio-físico
  2. Lógica de Controle: faz a comunicação dispositivo  módulo de E/S, para isso, implementa um protocolo de comunicação
  3. Buffer (opcional): agiliza e/ou ameniza a transmissão de dados com a módulos de E/S, depende do dispositivo. - Pode armazenar dados temporariamente antes de: (1) envia-los ao módulo de E/S; e/ou (2) recebe-los do módulo de E/S p/ depois envia-los ao meio-físico.
  • Sinais de Controle p.ex. READ ou WRITE
  • Sinais de Estado p.ex. IDLE (disponível), BUSY (ocupado), READY (pronto), ...
  • Dados

6

Lógica de Controle Buffer

Transdutor

módulo de E/S

dados

sinais de estado

sinais de controle meio-físico

dados

Periférico de E/S 2 1

3

Módulo de E/S

  • Funções Básicas:

1. [ intermediário , ou atravessador ]: intercepta e traduz toda a comunicação

entre a CPU  Periférico.

2. [ controle ]: intercepta e traduz:

  • (i) as instruções enviadas pelo processador; e
  • (ii) os sinais de controle recebidos pelo barramento (afinal, nem sempre o periférico está se comunicando com a CPU, p.ex. disco  MM).
  • [ buffering ] (opcional): para agilizar ou amenizar a trans. de dados,

visto que os periféricos possuem velocidades diferentes.

  • [detecta e corrige os erros na transmissão]
    • P.ex. alguns periféricos possuem cabos longos, no SCSI o cabo pode chegar até 25 m, havendo perda de força.

Controladora de E/S

  • É formada por 3 componentes principais:
    1. (FSB  Controladora): formada pelos registradores que fazem a interação entre controladora e o barramento (FSB)
      • Registradores: (i) endereço; (ii) dados; e (iii) controle
    2. (Controladora  Periférico): contém um buffer de dados para agilizar ou amortecer a transf. de dados;
    3. (Lógica da Controladora): circuito responsável "traduzir" a comunicação entre o CPU  Periférico, como tb detectar e corrigir erros na transmissão dos dados.
  • Uma controladora pode se comunicar com N periféricos. Até mesmo periféricos diferentes.
  • O FSB (barramento) pode se comunicar com diversas controladoras.

1

2

3

Comunicação CPU  Periférico

  • O modelo de comunicação depende do protocolo de comunicação,

que é implementado na parte lógica da controladora.

  • Um exemplo bem simples, imprimindo um caractere:
    1. O processador checa através do módulo de E/S se a impressora está conectada;
    2. O módulo de E/S retorna o estado do dispositivo, através de seus registradores de controle (p.ex. 0: disponível, 1: ocupada, 2: com problemas);
    3. Se a impressora está disponível, o processador solicita seu uso, e envia o caractere a ser impresso via barramento de dados.
  • Toda comunicação CPU  Periférico é intermediada pelo módulo de E/S.

9

Comunicação CPU  Periférico

  • Toda comunicação CPU  Periférico é intermediada pelo módulo de E/S.
  • De um modo geral, a comunicação CPUmódulo de E/S envolve:
    • Decodificação de comandos enviados pela CPU, via barramento de controle, feita pelo módulo E/S;
    • Informação de estado. P.ex. disponível, ocupado;
    • Transmissão de dados via barramento de dados;
    • Reconhecimento de endr.: um módulo de E/S pode estar associado a diversos periféricos.
  • A módulo de E/Speriférico envolve basicamente:
    • Buffering;
    • Detecção e correção de erro na transmissão de dados
      • O módulo de E/S é responsável por detectar um erro vindo do periférico. Tenta corrigi-lo, não sendo possível, notifica a CPU sobre o problema.

10

Implementação das Operações de E/S

  • Existem 3 formas de implementação para as Operações de E/S:
    • E/S Programada
      • A CPU executa um programa que lhe oferece controle direto as operações de E/S;
      • A CPU é forçada a esperar a conclusão da operação.
    • E/S controlada por Interrupção
      • Similar a E/S Programada, mas a CPU não precisa ficar esperando;
      • A CPU emite um comando de E/S, e enquanto o dispositivo não conclui a solicitação, a CPU pode executar outras instruções;
      • Quando a operação é concluída, uma interrupção é gerada para avisar a CPU;
      • A CPU é responsável por transferir os dados do Periférico  MM.
    • Acesso Direto a Memória ( Access Directory Memory – DMA)
      • A CPU emite o comando de E/S;
      • A transmissão de dados Periférico  MM é direta, sem o intermédio da CPU. 11

Comunicação CPU  Periférico

Implementação das Operações de E/S

  • Existem 3 formas de implementação para as Operações de E/S:
    • E/S Programada
      • A CPU é forçada a esperar a conclusão da operação.
    • E/S controlada por Interrupção
      • A CPU não precisa ficar esperando;
      • A CPU é responsável por transferir os dados do Periférico  MM.
    • Acesso Direto a Memória ( Access Directory Memory – DMA)
      • A transmissão de dados Periférico  MM é direta, sem o intermédio da CPU.

12

Comunicação CPU  Periférico

E/S Programada

  • Existem 3 formas de implementação para as Operações de E/S:
    • E/S Programada
      • A CPU executa um programa que lhe oferece controle direto as operações de E/S;
      • A CPU é forçada a esperar a conclusão da operação.
    • E/S controlada por Interrupção
      • Similar a E/S Programada, mas a CPU não precisa ficar esperando;
      • A CPU emite um comando de E/S, e enquanto o dispositivo não conclui a solicitação, a CPU pode executar outras instruções;
      • Quando a operação é concluída, uma interrupção é gerada para avisar a CPU;
      • A CPU é responsável por transferir os dados do Periférico  MM.
    • Acesso Direto à Memória ( Access Directory Memory – DMA)
      • A CPU emite o comando de E/S;
      • A transmissão de dados Periférico  MM é direta, sem o intermédio da CPU. 13

Comunicação CPU  Periférico :: Implementação das Operações de E/S

E/S Programada

  • P.ex. para ler um bloco de dados (de 16-bits) de um

periférico => MM:

  • A CPU solicita dados ao periférico, e fica na

espera deles;

  • Os dados são divididos em palavras, apenas 1

palavra pode ser lida por vez pela CPU;

  • A CPU permanece em um ciclo constante de

verificação, até que a operação de E/S seja

concluída;

  • Em cada verificação, a CPU checa se o módulo de

E/S disponibilizou uma nova palavra para leitura;

  • A nova palavra é transferida p/ a MM pela CPU.

14

Comunicação CPU  Periférico :: Implementação das Operações de E/S

E/S controlada por Interrupção

Comunicação CPU  Periférico :: Implementação das Operações de E/S

  • P.ex. para ler um bloco de dados (de 16-bits) de um

periférico => MM:

  • A CPU solicita dados ao periférico, e vai executar

outras instruções;

  • Os dados são divididos em palavras, apenas 1

palavra pode ser lida por vez pela CPU;

  • Quando uma palavra estiver disponível, o módulo

de E/S avisa a CPU através de uma Interrupção

que a palavra já está disponível;

  • A nova palavra é transferida p/ a MM pela CPU.

Acesso Direto à Memória (DMA)

Comunicação CPU  Periférico :: Implementação das Operações de E/S

  • P.ex. para ler um bloco de dados (de 16-bits) de um

periférico => MM:

  • A CPU solicita dados ao periférico, e vai executar

outras instruções;

  • O módulo de E/S transfere os dados diretamente

a MM, sem o intermédio da CPU (CPU livre).

  • Como o FSB (barramento) é compartilhado:
    • A CPU requer a FSB para alguma operação;
    • Enquanto, o módulo de E/S requer o FSB para transferir os dados p/ a MM;
    • Para resolver esse impasse, existe uma política para uso do FSB.
  • Concluída a execução da Rotina de Interrupção, a CPU restaura seu estado anterior, para continuar a execução do programa que foi interrompido pela Interrupção gerada;
  • Observe que PC contém Y+1 o número da última instrução da Rotina de Interrupção.

Processamento de Interrupções

25

  • Aqui, a CPU já retomou a execução do programa, observe que o registrador PC contém o valor N+1, a instrução que deveria ser executada quando o programa voltasse a CPU.

Processamento de Interrupções

26

  • Quando uma Interrupção é enviada a CPU, ela precisa saber qual Dispositivo

a enviou. Técnicas mais comuns:

  • Múltiplas Linhas de Interrupção;
    • Técnica mais simples. Porém, é impraticável dedicar muitas linhas do barramento e pinos da CPU às interrupções.
    • Mesmo que fosse praticável, ainda assim existiria vários Dispositivos conectados a uma mesma linha, o que leva a 1 das 3 técnicas abaixo.
  • Polling, verificação por Software;
    • Lenta 
  • Daisy Chain, verificação por Hardware (vetorado);
    • Mais rápida que a Polling 
  • Arbitração de Barramento (vetorado);
    • Tb é mais rápida que a Polling 

Identificação de Dispositivos

27

  • Identificação por Software;
  • Está rotina interroga cada módulo de E/S, para determinar qual deles

gerou a Interrupção. Formas de interrogação:

  • Linha de teste especial (TEST I/O) + Colocação dos endr. dos módulos no

Barramento de Endr.;

  • Leitura dos Registradores de Estado.

Polling

28

Identificação de Dispositivos

  • Identificação por Hardware;
  • O Sinal de Reconhecimento da Interrupção se propaga pelos módulos de

E/S, até chegar àquele que gerou a Interrupção;

  • O módulo E/S responde, colocando a palavra de dados, chamada de

Vetor de Interrupção, nas Barramento de Dados;

  • O Vetor de Interrupção contém o endr. do Módulo de E/S, e serve para

que a CPU acione a Rotina de Tratamento de Interrupção adequada para

o dispositivo.

Daisy Chain

29

Identificação de Dispositivos

  • Identificação por Hardware;
  • Para enviar um Sinal de Interrupção, o Módulo de E/S precisa primeiro

obter o Controle do Barramento;

  • Quando a CPU detecta a Interrupção, ela responde por meio da Linha de

Reconhecimento de Interrupção (uma linha de controle);

  • O Módulo de E/S que gerou a Interrupção despeja o Vetor de

Interrupção no Barramento de Dados.

Arbitração do Barramento

30

Identificação de Dispositivos

  • A evolução dos módulos de E/S, exemplos de sua evolução:

1. Inicialmente, a CPU controlava diretamente os periféricos, ainda não existiam

os módulos de E/S;

2. Surge os módulos de E/S. A CPU usa E/S Programa sem Interrupção, os

detalhes específicos do periférico começam a ser abstraídos da CPU;

3. Surge a E/S Programada com Interrupção, a CPU está livre enquanto o

módulo E/S está preenchendo o buffer, mas a transmissão buffer => MM,

continua a cargo da CPU;

4. Surge o DMA, a CPU está mais livre, emite apenas o comando, e o módulo

E/S já é capaz de transferir os dados p/ a MM;

5. [surge o termo canal de E/S] O módulo de E/S ganha mais autonomia, sendo

capaz de executar instruções armazenadas na MM, com isso a CPU fica ainda

mais livre;

6. [surge o termo processador de E/S] O módulo de E/S ganha memória local,

passando a se tornar um computador a parte.

Canais e Processadores de E/S Canal de E/S

  • Representa uma extensão do conceito de DMA;
  • É um módulo de E/S capaz de executar instruções na MM. Logo, oferece

mais liberdade p/ a CPU;

  • Possui um conjunto específico de instruções. Portanto, não é capaz de

executar qualquer instrução.

  • Os 2 tipos de Canais de E/S mais comuns:
    • Canal Seletor
    • Canal Multiplexador

Canais e Processadores de E/S

Canal de E/S

  • Canal Seletor:
    • (1) usado p/ controlar dispositivos de alta velocidade;
    • (2) quando uma transferência começa, o módulo fica dedicado ao

dispositivo;

33

Canais e Processadores de E/S

Canal de E/S

  • Canal Multiplexador:
    • (1) usado p/ controlar dispositivos de alta ou baixa velocidade;
    • (2) trata diversos dispositivos por vez, multiplexando a transmissão

(similar ao pseudo-paralelismo);

  • Multiplexação por Bloco, para dispositivos de alta velocidade; e Multiplexação por Byte, para baixa velocidade;

34

Canais e Processadores de E/S

Forma de Trans. de Dados: Módulo  Periférico

  • A transmissão de dados pode ser de 2 tipos:
    • Transmissão Serial: os dados são enviados bit a bit;
    • Transmissão Paralela: os dados são enviados de palavra em palavra.
  • Quando se diz que a transmissão de dados de um periférico é serial. Pode-se afirmar apenas que a comunicação periférico  controladora é serial.
  • Mas a comunicação CPU  controladora sempre é paralela.
  • A Transmissão Serial pode ser:
    • Assíncrona: uma parte da largura de banda é perdida com bits delimitadores para início e fim de transmissão, menos eficiente;
    • Síncrona: mais eficiente,

35

Transmissão Paralela Transmissão Serial

Forma de Conexão: Módulo  Periférico

  • A conexão CPU  Módulo de E/S pode ser de 2 tipos:
    • Conexão Ponto-a-Ponto : oferece uma linha dedicada entre Módulo de

E/S e o Periférico.

  • P.ex. teclado, impressora, modem externo, ...
  • Conexão MultiPonto: na verdade é um Barramento Externo, a linha de

transmissão de dados é compartilhada entre o Módulo de E/S e os

Periféricos.

  • P.ex. HDs externos, dispositivos multimídia (DVDs, ...), ...;
  • Usada: (1) no Barramento Serial FireWire; (2)

36

Alguns Dispositivos de E/S

  • Monitor: (1) CRT; (2) LCD; e (3) LED
    • Modalidade Textual (ou Símbolo por Símbolo)
    • Modalidade Gráfica (ou Bit a Bit)
    • Resolução
  • Teclado
  • Mouse
  • Impressoras: (1) Matricial; (2) Jato de Tinta; e (3) Laser