<a href="http://www.bhsite.com.br">hospedagem</a> DE <a href="http://www.bhsite.com.br">sites</a> REGISTRO DE DOMINIO GRATIS

Via Boleto Bancário
Login:
Senha:
Hospedagem de Sites
- Estrutura
- Contratar
- Planos
- Revenda
Registro de Domínios
- Registre seu Domínio
Suporte
- Help Desk
- Atendimento via E-mail
Atendimento Telefônico
Atendimento Telefônico

Suporte BHSite (Hospedagem de Sites)
 


Manual de Hardware Completo

 

 

Página 23


Decodificaor 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 ou atribuição) 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.

<a href=hospedagem de sites" />

 

O Pentium III processa cada instrução separadamente, e não em pares com o Athlon. Cada instrução é então chamada de “uops”.

Temos um total de três decodificadores de instruções: 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.

Cooprocessador Aritmétrico

O grande problema dos processadores K6 é o desempenho do coprocessador aritmético, disso você já deve estar careca de saber. A grande vantagem do coprocessador aritmético utilizado nos processadores Intel desde o Pentium é o recurso de Pipeline, que combina várias unidades de execução no mesmo processador, permitindo que sejam processadas várias instruções por ciclo.

Toda a família K6 compartilha o mesmo projeto de coprocessador aritmético, equipado com uma única unidade de execução. O fato de existir uma única unidade, elimina a necessidade dos circuitos que ordenam as instruções, o que simplifica bastante o projeto do processador, mas tem um grande custo em termos de desempenho. Para tentar compensar, a AMD projetou esta unidade de execução solitária com muito cuidado, conseguindo que ela tivesse uma latência mais baixa. Isto se traduz num ganho considerável de desempenho, que torna a unidade de execução bem mais rápida do que cada um das unidades de execução do Pentium III. O problema é que o Pentium III tem três unidades de execução de ponto flutuante, ou seja, ganha na quantidade.

Vendo por este ângulo, é até surpreendente que um K6-2 fique apenas 20 ou 30% atrás de um Pentium II da mesma frequência na maioria dos jogos e chegue até mesmo a quase empatar em alguns (graças às instruções 3D-Now!). Mas, felizmente isso mudou no Athlon, que também passou a adotar um coprocessador aritmético com três unidades de execução, superior ao do Pentium III sob vários aspectos.

Tanto no Pentium III quanto no Athlon, o coprocessador aritmético é composto por três unidades de execução, chamadas de FADD, FMUL e FSTORE. “ADD” é a abreviação de adição, “MUL” é a abreviação de multiplicação, e “STORE” significa guardar. Pelos nomes já da para ter uma boa idéia da função de cada uma das unidades de execução, a FADD executa operações de soma, envolvendo números de ponto flutuante, a FMUL executa operações de multiplicação, divisão, instruções MMX e instruções 3D-NOW!, enquanto o FSTORE executa operações de leitura/gravação e mais algumas operações diversas. Abaixo está uma foto que mostra a distribuição física dos componentes do coprocessador no Athlon:

<a href=hospedagem de sites" />

Tanto no Pentium III, quanto no Athlon, as três unidades de execução de ponto flutuante possuem Pipeline e como são em mesmo número, executam as mesmas funções. Seriam então equivalentes, mas apenas a princípio.

No Athlon é possível executar simultaneamente operações de soma, operações de multiplicação e operações de leitura/gravação, pois cada unidade é completamente independente das demais. Isto significa que em situações ideais, o coprocessador aritmético do Athlon é capaz de processar três instruções por ciclo.

Para economizar transístores, os projetistas da Intel optaram por compartilhar as mesmas sub-unidades de execução entre as unidades de soma e multiplicação do Pentium III. Isto significa que apenas uma das duas unidades pode funcionar de cada vez: ou é feita uma multiplicação e mais uma operação de leitura/gravação, ou então é feita uma soma e mais uma operação de leitura/gravação, nunca as três operações ao mesmo tempo. Ao contrário do Athlon, o coprocessador aritmético do Pentium III é capaz de executar apenas duas instruções por ciclo, em condições ideais.

O motivo da economia é simples: as operações de multiplicação são na verdade sequências de várias operações de soma. Como as duas unidades possuem o mesmo núcleo básico (que faz as somas), é possível criar um projeto onde tanto a unidade de soma quanto a de multiplicação utilizem o mesmo núcleo. Com isso, é possível economizar um grande número de transístores, sacrificando também parte do desempenho, já que apenas uma das unidades poderá usar o núcleo de soma de cada vez.

Podemos usar como analogia uma fábrica de automóveis. Imagine que na mesma fábrica existam duas linhas de produção, uma de carros de passeio e outra de caminhões, onde cada linha de produção pode entregar um veículo por hora trabalhando a pleno vapor. Imagine também que esta fábrica está passando por um processo de redução de custos e por isso demitiu metade dos funcionários.

