sábado, 26 de abril de 2014

MULTIPLICADORES de clocks dos processadores

Porque os processadores precisam deles

Porque eles ainda continuam a existir

Atualmente muitos e muitos técnicos e usuários de PCs questionam pelo o que parece ser complicado para usuários comuns de PCs – na verdade é bem confuso também –, sobre o porquê dos chips MULTIPLICADORES ainda existirem nos processadores mais modernos.
E muitos técnicos e usuários de PCs costumam aumentar o valor do multiplicador do processador para se fazer o modo Overclock (exceder a freqüência de operação do processador). Ou seja, elevar a freqüência do clock original com a qual o processador opera de 2,933 GHz para 3 GHz, por exemplo, uma elevação de 67 MHz por segundo, em 1 minuto são 4020 MHz (pouco mais de 4 GHz).
Porém, em termos de mais velocidade para o PC todo, pouco se é obtido devido ao lento bus FSB (Front Side Bus – Barramento frontal superior). Num overclock real será necessário elevar a freqüência do clock do FSB, e também, elevar a voltagem com a qual o processador opera. Porém, já em termos de aquecimento do processador e instabilidade no sistema todo, se obtém muito.




Caso não existisse o lento FSB (Front Side Bus – Barramento frontal Superior) o processador não teria que usar os multiplicadores. Por causa do FSB, até a memória depende diretamente dos multiplicadores, como poderemos ver mais abaixo.

FSB, um mal necessário até hoje
Na verdade o bus FSB – embora opere de forma bem mais lenta que o processador – é um mal necessário até hoje, mesmo em placas-mãe que recebem modelos de processadores Tops, tais como os modelos i3, i5 e i7 da Intel, por exemplo. Isto porque todos os processadores operam com suas respectivas freqüências de clock no modo fixo e real, como o DualCore Intel Core 2 Duo E7500, por exemplo, que opera a 2933 MHz (2,933 GHz) – imagem acima.
Já todos os periféricos que são integrados diretamente nas placas-mãe – aqueles que se conectam externamente a placa-mãe, dispositivos USB, por exemplo – e que se comunicam com o processador via chipset North bridge (Ponte norte) e bus FSB, operam com suas respectivas freqüências de clocks. Ou seja, uns com freqüências mais baixas e outros com freqüências mais altas.
Além do bus (barramento) FSB, o sistema hardware depende diretamente de outros bus existentes na placa-mãe, na verdade o hardware opera com vários bus, principalmente a memória SDRAM e dispositivos PCI-E. Veja na imagem abaixo dois bus que tem igual importância para o sistema todo, são eles: “AB” (Adress Bus ou barramento de endereços) e “CB” (Controll Bus ou Barramento para controle).
Como exemplo, a memória SRAM (Static RAM ou Memória estática) que fica integrada diretamente no Core (ou Cores – Núcleos) dos processadores e que opera como memória Cache L1, L2, L3 (Level – Nivel) do processador. Esta memória SRAM, devido usar componentes “transistores” ela opera na mesma freqüência de clock real (e no modo fixo) do processador, que também usa milhões de “transistores”.
No caso do processador DualCore Intel Core 2 Duo E7500, que nos serve de por exemplo, a memória SRAM opera a 2933 MHz (2,933 GHz), portanto, velocidade real para o processador e velocidade real para a memória SRAM.




