Entendendo o PCI Express
Publicado em 18/09/2008 – 10:37por Carlos Morimoto
Ao longo da história da plataforma PC, tivemos uma longa lista de barramentos, começando com o ISA de 8 bits, usado nos primeiros PCs, passando pelo ISA de 16 bits, MCA, EISA, e VLB, até finalmente chegar no barramento PCI, que sobrevive até os dias de hoje.
Por ser compartilhado entre todos os dispositivos ligados a ele, o barramento PCI pode ser rapidamente saturado, com alguns dispositivos rápidos disputando toda a banda disponível. O barramento se torna então um gargalo, que limita o desempenho global do PC.
A fase mais negra da história do barramento PCI foi durante a época das placas soquete 7 (processadores Pentium, Pentium MMX, K6 e 6×86), quando o barramento PCI era o responsável por praticamente toda a comunicação entre os componentes do micro, incluindo todos os periféricos, a comunicação entre a ponte norte e ponte sul do chipset, as interfaces IDE, etc. Até mesmo o antigo barramento ISA era ligado ao PCI através do PCI-to-ISA bridge (ponte PCI-ISA), um controlador usado nos chipsets da época. Isso fazia com que o barramento ficasse incrivelmente saturado, limitando severamente o desempenho do micro. Eram comuns situações onde o desempenho do HD era limitado ao rodar games 3D, pois a placa de vídeo saturava o barramento, não deixando espaço suficiente para os demais componentes.
A história começou a mudar com o aparecimento do barramento AGP. Ele desafogou o PCI, permitindo que a placa de vídeo tivesse seu próprio barramento rápido de comunicação com o chipset. O AGP matou dois coelhos com uma cajadada só, pois permitiu o aparecimento de placas 3D absurdamente mais rápidas e desafogou a comunicação entre os demais componentes. Rapidamente todas as placas de vídeo passaram a utilizá-lo, com os fabricantes oferecendo versões PCI apenas dos modelos mais simples.
O passo seguinte foi a criação de barramentos dedicados pra a comunicação entre os diversos componentes do chipset (como o DMI, usado em chipsets Intel, e o HyperTransport), fazendo com que as interfaces IDE ou SATA e outros componentes também ganhassem seu canal exclusivo. O PCI passou então a ser exclusividade das próprias placas PCI.
O problema é que, mesmo desafogado, o PCI é muito lento para diversas aplicações. É lento demais para ser utilizado por placas de rede Gigabit Ethernet (embora seja suficiente na teoria, na prática a história é um pouco diferente, devido ao compartilhamento da banda), por placas SCSI modernas, ou mesmo por placas RAID e controladoras eSATA. Além disso, os slots PCI utilizam um número muito grande de trilhas na placa-mãe, o que é dispendioso para os fabricantes.
Existiram tentativas de atualização do PCI, como o PCI de 64 bits, o PCI de 66 MHz e o PCI-X, que além de ser um barramento de 64 bits, trabalha a 133 MHz, resultando num barramento de 1024 MB/s. Em termos de velocidade, o PCI-X supriria as necessidades dos periféricos atuais, o problema é que, devido ao grande número de contatos e ao tamanho físico dos slots, ele acaba sendo um barramento muito dispendioso e imprático, que ficou relegado aos servidores topo de linha.
O PCI Express, ou PCIe, é um barramento serial, que conserva pouco em comum com os barramentos anteriores. Graças a isso, ele acabou se tornando o sucessor não apenas do PCI, mas também do AGP.

Uma das principais características do PCI Express é que existe uma grande flexibilidade com relação ao uso das linhas de dados. Como vimos, cada linha fornece uma banda de 250 MB/s (em cada direção) e é possível combinar até 16 linhas num único slot. Também existe a possibilidade de criar slots "capados", onde temos um slot 16x com apenas 8 linhas de dados, ou um slot 4x, com apenas uma linha, por exemplo. Como nestes casos muda apenas o uso das linhas de dados, e não as conexões elétricas, os slots continuam sendo perfeitamente compatíveis com todo tipo de placas; apenas o canal de dados passa a ser mais lento.
O chipset também é capaz de alocar as linhas disponíveis de acordo com o uso. Por exemplo, em um chipset com apenas 16 linhas disponíveis, os dois slots 16x da placa-mãe passam a trabalhar com apenas 8 linhas de dados cada um ao usar duas placas 3D em SLI. Entretanto, ao usar apenas uma placa 3D, na mesma placa-mãe, o único slot usado fica com todas as 16 linhas, e passa a trabalhar como um slot 16x "real".
Os slots são também compatíveis com placas dos padrões mais lentos. É possível instalar placas PCI Express 1x, 4x ou 8x em slots 16x e também placas 1x em slots 4x, embora, naturalmente, o inverso não seja possível.
Graças a toda essa flexibilidade, temos alguns casos interessantes, como o desta Intel D975BX da foto a seguir. Ela possui três slots PCI Express 16x (um deles com 16 linhas de dados e o outro com apenas 8 linhas), dois slots PCI legacy e nenhum slot PCIe 1x ou 4x.
Existem ainda dois padrões de barramentos PCI Express destinados a notebooks: o Express Mini e o ExpressCard, que substituem, respectivamente, as placas mini-PCI e as placas PC Card.
O mini-PCI é uma espécie de slot PCI miniaturizado, muito usado em notebooks para a instalação da placa wireless (embora, em tese, possa ser usado para a conexão de qualquer dispositivo). O Express Mini é justamente uma adaptação do PCI Express para cumprir a mesma função, que oferece um desempenho melhor. Aqui temos uma placa wireless no formato Express Mini, instalada em um notebook HP:

Embora pouco usado na prática, o padrão também prevê a criação de slots Express Mini ligados no barramento USB (ao invés do barramento PCI Express). Isso permite que os fabricantes adaptem placas wireless e outros periféricos USB para uso interno, em notebooks. Para quem usa, não muda muita coisa, com exceção dos drivers usados.
Um pequeno bônus (para os fabricantes) é que as dimensões reduzidas das placas tornam possível a instalação de duas placas Express Mini em aproximadamente o mesmo espaço ocupado por uma única placa mini-PCI.
» Leia mais: Entendendo o PCI Express
Dentro do chipset
As linhas de dados e os periféricos
Express Mini e ExpressCard
PCI Express 2.0



Uma resposta para “Entendendo o PCI Express”
Parabéns por postar estes pequenos tutos sobre hardware, eles estão ajudando a muitas pessoas a retirarem suas dúvida e aprender como o pc atual funciona e como surgiram tudo o que há em nossa frente! Abraços