• Leonardo Ritter

Hardware: O barramento PCI - PARTE 1

Atualizado: 19 de set.


Slots PCI (em branco) numa placa-mãe Abit SG-80

Imagem 1 - Slots PCI (na cor branco) e o chip Ponte Sul (SiS 964) numa placa-mãe Abit SG-80

No centro dos holofotes por anos a fio, o barramento ISA (Industry Standard Architecture) surgiu e recebeu várias novas revisões de projeto até ficar insustentável, gerando gargalo nos computadores. O VLB, outra conexão paralela, o substituiu, mas atingindo seus limites tempos depois. Para saber mais sobre o barramento VLB, CLIQUE AQUI!


Nisso, a Intel traz ao mercado aquele que talvez seja o barramento mais famoso: o PCI (Peripheral Component Interconnect - Interconexão de Componentes Periféricos). Lançado em 22 de junho de 1992, durante o desenvolvimento do Pentium 3, o barramento PCI foi o padrão definitivo para o mercado. Devido ao sucesso, em poucos anos outras empresas se uniram a Intel e criaram o PCI-SIG (PCI Special Interest Group ou Grupo de Interesse Especial PCI).

Na sequência, veio o padrão PCI-X (Peripheral Component Interconnect eXtended - Interconexão de Componentes Periféricos Estendida), que era uma versão do slot PCI com clocks mais altos e maior largura do barramento, não muito aplicada em PCs domésticos.


O barramento PCI foi considerado um padrão da indústria, pois todos os outros eram projetados para uma plataforma específica, e quando esta plataforma ficava obsoleta outro padrão tinha que ser criado. Isso pode ser visto no ISA, que teve de receber várias adaptações para continuar operacional a cada nova geração de computadores. O controlador PCI foi adicionado ao chip Ponte Sul da placa-mãe e mesmo após o lançamento de outro processador, com socket diferente, clocks mais altos e novas tecnologias, o fabricante alterava outros sistemas no chipset mas nada se alterava no circuito do controlador PCI. Mais uma coisa nos PCs que finalmente se tornava modular.


O slot PCI e PCI-X, quando foram lançados, acompanharam o desempenho do restante do hardware que era desenvolvido na época. Eles eram utilizados para vários fins (instalação de placas de áudio, rede, captura de vídeo, placas de vídeo, etc). Após alguns anos, quando os jogos de computador estavam começando a ficar mais bem trabalhados e populares e quando os processadores e memórias ganharam mais desempenho, este barramento se mostrou lento e pouco proveitoso, principalmente para a instalação de placas gráficas.


Mesmo assim, o PCI serviu de base para a PCI-SIG trazer ao mercado aquele que ficou exclusivo para placas de vídeo por uns bons anos: o AGP (Accelerated Graphics Port). Há um conteúdo exclusivo sobre ele aqui no blog: "Hardware: O Barramento AGP".


Por fim, o PCI-SIG trouxe ao mundo o PCI Express - completamente diferente do PCI - e utilizado até os dias atuais. Existem três grandes publicações sobre o PCIe aqui no blog:

Para acessar o Capítulo 1, CLIQUE AQUI!

Para acessar o Capítulo 2, CLIQUE AQUI!

Para acessar o Capítulo 3, CLIQUE AQUI!


Este texto é dedicado a dissertar um pouco sobre o funcionamento do barramento PCI, bem como algumas de suas diversas variações e aplicações.


OBSERVAÇÃO: Para melhor entender este conteúdo, é recomendável a leitura dos textos sobre Clock, Bits e Bytes e do artigo sobre pares diferenciais, todos disponíveis gratuitamente aqui no HC.

O controlador PCI 1.0 foi concebido inicialmente para trabalhar com clock de no máximo 33 MHz e 32 trilhas de comunicação para transferência de dados no modo half-duplex, ou seja, enviar e receber dados pelo mesmo caminho. Alguns anos depois foi lançada uma nova versão de 66 MHz. Outra peculiaridade deste padrão é que vários dispositivos podem ser conectados no mesmo barramento, portanto, independente da quantidade de slots PCI, só haverá 1 controlador PCI no chipset Ponte Sul. É válido lembrar que todos os dispositivos conectados no barramento também possuem controlador PCI para poder se comunicarem.

