Como funciona o barramento PCI

Autor: 
Jeff Tyson and Ed Grabianowski
barramento PCI


A potência e a velocidade dos componentes de computador têm crescido a um passo constante desde que os computadores foram criados décadas atrás. Os desenvolvedores de software criam novos aplicativos capazes de utilizar os avanços mais recentes em matéria de velocidade de processador e capacidade de disco, enquanto os fabricantes de hardware agilizam a melhoria dos componentes e criam novas tecnologias para acompanhar a demanda dos programas de ponta.

Porém, um elemento sempre passa despercebido: o barramento. Em sua essência, um barramento é um canal ou caminho entre os componentes de um computador. Ter barramento de última geração é tão importante quanto ter uma boa transmissão em um carro. Se você tiver um motor de 700 cavalos de potência, mas com uma transmissão barata, o carro não vai render tanto. Existem muitos tipos diferentes de barramentos. Neste artigo, você vai aprender sobre alguns deles. Vamos nos concentrar no barramento conhecido como Interconexão de Componentes Periféricos (PCI, do inglês Peripheral Component Interconnect). Falaremos sobre o que é PCI, como funciona e como é usado, e então daremos uma olhada no que o futuro reserva para esta tecnologia.


Uma placa PCI típica

 

 

O barramento
A idéia de um barramento é simples, ele conecta os componentes do computador ao processador. Alguns dos componentes são HDs, pentes de memória, sistemas de som, sistemas de vídeo, e etc. Por exemplo, para ver o que seu computador está fazendo, você usa um monitor CRT ou LCD. Você precisa de um hardware especial para controlar o monitor, neste caso, uma placa de vídeo (ou placa gráfica). A placa de vídeo é um pequeno circuito impresso em uma placa, que é desenhada para ser conectada no barramento. A placa de vídeo conversa com o processador, usando o barramento como via de comunicação.

A vantagem do barramento é que ele torna as partes do computador mais intercambiáveis. Se você quiser uma placa de vídeo melhor, basta tirar a antiga do slot e colocar a nova em seu lugar. Se você quiser usar dois monitores no seu computador, pode usar duas placas de vídeo no barramento. E por aí vai.

Vinte ou 30 anos atrás, os processadores eram tão lentos que o processador e o barramento eram sincronizados - o barramento funcionava na mesma velocidade do processador, e havia somente um barramento no computador. Hoje, os processadores estão tão rápidos que a maioria dos computadores tem dois ou mais barramentos. Cada barramento é especializado em um tipo de tráfego.

Hoje, um computador comum tem dois barramentos principais:

  • o primeiro, conhecido como o barramento do sistema ou local, conecta o microprocessador (CPU) ao sistema de memória. Este é o barramento mais rápido do sistema;

     

  • o segundo é um barramento mais lento para a comunicação de componentes como discos rígidos e placas de som. Um barramento muito comum nesta categoria é chamado de PCI. Estes barramentos mais lentos se conectam ao barramento do sistema através de uma ponte, que é parte do chipset do computador e funciona como um guarda de trânsito, integrando os dados de outros barramentos ao barramento do sistema.

Tecnicamente, existem outros tipos de barramentos. Por exemplo, o Barramento Serial Universal (USB - Universal Serial Bus) é uma maneira de conectar câmeras, scanners e impressoras ao computador. O USB usa um cabo fino para conectar os dispositivos, e muitos dispositivos podem compartilhar este cabo simultaneamente. O FireWire é outro barramento, usado hoje  principalmente para câmeras de vídeo e HDs externos.


A ilustração acima mostra como os vários barramentos se conectam ao processador

Breve histórico
O primeiro barramento para computadores no primeiro PC da IBM (cerca de 1982) tinha 16 bits de largura e operava a 4,77 MHz. Ficou conhecido oficialmente como barramento ISA. Este tipo de barramento é capaz de transferir dados a uma taxa de 9 MBp/s (megabytes por segundo) mais ou menos, rápido o bastante até mesmo para muitos dos aplicativos atuais.

Muitos anos atrás, o barramento ISA ainda era usado em muitos computadores. Este barramento aceitava placas desenvolvidas para o PC da IBM no início da década de 1980. O barramento ISA continuou sendo usado mesmo depois que tecnologias mais avançadas surgiram para substituí-lo.

Algumas razões para sua longevidade foram:

  • compatibilidade de longo-prazo com muitos fabricantes;
  • antes do surgimento dos sistemas multimídia, poucos periféricos utilizavam a velocidade total do barramento.

