GDH Press: Blog
 
RSS

PCI Express: compatibilidade, linhas de dados e o PCIe 2.0

05/02/2010 – 16:06

A característica fundamental do PCI Express é que ele é um barramento ponto a ponto, onde cada periférico possui um canal exclusivo de comunicação com o chipset. No PCI tradicional, o barramento é compartilhado por todos os periféricos ligados a ele, o que pode criar gargalos, como no caso das placas soquete 7.

Alguns puristas argumentam que o PCI Express não é um barramento no sentido estrito da palavra, já que o termo "barramento" surgiu para descrever um canal de comunicação compartilhado por vários dispositivos ou periféricos. Mas, sou da opinião de que esse tipo de preciosismo deve ser evitado. Os termos técnicos evoluem e são adaptados, assim como a tecnologia. Em toda a documentação é usado o termo "PCI Express bus", referindo-se ao PCI Express (e também ao USB, Firewire e outros) como "bus", ou seja, "barramento". A designação já foi adotada oficialmente.

O PCI Express é também um barramento serial e não um barramento paralelo, como o PCI. Antigamente, os circuitos eletrônicos eram muito lentos, por isso a solução para criar barramentos mais rápidos era adicionar mais trilhas e transmitir vários bits de cada vez. Exemplos de barramentos paralelos são as portas paralelas, usadas pelas impressoras antigas, as portas IDE e também o próprio barramento PCI.

Com o avanço da tecnologia, os projetistas começaram a encontrar dificuldades em criar barramentos paralelos mais rápidos, pois o grande número de trilhas operando a altas frequências criava ruído eletromagnético e problemas de sincronismo. A solução foi passar a investir em barramentos seriais, onde são usados apenas um ou dois pares de trilhas e controladores mais sofisticados, capazes de transmitir a frequências mais altas.

Com menos trilhas, o problema do ruído e interferência é eliminado e os dados podem ser transmitidos na frequência permitida pelos circuitos, sem problemas de sincronismo. Atualmente, acaba fazendo mais sentido usar um circuito controlador muito rápido, transmitindo um bit por vez, do que tentar criar um barramento complicado, que transmite 16 ou 32 bits por ciclo.

Enquanto os fabricantes enfrentaram dificuldades para manter o sincronismo dos sinais do PCI-X a apenas 133 MHz, os transmissores do barramento PCI Express podem operar a 2.5 GHz sem maiores problemas.

Exemplos de barramentos seriais, são o USB, o Serial ATA e o PCI Express. A diferença de desempenho entre estes barramentos atuais em relação aos barramentos antigos é brutal: uma porta paralela operando em modo EPP transmite a apenas 8 megabits por segundo, enquanto uma porta USB 2.0 atinge 480 megabits. Uma porta IDE ATA-133 transmite a 133 MB/s, enquanto o SATA 600 atinge 600 MB/s. O PCI oferece apenas 133 MB/s, compartilhados por todos os dispositivos, enquanto um slot PCI Express 2.0 x16 atinge incríveis 8 GB/s.

Começando do básico, existem 4 tipos de slots PCI Express, que vão do x1 ao x16. O número indica quantas linhas de dados são utilizadas pelo slot e, consequentemente, a banda disponível.

Existem duas versões do PCI Express em uso, o PCI Express 1.x e o PCI Express 2.0. O PCI Express 1.x é o padrão inicial (finalizado em 2002), enquanto o PCI Express 2.0 é a versão mais recente (finalizada em janeiro de 2007), que transmite ao dobro da velocidade. Apesar da diferença, os dois padrões são intercompatíveis: salvo raros casos de incompatibilidade, não existem problemas em instalar uma placa PCI Express 2.0 em um slot PCI Express 1.1, ou vice-versa, mas em ambos os casos a velocidade é limitada pelo mais lento.

Cada linha PCI Express utiliza 4 pinos de dados (dois para enviar e dois para receber), que operam em modo full-duplex (ou seja, são capazes de transmitir e receber dados simultaneamente). No PCI Express 1.x temos 250 MB/s em cada direção por linha de dados, enquanto no PCI Express 2.0 temos 500 MB/s por linha.

Devido à essa característica, é comum que os fabricantes divulguem que o PCI Express transmite a 500 MB/s no padrão 1.x e 1000 MB/s no padrão 2.0, mas estes são valores irreais, já que só ocorreria em situações em que grandes quantidades de dados precisassem ser transmitidos simultaneamente em ambas as direções.