Já a memória SDRAM (Synchronous Dynamic Random Access Memory), que usa componentes “capacitores”, não pode ser integrada no núcleo do processador e opera com as suas duas próprias freqüências de clocks, que também são fixas. Porém, as SDRAM precisam operar com duas freqüências e clocks e pelo seguinte:
Como um exemplo, uma DDR3 opera com clock “real” a 667 MHz, e a 1333 MHz no modo DDR (Double Data Rate), e mesmo operando no modo DDR sua freqüência de clock é bem mais baixa (1866 MHz ou 1,866 GHz) que a do processador e da memória SRAM.
Assim também ocorre com outros periféricos instalados no computador e que se comunicam com o processador via bus FSB na placa-mãe, tais como:
Pacas gráficas, placas de rede, placas de som, placa de captura, dispositivos IDE/ATAPI (leitores/gravadores de CD/DVD), dispositivos IDE/PATA e IDE/SATA (HDs), dispositivos externos que são ligados nas portas (bus) USB, Fireware), paralelas, seriais, PS/2, exata, etc.
Neste contexto, para o processador (CPU – Central de processamento de dados) só existe o bus FSB e mais nada, portanto, ele só reconhece a freqüência de clock do FSB, e ainda, por meio dos chips MULTIPLICADORES.
Como comparação da limitação do bus FSB, é o mesmo que todos os usuários do serviço Speedy (da Telefônica, hoje Vivo) ligar (por meio de uma única linha telefônica – o bus FSB, aqui no caso) para Central de atendimentos (a CPU, aqui no caso) e uma única atendente (uma CPU SingleCore, com um único núcleo) atendê-los, e, ou então, mais de uma atendente (CPUs DuaisCores, com mais de um núcleo) atendê-los – aqui todos os atendimentos serão muito mais rápidos.
Nesta simples comparação (e na imagem acima e mais abaixo) podemos ver que o FSB é o grande limitador da velocidade do processador e do sistema todo, principalmente da memória e principalmente do HD. Isto porque, além de ele ser lento demais, o FSB é uma “ponte estreita” entre o processador e todo resto do sistema.
Na verdade o FSB não tem culpa disso – ele nem deveria existir –, os culpados mesmo são os próprios periféricos que operam com freqüências de clocks diferentes, uns para mais e outros para menos.
Outros limitadores da velocidade do computador como um todo é o chipset North bridge (Nb - Ponte norte) e o South bridge (Sb – ponte sul) na placa-mãe, como bem mostra a imagem abaixo.
Isto porque todos os controladores de códigos registradores dos respectivos periféricos integrados na placa-mãe ou que dependam dela – as portas USB traseiras, por exemplo – estão gravados neste chip Sb e Nb. E sem os códigos registradores os periféricos não são reconhecidos pelo sistema hardware e muito menos pelo sistema Windows.




OBS:
Com relação aos controladores de códigos registradores para a memória SDRAM, os mesmos atualmente encontram-se integrados no próprio núcleo (ou núcleos) dos processadores da AMD e da Intel.
Portanto, os acessos aos endereços na memória SDRAM que são feitos pelo processador para ler e gravar dados, agora se tornou muito mais rápido devido não mais a dependência do lento bus FSB e leituras dos códigos registradores no chipset Nb (veja a imagem abaixo e a marcação em azul).
Também os controladores de códigos registradores do bus PCI-Express (para gráficos) encontram-se integrados no próprio núcleo dos processadores da Intel e da AMD. Aliás, a AMD foi a primeira a integrar os controladores de códigos registradores de memória no núcleo dos processadores (imagem acima, direita), e a INTEL foi a primeira a integrar os controladores de códigos registradores do bus PCI-Express no núcleo dos processadores.

Porque dos MULTIPLICADORES

>Primeiro Exemplo<

Embora possa parecer complicado para muitos técnicos e principalmente para usuários comuns de PCs – na verdade é bem confuso também –, sobre o porquê dos chips MULTIPLICADORES ainda existirem nos processadores mais modernos.
Porém, se vermos pelo lado técnico do assunto não é tão complicado assim – e muito menos confuso também – quanto parece, e pelo seguinte:

1> Aqui, como um exemplo, temos um modelo de processador DualCore da Intel instalado numa placa-mãe da Gigabyte, modelo “GA-G31M-S2L”, portanto, vejamos o que o ótimo programa Everest nos revela:

CPU # 1 IntelPentium (R) DualCore CPU E5400 @ 2.70 GHZ, 2699 MHz

CPU # 1 IntelPentium (R) DualCore CPU E5400 @ 2.70 GHZ, 2700 MHz

*DualCore Intel Pentium E5400, 1800 MHz (9 x 200)

2> Esses parâmetros acima que, neste contexto seria algo como – vejamos um exemplo: Montei um PC DualCore e verificando as informações técnicas do respectivo processador, o Everest mostra o seguinte: em "Tipo de processador" ele indica:

DualCore Intel Pentium E5400, 1800 MHz (9x200)

3> Já na guia "Multi CPU" do Everest ele indica o seguinte:

CPU # 1 IntelPentium (R) DualCore CPU E5400 @ 2.70 GHZ, 2699 MHz

CPU # 1 IntelPentium (R) DualCore CPU E5400 @ 2.70 GHZ, 2700 MHz