O barramento PCI também é Plug And Play, assim como a interface USB, por exemplo. A configuração de endereços IRQ, DMA e I/O é automática, a única coisa que o usuário deve fazer é instalar o driver do dispositivo conectado para que ele seja reconhecido pelo sistema operacional.

Outra tecnologia introduzida no barramento PCI é o Bus Mastering: esta tecnologia permite que um dispositivo PCI acesse a memória RAM para gravar e ler informações sem a intervenção do processador. Isso faz com que o processador seja poupado de sobrecargas. Mas como assim? Enquanto a CPU está ocupado com outros processos, o controlador PCI pode gravar e ler dados na memória RAM sem que a CPU execute um processo exclusivamente para o barramento PCI. O Bus Mastering é uma melhora feita no DMA (Direct Memory Access - Acesso Direto a Memória).

Placa-mãe ASUS A7V8X-X com 6 slots PCI

Imagem 2 - Os 6 slots PCI da Asus A7V8X-X

Placa-mãe GigaByte GA-8i945G MF com apenas 2 slots PCI

Imagem 3 - Slots PCI em uma placa-mãe Gigabyte de socket LGA775


A taxa de transferência máxima teórica do barramento PCI de 33 Mhz é de 133 MB/s, e será dividida entre todos os dispositivos que estiverem conectados ao barramento. Na última versão utilizada, o clock é de 66 Mhz e a taxa de transferência é de 264 MB/s. É aí que estão os gargalos. Não adiantaria, por exemplo, conectar uma placa Gigabit LAN num barramento PCI que está sendo usado também para uma placa de áudio. A placa Gigabit LAN consegue receber e enviar dados para a rede mundial de computadores numa taxa de transferência máxima teórica de 125 MB/s. Ao conectar uma outra placa neste barramento, a taxa de transferência máxima teórica do barramento PCI será dividido entre as duas, ou seja, se o clock for de 33 MHz, no máximo 66 MB/s para cada uma. Isso se agrava caso mais placas estejam utilizando o barramento.

Para que os dispositivos PCI se comuniquem com o controlador da placa-mãe sem conflitos, há um parâmetro no BIOS chamado "PCI Latency Timer" (nem todas as placas-mãe possuem este parâmetro acessível ao usuário). Para entender isso você deve ter em mente que, por exemplo, um clock de 66 MHz significa 66 milhões de ciclos de clock. Este parâmetro é padronizado em 32 ou 64 ciclos de clock (isso depende da placa-mãe) e serve para definir o tempo (quantos ciclos de clock) que cada dispositivo PCI terá para se comunicar com o controlador da placa-mãe pelo barramento. Algumas placas oferecem valores que vão até 248 ciclos de clock, mas ao utilizar valores tão altos e vários dispositivos estiverem utilizando o barramento, podem haver lentidões no sistema, pois cada dispositivo terá mais tempo para se comunicar com a placa-mãe.


Para mais detalhes, leia o artigo sobre clock CLICANDO AQUI!

Leia também sobre os bits e Bytes, basta CLICAR AQUI!

Imagem 4 - Placa de rede Ethernet com interface PCI


Outros exemplos de placas PCI são:

-> Placas de vídeo das extintas 3Dfx e S3 Graphics;

-> Placas de vídeo da ThiNetWorks com o chip ATi Rage XL para multiterminais (era muito utilizado nos computadores de escolas públicas do Paraná);

-> Placas áudio antigas da marca Creative Labs;

-> As famosas placas de conexão discada de 56 Kbps;

-> Chips de rede com interface PCI, como por exemplo o RealTek RTL8139D.


Existem dezenas de outras marcas que fabricavam placas de áudio, rede, vídeo, USB, Receptor de TV e etc, com interface PCI.