Junto com o uso do barramento serial, outra grande inovação do PCI Express foi a de permitir combinar várias linhas de dados em um único slot, multiplicando a banda disponível. Com isso, temos, 250 MB/s de banda nos slots PCIe 1.1 x1, 1 GB/s nos slots x4, 2 GB/s nos slots x8 e 4 GB/s nos slots x16. No caso das placas com o PCIe 2.0, as velocidades dobram, com 500 MB/s para os slots x1, 2 GB/s nos slots x4, 4 GB/s nos slots x8 e incríveis 8 GB/s nos slots x16.

O padrão original também previa o uso de slots x2 e x32, mas eles nunca chegaram a ser implementados. Na prática, os slots 8x também são muito raros, de forma que você verá apenas slots 1x, 4x e 16x nas placas atuais.

Em todos os formatos, o slot é dividido em duas secções. A primeira contém os contatos de alimentação elétrica e é igual em todos os slots, enquanto a segunda inclui os contatos de dados, que aumentam em número de acordo com o número de linhas de dados:

Essa organização foi desenvolvida para que exista compatibilidade retroativa com todos os formatos menores. Graças a isso, os slots x16 são compatíveis também com as placas x1, x4 e x8 e os slots x4 são compatíveis também com as placas x1 (e com as hipotéticas placas x2).

Ao conectar uma placa x1 em um slot x16, por exemplo, os contatos adicionais ficam sem uso. Como pode imaginar, o controlador é esperto o suficiente para desativar as linhas de dados inativas. Se você souber o que está fazendo, é possível até mesmo cobrir parte dos contatos com fita adesiva para desativar parte das linhas de dados e assim medir o desempenho da placa caso usada em slots com apenas 8 ou 4 linhas (como feito em alguns reviews).

Existem também os casos de placas-mãe com slots x4 ou x8 "abertos". Eles não têm a borda do conector, permitindo que você encaixe placas maiores, deixando os contatos extras de fora:

Esta solução é usada em casos em que o fabricante deseja oferecer a possibilidade de usar duas placas de vídeo em CrossFire ou SLI, mesmo que o chipset ofereça apenas 4 linhas de dados para o segundo slot. Como pode imaginar, o uso de apenas 4 linhas criam um gargalo que reduz o desempenho da segunda placa, mas ao menos a possibilidade existe.

Também existe a possibilidade de criar slots "capados", onde temos um slot x16 com apenas 8 linhas de dados, ou um slot x4, com apenas uma linha, por exemplo. Estes slots se comportam exatamente da mesma forma que um slot x1 ou um slot x4 aberto, mudando apenas o encaixe físico. 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.

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 x1 ou x4 (você usaria um dos slots x16 caso precisasse instalar uma placa de expansão qualquer):

Concluindo, o PCI Express utiliza um sistema de codificação chamado 8b/10b, onde são incluídos dois bits adicionais para cada byte de dados transmitidos. Estes bits adicionais permitiram eliminar a necessidade do uso de pinos adicionais para enviar o sinal de sincronismo, o que simplificou bastante o design e melhorou a confiabilidade, mas em compensação reduziu o volume real de dados transmitidos.

É por causa dessa característica que os 2.5 gigabits (PCIe 1.x) ou 5.0 gigabits (no PCIe 2.0) de banda oferecidos por cada linha de dados equivalem a apenas 250 e 500 MB/s de dados e não a 312.5 e 625, que seriam o resultado da tradicional divisão por 8.

Chipsets da nVidia para o Phenom e Phenom II

01/02/2010 – 16:24

Assim como aconteceu na plataforma Intel, a nVidia perdeu bastante espaço no ramo de chipsets para processadores AMD após a compra da ATI e o lançamento do chipset AMD 690G. Apesar disso, os chipsets da nVidia continuam na ativa, sendo usados em muitas placas AM2+ e AM3 recentes. Continuando a série de artigos sobre chipsets, vamos agora a um resumo dos chipsets recentes da nVidia para a plataforma AMD.

Os chipsets da nVidia para o Phenom e Phenom II são diretamente relacionados aos chipsets para a plataforma LGA-775 da Intel, que vimos a pouco. Previsivelmente, os chipsets para processadores Intel recebem a letra "i", como em "680i SLI" e os para processadores AMD recebem a letra "a".

Embora as duas famílias compartilhem a mesma tecnologia básica, eles diferem no controlador de memória e no barramento de dados. Nos processadores de 64 bits da AMD o controlador de memória é integrado ao processador e a comunicação é feita através de um link HyperTransport, enquanto nos LGA-775 o controlador faz parte do chipset e a comunicação é feita através do FSB.

