Barramentos

Barramentos

De uma maneira bem simples, poderíamos dizer que um barramento é uma via de comunicação. Em um micro, temos vários barramentos. Os motivos são muitos, a começar pelos aspectos históricos do próprio PC.

O principal barramento do micro é o barramento local, a via de comunicação que conecta o processador aos circuitos primordiais da placa-mãe: a memória RAM, a memória cache L2 e o chipset. Damos o nome de chipset ao conjunto de circuitos integrados de apoio existentes na placa-mãe. Dentre os diversos circuitos presentes no chipset, destacamos o controlador de memória (RAM) e o controlador de cache — além do controlador de barramento, no caso de existirem outros barramentos no micro, o que certamente ocorre.

No caso de processadores com cache L2 integrado, como os processadores Intel de 6ª e 7ª gerações em diante e vários processadores não-Intel como o AMD Athlon e o AMD Duron, em diante, esse circuito não está na placa-mãe, mas sim dentro do próprio processador. Assim, o circuito controlador de cache está embutido no processador, e não no chipset da placa-mãe.

O barramento local é o mais rápido, pois os circuitos se comunicarão com o processador em seu desempenho máximo. Entretanto, o barramento local não é padronizado: cada processador deverá utilizar o seu próprio modelo, de acordo com as suas características. Aliás, é por esse motivo que cada processador necessita de um modelo de placa-mãe diferente.

Para que uma simples placa de vídeo ou um disco rígido possam ser utilizados em qualquer micro, independentemente do processador instalado (ou seja, independentemente do modelo de barramento local empregado), utilizamos diversos modelos de barramentos de expansão. Dentre eles, podemos destacar:

– ISA (Industry Standard Architecture).

 – EISA (Extended Industry Standard Architecture).

 – VLB (VESA Local Bus).

 – PCI (Peripheral Component Interconnect).

 – AGP (Accelerated Graphics Port).

 – AMR (Audio and Modem Riser).

 – CNR (Communications and Network Riser).

 – USB (Universal Serial Bus).

 – FireWire (também chamado IEEE 1394).

– IrDA (Infrared Developers Association).

Todos esses modelos de barramento são disponibilizados na placa-mãe do micro, através de conectores, chamados slots. A exceção fica por conta dos barramentos USB, FireWire e IrDA, que são externos ao micro.

Esquema dos barramentos básicos de um micro

O maior problema em relação aos barramentos de expansão é a velocidade. Embora a maioria dos periféricos utilizados no micro seja lenta (como a impressora, o mouse, a unidade de disquete, a unidade de CDROM e o teclado), há basicamente três classes de periféricos bastante prejudicadas pela baixa velocidade:

 – Vídeo.

 – Discos rígidos.

 – Placas de rede.

A princípio, pode parecer que, se o micro tiver esses periféricos integrados à própria placa-mãe, estarão trabalhando à mesma velocidade da placa-mãe (Isto é, à mesma velocidade do barramento local). Porém, isso não é verdade. No projeto de placas-mãe integradas, ou seja, com periféricos on-board, normalmente os periféricos integrados comunicam-se com o processador através de uma extensão do barramento de expansão, chamado barramento X (eXtension bus) — ou seja, mesmo o periférico estando integrado na placa-mãe, é tratado como se estivesse conectado a um dos slots de expansão. Por exemplo, as placas-mãe que tem portas IDE (PATA) para a conexão de discos rígidos. Essas portas são ligadas ao barramento PCI e não ao barramento local.

Barramento Local

É utilizado na comunicação do processador com os circuitos básicos e que demandam velocidade (especialmente a memória RAM e o cache de memória L2, no caso de placas-mãe que tenham este circuito) e este é o barramento mais rápido encontrado em um PC.

Quando verificamos que o processador Pentium tem um barramento de dados de 64 bits, queríamos dizer que o barramento local terá o seu barramento de dados de 64 bits. Como conseqüência, o acesso à memória será feito a 64 bits por vez. Da mesma forma, quando dizemos que o processador trabalha externamente a 66 MHz, a 100 MHz ou a 133 MHz, isso significa que é essa a freqüência de operação do barramento local.

No caso do barramento local de 64 bits a 66 MHz, a taxa de transferência máxima entre o processador e a memória (RAM e cache) será de 528 MB/s (64 bits x 66 milhões ¸ 8). A divisão por oito é utilizada para obtermos o resultado em bytes e não em bits). No caso do barramento operar a 100 MHz, a taxa de transferência será de 800 MB/s, e assim sucessivamente. Basta usar a fórmula apresentada a seguir para calcular a taxa de transferência.

Taxa de transferência = (é igual a) freqüência de operação x (vezes) número de bits /(dividido por) 8

No caso de processadores mais novos que transferem mais do que um dado por pulso de clock, deveram-se multiplicar o resultado pela quantidade de dados que o processador transfere por vez. Assim, os processadores que atingem uma taxa de transferência, por exemplo, de 1,6 GB/s em seu barramento local, mesmo operando externamente a 100 MHz. O mesmo ocorre com o Pentium 4, que tem um barramento externo com desempenho de 3.2 GB/s, mesmo operando a somente 100 MHz.

Diagrama simplificado do barramento local de um micro com o processador Pentium-100

Levando-se em consideração o acima exposto, ficaria claro que a melhor alternativa para aumentar o desempenho do PC é o aumento da taxa de transferência do barramento local, no entanto não é bem assim.

Desempenho da Memória RAM

Fazer com que o barramento local opere com freqüências de operação mais elevadas faz com que exista um ganho real de desempenho no micro, pois o processador se comunica com a memória RAM a todo o momento. Aumentar a velocidade dessa comunicação significa aumentar a velocidade do micro como um todo, pois é da memória RAM que o processador busca instruções de programas para executar.

Entretanto, temos um problema: será que a memória RAM é capaz de acompanhar a velocidade do barramento local? Na maioria das vezes, não. Com isso, o controlador de memória (que está embutido no chipset da placa-mãe, dentro de um circuito chamado Ponte Norte) faz com que o processador espere a memória RAM ficar pronta — através de um recurso chamado wait state. Esse procedimento diminui o desempenho do micro, pois durante os períodos de wait state, o processador fica ocioso, fazendo absolutamente nada.

Dessa maneira, não adianta aumentar a freqüência de operação do barramento local se não houver alteração na tecnologia da memória RAM envolvida. Por esse motivo micros com barramentos locais com altas taxas de transferência necessitarão de circuitos de memória de alto desempenho.

 Por exemplo, para barramentos de 100 MHz é obrigatório o uso de memórias PC-100 no micro, bem como o uso de memórias PC-133 no caso do barramento de 133 MHz. No caso dos barramentos que transferem mais de um dado por pulso de clock, a memória terá de ser do tipo DDR-SDRAM ou Rambus (RDRAM), ou caso contrário o processador irá acessar a memória RAM transferindo apenas um dado por pulso de clock, não adiantando em nada o processador ter a característica de transferência de mais de um dado.

Podemos citar, como exemplo, o que ocorreu com os processadores Athlon e Duron quando foram lançados. Como as memórias DDR-SDRAM ainda não existiam no mercado, ambos processadores eram usados em conjunto com memórias PC-100 convencionais, fazendo com que a taxa de transferência fosse de 800 MB/s e não de 1.600 MB/s, como deveria. Assim, apesar de esses processadores terem a característica de transferir dois dados por pulso de clock, esta não era aproveitada.