Os funcionários que ficaram, foram treinados para trabalhar tanto na linha de produção de carros, quanto na linha de produção de caminhões, mas, naturalmente, um mesmo funcionário não pode estar nas duas ao mesmo tempo. Ou se produz um carro, ou se produz um caminhão.

Na fábrica do Athlon foram mantidos todos os funcionários, por isso é possível manter ambas as linhas funcionando ao mesmo tempo.

Na prática, o coprocessador do Athlon jamais chega a ser duas vezes mais rápido que o coprocessador do Pentium III, já que é possível utilizar apenas uma instrução de leitura/gravação por ciclo e porque nem sempre é possível agendar uma instrução de soma e outra de multiplicação num mesmo ciclo, pois a demanda por cada tipo de instrução depende do aplicativo que estiver sendo executado. De qualquer maneira, o coprocessador do Athlon sempre será capaz de trabalhar de forma mais eficiente.

Vale lembrar que apesar desta superioridade técnica, os primeiros modelos do Athlon não tinham suporte às instruções SSE e ainda por cima eram equipados com cache L2 operando à uma fração da frequência do processador, como no Pentium II. Somadas, estas duas desvantagens anulavam a superioridade do coprocessador, fazendo com que os Athlons K7 e K75 continuassem sendo mais lentos que os Pentium III Coppermine em vários aplicativos.

A situação mudou com o Athlon Thunderbird, equipado com cache L2 trabalhando na mesma frequência do processador e, mais recentemente, com os Athlons baseados no core Palomino, que além de conservarem o cache mais rápido, trazem suporte parcial às instruções SSE do Pentium III.

Atualmente, o concorrente do Athlon não é mais o Pentium III, mas sim o Pentium 4, que ainda é inferior a um Athlon da mesma frequência na maioria dos aplicativos, mas em troca é capaz de atingir frequências de operação muito mais altas.

O Barramento EV6

Todos os componentes do micro, incluindo o barramento PCI, AGP, memória RAM, etc. estão conectados ao chipset, que funciona como uma espécie de intermediário entre o processador e os demais componentes. Se for preciso acessar algum dado na memória RAM por exemplo, o processador irá entrar em contato com o chipset, e este irá buscar o dado na memória e devolvê-lo ao processador.

No Pentium III, o barramento de comunicação entre o processador e o chipset se chama GTL+, e opera à frequência da placa mãe, a 100 ou 133 MHz, dependendo do modelo do processador.

Como o barramento GLT+ é uma arquitetura proprietária da Intel, a AMD optou por licenciar o barramento EV6 desenvolvido pela Alpha Digital. O EV6 também trabalha na mesma frequência da placa mãe (que atualmente também pode ser de 100 ou 133, dependendo do modelo de Athlon utilizado) mas permite duas transferências de dados por ciclo, o que na prática resulta em uma performance equivalente à de um barramento operando a 200 ou 266 MHz.

As duas transferências de dados por ciclo do bus EV6 permitem que os processadores Athlon e Duron tirem proveito das memórias DDR, que também realizam duas transferências por ciclo.

Atualmente o Athlon também suporta multiprocessamento, e é justamente neste ramo que o Bus EV6 mostra para que veio.

Imagine um sistema onde temos dois processadores Pentium III trabalhando em SMP. Os 4 processadores estão espetados na mesma placa mãe e consequentemente conectados ao mesmo chipset. O bus GTL+ é um barramento compartilhado, isto significa que o mesmo barramento de 100 ou 133 MHz será compartilhado pelos dois processadores. Isto significa que apenas um dos quatro processadores poderá usar o barramento de cada vez. Se um precisar acessar um dado na memória e outro precisar enviar dados para a placa de vídeo, o segundo terá que esperar o primeiro terminar sua tarefa antes de poder iniciar a sua. Isto causa uma grande perda de tempo e diminui o desempenho do sistema conforme mais processadores vão sendo adicionados, uma possibilidade permitida pelo Pentium III Xeon.

O EV6 por sua vez, é um barramento ponto a ponto. Nele, cada processador tem seu barramento exclusivo de comunicação com o chipset. Isto permite que em um sistema com vários processadores Athlon trabalhando em paralelo, cada um possa acessar os demais componentes do micro no momento em que precisar, sem ter que esperar a sua vez. Outra vantagem é que usando comunicação ponto a ponto entre os processadores e o chipset o nível de ruído eletromagnético passa a ser mais baixo, mais uma vantagem do ponto de vista da performance.

 

 



HOSPEDAGEM DE SITES E REGISTRO DE DOMÍNIO GRATIS É NA BHSITE.COM.BR