Depois dos chipsets da série 500, o próximo lançamento foi o nForce 630a, uma solução single-chip com GPU integrada, similar ao nForce 630i usado na plataforma Intel:

Ele foi usado tanto em placas soquete 939 quanto em placas AM2, oferecendo um único slot PCI Express 1.1 x16, 4 portas SATA 300 (com suporte a RAID 0, 1, 5 e 10), 10 portas USB 2.0, áudio HDA e rede gigabit. Ele foi produzido em duas versões, diferenciadas pela GPU integrada, que podia ser a GeForce 7025 ou a GeForce 7050PV.

Ambas são GPUs compatíveis com o DirectX 9.0c, com um único par de unidades de renderização, processamento de texturas e processamento de pixel shaders e uma única unidade de vertex shaders. O clock é de apenas 425 MHz, o que resulta em um desempenho bastante modesto para os padrões atuais.

Os dois oferecem também suporte à decodificação de vídeos 1080i (codificados em MPEG-2), incluindo o suporte a HDCP e saída DVI. A diferença entre os dois é que o 7050PV oferece suporte à HDMI e inclui um codificador de vídeos capaz de fazer upscaling de vídeos em baixa resolução via hardware.

O 630a competiu com o AMD 690G, que oferecia recursos similares. Na época a AMD era a novata, o que a obrigou a ser mais agressiva com relação aos preços, fazendo com que houvesse uma grande oferta de placas de baixo custo baseadas no 690G. A nVidia por sua vez se beneficiou da popularidade do nForce 430 (com a GeForce 6100 ou 6150), que impulsionaram as vendas do sucessor.

O nForce 630a fez par com o nForce 680a SLI, a versão high-end, com suporte a SLI. Entretanto, diferente dos outros chipsets da série, o nForce 680a SLI não foi uma solução de uso geral, mas sim um chipset especializado, destinado às placas dual-processor da série Quad FX, lançada pela AMD no final de 2006.

O alto custo da plataforma Quad FX fez com que o 680a fosse um chipset extremamente incomum. Para a maioria, a melhor solução continuou sendo o nForce 570 SLI, que podia ser encontrado em placas AM2 moderadamente acessíveis.

Tanto o 630a quanto o antigo 570 SLI continuaram na ativa até maio de 2008, quando deram lugar à série 700, composta pelos chipsets nForce 780a SLI, 750a SLI, 730a e 720a. Diferente do que tivemos na série 700 para processadores Intel, o chipset de vídeo integrado é usado em todas as versões. A configuração dos chipsets é também um pouco diferente, baseada no uso de um único chip, combinado com o bridge nForce 200 nas versões com suporte a SLI e de um link Hyper Transport 3.0 para a comunicação com o processador.

Como o controlador de memória é integrado ao processador, não existe também diferenciação com relação ao número de canais ou frequências de memória suportadas, com todos utilizando memórias DDR2 dual-channel nas placas AM2+ e DDR3 dual-channel nas placas AM3.

Começando do topo, temos o nForce 780a SLI, a versão high-end, com suporte ao 3-way SLI. Além do pacote básico de interfaces (6 portas SATA 300 com suporte a RAID, 12 portas USB, rede gigabit, áudio HDA, etc.) ele faz par com o chip nForce 200 para oferecer as 32 linhas PCI Express 2.0 responsáveis pelo suporte a SLI:

Diferente do que temos no 780i SLI, os três slots PCIe são ligadas ao chip nForce 200. Como ele possui apenas 32 linhas, é usada uma configuração híbrida (x16/x8/x8), onde o primeiro slot recebe 16 linhas e os outros dois recebem apenas 8 linhas, resultando em uma pequena perda.

Em seguida temos o nForce 750a SLI, a versão intermediária, que oferece suporte a apenas duas placas. Ele elimina o uso do chip nForce 200, com os dois slots sendo ligados diretamente ao MCP. Como ele oferece apenas 16 linhas de dados, os dois slots operam em modo x8/x8 ao usar duas placas. Os demais recursos são iguais aos do 780a, com o 6 portas SATA, 12 portas USB, rede gigabit (uma única interface), RAID, áudio HDA e suporte a Blu-ray e HDCPI no vídeo integrado, bem como o suporte ao uso de dois monitores.

