Você está na página 1de 26

Organização e Arquitetura de Computadores II

Barramentos

Capítulo 3 do Stallings
2 / 25

Introdução
• Definição
– Barramento é uma infraestrutura de comunicação que provê meio físico para interligar
sistemas a ele conectados
• Classificação 1 2

– Infraestrutura do tipo multiponto e temporal


4 3
1 4 2 5 3 6

• Acesso
– Sistemas que usam o barramento apenas para leitura podem ter uma conexão direta
(normalmente com chaves para não sobrecarregar o barramento)
– Sistemas que usam o barramento para escrita requerem componentes tipo tri-state
para compartilhar o mesmo ponto em instantes distintos

CPU Memória

P1 P2 P3

– Permite uma transação (escrita) por vez, porém podem existir diversas leituras
(unicast, multicast ou broadcast)
3 / 25

Vantagens
• Simplicidade
– Quando integrado tem poucos fios facilitando o posicionamento dos mesmos
– Quando discreto: fácil de instalar e dar manutenção
• Baixo custo
– Quando integrado: pouca área de placa ou silício
– Quando discreto: é uma infraestrutura passiva  apenas um cabo coaxial
– Quando comparando com demais infraestruturas de comunicação, tem
menor tamanho total de conexões
• Usabilidade
– Topologia mais comum entre as infraestruturas de comunicação
– Excelente para operações broadcast e multicast (um escritor e múltiplos
leitores)
• Confiabilidade
– Se nodo (subsistema conectado ao barramento) falha, não afeta o
barramento (a menos que a falha seja na conexão e altere, por exemplo, a
impedância do barramento)
• Latência
– Latência média/baixa, quando comparado com outras infraestruturas de
comunicação
4 / 25

Desvantagens

• Confiabilidade
– Se cabo, conector ou terminal falhar, toda infraestrutura falha
• Tolerância a falhas
– Falha do barramento implica particionamento total
• Paralelismo
– Não é adequado para tráfego pesado com múltiplos escritores
– Infraestrutura altamente bloqueante
• Vazão de dados
– Vazão média/baixa, quando comparado com outras infraestruturas de
comunicação
• Escalabilidade
– Baixa: limitada a algumas dezenas de nodos
• Necessidade de hardware auxiliar
– Requer mecanismos e políticas para controlar o uso do barramento
5 / 25

Arquiteturas de Barramento
• Barramento Único
– Periféricos e CPU estão ligados através de um único meio físico compartilhado
– Hardware requer portas tipo tri-state, que permitem o compartilhamento temporal
– Forma simples de interconexão
– Barramento acomoda dispositivos com características e velocidades diferentes 
Desempenho da comunicação cai
CPU Memória

P1 P2 P3

CPU P1
• Barramento Segmentado
– Dois níveis Adaptador
– Hierárquico
– Irregular
Memória P2 P3
6 / 25

Arquiteturas de Barramento
• Barramento em dois níveis
– Processador e memória se comunicam através de barramento principal
– Barramentos de E/S estão ligados ao barramento principal através de adaptadores,
compondo um segundo nível na arquitetura de barramentos
– Barramento principal pode funcionar a uma maior velocidade
• Adaptadores se encarregam da comunicação com barramentos de E/S mais lentos
7 / 25

Arquiteturas de Barramento
• Barramento hierárquico
– Processador e memória se comunicam através de um barramento principal
– Backplane concentra toda E/S do sistema e é ligado ao barramento principal
(só um adaptador é ligado ao barramento principal)
– Ao backplane estão ligados diferentes barramentos de E/S através de
adaptadores
8 / 25

Tipos de Barramentos
• Back-side cache
– Conecta cache diretamente ao processador
• Processador-memória (front-side)
– Projetados de acordo com sistema de memória da placa
• Backplane
– Projetados para possibilitar a ligação de vários grupos de dispositivos de E/S através
de um único adaptador ao barramento PM (Processador-Memória)
• Entrada / Saída
– Conecta dispositivos de E/S
9 / 25

