A arquitetura K8

Além do x86-64, a arquitetura K8, compartilhada por todos os processadores de 64 bits da AMD, inclui um circuito de branch-prediction sensivelmente melhorado, com um global history counter 4 vezes maior que o do Athlon K7.

O global history counter é a área reservada a armazenar os resultados de operações processadas anteriormente. Estas informações são utilizadas como base de consulta pelo circuito de branch prediction na hora de decidir qual caminho deve tomar dentro de uma operação de tomada de decisão.

Outro recurso, possivelmente o mais famoso, é o controlador de memória integrado, chamado de IMC (Integrated Memory Controller). Tradicionalmente, o controlador de memória faz parte do chipset e opera à mesma freqüência que ele. O processador se comunica com o chipset através do Front Side Bus (o barramento principal) e ele (o FSB) é utilizado para todo o tráfego, incluindo a leitura e gravação de dados na memória

Ao mover o controlador de memória para dentro do processador, a AMD foi capaz de reduzir sensivelmente o tempo de latência nos acessos à memória, aumentando assim o desempenho do processador em alguns pontos. Nos processadores baseados na arquitetura K8, o processador é ligado diretamente às trilhas da placa-mãe que levam aos pentes de memória, e a comunicação com o chipset é feita através de um barramento HyperTransport. No caso de sistemas com dois processadores em SMP (como no caso de servidores equipados com o Opteron), barramentos HyperTransport adicionais fazem a ligação entre os processadores.

O Athlon 64 não utiliza mais um barramento frontal, como nos processadores antigos, mas sim um link HyperTransport que liga o processador ao chipset. Existe um clock de referência de 200 MHz, que substitui o FSB, gerando a freqüência do processador, da memória e do próprio barramento HyperTransport. Tecnicamente, seria incorreto dizer que um Athlon 64 ou Sempron utiliza “200 MHz de FSB”, já que ele não possui FSB e os 200 MHz são apenas a freqüência de referência, mas para manter as coisas simples, vou continuar usando o termo “FSB” para descrever o clock da freqüência de referência daqui em diante.

O HyperTransport é um barramento ponto a ponto, muito similar ao PCI Express sob diversos pontos de vista. A principal idéia é criar um barramento bastante rápido e de baixa latência utilizando poucas trilhas de dados.

Um link HyperTransport é sempre bidirecional, composto por dois links com de 2 a 32 bits de largura cada. Os dados são transmitidos duas vezes por ciclo (como nas memórias DDR) e a freqüência de operação pode ser de 200 MHz a 2.6 GHz. Só para efeito de comparação, o barramento PCI opera a apenas 33 MHz, com apenas uma transferência por ciclo; isso faz com que a velocidade de transmissão seja muito baixa para os padrões atuais (apenas 133 MB/s), mesmo com o barramento transmitindo 32 bits de dados por ciclo.

O padrão HyperTransport é desenvolvido por um conjunto de fabricantes, por isso é utilizado em diversos dispositivos, indo do Xbox da Microsoft a roteadores da Cisco. Os chipsets nForce, para placas soquete A, por exemplo, já utilizavam o HyperTransport para interligar a ponte norte e a ponte sul do chipset bem antes do Athlon 64 ser lançado.

No caso dos processadores AMD64, são utilizados links com 16 bits de largura em cada direção (16 pares), operando a 800 MHz (nas placas soquete 754) ou 1.0 GHz (nas placas soquete 939, 940 e AM2). Como são realizadas duas transferências por ciclo, podemos dizer também que a freqüência “efetiva” é de (respectivamente) 1.6 GHz e 2.0 GHz

As placas AM3, cujo lançamento está previsto para 2008, trarão um barramento atualizado, capaz de operar a 2.0 GHz (4.0 GHz efetivos). Esta expansão não traz ganhos diretos, já que apenas aumenta a banda disponível para a comunicação entre o processador e o chipset, sem influenciar na velocidade dos demais componentes. Ela serve apenas para evitar potenciais gargalos no futuro, conforme novos dispositivos e barramentos forem sendo incorporados.

