Ir ao conteúdo
  • Cadastre-se

Por Dentro da Arquitetura AMD64


     211.365 visualizações    Processadores    4 comentários
Por Dentro da Arquitetura AMD64

Decodificador

Os processadores da AMD utilizam uma arquitetura híbrida CIS/RISC desde seus processadores de 5ª geração. A Intel começou usar esta idéia apenas a partir de seus processadores de 6ª geração. O processador deve aceitar instruções CISC, também conhecidas como instruções x86, já que todos os programas disponíveis hoje são escritos usando este tipo de instruções. Um processador genuinamente RISC não pode ser usado em PCs porque ele não seria capaz de rodar os programas que temos disponíveis hoje, como o Windows e Office.

Assim, a solução usada por todos os processadores disponíveis no mercado hoje tanto da Intel quanto os da AMD é usar um decodificador CISC/RISC. Internamente o processador executa instruções RISC, mas aceita apenas instruções CISC x86.

As instruções CISC x86 são conhecidas como “instruções” enquanto que as instruções RISC são conhecidas como “microinstruções”, “µops” ou “ROP”. A arquitetura AMD64 tem um terceiro tipo de instrução, chamada macro-op ou “MOP”, que é a instrução resultante do decodificador de instrução. A arquitetura AMD64 trata internamente com macro-ops. Quando a macro-ops chega no agendador apropriado, ela é então decodificada em microinstruções e então essas microinstruções são executadas. Se você prestar atenção, isto é parecido com o que a Intel está fazendo em sua nova arquitetura Core, com seu recurso de macro fusão. No entanto, enquanto que a macro fusão nos processadores baseados na arquitetura Core trabalham apenas com instruções condicionais, na arquitetura AMD64 o uso de macro-ops é feito para todas as instruções.

As microinstruções RISC, no entanto, não podem ser acessadas diretamente e não podemos criar programas baseados neste tipo de instruções e enviá-las para o decodificador. Além disso, cada processador utiliza suas próprias instruções RISC, que não são publicadas pelo fabricante do processador e são incompatíveis com microinstruções de outros processadores. Por exemplo, as microinstruções da arquitetura AMD64 são diferentes das microinstruções do Pentium 4, que são diferentes das microinstruções da arquitetura AMD K7.

Dependendo da complexidade da instrução x86, ela pode ser convertida em várias microinstruções RISC.

As instruções x86 da arquitetura AMD64 podem ser convertidas em macro-ops através de três caminhos diferentes: usando um decodificador simples, chamado “DirectPath Single”, que traduz uma instrução x86 comum em uma macro-op simples; usando também um decodificador simples, chamado “DirectPath Double”, que traduz uma instrução x86 em duas macro-ops; ou usando um decodificador complexo, chamado “DirectPath Vector”, que traduz uma instrução x86 complexa em várias macro-ops. O “DirectPath Vector” tem que chamar uma memória ROM (chamada microcódigo) para converter instruções x86.

Eis como o decodificador AMD64 funciona. No estágio Pega, também conhecido como “Procura”, o processador procura e separa as instruções presentes em seu buffer, decidindo qual caminho usar: DirectPath ou VectorPath.

Então vem o estágio Decodificador, que é quebrado em duas etapas, onde as instruções x86 são convertidas em macro-ops. Esta etapa é equivalente ao estágio “Alinhamento” (“Align”) encontrado nos processadores K7. A taxa de saída máxima do decodificador é de seis macro-ops por pulso de clock, três para o DirectPath e três para o VectorPath.

As macro-ops vão para o estágio Empacotamento (que é o equivalente à etapa “Decodificação 1” na arquitetura K7), onde as macro-ops são agrupadas, e então três macro-ops são enviadas para o próximo estágio, Empacotamento/Decodificação, que faz mais alguns procedimentos de decodificação e envia as macro-ops para a Unidade de Controle de Instruções, que é o nome dado pela AMD para o que a Intel chama de Buffer de Reordenamento (ROB).

Por Dentro da Arquitetura AMD64
Figura 13: Decodificador da arquitetura AMD64.


Artigos similares


Comentários de usuários

Respostas recomendadas

Só uma pequena duvida

todos os K8,K9,k10 sao da arquitetura AMD64

mas por exemplo, estava buscando apelidos para essas gerações (seriam mas microaquiteruas correto ?)

o K8 é hammer , e o K9 é barcelona ? e o K10 é agena ? isso ?

é que fiz uma junção do K7 com o Palomino e então conclui isso, (duvida antiga)...

conheco as microarquiteturas Intel, e geralmente é nome reservado mesmo, e a AMD no caso das microarchitetures geralmente usa o nome do 1 núcleo produzido ou estou enganado ?

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Só uma pequena duvida

todos os K8,K9,k10 são da arquitetura AMD64

mas por exemplo, estava buscando apelidos para essas gerações (seriam mas microaquiteruas correto ?)

o K8 é hammer , e o K9 é barcelona ? e o K10 é agena ? isso ?

é que fiz uma junção do K7 com o Palomino e então conclui isso, (duvida antiga)...

conheco as microarquiteturas Intel, e geralmente é nome reservado mesmo, e a AMD no caso das microarchitetures geralmente usa o nome do 1 núcleo produzido ou estou enganado ?

K9 não chegou ao mercado, foi direto do K8 pro K10 (barcelona) e o Shangai/Deneb é chamado "K10.5" (dentro dela ainda existem outros núcleos como Propus, Thuban..). O Agena é o codinome dos chips usados nos Phenom "1", Barcelona é o mesmo chip, mas usado nos Opterons da época (e que eu não sei os números)

Do Barcelona pra frente, temos tópicos bem extensos e completos de discussão sobre eles lá no setor de processadores, acho que já te vi em alguns deles. ^_^

Link para o comentário
Compartilhar em outros sites



Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...