Home » Artigos arquivados » PCI Express

PCI Express

Autor: Laércio Vasconcelos
Data: 23/março/2007

Artigo extraído do livro:

HARDWARE NA PRÁTICA 2a EDIÇÃO

O PCI Express é o novo barramento que irá substituir os tradicionais PCI e AGP. A substituição do AGP está bem adiantada: as placas de vídeo de maior desempenho são fabricadas praticamente apenas na opção PCI Express x16, e não mais em AGP. Outras interfaces serão aos poucos, produzidas no novo padrão.

PCI Express

Em meados de 2004, foi introduzido no mercado o novo barramento que irá substituir o PCI nos próximos anos: PCI Express. Este barramento oferece taxas de transferência que vão de 500 MB/s até 16 GB/s. O padrão prevê slots de vários tamanhos:

x1, x2, x4, x8, x12, x16 e x32.

Entretanto, por enquanto encontramos no mercado apenas modelos x1, x4, x8 e x16.

Figura 46 – Slots de uma placa mãe moderna: PCI, PCI Express x1
(os dois menores) e PCI Express x16 (o maior, à direita)..

OBS: PCI Express é abreviado como PCI-E, e não PCI-X.

Slots PCI Express x1

Existem slots PCI Express de vários tamanhos. O menor deles é o x1, e possui duas vias seriais, sendo uma para transmissão e outra para recepção de dados. Cada via suporta um tráfego de 250 MB/s, quase o dobro do suportado por um slot PCI comum. As duas vias de um slot x1 podem operar simultaneamente, resultando em um tráfego total de 500 MB/s. Este par de linhas é chamado de lane.

Figura 47 – Slots PCI Express x1.

Placas PCI Express x1

Ainda são bastante raras as placas PCI Express. Podemos citar, por exemplo, algumas placas de rede de 1 Gbit/s (Gigabit Ethernet, ou GBE). A taxa de 1 Gbit/s equivale a cerca de 120 MB/s. Os slots PCI convencionais operam com 133 MB/s, portanto uma placa GBE consome quase a banda máxima permitida por esses slots. A conexão PCI Express x1 suporta 250 MB/s em cada direção, portanto é uma boa opção para implementar este tipo de placa de rede. Em breve essas placas serão comuns no mercado.

Figura 48 – Placa de rede PCI Express x1.

Figura 49 – Placa PCI Express x4.
Esta é uma placa de rede Gigabit dual.

Placa PCI Express x4

As placas de expansão que operam com maiores velocidades são:

Rede, a partir de 1 Gbit/s

Controladoras de disco (RAID, SCSI)

Placas de vídeo 3D

Fabricantes de placas de rede e controladoras de disco já estão oferecendo modelos x4 e x8. Entretanto, esses slots ainda são raros nas placas mãe para desktop. Esses slots são mais comuns em placas para servidores. Já as placas de vídeo novas estão usando o padrão PCI-E x16.

Slot para PCI Express x16

Praticamente todas as placas mãe atuais oferecem o slot PCI Express x16 ao invés do AGP para a instalação da placa de vídeo. Este tipo de slot oferece um desempenho de duas a quatro vezes maior que um slot AGP 8x. Ainda encontramos o slot AGP 8x em placas mais antigas porém ainda à venda, em alguns modelos econômicos de placa mãe, e em placas com duplo slot de vídeo (AGP 8x e PCI Express).

Figura 50 – Slot PCI Express x16.

Algumas placas possuem dois slots PCI Express x16, e permitem a instalação de duas placas de vídeo operando em paralelo. São duas tecnologias concorrentes que permitem usar duas placas de vídeo PCI Express: SLI (Nvidia) e Crossfire (ATI). A placa mãe deve ser compatível com a tecnologia usada. Uma placa mãe compatível com SLI deve usar placas de vídeo Nvidia, também compatíveis com SLI. Uma placa mãe compatível com Crossfire deve usar placas de vídeo com chip gráfico ATI, compatível com Crossfire. Essa restrição se aplica apenas quando instalamos duas placas de vídeo operando em paralelo. Para instalar uma só placa de vídeo, podemos utilizar qualquer marca e modelo de placa PCI Express x16, em qualquer slot PCI Express x16.

Placa PCI Express x16