Estes gargalos são atuais, já que na época em que a Intel lançou o barramento PCI não existiam placas Gigabit LAN, Wi-Fi, placas de vídeo de alto desempenho, arquivos de vídeo em alta resolução ocupando vários GigaBytes, o que fez as placas expansíveis PCI se tornarem muito utilizadas, tanto que placas-mãe do padrão AT (Advanced Technology) não tinham saída de vídeo, portas USB, Ethernet, áudio e outros conectores, apenas um monte de slots ISA / eISA, VLB e até mesmo PCI para conectar todos os controladores.

Placa-mãe padrão AT

Imagem 5 - Placa-mãe antiga no formato AT

Slots PCI e PCI-X


Estendendo o tópico anterior...

Com o passar dos anos surgiu uma variação do slot PCI: o PCI-X. Sua principal diferença é uma extensão do slot padrão que permitia uma conexão de 64 bits, o dobro do PCI original. Dentro do padrão PCI-X havia diferentes revisões com clock mais alto e transferências de dois (DDR) ou quatro (QDR) bits por ciclo de clock. O PCI-X vingou em algumas placas do padrão AT, mas seu principal uso foi em placas de servidor, como é o caso desta aqui mostrada no vídeo abaixo, utilizada nas escolas públicas que 'desfrutavam' do 'modernoso' (só que não) sistema Paraná Digital:

Vídeo 1 - Haviam dois modelos. Algumas escolas tinham um servidor preto da ItauTec com dois Intel Xeon em soquetes LGA775. Na minha escola era um servidor branco da Positivo com dois Opteron em soquetes PGA939 (é esse do vídeo). Ótimas lembranças


Sua aplicação em placas-mãe de computadores pessoais era mais cara e não fazia muito sentido, já que o PCI original dava conta do recado na época.


É válido lembrar que todas as versões do barramento PCI são compatíveis entre si. Por exemplo, ao conectar um dispositivo PCI com o clock de 33 MHz num barramento de 66 MHz, o controlador da placa-mãe irá reconhecer o dispositivo conectado e limitar todo o barramento a 33 MHz. No caso de conectar um dispositivo com barramento de 32 bits num slot de 64 bits, o controlador da placa-mãe vai trabalhar tanto com os dispositivos de 64 bits quanto com os de 32 bits. Ao conectar um dispositivo de 64 bits num slot de 32 bits, o controlador da placa-mãe só vai poder utilizar 32 bits. Veja a imagem seguinte:

Slots PCI e PCI-X

Imagem 6 - Slots PCI de 64 bits


Observe na figura abaixo que existem slots PCI de 32 e 64 bits para placas que trabalham com 5V ou 3,3 V, sendo que a diferença principal é a posição da chave (Mais detalhes da pinagem na Tabela 3):

Imagem 7 - A pequena diferença entre slots PCI para placas que operam com 3,3V e 5V


Slot Mini PCI


Com o aumento dos dispositivos portáteis no mercado nos anos 1990, surgiu também uma versão chamada de miniPCI, desenvolvida na versão 2.2 do barramento, feita especialmente para notebooks e dispositivos menores, compactos.

As placas Mini PCI têm um consumo máximo de energia de 2 Watts, o que limita a funcionalidade que pode ser implementada neste formato. Isso também é necessário para suportar o sinal PCI CLKRUN# usado para iniciar e parar Clock para fins de gerenciamento de energia.


Veja como é um conector MiniPCI de 124 pinos:

Imagem 8 - Slot MiniPCI de 124 pinos


Veja esta outra imagem, de uma placa de rede para slot MiniPCI:

Imagem 9 - Placa de rede para slot MiniPCI de 124 pinos


Pra fechar a sessão de imagem do slot MiniPCI, veja a placa de rede montada no slot:

Imagem 10 - Placa de rede montada num slot MiniPCI de 124 pinos


Existem três fatores-forma de cartão que são mostrados na tabela abaixo:

Tabela 1 - Os tipos de cartão Mini PCI


Tipo I e II usam um conector de 100 pinos, enquanto o Tipo III usa um conector de 124 pinos. A pinagem será detalhada no capítulo 2.