Tipos de Barramentos
• Back-side cache
– Conecta cache diretamente ao processador
– Funciona na mesma frequência do processador
– É uma porta
10 / 25

Tipos de Barramentos
• Processador-memória (front-side)
– Curtos
– Alta velocidade
– Projetados de acordo com sistema de memória da placa
– Protocolo proprietários do fabricante
11 / 25

Tipos de Barramentos
• Backplane
– Base para ligação de outros barramentos (espinha dorsal – backbone em redes)
– Projetados para possibilitar a ligação de vários grupos de dispositivos de E/S através
de um único adaptador ao barramento PM (Processador-Memória)
• Maximiza velocidade do barramento PM
12 / 25

Tipos de Barramentos
• Entrada / Saída
– Conecta dispositivos de E/S
– Longos
– Taxas de transmissão variadas
– Padrão seguido por fabricantes. Exemplo: SCSI, NuBus
– Normalmente não conectam diretamente periféricos ao sistema de memória
13 / 25
Estudos de Casos - Texas Instruments PC Architecture
14 / 25

Estudos de Casos - Power Macintosh G3


15 / 25

Estudos de Casos - Apple iMac

Matriz de
Chaveamento
ao invés de
barramento
16 / 25

Estudos de Casos - Pentium 4

Matriz de
Chaveamento
ao invés de
barramento
17 / 25

Estudos de Casos - i7
18 / 25

Compartilhamento do Barramento

• Processador mestre
– Um PE (Elemento de processamento) é eleito mestre que controla acesso
ao barramento
– PE mestre utiliza um algoritmo de escalonamento para determinar o próximo
candidato ao uso do barramento. E.g. uma fila sem prioridade
– O escalonamento determina a prioridade de acesso ao barramento
– PE mestre realiza pollings, conforme algoritmo de escalonamento, para ver
se o PE escalonado deseja usar o barramento
– Exemplo: processador é o PE mestre, controlando todos os acessos ao
barramento, porém perde muito tempo de CPU. Além de fazer diversos
pollings infrutíferos
19 / 25

Compartilhamento do Barramento

• Arbitragem
– Um árbitro decido qual PE terá o controle do barramento
– Cada PE tem sua própria linha de requisição (Req_i), normalmente gerando
uma interrupção para o árbitro
– PE permanece aguardando o sinal de confirmação do árbitro (Ack_i) para
então controlar o barramento
– A arbitragem deve balancear os seguintes critérios
• PEs com maior prioridade devem ser atendidos primeiro
• PEs de menor prioridade não podem ter atendimento postergado indefinidamente
– Gargalo
• Muitos fios de controle
20 / 25

Compartilhamento do Barramento
• Daisy chain
– PEs são encadeados fisicamente
– Prioridade implícita pela ordem das conexões entre PEs
• PE mais próximo a CPU tem maior prioridade
– PEs tem sinais de pedido de uso do barramento (PI) e aviso de que ele pode usar o
barramento (PO)
– Se um PE deseja usar o barramento, ativa sinal PI e espera pela confirmação em PO
– PEs que receberem PI ativo, propagam o mesmo na sua porta de saída PI
– Se um PE tiver em sua entrada o sinal PI ativo, mas deseja usar o barramento,
apenas propaga o PI, mas não propaga o recebimento do PO
– Caso típico dos barramentos SCSI e FireWire
21 / 25

Compartilhamento do Barramento
• Detecção de Colisão - CSMA (carrier sense with multiple access) /
CD (collision detection)
– PEs escutam o barramento para ver se não tem mensagem trafegando
– Caso o barramento esteja livre, podem enviar mensagem, passando a ser
temporariamente dono do barramento
– Caso dois ou mais PE lançaram mensagens ao mesmo tempo, gera colisão
(collision detection)
• Nodos envolvidos terminam transmissões
• PEs envolvidos retentam um tempo pseudoaleatório depois
– Necessita de um hardware especial que interfacia com o barramento e
detecta se ocorreu ou não colisão
– Não necessita de fios extras de controle
22 / 25

Compartilhamento do Barramento

