Data: |
28.06.2000 |
|
Tipo: |
Processadores |
Fabricante: |
AMD |
Por: |
Carlos E. Morimoto |
|
|
Decodificador de instruções
A primeira grande diferença entre o Athlon e o Pentium III reside na maneira como as instruções são decodificadas e processadas. Existem basicamente dois tipos de instruções simples que o processador pode executar: operações aritméticas (soma por exemplo) e instruções de leitura ou gravação. Na maioria das vezes, uma instrução aritmética vem junto com uma operação de leitura ou gravação, já que depois de executar a operação será preciso gravar o resultado em algum lugar.
No Athlon, as instruções são decodificadas na forma de pares. Cada par, chamado "macro-ops" pode ter uma instrução aritmética e uma instrução de leitura ou gravação. Caso a opção de leitura ou gravação não seja necessária, o espaço reservado a ela ficará vago. O Athlon tem dois decodificadores de instruções. O primeiro decodificador chamado "Hardware decoder", se encarrega de converter todas as instruções simples, enquanto o segundo decodificador, chamado de "Microcode decoder" tem a função de converter as instruções mais complexas. Cada um dos dois decodificadores pode enviar 3 pares de instruções, ou três macro-ops por ciclo para a unidade de controle, onde as instruções serão ordenadas e despachadas para as unidades de execução. Como as unidades de execução do Athlon processam três instruções por ciclo, este arranjo assegura que em qualquer caso, mesmo caso entrem apenas instruções simples, ou só instruções complexas, o processador terá pelo menos três instruções por ciclo para processar.
O Pentium III, por sua vez, internamente processa cada instrução separadamente, e não em pares com o Athlon. No Pentium III cada instrução é chamada de "uops".
O Pentium III possui três decodificadores de instruções: temos dois decodificadores simples, que cuidam das instruções simples, e decodificam apenas uma instrução cada, e um decodificador mais complexo que cuida das instruções x86 mais complexas. Este segundo decodificador é capaz de decodificar até 4 instruções por ciclo.
A princípio, parece um empate técnico, já que somados os três decodificadores, temos 6 instruções por ciclo, como no Athlon. Na prática porém, quando o decodificador de instruções complexas está ocupado, os dois decodificadores simples param. Isto faz com que em muitas situações os decodificadores não sejam capazes de produzir todas as instruções que as unidades de execução podem processar, fazendo com que fiquem ociosas durante parte do tempo, o que naturalmente, significa perda de performance.
:. Coprocessador Aritimético »
|