O principal motivo de ambos os chipsets oferecerem vídeo integrado, mesmo sendo destinados a quem pretendia utilizar placas dedicadas foi a investida da nVidia em torno do Hybrid Power, um sistema de gerenciamento avançado de energia, que permite chavear entre o uso do vídeo onboard e das GPUs dedicadas, permitindo economizar energia enquanto o sistema está executando tarefas leves.

O HybridPower tinha muitas limitações, com destaque para o chaveamento manual e de ser compatível apenas com as GeForce 9800GTX e 9800GX2. Isso fez com que ele fosse pouco usado e se tornasse obsoleto a partir da introdução das GeForce 2xx, que incorporaram um sistema próprio de gerenciamento de energia, independente da GPU integrada.

Em ambos os casos, a GPU integrada é a GeForce 8200, uma versão integrada da GeForce 8400 GS, que oferece apenas 16 unidades de processamento e usa memória compartilhada. Apesar da diferença de nomenclatura, esta é a mesma GPU encontrada no chipset GeForce 9300 da linha para processadores Intel, apenas com pequenas diferenças nos clocks e recursos suportados.

O grande problema é que a linha para processadores AMD enfrentou a concorrência do AMD 780G, que oferecia uma GPU consideravelmente mais poderosa (cerca de 25% mais rápida que a GeForce 8200), o que não foi muito bom para a reputação da série.

O motivo da nVidia optar pelo uso de uma GPU tão fraca é o fato de os chipsets serem otimizados para a exibição de vídeos HD e Blu-ray e não para o processamento 3D. A ideia era que o dono espetasse uma placa dedicada (ou várias placas em SLI) caso pretendesse usar o PC para jogos.

Descendo um pouco mais a pirâmide, temos o nForce 730a e o nForce 720a, as duas versões mais simples, destinadas a placas de médio e baixo custo. Fisicamente, os dois chipsets não são diferentes do 750a, mas o suporte a SLI é desativado em fábrica, com o objetivo de segmentar a linha.

No lugar do SLI, a nVidia incluiu o suporte ao GeForce Boost, que permite combinar a GPU integrada com uma GeForce 8400GS ou 8500GT dedicada, criando uma espécie de "SLI de pobre". O uso do GeForce Boost é muito limitado, já que o desempenho é baixo (mesmo com uma 8500GT o desempenho é inferior ao de uma GeForce 8600GT, que é o modelo seguinte dentro da linha) e o sistema funciona apenas com estas duas placas específicas (usando qualquer outra placa a GPU integrada é desativada). Isso fez com que o GeForce Boost se tornasse logo obsoleto, assim como o Hybrid Power.

Tanto o 730a quanto o 720a oferecem o mesmo conjunto básico de recursos que o 780a e o 750a, com suporte a um único slot PCIe 2.0 x16, suporte a Blu-ray e HDCP no vídeo integrado, 6 portas SATA, 12 portas USB, rede gigabit e áudio HDA. Entretanto, as placas baseadas nos dois tendem a oferecer menos interfaces, já que eles são predominantemente usados em placas micro-ATX de baixo custo.

A única diferença do 730a em relação ao 720a é a frequência da GPU integrada. O 720a usa a mesma GeForce 8200 encontrada no 780a e no 750a, onde a GPU opera a 500 MHz e as unidades de processamentos de shaders operam a 1.2 GHz. O 730a por sua vez usa a GeForce 8300, uma versão overclocada, onde as unidades de processamento operam a 1.5 GHz, oferecendo um desempenho ligeiramente superior. Como pode imaginar, o principal motivo do overclock foi reduzir a diferença de desempenho em relação ao AMD 780G, melhorando a competitividade do chipset.

Um exemplo de placa baseada no nForce 730a/GeForce 8300 é a Asus M3n78. Ela é uma placa AM2+ micro-ATX, que oferece dois slots PCI, combinados com o slot PCIe x16 e um slot PCIe x1, espremido próximo ao dissipador do chipset. Ela é compatível com todos os Phenom e Phenom II (desde que usando uma versão recente do BIOS) com TDP de até 140 watts, com suporte a até 16 GB de memória (4 módulos de até 4 GB) e uma rara combinação de saídas VGA, DVI e HDMI e suporte ao uso de dois monitores.

A Asus preferiu transformar uma das portas SATA em uma porta eSATA disponível no painel traseiro. Devido a isso, apenas 5 portas estão disponíveis no corpo da placa, com as três portas vermelhas destinadas a quem usar a função de RAID 5 (com 3 HDs) oferecida pelo chipset.