Este é o tipo de placa PCI Express mais próxima do alcance dos usuários finais. Aos poucos o slot AGP irá desaparecer, e novas placas mãe oferecerão slots PCI Express x16 para a placa de vídeo. Podemos citar como exemplos, as placas com chipsets Intel 915, 925, 945, 955, 965 e 975. Placas mãe com esses chipsets já não possuem slots AGP, e sim, PCI Express x16. É preciso então usar uma placa de vídeo desse tipo.

Figura 51 – Placa de vídeo PCI Express x16.

Velocidades do PCI Express

As primeiras implementações do PCI Express, tanto nas placas mãe quanto nas placas de expansão, estão limitadas a x1, x4, x8 e x16. A tabela a seguir mostra a velocidade de cada uma delas.

Tipo

Velocidade em cada direção

Velocidade total

PCI Express x1

250 MB/s

500 MB/s

PCI Express x4

1000 MB/s

2000 MB/s

PCI Express x8

2000 MB/s

4000 MB/s

PCI Express x16

4000 MB/s

8000 MB/s

Chipsets com PCI Express

A figura 52 mostra o diagrama de uma placa mãe baseada no chipset Intel 925x, com suporte a PCI Express. Este é um chipset de primeira geração entre os que suportam PCI Express, juntamente com os da série Intel 915. Note que na ponte norte (82925X MCH) existe uma conexão para slot PCI Express x16. Por ser uma conexão de grande velocidade, precisa ficar na ponte norte. Essa característica é padrão em todos os chipsets com suporte a PCI Express. Assim como o slot AGP era ligado na ponte norte, o mesmo ocorre com o slot PCI Express x16.

Figura 52 – Diagrama de uma placa mãe baseada no chipset i925X, com suporte a PCI Express.

A ponte sul (ICH6R) tem, além de conexões PCI convencionais, quatro conexões para slots PCI Express x1. O fabricante da placa mãe poderia utilizar essas quatro linhas de várias formas. Poderia implementar quatro slots x1, ou dois slots x1, ou um slot x4, ou dois slots x1 e um slot x2.

Cabe destacar aqui uma outra superioridade do PCI Express sobre o PCI. No barramento PCI, a taxa de 133 MB/s é compartilhada entre todos os slots. No PCI Express, cada lane tem seus 500 MB/s inteiramente à sua disposição. Se a placa mãe tem por exemplo, quatro slots PCI Express x1, não irão compartilhar um só barramento, e sim, cada um deles terá a taxa máxima de 500 MB/s. Na prática isso não ocorre. É muito difícil ter todas as interfaces operando ao mesmo tempo com a taxa máxima. E nem todas as interfaces usam a velocidade máxima oferecida pelo barramento. Citamos o caso das placas de rede Gigabit Ethernet, que consomem no máximo 120 MB/s, ocupando assim apenas a metade da banda de um slot PCI Express x1.

Figura 53 – Diagrama do chipset Intel 975x.

A figura 53 mostra o diagrama de um chipset de terceira geração para PCI Express, o Intel 975X. Podemos observar muitas semelhanças, mas também várias diferenças em relação ao da figura 52.

A conexão entre a placa de vídeo e a ponte norte permanece com 16 lanes, mas pode ser desmembrada em dois grupos de 8 lanes, por opção do projetista. Essa é a implementação do suporte a Crossfire para esse chipset. Note que apesar de serem dois slots x16, apenas 8 lanes são usadas em cada um deles. Isso reduz a velocidade total do slot PCI Express x16 de 8 GB/s para 4 GB/s. Ainda assim isso é o dobro do suportado por uma placa AGP. É preciso levar em conta que o desempenho gráfico não depende somente da velocidade do slot. A transferência através do slot é importante no momento em que estão sendo carregadas as texturas, as informações de coordenadas tridimensionais e os comandos para a placa processar. A partir daí entra o trabalho interno da placa de vídeo na geração das imagens. Os dois processos são repetidos indefinidamente, dezenas de vezes por segundo, mas o trabalho de processamento interno das imagens na placa é mais pesado que o trabalho de transferir os dados para a placa. Por isso a redução do número de linhas de 16 para 8 não chega a comprometer o desempenho total.

