Hardware - O barramento AGP
top of page
  • Leonardo Ritter

Hardware - O barramento AGP

Atualizado: 21 de jul. de 2023

O assunto deste artigo é barramento AGP, que foi muito utilizado entre 1997 e 2005 para conectar placas de vídeo a placa-mãe. Este padrão vigorou como um substituto da interface PCI para placas de vídeo antes da chegada da interface PCI Express.

Placa-mãe A7V8X-X com slot AGP 8x

Imagem 1


AGP é a sigla para Accelerated Graphics Port, que em português significa "Porta Gráfica Acelerada". A Intel se baseou nas especificações do PCI 2.1, um barramento paralelo que em pouco tempo não ia mais satisfazer a taxa de transferência requerida por chips gráficos, tanto que levou cerca de um ano para a conexão AGP ser utilizada no primeiro chipset, o Intel i440LX, lançado no final de 1997. Outras fabricantes como a AMD, VIA, SiS e nVidia também tiveram liberdade para utilizar o controlador AGP em seus chipsets.

Logo da interface AGP

Imagem 2 - Símbolo do padrão AGP


Ambas as versões da interface AGP trabalham a 66 MHz com um barramento padrão de 32 bits, assim como o PCI. Na verdade, o que mais mudou foi a quantidade de bits transmitidos por ciclo de clock. A primeira versão nem chegou a ser muito utilizada, pois deu lugar ao AGP 2x em 1998 e que tinha suporte ao padrão DDR (Double Data Rate - Dupla Taxa de Transferência). Foi questão de tempo para os padrões AGP 4x com suporte a QDR (Quad Data Rate) e AGP 8x com suporte a ODR (Octa Data Rate) chegassem ao mercado.

O padrão PCI-X 533 poderia ter uma taxa de transferência o dobro maior que o AGP 8x, mas por ser um meio de comunicação compartilhado com vários dispositivos e por ser um slot relativamente grande e com muitas trilhas, a interface AGP 8x predominou e satisfez o mercado por bastante tempo. As placas-mãe possuíam apenas um slot desta interface, sendo utilizado apenas por placas de vídeo (as que mais necessitavam de alta velocidade de transferência de dados).

Veja abaixo uma tabela com as diferentes taxas de transferência para cada versão da interface AGP:

Versões da interface AGP

Tabela 1


Abaixo, as revisões do padrão AGP e as principais diferenças entre elas:

Potências e tensão nominal das revisões do AGP

Tabela 2

A pinagem é parecida com a da interface PCI, veja o diagrama de pinos abaixo:

Pinagem do slot AGP

Tabela 3 - Pinagem do slot AGP


Alimentação elétrica


-> Todos os que estão marcados de laranjado e com a palavra "Key" não são utilizados pois ficam debaixo da da chave mecânica que define a posição da placa no slot.

-> Todos os pinos marcados com a cor verde claro são de alimentação elétrica, podendo ser de +12 Volts, +5 Volts, 3,3 Volts, 1,5 Volts ou 0,8 Volts. Alguns pinos do slot universal não possuem a tensão marcada pois depende da placa conectada requisitar 1,5 volts ou 3,3 Volts.

-> Todos o pinos marcados com a cor cinza e escrito "Ground" são os polos negativos de alimentação elétrica.

-> Todos os pinos marcados com "Reserved" não são utilizados.

As linhas de dados descritas a seguir são as mesmas presentes no barramento PCI:


Sinais Gerais

-> Clock ou CLK: Sinal de sincronismo. PCI, MiniPCI, CompactPCI (33MHz), PCI-X e CompactPCI (66 MHz) e PCI-X (133 MHz);

-> RST #: Reset de todos os dispositivos conectados ao barramento;


Linhas de Arbitragem


-> REQ # / GNT#: Requisição de uso do barramento e concessão de uso feita pela placa-mãe, respectivamente;


Sinais de Erro de Paridade


-> Erro do sistema / SERR #: Erro de Sistema - Sinal de saída em coletor aberto. Sinal usado para acusar erro de paridade dos sinais AD[X] e C/BE[X]# na fase de endereço, ou na fase de dados de uma transação especial ou em qualquer transação de sistema. Se existir um erro o mesmo é acionado dois clock após o AD[X] e C/BE[X]# válidos;