As placas do tipo II podem ter conectores RJ11 ou RJ45 integrados no cartão, que por este motivo devem estar localizados na borda do computador ou da estação de acoplamento para que as portas possam ser montadas para acesso externo.


O Mini PCI foi abandonado em poucos anos e substituída pelo ExpressCard, miniPCIe e outros padrões que apresentavam desempenho superior.


Slot CompactPCI


O CompactPCI foi uma versão muito incomum, pois durou poucos anos no mercado e era destinado a indústria, que necessitava de um conector mais robusto e que ocupasse menos espaço nos circuitos.

O slot CompactPCI não terá a pinagem detalhada aqui, pois como foi dito, ele é muito incomum e foi pouco utilizado. O princípio de funcionamento dele é o mesmo: são 2 tipos de slots, que fisicamente são idênticos, mas um tem apenas 32 pinos de dados ativos e o outro possui todos os 64 pinos com o clock de 66 MHz. Na maioria da placas-mãe, dependia do fabricante utilizar todos os pinos do slot ou não. Veja abaixo uma imagem do slot CompactPCI:

Imagem 11 - Slots CompactPCI


Na imagem acima, um backplane 3U CompactPCI com conectores J2 (superior) e J1 (inferior, com chave azul no meio). O barramento PCI de 32 bits está no conector J1, enquanto os pinos do J2 passam para outro conector na parte traseira da PCB.


PCMCIA CardBus


Originalmente desenvolvido pela Personal Computer Memory Card International Association (PCMCIA), o padrão CardBus, lançado em Maio de 1996 tornou-se obsoleto em cerca de 8 anos, sendo sucedido pelo PCMCIA ExpressCard, que atualmente está 'sepultado' no USB Implementers Forum (USB-IF) após a dissolução da organização original em meados de 2009.


O PCMCIA, grupo de interesse especial (SIG) criado em 1989, foi o responsável por trazer ao mercado:


A interface PC Card, introduzida em Novembro de 1990, que implementa um barramento ISA de 16 bits;


A interface ExpressCard, introduzida em meados de 2003, que implementa uma conexão PCI Express x1 e uma porta USB.


OBSERVAÇÃO: Foi gerada uma distinção coloquial que definiu PC Card como sendo um dispositivo de 16 bits (baseado em ISA) e um dispositivo Cardbus como sendo um dispositivo de 32 bits (baseado em PCI). Em um entendimento técnico, isso está incorreto.

O marketing acabou atrapalhando a marca PCMCIA e, em Fevereiro de 1995, o nome foi substituído por um mais amigável e menos tecnológico: PC Card. PC Card é o nome de hardware dominante para dispositivos de 16 bits e 32 bits. Cardbus é exclusivamente um subconjunto opcional da especificação PC Card. O Cardbus não precisa ser implementado por um fabricante do dispositivo, e só é feito quando são necessários recursos de desempenho compatíveis com os de um periférico PCI.

Sendo assim, do ponto de vista acadêmico, o uso mercadológico de 'PC Card' em referência a dispositivos de 32 bits é correto, embora como resultado direto da necessidade social superveniente de esclarecimento, as distinções coloquiais sejam preferidas.

Todavia, por uma questão de melhor entendimento do conteúdo - que já é complexo por si só - o Hardware Central trata o PC Card como sendo aqueles cartões de 16 bits, e o CardBus como sendo aqueles de 32 bits.


Prosseguindo com o conteúdo...


O CardBus é uma interface para conectar dispositivos periféricos a um computador, sendo adotado geralmente em notebooks. Alguns PCs domésticos implementavam tal interface, como é o caso do Asus Pundit-S, um gabinete Slim com uma placa-mãe P4S8L para soquete mPGA478, da Intel. O manual do Pundit-S pode ser acessado abaixo:

Manual do Asus Pundit-S
.pdf
Download PDF • 4.71MB

Veja abaixo a imagem de um conector PCMCIA CardBus:

Imagem 12 - Logo atrás, o seu controlador, um chip ENE CB-710Q A1