Com 16 bits de largura e operando a 800 MHz, com duas transferências por ciclo, temos um total de 6.4 GB/s de transferência de dados (3.2 GB/s em cada direção), o que é uma marca espantosa. Ao aumentar a freqüência para 1.0 GHz, a taxa de transmissão sobe para 8 GB/s e, ao atingir 2.0 GHz, a taxa sobe para nada menos do que 16 GB/s.

Apesar da brutal taxa de transferência, o link HyperTransport é composto por um número relativamente pequeno de trilhas na placa-mãe. Em muitas placas, é possível ver claramente as trilhas do HyperTransport ligando o processador ao chipset:


Trilhas referentes ao barramento HyperTransport interligando o processador
e o chipset em uma placa da EPOX

Continuando, temos a questão do gerenciamento de energia. Com exceção do Sempron 2800+, todos os processadores da linha Athlon 64 suportam o Cool’n’Quiet, um sistema de gerenciamento de energia bastante eficiente que, assim como o SpeedStep da Intel e o PowerNow usado pela AMD nos processadores mobile, é capaz de ajustar a freqüência de operação do processador de forma dinâmica de acordo com o uso. A principal diferença entre o Cool’n’Quiet e o PowerNow é que ele é otimizado para uso em desktops, de forma que utiliza um sistema menos agressivo de gerenciamento, que tem como prioridade não prejudicar o desempenho.

Um Athlon 64 3500+, por exemplo, pode trabalhar a 2.2 GHz (a freqüência normal), 2.0, 1.8 ou 1.0 GHz, de acordo com os aplicativos em uso. Operando na freqüência mínima, a tensão do processador cai de 1.4 para 1.1V, gerando uma economia adicional. No final, um Athlon 64, baseado no core Venice, ou mais atual, chega a consumir menos de 10 watts quando ocioso, operando na freqüência e tensão mínimas.

Como a freqüência do processador muda muito rapidamente, de acordo com a demanda (segundo a AMD, até 30 vezes por segundo), você mal percebe a redução de clock. Demora exatamente o mesmo tempo para ripar um DVD, renderizar uma imagem 3D, aplicar um filtro no Photoshop, pois logo que o processador percebe o aumento na demanda de processamento, passa a operar na freqüência máxima automaticamente.

As áreas em que você acaba percebendo alguma perda são justamente nas operações mais simples e rápidas, como chavear entre as janelas e abrir menus dentro dos programas. Estas operações são muito rápidas para disparar o aumento na freqüência, de forma que, se prestar atenção, você realmente percebe alguma diferença, embora muito pouco.

De uma forma geral, o Cool’n’Quiet é um recurso muito interessante, pois aumenta a vida útil do equipamento (mesmo componentes como o HD e a placa-mãe duram mais ao operar numa temperatura mais baixa, sem falar do cooler, que acumula menos poeira e assim precisa de menos manutenção) e gera economia na conta de luz, em troca de uma redução de desempenho muito pequena.

Com o passar dos meses, a economia pode somar um valor significativo. Em um PC com um Athlon 64 3500+ que ficasse ligado continuamente, teríamos uma economia de aproximadamente 30 kW por mês. Em dois anos, isso representa uma economia de mais de R$ 350 na conta de luz, suficiente para pagar parte do próximo upgrade. 🙂

Para utilizar o Cool’n’Quiet, basta manter o recurso ativado no setup e instalar os drivers da placa. No caso do Linux, o suporte é oferecido através do módulo “powernow-k8” do Kernel e o serviço “powernowd” (instalado através do pacote de mesmo nome). Com os dois componentes disponíveis, a configuração é bem simples, basta carregar o módulo e ativar o serviço, como em:

# modprobe powernow-k8
# /etc/init.d/powernowd start

Você pode acompanhar a oscilação na freqüência do processador utilizando um monitor de sistema qualquer. No Linux, você pode utilizar também o comando “cat /proc/cpuinfo”.