-> Erro de paridade / PERR #: Erro no cálculo de paridade, sinal especial de três estados. O dispositivo ou o controlador PCI, ao receber este sinal, deve reenviar os dados com o cálculo de paridade refeito. Sinal usado para acusar erro de paridade nos sinais AD[X] e C/BE[X]# nas fases de dados, com exceção da transação especial. Este sinal funciona como entrada e saída em dispositivo que está transmitindo e somente de saída num dispositivo PCI que receberá a informação. Quando existir algum erro de paridade na fase de dados, o mesmo será acionado dois clocks após a fase completa de dados.


Sinais de Interrupções


-> INTA # / INTB #: Interrupções do sistema. Sinais de saídas em coletor aberto – Os dispositivos acionam estas linhas quando os mesmos requerem atenção dos drivers via iniciador. Estes sinais não são sincronizados com o clock do barramento. Quando os mesmos são acionados, eles permanecem até que os drivers atendam aos pedidos de interrupções.


Sinais de Controle de Transferência de Dados

-> Seleção de dispositivo ou DEVSEL #: Ao acionar este sinal, o dispositivo informa o alvo da transação. Após 4 clock’s, se nenhum alvo responder, a transação será abortada pelo iniciador;


-> IDSEL #: Sinal de entrada. Pela ativação desse sinal, o iniciador solicita uma transação de escrita ou leitura sobre os registradores de configuração do dispositivo;


-> STOP #: Ao acionar este sinal o alvo solicita o término precoce da transação;


-> FRAME#: Habilita o envio de um quadro de dados para um dispositivo PCI pelas linhas AD[X]. Na ativação deste sinal o iniciador indica o inicio de uma transação e permanece acionado na medida que o mesmo requer mais transferências de dados. A sua desativação ocorrerá quando o iniciador estiver pronto a realizar a última fase de dados ou quando a transação for finalizada por algum motivo;


-> Alvo pronto / TRDY: Significa "Target Ready". Receptor de dados pronto – Sinal especial de três estados. O alvo aciona este sinal indicando que está pronto para fase de dados, ou seja, na transação de escrita o alvo está pronto para ler os dados do transmissor e para transação de leitura o dados estão prontos no barramento para o iniciador;


-> Iniciação pronta / IRDY: Sinal de entrada. O iniciador aciona este sinal indicando que está pronto para fase de dados, isto é, na transação de escrita o barramento contém dados válidos para o alvo e para transação de leitura o iniciador está pronto para ler os dados do alvo. Este sinal trabalha em conjunto com o sinal #TRDY, e quando um dos dois estiverem desativados, indicará que existe um estado de espera na transação, e quando ambos forem ativados juntos, indicará que a fase atual foi completa e houve transferência de dados entre iniciador e alvo.


Linhas de Dados e Endereços


-> Endereço / Dados (X) ou AD[X]: Linhas para transferência de endereço e dados. São 32 linhas para os slots PCI / AGP e MiniPCI e 64 para os slots PCI-X e CompactPCI;

-> Comando / Byte Ativado (X) ou C/BE[X]#: Linhas de transferências de comando para ativar e desativar transferências de dados pelas linhas "AD [X]";


-> Paridade / PAR: Sinais de paridade. Método para evitar erros nas transmissões de dados. Carrega o valor do cálculo de paridade dos sinais AD[X] e C/BE[X]#. Este é transmitido no sentido da transação. No cálculo não se leva em consideração o tipo de transação, nem quais bytes válidos em AD[31:0] por C/BE[X]#, ou seja, todos entram no cálculo em quaisquer circunstâncias. O sinal PAR é válido nos seguintes casos: 1 clock após a fase de endereço, 1 clock após a ativação do sinal #IRDY na transação de escrita (durante a fase de dados), 1 clock após a ativação do sinal #TRDY na transação de leitura (durante a fase de dados). E permanece válido por 1 clock após da fase completa;

As linhas de dados descritas a seguir são exclusivas do barramento AGP


-> Interface USB: Troca de informações do dispositivo conectado com a placa-mãe. Neste caso a utilidade da interface USB é equivalente ao da SMBus, presente em outras tecnologias;

-> SBA[X]: Sideband Adress: É o barramento de endereços do slot AGP. São 8 pinos numerados de 0 a 7;

-> SB_STB / SB-STB#: Sinal estroboscópico para as linhas de endereço ("SBA[X]");

-> AD STB[X] / AD STB#[X]: Sinal estroboscópico para as linhas de Dados / Endereços ("AD [X]");

-> ST[X]: Status AGP (válido enquanto "GNT#" estiver em nível LOW);

-> RBF#: Read Buffer Full - Buffer de Leitura Cheio;

-> WBF#: Write Buffer Full - Buffer de Gravação Cheio;

-> PIPE#: Solicitação de pipeline de dados;