O PCMCIA CardBus possui o mesmo conector de 68 pinos utilizado no PC Card, que é a primeira geração. No entanto, a função de cada pino difere...

Diagrama 1 - O conector utilizado na PCMCIA PC Card e CardBus


Existem três classes de cartões PCMCIA (não inclui o ExpressCard):


Tipo I: Cartão com dimensões de 3,3 mm x 85,6 mm x 54,0 mm (A x C x L), a versão 2.1 permite que o comprimento varie de 50 mm a 135 mm. Estes só existem com a interface ISA de 16 bits;

Tipo II: Cartão com dimensões de 5,0 mm x 85,6 mm x 54,0 mm, a versão 2.1 permite que o comprimento varie de 50 mm a 135 mm. Existem cartões com estas dimensões com interface ISA e outros com a interface PCI;

Tipo III: dimensões 10,5 mm x 85,6 mm x 54,0 mm (Altura x Comprimento x Largura). Existem cartões com estas dimensões com interface ISA e outros com a interface PCI.


CURIOSIDADE: Um Tipo IV foi criado pela Toshiba, porém nunca regularizado pelo PCMCIA. Ele tinha como diferencial uma espessura de 16 milímetros.


Um dispositivo PC Card (16 bits) funcionará tanto em um conector PC Card quanto em um slot para CardBus (32 bits). É aqui que a interface PCI e ISA se cruzam. Sendo o conector da Imagem 12 para cartões Tipo I, II e III, isto significa que seu controlador, o ENE CB-710Q A1 opera com ISA e PCI e se alterna de acordo com o cartão inserido.

Inserir um cartão CardBus (32 bits) num conector PC Card (16 bits) não vai funcionar. O conector, como já foi dito, é igual, no entanto, os controladores mais antigos não suportam o subconjunto CardBus, que é o que permite a conexão PCI de 32 bits.

Para que não ocorram deslizes por parte do usuário, um mecanismo "anti-burro" é implementado. O entalhe na parte frontal esquerda do dispositivo é um pouco mais raso em um cartão CardBus, portanto, por design, um dispositivo de 32 bits não pode ser conectado a equipamentos anteriores que suportem apenas dispositivos de 16 bits. Veja a imagem:

Imagem 13 - Tecnologia anti-burro dos cartões PCMCIA


Os cartões CardBus podem ser diferenciados dos mais antigos pela presença de uma faixa dourada com oito pequenos pontos na parte superior da placa próxima ao quadro de pinos:

Imagem 14 - Diferença entre o PC Card e o CardBus


Se você leu o Capítulo 3 sobre as aplicações do PCI Express, nem é necessário explicar que o PCMCIA ExpressCard é completamente diferente e sem compatibilidade com as duas versões detalhadas aqui.


CURIOSIDADE: Até aqui expomos algumas informações sobre o barramento ISA, mas não o necessário para entender tudo. Para conhecer profundamente o barramento ISA e eISA, CLIQUE AQUI!

 

Na Tabela 1 as principais variações e versões do slot PCI (exceto o PCMCIA):

Tabela 2 - Versões e variações do padrão PCI


Em seguida, a quantidade de pinos de cada modelo de slot:

Tabela 3 - A quantidade de pinos de cada variação do PCI


OBSERVAÇÃO: O PCMCIA CardBus é uma aplicação concorrente do Mini PCI que utiliza a mesma tecnologia, porém, muito mais compacto (100 ou 124 pinos contra 68 do CardBus).

Aqui vão alguns detalhes extras sobre o conteúdo principal...


E a composição química da carcaça e terminais?


Na Imagem 1, Imagem 2, Imagem 3, Imagem 5, Imagem 6, Imagem 8, Imagem 10, Imagem 11 e Imagem 13 é possível perceber com mais clareza que a estrutura do Slot PCI e PCMCIA é plástico, mais especificamente LCP, sigla para Liquid Crystal Polymer, um material muito utilizado em slots e conectores de placas de circuito devido a sua boa rigidez dielétrica e resistência a altas temperaturas.