4> Aqui está o “x” (ou os xs) da questão: Se cada núcleo opera a 2.70 GHz (2700 MHz), os dois núcleos somados – teoricamente falando – DEVERIAM operar a “5.40 GHz” (5400 MHz). Mas de onde vêm o “1.80 GHz, que é o resultado de “9 x 200=1800 MHz” – é bem simples de ser explicado:




5> A placa-mãe que montei o PC com o processador IntelPentium (R) DualCore CPU E5400 @ 2.70 GHZ, 2699 MHz é um modelo da empresa Gigabyte, a GA-G31M-S2L.

6> E segundo o Everest, este modelo de processador suporta multiplicadores de “6 a 13.5”. PORÉM, este modelo de placa-mãe (Gigabyte GA-G31M-S2L) só suporta multiplicador até “9” (travado neste valor).

7> Aqui está o segredo para APROVEITAR 100% do potencial dos núcleos dos DuaisCores, este modelo de placa-mãe suporta – no máximo – 200 MHz clock REAL do bus (barramento FSB-Front Side Bus), e 800 MHz clock EFETIVO no modo QuadR (4 x 200 MHz=).

8> Portanto, 9 x 200=1800, e isto quer dizer que o “FSB” está fazendo com que os NÚCLEOS desse modelo de processador operem a 1.80 GHz, e 1.80 x 2=3.60 GHz, sendo que eles deveriam operar a 2.70 GHz cada, e 2 x 2.70=5.40 GHz.

9> A placa-mãe “Gigabyte GA-G31M-S2L” também suporta – segundo instruções na caixa – FSB operando a 1600 (no MODO de “O.C., Over Clock); a 1333 e a 1066 MHz. Para que os “núcleos” do “IntelPentium (R) DualCore CPU E5400” operem a “2.70 GHz” reais cada e, os dois a “5.40 GHz”, a “Gigabyte modelo GA-G31M-S2L” teria que suportar o “FSB” operando com multiplicador em “13.5” (13.5 x 200=2.70 GHz), ou então, com o FSB operando a 300 MHz (9 x 300=2.70 GHz).

10> RESUMINDO TUDO: Além de escolher um modelo de PROCESSADOR DualCore de 3.0 GHz, por exemplo, deve-se também escolher uma modelo de PLACA-MÃE que permita que o processador use o máximo de sua potência em GHz. Ou seja, com FSB operando com mais clock ou suportar o limite máximo do multiplicador do processador.

11> E como podemos ver por esta imagem acima, o FSB (marcado pelo círculo em vermelho) é o grande limitador da velocidade do processador, da memória e principalmente do HD. Isto porque além de ele é lento demais, o FSB é uma ponte estreita entre o processador e todo resto do sistema.

OBS:
Observações IMPORTANTES: Muitos PCs ainda estão rodando com XPSP2 e para que o XP reconheça processadores DualCore e QuadCore, será preciso que o pacote de serviços SP3 esteja instalado. Já no caso dos processadores DualCore e QuadCore da AMD, além do SP3, será preciso instalar três arquivos: “AMD.exe”, “amdcpusetup.exe” e “WindowsXP-KB896256-v4-x86-PTB.exe” (caso o SP3 não esteja instalado).
E tem mais, será preciso adicionar essas entradas no Registro do XP:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager, criar a subchave Throttle clicando-se com o botão direito em Session Manager e escolhendo Novo>>Chave, e nomeie-a com o nome Throttle. Agora clique na chave Throttle que você acabou de criar, na parte da direita clique com o botão direito e escolha Novo>>Valor DWORD e nomeie-o para PerfEnablePackageIdle e insira o valor decimal 1 (imagem abaixo).




>Segundo Exemplo<

1> Aqui, como um segundo exemplo, temos um modelo de processador DualCore Intel Core 2 Duo E7500, 2933 MHz (11 x 267), da Intel, processador este instalado numa placa-mãe da empresa Asus, o modelo é “Asus P5G41T-M LX2/BR”. Portanto, vejamos o que o ótimo programa Everest nos revela neste segundo exemplo:

CPU #1 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz, 2935 MHz

CPU #2 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz, 2936 MHz

* DualCore Intel Core 2 Duo E7500, 2933 MHz (11 x 267)

2> Esses parâmetros acima que, neste contexto seria algo como – vejamos um exemplo: Montei um PC DualCore e verificando as informações técnicas do respectivo processador, o Everest mostra o seguinte: em "Tipo de processador" ele indica:

*DualCore Intel Core 2 Duo E7500, 2933 MHz (11 x 267)

3> Já na guia "Multi CPU" do Everest ele indica o seguinte:

CPU #1 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz, 2935 MHz

CPU #2 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz, 2936 MHz

4> Aqui está o “x” (ou os xs) da questão: Se cada núcleo opera a 2.93 GHz (2930 MHz), os dois núcleos somados – teoricamente falando – DEVERIAM operar a “5,86 GHz” (5.860 MHz). Mas de onde vêm o “2,93 GHz” ou 2930 MHz, que é o resultado de “11 x 266,70=”. Isto é bem simples de ser explicado:

5> A placa-mãe que montei o PC com o processador Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz, é um modelo da empresa Asus, a Asus P5G41T-M LX2/BR.

6> E segundo o Everest, este modelo de processador suporta multiplicadores de “6 a 13.5”. E este modelo de placa-mãe (Asus P5G41T-M LX2/BR) suporta multiplicadores de “8 a 16”. E como já foi dito no início desta matéria, por causa do FSB até a memória principal depende diretamente dos multiplicadores, como podemos ver nesta imagem abaixo.




7> Aqui está o segredo para APROVEITAR 100% do potencial dos núcleos dos DuaisCores, este modelo de placa-mãe suporta – no máximo – 66,70 MHz clock real, 267 MHz clock QDR do bus (barramento FSB-Front Side Bus) e 1067 MHz clock EFETIVO ou QDR (4 x 267 MHz=).

8> Portanto, 16 x 66.70=1067 MHz, e isto quer dizer que o “FSB” está fazendo com que os NÚCLEOS desse modelo de processador operem a 1,067 GHz cada, e 1,067 x 2=2,134 GHz, sendo que eles deveriam operar a 2.70 GHz cada, e 2 x 2.70=5.40 GHz. Aqui, o real é 4,268 GHz, ou seja, 2,134 x 2=.

9> A placa-mãe “Asus P5G41T-M LX2/BR” também suporta – segundo instruções na caixa – FSB operando a 1333, 1066 e 800 MHz. Para que os “núcleos” do Intel(R) Core(TM)2 Duo CPU E7500 operem a “2.93 GHz” reais cada e, os dois núcleos somados operem a “5.86 GHz”, a “Asus P5G41T-M LX2/BR”, que suporta o “FSB” operando com multiplicador em “16”, mas com clock real do FSB a 183,125 MHz (16 x 186=2.93 GHz).

Conclusão:
Como podemos concluir pelo o que foi descrito acima, o processador (CPU) fica limitado à vários fatores independentes dele no quesito “mais velocidade” nos processamentos de dados.
E os principais fatores quem impedem que o processador opere com força total são: Velocidade do barramento FSB, que é super lento em comparação com a velocidade do processador; Velocidade do barramento da memória e a baixa freqüência de clock dos chips de memória SDRAM (já os chips de memória SRAM operam com a mesma freqüência de clock do processador); e a lentidão das leituras e escritas no HD.
No caso da velocidade do processador ela é muito superior a velocidade do FSB – vejamos um exemplo:

1> Processador “DualCore Intel Pentium E2200, 2200 MHz (11 x 200=2.2 GHz), como este modelo de processador opera no modo dual core, seu clock real é “2,2 GHz”. Já o clock real do FSB é de apenas “0,2 GHz” (ou 200 MHz), portanto, 11 vezes mais lento que o clock do processador. Para minimizar, o FSB opera no modo QuadCore, ou seja, 4 vezes o clock real que é de 200 MHz (imagem abaixo), resultando num clock efetivo de 800 MHz.




2> Como podemos ver na imagem acima, o bus da memória opera com 128 bits (16 Bytes), ou seja, o dobro da largura do bus do FSB que é 64 bits (8 Bytes). Enquanto o bus do FSB opera no modo de QuadCore (4 x 200=800), o bus da memória opera no modo Dual core, ou seja, 2 x 400=800 MHz de clock efetivo.

3> Como se pode ver esses valores de clocks efetivos dos dois bus (FSB e memória) está muito longe de se igualar ao clock real do processador. Com isto, mesmo uma máquina mais potente da atualidade e rodando com um potente processador (CPU) – sem um potente processador gráfico (GPU) –, esta máquina não é tão potente como deveria ser, devido as limitações dos bus FSB e da memória.

                                                                       Por: Jkbyte