-> PME#: Gerenciamento de energia (a utilização desta linha é opcional);

-> Vrefgc / Vrefcg: Entrada e saída de tensões de referência, respectivamente;

-> TYPEDET#: Manter em nível baixo significa que a placa AGP funciona a 1,5 Volts;

-> OVERCNT#: Sinaliza excesso de corrente elétrica;

> O pino 3 do lado "A" pode ser utilizado para reconhecer placas AGP que trabalham com 0.9 Volts (revisão 3.0).

Abaixo, você vê todo o esquema elétrico presente ao redor do slot AGP. Observe o diagrama do slot:

Esquema elétrico da placa-mãe Foxconn 748A01

Diagrama 1 - Circuito do slot AGP presente na placa-mãe Foxconn 748A01

OBSERVAÇÃO: O slot apresentado acima já suporta placas de vídeo com AGP 3.0.

Se continuar lendo, vai ver parte do diagrama de dois chipsets que suportam a interface AGP!

Abaixo, mostramos os modelos de slot AGP:

Tipos de slot AGP

Imagem 3 - Tipos de slot AGP


O slot AGP Pro é uma versão com 48 pinos adicionais exclusivos para a alimentação elétrica. Isso aconteceu devido a guerra entre a ATi Graphics e nVidia por placas com cada vez mais desempenho, o que fez com que tivesse de ser adicionado mais pinos e aumento de corrente elétrica do slot. O AGP Pro50 é capaz de fornecer 50 Watts e o AGP Pro110 é capaz de fornecer 110 Watts de potência.

Como era de se esperar, a quantidade de trilhas extras e os circuitos de regulação de alimentação que tinham que ser adicionados na placa-mãe tornou o AGP Pro mais caro e raríssimo de encontrar. A melhor forma de fornecer energia extra para a placa de vídeo foi com cabos auxiliares ligados diretamente a fonte de alimentação do computador, coisa comum de se ver em placas PCI Express. Vale lembrar que placas AGP comum são compatíveis com os slots AGP Pro.

Surgiu também uma versão chamada AGP Express na época de transição entre o padrão AGP e PCI Express. O AGP Express tinha este nome pois era adicionado em placas que tinham o PCI Express 1.0 também. Normalmente essas placas hibridas eram feitas pela ECS / PC Chips. A ECS / PC Chips deu o nome de AGPro à alguns de seus produtos híbridos, isto é, com AGP e PCI Express na mesma placa.

O estranho é que os chipset's não tinham suporte a AGP e PCI Express ao mesmo tempo devido ao custo, o que fez a Elite Group colocar um slot AGP no barramento PCI. Este armengue limitou o slot AGP a 133 MB/s (a 33 MHz) ou 266 MB/s (a 66 MHz), fora que nem todas as placas AGP funcionavam, pois os pinos de endereço ("SB_STB" / "SB-STB#" / "SBA[X]") e outros de controle ("ST[X]" / "RBF#" / "WBF#" / "PIPE#", entre outros) não faziam parte da interface PCI, e se funcionassem, compartilhariam a comunicação com outras placas conectadas ao barramento, que ainda por cima, tinha o núcleo lógico na Ponte Sul, limitando ainda mais o desempenho. Para conhecer alguns detalhes da PC Chips A31G, que possui AGPro, CLIQUE AQUI!

A AsRock teve outra estratégia: Colocar um chip HSI capaz de drenar os dados da conexão PCI Express 1.0 para o barramento AGP. Este outro "armengue" foi chamado de AGI (Accelerated Graphics Interconnect) e fez com que a taxa de transferência máxima do padrão AGP 8x pudesse ser respeitada.

Selecionamos dois esquemas elétricos de placas-mãe da Foxconn que possuem chipset com interface AGP, para que entenda melhor a ligação do slot com o controlador. Salientamos que, a parte do chipset detalhada nos diagramas abaixo é apenas a interface com o processador e com o slot AGP, excluindo o controlador de memória RAM e outros circuitos presentes na Ponte Norte destas placas. Observe:

Esquema elétrico da placa-mãe Foxconn 661S01

Diagrama 2 - Esquema elétrico da placa-mãe Foxconn 661S01

Esquema elétrico da placa-mãe Foxconn 748A01

Diagrama 3 - Esquema elétrico da placa-mãe Foxconn 748A01

O controlador AGP possui circuitos parecidos com o PCI, afinal ele foi baseado neste barramento, mas com a adição de um controlador USB, circuitos de compreensão de endereços, entre outras adaptações. Este controlador está presente sempre no chip Ponte Norte, ou seja, o chip que se comunica com o processador (CPU), diferente do PCI que fica na Ponte Sul, que é conectada a Ponte Norte.