No caso de conectores PCMCIA há também peças em Aço inoxidável e em Aço Carbono galvanizado com Níquel ou Estanho. Veja a seguinte tabela:

Tabela 4 - Em geral, as especificações de Aço-Carbono para slots e conectores na indústria eletrônica estão entre o AISI-1020 e AISI-1070. Já para o Aço INOX, o JIS SUS 3xx é relativamente comum


Slots de expansão possuem terminais feitos a base de ligas de Cobre com algum tipo de galvanização:

→ Bronze fosforado com dupla galvanização a frio (Estanho sobre Níquel);

→ Bronze fosforado com dupla galvanização a frio (Ouro sobre Níquel);

→ Bronze fosforado galvanizado a frio com Estanho ou Ouro;

→ Cobre galvanizado a frio com Estanho ou com Ouro (como é o caso dos pinos de processadores).


Perceba na Tabela 4 que os terminais do conector PCMCIA fabricado pela Hirode são feitos de Latão (Brass, em inglês) e a área de contato de cada pino é galvanizada a frio com Ouro. Lembre-se que Latão é a mistura de Cobre com Zinco.


Quando se trata das placas de expansão, os contatos são feitos com os mesmos materiais utilizados nos terminais do slot. Já a PCB é confeccionada em FR4 e, em geral, possui mais de uma camada (PCB Multi Layer).


Para saber mais sobre polímeros e elastômeros, comece CLICANDO AQUI!

Para saber mais sobre cristais líquidos, CLIQUE AQUI!

Para saber mais sobre as ligas não-ferrosas com base no Cobre, CLIQUE AQUI!

Para saber mais sobre o FR4, CLIQUE AQUI! (exemplos de uso de polímeros e elastômeros) e CLIQUE AQUI! (aditivações em compósitos).

 

O PCI e o ACR


A ACR SIG aproveitou o slot PCI para implementar a interface ACR, deslocando-o alguns milímetros mais para a esquerda na PCB, pois assim não há a possibilidade de confundir e montar a placa errada. Em suma, só deixar devidamente explícito que eram interfaces diferentes não bastava, havia a necessidade do uso da velha técnica anti-burro.

Nem vou colocar uma imagem do tal slot PCI reposicionado, pois há um conteúdo exclusivo no blog dedicado ao ACR e outras interfaces que pouco duraram no mercado. Para acessar este conteúdo, CLIQUE AQUI!

Este foi o um artigo sobre antigas tecnologias que fizeram sucesso e duraram anos no mercado! Até 2017 ainda eram vendidas placas-mãe com slots PCI! A ASUS M5A78L-M/USB3 possui dois slots ligados ao chipset Ponte Sul AMD SB700. A AsRock N68 GS4 FX R2.0 de 2015 também tem 2 slots PCI ligados ao Chipset nVidia nForce 630a...


Este texto é apenas a iniciação da nossa dissertação sobre barramento PCI. A tecnologia já é obsoleta, no entanto, o nosso interesse por juntar cada vez mais informações sobre isso e vários outros assuntos fez com que este artigo entrasse para o hall daqueles que têm mais de um Capítulo.

No Capítulo 2, o detalhamento dos pinos de cada slot, bem como uma breve descrição do funcionamento do controlador PCI.


Ficou com dúvidas? Achou que faltou algo? Mande suas palavras para hardwarecentrallr@gmail.com. Gostou do artigo? curta, compartilhe e comente!

 

CRÉDITOS e FONTES

Texto, imagens, tabelas e diagramas: Leonardo Ritter

Fontes: Banco de esquemas elétricos do HC; Clube do Hardware; InfoWester; Hardware.com; Texas Instruments; Universidade Ferderal de Santa Catarina; Engenharia reversa praticada pelo autor do artigo.


(O conteúdo visto na página da Texas Instruments pode ser aberto aqui: http://www.ti.com/lit/ug/sprue60b/sprue60b.pdf)


Última atualização: 24 de Julho de 2022.

3.890 visualizações