Com o Athlon 64, a AMD voltou a utilizar o heat spreader sobre o núcleo do processador, assim como na época do K6-2. Devido a isso, não é mais possível diferenciar rapidamente as diferentes famílias do Athlon 64 apenas olhando para o tamanho e a posição do núcleo do processador, como na época do Athlon XP:


Athlon 64 e Athlon XP

Assim como o clock do processador, a técnica de produção e a quantidade de cache, o controlador de memória é também usado como um diferencial entre as diferentes famílias de processadores.

Tudo começou com o Opteron, o primeiro processador baseado na arquitetura Hammer, destinado a servidores. Ele utilizava um controlador de memória dual-channel e oferecia suporte apenas a memórias registered, módulos especiais que incluem um pequeno buffer que estabiliza o sinal, permitindo que sejam utilizados mais módulos. Os módulos registered são mais caros e mais lentos que os módulos DDR tradicionais que utilizamos em micros domésticos, mas eles são uma necessidade nos servidores, já que eles precisam utilizar um número muito maior de módulos de memória. Devido ao brutal número de contatos utilizados pelo controlador de memória, o soquete utilizado pelo Opteron tinha nada menos do que 940 pinos, o que na época era inédito.

A partir do momento que passou a ser capaz de produzir um volume maior de processadores, a AMD lançou os modelos destinados ao mercado doméstico, que incluem as versões iniciais do Athlon 64 e Athlon 64 FX.

O Athlon 64 FX era uma variação do Opteron, que vinha com 1 MB de cache L2 e mantinha o controlador de memória dual-channel. A grande mudança em relação ao Opteron é que ele passou a oferecer suporte a memórias DDR comuns, o que barateou muito o custo dos micros. Para diferenciar as placas para o Opteron e para o Athlon 64 FX, a AMD criou o soquete 939, que era virtualmente idêntico ao soquete 940 do Opteron. A posição de alguns dos pinos foi alterada apenas para indicar a mudança no tipo de memória suportado e impedir que o Opteron fosse usado nas placas para o Athlon 64 FX e vice-versa. Mais tarde, o soquete 939 foi usado também pelas versões iniciais do Athlon X2.

Em seguida temos as versões “domésticas” do Athlon 64, que vinham com apenas 512 KB de cache L2 e utilizavam um controlador de memória simplificado, sem suporte a dual-channel. Devido ao menor número de contatos utilizados pelo controlador de memória, eles passaram a utilizar o soquete 754.


Athlon 64 FX (soquete 939) e Athlon 64 soquete 754 (à direita)


Soquete 939 (à esquerda) e soquete 754

Considerando dois processadores do mesmo clock, a diferença de desempenho entre um Athlon 64 “normal” e um Athlon 64 FX não é tão grande quanto se poderia imaginar. O controlador de memória dual-channel e o maior cache ajudam em alguns aplicativos, mas a diferença não era tão grande a ponto de justificar pagar US$ 1000 pelo processador, como chegaram a custar algumas versões do FX.

Se você se assustou com o preço, vale lembrar que as primeiras versões do Athlon 64 FX competiam com o Pentium 4 Extreme Edition; ambos eram processadores “de vitrine”, destinados ao público entusiasta e vendidos a preços exorbitantes. Mais tarde, foram lançadas versões do Athlon 64 soquete 754 com 1 MB de cache L2, que praticamente anularam as vantagens do FX.

Finalmente, temos os processadores recentes, que utilizam o soquete AM2. Eles trazem um controlador de memória remodelado, com suporte a memórias DDR2. Apesar de também possuir 940 contatos, o soquete AM2 é incompatível com o soquete 940 utilizado pelo Opteron, além de ser incompatível com todos os processadores anteriores.

Os módulos de memória DDR2 utilizam 240 contatos, contra apenas 184 contatos dos módulos DDR. Com o controlador de memória integrado, os contatos vão diretamente para o processador, através de pinos no soquete. A AMD conseguiu fazer a migração das memórias DDR para as DDR2 sem aumentar o número de pinos do soquete remanejando uma série de contatos sem uso no processador.