Na ponte sul do chipset da 975X existem 6, ao invés de 4 lanes PCI Express. Permitem implementar, por exemplo, dois slots x1 e um slot x4. Assim como no chipset de primeira geração, cada lane opera com 500 MB/s exclusivos.

No chipset 925x, o FSB opera com 800 MHz, resultando em uma taxa de 6.4 GB/s. A memória é DDR2/533, que com seus dois canais resulta em uma taxa total de 8.5 GB/s. A memória precisa ser acessada pelo processador, pelos dispositivos da ponte sul e pela placa de vídeo. É impossível atender simultaneamente esses três dispositivos com máximo tráfego de dados. Em uma situação de taxa de acesso de 100% por eles (que na prática não ocorre), cada um deles teria que esperar sua vez, pois a memória não tem taxa de transferência suficiente para permitir que os três operem com taxa máxima. Na prática, o processador usa a cache L2, o que evita acessos muito intensos à memória. A placa de vídeo tem sua própria memória, e por isso não precisa ficar o tempo todo acessando a memória do sistema, e os dispositivos da ponte sul dificilmente chegariam a acessar discos e outros dispositivos com seu tráfego máximo, que é de 2 GB/s (velocidade do link entre ponte norte e ponte sul).

No chipset 975X, o FSB opera com até 1066 MHz, caso em que a taxa de transferência entre ele e o processador chegaria a 8.5 GB/s. Por isso foi aumentada também a velocidade da memória. Com dois canais de DDR2/667, a taxa de transferência aumenta para 10.7 GB/s. Isso resulta em uma folga de 2 GB/s, que é exatamente a taxa de transferência entre a ponte norte e a ponte sul.

Note ainda que no chipset 975X, as interfaces SATA são de segunda geração (3 Gbits/s, ou 300 MB/s), enquanto no 925X eram de primeira geração (150 MB/s).

Tamanhos dos conectores

Observe na figura 58 os tamanhos dos conectores das placas PCI Express. O padrão PCI Express prevê que placas de menor tamanho podem ser ligadas a slots de maior tamanho. Por exemplo, uma placa x4 pode ser conectada a um slot x8.

Figura 58 – Tamanhos dos conectores PCI Express.

Interoperabilidade

Interoperabilidade entre placas e slots, significa quais placas podem ser conectadas a quais slots. A princípio, uma placa PCI Express menor funciona em um slot PCI Express igual ou maior, mas isso não necessariamente pode ser implementado pelos fabricantes das placas. Para encaixar uma placa em um slot maior, você pode consultar as especificações do fabricante, ou simplesmente fazer o teste.

A tabela mostra que as placas x1 obrigatoriamente (Required) devem funcionar em slots x1, x4, x8 e x16. Uma placa x4 obviamente funciona em um slot x4, mas pode funcionar ou não (Allowed) em slots x8 e x16. Fica a cargo do fabricante implementar ou não seu funcionamento. Placas x16 só podem operar em slots x16.

A evolução de PCI para PCI Express

As primeiras placas mãe com PCI Express chegaram ao mercado em meados de 2004. Esses novos slots irão, aos poucos, substituir os slots PCI e AGP usados nos últimos anos. A substituição do slot AGP foi imediata. A presença de um slot PCI Express x16 elimina a presença do slot AGP (exceto nos casos de alguns chipsets que suportam AGP e PCI Express simultaneamente, como o VIA PT880). Note que o slot x16, como opera com velocidade muito elevada, é ligado na ponte norte do chipset. Já os slots PCI Express menores são ligados à ponte sul.

Essas primeiras placas oferecem tanto slots PCI Express x1 quanto slots PCI convencionais. Durante alguns anos as placas apresentarão ambos os tipos de slots. Aos poucos se dará a substituição. Serão criados chipsets com mais conexões PCI Express, e as placas mãe usarão slots x1, x4 e x8. Fabricantes de placas de expansão oferecerão modelos PCI Express. As placas mãe passarão a ter menos slots PCI convencionais e mais slots PCI Express. Dentro de mais alguns anos as placas mãe terão apenas slots PCI Express, e a eliminação dos slots PCI e AGP será completa. Entretanto durante mais algum tempo, fabricantes de placas de expansão ainda irão oferecer modelos PCI e AGP para upgrades de micros mais antigos.