Buscar

4 Dispositivos de Entrada e Saída e Barramentos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 93 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 93 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 93 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Prof.ª Daniella Dias 
danidias.jp@gmail.com
Entrada / Saída
e Barramentos
Curso de Tecnologia em Telemática
Disciplina Arquitetura de Computadores
Dispositivos de Entrada/Saída
2
— O usuário se comunica com o núcleo do computador (composto por UCP e 
memória principal) através de dispositivos de entrada e saída (dispositivos de 
E/S ou I/O devices, também denominados periféricos). 
— Funções básicas dos dispositivos de E/S: 
— a comunicação do usuário com o computador; 
— a comunicação do computador com o meio ambiente (dispositivos 
externos a serem monitorados ou controlados); 
— armazenamento (gravação) de dados. 
Permitem a comunicação homem-máquina
Tipos de Dispositivos
3
— Dispositivos de ENTRADA
— Funções: coletar informações e introduzir as informações na máquina, 
converter informações do homem para a máquina e recuperar informações 
dos dispositivos de armazenamento.
— Ex.: teclado, mouse, scanner, leitoras óticas, leitoras de cartões magnéticos, 
câmeras de vídeo, microfones, sensores, transdutores, etc ...
— Dispositivos de SAÍDA
— Funções: exibir ou imprimir os resultados do processamento, ou ainda 
controlar dispositivos externos.
— Ex.: impressoras, monitores de vídeo, plotters, atuadores, chaves, etc ...
Entrada de Dados
4
— O processador dever estar pronto para receber dados
— O dispositivo de entrada (teclado, mouse, scanner, etc) tem que estar
pronto para enviar os dados, e sinalizar este fato para o processador
— O processador identifica o dispositivo de entrada de dados e deve
dispor de informações sobre a transferência a realizar (volume de dados,
localização de destino, taxa de transferência, mecanismo de recuperação
de erros, etc) 
Saída de Dados
5
— O processador deve estar pronto para enviar os dados
— O dispositivo de saída (monitor, impressora, etc) deve estar pronto
para receber os dados, e sinalizar este fato para o processador
— O processador notifica o dispositivo de saída de dados dispondo 
os dados e as informações sobre suas características (taxa de 
transferência de dados, código, etc)
Comunicação com UCP
6
— A UCP não se comunica diretamente com cada dispositivo de E/S e 
sim com "interfaces", de forma a compatibilizar as diferentes 
características. 
— O processo de comunicação ("protocolo") é feito através de 
transferência de informações de controle, endereços e dados 
propriamente ditos. 
Dispositivo de Interface de E/S
7
— Controla a transferência (placa de vídeo, controlador IDE, etc) de dados 
entre o computador e os periféricos
— Funcionamento
— Seleciona ou identifica o dispositivo
— Armazena o estado do dispositivo
— Armazena os dados temporariamente
— Decodifica o endereço do dispositivo
— Gera sinais de sincronismo
— Compatibiliza a via e o dispositivo →Tipo de transmissão, sincroniza transferências, 
níveis lógicos, diferenças de Velocidade, Traduz Códigos (paridade, número de bits, etc)
Interfaces de Entrada e Saída
8
— Função: compatibilizar as diferentes características de um periférico e da 
UCP/MP, permitindo um fluxo correto de dados em uma velocidade adequada 
a ambos os elementos que estão sendo interconectados.
— Conhecidas por diversos nomes, dependendo do fabricante: Interface de E/S = 
Adaptador de Periférico, Controladora de E/S, Processador de Periférico, 
Canal de E/S.
— Compatibilização de velocidades - feita geralmente por programa, usando 
memórias ("buffers“) que armazenam as informações conforme vão chegando 
da UCP e as libera para o dispositivo à medida que este as pode receber.
Barramentos e dispositivos de E/S
9
— Cada dispositivo de E/S é composto de duas partes:
— Controladora – contém a maioria dos circuitos eletrônicos do 
dispositivo.
— O dispositivo propriamente dito (ex.: drive de disco).
Barramentos e dispositivos de E/S
10
Estrutura lógica de um computador pessoal
Controladora
11
— Em geral está em uma placa ligada a um slot livre, exceto no caso 
daquelas que não são opcionais (ex.: teclado), que muitas vezes está na 
placa mãe.
— Função: controlar seu dispositivo de E/S e tratar o acesso do 
dispositivo ao barramento.
— Uma controladora que lê ou escreve dados da/na memória sem que 
seja necessária a intervenção do processador, executa Acesso Direto à 
Memória (Direct Memory Access – DMA) 
DMA (Direct Memory Access) 
12
— Quando termina a transferência dos dados, a controladora força uma 
interrupção, fazendo com que o processador suspenda a execução do 
programa corrente, para começar a rodar um procedimento especial –
rotina de tratamento da interrupção.
— Quando a rotina de tratamento da interrupção terminar sua execução, 
o processador retorna a execução do programa interrompido quando 
da ocorrência da interrupção.
Tipos de Comunicação
13
— De uma forma geral, a comunicação entre o núcleo do computador e 
os dispositivos de E/S poderia ser classificada em dois grupos:
— comunicação paralela
— comunicação serial
Comunicação Paralela
14
— Grupos de bits são transferidos simultaneamente (em geral, byte a byte) através de 
diversas linhas condutoras dos sinais. 
— A taxa de transferência de dados ("throughput") é alta.
— Problema: skew. Deve ser usada para curtas distâncias.
— Adequada para dispositivos mais rápidos ou próximos do núcleo do computador: 
unidades de disco, CD-ROM, DVD, impressora, scanner.
Comunicação Serial
15
— Os bits são transferidos um a um, através de um único par condutor.
— Os bytes a serem transmitidos são serializados ("desmontados" bit a bit) e são 
individualmente transmitidos, um a um. Na outra extremidade, os bits são contados e 
quando formam 8 bits, são remontados, reconstituindo os bytes originais. 
— Controle mais simples e implementação mais barata. 
— Adequada para dispositivos mais lentos: mouse, teclado ou para transmissão à longa 
distância: modem.
Métodos para transmissão
16
Através de uma linha de comunicação: 
— Transmissão Síncrona
— Intervalo de tempo entre dois caracteres subseqüentes-fixo. 
— Transmissão Assíncrona
— Intervalo de tempo entre os caracteres não é fixo. 
— Também é conhecida como "start-stop".
Taxa de eficiência de uma transmissão de dados: relação de número de bits 
úteis dividido pelo total de bits transmitidos. Método assíncrono: eficiência 
é menor que a no método síncrono (necessidade dos bits de start e stop). 
Tipos de transmissão
17
Transmissão simplex
Transmissão half-duplex
Transmissão full-duplex
Tipos de transmissão
18
— Simplex – transmite em uma única direção.
— Half-duplex – transmite em uma única direção de cada vez.
— Full-duplex – podem transmitir em ambas as direções ao mesmo 
tempo.
Barramento
19
— Caminho elétrico comum que liga diversos dispositivos.
— Como um dado é composto por bits (geralmente um ou mais bytes) o 
barramento deverá ter tantas linhas condutoras quanto forem os bits a 
serem transportados de cada vez. 
— Em alguns computadores (usando uma abordagem que visa a redução 
de custos), os dados podem ser transportados usando mais de um ciclo 
do barramento.
Barramentos
20
— Podem ser do tipo: 
— internos ao processador: transferência de dados entre UAL e 
registradores 
— externos ao processador: transferência de dados entre CPU, memória 
e dispositivos de E/S. Os barramentos externos podem ser 
expandidos para facilitar a conexão de dispositivos especiais. 
— Os primeiros computadores pessoais possuiam apenas um barramento 
externo (barramento do sistema) gravados na placa-mãe para ligação 
com a memória e placas de E/S.
— Atualmente, barramentos especial para CPU-MP e (pelo menos) um 
para CPU-E/S.
Barramento
21
Barramento 
Interno
Barramento do 
Sistema
Barramentode 
Expansão
Barramento
22
Barramentos - Tipos
23
— Barramento de dados – bidirecional
— Barramento de endereços – unidirecional
— Barramento de controle - bidirecional
Barramento de Dados (Data Bus) 
24
— São linhas usadas para transferência de dados e instruções entre 
processador, memória e dispositivos de E/S.
— Possuem diferentes tamanhos, dependendo do processador. 
Exemplo: 8, 16, 32, 64 e 128.
Barramento de Endereços 
(Address Bus) 
25
— Usado para selecionar a origem ou destino de sinais transmitidos em um dos 
outros barramentos ou em uma de suas linhas. Conduz endereços. 
— Uma função típica: selecionar um registrador em um dos dispositivos do 
sistema que é usado como a fonte ou o destino do dado. 
— O processador usa n linhas de endereço do barramento para endereçar 2n
posições diferentes de memória 
— Exemplo: Barramento de Endereços com 16 linhas, pode endereçar 216 (64 K) 
dispositivos (1K= 1024). 
Barramento de Controle 
(Control Bus) 
26
— Sincroniza as atividades do sistema. 
— Conduz o status e a informação de controle de/para o 
microprocessador. 
— Para um Barramento de Controle ser formado, várias linhas de 
controle são necessárias.
Barramentos multiplexados
27
— São barramentos que contém um único conjunto de fios para 
endereços e dados. 
— Usam multiplexador para transmitir dados e também endereços. 
— Vantagem: barramento com menor número de fios. 
— Desvantagem: mais lentos. 
Protocolo de barramento
28
— É um conjunto de regras que especificam o funcionamento do 
barramento. 
— Define as regras e especificações, elétricas e mecânicas, de 
compatibilização de um conjunto de dispositivos de E/S, em 
geral fornecidos por terceiros, com o barramento.
— Dispositivos conectados ao barramento devem seguir o 
protocolo.
— Os dispositivos ligados ao barramento podem funcionar como:
— mestres: dispositivos ativos, ou seja, que comandam o barramento 
— escravos: dispositivos passivos, ou seja, não controlam o barramento.
29
DMA (acesso direto à 
memória) 
MemóriaE/S
Início de transferência de 
dados
Dispositivos 
de E/S
Processador
Busca de instruções e de 
dados
MemóriaProcessador
ExemploEscravoMestre
Exemplos de mestre e escravos
Amplificação do sinal
30
— O sinal binário emitido pelos dispositivos pode ser muito 
fraco para energizar todo o barramento, principalmente em 
barramentos mais longos e/ou com muitos dispositivos 
conectados.
— Assim, muitos dispositivos são conectados ao barramento por 
um chip que terá o papel de amplificar o sinal:
— Controlador de barramento – dispositivos mestres
— Receptor de barramento – dispositivos escravos
— Transceptor de barramento – dispositivos que podem atuar 
como mestre e também como escravo.
Projeto e operação de barramentos
31
— Envolvem várias questões complexas, mas os principais 
tópicos são:
— Largura
— Clock (temporização)
— Arbitragem
— Operações
Largura do barramento
32
— Normalmente, primeiro parâmetro a ser definido.
— Por exemplo, quanto mais linhas de endereço, mais 
endereços de memória a CPU poderá endereçar 
diretamente.
— Barramentos mais largos, precisam de mais fios, logo mais 
espaço físico e conectores maiores.
— É necessário encontrar o equilíbrio entre largura do 
barramento e necessidades futuras:
— Exemplo da Intel e a evolução do 8088 – 80286 – 80386 
— Por questões de compatibilidade, o aumento do barramento de 
endereços gerou também o aumento do barramento de 
controle.
Largura do barramento
33
Isso gerou um barramento (EISA) mais complexo (e confuso) do 
que se tivesse sido projetado com 32 bits desde o início.
Largura do barramento
34
— Além da necessidade do crescimento do endereçamento, 
existe a do crescimento da quantidade de dados a ser 
transmitida (largura de banda).
— Duas forma para aumentar a largura de banda de um 
barramento:
— Aumentar a taxa de transferência (mais 
bits/segundo): risco de problemas de atraso diferencial 
(skew) e compatibilidade.
— Aumentar a largura de dados (mais 
bits/transferência): problemas de espaço físico e custo. 
Possível solução: barramentos multiplexados.
Temporização do barramento
35
— Barramentos Síncronos
— Têm uma de suas linhas alimentada por um oscilador a cristal 
(clock). Todas as atividades do barramento gastam um número 
inteiro de ciclos desse sinal – ciclos do barramento.
— Barramentos Assíncronos
— Não usam clock para sincronização de operações.
Importante: O maior problema com o barramento síncrono é que os dispositivos 
mais rápidos têm que esperar alguns clocks inteiros para finalização de 
operações com dispositivos mais lentos.
Barramento Síncrono
36
— Vantagens
— nenhuma ou pouca lógica é necessária durante a transação
— Transação consiste basicamente de duas partes: 
— envio do endereço e leitura dos dados
— barramento pode ser rápido e de baixo custo
— Desvantagens
— todos os dispositivos devem operar na mesma velocidade
— risco de clock skew, logo têm comprimento físico limitado
— todas operações devem ser executadas em múltiplos inteiros do 
clock (3,1 → 4,0)
— uma vez definida a velocidade, não pode mais ser alterada.
Barramento Assíncrono
37
— A comunicação se dá através de um protocolo conhecido 
como aperto de mão (handshaking), que é self-timed.
— Vantagens
— mais adaptável a mudanças tecnológicas
— adaptável a uma grande variedade de dispositivos (velocidade) 
— permite maior comprimento físico
— usado tipicamente em transações de entrada/saída
— Desvantagens
— lógica dedicada é necessária em cada dispositivo
— maior overhead devido ao processo de sincronização
— menor BW (Banda Passante) 
Barramento Assíncrono –
Exemplo de Transações
38
0 – colocação do endereço nas linhas de dados e ativação do sinal de leitura requerida 
pelo dispositivo de entrada/saída
1 – leitura do endereço e ativação do sinal de reconhecimento pela memória
2 – detecção do sinal de reconhecimento e liberação das linhas de dados e leitura 
requerida pelo dispositivo
3 – reconhecimento da liberação das linhas e desativação do sinal de reconhecimento pela 
memória
4 – quando pronta, a memória coloca os dados nas linhas de dados e ativa o sinal de dados 
prontos
5 – o dispositivo reconhece o sinal de dados prontos, lê os dados e ativa o sinal de 
reconhecimento
6 – a memória detecta o sinal de reconhecimento, e então libera as linhas de dados e 
dados prontos
7 – o dispositivo detecta a liberação da linha dados prontos e desativa o sinal de 
reconhecimento
Barramento Síncrono x Assíncrono
39
— Os barramentos síncronos não podem tirar vantagem dos ganhos 
em desempenho das novas tecnologias surgidas após a sua 
definição. 
— A cada mudança de tecnologia, para se aumentar o desempenho do 
sistema, é necessário trocar todos os dispositivos da tecnologia 
anterior. Isto não acontece com os barramentos assíncronos, pois 
cada operação pode definir a sua própria temporização. 
— Podem conviver num mesmo barramento assíncrono dispositivos 
de tecnologias diferentes. Esta flexibilidade tem, como custo, uma 
maior complexidade do barramento. 
Barramento Síncrono x Assíncrono
40
— A medida que os avanços tecnológicos aproximam-se dos limites 
físicos de velocidade dos dispositivos, a vantagem da flexibilidade 
dos barramentos assíncronos perde um pouco a sua importância. 
— Pois numa mesma tecnologia, o desempenho dos barramentos 
síncronos é um pouco maior que o desempenho dos barramentos 
assíncronos.
Barramento Síncrono x Assíncrono
41
— O barramento assíncrono tem vantagens em relação ao síncrono, 
porém os síncronos são mais usados pois:
— são mais fáceis de construir, o processador simplesmente ativaseus 
sinais e a memória simplesmente reage a eles
— nnão é necessária a realimentação dos sinais
— se os componentes foram escolhidos adequadamente, tudo funcionará 
sem dependência
— há uma boa soma de dinheiro investida na tecnologia de barramentos 
síncronos. 
Arbitragem de Barramento
42
— Tanto a CPU como os dispositivos de E/S podem atuar como 
mestres do barramento.
— E se mais de um dispositivo tentar atuar como mestre ao mesmo 
tempo?
— É necessário definir quem controla o barramento em determinado 
momento (arbitragem).
— Arbitragem centralizada
— Utiliza um árbitro para controlar o acesso ao barramento determinando
quem será o próximo mestre do barramento. 
— Arbitragem descentralizada
— Não usa árbitro para controlar o acesso ao barramento. 
— Quando um dispositivo precisar usar o barramento, o dispositivo deve 
ativar a linha de requisição. 
— Todos os dispositivos monitoram todas as linhas de requisição.
Árbitro de barramento
43
— Recebe todas as requisições de utilização do barramento.
— Algumas CPUs possuem o árbitro no mesmo chip.
— Utiliza políticas pré-definidas para determinar quais requisições serão 
confirmadas (prioridades)
— Em geral os dispositivos de E/S tem prioridade (não podem esperar ou 
correm o risco de perder os dados)
— Quando uma operação de E/S estiver em andamento, será garantido 
acesso prioritário ao barramento ao dispositivo que estiver realizando a 
tarefa. Denominação: roubo de ciclo (tem influência direta no 
desempenho do computador).
Arbitragem centralizada - Exemplo
44
— Encadeamento em série (daisy chaining)
— Barramento possui uma linha de requisição OR que pode ser acionada 
por um ou mais dispositivos a qualquer tempo.
— O árbitro não sabe quantos dispositivos requisitaram o barramento.
— Ao verificar uma requisição, ativa a linha de concessão que está ligada 
em série a todos os dispositivos.
— Quando o dispositivo mais próximo ao árbitro verifica a concessão, 
verifica se ele mesmo fez uma requisição e:
— Se sim, usa o barramento e não propaga a concessão.
— Se não fez, propaga a concessão para o próximo dispositivo que se 
comportará do mesmo modo.
— A distância em relação ao árbitro define a prioridade.
Arbitragem centralizada - Exemplo
45
Arbitragem centralizada
46
— Para contornar as prioridades implícitas baseadas na distância, muitos 
barramentos possuem mais de uma linha de requisição (4, 8 ou 16)
— Cada linha de requisição define uma prioridade.
— Disposititivos conectados na mesma linha possuem mesma prioridade.
— Se mais de uma linha de requisição for acionada, o árbito atende a de 
maior prioridade.
— Se mais de um dispositivo da mesma linha fizer uma requisição –
encadeamento em sério é utilizado.
— No exemplo a seguir:
— Dispositivos 1, 2 e 4 – prioridade 1/dispositivos 3 e 5 – prioridade 2
— Se ocorrer conflito, dispositivo 2 vence 4, que por sua vez vence o 3.
Arbitragem centralizada – Exemplo
(Dois níveis de prioridade)
47
Tecnicamente não é necesário ligar a linha de concessão nível 2 em série pelos 
dispositivos 1 e 2. Contudo, é mais simples implementar a conexão de todos os nívéis 
por todos os dispositivos, do que utilizar ligações especiais com base na prioridade.
Arbitragem descentralizada – Opção 1
48
— 1 linha de requisição para cada dispositivo 
— Antes de transmitir, o dispositivo ativa sua linha de requisição e 
verifica todas as outras linhas. Caso o barramento esteja livre, 
inicia sua trasnferência.
— Vantagem: evita o custo do árbitro.
— Desvantagens:
— Requer muitas linhas de requisição
— Limita o número de dispositivos ao número de linhas de 
requisição.
Arbitragem descentralizada – Opção 2
49
— Utilizar apenas 3 linhas: requisição, busy e arbitragem.
— Quando nenhum dispositivo quiser o barramento – a linha de 
arbitragem é propagada por todos os dispositivos.
— Para usar o barramento um dispositivo deve:
— Ativa o sinal de requisição
— Verifica se o barramento está ocioso (Busy)
— Verifica se seu sinal de Entrada está ativo:
— Se estiver negado – não pode utilizar o barramento e nega seu Saída
— Se estiver ativo – nega seu Saída (seu vizinho terá seu Entrada 
negado, o que o fará negar seu Saída e assim sucessivamente…), 
ativa o Busy, nega a linha de requisição e inicia a transferência. Ao 
concluir a transferência, nega o Busy e ativa o Saída.
Arbitragem descentralizada
50
Operações de barramentos
51
— Ciclos de barramentos comuns envolvem transações mais simples como, 
por exemplo, a transferência de uma única palavra de dados entre um 
mestre e um escravo. 
— No entanto, existem operações mais complexas que envolvem diferentes 
tipos de ciclo de barramento:
— Transferência de blocos de dados (memória cache)
— Controle do compartilhamento do barramento de memória em um sistema 
multiprocessador (ciclo ler-modificar-escrever). Permite que uma CPU solicite 
uma palavra de memória, modifique-a e escreva novamente na memória, sem 
liberar o barramento.
— Interrupções em dispositivos de E/S (espera conclusão da operação)
— Tudo isso é definido no protocolo do barramento.
Entrada/Saída
52
— Existem, basicamente, 3 esquemas diferentes para a realização de 
operações de E/S em computadores pessoais: 
1. E/S programada com espera ocupada 
2. E/S dirigida por interrupção 
3. E/S com acesso direto à memória (DMA)
E/S programada com espera ocupada
53
— Mais simples de todos os métodos; 
— Esses processadores têm, em geral, uma única instrução de entrada e 
uma única de saída; 
— Trabalha com dois registradores para fazer a E/S 
— Registrador de estado
— Registrador de dados
— Essas instruções são executadas em loop
— Não é uma boa solução, o processador gasta grande parte do tempo 
do processamento no loop 
— Na operação de E/S, um único caractere é transferido entre um 
registrador fixo do processador e o dispositivo de E/S selecionado na 
instrução; 
— Existe um tempo de espera para que um bit de controle avise que um 
caractere pode ser lido ou escrito de, ou para, um dispositivo de E/S. 
E/S dirigida por interrupção 
54
— Neste método o processador inicia uma operação de E/S com um 
dispositivo e sai do processo, levando o dispositivo a interrompê-lo ao 
término da operação. 
— Desvantagem?
— A desvantagem deste método é que existe a necessidade de se gerar 
uma interrupção para cada caractere transmitido, e o processamento de 
interrupções é caro. 
E/S com acesso direto à memória (DMA) 
55
— Agrega-se um componente ao processo de E/S programada, um 
chip controlador conhecido como DMA (Direct Memory Access -
Acesso Direto à Memória). Este dispositivo tem acesso direto ao 
barramento. 
— O DMA recebe informações sobre um endereço de memória, a 
quantidade de bytes a serem transferidos, o número do dispositivo a 
ser acessado e a direção (leitura ou escrita) dos dados. 
— Com essas informações o DMA é capaz de transferir dados entre a 
memória e o dispositivo de E/S, via barramento, sem intervenção 
do processador. Assim o processador fica livre para realizar outras 
operações.
56
Sistema com um controlador DMA.
Dispositivo
Endereço
Direção
Memória
Contro-
ladora 
RS232C
Barramento
Con-
tador
Barramento ISA
57
— ISA (Industry Standard Architecture) 
— Primeiro barramento de expansão utilizado em micros PC 
(síncrono). 
— Existiram duas versões: 
– slots de 8 bits, que foram utilizados pelos primeiros PCs 
– slots de 16 bits, introduzidos a partir dos micros 286.
— Para preservar a compatibilidade com as placas antigas (8 bits) os pinos
adicionais foram incluídos na forma de uma extensão para os já
existentes.
Barramento ISA
• Uma coisa que chama a atenção nos slots ISA é o grandenúmero de contatos (98).
• Por serem slots de 16 bits, apenas 16 trilhas são de dados, as
demais são usadas para endereçamento, alimentação elétrica,
sinal de clock, refresh, etc.
58
Esquema de Implementação do 
Barramento ISA
59
Barramento ISA
60
— Cada um destes pinos podia ser controlado individualmente via software e muitas 
placas não utilizavam todos os pinos do conector, por isso era comum que 
periféricos mais simples, como placas de som e modem viessem com alguns dos 
contatos "faltando". 
— Por serem fáceis de programar, as controladoras ISA foram as preferidas por 
programadores que trabalham com automatização e robótica durante muito 
tempo.
— Além de operar a apenas 8.33 MHz, são necessários tempos de espera entre uma 
transferência e outra, de forma que, na prática, o barramento funciona a apenas 
metade da frequência nominal. 
— Desta forma, chega-se a uma taxa de transmissão teórica de 8.33 MB/s (no ISA 
de 16 bits). Como existe um grande overhead causado pelo protocolo usado, na 
prática acaba sendo possível obter pouco mais de 5 MB/s de taxa de 
transferência real.
Barramento ISA
• Com relação à parte prática, uma das principais características das
placas ISA era a presença de jumpers, que permitiam definir os
endereços de IRQ, DMA e I/O usados pela placa.
• Em um PC com vários periféricos, os valores precisam ser ajustados
com cuidado, já que duas placas configuradas para utilizar o mesmo
endereço entravam em conflito, fazendo com que ambas não
funcionassem corretamente.
61
Barramento ISA
• Mais tarde, surgiu o padrão ISA plug-and-play (PnP), onde a
configuração de endereços é feita pelo BIOS durante o boot. Ele verifica
quais endereços estão ocupados por outros dispositivos e tenta atribuir
os endereços livres aos novos periféricos instalados, evitando conflitos.
• Com a introdução das placas ISA plug-and-play, as placas antigas,
configuradas via jumper passaram a ser chamadas de placas legacy ISA.
• É relativamente incomum encontrar alguma em uso hoje em dia,
mesmo ao trabalhar com micros antigos.
62
Barramento PCI
63
— PCI (Peripheral Component Interconnect) 
— Criado pela Intel em 1990 que patenteou o barramento e depois 
passou para domínio público.
— Versões:
— Original: tranferêncis de 32 bits por ciclo a 33 MHz (ciclo de 30 ns) e 
largura de banda total de 133 MB/s. 
— Atual: transferências de até 64 bits até 66MHz e largura de banda total de 
528 MB/s.
— Barramento PCI é síncrono e multiplexado.
— Transações feitas por um mestre (ou iniciador) e um escravo (ou alvo).
— Um dos principais barramentos utilizados nos PCs atuais.
64
Placa de porta paralela PCI
Slot PCI em uma placa-mãe.
Sinais do barramento PCI
65
Transações do Barramento PCI -
Leitura
66
— T1
— O mestre põe o endereço de memória em AD;
— Põe também o comando de barramento em C/BE#;
— Ativa FRAME# para iniciar a transação do barramento;
— T2
— O mestre libera o barramento de endereço para deixar que ele retorne em 
preparação para o comando do escravo durante o T3;
— T3
— O escravo ativa o DEVSEL# ;
— Põe dados nas linhas AD;
— Ativa o TRDY# para informar o mestre que fez isso;
— T4 : Ciclo ocioso;
Transações do Barramento PCI -
Escrita
67
— T1
— Inicia-se uma escrita;
— Coloca o endereço e o comando no barramento;
— T2
— Coloca os dados no barramento;
— T3
— A memória aceita os dados;
PCI – Leitura e escrita (32 bits)
68
Arbitragem PCI - Centralizada
69
• Na maioria dos projetos, o árbitro é colocado em um dos chips de ponte.
• Para requisitar o barramento, o dispositivo ativa o #REQ, espera até ver 
sua linha #GNT ativada pelo árbitro e usa o barramento no ciclo seguinte.
• Vários algoritmos podem ser utilizados pelo árbitro: varredura circular, 
prioridade, etc.
• A concessão dá direito a apenas uma transação. Para uma nova transação, 
espera um ciclo e requisita novamente.
Barramento PCI
70
— PROBLEMAS
— Não era muito bom para um barramento de memória;
— Não era compatível com as antigas placas ISA existentes;
— SOLUÇÃO
— A Intel projetou computadores com três ou mais barramentos.
— Com o passar do tempo, a resolução dos monitores e os vídeos de tela 
inteira e movimento total aumentaram de escala, surgiu a necessidade de 
acrescentar outro barramento para comandar somente a parte gráfica dos 
computadores;
— Foi criado o barramento AGP(Accelerated Graphics Port Bus);
— AGP 1.0 trabalhava a 264MB/s;
— AGP 3.0 trabalhava a 2.1GB/s(8x);
Estrutura com diferentes barramentos
71 Computador pessoal com barramentos PCI e ISA
Estrutura com diferentes barramentos
72
73
74
Arquitetura de alto desempenho
PCI Express (PCIe)
75
— O barramento PCI é usado desde 1992 e atendeu a maior parte 
das necessidades da época. 
— Novos dispositivos periféricos e processadores exigem maior 
largura de banda do barramento, o que não é possível com o 
barramento PCI, limitado a 66 MHz. 
— O AGP 3.0 também não atende às necessidades atuais.
— Além disso, o tamanho das placas PCI é muito grande, 
consequentemente não são adequadas para computadores 
menores (notebooks, all-in-one, …)
Comparativo de Barramentos
76
Barramento Largura de Banda (MBps) 
PCI 133
AGP-2X 533
AGP-4X 1066
AGP-8X 2133
PCI-Express 1X 250
PCI-Express 2X 500
PCI-Express 4X 1000
PCI-Express 16X 4000
PCI-Express 32X 8000
PCI Express (PCIe)
77
— Conexões seriais ponto a ponto de alta velocidade.
— Grande ruptura com o padrão adotado até então e baseado na ideia 
de redes locais:
— Computador como um conjunto de chips de CPU, memória e 
controladores de E/S interconectados.
— O PCIe fornece um comutador de uso geral via conexões seriais.
— Cada conexão consiste de um par de canais unidirecionais.
— Cada canal é composto por dois fios, um para sinal e outro para o 
terra (imunidade contra ruído em transmissões em alta 
velocidade).
— Conceito de pacote: cabeçalho + dados
— Cabeçalho: informações de controle (“antigos” sinais de controle)
Sistema PCIe típico
78
PCI Express (PCIe)
79
— Priorização de dados, que permite que o sistema transfira 
primeiro os dados mais importantes e ajuda a evitar gargalos.
— Transferências de dados em tempo real.
— Melhorias nos materiais usados na fabricação das conexões.
— Melhor handshake e detecção de erros. 
— Melhores métodos para quebrar os dados em pacotes e montá-los 
de volta.
— Um dispositivo pode atuar como comutador (árvore de 
comutadores).
— Dispositivos podem ser acrescentados/removidos enquanto o 
sistema está em operação.
PCI Express – Pilha de Protocolos
80
Camada de Software
Interface com SO,
Inicialização, 
Configuração,
Pode emular PCI…
Empacota a 
mensagem
Controle e 
integridade dos 
dados
Barramento USB
81
— PCI e PCIe são interessantes para dispositivos de alta velocidade, 
mas muito caros para dispositivos mais lentos/simples.
— USB (Universal Serial Bus) definido em 1993 por sete empresas
(Compaq, DEC, IBM, Intel, Microsoft, NEC e Northern Telecom)
— Barramento que permite o uso de um tipo de conexão comum
entre computador e periféricos. E que deve ser comum a todos os
aparelhos que o usarem. 
— Assim, uma porta USB pode ser usada para instalar qualquer
dispositivo que use o mesmo padrão.
— Teoricamente, pode-se conectar até 127 dispositivos USB em uma
única porta ou através de hubs USB.
Versões do USB
82
— USB 1.1: transferência de dados de até 12 Mbps. 
— USB 2.0 (Hi-Speed): opera até 480 Mbps. 
— USB 3.0: pode chegar a 5Gbps.
– Transmissão bidirecional de dados: o envio e a recepção de dados 
entre dois dispositivos pode acontecer ao mesmo tempo;
– Maior velocidade: a velocidade de transmissão de dadosé de até 4,8 
Gb/s;
– Alimentação elétrica mais potente: pode oferecer maior quantidade
de energia: 900 miliampéres contra 500 miliampéres do USB 2.0;
– Compatibilidade: conexões USB 3.0 suporta dispositivos USB 1.0 e 
USB 2.0.
Barramento USB
83
— Sistema USB consiste de um hub-raiz (root hub) que é ligado ao 
barramento principal. 
— Esse hub tem soquetes para cabos que podem ser conectados a 
dispositivos de E/S ou a hubs de expansão. 
— Quando um novo dispositivo de E/S é conectado, o hub-raiz 
interrompe o SO que por sua vez identifica o tipo de dispositivo e 
o atribui um endereço. 
— A cada 1ms o hub-raiz transmite um quadro SOF (Start of frame – 
início de quadro) para manter todos os dispositivos sincronizados. 
Protocolo USB
84
— Transmissão baseada no envio de pacotes (três tipos): 
— Transmissão começa quando o hub-raiz envia um pacote (Token 
Packet) descrevendo o tipo e a direção da transmissão, o endereço 
do dispositivo e o número de endpoint. 
— O disposititivo decodifica o campo de endereço e reconhece se o 
pacote é para ele. 
— A fonte envia um pacote de dados (Data Packet). 
— O destino responde com um pacote de Handshake (Handshake 
Packet) indicando o sucesso (ou não) da transferência. 
Pacotes USB
85
(a) Token, (b) Data e (c) Handshake Packets
Fonte: http://clubedohardware.com.br
PID: identifica e descreve o tipo do pacote.
ADDR: endereço do dispositivo. 
ENDP: permite a definição de subcanais. 
CRC: detecção de erros. 
DATA: bits de dados 
Token packet pode identificar como sendo 
uma transferência para o Host (IN), para a 
função (OUT), início de frame (SOF) ou 
controle (SETUP). 
Handshake packet pode indicar que os 
dados foram recebidos livres de erro 
(ACK), que o receptor/transmissor não 
poder receber/transmitir dados (NAK) ou 
que o endpoint está parado (STALL)
Barramento USB
86
— USB aceita quatro tipos de transferências:
— Controle: para configurar ou transmitir parâmetros de controle a 
um dispositivo. 
— Interrupção - usado em dispositivos como o mouse ou teclado, 
que enviarão poucos dados. USB não utiliza interrrupções, o SO 
verifica se há dados a serem transmitidos em intervalos fixos.
— Bulk - um dispositivo como uma impressora, que recebe dados 
em grandes pacotes, utiliza esse modo de transferência. 
— Isócrono - um dispositivo de transmissão contínua e/ou tempo 
real (como alto-falantes) utiliza esse modo. 
Interior de um cabo USB
• O cabo é blindado: +5 volts (vermelho) e o fio terra 
(marrom), e um par trançado (amarelo e azul) de fios 
para a condução dos dados. 
87
Barramento USB
• A arquitetura USB permite 
o uso de múltiplos hubs. O 
hub é o elemento que 
permite a expansão do 
número de conexões do 
sistema. Cada hub converte 
um ponto de conexão em 
outros múltlipos pontos.
88
Barramento USB
89
Existem quatro tipos de conectores USB, o USB tipo A, que é o mais 
comum, usado por pendrives e topo tipo de dispositivo conectado ao PC, 
o USB tipo B, que é o conector "quadrado" usado em impressoras e 
outros periféricos, além do USB mini 5P e o USB mini 4P, dois formatos 
menores, que são utilizados por câmeras, mp3 players, palmtops e 
outros gadgets.
Barramento USB
90
Os quatro tipos utilizam a mesma pinagem, o único diferencial é mesmo 
o formato físico. Existem ainda alguns formatos de conectores 
proprietários, geralmente versões levemente modificadas de um destes 
quatro formatos. Por serem intercompatíveis, é relativamente fácil 
encontrar adaptadores diversos para permitir encaixar cabos com 
conectores de formatos diferentes:
Wireless USB
91
— O WUSB (Wireless USB) é uma versão sem fios do USB, que utiliza o 
sistema UWB (ultra-wide band) para a transmissão de dados a curtas 
distâncias, utilizando sinais de baixa potência. 
— Em teoria, o WUSB suporta taxas de transmissão de até 480 megabits a 
distâncias de até 3 metros e 110 megabits a até 10 metros.
— O objetivo é que o WUSB seja uma opção ao uso do USB em todo tipo de 
periféricos, incluindo mouses, joysticks, impressoras, scanners, câmeras 
digitais, mp3players e até mesmo HDs externos.
92
93

Continue navegando