Como a tecnologia avançou e o ISA não conseguiu acompanhar, outros barramentos foram desenvolvidos. Os principais foram o EISA (Extended Industry Standard Architecture) - que tinha 32 bits a 8 MHz - e o VL-Bus (Vesa Local Bus). O interessante do VL-Bus (cujo nome vem de VESA, Associação dos Padrões Eletrônicos para Vídeo, que criou o padrão) é que tinha 32 bits de largura e operava na velocidade do barramento local, que geralmente era a velocidade do próprio processador. O VL-Bus era ligado diretamente ao processador. Funcionava bem para um único dispositivo, ou talvez dois. Mas conectar mais do que dois dispositivos ao VL-Bus podia interferir no desempenho do processador. Por causa disso, ele era usado somente para conectar a placa de vídeo, um componente que realmente tem desempenho melhor quando tem acesso direto de alta velocidade ao processador.

Em seguida veio o PCI
No início da década de 1990, a Intel lançou um novo padrão de barramento, o barramento PCI (Interconexão de Componentes Periféricos). O PCI é uma mistura do ISA e do VL-Bus. Fornece acesso direto à memória do sistema para dispositivos conectados, mas usa uma ponte para se conectar ao barramento frontal (frontside bus) e, portanto, ao processador. Basicamente, significa que tem um desempenho ainda melhor do que o VL-Bus, além de eliminar uma possível interferência com o processador.

O barramento frontal é uma conexão física que liga o processador à maioria dos outros componentes do computador, inclusive à memória RAM, aos HDs e aos slots PCI. Hoje, o barramento frontal opera a 400 MHz, sendo que os sistemas mais novos operam a 800 MHz.


Placas PCI têm 47 pinos

O barramento traseiro (backside bus) é uma conexão separada entre o processador e o cache de Nível 2. Este barramento opera a uma velocidade mais alta do que o barramento frontal, geralmente a mesma velocidade do processador, para que o cache trabalhe da maneira mais eficiente possível. Os barramentos traseiros têm evoluído com o passar dos anos. Na década de 90, o barramento traseiro era um conjunto de fios que conectava o processador principal a um cache externo. Este cache era na verdade um chip separado que requeria memória cara. Desde então, o cache de Nível 2 tem sido integrado ao processador principal, fazendo os processadores ficarem menores e mais baratos. Como o cache agora fica dentro do próprio processador, de certo modo o barramento traseiro não é mais um barramento.

 

Tipo de barramento
Largura do barramento
Velocidade do barramento
MB/s
ISA
16 bits
8 MHz
16 MBps
EISA
32 bits
8 MHz
32 MBps
VL-bus
32 bits
25 MHz
100 MBps
VL-bus
32 bits
33 MHz
132 MBps
PCI
32 bits
33 MHz
132 MBps
PCI
64 bits
33 MHz
264 MBps
PCI
64 bits
66 MHz
512 MBps
PCI
64 bits
133 MHz
1 GBps

O PCI conecta mais dispositivos do que o VL-Bus, até cinco componentes externos. Cada um dos cinco conectores para um componente externo pode ser substituído por dois dispositivos fixos na placa-mãe. Além disso, você pode ter mais do que um barramento PCI no mesmo computador, apesar de ser raro. O chip da ponte do PCI regula a velocidade do barramento, independentemente da velocidade do processador. Isto torna o sistema mais seguro, e faz com que os fabricantes de hardware PCI saibam exatamente o que fazer.

O PCI no início operava a 33MHz, usando um caminho de 32 bits de largura. O padrão foi atualizado, e sua velocidade subiu de 33MHz para 66MHz, e sua largura dobrou para 64 bits. Atualmente, o PCI-X transfere em 64 bits a uma velocidade de 133MHz a uma incrível taxa de transferência de 1GBps (gigabyte por segundo).

 

As placas PCI têm 47 pinos (49 para uma placa com "bus mastering", que controla o barramento PCI sem intervenção do processador). O barramento PCI consegue trabalhar com poucos pinos por causa da multiplexação de hardware, que significa que o dispositivo envia mais do que um sinal por pino. Além disso, o PCI é compatível com dispositivos que usam tanto 5 volts como 3,3 volts.

Apesar de a Intel ter proposto o padrão PCI em 1991, ele não se tornou popular até a chegada do Windows 95, em 1995. O súbito interesse no PCI deveu-se ao fato de o Windows 95 ser compatível com uma característica chamada Plug and Play (PnP), sobre a qual falaremos no capítulo seguinte.