Apesar do ganho de desempenho não ser tão grande quanto poderia parecer à primeira vista, as memórias DDR2 oferecem a vantagem de trabalharem utilizando uma tensão mais baixa: apenas 1.8v, contra 2.5v das memórias DDR. Isto faz com que tanto os módulos de memória quanto o próprio controlador de memória integrado ao processador consumam menos energia (e dissipem menos calor), o que ajuda na questão da refrigeração.

Atualmente as memórias DDR2 são produzidas em maior quantidade e são consequentemente mais baratas que as DDR, de forma que a migração para o AM2 foi um passo natural. As placas soquete 754 ficaram inicialmente relegadas à posição de plataforma de baixo custo e eventualmente foram completamente substituídas. A partir da segunda metade de 2006, até mesmo os Semprons passaram a ser fabricados em versão AM2.

O AM2 trouxe também um novo suporte de retenção do cooler (a “gaiola” em volta do processador). Ele é preso à placa-mãe por quatro parafusos (em vez de apenas dois), o que tornou o mecanismo de retenção mais firme. O problema é que ele passou a usar um formato octagonal (ao invés do formato quadrado usado no soquete 754 e 939), o que quebrou a compatibilidade com parte dos coolers antigos.


Cooler NPH para processadores AM2

Visualmente, o soquete AM2 é praticamente idêntico ao soquete 939, mudando apenas a posição de alguns dos pinos. O contato adicional pode ser visto no canto inferior direito do soquete:


Soquete AM2, com o pino adicional em destaque

A principal desvantagem de utilizar o controlador de memória integrado é que passou a ser necessário lançar uma versão atualizada do processador e criar um novo soquete cada vez que é necessário fazer alterações no controlador de memória, ou oferecer suporte a uma nova tecnologia, como no caso das memórias DDR2.

A partir do final de 2007, serão lançadas placas e processadores baseados no soquete AM2+, uma pequena atualização do AM2, que oferecerá um barramento HyperTransport atualizado, operando a 2.0 GHz (o dobro da freqüência do HyperTransport utilizado no AM2) e oferecerão suporte ao sistema avançado de gerenciamento de energia utilizado no Phenom. Este novo sistema de gerenciamento suportará o ajuste independente das freqüências de operação do processador e do controlador de memória, o que resultará em redução do consumo e dissipação térmica do processador.

Estas são inovações técnicas, que não possuem um impacto direto sobre o desempenho. Os processadores AM2+ poderão ser usados nas placas AM2 atuais e vice-versa, mas neste caso os novos recursos permanecem desativados.

A partir de 2008 a AMD passará a utilizar o soquete AM3 que, como o nome sugere, trará compatibilidade com as memórias DDR3. O soquete AM3 manterá a mesma pinagem do AM2 e será eletricamente compatível com ele.

Os processadores AM3 terão um controlador de memória compatível tanto com memórias DDR3 quanto com memórias DDR2 e, graças a isso, poderão ser usados em placas AM2 compatíveis (neste caso limitados ao uso de memórias DDR2, por limitações da placa). Infelizmente a compatibilidade será de mão única, sem a possibilidade de utilizar os processadores AM2 atuais em conjunto com as placas AM3, já que eles não oferecem suporte às memórias DDR3.

Com o lançamento do AM2+ e do AM3, teremos (desconsiderando o soquete F, utilizado pelo Opteron e Quad FX) um total de 6 padrões diferentes para os processadores AMD de 64 bits, exigindo atenção na hora de comprar ou fazer upgrade.

Por outro lado, a vida dos fabricantes de chipsets passou a ser muito mais simples, já que não precisam mais se preocupar com o controlador de memória. O uso dos diferentes soquetes não demanda mudanças no chipset, já que mudam apenas o processador e o encaixe (e trilhas) na placa-mãe.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X