terça-feira, 5 de abril de 2011

Como funciona a AGP

Introdução



Você aponta, clica, arrasta e solta. Arquivos são abertos e fechados em janelas separadas. Filmes são exibidos, janelas pop-up e videogames preenchem a tela, fazendo você mergulhar em um mundo de imagens tridimensionais. Isso é o que estamos acostumados a ver em nossos computadores.
O primeiro computador a usar uma interface gráfica com o usuário foi o Alto (em inglês), da Xerox, em 1973. Essa inovação mudou para sempre o modo como as pessoas trabalham em seus computadores.
Atualmente, todos os aspectos da informática, desde a criação de animação até tarefas simples, como o processador de texto e e-mail, usam muitos recursos para criar um ambiente de trabalho mais intuitivo para o usuário. O hardware que suporta esses gráficos é chamado de placa de vídeo ou placa gráfica. O modo como essa placa é conectada ao seu computador é a chave para que sua capacidade se traduza em elementos gráficos. Neste artigo, você vai aprender detalhes sobre a AGP (do inglês, Accelerated Graphics Port, ou Porta Gráfica Acelerada). A AGP possibilita a seu computador ter um modo dedicado para se comunicar com a placa de vídeo, realçando tanto a aparência como a velocidade de desenho dos elementos gráficos de seu computador


Saia do barramento

Em 1996, a Intel apresentou a AGP como um modo mais eficaz de trafegar pacotes de vídeo e desenhar imagens tridimensionais em tempo real, que estavam se tornando presentes em todos os aspectos da computação. Anteriormente, o tráfego desses dados era feito através do barramento PCI (Peripheral Component Interconnect). O barramento PCI é um caminho usado para entregar a informação da placa de vídeo para a unidade central de processamento (CPU). Um barramento permite múltiplos pacotes de informação de fontes diferentes trafegar por um caminho simultaneamente. A informação da placa de vídeo trafega pelo barramento com qualquer outra informação que estiver vindo de um dispositivo conectado ao PCI. Quando todas as informações chegam à CPU, elas têm que esperar na fila para aguardar seu tempo na CPU.

Foto cedida
Slots PCI na placa-mãe
Esse sistema funcionou bem por muitos anos, mas eventualmente o barramento PCI se tornou um pouco ineficiente. A Internet e a maioria dos softwares são cada vez mais orientados a aspectos gráficos, e a demanda por placas de vídeo passou a ser prioridade sobre todos os outros dispositivos PCI.


Exemplo típico de uma placa de vídeo AGP
A AGP é baseada no projeto do barramento PCI, mas, ao contrário de um barramento, ela fornece uma conexão ponto-a-ponto dedicada da placa de vídeo para a CPU. Com um caminho direto para a CPU e a memória do sistema, a AGP fornece mais rapidez e eficiência para seu computador obter a informação necessária para traçar um elemento gráfico mais complexo. Na próxima seção, vamos descobrir como isso acontece.


Aumentando a velocidade

