# AMD K10

A Família 10h AMD, também chamada K10, é uma micro-arquitetura de microprocessadores desenvolvida pela AMD e baseada na microarquitetura K8.

## Histórico

Antes que AMD publicasse oficialmente este nome pelas vozes Giuseppe Amato e Philip G. Eisler (respectivamente director técnico das Vendas e marketing para a Europa e Vice-Presidente da divisão de chipsets da AMD) em Fevereiro de 2007, a imprensa especializada atribuia logicamente o nome K8L à nova arquitectura. The Inquirer pensava enquanto que o "L” referia-se ao número romano que significa 50, ele tratar-se-ia então do K8.50, seja uma versão a meio caminho entre a arquitetura K8 e K10. Aparece na entrevista dos responsáveis AMD que o K8L era uma denominação para processadores de arquitetura K8 para PC portátil em 65 nm.

## Controlador de memória

Os processadores da família K10 da mesma maneira que os seus antecessores K8 possuirão controlador de memória integrado. Esta característica foi em parte responsável do sucesso do Athlon 64 reduzindo consideravelmente as latências para o acesso à memória RAM. Mas aquando da introdução do DDR2, a vantagem do Athlon 64 atenuou-se porque as latências explodiram e o aumento de frequência pôde apenas compensar esta queda de desempenho. Assim o Athlon 64 sobre socket AM2 são justo também eficiente que o Athlon 64 sobre socket 939. As latências que têm diminuído seriamente, não é mais problema com memórias DDR2. O K10 será feito para suportar do DDR2 1066MHz em padrão. Os servidores explorarão o DDR2 800 inicialmente. As próximas revisões da microarquitetura (Deneb FX, Deneb, Propus, Regor e Sargas) previstas para o ano 2008 ou mesmo 2009, serão voltadas para a memória DDR3 e o 45 nm que não é ainda padrão de mercado. Serão equipados de 4 ou 6 megabytes de cache L3.

## Especificações

As características completas do K10 foram implementadas inicialmente no núcleo Barcelona. As versões desktop serão sem dúvida diferentes dado que Barcelona é feito para o mercado de servidores.
Características gerais.
* Um controlador de memória DDR2 integrado dividido em dois canais independentes. Tanto memórias DDR 2 são suportadas (soquet AM2 e AM2+)quanto memórias DDR 3 (soquet am3).
* Frequências de funcionamento que podem chegar a 3.4 GHz.
* Gestão do hypertransport 3.0 para pistas para além de 3 GHz (sobre socket AM2+, sobre socket AM2 a função não será explorada).
Cache.
* 64 KB de cache L1 de dado por núcleo (idêntico à do K8)
* 64 KB de cache L1 instruções por núcleo (idêntico à do K8)
* 512 KB ou 1024KB de de cache L2 por núcleo (idêntico à do K8, exceto quanto estiver disponível 1024KB de memória cache);
* 2MB, 4MB ou 6MB de cache L3 compartilhado.
* 1 quad-core dito “nativo” produzido densamente (não se trata da junção de dois circuitos binucleares).
* Composto de 11 camadas de gravura (contra 9 para o K8 e 8 para o core 2 duo. Isso torna o método de fabricação ligeiramente mais o complexo mas não altera nada para o utilizador.
* 463 milhões de transistores (quatro núcleos, 2 MB cache L3)
* 60 milhões de transistores usados nos caches, ou seja 30% a mais em relação ao K8.
* Gestão de instrução de um comprimento de 128 bits (contra 64bits para o K8).
* Gestão paralela de 32 bytes por ciclo (ou seja o dobro em relação ao K8. Melhoria que poderia beneficiar outros tipos de operações como por exemplo sobre as totalidades).
* Dois carregamentos de instruções por ciclo desde o cache L1 (Número estável em relação o K8 mas por conseguinte duas vezes mais dados encarregados por ciclo devido à passagem de instruções 2*64 à 2*128bits).
* Conversão alargada entre o cache L2 e o controlador memória à 128bits.
* Introdução das instruções SSE4A.
* Extensões das instruções SSE: EXTRQ/INSERTQ et MOVNTSD/MOVNTSS.
* Aparecimento das instruções LZCNT e POPCNT utilizadas em criptografia.
* Diminuição da latência sobre as divisões (ALU) (as consequências práticas deveriam ser mínimas)
* 4 FPU (unidades de cálculo de vírgula flutuante) (em vez de 2 para o K8. AMD fala de uma melhoria teórica de +300% dos desempenhos em frente do binuclear K8 (duas vezes os mais núcleos com duas vezes mais FPU, por conseguinte desempenhos quadruplicados), mas finalmente na prática a melhoria estaria de aproximadamente 50% perante a concorrência).
* Fastpath.
* As microinstruções CALORIA and RET-Imm são agora instruções que utilizam Fastpath (mais não microcodificadas).
* As deslocações entre registos das totalidades e registos instruções MOVs utilizam-lhes também o Fastpath.