• Prevenção de Colisão - CSMA (carrier sense with


multiple access) / CA (collision avoidance)

– Otimização do CSMA/CD  possui maior grau de ordenação de


acessos ao meio
– Antes de transmitir efetivamente um pacote, a estação avisa sobre a
transmissão e em quanto tempo a mesma irá realizar a tarefa
– Normalmente utilizado em comunicação sem fio
– Permite tratar o problema de nodos escondidos (nodos que estão no
alcance de um nodo, não necessariamente está no alcance de outro
nodo)
23 / 25

Compartilhamento do Barramento

• Token
– O acesso ao barramento é determinado com auxílio de uma mensagem
especial chamada de token
– O PE que está com o token controla o barramento. Os demais aguardam o
recebimento do mesmo
– Quando dispositivo inicia sua operação na rede, este recebe uma
identificação e sabe para quem deve transmitir o token após recebê-lo
– O token é transmitido de dispositivo para dispositivo, normalmente em uma
ordem tipo fila, ou com uma prioridade pré-determinada (número de vezes
que recebe o token pode ser diferenciada)
– Rede deve ter mecanismos para recuperar o token em caso de falha
24 / 25
Comparação Entre Métodos de Compartilhamento de
Barramento

Processador
Arbitragem Daisy chain Colisão Token
mestre
Alto para alta Alto para baixo Alto para
Desempenho Baixo Alto
prioridade tráfego poucos nodos
Sim por número
Permite tratar
Sim Sim Sim Não de envios de
prioridade
token
Permite evitar Não (mas
postergação Sim Sim Não estatisticamente Sim
indefinida não ocorre)
Complexidade
Baixa Alta Média Baixa Baixa
física
Tratamento do
Acesso não token
Polling do Custo em Prioridade
Gargalo controlado ao (inicialização,
mestre conexões fixa
barramento perda de token,
...)
25 / 25
Compromissos Entre Vazão e Custos

Opção Alta vazão Baixo custo

Separação de dados e Multiplexação de dados e


Pinagem
endereços endereços

Largura do barramento Grande (Ex. 64 bits) Pequena (Ex. 8 bits)

Tamanho do bloco Muitas palavras Poucas palavras

Segmentação Múltiplos segmentos Único segmentos

Método de Processador mestre, daisy


Arbitragem
compartilhamento chain, colisão, token

Modelo de comunicação Síncrono Assíncrono


26 / 25

Alguns Padrões de Barramentos


PCI / PCI 2.0
SCSI USB / USB 3.0
Peripheral IEEE 1394
Small Computer Universal Serial
Component Firewire
System Interface Bus
Interconnect
Transmissão Paralela Paralela Serial Serial
Largura
32, 64 bits, 64 bits 8, 16, 32 bits 2 bits (Half-duplex) 2 bits (half-duplex)
(dados)
132, 264, 528 MB/s, 5, 10, 20, 40, 80, 160 12, 480 Mb/s, 5 50, 100, 200, 400, 800 Mb/s,
Vazão
2.1, 4.3GB/s MB/s Gb/s 6,4 Gb/s
Barramento de E/S, Barramento E/S Barramento E/S Barramento E/S Backplane
Uso
Backplane interno e externo externo externo
N de
Até 32 Até 16 Até 127 Até 63
dispositivos
Dinâmico
Endereço Automático Estático (jumpers) Dinâmico (negociado)
(negociado)
Conexão de Máq. ligada (hot-
Máquina desligada Máquina desligada Máq. ligada (hot-pluggable)
disp. pluggable)
Bus mastering (pinos Canal virtual: pipe
Negociação Similar a daisy-chain Similar a daisy-chain
REQ, GNT) (negociado)
Interfaces de
barramentos Fitas magnéticas, Teclados, Aparelhos MIDI, Transmissão
Aplicações externos, placas de leitores de CD, Discos Monitores, Mouse, de vídeo, (Câmeras, televisão,
rede e gráficas, rígidos, Scanners, Zip Joystick, pen-drive videocassete), Discos rígidos
controlador RAID

Você também pode gostar