A intenção da AGP é melhorar os caminhos pelos quais a PCI transporta os dados para a CPU. A Intel conseguiu isso concentrando-se em todas as áreas em que as transferências de dados da PCI eram gargalos para o sistema. Acabando com o congestionamento de dados, a AGP aumenta a velocidade na qual as máquinas podem traçar os gráficos, enquanto usam os recursos do sistema com maior eficácia para reduzir o efeito das operações de arrasto ("drag"). Eis como:
  • porta dedicada - não há outros dispositivos conectados à AGP, além do cartão gráfico. Com um caminho dedicado para a CPU, a placa de vídeo pode operar sempre na capacidade máxima da conexão;
  • pipelining - esse método de organização de dados permite à placa de vídeo receber e responder a pacotes múltiplos de dados em uma única solicitação. Eis um exemplo simplificado disso:
      Com a AGP, a placa de vídeo pode receber uma solicitação, com todas as informações necessárias para traçar uma imagem particular e enviá-la de uma vez. Com a PCI, a placa de vídeo receberia a informação na altura da imagem e esperaria... Depois, a extensão da imagem, e esperaria... Depois, a largura da imagem, e esperaria... Combinaria os dados e só então a enviaria.
  • endereçamento de banda lateral - como uma carta, todas as solicitações e informações enviadas de uma parte para outra de seu computador devem ter um endereço contendo "Para" e "De". O problema com a PCI é que as informações "Para" e "De" são enviadas juntamente com os dados de trabalho em um pacote. Isso seria a mesma coisa que colocar um cartão com o endereço dentro do envelope quando você enviar uma carta para um amigo: assim, o correio teria que abrir o envelope para ver o endereço e saber para onde enviá-la. Isso toma tempo do correio. Além disso, o próprio cartão de endereço ocupa espaço no envelope, reduzindo a quantidade total de coisas que você pode enviar para seu amigo. Com o endereçamento de banda lateral, a AGP emite oito linhas adicionais no pacote de dados apenas para o endereçamento. Isso coloca o endereço do lado de fora do envelope, por assim dizer, liberando a largura de banda totalmente do caminho dos dados usados para a transferência de informação de ida e volta. Assim, ficam livres os recursos do sistema que antes eram usados para abrir o pacote e ler os endereços.


    PCI e o gasto de RAM

    Velocidade não é a única área em que a AGP melhorou sua antecessora. Ela também dá forma ao processo de traçar os gráficos usando a memória de sistema com mais eficácia. Qualquer elemento gráfico tridimensional que você vê em seu computador é feito por um mapa de textura (em inglês), que são como "papéis de embrulho". Seu computador pega uma imagem plana 2-D e a "embrulha" com um conjunto de parâmetros ditados pela placa de vídeo para criar a aparência de uma imagem 3-D. Pense nisso como sendo o fato de embrulhar uma caixa invisível com um papel para mostrar o tamanho da caixa. É importante entender isso porque a criação e o armazenamento dos mapas de textura são as principais tarefas que consomem a memória, tanto da placa de vídeo como do sistema como um todo.
    Com uma placa de vídeo PCI, todo mapa de textura tem de ser armazenado duas vezes. Primeiro, o mapa de textura é carregado a partir do disco rígido para um sistema de memória (RAM), até que precise ser usado. Uma vez necessário, é puxado da memória e enviado para a CPU para ser processado. Quando processado, ele é enviado pelo barramento PCI para a placa de vídeo, onde é armazenado novamente no buffer de quadro (em inglês) da placa (conhecido como framebuffer). O framebuffer é onde a placa de vídeo mantém a imagem armazenada, uma vez que ela é desenhada para que possa ser atualizada sempre que necessário. Todo esse processo de armazenamento e envio entre o sistema e a placa é bem oneroso para o desempenho global do computador.

    AGP e a economia de RAM

    A AGP melhora o processo de armazenamento dos mapas de textura permitindo ao sistema operacional designar a RAM para uso da placa de vídeo quando necessário. Esse tipo de memória é chamado de memória AGP ou memória de vídeo não local. O uso de uma RAM maior e mais rápida utilizada pelo sistema operacional para armazenar mapas de textura reduz o número de mapas que precisam ser armazenados na memória da placa de vídeo. Além disso, o tamanho do mapa de textura que seu computador é capaz de processar não é mais limitado à quantidade de RAM da placa de vídeo. Outra maneira como a AGP economiza RAM é armazenando os mapas de textura apenas uma vez. Isso é feito com um pequeno artifício. Esse artifício toma a forma de um circuito de apoio da placa-mãe chamado de Tabela de Remapeamento de Endereço Gráfico (GART). A GART pega a proporção da memória do sistema que a AGP toma emprestada para armazenar os mapas de textura para a placa de vídeo e reendereça-a. Os novos endereços fornecidos pela GART fazem a CPU pensar que o mapa de textura está sendo armazenado no buffer da placa. A GART pode estar colocando bits e partes do mapa por toda a RAM do sistema, mas quando a CPU precisa dela, no que diz respeito ao mapa de textura, ela está no lugar correto.



    A AGP atualmente

    A AGP e as placas de vídeo AGP são padrões atuais para o processamento gráfico nos computadores. Como todo hardware, a tecnologia e as especificações estão em constante melhoria. Para aprender sobre os padrões atuais da AGP clique nos links abaixo. Especificações:


Nenhum comentário:

Postar um comentário