Se quiser entender melhor o funcionamento deste controlador e ver os diagramas de transmissão de dados, sugiro que acesse o artigo sobre o barramento PCI! Para acessar você pode CLICAR AQUI!

Todas as placas-mãe que possuíam vídeo on-board e slot AGP compartilhavam internamente, no circuito da Ponte Norte, o mesmo barramento AGP. Ao conectar uma placa de vídeo Off-Board, o vídeo On-Board era desativado, já que o controlador AGP conseguia trabalhar com apenas um circuito de vídeo (apesar dele ser um barramento e utilizar sistema de endereços).

Voltando a falar sobre a adaptação de circuitos com interface AGP e PCI Express, era utilizado o bridge HSI, que é a abreviação para High Speed Interconnect, que em português significa Interconexão de Alta Velocidade. Esta tecnologia também foi utilizada pela nVidia para tornar os chips NV40 (arquitetura Curie) compatíveis com a interface PCI Express. Foi um período de transição em que não compensava redesenhar os chips com arquitetura NV40 para abolirem o padrão AGP.

Surgiram também versões proprietárias do padrão AGP, como por exemplo:


-> O Ultra-AGP e Ultra-AGP 2 criado pela Silicon Integrated Systems (SiS) para melhorar o desempenho do vídeo On-Board;

-> O AGX (Accelerated Graphics eXtended) criado pela EpoX, que trabalhava melhor com placas de vídeo AGP 8x da marca ATi Graphics;

-> O XGP (eXtreme Graphics Port) da Biostar;

-> O AGR (Advanced Graphics Rizer) para as placas da MSi, uma solução parecida com a adotada em algumas placas-mãe da AsRock (o AGI, explicado no texto acima), mas que não era compatível com todos os modelos de placas de vídeo, apenas com modelos presentes em uma lista publicada pela marca.

Em teoria, todos os slots AGP de placas-mãe feitas a partir de 2003 são universais. Em teoria, pois algumas placas de vídeo (principalmente as da revisão 1.0) não conseguem se comunicar e informar a tensão nominal de operação (3,3 Volts, 1,5 Volts ou 0,8 Volts). A partir deste mesmo ano, as placas de vídeo também começaram a ter um encaixe universal, isto é, sem chaves mecânicas. No caso do AGP 3.0 não ouve quebra de compatibilidade, pois ela também pode funcionar em slots que fornecem 1,5 Volts e até mesmo 3,3 Volts.

Mesmo tendo retrocompatibilidade entre as revisões, em alguns casos pode ter algum problema de reconhecimento devido a incompatibilidades entre a BIOS da placa-mãe e da placa de vídeo, e até mesmo problemas de driver que geram instabilidades. Vale lembrar que placas de vídeo AGP mais novas em placas-mãe mais antigas também podem sofrer com as limitações de corrente da alimentação elétrica e ficarem instáveis.


Para encerrar o assunto:


CURIOSIDADE: Na Imagem 1 é possível perceber que a estrutura de cor marrom escura do slot AGP é um plástico, mais especificamente LCP (Liquid Crystal Polymer) ou PPA (Poliftalamida), dois materiais muito utilizados na confecção de slots e conectores de placas de circuito devido a boa rigidez dielétrica e resistência a altas temperaturas. Para saber mais sobre polímeros, comece CLICANDO AQUI!


Ficou com alguma dúvida? Achou que falta alguma coisa? Escreva nos comentários ou mande um e-mail para hardwarecentrallr@gmail.com. Gostou da explicação? Então é só curtir e compartilhar!

 

CRÉDITOS e FONTES

Texto, imagens e tabelas: Leonardo Ritter

Fontes: Hardware.com; Pinouts.ru; Infowester; Intel Corporation; Biblioteca do Hardware Central; Engenharia reversa feita pelo autor do artigo.

Última atualização: 06 de Fevereiro de 2021.

3.849 visualizações

O Hardware Central abandonou de vez o Facebook. Não temos mais fanpage e a caixa de comentários que aqui habitava foi chutada pra longe! Não somos Mainstream! Redes socias não combinam com nós! Somos a galera dos livros!

Como também repassamos conteúdo de terceiros, não é justo restringir a cópia! O uso do conteúdo do HC e de toda a internet deve ser livre!

Para relatar erros, incongruências ou sugerir conteúdo, nos chame pelo hardwarecentrallr@gmail.com! Não somos perfeitos, mas sempre é possível melhorar!

bottom of page