SlideShare uma empresa Scribd logo
1
Autor: Carlos E. Morimoto
Páginas: 1038
Formato: 23 x 16 cm
Editora: GDH Press e Sul Editores
ISBN: 978-85-99593-10-2
Lançado em: Outubro de 2007
      Introdução: Como um PC             Capítulo 7: Chipsets e placas
      funciona                             o Chipsets       para placas
          o Os Componetes básicos              Soquete 7
                  Processador             o Chipsets para o Pentium
                  Memória                     II e Pentium III
                  HD                               Chipsets da Intel
                  Placa de Vídeo                   Chipsets da VIA
                  Placa-mãe                        Chipsets da SiS
                  Hardware          X     o Chipsets para o Pentium
                   Software                    4 (Soquete 423 e soquete
                  Arquiteturas                478)
          o Um pouco sobre redes                    Chipsets da Intel
                  Configuração     da              Chipsets da SiS
                   rede                             Chipsets da VIA
                  Rede Wireless                    Chipsets da Uli
      Capítulo 1: 54 anos de                        Chipsets da ATI
      história: do ENIAC ao Athlon         o Chipsets para o Athlon,
          o Os primórdios                      Duron       e     Sempron
          o O ENIAC                            (soquete A)
          o O transístor                            Chipsets da AMD
          o Como são fabricados os                  Chipsets da VIA
             processadores                          Chipsets da SiS
          o Os supercomputadores                    Chipsets da nVidia
          o A       evolução       dos     o Chipsets       para placas
             computadores pessoais             soquete 775
          o A década de 80                          Chipsets da Intel
          o Do 486 ao Athlon                        Chipsets da nVidia
          o Sistemas embarcados                     Chipsets da SiS
      Capítulo 2: Processadores                     Chipsets da VIA
          o Pentium4                       o Chipsets para Athlon 64
                  Willamette                       Chipsets da nVidia
                       Hyper                       Chipsets da VIA
                          Pipelined                 Chipsets da SiS
                          Technology                Chipsets da ULi
                       Execution        Capítulo      8:      Montagem,
                          trace cache    manutenção e dicas
                       Bus de 400         o As formas mais comuns
                          MHz                  de destruir um PC
                       Rapid                       Fonte             de
                          Execution                   alimentação
                          Engine                    Cooler
                       SSE2                        Smoke Test
                  Northwood                        Estática


                                                                       2
  Prescott                          Componentes
                 Hyper-                       defeituosos
                    Threading                Dispositivos USB
                 Soquete                    Softwares
                    775                      Conectores           de
         Smithfield, Cedar                    força
            Mill e Presler           o Dicas de compra
         O       sistema    de              Processador
            numeração                        Memória
                 Pentium 4                  HDs
                 Pentium D          o PCs de baixo consumo
                 Extreme            o Ferramentas
                    Edition          o Montagem de micros
                 Celeron D                  Preparando            o
   o Athlon e Duron                            terreno
         Athlon Thunderbird                 Conectores           do
         Athlon Palomino                      painel
         Athlon                             Headers USB
            Thoroughbred                     Processador
         Athlon Barton                      Pasta térmica
   o Athlon 64                               Cooler
         Desenvolvendo                      Memória
            um sucessor                      Instalando a placa-
                 Itanium                      mãe
                 X86-84                     HDs e DVD
                    (AMD64)                  Finalizando           a
         A arquitetura K8                     montagem
         Os modelos                 o Solucionando problemas
         Athlon 64 e Athlon         o O máximo de funções no
            64 FX                       mínimo espaço
         Athlon 64 X2               o Filtros       de        linha,
         Sempron                       estabilizadores             e
         Reconhecendo        o         nobreaks
            processador                      Filtros de linha
         Quad FX                            Estabilizadores
   o A plataforma Core                       Nobreaks (UPS)
         Conroe                                    Inversores
         Kentsfield                                VA x watts
         Allendale                                 Proteção
         Conroe-L                                    para a linha
   o Futuros chips                                    telefônica
         Penryn                                    Autonomia
         Nehalem                 Capítulo 9: Configuração do
         Phenom              e   Setup, drivers e utilitários
            Barcelona                o Discos e RAID
         Fusion                     o Boot
Capítulo 3: Placas-mãe e             o Overclock
barramentos                          o Timings da Memória
   o Os Componentes                  o Componentes integrados
         BIOS                       o Outras opções


                                                                   3
o  Formatos                        o  Drivers e utilitários
   o  Barramentos                            Drivers da placa-
          ISA                                  mãe
          MCA, EISA e VLB                   Drivers do chipset
          PCI                               Drivers 3D
          PC               Card             Drivers de som,
             (PCMCIA)                           modem e outros
          AMR e CNR                         Utilitários           e
          AGP                                  benchmark
          PCI Express               o Suporte a hardware no
          Como        o     PCI         Linux
             Express funciona                Drivers
                  Dentro     do                proprietários
                   chipset                   Opções de boot
                  As linhas de    Capítulo 10: Vídeo e placas 3D
                   dados e os        o FPS, V-Sync e tearing
                   periféricos       o Recursos
                  Express                   Clock na GPU
                   Mini        e             Fill rate
                   ExpressCar                Unidades de vertex
                   d                            shader
                  PCI                       Unidades de pixel
                   Express 2.0                  shader
          USB                               Unidades             de
          Firewire       (IEEE                 shader unificadas
             1394)                           Texture        Mapping
          WUSB                                 Units (TMUs)
  o Endereços de IRQ e                       Raster        Operation
      DMA                                       Units (ROPs)
          APIC                              Tipo de memória
          DMA e I/O                         Freqüência           de
Capítulo 4: Memórias                            memória e largura
  o Formatos                                    do barramento
  o Tecnologias utilizadas                   Quantidade           de
          Memórias                             memória
             Regulares                       DirectX e OpenGL
          Memórias FPM                      Antialiasing          e
          Memórias EDO                         Anisotropic
          Memórias SDRAM                       Filtering
          Memórias DDR                      SLI
          Memórias DDR2                     CrossFire
          Memórias DDR3                     TurboCache            e
  o Identificando módulos de                    HyperMemory
      memória defeituosos            o Chipsets 3D
  o Limites                   no             NV40
      endereçamento           da             G70
      memória                                G80
  o Memória Flash                            R520
  o Outras tecnologias                       R600
Capítulo      5:     HDs       e     o Manutenção


                                                                   4
armazenamento                          o  Chipsets      de     vídeo
   o Como um HD funciona                  integrados
         A                placa      o Conectores: VGA x DVI
            controladora              o Monitores: LCD x CRT x
         Os discos                       Plasma x OLED
         Correção de erros           o Características           dos
            e badblocks                   Monitores LCD
         Desempenho                  o Monitores USB?
                 Tempo        de   Capítulo 11: Notebooks
                   busca              o Categorias
                   (Seek Time)        o UMPCs e MIDs
                 Tempo        de     o Fabricantes
                   latência           o Processadores
                   (Latency                    Pentium M
                   Time)                       Soquetes
                 Tempo        de              Core Duo e Core 2
                   Acesso                        Duo
                   (Access                     Celeron M
                   Time)                       Processadores
                 Head                           ULV
                   Switch Time                 A         plataforma
                 Taxa         de                Centrino
                   transferênci                Mobile Athlon 64
                   a     interna               Mobile Sempron
                   (Internal                   Turion 64
                   Transfer                    Turion X2
                   rate)                       Via C3 e C7
                 NCQ                          AMD Geode
                 Cache               o Chipsets 3D
                   (Buffer)                    Chipsets onboard
                 MTBF          e              Chipsets
                   service life                  dedicados e placas
   o As interfaces                               offboard
         IDE                                         ATI
         SATA                                        nVidia
         SCSI                        o Barebones
         SAS                         o Drivers
         As barreiras de                      Criando          uma
            8GB e 128GB                          imagem            de
   o RAID                                        recuperação
         Os       modos      de      o Baterias
            operação                           Chumbo Ácido
         As controladoras                     Ni-Cad
   o Opções                    de              Ni-MH
     armazenamento externo                     Li-ion
   o SSDs e HHDs                               Li-poly
   o ReadyBoost                 e              Células            de
     ReadyDrive                                  combustível
   o O gigabyte de 1 bilhão de                 Calculando          a
     bytes                                       capacidade         e

                                                                   5
o Drives de disquetes                       autonomia
Capítulo 6: Sistemas de           Capítulo 12: Manutenção de
arquivos e recuperação de         notebooks
dados                                o Desmontagem e dicas
   o Formatação física               o Desmontando            um
   o Formatação lógica                  Toshiba A70
         FAT16 e FAT32              o Desmontando        o   HP
                Estruturas             6110NX
                   Lógicas           o Desmontando a tela
         NTFS                       o Localizando defeitos
                Estruturas                 Não liga
                   lógicas do               Instabilidade
                   NTFS                     HD e DVD
         EXT3                              Defeitos na tela
   o Recuperação de dados                   Modem e placa
         S.M.A.R.T.                           wireless
         Criando          uma       o Comprando       peças de
            imagem binária              reposição no exterior
         Reparando               Apêndice: Um resumo sobre
            partições             redes e o protocolo TCP/IP
         Recuperado          a
            MBR e tabela de
            partições
         Recuperando
            arquivos apagados
                Usando       o
                   Easy
                   Recovery
                Usando       o
                   Photorec
                Outras
                   opções
         Eliminando dados
            com segurança
         Copiando       dados
            de           mídias
            defeituosas




                                                               6
Introdução: Como um PC funciona


O primeiro PC foi lançado em 1981, pela IBM. A plataforma PC não é a
primeira nem será a última plataforma de computadores pessoais, mas ela é de
longe a mais usada e provavelmente continuará assim por mais algumas
décadas. Para a maioria das pessoas, "PC" é sinônimo de computador.

Começando do básico, existem duas maneiras de representar uma informação:
analogicamente ou digitalmente. Uma música gravada em uma antiga fita K7 é
armazenada de forma analógica, codificada na forma de uma grande onda de
sinais magnéticos, que podem assumir um número virtualmente ilimitado de
freqüências. Quando a fita é tocada, o sinal magnético é amplificado e
novamente convertido em som, gerando uma espécie de "eco" do áudio
originalmente gravado.

O grande problema é que o sinal armazenado na fita se degrada com o tempo,
e existe sempre uma certa perda de qualidade ao fazer cópias. Ao tirar várias
cópias sucessivas, cópia da cópia, você acabava com uma versão muito
degradada da música original.

Ao digitalizar a mesma música, transformando-a em um arquivo MP3, você
pode copiá-la do PC para o MP3 player, e dele para outro PC, sucessivamente,
sem causar qualquer degradação. Você pode perder alguma qualidade ao
digitalizar o áudio, ou ao comprimir a faixa original, gerando o arquivo MP3,
mas a partir daí pode reproduzir o arquivo indefinidamente e fazer cópias
exatas.

Isso é possível devido à própria natureza do sistema digital, que permite
armazenar qualquer informação na forma de uma seqüência de valores
positivos e negativos, ou seja, na forma de uns e zeros.

O número 181, por exemplo, pode ser representado digitalmente como
10110101; uma foto digitalizada é transformada em uma grande grade de
pixels e um valor de 8, 16 ou 24 bits é usado para representar cada um; um
vídeo é transformado em uma sequência de imagens, também armazenadas
na forma de pixels e assim por diante.

A grande vantagem do uso do sistema binário é que ele permite armazenar
informações com uma grande confiabilidade, em praticamente qualquer tipo de
mídia; já que qualquer informação é reduzida a combinações de apenas dois
valores diferentes. A informação pode ser armazenada de forma magnética,
como no caso dos HDs; de forma óptica, como no caso dos CDs e DVDs ou
até mesmo na forma de impulsos elétricos, como no caso dos chips de
memória flash.




                                                                            7
Chips de memória flash

Cada um ou zero processado ou armazenado é chamado de "bit", contração de
"binary digit" ou "dígito binário". Um conjunto de 8 bits forma um byte, e um
conjunto de 1024 bytes forma um kilobyte (ou kbyte).

O número 1024 foi escolhido por ser a potência de 2 mais próxima de 1000. É
mais fácil para os computadores trabalharem com múltiplos de dois do que
usar o sistema decimal como nós. Um conjunto de 1024 kbytes forma um
megabyte e um conjunto de 1024 megabytes forma um gigabyte. Os próximos
múltiplos são o terabyte (1024 gigabytes) e o petabyte (1024 terabytes),
exabyte,     zettabyte    e     o      yottabyte,    que      equivale    a
1.208.925.819.614.629.174.706.176 bytes. :)

É provável que, com a evolução da informática, daqui a algumas décadas surja
algum tipo de unidade de armazenamento capaz de armazenar um yottabyte
inteiro, mas atualmente ele é um número quase inatingível.

Para armazenar um yottabyte inteiro, usando tecnologia atual, seria necessário
construir uma estrutura colossal de servidores. Imagine que, para manter os
custos baixos, fosse adotada uma estratégia estilo Google, usando PCs
comuns, com HDs IDE. Cada PC seria equipado com dois HDs de 500 GB, o
que resultaria em pouco menos de 1 terabyte por PC (não seria possível
chegar a exatamente 1 terabyte, já que não existem HDs de 512 GB binários
no mercado, por isso vamos arredondar).

Estes PCs seriam então organizados em enormes racks, onde cada rack teria
espaço para 1024 PCs. Os PCs de cada rack seriam ligados a um conjunto de
switchs e cada grupo de switchs seria ligado a um grande roteador. Uma vez
ligados em rede, os 1024 PCs seriam configurados para atuar como um
enorme cluster, trabalhando como se fossem um único sistema.

Construiríamos então um enorme galpão, capaz de comportar 1024 desses
racks, construindo uma malha de switchs e roteadores capaz de ligá-los em
rede com um desempenho minimamente aceitável. Esse galpão precisa de um
sistema de refrigeração colossal, sem falar da energia consumida por mais de
um milhão de PCs dentro dele, por isso construímos uma usina hidrelétrica
para alimentá-lo, represando um rio próximo.

Com tudo isso, conseguiríamos montar uma estrutura computacional capaz de
armazenar 1 exabyte. Ainda precisaríamos construir mais 1.048.576 mega-
datacenters como esse para chegar a 1 yottabyte. Se toda a humanidade se

                                                                             8
dividisse em grupos de 6.000 pessoas e cada grupo fosse capaz de construir
um ao longo de sua vida, deixando de lado outras necessidades existenciais,
poderíamos chegar lá. :P

Voltando à realidade, usamos também os termos kbit, megabit e gigabit, para
representar conjuntos de 1024 bits. Como um byte corresponde a 8 bits, um
megabyte corresponde a 8 megabits e assim por diante. Quando você compra
uma placa de rede de "100 megabits" está na verdade levando para a casa
uma placa que transmite 12.5 megabytes por segundo, pois cada byte tem 8
bits.

Quando vamos abreviar, também existe diferença. Quando estamos falando de
kbytes ou megabytes, abreviamos respectivamente como KB e MB, sempre
com o B maiúsculo.

Por outro lado, quando estamos falando de kbits ou megabits abreviamos da
mesma forma, porém usando o B minúsculo: Kb, Mb e assim por diante.
Parece só um daqueles detalhes sem importância, mas esta é uma fonte de
muitas confusões. Se alguém anuncia no jornal que está vendendo uma "placa
de rede de 1000 MB", está dando a entender que a placa trabalha a 8000
megabits e não a 1000.

Os componentes básicos


Qualquer PC é composto pelos mesmos componentes básicos: processador,
memória, HD, placa-mãe, placa de vídeo e monitor. Essa mesma divisão
básica se aplica também a outros aparelhos eletrônicos, como palmtops e
celulares. A principal diferença é que neles os componentes são integrados
numa única placa de circuito (muitas vezes no mesmo chip) e são utilizados
chips de memória flash no lugar do HD.

Antigamente, a placa-mãe funcionava apenas como um ponto central,
contendo os slots e barramentos usados pelos demais componentes. Além do
processador e pentes de memória, era necessário comprar a placa de vídeo,
placa de som, modem, rede, etc. Cada componente era uma placa separada.

Com a integração dos componentes, a placa-mãe passou a incluir cada vez
mais componentes, dando origem às placas "tudo onboard" que utilizamos
atualmente (existem placas que já vêm até com o processador e chips de
memória!). Isso permitiu que os preços dos PCs caíssem assustadoramente, já
que, com menos componentes, o custo de fabricação é bem menor. Para quem
quer mais desempenho ou recursos, é sempre possível instalar placas
adicionais, substituindo os componentes onboard.

Com o micro montado, o próximo passo é instalar o sistema operacional e
programas, que finalmente vão permitir que ele faça algo de útil. Vamos
começar com um overview da função de cada um destes componentes:




                                                                          9
Processador


O processador é o cérebro do micro, encarregado de processar a maior parte
das informações. Ele é também o componente onde são usadas as tecnologias
de fabricação mais recentes.

Existem no mundo apenas quatro grandes empresas com tecnologia para
fabricar processadores competitivos para micros PC: a Intel (que domina mais
de 60% do mercado), a AMD (que disputa diretamente com a Intel), a VIA (que
fabrica os chips VIA C3 e C7, embora em pequenas quantidades) e a IBM, que
esporadicamente fabrica processadores para outras empresas, como a
Transmeta.




                            Athlon X2 e Pentium D

O processador é o componente mais complexo e freqüentemente o mais caro,
mas ele não pode fazer nada sozinho. Como todo cérebro, ele precisa de um
corpo, que é formado pelos outros componentes do micro, incluindo memória,
HD, placa de vídeo e de rede, monitor, teclado e mouse.

Dentro do mundo PC, tudo começou com o 8088, lançado pela Intel em 1979 e
usado no primeiro PC, lançado pela IBM em 1981. Depois veio o 286, lançado
em 1982, e o 386, lançado em 1985.

O 386 pode ser considerado o primeiro processador moderno, pois foi o
primeiro a incluir o conjunto de instruções básico, usado até os dias de hoje. O
486, que ainda faz parte das lembranças de muita gente que comprou seu
primeiro computador durante a década de 1990, foi lançado em 1989, mas
ainda era comum encontrar micros com ele à venda até por volta de 1997.

Depois entramos na era atual, inaugurada pelo Pentium, que foi lançado em
1993, mas demorou alguns anos para se popularizar e substituir os 486. Em
1997 foi lançado o Pentium MMX, que deu um último fôlego à plataforma.
Depois, em 1997, veio o Pentium II, que usava um encaixe diferente e por isso
era incompatível com as placas-mãe antigas. A AMD soube aproveitar a


                                                                             10
oportunidade, desenvolvendo o K6-2, um chip com uma arquitetura similar ao
Pentium II, mas que era compatível com as placas soquete 7 antigas.

A partir daí as coisas passaram a acontecer mais rápido. Em 1999 foi lançado
o Pentium III e em 2000 o Pentium 4, que trouxe uma arquitetura bem diferente
dos chips anteriores, otimizada para permitir o lançamento de processadores
que trabalham a freqüências mais altas.

O último Pentium III trabalhava a 1.0 GHz, enquanto o Pentium 4 atingiu
rapidamente os 2.0 GHz, depois 3 GHz e depois 3.5 GHz. O problema é que o
Pentium 4 possuía um desempenho por ciclo de clock inferior a outros
processadores, o que faz com que a alta freqüência de operação servisse
simplesmente para equilibrar as coisas. A primeira versão do Pentium 4
operava a 1.3 GHz e, mesmo assim, perdia para o Pentium III de 1.0 GHz em
diversas aplicações.

Quanto mais alta a freqüência do processador, mais ele esquenta e mais
energia consome, o que acaba se tornando um grande problema. Quando as
possibilidades de aumento de clock do Pentium 4 se esgotaram, a Intel lançou
o Pentium D, uma versão dual-core do Pentium 4. Inicialmente os Pentium D
eram caros, mas com o lançamento do Core 2 Duo eles caíram de preço e
passaram a ser usados até mesmo em micros de baixo custo. Os Pentium D
eram vendidos sob um sistema de numeração e não sob a freqüência real de
clock. O Pentium D 820, por exemplo, opera a 2.8 GHz, enquanto o 840 opera
a 3.2 GHz.

Em 2003 a Intel lançou o Pentium M, um chip derivado da antiga arquitetura do
Pentium III, que consome pouca energia, esquenta pouco e mesmo assim
oferece um excelente desempenho. Um Pentium M de 1.4 GHz chega a
superar um Pentium 4 de 2.6 GHz em diversas aplicações.

O Pentium M foi desenvolvido originalmente para ser usado em notebooks,
mas se mostrou tão eficiente que acabou sendo usado como base para o
desenvolvimento da plataforma Core, usada nos processadores Core 2 Duo
fabricados atualmente pela Intel. O Pentium 4 acabou se revelando um beco
sem saída, descontinuado e condenado ao esquecimento.

Paralelamente a todos esses processadores, temos o Celeron, uma versão
mais barata, mas com um desempenho um pouco inferior, por ter menos cache
ou outras limitações. Na verdade, o Celeron não é uma família separada de
chips, mas apenas um nome comercial usado nas versões mais baratas (com
metade ou um quarto do cache) de vários processadores Intel. Existem
Celerons baseados no Pentium II, Pentium III, Pentium 4, Pentium M e também
o Celeron 4xx, que é uma versão single-core (e com menos cache) do Core 2
Duo.

Para efeito de comparação, entre os chips antigos e os atuais, um 486 tinha
cerca de 1 milhão de transistores e chegou a 133 MHz, enquanto o Pentium
MMX tinha 4.3 milhões e chegou a 233 MHz. Um Pentium 4 (Prescott) tem 125
milhões e chegou aos 3.8 GHz, freqüência mais alta atingida por um



                                                                           11
processador Intel (ou AMD) lançado oficialmente até hoje, recorde que deve
ser quebrado apenas em 2008 ou 2009.

O transístor é a unidade básica do processador, capaz de processar um bit de
cada vez. Mais transistores permitem que o processador processe mais
instruções de cada vez enquanto a freqüência de operação determina quantos
ciclos de processamento são executados por segundo.

Continuando, temos os processadores da AMD. Ela começou produzindo
processadores 386 e 486, muito similares aos da Intel, porém mais baratos.
Quando a Intel lançou o Pentium, que exigia o uso de novas placas-mãe, a
AMD lançou o "5x86", um 486 de 133 MHz, que foi bastante popular, servindo
como uma opção barata de upgrade. Embora o "5x86" e o clock de 133 MHz
dessem a entender que se tratava de um processador com um desempenho
similar a um Pentium 133, o desempenho era muito inferior, mal concorrendo
com um Pentium 66. Este foi o primeiro de uma série de exemplos, tanto do
lado da AMD, quanto do lado da Intel, em que existiu uma diferença gritante
entre o desempenho de dois processadores do mesmo clock. Embora seja um
item importante, a freqüência de operação não é um indicador direto do
desempenho do processador.

Uma analogia poderia ser feita em relação aos motores de carro. Os motores
de 1.6 do final da década de 70, usados nas Brasílias e nos Fuscas, tinham 44
cavalos de potência, enquanto os motores 1.0 atuais chegam a mais de 70
cavalos. Além da capacidade cúbica, existem muitos outros fatores, como a
eficiência do sistema de injeção de ar e combustível, taxa de compressão,
refrigeração, etc.

Depois do 5x68 a AMD lançou o K5, um processador similar ao Pentium, mas
que não fez tanto sucesso. Ele foi seguido pelo K6 e mais tarde pelo K6-2, que
novamente fez bastante sucesso, servido como uma opção de processador de
baixo custo e, ao mesmo tempo, como uma opção de upgrade para quem tinha
um Pentium ou Pentium MMX.

Esta era do K6-2 foi uma época negra da informática, não pelo processador em
si (que excluindo o desempenho em jogos, tinha um bom custo-benefício), mas
pelas placas-mãe baratas que inundaram o mercado. Aproveitando o baixo
custo do processador, os fabricantes passaram a desenvolver placas cada vez
mais baratas (e de qualidade cada vez pior) para vender mais, oferecendo PCs
de baixo custo. A época foi marcada por aberrações. Um certo fabricante
chegou a lançar uma família de placas sem cache L2, que pifavam em média
depois de um ano de uso.

As coisas voltaram aos trilhos com o Athlon, que foi o primeiro grande
processador (tanto em desempenho, quanto em tamanho :) da AMD. A primeira
versão usava um formato de cartucho (slot A) similar ao Pentium II, mas
incompatível com as placas para ele. Ele foi sucedido pelo Athlon Thunderbird,
que passou a usar o formato de soquete utilizado (com atualizações) até os
dias de hoje.




                                                                           12
Athlon XP, para placas soquete A

Competindo com o Celeron, a AMD produziu o Duron, um processador de
baixo custo, idêntico ao Athlon, mas com menos cache. Em 2005 o Athlon foi
descontinuado e o cargo foi herdado pelo Sempron, uma versão aperfeiçoada
do Duron (com mais cache e capaz de atingir freqüências mais altas), que
passou a ser vendido segundo um índice de desempenho (em relação ao
Pentium 4) e não mais segundo o clock real.

Por volta de 2000, surgiram as primeiras notícias do "SledgeHammer", um
processador de 64 bits, que foi finalmente lançado em versão doméstica na
forma do Athlon 64, que passou a ser o topo de linha da AMD. Apesar das
mudanças internas, o Athlon 64 continua sendo compatível com os programas
de 32 bits, da mesma forma que os processadores atuais são capazes de rodar
softwares da época do 386, muito embora tenham incorporado diversos novos
recursos.

Na prática, o fato de ser um processador de 64 bits não torna o Athlon 64
gritantemente mais rápido, mesmo em aplicativos otimizados (os ganhos de
desempenho surgem mais devido ao controlador de memória integrado e aos
novos registradores). A principal vantagem dos processadores de 64 bits é
derrubar uma limitação inerente a todos os processadores de 32 bits, que são
capazes de acessar apenas 4 GB de memória RAM, um limite que está se
tornando cada vez mais uma limitação grave em várias áreas.

Os 4 GB de memória podem não parecer um obstáculo imediato, mas lembre-
se de que há duas décadas os PCs eram vendidos com 128 KB de memória,
há uma década já vinham com 4 ou 8 MB, e hoje são vendidos com 512 MB ou
mais.

O Athlon 64 deu origem ao Athlon X2, o primeiro processador dual-core da
AMD, onde temos dois processadores Athlon 64 no mesmo encapsulamento,
dividindo a carga de processamento e também o Turion, que é uma versão de
baixo custo do Athlon 64, destinado a notebooks.



                                                                          13
Memória


Depois do processador, temos a memória RAM, usada por ele para armazenar
os arquivos e programas que estão sendo executados, como uma espécie de
mesa de trabalho. A quantidade de memória RAM disponível tem um grande
efeito sobre o desempenho, já que sem memória RAM suficiente o sistema
passa a usar memória swap, que é muito mais lenta.

A principal característica da memória RAM é que ela é volátil, ou seja, os dados
se perdem ao reiniciar o micro. É por isso que ao ligar é necessário sempre
refazer todo o processo de carregamento, em que o sistema operacional e
aplicativos usados são transferidos do HD para a memória, onde podem ser
executados pelo processador.

Os chips de memória são vendidos na forma de pentes de memória. Existem
pentes de várias capacidades, e normalmente as placas possuem dois ou três
encaixes disponíveis. Você pode instalar um pente de 512 MB junto com o de
256 MB que veio no micro para ter um total de 768 MB, por exemplo.




                                 Módulo DDR

Ao contrário do processador, que é extremamente complexo, os chips de
memória são formados pela repetição de uma estrutura bem simples, formada
por um par de um transístor e um capacitor. Um transístor solitário é capaz de
processar um único bit de cada vez, e o capacitor permite armazenar a
informação por um certo tempo. Essa simplicidade faz com que os pentes de
memória sejam muito mais baratos que os processadores, principalmente se
levarmos em conta o número de transistores.

Um pente de 1 GB é geralmente composto por 8 chips, cada um deles com um
total de 1024 megabits, o que equivale a 1024 milhões de transistores. Um
Athlon 64 X2 tem "apenas" 233 milhões e custa bem mais caro que um pente
de memória.

Existem basicamente dois tipos de memória em uso: SDR e DDR. As SDR são
o tipo tradicional, onde o controlador de memória realiza apenas uma leitura
por ciclo, enquanto as DDR são mais rápidas, pois fazem duas leituras por

                                                                             14
ciclo. O desempenho não chega a dobrar, pois o acesso inicial continua
demorando o mesmo tempo, mas melhora bastante.

Os pentes de memória SDR são usados em micros antigos: Pentium II e
Pentium III e os primeiros Athlons e Durons soquete A. Por não serem mais
fabricados, eles são atualmente muito mais raros e caros que os DDR, algo
semelhante ao que aconteceu com os antigos pentes de 72 vias, usados na
época do Pentium 1.

É fácil diferenciar os pentes SDR e DDR, pois os SDR possuem dois chanfros
e os DDR apenas um. Essa diferença faz com que também não seja possível
trocar as bolas, encaixando por engano um pente DDR numa placa-mãe que
use SDR e vice-versa (a menos que você use um alicate e um martelo, mas a
placa provavelmente não vai funcionar mais depois ;).

Mais recentemente, temos assistido a uma nova migração, com a introdução
dos pentes de memória DDR2. Neles, o barramento de acesso à memória
trabalha ao dobro da freqüência dos chips de memória propriamente ditos. Isso
permite que sejam realizadas duas operações de leitura por ciclo, acessando
dois endereços diferentes.

Como a capacidade de realizar duas transferências por ciclo introduzida nas
memórias DDR foi preservada, as memórias DDR2 são capazes de realizar um
total de 4 operações de leitura por ciclo, uma marca impressionante :). Existem
ainda alguns ganhos secundários, como o menor consumo elétrico, útil em
notebooks.

Os pentes de memória DDR2 são incompatíveis com as placas-mãe antigas.
Eles possuem um número maior de contatos (um total de 240, contra 184 dos
pentes DDR), e o chanfro central é posicionado de forma diferente, de forma
que não seja possível instalá-los nas placas antigas por engano. Muitos pentes
são vendidos com um dissipador metálico, que ajuda na dissipação do calor e
permite que os módulos operem a freqüências mais altas.




                                Módulo DDR2

Algumas placas (geralmente modelos de baixo custo) possuem dois tipos de
soquete, permitindo usar módulos SDR e DDR, DDR e DDR2 ou DDR2 e
DDR3 de acordo com a conveniência, mas sem misturar os dois tipos. Elas são
comuns durante os períodos de transição, quando uma tecnologia de memória
                                                                            15
é substituída por outra e podem ser uma opção interessante, já que permitem
aproveitar os módulos antigos.

De qualquer forma, apesar de toda a evolução a memória RAM continua sendo
muito mais lenta que o processador. Para atenuar a diferença, são usados dois
níveis de cache, incluídos no próprio processador: o cache L1 e o cache L2.

O cache L1 é extremamente rápido, trabalhando próximo à freqüência nativa
do processador. Na verdade, os dois trabalham na mesma freqüência, mas são
necessários alguns ciclos de clock para que a informação armazenada no L1
chegue até as unidades de processamento. No caso do Pentium 4, chega-se
ao extremo de armazenar instruções já decodificadas no L1: elas ocupam mais
espaço, mas eliminam este tempo inicial.

De uma forma geral, quanto mais rápido o cache, mais espaço ele ocupa e
menos é possível incluir no processador. É por isso que o Pentium 4 inclui
apenas um total de 20 KB desse cache L1 ultra-rápido, contra os 128 KB do
cache um pouco mais lento usado no Sempron.

Em seguida vem o cache L2, que é mais lento tanto em termos de tempo de
acesso (o tempo necessário para iniciar a transferência) quanto em largura de
banda, mas é bem mais econômico em termos de transistores, permitindo que
seja usado em maior quantidade.

O volume de cache L2 usado varia muito de acordo com o processador.
Enquanto a maior parte dos modelos do Sempron utilizam apenas 256 KB, os
modelos mais caros do Core 2 Duo possuem 4 MB completos.

HD


No final das contas, a memória RAM funciona como uma mesa de trabalho,
cujo conteúdo é descartado a cada boot. Temos em seguida o disco rígido,
também chamado de hard disk (o termo em Inglês), HD ou até mesmo de
"disco duro" pelos nossos primos lusitanos. Ele serve como unidade de
armazenamento permanente, guardando dados e programas.

O HD armazena os dados em discos magnéticos que mantêm a gravação por
vários anos. Os discos giram a uma grande velocidade e um conjunto de
cabeças de leitura, instaladas em um braço móvel faz o trabalho de gravar ou
acessar os dados em qualquer posição nos discos. Junto com o CD-ROM, o
HD é um dos poucos componentes mecânicos ainda usados nos micros atuais
e, justamente por isso, é o que normalmente dura menos tempo (em média de
três a cinco anos de uso contínuo) e que inspira mais cuidados.




                                                                           16
Mecanismo interno do HD

Na verdade, os discos magnéticos dos HDs são selados, pois a superfície
magnética onde são armazenados os dados é extremamente fina e sensível.
Qualquer grão de poeira que chegasse aos discos poderia causar danos à
superfície, devido à enorme velocidade de rotação dos discos. Fotos em que o
HD aparece aberto são apenas ilustrativas, no mundo real ele é apenas uma
caixa fechada sem tanta graça.

Apesar disso, é importante notar que os HDs não são fechados
hermeticamente, muito menos a vácuo, como muitos pensam. Um pequeno
filtro permite que o ar entra e saia, fazendo com que a pressão interna seja
sempre igual à do ambiente. O ar é essencial para o funcionamento do HD, já
que ele é necessário para criar o "colchão de ar" que evita que as cabeças de
leitura toquem os discos.

Tradicionalmente, o sistema operacional era sempre instalado no HD antes de
poder ser usado. Enquanto está trabalhando, o sistema precisa freqüentemente
modificar arquivos e configurações, o que seria impossível num CD-ROM, já
que os dados gravados nele não podem ser alterados.

Isso mudou com o aparecimento do Knoppix, Kurumin e outras distribuições
Linux que rodam diretamente do CD-ROM. Neste caso, um conjunto de
modificações "enganam" o sistema, fazendo com que ele use a maior parte dos
arquivos (os que não precisam ser alterados) a partir do CD-ROM, e o restante
(os que realmente precisam ser alterados) a partir da memória RAM.

Isto tem algumas limitações: as configurações são perdidas ao desligar (a
menos que você as salve em um pendrive ou em uma pasta do HD), pois tudo
é armazenado na memória RAM, cujo conteúdo é sempre perdido ao desligar o
micro.



                                                                          17
Mas, voltando à função do HD, imagine que, como a memória RAM é cara,
você compra sempre uma quantidade relativamente pequena, geralmente de
512 MB a 2 GB, de acordo com a aplicação a que o micro se destina e ao seu
bolso. Por outro lado, você dificilmente vai encontrar um HD com menos que 80
ou 120 GB à venda. Ou seja, temos centenas de vezes mais espaço no HD do
que na memória RAM.

Bem antigamente, nos anos 80, época dos primeiros PCs, você só podia rodar
programas que coubessem na memória RAM disponível. Naquela época, a
memória RAM era muito mais cara que hoje em dia, então o mais comum era
usar 256 ou 512 KB (sim, kbytes, duas mil vezes menos que usamos hoje,
tempos difíceis aqueles :). Os mais abonados tinham dinheiro para comprar um
megabyte inteiro, mas nada além disso.

Se você quisesse rodar um programa com mais de 256 KB, tinha que comprar
mais memória, não tinha conversa. Sem outra escolha, os programadores se
esforçavam para deixar seus programas o mais compactos possíveis para que
eles rodassem nos micros com menos memória.

Mais tarde, quando a Intel estava desenvolvendo o 386, foi criado o recurso de
memória virtual, que permite simular a existência de mais memória RAM,
utilizando espaço do HD. A memória virtual pode ser armazenada em um
arquivo especialmente formatado no HD, ou em uma partição dedicada (como
no caso do Linux) e a eficiência com que ela é usada varia bastante de acordo
com o sistema operacional, mas ela permite que o sistema continue
funcionando, mesmo com pouca memória disponível.

O problema é que o HD é muito mais lento que a memória RAM. Enquanto um
simples módulo DDR2-533 (PC2-4200) comunica-se com o processador a uma
velocidade teórica de 4200 megabytes por segundo, a velocidade de leitura
sequencial dos HDs atuais (situação em que o HD é mais rápido) dificilmente
ultrapassa a marca dos 100 MB/s.

Existe um comando no Linux que serve para mostrar de forma rápida o
desempenho do HD, o "hdparm". Quando o rodo no meu micro, que usa um
HD SATA relativamente recente, ele diz o seguinte:

# hdparm -t /dev/sda
/dev/sda: Timing buffered disk reads: 184 MB in 3.02 seconds = 60.99 MB/sec

No Windows, você pode medir a taxa de leitura sequencial do HD usando o HD
Tach, disponível no http://www.simplisoftware.com/. Não se surpreenda com o
resultado. Como disse, o HD é muito lento se comparado à memória.

Para piorar as coisas, o tempo de acesso do HD (o tempo necessário para
localizar a informação e iniciar a transferência) é absurdamente mais alto que o
da memória RAM. Enquanto na memória falamos em tempos de acesso
inferiores a 10 nanosegundos (milionésimos de segundo), a maioria dos HDs
trabalha com tempos de acesso superiores a 10 milissegundos. Isso faz com
que o desempenho do HD seja muito mais baixo ao ler pequenos arquivos
espalhados pelo disco, como é o caso da memória virtual. Em muitas


                                                                             18
situações, o HD chega ao ponto de não ser capaz de atender a mais do que
duas ou três centenas de requisições por segundo.

A fórmula é simples: quanto menos memória RAM, mais memória swap
(memória virtual) é usada e mais lento o sistema fica. O processador, coitado,
não pode fazer nada além de ficar esperando a boa vontade do HD em mandar
à conta-gotas os dados de que ele precisa para trabalhar. Ou seja, quando
você compra um micro com um processador de 3 GHz e 256 MB de RAM, você
está literalmente jogando dinheiro no lixo, pois o processador vai ficar boa parte
do tempo esperando pelo HD. Vender micros novos com 256, ou pior, com
apenas 128 MB de RAM, é uma atrocidade que deveria ser classificada como
crime contra a humanidade. ;)

Por outro lado, quando você tem instalado mais memória do que o sistema
realmente precisa, é feito o inverso. Ao invés de copiar arquivos da memória
para o HD, arquivos do HD, contendo os programas, arquivos e bibliotecas que
já foram anteriormente abertos é que são copiados para a memória, fazendo
com que o acesso a eles passe a ser instantâneo. Os programas e arquivos
passam a ser abertos de forma gritantemente mais rápida, como se você
tivesse um HD muito mais rápido do que realmente é.

Esse recurso é chamado de cache de disco e (sobretudo no Linux) é
gerenciado de forma automática pelo sistema, usando a memória disponível.
Naturalmente, o cache de disco é descartado imediatamente quando a
memória precisa ser usada para outras coisas. Ele é apenas uma forma de
aproveitar o excedente de memória, sem causar nenhum efeito desagradável.

Ironicamente, a forma mais eficiente de melhorar o desempenho do HD, na
maioria das aplicações, é instalar mais memória, fazendo com que uma
quantidade maior de arquivos possa ser armazenada no cache de disco. É por
isso que servidores de arquivos, servidores proxy e servidores de banco de
dados costumam usar muita memória RAM, em muitos casos 4 GB ou mais.

Uma outra forma de melhorar o desempenho do HD é usar RAID, onde dois ou
quatro HDs passam a ser acessados como se fossem um só, multiplicando a
velocidade de leitura e gravação. Esse tipo de RAID, usado para melhorar o
desempenho, é chamado de RAID 0. Existe ainda o RAID 1, onde são usados
dois HDs, mas o segundo é uma cópia exata do primeiro, que garante que os
dados não sejam perdidos no caso de algum problema mecânico em qualquer
um dos dois. O RAID tem se tornado um recurso relativamente popular, já que
atualmente a maioria das placas-mãe já vêm com controladoras RAID onboard.




                                                                               19
Placa de vídeo


Depois do processador, memória e HD, a placa de vídeo é provavelmente o
componente mais importante do PC. Originalmente, as placas de vídeo eram
dispositivos simples, que se limitavam a mostrar o conteúdo da memória de
vídeo no monitor. A memória de vídeo continha um simples bitmap da imagem
atual, atualizada pelo processador, e o RAMDAC (um conversor digital-
analógico que faz parte da placa de vídeo) lia a imagem periodicamente e a
enviava ao monitor.

A resolução máxima suportada pela placa de vídeo era limitada pela
quantidade de memória de vídeo. Na época, memória era um artigo caro, de
forma que as placas vinham com apenas 1 ou 2 MB. As placas de 1 MB
permitiam usar no máximo 800x600 com 16 bits de cor, ou 1024x768 com 256
cores. Estavam limitadas ao que cabia na memória de vídeo.

Esta da foto a seguir é uma Trident 9440, uma placa de vídeo muito comum no
início dos anos 90. Uma curiosidade é que ela foi uma das poucas placas de
vídeo "atualizáveis" da história. Ela vinha com apenas dois chips de memória,
totalizando 1 MB, mas era possível instalar mais dois, totalizando 2 MB. Hoje
em dia, atualizar a memória da placa de vídeo é impossível, já que as placas
utilizam módulos BGA, que podem ser instalados apenas em fábrica.




                                Trident 9440

Em seguida, as placas passaram a suportar recursos de aceleração, que
permitem fazer coisas como mover janelas ou processar arquivos de vídeo de
forma a aliviar o processador principal. Esses recursos melhoram bastante a
velocidade de atualização da tela (em 2D), tornando o sistema bem mais
responsivo.

Finalmente, as placas deram o passo final, passando a suportar recursos 3D.
Imagens em três dimensões são formadas por polígonos, formas geométricas
como triângulos e retângulos em diversos formatos. Qualquer objeto em um
game 3D é formado por um grande número destes polígonos, Cada polígono
tem sua posição na imagem, um tamanho e cor específicos. O "processador"

                                                                           20
incluído na placa, responsável por todas estas funções é chamado de GPU
(Graphics Processing Unit, ou unidade de processamento gráfico).




 Quase todo o processamento da imagem em games 3D é feito pela placa 3D

Para tornar a imagem mais real, são também aplicadas texturas sobre o
polígonos. Uma textura nada mais é do que uma imagem 2D comum, aplicada
sobre um conjunto de polígonos. O uso de texturas permite que um muro
realmente tenha o aspecto de um muro de pedras, por exemplo, já que
podemos usar a imagem de um muro real sobre os polígonos.

O uso das texturas não está limitado apenas a superfícies planas. É
perfeitamente possível moldar uma textura sobre uma esfera, por exemplo.
Quanto maior o número de polígonos usados e melhor a qualidade das texturas
aplicadas sobre eles, melhor será a qualidade final da imagem. Veja um
exemplo de aplicação de texturas:




                                                                         21
Polígonos e imagem finalizada (cortesia da nVidia)

O processo de criação de uma imagem tridimensional é dividido em três
etapas, chamadas de desenho, geometria e renderização. Na primeira etapa,
é criada uma descrição dos objetos que compõem a imagem, ou seja: quais
polígonos fazem parte da imagem, qual é a forma e tamanho de cada um, qual
é a posição de cada polígono na imagem, quais serão as cores usadas e,
finalmente, quais texturas e quais efeitos 3D serão aplicados. Depois de feito o
"projeto" entramos na fase de geometria, onde a imagem é efetivamente criada
e armazenada na memória da placa 3D.

Ao final da etapa de geometria, todos os elementos que compõem a imagem
estão prontos. O problema é que eles estão armazenados na memória da placa
de vídeo na forma de um conjunto de operações matemáticas, coordenadas e
texturas, que ainda precisam ser transformadas na imagem que será exibida no
monitor. É aqui que chegamos à parte mais complexa e demorada do trabalho,
que é a renderização da imagem.

Essa última etapa consiste em transformar as informações armazenadas na
memória em uma imagem bidimensional que será mostrada no monitor. O
processo de renderização é muito mais complicado do que parece; é
necessário determinar (a partir do ponto de vista do espectador) quais
polígonos estão visíveis, aplicar os efeitos de iluminação adequados, etc.

                                                                             22
Apesar de o processador também ser capaz de criar imagens tridimensionais,
trabalhando sozinho ele não é capaz de gerar imagens de qualidade a grandes
velocidades (como as demandadas por jogos complexos), pois tais imagens
exigem um número absurdo de cálculos e processamento. Para piorar ainda
mais a situação, o processador tem que ao mesmo tempo executar várias
outras tarefas relacionadas com o aplicativo.

As placas aceleradoras 3D, por sua vez, possuem processadores dedicados,
cuja função é unicamente processar as imagens, o que podem fazer com uma
velocidade incrível, deixando o processador livre para executar outras tarefas.
Com elas, é possível construir imagens tridimensionais com uma velocidade
suficiente para criar jogos complexos a um alto frame-rate.

Depois dos jogos e aplicativos profissionais, os próximos a aproveitarem as
funções 3D das placas de vídeo foram os próprios sistemas operacionais. A
idéia fundamental é que, apesar de toda a evolução do hardware, continuamos
usando interfaces muito similares às dos sistemas operacionais do final da
década de 80, com janelas, ícones e menus em 2D. Embora o monitor continue
sendo uma tela bidimensional, é possível criar a ilusão de um ambiente 3D, da
mesma forma que nos jogos, permitindo criar todo tipo de efeitos interessantes
e, em alguns casos, até mesmo úteis ;).

No caso do Windows Vista temos o Aero, enquanto no Linux a solução mais
usada é o AIGLX, disponível na maioria das distribuições atuais:




Efeito de cubo do AIGLX, que permite alternar entre diversos desktops virtuais

Com a evolução das placas 3D, os games passaram a utilizar gráficos cada
vez mais elaborados, explorando os recursos das placas recentes. Isso criou
um círculo vicioso, que faz com que você precise de uma placa razoavelmente
recente para jogar qualquer game atual.

As placas 3D atuais são praticamente um computador à parte, pois além da
qualidade generosa de memória RAM, acessada através de um barramento
muito mais rápido que a do sistema, o chipset de vídeo é muito mais complexo

                                                                            23
e absurdamente mais rápido que o processador principal no processamento de
gráficos. O chipset de uma GeForce 7800 GT, por exemplo, é composto por
302 milhões de transistores, mais do que qualquer processador da época em
que foi lançada.

As placas 3D offboard também incluem uma quantidade generosa de memória
de vídeo (512 MB ou mais nos modelos mais recentes), acessada através de
um barramento muito rápido. O GPU (o chipset da placa) é também muito
poderoso, de forma que as duas coisas se combinam para oferecer um
desempenho monstruoso.

Com a introdução do PCI Express, surgiu também a possibilidade de instalar
duas, ou até mesmo quatro placas, ligadas em SLI (no caso das placas nVidia)
ou CrossFire (no caso das placas AMD/ATI), o que oferece um desempenho
próximo do dobro (ou do quádruplo) obtido por uma placa isolada. Aqui, por
exemplo, temos duas placas AMD/ATI X1950 em modo CrossFire:




                 CrossFire com duas placas AMD/ATI X1950

Longe do mundo brilhante das placas de alto desempenho, temos as placas
onboard, que são de longe as mais comuns. Elas são soluções bem mais
simples, onde o GPU é integrado ao próprio chipset da placa-mãe e, em vez de
utilizar memória dedicada, como nas placas offboard, utiliza parte da memória
RAM principal, que é "roubada" do sistema.

Mesmo uma placa antiga, como a GeForce 4 Ti4600, tem 10.4 GB/s de
barramento com a memória de vídeo, enquanto ao usar um pente de memória
DDR PC 3200, temos apenas 3.2 GB/s de barramento na memória principal,
que ainda por cima precisa ser compartilhado entre o vídeo e o processador
principal. O processador lida bem com isso, graças aos caches L1 e L2, mas a
placa de vídeo realmente não tem para onde correr. É por isso que os chipsets
de vídeo onboard são normalmente bem mais simples: mesmo um chip caro e
complexo não ofereceria um desempenho muito melhor, pois o grande limitante
é o acesso à memória.

De uma forma geral, as placas de vídeo onboard (pelo menos os modelos que
dispõem de drivers adequados) atuais atendem bem às tarefas do dia-a-dia,
com a grande vantagem do custo. Elas também permitem rodar os games mais

                                                                          24
antigos, apesar de, naturalmente, ficarem devendo nos lançamentos recentes.
As placas mais caras são reservadas a quem realmente faz questão de rodar
os games recentes com uma boa qualidade. Existem ainda modelos de placas
3D específicos para uso profissional, como as nVidia Quadro.




                                                                         25
Placa-mãe


A placa-mãe é o componente mais importante do micro, pois é ela a
responsável pela comunicação entre todos os componentes. Pela enorme
quantidade de chips, trilhas, capacitores e encaixes, a placa-mãe também é o
componente que, de uma forma geral, mais dá defeitos. É comum que um slot
PCI pare de funcionar (embora os outros continuem normais), que instalar um
pente de memória no segundo soquete faça o micro passar a travar, embora o
mesmo pente funcione perfeitamente no primeiro e assim por diante.

A maior parte dos problemas de instabilidade e travamentos são causados por
problemas diversos na placa-mãe, por isso ela é o componente que deve ser
escolhido com mais cuidado. Em geral, vale mais a pena investir numa boa
placa-mãe e economizar nos demais componentes, do que o contrário.

A qualidade da placa-mãe é de longe mais importante que o desempenho do
processador. Você mal vai perceber uma diferença de 20% no clock do
processador, mas com certeza vai perceber se o seu micro começar a travar ou
se a placa de vídeo onboard não tiver um bom suporte no Linux, por exemplo.

Ao montar um PC de baixo custo, economize primeiro no processador, depois
na placa de vídeo, som e outros periféricos. Deixe a placa-mãe por último no
corte de despesas.

Não se baseie apenas na marca da placa na hora de comprar, mas também no
fornecedor. Como muitos componentes entram no país ilegalmente, "via
Paraguai", é muito comum que lotes de placas remanufaturadas ou defeituosas
acabem chegando ao mercado. Muita gente compra esses lotes, vende por um
preço um pouco abaixo do mercado e depois desaparece. Outras lojas
simplesmente vão vendendo placas que sabem ser defeituosas até acharem
algum cliente que não reclame. Muitas vezes os travamentos da placa são
confundidos com "paus do Windows", de forma que sempre aparece algum
desavisado que não percebe o problema.

Antigamente existia a polêmica entre as placas com ou sem componentes
onboard. Hoje em dia isso não existe mais, pois todas as placas vêm com som
e rede onboard. Apenas alguns modelos não trazem vídeo onboard, atendendo
ao público que vai usar uma placa 3D offboard e prefere uma placa mais barata
ou com mais slots PCI do que com o vídeo onboard que, de qualquer forma,
não vai usar.

Os conectores disponíveis na placa estão muito relacionados ao nível de
atualização do equipamento. Placas atuais incluem conectores PCI Express
x16, usados para a instalação de placas de vídeo offboard, slots PCI Express
x1 e slots PCI, usados para a conexão de periféricos diversos. Placas antigas
não possuem slots PCI Express nem portas SATA, oferecendo no lugar um slot
AGP para a conexão da placa de vídeo e duas ou quatro portas IDE para a
instalação dos HDs e drives ópticos.



                                                                           26
Temos ainda soquetes para a instalação dos módulos de memória, o soquete
do processador, o conector para a fonte de alimentação e o painel traseiro, que
agrupa os encaixes dos componentes onboard, incluindo o conector VGA ou
DVI do vídeo, conectores de som, conector da rede e as portas USB.

O soquete (ou slot) para o processador é a principal característica da placa-
mãe, pois indica com quais processadores ela é compatível. Você não pode
instalar um Athlon X2 em uma placa soquete A (que é compatível com os
antigos Athlons, Durons e Semprons antigos), nem muito menos encaixar um
Sempron numa placa soquete 478, destinada aos Pentium 4 e Celerons
antigos. O soquete é na verdade apenas um indício de diferenças mais
"estruturais" na placa, incluindo o chipset usado, o layout das trilhas de dados,
etc. É preciso desenvolver uma placa quase que inteiramente diferente para
suportar um novo processador.

Existem dois tipos de portas para a conexão do HD: as portas IDE tradicionais,
de 40 pinos (chamadas de PATA, de "Parallel ATA") e os conectores SATA
(Serial ATA), que são muito menores. Muitas placas recentes incluem um único
conector PATA e quatro conectores SATA. Outras incluem as duas portas IDE
tradicionais e dois conectores SATA, e algumas já passam a trazer apenas
conectores SATA, deixando de lado os conectores antigos.

Existem ainda algumas placas "legacy free", que eliminam também os
conectores para o drive de disquete, portas seriais e porta paralela, incluindo
apenas as portas USB. Isso permite simplificar o design das placas, reduzindo
o custo de produção para o fabricante.




                                                                              27
Placa soquete 775

Tudo isso é montado dentro do gabinete, que contém outro componente
importante: a fonte de alimentação. A função da fonte é transformar a corrente
alternada da tomada em corrente contínua (AC) já nas tensões corretas,
usadas pelos componentes. Ela serve também como uma última linha de
defesa contra picos de tensão e instabilidade na corrente, depois do nobreak
ou estabilizador.

Embora quase sempre relegada a último plano, a fonte é outro componente
essencial num PC atual. Com a evolução das placas de vídeo e dos
processadores, os PCs consomem cada vez mais energia. Na época dos 486,
as fontes mais vendidas tinham 200 watts ou menos, enquanto as atuais têm a
partir de 450 watts. Existem ainda fontes de maior capacidade, especiais para
quem quer usar duas placas 3D de ponta em SLI, que chegam a oferecer 1000
watts!

Uma fonte subdimensionada não é capaz de fornecer energia suficiente nos
momentos de pico, causando desde erros diversos, provocados por falhas no
fornecimento (o micro trava ao tentar rodar um game pesado, ou trava sempre
depois de algum tempo de uso, por exemplo), ou, em casos mais graves, até
mesmo danos aos componentes. Uma fonte de má qualidade, obrigada a
                                                                           28
trabalhar além do suportado, pode literalmente explodir, danificando a placa-
mãe, memórias, HDs e outros componentes sensíveis.




                                Micro montado

Evite comprar fontes muito baratas e, ao montar um micro mais parrudo, invista
numa fonte de maior capacidade.

Não se esqueça também do aterramento, que é outro fator importante, mas
freqüentemente esquecido. O fio terra funciona como uma rota de fuga para
picos de tensão provenientes da rede elétrica. A eletricidade flui de uma forma
similar à água: vai sempre pelo caminho mais fácil. Sem ter para onde ir, um
raio vai torrar o estabilizador, a fonte de alimentação e, com um pouco mais de
azar, a placa-mãe e o resto do micro. O fio terra evita isso, permitindo que a
eletricidade escoe por um caminho mais fácil, deixando todo o equipamento
intacto.

O fio terra é simplesmente uma barra de cobre com dois a três metros de
comprimento, que é cravada no solo, no meio de um buraco de 20 cm de
largura, preenchido com sal grosso e carvão. Naturalmente, instalar o terra é
trabalho para o eletricista, já que um aterramento mal feito pode ser mais
prejudicial que não ter aterramento algum. Não acredite em crendices como
usar um prego fincado na parede ou um cano metálico como aterramento.

Sem o terra, o filtro de linha ou estabilizador perde grande parte de sua função,
tornando-se mais um componente decorativo, que vai ser torrado junto com o
resto do equipamento, do que uma proteção real.

Nas grandes cidades, é relativamente raro que os micros realmente queimem
por causa de raios, pois os transformadores e disjuntores oferecem uma
proteção razoável. Mas, pequenos picos de tensão são responsáveis por
pequenos danos nos pentes de memória e outros componentes sensíveis,

                                                                              29
danos que se acumulam, comprometendo a estabilidade e abreviando a vida
útil do equipamento.

A longo prazo, o investimento na instalação do terra e melhorias na instalação
elétrica acabam se pagando com juros, principalmente se você tem mais de um
micro.



Hardware x Software


Os computadores são muito bons em armazenar informações e fazer cálculos,
mas não são capazes de tomar decisões sozinhos. Sempre existe um ser
humano orientando o computador e dizendo a ele o que fazer a cada passo.
Seja você mesmo, teclando e usando o mouse, ou, num nível mais baixo, o
programador que escreveu os programas que você está usando.

Chegamos então aos softwares, gigantescas cadeias de instruções que
permitem que os computadores façam coisas úteis. É aí que entra o sistema
operacional e, depois dele, os programas que usamos no dia-a-dia.

Um bom sistema operacional é invisível. A função dele é detectar e utilizar o
hardware da máquina de forma eficiente, fornecendo uma base estável sobre a
qual os programas que utilizamos no cotidiano possam ser usados. Como diz
Linus Torvalds, as pessoas não usam o sistema operacional, usam os
programas instalados. Quando você se lembra que está usando um sistema
operacional, é sinal de que alguma coisa não está funcionando como deveria.

O sistema operacional permite que o programador se concentre em adicionar
funções úteis, sem ficar se preocupando com que tipo de placa de vídeo ou
placa de som você tem. O programa diz que quer mostrar uma janela na tela e
ponto; o modelo de placa de vídeo que está instalado e que comandos são
necessários para mostrar a janela são problema do sistema operacional.

Para acessar a placa de vídeo, ou qualquer outro componente instalado, o
sistema operacional precisa de um driver, que é um pequeno programa que
trabalha como um intérprete, permitindo que o sistema converse com o
dispositivo. Cada placa de vídeo ou som possui um conjunto próprio de
recursos e comandos que permitem usá-los. O driver converte esses diferentes
comandos em comandos padrão, que são entendidos pelo sistema
operacional.

Embora as duas coisas sejam igualmente importantes, existe uma distinção
entre o "hardware", que inclui todos os componentes físicos, como o
processador, memória, placa-mãe, etc. e o "software", que inclui o sistema
operacional, os programas e todas as informações armazenadas. Como diz a
sabedoria popular, "hardware é o que você chuta, e software é o que você
xinga". :p




                                                                           30
Arquiteturas


Nos primórdios da informática, nas décadas de 50, 60 e 70, vários fabricantes
diferentes disputavam o mercado. Cada um desenvolvia seus próprios
computadores, que eram incompatíveis entre si. Tanto o hardware quanto os
softwares para cada arquitetura não funcionavam nas outras. Isso causava
uma ineficiência generalizada, pois cada fabricante tinha que desenvolver tudo,
da placa-mãe ao sistema operacional.

No começo dos anos 80, os fabricantes começaram a se especializar. Surgiu
então a plataforma PC, uma arquitetura aberta que permite o uso de periféricos
de diversos fabricantes e de diferentes sistemas operacionais.

O principal concorrente é a Apple, que produz os Macs. Ao contrário dos PCs,
eles possuem uma arquitetura fechada. A Apple desenvolve tanto os
computadores quanto o sistema operacional.

Naturalmente muita coisa é terceirizada, e várias empresas desenvolvem
programas e acessórios, mas como a Apple precisa manter o controle de tudo
e desenvolver muita coisa por conta própria, o custo dos Macs acaba sendo
mais alto que o dos PCs. Isso faz com que (embora tenham seus atrativos)
eles sejam muito menos populares. Atualmente os Macs possuem menos de
3% do mercado mundial, o que significa uma proporção de mais de 30 PCs
para cada Mac.

No início da década de 80, a concorrência era mais acirrada, e muitos achavam
que o modelo da Apple poderia prevalecer, mas não foi o que aconteceu.
Dentro da história da informática temos inúmeras histórias que mostram que os
padrões abertos quase sempre prevalecem. Um ambiente onde existem várias
empresas concorrendo entre si favorece o desenvolvimento de produtos
melhores, o que cria uma demanda maior e, graças à economia de escala,
permite preços mais baixos.

Como os micros PC possuem uma arquitetura aberta, diversos fabricantes
diferentes podem participar, desenvolvendo seus próprios componentes
baseados em padrões já definidos. Temos então uma lista enorme de
componentes compatíveis entre si, o que permite escolher as melhores opções
entre diversas marcas e modelos de componentes.

Qualquer novo fabricante, com uma placa-mãe mais barata ou um processador
mais rápido, por exemplo, pode entrar no mercado, é apenas uma questão de
criar a demanda necessária. A concorrência faz com que os fabricantes sejam
obrigados a trabalhar com uma margem de lucro relativamente baixa,
ganhando com base no volume de peças vendidas, o que é muito bom para
nós que compramos.




                                                                            31
Um pouco sobre redes


Montar uma rede já foi complicado e caro. Hoje em dia, praticamente todas as
placas-mãe trazem placas de rede onboard, e os cabos e switchs são
extremamente baratos, o que fez com que as redes se tornassem
extremamente comuns, permitindo compartilhar a conexão com a internet,
transferir arquivos, compartilhar impressoras e assim por diante. Como não falo
sobre a configuração de redes em outros tópicos do livro, vou aproveitar para
fazer um apanhado geral sobre o assunto.

O uso mais corriqueiro é compartilhar a conexão com a internet. Você tem
apenas uma linha ADSL ou apenas uma assinatura do serviço de acesso via
cabo e pode acessar, ao mesmo tempo, a partir de todos os micros que tiver
em sua casa ou empresa. Neste caso um dos micros atua como um ponto de
encontro, enviando os pedidos de todos para a internet e devolvendo as
respostas. Além de compartilhar a conexão, este servidor pode compartilhar
arquivos, servir como firewall (protegendo a rede de acessos externos), rodar
um proxy (que permite criar um cache de arquivos e páginas acessados,
melhorando a velocidade da conexão), além de outros serviços.

Outra necessidade comum é compartilhar arquivos. Antigamente (naquela
época em que os micros tinham 512 KB de memória e os homens eram
homens e escreviam seus próprios sistemas operacionais) era usado o
protocolo DPL/DPC (disquete pra lá, disquete pra cá), mas ele não era muito
eficiente, principalmente quando o amigo que estava esperando os arquivos
estava em outra cidade.

Hoje em dia, você pode compartilhar arquivos entre micros Windows
simplesmente ativando o "Compartilhamento de arquivos para redes Microsoft"
e o "Cliente para redes Microsoft" nas propriedades da rede e compartilhando
as pastas desejadas (que passam a aparecer no ambiente de rede para os
outros micros). No Linux, você pode compartilhar arquivos usando o Samba
(que permite que os compartilhamentos sejam acessados também por
máquinas Windows), NFS ou mesmo via SFTP (o módulo de transferência de
arquivos do SSH).

Os componentes básicos da rede são uma placa de rede para cada micro, os
cabos e o hub ou switch que serve como um ponto de encontro, permitindo que
todos os micros se enxerguem e conversem entre si. As placas de rede já
foram componentes caros, mas como elas são dispositivos relativamente
simples e o funcionamento é baseado em padrões abertos, qualquer um pode
abrir uma fábrica de placas de rede, o que faz com que exista uma
concorrência acirrada que obriga os fabricantes a produzirem placas cada vez
mais baratas e trabalhem com margens de lucro cada vez mais estreitas. As
placas de rede mais baratas chegam a ser vendidas no atacado por menos de
três dólares. O preço final é um pouco mais alto naturalmente, mas não é difícil
achar placas por 20 reais ou até menos.



                                                                             32
Placa de rede PCI

Temos três padrões de redes Ethernet: de 10 megabits, 100 megabits e 1
gigabit. As placas são intercompatíveis, mas, ao usar placas de velocidades
diferentes, as duas vão conversar na velocidade da placa mais lenta.

As redes de 10 megabits são obsoletas, mas ainda é possível encontrar muitas
instalações antigas por aí. Caso a rede já use cabos de categoria 5 (o número
vem decalcado no cabo), é possível fazer um upgrade direto para 100
megabits, trocando apenas o hub e as placas.




                         Cabo de rede categoria 5e

Lembre-se de que a velocidade das placas é calculada em bits e não em bytes.
Uma rede de 100 megabits permite uma taxa de transmissão (teórica) de 12.5
MB/s. Como além dos dados são transmitidas outras informações (a estrutura
dos pacotes, retransmissões, códigos de correção de erros, etc.), a velocidade
na prática fica sempre um pouco abaixo disso. Normalmente é possível
transferir arquivos a no máximo 10.5 MB/s, com a taxa máxima variando
sutilmente de acordo com a placa e o sistema operacional usado.

A opção para quem precisa de mais velocidade são as redes Gigabit Ethernet,
que transmitem a até 1000 megabits (125 megabytes) por segundo. As placas
gigabit atuais são compatíveis com os mesmos cabos de par trançado
categoria 5, usados pelas placas de 100 megabits, por isso a diferença de
custo fica por conta apenas das placas e do switch. Como hoje em dia a
maioria das placas-mãe incluem chipsets de rede gigabit onboard e os switchs
também estão caindo de preço, elas estão se tornando cada vez mais comuns.

Os cabos de rede também são um artigo relativamente barato. Os cabos de
categoria 5, que usamos em redes de 100 ou 1000 megabits geralmente
custam em torno de 80 centavos o metro, com mais alguns centavos por
conector. Os cabos de categoria 5e são construídos dentro de normas um
pouco mais estritas e normalmente custam o mesmo preço, por isso são
sempre preferíveis.


                                                                            33
Você pode comprar quantos metros de cabo quiser, junto com o número
necessário de conectores, e crimpar os cabos você mesmo, ou pode comprá-
los já prontos. É no caso dos cabos já crimpados que o preço começa a variar
de forma mais expressiva. Algumas lojas chegam a crimpar os cabos na hora,
cobrando apenas o valor do material, enquanto outras vendem os cabos por
preços exorbitantes.




                      Cabos de rede de diferentes cores

Para crimpar os cabos de rede, o primeiro passo é descascar os cabos,
tomando cuidado para não ferir os fios internos, que são frágeis. Normalmente,
o alicate inclui uma saliência no canto da guilhotina, que serve bem para isso.
Existem também descascadores de cabos específicos para cabos de rede.




      Descascando o cabo de rede usando a saliência no próprio alicate

É possível comprar alicates de crimpagem razoáveis por pouco mais de 50
reais, mas existem alicates de crimpagem para uso profissional que custam
bem mais. Existem ainda "alicates" mais baratos, com o corpo feito de plástico,
que são mais baratos, mas não valem o papelão da embalagem. Alicates de
                                                                            34
crimpagem precisam ser fortes e precisos, por isso evite produtos muito
baratos.

Os quatro pares do cabo são diferenciados por cores. Um par é laranja, outro é
azul, outro é verde e o último é marrom. Um dos cabos de cada par tem uma
cor sólida e o outro é mais claro ou malhado, misturando a cor e pontos de
branco. É pelas cores que diferenciamos os 8 fios.

O segundo passo é destrançar os cabos, deixando-os soltos. Eu prefiro
descascar um pedaço grande do cabo, uns 6 centímetros, para poder organizar
os cabos com mais facilidade e depois cortar o excesso, deixando apenas a
meia polegada de cabo que entrará dentro do conector. O próprio alicate de
crimpagem inclui uma guilhotina para cortar os cabos, mas você pode usar
uma tesoura se preferir.

Existem dois padrões para a ordem dos fios dentro do conector, o EIA 568B (o
mais comum) e o EIA 568A. A diferença entre os dois é que a posição dos
pares de cabos laranja e verde são invertidos dentro do conector.

Existe muita discussão em relação com qual dos dois é "melhor", mas na
prática não existe diferença de conectividade entre os dois padrões. A única
observação é que você deve cabear toda a rede utilizando o mesmo padrão.
Como o EIA 568B é de longe o mais comum, recomendo-o que você utilize-o
ao crimpar seus próprios cabos. Muitos cabos são certificados para apenas um
dos dois padrões; caso encontre instruções referentes a isso nas
especificações, ou decalcadas no próprio cabo, crimpe os cabos usando o
padrão indicado.

No padrão EIA 568B, a ordem dos fios dentro do conector (em ambos os lados
do cabo) é a seguinte:

      1- Branco com Laranja
      2- Laranja
      3- Branco com Verde
      4- Azul
      5- Branco com Azul
      6- Verde
      7- Branco com Marrom
      8- Marrom

Os cabos são encaixados nesta ordem, com a trava do conector virada para
baixo, como neste diagrama:




Ou seja, se você olhar o conector "de cima", vendo a trava, o par de fios laranja
estará à direita e, se olhar o conector "de baixo", vendo os contatos, eles
estarão à esquerda.

                                                                              35
No caso de um cabo "reto" (straight), que vai ser usado para ligar o micro ao
hub, você usa esta mesma disposição nas duas pontas do cabo. Existe ainda
um outro tipo de cabo, chamado de "cross-over", que permite ligar diretamente
dois micros, sem precisar do hub. Ele é uma opção mais barata quando você
tem apenas dois micros. Neste tipo de cabo a posição dos fios é diferente nos
dois conectores, de um dos lados a pinagem é a mesma de um cabo de rede
normal, enquanto no outro a posição dos pares verde e laranja são trocados.
Daí vem o nome cross-over, que significa, literalmente, "cruzado na ponta".

Para fazer um cabo cross-over, você crimpa uma das pontas seguindo o
padrão EIA 568B que vimos acima e a outra utilizando o padrão EIA 568A,
onde são trocadas as posições dos pares verde e laranja:

      1- Branco com Verde
      2- Verde
      3- Branco com Laranja
      4- Azul
      5- Branco com Azul
      6- Laranja
      7- Branco com Marrom
      8- Marrom

Esta mudança faz com que os fios usados para transmitir dados em um dos
micros sejam conectados aos pinos receptores do outro, permitindo que eles
conversem diretamente. A maioria dos hub/switchs atuais é capaz de
"descruzar" os cabos automaticamente quando necessário, permitindo que
você misture cabos normais e cabos cross-over dentro do cabeamento da rede.
Graças a isso, a rede vai funcionar mesmo que você use um cabo cross-over
para conectar um dos micros ao hub por engano.

Na hora de crimpar é preciso fazer um pouco de força para que o conector
fique firme. A função do alicate é fornecer pressão suficiente para que os pinos
do conector RJ-45 (que internamente possuem a forma de lâminas) esmaguem
os fios do cabo, alcançando o fio de cobre e criando o contato. Você deve
retirar apenas a capa externa do cabo e não descascar individualmente os fios,
pois isso, ao invés de ajudar, serviria apenas para causar mau contato,
deixando frouxo o encaixe com os pinos do conector.




                                                                             36
Crimpando o cabo

É preciso um pouco de atenção ao cortar e encaixar os fios dentro do conector,
pois eles precisam ficar perfeitamente retos. Isso demanda um pouco de
prática. No começo, você vai sempre errar algumas vezes antes de conseguir.

Veja que o que protege os cabos contra as interferências externas são
justamente as tranças. A parte destrançada que entra no conector é o ponto
fraco do cabo, onde ele é mais vulnerável a todo tipo de interferência. Por isso,
é recomendável deixar um espaço menor possível sem as tranças. Para
crimpar cabos dentro do padrão, você precisa deixar menos de meia polegada
de cabo (1.27 cm) destrançado. Você só vai conseguir isso cortando o excesso
de cabo solto antes de encaixar o conector, como na foto:




O primeiro teste para ver se os cabos foram crimpados corretamente é
conectar um dos micros (ligado) ao hub e ver se os LEDs da placa de rede e do
hub acendem. Isso mostra que os sinais elétricos enviados estão chegando até
o hub e que ele foi capaz de abrir um canal de comunicação com a placa. Se

                                                                              37
os LEDs nem acenderem, então não existe o que fazer. Corte os conectores e
tente de novo. Infelizmente, os conectores são descartáveis: depois de crimpar
errado uma vez, você precisa usar outro novo, aproveitando apenas o cabo.
Mais um motivo para prestar atenção. ;)

Os cabos de rede devem ter um mínimo de 30 centímetros e um máximo de
100 metros, distância máxima que o sinal elétrico percorre antes que comece a
haver uma degradação que comprometa a comunicação.

Todas as placas são ligadas ao hub, ou ao switch, que serve como uma
central, de onde os sinais de um micro são retransmitidos para os demais. É
possível também ligar vários hubs ou switchs entre si (até um máximo de 7),
formando redes maiores.




                      Um exemplo de hub/switch barato

A diferença entre um hub e um switch é que o hub apenas retransmite tudo o
que recebe para todos os micros conectados a ele, é um tagarela. Isso faz com
que apenas um micro consiga transmitir dados de cada vez e que todas as
placas precisem operar na mesma velocidade (sempre nivelada por baixo, caso
você coloque um micro com uma placa de 10 megabits na rede, a rede toda
passará a trabalhar a 10 megabits).

Os switchs, por sua vez, são aparelhos mais inteligentes. Eles fecham canais
exclusivos de comunicação entre o micro que está enviando dados e o que
está recebendo, permitindo que vários pares de micros troquem dados entre si
ao mesmo tempo. Isso melhora bastante a velocidade em redes
congestionadas, com muitos micros.

Antigamente, existia uma grande diferença de preço entre os hubs burros e os
switchs, mas os componentes caíram tanto de preço que a partir de um certo
ponto a diferença se tornou insignificante, e os fabricantes passaram a fabricar
apenas switchs, que por sua vez dividem-se em duas categorias: os switchs
"de verdade", aparelhos caros, capazes de gerenciar o tráfego de uma
quantidade maior de micros e que possuem várias ferramentas de
gerenciamento e os "hub-switchs", os modelos mais simples e baratos, que
usamos no dia-a-dia.

                                                                             38
Configuração da rede


Assim como quase tudo na informática, as redes funcionam graças a uma
mistura de hardware e software. A parte "física" da rede, que inclui as placas,
cabos e switchs é responsável por transportar os sinais elétricos de um micro
ao outro. Para que eles possam efetivamente se comunicar, é necessário
utilizar um conjunto de normas e protocolos, que especificam como enviar
informações e arquivos. Chegamos então ao TCP/IP, o protocolo comum que
permite que computadores rodando diferentes programas e sistemas
operacionais falem a mesma língua.

Pense nas placas, hubs e cabos como o sistema telefônico e no TCP/IP como
a língua falada que você usa para realmente se comunicar. Não adianta nada
ligar para alguém na China que não saiba falar Português. Sua voz vai chegar
até lá, mas a pessoa do outro lado não vai entender nada. Além da língua em
si, existe um conjunto de padrões, como por exemplo dizer "alô" ao atender o
telefone, dizer quem é, se despedir antes de desligar, etc.

Ligar os cabos e ver se os leds do hub e das placas estão acesos é o primeiro
passo. O segundo é configurar os endereços da rede para que os micros
possam conversar entre si, e o terceiro é finalmente compartilhar a internet,
arquivos, impressoras e o que mais você quer que os outros micros da rede
tenham acesso.

Graças ao TCP/IP, tanto o Windows quanto o Linux e outros sistemas
operacionais em uso são intercompatíveis dentro da rede. Não existe problema
para as máquinas com o Windows acessarem a internet através da conexão
compartilhada no Linux, por exemplo.

Independentemente do sistema operacional usado, as informações básicas
para que ele possa acessar a internet através da rede são:

- Endereço IP: Os endereços IP identificam cada micro na rede. A regra básica
é que cada micro deve ter um endereço IP diferente, e todos devem usar
endereços dentro da mesma faixa.

O endereço IP é dividido em duas partes. A primeira identifica a rede à qual o
computador está conectado (necessário, pois numa rede TCP/IP podemos ter
várias redes conectadas entre si, veja o caso da internet), e a segunda
identifica o computador (chamado de host) dentro da rede. É como se o mesmo
endereço contivesse o número do CEP (que indica a cidade e a rua) e o
número da casa.

A parte inicial do endereço identifica a rede, enquanto a parte final identifica o
computador dentro da rede. Quando temos um endereço "192.168.0.1", por
exemplo, temos o micro "1" dentro da rede "192.168.0". Quando alguém diz
"uso a faixa 192.168.0.x na minha rede", está querendo dizer justamente que
apenas o último número muda de um micro para outro.



                                                                               39
Na verdade, os endereços IP são números binários, de 32 bits. Para facilitar a
configuração e a memorização dos endereços, eles são quebrados em 4
números de 8 bits cada um. Os 8 bits permitem 256 combinações diferentes,
por isso usamos 4 números de 0 a 255 para representá-los.

Todos os endereços IP válidos na internet possuem dono. Seja alguma
empresa ou alguma entidade certificadora que os fornece junto com novos
links. Por isso não podemos utilizar nenhum deles a esmo.

Quando você conecta na internet, seu micro recebe um (e apenas um)
endereço IP válido, emprestado pelo provedor de acesso, algo como por
exemplo "200.220.231.34". É através desse número que outros computadores
na Internet podem enviar informações e arquivos para o seu.

Quando quiser configurar uma rede local, você deve usar um dos endereços
reservados, endereços que não existem na internet e que por isso podemos
utilizar à vontade em nossas redes particulares. Algumas das faixas reservadas
de endereços são: 10.x.x.x, 172.16.x.x até 172.31.x.x e 192.168.0.x até
192.168.255.x

Você pode usar qualquer uma dessas faixas de endereços na sua rede. Uma
faixa de endereços das mais usadas é a 192.168.0.x, onde o "192.168.0." vai
ser igual em todos os micros da rede e muda apenas o último número, que
pode ser de 1 até 254 (o 0 e o 255 são reservados para o endereço da rede e
para o sinal de broadcast). Se você tiver 4 micros na rede, os endereços deles
podem ser, por exemplo, 192.168.0.1, 192.168.0.2, 192.168.0.3 e 192.168.0.4.

- Máscara de sub-rede: A máscara é um componente importante do endereço
IP. É ela que explica para o sistema operacional como é feita a divisão do
endereço, ou seja, quais dos 4 octetos compõem o endereço da rede e quais
contêm o endereço do host, isto é, o endereço de cada micro dentro da rede.

Ao contrário do endereço IP, que é formado por valores entre 0 e 255, a
máscara de sub-rede é formada por apenas dois valores: 0 e 255, como em
255.255.0.0 ou 255.0.0.0, onde um valor 255 indica a parte do endereço IP
referente à rede, e um valor 0 indica a parte do endereço IP referente ao host
dentro da rede.

Se você está usando a faixa 192.168.0.x, por exemplo, que é um endereço de
classe C, então a máscara de sub-rede vai ser 255.255.255.0 para todos os
micros. Você poderia usar uma máscara diferente: 255.255.0.0 ou mesmo
255.0.0.0, desde que a máscara seja a mesma em todos os micros.

Se você tiver dois micros, 192.168.0.1 e 192.168.0.2, mas um configurado com
a máscara "255.255.255.0" e o outro com "255.255.0.0", você terá na verdade
duas redes diferentes. Um dos micros será o "1" conectado na rede
"192.168.0", e o outro será o "0.2", conectado na rede "192.168".

- Default Gateway (gateway padrão): Quando você se conecta à internet
através de um provedor de acesso qualquer, você recebe apenas um endereço
IP válido. A princípio, isso permitiria que apenas um micro acessasse a web,


                                                                           40
mas é possível compartilhar a conexão entre vários micros via NAT, opção
disponível tanto no Windows quanto no Linux.

Quando você compartilha a conexão entre vários micros, apenas o servidor
que está compartilhando a conexão possui um endereço IP válido, só ele
"existe" na internet. Todos os demais acessam através dele. O default gateway
ou gateway padrão é justamente o micro da rede que tem a conexão, é ele que
os outros consultarão quando precisarem acessar qualquer coisa na internet.

Por exemplo, se você montar uma rede doméstica com 4 PCs, usando os
endereços IP 192.168.0.1, 192.168.0.2, 192.168.0.3 e 192.168.0.4, e o PC
192.168.0.1 estiver compartilhando o acesso à internet, as outras três estações
deverão ser configuradas para utilizar o endereço 192.168.0.1 como gateway
padrão.


- Servidor DNS: Memorizar os 4 números de um endereço IP é muito mais
simples do que memorizar o endereço binário. Mas, mesmo assim, fora os
endereços usados na sua rede interna, é complicado sair decorando um monte
de endereços diferentes.

O DNS (domain name system) permite usar nomes amigáveis em vez de
endereços IP para acessar servidores, um recurso básico que existe
praticamente desde os primórdios da internet. Quando você se conecta à
internet e acessa o endereço http://www.guiadohardware.net, é um servidor
DNS que converte o "nome fantasia" no endereço IP real do servidor,
permitindo que seu micro possa acessar o site.

Para tanto, o servidor DNS mantém uma tabela com todos os nomes fantasia,
relacionados com os respectivos endereços IP. A maior dificuldade em manter
um servidor DNS é justamente manter esta tabela atualizada, pois o serviço
tem que ser feito manualmente. Dentro da internet, temos várias instituições
que cuidam dessa tarefa. No Brasil, por exemplo, temos a FAPESP. Para
registrar um domínio é preciso fornecer à FAPESP o endereço IP real do
servidor onde a página ficará hospedada. A FAPESP cobra uma taxa de
manutenção anual de R$ 30 por esse serviço. Servidores DNS também são
muito usados em intranets, para tornar os endereços mais amigáveis e fáceis
de guardar.

Faz parte da configuração da rede informar os endereços DNS do provedor (ou
qualquer outro servidor que você tenha acesso), que é para quem seu micro irá
perguntar sempre que você tentar acessar qualquer coisa usando um nome de
domínio e não um endereço IP. O jeito mais fácil de conseguir os endereços do
provedor é simplesmente ligar para o suporte e perguntar.

O ideal é informar dois endereços, assim se o primeiro estiver fora do ar, você
continua acessando através do segundo. Também funciona com um endereço
só, mas você perde a redundância. Exemplos de endereços de servidores DNS
são: 200.204.0.10 e 200.204.0.138.




                                                                             41
Um exemplo de configuração de rede completa para um dos micros da rede,
que vai acessar a internet através do micro que está compartilhando a conexão
seria:

      IP: 192.168.0.2
      Máscara: 255.255.255.0
      Gateway: 192.168.0.1 (o endereço do micro compartilhando a conexão)
      DNS: 200.204.0.10 200.204.0.138

O micro que está compartilhando a conexão, por sua vez, terá duas placas de
rede, uma para a internet e outra para a rede local, por isso vai ter uma
configuração separada para cada uma. A configuração da internet é feita da
forma normal, de acordo com o tipo de conexão que você usa, e a configuração
da rede interna segue o padrão que vimos até aqui.

É possível usar também um servidor DHCP, que faz com que os clientes
possam obter a configuração da rede automaticamente, a partir do servidor.
Hoje em dia, mesmo os modems ADSL mais simples oferecem a opção de
ativar um servidor DHCP, onde você só precisa especificar a faixa de
endereços que será fornecida aos clientes. Também é possível ativar o DHCP
ao compartilhar a conexão, tanto no Linux, quanto no Windows.

Aqui temos um exemplo de configuração do servidor DHCP, num modem
ADSL Kayomi LP-AL2011P. Assim como outros modems atuais, ele possui
uma interface de administração que pode ser acessada via navegador, através
de outro micro da rede:




                                                                           42
Redes wireless


Apesar de inicialmente muito mais caras, as redes wireless estão gradualmente
caindo de preço e se popularizando. Além da questão da praticidade, as redes
wireless podem ser utilizadas em casos onde, por um motivo ou outro, não é
viável usar cabos.

Em uma rede wireless, o hub é substituído pelo ponto de acesso (access-
point em inglês). Ele tem basicamente a mesma função: retransmitir os pacotes
de dados, de forma que todos os micros da rede os recebam. Em geral os
pontos de acesso possuem uma saída para serem conectados num hub
tradicional, permitindo que você "junte" os micros da rede cabeada com os que
estão acessando através da rede wireless, formando uma única rede.

Ao contrário dos hubs, os pontos de acesso são dispositivos inteligentes, que
podem ser configurados através de uma interface de administração via web.
Você se conecta num endereço específico usando o navegador (que muda de
aparelho para aparelho, mas pode ser encontrado facilmente no manual), loga-
se usando uma senha padrão e altera as configurações (e senhas!) de acordo
com as necessidades da sua rede.




                          Ponto de acesso wireless

Ao contrário de uma rede cabeada (onde podemos utilizar um switch), em
qualquer rede wireless a banda da rede é compartilhada entre os micros que
estiverem transmitindo dados simultaneamente. Isso acontece por que não
existem cabos independentes ligando o ponto de acesso a cada micro, mas um
único meio de transmissão (o ar), o que faz com que a rede opere como se
todos os micros estivessem ligados ao mesmo cabo. Enquanto um transmite,
os outros esperam. Conforme aumenta o número de micros e aumenta o
tráfego da rede, mais cai o desempenho.

Outra questão é que a potência do sinal decai conforme aumenta a distância,
enquanto a qualidade decai pela combinação do aumento da distância e dos



                                                                           43
obstáculos pelo caminho. É por isso que num campo aberto o alcance será
muito maior do que dentro de um prédio, por exemplo.

Conforme a potência e a qualidade do sinal se degradam, o ponto de acesso
pode diminuir a velocidade de transmissão, a fim de melhorar a confiabilidade
da transmissão. A velocidade pode cair para 5.5 megabits, 2 megabits ou
chegar a apenas 1 megabit por segundo antes que o sinal se perca
completamente.

Existem três padrões diferentes de rede wireless em uso. O primeiro (e mais
lento) é o 802.11b, onde a rede opera a uma taxa teórica de 11 megabits.

O seguinte é o 802.11a, que ao contrário do que o nome dá a entender, é mais
recente que o 802.11b. As redes 802.11a são mais rápidas (54 megabits) e são
mais resistentes a interferências, pois operam na faixa de freqüência dos 5
GHz, em vez dos 2.4 GHz usados no 802.11b. A desvantagem é que, pelo
mesmo motivo (a freqüência mais alta), o alcance das redes 802.11a é menor,
cerca de metade do alcance de uma rede 802.11b. As placas 802.11a são
relativamente raras e, como a maioria é capaz de operar nos dois padrões,
muitas delas acabam operando a 11 megabits, juntando-se a redes 802.11b já
existentes.

Finalmente, temos o 802.11g, o padrão atual. Ele junta o melhor dos dois
mundos, operando a 54 megabits, como no 802.11a, e trabalhando na mesma
faixa de freqüência do 802.11b (2.4 GHz), o que mantém o alcance inicial. Para
que a rede funcione a 54 megabits, é necessário que tanto o ponto de acesso,
quanto todas as placas sejam 802.11g, caso contrário a rede inteira passa a
operar a 11 megabits, a fim de manter compatibilidade com as placas antigas.
Muitos pontos de acesso permitem desativar esse recurso, fazendo com que as
placas de 11 megabits simplesmente fiquem fora da rede, sem prejudicar o
desempenho das demais.

As redes wireless também são redes Ethernet e também usam o TCP/IP. Mas,
além da configuração dos endereços IP, máscara, gateway, etc., feita da
mesma forma que numa rede cabeada, temos um conjunto de parâmetros
adicional.

A configuração da rede wireless é feita em duas etapas. Primeiro você precisa
configurar o ESSID, o canal e (caso usada encriptação) a chave WEP ou WPA
que dá acesso à rede.

O ESSID é uma espécie de nome de rede. Dois pontos de acesso, instalados
na mesma área, mas configurados com dois ESSIDs diferentes formam duas
redes separadas, permitindo que a sua rede não interfira com a do vizinho, por
exemplo. Mesmo que existam várias redes na mesma sala, indicar o ESSID
permite que você se conecte à rede correta.

Em seguida temos o canal, que novamente permite que vários pontos de
acesso dentro da mesma área trabalhem sem interferir entre si. Temos um total
de 16 canais (numerados de 1 a 16), mas a legislação de cada país permite o
uso de apenas alguns deles. Nos EUA, por exemplo, é permitido usar apenas


                                                                           44
do 1 ao 11 e na França apenas do 10 ao 13. Essa configuração de país é
definida na configuração do ponto de acesso.

O ESSID sozinho provê uma segurança muito fraca, pois qualquer um que
soubesse o nome da rede poderia se conectar a ele ou mesmo começar a
escutar todas as conexões. Embora o alcance normal de uma rede wireless,
usando as antenas padrão das placas e os pontos de acesso, normalmente
não passe de 30 ou 50 metros (em ambientes fechados) usando antenas
maiores, de alto ganho e conseguindo uma rota sem obstáculos, é possível
captar o sinal de muito longe, chegando a 2 ou até mesmo a 5 km, de acordo
com a potência de sinal do ponto de acesso usado.

Como é praticamente impossível impedir que outras pessoas captem o sinal da
sua rede, a melhor solução é encriptar as informações, de forma que ela não
tenha utilidade fora do círculo autorizado a acessar a rede.

Existem atualmente três padrões de encriptação, o WEP de 64 bits, o WEP de
128 bits e o WPA, o padrão mais recente e mais seguro.

Embora nenhum dos três seja livre de falhas, elas são uma camada essencial
de proteção, que evita que sua rede seja um alvo fácil. É como as portas de
uma casa. Nenhuma porta é impossível de arrombar, mas você não gostaria de
morar numa casa sem portas. O WEP é relativamente fácil de quebrar, usando
ferramentas como o kismet e ao aircrack, mas o WPA pode ser considerado
relativamente seguro.

Ao usar WEP, você define uma chave de 10 (WEP de 64 bits) ou 26 (WEP de
128 bits) caracteres em hexa, onde podem ser usados números de 0 a 9 e as
letras A, B, C, D, E e F. Também é possível usar caracteres ASCII (incluindo
acentuação e todo tipo de caracteres especiais); nesse caso as chaves terão
respectivamente 5 e 13 caracteres.

A regra básica é que os micros precisam possuir a chave correta para se
associarem ao ponto de acesso e acessarem a rede. Em geral os pontos de
acesso permitem que você especifique várias chaves diferentes, de forma que
cada micro pode usar uma diferente.



Capítulo 1:
54 anos de história: do ENIAC ao Athlon



Assim como em outras áreas, os computadores começaram como aparelhos
rudimentares, que eram capazes de desempenhar apenas tarefas muito
simples. Mesmo componentes básicos, como o HD e outros tipos de unidade
de armazenamento foram introduzidos apenas muito mais tarde.

Estudar sobre a história da informática permite entender melhor como os PCs
atuais funcionam, já que uma coisa é consequência da outra. Do ENIAC,
construído em 1945, até os processadores modernos, tivemos um longo

                                                                              45
caminho. Este capítulo é justamente um "resumo da ópera", que resume a
história da informática, das válvulas e relês até o Athlon, lançado em 1999,
passando pelos computadores das décadas de 50, 60 e 70, os primeiros
computadores pessoais e a era dos processadores modernos, que começou
com o 386.

Os primórdios


A história da informática nos remete ao final do século XIX. Na época dos
nossos tataravôs, os computadores já existiam, apesar de extremamente
rudimentares. Eram os computadores mecânicos, que realizavam cálculos
através de um sistema de engrenagens, acionado por uma manivela ou outro
sistema mecânico qualquer. Esse tipo de sistema, comum na forma de caixas
registradoras, predominou até o início da década de 70, quando as
calculadoras portáteis se popularizaram.

No final do século XIX, surgiu o relê, um dispositivo eletromecânico, formado
por um magneto móvel, que se deslocava unindo dois contatos metálicos. O
relê foi muito usado no sistema telefônico, no tempo das centrais analógicas.
Nas localidades mais remotas, algumas continuam em atividade até os dias de
hoje.




                                     relê

Os relês podem ser considerados como uma espécie de antepassados dos
transístores. Suas limitações eram o fato de serem relativamente caros,
grandes demais e, ao mesmo tempo, muito lentos: um relê demora mais de um
milésimo de segundo para fechar um circuito.

Apesar disso, os relês são usados até hoje em alguns dispositivos. Um
exemplo são os modems discados, onde o relê é usado para ativar o uso da
linha telefônica, ao discar. Eles são usados também em estabilizadores e
nobreaks (geralmente nos modelos de baixo custo), onde são os responsáveis
pelos "clicks" que você ouve durante as variações de tensão.

O fato de usar relês e fazer barulho, não é um indício de qualidade do
estabilizador ou nobreak (muito pelo contrário), mas infelizmente muitas
pessoas associam isso com o fato do aparelho estar funcionando, o que faz
com que produtos de baixa qualidade continuem sendo produzidos e vendidos.


                                                                               46
Voltando à história, também no final do século XIX, surgiram as primeiras
válvulas. As válvulas foram usadas para criar os primeiros computadores
eletrônicos, na década de 40.

As válvulas têm seu funcionamento baseado no fluxo de elétrons no vácuo.
Tudo começou numa certa tarde quando Thomas Edson, inventor da lâmpada
elétrica, estava brincando com a sua invenção. Ele percebeu que, ao ligar a
lâmpada ao pólo positivo de uma bateria e uma placa metálica ao pólo
negativo, era possível medir uma certa corrente fluindo do filamento da
lâmpada até a chapa metálica, mesmo que não existisse contato entre eles.
Havia sido descoberto o efeito termoiônico, o princípio de funcionamento das
válvulas.

As válvulas já eram bem mais rápidas que os relês, atingiam freqüências de
alguns megahertz, o problema é que esquentavam demais, consumiam muita
eletricidade e se queimavam com facilidade. Era fácil usar válvulas em rádios,
que utilizavam poucas, mas construir um computador, que usava milhares
delas era extremamente complicado e caro.

Apesar de tudo isso, os primeiros computadores começaram a surgir durante a
década de 40, naturalmente com propósitos militares. Os principais usos eram
a codificação e a decodificação de mensagens e cálculos de artilharia.

O ENIAC


Sem dúvida, o computador mais famoso daquela época foi o ENIAC (Electronic
Numerical Integrator Analyzer and Computer), construído em 1945. O ENIAC
era composto por nada menos do que 17.468 válvulas, além de 1.500 relês e
um grande número de capacitores, resistores e outros componentes.

No total, ele pesava 30 toneladas e era tão volumoso que ocupava um grande
galpão. Outro grave problema era o consumo elétrico: um PC típico atual, com
um monitor LCD, consome cerca de 100 watts de energia, enquanto o ENIAC
consumia incríveis 200 kilowatts.

Construir esse monstro custou ao exército Americano 468.000 dólares da
época, que correspondem a pouco mais de US$ 10 milhões em valores
corrigidos.

Porém, apesar do tamanho, o poder de processamento do ENIAC é ridículo
para os padrões atuais, suficiente para processar apenas 5.000 adições, 357
multiplicações ou 38 divisões por segundo. O volume de processamento do
ENIAC foi superado pelas calculadoras portáteis ainda na década de 70 e, hoje
em dia, mesmo as calculadoras de bolso, das mais baratas, são bem mais
poderosas do que ele.

A idéia era construir um computador para quebrar códigos de comunicação e
realizar vários tipos de cálculos de artilharia para ajudar as tropas aliadas
durante a Segunda Guerra Mundial. Porém, o ENIAC acabou sendo terminado
exatos 3 meses depois do final da guerra e foi usado durante a Guerra Fria,
contribuindo por exemplo no projeto da bomba de hidrogênio.

                                                                           47
ENIAC (foto do acervo do Exército dos EUA)

Se você acha que programar em C ou em Assembly é complicado, imagine
como era a vida dos programadores daquela época. A programação do ENIAC
era feita através de 6.000 chaves manuais e, ao invés de ser feita através de
teclas, toda a entrada de dados era feita através de cartões de cartolina
perfurados, que armazenavam poucas operações cada um.

Uma equipe preparava os cartões, incluindo as operações a serem realizadas,
formando uma pilha, outra ia trocando os cartões no leitor do ENIAC, e uma
terceira "traduzia" os resultados, também impressos em cartões, para o padrão
decimal.

O ENIAC também possuía sérios problemas de manutenção. A cada 5 minutos,
em média, alguma das válvulas se queimava, tornando necessárias
manutenções freqüentes. A seguir está a foto de uma válvula muito usada na
década de 40:




                                   Válvula

Vendo essa foto, é fácil imaginar por que as válvulas eram tão problemáticas e
caras: elas eram simplesmente complexas demais.

Mesmo assim, na época, as válvulas eram o que existia de mais avançado,
permitindo que computadores como o ENIAC executassem, em poucos
segundos, cálculos que um matemático equipado com uma calculadora
mecânica demorava horas para executar.



                                                                            48
O transistor


Durante a década de 1940 e início da de 1950, a maior parte da indústria
continuou trabalhando no aperfeiçoamento das válvulas, obtendo modelos
menores e mais confiáveis. Porém, vários pesquisadores, começaram a
procurar alternativas menos problemáticas.

Várias dessas pesquisas tinham como objetivo o estudo de novos materiais,
tanto condutores quanto isolantes. Os pesquisadores começaram então a
descobrir que alguns materiais não se enquadravam nem em um grupo nem
em outro, pois, de acordo com a circunstância, podiam atuar tanto como
isolantes quanto como condutores, formando uma espécie de grupo
intermediário que foi logo apelidado de grupo dos semicondutores.

Haviam encontrado a chave para desenvolver o transístor. O primeiro protótipo
surgiu em 16 de dezembro de 1947 (veja a foto a seguir), consistindo em um
pequeno bloco de germânio (que na época era junto com o silício o
semicondutor mais pesquisado) e três filamentos de ouro. Um filamento era o
pólo positivo, o outro, o pólo negativo, enquanto o terceiro tinha a função de
controle.

Tendo apenas uma carga elétrica no pólo positivo, nada acontecia: o germânio
atuava como um isolante, bloqueando a corrente. Porém, quando uma certa
tensão elétrica era aplicada usando o filamento de controle, um fenômeno
acontecia e a carga elétrica passava a fluir para o pólo negativo. Haviam criado
um dispositivo que substituía a válvula, que não possuía partes móveis,
gastava uma fração da eletricidade e, ao mesmo tempo, era muito mais rápido.




                             O primeiro transístor

O primeiro transístor era muito grande, mas não demorou muito para que esse
modelo inicial fosse aperfeiçoado. Durante a década de 1950, o transístor foi
aperfeiçoado e passou a gradualmente dominar a indústria, substituindo

                                                                             49
rapidamente as problemáticas válvulas. Os modelos foram diminuindo de
tamanho, caindo de preço e tornando-se mais rápidos. Alguns transístores da
época podiam operar a até 100 MHz. Claro que essa era a freqüência que
podia ser alcançada por um transístor sozinho, nos computadores da época, a
freqüência de operação era muito menor, já que em cada ciclo de
processamento o sinal precisa passar por vários transístores.

Mas, o grande salto foi a substituição do germânio pelo silício. Isso permitiu
miniaturizar ainda mais os transístores e baixar seu custo de produção. Os
primeiros transístores de junção comerciais (já similares aos atuais) foram
produzidos a partir de 1960 pela Crystalonics, decretando o final da era das
válvulas.

A idéia central no uso do silício para construir transístores é que, adicionando
certas substâncias em pequenas quantidades, é possível alterar as
propriedades elétricas do silício. As primeiras experiências usavam fósforo e
boro, que transformavam o silício em condutor por cargas negativas ou em
condutor por cargas positivas, dependendo de qual dos dois materiais fosse
usado. Essas substâncias adicionadas ao silício são chamadas de impurezas,
e o silício "contaminado" por elas é chamado de silício dopado.

O funcionamento de um transístor é bastante simples, quase elementar. É
como naquele velho ditado "as melhores invenções são as mais simples". As
válvulas eram muito mais complexas que os transístores e, mesmo assim,
foram rapidamente substituídas por eles.

Um transístor é composto basicamente por três filamentos, chamados de base,
emissor e coletor. O emissor é o pólo positivo, o coletor, o pólo negativo,
enquanto a base é quem controla o estado do transístor, que como vimos,
pode estar ligado ou desligado. Veja como esses três componentes são
agrupados num transístor moderno:




                                   transístor

Quando o transístor está desligado, não existe carga elétrica na base, por isso,
não existe corrente elétrica entre o emissor e o coletor. Quando é aplicada uma
certa tensão na base, o circuito é fechado e é estabelecida a corrente entre o
emissor e o receptor.

Cada transístor funciona como uma espécie de interruptor, que pode estar
ligado ou desligado, como uma torneira que pode estar aberta ou fechada, ou
mesmo como uma válvula. A diferença é que o transístor não tem partes


                                                                             50
móveis como uma torneira e é muito menor, mais barato, mais durável e muito
mais rápido que uma válvula.

A mudança de estado de um transístor é feita através de uma corrente elétrica.
Cada mudança de estado pode então comandar a mudança de estado de
vários outros transístores ligados ao primeiro, permitindo o processamento de
dados. Num transístor essa mudança de estado pode ser feita bilhões de vezes
por segundo, porém, a cada mudança de estado é consumida uma certa
quantidade de eletricidade, que é transformada em calor. É por isso que quanto
mais rápidos tornam-se os processadores, mais eles se aquecem e mais
energia consomem.

Um 386, por exemplo, consumia pouco mais de 1 watt de energia e podia
funcionar sem nenhum tipo de resfriamento. Um 486DX-4 100 consumia cerca
de 5 watts e precisava de um cooler simples, enquanto um Athlon X2 chega a
consumir 89 watts de energia (no X2 5600+) e precisa de no mínimo um bom
cooler para funcionar bem. Em compensação, a versão mais rápida do 386
operava a apenas 40 MHz, enquanto os processadores atuais já superaram a
barreira dos 3.0 GHz.

O grande salto veio quando descobriu-se que era possível construir vários
transístores sobre o mesmo wafer de silício. Isso permitiu diminuir de forma
gritante o custo e tamanho dos computadores. Entramos então na era do
microchip.

O primeiro microchip comercial foi lançado pela Intel em 1971 e chamava-se
4004. Como o nome sugere, ele era um processador que manipulava palavras
de apenas 4 bits (embora já trabalhasse com instruções de 8 bits). Ele era
composto por pouco mais de 2000 transístores e operava a apenas 740 kHz.
Embora fosse muito limitado, ele foi muito usado em calculadoras, área em que
representou uma pequena revolução. Mais do que isso, o sucesso do 4004
mostrou a outras empresas que os microchips eram viáveis, criando uma
verdadeira corrida evolucionária, em busca de processadores mais rápidos e
avançados.




                                  Intel 4004

Em 1972 surgiu o Intel 8008, o primeiro processador de 8 bits e, em 1974, foi
lançado o Intel 8080, antecessor do 8088, que foi o processador usado nos

                                                                           51
primeiros PCs. Em 1977 a AMD passou a vender um clone do 8080,
inaugurando a disputa Intel x AMD, que continua até os dias de hoje.




                               O 8080 da AMD

Uma observação é que o termo original, em inglês é "transistor", sem o acento.
O problema é que em português pronunciamos "transístor" e não "transistor",
por isso é comum que ao escrever em português o termo seja "aportuguesado"
e escrito com o acento. O mesmo acontece com a palavra "micron", que é
muitas vezes escrita com acento (mícron), indicando a pronúncia mais usada.
Nestes casos você fica livre para escrever da forma que preferir.

Como são fabricados os processadores


O componente básico para qualquer chip é o wafer de silício que é obtido
através da fusão do silício junto com os materiais que permitirão sua dopagem
posteriormente. O silício é um dos materiais mais abundantes da natureza, o
grande problema é que os wafers de silício precisam ser compostos de silício
99,9999% puro, o que demanda um caro e complicado processo de
purificação. Qualquer impureza que passe despercebida nessa fase acabará
resultando em um chip defeituoso mais adiante.

Inicialmente são produzidos cilindros, com de 20 a 30 centímetros de diâmetro,
que são posteriormente cortados em fatias bastante finas:




Essas "fatias" são polidas e tratadas, obtendo os wafers de silício. A qualidade
do wafer determinará o tipo de chip que poderá ser construído com base nele.

Wafers de baixa qualidade, usados para construir circuitos rudimentares, com
poucos milhares de transístores, podem ser comprados a preços bastante
baixos, a partir de milhares de fornecedores diferentes. Entretanto, para
produzir um processador moderno, é preciso utilizar wafers de altíssima
qualidade, que são extremamente caros.

                                                                             52
Embora o silício seja um material extremamente barato e abundante, toda a
tecnologia necessária para produzir os wafers faz com que eles estejam entre
os produtos mais caros produzidos pelo homem. Cada wafer de 30 centímetros
custa mais de 20 mil dólares para um fabricante como a Intel, mesmo quando
comprados em grande quantidade.

Cada wafer é usado para produzir vários processadores, que no final da
produção são separados e encapsulados individualmente. Não seria possível
mostrar todos os processos usados na fabricação de um processador, mas
para lhe dar uma boa idéia de como eles são produzidos, vou mostrar passo a
passo a construção de um único transístor. Imagine que um Core 2 Duo possui
291 milhões de transístores e cada wafer permite produzir algumas centenas
de processadores.

Tudo começa com o wafer de silício em seu estado original:




A primeira etapa do processo é oxidar a parte superior do wafer,
transformando-a em dióxido de silício. Isso é feito através da exposição do
wafer a gases corrosivos e a altas temperaturas. A fina camada de dióxido de
silício que se forma é que será usada como base para a construção do
transístor:




Em seguida é aplicada uma camada bastante fina de um material fotossensível
sobre a camada de dióxido de silício.

Usando uma máscara de litografia, é jogada luz ultravioleta apenas em
algumas áreas da superfície. A máscara tem um padrão diferente para cada
área do processador, de acordo com o desenho que se pretende obter:




                                                                          53
A técnica usada aqui é chamada de litografia óptica. Existem diversas
variações da tecnologia, como a EUVL (Extreme Ultra Violet Lithography),
usada nos processadores atuais. Quanto mais avançada a técnica usada,
menores são os transístores, permitindo o desenvolvimento de processadores
mais complexos e rápidos.

A camada fotossensível é originalmente sólida, mas ao ser atingida pela luz
ultravioleta transforma-se numa substância gelatinosa, que pode ser facilmente
removida. Depois de remover as partes moles da camada fotossensível
(através de um banho químico), temos algumas áreas do dióxido de silício
expostas, e outras que continuam cobertas pelo que restou da camada:




O wafer passa por um novo banho químico (baseado em compostos
diferentes), que remove as partes do dióxido de silício que não estão
protegidas pela camada fotossensível. Apesar disso, o restante continua
intacto:




Finalmente, é removida a parte que restou da camada fotossensível. Note que,
como temos substâncias diferentes, é possível remover uma camada de cada
vez, ora o dióxido de silício, ora a própria camada fotossensível. Com isto é
possível "desenhar" as estruturas necessárias para formar os transístores:




                                                                           54
Cada transístor é formado para várias camadas, dependendo do projeto do
processador. Neste exemplo, temos um transístor simples, mas os
processadores atuais utilizam um numero muito maior de camadas, mais de
vinte em alguns casos, dependendo da densidade que o fabricante pretende
alcançar.

Começa então a construção da segunda camada do transístor. Inicialmente o
wafer passa novamente pelo processo de oxidação inicial, sendo coberto por
uma nova camada (desta vez bem mais fina) de dióxido de silício. Note que
apesar da nova camada de dióxido de silício, o desenho anterior é mantido.




Em seguida é aplicada uma camada de cristal de silício sobre a estrutura
anterior. Sobre ela é aplicada uma nova camada de material fotossensível, que
será usado na fase seguinte:




O waffer passa novamente pelo processo de litografia, desta vez utilizando
uma máscara diferente. O processo de fabricação das diferentes camadas do
processador baseia-se justamente na repetição deste processo básico,
alternando o uso de diferentes máscaras de litografia e banhos químicos:




                                                                          55
Novamente, a parte da camada fotossensível que foi exposta à luz é removida,
deixando expostas partes das camadas de cristal de silício e dióxido de silício,
que são removidas em seguida:




Como na etapa anterior, é removido o que restou da camada fotossensível.
Terminamos a construção da segunda camada do transístor:




Chegamos a uma das principais etapas do processo de fabricação, que é a
aplicação das impurezas, que transformarão partes do wafer de silício num
material condutor. Essas impurezas também são chamadas de íons. Note que
os íons aderem apenas à camada de silício que foi exposta no processo
anterior e não às camadas de dióxido de silício ou à camada de cristal de
silício:




                                                                             56
É adicionada então uma terceira camada, composta por um tipo diferente de
cristal de silício, e novamente é aplicada a camada fotossensível sobre todo o
material:




O wafer passa novamente pelo processo de litografia, usando mais uma vez
uma máscara diferente:




As partes do material fotossensível expostas à luz são removidas, expondo
partes das camadas inferiores, que são removidas em seguida:




Temos agora pronta a terceira camada do transístor. Veja que a estrutura do
transístor já está quase pronta, faltando apenas os filamentos condutores:




                                                                            57
Uma finíssima camada de metal é aplicada sobre a estrutura anterior. Nos
processadores atuais, que são produzidos através de uma técnica de produção
de 0.065 micron, essa camada metálica tem o equivalente a apenas 3 átomos
de espessura.




O processo de aplicação da camada fotossensível, de litografia e de remoção
das camadas, é aplicado mais uma vez, com o objetivo de remover as partes
indesejadas da camada de metal. Finalmente temos o transístor pronto.




Cada processador é constituído por vários milhões de transístores, divididos
em diversos grupos de componentes, entre eles as unidades de execução
(onde as instruções são realmente processadas) e os caches. Como todo
processador atual processa várias instruções por ciclo, são incluídos diversos
circuitos adicionais, que organizam e ordenam as instruções, de forma a
aproveitar da melhor maneira possível os recursos disponíveis.

Como você viu, embora absurdamente mais avançado, o processo de
fabricação dos processadores é muito similar ao processo de revelação de
fotos, onde a imagem do negativo é impressa no papel fotográfico usando luz.
O "negativo" neste caso são as retículas (as máscaras de litografia).

Embora nesse exemplo tenha mostrado a produção de um único transístor, na
produção real são usadas máscaras contendo todos os componentes do
processador. No final do processo, teríamos um processador inteiro pronto, em
toda a sua complexidade, ao invés de um transístor solitário.

No começo (início da década de 70), os filmes usados para produzir as
máscaras de litografia eram, literalmente, feitos a mão, usando rubylith, um
filme plástico de duas camadas, que é ainda usado por artistas gráficos. O
engenheiro cortava a camada superior usando um estilete, criando um desenho
das trilhas e outros componentes que seriam posteriormente "impressos" no
wafer de silício formando o chip. Eram usadas várias máscaras diferentes, que
deveriam combinar-se com precisão absoluta. Esta é uma foto antiga,


                                                                            58
publicada no Intel Technology Journal, que mostra como o trabalho era
delicado:




Existiram inclusive histórias engraçadas, como o Intel 3101, o primeiro chip de
memória da Intel. A primeira versão acabou ficando com apenas 63 bits (ao
invés de 64) devido a um erro em uma das máscaras de litografia ;).

As máscaras feitas no rubylith eram depois transferidas para um filme, através
de um processo de redução, gerando as retículas usadas na produção. Devido
à enorme precisão envolvida, são utilizados espectros de luz não-visível,
utilizando comprimentos de onda incrivelmente curtos, geradas a partir de laser
ou pulsos de de descarga.




Atualmente, o processo de produção das máscaras é completamente
automatizado. O próprio desenvolvimento dos processadores mudou. Ao invés
de projetar os circuitos manualmente, os engenheiros utilizam um HDL
(hardware description language), como o VHDL ou o Verilog (os mais usadas
atualmente), que são uma espécie de linguagem de programação para o
desenvolvimento de processadores, onde o engenheiro "programa" as
instruções que devem ser executadas e outras características do processador,
e o HDL gera o projeto do chip.

Naturalmente, ainda é possível desenvolver processadores (ou otimizar
componentes internos específicos) usando o processo manual (assim como é
possível programar em assembly), mas o processo se torna muito mais lento e
trabalhoso. É comum que os processadores passem por diversas revisões

                                                                             59
durante sua via útil, onde a equipe de desenvolvimento começa com um design
produzido através de um HDL e depois trata de otimizá-lo sucessivamente,
obtendo assim ganhos de performance e outras melhorias.

No final do processo, temos um grande arquivo, que é enviado para a fábrica,
onde são produzidas as retículas e feitas as demais fases do processo. Uma
vez terminado o projeto, os engenheiros precisam esperar várias semanas até
que os primeiros chips funcionais sejam produzidos. Qualquer erro que chegue
até a fase de produção geraria um prejuízo de vários milhões, por isso o projeto
passa por inúmeras revisões.

As máquinas de produção (chamadas steppers) repetem a "impressão" várias
vezes, até cobrir toda a área do wafer de silício. Em seguida o wafer é movido
para a máquina com a máscara seguinte e assim continua, até que o processo
esteja completo. Todo o processo é feito numa sala limpa, por engenheiros
usando os trajes de astronauta que aparecem nos comerciais da Intel. Todo
cuidado é pouco, já que cada wafer contém centenas de processadores, que
juntos valem algumas dezenas de milhares de dólares. Temos aqui uma foto
ilustrativa, cortesia da Intel:




Depois de pronto, o wafer é cortado, dando origem aos processadores
individuais. Desses, muitos acabam sendo descartados, pois qualquer
imperfeição na superfície do wafer, partícula de poeira, ou anomalia durante o
processo de litografia acaba resultando numa área defeituosa. Como não é
possível produzir um wafer de silício quadrado, temos também os
processadores "incompletos", que ocupam as bordas do wafer e que também
são descartados no final do processo.




                                                                             60
Processo de corte do wafer de silício (imagem cortesia da Micron)

Você poderia perguntar o porquê de não utilizarem retículas maiores para
imprimir todo o wafer de uma única vez, ao invés de ter que repetir o processo
para cada processador individual. O problema aqui reside no foco, que é
perfeito no centro e sensivelmente pior nas bordas.

Já é difícil desenvolver máquinas que consigam manter o foco na área do chip,
o que dizer então de mantê-lo em toda o wafer, que é uma superfície muito
maior. É por isso também que os processadores são sempre mais ou menos
quadrados, já que o formato permite obter o melhor foco.

Cada processador é testado individualmente, através de um processo
automático. O wafer é finalmente cortado e os processadores "bons" são
finalmente encapsulados, ou seja, instalados dentro da estrutura que os
protege e facilita o manuseio e a instalação:




Nem todo processador nasce igual. Pequenas diferenças no foco, pequenos
desvios no posicionamento das máquinas ao "imprimir" cada camada e assim
por diante, fazem com que alguns processadores sejam mais rápidos que
outros e muitos simplesmente não funcionem ou apresentem defeitos diversos.

                                                                           61
Em geral, mesmo grandes fabricantes como a Intel e AMD mantêm uma única
linha de produção para cada processador. Os processadores são testados
individualmente e vendidos de acordo com a freqüência de operação em que
são capazes de trabalhar.

Um Core Duo 6600 (2.4 GHz) não é diferente de um Core Duo 6800 (2.96
GHz), por exemplo. Ambos compartilham a mesma arquitetura e passaram
pela mesma linha de produção (pode ser que os dois tenham até mesmo
compartilhado o mesmo wafer! :). A única diferença é que o 6800 teve a "sorte"
de sair mais perfeito e, graças a isso, ser capaz de operar a freqüências mais
altas. Com o passar o tempo o índice de aproveitamento tende a melhorar,
fazendo com que mais e mais processadores sejam capazes de operar nas
freqüências mais altas, até que finalmente é introduzida uma nova técnica de
fabricação, ou uma nova família de processadores, dando início a um novo
ciclo.

O formato do encapsulamento varia de processador para processador.
Geralmente temos um spreader, ou seja, uma proteção de metal sobre o die do
processador, que fica entre ele e o cooler. Entretanto em muitos
processadores, como os Athlons, Durons e Semprons antigos, é usado um
encapsulamento mais simples, em que a parte central é a própria parte inferior
do wafer de silício, exposta para melhorar a dissipação de calor. Nesses casos,
é preciso redobrar os cuidados na hora de instalar e remover o cooler, pois
qualquer dano ao núcleo será suficiente para inutilizar o processador:




    Sempron soquete A, exemplo de processador sem o spreader metálico

Só a título de curiosidade: o Intel 4004 era produzido usando uma técnica de
10 micra, em que cada transístor media o equivalente a 1/100 de milímetro.
Considerando que um fio de cabelo possui apenas 1/10 de milímetro de
espessura, transístores de 10 micra (micra é o plural de micron) podem parecer
pequenos, mas se comparados com os atuais, eles parecem pirâmides, de tão
grandes. :)

O 486 já foi produzido numa técnica de 1 micron, onde cada transístor ocupa
uma área 100 vezes menor. Enquanto o 4004 tinha apenas 2.000 transístores,
o 486 tinha um milhão deles.


                                                                            62
Como a velocidade de operação do transístor está diretamente relacionada a
seu tamanho, o 486 é também brutalmente mais rápido. Enquanto o 4004
opera a 740 kHz, o 486 atingiu 100 MHz (nas versões fabricados pela Intel).

Mas isso não é nada se comparado aos processadores atuais. Um Core 2 Duo
X6800 é fabricado numa técnica de 0.065 micron (237 vezes menores que os
do 486!), possui 291 milhões de transístores e opera a 2.93 GHz.

Estão previstos processadores fabricados numa técnica de 0.045 micron em
2008 e 0.032 micron em 2010. Depois disso não se sabe até onde a tecnologia
poderá evoluir, pois os fabricantes estão se aproximando dos limites da
matéria. A 0.032 micron já temos transístores ocupando uma área equivalente
a poucas centenas de átomos de silício.

Atualmente, muitos tem passado a utilizar o nanômetro como unidade de
medida no lugar do micron, pois é mais fácil de pronunciar. Um nanômetro
equivale a um milésimo de micron, de forma que em vez de dizer que o
processador, x é fabricado numa técnica de 0.045 micron, você pode dizer que
ele é fabricado numa técnica de 45 nanômetros.

Os supercomputadores


Nas décadas de 1940 e 1950, todos os computadores do mundo eram
gigantescos e caros, agregando tudo o que havia de mais avançado em termos
de conhecimento humano. Hoje, pode parecer ridículo que qualquer
calculadora de mão de 3 reais possa ter um poder de processamento muito
superior ao de um ENIAC, que só de manutenção consumia o equivalente a
quase 200.000 dólares por dia (em valores corrigidos). Mas, os
supercomputadores continuam existindo, tão grandes e caros quanto o ENIAC,
porém incomparavelmente mais rápidos do que os PCs e notebooks
domésticos.

Esses mastodontes estão por trás de muitos dos avanços da humanidade e,
apesar de estarem escondidos em grandes salas refrigeradas, são alvo de
grande curiosidade.

Enquanto escrevo, o supercomputador mais rápido do planeta (segundo o
http://www.top500.org/) é o IBM Blue Gene/L, desenvolvido pela IBM. Ele é
composto por nada menos do que 131.072 processadores PowerPC e possui
32 terabytes de memória RAM.

Para chegar a esses números, a IBM desenvolveu módulos relativamente
simples, cada um contendo 2 processadores, 512 MB de RAM e uma interface
de rede gigabit Ethernet, similares a um PC doméstico. Esses módulos foram
agrupados em racks (chamados de nós), cada um com 128 deles. No final,
chegaram a 512 racks, interligados por uma complexa malha de cabos de rede,
rodando um software próprio de gerenciamento. Essa gigantesca estrutura
funciona como um cluster, onde o processamento é dividido em pequenos
pedaços e dividido entre os módulos. Veja uma foto mostrando parte das
instalações:


                                                                          63
IBM Blue Gene/L

Os primeiros supercomputadores começaram a surgir na década de 60, aliás
uma década de muitos avanços, já que no final da década de 50 foi feita a
transição das válvulas para os transístores. Cada transístor era centenas de
vezes menor que uma válvula, era muito mais durável e tinha a vantagem de
gerar pouco calor.

Todos os computadores da década de 60 já utilizavam transístores, o que
permitiu o desenvolvimento dos primeiros minicomputadores. Naquela época,
minicomputador era qualquer coisa do tamanho de um armário, com uma
capacidade de processamento inferior ao de uma agenda eletrônica atual, das
mais baratas.

Os computadores de grande porte, porém, continuaram a ser desenvolvidos,
passando a ser chamados de supercomputadores. O primeiro
supercomputador para fins comerciais foi o CDC 6600, que foi seguido pelos
IBM 360/95 e 370/195.

Na década de 70 surgiu uma nova revolução: o microchip. Um microchip
sozinho oferecia uma capacidade de processamento equivalente à de um
minicomputador, mas em compensação era escandalosamente menor e mais
barato. Surgiram então os primeiros microcomputadores.

Os supercomputadores da década de 70 já eram centenas de vezes mais
poderosos do que os produzidos uma década antes. Os principais modelos
foram o CDC 7600, o BSP, produzido pela Burroughs, e o ASC da Texas
Instruments.



                                                                          64
Esses sistemas atingiram a marca de 100 megaflops, ou seja, 100 milhões de
cálculos de ponto flutuante por segundo. Essa é a mesma capacidade de
processamento de um Pentium 60, porém atingida 20 anos antes. :)

No final da década de 70 surgiram os supercomputadores Cray, produzidos
pela Seymour. O primeiro da linha, chamado de Cray 1, também processava
100 megaflops, porém o Cray-XMP atingiu a incrível marca de 1 gigaflop, ainda
no início da década de 80, uma capacidade de processamento próxima à de
um Pentium II 350.

Só para efeito de comparação, o Blue Gene/L, que citei há pouco, possui 360
teraflops de poder de processamento, ou seja, é 360 mil vezes mais rápido.

Apesar de mesmo um "PC de baixo custo" atualmente possuir um poder de
processamento superior ao de um supercomputador, que custava 5 milhões de
dólares há 15 anos atrás, a demanda por sistemas cada vez mais rápidos
continua.

As aplicações são várias, englobando principalmente pesquisas científicas,
aplicações militares e diversos tipos de aplicativos financeiros e relacionados à
Internet; aplicativos que envolvem uma quantidade absurda de processamento,
e claro, são necessários para instituições que podem pagar muito mais do que
5 ou 10 mil dólares por um computador o mais rápido possível. Existindo
demanda, aparecem os fornecedores.

Atualmente, todos os supercomputadores são construídos com base em
praticamente os mesmos componentes que temos em micros de mesa,
memória, HDs e processadores, Intel, IBM ou AMD.

Ao invés de usar apenas um disco rígido IDE ou SATA, como num micro de
mesa, um supercomputador utiliza um array de centenas de HDs, sistemas
semelhantes ao RAID, mas numa escala maior, que permitem gravar dados de
forma fragmentada em vários discos e ler os pedaços simultaneamente a partir
de vários HDs, obtendo taxas de transferência muito altas.

Processadores e memória RAM geralmente são agrupados em nós, cada nó
engloba de um a quatro processadores e uma certa quantidade de memória
RAM e cache. Isso garante que os processadores tenham um acesso à
memória tão rápido quanto um PC de mesa.

Os nós por sua vez são interligados através de interfaces de rede, o que os
torna partes do mesmo sistema de processamento, assim como neurônios
interligados para formar um cérebro. Um nó sozinho não tem uma capacidade
de processamento tão surpreendente assim, mas ao interligar algumas
centenas, ou milhares de nós, a coisa muda de figura.

Uma opção mais barata para instituições que precisam de um
supercomputador, mas não possuem muito dinheiro disponível, é usar um
sistema de processamento distribuído, ou cluster. Um cluster formado por
vários PCs comuns ligados em rede.



                                                                              65
O exemplo mais famoso de processamento distribuído foi o projeto
Seti@Home, onde cada voluntário instalava um pequeno programa que
utilizava os ciclos de processamento ociosos da máquina para processar as
informações relacionadas ao projeto. Os pacotes de dados de 300 KB cada
chegavam pela Internet e demoravam várias horas para serem processados.
Isso permitiu que mais de 2 milhões de pessoas, muitas com conexão via
modem, participassem do projeto. O sistema montado pela Seti@Home foi
considerado por muitos o supercomputador mais poderoso do mundo, na
época.

Esse tipo de sistema pode ser construído usando, por exemplo, a rede interna
de uma empresa. Rodando o software adequado, todos os micros podem fazer
parte do sistema, alcançando juntos um poder de processamento equivalente
ao de um supercomputador. O mais interessante é que esses PCs poderiam
ser usados normalmente pelos funcionários, já que o programa rodaria
utilizando apenas os ciclos ociosos do processador.

A tecnologia de cluster mais usada atualmente são os clusters Beowulf,
formados por vários computadores interligados em rede. Não é necessário
nenhum hardware muito sofisticado: um grupo de PCs parrudos, ligados
através de uma rede gigabit já é o suficiente para montar um cluster Beowulf
capaz de rivalizar com muitos supercomputadores em poder de
processamento. A idéia é criar um sistema de baixo custo, que possa ser
utilizado por universidades e pesquisadores com poucos recursos.

O primeiro cluster Beowulf foi criado em 1994 na CESDIS, uma subsidiária da
NASA. Ele era formado por 16 PCs 486 DX-100 ligados em rede. Para manter
a independência do sistema e baixar os custos, os desenvolvedores optaram
por utilizar o Linux.

Os clusters não servem para processar dados em tempo real (um game
qualquer por exemplo), mas apenas para processar grandes quantidades de
dados, que podem ser quebrados em pequenas partes e divididos entre os
vários computadores. Uma área onde são populares é na aplicação de efeitos
especiais e renderização de imagens para filmes de cinema. Há inclusive casos
de filmes como o Shrek e o Final Fantasy, que foram renderizados inteiramente
utilizando clusters Beowulf.

A evolução dos computadores pessoais


Até aqui, falei sobre os supercomputadores e sobre a evolução dos
processadores, que evoluíram das válvulas para o transístor e depois para o
circuito integrado. Vou agora falar um pouco sobre os primeiros computadores
pessoais, que começaram a fazer sua história a partir da década de 70.
Tempos difíceis aqueles :).

Como disse há pouco, o primeiro microchip, o 4004, foi lançado pela Intel em
1971. Era um projeto bastante primitivo, que processava instruções de 8 bits,
através de um barramento rudimentar, que permitia transferir apenas 4 bits por
ciclo, e operava a meros 740 kHz. Na verdade, o 4004 era tão lento que

                                                                           66
demorava 10 ciclos para processar cada instrução, ou seja, ele processava
apenas 74 mil instruções por segundo (mesmo assim, ele era cerca de 15
vezes mais rápido que o ENIAC). Hoje em dia esses números parecem piada,
mas na época era a última palavra em tecnologia. O 4004 permitiu o
desenvolvimento das primeiras calculadoras eletrônicas portáteis.

Pouco tempo depois, a Intel lançou um novo processador, que fez sucesso
durante muitos anos, o 8080. Ele já era um processador de 8 bits e operava a
incríveis 2 MHz: "Ele é capaz de endereçar até 64 KB de memória e é rápido,
muito rápido!" como dito num anúncio publicitário do Altair 8800 que, lançado
em 1974, é considerado por muitos o primeiro computador pessoal da história.

O Altair era baseado no 8080 da Intel e vinha com apenas 256 bytes de
memória, realmente bem pouco, mesmo para os padrões da época. Estava
disponível também uma placa de expansão para 4 KB. Em teoria, seria
possível instalar até 64 KB, mas o custo tornava o upgrade inviável.

No modelo básico, o Altair custava apenas 439 dólares, na forma de kit (onde
você precisava soldar manualmente todos os componentes). Em valores
corrigidos, isso equivale a quase 4.000 dólares, mas na época esse valor foi
considerado uma pechincha, tanto que foram vendidas 4.000 unidades em 3
meses, depois de uma matéria da revista Popular Eletronics.

Esse "modelo básico" consistia nas placas, luzes, chips, gabinete, chaves e a
fonte de alimentação, junto, claro, com um manual que ensinava como montar
o aparelho. Existia a opção de comprá-lo já montado, mas custava 182 dólares
(da época) a mais.

Em sua versão básica, o Altair não tinha muita utilidade prática, a não ser a de
servir como fonte de aprendizado de eletrônica e programação. Entretanto,
pouco tempo depois, começaram a surgir vários acessórios para o Altair: um
teclado que substituía o conjunto de chaves que serviam para programar o
aparelho, um terminal de vídeo (bem melhor que ver os resultados na forma de
luzes :), um drive de disquetes (naquela época ainda se usavam disquetes de 8
polegadas), placas de expansão de memória e até um modelo de impressora.
Até mesmo Bill Gates (antes mesmo da fundação da Microsoft) participou,
desenvolvendo uma versão do Basic para o Altair.

Se você tivesse muito dinheiro, era possível chegar a algo que se parecia com
um computador moderno, capaz de editar textos e criar planilhas rudimentares.
Algumas empresas perceberam o nicho e passaram a vender versões
"completas" do Altair, destinadas ao uso em empresas, como neste anúncio,
publicado na revista Popular Eletronics, onde temos um Altair "turbinado", com
o terminal de vídeo, impressora, dois drives de disquete e 4 KB de memória:




                                                                             67
O Altair serviu para demonstrar a grande paixão que a informática podia
exercer e que, ao contrário do que diziam muitos analistas da época, existia
sim um grande mercado para computadores pessoais.

Pouco depois, em 1976, foi fundada a Apple, tendo como sócios Steve Jobs
(que continua ativo até os dias de hoje) e Steve Wozniak. Na verdade, a Apple
só foi fundada porque o projeto do Apple I (desenvolvido pelos dois nas horas
vagas) foi recusado pela Atari e pela HP. Uma frase de Steve Jobs descreve
bem a história:

      - Então fomos à Atari e dissemos: “Ei, nós desenvolvemos essa coisa
      incrível, pode ser construído com alguns dos seus componentes, o que
      acham de nos financiar?” Podemos até mesmo dar a vocês, nós só
      queremos ter a oportunidade de desenvolvê-lo, paguem-nos um salário
      e podemos trabalhar para vocês. Eles disseram não, fomos então à
      Hewlett-Packard e eles disseram “Nós não precisamos de vocês, vocês
      mal terminaram a faculdade”.

O Apple I não foi lá um grande sucesso de vendas, vendeu pouco mais de 200
unidades a 666 dólares (pouco mais de US$ 5000 em valores corrigidos) cada
uma. Mesmo assim, os lucros sustentaram a Apple durante o primeiro ano,
abrindo caminho para o lançamento de versões mais poderosas. Quem
comprou um, acabou fazendo um bom negócio, pois hoje em dia um Apple I
(em bom estado) chega a valer US$ 50.000.

Diferente do Altair, o Apple I era vendido já montado. A placa era vendida
"pelada" dentro de uma caixa de papelão, sem nenhum tipo de gabinete, por
isso era comum que os Apple I fossem instalados dentro de caixas de madeira
feitas artesanalmente.

O Apple I era baseado no processador 6502, um clone do Motorola 6800, que
era fabricado pela MOS Tecnology. Ele era um processador de 8 bits, que
operava a apenas 1 MHz. Em termos de poder de processamento, o 6502

                                                                          68
perdia para o 8080, mas isso era compensado pelos "espaçosos" 8 KB de
memória, suficientes para carregar o interpretador BASIC (que ocupava 4 KB),
deixando os outros 4 KB livres para escrever e rodar programas.

Uma das vantages é que o Apple I podia ser ligado diretamente a uma TV,
dispensando a compra de um terminal de vídeo. Ele possuía também um
conector para unidade de fita (o controlador era vendido separadamente por 75
dólares) e um conector proprietário reservado para expansões futuras:




                                   Apple I

Naquela época, as fitas K7 eram o meio mais usado para guardar dados e
programas. Os disquetes já existiam, mas eram muito caros.

Os grandes problemas das fitas K7 eram a lentidão e a baixa confiabilidade. No
Apple I, os programas eram lidos a meros 1500 bits por segundo e em outros
computadores o acesso era ainda mais lento, com de 250 a 300 bits. Era
preciso ajustar cuidadosamente o volume no aparelho de som antes de
carregar a fita e, conforme a fita se desgastava, era preciso tentar cada vez
mais vezes antes de conseguir uma leitura sem erros.

Na época, existiam até programas de rádio que transmitiam softwares como
parte da programação. O locutor avisava e em seguida "tocava" a fita com o
programa. Os interessados precisavam ficar com o aparelho de som à mão
para gravar a cópia. Esses programas de rádio foram a primeira rede de
pirataria de softwares de que se tem notícia, décadas antes da popularização
da internet. ;)
                                                                           69
Fita K7 com o BASIC para o Apple I

O Apple I foi logo aperfeiçoado, surgindo então o Apple II, lançado em 1977.
Esse sim fez sucesso, apesar do preço salgado para a época: US$ 1.298, que
equivalem a quase 10.000 dólares em valores corrigidos.

O Apple II vinha com apenas 4 KB de memória, mas incluía mais 12 KB de
memória ROM, que armazenava um interpretador BASIC e o software de
bootstrap, lido no início do boot. Isso foi uma grande evolução, pois você ligava
e já podia começar a programar ou a carregar programas. No Apple I, era
preciso primeiro carregar a fita com o BASIC, para depois começar a fazer
qualquer coisa.

O BASIC era a linguagem mais popular na época (e serviu como base para
diversas linguagens modernas), pois tem uma sintaxe simples se comparado
com o C ou o Assembly, utilizando comandos derivados de palavras do Inglês.

Este é um exemplo de programa em BASIC simples, que pede dois números e
escreve o produto da multiplicação dos dois:

      10 PRINT "MULTIPLICANDO"
      20 PRINT "DIGITE O PRIMEIRO NUMERO:"
      30 INPUT A
      40 PRINT "DIGITE O SEGUNDO NUMERO:"
      50 INPUT B
      60 LETC=A*B
      70 PRINT "RESPOSTA:", C

Este pequeno programa precisaria de 121 bytes de memória para rodar (os
espaços depois dos comandos são ignorados, por isso não contam). Ao
desenvolver programas mais complexos você esbarrava rapidamente na
barreira da memória disponível (principalmente se usasse um ZX80, que tinha
apenas 1 KB ;), o que obrigava os programadores a otimizarem o código ao
máximo. Aplicativos comerciais (e o próprio interpretador BASIC) eram escritos
diretamente em linguagem de máquina, utilizando diretamente as instruções do
processador e endereços de memória, de forma a extraírem o máximo do
equipamento.

Voltando ao Apple II, a memória RAM podia ser expandida até 52 KB, pois o
processador Motorola 6502 era capaz de endereçar apenas 64 KB de memória,

                                                                              70
e 12 KB já correspondiam à ROM embutida. Um dos "macetes" naquela época
era uma placa de expansão, fabricada pela recém formada Microsoft, que
permitia desabilitar a ROM e usar 64 KB completos de memória.

Além dos jogos, um dos programas mais populares para o Apple II foi o Visual
Calc, ancestral dos programas de planilha atuais:




       Foto de um manual antigo que mostra a interface do Visual Calc

O Apple II já era bem mais parecido com um computador atual. Vinha num
gabinete plástico e tinha um teclado incorporado. A versão mais básica era
ligada na TV e usava o famigerado controlador de fita K7, ligado a um aparelho
de som para carregar programas. Gastando um pouco mais, era possível
adquirir separadamente uma unidade de disquetes.




                                   Apple II

A linha Apple II se tornou tão popular que sobreviveu até o início dos anos 90,
quase uma década depois do lançamento do Macintosh. O último lançamento
foi o Apple IIC Plus, que utilizava um processador de 4 MHz (ainda de 8 bits) e
vinha com um drive de disquetes de 3.5", já similar aos drives atuais.

Outra inovação dos Apple I e Apple II em relação ao Altair e outros
computadores anteriores é o tipo de memória usada. O Apple I foi o primeiro a

                                                                             71
utilizar memórias DRAM, que é essencialmente a mesma tecnologia utilizada
até hoje em pentes de memória.

Ao longo das primeiras décadas, a memória RAM passou por duas grandes
evoluções. No ENIAC, não existia uma unidade de memória dedicada. Parte
das válvulas eram reservadas para armazenar as informações que estavam
sendo processadas. Não existia unidade de armazenamento, além dos cartões
perfurados e as anotações feitas manualmente pelos operadores.

Na década de 50 surgiram as memórias core, um tipo antiquado de memória
onde são usados anéis de ferrite, um material que pode ter seu campo
magnético alterado através de impulsos elétricos, armazenando o equivalente a
um bit 1 ou 0). Esses anéis de ferrite eram carinhosamente chamados de
"donuts" (rosquinhas) e eram montados dentro de uma complexa rede de fios,
que transportavam os impulsos elétricos usados para ler e escrever dados.

Cada anel armazenava apenas um bit, de forma que você precisava de 8.192
deles para cada KB de memória. Inicialmente a malha de fios era "tecida"
manualmente, mas logo começaram a ser usadas máquinas, que permitiram
miniaturizar bastante as estruturas.

Este é um exemplo de placa de memória core. Ela mede 11 x 11 cm (um pouco
menor que um CD), mas armazena apenas 50 bytes:




Essas placas eram ligadas entre si, formando "pilhas" organizadas dentro de
estruturas maiores. Imagine que, para atingir 1 MB de memória no início da
década de 1960, você precisaria de quase 21 mil dessas plaquinhas.

Este é um exemplo de unidade de memória, construída usando placas de
memória core, que está em exposição no museu no MIT. Apesar do tamanho,
ela possui apenas 64 KB:



                                                                           72
Por serem muito caras e precisarem de um grande número de circuitos de
apoio, as memórias core ficaram restritas aos computadores de grande porte.
O Altair já utilizava memórias "modernas" na forma de chips. Para ser exato,
ele utilizava dois chips de 1024 bits (ou 128 bytes) cada um.

O Altair utilizava chips de memória SRAM (static RAM), que eram rápidos e
confiáveis, porém muito caros. Na memória SRAM, são usados de 4 a 6
transístores para cada bit de dados (as do Altair usavam 4 transistores), o que
multiplica o custo dos chips. Atualmente, as memórias SRAM são usadas nos
caches L1 e L2 dos processadores, o tipo mais rápido e caro de memória que
existe.

O Apple I inovou utilizando um "novo" tipo de memória, as DRAM (dynamic
RAM), onde é usado um único transístor para cada bit de dados. Embora à
primeira vista pareçam mais simples, os chips de memória DRAM são muito
mais complicados de se trabalhar (principalmente se considerarmos as
limitações da época), pois são capazes de armazenar os dados por apenas
uma pequena fração de segundo. Para conservar os dados, eles precisam de
um circuito de refresh, que lê e regrava os dados a cada 64 milissegundos (ou
menos, de acordo com o projeto).

Apesar de todas as dificuldades, foi o uso de memórias DRAM no Apple I que
permitiu que ele viesse com 8 KB de memória, custando pouco mais que um
Altair, que vinha com meros 256 bytes. A partir daí, as memórias DRAM se
tornaram norma, o que continua até os dias de hoje.

Voltando à história, em 1979 surgiu um outro modelo interessante, desta vez
da Sinclair, o ZX80. Ele não era tão poderoso quanto o Apple II, mas tinha a

                                                                            73
vantagem de custar apenas 99 dólares (pouco mais de 400 em valores
corrigidos). Ele foi o computador mais popular até então, com 100.000
unidades vendidas (entre 1979 e 1981), sem contar uma grande quantidade de
clones, produzidos em diversos países ao longo da década de 80.

O ZX80 era baseado no NEC-780C, um clone do Z80, que operava a 3.25
MHz. Ele era relativamente poderoso para os padrões da época, mas aquecia
bastante. Segundo as más línguas, ele foi o primeiro processador overclocado
da história. :)

Para cortar custos, ele vinha de fábrica com apenas 1 KB de memória RAM,
combinados com 4 KB de memória ROM que armazenavam o interpretador
BASIC, usado pelo aparelho. Como em qualquer sistema popular da época, os
programas eram armazenados em fitas K7 e ele era ligado diretamente na TV:




Considerando o preço, o ZX80 foi uma máquina surpreendente, mas claro,
tinha pesadas limitações, mesmo se comparado com outras máquinas da
época. Apesar de já vir com uma saída de vídeo, a resolução gráfica era de
apenas 64x48, mesmo em modo monocromático, já que o adaptador de vídeo
tinha apenas 386 bytes de memória. Existia também uma opção de modo texto
(usada para programas em BASIC, por exemplo), com 32x24 caracteres.

O processador Z80 se tornou incrivelmente popular, superando as vendas de
qualquer outro processador da história. Versões modernizadas do Z80 (que
conservam o mesmo projeto básico, mas são produzidas com técnicas
modernas de fabricação e trabalham a freqüências mais altas) fazem sucesso
até hoje, sendo utilizadas em todo tipo de eletrônicos, incluindo impressoras,
aparelhos de fax, controladores diversos, robôs de uso industrial, brinquedos,
diversos tipos de calculadoras, videogames (incluindo o Game Boy e Game
Boy color), diversos modelos populares de mp3players, entre inúmeros
exemplos. Apesar de não ser nenhum campeão de velocidade, o Z80 é um


                                                                           74
chip extremamente barato e fácil de programar, já que todos os seus truques
são bem conhecidos e documentados.

Aqui no Brasil tivemos os TK80 e os TK82 da Microdigital, além do NE-Z80 da
Prológica, produzidos na época da reserva de mercado. Eles concorriam com
os computadores compatíveis com os Apple, como o AP II, Exato, Craft II e
Magnex M10. A linha CP (200, 300, 400 e 500) da Prológica era baseada em
chips Z80 e havia também os clones da linha MSX, como os Expert 1.0 e
Expert Plus.

A reserva de mercado estagnou o desenvolvimento tecnológico do país, de
forma que clones de computadores de 8 bits, lançados há uma década atrás
era tudo que nossa indústria conseguia produzir. Isso perdurou até 1992,
quando a reserva de mercado foi abolida, permitindo a entrada de
computadores importados. Em pouco tempo, todos esses computadores de 8
bits foram substituídos por PCs 386 e 486.

Concluindo nosso passeio pela década de 70, outro que não poderia deixar de
ser citado é o Atari 800. Sim, apesar de ser mais vendido como um videogame,
o Atari 800 também podia ser usado como um computador relativamente
poderoso, chegando a ser adotado nos laboratórios de informática de algumas
universidades. Ele foi o antecessor do Atari 2600, o videogame conhecido por
aqui.

Ele vinha de fábrica com 16 KB de memória RAM, que podiam ser expandidos
para até 48 KB, com mais 10 KB de memória ROM. O sistema operacional era
o Atari-OS, uma versão do BASIC:




                                  Atari 800

Originalmente, o sistema vinha apenas com a entrada para os cartuchos, com
o sistema operacional ou jogos, mas era possível adquirir separadamente uma
unidade de disquetes, que o transformavam num computador completo. Não
existiram muitos programas para o Atari, já que o foco foram sempre os jogos.
A principal função do Atari como computador era desenvolver programas em
BASIC, por isso seu uso em escolas.




                                                                          75
A década de 80


Como profetizado por Gordon Moore, os processadores vêm, em média,
dobrando de desempenho a cada 18 meses desde o início da década de 70.
Uma década é uma verdadeira eternidade dentro do mercado de informática, o
suficiente para revoluções acontecerem e serem esquecidas.

Depois dos dinossauros da primeira metade da década de 70, os
computadores pessoais finalmente começaram a atingir um nível de
desenvolvimento suficiente para permitir o uso de aplicativos sérios. Surgiram
então os primeiros aplicativos de processamento de texto, planilhas, e até
mesmo programas de editoração e desenho.

Depois dos Apple I e Apple II, ZX80, Ataris e outros computadores de 8 bits,
chegamos finalmente à era PC.

A IBM de 1980 era uma gigantesca empresa, especializada em mainframes e
terminais burros. Entretanto, percebendo a crescente demanda por
computadores pessoais, decidiram criar um pequeno grupo (que originalmente
possuía apenas 12 desenvolvedores) para desenvolver um computador
pessoal de baixo custo.

O PC era considerado um projeto menor dentro da IBM, apenas uma
experiência para testar a demanda do mercado. O projeto chegou a ser
marginalizado dentro da empresa, pois muitos executivos acreditavam que o
IBM PC poderia concorrer com outros produtos do portfólio da IBM.

Depois de quase um ano de desenvolvimento, o primeiro PC foi lançado em 12
de agosto de 1981.




                                O PC original

                                                                            76
Para cortar custos e acelerar o desenvolvimento, a equipe decidiu que usaria
apenas componentes-padrão, que pudessem ser encontrados facilmente no
mercado. O processador escolhido foi o Intel 8088, uma versão econômica do
processador 8086, que havia sido lançado pela Intel em 1978. Quando a IBM
estava desenvolvendo seu computador pessoal, chegou a ser cogitado o uso
do 8086, mas acabou sendo escolhido o 8088 devido ao seu baixo custo.

Tanto o 8086 quanto o 8088 são processadores de 16 bits, considerados
bastante avançados para a época. Um processador de 16 bits é capaz de
endereçar mais memória (até 64 KB de memória de cada vez) e processar
instruções muito mais complexas que os processadores de 8 bits usados até
então.

A grande diferença entre os dois é que o 8086 é um processador de 16 bits
"puro", enquanto o 8088 se comunica com os demais periféricos usando um
barramento de 8 bits. Isso naturalmente prejudicava o desempenho, mas
trouxe uma vantagem importante: a possibilidade de usar os componentes de 8
bits usados em outros computadores da época, que eram muito mais populares
e baratos.

Essa arquitetura permitiu ao primeiro PC competir na mesma faixa de preço
dos computadores de 8 bits mais populares e, ao mesmo tempo, possuir um
desempenho bem superior devido ao seu processador de 16 bits. O 8088 é
capaz de acessar até 1 MB de memória RAM (embora o PC original suportasse
apenas 640 KB, devido a limitações por parte do BIOS e por parte da placa-
mãe) e funciona a 4.77 MHz, recursos incríveis para a época, já que estamos
falando de um processador lançado no final de 1979.

Lembre-se de que o principal concorrente do IBM PC era o Apple II que,
embora fosse mais barato e contasse com mais softwares disponíveis, usava
um processador de 8 bits, de apenas 1 MHz e meros 4 KB de memória RAM.

Entretanto, o aspecto técnico não foi o determinante para o sucesso do PC. Ele
era um bom computador para a época, mas era caro e não tinha nada que os
concorrentes não pudessem usar em seus produtos. Ele tinha tudo para ser
apenas mais um no mercado, se não fosse um diferencial importante: a
arquitetura aberta.

Diferente dos Apples e de outros computadores da época, qualquer fabricante
podia desenvolver e vender acessórios para o PC, sem pagar royalties ou fazer
acordos de licenciamento. Como todos os componentes podiam ser
encontrados no mercado, era possível também desenvolver clones,
computadores compatíveis com o PC, fabricados por outras empresas. Isso
lentamente fez com que toda a indústria passasse a orbitar em torno do PC,
fazendo com que a plataforma crescesse assustadoramente.

Voltando ao tema original, o PC original tinha, em sua versão mais simples,
apenas 16 KB de memória RAM, com direito apenas ao gabinete e teclado. A
partir daí, tudo era opcional, incluindo o monitor (você podia usar uma TV,
embora a qualidade da imagem ficasse ruim), os drives de disquete e o HD.
Também estava disponível um conector para um gravador de fitas K7

                                                                           77
(localizado ao lado do conector para o teclado), mas ele nunca foi muito usado
e desapareceu a partir do XT.

Na configuração básica, o PC custava "apenas" 1.564 dólares da época, mas
incluindo mais 48 KB de memória, dois drives de disquete e um monitor mono
de 12", o preço chegava facilmente a 2.500 dólares, que equivalem a mais de
7.000 dólares em valores atuais.

Na época, os HDs ainda eram um componente caro e exótico. Em 1981, um
Seagate ST-506 (o modelo mais popular até então) custava mais de 1.000
dólares (da época) e tinha apenas 5 MB de capacidade.

Este HD da foto a seguir é um ST-225 (também da Seagate), um modelo de 20
MB, lançado em 1984, que foi muito usado nos micros 286. Esses primeiros
modelos ainda utilizavam motores de passo para mover as cabeças de leitura
(como nos drives de disquete), por isso os problemas eram comuns.




                         Seagate ST-225, de 20 MB

Ao usar um PC sem HD, o sistema operacional e todos os programas eram
carregados a partir de disquetes de 5¼. Inicialmente eram usados disquetes de
180 KB, mas eles foram logo substituídos por disquetes de 360 KB (onde eram
usadas as duas faces do disco) e, alguns anos mais tarde, por disquetes de
"alta densidade", com 1.2 MB. Os disquetes de de 3.5", com 1.44 MB, que
usamos hoje em dia passaram a ser usados nos PCs apenas em 1987, com o
lançamento do IBM PS/2. Existiu ainda um padrão de disquetes de 2.8 MB,
lançado nos anos 90, que acabou não pegando.




                                                                            78
Disquetes de 5¼

O PC era monotarefa, de forma que para carregar outro programa, você
precisava primeiro encerrar o primeiro e trocar o disquete dentro do drive. O
segundo drive de disquetes era um item extremamente popular (e necessário),
pois os disquetes de 5¼ eram extremamente frágeis e a mídia se degradava
com o tempo, de forma que você precisava copiar os discos freqüentemente.

Conforme foram sendo lançados PCs com mais memória RAM, surgiu o
"macete" de criar um ramdisk (um pedaço da memória RAM usado como se
fosse um HD) e usá-lo para copiar disquetes sem precisar de um segundo drive
:). Também era comum aparecerem versões "capadas" dos principais
programas, com componentes e bibliotecas desativados ou removidos, de
forma a rodar nos PCs com menos memória RAM. Naquela época, ainda não
existia memória swap, de forma que se o PC não tivesse memória suficiente,
os programas simplesmente não rodavam.

O sistema operacional usado no PC original era o MS-DOS 1.0 (na época
ainda chamado de PC-DOS), que foi desenvolvido às pressas pela Microsoft
com base num sistema operacional mais simples, chamado QDOS, comprado
da Seattle Computers, uma pequena empresa desenvolvedora de sistemas. Na
verdade, a Microsoft foi a segunda opção da IBM, depois de ter sua proposta
de licença recusada pela Digital Research, que desenvolvia versões do seu
CP/M para várias arquiteturas diferentes.

Na época, a IBM acreditava que ganharia dinheiro vendendo as máquinas e
não vendendo sistemas operacionais e softwares, o que era considerado um
negócio menor, dado de bandeja para a Microsoft.

Com o passar do tempo, os executivos da IBM se arrependeram amargamente
da decisão, pois a concorrência entre os diversos fabricantes derrubou os
preços e as margens de lucro dos PCs, enquanto a Microsoft conseguiu atingir
um quase monopólio do sistema operacional para eles e, sem concorrentes de
peso, passou a trabalhar com margens de lucro cada vez maiores.

Um fabricante de memórias, como a Micron, trabalha normalmente com
margens de lucro abaixo de 1%. Conseguem ganhar dinheiro apenas por
venderem quantidades muito grandes. Um integrador como a Dell trabalha com
                                                                          79
margens de 3 a 5% (e leva prejuízo às vezes, nas unidades que ficam muito
tempo em estoque ou não vendem), enquanto a Microsoft (mesmo com toda a
pirataria) trabalha com margens superiores a 80% vendendo o Windows e
Office, um negócio da China.

Hoje em dia, a IBM sequer fabrica PCs. Mesmo os famosos notebooks IBM
Thinkpad são agora fabricados e vendidos pela Lenovo, uma empresa Chinesa
que comprou os direitos sobre a marca em 2000.

Voltando à história, dois anos depois foi lançado o PC XT, que apesar de
continuar usando o 8088 de 4.77 MHz, vinha bem mais incrementado, com 256
KB de RAM, disco rígido de 10 MB, monitor CGA e o MS-DOS 2.0.

O XT se tornou um computador bastante popular e chegou a ser fabricado no
Brasil, durante a reserva de mercado. Enquanto os americanos já usavam
muitos 386, os clones tupiniquins do XT eram a última palavra em tecnologia
aqui no Brasil...

Depois do XT, o próximo passo foi o PC AT (lançado em 1984), já baseado no
Intel 286. Na verdade, o processador 286 foi lançado em fevereiro de 1982,
apenas 6 meses após a IBM ter lançado o seu primeiro PC, porém demorou
até que a IBM conseguisse desenvolver um computador baseado nele, pois foi
preciso desenvolver toda uma nova arquitetura. Da placa de vídeo ao gabinete,
praticamente tudo foi mudado, o que somado à burocracia e a longos períodos
de testes antes do lançamento, levou mais de 2 anos.

Atualmente, o período de desenvolvimento dos periféricos é muito mais curto.
Quase sempre quando um novo processador é lançado, já temos placas-mãe
para ele disponíveis quase imediatamente, pois o desenvolvimento é feito de
forma simultânea.

O PC AT vinha com um processador 286 de 6 MHz (depois surgiram versões
mais rápidas, de 8, 12 e até 16 MHz), HD de 10 MB, monitor EGA (640x350,
com 64 cores) e já usava disquetes de 5¼ de 1.2 MB. Como a memória RAM
ainda era um item muito caro, existiam versões com de 256 KB a 2 MB de
RAM. Embora fosse extremamente raro usar mais de 2 MB, existia a
possibilidade de instalar até 16 MB.




                                                                           80
PC AT

O processador 286 trouxe vários avanços sobre o 8088. Ele utilizava palavras
binárias de 16 bits, tanto interna quanto externamente, o que permitia o uso de
periféricos de 16 bits, muito mais avançados do que os usados no PC original e
no XT. O custo dos periféricos desta vez não chegou a ser um grande
obstáculo, pois enquanto o PC AT estava sendo desenvolvido, eles já podiam
ser encontrados com preços mais acessíveis.

Para manter compatibilidade com os periféricos de 8 bits usados no PC original
e no XT, a IBM desenvolveu os slots ISA de 16 bits, que permitem usar tanto
placas de 8 bits, quanto de 16 bits. As placas de 8 bits são menores e usam
apenas a primeira série de pinos do slot, enquanto as placas de 16 bits usam o
slot completo. Devido à sua popularidade, o barramento ISA continuou sendo
usado por muito tempo. Em 2004 (20 anos depois do lançamento do PC AT)
ainda era possível encontrar algumas placas-mãe novas com slots ISA, embora
atualmente eles estejam extintos.




                     Slots ISA, em uma placa-mãe de 386


                                                                            81
O principal avanço trazido pelo 286 são seus dois modos de operação,
batizados de "Modo Real" e "Modo Protegido". No modo real, o 286 se
comporta exatamente como um 8086 (apesar de mais rápido), oferecendo total
compatibilidade com os programas anteriores, escritos para rodarem no 8088.
Já no modo protegido, ele manifesta todo o seu potencial, incorporando
funções mais avançadas, como a capacidade de acessar até 16 MB de
memória RAM (apesar de ser um processador de 16 bits, o 286 usa um
sistema de endereçamento de memória de 24 bits), multitarefa, memória virtual
em disco e proteção de memória.

Assim que ligado, o processador opera em modo real e, com uma instrução
especial, passa para o modo protegido. O problema é que, trabalhando em
modo protegido, o 286 deixava de ser compatível com os programas escritos
para o modo real, inclusive com o próprio MS-DOS. Para piorar, o 286 não
possuía nenhuma instrução que fizesse o processador voltar ao modo real, o
que era possível apenas resetando o micro. Isso significa que um programa
escrito para rodar em modo protegido, não poderia usar nenhuma das rotinas
de acesso a dispositivos do MS-DOS, tornando inacessíveis o disco rígido,
placa de vídeo, drive de disquetes memória, etc., a menos que fossem
desenvolvidas e incorporadas ao programa todas as rotinas de acesso a
dispositivos necessárias.

Isso era completamente inviável para os desenvolvedores, pois, para projetar
um simples jogo, seria praticamente preciso desenvolver todo um novo sistema
operacional. Além disso, o programa desenvolvido rodaria apenas em micros
equipados com processadores 286, que ainda eram minoria na época, tendo
um público-alvo muito menor. De fato, apenas algumas versões do UNIX e uma
versão do OS/2 foram desenvolvidas para utilizar o modo protegido do 286.

Basicamente, os micros baseados no 286 eram usados para rodar aplicativos
de modo real, que também podiam ser executados em um XT, aproveitando
apenas a maior velocidade do 286.

Devido às várias mudanças na arquitetura, destacando o acesso mais rápido à
memória e as alterações no conjunto de instruções do processador, que
permitiam realizar muitas operações de maneira mais rápida e eficiente, um
286 consegue ser quase 4 vezes mais rápido que um 8088 do mesmo clock.

Em outubro de 1985 a Intel lançou o 386, que marcou o início dos tempos
modernos. Ele trouxe vários recursos novos. Para começar, o 386 trabalha
tanto interna quanto externamente com palavras de 32 bits e é capaz de
acessar a memória usando um barramento de 32 bits, permitindo uma
transferência de dados duas vezes maior. Como o 386 pode trabalhar com
palavras binárias de 32 bits, é possível acessar até 4 GB de memória (2
elevado a 32ª potência), mesmo sem usar a segmentação de endereços, como
no 8088.

Assim como o 286, o 386 continua possuindo os dois modos de operação. A
diferença é que no 386 é possível alternar entre o modo real e o modo
protegido livremente. Os programas que rodavam sobre DOS podiam chavear
o processador para o modo protegido, para se beneficiarem de suas vantagens

                                                                          82
e voltarem ao modo real sempre que precisavam usar alguma sub-rotina do
DOS, de maneira transparente ao usuário. Nesse caso, era usado um
programa de DPMI ("DOS Protected Mode Interface", ou "interface DOS de
modo protegido") para fazer o chaveamento entre os dois modos.

Toda vez que o programa precisava usar alguma sub-rotina do DOS, ele
passava o comando ao chaveador e ficava esperando. O chaveador, por sua
vez, colocava o processador em modo real, executava o comando, chaveava o
processador para o modo protegido e entregava o resultado ao aplicativo, que
continuava trabalhando como se nada tivesse acontecido. Um bom exemplo de
programa de DPMI é o DOS4GW, que é usado por muitos jogos antigos que
rodam sobre o MS-DOS, como o DOOM, Sim City 2000 e vários emuladores de
videogames.

O esquema de chaveamento também era utilizado pelo Windows 3.x, que
incluía todas as rotinas necessárias, dispensando qualquer programa de DPMI.
O Windows 95/98 também pode chavear para o modo real caso precise
carregar algum driver de dispositivo de modo real. No Windows XP os
programas DOS passaram a ser executados dentro de um emulador (ao invés
de nativamente), o que reduziu a compatibilidade do sistema com os aplicativos
MS-DOS.

Ter um processador 386 é o requisito mínimo para rodar qualquer sistema
operacional moderno. Com um 386, memória RAM e espaço em disco
suficiente, você pode rodar o Windows 95 e aplicativos, embora bem
lentamente devido à pouca potência do processador. Você pode também
instalar distribuições Linux antigas e (usando algum truque para burlar a
detecção da configuração mínima ao instalar o sistema) até mesmo instalar o
Windows 98.

Com um simples 286, no máximo você poderia rodar o DOS e aplicativos mais
simples, que operassem em modo real. Também era possível rodar o Windows
3.0, porém em modo "Standard", onde era possível acessar todos os 16 MB de
memória permitidos pelo 286, mas sem memória virtual nem multitarefa.

Apenas o Athlon 64 e os processadores Intel com o EM64 (o conjunto de
instruções compatíveis com os processadores de 64 bits da AMD) vieram a
quebrar essa compatibilidade histórica. Os processadores de 64 bits atuais são
perfeitamente compatíveis com os aplicativos de 32 bits, mas programas
otimizados para eles não rodam mais nas máquinas antigas. Embora mais
suave e gradual, estamos assistindo a uma migração similar à que ocorreu na
transição do 286 para o 386.

Voltando ao lançamento do 386, embora o processador tenha sido lançado em
1985, a IBM só foi capaz de lançar um PC baseado nele em 1987, dando
tempo para a Compaq sair na frente. Este foi um verdadeiro marco pois, de
repente, as companhias perceberam que não eram mais obrigadas a seguir a
IBM. Qualquer um que tivesse tecnologia suficiente poderia sair na frente,
como fez a Compaq. A partir daí, a IBM começou a gradualmente perder a
liderança do mercado, tornando-se apenas mais um entre inúmeros fabricantes
de PCs.

                                                                           83
O primeiro 386 operava a apenas 16 MHz. Quando foi lançada a versão de 20
MHz, os projetistas perceberam que o processador havia se tornado rápido
demais para as memórias RAM existentes na época. Por isso, a cada acesso,
o processador tinha que ficar "esperando" os dados serem liberados pela
memória RAM para poder concluir suas tarefas, perdendo muito em
desempenho. Para solucionar esse problema, passaram a ser usadas
pequenas quantidades de memória cache na grande maioria das placas-mãe
para micros 386 e superiores.

Os chips de memória cache utilizam memória SRAM, um tipo mais caro de
memória que não precisa de refresh. O refresh é uma característica inerente a
todas as tecnologias de memória RAM, incluindo as DDR e DDR2 atuais. Cada
célula do pente de memória é composta por um transístor e um capacitor. O
transístor controla a passagem do impulso elétrico, enquanto o capacitor o
armazena. O problema é que o capacitor é capaz de manter a carga por um
curto período, de forma que os dados precisam ser reescritos várias vezes por
segundo.

A memória cache armazena os dados mais usados pelo processador,
reduzindo o número de operações em que é preciso buscar dados diretamente
na lenta memória RAM. Mesmo uma pequena quantidade de memória cache é
capaz de melhorar bastante o desempenho do processador.

Na foto a seguir temos um exemplo de placa para 386. A memória cache é
composta pelos 5 chips, posicionados entre o slot ISA e os pentes de memória.
Esta placa ainda utiliza módulos de memória de 30 vias e os 4 módulos
instalados somam apenas 4 MB de memória. Note ainda que ela possui
apenas slots ISA, sem nenhuma opção de barramento mais rápido:




      4 MB de memória, com direito a coprocessador aritmético. Wow! :)

Outro componente exótico usado na época era o co-processador aritmético, um
processador adicional, que executava cálculos complexos, as famosas

                                                                          84
operações de ponto flutuante. Até o 386, o co-processador aritmético era um
componente opcional, que podia ser instalado num soquete vago disponível na
placa-mãe. Ele era necessário para rodar programas de engenharia,
modelagem 3D e alguns games, mas não era muito popular, pois custava
quase tanto quanto o processador principal.

A partir do 486, o co-processador passou a ser incorporado diretamente ao
processador principal, eliminando o soquete separado. Com a miniaturização
dos transístores, os processadores passaram a trazer cada vez mais
componentes.

Os processadores atuais incluem várias unidades de execução, o que os torna
capazes de processar várias instruções por ciclo, quantidades generosas de
memória cache, componentes extras destinados a organizar e decodificar as
instruções que serão processadas, conjuntos de instruções extras e, no caso
dos Athlon 64 (e derivados), também o controlador de memória, que antes fazia
parte da placa-mãe. Os processadores dual-core, onde temos dois
processadores completos na mesma pastilha de silício, também estão se
tornando cada vez mais comuns, seguidos pelos processadores quad-core. É
uma corrida que ainda está longe de acabar.

Voltando ao 386, como as placas-mãe da época eram muito caras, existiam
várias opções de upgrade. O 386SX, por exemplo, podia ser instalado em
muitas placas para 286. Existiam também os processadores 486 DLC e 486
SLC (fabricados pela Texas Instruments), que podiam ser instalados em placas
para o 386, servindo como uma opção de upgrade.

Aqui temos um 486 DLC, instalado numa placa de 386. O soquete vago ao lado
do processador é o encaixe para o co-processador aritmético. Note que
naquela época ainda eram usados pentes de memória de 30 vias. Eles eram
pentes de 8 bits, por isso era necessário instalar sempre 4 ou 8 módulos, para
que eles fornecessem os 32 bits usados pelo processador. O mais comum na
época era usar pentes de 1 MB, totalizando 4 ou 8 MB. Em 1990, cada
megabyte de memória custava mais de 100 dólares:




Naturalmente, a Apple não ficou sentada durante este tempo todo. Além de
continuar aperfeiçoando a linha Apple II, a empresa começou a investir

                                                                           85
pesadamente no desenvolvimento de computadores com interface gráfica e
mouse. A "inspiração" surgiu numa visita de Steve Jobs ao laboratório da
Xerox, onde computadores com interface gráfica eram desenvolvidos desde a
década de 70 (embora sem sucesso comercial, devido ao custo proibitivo).

Em 1983, eles apresentaram uma grande novidade, o Lisa. Em sua
configuração original, o Lisa vinha equipado com um processador Motorola
68000 de 5 MHz, 1 MB de memória RAM, dois drives de disquete de 5¼ de alta
densidade (eram usados discos de 871 KB), HD de 5 MB e um monitor de 12
polegadas, com resolução de 720 x 360. Era uma configuração muito melhor
do que os PCs da época, sem falar que o Lisa já usava uma interface gráfica
bastante elaborada e contava com uma suíte de aplicativos de escritório à lá
Office. O problema era o preço: 10.000 dólares da época (suficiente para
comprar 5 PCs).




                                Apple Lisa

Embora não houvesse nada melhor no mercado, o Lisa acabou não atingindo o
sucesso esperado. No total, foram produzidas cerca de 100.000 unidades em
dois anos, porém a maior parte delas foram vendidas com grandes descontos,
muitas vezes abaixo do preço de custo (como um lote de 5.000 unidades
vendido para a Sun em 1987, depois que o Lisa já havia sido descontinuado).
Como a Apple investiu aproximadamente US$ 150 milhões no desenvolvimento
do Lisa, a conta acabou ficando no vermelho.

Apesar disso, o desenvolvimento do Lisa serviu de base para o Macintosh, um
computador mais simples, lançado em 1984. Ao contrário do Lisa, ele fez um
grande sucesso, chegando a ameaçar o império dos PCs. A configuração era
similar à dos PCs da época, com um processador de 8 MHz, 128 KB de
memória e um monitor de 9 polegadas. A grande arma do Macintosh era o
MacOS 1.0 (derivado do sistema operacional do Lisa, porém otimizado para
consumir muito menos memória), um sistema inovador de vários pontos de
vista.

Ao contrário do MS-DOS ele era inteiramente baseado no uso da interface
gráfica e mouse, o que o tornava muito mais fácil de ser operado. O MacOS

                                                                          86
continuou evoluindo e incorporando novos recursos, mas sempre mantendo a
mesma idéia de interface amigável.




                      MacOS 1.0, ainda monocromático

Depois do Macintosh original, a Apple lançou um modelo atualizado, com 512
KB de memória RAM. Para diferenciá-lo do primeiro, a Apple passou a chamá-
lo de Macintosh 512k. O modelo antigo continuou sendo vendido até outubro
de 1985 como uma opção de baixo custo, passando a ser chamado de
Macintosh 128k.

Pouco tempo depois foi lançado o Mac Rescue, uma placa de expansão que
ampliava os 128 ou 512k de memória para 4 MB (algo assustador para a
época) e dava "de brinde" um ramdisk de 2 MB para armazenamento de
arquivos e programas (as primeiras versões do Mac não possuíam HD). O Mac
já utilizava um recurso de hibernação, de forma que muita gente nunca
desligava o aparelho, apenas o colocava pra dormir, preservando os dados do
ramdisk. Embora fosse um upgrade muito bem vindo, o Mac Rescue não foi
muito popular, pois era caro demais.

Neste mesmo período, a Microsoft desenvolveu a primeira versão do Windows,
anunciada em novembro de 1983. Ao contrário do MacOS, o Windows 1.0 era
uma interface bastante primitiva, que fez pouco sucesso. Ele rodava sobre o
MS-DOS e podia executar tanto aplicativos for Windows quanto os programas
para MS-DOS. O problema era a memória.

Os PCs da época vinham com quantidades muito pequenas de memória RAM
e na época ainda não existia a possibilidade de usar memória virtual (que viria
a ser suportada apenas a partir do 386). Para rodar o Windows, era preciso
primeiro carregar o MS-DOS. Os dois juntos já consumiam praticamente toda a
memória de um PC básico da época. Mesmo nos PCs mais parrudos não era
possível rodar muitos aplicativos ao mesmo tempo, novamente por falta de
memória.



                                                                            87
Como os aplicativos for Windows eram muito raros na época, poucos usuários
viram necessidade de utilizar o Windows para rodar os mesmos aplicativos que
rodavam (com muito mais memória disponível...) no MS-DOS. Sem contar que
a versão inicial do Windows era bastante lenta e tinha vários bugs.

O Windows começou a fazer algum sucesso na versão 2.1, quando os micros
286 com 1 MB ou mais de memória já eram comuns. Com uma configuração
mais poderosa, mais memória RAM e mais aplicativos, finalmente começava a
fazer sentido rodar o Windows. O sistema ainda tinha vários bugs e travava
com freqüência, mas alguns usuários começaram a migrar para ele.




                               Windows 2.0

O Windows emplacou mesmo a partir da versão 3.11. Ele era relativamente
leve do ponto de vista dos PCs da época, e já suportava o uso de memória
virtual, que permitia abrir vários programas, mesmo que a memória RAM se
esgotasse. Já existiam também vários aplicativos for Windows e os usuários
tinham a opção de voltar para o MS-DOS quando desejassem.

Foi nesta época que os PCs começaram a recuperar o terreno perdido para os
Macintoshs da Apple. Convenhamos, o Windows 3.11 travava com muita
freqüência, mas tinha muitos aplicativos e os PCs eram mais baratos que os
Macs. Na época começaram a surgir também os primeiros concorrentes para o
Windows, como o OS/2 da IBM.

Desde o início da era PC, a Microsoft e a IBM vinham trabalhando juntas no
desenvolvimento do MS-DOS e outros programas para a plataforma PC. Mas,
em 1990, a IBM e a Microsoft se desentenderam e cada uma ficou com uma
parte do trabalho feito, com o qual tentaram tomar a liderança do mercado de
sistemas operacionais.



                                                                          88
Alguns brincam que a IBM ficou com a parte que funciona e a Microsoft com o
resto, mas a verdade é que apesar de o OS/2 da IBM ser tecnicamente
superior ao Windows 95, foi o sistema das janelas quem levou a melhor, pois
era mais fácil de usar e contava com a familiaridade dos usuários com o
Windows 3.1, enquanto a IBM derrapava numa combinação de falta de
investimento, falta de apoio aos desenvolvedores e falta de marketing.

Inicialmente, o OS/2 era incompatível com os softwares desenvolvidos para o
Windows, o que era um grande empecilho, já que o Windows era muito mais
popular entre os desenvolvedores. Depois de muita negociação, a IBM
conseguiu um acordo com a Microsoft, que permitia que o OS/2 executasse o
Windows 3.11 dentro de uma máquina virtual, oferecendo compatibilidade com
seus programas. Entretanto, o tiro acabou saindo pela culatra, pois
desestimulou ainda mais o desenvolvimento de aplicativos nativos para o OS/2,
fazendo com que ele acabasse concorrendo (em desvantagem) com o
Windows em seu próprio território. Rodar programas Windows dentro do OS/2
era muito mais problemático e o desempenho era inferior, fazendo com que
mais e mais usuários preferissem usar o Windows diretamente.

Embora esteja oficialmente morto, o OS/2 ainda é utilizado por algumas
empresas e alguns grupos de entusiastas. Em 2005 a Serenity comprou os
direitos sobre o sistema, dando origem ao eComStation, um sistema comercial
disponível no http://www.ecomstation.com/.




                                OS/2 Warp 3

Um sistema muito mais bem-sucedido, que começou a ser desenvolvido no
início da década de 90, é o Linux, que todos já conhecemos. O Linux tem a
vantagem de ser um sistema aberto, que atualmente conta com a colaboração
de milhares de desenvolvedores voluntários espalhados pelo globo, além do
apoio de empresas de peso, como a IBM.


                                                                          89
Mas, no começo, o sistema era muito mais complicado que as distribuições
atuais e não contava com as interfaces gráficas exuberantes que temos hoje
em dia. Embora o Linux seja forte em servidores desde o final da década de
90, usar Linux em desktops é algo relativamente recente.

Voltando ao lado negro da força, a Microsoft continuou melhorando seu
sistema ao longo da década de 90. Foram lançados o Windows 95, depois o 98
e finalmente ME, com todos os problemas que conhecemos, mas com a boa e
velha interface fácil de usar e uma grande safra de aplicativos que garantiram a
manutenção e o crescimento da popularidade do sistema.

Paralelamente, a Microsoft desenvolvia uma família de sistemas Windows
destinadas a servidores, o Windows NT, que chegou até a versão 4, antes de
ser transformado no Windows 2000.

Em seguida, as duas famílias Windows fundiram-se no Windows XP, um
sistema destinado tanto ao uso doméstico quanto em estações de trabalho e
servidores, que é bem mais estável que o 98 e o ME, por ser baseado no NT.
O XP foi aperfeiçoado ao longo dos anos seguintes, dando origem ao Vista.

A Apple, por sua vez, passou por duas grandes revoluções. A primeira foi a
migração do MacOS antigo para o OS X, que, por baixo da interface polida, é
um sistema Unix, derivado do BSD. A segunda aconteceu em 2005, quando a
Apple anunciou a migração de toda a sua linha de desktops e notebooks para
processadores Intel.




                                  Mac OS X

Do ponto de vista do hardware, os Macs atuais não são muito diferentes dos
PCs, você pode inclusive rodar Windows e Linux através do boot camp.
Entretanto, só os Macs são capazes de rodar o Mac OS X, devido ao uso do
EFI, um firmware especial, que substitui o BIOS da placa-mãe.

Essa combinação permitiu que a Apple se beneficiasse da redução de custo
nos processadores e outros componentes para micros PCs, mas ao mesmo

                                                                             90
tempo conservasse seu principal diferencial, que é o software. E a história
continua... ;)

Do 486 ao Athlon


Com o final da reserva de mercado, em 1992, a importação de computadores
voltou a ser permitida no Brasil, sem maiores restrições. Rapidamente, os
computadores de 8 bits e os XT's de fabricação nacional foram substituídos por
micros 386 e 486, e muita gente teve a chance de comprar o primeiro micro.
Isto coincidiu justamente com o início da era 486, fazendo com que eles
fossem vendidos em enorme quantidade aqui no Brasil. É por isso que ainda é
relativamente comum ver micros 486 por aí, muitos ainda funcionando, mas é
muito raro encontrar um 386 ou anterior.

Assim como outros processadores da época, o 486 era vendido encapsulado
dentro de uma pastilha de cerâmica, que ao mesmo tempo protegia o
processador e facilitava a dissipação do calor. Os contatos ficavam nas
beiradas internas do processador e eram ligados aos pinos externos através de
filamentos de ouro. Atualmente, são utilizados compostos plásticos resistentes
em vez de cerâmica, e os contatos do processador são feitos através de
minúsculos pontos de solda disponíveis na parte inferior do próprio wafer de
silício.

Esta foto de divulgação da Intel mostra um close de um 486 aberto. Veja que,
graças ao zoom, é possível distinguir os componentes do processador dentro
da pastilha de silício:




O 486 possuía 1.2 milhões de transistores e era fabricado numa técnica de 1
micron. Isto significa que cada transístor media um milionésimo de centímetro.
Como tínhamos 1.2 milhões deles, o die do processador tinha cerca de 120
milímetros quadrados. Para efeito de comparação, o 386 tinha apenas 275.000
transistores, quase 5 vezes menos.

Esse brutal aumento de complexidade pode ser justificado por três inovações
introduzidas pelo 486. Em primeiro lugar, ele usa um co-processador aritmético
integrado, ao invés de um chip separado, como no 386. Em segundo, ele

                                                                            91
incorpora 8 KB de cache ultra-rápido diretamente no processador,
complementando o cache mais lento disponível na placa-mãe. O cache interno
passou a ser chamado de cache L1 (level 1, ou nível 1) e o cache da placa-
mãe, de cache L2.

O cache L1 integrado se tornou um item de série em todos os processadores a
partir do 486, pois melhora de forma considerável o desempenho do
processador, oferecendo acesso instantâneo aos dados que estão sendo
processados.

Mesmo em casos em que o cache L2 opera à mesma freqüência no
processador (como no 486 DX-33, onde a placa-mãe também trabalhava a 33
MHz, ou nos processadores atuais, onde o cache L2 também é integrado ao
processador) existe uma grande diferença nos tempos de acesso dos caches
L1 e L2. Enquanto (nos processadores atuais) o cache L1 trabalha sempre com
tempos de latência de 2 ou 3 ciclos, o L2 trabalha com latência de 7 ciclos ou
mais e é acessado através de um barramento mais estreito.

Voltando ao 486, foi introduzido também o processamento de instruções em
etapas, recurso que é utilizado até os dias de hoje. A unidade de execução do
486 é composta por um pipeline de 5 estágios, que possuem funções distintas.
Cada instrução passa sucessivamente por cada um dos 5 estágios, sendo que
cada um deles faz seu trabalho em apenas um ciclo, passa a instrução adiante
e recebe outra. Poderíamos fazer uma analogia com uma linha de produção,
que passa a ter 5 trabalhadores em vez de um.

O uso do pipeline trouxe duas vantagens. A primeira é que muitas instruções
complexas, que consumiam vários ciclos do 386, passaram a ser executadas
numa única passagem. A segunda é a redução do trabalho feito em cada
estágio, o que permite que o processador seja capaz de atingir freqüências
mais altas.

O 486 foi vendido em três versões: o 486DX (a versão completa), o 486SX
(uma versão de baixo custo, sem o co-processador aritmético) e o 486SL (uma
versão de baixo consumo, destinada a notebooks). O 486SX foi relativamente
popular no começo, devido ao custo mais baixo, mas ele acabou sendo logo
descontinuado, de forma que o 486DX tornou-se rapidamente a versão mais
popular.

Os 486 (a partir do DX-33) foram também os primeiros processadores Intel a
utilizarem coolers. Naquela época, eram usados dissipadores com menos de
um centímetro de altura e exaustores minúsculos. Conforme os processadores
passaram a dissipar cada vez mais calor, os coolers foram crescendo na
mesma proporção, até chegar às monstruosidades que vemos atualmente ;).
Aqui temos um cooler para 486 em comparação com um cooler low-end atual,
dos mais baratos:




                                                                           92
Como disse, esse é apenas um cooler low-end, que pode ser usado em
processadores AMD de até 1.8 GHz. Coolers para processadores dual core, ou
voltados para quem deseja fazer overclock são muito maiores e mais pesados,
com exaustores maiores, bases de cobre e hot-pipes, como este Arctic Freezer
Pro:




 Exemplo de cooler que combina base de cobre, dissipador de alumínio e hot-
                                  pipes

O cobre é capaz de absorver quantidades maiores de calor que o alumínio,
mas em compensação é mais caro e mais difícil de se trabalhar. O alumínio,
por sua vez, permite criar lâminas mais finas, que facilitam a dissipação do
calor. Por isso, é comum que os coolers atuais utilizem bases de cobre e
dissipadores de alumínio.

Os hot-pipes são barras de cobre, maciças, ou contendo fluído, que permitem
"transportar" o calor da base do cooler para o dissipador. Os hot-pipes são
muito comuns em notebooks, onde o cooler é montado "na horizontal", com a
base de um lado, o exaustor do outro e dois ou mais hot-pipes interligando as
duas peças, como neste Toshiba A45:




                                                                          93
Hot-pipes utilizados no dissipador de um Toshiba A45

Mais recentemente, os hot-pipes passaram a ser usados também para criar
"links" entre os diferentes componentes da placa-mãe, permitindo que eles
sejam resfriados de forma conjunta, a partir de um único cooler, ou através de
um conjunto de dissipadores passivos.

Na foto a seguir temos um exemplo de uso, em uma placa Asus P5B Deluxe,
onde um hot-pipe é utilizado para ligar o dissipador da ponte norte do chipset e
o dissipador instalado sobre os reguladores de tensão da placa. Dessa forma, o
fluxo de ar gerado pelo cooler do processador acaba resfriando de forma
conjunta os dois componentes:




  Hot-pipes interligando o dissipador da ponte norte e reguladores de tensão
                           em uma Asus P5B Deluxe

De uma forma geral, os fabricantes de placas-mãe não gostam de utilizar
coolers ativos em suas placas, pois eles aumentam o índice de defeitos. Com o
tempo, todo cooler acumula poeira e passa a girar mais lentamente, até parar
completamente. Quando isso acontece, a placa passa a superaquecer e travar,
o que prejudica a imagem do fabricante. Além disso, coolers adicionais
aumentam o nível de ruído do equipamento, aumentam (embora pouco) o
consumo elétrico e assim por diante. Soluções de dissipação passiva como
                                                                               94
essa da Asus P5B são cada vez mais populares, já que aproveitam o grande
fluxo de ar gerado pelo cooler do processador.

Finalmente, temos os water coolers, que utilizam água ou outro líquido
refrigerante no lugar do ar. O líquido é bombeado dentro do sistema, passando
pelo water block (o módulo que fica sobre o processador, substituindo o cooler)
e em seguida pelo radiador, onde é resfriado.

Os water coolers são em geral mais eficientes que os coolers tradicionais, mas
são sistemas muito caros, destinados a entusiastas. Um "meio termo" entre os
coolers tradicionais e os water coolers são os water coolers self-contained,
onde todos os componentes, incluindo a bomba, radiador, water-block e o
reservatório para o fluído são combinados na forma de um design bastante
compacto, de tamanho similar ao de um cooler tradicional:




         Evercool Silver Night, exemplo de water cooler self-contained

Voltando ao tema inicial, outra inovação introduzida pelo 486 foi a multiplicação
de clock, onde o processador trabalha numa freqüência mais alta que a placa-
mãe. Isto parece natural hoje em dia, mas na época causou espanto.

Graças a todas as inovações, as versões iniciais do 486 eram capazes de
operar a 50 MHz ou mais. Por questões estratégicas, a Intel optou por lançar
versões iniciais de 25 e 33 MHz, que funcionavam bem nas placas da época.
Quando, pressionada pelos concorrentes, a intel decidiu gastar os cartuchos e
lançar um 486 operando a 50 MHz, se viu num beco sem saída, pois na época
não existia tecnologia para produzir uma placa-mãe capaz de trabalhar
estavelmente a 50 MHz.

A solução foi incluir um circuito simples, que fazia com que o processador
trabalhasse ao dobro da freqüência da placa-mãe. Surgiu então o 486 DX-2 50,
seguido pelo DX-2 66. Pouco depois, a Intel introduziu uma nova técnica de
fabricação, com transistores de 0.6 micron, e foi capaz de lançar o 486 DX-4
100, que trabalha ao triplo da freqüência da placa-mãe:




                                                                              95
Processador                     placa-mãe                      Multiplicador

486 25 MHz                      25 MHz                         1x

486 33 MHz                      33 MHz                         1x

486DX-2 50 MHz                  25 MHz                         2x

486DX-2 66 MHz                  33 MHz                         2x

486DX-2 80 MHz                  40 MHz                         2x

486DX-4 75 MHz                  25 MHz                         3x

486DX-4 100 MHz                 33 MHz                         3x

486DX-4 120 MHz                 40 MHz                         3x

O 486DX-4 trouxe um complicador adicional: o uso de 3.3v de tensão, ao invés
dos 5v usados pelos processadores anteriores. Os fabricantes passaram a
produzir placas compatíveis com toda a família, onde o ajuste da freqüência da
placa-mãe, multiplicador e tensão usada pelo processador eram configurados
através de jumpers.

Isto continuou durante toda a era Pentium 1, fazendo com que os manuais de
placas viessem com longas tabelas com as opções disponíveis, como neste
exemplo, de uma placa TX Pro (para Pentium 1):




Exemplo de tabela de configuração de jumpers, item de série nos manuais de
                              placas antigas

Com isso, surgiu também a possibilidade de fazer overclock do processador,
usando uma freqüência ou multiplicador maior que o nominal. Era muito
comum usar um 486DX-2 66 a 80 MHz ou um 486DX-4 100 a 120 MHz,

                                                                            96
aumentando a freqüência da placa-mãe de 33 para 40 MHz. Obviamente, fazer
overclock aumenta o consumo e o aquecimento do processador (exigindo
muitas vezes o uso de um cooler mais parrudo), além da possibilidade de
redução da vida útil. Mesmo assim, ele se tornou incrivelmente popular, por
permitir aumentar o desempenho do equipamento a custo zero.

A partir das placas para Pentium II, os ajustes passaram a ser feitos através do
setup, ao invés de jumpers. A placa detecta automaticamente as configurações
usadas pelo processador, mas você pode alterar as configurações
manualmente para fazer overclock. Se, por acaso, você exagerar na dose e o
micro não der mais boot, use o jumper do CMOS (o único ainda encontrado em
todas as placas atuais) para limpar o CMOS, restaurando as configurações
originais.

Aqui temos um exemplo de overclock (em uma placa moderna) feito através
das configurações do setup. Neste exemplo, a placa foi configurada para
operar a 148 MHz (em vez de 133), resultando em um aumento proporcional da
freqüência do processador:




                          Overclock através do Setup

Mesmo depois do lançamento do Pentium 1, a plataforma 486 ainda teve uma
sobrevida surpreendente graças aos processadores AMD 5x86, Cyrix Cx5x86 e
ao Pentium overdrive da Intel, que serviam como opções de upgrade para
quem tinha um 486DX-2 ou um 486DX-4, prometendo um desempenho similar
ao dos processadores Pentium low-end.

A grosso modo, um 486 possui um desempenho duas vezes superior ao de um
386 do mesmo clock. Isto significa que mesmo um 486SX de 25 MHz ganha
fácil de um 386 de 40 MHz. Por outro lado, um 486 apresenta apenas 50 a 60%
do desempenho de um Pentium 1 do mesmo clock. Isto significa que mesmo
um Pentium 60 consegue superar um 486 DX4-100.

O AMD 5x68 é um 486 "modernizado", lançado pela AMD no final de 1995. Ele
vinha com 16 KB de cache L1, que operava em modo write-back (onde o cache
trabalha cacheando tanto as operações de leitura, quanto as de escrita) e era
fabricado numa técnica de produção de 0.35 micron, o que permitia que ele
trabalhasse a 133 MHz (4x 33 MHz) e também o tornava menor e mais barato
de se produzir. Na época, ele era o processador mais barato do mercado e
permitia montar micros usando placas para 486, que também eram bem mais
baratas. Isso o tornou especialmente popular aqui no Brasil.

Apesar do clock de 133 MHz, o 5x86 concorria com o Pentium 75 em termos
de desempenho. Era comum que o 5x68 fosse overclocado para 160 MHz


                                                                             97
(aumentando a freqüência da placa-mãe de 33 para 40 MHz), resultando em
um desempenho próximo ao de um Pentium 90.

Concorrendo com o 5x86, a Cyrix lançou o Cx5x86, um processador que
utilizava uma arquitetura bastante similar ao Pentium da Intel, mas usava
placas para 486. A versão de 100 MHz rivalizava com o 5x86 de 133 MHz,
enquanto a de 120 MHz conseguia superá-lo com uma certa margem. O maior
problema é que o Cx5x86 era bem mais caro, por isso acabou não sendo uma
opção muito popular.

Completando o time, a Intel lançou o Pentium overdrive, um Pentium adaptado
para utilizar as placas para 486, que existia em versões de 63 e 83 MHz.
Apesar da diferença de clock, o overdrive de 83 MHz conseguia competir de
igual para igual com o 5x86 de 133 MHz, com o vencedor variando de acordo
com a aplicação usada. Apesar disso, o AMD 5x86 acabou sendo mais popular
devido à questão do custo.

Muitas placas-mãe desta época vinham sem memória cache, trazendo no lugar
um encaixe marrom, ao lado do processador, que permitia encaixar um módulo
COAST (cache on a stick), com 128, 256 ou 512 KB de cache. Essas placas
são bem diferentes da primeira safra de placas para 486, pois já possuem slots
PCI e utilizam pentes de memória de 72 vias, assim como as placas para
Pentium 1.




       Placa mãe para 486, com um 5x86 e o módulo COAST instalado

Com o Pentium, a Intel tentou solucionar os principais gargalos de
desempenho da plataforma anterior, mudando vários aspectos não apenas do
processador, mas também nas placas-mãe para ele.

A primeira mudança trazida pelo Pentium foi o aumento da quantidade de
cache L1, que passou a ser de 16 KB, dividido em dois blocos de 8 KB. Isso
melhorou a eficiência do cache (em relação ao cache unificado do 486),
permitindo que o processador consiga acessar instruções e os dados
necessários (para executá-las) simultaneamente, em vez de precisar fazer
duas operações separadas.

                                                                            98
Além do aumento no tamanho, o cache passou a ser acessado através de um
barramento interno de 512 bits (256 bits para o cache de dados e mais 256
para o de instruções), contra apenas 128 bits no 486. Assim como no 5x86 da
AMD, passou também a ser utilizado cache write-back, que também cacheava
as operações de escrita. O cache usado no 486 cacheia apenas as operações
de leitura, o que permite ao processador ganhar tempo ao ler dados, mas não
ajuda na hora de gravar, situação onde o processador tinha que esperar pela
memória RAM.

Com a popularização dos games e aplicativos 3D de uma forma geral, o
desempenho do processador em ponto flutuante passou a ser cada vez mais
importante. Combinado com as melhorias no cache, foi desenvolvido um co-
processador aritmético cerca de 5 vezes mais rápido que o usado no 486. O
co-processador do Pentium era tão rápido (comparado com outros
processadores da época), que mesmo um K6-2 perdia para um Pentium da
mesma freqüência em jogos e aplicativos muito dependentes de cálculos de
ponto flutuante.

O Pentium também foi o primeiro processador Intel a usar uma arquitetura
superescalar. Internamente, o Pentium possui duas unidades de execução,
com a inclusão de um circuito de branch prediction, encarregado de dividir as
instruções entre as duas unidades e antecipar o processamento de instruções,
de forma a manter ambas ocupadas na maior parte do tempo.

Essa tendência de "executar mais por ciclo de clock" continua até os dias de
hoje, com os processadores incluindo um número cada vez maior de unidades
de execução, mais memória cache, circuitos aprimorados de branch prediction,
sem falar nos processadores dual-core e quad-core. Mesmo que existisse um
486 ou Pentium capaz de operar a 2 ou 3 GHz, o desempenho seria
ridiculamente inferior ao de um processador atual operando na mesma
freqüência.




              Pentium 133, com o encapsulamento de cerâmica

Acompanhando as melhorias no processador, foram feitas mudanças nas
placas-mãe, de forma a melhorar o desempenho de acesso à memória. Em
primeiro lugar, as placas para Pentium operam a freqüências mais altas: 60 ou
66 MHz, de acordo com o processador usado. Embora as memórias FPM e
EDO usadas na época não fossem capazes de acompanhar a mudança (elas
passaram a trabalhar usando tempos de espera), o aumento da freqüência
permitiu usar chips de cache L2 mais rápidos (já que eles operavam na

                                                                           99
freqüência da placa-mãe). Além disso, o Pentium passou a acessar a memória
a 64 bits, ao invés de 32 bits como no 486, o que efetivamente dobrou a
velocidade do barramento com a memória.

Como os pentes de 72 vias usados na época eram módulos de 32 bits, era
necessário utilizá-los aos pares, sempre 2 ou 4 módulos, sendo que os
módulos dentro de cada par deveriam ser idênticos. Os pentes de 72 vias são
antecessores diretos dos módulos DIMM usados atualmente.

Na foto a seguir temos uma comparação entre um módulo DIMM, um módulo
de 72 vias e um antigo módulo de 30 vias, dos usados nos micros 386 e nos
primeiros 486:




Os processadores Pentium existiram em versões de 60 a 200 MHz, sempre
com a placa-mãe operando a 60 ou 66 MHz e usando um multiplicador de 1x,
1.5x, 2x, 2.5x ou 3x para atingir a freqüência anunciada. Era comum fazer
overclock aumentando a freqüência da placa-mãe para 75 MHz, opção
oferecida pela maioria das placas soquete 7 da época.

Assim como na época dos micros 486, as placas-mãe para processadores
Pentium (com exceção de placas muito antigas) suportam várias freqüências
de barramento e vários multiplicadores distintos. Na maioria dos casos é
possível configurar a placa-mãe para utilizar qualquer processador da família.

Em 1996 a Intel lançou o Pentium MMX, que foi o integrante final da família
Pentium 1. Ele chegou ao mercado acompanhado de uma forte campanha de
marketing, que divulgava as novas instruções MMX como a maior invenção da
humanidade depois da batata frita ;). As instruções MMX permitiam que até 4
instruções simples fossem combinadas numa única instrução complexa, de
forma a serem processadas em um único ciclo de clock. A Intel esperava que
elas fossem capazes de multiplicar o desempenho do processador em
aplicativos multimídia, principalmente em compressão e descompressão de
áudio, mas no final acabou dando com os burros n'agua.

As instruções MMX continuam disponíveis nos processadores atuais, mas
nunca foram muito utilizadas devido a uma combinação de fatores. O primeiro

                                                                          100
é que elas só ajudam em algumas operações envolvendo números inteiros,
enquanto a maioria dos aplicativos de multimídia e jogos utilizam
predominantemente instruções de ponto flutuante. O segundo é que para tirar
proveito delas, os aplicativos precisam ser manualmente otimizados e não
existe nada que os programadores odeiem mais do que ficar otimizando seus
programas para cada conjunto de instruções existente. O terceiro é que,
mesmo em aplicativos otimizados, elas não conseguem fornecer o ganho de
desempenho esperado e, como se não bastasse, logo surgiram conjuntos mais
completos e adequados de instruções multimídia, como o 3D-Now (introduzido
pela AMD no K6-2) e o SSE (desenvolvido pela Intel e usado a partir do
Pentium III).

Para não depender apenas das novas instruções, a Intel aumentou o cache L1
do processador, de 16 para 32 KB. Com isto, o MMX passou a ser um pouco
mais rápido do que um Pentium 1 da mesma freqüência, mesmo nos
aplicativos sem otimização. Lembre-se de que naquela época o cache L2 do
processador ainda fazia parte da placa-mãe e operava a apenas 66 MHz. Um
cache L1 competente era essencial.

O MMX foi lançado em versões de 200 e 233 MHz, ambas compatíveis com a
grande maioria das placas soquete 7 existentes. Ele também foi o primeiro
processador Intel a usar um encapsulamento plástico com um dissipador
metálico, ao contrário da cerâmica usada nos anteriores. Essa mudança foi na
verdade bastante benéfica, pois o dissipador metálico é muito mais eficiente na
dissipação do calor do que a cerâmica, o que melhora a eficiência do cooler.




                 Pentium MMX, com o encapsulamento PGA

Na foto a seguir temos uma VX Pro, uma placa bem comum no final da era
Pentium. Ela suporta todos os processadores da família, até o 233 MMX. Note
que ela inclui três slots ISA, pois na época os modems e placas de som ISA
ainda eram bastante comuns:




                                                                           101
Além dos 4 soquetes para pentes de 72 vias, ela possui também dois soquetes
para módulos DIMM, mas eles não servem para muita coisa, pois o chipset so
é capaz de endereçar chips de memória de até 2 MB, permitindo que fossem
utilizados módulos de no máximo 32 MB. Mesmo que você tentasse instalar um
módulo de maior capacidade, a placa só reconhecia 16 ou 32 MB, de acordo
com o número de chips no módulo.

Durante a era Pentium, tivemos também os chips K5 e K6 (da AMD), o Cyrix
6x86 e o IDT C6, que eram compatíveis com as mesmas placas, mas que
possuíam uma fatia relativamente pequena do mercado. A Cyrix foi comprada
pela VIA em 1999, que usou sua tecnologia para desenvolver os
processadores VIA C3 e VIA C7, que são vendidos atualmente. A IDT era uma
fabricante menor, que desapareceu sem deixar rastros. Das antigas
concorrentes, sobrou a AMD, que, com o lançamento do Athlon 64 e derivados,
chegou a superar a Intel em volume de processadores vendidos em 2005 e
2006.

Na época, a AMD ainda era uma empresa menor, que enfrentava problemas
financeiros depois das fracas vendas dos processadores K5 e K6. Para
completar, a Intel passou a utilizar um barramento proprietário no Pentium II,
impedindo que a AMD desenvolvesse processadores capazes de utilizar as
placas-mãe para ele.

Sem escolha, a AMD apostou tudo no K6-2, um processador relativamente
poderoso, que mantinha compatibilidade com as placas soquete 7. Em termos
de processamento de inteiros, o K6-2 competia diretamente com um Pentium II
do mesmo clock, o maior problema continuava sendo o co-processador
aritmético, que era até duas vezes mais lento.

                                                                          102
AMD K6-2, com o encapsulamento CPGA

Para reduzir a diferença, a AMD investiu no desenvolvimento de um novo
conjunto de instruções, o 3D-Now, formado por 27 novas instruções, com o
objetivo de agilizar o processamento 3D, sobretudo em jogos. O 3D-Now só
ajudava em aplicativos otimizados, mas ao contrário do MMX ele era realmente
eficiente, o que levou muitas empresas a otimizarem seus títulos para ele. O
K6-2 também incorporou, sem muito alarde, o suporte às instruções MMX.

Junto com a AMD, fabricantes de chipsets, como a VIA, SiS e Ali foram
prejudicados pela decisão da Intel, pois não podiam desenvolver chipsets para
o Pentium II sem o pagamento de licenças, o que continua até os dias de hoje.
Isto causou uma certa "revolta" entre os fabricantes, que passaram a apoiar a
AMD, desenvolvendo placas soquete 7 aprimoradas, que suportavam
barramento de 100 MHz, utilizavam pentes de memória DIMM e possuíam slots
AGP. Essas placas passaram a ser chamadas de placas super 7 e, junto com
os processadores K6-2, se tornaram uma opção de baixo custo para quem não
queria gastar com um Pentium II.

Esta é uma Asus P5A-B, uma placa super 7 bastante comum na época. Veja
que ela possui slot AGP e três soquetes para pentes de memória DIMM, que
permitem o uso de módulos até 256 MB. Ela oferecia suporte a toda a família
K6-2, até o K6-2 550, além de manter suporte aos processadores antigos. A
qualidade da placa não era das melhores, sobretudo se comparada com placas
mais caras para o Pentium II, mas ela era barata o que para muitos era
argumento suficiente:




                                                                         103
Asus P5A-B, exemplo de placa super 7

Uma das prioridades da AMD foi manter a compatibilidade com as placas
soquete 7 antigas. Por isso, optaram por vender o K6-2 com o multiplicador
destravado. Isso permitia instalar processadores K6-2 em placas antigas, que
trabalhavam a apenas 66 MHz, desde que a placa suportasse a tensão de 2.2v
(ou 2.4v nas versões mais recentes) utilizada pelo processador. Um K6-2 de
300 MHz podia ser utilizado tanto numa placa-mãe configurada para operar a
100 MHz com multiplicador de 3x quanto em uma placa configurada para
operar a 66 MHz com multiplicador de 4.5x.

Naturalmente, o desempenho era melhor na placa de 100 MHz, pela diferença
na freqüência de operação da memória e do cache L2, mas o esforço em
manter compatibilidade com as placas antigas foi louvável.

Em 1999 a AMD lançou uma última atualização para a plataforma K6, na forma
do K6-3, o primeiro processador AMD a trazer cache L2 integrado ao
processador. Além de manter os mesmos 64 KB de cache L1 do K6-2, o K6-3
incorporou 256 KB de cache L2 full-speed (operando na mesma freqüência do
processador), assim como os processadores atuais. Ele também aproveitava o
cache disponível nas placas soquete 7, que passava a funcionar como um
cache L3, resultando em mais um pequeno ganho.

Embora fosse perceptivelmente mais rápido que um K6-2 do mesmo clock, o
K6-3 era mais caro e foi lançado no finalzinho da era soquete 7, quando a
plataforma já caminhava para a obsolência. Por causa disso, ele acabou não
fazendo muito sucesso, sendo substituído rapidamente pelos Athlons e Durons.

Como disse, ao desenvolver o Pentium II, a Intel optou por desenvolver um
barramento proprietário (o GTL+), de forma a dificultar a vida dos concorrentes.
Inicialmente a AMD continuou usando as placas soquete 7, mas em seguida
respondeu com o EV6, um barramento próprio (na verdade desenvolvido pela

                                                                            104
Alpha Digital e licenciado pela AMD), utilizado pelos processadores Athlon e
Duron. A partir daí, nunca mais tivemos um barramento padrão, que permitisse
a criação de placas-mãe com suporte a processadores dos dois fabricantes,
como na época das placas soquete 7.

As primeiras versões do Pentium II utilizavam o encapsulamento SEPP
(Singled Edge Processor Package), um formato dispendioso, em que ao invés
de um pequeno encapsulamento de cerâmica, temos uma placa de circuito,
que traz o processador e o cache L2 integrado. Protegendo esta placa, temos
uma capa plástica, formando um cartucho muito parecido com um cartucho de
videogame, onde o cooler era instalado na parte de trás. O encaixe para ele foi
batizado de slot 1:




                   Pentium II, com o encapsulamento SEPP

O Pentium II inclui 512 KB de cache L2, que opera à metade da freqüência do
processador (num Pentium II 400, por exemplo, o cache L2 opera a 200 MHz) e
por isso é bem mais rápido que o cache usado nas placas soquete 7, que
opera a apenas 66 ou 100 MHz. Com o cache movido para dentro do
processador, as placas deixaram de trazer cache externo, o que continua até
os dias de hoje.

O único processador para micros PC a utilizar cache L3 instalado na placa-mãe
foi mesmo o K6-3. Existiram séries de processadores Intel, como o Pentium 4
Extreme Edition (lançado em 2005) e algumas versões do Intel Xeon que
também utilizavam cache L3, mas nesses casos o cache era instalado dentro
do encapsulamento do processador, e não na placa-mãe. Durante muito
tempo, a idéia de utilizar cache L3 acabou sendo abandonada, em favor de
caches L2 cada vez maiores, mas tudo indica que ele retornará no AMD
Phenom e no Intel Nehalem.

Além do cache L2, o Pentium II manteve os 32 KB de cache L1 (dividido em
dois blocos de 16 KB para dados e instruções) do MMX. Abrindo o cartucho, é
possível ver os dois grandes chips de cache L2 instalados próximos ao die do
processador:




                                                                           105
Pentium II com core Klamath, sem a cobertura plástica

O Pentium II foi produzido em duas arquiteturas diferentes. As versões de até
300 MHz utilizaram a arquitetura Klamath, que consistia em uma técnica de
fabricação de 0.35 micron, muito parecida com a utilizada nos processadores
Pentium MMX. Nas versões a partir de 333 MHz foi utilizada a arquitetura
Deschutes de 0.25 micron, que resultou em uma dissipação de calor muito
menor, possibilitando o desenvolvimento de processadores mais rápidos. As
versões do Pentium II de até 333 MHz usam bus de 66 MHz, enquanto que as
versões a partir de 350 MHz usam bus de 100 MHz, quebrando a
compatibilidade com as placas da geração anterior.

Com o lançamento do Pentium II, a Intel abandonou a fabricação do Pentium
MMX, passando a vender apenas processadores Pentium II que eram muito
mais caros. O problema com essa estratégia foi que a Intel passou a perder
terreno rapidamente no mercado de PCs de baixo custo, principalmente para o
K6-2.

Para preencher a lacuna, a Intel lançou o Celeron, que inicialmente era uma
simples versão castrada do Pentium II, sem os chips de cache e o invólucro
plástico. O Celeron original era muito lento, pois não possuía cache L2 algum,
contando apenas com os 32 KB de cache L1.

O cache L2 é um componente extremamente importante nos processadores
atuais, pois apesar de o desempenho dos processadores ter aumentado quase
10.000 vezes nas últimas duas décadas, a memória RAM pouco evoluiu em
velocidade. Pouco adianta um processador veloz, se a todo instante ele tem
que parar o que está fazendo para esperar dados provenientes da memória
RAM. É justamente aí que entra o cache secundário, reunindo os dados mais
importantes da memória para que o processador não precise ficar esperando.
Retirando o cache L2, a performance do equipamento cai em 40% ou mais.
Justamente por isso, além de perder feio para o Pentium II, o Celeron sem
cache perdia até mesmo para processadores mais antigos.

Essa primeira safra foi rapidamente substituída pelo Celeron Mendocino, que
trazia 128 KB de cache L1 interno (full-speed), que resolveu o problema da
performance. O Mendocino foi produzido em versões de 300 a 533 MHz,
sempre utilizando barramento de 66 MHz. Além de possírem um desempenho
próximo ao de um Pentium II do mesmo clock (o cache do Pentium II é maior,
porém mais lento), as versões de 300, 333 e 366 MHz permitiam overclocks de
50%, atingindo respectivamente 450, 500 e 550 MHz com boa estabilidade.

                                                                          106
Não poderia ser mais simples: bastava investir num cooler de boa qualidade e
instalar o Celeron Mendocino em uma placa-mãe configurada para operar a
100 MHz.

O Celeron Mendocino foi também o primeiro processador a utilizar o soquete
370, que mais tarde seria utilizado pelo Pentium III Coppermine e demais
processadores da família. Foram produzidos também adaptadores, que
permitiam usar processadores soquete 370 em placas slot 1 compatíveis:




    Celeron Mendocino instalado em uma placa slot 1 usando o adaptador

Em fevereiro de 1999 foi lançado o Pentium III. A versão inicial (que utilizava o
core Katmai) não trazia grandes mudanças: era basicamente um Pentium II,
que utilizava o encapsulamento SEPP, mantinha o uso do cache externo e
operava a 500 MHz. A novidade foi a inclusão das instruções SSE que, assim
como as instruções 3D-Now da AMD, eram voltadas para aplicativos multimídia
e 3D.

Pouco depois, em outubro de 1999, foi lançado o Pentium III Coppermine,
uma versão aprimorada, produzida numa técnica de 0.18 micron, que trazia
256 KB de cache L2 integrado (operando na mesma freqüência do
processador) e abandonou o formato SEPP em favor do FC-PGA, destinado a
uso em conjunto com as placas-mãe soquete 370.

A mudança decretou a morte do slot 1, que não voltou a ser utilizado por outros
processadores Intel. Apesar disso, as versões do Pentium III PC-PGA que
utilizavam bus de 100 MHz ainda podiam ser usadas na maioria das placas slot
1 antigas, com a ajuda do adaptador (muitas placas precisavam de uma
atualização de BIOS).




                                                                             107
Pentium III, com o encapsulamento FC-PGA

Não demorou para que a Intel lançasse também uma nova versão do Celeron,
baseada na mesma arquitetura, dando continuidade à tradição de overclocks
gigantescos. O Celeron Coppermine nada mais era do que um Pentium III com
metade do cache L2 desativado (128 KB), que utilizava bus de 66 MHz (em vez
de 100 ou 133, como as diferentes versões do Pentium III). Embora fosse
originalmente mais lento que um Pentium III do mesmo clock, o Celeron
Coppermine de 600 MHz podia tranquilamente operar a 900 MHz, utilizando
bus de 100 MHz, oferecendo um desempenho similar ao de um Pentium III 800
a uma fração do custo. Eu mesmo tenho um, funcionando até hoje. ;)

O Celeron acabou se revelando um bom negócio para a Intel, pois permitia
aproveitar processadores Pentium III com defeitos na memória cache, que de
outra forma iriam para o lixo.

Quando ocorre um defeito no cache, em geral apenas alguns poucos bits são
afetados, normalmente bits fisicamente próximos. Antes de saírem de fábrica,
todos os processadores são rigorosamente testados, e os que apresentam
defeitos no cache são separados. O Pentium III foi projetado de tal maneira que
o cache L2 era dividido em duas seções de 128 KB, que podiam ser
desabilitadas individualmente (um processo irreversível). Como é usada
apenas a metade "boa" do cache, o processador funciona perfeitamente e
temos mais um consumidor satisfeito.

O Celeron Coppermine foi lançado em versões de até 950 MHz, sendo que a
partir do Celeron 800 passou a ser utilizado bus de 100 MHz (que melhorou um
pouco o desempenho do processador em relação aos antigos). O Pentium III
passou a utilizar barramento de 133 MHz e foi lançado em versões de até 1.0
GHz, até ser substituído pelo Pentium 4.

Entre 2001 e 2002, já depois de descontinuar o Pentium III, a Intel produziu
pequenas quantidades do Celeron Tualatin, uma versão aprimorada,
produzida numa técnica de 0.13 micron e equipada com 256 KB de cache L2.
O Tualatin existiu em versões de 1.0 e 1.4 GHz e era compatível com a maioria
das placas soquete 370 para Pentium III (embora muitas precisassem de uma
atualização de BIOS). Ele possuía um bom desempenho em relação ao
Pentium 4 e era bastante econômico com relação ao consumo elétrico e



                                                                           108
aquecimento, mas a Intel optou por não levar o projeto adiante, com medo de
prejudicar as vendas do Pentium 4.




                    Exemplar raro do Tualatin de 1.2 GHz

Uma questão interessante é que os processadores Pentium II e Pentium III são
derivados do Pentium Pro, um processador destinado a workstations e
servidores, lançado pela Intel em 1995, em versões de 150, 166, 180 e 200
MHz. Embora fosse contemporâneo do Pentium I, o Pentium Pro era baseado
numa arquitetura completamente diferente (a plataforma P6), inspirada nos
processadores RISC.

Em vez de processar diretamente todas as instruções complexas incluídas no
conjunto x86, o Pentium Pro incluía unidades de execução capazes de
processar apenas instruções simples, porém a uma grande velocidade, quase
sempre uma instrução em cada unidade de execução, por ciclo de clock. Antes
de chegarem às unidades de execução, as instruções complexas utilizadas
pelos programas eram convertidas em instruções simples pelas unidades
decodificadoras, incluídas no processador. O Pentium Pro incluía três unidades
de execução e uma unidade decodificadora capaz de mantê-las ocupadas na
maior parte do tempo.

Para completar, o processador incluía 256 KB de cache L2 full speed no
mesmo encapsulamento do processador. Isto soa familiar não é? O Pentium
Pro é muito similar a um Pentium III Coppermine, só que lançado 4 anos antes.
Na época a Intel não possuía tecnologia para incluir o cache L2 diretamente no
die do processador, por isso era utilizado um wafer separado, porém incluído
no mesmo encapsulamento do processador. Isso fazia com que o Pentium Pro
tivesse um formato retangular:




                                                                          109
Interior de um Pentium Pro, com o chip de cache separado

Naturalmente, o Pentium Pro não possuía as instruções SSE, mas os
ingredientes básicos já estavam presentes. Podemos dizer que tanto o Pentium
II quanto o Pentium III são versões melhoradas do Pentium Pro, adaptadas ao
mercado doméstico. Uma observação é que também existiram versões do
Pentium Pro com 512 KB e 1 MB de cache, mas elas eram muito mais caras e
por isso foram produzidas em pequenas quantidades.

Voltando à AMD, embora o K6-2 tenha dado combate ao Pentium II e às
primeiras versões do Pentium III, as limitações da antiga plataforma soquete 7
limitavam o desempenho do processador. Outro problema é que o K6-2 era
uma plataforma de baixo custo, que levava ao aparecimento de placas-mãe
cada vez mais baratas e de qualidade cada vez pior. Os constantes problemas
com as placas acabaram fazendo com que o K6-2 ficasse com má fama no
mercado, embora o processador em si apresentasse um bom custo benefício.

Em 1999 a AMD finalmente conseguiu lançar o Athlon (na época também
chamado de K7), uma plataforma completamente nova, que conseguiu
solucionar os principais problemas associados ao K6-2. Apesar de toda a
evolução, todos os processadores AMD lançados daí em diante, incluindo os
Athlon 64 dual-core e quad-core continuam sendo baseados nessa mesma
arquitetura.

As primeiras versões do Athlon utilizavam um formato de cartucho, muito
similar ao usado pelo Pentium II, com chips de memória cache externos,
operando à metade da freqüência do processador. As placas-mãe utilizavam o
slot A, um conector similar ao usado pelo Pentium II, porém incompatível e com
uma pinagem diferente.

O uso de cache externo atrapalhou o desempenho dessa versão inicial,
principalmente se levarmos em conta que na época a Intel já vendia o Pentium
III Coppermine, com cache full-speed, que era mais rápido e mais barato de se
produzir. Para piorar, a AMD não conseguiu obter chips de memória cache
capazes de operar a mais de 350 MHz, de forma que o divisor da freqüência do
cache foi aumentando conforme lançava processadores mais rápidos.

As versões de até 700 MHz do Athlon slot A trazem cache L2 operando à
metade da freqüência do processador. As versões de 750, 800 e 850 MHz


                                                                          110
trazem cache operando a apenas 2/5 da freqüência, enquanto nas versões de
900, 950 e 1 GHz o cache opera a apenas 1/3 da freqüência.




                   Athlon slot A, baseado na arquitetura K7

Essa cara e desajeitada versão inicial do Athlon foi rapidamente substituída
pelo Athlon Thunderbird, que incorporou 256 KB de cache L2 full-speed e
voltou a utilizar o formato soquete, dando início à era soquete A (soquete 462).
Esse mesmo formato continuou sendo usado pelos Durons, Athlons XP e
Semprons, até a introdução do Athlon 64, que passou a utilizar placas-mãe
baseadas no soquete 754 ou 939.

O Duron substituiu o K6-2 como processador de baixo custo da AMD e prestou
bons serviços, concorrendo com as diferentes versões do Celeron. Em todas
as suas encarnações, o Duron possui apenas 64 KB de cache L2. Entretanto,
ele conserva o massivo cache L1 de 128 KB do Athlon, o que cria uma
configuração interessante, com mais cache L1 do que cache L2.

Assim como o Athlon, o Duron utiliza um sistema de cache "exclusivo", onde os
dados armazenados no cache L1 são sempre diferentes dos armazenados no
cache L2. O cache L1 do Celeron, por sua vez, armazena sempre cópias de
informações já armazenadas no cache L2 de 128 KB. Graças a essa
característica, o Duron acaba levando vantagem com relação ao cache, pois é
capaz de armazenar um total de 196 KB de informações nos caches, contra
apenas 128 KB no Celeron.

A versão inicial do Duron utilizava o core Spitfire (baseado no Athlon
Thunderbird) e existia em versões de 600 a 950 MHz. Em seguida foi lançado o
Duron Morgan (baseado no Athlon XP), que existiu em versões de até 1.3 GHz,
quando foi substituído pelo Sempron.

As versões iniciais do Athlon Thunderbird utilizavam barramento de 100 ou 133
MHz, assim como o Pentium III. Entretanto, as versões seguintes (com core
Thoroughbred e Barton) passaram a utilizar bus de 166 ou 200 MHz, memórias
DDR e tensões mais baixas, quebrando a compatibilidade com as placas
antigas. Com o uso de memória DDR, o barramento passa a realizar duas
transferências por ciclo, por isso é comum que os fabricantes dobrem a
freqüência na hora de divulgar as especificações, chegando aos 333 (166 x 2)
ou 400 MHz (200 x 2).


                                                                            111
Como citei anteriormente, a Intel patenteou o barramento GTL+ usados pelos
processadores Pentium II em diante, assim como o slot 1 e o soquete 370, de
forma que a AMD não podia utilizá-los em seus processadores. A AMD optou
então por licenciar o barramento EV6, desenvolvido pela Alpha Digital. O EV6
possui uma vantagem importante sobre o barramento da Intel, que é o fato de
ser um barramento ponto a ponto. Nele, cada processador tem seu barramento
exclusivo de comunicação com o chipset, permitindo o desenvolvimento de
placas para dois ou quatro processadores Athlon, trabalhando em SMP, cada
um com o seu barramento exclusivo com a memória e outros componentes,
resultando em um ganho considerável de desempenho em relação ao Pentium
III. Embora a AMD não tenha conseguido tirar muito proveito deste recurso nos
desktops, ele ajudou o Athlon a ganhar espaço nos servidores, onde máquinas
com dois processadores são comuns.

A seguir temos uma foto que mostra como o Athlon é fisicamente. Essa foto foi
cedida pela própria AMD e é bem interessante, pois ajuda a entender como os
dados trafegam dentro do processador:




Veja que a foto está dividida em pequenos retângulos, cada um mostrando a
área ocupada por cada componente do processador. Infelizmente tudo está em
inglês, mas aqui vai uma breve legenda dos componentes mais importantes (na
ordem em que cada componente aparece na ilustração, começando de cima)

      Floating Point Execution Units: São as unidades de execução de
      ponto flutuante. Nada mais é do que a parte fundamental do
      coprocessador aritmético, fundamental em vários aplicativos.
                                                                          112
Floating Point Control: Este componente controla a ordem em que as
      instruções serão executadas pelo co-processador aritmético, permitindo
      que as unidades de ponto flutuante fiquem ocupadas na maior parte do
      tempo.

      Floating Point Scheduler: Armazena as próximas instruções que serão
      processadas pelo co-processador. Este componente é essencial para o
      trabalho do Floating Point Control.

      64 Kbyte Data Cache: Os 128 KB de cache L1 do Athlon são divididos
      em dois blocos, 64 KB para dados e 64 KB para instruções. Esta divisão
      meio a meio é utilizada na maioria dos processadores atuais e melhora a
      velocidade de acesso, pois permite que os dois blocos sejam acessados
      simultaneamente. O Data Cache é a metade que armazena dados.

      Integer Execution Unit: Composto pelas unidades de execução de
      inteiros, ele é o componente básico de qualquer processador. É aqui que
      são processadas as operações envolvendo números inteiros.

      Instruction Control Unit: Circuito que controla o envio de instruções
      para as unidades de execução de inteiros. Também ordena as
      instruções, de forma que possam ser processadas mais rápido.

      Bus Interface Units: É por aqui que os dados entram e saem do
      processador. Controla a comunicação do processador com o chipset e
      com os demais componentes do micro.

      64 Kbyte Instruction Cache: É o segundo bloco do cache L1, o bloco
      que armazena instruções.

      Branch Prediction: O circuito de Branch Prediction é um dos
      componentes mais importantes dos processadores atuais, responsável
      por organizar as instruções de forma a manter as unidades de execução
      do processador ocupadas. Além de procurar adiante no código por
      instruções que podem ser "adiantadas", ele "adivinha" o resultado de
      operações de tomada de decisão (levando em conta fatores como o
      resultado de operações similares executadas anteriormente), permitindo
      que o processador vá "adiantando o serviço" enquanto o resultado da
      primeira operação ainda não é conhecido. Como todo bom adivinho, ele
      às vezes erra, fazendo com que o processador tenha que descartar todo
      o trabalho feito. Apesar disso, o ganho é muito grande, pois nos
      processadores atuais o circuito de branch prediction acerta em mais de
      90% dos casos.

      Predecode Array: Esta é a porta de entrada do processador. O
      predecore array é composto pelos circuitos que convertem as instruções
      x86 enviadas pelos programas nas instruções simples que o
      processador executa internamente.

Até certo ponto, tanto o Pentium III quanto o Athlon e outros processadores x86
atuais trabalham da mesma maneira. Internamente, o processador é capaz de


                                                                           113
executar apenas instruções simples, para ser mais exato apenas quatro
instruções: adição, atribuição, leitura e gravação.

Se você já estudou alguma linguagem de programação, aprendeu a
importância das variáveis, que são pequenos espaços de memória reservados
para guardar algum tipo de informação. Existem vários tipos de variáveis, de 8,
16, 32 bits, etc. que mudam de nome dependendo da linguagem de
programação usada. A instrução de atribuição do processador é usada sempre
que é necessário criar ou alterar o valor de uma variável.

Por exemplo, imagine que um programa qualquer criou uma variável de 8 bits
com o número 5. A próxima instrução manda que o programa compare o valor
da variável com o número 6 e, caso o número seja menor, altere o valor para 9.
Como 5 é menor que 6, o programa decide fazer a alteração, utilizando a
operação de atribuição do processador, que lê o valor 9 e grava-o no espaço
de memória da variável, que passa a ter o valor 9 em vez de 5.

A instrução de soma é a operação básica que permite fazer todo tipo de
processamento, enquanto as instruções de leitura e gravação permitem mover
os dados. Basicamente é só isso que um processador atual sabe fazer.
Operações mais complexas são executadas através da combinação de várias
instruções simples.

Para calcular uma multiplicação, por exemplo, o processador utilizará
seqüencialmente várias operações de soma. Na verdade, dentro do
processador todas as operações, mesmo as mais complexas, são calculadas
com base em várias operações de soma, feitas entre os valores binários
processados pelo processador. Uma operação de subtração é obtida através
de uma operação de atribuição, que transforma um dos valores em negativo,
seguida por uma operação de soma.

Uma operação de divisão é obtida executando-se uma seqüência de operações
de subtração e todos os demais cálculos, mesmo os cálculos mais complexos,
executados pelo co-processador aritmético, são resolvidos usando apenas as
quatro operações, obtidas a partir das simples instruções de soma e atribuição.

Pois bem, o conjunto de instruções x86, utilizadas pelos programas e com as
quais qualquer processador destinado a micros PC deve ser compatível, é
composto tanto por instruções simples (soma, subtração, leitura, gravação,
comparação, etc.) quanto por instruções muito complexas, que devem ser
quebradas em várias instruções simples para que possam ser executadas pelo
processador.

Excluindo-se componentes de apoio, como o cache L1, deixando apenas a
parte "funcional" do processador, podemos dividir o processador em três
partes.

A primeira parte é o decodificador de instruções. Esse componente tem a
função de converter as instruções x86 usadas pelos programas nas instruções
simples que podem ser executadas pelo processador. As instruções simples
vão então para uma unidade de controle (o circuito de branch prediction), que
organiza as instruções da forma que possam ser executadas mais
                                                                           114
rapidamente. As instruções formam então uma fila (organizada pelo scheduler)
a fim de permitir que a unidade de controle tenha tempo de fazer seu trabalho.
Lembre-se de que os processadores atuais são superescalares, executam
várias instruções por ciclo, simultaneamente, o que torna essencial a existência
de algum circuito que as coloque numa ordem em que a execução de uma não
dependa do resultado da execução de outra.

Finalmente, temos as unidades de execução, onde as instruções preparadas
e organizadas são finalmente processadas. Veja que todos os circuitos
trabalham simultaneamente, com o objetivo de manter as unidades de
execução ocupadas:




A lógica é que quanto mais unidades de execução tivermos trabalhando ao
mesmo tempo, mais instruções todas juntas serão capazes de processar e
quanto mais circuitos de decodificação e controle tivermos, mais eficiente será
a decodificação das instruções, resultando em um processador mais rápido.

O maior limitante é que a maioria dos programas são desenvolvidos esperando
que o processador processe uma instrução de cada vez. Temos também um
grande número de operações de tomada de decisão, onde o processador
precisa resolver uma determinada operação para então poder decidir o que vai
fazer depois. Graças aos circuitos de branch prediction, os processadores são
capazes de ir "adiantando o serviço", processando outras instruções mais
adiante, enquanto a operação de tomada de decisão é solucionada. De
qualquer forma, existe um limite para quanto trabalho o processador é capaz
de executar por ciclo.

Com mais do que três ou quatro unidades de execução, o processador acaba
ficando ocioso grande parte do tempo, de forma que processadores muito mais
complexos do que isso acabariam sendo um desperdício de recursos.

Em vez de adicionar mais e mais unidades de execução aos processadores, os
fabricantes passaram, a partir de um certo ponto, a desenvolver processadores
dual-core e quad-core, onde temos dois ou quatro processadores no mesmo
encapsulamento, trabalhando como se fossem um único processador. Isto
resulta num melhor desempenho ao rodar vários aplicativos simultaneamente
(você pode jogar e ripar um DVD ao mesmo tempo, por exemplo) e é muito
mais simples e barato para os fabricantes do que desenvolver um único e
processo super-processador. Como atualmente é comum manter um grande
número de aplicativos abertos simultaneamente, somados com o antivírus,

                                                                            115
antispyware, firewall e outros integrantes do "kit Windows", um processador
dual-core acaba oferecendo um bom ganho na prática.

Aqui temos um diagrama da Intel, que mostra como isso funciona no Core 2
Duo. Veja que temos um grande bloco de cache L2, que é compartilhado por
dois núcleos (cores). Tudo isso dentro do mesmo die, ou seja, dentro da
mesma pastilha de silício:




                       Visão ampliada do Core 2 Duo

Outros processadores seguem um projeto mais convencional, onde temos dois
núcleos completamente separados, cada um com seu próprio cache L2, ou
mesmo processadores dual-core formados pela combinação de dois
processadores separados, instalados dentro do mesmo encapsulamento, como
no caso do Pentium D.

A partir do Phenom, a AMD passou a utilizar uma arquitetura com dois ou
quatro núcleos por processador, cada um com seu próprio cache L1 e L2, que
compartilham um grande bloco de cache L3. Tudo indica que a Intel utilizará
uma arquitetura semelhante no Nehalem, cujo lançamento está agendado para
o final de 2008.

Sistemas embarcados



Pergunte a algum amigo quantos computadores ele tem em casa.
Provavelmente ele vai responder "tenho só um", ou talvez "tenho dois".
Involuntariamente ele estará mentindo, pois na verdade ele tem 10, 20 ou
quem sabe 50 computadores em casa. :)

Os demais estão escondidos, dentro do celular, TV, aparelho de som, modem
ADSL, ponto de acesso, brinquedos, câmeras digitais, mp3 players, fornos de
microondas e outros aparelhos domésticos, controles remotos e assim por
diante. Até mesmo o carro que está na sua garagem inclui vários deles, na
forma do sistema de injeção eletrônica, freio ABS, airbag, computador de
bordo, etc. Seja bem-vindo ao fantástico mundo dos sistemas embarcados.

                                                                        116
Ao contrário de um PC, que pode executar os mais diversos programas e
alternar entre eles, desempenhando as mais diversas funções, os sistemas
embarcados são dispositivos "invisíveis", que se fundem no nosso cotidiano, de
forma que muitas vezes sequer percebemos que eles estão lá. Eles são
formados, fundamentalmente, pelos mesmos componentes de um PC:
processador, memória, algum dispositivo de armazenamento, interfaces e
assim por diante. A principal diferença é que, ao contrário de um PC, eles se
limitam a executar bem uma única tarefa, de maneira contínua e, na maioria
das vezes, sem travamentos e panes.

O fato de ser um sistema embarcado, não diz muito sobre o tamanho ou a
importância do sistema, pode ser desde um furby, até uma máquina com
centenas de processadores, destinada a criar previsões sobre mercados de
capitais, ou controlar o tráfego aéreo. Basicamente, qualquer equipamento
autônomo que não é um PC, um Mac ou outro tipo de computador pessoal
acaba se enquadrando nessa categoria.




      Furby, um exemplo de sistema embarcado na forma de brinquedo

É graças aos sistemas embarcados que o Z80 (em suas inúmeras variações) é
até hoje o processador mais produzido. Por ser um processador muito simples,
de 8 bits, ele é incrivelmente barato e possui um baixíssimo consumo elétrico.
Não seria possível incluir um Core Duo ou um Athlon X2 em um controle
remoto, por exemplo, mas um Z80 cumpre bem a função. Lembra do game
boy? Ele era justamente baseado num Z80, acompanhado de um controlador
de áudio externo e outros circuitos. Outro exemplo são os S1 Mp3 players,
aqueles Mp3 players genéricos em formato de pendrive, fabricados em massa
pelos mais diversos fabricantes.

Outro processador muito usado é o Motorola 68000, o mesmo chip de 32 bits
utilizado nos primeiros Macintoshs. Naturalmente, não estamos falando
exatamente do mesmo chip introduzido em 1979, mas sim de versões
"modernizadas" dele, que conservam o mesmo design básico, mas são
produzidas usando tecnologia atual e operam a freqüências mais altas. Um
exemplo é o chip DragonBall usado nos primeiros Palms, que incluía um
processador 68000, controlador de vídeo e outros componentes, tudo no
mesmo wafer de silício.


                                                                          117
Processador Motorola DragonBall, usado nas primeiras versões do Palm

Para dispositivos que precisam de mais processamento, temos as diversas
famílias de processadores ARM, chips RISC de 32 bits, produzidos por
diversos fabricantes, que vão da Samsung à Intel. Embora possuam um design
bastante simples, se comparados aos processadores x86, os chips ARM
conservam um bom desempenho. Um Treo 650, por exemplo, que é baseado
num Intel Xscale de 312 MHz, consegue exibir vídeos em Divx com resolução
de 320x240 sem falhas, tarefa que mesmo um Pentium II 266 tem dificuldades
para realizar.

Usando um processador ARM e pelo menos 4 MB de memória, seu sistema
embarcado pode rodar Linux, o que abre grandes possibilidades em termos de
softwares e ferramentas de desenvolvimento. Adicionando um pouco mais de
memória, é possível rodar o Windows Mobile ou o Symbian.

Embora operem a freqüências relativamente baixas, se comparados aos
processadores x86 (na maioria dos casos apenas 300, 400 ou 500 MHz), os
chips ARM são baratos e possuem um baixo consumo elétrico, por isso são
extremamente populares em celulares, PDAs, pontos de acesso, modems
ADSL, centrais telefônicas, sistemas de automatização em geral, videogames
(como o GameBoy Advance) e assim por diante. Cerca de 75% de todos os
processadores de 32 bits usados em sistemas embarcados são processadores
ARM.

Além da família ARM e Z80, existem inúmeras outras famílias de chips e
controladores. Cada uma conta com um conjunto próprio de ferramentas de
desenvolvimento (SDK), que incluem compiladores, debuggers, documentação
e ferramentas úteis. Em alguns casos o SDK é distribuído gratuitamente, mas
em outros precisa ser comprado ou licenciado, o que encarece o projeto.

Normalmente, o desenvolvedor roda as ferramentas de desenvolvimento em
um PC e transfere o software para o sistema embarcado que está
desenvolvendo apenas nos estágios finais do desenvolvimento. Em alguns
casos isso é feito através da porta USB (ou de uma porta serial), mas em
outros é necessário gravar um chip de EPROM ou memória flash com a ajuda
do gravador apropriado e transferir o chip para o sistema embarcado para
poder testar o software.

Um bom exemplo de sistema embarcado é este MP4 player da foto a seguir.
Ele utiliza apenas três chips, sendo um o controlador principal, outro um chip
de memória flash (usado para armazenamento) e o terceiro um sintonizador de


                                                                          118
rádio AM/FM, que poderia muito bem ser retirado do projeto sem prejuízo para
as demais funções do aparelho:




Isso é possível porque o chip principal (um Sigmatel STMP3510) é um
microcontrolador que desempenha sozinho todas as funções do aparelho,
incluindo controladores para as diversas funções disponíveis e até mesmo uma
pequena quantidade de memória RAM:




É esse tipo de microcontrolador que permite que modems ADSL, MP3 players,
celulares e outros aparelhos que usamos no dia-a-dia sejam tão baratos em
relação ao que custavam há alguns anos. Com menos chips, o custo cai
proporcionalmente.

Existem no mercado os mais diversos tipos de microcontroladores, cada um
com um conjunto próprio de periféricos e funções. Ao invés de desenvolver e
fabricar seus próprios chips, as empresas passaram a cada vez mais utilizar
componentes disponíveis no mercado, que são fabricados em massa e

                                                                         119
vendidos a preços incrivelmente baixos. Para você ter uma idéia, o STMP3510
custa apenas 6 dólares se comprado em quantidade. Microcontroladores mais
simples podem custar menos de 1 dólar, enquanto chips menores chegam a
custar apenas alguns centavos.

A maior parte do custo de um processador ou chip qualquer está em seu
desenvolvimento. Mesmo um microcontrolador relativamente simples pode
consumir vários milhões para ser desenvolvido. Entretanto, o custo de
produção por unidade é relativamente baixo, de forma que os chips mais
vendidos acabam tendo o custo inicial amortizado e passam a ser cada vez
mais baratos.

Muitos microcontroladores podem ser conectados a dispositivos analógicos,
permitindo o uso de sensores diversos. Isso permite a criação de dispositivos
simples, que monitoram temperatura, umidade, intensidade da luz, aceleração,
campos magnéticos e assim por diante, executando ações predefinidas em
caso de mudanças, como ligar o ar condicionado, abrir ou fechar as persianas,
ou mesmo disparar o air bag do seu carro em caso de colisão.

Para aplicações em que um chip personalizado é essencial, existe ainda a
opção de usar chips programáveis, chamados de FPGAs (field-programmable
gate arrays) ou, mais raramente, de LCAs (logic-cell arrays). Como o nome
sugere, eles são chips compostos por um enorme número de chaves
programáveis, que podem ser configurados para simular o comportamento de
qualquer outro circuito.

Um único FPGA pode simular não apenas um processador simples, mas
também outros circuitos de apoio, como o controlador de vídeo, uma interface
serial e assim por diante. Os modelos recentes incluem inclusive uma pequena
quantidade de memória RAM e circuitos de apoio, de forma que você pode ter
um sistema completo usando apenas um chip FPGA previamente programado,
um chip de memória EPROM (ou memória flash) com o software, a placa de
circuito com as trilhas e conectores e uma bateria ou outra fonte de energia.




                                 Chip FPGA

                                                                          120
Os FPGAs são naturalmente muito mais caros que chips produzidos em série,
mas são uma opção em situações em que são necessárias apenas algumas
centenas de unidades de um design exclusivo. Imagine o caso do ramo da
automação industrial, por exemplo.

Eles são também o caminho para projetos artesanais, que são a nova onda
entre quem gosta de eletrônica ou está cursando engenharia da computação.
Um bom site dedicado ao assunto é o http://www.fpga.ch/, que disponibiliza
softwares, layouts de placas e até mesmo projetos prontos, como este que
reproduz uma máquina de arcade antiga, rodando Pac-Man ou Galaga:




Outro bom site é o http://www.fpga4fun.com, que inclui uma grande quantidade
de informações e alguns projetos de exemplo. Os componentes necessários
para construir os projetos podem ser comprados facilmente pela web, basta ter
um cartão internacional ou uma conta no PayPal.

Uma questão interessante nos sistemas embarcados é a memória flash. Com a
queda no preço, mesmo aparelhos que tradicionalmente usavam memória
SRAM (muito mais cara) como forma de armazenamento, como os palmtops e
os celulares, passaram a utilizar memória flash. O problema é que a memória
flash funciona apenas como espaço de armazenamento e não como memória
de trabalho.

Numa analogia com um PC, a memória flash seria similar a um HD, que serve
para armazenar arquivos, mas que não elimina a necessidade de usar memória
RAM. Isso significa que mesmo dispositivos com grandes quantidades de
memória flash ainda precisam de uma certa quantidade de memória RAM ou
SRAM, seja incorporada ao próprio microcontrolador, seja na forma de um chip
separado.

Nos primeiros Palms, por exemplo, tínhamos um chip de memória flash, que
armazenava os softwares e chips adicionais de memória SRAM, que serviam
tanto como memória de trabalho quanto como espaço para armazenar dados e
programas.



                                                                         121
A partir do Treo 650, todos os programas e arquivos passaram a ser
armazenados em memória flash (você pode remover a bateria, sem medo de
perder dados) e foi adicionado um chip de memória SRAM que serve como
memória de trabalho. A grande questão é que a memória SRAM é muito mais
cara que a memória flash, de forma que vale mais a pena utilizar uma pequena
quantidade de SRAM e uma grande quantidade de memória flash, do que o
oposto.

Temos ainda a questão do fornecimento elétrico. A maioria dos circuitos
trabalham com tensão de 5v ou 3.3v, mas é possível usar praticamente
qualquer bateria ou fonte de energia, usando fontes de alimentação ou os
circuitos apropriados. Um resistor, acompanhado por um regulador de tensão e
um fusível, é geralmente o suficiente para que ele possa ser ligado diretamente
em uma bateria de carro, por exemplo. No caso de dispositivos ligados a um
PC, é possível utilizar diretamente a energia fornecida pela porta USB.

Também é possível utilizar placas solares ou outras fontes alternativas de
energia, permitindo a criação de sistemas embarcados capazes de operar de
forma autônoma. Um exemplo são os pontos de acesso repetidores usados por
alguns provedores de acesso, que utilizam painéis solares e baterias, de forma
que podem ser instalados num poste ou no topo de um prédio sem precisarem
de qualquer cabeamento:




O uso de redes sem fio também abre algumas possibilidades interessantes na
área publicitária. Imagine o caso de letreiros eletrônicos ou telões publicitários.
Se os anúncios pudessem ser atualizados remotamente, a instalação seria
muito mais simples, já que bastaria ligá-los na eletricidade. Um sistema
embarcado, contendo um transmissor wireless, memória e o software
adequado, poderia ser acessado remotamente e programado com os anúncios
a exibir.

Enfim, embora os PCs normalmente roubem a cena, os sistemas embarcados
são muito mais numerosos e são responsáveis por toda a estrutura que

                                                                               122
utilizamos no dia-a-dia. Eles são também uma das áreas mais promissoras
dentro da área de tecnologia, já que um simples FPGA pode ser programado
para desempenhar praticamente qualquer função.

Capítulo 2:
Processadores



No capítulo anterior fiz um resumo da história dos primeiros processadores,
criando uma espécie de linha do tempo. Conhecer a história dos primeiros
processadores é importante para entender os atuais, mas entrar em detalhes
sobre, por exemplo, o gerenciamento de memória do 8088, pode ser muito
tedioso, daí a idéia de resumir tudo em um único capítulo sobre a história da
informática.

Vamos falar agora sobre os processadores atuais (de 2000 pra cá), passando a
abordar as coisas de forma mais detalhada. Como um novo projeto de
processador demora de 3 a 5 anos para ser desenvolvido, os fabricantes
aproveitam o mesmo projeto básico em diversos modelos de processadores,
incluindo pequenas melhorias e mais cache L2 ao longo do processo. Todos
estes processadores baseados na mesma arquitetura podem ser classificados
dentro de uma única família e colocados em um galho separado da árvore
evolutiva.

Por exemplo, a arquitetura NetBurst foi utilizada pela Intel de 2000 a 2006,
englobando desde os primeiros modelos do Pentium 4 até o Pentium D,
passando por diversas variações, como os Pentium Extreme Edition e os
Celerons. Entre 2006 e 2007 ela foi substituída rapidamente pelos
processadores baseados na plataforma Core, incluindo os Core 2 Duo, Core 2
Quad, Pentium E e Celerons 4xx.

Em vez de tentar abordar os processadores diretamente em ordem
cronológica, vou dividi-los em famílias, falando sobre todos os processadores
baseados na arquitetura NetBurst, depois todos os Athlons de 32 bits, seguidos
pelos Athlons de 64 bits e pelos processadores baseados na plataforma Core.
No final, aproveitei para incluir também um resumo sobre os próximos
processadores, criando um panorama do que você pode esperar para os
próximos anos.

Pentium 4


O Pentium 4 foi lançado em novembro de 2000, trazendo uma arquitetura
completamente redesenhada, baseada na idéia do uso de um longo pipeline
para permitir que o processador fosse capaz de atingir freqüências de clock
elevadas e no uso de um cache L1 muito rápido e um barramento de dados
capaz de realizar 4 transferências por ciclo para mantê-lo alimentado com o
volume necessário de dados e instruções.


                                                                          123
O Pentium 4 representa a sétima geração de processadores Intel. A primeira
foram os processadores 8086 e 8088, lançados no final da década de 70, que
foram seguidos pelos processadores 286, 386 e 486 que bem conhecemos. A
quinta geração é representada pelos processadores Pentium e Pentium MMX,
enquanto a sexta (também chamada de arquitetura P6) é representada pelos
processadores Pentium II e Pentium III (incluindo também o Pentium Pro).

Por diversos motivos que vou explicar ao longo deste capítulo, o Pentium 4
acabou se revelando um beco sem saída. Devido à enorme dissipação térmica
dos processadores, a Intel não foi capaz de lançar versões com clock acima de
3.8 GHz (a versão de 4.0 GHz, que acabou sendo cancelada no último
momento), e operando a freqüências baixas o Pentium 4 perdia facilmente para
os processadores AMD. Só em 2006 a Intel conseguiu dar a volta por cima,
com o lançamento do Core 2 Duo.

Willamette


O Willamette foi a versão inicial do Pentium 4, produzido usando uma técnica
de 0.18 micron (a mesma usada na fabricação dos processadores Pentium III
com cache integrado), com apenas 256 KB de cache L2. Ele existiu em
versões de 1.3 a 2.0 GHz, com o TDP de 48.9 watts (para o de 1.3) a 73.5
watts (para o 2.0).

O TDP (Thermal Design Power) indica, em processadores Intel, o consumo
médio do processador ao executar aplicativos pesados. O consumo real pode
superar o TDP ao rodar benchmarks e aplicativos específicos, mas na maior
parte do tempo o consumo fica dentro da faixa especificada.

Na época, o consumo elétrico não era considerado uma especificação
importante. Se o processador era beberrão demais, você simplesmente
gastava um pouco mais, comprando um cooler adequado. Entretanto, com o
lançamento de versões mais rápidas do Pentium 4, o TDP chegou aos 130
watts, o que chamou a atenção do público. A partir de um certo ponto, os
fabricantes passaram a falar em "eficiência", dando ênfase não apenas ao
clock e ao desempenho geral do processador, mas também ao seu consumo
elétrico.

Basta fazer as contas. Se você mantém o micro ligado durante 12 horas por
dia, um processador que consuma 130 watts (como o Pentium D 830) lhe custa
(apenas em eletricidade) cerca de 20 reais mensais a mais do que um que
consuma apenas 30 watts. Calculando que você também gastaria mais com o
cooler e que o próprio PC consumiria mais energia devido à necessidade de
exaustores adicionais, a diferença total acabaria sendo ainda maior. Ou seja,
um processador ineficiente que te custa R$ 400 na hora da compra, poderia lhe
custar mais 500 ou 600 reais (incluindo apenas o aumento na conta de luz) ao
longo de 2 anos de uso.

Voltando ao tema inicial, um ponto interessante sobre as primeiras versões do
Pentium 4 é que o único chipset disponível durante quase um ano, o i850 da
própria Intel, suportava apenas memórias Rambus, o que obrigava qualquer

                                                                          124
interessado em adquirir um Pentium 4 a comprar também módulos de memória
RIMM. Este tipo de memória era inicialmente absurdamente caro, tanto que a
Intel passou a subsidiar parte do custo das memórias, dando um desconto nos
processadores vendidos a integradores e dando "de brinde" dois pentes de
memórias Rambus de 64 MB cada nos processadores in-a-box, destinados ao
consumidor final.

As vendas do Pentium 4 só deslancharam com o lançamento do chipset i845,
que oferecia suporte a módulos de memória SDRAM convencionais.

Em 2002 a Intel lançou dois modelos (1.7 e 1.8 GHz) do Celeron baseado no
core "Willamette-128", que nada mais é do que uma versão do Pentium 4
Willamette com metade do cache L2 desabilitado. Eles foram vendidos apenas
em versão soquete 478 e eram relativamente baratos para o padrão dos
processadores Intel na época, custando abaixo da faixa dos 100 dólares.
Embora o desempenho fosse ruim, essa geração inicial do Celeron baseado no
Pentium 4 foi uma forma de a Intel popularizar o uso das placas soquete 478 e
assim abrir caminho para as gerações seguintes do Pentium 4.

Para quem pretendia fazer overclock, o Celeron 1.7 era a melhor opção, pois
além de um pouco mais barato ele podia ser overclocado para 2.26 GHz
(desde que usado um bom cooler e um gabinete bem ventilado), aumentando o
FSB de 400 para 533, opção oferecida por praticamente todas as placas
soquete 478. Operando a 2.26 GHz, ele oferecia um desempenho muito
próximo do de um Pentium 4 Willamette de 2.0 GHz.

Na época se discutia muito sobre o desempenho dos Celerons baseados no
core Willamette-128 contra os baseados no Core Tualatin (mesmo a 1.2 GHz, o
Tualatin ganhava em boa parte das aplicações), mas a discussão era em
grande parte irrelevante, pois o Tualatin foi vendido em pequenas quantidades
e apenas para integradores, de forma que não era realmente possível comprar
um, por melhor que fosse a arquitetura.

Devido ao alto custo inicial (incluindo a questão das memórias) o Willamette
acabou vendendo poucas unidades e foi rapidamente substituído pelo
Northwood, lançado 11 meses depois, em outubro de 2001. Na mesma época,
as placas soquete 423 (que oferecem suporte apenas ao Pentium 4 Willamette)
foram rapidamente substituídas pelas placas soquete 478, que continuam em
uso até 2005/2006, sendo lentamente substituídas pelas placas soquete 775.

Apesar de sua vida curta, o Willamette é uma boa oportunidade para explicar
um pouco sobre a arquitetura do Pentium 4. O primeiro alerta a se fazer a
respeito é que o aumento da freqüência de operação não significa um ganho
direto de desempenho. A arquitetura do Pentium 4 é baseada no uso de mais
estágios de pipeline para permitir que o processador seja capaz de atingir
freqüências de clock mais elevadas. É por isso que um Pentium 4 Willamette
atingiu a marca dos 2.0 GHz, enquanto o Pentium III Coppermine, que
compartilha da mesma técnica de fabricação de 0.18 micron que ele não foi
capaz de superar a marca dos 1.0 GHz.




                                                                          125
Entretanto, a diferença de desempenho entre os dois não é tão grande quanto
pode parecer à primeira vista. Mesmo com todas as otimizações que foram
aplicadas, um Willamette de 2.0 GHz, equipado com memórias SDRAM não
consegue ser sequer 50% mais rápido que um Pentium III Coppermine de 1.0
GHz.

Mesmo quando equipado com pentes de memória RDRAM, o Willamette ainda
perde para o Athlon Thunderbird de 1.4 GHz (que foi seu concorrente mais
direto, na época) na maior parte dos aplicativos.

A arquitetura do Pentium foi claramente desenvolvida para operar a altas
freqüências e assim compensar o baixo desempenho por ciclo de clock. Isso
acabou se revelando um bom golpe de marketing, já que na época o público
estava acostumado a relacionar a freqüência de clock com o desempenho.

Para não ficar para trás, a AMD adotou um índice de desempenho a partir do
Athlon XP, que compara o desempenho do processador ao alcançado pelo
Pentium 4. Um Athlon XP 1800+, por exemplo, opera a apenas 1.533 GHz.
Mais adiante, o feitiço se voltou contra o feiticeiro e a própria Intel decidiu parar
de enfatizar a freqüência de clock e adotar um sistema de numeração para
seus processadores.

Voltando ao final de 2000, a Intel batizou a nova arquitetura do Pentium 4 de
NetBurst. O nome não tem nada a ver com o desempenho em redes ou na
internet; é apenas um nome mercadológico usado para tentar ilustrar a
arquitetura do processador e suas otimizações com relação ao processamento
de grandes volumes de dados. Sempre que ouvir falar em um processador
"baseado na arquitetura NetBurst", tenha em mente que se trata de alguma
derivação do Pentium 4, como um Pentium D ou Celeron.

A arquitetura NetBurst é composta por 4 pontos principais: Hyper Pipelined
Technology, Rapid Execution Engine, Execution Trace Cache e o uso do bus
quad-pumped. Vamos aos detalhes de cada uma das 4 tecnologias:

Hyper Pipelined Technology


O pipeline é um recurso que divide o processador em vários estágios, que
trabalham simultaneamente, dividindo o trabalho de processar as instruções. É
como uma linha de produção com vários operários, em que cada um monta
uma peça, até termos no final o produto completo.

O primeiro processador Intel a utilizar esse recurso foi o 486, que possuía 5
estágios. Como o 486 era um processador muito simples (para os padrões
atuais), que processava uma instrução de cada vez, ele não precisava de
muitos dos componentes usados nos processadores modernos, tais como o
ordenador, circuito de branch-prediction e assim por diante. O processador
simplesmente recebia cada instrução, fazia a decodificação e em seguida a
executava. Enquanto a primeira instrução passava do primeiro para o segundo
estágio do pipeline, o primeiro estágio recebia a instrução seguinte e assim por
diante.


                                                                                 126
O Pentium manteve os 5 estágios do 486, mas incorporou uma segunda
unidade de execução e um coprocessador aritmético muito aprimorado. Com o
uso de duas unidades de execução, surgiu a necessidade de dividir as
instruções entre elas, o que gerou um problema adicional, já que a grande
maioria dos programas executam processamento de maneira sequencial,
esperando que o processador execute uma instrução de cada vez.

Surgiu então a necessidade de incluir circuitos adicionais, que ordenam as
instruções de forma que o processador possa executar duas instruções por
ciclo na maior parte do tempo. O mais importante dele é o circuito de branch
prediction, que permite que o processador use o tempo ocioso para ir
"adiantando o trabalho", processando um dos caminhos possíveis em uma
operação de tomada de decisão enquanto não sabe o resultado da operação
que diz qual dos caminhos é o carreto, como, por exemplo, ao executar um
trecho de código, como neste exemplo:

      if [ a = b ]; then
      bloco de código 1
      else
      bloco de código 2
      fi

Aqui o processador não tem escapatória, já que só vai saber se deve executar
o bloco de código 1, ou o bloco de código 2 depois que souber o resultado da
primeira operação, ou seja, souber se "a" é igual a "b". O circuito de branch
prediction escolhe então o caminho que parece mais provável, permitindo que
o processador permaneça ocupado.

O nível de exatidão do circuito de branch prediction varia muito de acordo com
o processador. No Pentium ele era bastante simples, escolhendo qual caminho
seguir praticamente de forma aleatória, enquanto nos processadores atuais ele
decide consultando uma tabela com resultados anteriores de operações
similares.

Quando o processador escolhe o caminho certo, ele ganha tempo, já que pode
aproveitar o trabalho já feito. Mas, quando erra, ele precisa descartar todo o
trabalho e recomeçar a partir do outro caminho.

O Pentium III possui um total de 10 estágios, além de um conjunto de outros
circuitos (fora do pipeline) que são encarregados de converter e ordenar as
instruções. Ao contrário do Pentium, que é um processador CISC, que
processa todas as instruções x86 diretamente, o Pentium III e todos os demais
processadores atuais, são processadores híbridos CISC/RISC, que quebram
as instruções x86 em instruções simples, que são então processadas.

Graças à inclusão de todos os demais circuitos, uso do cache integrado e
melhorias nas placas-mãe, o aumento no número de estágios de pipeline do
Pentium III não teve um impacto muito negativo sobre o desempenho. Pelo
contrário, um Pentium III é pelo menos duas vezes mais rápido que um
Pentium I do mesmo clock. O Pentium II, por sua vez, é muito similar ao



                                                                           127
Pentium III em arquitetura, carecendo apenas do cache L2 on-die e das
instruções SSE.

Foi graças ao aumento no número de estágios no pipeline que o Pentium III foi
capaz de atingir freqüências de operação tão mais elevadas que o Pentium,
que (com o MMX) atingiu apenas 233 MHz. Mesmo que fosse produzido em
uma técnica de 0.18 micron, o Pentium provavelmente não seria capaz de
superar a barreira dos 500 MHz, enquanto o Pentium III (de 0.18 micron) existiu
em versões de até 1.0 GHz.

O Pentium 4 leva essa filosofia adiante, utilizando um total de 20 estágios de
pipeline, daí o nome "Hyper Pipelined". Temos aqui um slide da Intel que
mostra um comparativo entre o pipeline de 10 estágios do Pentium III com os
20 estágios do Willamette. Tenha em mente que cada instrução precisa
percorrer cada um dos 20 estágios para ser completamente processada:




Com mais estágios, cada um responde por uma fração menor do
processamento, o que permite que o processador seja capaz de operar a
freqüências mais elevadas. Voltando ao exemplo da linha de produção, seria
como se dobrássemos o número de operários e cada um passasse a encaixar
apenas uma peça em cada produto que passa através da esteira, em vez de
duas. Reduzindo o trabalho de cada operário pela metade, seria possível
mover a esteira ao dobro da velocidade, dobrando a produção.

O grande problema é que os processadores atuais executam várias instruções
simultaneamente, enquanto os programas são uma seqüência de instruções,
de forma que sempre existe uma penalidade em adicionar mais estágios.
Quanto mais estágios, mais tempo o processador demora para executar as
instruções iniciais de tomada de decisão e mais tempo perde ao escolher o
caminho errado.

Ainda no exemplo da linha de produção seria como se o produto a ser montado
mudasse constantemente, de acordo com os pedidos recebidos dos clientes.
Cada vez que o produto muda, é preciso parar a esteira, desmontar as
unidades do produto anterior que já estavam parcialmente montadas e limpar a
esteira, para só então poder recomeçar a produção.

No Pentium 4, a cada tomada de decisão errada são perdidos pelo menos 20
ciclos de processamento, uma eternidade considerando que em média, 14%
das instruções processadas são de tomada de decisão.

Com exceção do Pentium 4, quase todos os processadores atuais utilizam de 8
a 14 estágios de pipeline, que parece ser a faixa com a melhor relação entre

                                                                           128
clock, complexidade e desempenho. Acima disto, mais pipelines equivalem a
um desempenho por ciclo de clock cada vez menor.

A partir de um certo ponto, aumentar o número de estágios torna-se contra
produtivo, já que o processador precisa operar a freqüências de clock cada vez
mais altas para compensar a perda de desempenho causada pelo maior
número de estágios. Um bom exemplo disto é o Pentium 4 com core Prescott
(que veremos a seguir), que precisou incorporar um conjunto de várias
melhorias apenas para compensar a perda de desempenho causada pelo novo
aumento no número de estágios.

Além de ser mais lento que um Athlon Thunderbird da mesma freqüência, o
Willamette é também substancialmente mais lento que um Pentium III do
mesmo clock em praticamente todos os aplicativos. Todas as demais
alterações feitas pela Intel, explicadas a seguir servem como paliativos para
tentar diminuir a perda de desempenho trazida pelo maior número de estágios
de pipeline.

Foi justamente devido a isto que a Intel optou por lançar diretamente os
modelos de 1.4 e 1.5 GHz do Pentium 4, pulando as versões de 1.1 e 1.2, que
seriam o caminho mais óbvio já que o Pentium III ficou estacionado na versão
de 1 GHz. Caso fosse lançado, um Pentium 4 de 1.1 GHz perderia para um
Pentium III de 1 GHz, o que não seria uma boa propaganda.

Além da perda de desempenho, outro efeito colateral de se usar mais estágios
de pipeline é o fato de tornar o processador maior e mais complexo e
fatalmente bem mais caro de se produzir. O Pentium 4 de 0.18 micron mede
217 milímetros quadrados, quase o dobro do Athlon Thunderbird, que mede
120 mm². Isso significa que o Pentium 4 é proporcionalmente mais caro de se
produzir.

Execution trace cache


O Pentium III possui 32 KB de cache L1, dividido em dois blocos, onde 16 KB
são para o armazenamento de dados e os demais 16 KB para o
armazenamento de instruções. O Athlon utiliza um cache L1 de 128,
novamente dividido em dois blocos separados, que armazenam dados e
instruções.

No Pentium 4, o bloco do cache L1 destinado a instruções foi substituído pelo
Execution trace cache, um tipo de cache ultra-rápido que, em vez de
instruções, armazena diretamente uOPs, que são as instruções já
decodificadas, prontas para serem processadas. Isto garante que o cache
tenha apenas um ciclo de latência (a instrução é solicitada em um ciclo e
recebida no seguinte), o que faz com que o processador não perca
praticamente tempo algum ao utilizar dados armazenados no trace cache, ao
contrário do que acontecia no Pentium III, onde são perdidos pelo menos dois
ciclos em cada leitura, o tempo necessário para decodificar a instrução.

Se você está em dúvida sobre o que é um "uOP", e como eles são produzidos
e processados, aqui vai uma explicação resumida:
                                                                          129
Apesar dos processadores para micros PC continuarem usando o conjunto x86
de instruções, que é composto por 184 instruções, internamente eles são
capazes de processar apenas instruções simples de soma e atribuição. Existe
então um circuito decodificador, que converte as instruções complexas usadas
pelos programas nas instruções simples entendidas pelo processador. Uma
instrução complexa pode ser quebrada em várias instruções simples. No
Pentium 4, cada instrução simples é chamada de uOP. No Athlon cada
conjunto de duas instruções recebe o nome de macro-ops.

O trace cache ocupa uma área muito grande do die do processador,
equivalente ao que seria ocupado por aproximadamente 96 KB de cache L1
convencional. Apesar disso, ele armazena o equivalente a apenas 8 KB de
instruções decodificadas, já que elas ocupam brutalmente mais espaço. Ou
seja, por um lado o trace cache melhora o desempenho do processador, já que
é muito rápido, mas por outro diminui (em relação ao que seria obtido ao utilizar
um cache convencional de maior capacidade), pois o pequeno volume de
dados armazenados faz com que ele precise recorrer mais freqüentemente aos
dados armazenados no cache L2 e na memória principal.

O trace cache é complementado por um cache de dados de baixa latência,
consideravelmente mais rápido que o cache L1 encontrado no Pentium III e no
Athlon. O problema é que, para atingir o desempenho desejado, as células do
cache se tornaram extremamente volumosas, de forma que a Intel optou por
incluir apenas 8 KB.

Ou seja, na prática, o Pentium 4 possui apenas 16 KB de cache L1: 8 KB para
dados e mais o equivalente a 8 KB para instruções, armazenadas de forma
decodificada no trace cache. Por algum motivo, os projetistas da Intel decidiram
que essa configuração seria a melhor em termos de desempenho.

Este diagrama mostra as áreas ocupadas pelo trace cache e pelo cache L2
dentro do die do Willamette. Veja que, apesar de armazenar um volume
pequeno de dados, o trace cache ocupa uma área equivalente a pouco mais de
60% da ocupada pelos 256 KB de cache L2:




                                                                             130
Die do Pentium 4 Willamette, com as áreas referentes ao
                   trace cache e ao cache L2 assinaladas

Bus de 400 MHz


O execution trace cache oferece tempos de latência muito baixos, mas em
troca armazena um volume muito pequeno de dados e instruções. Devido a
isso, o processador é muito mais dependente do desempenho do cache L2 e
do acesso à memória.

O plano inicial era utilizar módulos de memória Rambus em dual-channel. Cada
módulo RIMM oferecia (no caso dos módulos PC-800) um barramento de
dados de 1.6 GB/s, de forma que combinando a banda oferecida por dois
módulos, seria possível obter 3.2 GB/s, o que é 3 vezes o oferecido pelos
módulos de memória PC-133 utilizados pelo Pentium III.

Para absorver esse grande volume de dados, o Pentium 4 utiliza um
barramento quad-pumped, ou seja, capaz de realizar 4 transferências por ciclo.
Operando a 100 MHz, temos uma taxa efetiva de 400 MHz, que é a freqüência
utilizada nas primeiras placas soquete 423.

                                                                          131
Com a evolução da plataforma, a Intel foi capaz de desenvolver chipsets
capazes a operar a 133, 200 e 266 MHz, que, com as 4 transferências por
ciclo, equivalem a, respectivamente, 533, 800 e 1066 MHz. Embora o
Willamette tenha ficado restrito aos 400 MHz originais, as freqüências mais
altas foram utilizadas pelos processadores lançados posteriormente.

Embora o Pentium 4 fosse consideravelmente mais lento quando usado em
conjunto com memórias SDRAM, as memórias DDR reduziram a perda de
forma expressiva. A partir de um certo ponto cada vez mais placas passaram a
suportar o uso de memórias DDR em dual-channel, configuração que supera
as memórias Rambus em desempenho, já que, além da maior taxa de
transferência, oferece tempos de latência mais baixos.

Embora na prática não exista muita diferença, um barramento de 1066 MHz
"reais" é diferente, do ponto de vista técnico, de um que opera a 266 MHz
realizando 4 transferências por ciclo. No caso do barramento do Pentium 4
existe ainda um agravante, que é o fato dos endereços e instruções serem
enviados apenas duas vezes por ciclo, metade da freqüência da transferência
de dados.

Apesar disso, como as transferências de dados são muito mais numerosas que
a transmissão de endereços, a "inexatidão técnica" do barramento de 1066
MHz da Intel acaba passando desapercebida. ;)

Rapid Execution Engine


Todo processador atual é dividido em dois componentes básicos, as unidades
de execução de inteiros e as unidades de ponto flutuante (FPU). A parte que
processa as instruções envolvendo números inteiros é responsável pela maior
parte das instruções e pelo desempenho do processador nos aplicativos do dia-
a-dia, enquanto as unidades de ponto flutuante são as responsáveis pelo
processamento das instruções envolvendo valores complexos, usadas por
jogos e aplicativos gráficos.

O "Rapid Execution Engine" do Pentium 4 consiste num reforço nas unidades
de inteiros do processador. O Pentium 4 possui um total de 3 unidades de
processamento de inteiros, duas ALUs, que processam as instruções mais
simples e uma terceira ALU, encarregada de decodificar e processar as
instruções complexas que, embora em menor quantidade, são as que tomam
mais tempo do processador.

Esse conjunto de 3 unidades de execução de inteiros é semelhante ao do
Pentium III, porém, como diferencial, no Pentium 4 tanto as duas ALUs
encarregadas das instruções simples quanto as duas GLUs encarregadas das
leituras e gravações executam duas instruções por ciclo, de forma que, em um
Willamette de 2.0 GHz, elas atingem uma freqüência efetiva de nada menos
que 4.0 GHz.

Este é um recurso que na teoria parece maravilhoso, mas existe um pequeno
detalhe que elimina boa parte do ganho que seria de se esperar deste

                                                                         132
esquema. Apesar das duas ALUs de instruções simples terem ficado mais
rápidas, visando justamente compensar a perda de desempenho trazida pelos
20 estágios de pipeline do Pentium 4, a ALU de instruções complexas não teve
a mesma evolução. Isto significa que ao passar a usar 20 estágios de pipeline,
a terceira ALU tornou-se mais lenta que a do Pentium III.

Temos então um cenário onde as instruções simples são rapidamente
processadas, mas as instruções complexas ficam entaladas na vala comum da
terceira ALU, causando uma grande perda de desempenho.

No coprocessador aritmético o cenário é ainda mais complicado, pois apesar
das unidades de execução terem perdido desempenho devido ao pipeline de
20 estágios, não houve nenhum avanço para equilibrar a balança, como
tivemos nas unidades de inteiros. Pelo contrário, o coprocessador aritmético
encolheu, pois foram podadas duas das unidades de execução, uma das que
processava instruções MMX e uma das que processava instruções SSE.

Ao invés de evoluir, como seria de se esperar, o coprocessador aritmético do
Pentium 4 tornou-se ainda mais frágil do que o do Pentium III, trazendo um
cenário no mínimo curioso. Enquanto na época do Pentium II e do K6 a AMD
competia com um processador que, apesar de possuir um bom desempenho
em aplicativos de escritório, era literalmente massacrado nos jogos e
aplicativos gráficos, tivemos com o Pentium 4 x Athlon um cenário semelhante,
porém com os lados invertidos: a Intel atacava com um processador potente
em inteiros, mas fraco em ponto flutuante.

Ironicamente, a solução da Intel para tentar diminuir a deficiência do
processador em ponto flutuante foi a mesma que a AMD usou na época do K6-
2. Lembra-se do 3D-Now, as instruções incorporadas ao K6-2, que
melhoravam seu desempenho nos jogos otimizados? A Intel optou por seguir
exatamente o mesmo caminho, incorporando 144 novas instruções ao Pentium
4, chamadas de SSE2 que visam melhorar seu desempenho em jogos e
aplicativos gráficos.

SSE2


As "Double Precision Streaming SIMD Extensions" do Pentium 4 são 144
novas instruções de ponto flutuante de dupla precisão. Elas têm basicamente a
mesma função das instruções SSE do Pentium III e do 3D-Now! Do Athlon:
melhorar o desempenho do processador em aplicativos de ponto flutuante. A
diferença é que as instruções do Pentium 4 são mais poderosas que os
conjuntos anteriores e podem ser utilizadas em mais situações, o que ajudou o
Pentium 4 em alguns aplicativos específicos. O grande problema é que existe
um número brutalmente grande de softwares em uso e apenas alguns deles
acabam sendo devidamente otimizados para usar novos conjuntos de
instruções de forma que no final o ganho acaba não sendo tão grande quanto
se espera.

O Athlon 64 (e os Semprons de 64 bits) incluem um conjunto de instruções
compatível com o SSE2, desenvolvido pela AMD. Isto permite que eles

                                                                          133
também se beneficiem de aplicativos otimizados para o Pentium 4, equilibrando
a balança e valorizando o trabalho dos desenvolvedores.

Vale lembrar que tanto o Pentium 4 quanto os processadores AMD (a partir do
Athlon Palomino) são compatíveis também com as instruções SSE do Pentium
III, o que faz com que eles se beneficiem também dos aplicativos otimizados
para o conjunto anterior.

Northwood


O Northwood é a segunda geração do Pentium 4, produzido em uma técnica de
0.13 micron. Ele não inclui mudanças na arquitetura, mas a redução no
tamanho físico dos transístores permitiu que fossem adicionados mais 256 KB
de cache L2, totalizando 512 KB.

Como o Pentium 4 foi originalmente projetado para trabalhar em conjunto com
pentes de memória Rambus, que (apesar dos maiores tempos de latência)
oferecem taxas de transferência de dados muito elevadas, o desempenho do
Willamette era prejudicado de forma significativa ao utilizar memórias SDRAM.
O aumento no cache e a popularização das placas com suporte a memórias
DDR melhoraram de forma significativa o desempenho do processador,
fazendo com que (respeitadas as diferenças no clock) ele passasse a competir
em pé de igualdade com o Athlon Thunderbird da AMD.

O Northwood foi produzido em versões de 1.6 a 3.06 GHz, englobando tanto
modelos com bus de 400 MHz quanto modelos utilizando bus de 533. A série
com bus de 400 MHz inclui os modelos de 2.0, 2.2, 2.4, 2.6, 2.8 e 3.0 GHz,
enquanto a série com bus de 533 MHz inclui modelos de 2.26, 2.40, 2.53, 2.66,
2.8 e 3.06 GHz

Mais tarde foi lançada uma série com suporte a Hyper-Threading (vendida sob
a marca "Pentium 4 HT"), que incluiu modelos com de 2.4 a 3.4 GHz. Com
exceção do modelo de 3.06 GHz, todos utilizam bus de 800 MHz.

Na verdade, os circuitos responsáveis pelo Hyper-Threading estão disponíveis
em todos os processadores Pentium 4 (mesmo nos Willamette), incluindo os
Pentium D e Celerons. A Intel simplesmente habilitava ou desabilitava o
recurso de acordo com a faixa de mercado a que cada processador se
destinava, limitando-se a ativar o HT nas séries de alto desempenho, como o
Pentium 4 HT, ou o Pentium Extreme Edition.

Existiram ainda diversos modelos do Celeron baseados no core Northwood,
com clock de 1.8 a 2.8 GHz, sempre utilizando bus de 400 MHz. Assim como
os modelos baseados no Willamette, os baseados no Northwood possuem
apenas 128 KB de cache e por isso não oferecem nenhum ganho de
desempenho em relação à série anterior.

Comparando dois modelos com o mesmo clock, as únicas vantagens reais do
Celeron baseado no Northwood é o fato de consumir menos energia e possuir
uma maior margem de overclock. De qualquer forma, ambos perdiam por uma
boa margem para o AMD Duron, que ainda por cima era mais barato.

                                                                          134
Aqui temos o die de um Pentium 4 com core Northwood. Embora a disposição
de alguns dos componentes internos tenha mudado em relação ao Willamette,
o processador continua quase idêntico, com exceção do cache adicional. O
cache L2 é representado pelos dois retângulos mais escuros na parte superior.
O cache é dividido, na verdade, em quatro blocos de 128 KB cada. Os
Celerons baseados no Northwood possuem apenas um dos blocos ativados:




                       Pentium 4 com core Northwood

Junto com o Northwood foi introduzido o soquete 478, onde o processador
utiliza um encapsulamento muito mais compacto que no soquete 423 utilizado
pelo Willamette. A principal vantagem técnica do novo soquete foi a de reduzir
o comprimento das trilhas dentro do encapsulamento do processador, o que
reduz a perda de sinal, permitindo que o processador funcione estavelmente a
freqüências mais elevadas.

O encapsulamento usado pelo processador também ficou um pouco mais
barato de se produzir, o que ajudou a Intel na hora de reduzir os preços de
venda e acirrar a competição com a AMD. Inicialmente o Northwood de 2.2
GHz custava nada menos que 600 dólares, mas, com o lançamento de versões
de maior clock, ele logo passou a ser vendido por US$ 169.

Veja uma comparação entre o Northwood soquete 478 e o Willamette soquete
423:


                                                                           135
Pentium 4 Northwood (à esquerda) e Pentium 4 Willamette

Prescott


O Prescott representa a terceira geração do Pentium 4, produzido a partir de
2004, utilizando uma técnica de fabricação de 0.09 micron. A mudança
arquitetural mais significativa foi a adição de 11 novos estágios ao já longo
pipeline do Northwood. Com isso, o Prescott atingiu a impressionante marca de
31 estágios de pipeline, um número sem precedentes entre os processadores
x86.

Em um processador atual, o uso de um pipeline mais longo não é exatamente
uma boa notícia, muito pelo contrário. Como vimos, aumentar o número de
pipelines do processador permite que cada estágio execute um volume menor
de processamento. Com isso, o processador passa a ser capaz de operar a
freqüências mais altas, mas, em compensação, as instruções demoram um
número maior de ciclos de clock para serem processadas (já que precisam
percorrer todo o pipeline), o que aumenta brutalmente o tempo perdido em
operações de tomada de decisão, onde o processador precisa aguardar o
resultado de uma operação para poder processar a seguinte.

Se as alterações parassem por aí, o Prescott seria capaz de operar a
freqüências mais elevadas, mas em troca seria brutalmente mais lento que um
Northwood do mesmo clock. Para evitar essa sombria perspectiva, a Intel
realizou um conjunto de melhorias na arquitetura, de forma a anular, ou pelo
menos reduzir a perda.

A primeira melhoria foi feita no circuito de branch prediction, responsável por
"prever" o resultado de operações de tomada de decisão e assim permitir que o
processador adiante o processamento das instruções seguintes enquanto a

                                                                           136
instrução inicial é processada. O Prescott é especialmente dependente do
desempenho do circuito de branch prediction, pois cada instrução precisa
percorrer um longo caminho ao longo dos 31 estágios do pipeline. Sem ele, o
projeto do Prescott seria inviável, pois o processador perderia muito tempo em
operações de tomada de decisão.

Em um processador atual, o circuito de branch prediction é capaz de indicar o
caminho correto em mais de 95% das operações. Tal precisão é possível,
porque ele se baseia em um histórico de operações já realizadas. Sempre que
é preciso "adivinhar" o caminho mais provável de uma operação, ele pesquisa
pelo resultado de operações semelhantes anteriormente realizadas. A maioria
dos programas realiza um grande número de operações repetitivas (sobretudo
aplicativos pouco otimizados, ou escritos em linguagens de alto nível), o que
permite que o circuito de branch prediction execute seu trabalho com grande
precisão.

O grande problema é que, sempre que ele erra, o processador precisa
descartar todo o trabalho adiantado e começar de novo a partir do ponto inicial.
Neste caso, são perdidos não apenas os 31 ciclos que a instrução inicial
demora para percorrer o pipeline, mas também os ciclos necessários para
remover os dados anteriores e carregar os registradores com as novas
instruções a processar.

Quanto mais longo é o pipeline, maior é a penalidade a cada erro, o que coloca
o Pescott em uma situação complicada, já que as operações de tomada de
decisão representam até 14% das operações realizadas por um aplicativo
típico.

Para reduzir a perda, o circuito de branch prediction do Prescott foi
sensivelmente aprimorado, e passou a ser capaz de trabalhar com um índice
de acerto maior que o do Northwood. O scheduler (o circuito que ordena as
instruções, de forma que as unidades de execução possam processar o
número máximo de instruções a cada ciclo) também foi melhorado, resultando
em outro pequeno ganho.

Foram feitas ainda duas pequenas modificações nas unidades de execução,
que resultaram em mais um pequeno ganho, muito embora o número de
unidades não tenha sido alterado.

O primeiro e mais significativo, foi a adição de um circuito dedicado de
multiplicação de números inteiros. Até o Northwood, todas as operações de
multiplicação eram enviadas à FPU (o coprocessador aritmético), processadas
separadamente e então devolvidas. Com o Prescott, as unidades de
processamento de números inteiros ganharam a habilidade de processá-las
diretamente, o que representa uma grande economia de tempo.

Como vimos, o Pentium 4 possui três unidades de execução de números
inteiros. Duas delas são "double-pumped", ou seja, são capazes de processar
duas instruções simples por ciclo de clock. Um conjunto específico de
instruções, que incluem operações um pouco mais complexas, são enviados

                                                                            137
para a terceira unidade de execução, que trabalha à freqüência normal. No
Prescott, uma das duas unidades "rápidas" ganhou um novo bloco, capaz de
processar operações shift/rotate (usadas em várias situações), que antes
precisavam ser processadas na unidade mais lenta. Com isso, a terceira
unidade foi desafogada, resultando em mais um pequeno ganho.

O Prescott ganhou também um novo bloco de instruções, o conjunto SSE3. Ele
é composto por 13 novas instruções, que complementam os dois conjuntos
anteriores, dando sua cota de contribuição em aplicativos otimizados.

Finalmente, temos as mudanças no cache. O bloco de dados do cache L1 foi
aumentado de 8 para 16 KB e o bloco de instruções (o trace-cache) recebeu
pequenas melhorias, embora a capacidade tenha permanecido a mesma. O
cache L2 dobrou de tamanho, saltando de 512 KB para 1 MB, mas o aumento
teve como efeito colateral o aumento dos tempos de latência, que aumentaram
em aproximadamente 40%. Em outras palavras, o Prescott tem um cache L2
maior, porém mais lento, o que anula grande parte do benefício.

Com relação à fabricação, o Prescott foi o primeiro processador Intel a ser
produzido utilizando a técnica Strained Silicon. Ela consiste em "esticar" a
superfície do wafer de silício, colocando-o sobre um substrato especialmente
desenvolvido. Aumentando a distância entre os átomos do wafer, é reduzida a
resistência à passagem dos impulsos elétricos. Essa técnica não tem nenhum
efeito direto sobre o desempenho, mas ajuda a reduzir o consumo e a
dissipação térmica do processador, além de (pelo menos em teoria) permitir
que ele seja capaz de operar a freqüências mais elevadas.




                Slide demonstrando a técnica Strained Silicon

De uma forma geral, o Pentium 4 baseado no core Prescott é um pouco mais
lento que um Northwood do mesmo clock. Ele ganha por uma pequena
margem em alguns aplicativos otimizados (graças ao aumento no tamanho do
cache e às novas instruções SSE), mas na prática acabamos tendo um empate
técnico entre os dois cores.


                                                                         138
Isso não é surpresa já que, como vimos, os aperfeiçoamentos feitos no
Prescott tiveram como principal objetivo anular a perda de performance
causada pelo aumento no número de estágios do pipeline e não a realmente
melhorar o desempenho por ciclo de clock. Na época o plano era melhorar o
desempenho do processador com sucessivos aumentos na freqüência de clock
e não com base no aumento da eficiência.

O projeto de um novo processador demora de 3 a 5 anos para ser
desenvolvido, até o ponto em que está testado e pronto para entrar em
produção. Mesmo em casos onde um projeto já existente é modificado, como
no caso do Prescott, o desenvolvimento não toma menos do que 2 anos. Ou
seja, é preciso planejar quais modificações realizar com uma antecedência
muito grande e, qualquer erro estratégico (como o uso das memórias Rambus)
acaba demorando muitos anos para ser consertado.

Como o Prescott foi lançado no início de 2004, podemos imaginar que a Intel
começou a desenvolvê-lo pouco depois do lançamento do Pentium 4
Willamette, colocando em prática as idéias que vigoravam na época.

Já que o desempenho por ciclo de clock era praticamente o mesmo, as
vantagens de possuir um Prescott em vez de um Northwood recaiam apenas
sobre a maior margem de overclock. Para quem não pretendia fazer overclock,
não existiam realmente grandes vantagens em utilizar um Prescott em relação
a um Northwood do mesmo clock.

Devido ao aumento no número de estágios do pipeline e das melhorias feitas
nas unidades de execução, o Prescott dissipa mais calor que um Northwood
do mesmo clock, mesmo sendo produzido em uma técnica de 0.09 micron. Se
isso lhe soa estranho, basta ter em mente que apesar da técnica mais
avançada de produção, ele possui 125 milhões de transístores, contra apenas
55 milhões do Northwood.

O TDP (Thermal Design Power, que no caso dos processadores Intel indica o
consumo típico do processador) do Northwood de 3.4 GHz é de 89 watts,
enquanto o do Prescott da mesma freqüência é de 103 watts, ou seja, 14 watts
a mais.

Um consumo tão elevado torna necessário o uso de uma fonte de alimentação
de 400 watts ou mais, capaz de fornecer 16 Amperes na saída de 12V
(consulte a etiqueta com as especificações da fonte), um cooler adequado e
um gabinete com uma boa ventilação, com (de preferência) um exaustor
adicional instalado na abertura lateral, soprando ar sobre o processador.

Sem uma ventilação adequada, o processador pode facilmente ultrapassar o
limite de temperatura estabelecido, fazendo com que o Thermal Throttling entre
em ação, reduzindo a freqüência do processador, sem contar que um gabinete
abafado causa prejuízos à vida útil e à estabilidade dos demais componentes.

Para evitar confusão, os modelos baseados no core Prescott que operam à
mesma freqüência dos Northwood recebem a letra "E", como em:

                                                                           139
Pentium 4 3.40E
      Pentium 4 3.20E
      Pentium 4 3.00E
      Pentium 4 2.80E

Todos estes modelos utilizam bus de 800 MHz, por isso é necessário que
exista suporte por parte da placa-mãe. No caso das placas com chipset Intel, o
suporte foi introduzido a partir da série i865, no caso dos chipsets da SiS a
partir da série FX (SiS648FX, SiS655FX e SiS661FX) e no caso dos da VIA a
partir do PT800. A primeira safra de placas (produzidas na primeira metade de
2004) precisava de um upgrade de BIOS para reconhecer corretamente o
processador.

O Prescott acabou se revelando um grande fracasso. Devido ao massivo
consumo e dissipação térmica do processador, a Intel não foi capaz de lançar
versões do Prescott acima de 3.8 GHz, ou seja, apenas 400 MHz a mais que
os Pentium 4 baseados no core Northwood, fabricados na antiga técnica de
0.13 micron. O aumento no número de estágios do pipeline e as outras
mudanças arquiteturais feitas no processador acabaram sendo em vão.

Hyper-Threading


O Hyper-Threading foi introduzido no final de 2002, na forma de duas versões
especiais do Pentium 4 Northwood (soquete 478), que operavam a 2.8 e 3.06
GHz. A partir daí, ele foi utilizado em diversas séries do Prescott. As séries com
suporte ao Hyper-Threading eram identificadas pelo logotipo, que continha as
letras "HT", em laranja:




Com o Hyper-Threading, o processador se apresenta ao sistema operacional
como um sistema dual-core. Com isso, o sistema ativa os módulos que ativam

                                                                              140
o suporte a SMP e passa a dividir o processamento dos aplicativos entre os
dois processadores lógicos. Dentro do processador, as instruções são
reorganizadas, de forma que o processador possa aproveitar os ciclos ociosos
para incluir operações relacionadas ao segundo aplicativo. Aumentar o nível de
utilização das unidades de execução resulta em um pequeno ganho de
desempenho. Este slide da Intel apresenta o conceito:




            Slide da Intel que demonstra o uso do Hyper-Threading

Dentro do processador, os circuitos responsáveis pelo Hyper-Threading
representam menos de 5% dos transístores do processador. Embora tenham
sido habilitados apenas em algumas séries de processadores, que eram
vendidos a preços mais altos, os circuitos responsáveis estavam presentes
desde o Pentium 4 Willamette, embora desativados.

Os circuitos responsáveis pelo Hyper-Threading representam uma expansão
do circuito de TLB e do trace cache, além de três pequenos circuitos adicionais,
o Return Stack Predictor, Next Instruction Pointer e o Register Alias Tables.
Eles são os responsáveis por criar a "ilusão" de dois processadores, vista pelo
sistema operacional e por agendar o processamento de instruções
aproveitando os ciclos ociosos.




                                                                            141
Slide da Intel que mostra os circuitos responsáveis pelo Hyper-Threading

O Hyper-Threading foi, de certa forma, um ensaio para os processadores dual-
core que a Intel viria a lançar cerca de três anos depois. O ganho obtido ao
ativar o Hyper-Threading não é nem próximo do obtido ao utilizar um
processador dual-core "de verdade", já que ele se baseia no melhor
aproveitamento das unidades de execução do processador e não na presença
de um segundo processador físico. Ao ativá-lo você arca com o overhead de
utilizar um sistema com dois processadores, já que o sistema operacional e
aplicativos precisam lidar com o trabalho adicional de dividir a carga entre os
dois processadores. Embora sejam dois processadores lógicos, o impacto
sobre o desempenho não é nem de longe é o mesmo de ter dois
processadores reais.

Isso faz com que o Hyper-Threading seja uma faca de dois gumes. Em alguns
aplicativos, ele pode resultar em ganhos de 10, ou até mesmo 20%, mas na
maioria o ganho é muito pequeno, abaixo de 2%. Existe ainda um grande
número de aplicativos onde ativar o HT reduz substancialmente o desempenho,
o que anula em grande parte o ganho obtido em outros aplicativos.

Os aplicativos que mais se beneficiam do HT, de uma forma geral, são os
aplicativos de compressão de áudio e vídeo, compactação e descompactação
de arquivos, aplicativos de renderização 3D e alguns jogos. Os ganhos são
mais expressivos em ambientes multitarefa, já que o maior número de
processos ativos permite que o processador aproveite melhor o tempo ocioso,
adiantando operações em um aplicativo enquanto aguarda pela conclusão de
uma operação de tomada de decisão em outro, por exemplo. Os aplicativos
que costumam apresentar perdas são sobretudo os aplicativos do dia-a-dia,
incluindo navegadores, processadores de texto, planilhas e assim por diante.

Outro efeito colateral é que ativar o Hyper-Threading aumenta o consumo e,
conseqüentemente, a dissipação térmica do processador em de 6 a 8%. Não é
incomum que ao ativar o HT a temperatura do processador suba 5 ou 6 graus,
o que pode prejudicar a estabilidade do sistema, caso a ventilação dentro do
gabinete não seja boa e o processador já esteja trabalhando próximo limite. Os
relatos de instabilidade ao ativar o HT quase sempre derivam-se disso.


                                                                              142
Como os processadores Pentium 4 (sobretudo os Prescott, que operam a
freqüências muito elevadas e ainda são fabricados numa técnica de 0.09
micron) possuem uma dissipação térmica muito alta e uma relação
consumo/performance já muito ruim, os ganhos obtidos com a ativação do HT
acabam sendo superados pelas desvantagens, de forma que muitos preferiam
simplesmente desativar o recurso através do setup.

Soquete 775


Junto com o Prescott, foi lançado o soquete LGA775 (também chamado de
soquete T), que passou a ser utilizado nas placas de alto desempenho. A sigla
LGA é abreviação de "Land Grid Array", onde o nome indica a forma como o
processador é encaixado, "pousando" sobre a cama de pinos do soquete.

Existiram versões do Prescott tanto em versão soquete 478, quanto em versão
soquete 775. A partir de então, todos os processadores de alto desempenho
passaram a utilizar o novo soquete, transformando a plataforma soquete 478
em uma plataforma de baixo custo.

O soquete 775 foi projetado de forma a melhorar o contato dos pinos e reduzir
a distância que os sinais elétricos precisam percorrer do processador ao
chipset, além de permitir que os capacitores instalados na parte inferior do
processador (responsáveis por filtrar e estabilizar a corrente) possam ser
instalados o mais próximo possível do núcleo.

Os pinos de encaixe foram retirados do processador e movidos para o soquete,
e um novo mecanismo de retenção foi projetado:




                                Soquete 775


                                                                         143
A primeira coisa a ter em mente é que os contatos do soquete 775 são
realmente muito finos e frágeis. No lugar de sulcos, o processador possui
pequenos pontos de contato, que correspondem precisamente aos contatos no
soquete:




               Pentium 4 com core Prescott em versão LGA775

Essa fragilidade faz com que seja muito fácil entornar parte dos contatos da
placa ao instalar o processador de forma desastrada. Ao contrário do que
temos em processadores antigos, onde com um pouco de jeito é possível
desentortar alguns pinos entortados durante uma tentativa de instalação mal
feita, é praticamente impossível desentortar contatos amassados no soquete
775, de forma que uma instalação incorreta do processador simplesmente
inutiliza a placa-mãe.

Segundo a própria Intel, o índice de falhas é de uma em cada vinte inserções.
Ou seja, o soquete foi projetado para resistir a algumas poucas inserções,
incluindo a instalação inicial do processador e alguns upgrades futuros, e não
para suportar inserções e remoções freqüentes.

Ao instalar o processador você deve posicioná-lo sobre o soquete e
simplesmente soltá-lo, deixando que a lei da gravidade se encarregue de
encaixá-lo. Nunca aplique pressão sobre o processador, pois isso só servirá
para entortar os pinos que não estiverem bem posicionados.

Uma vez fechado, o mecanismo de retenção prende o processador, aplicando
a pressão necessária para que ele fique bem preso ao soquete, maximizando a
condutividade elétrica. Graças a isso, a pressão exercida pelo sistema de
retenção do cooler pode ser muito menor, o que evita que a placa "envergue",
como no caso das placas soquete 478.

Você pode notar, pela foto, que não existe um mecanismo de retenção para o
cooler, como nas placas soquete 478. Como a pressão sobre o processador é

                                                                           144
exercida pelo mecanismo de retenção do soquete, o cooler é simplesmente
encaixado através dos orifícios disponíveis na placa:




                         O mecanismo de retenção

Smithfield, Cedar Mill e Presler


O core Smithfield é uma versão dual-core do Prescott (1 MB de cache para
cada core), produzido em uma técnica de 0.09 micron. Ele foi utilizado nas
primeiras versões do Pentium D (abrangendo modelos de 2.66 a 3.2 GHz) e
também no Pentium Extreme Edition 840. Estes processadores foram
produzidos em quantidades limitadas e foram rapidamente substituídos pelos
Pentium D baseados no core Presler.

Esta imagem mostra o núcleo de um Pentium D baseado no core Smithfield.
Como você pode ver, ele nada mais é do que dois Prescotts, que compartilham
o mesmo wafer e são unidos diretamente através do FSB, que no caso dos
processadores Intel é também usado para ligar o processador à memória e ao
chipset:




                                                                        145
Núcleo do Pentium D baseado no core Smithfield

O Cedar Mill é uma versão atualizada do Prescott 2M, produzida utilizando
uma técnica de 0.065 micron (65 nanômetros). Ele mantêm os 2 MB de cache
e não inclui mudanças na arquitetura, nem para melhor, nem para pior. O
desempenho dos processadores baseados no core Cedar Mill é rigorosamente
o mesmo dos Prescott 2M da mesma freqüência. A única vantagem é que a
dissipação térmica do Cedar Mill é um pouco mais baixa, e ele é capaz de
atingir freqüências de clock um pouco maiores (embora a diferença seja
pequena) quando em overclock.

De um modo geral, é possível atingir até 4.2 GHz fazendo overclock em um
processador baseado no Core Prescott, enquanto os baseados no Cedar Mill
atingem até 4.5 GHz (em ambos os casos sem muita estabilidade). A
freqüência máxima não varia muito de acordo com o clock original do
processador, você precisa apenas ajustar a freqüência do FSB de acordo com
o multiplicador, já que ele é travado, tanto no Prescott, quanto no Cedar Mill.

Foram lançadas apenas 4 versões do Cedar Mill, operando a 3.0, 3.2, 3.4 e 3.6
GHz, todas em versão LGA775 e utilizando bus de 800 MHz. Embora o Cedar
Mill fosse capaz de facilmente superar a marca dos 4.0 GHz, em overclock, a
Intel decidiu não lançar processadores acima dos 3.6 GHz, dando prioridade
para o lançamento de versões de baixo consumo.

O Cedar Mill deu origem também ao Cedar Mill-512, a versão mais competitiva
do Celeron lançada até então, que contava com 512 KB de cache e era
fabricado usando uma técnica de 0.065 micron. Eles existiram em versão de
3.06 a 3.6 GHz (todas utilizando bus de 533 MHz) e se tornaram muito baratos
depois do lançamento do Core 2 Duo, oferecendo uma boa relação custo-
benefício.




                                                                           146
Utilizando um bom cooler, é possível superar facilmente a faixa dos 4.0 GHz
em overclock. Uma configuração muito comum é overclocar o Celeron D 347 (a
versão de 3.06 GHz) para 3.83 GHz, aumentando a freqüência do FSB para
800 MHz.

O Presler, por sua vez, era uma versão dual-chip do Cedar Mill, onde dois
chips eram instalados dentro do mesmo encapsulamento. Como os dois chips
eram separados por uma distância de 5 mm, a dissipação de calor era um
pouco mais eficiente do que no Smithfield. Além disso, graças à utilização de
núcleos separados, o índice de aproveitamento da Intel era melhor, já que os
dois processadores podiam ser testados separadamente. No caso do
Smithfield, caso um dos dois cores apresentasse defeito, ambos precisavam
ser descartados.

Externamente, um Pentium D baseado no core Presler não é diferente de um
Prescott, Cedar Mill ou Smithfield soquete 775, com o mesmo formato e o
mesmo dissipador metálico protegendo o processador. Mas, ao remover o
dissipador, você pode ver os dois cores separados:




          Pentium D com core Presler (com o dissipador removido)

Em teoria, utilizar dois chips separados resulta em um processador capaz de
operar a freqüências mais baixas do que ao utilizar um processador dual-core
"de verdade", como o Smithfield. Apesar disso, os ganhos advindos da redução
de custos parecem ter superado as desvantagens para a Intel.




                                                                         147
O Presler foi lançado em versões de 2.8 a 3.6 GHz, todas com 2 x 2 MB de
cache L2 e utilizando bus de 800 MHz. Além de representar a maior parte dos
Pentium D vendidos, ele foi utilizado também em duas versões do Pentium
Extreme Edition, operando a 3.46 e 3.73 GHz.

Por ser um processador dual-chip, o Presler não era capaz de atingir
freqüências tão altas quanto o Cedar Mill quando em overclock. Mesmo nos
modelos de fabricação mais recente, é muito difícil superar a marca dos 3.9
GHz.

Devido à concorrência da AMD, a Intel passou a ajustar o preço de seus
processadores dual-core de forma bastante agressiva. A diferença de preço
entre um Pentium D e um Pentium 4 da série 6xx (baseado no Cedar Mill) não
era grande, de forma que, em 2006, você podia comprar um Pentium D de 2.8
GHz por aproximadamente o mesmo que pagaria por um Pentium 4 631, a
versão single-core de 3.0 GHz.

De uma forma geral, aplicativos que dividem a carga de processamento em
vários threads e por isso se beneficiam de um processador dual-core são
aplicativos de edição e compressão de vídeo, renderização 3D, edição de
imagens (Photoshop, Gimp, etc.) e diversos aplicativos de uso profissional.
Aplicativos que trabalham com um único thread e por isso não se beneficiam
de um processador dual-core são aplicativos office de uma forma geral,
navegadores, players de áudio e vídeo e a maioria dos games.

Note entretanto que o uso de um processador dual-core sempre ajuda quando
você está rodando dois aplicativos pesados simultaneamente. Pode ser que um
determinado game 3D não apresente ganho algum de FPS ao rodar sobre um
processador dual-core, mas sem dúvida o FPS será mais alto se você resolver
comprimir um filme em Divx em segundo plano enquanto joga.

Nos servidores a coisa muda de figura, pois quase todos os serviços geram um
volume muito grande de threads, de forma que um processador dual-core
oferece sempre um ganho muito grande de desempenho.

Sistema de numeração


Ao migrar seus processadores para o soquete 775, a Intel adotou o sistema de
numeração que ainda é usado até os dias de hoje. Ao contrário da AMD, que
até então usava o sistema de numeração como um indicador aproximado de
desempenho, o sistema de numeração da Intel é apenas um código que indica
a família, a "posição hierárquica" do chip e os recursos adicionais (EM64,
suporte a virtualização, etc.) suportados por ele. Isso faz com que, em muitos
casos, um processador mais rápido receba um número de identificação muito
inferior ao de um processador mais lento, porém de outra família.

Por exemplo, a versão de ultra baixo consumo do Pentium M (com core
Dothan) de 1.0 GHz recebe o código 723, enquanto um Pentium M "normal", de
1.5 GHz recebe o código 715 e um Prescott de 3.4 GHz recebe o código 551.

                                                                          148
Um Celeron D de 3.6 GHz baseado no core Cedar Mill-512 recebe o número
365, enquanto um simples Prescott de 2.66 GHz recebe o número 505.

O sistema de numeração é aplicado apenas aos processadores produzidos em
versão soquete 775. Mesmo depois do lançamento deles, os processadores
soquete 478 (tanto Pentium 4, quanto Celeron) continuaram sendo vendidos
sob a freqüência de operação, até serem descontinuados.

A partir da segunda metade de 2007, a AMD acabou adotando um sistema de
numeração similar ao da Intel, também abandonando a idéia do índice de
desempenho.

Pentium 4


Os primeiros modelos a adotarem o sistema de numeração foram lançados no
final de 2004. A série 5xx é formada pelos processadores Pentium 4 com core
Prescott e 1 MB de cache.

A leva inicial inclui os modelos 505 (2.66 GHz), 505J (2.66 GHz), 506 (2.66
GHz), 511 (2.8 GHz), 515 (2.93 GHz), 515J (2.96 GHz), 516 (2.66 GHz), 517
(2.93 GHz) 519J (3.06 GHz) e 519K (3.06 GHz), todos utilizando bus de 533
MHz.

Além do clock, os processadores são diferenciados pela presença dos recursos
especiais, justamente por isso existem tantos modelos com o mesmo clock.

Os modelos 506, 516, 517 e 519K oferecem suporte ao EM64 (também
chamado de Intel 64), o conjunto de instruções de 64 bits desenvolvido pela
Intel e por isso são capazes de rodar as versões de 64 bits do XP, Vista e
distribuições Linux compiladas para processadores de 64 bits. Todos os
processadores da série 5xx com o EM64 oferecem também suporte a Hyper-
Threading.

O 511 oferece apenas suporte a HT, sem suporte a instruções de 64 bits,
enquanto o 505J, 515J e 519J oferecem suporte ao XD bit (eXecute Disable
bit), um sistema de proteção utilizado por alguns softwares para aumentar a
proteção contra ataques de buffer overflow. Este recurso recebeu uma grande
atenção na época em que foi lançado, mas acabou não sendo tão utilizado na
prática. Os demais são modelos "simples" do Prescott, sem nenhum dos três
recursos.

Em seguida temos a série composta pelos modelos 520 (2.8 GHz), 520J       (2.8
GHz), 521 (2.8 GHz), 524 (3.06 GHz), 530 (3.0 GHz), 530J (3.0 GHz), 531   (3.0
GHz), 540 (3.2 GHz), 540J (3.2 GHz), 541 (3.2 GHz), 550 (3.4 GHz), 550J   (3.4
GHz), 551 (3.4 GHz), 560 (3.6 GHz), 560J (3.6 GHz), 561 (3.6 GHz), 570J   (3.8
GHz GHz) e 571 (3.8 GHz).




                                                                          149
Todos estes modelos suportam Hyper-Threading, por isso a informação não é
mais indicada no número. Estas versões eram vendidas sob a marca "Pentium
4 HT", de forma que ficava claro ao comprar que o processador suportava HT.

Apesar de serem baseados no mesmo core Prescott com 1 MB da série
anterior, todos estes modelos utilizam bus de 800 MHz e por isso são um
pouco mais rápidos, embora a diferença seja pequena.

Todos os modelos cuja numeração termina com "1" oferecem também suporte
ao EM64 e ao recurso XD bit. A lista completa inclui os modelos HT 521, HT
524, HT 531, HT 541, HT551, HT 561 e HT 571.

Os modelos cuja numeração inclui um "J" oferecem suporte apenas ao XD bit,
que não é nem de longe tão interessante quando o suporte a instruções de 64
bits. A lista inclui os modelos HT520J, HT 530J, HT540J, HT 550J, HT 560J, e
HT 570J.

Os demais modelos, cuja numeração termina com "0" são os modelos
"simples", que incluem apenas o suporte a Hyper-Threading inerente à série.

Uma curiosidade é que os modelos HT 570J e HT 571 (assim como o 670) são
os processadores Intel com a maior freqüência de clock, oficialmente suportada
até hoje. Os modelos dual-core baseados na arquitetura do Pentium 4, assim
como os Core 2 Duo, trabalham a freqüências mais baixas. É possível superar
a marca de 3.8 GHz usando um Core 2 Duo em overclock (usando algum tipo
de refrigeração especial), mas vai demorar um pouco até que seja lançado um
Core 2 Duo capaz de operar oficialmente a esta freqüência. Apesar disso, a
ineficiente arquitetura do Prescott faz com que os processadores da série 5xx
tenha um desempenho modesto para os padrões atuais.

Em seguida temos os processadores baseados no Prescott 2M. Apesar de
terem 2 MB de cache, o dobro dos modelos anteriores, o cache L2 incluído
utiliza um design mais compacto, que tem como efeito colateral um novo
aumento na já alta latência do cache L2 do Prescott original. Isto faz com que
parte do ganho de desempenho obtido com a ampliação do cache seja
anulado.

A série inclui os modelos 620 (2.8 GHz), 630 (3.0 GHz), 640 (3.2 GHz), 650
(3.4 GHz), 660 (3.6 GHz), 662 (3.6 GHz), 670 (3.8 GHz) e 672 (3.8 GHz)

Todos estes modelos utilizam bus de 800 MHz, oferecem suporte a instruções
de 64 bits, Hyper-Threading e XD bit. Com exceção do 620, todos suportam
também o EIST (Enhanced Intel SpeedStep), um sistema aprimorado de
gerenciamento de energia, que reduz de forma substancial o consumo do
processador enquanto ele está ocioso. Este recurso é suportado inclusive no
Linux, através do daemon "powernowd".

Os modelos cuja numeração termina com "2", lista que inclui apenas o 662 e
672, incluem também suporte ao Intel VT, um sistema de virtualização que visa
melhorar o desempenho de programas de virtualização, como o VMware,

                                                                          150
Virtual PC e Xen (no Linux). Em teoria, o uso do Intel VT poderia melhorar de
forma substancial o desempenho destes programas, mas até o presente
momento a promessa ainda não se concretizou.

Finalmente, temos os modelos baseados no core Cedar Mill, a atualização do
core Prescott 2M, fabricada usando a técnica de fabricação de 0.065 micron.
Todos estes modelos mantém os 2 MB de cache, mas possuem um consumo
elétrico um pouco mais baixo. A série inclui os modelos 631 (3.0 GHz), 641 (3.2
GHz), 651 (3.4 GHz) e 661 (3.6 GHz).

Todos os modelos utilizam bus de 800 MHz, EM64, Hyper-Threading e XD bit.
Existiram três revisões do core Cedar Mill, com steeping B1, C1 e D0, que se
diferenciam com relação ao consumo elétrico. Os mais antigos, baseados no
steeping B1 possuem um TDP de 86 watts e não suportam o EIST. Os
baseados no steeping C1 mantém o mesmo TDP, mas já incluem suporte ao
EIST (o que faz com que o processador fique muito mais frio enquanto o PC
está rodando aplicativos leves), enquanto os baseados no steeping D0
possuem um TDP mais baixo, de apenas 65 watts.

Esta tabela, fornecida pela Intel, mostra todos os modelos, a partir do 521:




                                                                               151
Pentium D


Ao lançar o Cedar Mill, a Intel estava preocupada em reduzir o consumo e
aumentar a eficiência dos processadores. Embora os Cedar Mill fossem
capazes de trabalhar a freqüências ligeiramente superiores aos processadores
baseados no core Prescott (o que você pode comprovar ao fazer overclock), a
perda de corrente ao operar a freqüências acima de 3.6 GHz era muito alta, o
que fez a Intel desistir do lançamento de versões mais rápidas.

Ao invés disso, os esforços foram concentrados nos modelos dual-core e na
finalização do Core 2 Duo, que viria a ser lançado em Julho de 2006, apenas 6
meses depois das 4 versões do Cedar Mill.

Os processadores dual-core baseados na arquitetura NetBurst foram vendidos
sob a marca "Pentium D" (de dual). Existiram duas famílias, baseadas nos
cores Smithfield (série 8xx) e Presler (9xx).

O core Smithfield é uma versão de dois núcleos do Prescott, onde cada um
dos dois processadores inclui 1 MB de cache, totalizando 2 MB. Foram
produzidas apenas quatro versões baseadas no Smithfield: 805 (2.66 GHz),
820 (2.8 GHz), 830 (3.0 GHz) e 840 (3.2 GHz).

O 805 foi uma versão de baixo custo, destinada a ser utilizada em conjunto
com as placas soquete 775 que suportavam apenas bus de 533. As outras três
versões utilizavam bus de 800 MHz.

Com relação aos recursos especiais, os 4 modelos suportam o EM64 e o XD
bit, mas apenas o 830 e o 840 (que possuem um TDP mais alto) suportam o
Advanced SpeedStep. Nenhum dos modelos oferece suporte ao Hyper-
Threading, que foi desativado em parte para diferenciá-los do Pentium Extreme
Edition 840 (que era bem mais caro) e em parte para reduzir o consumo
elétrico dos processadores, que no 830 e 840 já superava a marca dos 130
watts em momentos de atividade intensa.

Os Pentium D baseados no core Smithfield foram substituídos pelos baseados
no core Presler a partir de Janeiro de 2006. A série foi composta pelos
modelos 915 (2.8 GHz), 920 (2.8 GHz), 925 (3.0 GHz), 930 (3.0 GHz), 935 (3.2
GHz), 940 (3.2 GHz), 945 (3.4 GHz), 950 (3.4 GHz) e 960 (3.6 GHz).

Assim como no caso da série 8xx, nenhum destes modelos suporta Hyper-
Threading, desativado para diferenciá-los dos processadores da série Extreme
Edition. Todos suportam instruções de 64 bits, XD bit e também o Advanced
SpeedStep.

Os modelos cujo código termina com "0" (920, 930, 940, 950 e 960) oferecem
suporte ao Intel VT, o mesmo recurso de virtualização que foi introduzido na
série 6xx. Este é o único recurso que os diferencia dos 9x5. Veja a tabela com
todos os modelos:

                                                                          152
Extreme Edition


No final de 2003, pressionada pela AMD, a Intel criou a série Pentium 4
Extreme Edition (Pentium 4 EE), processadores com mais cache, que foram
produzidos em quantidades limitadas e vendidos a preços exorbitantes. A
principal função destes processadores foi servir como ferramenta de marketing,
atraindo a atenção do público entusiasta.

As versões iniciais eram baseadas no core Gallatin, uma versão adaptada do
Xeon MP (que por sua vez era baseado no core Northwood), que possuía
apenas 512 KB de cache L2, complementados por um generoso cache L3 de 2
MB. O Gallatin ainda era fabricado usando a antiga técnica de 0.13 micron, por
isso foi lançado em versões de 3.2 a 3.46 GHz, tanto em versão soquete 478
(de 3.2 e 3.4 GHz) quanto em versão soquete 775 (versões de 3.4 e 3.46 GHz).

Em seguida veio o Pentium 4 EE baseado no core Prescott 2M que, como o
nome sugere, é uma versão aperfeiçoada do core Prescott, com 2 MB de
cache L2 (que substituíram o cache L3 do Gallatin). A versão inicial (e única)
operava a 3.73 GHz e era destinada exclusivamente a placas soquete 775 com
suporte a bus de 1.06 GHz. A Intel pretendia lançar versões mais rápidas,
atingindo a marca de 5 GHz, mas a brutal dissipação térmica do processador
impediu que isso se concretizasse.

                                                                          153
Mais adiante foram lançadas versões Extreme Edition baseadas nos cores
Smithfield e Presler. Elas foram vendidas sob a marca "Pentium Extreme
Edition" (sem o "4"). Para evitar confusão, abreviamos o nome "Pentium
Extreme Edition" como "Pentium XE", diferenciando-os da série antiga,
abreviada como "Pentium 4 EE".

O core Smithfield foi usado em uma única versão do Pentium XE (o XE 840),
que operava a 3.2 GHz. A única vantagem real do XE 840 sobre os
processadores da série 8xx era o suporte a Hyper- Threading. Apesar disso ele
era vendido (na época de lançamento) por US$ 999, quase o dobro do preço
de um Pentium D 840, que também operava a 3.2 GHz.

No início de 2006 foram lançados dois novos modelos, baseados no core
Presler: o Pentium XE 955 e o XE 965, que operavam respectivamente a 3.46
e 3.73 GHz. O principal diferencial destes dois modelos sobre os demais
processadores da série 9xx era o uso do bus de 1.06 GHz, o que melhorava
sutilmente o desempenho em relação a um Pentium D do mesmo clock.

O XE 965 operava a uma freqüência 133 MHz maior que o Pentium D 960 (3.6
GHz), o que o torna o processador mais rápido dentro da plataforma NetBurst.
Ao mesmo tempo, ele é um dos piores processadores de todos os tempos com
relação ao custo-benefício, já que custava, em Abril de 2006, nada menos que
999 dólares. Três meses depois, era possível comprar dois Core 2 Duo E6700
pelo mesmo valor.

Celeron D


Como de praxe, a Intel lançou versões atualizadas do Celeron baseadas no
core Prescott (com 256 KB de cache) e do Cedar Mill (com 512 KB), que
lentamente substituíram os antigos Celerons baseados no Northwood.

Apesar do maior número de estágios de pipeline e da maior latência do cache
L2 (cortesia do Prescott), o Celeron D acaba sendo consideravelmente mais
rápido que um Celeron Northwood do mesmo clock (de 10 a 20%, de acordo
com o aplicativo) devido à combinação do maior cache L1 de dados (16 KB x 8
KB), do maior cache L2 e do uso do bus de 533 MHz.

Todos os Celeron D utilizam o soquete 775 e bus de 533 MHz. Apesar do "D"
no nome, eles não são processadores dual-core. A Intel simplesmente resolveu
nomear o Celeron de forma parecida para aproveitar o esforço de marketing
feito em torno do Pentium D. O "D" no caso do Celeron não tem nenhum
significado especial, é apenas uma letra a mais no nome.

A lista dos Celerons D baseados no core Prescott-256 inclui o 310 (2.13 GHz),
315 (2.26 GHz), 320 (2.4 GHz), 325 (2.53 GHz), 325J (2.53 GHz), 326 (2.53
GHz), 330 (2.66 GHz), 330J (2.66 GHz), 331 (2.66 GHz), 335 (2.8 GHz), 335J
(2.8 GHz), 336 (2.8 GHz), 340 (2.93 GHz), 340J (2.93 GHz), 341 (2.93 GHz),
345 (3.06 GHz), 345J (3.06 GHz), 346 (3.06 GHz), 350 (3.2 GHz), 351 (3.2
GHz) e 355 (3.33 GHz).

                                                                         154
Como você pode ver, desta vez a lista é grande e temos um número muito
grande de versões com o mesmo clock. Vamos então entender as diferenças
entre elas. :)

Nenhum dos Celerons D suporta Hyper-Threading ou o Advanced SpeedStep,
mas diversos modelos suportam o XD bit e o EM64.

Os modelos que possuem suporte ao XD bit são identificados pela letra "J". A
lista inclui os modelos 325J, 330J, 335J, 340J, 345J. Como vimos, o XD bit não
é um recurso tão interessante, de forma que ter um processador da série J é ao
mesmo tempo uma boa e uma má notícia. A boa é que ele vem com o XD bit
ativado e a má é que ele não inclui suporte ao EM64, que seria o recurso
realmente importante.

Os Celerons D com suporte a instruções de 64 bits foram lançados
posteriormente e tiveram o número de identificação aumentando em 1 para
diferenciá-los dos anteriores. A lista inclui o 326, 331, 336, 341, 346, 351 e
também o 355. Todos estes modelos incluem "de brinde" também o suporte ao
XD bit.

Em seguida temos os modelos baseados no core Cedar Mill-512. Eles são os
modelos recomendados, pois além de serem fabricados usando a técnica de
0.065 micron, possuem 512 KB de cache.

Desta vez a escolha é mais simples, já que temos apenas 5 modelos: 347 (3.06
GHz), 352 (3.2 GHz), 356 (3.33 GHz), 360 (3.46 GHz) e 365 (3.6 GHz).

Todos os 5 modelos suportam tanto o EM64 quanto o XD bit, eliminando a
ambiguidade da série anterior. Veja a tabela completa, cortesia da Intel:




                                                                          155
Uma questão interessante na informática é que nem sempre processadores e
outros componentes mais lentos ou descontinuados são uma opção ruim de
compra, já que, conforme são substituídos, os preços tendem a cair
rapidamente.

Como sempre, é tudo uma questão de custo-benefício. Em muitos casos, um
processador 40% mais lento pode custar 10 vezes menos e suportar um


                                                                     156
overclock de 30%, que o deixa com um desempenho próximo do modelo topo
de linha.

Athlon e Duron


A versão original do Athlon (em formato de cartucho, com cache L2 externo) foi
lançada pouco depois do Pentium III com core Katmai. Como os dois
processadores utilizavam cache L2 trabalhando à metade da freqüência do
processador, a briga manteve-se equilibrada, com o Pentium III ganhando em
alguns aplicativos e o Athlon, em outros. Apesar de, no geral, o Athlon ganhar
por uma pequena margem, o posto de processador mais rápido acabava sendo
conquistado pelo processador com a freqüência de operação mais alta e assim
trocava de mãos conforme os fabricantes se revezavam no lançamento de
versões mais rápidas.

Mas, o Athlon começou a ficar para trás depois que a Intel lançou as novas
versões do Pentium III, baseadas no core Coppermine, devido ao seu (do
Athlon) cache L2 mais lento. Enquanto em um Pentium III de 900 MHz o cache
L2 opera à mesma freqüência do processador, em um Athlon 900 antigo ele
opera a apenas 300 MHz, um terço da freqüência.

Isto mudou com o lançamento do Athlon Thunderbird, que (com exceção do
K6-3) foi o primeiro processador AMD com cache L2 integrado, um design
muito mais elegante e eficiente, que além de mais rápido passou a ser mais
barato de se produzir que a versão anterior, onde além do núcleo do
processador, era usada uma placa de circuito e dois chips de cache L2
separados:




 Athlon slot A (sem a cobertura plástica). Repare nos dois chips separados de
                                   cache L2




                                                                           157
Athlon Thunderbird


Com exceção dos K6-2, que foram vendidos em enorme quantidade e por isso
ainda vão demorar para serem substituídos completamente, o Thunderbird é
provavelmente o processador AMD mais antigo que você ainda encontrará em
uso. O Athlon original era caro e foi produzido em quantidades limitadas,
devido a dificuldades da AMD relacionadas ao processo de produção e à
obtenção de chips de cache L2 em volume suficiente. Foi a partir do
Thunderbird que a AMD passou a ter um produto competitivo e a ganhar
espaço no mercado.

As primeiras séries do Athlon slot A (K7), produzidas em versões de 500 a 700
MHz foram ainda produzidas em uma antiquada técnica de 0.25 micron, que
limitava pesadamente a freqüência de operação do processador. A partir de
novembro de 1999, o Athlon passou a ser produzido em uma técnica de 0.18
micron (K75), dando origem às versões de até 1.0 GHz.

A Athlon Thunderbird ainda é produzido em uma técnica de 0,18 micron, mas
ele traz como grande destaque o uso de cache L2 integrado, um verdadeiro
divisor de águas, que além de melhorar o desempenho do processador, baixou
os cursos de produção (e consequentemente o preço de venda), permitiu o
lançamento de versões com clock mais elevado e, ainda por cima, permitiu o
lançamento do Duron, que rapidamente substituiu os antigos K6-2 no posto de
processador de baixo custo.

O Thunderbird possui apenas 256 KB de cache L2, contra 512 KB do Athlon
antigo. A grande diferença é que nele o cache é integrado diretamente no
núcleo do processador e opera sempre à mesma freqüência que ele, o que
resulta em um ganho de desempenho muito grande. O cache L2 é
complementado por mais 128 KB de cache L1, que também opera à mesma
freqüência do processador, mas oferece tempos de latência mais baixos.

Em um Athlon slot A de 1.0 GHz, o cache L2 opera a apenas 333 MHz (1/3 da
freqüência do processador), enquanto em um Thunderbird da mesma
freqüência, ele opera a 1.0 GHz. Esta brutal diferença na freqüência do cache
cobre com lucro a perda resultante da diminuição do tamanho, fazendo com
que o Thunderbird seja mais de 10% mais rápido que o modelo antigo.

Outra diferença importante com relação ao cache do Thunderbird é que ele
passou a ser "exclusivo" ao invés de "inclusivo", como no Athlon antigo. Isso
faz com que o cache L1 armazene sempre dados diferentes dos armazenados
no cache L2, fazendo com que o processador realmente armazene 384 KB de
informações em ambos os caches. No cache inclusivo o Athlon antigo, o cache
L1 armazenava cópias de dados já armazenados no cache L2, fazendo com
que o processador armazenasse um total de 512 KB de dados em ambos os
caches:




                                                                          158
Slide da AMD que mostra o uso do cache exclusivo do Thunderbird

Com a simplificação no design do processador, o formato de cartucho deixou
de ser necessário, de forma que a AMD voltou a utilizar um encaixe em formato
de soquete, dando origem ao soquete A (também chamado de soquete 462),
utilizado na segunda geração de placas para o Athlon.

Ao contrário da Intel, que permitiu uma migração suave do slot 1 para o
soquete 370, desenvolvendo adaptadores e vendendo processadores em
ambos os formatos durante algum tempo, a AMD optou por fazer uma
migração abrupta, substituindo os processadores slot A pelos soquete A
rapidamente.

Esse movimento foi coordenado com os fabricantes de placas, que retiraram
rapidamente as antigas placas slot A do mercado e passaram a vender apenas
as placas soquete A, que foram vendidas até 2005.

A AMD chegou a produzir uma série do Thunderbird em formato slot A, que foi
vendida a alguns integradores que ainda tinham estoques de placas slot A,
mas essa foi uma série limitada, que não chegou a ser vendida diretamente ao
consumidor. Infelizmente não existe nenhum adaptador que permita instalar um
Thunderbird numa placa slot A, de forma que elas se tornaram obsoletas.




                                                                         159
Athlon Thunderbird espetado em uma placa soquete A

Como você pode ver, o Thunderbird não utiliza nenhum tipo de proteção sobre
o núcleo do processador. Isto melhora a dissipação do calor (já que não
existem intermediários entre o processador e o cooler), mas em compensação
torna o processador muito mais frágil. É preciso ter cuidado redobrado ao
instalar o cooler, para não trincar o núcleo do processador e você não deve
jamais ligar o micro sem encaixar o cooler corretamente, pois isso vai
literalmente torrar o processador. Não caia na tentação de "ligar o micro só pra
testar" antes de encaixar o cooler, pois depois de "testar" você vai precisar
comprar outro processador. :)

Em termos de performance, o Thunderbird supera um Pentium III Coppermine
do mesmo clock na maioria das aplicações. Em alguns testes o Pentium III era
mais rápido, mas no geral o Thunderbird se mostrava superior, apesar de ser
mais barato.

O verdadeiro concorrente do Thunderbird não foi o Pentium III, que já estava
em vias de ser descontinuado, mas sim as versões iniciais do Pentium 4 que,
apesar de possuírem um desempenho por ciclo de clock muito inferior,
trabalhavam a freqüências de clock muito mais elevadas, competindo na base
da força bruta.

Inicialmente o Thunderbird foi lançado em versões de 750, 800, 850, 900, 950
e 1000 MHz, utilizando sempre bus de 100 MHz (200 MHz, se levarmos em

                                                                            160
conta as duas transferências por ciclo do barramento EV6). Mais tarde, foram
introduzidas versões de 1.1, 1.2 e 1.3 GHz (ainda utilizando bus de 100 MHz)
e, em seguida, versões de 1.13, 1.2, 1.26, 1.33 e 1.4 GHz, utilizando bus de
133 MHz.

Ao contrário do que temos nos processadores Intel, não existia uma diferença
perceptível de desempenho entre as versões do Thunderbird com bus de 100 e
133 MHz, pois as placas da época, baseadas nos chipset VIA KT133 e SiS
730S, eram capazes de trabalhar com a memória operando de forma
assíncrona, com uma freqüência acima da do FSB. Desta forma, a memória
podia trabalhar a 133 MHz, mesmo ao utilizar um Thunderbird com bus de 100
MHz. Como o barramento EV6 utilizado pelo Athlon realiza duas transferências
por ciclo, havia banda mais do que suficiente para absorver os dados enviados
pela memória, mesmo a 100 MHz.

Em junho de 2000 foi lançado o Duron, que finalmente substituiu os antigos
K6-2 e K6-3 como processador de baixo custo.

A versão inicial do Duron, baseada no core Spitfire, é um descendente direto
do Athlon Thunderbird. Ambos compartilham a mesma arquitetura (incluindo os
128 KB de cache L1), mas o Duron vem com apenas 64 KB de cache L2,
apenas um quarto do usado no Thunderbird.

O Duron foi possivelmente o primeiro processador da história a vir com mais
cache L1 do que cache L2. Apesar de incomum, essa configuração de cache
funcionava muito bem, graças ao sistema de cache exclusivo introduzido pela
AMD no Thunderbird.

Graças a ele, o Duron podia armazenar dados diferentes em ambos os caches,
totalizando 192 KB de dados. O Celeron Coppermine, que era seu concorrente
direto, possuía 32 KB L1 e 128 KB de cache L2 e utilizava o sistema inclusivo,
onde o cache L1 armazenava cópias de dados já armazenados no cache L2.
Isso fazia com que o Celeron fosse capaz de armazenar apenas 128 KB de
informações em ambos os caches, um volume muito menor que o Duron.

O cache L2 do Duron contava com 16 linhas associativas (o mesmo número do
Thunderbird), contra 8 do Pentium III e 4 do Celeron. O maior número de linhas
de associação melhora bastante a eficiência do cache, agilizando o acesso aos
dados gravados e garantindo um melhor aproveitamento do espaço. O grande
problema é que o Celeron utilizava um barramento de 256 bits para acesso ao
cache L2, enquanto o Duron utilizava um barramento muito mais lento, com
apenas 64 bits. O barramento estreito anulava parte dos ganhos obtidos nos
outros quesitos.

Outra diferença em relação ao Celeron é que o Duron era realmente um
processador diferente, com menos transístores e produzido em fábricas
separadas, enquanto o Celeron Coppermine era um Pentium III com metade do
cache L2 desativado em fábrica. No início, esse artifício permitiu que a intel
aproveitasse um certo número de processadores Pentium III com defeitos no
cache, já que podia desativar a parte ruim e vendê-los como Celerons. Mas, a
partir de um certo ponto, o número de Celerons vendidos passou a superar em

                                                                          161
muito o número de processadores com defeito, de forma que a Intel precisava
realmente produzir um Pentium III completo, arcando com todos os custos,
para então desativar metade do cache e vendê-lo como um Celeron.

A partir deste ponto, a estratégia da AMD se revelou mais vantajosa. O Duron
Spitfire possui apenas 25 milhões de transístores, contra 37 milhões do
Thunderbird, resultando em uma redução quase que proporcional no custo de
produção. Os dois processadores eram produzidos em fábricas separadas e,
além da questão do cache, existia uma pequena diferença na técnica de
produção utilizada em cada um.

Tradicionalmente, os processadores utilizavam alumínio nos filamentos que
interligam os transístores. O alumínio é um material fácil de se trabalhar, que
não reage com o silício. Por outro lado, o alumínio não é um condutor tão bom
quanto o cobre, ouro, platina ou outros materiais mais "nobres".

O cobre é um bom sucessor, pois é um material barato e que pode ser aplicado
através das reações químicas usadas para construir um processador, ao
contrário do ouro, por exemplo. A grande dificuldade em utilizar cobre no lugar
do alumínio é que ele reage com o silício, tornando o processador imprestável
caso nada seja feito a respeito.

A IBM desenvolveu então uma técnica que permitia usar uma finíssima camada
de alumínio entre o silício e o filamento de cobre, isolando os dois materiais
(copper interconnects). O uso de cobre permite que o processador seja capaz
de operar a freqüências mais elevadas e manter-se estável trabalhando a
temperaturas mais altas.

Na época, a AMD possuía duas fábricas, situadas em Austin (Texas) e
Dresden (na Alemanha). A fábrica de Austin produzia apenas processadores
na técnica antiga, utilizando filamentos de alumínio, enquanto a de Dresden
produzia utilizando a técnica mais recente, com filamentos de cobre.

As versões mais rápidas do Athlon, começando com a série "AXIA" de 1.0 GHz
eram produzidas na fábrica de Dresden, enquanto as versões mais lentas do
Thunderbird, junto com o Duron, eram produzidas na fábrica de Austin.

Durante algum tempo, as séries do Thunderbird com filamentos de cobre se
tornaram uma febre entre os entusiastas, pois suportavam overclocks muito
maiores que os anteriores. Um Athlon AXIA de 1.0 GHz podia trabalhar
estavelmente a 1.5 GHz, o que era algo absolutamente espantoso para a
época.

Todos os processadores Athlon soquete A possuem alguns códigos
decalcados na parte superior do processador, na área que fica em contato com
o cooler. Na primeira linha vai o tradicional "AMD Athlon", enquanto a segunda
linha informa a freqüência do processador. A terceira linha traz justamente
informações sobre a série do processador.

A AMD utilizava um sistema de identificação bem simples para seus
processadores, utilizando um código de identificação de 4 dígitos. O primeiro
era a letra "A", de Athlon, enquanto os outros três mudavam de acordo com a

                                                                           162
série do processador. A mudança era sempre em ordem alfabética, o que
permitia diferenciar facilmente os processadores de fabricação mais recente.
Os "AXIA" (ou superiores) eram produzidos usando filamentos de cobre,
enquanto os anteriores, como a série "AFFA", utilizavam a técnica antiga. Os
códigos mudam de acordo com a família de processadores, por isso eles só
têm alguma serventia ao comparar dois processadores da mesma família (dois
Thunderbird, ou dois Palominos, por exemplo).

A quarta linha trazia mais uma letra de identificação, indicando a sub-série
(também classificada na ordem alfabética), como "K" ou "Y". Ela indicava
refinamentos na técnica de produção, de forma que os processadores de sub-
séries mais recentes oferecem margens de overclock um pouco maiores:




                 Athlon "AXIA" de 1.0 GHz, da sub-série "K"

Como em outros processadores, as possibilidades de overclocks não tinham
muito a ver com a freqüência do processador, mas sim com a série. Um Athlon
AXIA de 1.0 GHz e um Athlon AXIA de 1.33 GHz teriam um limite muito
parecido, em torno de 1.5 GHz, de forma que era vantajoso comprar o
processador mais barato.

Voltando ao Duron, a série inicial, baseada no Spitfire, foi composta por
modelos de 550 a 950 MHz, todos utilizando bus de 200 MHz e produzidos
utilizando filamentos de alumínio. As primeiras versões, sobretudo os de 600 e
650 MHz, suportavam overclocks generosos, atingindo facilmente os 900 MHz
(bastava aumentar a tensão do processador de 1.6V para 1.7V no setup). As
versões mais rápidas, por outro lado, trabalham com margens de overclock
muito mais estreitas, já que já operam muito mais próximo do limite da
arquitetura. O Duron Spitfire de 950 MHz, por exemplo, mal consegue
ultrapassar a barreira dos 1000 MHz com estabilidade.



                                                                          163
Athlon Palomino


O Palomino foi a quarta geração do Athlon, sucessor do Thunderbird. Ao
contrário do que muitos esperavam na época, o Palomino não foi uma versão
do Athlon produzida em uma técnica de 0.13 micron. Ele continuou sendo
produzido na fábrica de Dresden, utilizando a mesma técnica de 0.18 micron,
com filamentos de cobre, mas foram feitas uma série de modificações no
projeto, que reduziram o consumo e a dissipação térmica do processador em
cerca de 20%, permitindo que ele fosse capaz de operar a freqüências mais
altas.

Para efeito de comparação, um Palomino de 1.4 GHz consumia 62.8 watts,
contra 72 watts do Thunderbird da mesma freqüência. Pode parecer pouco,
mas essa pequena redução permitiu que o Palomino atingisse os 1.73 GHz,
uma freqüência de clock quase 20% maior que a versão mais rápida do
Thunderbird, que compartilhava a mesma técnica de produção.

Com relação ao desempenho, o Palomino trouxe duas modificações
importantes. A primeira foi a compatibilidade com as instruções SSE, que
haviam sido introduzidas pela Intel junto com o Pentium III. Quando o Palomino
foi lançado, em 2001, já existia uma grande quantidade de softwares
otimizados, de forma que houve um ganho imediato de desempenho em
relação ao Thunderbird. As instruções SSE da AMD foram chamadas de "3D-
Now! Professional".

A segunda melhoria foi um sistema aperfeiçoado de data prefetch, que
melhorou a eficiência dos caches, permitindo que o processador aproveitasse a
banda ociosa no barramento com a memória para carregar instruções e dados
que possuem uma grande probabilidade de serem utilizadas nos ciclos
seguintes. Com isso, o número de ciclos de processamento perdidos foi
reduzido, resultando em um pequeno ganho.

Outro pequeno avanço é um aumento nos endereços disponíveis no TLB
(Translation Lookaside Buffer). O TLB é uma pequena área de memória que
armazena os endereços necessários para que o processador possa buscar
dados na memória RAM, caso os mesmos não sejam encontrados nos caches.
O processador não tem como armazenar diretamente todos os endereços da
memória RAM, pois são realmente muitos. Ao invés disso, são armazenados
apenas os mais usados.

O problema é quando o processador precisa acessar uma informação qualquer
na memória RAM, cujo endereço não está carregado no TLB. Perde-se uma
verdadeira eternidade, pois primeiro será preciso carregar o endereço, para só
depois fazer o já lento acesso à memória. O aumento no número de endereços
disponíveis no TLB diminui a possibilidade destas "tragédias", permitindo mais
um pequeno ganho de desempenho.

Foi incluído ainda um diodo térmico, cuja função era proteger o processador,
desligando o sistema quando ele atingia uma certa temperatura limite. O diodo

                                                                          164
não evitava a queima caso você ligasse o processador sem o cooler, mas
oferecia alguma proteção adicional durante o uso normal do sistema.

O Palomino trouxe também suporte a multiprocessamento, possibilitando o
lançamento do Athlon MP e das primeiras placas dual-Athlon, como a Tyan
Tiger MPX. O Athlon MP era mais caro e operava a freqüências mais baixas
que as versões domésticas (as versões iniciais operavam a apenas 1.0 e 1.2
GHz), de forma a garantir a estabilidade do sistema em conjunto com o
segundo processador. Apesar disso, ele oferecia um desempenho muito bom
em aplicativos profissionais e servidores em geral.




 Dois Athlon MP, esperados em uma placa baseada no chipset AMD-760 MP

Inicialmente, o core Palomino foi utilizado na fabricação do Athlon MP e em
uma versão mobile do Athlon (chamada de "Mobile Athlon 4"), que utilizava a
versão inicial do PowerNow, o sistema de gerenciamento de energia que, mais
tarde, viria a ser incluído no Athlon 64.

Quando chegou a hora de lançar as versões destinadas a PCs domésticos, a
AMD chegou a ameaçar usar o nome "Athlon 4", mas depois mudou de idéia e
resolveu apelar para a marca "Athlon XP". Oficialmente o "XP" vem de
"Extreme Performance", mas na época pareceu óbvio que a idéia era pegar
carona no esforço de marketing da Microsoft feita em torno do Windows XP.

Ao invés de continuar vendendo o Athlon XP com base na freqüência de clock,
a AMD passou a utilizar um índice de desempenho que comparava o
desempenho do processador com o de um Pentium 4. Foram lançadas no total
7 versões do Athlon XP baseado no core Palomino, todas utilizando bus de 133
MHz: 1500+ (1.33 GHz), 1600+ (1.4 GHz), 1700+ (1.46 GHz), 1800+ (1.53
GHz), 1900+ (1.6 GHz), 2000+ (1.66 GHz) e 2100+ (1.73 GHz).

Como você pode notar, a cada aumento de 100 pontos no índice, a AMD
aumentava apenas 66 MHz na freqüência do processador, o que foi
progressivamente minando a credibilidade do índice. O XP 1500+ superava
com facilidade um Pentium 4 Willamette de 1.5 GHz, que operava a uma

                                                                         165
freqüência apenas 166 MHz maior, mas quando chegou no 2000+, o
Willamette passou a ganhar em muitas aplicações. A situação se tornou mais
grave com o lançamento do Northwood, que era até 10% mais rápido que um
Willamette do mesmo clock.

A partir do Athlon XP, a AMD passou a utilizar um novo encapsulamento,
composto de resinas plásticas, gradualmente substituindo o antigo
encapsulamento de cerâmica, usado desde os primeiros chips. Embora o termo
"resinas plásticas" não inspire muita confiança, o encapsulamento é bastante
resistente e permitiu uma precisão muito maior no posicionamento do núcleo
do processador, dos filamentos de conexão e também dos capacitores
responsáveis por estabilizar o fornecimento elétrico do processador. Tudo isso
contribuiu para permitir o lançamento das versões mais rápidas do Palomino.
Alguns processadores foram fabricados na cor verde e outros na cor marrom,
mas esses são detalhes estéticos que não têm relação com a performance do
processador.




                  Athlon XP com o encapsulamento plástico

Concluindo, o Palomino deu origem à segunda geração do Duron, o Duron
Morgan. Ele ainda era produzido na mesma técnica de 0.18 micron utilizando
filamentos de alumínio e mantendo o antigo encapsulamento de cerâmica, mas
as melhorias introduzidas com o Palomino ajudaram o Morgan a atingir
freqüências mais altas.

Enquanto o Spitfire estacionou nos 950 MHz, o Morgan foi lançado em versões
de 900, 950, 1000, 1100, 1200 e 1300 MHz, todas utilizando bus de 100 MHz.
O suporte às instruções SSE e as demais melhorias também trouxeram ganhos

                                                                          166
de até 7%, se comparado com um Spitfire do mesmo clock. Em alguns
benchmarks, como no caso do SYSMark 2001 (overall performance), o suporte
a SSE sozinho chegava a representar um ganho de mais de 10%.

Com os reforços, o Duron superou de vez os Celerons soquete 370 e começou
a concorrer com as versões mais lentas do Pentium 4. Na época a Intel ainda
não tinha um processador de baixo custo competitivo (já que estava
descontinuando o Celeron baseado no Pentium III e ainda não havia lançado o
Celeron baseado no Northwood), de forma que a AMD aproveitou o ambiente
favorável para baixar os preços e aumentar sua participação no mercado. Na
época, o Duron de 700 MHz (baseado no Spitfire) chegou a ser vendido por
menos de US$ 25.

Mesmo visualmente, existem algumas diferenças entre os dois. No Spitfire o
núcleo do processador fica na horizontal, enquanto no Morgan fica na vertical.
Veja que também mudou a disposição dos gold fingers do processador (usados
para alterar o multiplicador ao fazer overclock):




                   Duron Spitfire e Duron Morgan (à direita)

Uma curiosidade é que, ao contrário do Palomino (que consome menos
energia que um Thunderbird da mesma freqüência), o Morgan consome na
verdade mais energia que um Spitfire. Isto acontece porque o Spitfire utilizava
tensão de 1.6V, enquanto que o Morgan utiliza 1.75V. O aumento na tensão
anulou a redução de consumo trazido pela arquitetura e ainda reverteu em
prejuízo. Por já trabalharem a uma tensão elevada e já operarem muito
próximos dos limites da plataforma, os Durons com core Morgan são ruins de
overclock. Na época, as melhores opções eram as versões de baixo clock do
Athlon, incluindo o XP 1500+.




                                                                           167
Athlon Thoroughbred


Com a arquitetura de 0.18 micron atingindo seu limite com o Palomino de 1.73
GHz, a AMD se apressou em terminar a atualização de suas fábricas e assim
iniciar a fabricação dos processadores baseados na técnica de 0.13 micron.

O primeiro foi o Thoroughbred, uma versão modernizada do Palomino, que
manteve os mesmos 256 KB de cache L2 e demais características, mas que
oferecia uma dissipação térmica muito mais baixa e era assim capaz de
trabalhar a freqüências de clock mais elevadas, o que era uma boa notícia
tanto para quem queria processadores mais rápidos quanto para quem queria
processadores bons de overclock. Para efeito de comparação, um
Thoroughbred de 1.6 GHz consome 52.5 watts, contra 68 watts de um
Palomino da mesma freqüência.

Existiu uma redução de 1% no número de transístores, mas ela foi causada por
pequenas otimizações feitas durante a transição no processo de fabricação,
sem efeito sobre o desempenho. Utilizando a mesma placa-mãe e os mesmos
módulos de memória, um Thoroughbred e um Palomino do mesmo clock
possuem rigorosamente o mesmo desempenho.

O Thoroughbred original foi produzido em versões de 1.46 a 1.8 GHz, dando
origem ao Athlon XP 2200+ (1.8 GHz). Foram lançadas ainda as versões
1700+ (1.46 GHz), 1800+ (1.53 GHz), 1900+ (1.6 GHz) e 2000+ (1.66 GHz) e
2100+ (1.73 GHz), destinadas a substituir os antigos Palominos.

Uma forma simples de diferenciar os primeiros Thoroughbreds dos antigos
Palominos é observar a posição dos capacitores incluídos no encapsulamento
do processador. Nos Palominos os capacitores são posicionados na face
inferior do processador, enquanto no Thoroughbred eles foram movidos para a
face superior.

Outra diferença visível é que, graças à técnica de 0.13 micron, o núcleo o
Thoroughbred é muito menor que o do Palomino. O Thoroughbred ocupa uma
área de 80 mm², enquanto o Palomino ocupa 128 mm², cerca de 60% maior. A
diferença salta à vista ao colocar os dois processadores lado a lado:




                                                                         168
Athlon Thoroughbred (à esquerda) e Athlon Palomino

Além da questão estética, a redução no tamanho físico do processador
representou uma grande economia de custos para a AMD, que passou a ser
capaz de produzir 60% mais processadores utilizando o mesmo número de
waffers. Isso fez com que, depois de atualizadas as fábricas e solucionados os
entraves inicias, os Palominos fossem rapidamente descontinuados.

Todas as versões iniciais do Thoroughbred utilizavam bus de 133 MHz, por
isso mantinham a compatibilidade com a maioria das placas antigas. O único
empecilho era a tensão, que passou a ser de 1.5, 1.6 ou 1.65v (variando de
acordo com o clock e a revisão do processador), contra os 1.75v utilizados pelo
Palomino. Devido a isto, muitas placas precisavam de atualizações de BIOS.
Como de praxe, algumas placas antigas não eram compatíveis, devido a
limitações dos reguladores de tensão, ou incompatibilidades diversas.

Em agosto de 2002 a AMD lançou uma atualização do core Thoroughbred,
batizada de "Thoroughbred-B". Embora mantivesse a mesma arquitetura e
fosse produzida utilizando o mesmo processo de fabricação, ela tinha 400 mil
transístores a mais e utilizava uma camada metálica adicional (totalizando 9),
incluída de forma a melhorar a comunicação entre os componentes internos do
processador e assim permitir que ele fosse capaz de atingir freqüências mais
altas.

O core Thoroughbred-B foi utilizado nos Athlon XP 2400+ (2.0 GHz) e 2600+
(2.13 GHz), que ainda utilizavam bus de 133 MHz e mais adiante nos modelos
2600+ (1.83 GHz), 2700+ (2.17 GHz) e 2800+ (2.25 GHz), que passaram a
utilizar bus de 166 MHz (333). Devido à mudança na freqüência do barramento,
estas três versões exigiam uma placa-mãe atualizada, como as baseadas nos
chipsets VIA KT333, nVidia nForce2 ou SiS 745. Muitas das placas antigas,
baseadas nos chipsets VIA KT266A e SiS 735 suportavam trabalhar com FSB
a 166 MHz em overclock, de forma que também podiam ser usadas em
conjunto com as novas versões.

                                                                           169
O Thoroughbred deu origem à terceira geração do Duron, o Applebred,
lançado em agosto de 2003, em versões de 1.4, 1.6 e 1.8 GHz (todas utilizando
bus de 133 MHz e tensão de 1.5). O Applebred foi o suspiro final do Duron,
antes que ele fosse substituído pelo Sempron.

Por manter os mesmos 64 KB de cache L2, o Duron Applebred não oferecia
nenhum ganho de desempenho em relação a um Morgan do mesmo clock. O
uso da arquitetura de 0.13 micron e do encapsulamento plástico serviram
apenas para permitir que ele fosse capaz de operar a freqüências mais altas.
Um detalhe que chama a atenção é que o Duron Applebred é exatamente igual
ao Athlon Thoroughbred, incluindo o tamanho do núcleo do processador,
encapsulamento e posição dos capacitores. Se não fosse pela etiqueta de
identificação, você não seria capaz de diferenciar um do outro visualmente:




              Athlon Thoroughbred e Duron Applebred (à direita)

A explicação é que, diferentemente do Spitfire e do Morgan, que eram
realmente produzidos em uma linha separada, o Applebred era um
Thoroughbred com três quartos do cache L2 desabilitado em fábrica, assim
como no caso do Celeron. Aparentemente, o núcleo de 80 mm² do
Thoroughbred era barato de se produzir, de forma que a AMD não se deu ao
trabalho de criar uma versão separada do processador.

Por ser muito barato, o Duron Applebred foi a opção preferida entre os PCs de
baixo custo durante toda a sua vida útil. Era possível inclusive fazer overclocks
relativamente grandes aumentando a tensão do processador de 1.5v para
1.65v (a mesma utilizada pelo Thoroughbred). Dependendo do cooler usado, o
Duron de 1.6 GHz era capaz de trabalhar estavelmente a 2.0 GHz (utilizando
bus de 166 MHz) ou mesmo 2.1 GHz (com bus de 174 MHz, suportado por
muitas placas).




                                                                             170
Athlon Barton


O Barton é uma versão do Thoroughbred-B com 512 KB de cache. É
interessante notar que os 256 KB adicionais de cache adicionaram quase 17
milhões de transístores ao processador (totalizando 54.3 milhões, contra 37.6
milhões do Thoroughbred-B), mas aumentaram a área do processador em
apenas 21 mm², totalizando apenas 101 mm².

A princípio, poderia parecer que a AMD decidiu utilizar um cache mais lento,
como no caso do Pentium 4 com core Prescott, mas isso felizmente não
aconteceu. O Barton mantém o mesmo cache com 16 linhas de associação e
os mesmos tempos de acesso, de forma que não existem "poréns" na nova
arquitetura. O Barton é realmente mais rápido que um Thoroughbred em todas
as situações, variando apenas a percentagem.

Como o Barton mantém os 128 KB de cache L1 e mantém o uso do sistema
exclusivo, ele é capaz de armazenar até 640 KB de dados em ambos os
caches, um número nada desprezível. Apesar disso, o ganho de desempenho
em relação ao Thoroughbred é relativamente pequeno se comparado com o
ganho do Pentium 4 Northwood sobre o Willamette, por exemplo, já que o
Athlon já possuía um sistema de caches mais equilibrado, sem grandes
gargalos.

Os maiores beneficiados pelo cache maior são os games 3D. Utilizando uma
placa 3D rápida (onde o gargalo passe a ser o processador), o UT2003 roda
com um FPS 9% maior, enquanto no Comanche 4 o ganho é de 7%. A maioria
dos aplicativos de produtividade roda com ganhos modestos, de 3 a 6%.
Apesar disso, o cache foi uma boa adição, que ajudou a tornar o processador
mais equilibrado, sem aumentar o custo de forma considerável.

O Barton foi inicialmente lançado em três versões: 2500+ (1.83 GHz), 2800+
(2.08 GHz) e 3000+ (2.16 GHz). As três utilizavam bus de 166 MHz e
mantinham compatibilidade com as placas anteriores, já que o Barton utilizava
os mesmos 1.65v de tensão do Thoroughbred.

Mais adiante foram lançados os modelos 3000+ (agora a 2.1 GHz) e 3200+
(2.2 GHz). Estas duas versões utilizavam bus de 200 MHz, o que demandava
uma placa-mãe compatível. Uma observação é que o Barton 3000+ de 2.1 GHz
era levemente mais lento que o de 2.16 GHz, pois o aumento de 33 MHz na
freqüência do barramento não era suficiente para compensar a diminuição de
66 MHz no clock do processador. Devido ao grande cache L2, o Barton era
menos dependente do barramento com a memória, de forma que aumentar a
freqüência do FSB tinha pouco efeito sobre o desempenho.

Outra questão é que o XP 2800+ baseado no Thoroughbred-B (que operava a
2.25 GHz) era capaz de superar o Barton 3000+ (que operava a 2.1 ou 2.16
GHz) em alguns aplicativos e benchmarks, (como, por exemplo, o teste
Content Creation do Winstone 2003), já que, embora com menos cache, o
clock do processador era maior. Como disse, o Barton ganha de um

                                                                          171
Thoroughbred do mesmo clock em todas as aplicações, mas comparações
entre processadores de clocks diferentes podem sempre revelar surpresas.

O Barton 3000+ competia de igual para igual com o Pentium 4 Northwood de
3.06 GHz, embora a briga fosse apertada, com o Northwood ganhando em
muitas aplicações. De uma forma geral, o Barton dominava os aplicativos de
escritório e de produtividade e, embora com uma margem menor, também na
maioria dos games. O Northwood, por sua vez, ganhava nos aplicativos de
compressão de áudio e vídeo e também em alguns aplicativos profissionais.

O Barton 3200+ acabou sendo o topo da evolução entre os processadores
AMD de 32 bits, marcando o final da era dos processadores soquete A. Depois
disso, a Intel entrou em seu período negro, andando para o lado com o core
Prescott, enquanto a AMD tomou a dianteira lançando os processadores de 64
bits. Esse foi o período de maior crescimento da AMD, onde, mesmo
trabalhando com margens de lucro mais folgadas, chegou ao ponto de superar
as vendas da Intel. Em 2006 a balança voltou a pender novamente para o lado
da Intel, com o lançamento do Core 2 Duo e os cortes de preços nos
processadores antigos. Ao longo de 2007, a Intel recuperou boa parte do
terreno perdido, enquanto a AMD se defendia reduzindo os preços dos
processadores, assim como na época do K6-2.

Mas, voltando ao Barton e suas variações, temos também uma versão com
metade do cache L2 desabilitado (provavelmente modelos com defeitos no
cache, onde era aproveitada a metade boa), batizada de Thorton. Ele foi
vendido em quantidades limitadas, com freqüências de 1.6 GHz (2000+) a 2.2
GHz (3100+). O índice de desempenho era calculado de forma diferente do
Barton, já que com metade do cache desabilitado, o desempenho do Thorton
era idêntico ao de um Thoroughbred do mesmo clock.

Com o lançamento do Athlon 64 e da plataforma soquete 754, o Athlon XP se
tornou um processador de baixo custo dentro da linha da AMD. O problema é
que essa posição já era ocupada pelo Duron, de forma que o Athlon XP acabou
ficando no meio, atrapalhando tanto as vendas do Athlon 64, quanto do Duron.

Para colocar ordem na casa, a AMD decidiu descontinuar tanto o Duron quanto
o Athlon XP em 2004, dando origem ao Sempron, sua nova linha de
processadores de baixo custo.

O Sempron soquete A nada mais é do que um Athlon Thoroughbred-B, Thorton
ou Barton, vendido sob um índice de desempenho um pouco "afrouxado", onde
o índice dos processadores foi aumentado em de 100 a 200 pontos, sem que
fossem feitas mudanças na arquitetura. Basicamente, a AMD usou a linha para
vender todos os processadores soquete A que ainda tinha em estoque,
aproveitando enquanto havia procura.

A versão 2800+, por exemplo, era na verdade um Thorton, operando a apenas
2.0 GHz, enquanto o 3300+ era um Barton operando a 2.2 GHz. A explicação
oficial é que no Sempron o índice passou a ser calculado em relação ao
desempenho do Celeron D (que seria seu concorrente direto) e não mais em
relação ao Pentium 4.

                                                                         172
Sempron 2600+ baseado no core Thoroughbred-B

Os Semprons soquete A conviveram com os processadores soquete 754 por
algum tempo, até que a plataforma soquete A foi finalmente descontinuada.

Athlon 64


Todos os processadores Intel e AMD, do 386 ao Athlon, são chamados
genericamente de "processadores x86", deixando claro que apesar de todas as
diferenças de arquitetura, eles são compatíveis com o mesmo conjunto básico
de instruções. É graças a isso que temos um número tão grande de softwares,
acumulados ao longo de mais de duas décadas, que continuam funcionando
nos PCs atuais. Com exceção da questão dos drivers, você poderia
perfeitamente rodar o DOS e o Windows 3.11 em um Pentium 4, por exemplo.

Duas grandes limitações da plataforma x86 são o pequeno número de
registradores e o suporte nativo a apenas 4 GB de memória RAM, limitação
compartilhada por todos os processadores de 32 bits.

Os registradores são pequenos espaços de memória utilizados pelo
processador para armazenar informações que serão usadas para processar a
instrução seguinte. Você pode pensar nos registradores como uma espécie de
"cache L0". Eles estão muito próximos das unidades de execução do
processador e por isso as informações podem ser acessadas imediatamente,
mas em troca eles são incrivelmente limitados em tamanho. A arquitetura x86
prevê o uso de apenas 8 registradores, com 32 bits cada um. Ou seja, todos os
registradores somados armazenam apenas 8 bytes de dados.


                                                                          173
Não é possível adicionar mais registradores facilmente, pois softwares escritos
para utilizarem os registradores adicionais não seriam mais compatíveis com
os processadores antigos. A solução encontrada foi utilizar o recurso chamado
"register renaming" onde o processador possui um número maior de
registradores, mas apenas 8 são visíveis. Os demais são gerenciados de forma
dinâmica pelo processador, que vai chaveando entre eles conforme novas
informações são necessárias. Essa técnica ameniza os problemas de
desempenho causados pelo pequeno número de registradores, mas não
soluciona a questão completamente.

Com relação à memória, o limite de 4 GB se tornou uma limitação séria em
algumas áreas a partir da época do Pentium 1. A solução veio na forma do
PAE (Physical Address Extension), um hack (originalmente desenvolvido pela
Intel) que está disponível na maior parte dos processadores a partir do Pentium
Pro. O PAE consiste numa segunda tabela de endereços, com 4 bits
adicionais, que permitem endereçar 16 páginas de memória, cada uma com 4
GB.

Com o PAE, passa a ser possível endereçar até 64 GB de memória. A
desvantagem é que o processador continua sendo capaz de acessar apenas 4
GB por vez e o chaveamento entre diferentes páginas de memória toma um
certo tempo, o que acaba prejudicando bastante o desempenho. Ou seja,
assim como no caso do register renaming, o PAE ameniza o problema, mas
não o soluciona completamente.

A única forma de solucionar de vez as duas questões, assim como um conjunto
de outros problemas comuns a todos os processadores de 32 bits, era
desenvolver uma nova nova arquitetura, composta agora por processadores de
64 bits.

Desenvolvendo um sucessor


Em primeiro lugar, precisamos definir o que são processadores de 64 bits e
quais são as vantagens sobre os de 32. Processadores de 64 bits não são
duas vezes mais rápidos nem processam (necessariamente) o dobro de dados
por ciclo de clock. A grande vantagem dos processadores de 64 bits é que eles
são capazes de trabalhar com endereços de memória de 64 bits, o que permite
endereçar muito mais do que 4 GB de memória RAM. Temos também um
aumento no tamanho dos registradores, que passam a armazenar 64 bits de
informações, em vez de 32, o que representa um pequeno ganho de
desempenho.

Outro benefício (embora menos significativo) é que eles são capazes de
processar números inteiros de até 64 bits, ao invés de 32. Isto oferece ganhos
de desempenho em algumas áreas específicas (como, por exemplo, softwares
de encriptação e alguns aplicativos científicos) mas não ajuda muito nos
aplicativos do dia-a-dia. Processadores de 32 bits podem processar números
inteiros de 64 bits, mas eles precisam ser divididos em duas instruções
separadas, o que naturalmente toma mais tempo.


                                                                           174
Com relação ao processamento de números de ponto flutuante, não existe
ganho, pois os co-processadores aritméticos utilizados nos processadores
atuais já são capazes de processar números de ponto flutuante de 64 bits e
vetores de 128 bits. Nestas duas áreas não existe um ganho direto, já que a
transição foi feita há muito tempo.

Itanium


A primeira tentativa de criar um sucessor de 64 bits para a plataforma x86 veio
da Intel, que em 2001 lançou o Itanium, um processador de 64 bits destinado a
servidores.

O Itanium quebra a compatibilidade com a família x86, passando a utilizar o IA-
64, um novo conjunto de instruções. O plano inicial era popularizar a
arquitetura primeiro nos servidores, onde os benefícios de um processador de
64 bits são mais evidentes, e em seguida lançar também versões destinadas a
desktops. O problema com o Itanium (além do processador ser muito caro) era
que não existiam softwares capazes de se beneficiar da nova plataforma. Ele
incluía um sistema de emulação, que permitia rodar softwares de 32 bits, mas
neste caso o desempenho era muito ruim.

As duas versões iniciais do Itanium operavam a 733 e 800 MHz. Elas foram
seguidas pelas diferentes versões do Itanium 2, vendidas em versões de 900
MHz a 1.67 GHz, incluindo versões dual-core. A Intel continua investindo no
desenvolvimento do Itanium, lançando novas versões, mas o futuro da
plataforma é incerto.




                                  Itanium 2



                                                                           175
x86-84 (AMD64)

Ao invés de repetir o mesmo erro da Intel, lançando uma plataforma
completamente nova, incompatível com os softwares atuais, a AMD decidiu
desenvolver um projeto mais simples, que adicionasse suporte a instruções de
64 bits no Athlon (incluindo novos registradores, suporte a endereços de
memória de 64 bits, etc.) sem entretanto quebrar a compatibilidade com os
softwares de 32 bits, nem prejudicar o desempenho do processador ao
executá-los.

Com isso chegaram a um processador de 64 bits, que desfruta de um número
maior de registradores e maior capacidade de endereçamento de memória,
mas que é capaz também de rodar aplicativos de 32 bits nativamente, sem
perda de desempenho.

Este slide de apresentação da AMD mostra os novos registradores
adicionados. Os 8 registradores x86 foram expandidos de 32 para 64 bits e
foram adicionados 8 novos registradores de 64 bits, o que resultou em um
espaço de armazenamento 4 vezes maior. Foram adicionados ainda 8 novos
registradores para instruções SSE ou SSE2, mas neste caso não houve
expansão, já que o SSE utiliza registradores de 128 bits:




                         Novos registradores x86-64

No modo "legacy", o processador funciona como um processador x86 comum,
executando instruções de 32 bits e utilizando apenas os registradores padrão.
Ao mudar para o modo "long", o processador tem acesso a 16 registradores de
64 bits cada um e passa a suportar as instruções e endereços de memória de
64 bits. O chaveamento entre os dois modos é feito de maneira muito rápida,
de forma que o processador pode inclusive rodar aplicativos de 32 bits dentro
de um sistema operacional de 64 bits, assim como era possível rodar
                                                                          176
aplicativos DOS ou Windows 3.x (de 16 bits) dentro do Windows 98 (que já era
um sistema de 32 bits).

O conjunto de instruções da AMD foi batizado de x86-64 (e posteriormente
renomeado para AMD64) e acabou sendo adotado também pela Intel, na forma
do EM64T, um conjunto compatível, incluído sem muito alarde a partir do
Pentium 4 com core Prescott. Pela primeira vez na história, a AMD ditou o novo
padrão e a Intel se viu obrigada a segui-lo.

Ao utilizar um processador Athlon 64 ou um Intel equipado com o EM64T,
existem 3 possibilidades.

A primeira é continuar usando as versões de 32 bits do Windows XP, Vista ou
Linux, utilizando apenas aplicativos de 32 bits. Neste modo o processador se
beneficia do controlador de memória integrado (no caso dos AMD) e outras
melhorias na arquitetura, mas não utiliza os novos registradores, nem é capaz
de endereçar mais do que 4 GB de memória nativamente.

A segunda possibilidade é utilizar um sistema operacional de 64 bits, como as
versões de 64 bits do XP, Vista e de diversas distribuições Linux. Neste caso
você tem um pequeno ganho de desempenho devido ao uso dos novos
registradores e o processador passa a suportar mais de 4 GB de memória
RAM. A maior parte dos aplicativos não exibe grandes ganhos de desempenho
ao serem recompilados para rodarem em modo 64 bits, mas alguns (sobretudo
bancos de dados) podem obter 15 ou mesmo 20% de ganho de desempenho
em alguns casos.

A grande dificuldade em utilizar um sistema de 64 bits é encontrar versões
nativas de todos os aplicativos. Chegamos então à terceira possibilidade, que é
rodar um sistema de 64 bits, mas utilizar o modo de compatibilidade para
executar aplicativos de 32 bits quando necessário. Neste modo, o sistema
operacional precisa de mais memória, pois acaba tendo que manter carregadas
muitas bibliotecas e componentes duplicados, mas o desempenho do
processador não é prejudicado.

Como vimos, os aplicativos de 32 bits podem utilizar apenas 4 GB de memória
(menos na prática, devido à limitações por parte dos sistemas operacionais).
Um efeito colateral interessante é que, em um PC com 8 GB de memória, por
exemplo, os aplicativos de 32 bits enxergarão e utilizarão apenas os primeiros
4 GB. A memória adicional poderá ser usada pelo sistema operacional e
aplicativos de 64 bits, mas não ajudará muito em casos em que os aplicativos
de 32 bits sejam os aplicativos principais.

Com relação à memória, os processadores AMD64 são capazes de endereçar
até 1 terabyte de memória física, o que corresponde a 40 bits de endereços. Os
64 bits completos não são usados por questões relacionadas ao desempenho,
já que não existem módulos e placas que permitam utilizar tanta memória
atualmente.

Apesar de o AMD64 reservar "apenas" 40 bits para o endereçamento da
memória física, estão disponíveis 48 bits de endereçamento para o virtual
address space, o que permite endereçar até 256 terabytes. Esse limite não tem
                                                                           177
apenas a ver com o uso de memória swap, mas indica o volume total de
memória que o processador é capaz de endereçar, incluindo não apenas a
memória RAM, mas também a memória da placa de vídeo (e outros
dispositivos) e está relacionado também com o suporte a arquivos grandes,
como bancos de dados. Você poderia imaginar esses dois limites em ação no
caso de um grande servidor, com muita memória RAM e diversos HDs em
RAID, que armazenam um grande banco de dados.

Quando criamos um array RAID, o sistema passa a enxergar um único e
grande disco, ao invés de vários HDs separados, de forma que podemos usar
todo o espaço somado para armazenar um único e gigantesco arquivo. Com o
sistema de endereçamento do AMD64, o nosso hipotético servidor poderia ter
até 1 TB de memória RAM, e o sistema operacional seria capaz de gerenciar
um banco de dados de até 256 TB espalhado pelos diversos HDs, sem que
fosse necessário recorrer a truques ou gambiarras para aumentar o espaço de
endereçamento, como é necessário ao acessar mais do que 4 GB de RAM, ou
gerenciar arquivos maiores do que 4 GB em um processador de 32 bits.

Quando esse limite se tornar um empecilho, daqui a talvez mais uma década,
novas revisões dos processadores podem estender os limites de
endereçamento para 56 ou mesmo 64 bits completos, permitindo gerenciar
volumes virtualmente ilimitados de endereços.

Esta tabela, divulgada pela AMD, mostra os diferentes modos de operação
suportados. Note que, além dos três modos que citei (64-Bit mode, que
corresponde ao modo de 64 bits nativo; Compatibility Mode, onde são usados
aplicativos de 32 bits, sob um sistema operacional de 64 bits e Protected Mode,
onde são executados um sistema operacional e aplicativos de 32 bits) existe
suporte também ao modo Virtual-8086 e ao Real Mode, que são os modos de
legado, também suportados pelos processadores atuais. Neles o processador
executa aplicativos de 16 bits, escritos para o DOS ou Windows 3.x:




                                                                           178
Modos de operação dos processadores x86-64

Tenha em mente que a migração para os aplicativos de 64 bits é similar à
migração dos sistemas operacionais de 16 bits (DOS e Windows 3.x) para os
sistemas de 32 bits que ocorreu a partir de 1995. Ela acontecerá de maneira
gradual, de forma que daqui a 10 anos ainda estaremos rodando alguns
aplicativos de 32, ou mesmo de 16 bits, utilizando o modo de compatibilidade.

A arquitetura K8


Além do x86-64, a arquitetura K8, compartilhada por todos os processadores
de 64 bits da AMD, inclui um circuito de branch-prediction sensivelmente
melhorado, com um global history counter 4 vezes maior que o do Athlon K7.

O global history counter é a área reservada a armazenar os resultados de
operações processadas anteriormente. Estas informações são utilizadas como
base de consulta pelo circuito de branch prediction na hora de decidir qual
caminho deve tomar dentro de uma operação de tomada de decisão.

Outro recurso, possivelmente o mais famoso, é o controlador de memória
integrado, chamado de IMC (Integrated Memory Controller). Tradicionalmente,
o controlador de memória faz parte do chipset e opera à mesma freqüência que
ele. O processador se comunica com o chipset através do Front Side Bus (o
barramento principal) e ele (o FSB) é utilizado para todo o tráfego, incluindo a
leitura e gravação de dados na memória

Ao mover o controlador de memória para dentro do processador, a AMD foi
capaz de reduzir sensivelmente o tempo de latência nos acessos à memória,
aumentando assim o desempenho do processador em alguns pontos. Nos
processadores baseados na arquitetura K8, o processador é ligado diretamente
às trilhas da placa-mãe que levam aos pentes de memória, e a comunicação
                                                                            179
com o chipset é feita através de um barramento HyperTransport. No caso de
sistemas com dois processadores em SMP (como no caso de servidores
equipados com o Opteron), barramentos HyperTransport adicionais fazem a
ligação entre os processadores.




O Athlon 64 não utiliza mais um barramento frontal, como nos processadores
antigos, mas sim um link HyperTransport que liga o processador ao chipset.
Existe um clock de referência de 200 MHz, que substitui o FSB, gerando a
freqüência do processador, da memória e do próprio barramento
HyperTransport. Tecnicamente, seria incorreto dizer que um Athlon 64 ou
Sempron utiliza "200 MHz de FSB", já que ele não possui FSB e os 200 MHz
são apenas a freqüência de referência, mas para manter as coisas simples,
vou continuar usando o termo "FSB" para descrever o clock da freqüência de
referência daqui em diante.

O HyperTransport é um barramento ponto a ponto, muito similar ao PCI
Express sob diversos pontos de vista. A principal idéia é criar um barramento
bastante rápido e de baixa latência utilizando poucas trilhas de dados.

Um link HyperTransport é sempre bidirecional, composto por dois links com de
2 a 32 bits de largura cada. Os dados são transmitidos duas vezes por ciclo
(como nas memórias DDR) e a freqüência de operação pode ser de 200 MHz a
2.6 GHz. Só para efeito de comparação, o barramento PCI opera a apenas 33
MHz, com apenas uma transferência por ciclo; isso faz com que a velocidade
de transmissão seja muito baixa para os padrões atuais (apenas 133 MB/s),
mesmo com o barramento transmitindo 32 bits de dados por ciclo.



                                                                          180
O padrão HyperTransport é desenvolvido por um conjunto de fabricantes, por
isso é utilizado em diversos dispositivos, indo do Xbox da Microsoft a
roteadores da Cisco. Os chipsets nForce, para placas soquete A, por exemplo,
já utilizavam o HyperTransport para interligar a ponte norte e a ponte sul do
chipset bem antes do Athlon 64 ser lançado.

No caso dos processadores AMD64, são utilizados links com 16 bits de largura
em cada direção (16 pares), operando a 800 MHz (nas placas soquete 754) ou
1.0 GHz (nas placas soquete 939, 940 e AM2). Como são realizadas duas
transferências por ciclo, podemos dizer também que a freqüência "efetiva" é de
(respectivamente) 1.6 GHz e 2.0 GHz

As placas AM3, cujo lançamento está previsto para 2008, trarão um
barramento atualizado, capaz de operar a 2.0 GHz (4.0 GHz efetivos). Esta
expansão não traz ganhos diretos, já que apenas aumenta a banda disponível
para a comunicação entre o processador e o chipset, sem influenciar na
velocidade dos demais componentes. Ela serve apenas para evitar potenciais
gargalos no futuro, conforme novos dispositivos e barramentos forem sendo
incorporados.

Com 16 bits de largura e operando a 800 MHz, com duas transferências por
ciclo, temos um total de 6.4 GB/s de transferência de dados (3.2 GB/s em cada
direção), o que é uma marca espantosa. Ao aumentar a freqüência para 1.0
GHz, a taxa de transmissão sobe para 8 GB/s e, ao atingir 2.0 GHz, a taxa
sobe para nada menos do que 16 GB/s.

Apesar da brutal taxa de transferência, o link HyperTransport é composto por
um número relativamente pequeno de trilhas na placa-mãe. Em muitas placas,
é possível ver claramente as trilhas do HyperTransport ligando o processador
ao chipset:




                                                                          181
Trilhas referentes ao barramento HyperTransport interligando o processador
                      e o chipset em uma placa da EPOX

Continuando, temos a questão do gerenciamento de energia. Com exceção do
Sempron 2800+, todos os processadores da linha Athlon 64 suportam o
Cool'n'Quiet, um sistema de gerenciamento de energia bastante eficiente que,
assim como o SpeedStep da Intel e o PowerNow usado pela AMD nos
processadores mobile, é capaz de ajustar a freqüência de operação do
processador de forma dinâmica de acordo com o uso. A principal diferença
entre o Cool'n'Quiet e o PowerNow é que ele é otimizado para uso em
desktops, de forma que utiliza um sistema menos agressivo de gerenciamento,
que tem como prioridade não prejudicar o desempenho.

Um Athlon 64 3500+, por exemplo, pode trabalhar a 2.2 GHz (a freqüência
normal), 2.0, 1.8 ou 1.0 GHz, de acordo com os aplicativos em uso. Operando
na freqüência mínima, a tensão do processador cai de 1.4 para 1.1V, gerando
uma economia adicional. No final, um Athlon 64, baseado no core Venice, ou
mais atual, chega a consumir menos de 10 watts quando ocioso, operando na
freqüência e tensão mínimas.

Como a freqüência do processador muda muito rapidamente, de acordo com a
demanda (segundo a AMD, até 30 vezes por segundo), você mal percebe a
redução de clock. Demora exatamente o mesmo tempo para ripar um DVD,
renderizar uma imagem 3D, aplicar um filtro no Photoshop, pois logo que o
processador percebe o aumento na demanda de processamento, passa a
operar na freqüência máxima automaticamente.

As áreas em que você acaba percebendo alguma perda são justamente nas
operações mais simples e rápidas, como chavear entre as janelas e abrir

                                                                         182
menus dentro dos programas. Estas operações são muito rápidas para disparar
o aumento na freqüência, de forma que, se prestar atenção, você realmente
percebe alguma diferença, embora muito pouco.

De uma forma geral, o Cool'n'Quiet é um recurso muito interessante, pois
aumenta a vida útil do equipamento (mesmo componentes como o HD e a
placa-mãe duram mais ao operar numa temperatura mais baixa, sem falar do
cooler, que acumula menos poeira e assim precisa de menos manutenção) e
gera economia na conta de luz, em troca de uma redução de desempenho
muito pequena.

Com o passar dos meses, a economia pode somar um valor significativo. Em
um PC com um Athlon 64 3500+ que ficasse ligado continuamente, teríamos
uma economia de aproximadamente 30 kW por mês. Em dois anos, isso
representa uma economia de mais de R$ 350 na conta de luz, suficiente para
pagar parte do próximo upgrade. :)

Para utilizar o Cool'n'Quiet, basta manter o recurso ativado no setup e instalar
os drivers da placa. No caso do Linux, o suporte é oferecido através do módulo
"powernow-k8" do Kernel e o serviço "powernowd" (instalado através do pacote
de mesmo nome). Com os dois componentes disponíveis, a configuração é
bem simples, basta carregar o módulo e ativar o serviço, como em:

# modprobe powernow-k8
# /etc/init.d/powernowd start

Você pode acompanhar a oscilação na freqüência do processador utilizando
um monitor de sistema qualquer. No Linux, você pode utilizar também o
comando "cat /proc/cpuinfo".

Com o Athlon 64, a AMD voltou a utilizar o heat spreader sobre o núcleo do
processador, assim como na época do K6-2. Devido a isso, não é mais
possível diferenciar rapidamente as diferentes famílias do Athlon 64 apenas
olhando para o tamanho e a posição do núcleo do processador, como na época
do Athlon XP:




                            Athlon 64 e Athlon XP

                                                                            183
Assim como o clock do processador, a técnica de produção e a quantidade de
cache, o controlador de memória é também usado como um diferencial entre
as diferentes famílias de processadores.

Tudo começou com o Opteron, o primeiro processador baseado na arquitetura
Hammer, destinado a servidores. Ele utilizava um controlador de memória dual-
channel e oferecia suporte apenas a memórias registered, módulos especiais
que incluem um pequeno buffer que estabiliza o sinal, permitindo que sejam
utilizados mais módulos. Os módulos registered são mais caros e mais lentos
que os módulos DDR tradicionais que utilizamos em micros domésticos, mas
eles são uma necessidade nos servidores, já que eles precisam utilizar um
número muito maior de módulos de memória. Devido ao brutal número de
contatos utilizados pelo controlador de memória, o soquete utilizado pelo
Opteron tinha nada menos do que 940 pinos, o que na época era inédito.

A partir do momento que passou a ser capaz de produzir um volume maior de
processadores, a AMD lançou os modelos destinados ao mercado doméstico,
que incluem as versões iniciais do Athlon 64 e Athlon 64 FX.

O Athlon 64 FX era uma variação do Opteron, que vinha com 1 MB de cache
L2 e mantinha o controlador de memória dual-channel. A grande mudança em
relação ao Opteron é que ele passou a oferecer suporte a memórias DDR
comuns, o que barateou muito o custo dos micros. Para diferenciar as placas
para o Opteron e para o Athlon 64 FX, a AMD criou o soquete 939, que era
virtualmente idêntico ao soquete 940 do Opteron. A posição de alguns dos
pinos foi alterada apenas para indicar a mudança no tipo de memória
suportado e impedir que o Opteron fosse usado nas placas para o Athlon 64 FX
e vice-versa. Mais tarde, o soquete 939 foi usado também pelas versões
iniciais do Athlon X2.

Em seguida temos as versões "domésticas" do Athlon 64, que vinham com
apenas 512 KB de cache L2 e utilizavam um controlador de memória
simplificado, sem suporte a dual-channel. Devido ao menor número de contatos
utilizados pelo controlador de memória, eles passaram a utilizar o soquete 754.




Athlon 64 FX (soquete 939) e Athlon 64 soquete 754 (à direita)

                                                                           184
Soquete 939 (à esquerda) e soquete 754

Considerando dois processadores do mesmo clock, a diferença de
desempenho entre um Athlon 64 "normal" e um Athlon 64 FX não é tão grande
quanto se poderia imaginar. O controlador de memória dual-channel e o maior
cache ajudam em alguns aplicativos, mas a diferença não era tão grande a
ponto de justificar pagar US$ 1000 pelo processador, como chegaram a custar
algumas versões do FX.


                                                                        185
Se você se assustou com o preço, vale lembrar que as primeiras versões do
Athlon 64 FX competiam com o Pentium 4 Extreme Edition; ambos eram
processadores "de vitrine", destinados ao público entusiasta e vendidos a
preços exorbitantes. Mais tarde, foram lançadas versões do Athlon 64 soquete
754 com 1 MB de cache L2, que praticamente anularam as vantagens do FX.

Finalmente, temos os processadores recentes, que utilizam o soquete AM2.
Eles trazem um controlador de memória remodelado, com suporte a memórias
DDR2. Apesar de também possuir 940 contatos, o soquete AM2 é incompatível
com o soquete 940 utilizado pelo Opteron, além de ser incompatível com todos
os processadores anteriores.

Os módulos de memória DDR2 utilizam 240 contatos, contra apenas 184
contatos dos módulos DDR. Com o controlador de memória integrado, os
contatos vão diretamente para o processador, através de pinos no soquete. A
AMD conseguiu fazer a migração das memórias DDR para as DDR2 sem
aumentar o número de pinos do soquete remanejando uma série de contatos
sem uso no processador.

Apesar do ganho de desempenho não ser tão grande quanto poderia parecer à
primeira vista, as memórias DDR2 oferecem a vantagem de trabalharem
utilizando uma tensão mais baixa: apenas 1.8v, contra 2.5v das memórias
DDR. Isto faz com que tanto os módulos de memória quanto o próprio
controlador de memória integrado ao processador consumam menos energia (e
dissipem menos calor), o que ajuda na questão da refrigeração.

Atualmente as memórias DDR2 são produzidas em maior quantidade e são
consequentemente mais baratas que as DDR, de forma que a migração para o
AM2 foi um passo natural. As placas soquete 754 ficaram inicialmente
relegadas à posição de plataforma de baixo custo e eventualmente foram
completamente substituídas. A partir da segunda metade de 2006, até mesmo
os Semprons passaram a ser fabricados em versão AM2.

O AM2 trouxe também um novo suporte de retenção do cooler (a "gaiola" em
volta do processador). Ele é preso à placa-mãe por quatro parafusos (em vez
de apenas dois), o que tornou o mecanismo de retenção mais firme. O
problema é que ele passou a usar um formato octagonal (ao invés do formato
quadrado usado no soquete 754 e 939), o que quebrou a compatibilidade com
parte dos coolers antigos.




                                                                         186
Cooler NPH para processadores AM2

Visualmente, o soquete AM2 é praticamente idêntico ao soquete 939, mudando
apenas a posição de alguns dos pinos. O contato adicional pode ser visto no
canto inferior direito do soquete:




                                                                        187
Soquete AM2, com o pino adicional em destaque

A principal desvantagem de utilizar o controlador de memória integrado é que
passou a ser necessário lançar uma versão atualizada do processador e criar
um novo soquete cada vez que é necessário fazer alterações no controlador de
memória, ou oferecer suporte a uma nova tecnologia, como no caso das
memórias DDR2.

A partir do final de 2007, serão lançadas placas e processadores baseados no
soquete AM2+, uma pequena atualização do AM2, que oferecerá um
barramento HyperTransport atualizado, operando a 2.0 GHz (o dobro da
freqüência do HyperTransport utilizado no AM2) e oferecerão suporte ao
sistema avançado de gerenciamento de energia utilizado no Phenom. Este
novo sistema de gerenciamento suportará o ajuste independente das
freqüências de operação do processador e do controlador de memória, o que
resultará em redução do consumo e dissipação térmica do processador.

Estas são inovações técnicas, que não possuem um impacto direto sobre o
desempenho. Os processadores AM2+ poderão ser usados nas placas AM2
atuais e vice-versa, mas neste caso os novos recursos permanecem
desativados.

A partir de 2008 a AMD passará a utilizar o soquete AM3 que, como o nome
sugere, trará compatibilidade com as memórias DDR3. O soquete AM3
manterá a mesma pinagem do AM2 e será eletricamente compatível com ele.

Os processadores AM3 terão um controlador de memória compatível tanto com
memórias DDR3 quanto com memórias DDR2 e, graças a isso, poderão ser
usados em placas AM2 compatíveis (neste caso limitados ao uso de memórias
DDR2, por limitações da placa). Infelizmente a compatibilidade será de mão
única, sem a possibilidade de utilizar os processadores AM2 atuais em
conjunto com as placas AM3, já que eles não oferecem suporte às memórias
DDR3.



                                                                         188
Com o lançamento do AM2+ e do AM3, teremos (desconsiderando o soquete
F, utilizado pelo Opteron e Quad FX) um total de 6 padrões diferentes para os
processadores AMD de 64 bits, exigindo atenção na hora de comprar ou fazer
upgrade.

Por outro lado, a vida dos fabricantes de chipsets passou a ser muito mais
simples, já que não precisam mais se preocupar com o controlador de
memória. O uso dos diferentes soquetes não demanda mudanças no chipset,
já que mudam apenas o processador e o encaixe (e trilhas) na placa-mãe.

Os modelos


Assim como na questão dos soquetes, a lista de modelos do Athlon 64
apresenta uma variedade espantosa de arquiteturas, variações na quantidade
de cache, soquete usado, freqüência do HyperTransport e assim por diante. O
índice de desempenho dos processadores é calculado com base no
desempenho médio, de forma que existem casos de processadores com
clocks, caches e arquiteturas diferentes vendidos sob o mesmo índice e muitas
vezes pelo mesmo preço.

Todo processador inclui uma pequena área de memória com detalhes sobre a
arquitetura usada, quantidade de cache, freqüência, tensão, conjuntos de
instruções suportados e assim por diante. Estes códigos de identificação são
acessíveis através de uma série de programas de diagnóstico, que podem ser
usados para identificar o processador. Um dos mais práticos (para Windows) é
o CPU-Z, disponível no: http://www.cpuid.com/cpuz.php.




                                                                          189
No Linux você pode usar o comando "cat /proc/cpuinfo", deixando que o
próprio Kernel do sistema leia os códigos de identificação e mostre as
informações na tela.

Athlon 64 e Athlon 64 FX


Tudo começou com os cores ClawHammer e SledgeHammer, que são as
versões originais do K8, produzidas em uma técnica de 0.13 micron. Ambos
tinham originalmente 1 MB de cache L2, a principal diferença entre eles é que o
SledgeHammer vinha com ambos os controladores de memória ativados,
enquanto o ClawHammer vinha com apenas um, suportando apenas o modo
single-channel de acesso à memória.

Muitos modelos do ClawHammer vinham com metade do cache L2 desativado
(o que permitia aproveitar processadores com defeitos no cache) e existiram
também versões com suporte a dual-channel (virtualmente idênticas ao core
SledgeHammer), vendidas em versão soquete 939. Na época a AMD tinha
problemas para produzir os processadores em quantidade suficiente, de forma
que foi lançando novas versões do jeito que conseguia, sem muita organização
ou lógica.


                                                                           190
O core ClawHammer foi utilizado nas primeiras versões do Athlon 64, sendo
vendido nas versões 2800+ (1.8 GHz, 512 KB, soquete 754), 3000+ (2.0 GHz,
512 KB, soquete 754), 3200+ (2.0 GHz, 1 MB, soquete 754), 3400+ (2.2 GHz, 1
MB, soquete 754), 3500+ (2.2 GHz, 512 KB, soquete 939), 3700+ (2.4 GHz, 1
MB, soquete 754) e 4000+ (2.4 GHz, 1 MB, soquete 939).

Ele foi utilizado ainda no Athlon 64 FX-53 (2.4 GHz, 1 MB, soquete 939) e no
FX-55 (2.6 GHz, 1 MB, soquete 939). Todas as versões do Athlon FX vinham
com o multiplicador destravado, de forma a facilitar os overclocks. Isto era
utilizado pela AMD como um diferencial para justificar a diferença de preço
entre os FX e os modelos "normais" do Athlon 64. Note que o FX não é vendido
sob o índice de desempenho, os números seguem apenas uma sequência
crescente que indica a "posição hierárquica" do processador, mas sem uma
relação direta com seu desempenho.

Além de ser utilizado no Opteron, a versão do Athlon 64 destinada a
servidores, o core SledgeHammer foi utilizado nos Athlon 64 FX-51 (2.2 GHz,
1 MB) e FX-53 (2.4 GHz, 1 MB), ambos vendidos apenas em versão soquete
940, o que adicionava o custo de utilizar memórias registered. Estas duas
versões (lançadas em 2003, quase um ano antes do FX-53 e FX-55 baseados
no ClawHammer) foram processadores "pra inglês ver", vendidos em
quantidade muito limitada. O principal motivo da existência deles foi manter a
guerra de benchmarks com a Intel.

O seguinte foi o core Newcastle, que ainda era fabricado usando a técnica de
0.13 micron, mas utilizava apenas 512 KB de cache L2, o que o tornava mais
barato de produzir em relação ao ClawHammer. Ele foi vendido nas versões
2800+ (1.8 GHz, 512 KB, soquete 754), 3000+ (2.0 GHz, 512 KB, soquete
754), 3000+ (1.8 GHz, 512 KB, soquete 939), 3200+ (2.2 GHz, 512 KB,
soquete 754), 3200+ (2.0 GHz, 512 KB, soquete 939), 3400+ (2.4 GHz, 512
KB, soquete 754), 3500+ (2.2 GHz, 512 KB, soquete 939) e 3800+ (2.4 GHz,
512 KB, soquete 939).

Note que, assim como no caso do ClawHammer, as versões soquete 939 são
vendidas sob um índice de desempenho mais alto, muito embora o uso do
dual-channel tenha pouca influência sobre o desempenho das versões de baixo
clock do Athlon 64. Isso faz com que um 3000+ soquete 754 acabe sendo mais
rápido que um soquete 939 (que opera a apenas 1.8 GHz) na maioria das
aplicações. Se você fosse montar um PC de baixo custo, na época, sem dúvida
valeria mais a pena comprar um 3000+ soquete 754 e usar um único pente de
memória.

O Winchester foi a primeira versão a ser fabricada em uma técnica de 0.09
micron. Ele é virtualmente idêntico ao Newcastle, incluindo os 512 KB de
cache, mas oferece uma dissipação térmica muito mais baixa. Enquanto o TDP
dos modelos baseados no Newcastle é de 89 watts, nos baseados no
Winchester é apenas 67 watts. O Winchester foi usado somente nos modelos
3000+ (1.8 GHz, 512 KB, soquete 939), 3200+ (2.0 GHz, 512 KB, soquete 939)
e 3500+ (2.2 GHz, 512 KB, soquete 939).



                                                                          191
O Venice mantém a técnica de 0.09 micron e os 512 KB de cache, mas
adiciona suporte ao conjunto de instruções SSE3, o que resultou em um
pequeno ganho de desempenho, sobretudo em games já otimizados. As
primeiras versões chegaram ao mercado em abril de 2005, substituindo
rapidamente os processadores baseados nos cores anteriores.

Ele foi vendido nas versões 3000+ (2.0 GHz, 512 KB, soquete 754), 3000+ (1.8
GHz, 512 KB, soquete 939), 3200+ (2.2 GHz, 512 KB, soquete 754), 3200+
(2.0 GHz, 512 KB, soquete 939), 3400+ (2.4 GHz, 512 KB, soquete 754),
3400+ (2.2 GHz, 512 KB, soquete 939), 3500+ (2.2 GHz, 512 KB, soquete 939)
e 3800+ (2.4 GHz, 512 KB, soquete 939).

Existiu também o Manchester, uma revisão do Venice com um consumo
elétrico pouca coisa inferior. Ele existiu em versões 3200+ (2.0 GHz, 512 KB,
soquete 939) e 3500+ (2.2 GHz, 512 KB, soquete 939).

O próximo é o core San Diego, uma versão do core Manchester com 1 MB de
cache L2. Ele foi utilizado tanto em modelos do Athlon 64 (um deles com
metade do cache desabilitado, assim como na época do ClawHammer) e
também em dois modelos do Athlon FX.

Dentro da linha Athlon 64, o San Diego foi utilizado nos modelos 3500+ (2.2
GHz, 512 KB, soquete 939), 3700+ (2.2 GHz, 1 MB, soquete 939) e 4000+ (2.4
GHz, 1 MB, soquete 939).

Dentro da linha FX, ele foi utilizado nos modelos FX-55 (2.6 GHz, 1 MB,
soquete 939) e FX-57 (2.8 GHz, 1 MB, soquete 939). Estes dois modelos eram
processadores escolhidos a dedo dentro da produção do San Diego, incluindo
apenas os processadores mais perfeitos, que eram capazes de operar
estavelmente a freqüências mais altas. Além do clock (e preço) mais alto, a
única vantagem deles sobre os da linha Athlon 64 era o fato de virem com o
multiplicador destravado.

O Orleans é mais um core fabricado utilizando a técnica de 0.09 micron.
Apesar disso, ele traz três vantagens sobre os anteriores.

A primeira é o suporte ao soquete AM2 (e o consequente suporte a memórias
DDR2), utilizado por todos os modelos. A segunda é o suporte ao AMD-V
(também chamado de "Pacifica"), um sistema de virtualização muito similar ao
Intel-VT (assim como o Intel-VT, o AMD-V pode ser utilizado para melhorar o
desempenho de virtualizadores como o VMware e o Xen). A terceira é uma
série de otimizações e o uso de uma tensão mais baixa, que reduzem o TDP
de 89 watts (no Venice 3800+) para apenas 62 watts em todos os modelos do
Orleans.

O Orleans foi utilizado nos modelos 3000+ (1.8 GHz, 512 KB, soquete AM2),
3200+ (2.0 GHz, 512 KB, soquete AM2), 3500+ (2.2 GHz, 512 KB, soquete
AM2), 3800+ (2.4 GHz, 512 KB, soquete AM2) e 4000+ (2.6 GHz, 512 KB,
soquete AM2).




                                                                          192
Concluindo, temos o core Lima, o primeiro fabricado usando a nova técnica de
0.065 micron. Um dos destaques é o baixo consumo: as duas versões
possuem um TDP de apenas 45 watts.

Enquanto escrevo, ele é usado em apenas duas versões do Athlon 64: 3500+
(2.2 GHz, 512 KB, soquete AM2) e 3800+ (2.4 GHz, 512 KB, soquete AM2).

Athlon 64 X2


O Athlon 64 X2 é a versão dual-core do Athlon 64. Quando ele foi lançado, em
2005, a Intel ainda se debatia com a plataforma NetBurst, produzindo
primariamente o Pentium D, que era um processador dual-chip (em que temos
dois processadores separados, dentro do mesmo encapsulamento) e não um
processador dual-core "de verdade". No Pentium D, os dois cores comunicam-
se entre si e com o chipset, utilizando o FSB, um barramento relativamente
lento para acumular as duas funções.

No caso do Athlon X2, temos os dois núcleos construídos sobre o mesmo
wafer. A comunicação entre os dois núcleos é feita internamente, utilizando um
barramento interno, batizado de SRI (System Request Interface), o que garante
tempos de latência mais baixos e pequenos ganhos de desempenho ao rodar
muitos aplicativos simultaneamente (que é justamente a área em que os
processadores dual-core oferecem mais vantagens), além de permitir que o
processador seja capaz de operar a freqüências um pouco mais elevadas.

Na camada mais externa, temos o "Crossbar Switch", responsável por dividir as
requisições entre os dois cores, controlar o acesso de ambos ao controlador de
memória (e ao barramento HyperTransport), além de monitorar o nível de
carregamento de cada um, informação utilizada, entre outras coisas, pelo
sistema de gerenciamento de energia. Este diagrama da AMD mostra o
conceito:




                                                                          193
Diagrama de blocos do X2

Cada processador possui seu próprio cache L2, mas ambos compartilham o
mesmo controlador de memória e o mesmo barramento HyperTransport,
através do qual é feita toda a comunicação com o chipset e os demais
componentes do PC. Olhando uma foto ampliada do processador, você pode
notar que os dois núcleos ficam no centro, envoltos pelos circuitos referentes
ao controlador de memória e HyperTransport. Além dos circuitos
compartilhados, os dois núcleos também não são exatamente cópias idênticas
um do outro:




                                Athlon 64 X2

O uso de dois núcleos torna o processador mais dependente do barramento
com a memória. Devido a isso, o Athlon 64 X2 foi lançado apenas em versões

                                                                          194
soquete 939 e AM2 (futuramente serão lançadas também versões AM2+ e
AM3), já que uma versão soquete 754 seria penalizada pelo barramento single-
channel. O lançamento do Athlon X2 acelerou a migração para as placas
soquete 939, transformando a plataforma 754 em uma opção de baixo custo,
destinada ao Sempron e às versões mais lentas do Athlon 64.

Ao contrário do que teríamos ao utilizar dois processadores separados em
SMP, um processador dual-core atual, como o Athlon X2, Pentium D ou Core 2
Duo não consomem o dobro de energia que as versões single-core. Isto é
possível graças a sistemas de gerenciamento de energia incluídos no
processador, que reduzem a freqüência ou mesmo desativam completamente o
segundo núcleo quando o processador está ocioso. No caso do Athlon X2,
muitos componentes são compartilhados entre os dois processadores, o que
aumenta a economia.

Se comparado com um Athlon 64 4000+ com core San Diego (que também
opera a 2.4 GHz), um Athlon X2 4800+ Toledo (2.4 GHz, 1 MB) consome cerca
de 12 watts a mais enquanto o sistema está ocioso e 24 watts a mais ao rodar
um benchmark. Considerando que o TDP do San Diego é de 89 watts, o
aumento não é tão significativo.

Um aplicativo que conseguisse utilizar simultaneamente todo o processamento
de ambos os cores poderia, em teoria, fazer com que o consumo chegasse a
ser, momentaneamente, próximo do dobro, mas em situações reais isto não
acontece com freqüência.

A carreira do X2 começa com o core Manchester, lançado em maio de 2005.
Ele era fabricado usando uma técnica de 0.09 micron, com 512 KB de cache L2
por core (1 MB no total) e suporte às instruções SS3. A versão mais lenta tinha
metade do cache L2 desabilitado, de forma a aproveitar os cores com defeitos
no cache.

O Manchester foi usado nos Athlon 64 X2 3600+ (2.0 GHz, 2x 256 KB, soquete
939), 3800+ (2.0 GHz, 2x 512 KB, soquete 939), 4200+ (2.2 GHz, 2x 512 KB,
soquete 939) e 4600+ (2.4 GHz, 2x 512 KB, soquete 939)

O seguinte foi o core Toledo, ainda fabricado em uma técnica de 0.09 micron,
mas agora com 1 MB de cache por core, totalizando 2 MB. Ele foi lançado
simultaneamente com o Manchester, e os modelos do X2 baseados em ambos
conviveram durante mais de um ano. Apenas três dos modelos produzidos
utilizando o core Toledo vieram com todo o cache ativo. O demais vinham com
metade do cache desativado, o que os tornava praticamente indistinguíveis dos
baseados no Manchester.

O Toledo foi utilizado nos modelos 3800+ (2.0 GHz, 2x 512 KB, soquete 939),
4200+ (2.2 GHz, 2x 512 KB, soquete 939), 4400+ (2.2 GHz, 2x 1 MB, soquete
939), 4600+ (2.4 GHz, 2x 512 KB, soquete 939) e 4800+ (2.4 GHz, 2x 1 MB,
soquete 939).

Quase um ano depois, em maio de 2006, foi lançado o Windsor, que passou a
utilizar o soquete AM2 e adicionou suporte ao AMD-V, mantendo a mesma
técnica de produção de 0.09 micron e o uso de 2x 1 MB de cache. Assim como
                                                                           195
no Toledo, uma grande parte dos modelos vinham com metade do cache L2
desabilitado e eram vendidos sob índices de desempenho mais baixos que os
"completos".

O Windsor foi utilizado nos modelos 3800+ (2.0 GHz, 2x 512 KB, soquete
AM2), 4000+ (2.0 GHz, 2x 1 MB, soquete AM2), 4200+ (2.2 GHz, 2x 512 KB,
soquete AM2), 4400+ (2.2 GHz, 2x 1 MB, soque AM2), 4600+ (2.4 GHz, 2x 512
KB, soquete AM2), 5000+ (2.6 GHz, 2x 512 KB, soquete AM2), 5200+ (2.6
GHz, 2x 1 MB, soquete AM2), 5400+ (2.8 GHz, 2x 512 KB, soquete AM2),
5600+ (2.8 GHz, 2x 1 MB, soquete AM2) e 6000+ (3.0 GHz, 2x 1 MB, soquete
AM2).

Todos os modelos baseados no core Windsor possuem um TDP de 89 watts,
assim como a maior parte das versões baseadas nos cores Manchester e
Toledo. A exceção fica por conta do 6000+, que apesar da diferença de apenas
200 MHz em relação ao 5600+, possui um TDP de 125 watts. Esta diferença
tão grande é causada pelo gate leakage, o mesmo problema que a Intel
enfrentou com o Pentium 4 ao cruzar a barreira dos 3.0 GHz e que às vezes
enfrentamos ao fazer overclocks agressivos.

A partir de uma certa freqüência (que varia de acordo com a arquitetura), os
transístores passam a desperdiçar cada vez mais energia, de forma que é
necessário utilizar uma tensão cada vez mais alta para estabilizar o
processador (aumento que aumenta ainda mais o desperdício de energia),
criando um ciclo vicioso que se intensifica a cada novo aumento de freqüência.
O 6000+ é basicamente uma versão overclocada do 5600+, onde a tensão foi
aumentada de 1.30 para 1.35v para estabilizar o processador. Ele é um modelo
que deve ser evitado na hora da compra.

Como uma opção para quem prefere um processador mais econômico e frio, a
AMD lançou a série "Energy Efficient", onde são usadas técnicas derivadas
dos processadores mobile, como o uso de tensões mais baixas e de
transístores de chaveamento mais lento, que resultam em processadores com
um consumo mais baixo, mas que em compensação não são capazes de
atingir freqüências de operação tão altas quanto os das séries principais.

A série Energy Efficient do Windsor, por exemplo, abrange modelos do 3600+
(2.0 GHz, 2x 1MB, soquete AM2) ao 5200+ (2.6 GHz, 2x 1MB, soquete AM2),
todos com tensão de 1.2v e TDP de 65 watts. Eles são mais caros que os da
série regular, com o preço variando de acordo com o clock (nas freqüências
mais altas, a diferença pode ser de mais de 200 reais, enquanto nos modelos
populares pode cair para menos de 30).

De uma forma geral, os modelos Energy Efficiency valem a pena em casos em
que a diferença de preço é pequena, pois a economia de energia acaba se
pagando com o passar do tempo. Em um PC que fica ligado continuamente,
uma economia de 24 watts acaba resultando em uma redução de mais de 200
reais na conta de luz ao longo de dois anos.

Por último, temos o Brisbane, a primeira série do X2 a ser produzida usando
uma técnica de 0.065 micron. Uma informação importante é que, apesar da

                                                                          196
redução do espaço ocupado por cada processador (cortesia da nova técnica de
fabricação) todos os modelos baseados no Brisbane possuem apenas 512 KB
de cache por core. A redução foi feita para aumentar o índice de
aproveitamento, já que, como em toda nova técnica de produção, o índice de
defeitos é inicialmente muito grande, de forma que produzir processadores
menores permite aumentar substancialmente o número de processadores
"bons" por wafer.

Uma má notícia é que a AMD aumentou os tempos de latência do cache L2 do
Brisbane de 12 para 14 tempos, visando facilitar a produção de futuros
modelos com mais cache L2, além de permitir o uso de freqüências de clock
ligeiramente maiores. Como o Brisbane não inclui melhorias em relação aos
modelos anteriores, ele acaba sendo mais lento que um Manchester do
mesmo clock (e com a mesma quantidade de cache). Embora a diferença seja
pequena, inferior a 2% na maioria dos aplicativos, ela existe.

O Brisbane foi usado em 6 modelos da série Energy Efficient, todos eles com
TDP de 65 watts: 3600+ (1.9 GHz, 2x 512 KB, soquete AM2), 4000+ (2.1 GHz,
2x 512 KB, soquete AM2), 4400+ (2.3 GHz, 2x 512 KB, soquete AM2), 4800+
(2.5 GHz, 2x 512 KB, soquete AM2), 5000+ (2.6 GHz, 2x 512 KB, soquete
AM2) e 5200+ (2.7 GHz, 2x 512, soquete AM2).

Como de praxe, o uso de um processador dual-core tem seus prós e contras. O
principal benefício de usar um processador dual-core é o melhor desempenho
ao rodar muitos aplicativos pesados simultaneamente. Se você é do tipo que
abre 50 abas do navegador, ouve música, comprime um DVD, retoca imagens
no Photoshop (ou Gimp ;) para o cartaz que está diagramando no Corel e ainda
por cima quer abrir 3 máquinas virtuais do VMware, tudo ao mesmo tempo, um
processador dual-core, acompanhado por 2 ou 4 GB de memória DDR2 (ou
DDR3), é uma necessidade.

Por outro lado, para usuários que rodam um ou dois aplicativos por vez, que
usam o PC predominantemente para games (sem executar outras tarefas
simultaneamente como, por exemplo, deixar o PC comprimindo um DVD em
segundo plano) ou que rodam apenas aplicativos leves, um processador single-
core mais barato, ou com uma freqüência ligeiramente maior ofereceria uma
relação custo-benefício melhor.

Comparando um X2 4800+ (2.4 GHz, 2x 1 MB, core Toledo) com um Athlon 64
single-core 4000+ (2.4 GHz, 1 MB, core San Diego) temos o X2 4800+
ganhando por uma margem de 17% no Winstone 2004 (Content Creation), 41%
no SYSMark 2004 (3D Content Creation), 1% no Photoshop 7 e 2% no
Premiere 6.5 (testes do World Bench 2005), 1% no Doom3 (FPS a 1024x768),
2% no Half Life 2 e 3% no Unreal 2004.

Você pode notar que, com exceção do SYSMark 2004, todos os demais
benchmarks e games mostram um ganho de desempenho muito inferior ao
sugerido pelo aumento de 800 pontos no índice de desempenho da AMD. Isso
acontece por que estes testes levam em conta o desempenho ao executar
apenas uma tarefa de cada vez. Como disse, um processador dual-core traz
benefícios consideráveis apenas ao rodar vários aplicativos simultaneamente.

                                                                         197
Rodando um aplicativo por vez, ou rodando apenas benchmarks, existem até
casos em que o 4800+ perde do 4000+ por uma pequena margem (1 ou 2%). É
o caso de aplicativos que não conseguem obter nenhum benefício do segundo
core e acabam tendo o desempenho penalizado pelo overhead de dividir a
carga entre os dois.

Sempron


Apesar de serem processadores completamente diferentes dos Semprons
soquete A baseados no Barton, Thorton e Thoroughbred-B, a AMD continuou
utilizando a marca "Sempron" ao lançar a linha de processadores de baixo
custo, baseada na arquitetura K8.

Além da questão do cache menor, as versões iniciais do Sempron vinham sem
suporte ao AMD64, ou seja, sem suporte às instruções de 64 bits, incluindo os
registradores extra e as outras melhorias trazidas pela arquitetura. Embora
fossem baseados na arquitetura K8, eles eram processadores de 32 bits, sem
praticamente nenhuma das inovações trazidas por ela.

Outra diferença é que o índice de desempenho do Sempron é calculado com
relação ao desempenho do Celeron D e não ao Pentium 4. Isso faz com que
exista uma diferença significativa entre o desempenho de um Sempron "3000+"
e de um Athlon 64 também "3000+".

Por exemplo, o Athlon 64 3000+ baseado no core Newcastle (2.0 GHz, soquete
754, com 512 KB de cache) tem um desempenho parecido com o de um
Sempron de 2.2 GHz com 256 KB de cache, baseado no core Palermo. O
problema é que o Palermo de 2.2 GHz recebe o índice "3400+", 400 pontos
acima do índice do Athlon 64 equivalente.

A primeira encarnação do Sempron K8 foi o core Paris, uma versão
simplificada do ClawHammer, produzido em uma técnica de 0.13 micron, que
possuía nativamente apenas 256 KB de cache e vinha sem suporte às
instruções de 64 bits, ao Cool'n'Quiet e também às instruções SSE3.

Ele foi lançado em julho de 2004 e foi vendido por pouco mais de um ano.
Existiram duas versões: 3000+ (1.8 GHz, 128 KB, soquete 754) e 3100+ (1.8
GHz, 256 KB, soquete 754).

Como pode ver, o 3000+ vinha com metade do cache desabilitado. Como o
Sempron já possui pouco cache nativamente, essa nova redução acabava
tendo um efeito muito maior sobre o desempenho do que a diferença de 100
pontos no índice sugere. O Sempron com core Paris é um modelo a se evitar,
mas entre os dois o 3000+ é o pior.

A partir de 2005, o core Paris foi rapidamente substituído pelo Palermo,
produzido usando uma técnica de 0.09 micron. Nativamente, o core Palermo
possui 256 KB de cache e oferece suporte às extensões de 64 bits,
Cool'n'Quiet e também às instruções SSE3. O problema é que, a fim de
aproveitar o maior número possível de processadores saídos da linha de
produção, a AMD passou a desativar não apenas metade do cache, como de

                                                                          198
praxe, mas também o suporte às instruções de 64 bits e ao SSE3 nos cores
que eram produzidos com defeitos nos componentes relacionados a estes
recursos, o que resultou em uma grande salada de modelos com índice de
desempenho similar, mas com conjuntos muito diferentes de recursos.

A chave para diferenciar os Palermos é o código de identificação dos
processadores. Os processadores cujo código termina com "BA" são os piores,
pois não suportam nem instruções de 64 bits, nem SSE3. Os que terminam
com "BO" suportam SSE3, mas ainda não suportam instruções de 64 bits,
enquanto os terminados com "BX" são as versões completas, com ambos os
recursos ativados.

Com exceção do 2500+, todos os modelos foram fabricados nas três versões,
e a presença do suporte a 64 bits ou SSE3 não influenciava no índice de
desempenho ou preço, de forma que era importante checar antes de comprar.
A isto soma-se a questão do Cool'n'Quiet, que não era suportado pelo core
Paris e está disponível apenas nos Palermos 3000+ em diante.

O Palermo foi usado nas versões 2500+ (1.4 GHz, 256 KB, soquete 754),
2600+ (1.6 GHz, 128 KB, soquete 754), 2800+ (1.6 GHz, 256 KB, soquete
754), 3000+ (1.8 GHz, 128 KB, soquete 754), 3100+ (1.8 GHz, 256 KB,
soquete 754), 3300+ (2.0 GHz, 128 KB, soquete 754) e 3400+ (2.0 GHz, 256
KB, soquete 754).

Pouco depois, no final de 2005, foi lançada uma versão atualizada do core
Palermo, com suporte ao soquete 939 (e consequentemente a dual-channel).
Surgiram então os modelos 3000+ (1.8 GHz, 128 KB, soquete 939), 3200+ (1.8
GHz, 256 KB, soquete 939), 3400+ (2.0 GHz, 128 KB, soquete 939) e 3500+
(2.0 GHz, 256 KB, soquete 939). Estes 4 modelos suportavam SSE3, mas
apenas as séries com final "BW" ofereciam suporte às instruções de 64 bits. As
séries com final "BP" vinham com o suporte a 64 bits desabilitado e devem ser
evitadas.

Finalmente, temos o Sempron com core Manila, ainda fabricado usando a
técnica de 0.09 micron, mas agora com suporte ao soquete AM2. Ao contrário
dos Palermos, todos os Manilas incluem suporte às instruções de 64 bits e
SSE3, mas o Cool'n'Quiet é suportado apenas nas versões 3200+ em diante.

O core Manila foi usado nas versões 2800+ (1.6 GHz, 128 KB, soquete AM2),
3000+ (1.6 GHz, 256 KB, soquete AM2), 3200+ (1.8 GHz, 128 KB, soquete
AM2), 3400+ (1.8 GHz, 256 KB, soquete AM2), 3500+ (2.0 GHz, 128 KB,
soquete AM2), 3600+ (2.0 GHz, 256 KB, soquete AM2) e 3800+ (2.2 GHz, 256
KB, soquete AM2). Como de praxe, as versões de 256 KB oferecem um
desempenho sensivelmente superior na maior parte dos aplicativos, por isso
devem ser preferidas na hora da compra.

Essa confusão com relação aos modelos do Sempron e do Athlon 64 fez com
que a AMD perdesse alguns potenciais compradores e permitiu que a Intel
recuperasse parte do espaço anteriormente perdido, passando a oferecer
versões do Celeron D a preços bastante competitivos.



                                                                          199
No início de 2007, os Celeron D baseados no core Cedar Mill-512 (os modelos
347, 352, 356, 360 e 365) eram especialmente atraentes, pois possuíam 512
KB de cache, eram fabricados usando a técnica de 0.065 micron e suportavam
overclocks generosos.

Overclock: Assim como os demais processadores dentro da família do Athlon
64, o Sempron não é particularmente generoso com relação aos overclocks. Os
melhores dentro da família são os com core Manila, do 2800+ ao 3200+ (1.6 a
2.0 GHz). Eles utilizam uma tensão dual de 1.25v - 1.4v e, na maioria dos
casos, podem ser overclocados para até 2.4 GHz com estabilidade, desde que
a placa-mãe suporte a freqüência necessária e você aumente a tensão do
processador em 0.1v.

A maioria das placas baratas, baseadas em chipsets SiS e VIA podem
trabalhar com o FSB a até 220 MHz com estabilidade, o que permitiria fazer
overclock das versões de 1.6, 1.8 e 2.0 GHz para, respectivamente, 1.76, 1.98
e 2.2 GHz. Neste caso o overclock é simples e na maioria dos casos você não
vai precisar sequer aumentar a tensão do processador (embora um aumento
de 0.05v possa ajudar a manter a estabilidade):




          Ajuste do clock e tensão do processador através do setup

A partir daí, as possibilidades dependem das opções disponíveis no Setup da
placa-mãe. O primeiro problema é a freqüência do barramento HyperTransport
(HT Frequency), que é particularmente sensível. Nas placas soquete 754 o
HyperTransport trabalha a 800 MHz (200 MHz x 4) e nas soquete 939 ou AM2
ele trabalha a 1.0 GHz (200 MHz x 5). Em ambos os casos, ele não suporta
trabalhar com estabilidade a mais do que, respectivamente, 900 ou 1100 MHz,
o que nos restringe ao humilde overclock de 10% do passo anterior.

Para ir além, é necessário que a placa-mãe ofereça a opção de ajustar o
multiplicador do barramento HyperTransport. Desta forma, você pode reduzir o
multiplicador de 4x ou 5x para, respectivamente, 3x e 4x, o que permitirá
aumentar o FSB para até 250 MHz com relativa segurança. Usando um
multiplicador de 4x e 250 MHz em uma placa AM2, o HyperTransport
trabalharia a 1.0 GHz, sua freqüência padrão. Em uma placa soquete 754, você
poderia aumentar o FSB para até 270 MHz e ainda assim (com multiplicador
3x) o HyperTransport estaria operando a 810 MHz.




                                                                          200
Ajuste do FSB e multiplicador do barramento HyperTransport

Reduzindo o multiplicador do HyperTransport e aumentando a tensão do
processador em 0.1v, você poderia aumentar a freqüência do FSB para 240
MHz e assim obter 1.92, 2.16 e 2.4 GHz. No caso das versões de 1.6 e 1.8
GHz, você poderia ir um pouco mais longe e ajustar o FSB para 250 MHz,
obtendo 2.0 e 2.25 GHz, respectivamente.

A até 2.4 GHz, o processador deve funcionar sem problemas utilizando um
cooler padrão, desde que o gabinete seja bem ventilado. A partir daí, os
resultados variam muito de acordo com a série do processador, placa-mãe,
cooler usado e até mesmo com a qualidade da fonte de alimentação, já que
quanto maior a freqüência, maior o consumo elétrico e consequentemente
maior o stress sobre ela.

Praticamente todas as placas soquete 754, 939 e AM2 oferecem a opção de
manter a memória operando de forma assíncrona. Isso permite que você
aumente a freqüência do FSB (e consequentemente do processador) sem
mexer na freqüência da memória. Depois de testar o overclock do processador,
você pode obter um pequeno ganho adicional aumentando a freqüência, ou
baixando os tempos de espera da memória. Neste caso as possibilidades
dependem das opções oferecidas pela placa e da qualidade dos módulos de
memória instalados.




            Ajuste da freqüência e tempos de espera da memória

Para overclocks mais extremos, outra opção útil é o "PCI/AGP Lock", opção
suportada por placas com chipset nVidia e algumas com chipset VIA, onde é
possível ajustar a freqüência do FSB de forma independente da freqüência dos
demais barramentos da placa, assim como no caso da memória.




                                                                         201
Reconhecendo o processador


A gigantesca variedade de variações dentro da família Athlon 64 torna
realmente complicado identificar os processadores visualmente. Um "3000+"
pode ser desde um ClawHammer de 2.0 GHz, soquete 754, até um Orleans de
1.8 GHz, soquete AM2, passando por praticamente todas as outras famílias.

É relativamente simples distinguir os processadores baseado no soquete
usado, já que os processadores soquete 754 possuem a área central sem
pinos e os AM2 possuem um pino extra em relação aos soquete 939. Com
base no soquete usado, data aproximada de fabricação, índice de desempenho
e clock do processador, você pode ter então uma idéia de qual família ele
pertence, mas para ter certeza mesmo você precisaria montar o micro e
verificar usando o CPU-Z ou outro software.

Mas, apesar de um pouco mais complicado, é possível diferenciar os Athlon 64
e X2 com base no código de identificação com 13 dígitos decalcado sobre o
spreader do processador:




                  Código de identificação de um Athlon X2

Dentro do código, o campo mais óbvio são os 4 dígitos do número de
identificação (4800 no exemplo). Como vimos, o mesmo código pode ser usado
em processadores com diferentes combinações de clock, cache e soquete.



                                                                         202
Os três dígitos finais ajudam a distinguir processadores com o mesmo índice,
pois indicam a quantidade de cache e a arquitetura em que são baseados:




O antepenúltimo dígito (6 no exemplo) se refere ao cache. As possibilidades
são as seguintes:

      2 - 128 KB (Sempron)
      3 - 256 KB (Sempron)
      4 - 512 KB (1x 512 para os single-core ou 2x 256 KB para os dual-core)
      5 - 1 MB (2x 512 KB no caso dos dual-core)
      6 - 2 MB (2x 1 MB no caso dos dual-core)

Os dois últimos são um código de identificação, que indica o stepping,
tecnologia de fabricação, soquete e também se o processador é single-core ou
dual-core. A tabela para os processadores Athlon 64 e X2 em versão OEM é a
seguinte:

      AP - Stepping C0 (ClawHammer), single-core, 0.13 micron, soquete 754
      AR - Stepping CG (ClawHammer), single-core, 0.13 micron, soquete 754
      AS - Stepping CG (ClawHammer), single-core, 0.13 micron, soquete 939
      AW - Stepping CG (Newcastle), single-core, 0.13 micron, soquete 939
      AX - Stepping CG (Newcastle), single-core, 0.13 micron, soquete 754
      AZ - Stepping CG (Newcastle), single-core, 0.13 micron, soquete 939
      BI - Stepping D0 (Winchester), single-core, 0.09 micron, soquete 939
      BN - Stepping E4 (San Diego), single-core, 0.09 micron, soquete 939
      BO - Stepping E3 (Venice), single-core, 0.09 micron, soquete 754
      BP - Stepping E3 (Venice), single-core, 0.09 micron, soquete 939
      BV - Stepping E4 (Manchester), dual-core, 0.09 micron, soquete 939
      BW - Stepping E6 (Venice ou San Diego), single-core, 0.09 micron,
      soquete 939
      BX - Stepping E6 (Venice), single-core, 0.09 micron, soquete 754
      BY - Stepping E6 (Venice ou San Diego), single-core, 0.09 micron,
      soquete 939
      BZ - Stepping E3 (Venice), single-core, 0.09 micron, soquete 939
      CD - Stepping E6 (Toledo), dual-core, 0.09 micron, soquete 939
      CF - Stepping E6 (Venice ou San Diego), single-core, 0.09 micron,
      soquete 939
      CG - Stepping E4 (Manchester ou San Diego), single-core, 0.09 micron,
      soquete 939
      CN - Stepping F2 (Orleans), single-core, 0.09 micron, soquete AM2
      CS - Stepping F2 (Windsor), dual-core, 0.09 micron, soquete AM2
      CU - Stepping F2 (Windsor), dual-core, 0.09 micron, soquete AM2
      CW - Stepping F2 (Orleans), single-core, 0.09 micron, soquete AM2
      CZ - Stepping F3 (Windsor), dual-core, 0.09 micron, soquete AM2

                                                                          203
DD - Stepping G1 (Brisbane), dual-core, 0.065 micron, soquete AM2
      DE - Stepping G1 (Lima), single-core, 0.065 micron, soquete AM2
      DH - Stepping F3 (Lima), single-core, 0.065 micron, soquete AM2
      DL - Stepping G1 (Brisbane), dual-core, 0.065 micron, soquete AM2

Para os Semprons, baseados na arquitetura K8, temos:

      AX - Stepping CG (Paris), 0.13 micron, soquete 754 (sem suporte a 64
      bits e SSE3)
      BA - Stepping D0 (Palermo), 0.09 micron, soquete 754 (sem suporte a
      64 bits e SSE3)
      BI - Stepping D0 (Palermo), 0.09 micron, soquete 939 (sem suporte a 64
      bits)
      BO - Stepping E3 (Palermo), 0.09 micron, soquete 754 (sem suporte a
      64 bits)
      BP - Stepping E3 (Palermo), 0.09 micron, soquete 939 (sem suporte a
      64 bits)
      BW - Stepping E6 (Palermo), 0.09 micron, soquete 939
      BX - Stepping E6 (Palermo), 0.09 micron, soquete 754
      CN - Stepping F2 (Manila), 0.09 micron, soquete AM2
      CV - Stepping D0 (Palermo), 0.09 micron, soquete 754
      CW - Stepping F2 (Manila), 0.09 micron, soquete AM2

O terceiro dígito (A no exemplo) se refere ao TDP do processador. Ele não é
uma indicação precisa do consumo, já que o TDP é apenas uma espécie de
"teto", onde o mesmo número é compartilhado por diversos processadores da
mesma família, com freqüências de clock e consumo muito diferentes. O
principal objetivo do número é ajudar os integradores a dimensionarem
corretamente o cooler do processador e a ventilação do gabinete.

Apesar disso, o TDP ajuda a identificar os processadores de baixo consumo e
os modelos gastadores (como o 6000+ baseado no core Windsor). As
possibilidades são as seguintes:

      A - Standard (consumo normal dentro da arquitetura usada)
      D - TDP de 35 watts
      H - TDP de 45 watts
      O - TDP de 65 watts
      V - Low power (os modelos Energy Efficient)
      X - TDP de 125 watts (como o Windsor 6000+)

O oitavo dígito (logo após o índice de desempenho) também indica o soquete
usado. Ele é útil em casos em que o processador já estiver instalado na placa-
mãe ou não for possível examinar os contatos por outro motivo qualquer:

      A - Soquete 754
      D - Soquete 939
      I - Soquete 940




                                                                          204
Os dois primeiros dígitos (AD no exemplo) permitem confirmar a família da qual
o processador faz parte:

      AD - Athlon 64, Athlon 64 X2 ou Athlon 64 FX
      OS - Opteron (servidores)
      AM - Mobile Athlon 64 ou Mobile Athlon 64 X2
      SD - Sempron
      SM - Mobile Sempron
      TM - Turion ou Turion X2

No caso dos processadores em versão boxed, o código de identificação
termina com a sigla "BOX" e os dois dígitos depois do índice de desempenho
indicam o código de identificação (dentro da tabela que vimos há pouco). No
caso deles, o código não contém informações sobre o cache ou soquete
utilizado.

Pelo código, podemos dizer que o Sempron da foto a seguir é um Sempron
(SD), da série de consumo standard (A), vendido sob o índice 3000+, soquete
939 (D), com 128 KB de cache (2) e que faz parte da série baseada no core
Palermo, sem suporte a 64 bits (BP).

O código não fala nada sobre a freqüência real de operação, mas com base
nas informações descobertas podemos deduzir que ele opera a 1.8 GHz, já
que essa é a única freqüência possível para um Sempron soquete 939 com
128 KB de cache. Como o código não termina com a sigla "BOX", sabemos
também que ele é um processador OEM.




                                                                           205
Sempron com código SDA3000DIO2BP

No caso do Athlon 64 a seguir, podemos dizer que trata-se de um Athlon 64
3800+, também soquete 939 (D), com 512 KB, e que é um processador single-
core, baseado no core Newcastle (AW). Com base nessas informações
podemos deduzir que ele é o modelo de 2.4 GHz, já que não existem outras
versões do Newcastle com 512 KB para o soquete 939 que receberam o índice
3800+.




                  Athlon 64 com código ADA3800DEP4AW

Caso esteja curioso, o quarto e quinto dígito da direita para a esquerda (AA na
foto abaixo), dizem respeito à tensão usada e à temperatura máxima onde o
funcionamento do processador é garantido:




                                                                           206
Assim como no caso da freqüência, diferentes modelos e steepings do
processador possuem diferentes níveis de tolerância a altas temperaturas,
quesito que também é testado em fábrica. A temperatura limite é indicada na
quarta letra da direita para a esquerda (este dígito não é incluído no código
usado nos processadores boxed). As possibilidades são as seguintes:

      A - Variável (de acordo com a série)
      I - 63°C
      K - 65°C
      O - 69°C
      P - 70°C
      M - 67°C
      O - 69°C
      Q - 71°C
      T - 78°C
      U - 83°C
      X - 95°C

Estes números são apenas uma garantia. Seu Athlon X2 de rating "K" não vai
queimar por atingir 66°C ao executar alguma tarefa pesada, apenas a
estabilidade não é garantida.

Normalmente, apenas os Opterons e alguns modelos do FX possuem os
ratings de M em diante e apenas os Turions utilizam o ratting X. No caso dos
processadores Mobile, suportar altas temperaturas é um quesito importante,
pois permite que o exaustor do cooler seja ativado menos vezes, poupando a
carga da bateria.

O rating "A" é usado em processadores que não passaram pela verificação, o
que inclui a maior parte dos modelos domésticos do Athlon 64, X2 e Sempron.
Na prática, o teto térmico deles é um pouco mais baixo do que os
processadores com rating "I". Para manter o sistema estável e seguro, é
recomendável mantê-los trabalhando abaixo de 61°C (ao rodar aplicativos
pesados), se necessário instalando exaustores adicionais dentro do gabinete.

Temos em seguida a quinta letra da direita para a esquerda, que diz respeito à
tensão utilizada. Esta indicação não é muito importante na prática, pois a
tensão é detectada automaticamente pelo BIOS e muitos processadores
trazem a tensão usada decalcada de forma visível. A principal utilidade seria
verificar se o processador utiliza uma tensão compatível com a placa-mãe, já
que muitas placas antigas não possuem reguladores de tensão capazes de
trabalhar com processadores que utilizam menos de 1.4v, por exemplo. Assim
como no caso do dígito da temperatura, este dígito também não é usado no
código dos processadores boxed:


                                                                          207
A - Variável (de acordo com o modelo)
      C - 1.55v
      E - 1.5v
      I - 1.4v
      K - 1.35v
      M - 1.3v
      O - 1.25v
      Q - 1.2v
      S - 1.15v

Novamente, o rating "A" é um "nada a declarar", indicando que o processador
simplesmente utiliza a tensão normal, dentro da arquitetura utilizada. O rating
"C" (1.55v) foi utilizado apenas por alguns modelos do Opteron, ainda
baseados no core SledgeHammer, de 0.13 micron. Dentro das séries
domésticas, a maior tensão usada são os 1.5v utilizados pelos processadores
baseados no core ClawHammer e Newcastle.

Quad FX


Apesar da introdução das novas técnicas de fabricação, tanto o Athlon 64,
quanto o Sempron não foram capazes de atingir freqüências muito mais
elevadas que os pioneiros de 0.13 micron, baseados nos cores ClawHammer e
Paris. O mesmo pode se dizer dos processadores Intel, que não avançaram
muito em termos de freqüência de operação desde o Northwood, também
fabricado em uma técnica de 0.13 micron. Mesmo o core Prescott, que utilizava
mais estágios de pipeline e tempos de latência maiores para o cache L2, com o
objetivo de atingir freqüências de operação mais altas (em troca de uma
redução no desempenho por ciclo), não foi capaz de superar os 3.8 GHz.

Os tempos em que simplesmente migrar para uma nova técnica de fabricação
garantia um aumento expressivo no clock do processador acabaram. Velhos
truques como aumentar o número de estágios de pipeline ou aumentar os
tempos de latência do cache L2 para atingir freqüências de operação mais
altas também já foram usados até o limite, de forma que novos aumentos
acabam sendo contra-produtivos.

Ao invés disso, tanto a Intel quanto a AMD se voltaram para a "última fronteira",
que é adicionar novos recursos e componentes internos (suporte a novos
conjuntos de instruções, suporte a 64 bits, controladores de memória
integrados, mais cache L2, etc.) ou criar processadores dual-core ou quad-
core, de forma a fazer com que o processador seja capaz de executar mais
processamento por ciclo.

Depois da linha Athlon X2, composta de processadores dual-core, a evolução
natural seriam processadores quad-core. Surge então a plataforma Quad FX,
lançada pela AMD em dezembro de 2006.

A primeira observação sobre o Quad FX é que não se trata exatamente de um
processador quad-core, mas sim de dois processadores da série FX,



                                                                             208
espetados na mesma placa-mãe e ligados através de um link HyperTransport.
Ou seja, temos um sistema dual-CPU:




                                  Quad FX

Inicialmente foram lançadas três versões, o FX-70 (2x 2.6 GHz), FX-72 (2x 2.8
GHz) e FX-74 (2x 3.0 GHz). Todas são baseadas no core Windsor (0.09
micron), com 1 MB de cache por core, totalizando 2 MB para cada um dos dois
processadores.

O soquete AM2 oferece suporte a um único barramento HyperTransport, usado
para interligar o processador ao chipset. Para permitir a inclusão de um
barramento adicional, necessário para fazer a interligação entre os dois
processadores, a AMD adotou o uso do soquete F, utilizado também pelo
Opteron.

Assim como o soquete 775 da Intel, o soquete F utiliza o sistema LGA (Land
Grid Array), onde os pinos de contato são movidos do processador para o
soquete, criando uma "cama" de contatos, sobre a qual o processador é
firmemente preso:




                                                                         209
Soquete F

A principal diferença é que o soquete F possui um número brutalmente maior
de contatos, nada menos do que 1207. Esse número absurdo é necessário,
pois além do controlador de memória integrado, o processador passa a dispor
de três barramentos HyperTransport independentes. Um deles é utilizado para
ligar o processador ao chipset, outro para permitir a comunicação entre os dois
processadores e o terceiro fica disponível para a inclusão de recursos
adicionais.

No caso dos Opterons, o terceiro link pode ser utilizado para criar sistemas
com 4 processadores. Isto seria dispendioso demais em um PC doméstico e
não ofereceria grandes benefícios sobre o uso de apenas dois. Em vez de
simplesmente deixar o link sem uso, a nVidia o utilizou para ligar um segundo
chipset ao processador, criando a plataforma nForce 680a SLI:




                                                                           210
Diagrama de blocos do nForce 680a SLI

O objetivo dessa combinação é dobrar o número de linhas PCI Express e
outras interfaces, criando uma placa-mãe monstruosa, com 4 slots PCI Express
16x (dois deles com 16 linhas completas, dois com 8 linhas), 12 interfaces
SATA e até 4 placas de rede onboard. Ou seja, você poderia montar um
sistema quad-SLI, com 4 (ou mais) HDs SATA em RAID e ainda teria várias
interfaces disponíveis.

Como cada processador possui seu próprio controlador de memória dual-
channel, é necessário utilizar um total de 4 módulos: dois para cada
processador. Como cada processador tem acesso direto à apenas metade da
memória instalada, é necessário um sistema que permita a comunicação entre
eles, de forma que um possa enxergar a metade utilizada pelo outro. Entra em
cena o NUMA (Non-Uniform Memory Architecture) que permite que ambos os
processadores trabalhem utilizando uma tabela de endereços unificada. Graças
a isso, cada um dos dois processadores enxerga toda a memória disponível, e
acessos feitos à metade de propriedade do outro processador são realizados
através do link HyperTransport que os interliga.

Embora a idéia pareça boa no papel, o uso do NUMA aumenta os tempos de
latência do acesso à memória, já que aproximadamente metade dos acessos
são feitos aos módulos do processador vizinho, fazendo todo o caminho
através do barramento HyperTransport, em vez de de irem diretamente do
módulo ao controlador de memória local.

                                                                         211
Em aplicativos não-otimizados (atualmente poucos programas são capazes de
explorar ao máximo o benefício de um segundo núcleo, o que dizer de quatro)
a perda causada pelo aumento da latência no acesso à memória anula grande
parte do benefício proporcionado pelos dois núcleos adicionais, fazendo com
que mesmo o FX 74 tenha dificuldades em oferecer ganhos tangíveis sobre um
X2 6000+, que também opera a 3.0 GHz. Em alguns benchmarks, aplicativos
científicos e modelagem em 3D, o Quad FX se destaca, mas em aplicativos de
uso geral e em games o ganho de desempenho real é pequeno.

Em um teste rápido, utilizando uma NVIDIA GeForce 8800 GTX a 1600x1200,
o FX-70 consegue apenas 148 FPS no Half Life 2 (Gunship Timedemo), contra
147 obtidos por um X2 5200+, que também opera a 2.6 GHz. Ele ganha por
uma margem de 6% no 3D MAX e ganha por uma pequena margem em
compressão de vídeo usando o Xmpeg, mas perde (embora por apenas 2 a 3
FPS) no Quake 4, que seria um bom exemplo de game em que o uso do
NUMA acaba fazendo mais mal do que bem.

Na prática, a plataforma Quad FX oferece pouca utilidade, já que é muito
dispendiosa. Em junho de 2007, uma ASUS L1N64-SLI WS (baseada no
nForce 680a SLI) custava US$ 350 e cada processador FX-74 custava mais
US$ 480 (preços dos EUA), totalizando mais de 1300 dólares, apenas pela
placa e processadores. Adicionando os módulos de memória, coolers,
gabinete, placas de vídeo, monitor e periféricos, você passaria facilmente dos
US$ 4000. Como moramos no Brasil, teríamos ainda as taxas de importação,
resultando em uma cifra pornográfica. :)

Mesmo que você tivesse tanto dinheiro para gastar em um PC, seria muito
mais prudente montar um PC "simples", com um Athlon 64 X2 ou um Core 2
Duo, usando uma boa placa-mãe, 1 ou 2 GB de memória e uma placa de vídeo
razoável (que no final ofereceria um desempenho apenas alguns pontos
inferior) e aplicar o resto do dinheiro, deixando-o disponível para futuros
upgrades.

Apesar disso, o Quad FX é interessante como conceito, dando uma amostra de
tecnologias que poderão ser usadas em futuros processadores, como o uso do
soquete F e o NUMA.

A plataforma Core


O mercado de processadores é bastante competitivo. Atualmente temos a
predominância da Intel e AMD, com uma pequena participação da VIA, mas
diversas outras empresas, incluindo a IBM, Texas, Transmeta, Cyrix (que
acabou sendo comprada pela VIA) e IDT já tentaram a sorte, sem tanto
sucesso. Aqui temos um 486 produzido pela IBM e o Crusoe da Transmeta:




                                                                          212
486 produzido pela IBM e o Transmeta Crusoe

O Crusoe foi provavelmente o mais "exótico" entre os chips alternativos. Ele
era um processador de baixo consumo, que chegou a ser utilizado em alguns
notebooks ultra-compactos e também em alguns modelos de baixo custo,
incluindo alguns desknotes fabricados pela ECS.

A principal característica do Crusoe era a de ser um chip VLIW relativamente
simples e bastante eficiente, que executava instruções x86 através de um
software de tradução, batizado de Code Morphing Software, executado
continuamente. Ele tinha a função de converter as instruções x86 enviadas
pelos programas nas instruções simples entendidas pelo processador, ordená-
las de forma a serem executadas mais rápido e coordenar o uso dos
registradores, tarefas que em outros processadores são executadas via
hardware.

Graças a isso, o Crusoe podia ser um chip muito menor e consumir menos
energia. O TM5420 de 600 MHz, por exemplo, consumia menos de 2 watts
operando em full-load, menos do que um 486. O grande problema é que o
Code Morphing Software consumia parte dos recursos do processador (que já

                                                                         213
não era muito rápido, para início de conversa), deixando menos recursos para
o processamento de instruções.

Isso fazia com que o Crusoe fosse muito lento se comparado a um Athlon ou
Pentium III do mesmo clock, o que reduziu a procura pelo processador a ponto
de inviabilizar o projeto.

Fabricar processadores é muito mais complexo e arriscado do que fazer
placas-mãe ou telas de LCD, por exemplo, pois os projetos são muito mais
complexos e o investimento inicial absurdamente maior. Leva-se pelo menos 5
anos para projetar um novo processador e, para produzi-lo, é necessário
investir mais 2 a 4 bilhões de dólares, investimento necessário para montar
uma fábrica de ponta.

Mesmo para uma grande empresa, como a Intel, um erro estratégico pode
custar muito caro. Investir em uma plataforma ineficiente pode gerar um atraso
de vários anos, até que o projeto de um novo processador, mais competitivo,
seja concluído e seja possível produzi-lo em quantidade.

Com o lançamento do Pentium 4, em 2001, a Intel fez um movimento arriscado,
investindo em um processador com um longo pipeline (a primeira versão do
Pentium 4 trabalhava com 20 estágios, contra 10 do Pentium III e 11 das
primeiras versões do Athlon). Dobrar o número de estágios no processador é
como dobrar o número de funcionários em uma linha de produção, fazendo
com que cada um faça metade do trabalho e a esteira corra duas vezes mais
rápido.

O plano era simples: com mais estágios, o processador seria capaz de atingir
freqüências mais altas. Para manter as unidades de execução abastecidas, o
processador contaria com um cache L1 muito rápido, que armazenaria
instruções pré-decodificadas, um grande cache L2 e utilizaria um tipo mais
rápido de memória RAM, as famosas memórias Rambus.

Entretanto, o tempo mostrou que esse design possuía inconsistências óbvias.
Adicionar mais estágios tornou o processador menos eficiente, pois as
instruções precisavam do dobro do número de ciclos do processador para
serem processadas, fazendo com que o processador perdesse muito tempo em
operações de tomada de decisão, em que o processador depende do resultado
de uma instrução para processar a próxima.

Possuir o dobro de estágios significa também possuir aproximadamente o
dobro de transístores e consumir o dobro da eletricidade. Se isso vem
acompanhado de um aumento no clock, chegamos a um processador
ineficiente, que consome muito mais energia e dissipa muito mais calor.

Por armazenar instruções decodificadas, o cache L1 do Pentium 4 também se
tornou menos eficiente, já que instruções decodificadas ocupam mais espaço.
Enquanto o Athlon possuía 64 KB (metade) do cache L1 reservado para
armazenar instruções, o cache do Pentium 4 Willamette armazenava o
equivalente a apenas 8 KB. Isso tornava o processador mais dependente do

                                                                          214
cache L2 (que devia ser obrigatoriamente maior, para que o processador
mantivesse um bom nível de desempenho) e do barramento com a memória
RAM, que deveria ser capaz de alimentar os caches.

O Pentium 4 original (core Willamette) possuía apenas 256 KB de cache L2,
por isso era consideravelmente mais lento que um Athlon, ou mesmo um
Pentium III do mesmo clock. O core Northwood, lançado em seguida, trouxe
512 KB de cache e o Prescott (lançado em 2004) trouxe 1 MB completo.




                        Pentium 4 com core Prescott

O cache L2 é um item extremamente caro, pois cada bit de cache adiciona
cerca de 6 transístores ao processador. Um cache L2 de 1 MB ocupa pelo
menos 60 milhões de transístores, o que é quase o dobro do número de
transístores do Athlon Palomino (que possuída 37.5 milhões). Mais transístores
tornam o processador proporcionalmente mais caro de se produzir, o que
aumenta o preço de venda.

Para completar, existiu o problema das memórias Rambus, um tipo proprietário
de memória, que trabalhava a freqüências superiores, porém com tempos de
latência mais altos, o que eliminava a maior parte do ganho. O Pentium 4
utilizaria apenas memórias Rambus, obrigando os fabricantes de memória a
aderirem à nova tecnologia. A Rambus Inc. receberia royalties dos fabricantes
e a Intel ficaria com parte do bolo, na forma de incentivos e descontos.

Felizmente não foi o que aconteceu. As memórias Rambus foram um dos
maiores fiascos da história da informática. Na época do lançamento do Pentium
4, um módulo de 64 MB custava US$ 99, enquanto um módulo de memória
PC-133 da mesma capacidade custava apenas US$ 45. Isto significava gastar

                                                                          215
US$ 216 (ao comprar 256 MB) a mais, só de memória, sem contar a diferença
de preço do processador Pentium 4 e da placa-mãe, que na época ainda eram
consideravelmente mais caros.

Pouca gente comprou as versões iniciais do Pentium 4, e quem se arriscou
acabou com um abacaxi nas mãos. Isto obrigou a Intel a modificar a
plataforma, passando a utilizar memórias DDR padrão. A demora gerou um
vácuo, que permitiu que a AMD aumentasse consideravelmente sua
participação no mercado, já que contava com o Athlon Thunderbird, um
processador mais barato e mais eficiente.

Com o Pentium 4 Northwood, a Intel voltou a ser competitiva, chegando
rapidamente aos 3.4 GHz. Foi introduzido também o Hyper Treading, que visa
melhorar a eficiência do processador, dividindo-o em dois processadores
lógicos. O plano da Intel, de compensar a baixa eficiência do Pentium 4 com
freqüências de clock maiores, parecia estar dando certo. Na época, o roadmap
da Intel mostrava processadores Pentium 4 com core Prescott atingindo 5.2
GHz no final de 2004 e planos para o core "Tejas", que alcançaria
impressionantes 10 GHz no final de 2005.

Porém, nada disso aconteceu. Os 3.4 GHz se tornaram uma barreira difícil de
transpor. A partir daí, a Intel conseguiu apenas pequenos incrementos de clock,
atingindo a muito custo os 3.8 GHz com o Prescott, que além de ser produzido
numa técnica de 0.09 micron, teve o pipeline esticado para um total de 31
estágios. Acima de 3.8 GHz, o gate leakage, ou seja, a eletricidade perdida
pelos transístores do processador a cada ciclo, tornava o consumo e
dissipação térmica altos demais.

Embora seja possível superar a barreira dos 4.0 GHz com o Prescott, via
overclock, o resultado é um processador beberrão demais. É como se cada
transístor do processador fosse um minúsculo cano, por onde passa água.
Quanto menores os transístores, mais finos são os canos e quanto maior o
clock, mais forte é a pressão da água.

Os transístores são compostos por filamentos muito finos, o que causa uma
pequena perda de energia, chamada de "gate leakage" a cada chaveamento.
É como se os canos do exemplo possuíssem pequenos furos por onde vaza
uma pequena quantidade de água. Conforme o clock aumenta, a pressão se
torna mais forte e cada vez mais água vaza pelos canos, gerando um
desperdício cada vez maior. No caso do processador, toda a energia
desperdiçada se transforma em calor, o que traz a necessidade de um cooler
mais eficiente, gerando um ciclo vicioso. A partir dos 4 GHz (no caso do
Pentium 4), é necessário um aumento cada vez maior no consumo e
dissipação térmica, em troca de um aumento cada vez menor na freqüência de
operação.

A Intel chegou a demonstrar uma versão do Prescott refrigerada com nitrogênio
líquido, que trabalhava a 6.0 GHz, porém consumia mais de 300 watts. A
equipe do site akiba-pc foi capaz de reproduzir o feito (a página original não


                                                                           216
está mais no ar), também usando nitrogênio liquido, porém sem estabilidade e
por um curto espaço de tempo:




        Pentium 4 Prescott a 6 GHz, refrigerado com nitrogênio líquido

O pequeno aumento no clock proporcionado pelo core Prescott serviu mais
para encobrir a perda de desempenho causada pelo novo aumento no número
de estágios do pipeline do que para realmente aumentar o desempenho,
transformando o Prescott em um dos maiores fiascos da história da Intel. Uma
versão atualizada do Prescott, com 2 MB de cache, foi lançada no início de
2005 (utilizada no Pentium 4 Extreme Edition), dando um último fôlego à
plataforma, porém, novamente sem aumento no clock.

O Cedar Mill, lançado no início de 2006, mais uma vez mostrou a dificuldade
em produzir processadores Pentium 4 com clock mais alto. Mesmo produzido
numa técnica de 0.065 micron, o Cedar Mill não foi capaz de superar a barreira
dos 3.8 GHz. Ao invés disso, a Intel optou por produzir processadores dual
core (baseados no core Presler), chegando ao Pentium Extreme Edition 965,
que opera a 3.73GHz. Em resumo: em dois anos, a Intel conseguiu apenas
ganhos incrementais de desempenho na plataforma Pentium 4. Caminhou
bastante, porém para o lado e não para a frente.

Naturalmente, a AMD não ficou parada. Depois do Athlon Palomino e do
Thoroughbred, a AMD lançou o Barton, que trouxe pequenas melhorias de
projeto e 512 KB de cache L2. Além de ser usado nas versões mais rápidas do
Athlon XP, o core Barton foi utilizado nos Semprons 2400+ a 3000+, os últimos
processadores lançados para o saudoso soquete A.

A partir daí, temos os Athlon 64, Athlon 64 FX, Athlon 64 X2 e os Semprons
para as placas soquete 754, 939 e AM2. Pela primeira vez na história, a AMD
tomou a dianteira, produzindo processadores mais rápidos que a Intel e

                                                                          217
fazendo seu padrão de instruções de 64 bits (o AMD64) prevalecer, obrigando
a Intel a desenvolver o EM64T, um conjunto compatível de instruções, incluído
no Pentium 4 Prescott, sem muito alarde.

De fato, a participação da AMD no mercado só não cresceu mais neste período
devido à sua incapacidade de produzir seus processadores em maior volume.
Assim como é demorado desenvolver um novo projeto, também é caro e
demorado inaugurar novas fábricas.

Por sorte, a Intel não desistiu inteiramente de produzir um processador mais
econômico e com um melhor desempenho por clock, apenas relegou o projeto
a segundo plano, dando prioridade ao desenvolvimento do Pentium 4 e da
plataforma NetBurst.

O desenvolvimento deste processador de baixo consumo ficou a cargo de um
grupo de engenheiros sediados em Israel, que passaram a trabalhar em uma
versão aprimorada do antigo Pentium III, um processador com menos estágios
e menos transístores, incapaz de atingir freqüências de operação muito altas,
mas que, em compensação, oferecia um desempenho por clock muito superior
ao do Pentium 4.

A idéia era trabalhar para reforçar os pontos fortes do Pentium III e minimizar
seus pontos fracos, produzindo um processador com um desempenho por ciclo
ainda melhor, mas que, ao mesmo tempo, consumisse menos energia e fosse
capaz de operar a freqüências mais altas.

A primeira encarnação do novo processador foi o core Banias (lançado em
2003), que chegou ao mercado na forma da primeira versão do Pentium-M.
Muitos defendem que o Banias recebeu tantas melhorias em relação ao
Pentium III, que pode ser considerado um novo projeto em vez de uma
evolução deste. Como neste caso os critérios são subjetivos, você pode aderir
a qualquer uma das duas linhas, como preferir.

O Banias foi fabricado numa técnica de produção de 0.13 micron, com 64 KB
de cache L1 e 1 MB de cache L2 e em versões de até 1.6 GHz. O barramento
com o chipset (o principal ponto fraco do Pentium III) foi substituído pelo
mesmo barramento de 400 MHz utilizado do Pentium 4, reduzindo o gargalo na
conexão com a memória.

O Banias recebeu ainda o reforço das instruções SSE2 e uma versão
aprimorada do SpeedStep, que gerencia dinamicamente o clock, tensão e
componentes internos do processador, desativando os componentes que não
estão em uso e reduzindo a freqüência nos momentos de pouca atividade,
reduzindo bastante o consumo do processador. Um Banias de 1.6 GHz
consome 24 watts ao operar na freqüência máxima, mas consome pouco mais
de 4 watts quando ocioso, operando na freqüência mínima.

Junto com o Banias, veio a marca "Centrino", uma jogada de marketing da
Intel, para vender o pacote completo, com o processador, chipset e placa


                                                                           218
wireless. Apenas os notebooks com os três componentes podem usar a marca
"Centrino", criando uma certa pressão sobre os fabricantes.

Na foto a seguir temos o interior de um notebook Asus A6V, em que temos (da
esquerda para a direita) o processador, chipset e placa wireless assinalados:




     Interior de um notebook Asus A6V, baseado na plataforma Centrino

O Banias mostrou ser um processador promissor. Mesmo com o agressivo
sistema de gerenciamento de energia (que causava uma pequena diminuição
no desempenho, mesmo quando o processador operava na freqüência
máxima), o Banias era cerca de 50% mais rápido que um Pentium 4 Northwood
do mesmo clock (embora ficasse longe de superá-lo, já que operava a
freqüências de clock muito mais baixas).

Em 2004 foi lançado o Pentium-M com core Dothan, equipado com 2 MB de
cache L2, melhorias no circuito de branch prediction (que minimiza a perda de
tempo com operações de tomada de decisão), um reforço nas unidades de
execução de inteiros e melhoria no acesso aos registradores. Combinadas,
estas melhorias resultaram num ganho real de cerca de 8% em relação a um
Banias do mesmo clock.

O Pentium M com core Dothan atingiu 2.0 GHz (Pentium M 755), com um
consumo de apenas 21 watts, menos que o Banias de 1.5 GHz.

Como de praxe, foi lançada também uma versão do Celeron baseada no
Dothan, o Celeron-M, que se tornou bastante comum nos notebooks de baixo
custo. Ele é castrado de duas formas, a fim de não concorrer diretamente com
o Pentium-M: vem com metade do cache e com o suporte ao gerenciamento de
energia desativado, fazendo com que o processador trabalhe sempre na


                                                                          219
freqüência máxima, desperdiçando energia e reduzindo a autonomia das
baterias.

Aproveitando o baixo consumo do Dothan, a Intel desenvolveu o Yonah, um
processador dual-core para notebooks, produzido usando uma técnica de
0.065 micron. O Yonah original passou a ser vendido sobre a marca "Core
Duo", enquanto uma versão de baixo custo, com um único core assumiu a
marca "Core Solo".

Assim como o Dothan, o Yonah possui 2 MB de cache L2. Entretanto, em vez
de ser dividido entre os dois cores (1 MB para cada um), o cache é
compartilhado, permitindo que ambos os cores acessem os mesmos dados,
evitando assim duplicação de informações e desperdício de espaço. Nos
momentos em que o processador está parcialmente ocioso, o segundo core
pode ser completamente desligado (para economizar energia), deixando o
primeiro core com um cache de 2 MB inteiramente para si.

A desvantagem do cache compartilhado é que ele aumenta o tempo de
latência: são necessários 14 ciclos para acessar alguma informação no L2 do
Yonah, contra 10 ciclos do Dothan. Apesar disso, o Yonah possui dois núcleos,
o que acaba compensando a diferença e proporcionando um bom ganho em
relação ao Dothan. Outro pequeno ganho é proporcionado pela inclusão das
instruções SSE3.

Um processador dual core melhora bastante a responsividade do sistema ao
executar várias tarefas simultaneamente, já que os processos podem ser
divididos entre os dois cores, porém faz pouca diferença ao rodar aplicativos
leves. Entretanto, hoje em dia é comum deixarmos muitos programas abertos
simultaneamente, sem falar nos processos em background, o que faz com que
um processador dual-core realmente proporcione uma melhora significativa,
embora a maioria dos benchmarks não mostrem isso, já que simulam o uso de
um único aplicativo.

O Yonah inclui uma versão atualizada do sistema de gerenciamento de energia
introduzido no Banias, que desliga partes do processador ociosas, mantendo
apenas um dos cores ativos em momentos de pouca atividade. Isso faz com
que o consumo médio de um Core Duo, em tarefas leves, não seja muito
diferente de um Core Solo do mesmo clock, o que acaba juntando o melhor dos
dois mundos.

Ao executar tarefas pesadas, um Core Duo de 2.0 GHz consome 31 watts,
contra 21 watts do Dothan do mesmo clock. Ou seja, mesmo com os dois cores
ativos, o consumo aumenta menos de 50%, muito longe de dobrar, como seria
de se esperar.

O departamento de marketing da Intel passou então a falar em "eficiência" em
vez de freqüências de clock mais altas. Os planos frustrados de lançar um
processador de 10 GHz baseado no Pentium 4 foram varridos para debaixo do
tapete e a meta passou a ser lançar processadores que executem mais


                                                                          220
processamento com menos energia, exacerbando os pontos fortes dos
processadores Core Solo e Core Duo, baseados no core Yonah.

Este slide do IDF 2006 dá uma amostra do novo discurso. Ele mostra como a
eficiência energética (o volume de eletricidade necessária para processar cada
instrução) dos processadores vinha caindo desde o Pentium, atingindo seu
nível mais baixo com o Pentium 4 Dual Core, até a introdução do Banias,
Dothan e Yonah; uma posição pouco honrosa para o Pentium 4, que (segundo
a própria Intel) precisa de 5 vezes mais eletricidade para fazer o mesmo
trabalho:




Conroe


Apesar de possuir um desempenho por ciclo de clock muito superior ao do
Pentium 4 e do Pentium D, superando-os em muitas aplicações, o Yonah era
um processador mobile e por isso era limitado a freqüências de operação
relativamente baixas.

Surgiu então o Conroe, uma versão aperfeiçoada do Yonah, com foco no uso
em desktops, que deu origem às primeiras versões do Core 2 Duo, lançadas
em junho de 2006. Embora seja um chip radicalmente diferente, ele é
produzido utilizando a mesma técnica de 0.065 micron utilizada na produção do
Cedar Mill e do Presler e utiliza o mesmo encapsulamento que eles.

Outra similaridade com o Pentium D é o uso do mesmo barramento de dados,
o que permitiu que o Conroe continuasse utilizando o soquete LGA775,
introduzido em 2004.


                                                                          221
Praticamente todas as placas soquete 775 produzidas a partir de 2006
oferecem suporte ao Conroe, embora muitas precisem de um upgrade de
BIOS. O grande problema são as placas antigas, que incluem quase todas as
placas produzidas em 2004 e 2005 e parte das placas produzidas nos
primeiros meses de 2006.

O Core 2 Duo precisa de uma placa com um regulador de tensão compatível
com a especificação VRM 11, que foi finalizada apenas em 2006. Sem um
regulador de tensão compatível, a placa não tem como gerar as tensões
utilizadas pelo processador e acaba sendo incompatível, mesmo que utilize um
chipset compatível e um BIOS capaz de reconhecer corretamente o
processador.

Todos os Core 2 Duo utilizam o soquete 775, sem nenhum tipo de
compatibilidade com as antigas placas soquete 478, que ficam limitadas aos
Pentium 4 e Celeron D.




                                Core 2 Duo

O Conroe não inclui nenhum tipo de controlador de memória integrado. Essa
continua sendo uma exclusividade do Athlon 64 e sua principal arma, que
permite reduzir de forma substancial o tempo de acesso à memória, ajudando
assim a reduzir a pressão sobre os caches. O Athlon 64 também possui 128
KB de cache L1 (64k dados + 64k instruções), o dobro do Conroe, que possui
apenas 64KB (dividido em dois blocos de 32 KB, para dados e instruções).




                                                                         222
Foto de divulgação da Intel que mostra o encapsulamento do processador

Em compensação, o cache L1 do Conroe trabalha com 8 linhas de associação,
contra apenas duas do Athlon 64. Isso torna o cache mais eficiente,
aumentando a probabilidade da informação necessária ser encontrada. A
segunda vantagem é o massivo cache L2, que além de maior, é acessado
através de um barramento de dados de 256 bits, muito mais largo que o usado
no Athlon 64 (que usa um barramento de 128 bits). Uma observação é que o
Conroe voltou a utilizar um cache L1 tradicional, sem vestígios do "trace cache"
usado no Pentium 4, que armazenava instruções decodificadas.

Até o core Manchester, a AMD utilizava um cache L2 com 12 tempos de
latência, o que representava uma pequena vantagem em relação ao Conroe,
que utiliza um cache L2 com 14 tempos. Apesar disso, a partir do core
Brisbane, a AMD passou a também utilizar um cache L2 com 14 tempos, o que
equilibrou a balança. Para efeito de comparação, o Prescott utilizava um cache
L2 com absurdos 28 tempos de latência, muito mais lento que ambos.

A maioria das versões do Core 2 Duo utilizam bus de 1066 MHz (4x 266), o
que ajuda a reduzir a latência do acesso à memória, reduzindo a vantagem do
Athlon 64 neste quesito. Aparentemente, a Intel chegou à conclusão de que o
novo cache, combinado com o uso de memórias DDR2 ou DDR3 de baixa
latência tornam desnecessário o uso de um controlador de memória integrado.

Muitas das melhoras estruturais do Conroe em relação ao Pentium 4 e
processadores anteriores da Intel já estavam disponíveis no Dothan e Yonah,
mas vou abordá-las em conjunto para simplificar a abordagem.

Uma das melhoras mais significativas é o recurso batizado de Macro-fusion,
que permite que diversos pares de instruções comuns sejam combinados em
uma única instrução, em vez de serem processados separadamente. Isto

                                                                            223
causa um efeito cascata, economizando espaço nos buffers, economizando
processamento no agendador de instruções (scheduler), e assim por diante,
resultando num ganho bruto de até 11%.

O Conroe possui 3 decodificadores de instruções simples e mais um
decodificador de instruções complexas, 4 no total. Graças ao Macro-fusion,
uma grande quantidade de instruções são combinadas (um par em cada 10
instruções, segundo os engenheiros da Intel), permitindo que em quase metade
dos ciclos sejam decodificadas 5 instruções. O Athlon 64 possui apenas 3
decodificadores, capazes de lidar tanto com instruções simples (as mais
comuns), quanto com instruções complexas. Isso significa que, na maior parte
do tempo, os 4 decodificadores do Conroe levam uma grande vantagem, mas
em alguns aplicativos que utilizem predominantemente instruções complexas, o
Athlon 64 se sai melhor.

O Conroe leva uma grande vantagem também ao processar instruções SSE de
128 bits, pois é capaz de processá-las diretamente, num total de 3 instruções
completas por ciclo. O Athlon 64 também possui três unidades SSE, mas nele
cada instrução SSE precisa ser dividida em duas instruções de 64 bits, que são
processadas separadamente. Ou seja, na prática, o Athlon 64 processa apenas
três instruções SSE a cada dois ciclos, ou seja, o equivalente a apenas uma
instruções SSE e meia por ciclo.

Atualmente, os conjuntos SSE, SSE2 e SSE3 são utilizados na grande maioria
dos games, programas de processamento de vídeo e assim por diante, onde as
instruções SSE são usadas como substitutas mais rápidas para instruções x87,
executadas através do coprocessador aritmético. Isso acentua a vantagem do
Conroe em aplicativos muito otimizados para as instruções SSE, sobretudo
programas de compressão de vídeo e áudio.

Só para efeito de comparação, o Pentium 4 possuía apenas duas unidades
SSE, que, como as do Athlon 64, eram capazes de processar apenas meia
instrução por ciclo. Ou seja, o Conroe possui três vezes mais processamento
bruto em SSE que o Pentium 4, o que explica a enorme diferença entre os dois
em alguns benchmarks.

Outro reforço são as unidades de ponto flutuante (que formam o coprocessador
aritmético) capazes de processar 4 instruções de dupla precisão por ciclo,
contra apenas 3 por ciclo do Athlon 64.

Em relação ao Presler, foi mantido também o suporte ao EM64T, que torna o
Conroe compatível com os sistemas e aplicativos de 64 bits, desenvolvidos
para o Athlon 64 (um pré-requisito para qualquer processador x86 atual) e
também com o Intel VT.

Você deve se lembrar do pipeline de 31 estágios do Pentium 4 com core
Prescott. Sempre que o processador chega a uma operação de tomada de
decisão, ele precisa esperar a conclusão do processamento da primeira
instrução (o que, no Prescott, demora 31 ciclos) para saber quais instruções
deve processar em seguida. Para não ficar parado, o processador utiliza o

                                                                          224
circuito de branch prediction, que escolhe o caminho mais provável, permitindo
que o processador vá "adiantando o trabalho". O problema é que, sempre que
é feita a escolha errada, todo o trabalho precisa ser descartado, causando uma
grande perda de tempo.

O Conroe possui um pipeline de apenas 14 estágios e um circuito de branch
prediction muito aprimorado em relação ao Pentium 4. Isso faz com que ele
tome bem menos decisões erradas e perca muito menos tempo (menos da
metade do número de ciclos) em cada um, gerando um grande aumento no
número de instruções efetivamente processadas por ciclo de clock.

O mais interessante é que, apesar de possuir apenas 14 estágios e ser muito
mais eficiente, o Conroe atingiu 2.96 GHz (no X6800) logo no lançamento, se
aproximando das freqüências atingidas pelo Pentium 4 e superando por uma
boa margem o clock dos Athlon X2.

Os Core 2 Duo também oferecem suporte ao SpeedStep (como nos Pentium-
M), que ajuda a reduzir o consumo para níveis ainda menores, sem prejudicar
de forma perceptível o desempenho. Com o SpeedStep ativado, o processador
reduz a freqüência de operação e a tensão (diminuindo consideravelmente o
consumo), mas volta ao clock máximo assim que é executada alguma tarefa
pesada. No Extreme X6800, por exemplo, o processador trabalha nativamente
a 2.93 GHz e usa 1.34v. No modo de economia, a freqüência cai para 1.6 GHz
e a tensão para apenas 0.9v, resultando num consumo de apenas 25 watts,
similar ao de um Pentium III 900.

Temos aqui uma foto do Conroe antes do encapsulamento do processador,
divulgada pela Intel. Na verdade, as versões baseadas no core Conroe com 2 e
4 MB de cache são idênticas, porém as de 2 MB têm metade do cache
desativado antes do encapsulamento, como nos Celeron:




                                                                           225
Foto mostrando os componentes internos do Core 2 Duo baseado no Conroe

Outro recurso herdado do Yonah, e por enquanto exclusivo dos processadores
Intel, é o "Advanced Smart Cache", um sistema de cache unificado, onde os
dois núcleos compartilham o mesmo bloco de cache L2, em vez de cada um
possuir um cache separado, como no caso do Pentium D e do Athlon X2.

A principal vantagem desta abordagem é evitar a duplicação de informações
quando ambos os núcleos estão trabalhando no mesmo bloco de instruções.
Em vez de a informação ser carregada duas vezes na memória (uma vez para
cada bloco de cache) e ser armazenada duas vezes, tudo é feito uma vez só, o
que poupa tanto o barramento com a memória, quanto economiza espaço no
cache, aumentando o número de informações efetivamente armazenadas.
Outra vantagem é que, em momentos de baixa atividade, quando apenas um
dos núcleos estiver ativo, ele pode "tomar conta" do cache, reservando a maior
parte do espaço para si, de forma a trabalhar mais eficientemente.

Este slide da Intel ilustra como o sistema funciona:




                                                                          226
Criar um cache unificado deve ter representado um grande desafio do ponto de
vista técnico, já que com ambos os processadores acessando o cache
simultaneamente, constantemente gravando e apagando informações, é muito
difícil manter a coerência do cache, evitando que um modifique as informações
armazenadas pelo outro. Os circuitos necessários para coordenar o acesso ao
cache ocuparam um grande número de transístores do processador, mas uma
vez que o problema foi resolvido, o Smart Cache realmente representa uma
vantagem importante.

Assim como no caso do Pentium D e do Celeron D, os Core 2 Duo são
vendidos sob um sistema de numeração que não tem relação direta com o
desempenho do processador.

Os modelos lançados originalmente, em julho de 2006, incluem o E6300 (1.86
GHz, 2 MB, 1066 MHz), E6400 (2.13 GHz, 2 MB, 1066 MHz), E6600 (2.4 GHz,
4 MB, 1066 MHz) e E6700 (2.67 GHz, 4 MB, 1066 MHz).

Foi lançado também o Extreme X6800 (2.93 GHz, 4 MB, 1066 MHz), um
descendente da série "Extreme Edition", que além da freqüência um pouco
maior, vem com o multiplicador destravado, facilitando o overclock. Apesar do
marketing, ele é um processador produzido em volume limitado, que na época
de lançamento custava US$ 999 (o dobro do E6700 e mais de 4 vezes mais
que o E6400), o que o tornava um modelo "de vitrine".

Durante maio e junho de 2006, a Intel distribuiu vários processadores e placas
para review, porém sob um NDA que impedia a divulgação de detalhes sobre
eles e benchmarks. Quando o NDA expirou, vários sites publicaram reviews ao

                                                                          227
mesmo tempo. Você encontra um conjunto exaustivo de benchmarks das
versões iniciais do Core 2 Duo nos links a seguir:

http://techreport.com/reviews/2006q3/core2/index.x?pg=3
http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=2795&p=3
http://www.xbitlabs.com/articles/cpu/display/core2duo-e6300_9.html
http://www.firingsquad.com/hardware/intel_core_2_performance/page4.asp
http://www.tomshardware.com/2006/07/14/core2_duo_knocks_out_athlon_64/p
age11.html

Como era de se esperar, o Athlon X2 continua levando vantagem no acesso à
memória, tanto em latência quanto em taxas de transferência, graças ao
controlador de memória integrado. Mas o enorme cache L2 do Conroe,
combinado com as demais melhorias na arquitetura faz com que ele acabe
levando a melhor em quase todos os benchmarks. O que chama mais a
atenção é a consistência: ele apresenta um desempenho equilibrado em quase
todas as tarefas, sem os altos e baixos do Pentium 4, que se saía muito bem
em algumas tarefas e muito mal em outras.

O Athlon 64 FX-62 ainda consegue ser competitivo, em alguns dos testes, mas
os Athlon X2 perdem quase sempre por uma boa margem, até porque, o Core
2 Duo trabalha a freqüências de clock maiores. Os Pentium D ficam na lanterna
em quase todos os testes, com o 965 Extreme Edition perdendo para o Core 2
Extreme X6800 por uma margem de 40 a 60% em quase todos os testes e
esboçando alguma reação apenas no Photoshop, Sysmark 2004, no Sandra e
em alguns benchmarks envolvendo compressão de áudio e vídeo.

Em alguns testes, a desvantagem chega a ser maior: o Core 2 Duo Extreme
X6800 chega a ser 100% mais rápido que o Pentium XE 965 no game Rise of
The Legends. Naturalmente, o Extreme X6800 é muito caro para ser
considerado na hora da compra, mas os Duo E6300 e E6400 apresentam um
bom custo-benefício em relação aos Athlon X2, mesmo desconsiderando as
possibilidades de overclock.

Ao contrário do que ocorria em alguns modelos do Celeron, onde dobrar a
quantidade de cache causava um aumento de 10% ou mais no desempenho do
processador, os 4 MB de cache incluídos no E6600 em diante são
responsáveis por um aumento de apenas 2 a 4% no desempenho (por ciclo de
clock) em relação às versões com 2 MB, um ganho incremental. Apenas alguns
games chegam a exibir ganhos na casa dos 10%.

Embora mais cache seja sempre algo desejável, você deve levar em conta a
diferença de preço na hora de comprar. Sempre que a diferença for grande,
vale mais a pena comprar um modelo com 2 MB. Caso ache necessário, você
pode compensar a diferença de desempenho fazendo um overclock leve.

Em abril de 2007 foram lançadas duas novas versões, o E6320 (1.86 GHz, 4
MB, 1066 MHz) e o E6420 (2.13 GHz, 4 MB, 1066 MHz). Estas novas versões
são destinadas a substituir os antigos modelos E6300 e E6400, que possuem


                                                                          228
apenas 2 MB de cache. Com a substituição dos dois, toda a linha E6xxx passa
a ter 4 MB de cache L2.

Em junho de 2007 foram lançadas 3 novas versões do Conroe, destinadas a
placas com suporte a bus de 1333 MHz (4x 333 MHz). Todas possuem 4 MB
de cache L2 e conservam os mesmos recursos básicos, mas existe um
pequeno ganho de desempenho (inferior a 1% na maioria das aplicações) em
relação a um Conroe com bus de 1066 MHz de mesmo clock.

Os 3 modelos são o Core 2 Duo E6550 (2.33 GHz, 4 MB, 1333 MHz), E6750
(2.67 GHz, 4 MB, 1333 MHz) e E6850 (3.0 GHz, 4 MB, 1333 MHz).

Kentsfield


O Kentsfield é o processador Quad-Core da Intel, vendido sob a marca "Core 2
Quad". Assim como o Pentium D com core Presler, o Kentsfield é na verdade
um processador dual-chip, onde temos dois processadores dual-core
independentes, colocados dentro do mesmo encapsulamento e interligados
através do front-side bus. O dissipador metálico do processador esconde
justamente os dois chips separados:




        Core 2 Quad baseado no Kentsfield, sem o dissipador metálico

O Kentsfield nada mais é do que um Conroe adaptado para suportar a
configuração multi-clip. Foram mantidos os mesmos 4 MB de cache L2 por
processador (totalizando 8 MB, já que agora temos dois).

Cada chip é composto por 291 milhões de transístores, de forma que os dois
totalizam nada menos do que 582 milhões, um número sem precedentes
dentro da plataforma PC.

Embora seja interessante do ponto de vista técnico, o uso do Kentsfield em um
PC doméstico não representa uma grande vantagem em relação a um Conroe
do mesmo clock, já que, embora já existam muitos aplicativos multi-thread,
capazes de extrair algum ganho de desempenho do segundo core, ainda não
existem muitos aplicativos otimizados para o uso de 4 cores. Uma exceção

                                                                         229
importante são aplicativos de renderização 3D, como o 3Ds Max, onde o ganho
cresce quase linearmente ao adicionar mais núcleos, crescendo em quase 80%
em relação ao Conroe. Existe ganho de desempenho também na maior parte
dos codecs de compressão de vídeo, embora menor, na casa dos 10 a 20%.

A versão inicial do Kentsfield, lançada em novembro de 2006, é o Core 2
Extreme QX6700 (2.66 GHz, 2x 4 MB, 1066 MHz) que era vendido por US$
999, o mesmo preço do Core 2 Extreme X6800 (que apesar de possuir apenas
dois cores, operava a 2.93 GHz). Em Janeiro de 2007 foi lançado o Core 2
Quad Q6600 (2.4 GHz, 2x 4 MB, 1066 MHz) uma versão mais barata, que
passou a custar "apenas" US$ 530 (preço nos EUA) a partir de abril de 2007.

As diferenças na freqüência de operação em relação às versões dual-core é
causada por dois motivos. O primeiro é que, assim como no caso do Presler
(usado no Pentium D), o uso de dois chips separados gera problemas de
sincronismo, que dificultam a operação do processador à freqüência máxima. A
segunda é a própria questão da dissipação térmica, já que, a 2.66 GHz, o
Kentsfield tem um TDP de 130 watts. Tanto a freqüência nominal de operação
quanto a margem de overclock são menores no Kentsfield do que nos Core 2
Duo e Core 2 Extreme baseados no Conroe, o que, além de anular parte das
vantagens trazidas pelos dois cores adicionais, faz com que ele realmente
perca para as versões dual-core em muitos aplicativos.

Apesar disso, em abril de 2007 a Intel conseguiu lançar o QX6800 (2.93 GHz,
2x 4 MB, 1066 MHz), que, embora com 10 meses de atraso, conseguiu igualar
a freqüência do X6800 dual-core.

Em julho de 2007 foi lançado o QX6850 (3.0 GHz, 2x 4MB, 1333 MHz), que
apesar do pequeno incremento no clock, trouxe como novidade o uso do FSB
de 1333 MHz, suportado pela nova geração de placas soquete 775. No caso do
Kentsfield o aumento na freqüência do FSB é importante, pois além de ser
usado para o acesso à memória, ele é responsável por toda a comunicação
entre os dois chips. Como de praxe, ao ser lançado o QX6850 ocupou o posto
de processador mais caro da Intel, vendido por US$ 999 (nos EUA),
empurrando para baixo o preço dos antecessores.

Um dos grandes problemas do Kentsfield é que ele não inclui nenhum sistema
de gerenciamento avançado de energia, que permita desligar ou reduzir a
tensão dos núcleos ociosos. Ele suporta o SpeedStep, assim como o Conroe,
mas a mesma tensão e freqüência são sempre aplicadas aos 4 núcleos, sem
distinção. Se um dos núcleos passa a trabalhar a todo vapor (executando um
aplicativo que não seja otimizado para multiprocessamento, por exemplo),
todos os 4 cores passarão a trabalhar na freqüência máxima, mesmo que 3
deles estejam ociosos. Devido a isso, o Kentsfield passa mais de 90% do
tempo consumindo o dobro de energia que um Conroe do mesmo clock,
variando de pouco mais de 40 watts (enquanto o processador está ocioso) a
até quase 130 watts quando operando a 2.66 GHz.

Você pode encontrar um conjunto bastante completo de benchmarks do
Kentsfield neste link do TomsHardware (a partir da página 8):

                                                                        230
http://www.tomshardware.com/2006/09/10/.   Ele   inclui  duas    versões
overclocadas, operando a 3.0 e 3.3 GHz. Outro set bem elaborado de
benchmarks             é          este           do           Anandtech:
http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=2866&p=10.

Allendale


O Allendale não é um novo processador, mas sim uma versão reduzida do
Conroe, que possui apenas 2 MB de cache L2 e é por isso mais barato de se
produzir. Na prática, os processadores baseados no core Allendale são muito
semelhantes aos E6300 e E6400, modelos do Conroe com metade do cache
L2 desabilitado ainda em fábrica.

O principal objetivo da Intel ao desenvolver o Allendale é o de produzir modelos
de baixo custo do Core 2 Duo, destinados a substituir os antigos Pentium D
baseados na arquitetura NetBurst.

Os primeiros modelos baseados no Allendale foram os Core 2 Duo E4300 (1.8
GHz, 2 MB, 800 MHz), E4400 (2.0 GHz, 2 MB, 800 MHz) e E4500 (2.2 GHz, 2
MB, 800 MHz).

Como você pode ver, os três modelos utilizam bus de 800 MHz, de forma a
oferecerem uma melhor compatibilidade com placas antigas. O bus mais baixo
serve também para diferenciá-los dos modelos mais caros do Core 2 Duo, que
utilizam bus de 1066 ou 1333 MHz, que resulta em um pequeno incremento de
desempenho.

Mas, o uso do bus de 800 MHz tem suas vantagens, já que facilita o overclock.
Por operarem a freqüências mais baixas e serem produzidos usando as
mesmas técnicas usadas no Conroe, os Allendale possuem margens de
overclock surpreendentes. Se a placa-mãe e as memórias permitirem, você
pode aumentar a freqüência do FSB de 200 MHz (800) para 300 MHz (1200), e
assim fazer um mero E4300 operar a 2.7 GHz. Em muitos casos, você vai
precisar aumentar a tensão do processador em 0.1v para estabilizar o sistema,
mas em outros ele vai funcionar perfeitamente mesmo usando os 1.325v
default. Dependendo da série usada (e naturalmente do cooler), você pode
atingir 3.0 GHz (9x 333 MHz) ou mesmo 3.15 GHz (9x 350 MHz), aumentando
a tensão em 0.2v.

Não existe uma grande diferença nas freqüências atingidas pelas três versões,
de forma que é preferível comprar um E4300, que é mais barato, e investir a
diferença em uma placa-mãe de melhor qualidade, que lhe ofereça maiores
condições de overclock ou em um cooler mais parrudo. Não se esqueça
também de instalar exaustores adicionais no gabinete para melhorar a
circulação de ar. A colocação de um exaustor traseiro (puxando o ar para fora)
e outro na abertura frontal, ou sobre o processador (empurrando o ar para
dentro) tem, na maioria dos casos, um efeito maior do que trocar o cooler do
processador. De nada adianta um cooler de ponta dentro de um gabinete
abafado.

                                                                            231
Continuando a saga do Allendale, temos também dois modelos castrados,
onde metade do cache L2 é desabilitado em fábrica (a velha técnica de usar a
metade boa do cache, aproveitando processadores que de outra forma seriam
descartados). Diferentemente das versões com 2 MB, que são vendidos sob a
marca "Core 2 Duo", esses processadores com apenas 1 MB são vendidos sob
a marca "Pentium".

A mudança de nome tem um efeito meramente psicológico. O objetivo é
simplesmente aproveitar o esforço de marketing feito em torno do Pentium D, já
que as versões de 1 MB do Allendale substituem diretamente os últimos
remanescentes da série 9xx, baseados no antigo core Presler.

Temos então o Pentium E2140 (1.6 GHz, 1 MB, 800 MHz) e o Pentium E2160
(1.8 GHz, 1 MB, 800 MHz). Estes dois processadores foram os primeiros
processadores baseados na plataforma Core a serem vendidos por menos de
US$ 100. Com exceção dos modelos mais baratos do Athlon X2, eles são os
processadores dual-core mais baratos que você pode comprar.

Todos os processadores baseados no core Allendale são produzidos nas
mesmas fábricas e compartilham os mesmos waffers de silício. O que
diferencia um Core 2 Duo da série E4xxx de um Pentium E2xxx é meramente o
fator "sorte". Os processadores perfeitos são vendidos como Core 2 Duo,
enquanto os que apresentam defeitos em células do cache têm metade do
cache desabilitado e são vendidos como Pentium E. Isso faz com que as duas
famílias ofereçam margens de overclock similares, o que torna o Pentium E
uma opção muito interessante para quem quer um micro rápido gastando
pouco.

Um mero Pentium E2160, espetado em uma boa placa-mãe, em overclock para
3.0 GHz (9x 333 MHz, com aumento de 0.2v na tensão) pode competir de igual
para igual com um Core 2 Duo E6700 (2.67 GHz) e superá-lo em muitas
aplicações, custando menos de um terço do valor.

A redução do cache de 4 MB para apenas 1 MB não tem um efeito tão grande
sobre o desempenho quanto poderíamos imaginar à primeira vista. Alguns
games (como o Company of Heroes) chegam a apresentar quedas de até 20%
no FPS, mas a maioria dos games e aplicativos de produtividade apresenta
uma queda de 5 a 15%. Alguns aplicativos, como o 3Ds Max, pouco são
influenciados pela redução no cache, apresentando quedas de menos de 3%.

Você pode ver algumas comparações entre Conroes e Allendales (operando à
mesma freqüência) com 4, 2 e 1 MB de cache neste link do xbitlabs:
http://www.xbitlabs.com/articles/cpu/display/pentium-e2160_4.html

Uma curiosidade é que, com o lançamento do Allendale, passaram a existir
séries dos Core 2 Duo E6300 e E6400 baseadas no Conroe (com metade do
cache L2 desabilitado) e outras baseadas no Allendale, que oferece os
mesmos 2 MB de cache L2. A diferença neste caso é apenas técnica, já que
não existem outras diferenças na arquitetura. Entretanto, as séries baseadas


                                                                          232
no Allendale são de fabricação mais recente e por isso tendem a oferecer
margens de overclock um pouco superiores.

Conroe-L


Com exceção de alguns poucos aplicativos científicos cuidadosamente
otimizados, os processadores dual-core não chegam nem perto de serem duas
vezes mais rápidos do que processadores single-core de arquitetura e clock
similares. Pelo contrário, na maioria das tarefas o ganho acaba sendo de
apenas 10 ou 15%, muito embora os ganhos em multitarefa sejam visíveis.

Se os processadores single-core fossem capazes de operar ao dobro da
freqüência, superariam os dual-core por uma margem considerável. A principal
questão é que, devido ao gate-leakage e a outros fatores, não é mais tão
simples aumentar a freqüência de operação dos processadores. Como a
história do Pentium 4 mostrou, técnicas como aumentar o número de estágios
de pipeline do processador ou aumentar os tempos de latência do cache L2 de
forma a permitir que o processador seja capaz de atingir freqüências de
operação mais elevadas acabam sendo contra-produtivas, já que o pequeno
aumento na freqüência acaba não compensando a perda de desempenho.

Por outro lado, a cada nova técnica de fabricação, os transístores do
processador tornam-se menores, gerando uma redução substancial no espaço
ocupado pelo processador. Os fabricantes têm então a opção de manter o
projeto anterior (o que causa uma redução no custo de produção, já que a área
ocupada por cada processador passa a ser menor) ou de usar o espaço
adicional para adicionar componentes que possam aumentar o desempenho do
processador.




 Redução no tamanho do processador, de acordo com a técnica de fabricação
                                usada

A modificação mais simples é adicionar mais cache L2. As células de cache
são "clones" umas das outras, de forma que é muito fácil para os projetistas

                                                                         233
adicionar mais 2 ou 4 MB de cache L2. A questão é que, a partir de um certo
ponto, adicionar mais cache passa a gerar ganhos de desempenho cada vez
menores. Aumentar o cache do processador de 256 KB para 2 MB gera um
ganho expressivo de desempenho, mas aumentar de 2 MB para 4 MB gera um
ganho muito menor.

A partir de um certo ponto, adicionar um segundo núcleo ao processador gera
um ganho muito maior do que adicionar mais cache. Embora não seja tão
simples quanto adicionar mais cache, criar um processador com dois núcleos
ainda é muito mais simples do que desenvolver um novo projeto a partir do
zero.

Passa então a fazer mais sentido vender processadores dual-core, repassando
o aumento no custo para os consumidores do que continuar vendendo
processadores    single-core   indefinidamente. Afinal, a         cada novo
aperfeiçoamento na técnica de fabricação, a diferença de custo fica menor.

Com o Core 2 Duo, todos os processadores de médio a alto custo da Intel
passaram a ser dual-core ou quad-core. Durante a transição, os processadores
Pentium D e Celeron D, baseados na arquitetura do NetBurst tornaram-se a
linha de baixo custo e passaram a ser vendidos a preços cada vez mais baixos.

Para ter uma idéia, no início de agosto de 2006, o Pentium D 805 (2.66 GHz)
era vendido (nos EUA) por apenas US$ 90, menos da metade do preço do
Core 2 Duo E6300. Durante o início de 2007, as últimas unidades do Celeron D
chegaram a ser vendidas por menos de US$ 25, mais barato até mesmo que
os Semprons. Isso explica a grande oferta de PCs populares com o Celeron D
ou até mesmo com o Pentium D que tivemos ao longo da primeira metade de
2007.

Esses preços baixos foram um fenômeno momentâneo, que serviu para acabar
com os estoques de processadores da geração anterior. Não seria viável para
a Intel vender versões do Core 2 Duo nesses preços, já que o processador
custa mais do que isso para ser produzido.

A solução encontrada pela Intel foi desenvolver uma versão simplificada do
Conroe, com apenas um núcleo e 512 KB de cache L2, batizada de Conroe-L.
Nasceu assim o sucessor do Celeron-D, que voltou a ser chamado
simplesmente de "Celeron" e foi lançado sem muito alarde.

As versões iniciais, lançadas em junho de 2007, incluem o Celeron 420 (1.6
GHz), o Celeron 430 (1.8 GHz) e o Celeron 440 (2.0 GHz). Os três modelos
possuem apenas 512 KB de cache L2, utilizam bus de 800 MHz (4x 200 MHz)
e são produzidos usando a técnica de 0.065 micron. Eles são genericamente
chamados de "Celeron 4xx", termo que adoto ao longo do livro para me referir
a eles.

Embora eles possam ser usados em qualquer placa-mãe soquete 775 que
suporte o Core 2 Duo, eles não devem ser vistos como um upgrade direto para
as máquinas baseadas no Celeron D, já que a maior parte das placas antigas

                                                                         234
não possuem suporte a eles, por não utilizarem reguladores de tensão
compatíveis com a especificação VRM 11.

Por utilizarem o mesmo encapsulamento, os Celerons 4xx são fisicamente
quase idênticos aos Core 2 Duo. Com exceção das inscrições sobre o heat-
spreader do processador, a única forma de diferenciar os dois é com base nos
capacitores cerâmicos instalados na parte inferior do processador. Por possuir
apenas um núcleo, o Celeron possui um número muito menor deles:




                   Celeron 430 (à esquerda) e Core 2 Duo

Embora seja o "patinho feio" dentro da plataforma Core, o Celeron 4xx oferece
algumas vantagens interessantes. A primeira (e mais óbvia) é que os
processadores são muitos baratos, com os modelos de clock mais baixo
custando menos de US$ 40 nos EUA (ou pouco mais de 100 reais aqui no
Brasil).

A segunda é que a combinação da arquitetura core, com uma técnica
atualizada de fabricação, bus de 800 MHz e o uso de um único núcleo faz com
que o Celeron 4xx suporte overclocks generosos, que me fazem lembrar dos
antigos Celerons 300A.

Usando uma placa que suporte bus de 266 MHz (1066) você pode fazer os três
modelos trabalharem a, respectivamente, 2.13, 2.39 e 2.66 GHz. Caso a placa
permita ir além, você pode chegar perto da marca dos 3.0 GHz, aumentando a
tensão do processador em 0.2v.

Embora (mesmo em overclock), seja difícil de comparar o desempenho do
Celeron 4xx com o de um Core 2 Duo, ele é sensivelmente mais rápido que os
antigos Celerons D. De uma forma geral, é preciso um Celeron D com o dobro
do clock para competir de igual para igual com um Celeron 4xx.

Um mero Celeron 430 (1.8 GHz) é capaz de superar um Celeron D de 3.6 GHz
na maioria dos games e aplicativos de compressão de vídeo, além de consumir


                                                                          235
menos da metade da energia e oferecer uma margem de overclock muito
maior.

Além de poder ser usado em micros de baixo custo, o Celeron 4xx permite que
você monte um PC com componentes de boa qualidade, gastando
relativamente pouco. Você pode comprar uma boa placa-mãe soquete 775, 1
GB de memória e uma placa 3D offboard e deixar para economizar no
processador. Fazendo overclock, você pode ter de 70 a 80% do desempenho
de um Core 2 Duo E6400 ou E6600, com a possibilidade de atualizar o
processador quando precisar de mais desempenho.

Assim como o Celeron-M, destinado a notebooks, o Conroe-L não oferece
suporte ao SpeedStep, de forma que o processador opera sempre à freqüência
máxima. Isso não é um grande problema ao usar o processador na freqüência
original, já que a 2.0 GHz ele consome menos de 35 watts de energia, mas
torna-se uma desvantagem ao fazer overclocks mais extremos, onde além do
clock é aumentada também a tensão. Se você está pensando em montar um
micro de baixo consumo, o Celeron 4xx não é uma boa opção.

Embora menos importante, outro "diferencial" é a ausência do suporte ao Intel
VT que, para ser sincero, não faz muita falta, já que, apesar das promessas,
ele (em 2007) ainda não oferece ganhos de desempenho no VMware, Virtual
PC ou Xen, os três softwares que poderiam se beneficiar do sistema.

No geral, se você pode pagar um pouco mais, um Pentium E2140 ou um
E2160 são uma melhor opção, já que são processadores dual-core, que
oferecem suporte ao SpeedStep e possuem 1 MB completo de cache L1. Mas,
se o orçamento está apertado, é melhor comprar um Celeron 4xx do que
economizar na placa-mãe ou em outros componentes do PC.

Futuros chips


Além da redução de preços, a acirrada concorrência entre a Intel e a AMD
tornou ambas as empresas muito mais abertas com relação à divulgação de
informações referentes a novas tecnologias, com cada uma tentando
convencer o público de que seus próximos produtos serão superiores. Graças
a isso, é possível ter uma idéia bastante clara do que os próximos dois ou três
anos nos reservam.

Embora essas informações estejam sujeitas a mudanças de percurso, atrasos
e outros imprevistos, elas permitem que você possa planejar melhor os
upgrades e ter uma idéia mais clara dos caminhos que serão seguidos pela
indústria.




                                                                           236
Penryn


O Penryn é o sucessor direto do Conroe, cujo lançamento está previsto para o
início de 2008. Ele será o primeiro processador Intel produzido usando a nova
técnica de 45 nanômetros (0.045 micron), que está em desenvolvimento desde
2001.

Ele deve ser visto como uma evolução do Conroe e não como um novo
processador. Imagine que o Penryn está para o Conroe assim como o Pentium
4 Northwood (0.13 micron) está para o antigo Willamette, produzido usando a
antiga técnica de 0.18 micron.

O Penryn é composto por nada menos do que 410 milhões de transístores.
Apesar disso, ele ocupa uma área de apenas 107 mm², sensivelmente menor
que o Conroe (que ocupa 143 mm²). Ele continua sendo um processador dual-
core, onde cada núcleo possui 64 KB de cache L1 e ambos utilizam um grande
cache L2 compartilhado. A mudança mais visível é a adição de mais 2 MB de
cache L2, totalizando 6 MB (agora com 24 linhas de associação), mas ele inclui
também outras melhorias.

A primeira é a adição de mais um conjunto de instruções, o SSE4. Com a
popularização dos processadores dual-core e quad-core, um dos maiores
desafios passou ser otimizar os softwares, de forma que eles passem a se
beneficiar dos núcleos adicionais. Um dos principais objetivos do SSE4 é
oferecer instruções que permitam utilizar todos os núcleos do processador de
forma mais eficiente, complementando os conjuntos de instruções anteriores.

Assim como o Conroe, o Penryn não conta com um controlador de memória
integrado, por isso a Intel recorreu a um novo aumento na freqüência do FSB
para arejar o barramento com a memória. Além das versões com bus de 1066
MHz e 1333 MHz, serão lançadas versões com bus de 1600 MHz (4x 400
MHz), já suportado extra-oficialmente por muitas placas soquete 775.
Inicialmente, o bus de 1600 MHz será utilizado por uma versão do Xeon
baseada no Penryn, mas a partir de um certo ponto ele será utilizado também
nas versões desktop.

Por manter o uso do soquete 775, ele será, a princípio, compartível com as
placas atuais, mas ainda não está claro até que ponto. Vale lembrar que toda a
safra inicial de placas soquete 775 são incompatíveis com os processadores
Core 2 Duo devido a deficiências no regulador de tensão.

Na questão do consumo elétrico, a principal novidade é a introdução do "Deep
Power Down Technology" um novo estágio de baixo consumo (batizado de C6),
que permite que o processador consuma consideravelmente menos energia
enquanto ocioso. Este recurso estará disponível apenas para as versões
mobile, mas ainda assim é interessante entender como ele funciona.



                                                                           237
Ao entrar no modo C6, o sinal de clock é desligado, a tensão é reduzida
drasticamente e os caches L1 e L2 são desligados. Neste modo, o chipset
continua oferecendo acesso à memória para os demais periféricos do sistema,
permitindo que diversas funções continuem acessíveis, sem que o processador
precise ser acordado.

O maior problema é que o processador demora um tempo relativamente longo
para retornar do estado C6, já que perde todos os dados armazenados nos
caches, de forma que ele é reservado para situações em que o processador
fique ocioso por longos períodos. Na maior parte do tempo ele chaveia entre os
modos atuais de gerenciamento, onde o tempo de recuperação é menor.

O Penryn inclui também algumas melhorias nas unidades de execução, com
destaque para o processamento de instruções de divisão, usadas por diversos
aplicativos gráficos e de renderização 3D e uma versão aperfeiçoada do Intel
VT, que promete oferecer (finalmente) ganhos tangíveis de desempenho no
VMware e outros softwares de virtualização.

Um recurso interessante do ponto de vista técnico é o EDAT (Enhanced
Dynamic Acceleration Technology), que permite melhorar o desempenho do
processador em aplicativos que não são capazes de se beneficiar do segundo
núcleo. A idéia é bastante original: desligar o segundo núcleo (que de qualquer
forma não seria utilizado pelo programa) e aproveitar a redução na dissipação
térmica para fazer um overclock temporário do núcleo ativo, permitindo assim
um ganho real de desempenho. O sistema pode então escolher entre manter
os dois núcleos ativos a "100%" da capacidade, ou manter apenas um,
trabalhando a "120%" da capacidade, de acordo com o aplicativo em uso.
Inicialmente o EDAT será usado apenas nas versões mobile do Penryn, mas é
de se esperar que ele seja incorporado em alguma revisão futura do Penryn
para desktops caso se mostre realmente útil.

Esta foto divulgada pela Intel dá uma amostra da organização dos
componentes internos do Penryn. Veja que, somados, os caches L2 e L1
ocupam mais de 60% da área do processador:




                                                                           238
Penryn

Embora o Penryn seja um processador dual-core, dois chips podem ser
combinados para formar processadores quad-core (assim como o Kentsfield),
que contarão com generosos 12 MB de cache L2. A versão "simples", com dois
núcleos, é chamada de Wolfdale, enquanto a versão quad-core (dual-chip)
responde pelo codenome Yorkfield.

Por outro lado, é improvável que o Penryn receba uma versão single-core,
como o Conroe-L, pois o chip já é relativamente pequeno. Segundo todas as
informações divulgadas até agora, é quase certo que a produção dos Celerons
single-core, baseados no Conroe-L, continue ao longo de 2008 e a partir de um
certo ponto a linha seja descontinuada, dando origem a versões de baixo custo
do Core 2 Duo baseado no Penryn, com clock mais baixo e parte do cache L2
desativado. Se as promessas se concretizarem, em 2009 a Intel terá
abandonado a produção de processadores single-core para desktops e
notebooks, passando apenas a produzir processadores dual-core e quad-core.

Uma observação importante é que, embora o lançamento do Penryn esteja
planejado para o início de 2008, ele levará vários meses para se popularizar,
como toda nova arquitetura. Inicialmente a Intel produzirá o novo processador
em quantidades limitadas e a partir daí irá aumentar a produção gradualmente,
conforme for capaz de refinar a técnica de produção de 45 nanômetros.

Embora não esteja diretamente relacionado ao Penryn, este slide da Intel
mostra essa questão da produção usando novos processos de fabricação:




                                                                         239
Índice de defeitos nas diferentes técnicas de produção (Intel)

As primeiras levas de waffers produzidas em cada nova técnica de produção
são basicamente imprestáveis. O índice de defeitos é tão alto que praticamente
nenhum processador é utilizável. No caso da Intel, os primeiros waffers são
usados para produzir células de memória SRAM, que por serem cópias da
mesma estrutura básica, são mais fáceis de produzir.

Ao longo dos primeiros meses, o maquinário vai sendo calibrado, impurezas
são removidas do ambiente e problemas de produção são resolvidos, fazendo
com que o índice de defeitos caia rapidamente, embora ainda permaneça em
níveis muito altos.

A partir de um certo ponto, é possível produzir alguns processadores
utilizáveis, que são usados em sistemas de demonstração, fornecidos para
review e assim por diante. Mas, é geralmente só depois de um ano e meio que
torna-se viável iniciar a produção em larga escala. O volume de produção vai
então crescendo gradualmente, conforme os últimos problemas são resolvidos,
fazendo com que os processadores produzidos na nova técnica de fabricação
convivam com os da antiga por um período relativamente longo.

Dois recursos bastante enfatizados pela Intel na transição para o processo de
45 nanômetros são o "high-k dielectric" e o "metal gate electrode", abreviados
como HK e MG.

O high-k dielectric consiste no uso de uma fina camada de um material
baseado no elemento Háfnio (número 72 da tabela periódica) que possui uma
constante dielétrica superior (high-k) ao do dióxido de silício, tradicionalmente
utilizado na camada inferior do pólo central (gate) de cada transístor.

Esta camada é chamada de gate dieletric e tem a função de separar o emissor
e o coletor, os dois pólos do transístor, evitando que a corrente flua enquanto o

                                                                             240
transístor está desligado. Conforme o transístor fica menor, a camada fica mais
fina e torna-se menos eficiente, fazendo com que cada vez mais energia seja
desperdiçada. O uso do high-k dielectric reduz o problema, permitindo que o
processador opere a freqüências mais altas, consumindo menos energia.

O metal gate electrode consiste em substituir o gate electrode, a camada
superior do pólo central do transístor (que vai logo acima do gate dieletric) por
uma fina camada metálica, que melhora a condutividade do gate quando o
transístor está aberto. Isto reduz o volume de energia necessária para mudar o
estado do transístor, permite que ele chaveie de forma mais rápida (o que
permite que o processador seja capaz de operar a freqüências mais elevadas)
e permite que trabalhe utilizando uma tensão mais baixa, o que também ajuda
a reduzir o consumo elétrico.

Se pudéssemos cortar uma fatia muito fina do wafer de silício do processador e
isolar a área referente a um único transístor, você veria uma estrutura similar a
este diagrama, onde o emissor (positivo) e o coletor (negativo) do transístor
são separados pelo gate, onde temos as duas camadas:




               Diagrama mostrando o uso do high-k e metal gate

A combinação dos dois recursos é chamada pela Intel de "HK+MG" e serve
para basicamente melhorar a eficiência geral dos transístores, permitindo que
menos corrente passe quando o transístor está fechado e mais corrente passe
quando ele está aberto.

Estima-se que a transição para o processo de 45 nanômetros gere uma
redução de até 30% na energia necessária para mudar o estágio dos
transístores e que a combinação do high-k dielectric e o metal gate electrode
torne o chaveamento dos transístores até 20% mais rápido, além de uma
redução de até 80% no gate-leakage (o desperdício de energia que cresce
exponencialmente conforme aumenta a freqüência de operação do
processador), o que representa uma boa vantagem competitiva para Intel.


                                                                             241
Nehalem


O Nehalem representa a próxima arquitetura Intel, ainda produzida usando a
técnica de 45 nanômetros, mas com diversas mudanças arquiteturais em
relação ao Penryn. Ainda se sabe relativamente pouco sobre ele, de forma que
vou me limitar a comentar as informações que já estão mais ou menos
confirmadas. Enquanto escrevo, o projeto ainda não está sequer finalizado e é
tratado como segredo de estado dentro da Intel. Se não houverem atrasos, as
primeiras unidades do Nehalem devem chegar ao mercado no final de 2008,
mas não espere que ele se popularize antes da segunda metade de 2009.

Ao contrário do Yorkfield, produzido pela combinação de dois Penryns, com
dois núcleos cada um, o Nehalem será um processador quad-core nativo. Ele
adotará dois recursos que até então eram exclusividade dos processadores
AMD: um controlador de memória integrado (DDR3) e um barramento rápido
(similar ao HyperTransport) para interligar os núcleos do processador e
também ligá-lo ao chipset.

Um detalhe importante sobre o controlador de memória é que além do
tradicional suporte a dual-channel, estão em desenvolvimento também versões
"tri-channel" e "quad-channel", com acesso simultâneo a até 4 módulos
simultaneamente, alargando o barramento com a memória de forma a melhor
atender os 4 núcleos. As quad-channel estarão inicialmente restritas aos
servidores, mas pode ser que a Intel utilize o sistema em alguma série
destinada a entusiastas (como os Core 2 Extreme). A questão é que usar 4
módulos de memória é muito custoso e o ganho de desempenho em relação a
utilizar apenas dois tende a ser pequeno, de forma que não devemos ver o
recurso se popularizar nos PCs domésticos em um futuro próximo.

Assim como o Conroe e o Penryn, o Nehalem utilizará um sistema de cache
compartilhado, onde todos os núcleos possuem um cache comum. Ainda não
está claro se será mantida a arquitetura atual, onde cada núcleo possui um
cache L1 próprio e o cache L2 é compartilhado, ou se será adotado um cache
de 3 níveis, onde cada núcleo possui um pequeno cache L2 próprio e um
grande cache L3 é compartilhado por todos.

Ao contrário do deselegante Kentsfield, onde todos os núcleos operam sempre
à mesma freqüência e usando a mesma tensão, o Nehalem oferecerá um
sistema de gerenciamento independente, onde cada núcleo pode operar a uma
freqüência condizente com seu nível de utilização. Dentro deste conceito, a
idéia do cache de três níveis, onde cada núcleo possui caches L1 e L2
exclusivos me parece fazer mais sentido, pois permite que os núcleos não-
utilizados, ou mesmo o próprio cache L3 (que consumiria boa parte da energia
do processador) sejam completamente desligados, sem prejuízo para o
desempenho dos núcleos que continuarem ativos.

Podemos esperar uma configuração similar à do Athlon X2, onde temos um
único controlador de memória, compartilhado entre todos os núcleos e uma

                                                                         242
interface de gerenciamento encarregada de distribuir a carga entre eles e
monitorar o nível de carregamento de cada um.

Buscando melhorar o aproveitamento dos 4 núcleos e maximizar o
desempenho do processador nos momentos de inatividade, em que apenas um
ou dois deles estiverem ativos, o Nehalem utilizará uma versão aperfeiçoada
do Hyper-Threading, introduzido na época do Pentium 4.

O Nehalem utilizará uma arquitetura mais modular, o que facilitará o
desenvolvimento de versões com mais ou menos núcleos. Além da versão com
4 núcleos, existirão versões com 2 núcleos e 8 núcleos, embora ainda não
esteja claro se a versão com 8 núcleos será um design octo-core "nativo", ou
se será a combinação de dois processadores quad-core dentro do mesmo
encapsulamento.

Além da questão do gerenciamento de energia, a arquitetura escalável do
Nehalem permitirá o lançamento de versões mais simples, com apenas 1 ou 2
núcleos, que podem ser usadas nas linhas de processadores de baixo custo. É
de se esperar que, caso realmente lançada, a versão com apenas 1 núcleo não
seja destinada a desktops, mas sim a sistemas móveis como os UMPCs e
MIDs. Como de praxe, serão lançadas versões com configurações variadas de
cache, de acordo com o preço e o público-alvo, como atualmente.

A Intel divulgou também planos para produzir versões do Nehalem com
aceleradores gráficos integrados, de forma similar ao Fusion da AMD. O
principal problema é que, ao contrário da AMD (que agora possui a ATI), a Intel
não possui sequer um acelerador gráfico competitivo. A Intel poderia
desenvolver uma versão um pouco mais rápida do GMA3500 (o vídeo onboard
utilizado no chipset G53) e integrá-la ao processador ao invés de no chipset,
mas isso não seria uma grande evolução, já que o desempenho do vídeo
integrado continuaria sendo baixo.

No final de 2009 ou (mais provavelmente) início de 2010 está previsto o
lançamento do Westmere (também chamado de Nehalem-C), uma versão
aprimorada do Nehalem, produzido usando a técnica de 32 nanômetros que
sucederá a de 45 nanômetros usada no Penryn. Ele será sucedido pelo Sandy
Bridge (anteriormente chamado Gesher), uma nova arquitetura, sobre a qual
pouco se sabe além de vagos anúncios que dão a entender que ele possuirá 8
núcleos nativamente, onde cada núcleo possuirá cache L1 e L2 próprios e
todos compartilharão um grande cache L3 (o que reforça a tese do uso do
design de 3 níveis no Nehalem) e de que ele será capaz de operar a 4.0 GHz
ou mais.

Essa última informação merece uma análise mais cuidadosa, pois 4 GHz não
está muito acima dos processadores atuais. Como as versões iniciais do
Penryn operarão na faixa dos 3.2 GHz, a meta de 4 GHz para o Sandy Bridge
(que está duas gerações à frente) mostra que a própria Intel não acredita mais
em grandes aumentos na freqüência de operação das próximas famílias de
processadores e está por isso investindo no desenvolvimento de projetos com
4 e 8 núcleos, além do desenvolvimento de novos conjuntos de instruções

                                                                           243
(como o SSE4), novos compiladores e outras ferramentas que facilitem o
desenvolvimento de softwares capazes de extrair ganhos reais de desempenho
dos novos processadores.

Uma coisa que está clara é que softwares não-otimizados, categoria que
engloba a grande maioria dos programas que utilizamos hoje em dia, não
rodarão muito mais rápido em um Nehalem ou Sandy Bridge do que rodam
atualmente em um Core 2 Duo overclocado para 3.0 GHz ou mais. Será
necessária toda uma safra de novos softwares para que o potencial de designs
com 8 cores, como o Sandy Bridge, possa ser completamente explorado.

Com o Sandy Bridge, já estamos em 2011. A partir deste ponto as informações
oficiais acabam e passamos a depender apenas de especulações. Duas
tendências que poderia antecipar, com uma razoável margem de certeza, são a
introdução de uma técnica de fabricação de 22 nanômetros (0.022 micron) em
algum ponto entre 2011 e 2013 e a introdução de chips "modulares",
construídos a partir da combinação de um grande número de processadores
x86, derivados da arquitetura do Nehalem e chips especializados em funções
específicas, como processamento de vetores, unidades de processamento 3D
(que complementarão, ou substituirão as placas 3D dedicadas) e assim por
diante.

Uma amostra deste "admirável mundo novo" foi a demonstração de um chip
com 80 núcleos dada pela Intel em fevereiro de 2007, desenvolvido com o
objetivo de oferecer 1 teraflop de poder de processamento. Cada um dos 80
núcleos é um chip relativamente simples, otimizado para processar instruções
de ponto flutuante. Cada chip possui um "roteador" que o interliga aos vizinhos.
Esta estrutura permite que as instruções sejam distribuídas entre os núcleos de
forma bastante similar ao que acontece dentro de um cluster com várias
máquinas. A principal diferença é que tudo é feito dentro de um único chip.

Este slide exibido durante o Spring Intel Developer Forum de 2007 demonstra o
conceito:




                                                                            244
Slide da Intel que demonstra o processador de 80 núcleos

O chip de 80 núcleos é apenas um sistema de demonstração, que nunca virá a
se tornar um produto. Embora o poder de processamento seja respeitável, a
aplicação dele seria muito limitada, já que ele é capaz de processar apenas
instruções de ponto flutuante. Futuros chips combinariam diversos tipos de
unidades especializadas, formando chips capazes de executar todo tipo de
instruções.

O principal problema é que estes chips exigirão profundas modificações nos
softwares, o que vai sem dúvida retardar sua popularização. Não é difícil de
imaginar que eles serão introduzidos inicialmente como chips especializados,
destinados a grandes servidores, para só depois de mais alguns anos
descerem a pirâmide, chegando até os desktops.

Phenom e Barcelona


O Barcelona é o primeiro processador quad-core "nativo" desenvolvido pela
AMD. Apesar de possuir nada menos do que 463 milhões de transístores, as
versões iniciais do Barcelona ainda serão produzidas usando a técnica de
0.065 micron (65 nanômetros), mas a AMD pretende produzir versões de 0.045
micron a partir da segunda metade de 2008.

Relembrando, os Athlons, Durons e Semprons de 32 bits fazem parte da
plataforma K7, enquanto os Athlon 64, X2 e FX fazem parte da plataforma K8.
Para evitar trocadilhos a AMD decidiu pular o "K9" (que é o nome de uma
unidade de cães farejadores), de forma que o Barcelona e derivados formam a
plataforma K10.

Este diagrama, divulgado pela AMD, mostra detalhes sobre os componentes
internos do processador:



                                                                         245
Componentes internos do Barcelona, com 4 núcleos e cache L3 compartilhado

Como você pode ver, o Barcelona é composto por 4 núcleos idênticos, cada
um contendo seu próprio cache L1 (de 128 KB, dividido em dois blocos de 64
KB, para dados e instruções) e 512 KB de L2. Entre os processadores temos
os circuitos referentes ao Crossbar Switch (o componente responsável por
dividir as requisições entre os dois cores e controlar o acesso de ambos ao
controlador de memória, entre outras funções) e outros circuitos de
gerenciamento.

No centro temos o bloco referente ao controlador de memória (que é
compartilhado por todos os núcleos) e do lado esquerdo temos o cache L3,
também compartilhado pelos 4 núcleos. O Barcelona inclui também quatro links
HyperTransport. Um é usado para a conexão com o chipset, enquanto os
outros três ficam disponíveis para a comunicação com outros processadores, o
que permite a criação de sistemas com dois ou até mesmo 4 processadores,
cada um com 4 núcleos.

À primeira vista, parece que o Barcelona é uma simples expansão do Athlon 64
X2, onde foram adicionados mais dois núcleos e o cache L3 compartilhado, de
forma a produzir um sistema similar ao Quad-FX, porém composto de um único
processador. Mas, uma análise mais minuciosa revela outras melhorias.

Além de adicionar os dois núcleos adicionais, a AMD fez um trabalho de
aperfeiçoamento no X2, eliminando gargalos e adicionando novos recursos, de
forma a desenvolver um processador capaz de competir em pé de igualdade
com o Kentsfield e o Penryn da Intel.

                                                                         246
A primeira mudança diz respeito ao processamento das instruções SSE, área
onde o Conroe e os demais processadores baseados na plataforma Core
superam o Athlon 64 por uma boa margem. O problema fundamental da
arquitetura K8 neste quesito é o fato de serem utilizadas unidades SSE de 64
bits. Isso faz com que instruções SSE de 128 bits precisem ser divididas e
processadas na forma de duas instruções de 64 bits separadas, que
consomem dois ciclos de clock.

Em comparação, o Conroe é equipado com unidades SSE de 128 bits, capazes
de processar as instruções em um único ciclo. Embora isso tenha representado
um grande aumento no volume de transístores do processador, a AMD
conseguiu equilibrar a balança, também equipando o Barcelona com unidades
SSE de 128 bits.

A ampliação das unidades SSE foi acompanhada também por melhorias no
cache e nos decodificadores. O K8 era capaz de realizar duas transferências
de 64 bits por ciclo do cache L1 para as unidades SSE, e os decodificadores de
instruções eram dimensionados para alimentar as unidades de execução com
16 bytes de instruções por ciclo. No Barcelona, as transferências do cache L1
para as unidades SSE passarem a ser de 128 bits e os decodificadores
passaram a ser capazes de alimentar as unidades de execução com 32 bytes
por ciclo, tudo dimensionado de forma a acompanhar a ampliação das
unidades SSE.

A AMD chama esse conjunto de melhorias de "SSE128". Você vai ver várias
referências ao termo no material publicitário daqui em diante.

Com relação ao acesso aos caches, o Barcelona continua sendo inferior ao
Penryn e ao Conroe, já que eles possuem caches muito maiores. Ao optar por
utilizar um controlador de memória integrado no K8 e, em seguida, por utilizar
uma arquitetura quad-core no Barcelona, a AMD sacrificou um brutal número
de transístores que de outra forma poderiam ser utilizados para incluir um
grande cache L2, assim como nos processadores Intel.

A principal arma do Barcelona contra as deficiências no cache é o controlador
de memória integrado, que recebeu duas pequenas melhorias. Em primeiro
lugar, em vez de um grande controlador de memória de 128 bits, que realiza
acessos aos dois módulos de memória simultaneamente, ele passou a incluir
dois controladores de 64 bits independentes. Isso representa uma pequena
redução nos tempos de latência, pois duas leituras podem ser realizadas de
forma independente, permitindo que sejam realizados dois acessos (de 64 bits)
a endereços diferentes, ao invés de um único acesso (de 128 bits) a endereços
sequenciais.

Outra melhoria foi uma expansão dos buffers do controlador de memória,
desenvolvida para tirar melhor proveito dos bursts oferecidos pelos módulos
DDR2 e DDR3. Basicamente, os módulos de DDR2 e DDR3 oferecem taxas de
transferência muito elevadas, mas em compensação trabalham com tempos de
latência relativamente altos. Ao invés de realizar várias operações de escrita
separadas (tendo que arcar com um lento acesso inicial para cada uma delas),
o controlador pode acumular um certo volume de dados e escrevê-los de uma

                                                                          247
vez em um único burst de operações de escrita. Isso permite que as operações
de escrita tomem menos tempo, deixando mais ciclos livres para as operações
de leitura.

Inicialmente o Barcelona incluirá um controlador de memória DDR2, mas a
AMD já deixou o terreno pronto para o lançamento de futuras revisões do
processador com suporte a memórias DDR3, que devem ser lançadas por volta
do final de 2008.

Em seguida temos as melhorias no funcionamento dos caches, desenvolvidas
de forma a melhorar sua eficiência.

Novos dados, selecionados pelo circuito de prefetch, são carregados
diretamente para o cache L1, ao invés de passarem primeiro pelo cache L2,
minimizando o tempo de acesso inicial. Nem todos os dados carregados pelo
circuito de prefetch são úteis, já que ele trabalha tentando "adivinhar" de quais
dados o processador precisará em seguida, mas o fato do processador possuir
128 KB de cache L1 permite que a AMD se dê ao luxo de armazenar alguns
dados desnecessários de forma a acelerar o acesso aos demais.

Conforme novos dados são carregados, informações antigas vão sendo
descartadas. Entretanto, em vez de serem apagadas, as informações são
movidas para o cache L2 e em seguida para o cache L3 compartilhado, onde
podem ser recuperadas rapidamente caso sejam necessárias mais tarde.

Ou seja, em vez de armazenar um grande volume de informações nos caches,
como no caso dos processadores Intel, a AMD optou por usar um cache mais
"fluído" onde é priorizado o tempo de acesso à novas informações.
Combinadas com as melhorias no controlador de memória, este novo sistema
tem tudo para oferecer um ganho de mais alguns pontos percentuais em
relação ao desempenho dos Athlon X2.

O uso de caches L1 e L2 independentes para cada núcleo permitiu que a AMD
desenvolvesse um sistema de gerenciamento de energia bem mais eficiente
que o do Kentsfield. Cada núcleo é basicamente independente dos demais, de
forma que a freqüência de operação de cada um pode ser ajustada de forma
independente.

O processador pode manter apenas um dos núcleos ativo enquanto executa
operações leves, por exemplo, mantendo os outros três operando a
freqüências reduzidas. Esse sistema de gerenciamento independente é similar
ao que a Intel pretende implantar no Nehalem, porém disponibilizado um ano
antes.

Outro pequeno conjunto de melhorias foi feito no circuito de branch prediction,
responsável por "adivinhar" qual caminho o processador deve seguir enquanto
não conhece o resultado de operações de tomada de decisão. Além de ter
ganhado um circuito aprimorado, capaz de calcular o resultado de derivações
indiretas (assim como no Conroe), o histórico de operações foi dobrado de
tamanho.



                                                                             248
O histórico armazena os resultados de operações de tomada de decisão
executadas anteriormente, informações que são usadas pelo circuito de branch
prediction para prever o caminho mais provável para novas operações. Com
um histórico maior, o circuito de branch prediction torna-se mais eficiente,
embora seja muito difícil calcular o ganho baseado apenas em informações
teóricas.

As "derivações indiretas" (indirect branches) são usadas em funções que
envolvem diversas possibilidades, como ao usar funções "case" ou "switch" em
que o programador estabelece diversas possibilidades, de acordo com o
resultado de uma condição. Como era de se esperar, essas operações
representam um desafio muito maior para o circuito de branch prediction do
que as funções "if", onde existem apenas duas possibilidades, mas prevê-las
corretamente aumenta de forma considerável a eficiência do processador.

O nome "Barcelona" é apenas o codenome do projeto, assim como no caso do
Penryn e do Nehalem da Intel. As versões do Barcelona destinadas a
servidores serão vendidas sob a marca "Opteron", enquanto as versões para
PCs domésticos serão chamadas de "Phenom" (de "Phenomenal"). O nome
tem justamente o objetivo de diferenciá-lo dos Athlons 64 e X2 e enfatizar que
se trata de uma nova arquitetura.

As versões desktop do Barcelona respondem pelos nomes de "Agena FX" (a
versão com 4 cores, quase idêntica ao Barcelona destinado a servidores),
"Agena" (uma versão quad-core levemente simplificada, sem os links
HyperTransport usados em sistemas com dois processadores) e "Kuma" (uma
versão simplificada, com apenas dois núcleos).

Tanto o Agena quanto o Agena FX serão equipados com 128 KB de cache L1 e
512 KB de cache L2 por núcleo, além do cache L3 compartilhado de 2 MB.
Assim como os processadores AMD anteriores, eles utilizam a arquitetura de
cache exclusivo, onde os dados armazenados nos caches não são duplicados.
Graças a isso, podemos dizer que eles possuem um total de 4.5 MB de cache.

Apesar de possuírem apenas dois núcleos, os processadores baseados no
core Kuma manterão o cache L3 de 2 MB. Combinado com as outras melhorias
na arquitetura, a presença do cache L3 fará com que eles ofereçam um
desempenho consideravelmente superior ao de um Athlon 64 X2 do mesmo
clock.

A AMD pretende lançar versões de até 2.6 GHz do Agena e Agena FX e
versões de até 2.8 GHz do Kuma antes do final de 2007.

Estão planejadas ainda novas versões do X2 e do Sempron, que respondem
pelos codenomes "Rana" e "Spica", cujo lançamento está planejado para
2008. O Rana será uma versão de baixo custo do Kuma, baseado na
arquitetura K10, mas desprovido do cache L3. Embora mais lento que um
Kuma, o Rana superará os Athlon X2 baseados no core Brisbane devido às
demais melhorias na arquitetura. O Spica, por sua vez, será uma versão single-
core, que substituirá os Semprons baseados no core Sparta e anteriores.



                                                                          249
Com a introdução do Phenom, teremos uma mudança radical dentro da linha
de processadores AMD e também um novo sistema de numeração dos
processadores, que está sendo implantada aos poucos, ao longo da segunda
metade de 2007.

Em primeiro lugar, todos os processadores da linha Athlon 64 foram
renomeados para apenas "Athlon", sem o "64". A AMD chegou à conclusão de
que o "64" passou a ser redundante, já que a Intel também passou a incluir o
suporte a instruções de 64 bits em todos os seus processadores. O "Athlon 64
X2" passou a se chamar apenas "Athlon X2".

Com o lançamento do Phenom, o Athlon X2 assume a posição de processador
"mainstream", e toda a linha de processadores Athlon single-core é
descontinuada, mantendo apenas o Sempron como opção single-core de baixo
custo, concorrendo diretamente com os Celerons 4xx da Intel.

Entre os processadores high-end, temos três versões do Phenom: X4 (a versão
original, com 4 núcleos), X2 (a versão com 2 núcleos) e o Phenom FX, a linha
destinada a entusiastas, que substitui o Athlon 64 FX e o Quad-FX.




   Slide de divulgação da AMD mostrando a linha de processadores com o
                           lançamento do Phenom

O antigo índice de desempenho, que servia basicamente para comparar o
desempenho dos processadores com modelos do Pentium 4, deixou de fazer

                                                                         250
sentido com o lançamento do Core 2 Duo, de forma que a AMD optou por
descartá-lo em favor de um novo sistema de numeração (similar ao atualmente
usado pela Intel), onde cada processador recebe um código de acordo com a
sua "posição hierárquica", sem relação direta com o desempenho.

Na nova terminologia, todos os processadores recebem um código composto
por duas letras e quatro números, como em "BE-2300".

A primeira letra indica a classe do processador, indicando se ele é um
processador "premium", de alto desempenho, intermediário ou de baixo custo.
A letra "G" é reservada para os processadores Phenom, a letra "B" é usada
pelos Athlon X2 de clock mais alto, enquanto a letra "L" (de low-cost) é
reservada aos Semprons e Athlon X2 mais lentos.

Em seguida temos uma segunda letra que indica o consumo. A letra "P" (de
"premium") é usada para processadores com TDP acima de 65 watts, a letra
"S" (de "standard") indica processadores com TDP de 65 watts ou menos,
enquanto a letra "E" (de "Energy Efficient") indica os processadores com TDP
de 45 watts ou menos.

Dentro dos quatro números, o primeiro indica a família à qual o chip pertence,
onde um "7" indica que é um Phenom X4, um "6" indica que se trata de um
Phenom X2, um "2" é usado no caso dos Athlon X2 e o "1" é reservado aos
Semprons single-core.

Os três números seguintes indicam a posição do chip dentro da família, como
em "BE-2300", "BE-2350" e "BE-2400". Os números não são uma indicação
direta do clock ou performance do processador, servem apenas para
diferenciar os processadores dentro de uma mesma família.

Os primeiros representantes da nova terminologia são os Athlon X2 BE-2300
(1.9 GHz, 2x 512 KB), BE-2350 (2.1 GHz, 2x 512 KB) e BE-2400 (2.3 GHz, 2x
512 KB), três processadores da série "Energy Efficient" (ainda baseados no
core Brisbane), com TDP de apenas 45 watts, vendidos, nos EUA, por menos
de US$ 100.

Eles serão seguidos pelos Sempron LE-1100 (1.9 GHz), LE-1150 (2.0 GHz),
LE-1200 (2.1 GHz), LE-1250 (2.2 GHz) e 1300 (2.3 GHz). Estes novos
Semprons são baseados no core "Sparta", produzidos usando a técnica de
0.065 micron e se destinam a placas AM2 e AM2+.

Se nada mudar nos planos da AMD, os Phenom X4 serão vendidos sob a série
"GP-7xxx", e os Phenom X2 sob a série "GS-6xxx". Teremos ainda uma série
de baixo custo do X2, a "LS-2xxx".

Como você pode ver, a nova terminologia da AMD foi desenvolvida como
resposta à terminologia adotada pela Intel com o Core 2 Duo, já que continuar
usando o Pentium 4 (um processador ultrapassado) como parâmetro, não faria
muito sentido.



                                                                          251
Toda a nova linha de processadores, incluindo os novos X2 e Semprons são
chamados pela AMD de "Stars", mais um nome mercadológico. Todos os
processadores da série Stars utilizarão placas AM2+, mas muitas das placas
AM2 atuais também poderão ser usadas, depois de um upgrade de BIOS.

A principal diferença entre o AM2 e o AM2+ é o suporte ao uso de tensões
independentes para os núcleos do processador e os circuitos que formam o
northbridge (dentro do processador) e outros dos recursos de economia de
energia introduzidos com o Phenom. Outra novidade é o uso do
HyperTransport 3.0, que opera a 2.0 GHz, o dobro da freqüência do
HyperTransport 2.0 usando nas placas AM2.

Ao usar uma placa AM2 "normal", esses recursos não são usados, fazendo
com que o consumo elétrico e a dissipação do processador sejam mais altos e
a comunicação entre ele e o chipset seja chaveada para o modo mais lento. As
placas AM2+ também continuam sendo compatíveis com os processadores
Athlon 64 e X2 antigos, já que não foi feita nenhuma mudança na pinagem,
mas neste caso os novos recursos também ficam desativados.

O soquete AM2+ permanecerá sendo o carro chefe da AMD até algum ponto
entre a segunda metade de 2008 e a primeira metade de 2009, quando serão
introduzidas as placas AM3, iniciando a transição para as memórias DDR3 do
lado da AMD. Assim como fez anteriormente, o plano da AMD é deixar a Intel
"dar a cara a tapa" iniciando a migração para as memórias DDR3, enquanto
elas ainda são mais caras, e pegar carona depois que a tecnologia já estiver
estabelecida e os preços já tiverem caído.

As versões do Sempron e do Athlon 64 destinadas a placas soquete 754 e 939
já estavam sendo descontinuadas mesmo antes do lançamento dos novos
processadores. O anúncio do Phenom só acelerou o processo.

Continuando, o Phenom FX também utilizará um novo encaixe, o soquete
1207+ (ou F+), novamente uma versão atualizada do soquete F utilizado pelos
Opterons e na plataforma Quad-FX atual.

O Phenom FX dará origem também ao sucessor do Quad-FX, batizado de
"FASN8" (pronuncia-se "fés-en-eight", alusão à palavra "fascinate"), onde são
combinados dois Phenom X4 com uma placa dual soquete 1207+ e duas
placas ATI Radeon HD 2900 XT em modo crossfire, resultando em um sistema
com 8 núcleos. O FASN8 é um sistema "de vitrine", destinado a ganhar
benchmarks e atrair a atenção do público entusiasta, mas vendido a um preço
proibitivo.

Chavões como "Phenomenal", "Fascinate" e "Stars" podem soar chamativos
demais, mas lembre-se de que é preferível um bom processador com um nome
ruim, do que o contrário :).




                                                                         252
Fusion


Com a aquisição da ATI, a AMD deixou de ser apenas um fabricante de
processadores e chips de memória flash para entrar no mundo das placas 3D e
chipsets. A idéia principal por trás da aquisição é criar uma plataforma mais
forte, onde a AMD possa produzir, além dos processadores, também chipsets
competitivos e otimizados para eles, sem depender unicamente do trabalho de
outros fabricantes, como a nVidia e a VIA.

Embora não tenha fabricado uma só placa de vídeo offboard, desde 1998,
quando lançou, sem sucesso, o chip i740, a Intel é atualmente o maior
fabricante de chipsets de vídeo (em volume) com mais de 40% do mercado.
Isso acontece porque, apesar de oferecerem um desempenho longe de ser
fenomenal, as soluções de vídeo onboard da Intel são bastante populares.

O mesmo fenômeno acontece (embora em menor grau) com todos os demais
fabricantes de chipsets. Embora sejam mais lentas, as placas 3D onboard são
de longe as mais populares, já que a integração com a placa-mãe as torna
muito baratas.

Com o Fusion, a AMD pretende levar a idéia ao próximo nível, integrando o
chipset de vídeo ao próprio processador principal. Além da questão da
integração e das otimizações relacionadas, a idéia oferece duas vantagens
interessantes.

A primeira é que, ao ser incluído no processador, o chipset de vídeo passa a
ser produzido utilizando a mesma técnica de fabricação que ele, o que reduzirá
o consumo e permitirá que opere a freqüências de clock mais elevadas.

Tradicionalmente, as placas de vídeo são sempre produzidas utilizando
técnicas de fabricação bastante antiquadas, sempre uma ou duas gerações
atrás dos processadores. Em plena metade de 2007, a nVidia ainda fabrica
seus chipsets 3D topo de linha usando uma técnica de 0.09 micron, enquanto
tanto a Intel quando a AMD fabricam seus processadores usando a técnica de
0.065 micron, com a técnica de 0.045 já em vista.

A segunda vantagem é que, dentro do processador, a GPU teria acesso ao
controlador de memória integrado, o que permitiria o acesso à memória RAM
compartilhada com tempos de latência mais baixo do que as soluções atuais,
que o fazem através do barramento PCI Express ou AGP. Este slide da AMD
mostra o conceito:




                                                                          253
Integração do processador e chipset de vídeo

Se bem exploradas, estas duas vantagens poderiam permitir o
desenvolvimento de chipsets de vídeo integrado com um desempenho
compatível com o das placas offboard, mesmo utilizando memória
compartilhada. Isto seria uma grande vantagem competitiva para a AMD, já que
você passaria a ganhar uma boa placa 3D "de brinde" junto com o
processador.

Indo um pouco mais a fundo na idéia, chegamos a uma outra constatação.
Embora fundamentalmente diferentes, o processador principal e a placa 3D são
complementares. O processador principal é rápido ao processar instruções
sequenciais, usadas pela maioria dos programas, enquanto a placa 3D é
especializada em processar um grande volume de instruções paralelamente.

O processador principal pode renderizar imagens em 3D (como ao rodar
games 3D antigos, com renderização via software), mas é muito lento nesta
tarefa, de forma que mesmo um humilde chipset de vídeo onboard é capaz de
superar praticamente qualquer processador atual nesta tarefa.

Da mesma forma, a placa 3D não é capaz de processar instruções sequenciais
com um desempenho aceitável, de forma que depende do processador
principal. Em um game 3D, o processador se encarrega de executar a engine,
processar as respostas do AI e assim por diante, enquanto a placa 3D se
encarrega de renderizar as imagens.

Apesar disso, a arquitetura paralelizada dos chipsets de vídeo poderia ser
muito bem usada para executar outras tarefas, como rodar algoritmos de
renderização e compressão de vídeo e áudio em geral, que atualmente não
são aproveitadas.


                                                                         254
Atualmente, ao assistir um filme em divx ou ripar um DVD, quase todo o
processamento é feito pelo processador principal. Com o Fusion, a AMD
pretende incluir algoritmos que permitam utilizar o processamento da GPU
integrada para executar este tipo de tarefa, fazendo com que, mais do que ser
simplesmente uma placa de vídeo integrada, ela possa melhorar o
desempenho do sistema em aplicações diversas. Teríamos então novos
conjuntos de instruções (similares ao SSE), que permitiriam que os programas
utilizem o processamento da GPU integrada.

As primeiras versões do Fusion serão compostas de dois componentes
separados, um processador e um chipset de vídeo dentro do mesmo
encapsulamento e interligados através de um link HyperTransport. A AMD
planeja lançá-las ainda em 2008, mas elas não devem trazer grandes
vantagens em relação a usar um processador e uma placa 3D offboard, com
exceção de uma possível redução no custo.

A coisa começa a ficar mais interessante a partir da segunda fase, quando os
dois componentes são integrados no mesmo chip, permitindo um nível de
otimização muito maior. A partir daí, o plano da AMD é fundir os dois
componentes, produzindo processadores capazes de desempenhar
simultaneamente as duas funções. Teríamos então processadores que, além
das unidades de execução, unidades SSE e coprocessador aritmético, teriam
unidades de processamento de mapas de texturas, vertex shaders e pixel
shaders, como os incluídos nos chipsets de vídeo 3D.

Esse nível de integração faz sentido sobretudo nos notebooks, pois tende a
reduzir o consumo elétrico do equipamento, em relação ao uso de um
processador e um chipset de vídeo separados, como atualmente.

Nos desktops, a combinação de CPU e GPU pode trazer ganhos maiores do
que o desenvolvimento de processadores com mais núcleos (de 4 para 8, por
exemplo), já que o ganho de migrar para processadores com mais núcleos
tende a ser cada vez menor. Um processador bem otimizado, com 2 núcleos e
uma GPU embutida poderia se sair melhor que um processador com 4 núcleos
e uma placa 3D offboard equivalente em diversas aplicações.

É importante notar que a Intel está desenvolvendo uma solução similar para o
Nehalem, que também terá uma GPU embutida, o que mostra que a fusão de
processador e placa 3D pode estar mais próxima do que podemos imaginar.

Capítulo 3: Placa-mãe e barramentos



Um PC é composto por diversos componentes, incluindo o processador, pentes
de memória, HD, placa de rede e assim por diante. No meio de tudo isso,
temos a placa-mãe, que acaba sendo o componente mais importante. Ela não
é apenas o componente mais complexo, mas também o que mais influencia a
estabilidade e as possibilidades de expansão do sistema.



                                                                          255
No início, as placas-mãe serviam simplesmente como uma interface entre os
demais componentes, uma placa de circuito sem vida própria. Com o passar do
tempo, mais e mais componentes passaram a ser integrados à placa-mãe,
dando origem às placas atuais, que incluem vídeo, som, rede e outros
periféricos onboard.

Inicialmente, as placas "tudo onboard" enfrentaram preconceito, mas no final
acabaram virando norma. Naturalmente, componentes offboard de boa
qualidade quase sempre superam os componentes onboard em desempenho,
mas eles ganham na questão do custo, que acaba sendo o fator mais
importante para a maioria. Com exceção dos mais abastados, ninguém compra
"o melhor PC possível", mas simplesmente procura a melhor configuração
dentro de um determinado orçamento. Para quem não pode gastar muito (a
grande maioria), acaba fazendo mais sentido procurar uma placa-mãe de boa
qualidade, aproveitando os componentes onboard e investindo o restante em
mais memória, um HD de maior capacidade, uma placa 3D offboard, ou mesmo
um processador um pouco mais rápido, de acordo com o perfil de uso.

Os componentes


O componente básico da placa-mãe é o PCB, a placa de circuito impresso
onde são soldados os demais componentes. Embora apenas duas faces sejam
visíveis, o PCB da placa-mãe é composto por um total de 4 a 10 placas
(totalizando de 8 a 20 faces!). Cada uma das placas possui parte das trilhas
necessárias, e elas são unidas através de pontos de solda estrategicamente
posicionados. Ou seja, embora depois de unidas elas aparentem ser uma única
placa, temos na verdade um sanduíche de várias placas.




                                   PCB



                                                                         256
Como o PCB é um dos componentes de mais baixa tecnologia, é comum que a
produção seja terceirizada para países como a China, onde a mão de obra é
mais barata. É por isso que muitas placas-mãe possuem um "made in China"
decalcado em algum lugar da placa, mesmo que as demais etapas de
produção tenham sido realizadas em outro lugar.

A maior parte dos componentes da placa, incluindo os resistores, MOSFETs e
chips em geral utilizam solda de superfície, por isso é muito difícil substituí-los
manualmente, mesmo que você saiba quais são os componentes defeituosos.

Os menores componentes da placa são os resistores e os capacitores
cerâmicos. Eles são muito pequenos, medindo pouco menos de um milímetro
quadrado e por isso são instalados de forma automatizada (e com grande
precisão). As máquinas que fazem a instalação utilizam um conjunto de braços
mecânicos e, por causa da velocidade, fazem um barulho muito similar ao de
uma metralhadora. A "munição" (os componentes) também é fornecida na
forma de rolos, onde os componentes são pré-posicionados entre duas folhas
plásticas.




                  Rolos com resistores e outros componentes

Depois que todos os componentes são encaixados, a placa passa por um uma
câmara de vapor, que faz com que os pontos de solda derretam e os
componentes sejam fixados, todos de uma vez.




                                                                               257
Resistores, capacitores e cristal de clock

Você pode diferenciar os resistores dos capacitores que aparecem na foto pela
cor. Os resistores são escuros e possuem números decalcados, enquanto os
capacitores são de uma cor clara. Estes pequenos capacitores são sólidos,
compostos de um tipo de cerâmica. Eles são muito diferentes dos capacitores
eletrolíticos (que veremos em detalhes a seguir) e possuem uma capacitância
muito mais baixa.

Outros componentes, como os slots, capacitores e a maior parte dos
conectores utilizam o sistema tradicional, onde os contatos são encaixados em
perfurações feitas na placa e a solda é feita na parte inferior. Na maioria dos
casos, eles são instalados manualmente, por operários. É por isso que a
maioria das fábricas de placas são instaladas em países da Ásia, onde a mão
de obra é barata. No final da produção, a placa-mãe passa por mais uma
máquina de solda, que fixa todos os componentes com contatos na parte
inferior de uma só vez.




                      Linha de montagem de placas-mãe

                                                                           258
Outro componente importante são os reguladores de tensão, cujo componente
mais importante são os MOSFETs, que são transístores de uso externo,
facilmente reconhecíveis pelo tamanho avantajado:




                                  MOSFETs

Uma fonte ATX fornece tensões de 12V, 5V e 3.3V, sendo que a maioria dos
componentes num PC atual utilizam tensões mais baixas, como os 1.5 ou 0.8V
das placas AGP, 1.8V dos pentes de memória DDR2 e assim por diante. Os
reguladores são os responsáveis por reduzir e estabilizar as tensões fornecidas
pela fonte aos níveis corretos para os diversos componentes.

Parte da energia é transformada em calor, de forma que os reguladores estão
entre os componentes que mais esquentam numa placa atual. Em muitas
placas, eles recebem dissipadores de alumínio e, em alguns casos, até mesmo
coolers ativos. O volume e a capacidade dos reguladores de tensão são um
quesito importante nas placas "premium", destinadas a suportarem grandes
overclocks.

Os reguladores de tensão são formados por um conjunto de MOSFETs, alguns
capacitores, uma bobina e um controlador. Placas antigas utilizavam um único
regulador de tensão, mas conforme os processadores foram evoluindo e
passando a consumir cada vez mais energia, as placas passaram a utilizar
reguladores divididos em "fases", onde temos vários reguladores de tensão
trabalhando em paralelo, formando um sistema capaz de fornecer uma
quantidade de energia muito maior e um fluxo mais estável.

Tecnicamente, um regulador de tensão com mais fases é superior, já que o
trabalho é dividido entre mais componentes. Isso permite que o regulador
desperdice menos energia na forma de calor, ao mesmo tempo em que oferece
um fluxo de energia mais estável para o processador.


                                                                           259
Placas atuais utilizam reguladores de tensão com 3, 4, 6 ou 8 fases. É fácil
descobrir o número de fases do regulador da placa-mãe, pois cada fase é
composta por um conjunto idêntico de componentes, que são instalados em
série próximo ao encaixe do processador.

Esta placa da foto, por exemplo, utiliza um regulador de tensão com 3 fases.
Note a presença de 3 bobinas idênticas, cercadas por MOSFETs e capacitores
na parte superior:




                      Regulador de tensão de 3 fases

Em teoria, uma placa com um regulador de 4 fases pode fornecer 33% mais
energia para o processador do que um com 3 fases, e um de 8 fases pode
fornecer o dobro que um de 4 fases. Naturalmente, o resultado final depende
da qualidade e das especificações dos componentes usados, mas a regra geral
é que quanto mais fases, maior é a capacidade de fornecimento da placa.

A principal vantagem de usar uma placa com um regulador de tensão de 6 ou 8
fases, ao invés de uma com um regulador de 3 ou 4 fases, é a garantia de que
a placa será capaz de manter um fornecimento estável em situações de stress,
como ao fazer um overclock agressivo.

O maior problema é que um número maior de fases faz com que a placa
desperdice mais energia nos momentos de baixa atividade. A diferença entre
usar uma placa com um regulador de tensão de 8 fases e outra similar, com um
regulador de tensão de 4 fases pode chegar a mais de 6 watts enquanto o
processador está ocioso.

Não é uma diferença muito grande, mas não deixa de ser um fator a se levar
em conta. Se você está comprando um processador de baixo consumo e não
pretende fazer grandes overclocks, não existe necessidade de pagar mais caro
por uma placa com um regulador de tensão de 8 fases.

                                                                         260
Em seguida, temos a questão estética. A fim de diferenciar seus produtos, cada
vez mais fabricantes adotam cores alternativas no PCB das placas, como
preto, azul, ou até mesmo vermelho, fugindo do verde tradicional. A cor tem
apenas efeito decorativo, não é um indicador da qualidade da placa. Em muitos
casos, o acabamento colorido acaba encarecendo o custo de produção, mas
isso é problema do fabricante, não nosso. ;)

Da mesma forma como a cor da placa, a cor dos slots pode variar. Os slots
PCI, que são originalmente brancos, podem ser azuis numa placa da ECS ou
amarelos numa DFI, por exemplo. As placas coloridas podem ser usadas para
criar um visual diferente ao fazer um casemod.

Continuando, existe uma regra geral de que, quanto mais baixa for temperatura
de funcionamento, mais tempo os componentes dos PCs tendem a durar. De
uma forma geral, um PC em que a temperatura dentro do gabinete fique em
torno dos 35°C tente a apresentar menos defeitos e problemas de instabilidade
e durar mais do que um onde a temperatura fique em torno dos 45°C, por
exemplo.

Naturalmente, existem exceções, já que no mundo real entram em cena os
imprevistos do dia-a-dia e até mesmo falhas na produção dos componentes
que abreviem sua vida útil. Mas, se você fizer um teste de maior escala,
monitorando o funcionamento de 100 PCs de configuração similar ao longo de
5 anos, por exemplo, vai ver que uma diferença de 10 graus na temperatura
influencia de forma significativa a vida útil.

O principal motivo disso são os capacitores eletrolíticos, que são usados em
profusão na placa-mãe, na placa de vídeo e em diversos outros componentes.




                           Capacitores eletrolíticos



                                                                           261
Os capacitores permitem armazenar pequenas quantidades de energia,
absorvendo variações na corrente e entregando um fluxo estável para os
componentes ligados a ele. Você pode imaginar que eles atuam como
pequenas represas, armazenando o excesso de água na época das chuvas e
entregando a água armazenada durante as secas.

Imagine uma situação em que o processador está em um estado de baixo
consumo de energia e subitamente "acorda", passando a operar na freqüência
máxima. Temos então um aumento imediato e brutal no consumo, que demora
algumas frações de segundo para ser compensado. Durante esse período, são
os capacitores que fornecem a maior parte da energia, utilizando a carga
armazenada.

Tanto o processador principal quanto a GPU da placa de vídeo e controladores
responsáveis por barramentos diversos (PCI Express, AGP, PCI, etc.) são
especialmente suscetíveis a variações de tensão, que podem causar
travamentos e até mesmo danos. Basicamente, é graças aos capacitores que
um PC pode funcionar de forma estável.

Existem diversos tipos de capacitores. Os mais usados em placas-mãe e
outros componentes são os capacitores eletrolíticos. Eles possuem uma boa
capacidade e são muito baratos de se produzir, daí a sua enorme
popularidade. O problema é que eles possuem uma vida útil relativamente
curta, estimada em um período de 1 a 5 anos de uso contínuo, variando de
acordo com a qualidade de produção e condições de uso.

Entre os fatores "ambientais", o que mais pesa na conta é, justamente, a
temperatura de funcionamento. Uma redução de 10 graus na temperatura
interna do gabinete pode resultar num aumento de até 100% no tempo de vida
útil dos capacitores, daí a recomendação de caprichar na ventilação e, caso
necessário, instalar exaustores adicionais.

Durante a década de 1990 existiram muitos casos de placas-mãe com
capacitores de baixa qualidade (sobretudo em placas da PC-Chips, ECS, Soyo
e da Abit), que falhavam depois de apenas um ou dois anos de uso.
Recentemente, as coisas melhoraram, com os fabricantes percebendo que
usar capacitores de baixa qualidade acaba causando mais prejuízo do que
ganho. Infelizmente, como temos uma grande predominância de equipamentos
de baixa qualidade aqui no Brasil, ainda é preciso ter cuidado.

Com o passar do tempo, os capacitores eletrolíticos perdem progressivamente
a sua capacitância, deixando os componentes desprotegidos. O capacitor
passa então a atuar como um condutor qualquer, perdendo sua função. Sem a
proteção proporcionada por ele, os circuitos passam a receber diretamente as
variações, o que, além de abreviar sua vida útil, torna o sistema como um todo
mais e mais instável.

Como o processo é muito gradual, você começa notando travamentos
esporádicos nos momentos de atividade mais intensa, que passam a ser mais
e mais freqüentes, até chegar ao ponto em que você acaba sendo obrigado a



                                                                           262
trocar de placa-mãe, pois o micro simplesmente não consegue mais nem
concluir o boot.

Nesses casos, o defeito raramente é permanente, de forma que ao substituir os
capacitores defeituosos, a placa volta a funcionar normalmente. É aí que
entram os técnicos e as empresas que fazem manutenção de placas-mãe,
substituindo capacitores e outros componentes defeituosos.

Internamente, um capacitor eletrolítico é composto por duas folhas de alumínio,
separadas por uma camada de óxido de alumínio, enroladas e embebidas em
um eletrólito líquido (composto predominantemente de ácido bórico, ou borato
de sódio), que acaba evaporando em pequenas quantidades durante o uso.
Como o capacitor é hermeticamente selado, isto com o tempo gera uma
pressão interna que faz com que ele fique estufado. Esse é o sinal visível de
que o capacitor está no final de sua vida útil. Em alguns casos, o eletrólito pode
vazar, corroendo as trilhas e outros componentes próximos e assim causando
uma falha prematura do equipamento.

Ao contrário de chips BGA e outros componentes que usam solda de
superfície, os contatos dos capacitores são soldados na parte inferior da placa.
Embora trabalhoso, é possível substituir capacitores estufados ou em curto
usando um simples ferro de solda, permitindo consertar, ou estender a vida útil
da placa.

Aqui temos um caso dramático, de uma placa com diversos capacitores
estufados, três deles já apresentando sinais de vazamento:




               Capacitores estufados e com sinais de vazamento

Atualmente, cada vez mais fabricantes estão passando a oferecer placas com
capacitores de estado sólido (chamados de Conductive Polymer Aluminum),
onde a folha de alumínio banhada no líquido eletrolítico é substituída por uma

                                                                              263
folha de material plástico (um polímero) contendo um eletrolítico sólido de
alumínio. Por não conterem nenhum tipo de líquido corrosivo, estes capacitores
não são susceptíveis aos problemas de durabilidade que caracterizam os
capacitores eletrolíticos.

Embora mais duráveis, os capacitores de estado sólido são mais caros que os
capacitores eletrolíticos. Como o uso deles aumenta em até US$ 10 o custo de
produção da placa (o que acaba causando um aumento de até 20% no preço
final), eles são oferecidos apenas em placas "premium", desenvolvidas para o
público entusiasta. Com o passar do tempo, entretanto, o uso tende a se tornar
mais comum.

Os capacitores de estado sólido podem ser diferenciados dos eletrolíticos
facilmente, pois são mais compactos e possuem um encapsulamento inteiriço:




                        Capacitores de estado sólido




                                                                          264
BIOS


O BIOS contém todo o software básico, necessário para inicializar a placa-mãe,
checar os dispositivos instalados e carregar o sistema operacional, o que pode
ser feito a partir do HD, CD-ROM, pendrive, ou qualquer outra mídia disponível.
O BIOS inclui também o Setup, o software que permite configurar as diversas
opções oferecidas pela placa. O processador é programado para procurar e
executar o BIOS sempre que o micro é ligado, processando-o da mesma forma
que outro software qualquer. É por isso que a placa-mãe não funciona
"sozinha", você precisa ter instalado o processador e os pentes de memória
para conseguir acessar o Setup. :)

Por definição, o BIOS é um software, mas, como de praxe, ele fica gravado em
um chip espetado na placa-mãe. Na grande maioria dos casos, o chip combina
uma pequena quantidade de memória Flash (256, 512 ou 1024 KB), o CMOS,
que é composto por de 128 a 256 bytes de memória volátil e o relógio de tempo
real. Nas placas antigas era utilizado um chip DIP, enquanto nas atuais é
utilizado um chip PLCC (plastic leader chip carrier), que é bem mais compacto:




               Chip PLCC que armazena o BIOS da placa-mãe

O CMOS serve para armazenar as configurações do setup. Como elas
representam um pequeno volume de informações, ele é bem pequeno em
capacidade. Assim como a memória RAM principal, ele é volátil, de forma que
as configurações são perdidas quando a alimentação elétrica é cortada. Por
isso, toda placa-mãe inclui uma bateria, que mantém as configurações quando
o micro é desligado.

A mesma bateria alimenta também o relógio de tempo real (real time clock),
que, apesar do nome pomposo, é um relógio digital comum, que é o
                                                                           265
responsável por manter atualizada a hora do sistema, mesmo quando o micro é
desligado.

Se você prestou atenção nos três parágrafos anteriores, deve estar se
perguntando por que as configurações do Setup não são armazenadas
diretamente na memória Flash, em vez de usar o CMOS, que é volátil. Isso
seria perfeitamente possível do ponto de vista técnico, mas a idéia de usar
memória volátil para guardar as configurações é justamente permitir que você
possa zerar as configurações do Setup (removendo a bateria, ou mudando a
posição do jumper) em casos onde o micro deixar de inicializar por causa de
alguma configuração incorreta.

Um caso clássico é tentar fazer um overclock muito agressivo e o processador
passar a travar logo no início do boot, sem que você tenha chance de entrar no
setup e desfazer a alteração. Atualmente basta zerar o setup para que tudo
volte ao normal, mas, se as configurações fossem armazenadas na memória
Flash, a coisa seria mais complicada.

Para zerar o CMOS, você precisa apenas cortar o fornecimento de energia
para ele. Existem duas formas de fazer isso. A primeira é (com o micro
desligado) remover a bateria da placa-mãe e usar uma moeda para fechar um
curto entre os dois contatos da bateria durante 15 segundos. Isso garante que
qualquer carga remanescente seja eliminada e o CMOS seja realmente
apagado. A segunda é usar o jumper "Clear CMOS", que fica sempre
posicionado próximo à bateria. Ele possui duas posições possíveis, uma para
uso normal e outra para apagar o CMOS ("discharge", ou "clear CMOS"). Basta
mudá-lo de posição durante 15 segundos e depois recolocá-lo na posição
original.

Uma dica é que muitas placas vêm de fábrica com o jumper na posição
"discharge", para evitar que a carga da bateria seja consumida enquanto a
placa fica em estoque. Ao montar o micro, você precisa se lembrar de verificar
e, caso necessário, mudar a posição do jumper, caso contrário a placa não
funciona, ou exibe uma mensagem de erro durante o boot e não salva as
configurações do Setup.




                                                                          266
Jumper Clear CMOS

Como todo software, o BIOS possui bugs, muitos por sinal. De tempos em
tempos, os fabricantes disponibilizam versões atualizadas, corrigindo
problemas, adicionando compatibilidade com novos processadores (e outros
componentes) e, em alguns casos, adicionando novas opções de configuração
no Setup. É muito comum que você precise atualizar o BIOS da placa para que
ela funcione em conjunto com novos processadores, de fabricação mais
recente que a placa-mãe.

Atualizar o BIOS consiste em dar boot através de um disquete ou CD-ROM,
contendo o software que faz a gravação, indicar a localização do arquivo com a
nova imagem e deixar que ele regrave a memória Flash com o novo código.

O primeiro passo é visitar a área de suporte ou downloads do site do fabricante
e procurar por atualizações para a sua placa-mãe. Se você usa Windows,
aproveite para verificar se não estão disponíveis novas versões dos drivers,
que também podem corrigir problemas e adicionar novos recursos.

Por exemplo, uma Asus K8N4-E SE, que testei certa vez, tinha um problema
estranho com a placa de rede, que parava de funcionar aleatoriamente depois
de algumas horas de uso contínuo, que foi solucionado com a atualização do
BIOS da versão 0106 para a 0110.

Para baixar o arquivo, acessei a área de download do site da Asus
(http://support.asus.com/download/) e, no menu de busca por atualizações,
selecionei as opções "Motherboard > Socket 754 > K8N4-E SE > BIOS",
chegando ao arquivo:




                                                                           267
Muitos fabricantes ainda disponibilizam disquetes de boot, contendo uma
versão reduzida do FreeDOS ou MS-DOS, mas muitos já passaram a
disponibilizar CDs de boot (basta gravar a imagem .iso usando o Nero, K3B ou
outro programa de gravação e dar boot), o que elimina a necessidade de ter
que instalar um drive de disquetes na máquina só para poder atualizar o BIOS.

Uma idéia nova, que foi inaugurada pela Asus e vem sendo adotada por cada
vez mais fabricantes, é incluir o utilitário de atualização diretamente no próprio
BIOS. Nesse caso, você só precisa pressionar uma combinação de teclas
durante o boot e indicar a localização do arquivo de atualização. Na maioria
das placas, ele precisa ser gravado num disquete ou CD-ROM (você precisa
queimar um CD, colocando o arquivo no diretório raiz), mas algumas já
suportam também o uso de pendrives e cartões de memória instalados com a
ajuda de um adaptador USB.

Na maioria dos casos, você pode acessar o utilitário de atualização
pressionando ALT+F2 durante a contagem de memória. Em muitas placas, a
opção também fica disponível através do Setup. Nas placas da Asus, por
exemplo, ela fica dentro do menu "Tools". Dentro do programa, basta indicar o
arquivo a ser gravado. Eles geralmente possuem em torno de 512 KB e
utilizam a extensão ".BIN" ou ".ROM":




                                                                              268
Atualização de BIOS

Atualizar o BIOS é sempre um procedimento potencialmente perigoso, já que
sem ele a placa não funciona. Na grande maioria dos casos, o programa
também oferece a opção de salvar um backup do BIOS atual antes de fazer a
atualização. Esse é um passo importante, pois se algo sair errado, ou você
tentar gravar uma atualização para um modelo de placa diferente, ainda restará
a opção de reverter o upgrade, regravando o backup da versão antiga.

A maioria das placas atuais incorpora sistemas de proteção, que protegem
áreas essenciais do BIOS, de forma que, mesmo que acabe a energia no meio
da atualização, ou você tente gravar o arquivo errado, a placa ainda preservará
as funções necessárias para que você consiga reabrir o programa de gravação
e terminar o serviço. Em alguns casos, a placa chega a vir com um "BIOS de
emergência", um chip extra, com uma cópia do BIOS original, que você pode
instalar na placa em caso de problemas.

Placas antigas não possuem essas camadas de proteção, de forma que um
upgrade malsucedido podia realmente inutilizar a placa. Nesses casos, a
solução era remover o chip e levá-lo a alguém que tivesse um gravador de
EEPROM. Depois de regravado, o chip era reinstalado na placa e tudo voltava
ao normal. Ou seja, mesmo nesses casos, a placa não era realmente
danificada, ficava apenas "fora de serviço".

Um truque muito usado era utilizar uma placa-mãe igual, ou pelo menos de
modelo similar, para regravar o BIOS da placa danificada. Nesses casos, você
dava boot com o disquete ou CD de atualização (na placa boa), removia o chip
com o BIOS e instalava no lugar o chip da placa danificada (com o micro
ligado), dando prosseguimento ao processo de regravação. Dessa forma, você
usava a placa "boa" para regravar o BIOS da placa "ruim". Naturalmente, a


                                                                           269
troca precisava ser feita com todo o cuidado, já que um curto nos contatos
podia inutilizar a placa-mãe.

Concluindo, existem também programas de gravação para Windows, que são
incluídos nos CDs de drivers de muitas placas. Eles são mais fáceis de usar,
mas fazer a atualização através deles é considerado menos seguro, já que,
dentro do Windows e com outros programas e serviços rodando, a
possibilidade de algo inesperado acontecer é maior.

Hoje em dia, a maioria dos dispositivos incluindo o HD, drive óptico, placa
wireless e placa de vídeo possuem um software de inicialização, similar ao
BIOS da placa-mãe. Ele pode ser gravado diretamente no dispositivo, em um
chip de memória Flash, ou mesmo em algum tipo de memória ROM, ou ser
incorporado ao driver. Essa segunda solução vem sendo cada vez mais
adotada pelos fabricantes, pois permite eliminar o chip de memória, reduzindo
o custo. É por isso que, muitas vezes (sobretudo ao tentar ativar sua placa
wireless ou scanner no Linux), você precisa baixar, além do driver ou módulo
necessário, também os arquivos que compõem o firmware da placa.

Formatos


O formato AT foi introduzido junto com os micros 286, onde a placa-mãe media
nada menos que 36 x 32 cm. Placas tão grandes acabam sendo caras de se
produzir, de forma que pouco depois, em 1986, foi introduzido o formato Baby-
AT, em que a placa mede apenas 24 x 33 cm.

O formato Baby-AT teve uma sobrevida surpreendente. Além de ser utilizado
nas placas para micros 286, 386, 486 e Pentium, ele também foi utilizado nas
placas Super 7, usadas nos micros K6-2 e K6-3, que foram produzidas até o
final de 2002.

A principal característica das placas Baby-AT é que, com exceção do teclado,
todos os conectores são presos no gabinete e ligados à placa-mãe através de
cabos flat, o que tornava a montagem dos micros um pouco mais trabalhosa e
contribuía para o amontoamento de cabos dentro do gabinete, prejudicando a
ventilação. Elas também utilizavam, tipicamente, conectores DIN para o
teclado, em vez dos conectores mini-DIN usados atualmente. Para ligar um
teclado atual, você precisaria usar um adaptador.




                                                                         270
Amontoado de cabos flat num micro com placa Baby-AT

Existiram também placas Baby-AT de tamanho reduzido, com 24 x 24 ou
mesmo 22 x 22 cm, geralmente chamadas de micro-AT ou 2/3-Baby. Esse
formato foi extremamente popular nas placas soquete 7.

Em seguida temos o formato ATX, que marca o início da era atual. O ATX foi
desenvolvido pela Intel e introduzido juntamente com os primeiros micros
Pentium II. O formato ATX trouxe um conjunto de modificações importantes. A
mais visível delas é o painel traseiro, que concentra os conectores do teclado,
mouse, porta serial, portas USB e também os conectores do vídeo, som e rede
onboard.




                                 Painel ATX

Junto com o formato ATX, foi introduzido um novo padrão de fontes de
alimentação, em que a fonte passou a fornecer também a tensão de 3.3V,

                                                                           271
utilizada por diversos componentes e não mais apenas os 12V e 5V das fontes
AT. O formato do conector foi alterado e as fontes ATX incorporaram contatos
adicionais, que permitem que a fonte seja ligada e desligada via software.

Todas essas modificações tornaram os antigos gabinetes AT obsoletos.
Inicialmente, os gabinetes ATX eram bem mais caros, mas conforme o formato
se popularizou, os preços foram caindo, até chegar ao patamar atual.

Uma curiosidade é que o padrão ATX original previa o uso de um design de
pressão positiva, em que o exaustor da fonte soprava o ar para dentro do
gabinete e não para fora, como nos micros atuais. A idéia era reduzir o
acúmulo de poeira dentro do gabinete, já que o ar sairia (em vez de entrar)
pelas aberturas do gabinete. O problema era que esse design prejudicava a
ventilação, já que o ar era aquecido pelos circuitos da fonte e então soprado
sobre os demais componentes.

O sistema funcionou bem em conjunto com os primeiros processadores
Pentium II, que trabalhavam a freqüências relativamente baixas e geravam
pouco calor, mas passou a causar problemas de superaquecimento conforme o
clock dos processadores foi aumentando.

Nos gabinetes atuais, a fonte sopra o ar para fora e existe espaço para
adicionar três exaustores adicionais. Um atrás, logo abaixo da fonte de
alimentação (que também deve soprar o ar para fora), um na parte frontal do
gabinete e outro na lateral (sobre o processador), que devem soprar o ar para
dentro.




                               Gabinete ATX

Na maioria dos gabinetes novos é utilizado um tubo plástico na abertura sobre
o processador, que canaliza o ar externo até o cooler do processador, fazendo


                                                                          272
com que o ar seja "puxado" para dentro do gabinete. Esse design melhora a
circulação de ar, sem a necessidade de instalar um cooler adicional.

Existem três tamanhos de placas ATX. As placas ATX tradicionais, também
chamadas de Full ATX medem 30.5 x 24.4 cm. Este formato é geralmente
reservado às placas mais caras, que trazem 6 ou 7 slots de expansão.

Em seguida temos o formato Mini ATX, onde a placa é mais "fina", medindo
apenas 28.4 x 20.8 cm. Finalmente, temos o Micro ATX, o formato mais
comum, usado nas placas de baixo custo, onde a placa mede apenas 24.4 x
24.4 cm.

Os três formatos são intercompatíveis, de forma que você pode perfeitamente
instalar uma placa Micro ATX em um gabinete Full ATX. A grande maioria dos
gabinetes suporta o uso de qualquer um dos três formatos de placas, mas os
gabinetes mais compactos geralmente oferecem uma ventilação ruim.

Todos os tamanhos especificados são medidas máximas, que asseguram que
as placas funcionem em qualquer gabinete. Nada impede que os fabricantes
desenvolvam placas menores (o que é muito comum), desde que a furação da
placa continue compatível. É muito comum ver placas Micro ATX com apenas
20.8, ou mesmo 19.8 cm de largura. Produzir placas menores permite reduzir
os custos de produção das placas mais simples.

Existe ainda o formato Flex ATX, um formato miniaturizado, onde a placa mede
apenas 22.9 x 19.1 cm. Este formato foi introduzido pela Intel em 1999, para o
desenvolvimento de PCs compactos e de baixo custo.

Existem ainda os formatos de placas miniaturizadas, originalmente introduzidos
pela VIA. O mais popular deles é o mini-ITX, atualmente também usado em
placas de outros fabricantes, incluindo até mesmo a Intel. As placas Mini-ITX
medem apenas 17x17 cm, o que as torna realmente muito pequenas se
comparadas a uma placa mini-ATX típica. Elas são muito procuradas por quem
quer montar um servidor doméstico ou um media-center.

Esta da foto é uma Albatron KI690, uma placa soquete AM2, baseada no
chipset AMD 690G. Como você pode notar, o tamanho reduzido obrigou os
projetistas a fazerem um conjunto de concessões. Ela utiliza módulos de
memória SODIMM de notebook, que são mais compactos e inclui um único slot
PCI:




                                                                          273
Placa mini-ITX

Além do mini-ITX, a VIA fabrica dois formatos ainda mais miniaturizados,
chamados de nano-ITX e pico-ITX. Estas placas utilizam processadores VIA
C7 de baixo consumo e são extremamente econômicas do ponto de vista do
consumo elétrico. As placas pico-ITX (o menor dos dois formatos) medem
apenas 10 x 7.2 cm! Apesar disso elas são extremamente incomuns, pois são
caras e (devido ao uso dos processadores C7) o desempenho é ruim.




                                                                      274
Placa Pico-ITX

Em 2003 a Intel tentou introduzir um novo formato, o BTX. Nele, tanto a placa-
mãe quanto o gabinete são maiores e o fluxo de ar dentro do gabinete é
otimizado, de forma a melhorar a ventilação sobre o processador. Um módulo
de retenção preso ao gabinete melhorava a fixação da placa-mãe e permitia o
uso de dissipadores maiores e mais pesados.

Na época, a Intel estava empenhada em lançar versões mais rápidas do
Pentium 4, de forma que o padrão BTX foi desenvolvido tendo em mente
processadores beberrões, que consumissem acima de 150 watts e utilizassem
coolers gigantescos. Com o lançamento da plataforma Core e a ênfase em
processadores eficientes, de baixo consumo, a plataforma BTX foi
silenciosamente abandonada.

Barramentos


Os barramentos são utilizados para interligar os diferentes componentes da
placa-mãe e também permitir o uso de placas de expansão. Assim como os
demais componentes, os barramentos evoluíram de forma expressiva durante
as últimas décadas, passando do ISA e das portas seriais, aos slots PCI
Express e portas USB 2.0, que utilizamos atualmente.

Não poderia ser diferente, pois o uso de um barramento lento cria um gargalo,
que limita o desempenho dos componentes ligados a ele. Uma placa Gigabit
Ethernet é capaz de transmitir dados a 1000 megabits, o que equivale a 125
MB/s. A grande maioria das placas Gigabit Ethernet atuais são ligadas no
barramento PCI Express, que é capaz de alimentar a placa com um volume de
dados mais do que suficiente.



                                                                          275
Imagine agora que um fabricante resolvesse produzir placas Gigabit Ethernet
em versão ISA, destinadas a micros antigos. Não existe nenhuma restrição
técnica que realmente impeça o desenvolvimento de uma placa gigabit em
versão ISA. O problema é que a placa ficaria limitada à velocidade oferecida
pelo barramento e não seria capaz de operar a mais do que uma fração do seu
desempenho real. Na melhor das hipóteses, ela transmitiria dados a pouco
mais de 5 MB/s, o que representa apenas 4% do seu desempenho nominal.

Infelizmente, novos barramentos são quase sempre incompatíveis com os
antigos. É por isso que de tempos em tempos acabamos sendo obrigados a
descartar alguma placa antiga, para a qual ainda teríamos utilidade, ao trocar
de placa-mãe. Foi assim com as placas de som e modems ISA e, em breve,
acontecerá também com nossas placas de rede, placas de captura e outros
periféricos PCI. É o preço a se pagar pela evolução da tecnologia.

ISA


O ISA foi o primeiro barramento de expansão utilizado em micros PC. Existiram
duas versões: os slots de 8 bits, que foram utilizados pelos primeiros PCs e os
slots de 16 bits, introduzidos a partir dos micros 286.

Embora fossem processadores de 16 bits, os 8088 comunicavam-se com os
periféricos externos utilizando um barramento de 8 bits, daí o padrão ISA
original também ser um barramento de 8 bits. Inicialmente, o barramento ISA
operava a apenas 4.77 MHz, a freqüência de clock do PC original, mas logo foi
introduzido o PC XT, onde tanto o processador quanto o barramento ISA
operavam a 8.33 MHz.

Com a introdução dos micros 286, o barramento ISA foi atualizado, tornando-se
o barramento de 16 bits que conhecemos. Na época, uma das prioridades foi
preservar a compatibilidade com as placas antigas, de 8 bits, justamente por
isso os pinos adicionais foram incluídos na forma de uma extensão para os já
existentes.

Como você pode ver na foto, o slot ISA é dividido em duas partes. A primeira,
maior, contém os pinos usados pelas placas de 8 bits, enquanto a segunda
contém a extensão que adiciona os pinos extra:




                                                                           276
Slots ISA

Uma coisa que chama a atenção nos slots ISA é o grande número de contatos,
totalizando nada menos que 98. Por serem slots de 16 bits, temos apenas 16
trilhas de dados, as demais são usadas para endereçamento, alimentação
elétrica, sinal de clock, refresh e assim por diante.

Este esquema mostra a função de cada um dos pinos em um slot ISA. Como
você pode ver, não é exatamente uma implementação "simples e elegante",
mas enfim, funcionava e era o que estava disponível na época:




Cada um destes pinos podia ser controlado individualmente, via software e
muitas placas não utilizavam todos os pinos do conector, por isso era comum
que periféricos mais simples, como placas de som e modems viessem com

                                                                        277
alguns dos contatos "faltando". Outra curiosidade é que, justamente por serem
fáceis de programar, as controladoras ISA foram as preferidas por
programadores que trabalham com automatização e robótica durante muito
tempo. Quando as placas-mãe com slots ISA começaram a desaparecer do
mercado, alguns chegaram estocá-las :).

Apesar de toda a complexidade, o barramento ISA é incrivelmente lento. Além
de operar a apenas 8.33 MHz, são necessários tempos de espera entre uma
transferência e outra, de forma que, na prática, o barramento funciona a
apenas metade da freqüência nominal. Dessa forma, chegamos a uma taxa de
transmissão teórica de 8.33 MB/s (no ISA de 16 bits). Como existe um grande
overhead causado pelo protocolo usado, na prática acaba sendo possível obter
pouco mais de 5 MB/s de taxa de transferência real.

Periféricos "rápidos", como placas de vídeo, placas de rede e interfaces IDE
migraram rapidamente para barramentos mais rápidos conforme eles foram
sendo introduzidos. Mas, o ISA continuou sendo suficiente para periféricos
lentos, como modems, placas de som e alguns outros dispositivos. Isso acabou
fazendo com que o ISA tivesse uma sobrevida assustadora. Por volta do final
de 2003 ainda era possível encontrar placas-mãe novas, destinadas a
processadores Pentium III e K6-2, que ainda ostentavam um ou dois slots ISA.
Muitas delas continuam em uso até os dias de hoje.

Com relação à parte prática, uma das principais características das placas ISA
era a presença de jumpers, que permitiam definir os endereços de IRQ, DMA e
I/O usados pela placa. Em um PC com vários periféricos, os valores precisam
ser ajustados com cuidado, já que duas placas configuradas para utilizar o
mesmo endereço entravam em conflito, fazendo com que ambas não
funcionassem corretamente.




Mais tarde, surgiu o padrão ISA plug-and-play, onde a configuração de
endereços é feita pelo BIOS durante o boot. Ele verifica quais endereços estão


                                                                          278
ocupados por outros dispositivos e tenta atribuir os endereços livres aos novos
periféricos instalados, evitando conflitos.

Com a introdução das placas ISA plug-and-play, as placas antigas,
configuradas via jumper passaram a ser chamadas de placas legacy ISA. É
relativamente incomum encontrar alguma em uso hoje em dia, mesmo ao
trabalhar com micros antigos. Os mais comuns são modems, já que os antigos
modems ISA trabalham via hardware e por isso oferecem vantagens sobre os
softmodems atuais. Como costumo dizer, os modems (discados) são
possivelmente a única classe de periféricos que regrediu de 10 anos pra cá.

MCA, EISA e VLB


Com o surgimento dos processadores 386, que trabalhavam usando palavras
binárias de 32 bits, tornou-se necessária a criação de um barramento mais
rápido que o ISA para o uso de periféricos como placas de vídeo e HDs, que
logo passaram a ter seu desempenho severamente limitado por ele.

A primeira resposta veio por parte da IBM, que desenvolveu o barramento
MCA. Ele era bastante avançado para a época: além de ser um barramento de
32 bits, ele operava a 10 MHz, o que resultava numa taxa de transferência
teórica de 32 MB/s. Ele também foi o primeiro barramento a suportar plug-and-
play (oito anos antes do lançamento do Windows 95) e a suportar bus
mastering, o que permitia que o HD e outros periféricos transferissem dados
diretamente para a memória RAM (ao carregar um programa, por exemplo),
deixando o processador livre para executar outras tarefas. Isso tornava o
sistema bem mais responsível em relação às máquinas equipadas com placas
ISA.

O sistema de plug-and-play do MCA funcionava com o uso de dois disquetes.
O "reference disk" continha um programa de configuração, que alterava a
distribuição dos endereços e outras configurações do BIOS e era fornecido
junto com o micro. Ao comprar qualquer periférico MCA, você recebia um
"option disk", que era carregado com a ajuda do primeiro disquete,
configurando a placa. Uma vez feita, a configuração se tornava permanente e
você não precisava mais se preocupar. Embora rudimentar, este sistema já
seguia a mesma lógica da instalação de drivers, que temos nos dias de hoje.

O grande problema é que o MCA era um padrão proprietário, de forma que
tanto outros fabricantes de PCs quanto fabricantes de periféricos precisariam
licenciar a tecnologia e pagar royalties para produzir produtos compatíveis.

A IBM tentou usar o barramento como uma arma estratégica para recuperar o
terreno perdido para outros fabricantes. Surgiu então a linha IBM PS/2, uma
família de micros 386 que, além do MCA, incorporava várias outras inovações
importantes. O problema é que os demais fabricantes não gostaram da idéia e
a IBM acabou isolada, tendo que arcar sozinha com o desenvolvimento e a
produção das placas de expansão. Embora possuíssem diversas vantagens, o
fato dos IBM PS/2 possuírem apenas slots MCA acabou se tornando mais um
problema do que uma vantagem, já que isso os tornava incompatíveis com as

                                                                           279
placas ISA, que eram mais baratas e populares. No final, o MCA acabou se
revelando um grande fracasso.

Inicialmente, os demais fabricantes continuaram produzindo micros 386 e 486
utilizando apenas periféricos ISA, o que resultava em limitações óbvias,
sobretudo com relação ao desempenho do HD e vídeo, o que os tornava
praticamente inutilizáveis para edição de imagens e vídeo, por exemplo, onde
os Macs dominavam. Por utilizarem o mesmo barramento dos micros 286
(também chamados de PC-AT), eles eram chamados de "AT 386" ou "AT 486".
O "AT" nesse caso indica uma limitação e não um recurso extra. :)

Não demorou para que a Compaq desenvolvesse o EISA e abrisse as
especificações para os demais fabricantes, criando uma entidade sem fins
lucrativos para impulsionar seu desenvolvimento.

O EISA é um barramento peculiar. As dimensões são as mesmas de um slot
ISA de 16 bits, porém o slot é mais alto e possui duas linhas de contatos. A
linha superior mantém a mesma pinagem de um slot ISA de 16 bits, de forma a
manter a compatibilidade com todos os periféricos, enquanto a linha inferior
inclui 90 novos contatos, utilizados pelas placas de 32 bits.

As placas ISA atingiam apenas os contatos superficiais do conector, enquanto
as placas EISA utilizavam todos os contatos. Embora o uso de tantos contatos
esteja longe de ser uma solução elegante, é preciso admitir que o EISA foi uma
solução engenhosa para o problema da compatibilidade:




Aqui temos os contatos de uma placa de vídeo EISA, que mostra a
organização na prática:




                                                                           280
Os slots EISA eram tipicamente marrons, por isso lembram um pouco um slot
AGP, embora bem maiores:




                                  Slot EISA

Assim como o ISA, o barramento EISA operava a 8.33 MHz. Entretanto, a
transferência de 32 bits por ciclo e a eliminação dos tempos de espera entre
um ciclo e outro faziam com que ele fosse até 4 vezes mais rápido.

O EISA acabou tendo uma vida curta, pois em 1993 surgiu o VLB (VESA Local
Bus), outro padrão aberto de barramento de 32 bits, que conseguia ser muito
mais rápido, trabalhando a uma freqüência nominal de 33 MHz e oferecendo
taxas de transferência teóricas de até 133 MB/s.

Inicialmente o VLB (ou VESA, como é chamado por muitos) surgiu como
barramento próprio para a conexão da placa de vídeo. Nesta época, o
Windows 3.11 e os aplicativos gráficos já eram populares, de forma que existia
uma grande demanda por placas de vídeo mais rápidas.

O "rápido" que menciono aqui é a simples capacidade de atualizar a tela em
tempo real enquanto edita uma imagem no Photoshop, não tem nada a ver
com aceleração 3D ou exibição de vídeo em alta resolução, como temos hoje
em dia :). Além de serem muito lentas, as placas de vídeo ISA eram limitadas à
exibição de apenas 256 cores.

Graças à boa velocidade, o VLB acabou tornando-se o padrão também para
outros periféricos, como controladoras IDE e SCSI. Novamente, existiu a
preocupação de manter compatibilidade com as placas ISA, de forma que os
slots VLB são na verdade uma expansão, onde temos um slot ISA tradicional,
seguido por um segundo conector, que inclui os pinos adicionais:




                                                                          281
Slots VLB

Isso rendeu o apelido de "Very Long Bus" (barramento muito comprido ;) e
trouxe uma série de problemas de mal contato, já que se a placa-mãe não
estivesse muito bem presa ao gabinete, a pressão necessária para encaixar as
placas faziam com que a placa envergasse, comprometendo o encaixe. A
grande pressão necessária acabava danificando os contatos com o tempo, o
que, combinada com a oxidação natural, acabava fazendo com que muitas
placas realmente deixassem de funcionar depois de removidas e reinstaladas
algumas vezes.

O VLB é um barramento local, onde os contatos são ligados diretamente aos
pinos do processador. Esse design simples barateava a produção das placas-
mãe, mas fazia com que a utilização do processador fosse relativamente alta e
não fosse possível utilizar mais do que 3 placas VLB no mesmo micro.

O VLB se tornou rapidamente o padrão de barramento para placas para micros
486, mas acabou desaparecendo com a introdução do barramento PCI. Uma
curiosidade é que as primeiras placas para micros Pentium (a primeira
geração, que oferecia suporte apenas aos Pentium de 60 e 75 MHz) chegaram
a incluir slots VLB, utilizando uma versão adaptada do barramento.

PCI


Embora fosse relativamente rápido, o VLB estava longe de ser perfeito. Em
1992 foi introduzido o barramento PCI, que manteve a mesma freqüência de
operação, mas incorporou suporte nativo a plug-and-play e bus mastering,
além de romper os laços de legado com o ISA, o que simplificou muito a
pinagem do barramento.

O PCI opera nativamente a 33 MHz, o que resulta em uma taxa de transmissão
teórica de 133 MB/s. Entretanto, assim como em outros barramentos, a
freqüência do PCI está vinculada à freqüência de operação da placa-mãe, de
forma que, ao fazer overclock (ou underclock) a freqüência do PCI acaba
também sendo alterada.

Em uma placa-mãe soquete 7 antiga, que opera a 66 MHz, o PCI opera à
metade da freqüência da placa-mãe. Ao fazer overclock para 75 ou 83 MHz, o
PCI e todas as placas conectadas a ele passam a operar a respectivamente
37.5 MHz e 41.5 MHz. Isto acabava resultando em um ganho expressivo de


                                                                         282
desempenho, já que, além do processador, temos ganhos de desempenho
também em outros componentes.

Conforme a freqüência das placas foi subindo, passaram a ser utilizados
divisores cada vez maiores, de forma a manter o PCI operando à sua
freqüência original. Em uma placa-mãe operando a 133 MHz, a freqüência é
dividida por 4 e, em uma de 200 MHz, é dividida por 6.

Como você pode notar, o barramento PCI tem se tornado cada vez mais lento
com relação ao processador e outros componentes, de forma que com o
passar do tempo os periféricos mais rápidos migraram para outros
barramentos, como o AGP e o PCI-Express. Ou seja, a história se repete, com
o PCI lentamente se tornando obsoleto, assim como o ISA há uma década
atrás.




                            Slots PCI e slot AGP

Uma das principais vantagens do PCI sobre os barramentos anteriores é o
suporte a Bus Mastering. Tanto o EISA quanto o VLB ofereciam um sistema de
Bus Mastering rudimentar, mas o recurso acabou não sendo muito utilizado por
um conjunto de fatores, incluindo as dificuldades no desenvolvimento dos
drivers. Apenas com o PCI foi criado um padrão realmente confiável, que foi
adotado em massa pelos fabricantes.

O Bus Mastering é um sistema avançado de acesso direto à memória, que
permite que HDs, placas de vídeo e outros periféricos leiam e gravem dados
diretamente na memória RAM, deixando o processador livre.

Um dos melhores exemplos é quando o sistema está ocupado inicializando
vários programas simultaneamente. O HD precisa transferir grandes
quantidades de arquivos e bibliotecas para a memória, a placa de vídeo precisa
exibir as telas de progresso e atualizar a tela, enquanto o processador fica
ocupado processando as configurações e outras informações necessárias ao
carregamento dos programas. Graças ao Bus Mastering, um micro atual ainda
continua respondendo aos movimentos do mouse e às teclas digitadas no
teclado, os downloads e transferências de arquivos através da rede não são
interrompidos e assim por diante, muito diferente dos micros antigos que

                                                                          283
literalmente "paravam" durante transferências de arquivos e carregamento dos
programas.

Complementando, temos a questão do plug-and-play. Atualmente, estamos
acostumados a instalar o dispositivo, instalar os drivers e ver tudo funcionar,
mas antigamente as coisas não eram assim tão simples, de forma que o plug-
and-play foi tema de grande destaque.

Tudo começa durante a inicialização do micro. O BIOS envia um sinal de
requisição para todos os periféricos instalados no micro. Um periférico PnP é
capaz de responder ao chamado, permitindo ao BIOS reconhecer os periféricos
PnP instalados. O passo seguinte é criar uma tabela com todas as interrupções
disponíveis e atribuir cada uma a um dispositivo. O sistema operacional entra
em cena logo em seguida, lendo as informações disponibilizadas pelo BIOS e
inicializando os periféricos de acordo.

As informações sobre a configuração atual da distribuição dos recursos entre
os periféricos são gravadas em uma área do CMOS chamada de ESCD. Tanto
o BIOS (durante o POST) quanto o sistema operacional (durante a
inicialização) lêem essa lista e, caso não haja nenhuma mudança no hardware
instalado, mantêm suas configurações. Isso permite que o sistema operacional
(desde que seja compatível com o PnP) possa alterar as configurações caso
necessário. No Windows 95/98, o próprio usuário pode alterar livremente as
configurações do sistema através do gerenciador de dispositivos, encontrado
no ícone sistema, dentro do painel de controle.

Na maioria das placas-mãe, você encontra a opção "Reset ESCD" ou "Reset
Configuration Data" que, quando ativada, força o BIOS a atualizar os dados da
tabela, descartando as informações anteriores. Em muitos casos, isso
soluciona problemas relacionados à detecção de periféricos, como, por
exemplo, ao substituir a placa de som e perceber que a nova não foi detectada
pelo sistema.

Nos micros atuais, os conflitos de endereços são uma ocorrência relativamente
rara. Na maioria dos casos, problemas de detecção de periféricos, sobretudo
no Linux, estão mais relacionados a problemas no ACPI, à falta de drivers ou à
falta de suporte por parte dos drivers existentes.

O ACPI é o responsável não apenas pelo suporte a economia de energia
(incluindo o ajuste dinâmico da freqüência do processador), mas também pela
inicialização de vários periféricos. É comum, por exemplo, que a placa wireless
não seja detectada, ou que você não consiga ativar o transmissor usando os
botões até que instale o driver ou utilitário fornecido pelo fabricante. No Acer
5043 (e outros modelos similares), por exemplo, você só consegue ativar o
transmissor da placa wireless depois de instalar o Acer Launch Manager.

Em placas antigas, que ainda possuem slots ISA, existe um complicador
adicional, já que placas legacy ISA (as configuradas via jumper) não são
detectadas pelo BIOS e por isso não entram na tabela de endereços, o que
pode fazer com que os endereços usados por elas sejam atribuídos a outras
placas, causando conflitos, como nos velhos tempos.

                                                                            284
Para evitar esse problema, é preciso reservar manualmente os endereços de
IRQ e DMA ocupados por periféricos ISA de legado através da sessão
"PNP/PCI Setup" do Setup. Se, por exemplo, você tiver uma placa de som não
PnP, que esteja configurada para utilizar o IRQ 5 e os canais de DMA 1 e 5,
você deverá reservar os três canais, para que o BIOS não os atribua a nenhum
outro periférico.

O Windows (desde o 95) inclui algumas rotinas que permitem identificar estes
periféricos antigos de maneira indireta, configurando-os e salvando as
configurações no ESCD. A verificação é feita durante a instalação e através do
utilitário "Adicionar novo Hardware". Apesar de não ser infalível, esse recurso
permite diminuir bastante os conflitos gerados por periféricos antigos.

PC Card (PCMCIA)


O padrão PCMCIA surgiu em 1990 como um padrão para a expansão de
memória em notebooks. A idéia era permitir a instalação de memória RAM
adicional sem precisar abrir o notebook e instalar novos módulos o que, na
maioria dos modelos da época, era bem mais complicado do que hoje em dia.

Em 1991 foi lançado o padrão 2.0, que previa a conexão de outros periféricos,
como modems, placas de rede, placas de som, adaptadores de cartões e
assim por diante. Ironicamente, o padrão PCMCIA foi rapidamente adotado
pelos principais fabricantes, tornando-se o barramento de expansão mais
usado nos notebooks, mas nunca chegou a ser realmente utilizado para
atualização de memória, como originalmente proposto. :)

A partir da versão 2.0, o padrão também mudou de nome, passando a se
chamar oficialmente "PC Card". Apesar disso, o nome "PCMCIA" acabou
pegando e, embora não seja mais o nome oficial do padrão, é usado por muita
gente. Tecnicamente, "PCMCIA" é o nome da associação de fabricantes,
enquanto "PC Card" é o nome do barramento, mas, na prática, os dois acabam
sendo usados como sinônimos.

Existem duas versões do barramento PC Card. O padrão original era baseado
em uma versão "modernizada" do barramento ISA, que operava a 10 MHz
(sem tempos de espera), transmitindo 16 bits por ciclo, resultando em um
barramento de 20 MB/s.

Em 1995 foi lançada uma versão atualizada, baseada no barramento PCI, que
continua em uso até os dias de hoje. O novo padrão preservou a
compatibilidade com as placas antigas, de forma que você pode continuar
utilizando modems e placas de rede PC Card antigas, mesmo em um notebook
atual. :)

Naturalmente, o oposto não é verdadeiro, de forma que as placas de 32 bits
não funcionam nos notebooks antigos, embora o encaixe seja o mesmo. É fácil
diferenciar os dois tipos, pois as placas de 32 bits possuem uma decoração
dourada no encaixe. Aqui temos duas placas de 16 bits (um modem e uma
placa wireless) e uma placa de rede de 32 bits no centro, que podemos
diferenciar pela presença do detalhe dourado:
                                                                           285
Placas PC Card de 16 bits e placa de 32 bits (no centro)

A maioria dos notebooks fabricados até 2002 possui dois slots PC Card, mas, a
partir daí, a grande maioria dos fabricantes passou a oferecer um único slot, de
forma a cortar custos. Como os notebooks passaram a vir "completos", com
rede, som, modem e placa wireless e cada vez mais periféricos passaram a
utilizar as portas USB, as placas PC Card se tornaram realmente um item
relativamente raro, dando uma certa razão aos fabricantes.

Uma curiosidade é que alguns notebooks, sobretudo alguns modelos da HP,
trazem dois encaixes PC Card, mas apenas um deles é utilizável. O slot
superior não possui os contatos e é parcialmente bloqueado, de forma que
você não pode utilizá-lo para instalar uma segunda placa.

O motivo do espaço reservado é preservar a compatibilidade com as placas PC
Card tipo 3, um padrão de placas com o dobro da espessura, que ocupam o
espaço de dois slots. Este padrão foi desenvolvido para permitir a criação de
HDs PC Card (com discos de 1.8") e outros periféricos maiores, que não
caibam dentro de uma placa tradicional, tipo 2. Existiu ainda um padrão de
placas mais finas (tipo 1), que foi desenvolvido para o uso dos cartões de
expansão de memória, mas que também nunca foi muito utilizado.

O PC Card é um barramento plug-and-play, de forma que você pode conectar e
desconectar as placas com o micro ligado. Elas são detectadas
automaticamente pelo sistema, da mesma forma que os periféricos USB. Ao
usar o Windows, você precisa apenas fornecer os drivers, como de praxe. No
caso do Linux os drivers para placas compatíveis são, em sua maioria,
incorporados diretamente ao Kernel.

Existem ainda adaptadores, que permitem instalar uma placa PC Card em um
slot PCI, permitindo sua instalação em um desktop. Durante uma certa época,
estes adaptadores foram usados por muitas placas wireless, já que, como a
                                                                            286
demanda por placas PCI era pequena, muitos fabricantes preferiam fabricar
apenas placas PC Card e transformá-las em placas PCI vendendo-as em
conjunto com o adaptador. Com a popularização e o barateamento das placas
wireless PCI, estes adaptadores saíram de moda:




                          Adaptador PC Card > PCI

Atualmente, os slots e as placas PC Card estão sendo lentamente substituídos
pelos Express Card, assim como as placas PCI estão sendo substituídas pelas
PCI Express. No caso dos notebooks, as mudanças tendem a ser mais rápidas,
de forma que os slots PC Card podem desaparecer dos modelos novos mais
rápido do que se espera.

AMR e CNR


A grande maioria dos chipsets atuais incluem interfaces de rede e áudio
onboard. Muitos incluem também um modem integrado. Ao contrário da placa
de rede, que trabalha utilizando sinais digitais, tanto a placa de som quanto o
modem utilizam saídas analógicas, o que significa que além dos controladores
são necessários os componentes necessários para a conversão
digital/analógico e analógico/digital.

Muitos fabricantes consideram mais simples separar os componentes
analógicos em uma placa externa, o que ajuda a eliminar problemas de
interferência e permite que eles sejam alterados ou mesmo removidos sem
precisar mexer no resto da placa.

Usar placas PCI ou PCI Express completas seria muito dispendioso, de forma
que acabaram sendo desenvolvidos os slots AMR (Audio Modem Raiser) e


                                                                           287
CNR (Communications and Networking Riser), que são barramentos mais
simples e baratos, designados especificamente para a tarefa.

Os slots AMR e CNR são encontrados principalmente nas placas da PC-Chips,
ECS e Phitronics, usados para o modem fornecido junto com a placa. A PC-
Chips é uma subsidiária da ECS e a Phitronics é a marca usada pelas placas
fabricadas no Brasil, de forma que as placas das três marcas são muito
semelhantes e compartilham os mesmos componentes básicos.

Como você pode ver, o "modem" CNR é bem simples, contendo apenas o
relay, alguns varistores e os dois chips (HSP e DAA) que fazem a interface com
a linha telefônica. Os modelos AMR são muito similares, mudando apenas a
pinagem do encaixe:




                              Modem e slot CNR

Embora menos comum, os modems AMR ou CNR podem ser encontrados
também em algumas placas de outros fabricantes que oferecem modem
onboard, como algumas placas da AsRock.

Também existem placas de som CNR, fornecidas junto com algumas placas
atuais. Normalmente, elas são usadas em placas que oferecem áudio de 6
canais e/ou saídas digitais, já que é difícil integrar todos os conectores e os
demais componentes necessários na própria placa-mãe. Estas placas
costumam ser bem mais complexas e, devido à similaridade do encaixe, são às
vezes confundidas com placas PCI Express:




                                                                           288
Placa de som CNR

Note que as placas AMR e CNR são atreladas à placa-mãe, já que são apenas
um complemento para os componentes integrados na placa. Não espere que o
modem ou a placa de som CNR fornecida com uma placa-mãe funcione em
outra. Coincidências acontecem, mas nem sempre. :)

Um outro padrão similar é o ACR. Ele é um padrão aberto, desenvolvido por
uma associação de fabricantes (incluindo a AMD, VIA, nVidia, Motorola e
outros), que oferecia a vantagem de permitir o uso de outros dispositivos, além
de placas de som e modems. O ACR utiliza o mesmo encaixe dos slots PCI,
mas ele é invertido e colocado numa posição diferente para evitar confusão.

O ACR foi utilizado em placas de diversos fabricantes, entre eles alguns
modelos da Asus, Leadtek, MSI e Chaintech, mas apenas durante um curto
espaço de tempo, entre o final de 2002 e início de 2003, desaparecendo em
seguida. Alguns dizem que o ACR é um padrão proprietário da Asus, mas essa
informação é incorreta. É bastante improvável que você venha a ter em mãos
uma placa com o ACR, de forma que o cito aqui apenas como curiosidade.




                             Slot ACR e slots PCI


                                                                           289
AGP


Embora seja mais recente que o PCI e tenha sido largamente utilizado, o AGP
é atualmente um barramento em vias de extinção, devido à popularização do
PCI-Express. Desde o final de 2006, placas novas com slots AGP são um item
raro, com exceção de algumas placas da PC-Chips, ECS e Phitronics.

A idéia central do AGP é ser um barramento rápido, feito sob medida para o
uso das placas 3D de alto desempenho. A versão original do AGP foi finalizada
em 1996, desenvolvida com base nas especificações do PCI 2.1. Ela operava a
66 MHz, permitindo uma taxa de transferência teórica de 266 MB/s.

Na época, as placas 3D ainda eram bastante primitivas, de forma que ainda
não existia uma demanda tão grande por um barramento mais rápido. Por
causa disso, o AGP demorou um pouco para se popularizar. O primeiro chipset
com suporte a ele foi o Intel i440LX, lançado no final de 1997, e a adoção
ocorreu de forma gradual durante 1998 e 1999.

O padrão AGP inicial não chegou a ser muito usado, pois em 1998 surgiu o
padrão AGP 2X, que mantém a freqüência de 66 MHz, mas introduz o uso de
duas transferências por ciclo (assim como nas memórias DDR), dobrando a
taxa de transferência.

Em seguida foi introduzido o AGP 4X e o 8X, que realizam, respectivamente, 4
e 8 transferências por ciclo, atingindo taxas de transferência teóricas de 1066 e
2133 MB/s.

O desempenho de uma placa 3D é fortemente atrelado à velocidade de acesso
à memória. Mais de 95% das informações que compõem uma cena 3D de um
game atual são texturas e efeitos, que são aplicados sobre os polígonos. As
texturas são imagens 2D, de resoluções variadas que são "moldadas" sobre
objetos, paredes e outros objetos 3D, de forma a criar um aspecto mais
parecido com uma cena real.

A velocidade do barramento AGP é importante quando o processador precisa
transferir grandes volumes de texturas e outros tipos de dados para a memória
da placa de vídeo, quando a memória da placa se esgota e ela precisa utilizar
parte da memória principal como complemento e também no caso de placas de
vídeo onboard, que não possuem memória dedicada e, justamente por isso,
precisam fazer todo o trabalho usando um trecho reservado da memória
principal.

Naturalmente, tudo isso também pode ser feito através do barramento PCI. O
problema é que a baixa velocidade faz com que a queda no desempenho seja
cada vez maior, conforme cresce o desempenho da placa de vídeo.

Durante muito tempo, fabricantes como a nVidia e a ATI continuaram
oferecendo suas placas também em versão PCI, mas a partir de um certo
ponto, a diferença de desempenho entre as duas versões passou a ser


                                                                             290
tamanha que, por mais que ainda existisse uma certa demanda, as placas PCI
foram sumariamente descontinuadas.

Outra vantagem do AGP é que o barramento é reservado unicamente à placa
de vídeo, enquanto os 133 MB/s do barramento PCI são compartilhados por
todas as placas PCI instaladas.

Note que existe uma diferença entre barramento e slot. Uma placa de vídeo
onboard é apenas um chip instalado na placa-mãe, ou mesmo um componente
integrado diretamente ao chipset e não uma "placa" propriamente dita. Mesmo
assim, ela pode ser ligada ao barramento AGP, utilizando uma conexão
interna. É muito comum ainda que a placa-mãe inclua um chipset de vídeo
onboard e, ao mesmo tempo, um slot AGP, que permite instalar uma placa
offboard. Neste caso, entretanto, a placa onboard é desativada ao instalar uma
placa offboard, já que o AGP não pode ser compartilhado pelas duas placas.

Assim como no caso do barramento PCI, a freqüência do barramento AGP está
atrelada à freqüência de operação da placa-mãe, de forma que, ao fazer
overclock aumentando a freqüência do FSB, a freqüência do barramento AGP
sobe na mesma proporção, o que, a partir de um certo ponto pode causar
problemas de estabilidade. Entretanto, aumentar a freqüência do AGP não tem
uma relação direta com o desempenho da placa de vídeo, pois as placas atuais
utilizam um circuito de clock próprio e por isso não são influenciadas por
mudanças na freqüência do barramento. Aumentando a freqüência do AGP,
melhoramos apenas o fluxo de dados entre a placa de vídeo, memória e
processador, o que tem pouco efeito nas placas atuais, com slots AGP 4X ou
8X.

Além da questão da velocidade, existe também a questão da tensão utilizada.
O padrão AGP 1.0 previa placas AGP 1X e 2X, que utilizam tensão de 3.3V. O
padrão AGP 2.0, finalizado em 1998, introduziu o AGP 4X e a tensão de 1.5V
(utilizada pelas placas atuais), quebrando a compatibilidade com o padrão
antigo.

Placas de vídeo que utilizam sinalização de 3.3V (como a nVidia TNT2, à
esquerda na foto a seguir) possuem o chanfro do encaixe posicionado ao lado
esquerdo, enquanto nas placas que utilizam 1.5V, ele é posicionado à direita.

A maioria das placas AGP fabricadas de 2003 em diante são "universais" e
podem ser utilizadas tanto nas placas-mãe antigas, com slots de 3.3V, quanto
nas placas com slots de 1.5V. Elas possuem os dois chanfros (como a ATI
Radeon, à direita na foto), o que permite que sejam encaixadas em qualquer
slot:




                                                                          291
Placa AGP de 3.3V e placa AGP universal

A mesma distinção existe no caso das placas-mãe. Placas antigas, que utilizam
slots de 3.3V possuem o chanfro à esquerda, enquanto as placas com slots de
1.5V utilizam o chanfro posicionado à direita, como nestes dois exemplos:




            Placa com slot AGP de 3.3V e placa com slot de 1.5V

Existem ainda placas com slots AGP universais, em que o slot não possui
chanfro algum e por isso permite a instalação de qualquer placa. Nesse caso a
placa-mãe é capaz de detectar a tensão utilizada pela placa e fornecer a
tensão adequada. Elas são mais raras, pois a necessidade de instalar tanto os
circuitos reguladores para 1.5V quanto para 3.3V, encarece a produção:




                                                                          292
Slot AGP universal

Existe ainda o padrão AGP 3.0, utilizado pelas placas AGP 8X (e parte das 4X),
que prevê o uso de sinalização de 0.8V. Nesse caso, entretanto, a transição foi
feita de forma transparente, sem que fosse quebrada a compatibilidade com as
placas antigas. Ao ser instalada em uma placa-mãe com slot AGP 2.0 (2X ou
4X, 1.5V) a placa de vídeo funcionará normalmente, utilizando sinalização de
1.5V e o modo de transferência mais rápido, entre os suportados pela placa-
mãe. Caso a placa de vídeo utilize um conector AGP universal, com os dois
chanfros, significa que ela pode (pelo menos em teoria), ser instalada mesmo
em uma placa-mãe antiga, com um slot de 3.3V.

Usei o termo "em teoria", pois existem muitos casos de incompatibilidades
entre placas de vídeo AGP de fabricação mais recente e placas-mãe antigas (e
vice-versa), mesmo em casos em que os encaixes são compatíveis.

Além dos problemas relacionados a deficiências nos drivers e incompatibilidade
por parte do BIOS, existem problemas relacionados à alimentação elétrica,
onde a placa de vídeo não indica corretamente qual é a tensão utilizada
(fazendo com que a placa-mãe utilize 1.5V para uma placa que trabalhe com
3.3V, por exemplo) ou que a placa-mãe não seja capaz de alimentar a placa de
vídeo com energia suficiente. Esse último caso é o mais comum, já que as
placas AGP mais recentes consomem muito mais energia que as antigas.

O padrão AGP 3.0 inclui como pré-requisito que a placa-mãe seja capaz de
fornecer 41 watts de energia para a placa de vídeo. O padrão AGP 2.0 fala em
25 watts, enquanto muitas placas antigas fornecem ainda menos. Com a
corrida armamentista, entre a nVidia e a ATI, o clock e, conseqüentemente o
consumo elétrico das placas de vídeo cresceu de forma exponencial. Já se foi
o tempo em que a placa de vídeo utilizava um simples dissipador passivo e
consumia menos de 10 watts. Muitas das placas atuais superam a marca dos

                                                                           293
100 watts de consumo e algumas chegam a ocupar o espaço equivalente a
dois slots da placa-mãe devido ao tamanho do cooler, como no caso desta ATI
X850 AGP:




Pensando nessas placas mais parrudas, foi criado o padrão AGP Pro, que
consiste no uso de 48 contatos adicionais, utilizados para reforçar o
fornecimento elétrico do slot. O padrão AGP Pro50 prevê o fornecimento de 50
watts, enquanto o AGP Pro110 eleva a marca para 110 watts.




                                Slot AGP Pro

Graças aos pinos adicionais os slots AGP Pro são bem maiores que um slot
AGP tradicional. As placas de vídeo AGP Pro também são incompatíveis com
os slots AGP tradicionais (justamente devido à diferença no fornecimento
elétrico) e o uso de slots AGP Pro encarece o custo das placas-mãe, já que os
fabricantes precisam adicionar trilhas e reguladores de tensão adicionais.

Devido à combinação desses fatores, o padrão AGP Pro nunca chegou a se
popularizar. Os fabricantes de placas de vídeo hesitavam em adotar o novo
padrão enquanto não houvesse um volume significativo de placas-mãe
compatíveis no mercado, enquanto os fabricantes de placas-mãe resolveram


                                                                         294
esperar até que existisse um volume significativo de placas de vídeo AGP Pro.
Ou seja, o tradicional problema do ovo e da galinha.

Com o impasse, os fabricantes de placas de vídeo decidiram adotar uma
solução mais simples, onde os reguladores de tensão necessários são
incluídos na placa de vídeo e ela passa a obter a energia adicional diretamente
da fonte de alimentação, através de um conector molex padrão, do mesmo tipo
utilizado pelo HD.




                     Conector de força auxiliar (à direita)

Com o advento das placas PCI Express, foi desenvolvido inclusive um novo
conector de energia específico para a placa de vídeo, com 6 pinos. A
capacidade de fornecimento do slot (no PCI Express) também foi ampliada, o
que faz com que um número menor de placas de vídeo precisem do conector
de energia externo. Um slot PCI Express 16X pode fornecer até 70 watts,
quase 75% mais que um slot AGP 8X.

Como é caro incluir simultaneamente o barramento PCI Express e o AGP na
mesma placa-mãe, os slots AGP desapareceram das placas novas assim que
o PCI Express se tornou popular. A principal exceção ficou por parte da
ECS/PC-Chips, que encontrou uma forma "criativa" de incluir um conector AGP
em placas com slot PCI-Express, criando o AGP Express (ou AGPro), que
aparece na foto da estranha placa que combina o slot AGP com um PCI
Express que usei a pouco. :)

O AGP surgiu como uma evolução do PCI. Apesar do aumento na freqüência,
ele mantém a mesma sinalização básica, de forma que, apesar da grande
diferença de velocidade, os dois barramentos são semelhantes. O slot AGP
Express nada mais é do que um slot AGP conectado ao barramento PCI, que
combina a alimentação elétrica de dois slots PCI (e os reguladores de tensão
apropriados) para fornecer a quantidade necessária de eletricidade à placa
AGP.

Naturalmente, esta solução implica em uma grande perda de performance, já
que a placa de vídeo passa a dispor dos reles 133 MB/s (compartilhados)
oferecidos pelo barramento PCI, em vez dos 2133 MB/s do AGP 8X, tendo seu

                                                                           295
desempenho drasticamente reduzido. Além disso, essa quase gambiarra cria
problemas de compatibilidade com diversas placas AGP, fazendo que muitas
combinações simplesmente não funcionem e os problemas de instabilidade
sejam comuns.

Outra solução híbrida é o AGI, que pode ser encontrado em algumas placas da
ASRock, como a 939Dual-SATA2. No AGI é utilizado um bridge, ou seja, um
chip conversor de sinais para ligar um slot AGP ao barramento PCI-Express.
Essa solução também está longe de ser 100% compatível, mas garante um
desempenho muito próximo do obtido ao usar um slot AGP 8X "de verdade".

Concluindo, existiu também o "Ultra-AGPII", uma solução desenvolvida pela
SiS para uso de placas de vídeo onboard. No Ultra-AGPII, temos um
barramento interno de 3.2 GB/s, interligando o chipset de vídeo e a memória
principal. Como disse, o desempenho dos chipsets de vídeo onboard é
pesadamente limitado pela velocidade de acesso à memória, de forma que
ampliá-lo resulta sempre em algum ganho de desempenho. No caso da SiS,
entretanto, o próprio chipset gráfico onboard era muito fraco, de forma que a
melhora no barramento não chegou a fazer uma diferença tão grande assim.

O Ultra-AGPII pode ser encontrado apenas em placas com chipset SiS e é
exclusivo para o uso do vídeo onboard. Ao utilizar uma placa AGP offboard, a
comunicação passa a ser feita através do barramento AGP 8X tradicional.




                                                                         296
PCI Express


Ao longo da história da plataforma PC, tivemos uma longa lista de barramentos,
começando com o ISA de 8 bits, usado nos primeiros PCs, passando pelo ISA de 16
bits, MCA, EISA, e VLB, até finalmente chegar no barramento PCI, que sobrevive até
os dias de hoje.

O PCI é um barramento de 32 bits, que opera a 33 MHz, resultando em uma banda total
de 133 MB/s, compartilhada entre todos os periféricos ligados a ele. O PCI trouxe
recursos inovadores (para a época), como o suporte a plug-and-play e bus mastering.
Comparado com os barramentos antigos, o PCI é bastante rápido. O problema é que ele
surgiu no começo da era Pentium, quando os processadores ainda trabalhavam a 100
MHz. Hoje em dia temos processadores na casa dos 3 GHz e ele continua sendo usado,
com poucas melhorias.

Por ser compartilhado entre todos os dispositivos ligados a ele, o barramento PCI pode
ser rapidamente saturado, com alguns dispositivos rápidos disputando toda a banda
disponível. O barramento se torna então um gargalo, que limita o desempenho global do
PC.

A fase mais negra da história do barramento PCI foi durante a época das placas soquete
7 (processadores Pentium, Pentium MMX, K6 e 6x86), quando o barramento PCI era o
responsável por praticamente toda a comunicação entre os componentes do micro,
incluindo todos os periféricos, a comunicação entre a ponte norte e ponte sul do chipset,
as interfaces IDE, etc. Até mesmo o antigo barramento ISA era ligado ao PCI através do
PCI-to-ISA bridge (ponte PCI-ISA), um controlador usado nos chipsets da época.

Isso fazia com que o barramento ficasse incrivelmente saturado, limitando severamente
o desempenho do micro. Eram comuns situações onde o desempenho do HD era
limitado ao rodar games 3D, pois a placa de vídeo saturava o barramento, não deixando
espaço suficiente para os demais componentes.

A história começou a mudar com o aparecimento do barramento AGP. Ele desafogou o
PCI, permitindo que a placa de vídeo tivesse seu próprio barramento rápido de
comunicação com o chipset. O AGP matou dois coelhos com uma cajadada só, pois
permitiu o aparecimento de placas 3D absurdamente mais rápidas e desafogou a
comunicação entre os demais componentes. Rapidamente todas as placas de vídeo
passaram a utilizá-lo, com os fabricantes oferecendo versões PCI apenas dos modelos
mais simples.

O passo seguinte foi a criação de barramentos dedicados pra a comunicação entre os
diversos componentes do chipset (como o DMI, usado em chipsets Intel, e o
HyperTransport), fazendo com que as interfaces IDE ou SATA e outros componentes
também ganhassem seu canal exclusivo. O PCI passou então a ser exclusividade das
próprias placas PCI.



                                                                                     297
O problema é que, mesmo desafogado, o PCI é muito lento para diversas aplicações. É
lento demais para ser utilizado por placas de rede Gigabit Ethernet (embora seja
suficiente na teoria, na prática a história é um pouco diferente, devido ao
compartilhamento da banda), por placas SCSI modernas, ou mesmo por placas RAID e
controladoras eSATA. Além disso, os slots PCI utilizam um número muito grande de
trilhas na placa-mãe, o que é dispendioso para os fabricantes.

Existiram tentativas de atualização do PCI, como o PCI de 64 bits, o PCI de 66 MHz e o
PCI-X, que além de ser um barramento de 64 bits, trabalha a 133 MHz, resultando num
barramento de 1024 MB/s. Em termos de velocidade, o PCI-X supriria as necessidades
dos periféricos atuais, o problema é que, devido ao grande número de contatos e ao
tamanho físico dos slots, ele acaba sendo um barramento muito dispendioso e imprático,
que ficou relegado aos servidores topo de linha. Aqui temos três slots PCI-X, ao lado de
slots PCI "normais" numa workstation da HP:




                  Slots PCI-X, em comparação com slots PCI comuns

O PCI Express, ou PCIe, é um barramento serial, que conserva pouco em comum com
os barramentos anteriores. Graças a isso, ele acabou se tornando o sucessor não apenas
do PCI, mas também do AGP.


                                                                                    298
Como o PCI Express funciona


Uma das características fundamentais do PCI Express é que ele é um
barramento ponto a ponto, onde cada periférico possui um canal exclusivo de
comunicação com o chipset. No PCI tradicional, o barramento é compartilhado
por todos os periféricos ligados a ele, o que pode criar gargalos, como no caso
das placas soquete 7.

Alguns puristas argumentam que o PCI Express não é um barramento no
sentido estrito da palavra, já que o termo "barramento" surgiu para descrever
um canal de comunicação compartilhado por vários dispositivos ou periféricos.
Mas, sou da opinião de que esse tipo de preciosismo deve ser evitado. Os
termos técnicos evoluem e são adaptados, assim como a tecnologia. Em toda a
documentação é usado o termo "PCI Express bus", referindo-se ao PCI
Express (e também ao USB, Firewire e outros) como "bus", ou seja,
"barramento". A designação já foi adotada oficialmente.

O PCI Express é também um barramento serial e não um barramento paralelo,
como o PCI. Antigamente, os circuitos eletrônicos eram muito lentos, por isso a
solução para criar barramentos mais rápidos era adicionar mais trilhas e
transmitir vários bits de cada vez. Exemplos de barramentos paralelos são as
portas paralelas, usadas pelas impressoras antigas, as portas IDE e também o
próprio barramento PCI.

Com o avanço da tecnologia, os projetistas começaram a encontrar
dificuldades em criar barramentos paralelos mais rápidos, pois o grande
número de trilhas operando a altas freqüências criava ruído eletromagnético e
problemas de sincronismo. A solução foi passar a investir em barramentos
seriais, onde são usados apenas um ou dois pares de trilhas.

Com menos trilhas, o problema do ruído e interferência é eliminado e os dados
podem ser transmitidos na freqüência permitida pelos circuitos, sem problemas
de sincronismo. Atualmente, acaba fazendo mais sentido usar um circuito
controlador muito rápido, transmitindo um bit por vez, do que tentar criar um
barramento complicado, que transmite 16 ou 32 bits por ciclo.

Enquanto os fabricantes enfrentaram dificuldades para manter o sincronismo
dos sinais do PCI-X a apenas 133 MHz, os transmissores do barramento PCI
Express podem operar a 2.5 GHz sem maiores problemas.

Exemplos de barramentos seriais, são o USB, o Serial ATA e o PCI Express. A
diferença de desempenho entre estes "barramentos de nova geração" em
relação aos barramentos antigos é brutal: uma porta paralela operando em
modo EPP transmite a apenas 8 megabits por segundo, enquanto uma porta
USB 2.0 atinge 480 megabits. Uma porta IDE ATA133 transmite a 133 MB/s,
enquanto o SATA 600 atinge 600 MB/s. O PCI oferece apenas 133 MB/s,
compartilhados por todos os dispositivos, enquanto um slot PCI Express 16x
atinge incríveis 4 GB/s.

                                                                           299
Existem 4 tipos de slots PCI Express, que vão do 1x ao 16x. O número indica
quantas linhas de dados são utilizadas pelo slot e, conseqüentemente, a banda
disponível. Cada linha PCI Express utiliza 4 pinos de dados (dois para enviar e
dois para receber), que são capazes de transmitir a 250 MB/s em ambas as
direções. Por causa dessa característica, é comum que os fabricantes
divulguem que o PCI Express transmite a 500 MB/s, o que é irreal, já que isso
só ocorreria em situações em que grandes quantidades de dados precisassem
ser transmitidos simultaneamente em ambas as direções.

Temos então 250 MB/s de banda nos slots 1x, 1 GB/s nos slots 4x, 2 GB/s nos
slots 8x e incríveis 4 GB/s nos slots 16x. O padrão original também previa o
uso de slots 2x, mas eles nunca chegaram a ser implementados. Na prática, os
slots 8x também são muito raros, de forma que você verá apenas slots 1x, 4x e
16x nas placas atuais.




O PCI Express utiliza um sistema de codificação chamado 8b/10b, onde são
incluídos dois bits adicionais para cada byte de dados transmitidos. Estes bits
adicionais permitiram eliminar a necessidade do uso de pinos adicionais para
enviar o sinal de sincronismo, o que simplificou bastante o design e melhorou a
confiabilidade. É por causa dessa característica que os 2.5 gigabits
transmitidos pelos transmissores equivalem a apenas 250 MB/s de dados.

Dentro do chipset


Normalmente, temos um grande número de linhas PCI Express disponíveis na
ponte norte do chipset, onde são tipicamente ligados um, ou dois slots 16x, e
mais algumas linhas na ponte sul, onde são ligados os slots mais lentos, 1x e
4x.

Este esquema mostra a comunicação entre componentes em uma placa-mãe
baseada no chipset D975X, da Intel:




                                                                           300
Nos chipsets Intel, a ponte norte é chamada de "MCH" (memory controller hub)
e a ponte sul de "ICH" (I/O controller hub). O MCH inclui o controlador de
acesso à memória, o vídeo onboard e 16 linhas PCI Express, que podem ser
usadas para criar um único slot 16x ou (no caso das placas que suportam duas
placas de vídeo em SLI) dois slots 8x.

Ligando o MCH ao ICH, temos um barramento rápido, chamado DMI (direct
media interface), que oferece um barramento de 2 GB/s (nos chipsets para
processadores AMD, o DMI é substituído pelo barramento HyperTransport). O
ICH inclui todos os demais componentes, incluindo as portas USB, os
controladores de áudio, portas SATA, slots PCI e mais 6 linhas PCI Express,
que permitem adicionar qualquer combinação de slots 1x e 4x. Note que uma
das linhas é utilizada pelo chipset de rede onboard, quando presente.

Nas placas para processadores AMD de 64 bits, a configuração é um pouco
diferente, já que o controlador de memória é incluído diretamente no
processador e é usado um barramento HyperTransport para interligar o
processador, a ponte norte e a ponte sul do chipset, mas a disposição dos
demais componentes é similar.




                                                                         301
As linhas de dados e os periféricos


Uma das principais características do PCI Express é que existe uma grande
flexibilidade com relação ao uso das linhas de dados. Como vimos, cada linha
fornece uma banda de 250 MB/s (em cada direção) e é possível combinar até
16 linhas num único slot. Também existe a possibilidade de criar slots
"capados", onde temos um slot 16x com apenas 8 linhas de dados, ou um slot
4x, com apenas uma linha, por exemplo. Como nestes casos muda apenas o
uso das linhas de dados, e não as conexões elétricas, os slots continuam
sendo perfeitamente compatíveis com todo tipo de placas; apenas o canal de
dados passa a ser mais lento.

O chipset também é capaz de alocar as linhas disponíveis de acordo com o
uso. Por exemplo, em um chipset com apenas 16 linhas disponíveis, os dois
slots 16x da placa-mãe passam a trabalhar com apenas 8 linhas de dados cada
um ao usar duas placas 3D em SLI. Entretanto, ao usar apenas uma placa 3D,
na mesma placa-mãe, o único slot usado fica com todas as 16 linhas, e passa
a trabalhar como um slot 16x "real".

Os slots são também compatíveis com placas dos padrões mais lentos. É
possível instalar placas PCI Express 1x, 4x ou 8x em slots 16x e também
placas 1x em slots 4x, embora, naturalmente, o inverso não seja possível.

Graças a toda essa flexibilidade, temos alguns casos interessantes, como o
desta Intel D975BX da foto a seguir. Ela possui três slots PCI Express 16x (um
deles com 16 linhas de dados e o outro com apenas 8 linhas), dois slots PCI
legacy e nenhum slot PCIe 1x ou 4x:




                                                                          302
Embora não suporte o uso de duas placas nVidia em SLI (recurso suportado
apenas nas placas com chipset nVidia), os dois slots 16x podem ser usados
para instalar duas placas ATI em modo cross-fire, enquanto o terceiro slot
permite a instalação de qualquer tipo de placa PCI Express (1x, 4x, 8x ou 16x).
Apesar de ser eletricamente um slot 16x, este terceiro slot possui apenas 4
linhas de dados.

O número de linhas disponíveis varia de acordo com o chipset. O nVidia nForce
590, por exemplo, possui um total de 48 linhas, permitindo o uso de dois slots
16x (ambos operando com 16 linhas cada, sem compartilhamento), um terceiro
slot 16x, com 8 linhas de dados e mais 8 linhas avulsas, para o uso de slots 1x,
4x ou periféricos onboard.

Você pode perguntar qual é a necessidade de ter dois slots 16x "reais", se a
maioria das placas 3D não é capaz de saturar sequer um slot com 8 linhas.
Bem, a verdade é que, com o desenvolvimento insano das placas 3D, existe
uma combinação que é capaz, sim, de utilizar dois slots 16x em sua plenitude.
Ela responde pelo nome de quad-SLI.

Temos aqui duas placas GeForce 7950GX2, ligadas em SLI. Cada uma destas
placas é composta por uma combinação de duas placas, que compartilham o
mesmo slot PCI Express 16x. Temos então um total de 4 placas, instaladas em
dois slots, onde, na verdade, cada uma dispõe de apenas 8 linhas. Se
tivéssemos 2 slots 16x "capados", cada um com 8 linhas, teríamos apenas 4
linhas para cada placa, o que limitaria seu desempenho.




                Quad-SLI, com duas placas GeForce 7950GX2

Esta é uma controladora com duas portas eSATA (que permite a conexão de
HDs SATA externos), que utiliza um slot 1x. Este é o tipo de placa de expansão
que não poderia utilizar um slot PCI sem ter seu desempenho limitado, já que
cada uma das portas eSATA transmite a 150 ou 300 MB/s, de acordo com o
padrão usado:


                                                                            303
Aqui temos uma placa de captura, também utilizando um slot 1x:




Naturalmente, o PCI Express não vai substituir o PCI do dia para a noite. Vale
lembrar que, embora completamente obsoleto, o ISA ainda era encontrado em
placas novas até o final de 2003! Embora os fabricantes tenham realmente a
intenção de substituir o PCI o mais rápido possível, eliminando mais uma carga
de legado que encarece os equipamentos, é certo que o PCI e o PCI Express
ainda conviverão por vários anos.

O mesmo não se pode dizer do AGP, que por ser dispendioso e ter sido
completamente subjugado pelos slots PCI Express 16x, já caiu em desuso,
sobrevivendo apenas na forma dos slots AGP Express, encontrados nas placas
híbridas da ECS, PC-Chips e no AGI, usado em algumas AsRock.


                                                                          304
Express Mini e ExpressCard


Existem ainda dois padrões de barramentos PCI Express destinados a
notebooks: o Express Mini e o ExpressCard, que substituem, respectivamente,
as placas mini-PCI e as placas PC Card.

O mini-PCI é uma espécie de slot PCI miniaturizado, muito usado em
notebooks para a instalação da placa wireless (embora, em tese, possa ser
usado para a conexão de qualquer dispositivo). O Express Mini é justamente
uma adaptação do PCI Express para cumprir a mesma função, que oferece um
desempenho melhor. Aqui temos uma placa wireless no formato Express Mini,
instalada em um notebook HP:




                       Placa Express Mini (à direita)

Embora pouco usado na prática, o padrão também prevê a criação de slots
Express Mini ligados no barramento USB (ao invés do barramento PCI
Express). Isso permite que os fabricantes adaptem placas wireless e outros
periféricos USB para uso interno, em notebooks. Para quem usa, não muda
muita coisa, com exceção dos drivers usados.

Um pequeno bônus (para os fabricantes) é que as dimensões reduzidas das
placas tornam possível a instalação de duas placas Express Mini em
aproximadamente o mesmo espaço ocupado por uma única placa mini-PCI.

Em seguida temos o ExpressCard, que visa substituir o barramento PC Card.
Embora o encaixe usado seja o mesmo, o padrão prevê dois formatos de
placas de expansão, com 34 e com 54 mm de comprimento (destinado a


                                                                        305
placas mais complexas). Ambos os formatos são menores que uma placa PC
Card:




             Placa PC Card (à esquerda) e placas ExpressCard

A migração para o Express Mini já está acontecendo. Praticamente todos os
notebooks anunciados em 2007 já o utilizam. O ExpressCard, por outro lado,
ainda está patinando, pois os notebooks atuais possuem um único slot PC
Card e os fabricantes relutam em substituí-lo diretamente por um slot
ExpressCard, jogando fora a compatibilidade com todas as placas PC Card
disponíveis. De qualquer forma, as placas Express Card já estão se tornando
comuns, de forma que a substituição em larga escala ocorrerá mais cedo ou
mais tarde.

Temos aqui uma placa Gigabit Ethernet Express Card:




                                                                        306
Vale lembrar que o padrão PC Card atual (CardBus) já é uma evolução do
padrão original, que era usado nos notebooks antigos. O primeiro padrão era
ligado ao barramento ISA (e por isso era bastante lento, permitindo apenas a
conexão de modems, placas de som e placas de rede Ethernet 10/10) e
utilizava tensão de 5V, enquanto o padrão atual é ligado no barramento PCI e
utiliza tensão de 3.3V. Os slots de 32 bits são compatíveis com as placas
antigas, mas o inverso não é verdadeiro.

Usar slots ExpressCard no lugar dos slots PC Card representa uma pequena
economia para os fabricantes, pois elimina a necessidade de incluir um
controlador CardBus no chipset. Os slots ExpressCard são ligados diretamente
a uma das linhas PCI Express disponíveis, sem intermediários.

Eventualmente devem surgir no mercado adaptadores externos para ligar
placas PCMCIA em slots Express Card e, possivelmente, também baias com
slots ExpressCard para uso em desktops, permitindo que os mesmos
periféricos sejam compartilhados entre o desktop e o notebook, assim como
existem adaptadores PC Card > PCI. Entretanto, essas placas adaptadoras
nunca foram populares, já que sai quase sempre mais barato comprar
diretamente versões PCI ou PCI Express dos periféricos, ao invés de comprar
uma placa para notebook, mais o adaptador. Até o momento, nada me faz
acreditar que com o ExpressCard possa ser diferente.

Uma aplicação "revolucionária" para os ExpressCard, divulgada pela Asus, é o
XG Station, que permite conectar uma placa 3D PCI Express ao slot Express
Card do notebook.

O desempenho do vídeo sempre foi um problema em notebooks, já que as
placas 3D mais rápidas são volumosas, consomem muita energia e geram
muito calor, tornando seu uso impraticável em notebooks. As versões "mobile"
são mais lentas e na maioria dos casos usam memória compartilhada, fazendo
com que os gamers fiquem amarrados a seus desktops.

A idéia do XG Station é mudar esse cenário, permitindo que você conecte
qualquer placa ao seu notebook, usando também um monitor externo.
Naturalmente, essa solução não faz sentido do ponto de vista do custo (se
comparado a usar um desktop), mas pode agradar a quem usa o notebook
para trabalho e quer ter um desempenho 3D melhor ao usá-lo em casa para
jogar.




                                                                         307
Asus XG Station

A principal limitação é que o slot ExpressCard utiliza apenas uma linha PCI
Express (250 MB/s), o que é pouco menos que a banda oferecida por um slot
AGP 1x. Esta pesada limitação com relação ao barramento de comunicação
penaliza o desempenho da placa, fazendo com que fique abaixo do que seria
obtido ao utilizá-la num desktop. Apesar disso, o desempenho ainda é bem
superior ao da maioria das soluções mobile.

PCI Express 2.0


Embora tenha se tornado popular apenas em 2006, o PCI Express existe
desde 2002. Neste meio tempo, já foi desenvolvida uma atualização para o
padrão, o PCI Express 2.0, finalizado em janeiro de 2007.

A boa notícia é que o PCI Express 2.0 é completamente compatível com o
padrão antigo, apenas mais rápido. Ele dobra a velocidade do PCI Express,
oferecendo 500 MB/s por linha, em cada direção. Isto significa que um slot 16x

                                                                           308
passa a oferecer incríveis 8 GB/s, o que seria equivalente a um hipotético AGP
32x.

Placas PCI Express 1.0 poderão ser usadas diretamente em slots PCIe 2.0 e
mesmo placas 2.0 funcionarão em slots 1.0, embora com uma possível
redução de desempenho devido ao barramento mais lento.

A princípio, o ganho de desempenho é apenas incremental, já que as placas de
vídeo atuais são bem atendidas pelos slots 16x e a maioria dos demais
periféricos trabalha com folga em um simples slot 1x. Entretanto, a introdução
do PCIe 2.0 pavimenta o caminho para periféricos futuros e também oferece
alguns ganhos incrementais mesmo no presente. Por exemplo, lembra-se do
XG Station da Asus? Ligado a um slot ExpressCard 2.0, ele disporia do dobro
da banda, o que reduziria a perda de desempenho da placa 3D. Outra questão
é que com o PCIe 2.0, os fabricantes poderão produzir chipsets usando menos
linhas PCIe (já que cada linha terá o dobro da banda), o que pode reduzir o
custo das placas-mãe.

O primeiro chipset a oferecer suporte ao PCI Express 2.0 é o Intel X38, um
chipset de alto desempenho, destinado a placas soquete 775, sucessor do
975X.

USB


O USB é um velho conhecido. Simplesmente o barramento externo mais usado
atualmente. O que torna o USB tão popular é a sua flexibilidade; além de ser
usado para a conexão de todo o tipo de dispositivos, ele fornece uma pequena
quantidade de energia, permitindo que os conectores USB sejam usados
também por carregadores, luzes, ventiladores, aquecedores de xícaras de café,
etc. Se duvida, veja esses dois exemplos:




                                                                          309
No USB 1.x, as portas transmitem a apenas 12 megabits, o que é pouco para
HDs, pendrives, drives de CD, placas wireless e outros periféricos rápidos.
Mas, no USB 2.0, o padrão atual, a velocidade foi ampliada para 480 megabits
(ou 60 MB/s), suficiente para a maioria dos pendrives e HDs externos.

Existem quatro tipos de conectores USB, o USB tipo A, que é o mais comum,
usado por pendrives e topo tipo de dispositivo conectado ao PC, o USB tipo B,
que é o conector "quadrado" usado em impressoras e outros periféricos, além
do USB mini 5P e o USB mini 4P, dois formatos menores, que são utilizados
por câmeras, mp3players, palmtops e outros gadgets.




Os quatro tipos utilizam a mesma pinagem, o único diferencial é mesmo o
formato físico. Existem ainda alguns formatos de conectores proprietários,
geralmente versões levemente modificadas de um destes quatro formatos. Por
serem intercompatíveis, é relativamente fácil encontrar adaptadores diversos
para permitir encaixar cabos com conectores de formatos diferentes:




Existem ainda adaptadores USB para portas seriais, portas paralelas, rede
(com um conector RJ45) e até mesmo para saídas VGA, mas eles incluem
circuitos adicionais e dependem da instalação de drivers para funcionar.




                                                                         310
Adaptador de vídeo USB

O USB é um barramento serial, por isso os conectores possuem apenas 4
contatos, sendo dois para a transmissão dos dados (um para enviar, outro para
receber) e os outros dois para a transmissão de eletricidade.

Os dois pinos para a transmissão de dados são os dois mais centrais,
enquanto os para energia são os dois externos. Olhando um conector USB
com os contatos virados para baixo, o pino da direita é o positivo, enquanto o
da esquerda é o neutro. Dentro do cabo, o fio vermelho é o positivo, o preto é o
neutro, enquanto o verde e o branco são os usados para transmissão de
dados:




Essa simplicidade explica a existência de tantas bugigangas que podem ser
ligadas às portas USB. Você pode descartar os pinos de dados e usar a
eletricidade oferecida pelo conector para alimentar qualquer dispositivo que
consuma até 2.5 watts de energia (os 2.5 watts correspondem ao padrão
oficial, mas a maioria dos fabricantes de placas optam por oferecer valores
maiores para manter uma boa margem de tolerância). Pode ser desde um
carregador para celular, até um ventilador em miniatura.

O inverso também é possível, ou seja, um conector USB fêmea, ligado a uma
bateria, que sirva como fonte de energia para seu iPod, palmtop, ou outro

                                                                            311
dispositivo carregado através da porta USB. A maioria dos projetos envolve
usar uma fonte de energia qualquer, que forneça 5V ou mais, e um resistor
para reduzir a tensão ao valor apropriado. Você pode encontrar vários projetos
no:
http://home.speedfactory.net/tcashin/ipodbattery.htm

Este é o meu "carregador de emergência", que uso como carregador e bateria
externa para o meu Treo. Ele utiliza 4 pilhas recarregáveis como fonte de
energia e um diodo, que evita o refluxo, ou seja, evita que a bateria do Treo
acabe recarregando as pilhas quando elas é que ficam com pouca carga. As
pilhas recarregáveis trabalham com uma tensão nominal de 1.2v, mas quando
completamente carregadas, oferecem em torno de 1.4v, suficiente para
carregar dispositivos USB:




Com uma variedade tão grande de periféricos USB, as 4 portas traseiras da
placa-mãe acabam nunca sendo suficientes. Os fabricantes passaram então a
incorporar portas USB adicionais através de headers disponíveis na placa-mãe.
Os headers podem ser ligados às portas frontais do gabinete, ou a conectores
adicionais instalados na parte traseira.

O maior problema é que os conectores frontais do gabinete geralmente utilizam
conectores separados para cada um dos fios, de forma que você precisa se
orientar usando o diagrama no manual da placa para conectá-los corretamente.
O fio vermelho é o +5V, o preto é o GND, o verde é o USB+ (ou D+) e o branco
o USB- (ou D-):




                                                                          312
Ligar os pinos incorretamente pode causar um curto e danificar periféricos
USB, ou o próprio controlador da placa-mãe. Para evitar esse tipo de
catástrofe, a maioria das placas inclui circuitos que desligam a alimentação em
caso de problemas, de forma que a porta simplesmente não funciona até que
você conecte os fios na ordem correta. Mas, de qualquer forma, é melhor não
dar chance para o azar.

Temos ainda a possibilidade de usar hubs USB para conectar vários
dispositivos à mesma porta. Em teoria, cada porta USB permite a conexão de
até 127 dispositivos, de forma que você pode até mesmo ligar um hub USB no
outro. O maior problema é que tanto a banda, quanto a energia fornecida pela
porta são compartilhadas entre todos os periféricos ligados ao hub, de forma
que dispositivos de mais alto consumo, como mouses ópticos e HDs externos
(do tipo que usa a energia da porta USB, ao invés de uma fonte própria) podem
não funcionar, dependendo de quais outros dispositivos estejam ligados ao
hub.

A solução nesse caso é comprar um hub com fonte externa (também
chamados de powered hub). Eles possuem uma fonte própria de energia, por
isso não utilizam a energia fornecida pela porta e suportam a conexão de

                                                                           313
vários periféricos "gulosos" simultaneamente. Usar um powered hub também
reduz o stress sobre a fonte de alimentação e circuitos reguladores de tensão
da placa-mãe, além de oferecer um seguro contra queima de portas e outros
problemas derivados da conexão de dispositivos USB defeituosos (antes o
HUB do que a placa-mãe inteira).




                      Hub USB com alimentação própria

No USB, os 12 ou 480 megabits de banda não são compartilhados entre as
portas. Cada par de portas (ligadas a um controlador dedicado na placa mãe)
equivale a um barramento próprio, independente dos demais. O
compartilhamento ocorre apenas quando as duas portas dentro do par são
usadas simultaneamente, ou quando vários dispositivos são plugados na
mesma porta, através de um hub.

Algumas combinações podem ser um pouco problemáticas, já que temos tanto
dispositivos que transmitem grandes volumes de dados (um HD externo, por
exemplo) quanto dispositivos que transmitem um volume pequeno, mas
precisam de urgência, como o teclado e o mouse. Você não gostaria que o
mouse ficasse com as respostas lentas ao salvar um grande arquivo no HD
externo, por exemplo.

Prevendo isso, o USB suporta três modos de operação distintos, chamados de
Interrupt (interrupção), Bulk (grande volume) e Isochronous (isocrônico).

O modo de interrupção é um modo de alta prioridade, destinado a teclados,
mouses e outros dispositivos de entrada. O controlador reserva 10% da banda
disponível para eles, mantendo sempre um canal descongestionado.

O modo isocrônico é destinado a dispositivos que precisam transmitir dados via
streaming, como, por exemplo, caixas de som e headsets USB. Eles
                                                                           314
transmitem um volume relativamente pequeno de dados, mas também
precisam de uma certa prioridade.

Finalmente, temos as transferências em modo bulk, onde temos grandes
pacotes de dados, transmitidos com baixa prioridade (como no caso do HD
externo). Como os canais para os outros dois modos são reservados primeiro,
as grandes transferências podem ser feitas utilizando a banda disponível, sem
atrapalhar os outros dispositivos.

Essa política de uso de banda é similar à utilizada em redes, onde os dados
são transmitidos na forma de frames ou pacotes. Isso permite que dispositivos
USB 1.1 sejam conectados em portas USB 2.0 sem reduzir a velocidade para
outros dispositivos conectados na mesma porta. O controlador simplesmente
disponibiliza 12 megabits para o dispositivo USB 1.1 e continua
disponibilizando o restante da banda para os demais dispositivos.

Outra característica interessante do USB é a capacidade de enumerar e
reconhecer novos dispositivos, coisa que não existia na época das portas
seriais. Detectar um mouse ou um modem serial é um pesadelo para qualquer
programador. Não existe forma simples de saber o que está plugado na porta
serial, ou mesmo descobrir SE existe algum dispositivo lá. A única forma é
apelar para técnicas indiretas, enviando dados através da porta e tentando
deduzir quem está do outro lado a partir das respostas. É por isso que algumas
distribuições Linux antigas pediam que você movimentasse seu mouse serial
num certo ponto da instalação, para que ele pudesse ser detectado.

No USB as coisas funcionam de forma muito mais eficiente. O controlador
percebe quando um dispositivo é conectado e envia um pacote de controle,
que o dispositivo responde enviando uma série de informações, incluindo sua
classe, velocidade, fabricante, string de identificação e assim por diante.

Além de permitirem que o controlador reserve corretamente os recursos
usados pelo dispositivo, essas informações são enviadas ao sistema
operacional. Isso permite que o dispositivo seja ativado e o programa ou o
aviso correspondente seja mostrado na tela.

Veja o que aparece no log de uma distribuição Linux atual quando plugo meu
joystick USB:

      usb 1-3: new low speed USB device using ohci_hcd and address 3
      usb 1-3: configuration #1 chosen from 1 choice
      input: Logitech WingMan Precision USB as /class/input/input2
      input: USB HID v1.10 Joystick [Logitech WingMan Precision USB] on
      usb-0000:00:02.0-3

As informações permitem também programar ações para quando determinados
dispositivos são plugados no Linux, através do udev, o daemon responsável
por detectar mudanças no hardware e a conexão de novos dispositivos. É
possível executar automaticamente um script de backup quando o HD externo
é plugado, ou abrir um determinado game quando você pluga o joystick. O

                                                                          315
mais interessante é que as ações podem ser relacionadas com o código de
identificação do dispositivo (que é único), de forma que o backup seja feito
apenas ao plugar um HD específico, evitando que seus dados sejam copiados
por engano quando um amigo plugar um pendrive, por exemplo. Falar sobre as
regras do udev sai do escopo deste tópico, mas você pode aprender mais
sobre elas no meu livro Linux Ferramentas Técnicas 2ª edição, ou através dos
tutoriais disponíveis no Guia do Hardware.NET.

Firewire (IEEE 1394)



O Firewire surgiu em 1995 (pouco antes do USB), como um concorrente do
barramento SCSI. Inicialmente ele foi desenvolvido pela Apple e depois
submetido ao IEEE, quando passou a se chamar IEEE 1394. Embora seja mais
popularmente usado, o nome "Firewire" é uma marca registrada pelo Apple, por
isso você não vai encontrar referência a ele em produtos ou documentação de
outros fabricantes. Outro nome comercial para o padrão é o "i.Link", usado pela
Sony.

O Firewire é um barramento serial, muito similar ao USB em vários aspectos. A
versão inicial do Firewire já operava a 400 megabits (ou 50 MB/s), enquanto o
USB 1.1 operava a apenas 12 megabits. Apesar disso, o USB utilizava
transmissores e circuitos mais baratos e era livre de pagamento de royalties, o
que acabou fazendo com que ele se popularizasse rapidamente. Na época, a
indústria procurava um barramento de baixo custo para substituir as portas
seriais e paralelas e, como de praxe, acabou ganhando a solução mais barata.

Atualmente o Firewire enfrenta também a concorrência do eSATA, a versão
externa do SATA, que permite a conexão de HDs e drives ópticos externos, o
que o deixa em posição pouco confortável.

Assim como o USB, o Firewire é um barramento plug-and-play e suporta a
conexão de vários periféricos na mesma por porta, utilizando uma topologia
acíclica, onde um periférico é diretamente conectado ao outro e todos se
enxergam mutuamente, sem necessidade de uso de hubs ou centralizadores.
Você poderia, por exemplo, conectar um HD externo (com duas portas
Firewire) ao PC e conectar uma filmadora ao HD e o PC enxergaria ambos.
Veja um exemplo:




                                                                           316
O conector Firewire tradicional utiliza 6 pinos, sendo que 2 são usados para
alimentação elétrica (como no USB) e existe também uma versão miniaturizada
(sem os pinos de alimentação) que possui apenas 4 pinos e é muito comum em
notebooks. Uma porta Firewire de 6 pinos é capaz de fornecer até 45 watts de
energia, quase 10 vezes mais que no USB.




Inicialmente, o concorrente do Firewire não era o USB, mas sim o barramento
SCSI, que na época também era usado para a conexão de scanners e outros
dispositivos externos. Embora fosse um pouco mais lento (até 160 MB/s no
SCSI, contra 50 MB/s no Firewire), o Firewire era um barramento mais simples
e muito mais flexível, permitindo a conexão de todo tipo de dispositivos de
armazenamento, impressoras, scanners, dispositivos de áudio e vídeo e até
mesmo a comunicação direta entre PCs, funcionando como uma interface de
rede.

Apesar disso, com o surgimento do USB, o Firewire acabou restrito a alguns
nichos. O principal deles é a transferência de vídeos a partir de uma filmadora
digital. Desde o final da década de 1990 as câmeras migraram das fitas
analógicas para o padrão DV (digital video), onde o vídeo é gravado
diretamente em formato digital (numa fita mini-DV, HD ou mesmo memória
flash, como em alguns modelos recentes) e depois transferido para o micro
através de uma porta Firewire para que seja editado e finalizado.

                                                                           317
Embora seja um item de série nos Macs (as primeiras versões do iPod existiam
apenas em versão Firewire), poucos chipsets para PC possuem controladores
firewire integrados, fazendo com que os fabricantes de placas-mãe sejam
obrigados a utilizar um controlador avulso. Como isso encarece a placa, as
portas firewire são oferecidas apenas nos modelos mais caros, ou voltados
para o mercado gráfico. Naturalmente, existem também controladoras firewire
externas, na forma de placas PCI ou PCI Express, mas elas também
representam um custo adicional.

Com a popularização das filmadoras digitais, os fabricantes passaram a incluir
também portas USB nos aparelhos, eliminando o problema:




                 Filmadora digital com portas Firewire e USB

Atualmente estamos assistindo a uma lenta migração para o Firewire 800
(IEEE 1394B), um novo padrão, lançado em 2003, que dobra a taxa de
transmissão, atingindo 800 megabits e utiliza um novo conector, com 9 pinos.
Ele foi desenvolvido de forma que os cabos e periféricos antigos continuam
sendo inteiramente compatíveis (usando o cabo apropriado, com um conector
de 9 pinos em uma ponta e um de 6 ou 4 pinos na outra), embora não se
beneficiem do aumento na velocidade.




                                                                          318
Uma observação é que, devido a uma combinação de implementação e drivers,
o suporte a USB 2.0 nos Macs G5, PowerBook e outros da safra baseada em
chips PowerPC é deficiente, fazendo com que as transferências feitas através
das portas USB 2.0 acabem sendo mais lentas do que através das portas
Firewire 400. De qualquer forma, apesar da polêmica em torno do USB 2.0
versus Firewire 400, o Firewire 800 é indiscutivelmente mais rápido.

WUSB



O WUSB (Wireless USB) é uma versão sem fios do USB, que utiliza o sistema
UWB para a transmissão de dados a curtas distâncias, utilizando sinais de
baixa potência. Em teoria, o WUSB suporta taxas de transmissão de até 480
megabits a distâncias de até 3 metros e 110 megabits a até 10 metros.

Como o sinal utiliza uma potência muito baixa, o WUSB é adequado para
interligar aparelhos dentro do mesmo ambiente (a mesma sala ou escritório,
por exemplo), sem que existam obstáculos importantes entre eles.

O objetivo é que o WUSB seja uma opção ao uso do USB em todo tipo de
periféricos, incluindo mouses, joysticks, impressoras, scanners, câmeras
digitais, mp3players e até mesmo HDs externos.

As taxas de 480 e 110 megabits divulgadas são as taxas de transmissão
"brutas", que não incluem as perdas causadas pelo protocolo de transmissão,
correção de erros, atenuação do sinal e assim por diante. As taxas obtidas na
prática, sobretudo a distâncias maiores do que 3 ou 4 metros são muito
inferiores, de forma que, em termos de velocidade, o WUSB não se compara
diretamente ao USB 2.0.

Apesar disso ele ganha na questão da praticidade e "cool factor", já que
permite que você baixe as fotos da câmera, ou copie músicas para o
mp3player sem precisar primeiro conectá-los ao PC. Existe ainda a
possibilidade de ligar diretamente um dispositivo ao outro, permitindo que a
câmera imprima fotos na impressora, ou o mp3players toque músicas
armazenadas em um HD externo, por exemplo. Assim como no USB, é
possível interligar até 127 dispositivos.

Além de dispositivos com transmissores WUSB nativos, existem dois tipos de
adaptadores. O primeiro é um transmissor que permite que PCs sem
transmissores se comuniquem com dispositivos WUSB. Ele é parecido com um
pendrive ou adaptador bluetooth, que você pluga em uma porta USB disponível
e se chama WHA.

O segundo é uma espécie de "hub" (chamado de WDA), destinado a ligar
dispositivos USB ao PC com o transmissor. Você poderia ligar sua impressora
USB no WDA e assim acessá-la a partir do seu PC com um transmissor
WUSB.


                                                                          319
Existe ainda a possibilidade de juntar um WHA e um WDA, criando uma
espécie de hub USB sem fios. Até que as placas-mãe, notebooks e outros
dispositivos com transmissores WUSB tornem-se populares, essa é
provavelmente a única classe de produtos wireless USB que você verá à
venda. Um exemplo é o Belkin Cable-Free USB, um dos primeiros produtos da
nova safra:




Ele inclui um WDA com 4 portas e um WHA para ligar no PC. Uma vez
instalado, ele cria um link wireless com o hub, fazendo com que qualquer
dispositivo conectado nele fique acessível a partir do seu micro. Não é o tipo da
coisa que você mataria para ter, mas abre algumas possibilidades
interessantes. Você não precisa mais deixar a sua impressora e scanner USB
ao lado do micro, por exemplo, pode colocá-los em qualquer lugar do ambiente.

Este gráfico, fornecido pela Belkin, mostra o desempenho esperado para as
diferentes classes de dispositivos WUSB:




                                                                             320
No topo, estão os 480 megabits "brutos", que nunca são atingidos em
situações reais, devido a uma série de fatores. No segundo nível estão as
controladoras USB 2.0 cabeadas, que atingem taxas reais em torno de 270 a
320 megabits. O restante é perdido devido ao protocolo de sinalização usado,
que garante que os dados sejam transmitidos de forma confiável, mas em troca
fica com seu quinhão da taxa de transmissão. :)

Na terceira camada está o desempenho atingido pelos dispositivos WUSB em
condições ideais (curtas distâncias, sem obstáculos e sem interferências), onde
temos três possibilidades.

Ao conectar dois dispositivos com transmissores nativos, é possível atingir
taxas reais de até 200 megabits. Se a distância for maior que um ou dois
metros, a taxa de transmissão cai sensivelmente, mas se mantêm em um valor
razoável.

Ao conectar um PC com um adaptador (WHA) a um dispositivo com suporte
nativo, ou um PC com um transmissor nativo a um dispositivo ligado a um
WDA, a taxa cai para a faixa dos 80 a 120 megabits. Finalmente, ao usar
simultaneamente um WHA e um WDA (como no caso Belkin Cable-Free USB)
temos overhead dos dois lados e a taxa de transmissão cai mais ainda,
chegando à faixa dos 30 a 45 megabits.

Assim como no caso do Bluetooth, o WUSB utiliza um sistema de associação e
autenticação para garantir a segurança. Cada vez que instalar um novo
dispositivo, você precisará associá-lo a seu notebook ou desktop, para só
então poder usá-lo. Sem isso, qualquer um poderia acessar seus arquivos e
fotos enquanto estivesse em locais públicos, o que não seria muito desejável. :)


                                                                            321
Este screenshot, fornecido pelo USB-IF (a associação sem fins lucrativos
destinada a clarificar e divulgar o padrão) mostra como o sistema funciona na
parte de software. Um gerenciador gráfico, similar ao usado para gerenciar
redes Wi-Fi, mostra os dispositivos WUSB disponíveis e o nível de sinal de
cada um:




Ao contrário do que pode parecer à primeira vista, o WUSB não se destina a
concorrer com as redes wireless, já que ele só funciona a distâncias muito
curtas. Você poderia compartilhar a conexão com a web entre dois notebooks,
ou entre um PC e um palmtop usando o WUSB, mas não seria o tipo de
solução que você utilizaria na sua rede doméstica, por exemplo.

O concorrente mais direto seria o Bluetooth, que também é um padrão para
interligar dispositivos a curtas distâncias e cumpre muitas das funções a que o
WUSB se destina (ele permite transferir dados entre dispositivos e pode ser
usado por teclados e mouses, por exemplo). A vantagem do WUSB sobre o
padrão Bluetooth atual é que, além de brutalmente mais rápido, os
transmissores consomem menos energia. Com base nisto, é possível que o
WUSB substitua o Bluetooth em diversas aplicações. O maior problema é o
WUSB é um padrão muito novo, cuja adoção ainda está indefinida.

Para que ele se popularize, é necessário que o custo dos transmissores caia
para uma faixa igual ou inferior ao que os transmissores Bluetooth custam hoje
em dia, o que só acontece quando eles passam a ser produzidos em grande
quantidade. Existe ainda a questão da aceitação do público: será que um
volume suficiente de usuários aceitará pagar mais caro por dispositivos WUSB,
ou será que continuarão preferindo usar cabos?

Além da diferença de custo (um cabo USB será sempre mais barato que um
par de transmissores e os demais circuitos relacionados) o USB cabeado

                                                                           322
oferece a vantagem de fornecer energia, o que permite que diversos modelos
de mp3players e outros dispositivos sejam carregados através da porta USB,
sem falar nas gavetas para HDs de 2.5", que acionam o HD utilizando a própria
energia fornecida pela porta, sem precisar de fonte. Para eles, não faz sentido
migrar para o WUSB, já que ele não resolve o problema da alimentação
elétrica.

No caso do Bluetooth, tivemos uma demora de quase 8 anos entre o anúncio
do padrão (em 1998) e a sua popularização (que começou pra valer apenas em
2006). O padrão inicial do WUSB foi anunciado em maio de 2005, mas os
primeiros produtos chegaram ao mercado apenas a partir do final de 2006,
ainda custando US$ 200 ou mais e sendo produzidos em quantidades muito
limitadas.

Endereços de IRQ e DMA


Os endereços de IRQ são interrupções de hardware, canais que os dispositivos
podem utilizar para chamar a atenção do processador.

Na maioria das situações, o sistema operacional simplesmente chaveia entre
os aplicativos ativos, permitindo que ele utilize o processador durante um
determinado espaço de tempo e passe a bola para o seguinte. Como o
processador trabalha a uma freqüência de clock muito alta, o chaveamento é
feito de forma muito rápida, dando a impressão de que todos realmente estão
sendo executados ao mesmo tempo

No caso dos processadores dual-core, temos na realidade dois processadores,
de forma que dois threads podem ser processados simultaneamente, mas o
princípio continua o mesmo, já que em um PC típico temos um número sempre
muito maior de aplicativos ativos.

Muitas operações, entretanto, não podem esperar. O exemplo mais típico são
os caracteres digitados no teclado e os movimentos do mouse (que precisam
ser interpretados rapidamente pelo sistema, mesmo enquanto o PC está
executando tarefas pesadas), mas existem muitas outras operações que
precisam de atenção semelhante, incluindo as transferências de dados
recebidos através da placa de rede, operações de leitura e escrita nos HDs e
assim por diante.

A placa de rede, por exemplo, não pode ficar simplesmente esperando que
chegue a sua vez dentro do sistema multitarefa, pois isso retardaria a
transmissão dos pacotes, aumentando o ping e reduzindo a taxa de
transmissão da rede.

É neste ponto que entram os endereços de IRQ. Ao ser avisado através de
qualquer um desses canais, o processador imediatamente pára qualquer coisa
que esteja fazendo e dá atenção ao dispositivo, voltando ao trabalho logo
depois. Cada endereço é uma espécie de campainha, que pode ser tocada a
qualquer momento. Se não fossem pelos endereços de IRQ, o processador
não seria capaz de ler as teclas digitadas no teclado ou os clicks do mouse, a


                                                                           323
transmissão de dados através da rede pararia toda vez que você abrisse
qualquer programa e assim por diante.

Em PCs antigos, os endereços de IRQ não podiam ser compartilhados entre os
dispositivos, o que freqüentemente causava problemas, já que existem apenas
16 endereços de IRQ disponíveis. Sempre que os endereços de IRQ se
esgotavam (pela instalação de muitos periféricos) ou dois dispositivos eram
configurados para utilizar o mesmo endereço, tínhamos os famosos conflitos,
que faziam com que ambos os dispositivos deixassem de funcionar
corretamente.

Atualmente, os conflitos relacionados aos endereços de IRQ são muito raros,
pois as placas atuais suportam diversos sistemas de compartilhamento e
atribuição automática de endereços. No caso das placas PCI, por exemplo, o
controlador PCI passa a centralizar as requisições enviadas por todas as
placas instaladas, de forma que todas possam utilizar um único endereço. Isto
é possível porque as placas passam a enviar as requisições para o controlador
e apenas ele entra em contato direto com o processador.

De qualquer forma, é importante entender como o sistema funciona, de forma
que você possa solucionar conflitos que eventualmente apareçam, além de
aprender a se virar ao dar manutenção em PCs antigos.

Para variar, tudo começa com o PC original, aquele lançado em 1981. Ele tinha
apenas 8 endereços de IRQ, numerados de 0 a 7. Isso acontecia porque ele
ainda era baseado no processador 8088, que apesar de ser internamente um
processador de 16 bits, utilizava um barramento de apenas 8 bits para
comunicar-se com os periféricos. Com isto, tinha apenas 8 IRQs.

Os 8 endereços disponíveis ficavam geralmente configurados da seguinte
forma:

      IRQ 0 - Sinal de clock da placa-mãe
      IRQ 1 - Teclado
      IRQ 2 - Livre
      IRQ 3 - COM 2
      IRQ 4 - COM 1
      IRQ 5 - Disco Rígido
      IRQ 6 - Drive de disquetes
      IRQ 7 - Porta paralela

O número do endereço de IRQ indica também a sua prioridade, começando do
0 que é o que tem a prioridade mais alta. Não é à toa que o IRQ 0 é ocupado
pelo sinal de clock da placa-mãe, pois é ele quem sincroniza o trabalho de
todos os componentes, inclusive do processador.

Logo depois vem o teclado, que ocupa o IRQ 1. Veja que o teclado é o
dispositivo com um nível de prioridade mais alto, para evitar que as teclas
digitadas se percam. Isso pode parecer desnecessário, já que um processador
atual processa bilhões de operações por segundo e dificilmente alguém digita
mais do que 300 ou talvez 350 caracteres por minuto, mas, na época do XT, as
coisas não eram assim tão rápidas.
                                                                          324
Em seguida temos os demais periféricos, como as portas seriais e o drive de
disquetes. O IRQ 2 ficava livre para a instalação de um periférico qualquer. Na
verdade, na maioria das vezes o IRQ 5 também ficava livre, pois os HDs não
eram algo muito comum naquela época.

A partir do 286, houve uma evolução nesse esquema, pois finalmente os PCs
passaram a ter 16 endereços de IRQ, numerados de 0 a 15, como nos dias de
hoje. Como quase todas as evoluções na família PC, foi preciso manter
compatibilidade com o padrão anterior, para que as placas para XT pudessem
funcionar nos PCs 286 em diante.

Assim, resolveram manter o controlador de IRQs original para que tudo
continuasse funcionando da mesma maneira que antes e simplesmente
adicionar um segundo controlador para obter os 8 novos endereços. Este
segundo controlador passou a ser ligado no IRQ 2 que, como vimos,
costumava ficar livre. Todos os pedidos de interrupção dos periféricos ligados
aos endereços entre 8 e 15, controlados pelo segundo controlador, passam
primeiro pelo IRQ 2, para só depois chegar ao processador. Isto é chamado de
cascateamento de IRQs:




Dá para notar duas coisas neste esquema. Em primeiro lugar que o IRQ 2 não
pode mais ser utilizado por nenhum periférico. Caso fosse instalado um modem
ISA, por exemplo, configurado através dos jumpers para utilizar o IRQ 2, ele
seria remapeado para o IRQ 9. Ou seja, na prática, não temos 16 endereços de
IRQ, mas apenas 15.

Em segundo lugar, como o segundo controlador está ligado ao IRQ 2, todas as
placas que utilizarem os endereços de 8 a 15, terão prioridade sobre as que
usarem os IRQs de 3 a 7, pois, do ponto de vista do processador, estão ligadas
ao IRQ 2, que é por onde todos os pedidos chegam a ele. Este seria um
exemplo de configuração comum de endereços em um PC da era Pentium
baseado em uma placa-mãe soquete 7:

      IRQ 0 - Sinal de clock da placa-mãe (fixo)
      IRQ 1 - Teclado (fixo)
      IRQ 2 - Cascateador de IRQs (fixo)
      IRQ 3 - Porta serial 2
      IRQ 4 - Porta serial 1
      IRQ 5 - Livre
      IRQ 6 - Drive de disquetes

                                                                           325
IRQ 7 - Porta paralela (impressora)
      IRQ 8 - Relógio do CMOS (fixo)
      IRQ 9 - Placa de vídeo
      IRQ 10 - Livre
      IRQ 11 - Controlador USB
      IRQ 12 - Porta PS/2
      IRQ 13 - Coprocessador aritmético (fixo)
      IRQ 14 - IDE Primária
      IRQ 15 - IDE Secundária

Veja que com apenas a placa de vídeo e os dispositivos da placa-mãe, já
sobravam apenas dois endereços de IRQ disponíveis. Ao adicionar uma placa
de som e um modem, todos os endereços estariam ocupados, não dando mais
margem de expansão para uma placa de rede ou uma placa SCSI por
exemplo. A solução seria desabilitar dispositivos que não estivessem sendo
usados como, por exemplo, a segunda porta serial, a porta PS/2 e o
controlador USB (naquela época os dispositivos USB ainda eram novidade e as
portas raramente eram usadas). Mas, de qualquer forma, se você continuasse
instalando mais e mais periféricos, logo chegaria o ponto em que não teria mais
o que desabilitar.

Esse problema começou a tornar-se cada vez mais evidente, à medida que
mais e mais periféricos passaram a ser utilizados por padrão. Os únicos
periféricos "de fábrica" em um 286 eram o monitor e o teclado, todo o restante
era opcional. Em um PC atual temos um número muito maior de dispositivos, a
começar pelos componentes onboard.

Felizmente, pensaram nesse problema quando desenvolveram o barramento
PCI, incluindo o recurso de PCI Steering, que permite que dois ou mais
periféricos PCI compartilhem o mesmo endereço de IRQ. Nesse caso, o
controlador PCI passa a atuar como uma ponte entre os periféricos e o
processador. Ele recebe todos os pedidos de interrupção, os encaminha para o
processador e, ao receber as respostas, novamente os encaminha para os
dispositivos corretos. Como o controlador é o único diretamente conectado ao
processador é possível ocupar apenas um endereço de IRQ. Do lado do
software, o PCI Steering passou a ser suportado a partir do Windows 95
OSR/2, além de ser suportado (por parte do Kernel) praticamente desde as
primeiras versões do Linux.

Nem todos os dispositivos PCI suportam trabalhar dessa forma, mas a grande
maioria funciona sem problemas. No Windows, você pode verificar a
distribuição dos endereços dentro do Painel de Controle > Sistema > Hardware
> Gerenciador de Dispositivos. Na janela principal, clique no Exibir > Recursos
por tipo.

No screenshot a seguir, temos um PC antigo, rodando o Windows 2000, onde
as duas placas de rede e a placa de som estão compartilhando o IRQ 9:




                                                                           326
Além do barramento PCI, outros barramentos usados atualmente permitem
compartilhar um único IRQ entre vários periféricos.

O USB é um bom exemplo. O controlador ocupa um único IRQ, que é
compartilhado entre todas as portas USB e todos os dispositivos conectados a
elas. Mesmo que a placa-mãe tenha 6 portas USB e você utilize todas, terá
ocupado apenas um endereço.

Se você utilizasse apenas periféricos USB (mouse, impressora, scanner, etc.),
poderia desabilitar todas as portas de legado da placa-mãe (as duas portas
seriais, a porta paralela e a porta PS/2), o que liberaria 4 endereços de IRQ.

No caso de placas-mãe com duas interfaces IDE, cada uma ocupa dois
endereços (por padrão o 14 e o 15). Mas, caso você não pretenda usar a IDE
secundária, sempre existe a possibilidade de desabilitá-la no Setup. Todas
essas opções aparecem na sessão "Integrated Peripherals".

Com todas essas facilidades, ficava fácil ter um sistema com vários IRQs livres,
como no exemplo abaixo:

      IRQ 0 - Sinal de clock da placa-mãe (fixo)
      IRQ 1 - Teclado (fixo)
      IRQ 2 - Cascateador de IRQs (fixo)
      IRQ 3 - Livre (serial 2 desativada)
      IRQ 4 - Modem
      IRQ 5 - Livre
      IRQ 6 - Drive de disquetes
      IRQ 7 - Livre (porta paralela desativada)
      IRQ 8 - Relógio do CMOS (fixo)
      IRQ 9 - Placa de som, placa de rede (1), placa de rede (2)
      IRQ 10 - Placa de vídeo
      IRQ 11 - Controlador USB (Mouse, impressora e scanner)
      IRQ 12 - Livre (porta PS/2 desativada)
      IRQ 13 - Coprocessador aritmético
      IRQ 14 - IDE Primária
      IRQ 15 - Livre (IDE Secundária desativada)



                                                                            327
Ter 5 endereços de IRQ livres, mesmo utilizando todos estes dispositivos, não
soa nada mal. Na verdade, a escassez de endereços de IRQ é um problema
muito menor hoje em dia do que já foi no passado. Antigamente, era preciso
configurar manualmente o endereço a ser usado por cada placa e não havia
como compartilhar um IRQ entre dois periféricos como temos hoje. Um jumper
no lugar errado era o suficiente para o modem (ou a placa de som) entrar em
conflito com alguém e parar de funcionar.

Hoje em dia, todas as placas de expansão são PCI, PC Card, PCI Express ou
Express Card, o que naturalmente significa que são plug-and-play. Basta
espetá-las para que o BIOS atribua automaticamente um endereço. Desta
forma, você terá conflitos apenas caso realmente todos os IRQs estejam
ocupados.

Mas nem tudo está resolvido. Apesar dos conflitos ao se usar apenas placas
PCI ou PCI Express serem raríssimos, ainda estão em uso alguns PCs antigos
com placas ISA. É aí que as coisas podem complicar um pouco.

Existem dois tipos de placas ISA: as ISA Plug-and-Play e as placas de legado
(Legacy ISA). As primeiras, que começaram a aparecer ainda na época do 486,
têm seus endereços configurados automaticamente pelo BIOS, mas não são
capazes de compartilhar IRQs como as placas PCI.

O sistema de plug-and-play utilizado nelas funciona de forma limitada, de forma
que elas ainda podem entrar em conflito com periféricos PCI, mesmo que
existam alguns endereços livres. Nesse caso, você pode alterar manualmente
o endereço a ser usado pela placa ISA através do gerenciador de dispositivos
do Windows, basta clicar sobre o ícone do dispositivo, acessar as propriedades
e abrir a guia de recursos.

Já nas placas Legacy ISA, é preciso configurar os endereços de IRQ
manualmente, através de jumpers, ou então usando um software que
acompanha a placa (o que é muito comum em placas de rede ISA). Uma vez
configurada para usar um endereço, a placa irá entrar em conflito com qualquer
dispositivo que tente usá-lo. Para complicar, o BIOS não enxerga as placas de
legado, de forma que existe a possibilidade de que ele atribua o mesmo
endereço para algum dispositivo plug-and-play, gerando um conflito.

Para evitar esse problema, é preciso reservar manualmente os endereços de
IRQ e DMA ocupados por periféricos ISA de legado através da sessão
"PNP/PCI Setup" do CMOS Setup. É o tipo de coisa com a qual você não
precisa se preocupar em um PC atual (que não possuem sequer slots ISA),
mas que era uma necessidade a duas gerações atrás.

Caso o PC tivesse instalado um modem ISA, configurado para utilizar o IRQ 7,
por exemplo, você precisava marcá-lo com a opção "Legacy ISA" no Setup. Na
foto a seguir temos a sessão "PnP/PCI" do Setup de uma placa-mãe com BIOS
Award. Veja que cada endereço de IRQ pode ser configurado separadamente:




                                                                           328
A opção default é não reservar os endereços, deixando-os livres para o uso de
qualquer dispositivo PnP. Para reservar um endereço, basta alterar a opção.
Lembre-se de reservar apenas os endereços necessários, pois ao reservar um
endereço ele deixa de estar disponível para as placas plug-and-play.

Existe mais um ponto interessante sobre as placas ISA, que é o fato de
existirem tanto placas ISA de 8 bits quanto placas de 16 bits. É fácil diferenciá-
las, pois as placas de 8 bits utilizam apenas a primeira parte do encaixe. As
placas de 8 bits utilizam exatamente o mesmo barramento que era usado no
XT, o que significa que elas enxergam apenas os IRQs de 0 a 7. Esse é o caso
de muitos modems ISA, por exemplo.

Neste caso não existe muito segredo, caso todos os seus IRQs de 0 a 7 já
estejam ocupados, o jeito será mudar o endereço de um dos dispositivos,
dando lugar ao modem. Você pode simplesmente reservar no Setup o
endereço que esteja sendo usado por uma placa plug-and-play que esteja
instalada, assim da próxima vez que iniciar o micro, o BIOS se encarrega de
dar outro endereço para ela, deixando o modem em paz.

Em casos em que o BIOS não detecte um dispositivo recém-instalado ou em
que ele insista em assinar o mesmo endereço para duas placas que não
suportam o PCI Steering, causando um conflito, existe a opção de limpar o
ESCD (usando a opção "Force Update ESCD" ou "Reset Configuration data"
do Setup), o que faz com que o BIOS precise reconfigurar os endereços de
todas as placas, a partir do zero.




                                                                              329
APIC


A partir das placas soquete 7, os dois controladores de interrupções foram
substituídos por um controlador aprimorado, batizado de APIC (Advanced
Programmable Interrupt Controller). O APIC preserva a compatibilidade com os
dois controladores antigos, o que permite que placas de legado e sistemas
operacionais antigos continuem funcionando normalmente. Originalmente, ele
foi desenvolvido para melhorar a eficiência de sistemas com dois ou mais
processadores, mas ele traz benefícios mesmo em máquinas com apenas um.

Para que o APIC possa ser ativado, é necessário que exista suporte por parte
do processador (todos os processadores a partir do Pentium 1 o suportam), por
parte da placa-mãe (o suporte foi introduzido a partir das placas soquete 7, de
forma que todas as placas atuais o suportam) e também por parte do sistema
operacional. Na família Windows, o suporte foi introduzido a partir do Windows
2000, enquanto no Linux ele existe desde a série 2.4 do Kernel.

O APIC pode ser desativado através da opção "APIC Function" (ou similar) do
Setup, mas é importante mantê-lo ativado em qualquer PC atual (sobretudo ao
usar as versões atuais do Windows), pois ele acrescenta 8 novos endereços de
IRQ, do 16 ao 23, além de melhorar sensivelmente o sistema de atribuição
automática de endereços.

Em teoria, é possível desenvolver controladores APIC com mais endereços, ou
mesmo combinar vários controladores na mesma placa, de forma a aumentar o
número de endereços disponíveis. Com isso, os fabricantes ganham margem
para expansões futuras, que eventualmente se tornem necessárias. Aqui temos
um screenshot do gerenciador de dispositivos, mostrando a distribuição dos
endereços em um PC atual, com o Windows XP SP2 instalado:




                                                                           330
Veja que além de distribuir os dispositivos instalados entre os agora 24
endereços disponíveis, o sistema permite que alguns endereços sejam
compartilhados por vários dispositivos. Graças à expansão do número de
endereços, o PC continua com vários endereços livres, apesar da adição das
controladoras USB, placa wireless, leitor de cartões e outros dispositivos que
não eram comumente usados em PCs antigos.

Embora qualquer distribuição Linux atual ofereça suporte ao APIC, é comum
que problemas na implementação dos fabricantes (que freqüentemente
possuem bugs ou adicionam recursos fora da especificação) causem
problemas na detecção de alguns dispositivos, sobretudo de periféricos
onboard, como a placa de som ou a placa de rede.

Nesses casos, é possível desativar o APIC utilizando a opção "noapic",
especificada na tela de boot, ou adicionada na linha com opções para o Kernel
dentro do arquivo "/boot/grub/menu.lst" ou "/etc/lilo.conf".




                                                                          331
DMA e I/O


Além dos endereços de IRQ, temos também os canais de DMA e os endereços
de I/O.

Os canais de DMA são utilizados apenas por dispositivos de legado (placas
ISA, portas paralelas e drives de disquete) para transferir dados diretamente
para a memória RAM, reduzindo dessa forma a utilização do processador.

Existem 8 canais de DMA, numerados de 0 a 7. Os canais de 0 a 3 são
herança do PC original e trabalham a 8 bits, assim como o barramento externo
no processador 8080. Os canais de 4 a 7 foram introduzidos com o 286 e,
acompanhando o barramento de dados do processador, são canais de 16 bits.
Os canais de DMA são relacionados ao barramento ISA e, justamente por isso,
nunca foram introduzidos canais de 32 bits. Em vez disso, o barramento PCI
(seguido pelos demais barramentos modernos) trouxe o Bus Mastering, um
sistema muito mais eficiente e rápido.

Tipicamente, o canal DMA 2 era reservado para a controladora do drive de
disquetes, o 3 para a porta paralela (quando configurada para operar em modo
ECP), enquanto uma placa de som ISA utilizava os endereços 1 e 5.

Justamente por serem muito lentos, os canais de DMA caíram em desuso
desde a década de 1990 e continuaram sendo utilizados apenas por periféricos
de legado, como drives de disquete, placas de som ISA e portas paralelas
padrão ECP. Conforme esses periféricos foram caindo em desuso, os canais
de DMA simplesmente deixaram de ser usados, embora permaneçam
disponíveis mesmo nos PCs atuais.

Finalmente, temos os endereços de I/O (também chamados "endereços de
ES", por causa da tradução do Windows). Diferentemente dos endereços de
IRQ, eles não são interrupções, mas sim endereços utilizados para a
comunicação entre os dispositivos. Cada dispositivo precisa de um endereço
próprio, mas, ao contrário dos endereços de IRQ, existe uma abundância de
endereços de I/O disponíveis, de forma que eles raramente são um problema.

No total, existem 65.536 endereços de I/O e, na maioria dos casos, cada
dispositivo utiliza apenas um, de forma que 99% dos endereços permanecem
disponíveis.

Temos aqui um exemplo da distribuição dos endereços DMA e de I/O em um
PC atual. Como ele não possui nenhum dispositivo ISA, nem possui uma porta
paralela ou a porta para o drive de disquetes, o único canal de DMA em uso é o
canal 4, utilizado pela própria controladora. Já no caso dos endereços de I/O,
temos uma longa lista, incluindo praticamente todos os periféricos, além de
uma grande quantidade de controladores incluídos na placa-mãe:




                                                                          332
Capítulo 4: Memórias



A memória RAM é um componente essencial não apenas nos PCs, mas em
qualquer tipo de computador. Por mais que exista espaço de armazenamento
disponível, na forma de um HD ou memória flash, é sempre necessária uma
certa quantidade de memória RAM e, naturalmente, quanto mais melhor.

Graças ao uso da memória swap, é possível rodar a maioria dos sistemas
operacionais modernos com quantidades relativamente pequenas de memória.
No caso do Linux, é possível inicializar uma instalação enxuta (em modo texto,
com pouca coisa além do Kernel e o interpretador de comandos) com apenas 4
MB de memória. O problema é que com pouca memória o sistema fica
extremamente lento, como qualquer um que já tentou usar o Windows XP ou
uma distribuição Linux recente, com o Gnome ou KDE em um PC com menos
de 128 MB de memória pode dizer. :)

A sigla "RAM" vem de "Random Access Memory", ou "memória de acesso
aleatório", indicando a principal característica da memória RAM, que é o fato de
permitir o acesso direto a qualquer um dos endereços disponíveis e de forma
bastante rápida.

Ao carregar um programa, ele é lido no HD (ou outra mídia de armazenamento)
e é transferido para a memória RAM, para só então ser executado pelo
processador. A memória RAM oferece tempos de acesso brutalmente mais
                                                                            333
baixos que o HD e trabalha com taxas de transferência muito mais altas, mas
possui a desvantagem de perder os dados armazenados quando o micro é
desligado, daí a necessidade de salvar os arquivos periodicamente.

É também por causa disso que o processo de boot é refeito cada vez que você
liga o micro. Durante o boot, o sistema operacional, drivers, bibliotecas e
aplicativos são novamente copiados para a memória, junto com suas
configurações e preferências.

A única forma de evitar repetir o demorado processo de boot é manter a
memória RAM ativa, ou salvar seu conteúdo no HD, recuperando-o no próximo
boot. Essas são as estratégias usadas pelas opções de suspender e hibernar,
disponíveis tanto no Windows quanto em várias distribuições Linux.

Ao suspender, a maioria dos componentes do sistema são desligados,
incluindo o HD, a placa de vídeo e a maior parte dos componentes da placa-
mãe. Mesmo o processador entra em um estágio de baixo consumo, onde a
maior parte dos componentes internos são desativados e o clock é reduzido.
Praticamente, os únicos componentes que continuam realmente ativos são os
módulos de memória. Graças a isso o PC acaba consumindo (geralmente)
menos de 20 watts de energia e pode voltar ao estágio original muito
rapidamente.

Ao hibernar, o conteúdo da memória RAM é copiado para uma área reservada
do HD e o micro é desligado. Ao ligar novamente, o conteúdo da memória é
restaurado e temos o sistema de volta, sem precisar passar pelo processo
normal de boot. O problema da hibernação é que a restauração demora muito
mais tempo, já que é necessário ler 512 MB, 1 GB ou mesmo 4 GB de dados
(equivalentes à quantidade de memória RAM instalada) a partir do HD, o que
muitas vezes demora mais do que um boot completo. :)

Além dos diferentes tipos de memória RAM, existem também outras
tecnologias de memórias de acesso aleatório, como as SRAM e mais
recentemente as MRAM. Temos ainda as onipresentes memórias Flash (que
veremos em detalhes mais adiante), que concorrem com os HDs como mídia
de armazenamento.

O tipo mais comum de memória RAM, aquela que compramos na forma de
módulos e instalamos na placa-mãe, é chamada de DRAM, ou "dynamic RAM".
Como vimos no capítulo 1, a memória DRAM passou a ser usada apenas a
partir do final da década de 70, substituindo os chips de memória SRAM, que
eram muito mais caros. Com o passar do tempo, as memória DRAM viraram o
padrão, de forma que geralmente dizemos apenas "memória RAM" e não
"memória DRAM".

Num chip de memória DRAM, cada bit é formado pelo conjunto de um
transístor e um capacitor. O transístor controla a passagem da corrente
elétrica, enquanto o capacitor a armazena por um curto período. Quando o
capacitor contém um impulso elétrico, temos um bit 1 e quando ele está
descarregado, temos um bit 0.



                                                                        334
Quando falo em "capacitor", tenha em mente que não estamos falando em
nada similar aos capacitores eletrolíticos da placa-mãe. Os "capacitores"
usados nos chips de memória são extremamente pequenos e simples,
basicamente dois pequenos blocos de metal ligados ao transístor, que
conservam o impulso elétrico por apenas uma fração de segundo.

Para evitar a perda dos dados, a placa-mãe inclui um circuito de refresh, que é
responsável por regravar o conteúdo da memória várias vezes por segundo (a
cada 64 milessegundos ou menos), algo similar ao que temos num monitor
CRT, onde o canhão de elétrons do monitor precisa atualizar a imagem várias
vezes por segundo para evitar que as células de fósforo percam seu brilho.

O processo de refresh atrapalha duplamente, pois consome energia (que
acaba sendo transformada em calor, contribuindo para o aquecimento do
micro) e torna o acesso à memória mais lento. Apesar disso, não existe muito o
que fazer, pois a única solução seria passar a usar memória SRAM, que é
absurdamente mais cara.

A principal diferença é que na memória SRAM cada célula é formada por 4 ou
6 transístores, em vez de apenas um. Dois deles controlam a leitura e gravação
de dados, enquanto os demais formam a célula que armazena o impulso
elétrico (a célula continua armazenando um único bit). As memórias SRAM são
muito mais rápidas e não precisam de refresh, o que faz com que também
consumam pouca energia. Além de ser usada como memória cache, a
memória SRAM é muito usada em palmtops e celulares, onde o consumo
elétrico é uma questão crítica.

Seria perfeitamente possível construir um PC que usasse memória SRAM
como memória principal, mas o custo seria proibitivo. Foi por causa do custo
que as memórias DRAM passaram a ser utilizadas em primeiro lugar.

Mesmo utilizando um único transístor por bit, os módulos de memória RAM são
formados por um número assustador deles, muito mais que os processadores e
outros componentes. Um módulo de memória de 1 GB, por exemplo, é formado
geralmente por 8 chips de 1 gigabit cada um (8 gigabits = 1 gigabyte). Cada
chip possui então mais de 1 bilhão de transístores e capacitores e o módulo
inteiro acumula mais de 8 bilhões de conjuntos.

Apesar dessa brutal quantidade de transistores, os chips de memória são
relativamente simples de se produzir, já que basta repetir a mesma estrutura
indefinidamente. É muito diferente de um processador, que além de ser muito
mais complexo, precisa ser capaz de operar a freqüências muito mais altas.

Com a evolução nas técnicas de fabricação, os módulos de memória foram
ficando cada vez mais baratos com o passar das décadas. Na época dos
micros 486, chegava-se a pagar 40 dólares por megabyte de memória, valor
que hoje em dia compra um módulo de 512 MB (ou até mais). O problema é
que os requisitos dos sistemas operacionais e aplicativos também
aumentaram, quase que na mesma proporção. Enquanto o MS-DOS rodava
bem com 2 ou 4 MB de memória, o Windows 95 já precisava de pelo menos 16
MB. O Windows XP (assim como a maioria das distribuições Linux atuais) não

                                                                           335
roda bem com menos de 256 MB, enquanto no Vista o ideal é usar 1 GB ou
mais.

Na maioria das situações, ter uma quantidade suficiente de memória RAM
instalada é mais importante que o desempenho do processador, pois sem
memória RAM suficiente o sistema passa a utilizar memória swap, que é
absurdamente mais lenta.

Enquanto uma seqüência de 4 leituras em um módulo de memória DDR2-800
demora cerca de 35 bilionésimos de segundo, um acesso a um setor qualquer
do HD demora pelo menos 10 milésimos. A taxa de transferência nominal do
mesmo módulo de memória é de 6.4 GB/s, enquanto mesmo um HD rápido, de
7200 RPM tem dificuldades para superar a marca de 60 MB/s, mesmo lendo
setores seqüenciais. Ou seja, a memória RAM possui nesse caso um tempo de
acesso quase 300.000 vezes menor e uma taxa de transferência contínua mais
de 100 vezes maior que o HD.

Se lembrarmos que a memória RAM já é muito mais lenta que o processador
(justamente por isso temos os caches L1 e L2), fica fácil perceber o quanto o
uso de memória swap por falta de memória RAM física pode prejudicar o
desempenho do sistema.

É fácil monitorar o uso de swap. No Windows XP ou Vista basta pressionar
Ctrl+Alt+Del e acessar o gerenciador de tarefas, enquanto no Linux você pode
usar o comando "free" ou um aplicativo de gerenciamento, como o ksysguard.

No caso do Windows Vista é possível usar um pendrive como memória
adicional, através do ReadyBoost. Neste caso entretanto, o pendrive é usado
como uma extensão da memória swap e não como um substituto da memória
RAM. Como o pendrive oferece tempos de acesso muito mais baixos, ele
acaba sendo mais eficiente que o HD nessa tarefa, muito embora a taxa de
leitura seja geralmente mais baixa.

Esse recurso pode ajudar em micros com pouca memória RAM e também
reduzir o tempo de carregamento dos programas. É uma opção para casos em
que você já tem o pendrive e procura um uso para ele, mas não espere
milagres. Em se tratando de memória, não existe o que inventar: ou você
procura um sistema operacional e programas mais leves, ou compra mais
memória. Não dá para ficar em cima do muro. ;)

Como disse há pouco, embora seja brutalmente mais rápida que o HD e outros
periféricos, a memória RAM continua sendo muito mais lenta que o
processador. O uso de caches diminui a perda de desempenho, reduzindo o
número de acessos à memória; mas, quando o processador não encontra a
informação que procura nos caches, precisa recorrer a um doloroso acesso à
memória principal, que pode demorar o equivalente a mais de 100 ciclos do
processador.

Para reduzir a diferença (ou pelo menos tentar impedir que ela aumente ainda
mais), os fabricantes de memória passaram a desenvolver um conjunto de
novas tecnologias, a fim de otimizar o acesso aos dados. Acompanhando


                                                                         336
essas mudanças, tivemos também alterações físicas no formato dos módulos,
de forma que podemos classificar os módulos de memória de duas formas:

      * Quanto à tecnologia usada (EDO, SDRAM, DDR, DDR2, etc.)
      * Quanto ao formato usado (SIMM, DIMM, etc.)

Vamos a uma explicação mais detalhada:

Formatos



Nos micros XT, 286 e nos primeiros 386, ainda não eram utilizados módulos de
memória. Em vez disso, os chips de memória eram instalados diretamente na
placa-mãe, encaixados individualmente em colunas de soquetes (ou soldados),
onde cada coluna formava um banco de memória.

Esse era um sistema antiquado, que trazia várias desvantagens, por dificultar
upgrades de memória ou a substituição de módulos com defeito. Imagine você,
fazendo um upgrade de memória numa placa como esta:




Não é só você que não achou muito atraente a idéia de ficar catando chips de
memória um a um. Foi questão de tempo até que alguém aparecesse com uma
alternativa mais prática, capaz de tornar a instalação fácil até mesmo para
usuários inexperientes.

Os módulos de memória são pequenas placas de circuito onde os chips DIP
são soldados, facilitando o manuseio e a instalação.

Os primeiros módulos de memória criados são chamados de módulos SIMM,
sigla que significa "Single In Line Memory Module", justamente porque existe
uma única via de contatos, com 30 vias. Apesar de existirem contatos também
na parte de trás do módulo, eles servem apenas como uma extensão dos
contatos frontais, de forma a aumentar a área de contato com o soquete.

                                                                          337
Examinando o módulo, você verá um pequeno orifício em cada contato, que
serve justamente para unificar os dois lados.




                          Módulo SIMM de 30 vias

Os módulos de 30 vias possuíam sempre 8 ou 9 chips de memória. Cada chip
fornecia um único bit de dados em cada transferência, de forma que 8 deles
formavam um módulo capaz de transferir 8 bits por ciclo. No caso dos módulos
com 9 chips, o último era destinado a armazenar os bits de paridade, que
melhoravam a confiabilidade, permitindo identificar erros. Hoje em dia os
módulos de memória são mais confiáveis, de forma que a paridade não é mais
usada. No lugar dela, temos o ECC, um sistema mais avançado, usado em
módulos de memória destinados a servidores.

Os módulos de 30 vias foram utilizados em micros 386 e 486 e foram
fabricados em várias capacidades. Os mais comuns foram os módulos de 1
MB, mas era possível encontrar também módulos de 512 KB, 2 MB e 4 MB.
Existiram também módulos de 8 e 16 MB, mas eles eram muito raros devido ao
custo.

Os processadores 386 e 486 utilizavam um barramento de 32 bits para o
acesso à memória, o que tornava necessário combinar 4 módulos de 30 vias
para formar um banco de memória. Os 4 módulos eram então acessados pelo
processador como se fossem um só. Era preciso usar os módulos em
quartetos: 4 módulos ou 8 módulos, mas nunca um número quebrado.

A exceção ficava por conta dos micros equipados com processadores 386SX,
onde são necessários apenas 2 módulos, já que o 386SX acessa a memória
usando palavras de 16 bits:




                                                                         338
Apesar de serem muito mais práticos do que manipular diretamente os chips
DIP, os módulos SIMM de 30 vias ainda eram bastante inconvenientes, já que
era preciso usar 4 módulos idênticos para formar cada banco de memória. Eles
foram desenvolvidos pensando mais na questão da simplicidade e economia
de custos do que na praticidade.

Para solucionar o problema, os fabricantes criaram um novo tipo de módulo de
memória SIMM, de 32 bits, que possui 72 vias. Os módulos de 72 vias
substituíram rapidamente os antigos nas placas para 486 e se tornaram o
padrão nos micros Pentium, sendo em seguida substituídos pelos módulos de
168 vias.




                           Módulo SIMM de 72 vias

Em vez de quatro módulos, é preciso apenas um módulo SIMM de 72 vias para
formar cada banco de memória nos micros 486. Como o Pentium acessa a
memória usando palavras de 64 bits, são necessários 2 módulos em cada
banco. É por isso que nos micros Pentium 1 precisamos sempre usar os
módulos de memória em pares:




O acesso de 64 bits à memória foi introduzido para permitir que o processador
conseguisse acessar grandes quantidades de dados mais rapidamente. O
processador é tão mais rápido que a memória RAM, que depois de esperar
vários ciclos para poder acessá-la, o melhor a fazer é pegar a maior quantidade
de dados possível e guardar tudo no cache. Naturalmente os dados serão
processados em blocos de 32 bits, mas a poupança ajuda bastante.

Dentro de um banco, todos os módulos são acessados ao mesmo tempo, como
se fossem um só, por isso era sempre recomendável usar dois módulos iguais.
Ao usar quatro módulos, o importante era que cada par fosse composto por
dois módulos iguais. Não existia problema em usar dois pares de módulos
diferentes, como ao usar dois de 16 MB e mais dois de 8 MB para totalizar 48
MB, por exemplo.




                                                                           339
Uma curiosidade é que algumas placas-mãe para Pentium podem trabalhar
com apenas um módulo de 72 vias. Nesse caso, a placa engana o
processador, fazendo dois acessos de 32 bits consecutivos, entregando os
dados de uma só vez para o processador. Apesar de funcionar, esse esquema
reduz bastante a velocidade do micro, pois a taxa de transferência ao ler dados
a partir da memória é efetivamente reduzida à metade.

Finalmente, temos os módulos DIMM, usados atualmente. Ao contrário dos
módulos SIMM de 30 e 72 vias, os módulos DIMM possuem contatos em
ambos os lados do módulo, o que justifica seu nome, "Double In Line Memory
Module" ou "módulo de memória com dupla linha de contato".

Todos os módulos DIMM são módulos de 64 bits, o que eliminou a
necessidade de usar 2 ou 4 módulos para formar um banco de memória.
Muitas placas-mãe oferecem a opção de usar dois módulos (acessados
simultaneamente) para melhorar a velocidade de acesso. Esse recurso é
chamado de dual-channel e melhora consideravelmente o desempenho,
sobretudo nas placas-mãe com vídeo onboard, onde a placa de vídeo disputa o
acesso à memória RAM com o processador principal. De qualquer forma,
mesmo nas placas dual-channel, usar os módulos em pares é opcional; você
pode perfeitamente usar um único módulo, mas neste caso o suporte a dual-
channel fica desativado.

Existem três formatos de memória DIMM. Os mais antigos são os módulos de
memória SDR, de 168 vias, que eram utilizados há até poucos anos. Em
seguida, temos os módulos de memória DDR, que possuem 184 contatos e os
módulos DDR2, que possuem 240.

Apesar do maior número de contatos, os módulos DDR e DDR2 são
exatamente do mesmo tamanho que os módulos SDR de 168 vias, por isso
foram introduzidas mudanças na posição dos chanfros de encaixe, de forma
que você não consiga encaixar os módulos em placas incompatíveis.

Os módulos SDR possuem dois chanfros, enquanto os DDR possuem apenas
um chanfro, que ainda por cima é colocado em uma posição diferente:




                 Módulo DIMM SDR (em cima) e módulo DDR

Os módulos DDR2 também utilizam um único chanfro, mas ele está
posicionado mais próximo do canto do módulo que o usado nos módulos DDR,

                                                                           340
de forma que é novamente impossível encaixar um módulo DDR2 numa placa
antiga:




                             Módulo DIMM DDR2

Isso é necessário, pois além das mudanças na forma de acesso, os módulos
DDR2 utilizam tensão de 1.8V, enquanto os módulos DDR usam 2.5V. Se
fosse possível instalar um módulo DDR2 em uma placa antiga, a maior tensão
queimaria o módulo rapidamente.

Outra diferença é que os chips DDR2 utilizam o encapsulamento BGA (Ball
Grid Array), no lugar do encapsulamento TSOP (Thin Small-Outline Package),
usado nos chips SDR e DDR. A grande diferença é que no BGA os pontos de
solda são posicionados diretamente na parte inferior dos chips, em vez de
serem usadas as "perninhas" laterais. Isso reduz a distância que o sinal elétrico
precisa percorrer, além de reduzir o nível de interferências, permitindo que os
módulos sejam capazes de operar a freqüências mais altas. Esta imagem
ilustrativa da Micron mostra bem como os chips se parecem:




                            Chips BGA de memória

Mais recentemente surgiram no mercado alguns módulos de memória DDR
que também utilizam chips BGA, mas eles são menos comuns.

Como os módulos DDR2 trabalham a freqüências mais altas, o uso de
dissipadores se tornou mais comum. Eles não são realmente necessários, mas
a melhor dissipação do calor permite que o módulo trabalhe a freqüências mais

                                                                             341
altas, por isso eles se tornaram norma nos módulos DDR2 de alto desempenho
e, principalmente, nos módulos "premium", destinados a overclock. Alguns
fabricantes chegam a utilizar heat-pipes ou a oferecer coolers ativos, que
podem ser instalados sobre os módulos.




                       Módulos DDR2 com dissipadores

Outra característica que torna os módulos DDR2 diferentes é a presença de um
terminador resistivo dentro de cada chip de memória. O terminador é
necessário para "fechar o circuito", evitando que os sinais elétricos retornem na
forma de interferência ao chegarem ao final do barramento. Nos módulos DDR
os terminadores são instalados na placa-mãe, o que torna a terminação menos
eficiente. Como os módulos DDR2 operam a freqüências muito mais altas, a
presença do terminador dentro dos próprios chips se tornou uma necessidade,
já que torna o sinal mais estável e livre de ruídos.

Existem também os módulos SODIMM (Small Outline DIMM), destinados a
notebooks. Eles são basicamente versões miniaturizadas dos módulos
destinados a desktops, que utilizam os mesmos tipos de chips de memória.

Os módulos SODIMM SDR possuem 144 pinos, enquanto os módulos DDR e
DDR2 possuem 200 pinos. Nos módulos SDR o chanfro fica próximo ao centro
do módulo, enquanto nos DDR e DDR2 ele fica à esquerda. Assim como nos
módulos para desktops, existe uma pequena diferença no posicionamento do
chanfro entre os módulos DDR e DDR2, que impede o encaixe incorreto, já que
ambos são incompatíveis.




                                                                             342
Módulo SODIMM DDR2

Tecnologias utilizadas



Um chip de memória é um exército de clones, formado por um brutal número
de células idênticas, organizadas na forma de linhas e colunas, de forma
similar a uma planilha eletrônica.

O chip de memória em si serve apenas para armazenar dados, não realiza
nenhum tipo de processamento. Por isso, é utilizado um componente adicional,
o controlador de memória, que pode ser incluído tanto no chipset da placa-mãe
quanto dentro do próprio processador, como no caso dos processadores
derivados do Athlon 64.

Para acessar um determinado endereço de memória, o controlador primeiro
gera o valor RAS (Row Address Strobe), ou o número da linha da qual o
endereço faz parte, gerando em seguida o valor CAS (Column Address
Strobe), que corresponde à coluna. Quando o RAS é enviado, toda a linha é
ativada simultaneamente; depois de um pequeno tempo de espera, o CAS é
enviado, fechando o circuito e fazendo com que os dados do endereço
selecionado sejam lidos ou gravados:




                                                                         343
Não existe um caminho de volta, ligando cada endereço de volta ao controlador
de memória. Em vez disso, é usado um barramento comum, compartilhado por
todos os endereços do módulo. O controlador de memória sabe que os dados
que está recebendo são os armazenados no endereço X, pois ele se "lembra"
que acabou de acessá-lo.

Antigamente (na época dos módulos de 30 vias), cada chip de memória se
comportava exatamente dessa forma, lendo um bit de cada vez. Apesar disso,
o processador lia 32 bits de dados a cada ciclo, de forma que eram usados 4
módulos, com 8 chips cada um.

Do ponto de vista do processador, não existia divisão, os chips eram
acessados como se fossem um só. O processador não via 32 endereços
separados, em 32 chips diferentes, mas sim um único endereço, contendo 32
bits.

Nos módulos DIMM atuais são geralmente usados 8 chips de 8 bits cada um,
formando os 64 bits fornecidos ao processador. Existem ainda módulos com 16
chips de 4 bits cada, ou ainda, módulos com 4 chips de 16 bits (comuns em
notebooks). Do ponto de vista do processador, não faz diferença, desde que
somados os chips totalizem 64 bits.

Imagine que o controlador de memória envia seqüências com 4, 8 ou 16 pares
de endereços RAS e CAS e recebe de volta o mesmo número de pacotes de
64 bits. Mesmo em casos em que o processador precisa de apenas alguns
poucos bytes, contendo uma instrução ou bloco de dados, ele precisa ler todo o
bloco de 64 bits adjacente, mesmo que seja para descartar os demais.

No caso das placas dual-channel, continuamos tendo acessos de 64 bits, a
única diferença é que agora a placa-mãe é capaz de acessar dois endereços
diferentes (cada um em um módulo de memória) a cada ciclo de clock, ao invés
de apenas um. Isso permite transferir o dobro de dados por ciclo, fazendo com
que o processador precise esperar menos tempo ao transferir grandes
quantidades de dados.

                                                                          344
Na verdade, nos PCs atuais, praticamente qualquer dispositivo pode acessar a
memória diretamente através do barramento PCI, AGP, PCI Express e até
mesmo a partir das portas SATA, IDE e USB. Naturalmente, todos os acessos
são coordenados pelo processador, mas como a memória é uma só, temos
situações onde o processador precisa esperar para acessar a memória, porque
ela está sendo acessada por outro dispositivo.

Existem várias formas de melhorar o desempenho da memória RAM. A
primeira é aumentar o número de bits lidos por ciclo, tornando o barramento
mais largo, como o aumento de 32 para 64 bits introduzida pelo Pentium 1, que
continua até os dias de hoje. O problema em usar um barramento mais largo é
que o maior número de trilhas necessárias, tanto na placa-mãe quanto nos
próprios módulos de memória, aumentam a complexidade e o custo de
produção.

A segunda é acessar dois ou mais módulos de memória simultaneamente,
como nas placas dual-channel. O problema é que nesse caso precisamos de
dois módulos, além de circuitos e trilhas adicionais na placa-mãe.

A terceira é criar módulos de memória mais rápidos, como no caso das
memórias DDR e DDR2. Essa questão da velocidade pode ser dividida em dois
quesitos complementares: o número de ciclos por segundo e a latência, que é
o tempo que a primeira operação numa série de operações de leitura ou escrita
demora para ser concluída. O tempo de latência poderia ser comparado ao
tempo de acesso de um HD, enquanto o número de ciclos poderia ser
comparado ao clock do processador.

É aqui que entram as diferentes tecnologias de memórias que foram
introduzidas ao longo das últimas décadas, começando pelas memórias
regulares, usadas nos XTs e 286, que evoluíram para as memórias FPM,
usadas em PCs 386 e 486, em seguida para as memórias EDO, usadas nos
últimos micros 486s e nos Pentium. Estas três primeiras tecnologias foram
então substituídas pelas memórias SDRAM, seguidas pelas memórias DDR e
DDR2 usadas atualmente.

Memórias Regulares

As memórias regulares são o tipo mais primitivo de memória RAM. Nelas, o
acesso é feito da forma tradicional, enviando o endereço RAS, depois o CAS e
aguardando a leitura dos dados para cada ciclo de leitura.

Isso funcionava bem nos micros XT e 286, onde o clock do processador era
muito baixo, de forma que a memória RAM era capaz de funcionar de forma
sincronizada com ele. Em um 286 de 8 MHz, eram usados chips com tempo de
acesso de 125 ns (nanossegundos) e em um de 12 MHz eram usados chips de
83 ns.

O problema era que a partir daí as memórias da época atingiram seu limite e
passou a ser necessário fazer com que a memória trabalhasse de forma
assíncrona, onde o processador trabalha a uma freqüência mais alta que a
memória RAM.

                                                                          345
A partir do 386, a diferença passou a ser muito grande, de forma que as
placas-mãe passaram a trazer chips de memória cache, dando início à corrida
que conhecemos.

Memórias FPM

A primeira melhora significativa na arquitetura das memórias veio com o FPM
(Fast-Page Mode, ou "modo de paginação rápida").

A idéia é que, ao ler um bloco de instruções ou arquivo gravado na memória,
os dados estão quase sempre gravados seqüencialmente. Não seria preciso
então enviar o endereço RAS e CAS para cada bit a ser lido, mas
simplesmente enviar o endereço RAS (linha) uma vez e em seguida enviar uma
seqüência de até 4 endereços CAS (coluna), realizando uma série rápida de 4
leituras.

O primeiro ciclo de leitura continua tomando o mesmo tempo, mas as 3 leituras
seguintes passam a ser bem mais rápidas. Graças a essa pequena otimização,
as memórias FPM conseguem ser até 30% mais rápidas que as memórias
regulares, sem grandes alterações nos chips de memória ou na técnica de
fabricação. O burst (sequência de acessos rápidos) de 4 leituras pode ser
prolongado para 8, ou até mesmo 16 leituras consecutivas, desde que lendo
dados gravados em endereços adjacentes, da mesma linha.

As memórias FPM foram utilizadas em micros 386, 486 e nos primeiros micros
Pentium, na forma de módulos SIMM de 30 ou 72 vias, com tempos de acesso
de 80, 70 ou 60 ns, sendo as de 70 ns as mais comuns.

Instaladas em uma placa-mãe soquete 7, que trabalhe com bus de 66 MHz, os
intervalos de espera de memórias FPM podem ser de até 6-3-3-3, o que
significa que o processador terá de esperar cinco ciclos da placa-mãe para a
memória efetuar a primeira leitura de dados e somente mais 3 ciclos para cada
leitura subseqüente. Os tempos de espera das memórias podiam ser
configurados no setup, através da opção "Memory Timing" ou similar, onde
ficavam disponíveis opções como "slow", "normal" e "fast", que substituem os
valores numéricos.

No caso das placas para 486, que operavam a clocks mais baixos (30, 33 ou
40 MHz), os tempos de espera podiam ser configurados com valores mais
baixos, como 4-3-3-3 ou 3-2-2-2, já que, com menos ciclos por segundo, é
natural que os tempos de resposta dos módulos correspondam a um número
menor de ciclos da placa-mãe.

Memórias EDO

As memórias EDO (Extended Data Output) foram introduzidas a partir de 1994
e trouxeram mais uma melhoria significativa no modo de acesso a dados. Nas
memórias FPM, uma leitura não pode ser iniciada antes que a anterior termine,
mesmo dentro do burst de 4 leituras dentro da mesma linha. O controlador


                                                                          346
precisa esperar que os dados referentes à leitura anterior cheguem, antes de
poder ativar endereço CAS seguinte.

Nas memórias EDO, o controlador faz a leitura enviando o endereço RAS,
como de costume, e depois enviando os 4 endereços CAS numa freqüência
predefinida, sem precisar esperar que o acesso anterior termine. Os sinais
chegam às células de memória na seqüência em que foram enviados e, depois
de um pequeno espaço de tempo, o controlador recebe de volta as 4 leituras.

O resultado acaba sendo exatamente o mesmo, mas passa a ser feito de forma
mais rápida. Usadas em uma placa soquete 7, operando a 66 MHz, as
memórias EDO são capazes de trabalhar com tempos de acesso de apenas 6-
2-2-2, ou mesmo 5-2-2-2 (nos módulos de 60 ns). Nos bursts de 8 ou mais
leituras, o ganho acaba sendo ainda maior, com o módulo FPM realizando a
leitura dos 8 endereços em 27 ciclos (6-3-3-3-3-3-3-3) e o EDO em 20 (6-2-2-2-
2-2-2-2). Veja que o ganho é maior em leituras de vários endereços
consecutivos, por isso alguns aplicativos se beneficiam mais do que outros.

Os módulos de memória EDO foram produzidos em versões com tempos de
acesso de 70, 60 e 50 ns, com predominância dos módulos de 60 ns. Eles
foram usados predominantemente na forma de módulos de 72 vias, usados nos
micros 486 e Pentium fabricados a partir de 1995.

Existiram ainda alguns módulos DIMM de 168 vias com memória EDO. Eles
foram bastante raros, pois foram logo substituídos pelos módulos de memória
SDRAM.

As melhorias na arquitetura das memórias EDO tornaram-nas incompatíveis
com placas-mãe equipadas com chipsets mais antigos. Basicamente, apenas
as placas para processadores Pentium e algumas placas-mãe para 486 com
slots PCI (as mais recentes) aceitam trabalhar com memórias EDO. Existem
também placas para 486 "tolerantes" que funcionam com memórias EDO,
apesar de não serem capazes de tirar proveito do modo de acesso mais rápido,
e finalmente, as placas incompatíveis, que nem chegam a inicializar caso
sejam instaladas memórias EDO.

Todos os módulos de 30 vias são de memórias FPM, enquanto (com exceção
de alguns módulos antigos) todos os de 168 vias são de memórias SDRAM. A
confusão existe apenas nos módulos de 72 vias, que podem ser tanto de
memórias EDO quanto de memórias FPM. Para saber quem é quem, basta
verificar o tempo de acesso. Todo módulo de memória traz seus dados
estampados nos chips, na forma de alguns códigos; o tempo de acesso é
indicado no final da primeira linha. Se ela terminar com -7, -70, ou apenas 7, ou
70, o módulo possui tempo de acesso de 70 ns. Se por outro lado a primeira
linha terminar com -6, -60, 6 ou 60 o módulo é de 60 ns.

Como quase todos os módulos de 70 ns são de memórias FPM, e quase todos
os módulos de memórias EDO são de 60 ns, você pode usar esse método para
determinar com 95% de certeza o tipo de memória usada:


                                                                             347
348
Memórias SDRAM

Tanto as memórias FPM quanto as memórias EDO são assíncronas, o que
significa que elas trabalham em seu próprio ritmo, independentemente dos
ciclos da placa-mãe. Isso explica porque memórias FPM que foram projetadas
para funcionar em placas para processadores 386 ou 486 funcionam sem
problemas em placas soquete 7, que trabalham a 66 MHz. Na verdade, a
memória continua trabalhando na mesma velocidade, o que muda são os
tempos de espera que passam a ser mais altos. Assim, em vez de responder a
cada 2 ciclos da placa-mãe, elas podem passar a responder a cada 3 ou 4
ciclos, por exemplo.

As memórias SDRAM (Synchronous Dynamic RAM) por sua vez, são capazes
de trabalhar sincronizadas com os ciclos da placa-mãe, sem tempos de espera.
Isso significa que a temporização das memórias SDRAM é sempre de uma
leitura por ciclo. Independentemente da freqüência de barramento utilizada, os
tempos de acesso serão sempre de 6-1-1-1, ou mesmo 5-1-1-1.

Veja que o primeiro acesso continua tomando vários ciclos, pois nele é
necessário realizar o acesso padrão, ativando a linha (RAS) e depois a coluna
(CAS). Apenas a partir do segundo acesso é que as otimizações entram em
ação e a memória consegue realizar uma leitura por ciclo, até o final da leitura.

O burst de leitura pode ser de 2, 4 ou 8 endereços e existe também o modo
"full page" (disponível apenas nos módulos SDRAM), onde o controlador pode
especificar um número qualquer de endereços a serem lidos seqüencialmente,
até um máximo de 512. Ou seja, em situações ideais, pode ser possível
realizar a leitura de 256 setores em 260 ciclos! :). Só para efeito de
comparação, se fossem usadas memórias regulares, com tempos de acesso
similares, a mesma tarefa tomaria pelo menos 1280 ciclos.

Outra característica que ajuda as memórias SDRAM a serem mais rápidas que
as EDO e FPM é a divisão dos módulos de memória em vários bancos. Um
módulo DIMM pode ser formado por 2, 4, ou mesmo 8 bancos de memória,
cada um englobando parte dos endereços disponíveis. Apenas um dos bancos
pode ser acessado de cada vez, mas o controlador de memória pode
aproveitar o tempo de ociosidade para fazer algumas operações nos demais,
como executar os ciclos de refresh e também a pré-carga dos bancos que
serão acessados em seguida. Nos módulos EDO e FPM, todas essas
operações precisam ser feitas entre os ciclos de leitura, o que toma tempo e
reduz a freqüência das operações de leitura.

A partir da memória SDRAM, tornou-se desnecessário falar em tempos de
acesso, já que a memória trabalha de forma sincronizada em relação aos ciclos
da placa-mãe. As memórias passaram então a ser rotuladas de acordo com a
freqüência em que são capazes de operar. No caso das memórias SDRAM
temos as memórias PC-66, PC-100 e PC-133, no caso das DDR temos as PC-
200, PC-266, PC-333, PC-400 (e assim por diante), enquanto nas DDR2 temos
as PC-533, PC-666, PC-800, PC-933, PC-1066 e PC-1200.

                                                                             349
Um módulo de memória PC-133 deve ser capaz de operar a 133 MHz,
fornecendo 133 milhões de leituras (teóricas) por segundo. Entretanto, essa
velocidade é atingida apenas quando o módulo realiza um burst de várias
leituras. O primeiro acesso continua levando 5, 6 ou mesmo 7 ciclos da placa-
mãe, como nas memórias antigas.

Ou seja, o fato de ser um módulo PC-100 não indica que o módulo possui um
tempo de acesso de 10 ns ou menos (nem mesmo os módulos DDR2 atuais
atingem essa marca). Pelo contrário, a maioria dos módulos PC-100
trabalhavam com tempos de acesso de 40 ns. Mas, graças a todas as
otimizações que vimos, as leituras podiam ser paralelizadas, de forma que no
final o módulo suporta bursts de leitura onde, depois de um lento ciclo inicial, o
módulo consegue realmente entregar 64 bits de dados a cada 10 ns.

Independentemente da freqüência de operação, temos também os módulos
CL2 e CL3, onde o "CL" é abreviação de "CAS latency", ou seja, o tempo de
latência relacionado ao envio do valor CAS, durante o primeiro acesso de cada
burst.

Em módulos CL2, o envio do valor CAS toma 2 ciclos, enquanto nos CL3 toma
3 ciclos. A eles, somamos um ciclo inicial e mais dois ciclos relacionados ao
envio do valor RAS, totalizando 5 (nos módulos CL2) ou 6 (nos CL3) ciclos
para o acesso inicial.

A diferença acaba sendo pequena, pois os acessos seguintes demoram
sempre apenas um ciclo.

Um módulo CL2 realizaria um burst de 8 leituras em 12 ciclos (5-1-1-1-1-1-1-1),
enquanto o CL3 demoraria 13 ciclos (6-1-1-1-1-1-1-1). Ou seja, embora os
módulos CL2 sejam celebrados e sejam alvo de um grande esforço de
marketing por parte dos fabricantes, a diferença de performance é realmente
muito pequena para justificar pagar mais caro num módulo CL2.

Apesar disso, os módulos CL2 trabalham com tempos de acesso um pouco
mais baixos e por isso suportam melhor o uso de freqüências mais altas que o
especificado, dando mais margem para overclock.

Veja que das memórias regulares, até as SDRAM, foi possível multiplicar a
velocidade das memórias sem fazer alterações fundamentais nas células, que
continuam seguindo o mesmo projeto básico, com um transístor e um capacitor
para cada bit armazenado. Desde a década de 80, as reduções nos tempos de
acesso foram apenas incrementais, acompanhando as melhorias nas técnicas
de fabricação. O que realmente evoluiu com o passar do tempo foram os
circuitos em torno dos módulos, que otimizaram o processo de leitura,
extraindo mais e mais performance.

Chegamos então às memórias DDR, DDR2 e DDR3 usadas atualmente, que
levam este processo crescente de otimização a um novo nível.



                                                                              350
Memórias DDR

Apesar das otimizações, os módulos de memória SDRAM continuam
realizando apenas uma transferência por ciclo, da forma mais simples possível.
Depois de decorrido o longo ciclo inicial, as células de memória entregam uma
leitura de dados por ciclo, que passa pelos buffers de saída e é despachada
através do barramento de dados. Todos os componentes trabalham na mesma
freqüência:




As memórias DDR implementam um novo truque, que as torna capazes de
realizarem duas transferências por ciclo e serem quase duas vezes mais
rápidas que as memórias SDRAM, mesmo mantendo a mesma freqüência de
operação e a mesma tecnologia básica. Vem daí o termo "DDR", que significa
"Double Data Rate", ou duplo fluxo de dados. Com o lançamento das memórias
DDR, as SDRAM passaram a ser chamadas de "SDR", ou "Single Data Rate".

Os chips de memória DDR incluem circuitos adicionais, que permitem gerar
comandos de acesso e receber os dados referentes às leituras duas vezes por
ciclo de clock, executando uma operação no início do ciclo e outra no final.
Como são utilizadas as mesmas trilhas para realizar ambas as transferências,
não foi necessário fazer grandes modificações nem nos módulos, nem nas
placas-mãe.

Apesar disso, as células de memória propriamente ditas continuam operando
na mesma freqüência. Em um módulo DDR-266, por exemplo, elas operam a
apenas 133 MHz, da mesma forma que num módulo PC-133. O pulo do gato é
fazer com que cada um dos dois comandos de leitura (ou gravação) sejam
enviados para um endereço diferente, na mesma linha. As duas leituras são
enviadas através do barramento de dados na forma de duas transferências
separadas, uma realizada no início e a outra no final do ciclo de clock:




                                                                          351
O maior problema é que o ciclo inicial continua demorando o mesmo tempo
que nas memórias SDRAM, de forma que o ganho aparece apenas em leituras
de vários setores consecutivos e a taxa de transferência nunca chega
realmente a dobrar, variando bastante de acordo com o tipo de aplicativo
usado.

A temporização para um burst de 8 leituras, usando memórias DDR, seria 5-½-
½-½-½-½-½-½ (8.5 ciclos) ao invés de 5-1-1-1-1-1-1-1 (12 ciclos) como num
módulo SDR. A diferença é menor em bursts menores, de apenas duas ou
quatro leituras.

Apesar disso, as memórias DDR acabaram sendo um excelente negócio, pois
tornaram possível obter ganhos perceptíveis de performance sem um aumento
considerável no custo. Justamente por isso elas se popularizaram rapidamente,
substituindo as memórias SDRAM num espaço de menos de um ano.

Os módulos DDR podem ser vendidos tanto segundo sua freqüência de
operação quanto segundo sua taxa de transferência.

      DDR-200 (100 MHz) = PC1600
      DDR-266 (133 MHz) = PC2100
      DDR-333 (166 MHz) = PC2700
      DDR-400 (200 MHz) = PC3200
      DDR-466 (233 MHz) = PC3700
      DDR-500 (250 MHz) = PC4000

Assim como no caso dos módulos SDRAM, existem módulos de memória DDR
CL2 e CL3, sendo que nos CL2 o tempo do acesso inicial é reduzido em um
ciclo, resultando em um pequeno ganho de desempenho. Como as DDR
realizam duas operações por ciclo, surgiram também os módulos CL2.5, que
ficam no meio do caminho.

As especificações dos módulos indicam a freqüência máxima para a qual seu
funcionamento foi comprovado. Nada impede que você use o módulo a uma
freqüência mais baixa que o especificado; você pode usar um módulo DDR-400
em uma placa-mãe configurada para trabalhar a 133 MHz, por exemplo, mas
nesse caso não existe ganho de desempenho com relação a um módulo DDR-

                                                                          352
266, com exceção de pequenas diferenças relacionadas ao valor CAS ou à
temporização dos dois módulos.

Quase sempre, é possível também usar o módulo a freqüências um pouco
mais altas que o especificado, fazendo overclock. O módulo DDR-400 poderia
funcionar então a 215 MHz, por exemplo. Fazer overclock sem aumentar a
tensão da memória não traz perigo para os módulos (mesmo a longo prazo),
porém você também não tem garantia de estabilidade. Normalmente os
módulos CL2 ou CL2.5 suportam melhor os overclocks, já que o controlador
tem mais margem para aumentar a temporização dos módulos para compensar
o aumento na freqüência.

Ao misturar dois módulos de especificações diferentes, é necessário nivelar por
baixo, usando a freqüência suportada pelo módulo mais lento. Justamente por
isso, nem sempre é conveniente aproveitar os módulos antigos ao fazer
upgrade, pois você acaba sub-utilizando o novo módulo.

Em casos onde você tem, por exemplo, um módulo de 128 MB de memória
DDR-266, vale mais a pena vender o módulo antigo e comprar um módulo
DDR-400 ou DDR-466 de 512 MB ou mais, do que usar o antigo em conjunto
com um módulo novo. Verifique apenas se a placa-mãe permite ajustar a
freqüência de forma assíncrona, sem aumentar junto a freqüência do FSB (de
forma que você possa usar a freqüência correta para o módulo, sem com isso
alterar a freqüência dos demais componentes).

Continuando, quase todos os módulos de memória SDRAM ou DDR possuem
um chip de identificação chamado de "SPD" (Serial Presence Detect), que
armazena os códigos de identificação do módulo, detalhes sobre a freqüência,
tempos de acesso, CAS latency e outras especificações. Estas informações
são exibidas por programas de identificação, como o CPU-Z e o Sandra. No
Linux, você pode ler as informações gravadas no chip usando o script "decode-
dimms.pl" (você pode encontrá-lo usando o comando "locate"), que faz parte do
pacote "lm-sensors". Ele retorna uma longa lista de informações sobre cada um
dos módulos instalados na máquina, como neste exemplo:

      Memory Serial Presence Detect Decoder
      By Philip Edelbrock, Christian Zuckschwerdt, Burkart Lingner,
      Jean Delvare and others
      Version 2.10.1

      Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0050
      Guessing DIMM is in bank 1

      ---=== SPD EEPROM Information ===---
      EEPROM Checksum of bytes 0-62 OK (0x8C)
      # of bytes written to SDRAM EEPROM 128
      Total number of bytes in EEPROM 256
      Fundamental Memory type DDR SDRAM
      SPD Revision 0.0


                                                                           353
---=== Memory Characteristics ===---
      Maximum module speed 400MHz (PC3200)
      Size 512 MB
      tCL-tRCD-tRP-tRAS 3-3-3-8
      Supported CAS Latencies 3, 2.5, 2
      Supported CS Latencies 0
      Supported WE Latencies 1
      Minimum Cycle Time (CAS 3) 5 ns
      Maximum Access Time (CAS 3) 0.65 ns
      Minimum Cycle Time (CAS 2.5) 6 ns
      Maximum Access Time (CAS 2.5) 0.7 ns
      Minimum Cycle Time (CAS 2) 7.5 ns
      Maximum Access Time (CAS 2) 0.75 ns

      ---=== Manufacturing Information ===---
      Manufacturer Kingston
      Manufacturing Location Code 0x04
      Part Number K
      Manufacturing Date 0x001E
      Assembly Serial Number 0x6B376D48

Pelas informações, podemos ver que se trata de um módulo DDR-400
(PC3200) de 512 MB da Kingston. Veja que o módulo suporta o uso de CAS 3,
2.5 ou 2, mas em seguida é especificado que o tempo mínimo de acesso
usando CAS 3 são 5 ns e usando CAS 2 são 7.5 ns. Ou seja, o módulo só é
capaz de usar CAS 2 em freqüências mais baixas. Ao operar a 200 MHz, sua
freqüência nominal, ele passa automaticamente a usar CAS 3. Apesar das
especificações serem um pouco confusas, elas indicam que na verdade tenho
em mãos um módulo CL3.

O SPD é um pequeno chip de memória EEPROM, com apenas 128 ou 256
bytes, que pode ser localizado facilmente no módulo:




                                                                      354
Graças a ele, a placa-mãe pode utilizar automaticamente as configurações
recomendadas para o módulo, facilitando a configuração. Mas, você pode
desativar a configuração automática (By SPD) e especificar sua própria
configuração através do Setup.

A maioria das placas atuais permitem que a memória opere de forma
assíncrona com o clock da placa-mãe, permitindo que a placa-mãe opere a 166
MHz, enquanto a memória opera a 200 ou 233 MHz, por exemplo. Ao usar um
módulo antigo, também é possível fazer o contrário, mantendo a placa-mãe a
200 MHz, mas configurando a memória para operar a 133 MHz, por exemplo:




                                                                        355
Muitas placas vão além, permitindo que você ajuste manualmente o valor CAS
da memória. Isso pode ser útil ao fazer overclock, pois um módulo DDR-400,
pode não conseguir trabalhar estavelmente a 233 MHz (por exemplo),
mantendo o CAS em 2 tempos, mas pode funcionar perfeitamente se o tempo
for aumentado para 3 tempos. O inverso também é possível. Um módulo DDR-
400 CAS3 poderia vir a trabalhar estavelmente com CAS 2 se a freqüência
fosse reduzida para 166 MHz, por exemplo, oferecendo uma boa flexibilidade
para quando você tem tempo disponível e quer chegar ao melhor desempenho
possível.

Algumas placas vão ainda mais longe, oferecendo conjuntos completos de
ajustes, como neste segundo screenshot:




                                                                       356
Brincar com a freqüência e tempos de acesso da memória não oferece riscos
para o equipamento. No máximo você pode precisar limpar o setup, para que o
micro volte a inicializar depois de tentar usar uma configuração não suportada
pelos módulos.

O maior risco está em aumentar a tensão usada pelos módulos (Memory
Voltage). É comprovado que pequenos aumentos na tensão aumentam a
possibilidade dos módulos trabalharem estavelmente a freqüências mais altas,
sobretudo nos módulos DDR2, que dissipam mais calor. O problema é que isso
também pode abreviar a vida útil dos módulos, por isso nem sempre é uma boa
idéia.

Aumentos de até 5 a 6% estão dentro do limite de tolerância dos circuitos e não
oferecem grandes riscos. Você pode usar 2.65v num módulo DDR ou 1.9v num
módulo DDR2, mas a partir daí existe prejuízo para a vida útil. Aumentos a
partir de 20% podem realmente queimar os módulos em poucas horas, por isso
as opções normalmente não ficam disponíveis.

Memórias DDR2

Seguindo a tendência inaugurada pelas memórias DDR, as DDR2 novamente
duplicam a taxa de transferência, realizando agora 4 operações por ciclo.
Novamente, as células de memória continuam trabalhando na mesma
freqüência anterior e o acesso inicial continua demorando aproximadamente o
mesmo tempo. Entretanto, as demais operações dentro do burst passam a ser
realizadas em apenas um quarto de ciclo de clock. Usando memórias DDR2,
um burst de 8 leituras demoraria apenas 6.75 ciclos de clock (5-¼-¼-¼-¼-¼-¼-
¼), contra 8.5 ciclos nas DDR e 12 nas SDR.

Como você pode ver, a diferença é maior em aplicativos que precisam
manipular grandes blocos de dados e menor em aplicativos que lêem

                                                                           357
pequenos blocos de dados espalhados. Em nenhuma situação prática a
transferência chega realmente a dobrar. Dizer que as "DDR2 são duas vezes
mais rápidas" é apenas uma figura de linguagem. :)

Em 2005, quando os primeiros módulos DDR2-533 chegaram ao mercado, eles
rapidamente ganharam a fama de "lentos", pois eram comparados a módulos
DDR-400 ou DDR-466, que já estavam entrincheirados. Embora um módulo
DDR2 ganhe de um DDR da mesma freqüência em todos os quesitos (um
DDR2-800 contra um DDR-400, por exemplo), o mesmo não acontece se
comparamos módulos de freqüências diferentes. Um DDR2-533 opera a
apenas 133 MHz, por isso acaba realmente perdendo para um DDR-400 (200
MHz) na maioria das aplicações, pois a ganho de realizar 4 operações por ciclo
acaba não sendo suficiente para compensar a diferença na freqüência de
operação das células de memória. Vale lembrar que um módulo DDR2-533
trabalha com tempos de latência similares a um módulo DDR-266.

Realizar bursts de leituras rápidas pode não ser a forma mais perfeita de criar
memórias mais rápidas (por causa do lento ciclo inicial), mas é sem dúvida a
mais simples e barata. A freqüência de operação das memórias aumenta de
forma gradual, conforme são melhoradas as técnicas de produção. Realizar
mais leituras por ciclo de clock é a única forma simples de melhorar a taxa de
transferência dos módulos.

Assim como no caso dos processadores, não é possível criar um processador
capaz de operar ao dobro do clock de uma hora para a outra, mas é possível
criar um processador dual-core, por exemplo. No caso das memórias é mais
simples, pois você pode ler vários endereços simultaneamente (ou quase),
fazendo apenas mudanças nos circuitos controladores.

Dependendo da fonte, você pode ler tanto que as memórias DDR2 operam ao
dobro da freqüência que as DDR quanto que elas realizam quatro
transferências por ciclo em vez de duas. Nenhuma das duas explicações estão
erradas, mas ambas são incompletas.

Como disse, as células de memória continuam trabalhando na mesma
freqüência das memórias SDR e DDR, mas os buffers de entrada e saída,
responsáveis por ler os dados, passaram a operar ao dobro da freqüência. É
justamente esta freqüência que é "vista" pelo restante do sistema, de forma
que a maioria dos programas de diagnóstico mostra a freqüência dobrada
usada pelos circuitos de entrada e não a freqüência real das células de
memória.

Devido a esta ambigüidade, não é errado dizer que os módulos DDR2 operam
ao dobro da freqüência dos DDR (os buffers e outros circuitos de apoio
realmente operam), nem que são realizadas 4 leituras por ciclo (já que as
células de memória continuam operando à mesma freqüência).

Ao realizar uma leitura, o controlador de memória gera quatro sinais distintos,
que ativam a leitura de quatro endereços adjacentes (4-bit prefetch). As quatro
leituras são feitas simultaneamente e os dados são entregues ao buffer, que se
encarrega de despachá-los através do barramento principal.

                                                                           358
Presumindo que o módulo DDR2 do exemplo operasse a 100 MHz, teríamos as
células de memória ainda operando na mesma freqüência, mas agora
entregando 4 leituras de setores seqüenciais por ciclo. Os buffers e o
barramento de dados operam agora a 200 MHz, de forma que as 4 leituras
podem ser enviadas em 2 ciclos, com duas transferências por ciclo. Os dois
ciclos do barramento são realizados no mesmo espaço de tempo que apenas
um ciclo das células de memória:




Como vimos, as células de memória podem ser grosseiramente comparadas a
uma planilha eletrônica, com inúmeras linhas e colunas. Não existe uma
grande dificuldade em ler vários endereços diferentes simultaneamente, desde
que o fabricante consiga desenvolver os circuitos de controle necessários.
Graças a isso, o desenvolvimento das memórias tem sido focado em realizar
mais leituras pro ciclo, combinada com aumentos graduais nas freqüências de
operação.

Quando as memórias DIMM surgiram, ainda na época do Pentium II, os
módulos mais rápidos operavam a 100 MHz (os famosos módulos PC-100).
Atualmente temos chips de memória de até 300 MHz que, combinados com as
4 leituras por ciclo, resultam em módulos com transferência teórica de até 9.6
GB/s:

      DDR2-533 (133 MHz) = PC2-4200
      DDR2-667 (166 MHz) = PC2-5300
      DDR2-800 (200 MHz) = PC2-6400
      DDR2-933 (233 MHz) = PC2-7500
      DDR2-1066 (266 MHz) = PC2-8500
      DDR2-1200 (300 MHz) = PC2-9600

O CAS latency dos módulos DDR2 é medido em termos de ciclos do circuito
controlador, por isso são normalmente o dobro do que nos módulos DDR. É
como em "duas unidades" ou "quatro metades", no final dá no mesmo ;). Um
módulo DDR2-800 com CAS latency 4 possui o mesmo tempo de acesso que
um DDR-400 com CAS latency 2.

Normalmente, as especificações das memórias DDR2 incluem não apenas o
CAS latency (tCL), mas também o RAS to CAS delay (tRCD), Row Precharge
Time (tRP) e RAS Activate to Charge (tRAS). Estes mesmos valores podem
ser encontrados nas especificações de módulos DDR e SDR, mas com as

                                                                          359
memórias DDR2 os fabricantes passaram a divulgá-los de forma mais aberta,
usando qualquer redução nos valores para diferenciar seus módulos dos
concorrentes. Temos então módulos DDR2-800 "4-4-4-12" ou "5-5-5-15", por
exemplo.

O primeiro número é o CAS latency, que já conhecemos. O seguinte é o RAS
to CAS delay, que é o tempo que o controlador precisa esperar entre o envio
do endereço RAS e o CAS. Para realizar uma leitura, o controlador envia o
sinal RAS, espera o tempo referente ao RAS to CAS delay, envia o sinal CAS,
aguarda o número de ciclos referente a ele e então finalmente tem a leitura. Em
um módulo DDR2 4-4-4-12, tanto o tCL quanto o tRCD demoram 4 ciclos, de
forma que o acesso inicial demoraria um total de 8 ciclos. Em um módulo 5-5-5-
15, o tempo subiria para 10 ciclos.

É importante lembrar (mais uma vez ;) que aqui estamos falando de ciclos dos
circuitos de acesso, que trabalham ao dobro da freqüência. Os 8 ciclos de um
módulo DDR2 equivalem ao mesmo espaço de tempo consumido por 4 ciclos
de um módulo DDR ou SDR.

Junto com o ciclo inicial, o controlador pode realizar um burst de mais 7 leituras
(totalizando 8). Cada uma destas leituras adicionais consome o equivalente a
meio ciclo do controlador (ou a um quarto de ciclo das células de memória).
Caso ele precise de mais dados dentro da mesma linha, ele repete o envio do
sinal CAS e realiza um novo burst de leituras.

Note que o controlador só precisa enviar o sinal RAS ao mudar a linha ativa, de
forma que o tRCD só entra na conta no primeiro acesso. Para os seguintes,
temos apenas o tempo referente ao tCL. Caso o controlador precise realizar 24
leituras (dentro da mesma linha), num módulo DDR2 4-4-4-12, teríamos 11.5
ciclos (8+3.5) para as 8 primeiras leituras e mais 15 ciclos (4+3.5+4+3.5) para
as 16 leituras subseqüentes. É por causa dessa peculiaridade que os módulos
DDR e DDR2 não possuem mais o "full-page mode" suportado pelas memórias
SDRAM; ele deixou de ser necessário.

O Row Precharge Time (tRP) entra em ação quando o controlador precisa
alternar entre diferentes linhas. Cada linha inclui 512 endereços de memória, o
equivalente a 4 KB de dados. As linhas são divididas em 4 ou 8 páginas, de
forma que um módulo DDR2 de 1 GB teria 8 páginas de 32.768 linhas, ou 4
páginas de 65.536 linhas. Com tantas linhas e páginas diferentes, não é difícil
imaginar que o chaveamento entre elas é muito freqüente. Quando falo em
linhas e páginas, tenha em mente que essa é apenas a forma como o
controlador de memória "enxerga" o módulo. Fisicamente, mesmo os bits de
uma mesma linha estão espalhados pelos vários chips do módulo.

Antes de poder acessar uma determinada linha, o controlador de memória
precisa carregá-la (precharge). Isso consiste em recarregar os capacitores
dentro das células de memória, facilitando a leitura dos dados. O Row
Precharge Time (tRP) é justamente o tempo necessário para fazer o
carregamento, necessário antes de chavear para outra linha, seja no mesmo
banco, seja num banco diferente.


                                                                              360
Sendo assim, mesmo que seja necessário ler um único setor, a leitura
demorará (em um módulo 4-4-4-12) 4 ciclos para o tRP, 4 ciclos para o tRCD, 4
ciclos para o tCL, totalizando 12 ciclos. Estes 12 ciclos são justamente o tempo
referente ao RAS Activate to Charge (tRAS), que é o tempo mínimo para
realizar uma leitura completa. O tRAS é sempre proporcional aos três primeiros
valores, pois é justamente a soma dos três. É por isso que ele sempre é mais
alto em módulos com CAS latency mais alto.

É possível reduzir o tRAS utilizando um recurso chamado Additive Latency,
onde o comando para iniciar o precharge do banco seguinte pode ser enviado
antes que a leitura atual termine. Isso faz com que o tempo total da leitura
seguinte seja reduzido em 1 ou até mesmo 2 ciclos. Esse é o caso dos
módulos 5-4-4-11 ou 4-4-4-11, por exemplo. Em outros casos é necessário um
ciclo adicional para fechar o banco, que aumenta o tRAS em vez de diminuir.
De qualquer forma, o tRAS é dos quatro o parâmetro que menos influi no
desempenho, pois só faz alguma diferença real quando o sistema precisa
realizar séries de acessos rápidos, a linhas diferentes.

Bem, esta última parte exigiu uma explicação mais complexa que o habitual.
Como você pode ver, os tempos de acesso dos módulos DDR2 é um pouco
mais complexo do que pode parecer à primeira vista.

Entretanto, o mais importante dos 4 valores continua sendo o primeiro (o bom e
velho CAS latency, ou tCL), já que o tRCD e o tRP são quase sempre iguais a
ele e o tRAS é a soma dos três. Ou seja, se o CAS latency é mais baixo,
automaticamente os demais valores também são.

Memórias DDR3

O lançamento das memórias DDR2 teve um impacto diferente para a Intel e a
AMD. Para a Intel, a migração para as memórias DDR2 foi mais simples, já que
o controlador de memória é incluído no chipset, de forma que aderir a uma
nova tecnologia demanda apenas modificações nos chipsets e placas.

A Intel oferece suporte a memórias DDR2 em seus chipsets desde o i915P,
lançado em 2004. Inicialmente, os chipsets ofereciam tanto suporte a memórias
DDR quanto DDR2, de forma que ficava a cargo do fabricante escolher qual
padrão utilizar. Existem inclusive placas híbridas, que suportam ambos os
padrões, como a ECS 915P-A, que possuem dois slots de cada tipo, permitindo
que você escolha qual padrão utilizar. A partir de um certo ponto, entretanto, as
memórias DDR2 caíram de preço e quase todas as placas soquete 775
passaram a vir com suporte exclusivo a memórias DDR2.

Para a AMD, a mudança foi mais tortuosa, já que o Athlon 64 e derivados
utilizam um controlador de memória embutido diretamente no processador,
desenvolvido de forma a minimizar os tempos de acesso.

Por um lado isto é bom, pois oferece um ganho real de desempenho, mas por
outro é ruim, pois qualquer mudança no tipo de memória usado demanda
mudanças no processador e no soquete usado. Foi justamente isso que
aconteceu quando a AMD decidiu fazer a migração das memórias DDR para as
DDR2. Além das mudanças internas no processador e controlador de memória,
                                                                             361
o soquete 754 foi substituído pelo soquete 939 e em seguida pelo AM2,
quebrando a compatibilidade com as placas antigas.

Com a adoção por parte da AMD, a procura (e conseqüentemente a produção)
das memórias DDR2 aumentou bastante, fazendo com que os preços
passassem a cair rapidamente.

A partir do final de 2006, os preços dos módulos de memória DDR2 (nos EUA)
caíram a ponto de passarem a ser mais baratos que os módulos DDR
regulares. Como sempre, as mudanças chegam ao Brasil com alguns meses
de atraso, mas a partir do início de 2007 as memórias DDR2 passaram a ser
encontradas por preços inferiores às DDR por aqui também. Como sempre,
módulos de alto desempenho (como os Corsair Dominator) chegam a custar
até duas vezes mais caro, mas em se tratando de memórias genéricas, os
preços caíram muito.

Outra questão importante é a popularização de módulos DDR2-1066 e também
de módulos de baixa latência, com temporização de 4-4-3-11, ou mesmo 3-3-3-
9. Ao contrário da geração inicial de módulos DDR2, que ofereciam mais
banda, mas em compensação trabalhavam com tempos de acesso muito mais
altos, esta segunda geração de módulos DDR2 é indiscutivelmente mais
rápida. O ganho prático em utilizar memórias DDR2 não é muito grande, pois o
barramento com a memória é apenas um dos fatores que determina o
desempenho do PC. Mas, a partir do momento em que os módulos DDR2
passam a ser mais baratos, qualquer ganho, por menor que seja, é muito bem-
vindo.

Enquanto ainda estávamos nos acostumando com as memórias DDR2, a Intel
apertou o passo e incluiu o suporte ao padrão seguinte no chipset P35, lançado
oficialmente em junho de 2007.

Como sugere a lógica, as memórias DDR3 realizam 8 acessos por ciclo, contra
os 4 acessos por ciclo das memórias DDR2. Assim como na tecnologia
anterior, os acessos são realizados a endereços subjacentes, de forma que
não existe necessidade de aumentar a freqüência "real" das células de
memória.

Inicialmente, os módulos DDR3 foram lançados em versão DDR3-1066 (133
MHz x 8) e DDR3-1333 (166 MHz x 8), seguidos pelo padrão DDR3-1600 (200
MHz x 8). Os três padrões são também chamados de (respectivamente) PC3-
8500, PC3-10667 e PC3-12800, nesse caso dando ênfase à taxa de
transferência teórica.

Apesar do aumento no número de transferências por ciclo, os buffers de dados
continuam trabalhando a apenas o dobro da freqüência das células de
memória. Ou seja, a freqüência interna (das células de memória) de um módulo
DDR3-1600 é de 200 MHz e a freqüência externa (dos buffers de dados) é de
400 MHz. As células de memória realizam 8 transferências por ciclo de clock
(em vez de 4, como nas DDR2) e os buffers de dados (que operam ao dobro
da freqüência) realizam 4 transferências por ciclo de clock, em vez de apenas
duas, como nos módulos DDR2.

                                                                          362
Com isso, chegamos à freqüência de 1600 MHz divulgada, que, como pode
ver, é obtida através do aumento do número de transferências realizadas por
ciclo e não através do aumento do clock "real" das células de memória ou dos
buffers de dados. Se as mudanças parassem por aí, os módulos DDR3 não
ofereceriam ganhos muito grandes na prática, pois o tempo de latência inicial
continuaria sendo o mesmo que nos módulos DDR2 (já que não houve
mudança na freqüência das células de memória). Se um módulo DDR3
operasse com tempos de acesso 10-10-10-30, os ganhos seriam pequenos em
relação a um DDR2 5-5-5-15, já que só haveria ganho nos acessos
subseqüentes.

Para evitar isso, os módulos DDR3 incluem um sistema integrado de
calibragem do sinal, que melhora de forma considerável a estabilidade dos
sinais, possibilitando o uso de tempos de latência mais baixos, sem que a
estabilidade seja comprometida.

Os módulos DDR3 utilizam também 8 bancos em vez de 4, o que ajuda a
reduzir o tempo de latência em módulos de grande capacidade. Elas também
trouxeram uma nova redução na tensão usada, que caiu para apenas 1.5V, ao
invés dos 1.8V usados pelas memórias DDR2. A redução na tensão faz com
que o consumo elétrico dos módulos caia proporcionalmente, o que os torna
mais atrativos para os fabricantes de notebooks.

Somadas todas essas melhorias, os tempos de acesso "reais" dos módulos
foram sensivelmente reduzidos. Em vez de de trabalharem com tempos de
acesso 10-10-10-30, a geração inicial de módulos DDR3 é capaz de trabalhar
com temporização 9-9-9-24, ou mesmo 7-7-7-15.

Apesar disso, muitos módulos de alto desempenho podem precisar de tensões
mais altas, como 1.6V ou mesmo 1.7V para trabalharem na freqüência máxima.
Assim como no caso dos módulos DDR2, os fabricantes podem ajustar a
tensão de operação de acordo com as necessidades do projeto e você pode
também utilizar tensões mais altas por conta própria ao fazer overclock.

Os módulos DDR3 utilizam os mesmos 240 contatos dos módulos DDR2 e
mantém o mesmo formato. A única diferença visível (fora etiquetas e códigos
de identificação) é a mudança na posição do chanfro, que passou a ser
posicionado mais próximo do canto do módulo. O chanfro serve justamente
para impedir que módulos de diferentes tecnologias sejam encaixados em
placas incompatíveis.




                                                                         363
Módulo DDR3

As memórias DDR2 demoraram quase 3 anos para se popularizarem desde a
introdução do chipset i915P, em 2004. As memórias DDR3 devem passar por
um caminho similar, com os módulos inicialmente custando muito mais caro e
caindo ao mesmo nível de preço dos módulos DDR2 apenas por volta de 2009.
Não existe nada de fundamentalmente diferente nos módulos DDR3 que os
torne mais caros de se produzir, o preço é determinado basicamente pelo
volume de produção.

Assim como no caso das memórias DDR2, a maior taxa de transferência
oferecida pelas memórias DDR3 resulta em um ganho relativamente pequeno
no desempenho global do sistema, de apenas 1 a 3% na maioria dos
aplicativos, por isso não vale a pena pagar muito mais caro por módulos DDR3
ao comprar. Enquanto eles estiverem substancialmente mais caros, continue
comprando (e indicando) placas com suporte a módulos DDR2.

Na culinária, quem é apressado come cru. No mundo da informática os efeitos
colaterais são ainda piores, já que quem é apressado paga mais caro. :)

Até o momento, o uso de memórias DDR3 está limitado à plataforma Intel, com
os chipsets P35, G33, G35 e X38. No caso da AMD, a adoção ainda está
indefinida, já que o suporte às memórias DDR3 depende de uma nova
mudança no controlador de memória integrado e (possivelmente) também no
soquete usado pelos processadores. Além disso, a história mostra que a Intel é
quase sempre a primeira a adotar e popularizar novas tecnologias (como as
memórias DDR2 e o PCI-Express), enquanto a AMD geralmente prefere
esperar até que elas estejam maduras e o custo tenha caído.

Identificando módulos de memória defeituosos

Apesar da complexidade, não é muito comum um processador vir com defeito
de fábrica, geralmente eles são testados antes do encapsulamento e os que
não funcionam são simplesmente descartados. O problema mais comum com
relação a eles são os casos de superaquecimento, que podem ser resolvidos
com a limpeza do cooler ou uma ventilação adequada.

Mas, não podemos dizer o mesmo dos módulos de memória, onde os defeitos
são muito mais comuns e infelizmente mais difíceis de detectar. Um agravante
é que existem muitos fabricantes diferentes de memórias, todos trabalhando
com margens muito baixas. Como a maior parte dos usuários e integradores

                                                                          364
compra mais pelo preço, acaba levando pra casa módulos genéricos que
muitas vezes não são adequadamente testados em fábrica.

A placa-mãe também pode ser responsável por vários erros, já que ela é a
encarregada de transportar os dados dos módulos de memória até o
processador. Se a placa-mãe corromper os dados pelo caminho você terá
travamentos e outros sintomas semelhantes aos causados por um módulo de
memória com defeito. Esses erros são cruéis, pois são muitas vezes difíceis de
perceber. Eles muitas vezes são confundidos com problemas do sistema
operacional.

Seja qual for a causa, erros de memória podem causar muita dor de cabeça,
então a melhor forma de lidar com o problema é rodar um teste completo
sempre que você montar um PC ou instalar um novo módulo de memória.

Existem inúmeros programas desse tipo, um dos melhores é o Memtest86,
disponível no:
http://www.memtest86.com/

A grande vantagem do memtest86 sobre outros testes de memória é que além
de pequeno, gratuito e de código aberto, ele é quase automático. Você precisa
apenas gravar um CD ou disquete e dar boot para que o teste seja iniciado
automaticamente. Ele fica num loop eterno, repetindo os testes e indicando os
erros que encontrar até que você se sinta satisfeito.

Existem duas opções de download. O mais prático é baixar uma imagem ISO,
que pode ser usada para fazer um CD bootável. O arquivo tem apenas 64 kb
compactado e 1.6 MB depois de descompactado. No site você vai encontrar
também os programas para gerar o disquete de boot no Windows e Linux.
Tanto faz usar o CD ou o disquete, o programa é exatamente o mesmo.

É necessário dar boot diretamente no Memtest para que ele possa testar
realmente toda a memória do sistema. Se ele rodasse como um programa
sobre o Linux ou Windows, não teria como acessar áreas utilizadas pelo
sistema e programas, e o teste não seria confiável.

O Memtest86 realiza um total de 9 testes. Os 5 primeiros são relativamente
rápidos, mas os 4 testes finais são muito mais rigorosos, capazes de encontrar
erros não detectados pelos testes iniciais, mas em compensação muito
demorados. Os 8 testes são executados automaticamente, mas o nono (veja
detalhes a seguir) precisa ser ativado manualmente, já que é muito demorado.
O ideal é deixar o teste correndo em loop durante a madrugada e olhar os
resultados no outro dia de manhã.

Se, por acaso, a tabela inicial do Memtest86 informar incorretamente a
quantidade de memória, acesse a opção "3" (memory sizing) e a opção "3"
(probe). Isso fará com que o Memtest86 detecte a memória, desprezando as
informações do BIOS. Na tela principal, pressione a tecla 5 para ter um sumário
com todos os erros encontrados em cada teste:



                                                                           365
Basicamente é isto, não existe muita configuração a fazer. A alma do negócio é
ter paciência e deixar ele fazer seu trabalho, se possível por tempo suficiente
para realizar o teste longo.

O tempo necessário varia de acordo com o desempenho e principalmente com
a quantidade de memória instalada. Dobrar a quantidade de memória dobra o
tempo do teste. Usar um processador mais rápido tem pouca influência, pois o
gargalo é a velocidade de acesso à memória, não o processamento.

O Memtest86 já vem pré-instalado em muitas distribuições, aparecendo como
uma opção de boot no menu de boot. Você pode utilizar também o CD de uma
versão recente do Knoppix ou do Kurumin, utilizando a opção "memtest" na
tela de boot.

Vamos entender o que faz cada um dos testes:

      Teste 0 (Address test, walking ones, no cache): Simplesmente testa o
      acesso a todos os endereços da memória, algo semelhante com o que o
      BIOS faz na contagem de memória durante o boot. Ele é o teste mais
      rápido e serve basicamente para checar a quantidade de memória
      disponível.

      Teste 1 (Address test, own address): Este teste é semelhante ao 0, mas
      adota uma estratégia diferente, checando endereços e não apenas
      realizando uma contagem rápida. Isso permite detectar problemas de
      endereçamento no módulo. Outra diferença é que este teste é feito sem
      utilizar os caches do processador, para evitar que ele mascare defeitos
      nos módulos.


                                                                           366
Teste 2 (Moving inversions, ones&zeros): Escreve bits 1 e depois bits 0
em todos os endereços da memória. Este algoritmo também utiliza os
caches L1 e L2 do processador. É um teste rápido que identifica os erros
mais grosseiros, onde algumas células do módulo estão realmente
queimadas.

Teste 3 (Moving inversions, 8 bit pat): É aqui que os testes para detectar
erros mais complexos começam. O terceiro teste escreve seqüências de
dados de 8 bits, repetindo o teste 20 vezes com seqüências diferentes.

Teste 4 (Moving inversions, random pattern): Este teste é similar ao
teste número 3, mas dessa vez usando uma seqüência randômica de
acessos, que é repetida um total de 60 vezes. Parece um grande
exagero, já que este teste é destinado a identificar os mesmos erros que
o teste 3, mas é justamente essa "insistência" e uso de diversas
seqüências diferentes de operações que torna o memtest tão confiável
na detecção de erros, capaz de detectar erros raros ou transitórios, que
não aparecem em outros testes.

Teste 5 (Block move, 64 moves): É um pouco mais rigoroso que o teste
4. Continua movendo dados de um endereço para outro da memória,
mas agora são movidos blocos de 4 megabits de cada vez. Este teste é
repetido 64 vezes.

Teste 6 (Moving inversions, 32 bit pat): Os dados gravados em cada bit
de memória são lidos e movidos para o endereço adjacente. É mais ou
menos uma combinação dos três testes anteriores, pois testa o
endereçamento, leitura e escrita de dados. A operação é repetida 32
vezes no total, para testar todas as combinações possíveis.
Este teste detecta um tipo de erro muito comum que é a "contaminação"
de endereços. Isso ocorre quando, por um defeito de fabricação, o
isolamento elétrico entre duas ou mais células de memória fica muito
fino, permitindo que os elétrons saltem de um para o outro. Isso faz com
que ao gravar um dos bits o outro também seja gravado com o mesmo
valor. Esse tipo de problema pode ser bastante intermitente,
acontecendo apenas quando o segundo bit estiver com um valor zero,
ou apenas esporadicamente, daí a necessidade de tantas repetições.

Teste 7 (Random number sequence): Para eliminar qualquer dúvida, são
agora escritas seqüências de números randômicos, preenchendo todos
os endereços da memória. Os números são conferidos em pequenos
blocos e o teste é repetido diversas vezes.

Teste 8 (Modulo 20, ones&zeros): Este teste é basicamente uma
repetição do teste 7, mas agora utilizando um algoritmo diferente,
chamado "Modulo-X", que elimina a possibilidade de qualquer defeito ter
passado despercebido pelos testes anteriores por ter sido mascarado
pelos caches L1 e L2 ou mesmo pelos registradores do processador.
Note que tanto o teste 7 quanto o 8 são bastante demorados e servem
apenas para detectar erros extremamente raros, eliminando qualquer


                                                                      367
dúvida sobre a saúde dos módulos. Eles foram criados realmente como
      um exercício de perfeccionismo.

      Teste 9 (Bit fade test, 90 min, 2 patterns): Este é um teste final, que
      permite detectar erros raros relacionados com os circuitos de refresh, ou
      soft-erros causados por fatores diversos, que alterem os dados
      armazenados.
      No teste, todos os endereços são preenchidos usando uma seqüência
      de valores pre-definidos. O programa aguarda 90 minutos e verifica os
      dados gravados, anteriormente. Esses dados são produzidos usando
      seqüências matemáticas, de forma que o programa só precisa repetir as
      mesmas operações na hora de verificar, sem precisar guardar uma cópia
      de        tudo       que        gravou       em       algum        lugar.
      Em seguida, a mesma seqüência é gravada novamente, mas desta vez
      com os dígitos invertidos (o que era 1 vira 0 e o que era 0 vira 1). O
      programa aguarda mais 90 minutos e checa novamente.
      Este teste demora mais de três horas, por isso não é executado
      automaticamente junto com os outros 8. Pense nele como um último
      refúgio                para                os                 paranóicos.
      Para executá-lo, pressione "C", depois "1" (Test Selection) e em seguida
      "3" (Select Test). Na opção "Test Number [1-9]" pressione "9" e em
      seguida "0" (Continue).

Ao detectar um erro, a primeira providência é trocar o módulo de memória e
refazer o teste. Em alguns casos o problema pode não ser no módulo, mas sim
na placa-mãe. Em alguns casos mais raros pode ser até mesmo que tanto o
módulo quanto a placa estejam bons, e o problema seja apenas algum tipo de
incompatibilidade entre eles. Eu observei isso na Tyan Tiger MPX que testei
em 2001. A placa só ficou completamente estável com o terceiro módulo de
memória que testei, sendo que os dois primeiros não tinham defeitos e
passaram no teste do memtest86 depois de instalados em outros micros.

Um dos motivos era que essa placa utiliza um valor CAS de 2.5 ciclos (valor
fixo), uma configuração incomum para a época. Assim como ela, muitas outras
placas utilizam configurações incomuns, que podem causar incompatibilidades
com memórias de algumas marcas. Jamais jogue fora um módulo com erros
antes de testá-lo em outra placa-mãe diferente, pois ele pode estar bom.

Experimente também baixar a freqüência de operação da memória, ou do FSB
para testar o módulo em freqüências mais baixas que as nominais. Muitas
vezes um módulo danificado por estática ou por variações nas tensões
fornecidas pela fonte pode deixar de funcionar estavelmente na freqüência
máxima, mas continuar suportando freqüências mais baixas.

Outra dica é limpar cuidadosamente o módulo, removendo a poeira acumulada
e limpando os contatos usando uma borracha de vinil (as borrachas de escola,
do tipo que não esfarela). Na falta de uma, você também pode usar uma nota
de real (com exceção das de R$ 10, que são de plástico) em bom estado. O
papel moeda é abrasivo e realmente limpa os contatos na medida certa.



                                                                           368
Aqui temos um módulo de 512 MB danificado por estática, flagrado pelo teste.
Veja que foram identificados diversos endereços defeituosos. A lista mostra
apenas os primeiros erros, mas pressionando a tecla "C" e depois "4" (error
summary), é possível ver o número total. Nesse caso, o módulo tinha nada
menos do que 222 endereços defeituosos. Além de identificar os erros, o
memtest mostra a partir de qual MB do módulo eles começam. Pelo
screenshot, você pode ser que eles começam a partir do 433° MB:




No caso de módulos em que os erros aparecem logo nos primeiros endereços,
não existe o que fazer, pois eles farão com que o sistema trave logo no início
do boot. Módulos onde os defeitos se concentram no final (como esse do
exemplo) ainda podem ser usados para testes, pois o sistema acessa sempre a
memória a partir do começo, deixando os últimos endereços do módulo por
último. Enquanto você estiver rodando aplicativos leves e o sistema não
acessar os endereços defeituosos do módulo, tudo funciona normalmente.

No Linux é possível orientar o sistema a utilizar apenas o começo do módulo,
ignorando os endereços a partir da onde começam os erros. Isso é feito
passando a opção "mem=384M" (onde o "384" é a quantidade de memória que
deve ser usada) para o Kernel na tela de boot.

Isso varia um pouco de distribuição para distribuição. No Knoppix você digitaria
"knoppix mem=384M" na tela de boot, no Kurumin seria "kurumin mem=384M".
No Ubuntu é preciso pressionar a tecla "F6" e em seguida adicionar o
"mem=384M" (sem mexer nas demais opções da linha):




                                                                            369
No caso do Windows XP, é possível usar a opção "/maxmem=". Adicione a
linha no arquivo "boot.ini", especificando a quantidade de memória que deve
ser utilizada (em MB), como em "/maxmem=384". Esta alteração pode ser feita
também através do msconfig, através da aba "Boot.ini > Opções Avançadas".

Depois de concluído o boot, você pode confirmar usando o comando "free",
que reporta o uso de memória. Você verá que independentemente da
capacidade real do módulo, o sistema usa a memória apenas até o MB
especificado na opção. Essa dica permite aproveitar a parte "boa" do módulo
em algum micro usado para aplicações leves, ao invés de ter que jogá-lo fora.

Não se esqueça de etiquetar os módulos defeituosos (ou o micro onde eles
forem instalados), indicando a partir de qual MB foram identificados endereços
defeituosos. Assim você evita de ter de executar o teste novamente cada vez
que precisar reinstalar o sistema, ou instalar os módulos em outro micro.

Além do memtest86 e outros softwares, também existem testadores de
memória dedicados, que executam uma seqüência de testes automatizados,
que além de detectar defeitos, identificam as características do módulo, como a
freqüência suportada, CAS latency e assim por diante. Estes testadores são
caros e, para ser sincero, o teste não é tão confiável quanto a seqüência do
memtest. A vantagem é que eles permitem testar um grande número de
módulos em pouco tempo, de forma prática, por isso podem ser interessantes
para distribuidores e lojas.

Duas das maiores empresas nesse segmento são a
http://www.memorytest.com/ e a http://www.simmtester.com/, onde você pode
se informar sobre os preços e os modelos disponíveis.



                                                                           370
Testador de memória

Limites no endereçamento da memória

Assim como no caso dos HDs, existiram diversos limites com relação ao
endereçamento da memória RAM durante a história dos micros PCs, causados
por limitações do sistema operacional, limitações do chipset e limitações dos
processadores. Mesmo os processadores e sistemas operacionais de 64 bits
possuem limites com relação à quantidade máxima de memória que pode ser
endereçada, embora muito mais elevados. As versões originais do Athlon 64
são capazes de endereçar até 1 terabyte de memória RAM
(independentemente da placa-mãe usada) e este limite pode ser expandido no
futuro. O grande problema são os processadores e os sistemas operacionais
de 32 bits.

Tudo começou com o limite de 640 KB de memória do processador 8088,
usado nos primeiros PCs. Na verdade, o 8088 utilizava um total de 20 bits para
o endereçamento da memória, divididos em 16 bits "nativos", que permitiam
endereçar páginas de 64 KB e mais 4 bits adicionais, que permitiam endereçar
16 páginas, totalizando 1 MB.

Por decisão da equipe de desenvolvimento, apenas os primeiros 640 KB
(chamados de memória convencional) ficavam disponíveis para uso do sistema
operacional e aplicativos. Os 384 KB restantes (chamados de memória
extendida) eram usados para endereçar a memória presente em outros
dispositivos, como o BIOS da placa-mãe e a memória da placa de vídeo.

Na época dos primeiros PCs, a memória RAM era muito cara, de forma que
não era comum o uso de mais do que 256 KB, mas, mesmo que fosse utilizado
1 MB completo, apenas os primeiros 640 KB ficariam disponíveis. Os 384 KB
adicionais podiam ser utilizados para fazer cache do BIOS e da memória da
placa de vídeo (o que melhorava o desempenho), mas não para uso geral.

Para manter compatibilidade com os aplicativos antigos, mesmo os
processadores atuais são capazes de operar em modo real, onde simulam o
funcionamento de um 8088, acessando apenas os primeiros 640 KB de
                                                                          371
memória. É dentro deste limite que rodam o MS-DOS e aplicativos antigos.
Quando o Windows, Linux ou qualquer sistema operacional é carregado, o
processador passa para o modo protegido, onde é capaz de acessar toda a
memória disponível.

Desde o 386, todos os processadores utilizam 32 bits para o endereçamento
da memória, o que permite endereçar até 4 GB. Esse limite é chamado de VAS
(Virtual Address Space) e indica justamente o total de memória que o sistema é
capaz de endereçar, incluindo não apenas a memória RAM, mas também a
memória da placa de vídeo e outros dispositivos. O problema reside justamente
aí.

Imagine que você resolvesse montar um PC topo de linha, usando 4 GB de
memória RAM e duas placas de vídeo GeForce 7950 GX2 em SLI. A 7950 GX2
possui nada menos do que 1 GB de memória RAM, de forma que duas placas
totalizam 2 GB. Como a memória das placas de vídeo consomem espaço do
Virtual Address Space, o sistema seria capaz de acessar apenas os primeiros 2
GB da memória (um pouco menos na prática, já que mais alguns blocos serão
reservados a outros dispositivos), de forma que usar 4 GB acabam sendo um
desperdício de dinheiro.

Isso ocorre não apenas ao utilizar um processador de 32 bits, mas também ao
utilizar um processador de 64 bits em conjunto com um sistema operacional de
32 bits, incluindo o Windows XP e as versões de 32 bits do Vista.

De uma forma geral, não é recomendável utilizar mais do que 3 GB ao utilizar
um sistema operacional de 32 bits, pois é justamente a área entre os 3 e 4 GB
do Virtual Address Space que são utilizadas pelo processador para endereçar a
memória de dispositivos diversos. Assim como dois corpos não podem ocupar
o mesmo espaço ao mesmo tempo, dois dispositivos não podem compartilhar a
mesma área de endereços, o que faz com que porções da memória RAM que
invadam áreas reservadas a outros dispositivos simplesmente não sejam vistas
pelo sistema.

Você pode verificar as áreas de memória reservadas através do gerenciador de
dispositivos do Windows, usando a opção Exibir > Recursos por tipo >
Memória:




                                                                          372
Os endereços fornecidos aqui estão em hexa, mas você pode usar a própria
calculadora do Windows para convertê-los em números decimais. No caso, por
exemplo, tenho a placa de vídeo utilizando os endereços C8000000 a
CFFFFFFF, que correspondem aos bytes de 3.355.443.200 a 3.489.660.927 e
uma série de dispositivos a partir do "Recursos da placa-mãe" que ocupam
praticamente todos os endereços do byte 3.758.096.384 ao 4.294.967.295 (que
corresponde justamente ao final da área de 4 GB endereçada pelo sistema). Se
instalasse uma placa 3D offboard, com 256 MB, ela ocuparia os bytes de
3.221.225.472 a 3.489.660.927, que correspondem justamente aos 256 MB da
placa.

Se você se contentar em utilizar uma placa de vídeo low-end, pode ficar com
até 3.5 GB de endereços disponíveis, dependendo do sistema operacional
usado.

No caso das versões de 32 bits do Vista, por exemplo, o limite máximo
(segundo o http://support.microsoft.com/kb/929605) é de 3.12 GB. Ou seja, na
maioria dos casos, não vale a pena pagar por mais 4 GB de memória, já que
apenas uma pequena parte do último GB seria utilizada. Melhor se contentar
com 3 GB.

Mesmo ao utilizar um processador de 64 bits, combinado com um sistema
operacional de 64 bits, um grande volume de endereços entre os 3 e 4 GB de
memória continuam reservados, de forma a manter compatibilidade com os
programas de 32 bits, fazendo com que, novamente, pelo menos 512 MB entre
os 3 e 4 GB da memória não sejam usados. A vantagem nesse caso é que
você pode instalar mais de 4 GB de memória. Com 8 GB, por exemplo, você
ficaria com de 7 a 7.5 GB utilizáveis.

                                                                         373
Algumas placas de 64 bits oferecem a opção "Memory Hole Remapping" (ou
similar) no setup. Ao ativar esta opção, as áreas de memória reservadas aos
dispositivos é movida para uma área mais alta do Virtual Address Space (que
nos processadores de 64 bits é muito maior), liberando a maior parte da
memória antes inacessível por causa deles.

Outras placas suportam o Memory Hoisting (da palavra "hoist", que significa
levantar ou suspender), um recurso que segue outro princípio, deixando os
endereços dos dispositivos onde estão e remapeando os trechos de memória
subscritos por eles para áreas mais altas do espectro de endereços, permitindo
que o sistema tenha acesso a elas.

Uma observação é que estas duas opções causam muitos problemas de
compatibilidade com aplicativos, por isso você só deve utilizá-las caso
realmente faça questão de ter acesso à toda a memória instalada.

Além das limitações relacionadas ao Virtual Address Space, existem outros
limites de memória, impostos pelo chipset ou por limitações do sistema
operacional usado.

A maioria dos chipsets antigos, para placas soquete 7, por exemplo, eram
capazes de endereçar apenas 128 ou 256 MB de memória RAM. O chipset
Intel i815, usado em uma grande parte das placas para processadores Pentium
III e Celeron era capaz de endereçar apenas 512 MB, enquanto o 915GL (para
o Pentium 4) era capaz de endereçar 2 GB. Até pouco tempo atrás, o suporte a
4 GB ou mais de memória estava restrito a alguns chipsets destinados a
servidores.

O Windows 95/98/SE é capaz de endereçar até 512 MB de memória RAM.
Programas como o cacheman permitem utilizar estas versões antigas do
Windows em PCs com mais de 512 MB de RAM, mas o desempenho acaba
sendo pior do que com apenas 512.

O Windows XP e as versões de 32 bits do Vista são capazes de endereçar 4
GB, de forma que o limite fica por conta do Virtual Address Space. O maior
problema são as versões "populares" do Windows, onde o limite é
artificialmente reduzido, de forma a restringir o uso do sistema aos PCs de
baixo custo. O XP Starter possui um limite de 256 MB, enquanto o Vista Starter
está limitado a 1 GB.

Nas versões de 64 bits do Vista, os limites são estendidos, mas ainda existem
limitações. O Vista Home Basic está limitado a 8 GB, o Home Premium a 16
GB e as demais versões (Business, Enterprise e Ultimate) a 128 GB.

A memória swap não entra na conta, pois ela é acessada através de um
componente especializado incluído no processador, chamado de MMU
(Memory Management Unit) que permite justamente que dados armazenados
na memória RAM física sejam movidos para a memória swap (que é na
verdade um arquivo ou partição no HD), conforme necessário.

Graças ao MMU é possível complementar os 3 ou 3.5 GB de memória RAM
física com uma quantidade indefinida de memória swap, limitada apenas ao

                                                                          374
máximo suportado pelo sistema operacional. A principal questão é que o uso
da memória swap é muito limitado em um PC atual, já que ela é muito lenta.

Uma dúvida comum é com relação ao uso do PAE (Physical Address
Extension), uma extensão para processadores de 32 bits, presente desde o
Pentium Pro, que adiciona 4 bits adicionais ao endereçamento da memória,
permitindo que o processador seja capaz de acessar até 16 páginas de 4 GB
cada, totalizando 64 GB. Cada programa continua restrito a um máximo de 4
GB, mas o sistema pode alocar diferentes páginas para aplicativos diferentes,
utilizando assim toda a memória disponível.

O PAE é muito usado em servidores, embora esteja sendo rapidamente
substituído pelo uso de processadores e sistemas operacionais de 64 bits. Ele
é suportado pelo Windows Server 2003 e pelo Windows 2000, onde pode ser
ativado através da opção "/PAE" no arquivo boot.ini, mas não é uma solução
viável para quem precisa usar mais do que 4 GB de memória em um desktop,
devido a uma série de problemas relacionados a drivers.

O PAE apresenta endereços de 64 bits aos drivers, o que torna necessário que
eles sejam modificados para utilizar o sistema. Como o uso do PAE sempre foi
limitado a servidores, muitos dispositivos não possuem drivers compatíveis e
nem sempre é fácil encontrar os disponíveis. Existem ainda problemas de
compatibilidade com diversos aplicativos. Atualmente, é muito mais simples
migrar para as versões de 64 bits do Vista (ou mesmo para o XP de 64 bits) do
que passar a utilizar o PAE, de forma que é melhor não perder tempo com ele
no caso dos desktops.

Outro problema fundamental do PAE é a questão do desempenho. O
processador continua sendo capaz de acessar apenas 4 GB de memória por
vez e precisa chavear continuamente entre as páginas disponíveis. Além de
demorar um certo tempo, cada chaveamento faz com que os dados
armazenados nos caches precisem ser completamente substituídos, o que
prejudica de forma perceptível o desempenho. Ou seja, tentar usar o PAE em
um desktop para acessar mais memória e assim melhorar o desempenho é
simplesmente contra produtivo. :)

Uma observação importante é que todas as versões do Windows XP, a partir
do SP2 tem o PAE desativado, justamente para evitar problemas de
compatibilidade. Nele, a opção "/PAE" no boot.ini simplesmente não faz nada.

No caso do Linux, o modo de acesso à memória é escolhido durante a
compilação do Kernel.

Ao utilizar um processador de 32 bits, o Linux oferece suporte nativo a até 4
GB de memória usando o modo normal de operação do processador e a até 64
GB usando o PAE. Ou seja, ele simplesmente acompanha o suporte disponível
no hardware, sem nenhuma limitação adicional.

Para melhorar o desempenho do sistema em máquinas antigas, que utilizam 1
GB de memória ou menos, existe uma terceira opção, onde o Kernel endereça
apenas 1 GB de memória, sendo que 896 MB ficam disponíveis para os
aplicativos e o restante é reservado para uso do Kernel. Neste modo de
                                                                          375
operação, o comando "free" vai reportar que existem apenas 896 MB de
memória disponível, mesmo que você possua 1 GB ou mais.

É possível escolher entre as três opções ao compilar o Kernel, na opção
"Processor Type and Features > High Memory Support". Até por volta de 2005,
muitas distribuições vinham com o suporte a apenas 1 GB ativado por padrão,
mas atualmente a grande maioria utiliza a opção "4 GB". É possível mudar a
opção ao recompilar o Kernel manualmente.

A desvantagem de ativar o suporte a 4 GB é que o sistema ficará um pouco
mais lento em micros com menos de 1 GB de memória (justamente por isso
existe a primeira opção). O suporte a 64 GB só pode ser ativado caso você
esteja usando um processador com suporte ao PAE, além de uma placa-mãe
compatível.

Naturalmente, tudo isso se aplica apenas ao usar uma distribuição com um
Kernel compilado para processadores de 32 bits. Ao usar uma versão de 64
bits, o Kernel acessa toda a memória disponível, limitado apenas ao volume de
memória suportado pelo chipset ou processador.

Voltando ao mundo Windows, existe mais uma limitação importante, que é o
limite de 2 GB por aplicativo. Os 3, 3.12 ou 3.5 GB de memória que um sistema
de 32 bits é capaz de endereçar é repartida entre todos os programas abertos,
mas no caso do Windows, cada programa sozinho não pode usar mais do que
2 GB.

Isso acontece por que, assim como o sistema operacional, os programas de 32
bits endereçam a memória utilizando endereços de 32 bits e por isso são
capazes de endereçar 4 GB de memória. No Windows, metade da faixa de
endereços de cada programa é reservada para uso do kernel, sobretudo para a
comunicação entre o sistema operacional e o aplicativo. Com isso, cada
aplicativo fica com apenas metade da sua área de endereços disponível, o que
limita seu uso de memória a 2 GB.

Isso vem se tornando uma limitação importante em alguns games e aplicativos
pesados, que podem exceder este limite nos momentos de maior atividade.
Pior, além de não acessarem toda a memória disponível, os aplicativos de 32
bits freqüentemente travam sem aviso ao romper a barreira dos 2 GB, exibindo
alguma mensagem de erro genérica.

Este limite está profundamente enraizado no sistema, de forma que é quase
impossível que ele venha a ser removido em futuras versões. Ele afeta tanto
quem utiliza as versões de 32 bits do Windows (com mais de 2 GB de memória
RAM instalada), quanto quem roda programas de 32 bits sobre as versões de
64 bits do Windows (neste caso o limite se aplica apenas aos aplicativos de 32
bits, naturalmente).

Uma forma de amenizar o problema, caso você esteja enfrentando problemas
de travamento em algum game pesado, por exemplo, é modificar a divisão de
endereços entre o aplicativo e o kernel.



                                                                          376
No Windows XP é possível reservar 3 GB para os aplicativos através da opção
"/3gb" no arquivo boot.ini. Entretanto, usá-la causa problemas de estabilidade
em um número muito grande de programas, por isso ela não é
necessariamente uma boa idéia. Além disso, apenas programas que
explicitamente indicam que são capazes de acessar mais de 2 GB são
autorizados pelo sistema a utilizar os endereços adicionais, o que reduz
brutalmente o número de programas que são realmente capazes de se
beneficiar do uso da opção.

No caso do Vista, é possível ajustar os valores de forma mais flexível através
da opção "IncreaseUserVa" do BCDedit. Através dele você pode reservar, por
exemplo, 2.2 ou 2.4 GB para os aplicativos. Usando valores mais baixos que os
3 GB do XP, você evita a maior parte dos problemas de estabilidade. De uma
forma geral, funciona bem com a alocação de até 2.6 GB para os aplicativos. A
partir daí você corre o risco de ver telas azuis.

Como você pode ver, o uso das opções permite apenas minimizar o problema.
A única forma de se livrar dele completamente é rodar um sistema de 64 bits e
usar apenas aplicativos de 64 bits sobre ele.

Memória Flash

Diferentemente da memória RAM e também das SRAM, a memória Flash
permite armazenar dados por longos períodos, sem precisar de alimentação
elétrica. Graças a isso, a memória Flash se tornou rapidamente a tecnologia
dominante em cartões de memória, pendrives, HDs de estado sólido (SSDs),
memória de armazenamento em câmeras, celulares e palmtops e assim por
diante.

Se a memória Flash não existisse, todas essas áreas estariam muito atrasadas
em relação ao que temos hoje. Os celulares e os palmtops provavelmente
ainda utilizariam memória SRAM para armazenar os dados e seriam por isso
mais caros e perderiam os dados quando a bateria fosse removida. Os
pendrives simplesmente não existiriam e os cartões de memória estariam
estagnados nos cartões CompactFlash, utilizando microdrives ou pequenas
quantidades de memória SRAM alimentada por uma pequena bateria.
Formatos mais compactos, como os cartões SD e miniSD simplesmente não
existiriam.

Existem dois tipos de memória Flash. A primeira tecnologia de memória Flash a
se popularizar foi o tipo NOR, que chegou ao mercado em 1988. Os chips de
memória Flash NOR possuem uma interface de endereços similar à da
memória RAM.

Graças a isso, eles rapidamente passaram a ser usados para armazenar o
BIOS da placa-mãe e firmwares em dispositivos diversos, que antes eram
armazenados em chips de memória ROM ou EEPROM. Nos primeiros PCs, por
exemplo, o BIOS da placa-mãe era gravado em um chip de memória ROM e
por isso não era atualizável, a menos que o chip fosse fisicamente substituído.

O problema com as memórias NOR é que elas são muito caras e, embora as
leituras sejam rápidas, o tempo de gravação das células é muito alto. Em um
                                                                           377
chip de memória NOR típico, as operações de gravação demoram cerca de
750 nanosegundos, ou seja, teríamos pouco mais de 1300 operações de
gravação por segundo!

No caso do BIOS da placa-mãe, isso não é um grande problema, pois você só
precisa atualizá-lo esporadicamente. Mas, imagine um palmtop que tentasse
utilizar apenas memória NOR com memória de trabalho... O sistema rodaria tão
lentamente que a idéia acabaria sendo abandonada mais cedo ou mais tarde. :)

Apesar disso, a memória Flash do tipo NOR é bastante usada até hoje em
palmtops, celulares e diversos tipos de dispositivos, para armazenar o sistema
operacional (nesse caso chamado de firmware), que é carregado durante o
boot, sem ser alterado. A vantagem nesse caso é o XiP (execute in place),
onde o sistema pode rodar diretamente a partir do chip de memória, sem
precisar ser primeiro copiado para a memória RAM.

O chip de memória NOR é complementado por uma pequena quantidade de
memória SRAM ou DRAM, que é usada como memória de trabalho. Em muitos
casos, a memória é usada também para armazenar dados e configurações
que, justamente por isso, podem ser perdidos quando a carga da bateria se
esgota completamente.

As memórias Flash NOR chegaram a ser utilizadas nos primeiros cartões de
memória PCMCIA e CompactFlash, mas elas desapareceram desse ramo
quando foram introduzidas as memórias NAND, que são de longe o tipo mais
usado atualmente.

Nelas, cada célula é composta por dois transístores, com uma fina camada de
óxido de silício precisamente posicionada entre os dois, que armazena cargas
negativas. Isso cria uma espécie de armadilha de elétrons, que permite manter
os dados por longos períodos de tempo, sem que seja necessário manter a
alimentação elétrica (como nas memórias SRAM), ou muito menos fazer um
refresh periódico (como na memória DRAM). Isso simplifica muito o design dos
cartões, pendrives e outros dispositivos, pois eles precisam incluir apenas os
chips de memória Flash NAND, um chip controlador e as trilhas necessárias.
Nada de baterias, circuitos de refresh ou qualquer coisa do gênero.

Aqui temos um diagrama da Intel que mostra uma célula de memória Flash
NAND:




                                                                          378
Pelo diagrama você pode notar que embora mais complexa que uma célula de
memória RAM (onde temos apenas um transístor e um capacitor), a célula de
memória Flash ocupa pouco espaço, pois o segundo transístor é posicionado
sobre o primeiro. Graças ao tamanho reduzido das células, cada chip de
memória Flash NAND armazena uma quantidade muito maior de dados, o que
faz com que o preço por megabyte seja muito mais baixo.

Além de mais baratas que as NOR, as memórias NAND também são muito
mais rápidas na hora de gravar dados. A principal limitação é que elas são
endereçadas usando páginas de 2 KB e acessadas através de um barramento
serial. Ou seja, do ponto de vista do sistema, um cartão de memória Flash
NAND está mais para um HD do que para uma unidade de memória. Você
pode usá-lo para guardar dados, mas na hora que o sistema precisa rodar um
programa, precisa primeiro copiá-lo para a memória RAM, da mesma forma
que faria ao usar um HD.

De alguns anos para cá, os palmtops e smartphones passaram a cada vez
mais utilizar memória Flash NAND como área de armazenamento de dados e
programas, substituindo a memória SRAM. Isso se tornou possível graças a um
conjunto de truques feitos via software, onde o sistema utiliza uma quantidade
menor de memória SRAM como área de trabalho e vai lendo e os arquivos na
memória Flash conforme eles são necessários. Esse esquema é muito similar
ao que temos num PC, onde os arquivos são salvos no HD, porém
processados usando a memória RAM.

Um dos primeiros aparelhos a aderir a esse sistema foi o Treo 650, lançado em
2004. Atualmente ele é utilizado na grande maioria dos modelos, pois, além de
cortar custos, melhora a confiabilidade do aparelho, já que os dados não são
mais perdidos ao remover a bateria.




                                                                          379
O grande boom da memória Flash aconteceu entre 2004 e 2005, quando uma
combinação de dois fatores fez com que os preços por MB caíssem
rapidamente.

O primeiro foi o brutal aumento na produção e a concorrência entre os
fabricantes, que empurraram os preços para baixo. Além de gigantes como a
Samsung e a Toshiba, até mesmo a Intel e a AMD investiram pesadamente na
fabricação de memória Flash.

O segundo foi a introdução da tecnologia MLC (Mult-Level Cell), onde cada
célula passa a armazenar dois ou mais bits em vez de apenas um. Isso é
possível graças ao uso de tensões intermediárias. Com 4 tensões diferentes, a
célula pode armazenar 2 bits, com 8 pode armazenar 3 bits e assim por diante.
O MLC foi implantado de forma mais ou menos simultânea pelos diversos
fabricantes e permitiu reduzir drasticamente o custo por megabyte, quase que
de uma hora para a outra. Outra tecnologia similar é o MBC (Multi-Bit Cell),
desenvolvido pela Infineon.

Os chips "tradicionais", que armazenam um único bit por célula passaram a ser
chamados de "SLC" (single-bit cell) e ainda são produzidos com o objetivo de
atender o mercado de cartões de alto desempenho (sobretudo os cartões CF
destinados ao mercado profissional). Embora muito mais caros, eles oferecem
um melhor desempenho e são mais duráveis.

Outra tecnologia usada pelos fabricantes para cortar custos e ao mesmo tempo
permitir a criação de chips de maior densidade é o "Die-Stacking", onde dois ou
mais chips são "empilhados", conectados entre si e selados dentro de um único
encapsulamento, que possui o mesmo formato e contatos que um chip
tradicional. Como uma boa parte do custo de um chip de memória Flash
corresponde justamente ao processo de encapsulamento, o uso do Die-
Stacking permite mais uma redução substancial do custo.

                                                                           380
Como de praxe, a popularização das memórias Flash deu início a uma guerra
entre diversos formatos de cartões, alguns abertos e outros proprietários.


CompactFlash: Excluindo os jurássicos cartões de memória PCMCIA, o
primeiro formato de cartão foi o CompactFlash (CF), onde é utilizada uma
interface muito similar à interface IDE usada pelos HDs, com nada menos que
50 pinos. Aqui temos um cartão CF aberto:




De um dos lados temos o chip controlador e um dos chips de memória e no
outro temos espaço para mais dois chips, totalizando até 3 chips de alta
capacidade. Graças a esse design, os cartões CF oferecem boas taxas de
transferência, mas em compensação são caros e volumosos, o que explica a
decadência do formato.

Os cartões CompactFlash ainda são produzidos e sobrevivem em alguns
nichos. Eles são usados por algumas câmeras da Canon, voltadas para o
segmento profissional (onde a boa taxa de transferência dos cartões CF presta
bons serviços) e em diversos tipos de sistemas embarcados. Devido à
similaridade entre os dois barramentos, existem adaptadores que permitem
instalar cartões CF numa porta IDE, substituindo o HD.


SmartMedia: Em 1995 a Toshiba lançou o formato SmartMedia (SM), um
formato muito mais simples, onde o chip de memória é acessado diretamente,
sem o uso de um chip controlador. O chip de memória é encapsulado dentro de
um cartucho plástico, com apenas 0.76 mm de espessura e os contatos
externos são ligados diretamente a ele. Nesta foto você pode ver um cartão
SmartMedia em comparação com um cartão MMC e um Memory Stick:




                                                                         381
Apesar de finos, os cartões SM eram relativamente grandes, o que levou os
fabricantes a abandonarem o formato. Surgiram então os formatos xD, MMC,
SD e Memory Stick. Surpreendentemente, os leitores de cartões USB
passaram a oferecer suporte para todos os formatos simultaneamente. Isso foi
possível graças ao desenvolvimento de chips controladores "tudo em um",
capazes de converter cada um dos protocolos nos comandos suportados pelo
padrão USB. Existem também os leitores incluídos nos notebooks, que lêem
cartões SD e Memory Stick. Do ponto de vista do sistema operacional, eles são
diferentes dos leitores USB, pois são ligados ao barramento PCI (ou PCI
Express) ao invés de usarem o barramento USB e a maioria das funções são
executadas via software (como em um softmodem), graças ao driver instalado.


Cartões xD: O próximo da lista é o xD, um formato proprietário, usado em
câmeras da Olympus e da Fujifilm. Eles são relativamente rápidos se
comparados com os SmartMedia e com os cartões MMC, mas são bem mais
lentos que os cartões SD usados atualmente. Existiram duas atualizações para
o formato: o "xD M" (que permitiu o desenvolvimento de cartões com mais de
512 MB) e o "xD H" (que melhorou a velocidade de transferência). Apesar
disso, ambos acabaram sendo pouco usados, devido à concorrência dos
cartões SD.

Assim como nos cartões SM, os contatos são ligados diretamente no chip de
memória, sem o uso de um chip controlador. Isso em teoria baratearia os
cartões, mas devido à pequena demanda (e conseqüentemente aos baixos
volumes de produção), os cartões xD são atualmente bem mais caros. Isso
acaba prejudicando a competitividade das câmeras dos dois fabricantes, que
perdem mercado por insistirem no padrão.



                                                                         382
Cartões MMC: O MMC é um padrão "quase aberto", onde é necessário pagar
uma taxa inicial para obter as especificações e mais um valor anual à MMC
Association, além de seguir um conjunto de restrições. Os cartões MMC
possuem exatamente as mesmas dimensões dos cartões SD atuais e são
compatíveis com a maior parte das câmeras e outros dispositivos, além de
utilizarem o mesmo encaixe que eles nos adaptadores. As únicas diferenças
visíveis são que os cartões MMC são um pouco mais finos (1.4 mm, contra 2.1
mm dos SD) e possuem apenas 7 pinos, enquanto os SD possuem dois pinos
extras, totalizando 9.

O maior problema é que os cartões MMC são lentos, pois utilizam um
antiquado barramento serial para a transferência de dados, que transfere um
bit por vez a uma freqüência máxima de 20 MHz. Em teoria, os cartões MMC
poderiam transferir a até 2.5 MB/s, mas a maioria dos cartões ficam muito
longe dessa marca. Os cartões mais antigos utilizam um modo de transferência
ainda mais lento, limitado a 400 KB/s.

Como não existe praticamente nenhuma diferença de custo entre produzir um
cartão MMC ou SD, os fabricantes migraram rapidamente para o padrão mais
rápido, fazendo com que o MMC entrasse em desuso. Mais recentemente
foram lançados os padrões RS-MMC, MMC Plus e SecureMMC, versões
atualizadas do padrão MMC, que visam reconquistar seu lugar no mercado.

Chegamos então aos dois padrões que sobreviveram à guerra: o SD, que é o
padrão "parcialmente aberto", apoiado pela grande maioria dos fabricantes e o
Memory Stick, o padrão proprietário da Sony.


Memory Stick: Embora tenha conseguido atingir uma sobrevida
surpreendente, o Memory Stick ficou restrito aos produtos da Sony e por isso
seu futuro é incerto. Além do padrão original, existem também os formatos
Memory Stick Duo, Pro, Pro Duo, Micro e Pro-HG.

Tanto o padrão original quanto o Memory Stick Duo estão limitados a 128 MB,
por isso ficaram rapidamente obsoletos e são usados apenas por dispositivos
antigos, fabricados até o início de 2003. A principal diferença entre os dois
formatos é o tamanho reduzido dos cartões Memory Stick Duo, que são um
pouco menores que os cartões SD.


                                                                          383
Em seguida temos os cartões Memory Stick Pro e Memory Stick Pro Duo
(ambos lançados em 2003), que substituem diretamente os dois padrões
anteriores. Além do melhor desempenho, eles trouxeram um padrão atualizado
de endereçamento, que permite o desenvolvimento de cartões de até 32 GB.
Aqui temos uma foto mostrando os 4 formatos:




O Memory Stick Micro (ou M2) é um formato miniaturizado, desenvolvido para
uso em celulares (mais especificamente nos Sony Ericsson), que mede apenas
1.5 x 1.2 cm. Os cartões normalmente são vendidos em conjunto com um
adaptador, que permite usá-los em qualquer dispositivo ou leitor que use
cartões Memory Stick Pro




                            Memory Stick Micro

Concluindo, temos o Memory Stick Pro-HG, que utiliza um novo barramento de
dados, que transmite 8 bits por ciclos a uma freqüência de 60 MHz, o que
permite uma taxa de transferência de até 60 MB/s (contra 20 MB/s dos padrões
anteriores). Embora na prática a taxa de transferência dependa mais dos chips
de memória Flash usados, o barramento mais rápido coloca os cartões Pro-HG
em vantagem em relação aos cartões SD, já que eles estão limitados a um
máximo de 20 MB/s pelo barramento usado.


Cartões SD: Finalmente, temos os cartões SD (Secure Digital), que acabaram
se tornando o formato dominante. Como o nome sugere, os cartões SD
oferecem um sistema de proteção de conteúdo (o CPRM), que é implementado
diretamente no chip controlador. Ele se destina a atender o lobby das
gravadoras, oferecendo uma forma de "proteger" arquivos de áudio e outros

                                                                         384
tipos de conteúdo contra cópias não autorizadas. Os cartões Memory Stick
implementam um sistema similar (o Magic Gate), mas felizmente ambos são
pouco usados.

Existem três formatos de cartões SD. Além do formato padrão, temos os
cartões miniSD e microSD, versões miniaturizadas, que são eletricamente
compatíveis com o padrão original e podem ser encaixados num slot para
cartões SD regulares usando um adaptador simples.

Os cartões SD suportam 3 modos de transferência. O 4 bits mode é o modo
"padrão", onde o cartão transfere 4 bits por ciclo, a uma freqüência de até 50
MHz, resultando em taxas de transferência de até 25 MB/s (desde que os chips
de memória usados acompanhem, naturalmente). O segundo é o 1 bit mode,
onde é transferido um único bit por ciclo, a uma freqüência de no máximo 20
MHz. Este modo é usado para manter compatibilidade com os cartões MMC. É
graças a ele que você pode usar cartões MMC em câmeras e leitores para
cartões SD e vice-versa. Finalmente, existe o modo SPI (ainda mais lento), que
é utilizado por algumas câmeras antigas e também em diversos tipos de
dispositivos embarcados.

É por causa dos três modos de operação que um mesmo cartão SD pode ser
acessado a velocidades bem diferentes de acordo com o dispositivo onde ele é
usado. Muitas câmeras antigas que permitem acessar o conteúdo do cartão
quando ligadas a uma porta USB transferem a velocidades muito baixas,
muitas vezes inferiores a 300 KB/s. O driver "sdhci" (no Linux), que dá suporte
aos leitores de cartões incluídos em notebooks, por exemplo, é (pelo menos
até o Kernel 2.6.21) limitado ao modo SPI, por isso é bastante lento em relação
ao driver Windows, que é capaz de utilizar o modo 4 bits. Ou seja, o leitor do
seu notebook funciona, mas a uma velocidade muito baixa e com uma grande
utilização do processador.




       Leitor de cartões SD suportado no Linux através do módulo sdhci

O modo SPI é o preferido pelos desenvolvedores de sistemas embarcados e
drivers open-source, pois ele é muito simples e por isso pode ser emulado via
software, sem a necessidade de usar um controlador adicional. No modo SPI 4
são usados 4 pinos do cartão: um para enviar o sinal de clock, outro para

                                                                           385
enviar comandos, o terceiro para selecionar qual chip dentro do cartão será
acessado e o último para transferir dados, um bit de cada vez. Desde que você
possa controlar o uso dos 4 pinos, é fácil escrever uma função ou driver para
acessar o cartão.

O modo SPI é o mais lento, mas é suficiente para muitas aplicações. Imagine o
caso de um sensor de temperatura que usa o cartão apenas para armazenar
um log das variações, gravando alguns poucos bits por vez, por exemplo.


Controladores: Com exceção dos antigos cartões SmartMedia e xD, que
vimos há pouco, todos os cartões de memória Flash incluem um chip
controlador, que é encarregado do gerenciamento dos endereços e todas as
operações de leitura e gravação, além de executarem funções de manutenção
diversas.

Os cartões atuais utilizam o sistema "wear levelling" para ampliar a vida útil das
células. As células de memória Flash NAND suportam de 100.000 a 1.000.000
de operações de leitura ou gravação, de acordo com a qualidade dos chips.
Pode parecer bastante a princípio, mas a maioria dos sistemas de arquivos
(especialmente FAT e EXT) realizam atualizações freqüentes na tabela de
endereçamento da partição. Se nada fosse feito a respeito, as gravações
sucessivas iriam rapidamente inutilizar as células responsáveis pelo
armazenamento da tabela, inutilizando o cartão. Graças ao wear levelling é
feito uma espécie de "rodízio" dos endereços mais acessados entre as células
do cartão, evitando a fadiga de alguns endereços isolados.

Outra função é remapear os endereços defeituosos, onde um setor de uma
área reservada passa a ser usado em seu lugar. Isto é muito similar ao sistema
utilizado nos HDs modernos, onde a controladora também é capaz de
remapear os badblocks automaticamente.

Você pode então se perguntar como o controlador faz para descobrir os
endereços defeituosos. A resposta é que, além dos dados e dos setores da
área reservada, a memória armazena também alguns bytes adicionais
(tipicamente 64 bytes adicionais para cada bloco de 2048 bytes), usados para
guardar códigos ECC. Estes códigos permitem não apenas identificar, mas
também corrigir erros simples nos dados gravados. Como o controlador não
tem como descobrir exatamente em qual célula ocorreu o erro, normalmente
todo o bloco de 2048 bytes é remapeado.

Grande parte dos cartões de memória Flash já saem de fábrica com alguns
setores defeituosos remapeados (assim como os HDs). Isso permite que os
fabricantes aproveitem módulos que de outra forma precisariam ser
descartados, reduzindo o custo de forma considerável.

Até certo ponto, o controlador também é responsável pelas taxas de
transferência suportadas pelo cartão, já que é ele quem determina os modos
de acesso e as freqüências de clock suportadas. Mesmo que os chips de
memória sejam suficientemente rápidos, a taxa de transferência máxima pode
ser limitada pelo controlador. Por exemplo, muitos cartões microSD utilizam

                                                                              386
controladores limitados a 20 MHz, que são capazes de transferir a, no máximo,
10 MB/s, enquanto muitos dos novos já utilizam controladores capazes de
operar a 50 MHz, como nos cartões SD regulares.

A velocidade dos cartões é comparada pelos fabricantes à velocidade dos
drives de CD-ROM. Um cartão "133x" é um cartão que usa um controlador
capaz de transferir a 20 MB/s, um "155x" é um cartão capaz de transferir a 25
MB/s e assim por diante. As taxas reais são normalmente mais baixas
(sobretudo nas operações de gravação), pois ficam limitadas também à
velocidade dos chips, por isso não leve o índice muito a sério, ele é apenas
uma ferramenta de marketing. De qualquer forma, é conveniente evitar cartões
que não fazem menção à velocidade de transferência, pois eles normalmente
são limitados a 33x ou menos. Note que os cartões SDHC adotam um índice
diferente, como veremos a seguir.


miniSD e microSD: Embora pequenos em relação aos cartões CompactFlash
e SmartMedia, os cartões SD ainda são grandes demais para algumas
aplicações, sobretudo para uso em celulares e nas câmeras mais compactas.
Para solucionar o problema foram criados dois formatos miniaturizados, o
miniSD e o microSD, que são menores e mais finos.

O miniSD mede 2.15 x 2.0 cm, com apenas 1.4 mm de espessura. Embora os
cartões ainda sejam um pouco mais caros que os SD padrão, o formato está
ganhando popularidade rapidamente, usado no Nokia N800 e no E62, por
exemplo. De uma forma geral, todos os aparelhos onde o cartão é instalado
internamente (embaixo da bateria, por exemplo) estão passando a utilizá-lo.

O microSD é um formato ainda menor, concorrente do M2, destinado a
celulares, MP3 players e outros dispositivos onde as dimensões reduzidas e o
baixo consumo são importantes. Ele mede apenas 1.5 x 1.1 cm, com apenas 1
mm de espessura. Na maioria dos casos, o cartão acompanha um adaptador
SD. Como os dois padrões são compatíveis eletricamente, o adaptador é
apenas um dispositivo passivo, muito barato de se produzir:




                                                                          387
Você pode se perguntar como é possível que os cartões microSD sejam tão
compactos, já que qualquer cartão SD precisa de pelo menos dois chips (o chip
de memória e o controlador) e num cartão microSD mal temos espaço para um.
A resposta está no die-stacking, tecnologia que comentei há pouco. Num
cartão microSD temos um ou mais chips de memória e o próprio controlador
"empilhados", formando um único encapsulamento. Ele é instalado pelo
fabricante numa placa de circuito que contém os contatos externos e em
seguida selado dentro da cobertura externa. O mesmo se aplica aos cartões
Memory Stick Micro, que possuem dimensões similares.

Não existe como desmontar um microSD e, mesmo que você quebre um no
meio, não vai conseguir diferenciar os chips, pois eles são produzidos usando
wafers muito finos (até 0.025 mm de espessura nos mais recentes) e juntados
de forma muito precisa. Os primeiros cartões microSD de 4 GB foram
produzidos usando nada menos do que 8 chips de 512 MB empilhados. É
provável que no futuro seja possível utilizar um número ainda maior.


SD Duo: Este não é um padrão oficial, mas sim o nome "mercadológico" para
cartões SD que podem ser ligados diretamente em uma porta USB, assumindo
também a função de pendrive. Este padrão foi originalmente criado pela
Sandisk e depois copiado por outros fabricantes. Eles possuem uma dobradiça
ou protetor removível, que esconde um conector USB:




O pulo do gato aqui é utilizar um único chip (similar ao usado nos cartões
miniSD e microSD), que além da memória Flash inclui um controlador "dual",
que além de ser um controlador SD, incorpora também as funções de
controlador USB. Graças a isso, o fabricante pode colocar os contatos normais
do cartão SD de um lado, e os contatos da porta USB do outro, criando um
design muito engenhoso. Estes cartões acabam sendo o "supra-sumo" da
portabilidade, pois você tem ao mesmo tempo um cartão SD e um pendrive, daí
o "Duo".


SDHC: Inicialmente, o padrão de cartões SD previa o desenvolvimento de
cartões de até 2 GB, formatados por padrão em FAT16. Você pode reformatar
o cartão em outros sistemas de arquivos, mas nesse caso a maior parte das
câmeras e outros dispositivos deixam de conseguir acessá-lo, embora você
ainda consiga acessar o cartão normalmente se conectá-lo a um PC usando
um adaptador USB.

                                                                          388
Quando o limite de 2 GB foi atingido, os fabricantes passaram a criar extensões
para permitir a criação de cartões de 4 GB, usando hacks para modificar o
sistema de endereçamento e passando a usar o sistema FAT32 (no lugar do
FAT16) na formatação. Estes cartões de 4 GB "não-padronizados" são
compatíveis com a maioria dos dispositivos antigos, mas você pode enfrentar
problemas diversos de compatibilidade, já que eles não seguem o padrão.

Para colocar ordem na casa, foi criado o padrão SDHC (Secure Digital High
Capacity), onde a tabela de endereçamento foi expandida e passou a ser
oficialmente usado o sistema de arquivos FAT32. Todos os cartões que
seguem o novo padrão carregam o logotipo "SDHC" (que permite diferenciá-los
dos cartões de 4 GB "não-oficiais") e trazem um número de classe, que indica
a taxa de transferência mínima em operações de escrita. Os cartões "Class 2"
gravam a 2 MB/s, os "Class 4" a 4 MB/s, os "Class 6" a 6 MB/s e assim por
diante. O mesmo se aplica também aos cartões miniSD e microSD. Note que a
numeração não diz nada sobre a velocidade de leitura, mas ela tende a ser
proporcionalmente maior. Veja um exemplo de cartão com o logotipo:




                                                                           389
Outras tecnologias

Concluindo, temos aqui mais algumas tecnologias de memória que merecem
ser citadas:


Memórias BEDO: As memórias BEDO (Burst EDO) foram desenvolvidas no
final da era Pentium 1 para concorrer com as memórias EDO. Elas utilizam
uma espécie de pipeline para permitir acessos mais rápidos que as EDO. Em
um Bus de 66 MHz, as memórias BEDO são capazes de funcionar com
temporização de 5-1-1-1, quase 30% mais rápido que as memórias EDO
convencionais.

No papel as memórias BEDO eram interessantes, mas elas nunca foram
usadas em grande escala. A tecnologia era propriedade da Micron, que
ansiava por cobrar royalties dos demais fabricantes, caso a tecnologia fosse
adotada em grande escala. Os fabricantes de memória trabalham com
margens de lucro incrivelmente apertadas, de forma que a palavra "royalties"
gera calafrios. Ao invés de caírem na armadilha da Micron, eles se apressaram
em adotar as memórias SDRAM, que além de serem um padrão aberto, eram
tecnicamente superiores.


Memórias Rambus (RDRAM): Assim como as memórias BEDO, as RDRAM
são um tipo proprietário de memória, que acabou não ganhando popularidade.

Os módulos de memórias Rambus são chamados de "Rambus Inline Memory
Modules" ou RIMMs. Os módulos RIMM são bem semelhantes aos módulos
DIMM, mas em geral eles vêm com uma proteção de metal sobre os chips de
memória, que também serve para facilitar a dissipação de calor, já que os
módulos RIMM aquecem bastante devido à alta freqüência de operação.

Uma particularidade era a necessidade de instalar módulos terminadores em
todos os slots não populados da placa-mãe, para reduzir o nível de ruído
eletromagnético. Na foto a seguir, por exemplo, temos uma placa com um
único módulo RIMM instalado. Os outros dois são terminadores:




                                                                          390
Em 1996 a Intel fechou um acordo com a Rambus Inc., uma então pequena
empresa que desenvolvia um tipo de memória otimizada para sistemas que
precisam de um largo barramento de dados com a memória. As memórias
Rambus foram utilizadas no Nintendo 64 e no Playstation 2, e o plano era que
elas fossem adotadas em larga escala nos PCs, com a ajuda da Intel. A
Rambus Inc. receberia royalties dos fabricantes e a Intel ficaria com parte do
bolo, na forma de incentivos e descontos.

A Intel introduziu o suporte às memórias Rambus a partir do chipset i820, ainda
na época do Pentium III, e continuou tentando empurrar a tecnologia com o
chipset i850, usado na primeira geração de placas para Pentium 4.

O problema era que o chipset i850 suportava somente memórias Rambus, sem
opção de usar memórias SDRAM ou DDR (que eram novidade na época). Na
época do lançamento do Pentium 4, um módulo RIMM de 64 MB custava US$
99, enquanto um módulo de memória PC-133 da mesma capacidade custava
apenas US$ 45. Isto significava gastar US$ 216 (ao comprar 256 MB) a mais,
só de memória, sem contar a diferença de preço do processador Pentium 4 e
da placa-mãe, que na época ainda eram consideravelmente mais caros.

As memórias Rambus utilizam um barramento de dados de apenas 16 bits de
largura, em oposição aos 64 bits utilizados pelos módulos de memória SDRAM,
suportando em compensação freqüências de barramento de até 400 MHz com
duas transferências por ciclo (como o AGP 2x), o que na prática equivale a
uma freqüência de 800 MHz. Essa organização lembra um pouco o barramento
PCI Express, onde o uso de menos trilhas de dados permitem a operação a
freqüências mais altas.

Trabalhando a 400 MHz com duas transferências por ciclo, sua velocidade
máxima, as memórias Rambus permitem uma banda total de 1.6 gigabytes por
segundo. O i850 era capaz de acessar dois módulos simultaneamente,
proporcionando um barramento total de 3.2 GB/s. Essa é uma marca
respeitável, comparável à de um módulo DDR-400, porém atingida em 2001.

                                                                           391
O grande problema era que apesar da boa taxa de transferência, os módulos
trabalhavam com tempos de latência muito altos. Isso prejudicava muito o
desempenho, fazendo com que um Pentium III espetado numa placa-mãe i820
com um módulo RIMM acabasse sendo mais lento na maioria das aplicações
que um PC simular equipado com memórias SDRAM PC-133. Mesmo em
conjunto com o Pentium 4, que incluía uma série de otimizações (incluindo o
uso de módulos RIMM em pares), as memórias Rambus falhavam em oferecer
algum ganho tangível de performance em relação às memórias DDR.

Pouca gente comprou as versões iniciais do Pentium 4 e, quem se arriscou,
acabou com um abacaxi nas mãos. Isto obrigou a Intel a modificar a
plataforma, passando a utilizar memórias DDR padrão. A demora gerou um
vácuo, que permitiu que a AMD aumentasse consideravelmente sua
participação no mercado, já que contava com o Athlon Thunderbird, um
processador mais barato e mais eficiente.

No final, as memórias DDR (seguidas pelas DDR2) ganharam a briga,
tornando-se o padrão de memória dominante. Mais uma vez a indústria rejeitou
um padrão proprietário de memória, em favor de um padrão aberto.


Registered DIMM: Os módulos de memória que usamos nos micros
domésticos são chamados de unbuffered. Eles usam um layout simples e
eficiente, onde o controlador de memória tem acesso direto aos chips de
memória, garantindo tempos de latência mais baixos.

Essa simplicidade tem um custo, que é uma limitação no número de chips por
módulo e também no número de módulos que podem ser instalados na mesma
placa-mãe. Salvo raras exceções, os módulos unbuffered possuem no máximo
16 chips de memória e é possível projetar placas-mãe com suporte para até 4
módulos.

Isso não é um problema nos desktops, onde normalmente não precisamos de
mais do que 2 ou 4 GB de RAM, mas é uma grave limitação nos servidores,
onde é comum o uso de mais memória.

Os módulos registered incluem chips adicionais (registradores) que funcionam
como uma interface adicional entre o controlador e os chips. Eles permitem que
o controlador suporte um número maior de módulos de memória e também que
sejam usados módulos com mais chips, permitindo a instalação de quantidades
muito maiores de memória. Muitas placas para servidores incluem 8 slots de
memória, e existem módulos registered com 32 ou até mesmo 48 chips (sem
contar os chips adicionais no caso dos módulos com ECC). É fácil reconhecer
os módulos registered, devido à presença dos chips adicionais:




                                                                          392
A desvantagem é que o uso dos registradores retarda a transmissão dos sinais,
aumentando a latência e conseqüentemente reduzindo o desempenho dos
módulos. A maioria das placas com suporte a módulos registered não suporta
módulos unbuffered, de forma que seu uso não é uma opção. Também não é
possível usar módulos registered, muito menos misturá-los com módulos
unbuffered nas placas para desktop que não os suportam.

Os suporte a módulos registered está disponível apenas em placas-mãe
destinadas a servidores e workstations, onde a possibilidade de usar mais
memória supera as desvantagens. É possível encontrar tanto módulos de
memória SDRAM quanto módulos DDR e DDR2 em versão registered. Por
utilizarem componentes adicionais e serem produzidos em pequena
quantidade, eles normalmente custam o dobro do preço dos módulos
unbuffered, de forma que você só deve considerar seu uso quando realmente
necessário.


MRAM: As memórias MRAM (Magnetoresistive RAM) utilizam células
magnéticas para armazenar dados, ao invés de células que armazenam
eletricidade, como nas memórias DRAM, SRAM ou Flash. O layout básico
lembra um pouco um módulo de memória DRAM, onde temos um transístor
para cada bit de dados. A grande diferença é que, no lugar de um capacitor, é
usada uma célula magnética, que pode ser gravada e lida usando eletricidade
e conserva seus dados por longos períodos (assim como nos HDs) sem
precisar de refresh ou alimentação elétrica.

As memórias MRAM são quase tão rápidas quanto as memórias SRAM,
consomem menos energia e suportam um número quase ilimitado de ciclos de
leitura e gravação, ao contrário das memórias Flash. Elas são uma espécie de
"Santo Graal" da informática, uma tecnologia que, se fosse suficientemente
barata, poderia vir a substituir, com vantagens, a maioria dos demais tipos de
memórias.

O problema é que as memórias MRAM são difíceis de fabricar e até o momento
nenhum fabricante foi capaz de produzir chips com densidades similares à
memória RAM ou Flash.

Embora se fale nas memórias MRAM desde a década de 90, os primeiros chips
disponíveis comercialmente foram produzidos apenas em 2006 (pela
Freescale).

                                                                          393
O ponto positivo é que os chips trabalhavam com tempo de acesso de apenas
35 ms, tanto para leitura quanto para gravação, o que bate de longe os chips
de memória Flash e rivaliza com os chips de memória SRAM usados em
palmtops e no cache de HDs, oferecendo a vantagem de não perderem os
dados armazenados e não precisarem de alimentação elétrica. O problema é
que armazenavam apenas 4 megabits (512 KB) e custavam US$ 25 cada.




                          Chip de memória MRAM

Estes chips foram produzidos em pequena escala, usando técnicas obsoletas
de produção, por isso o preço e a densidade atingida tendem a melhorar
conforme a tecnologia avance e os chips passem a ser produzidos em maior
escala. Diversas empresas, entre elas a IBM e a Samsung, têm investido no
desenvolvimento de memórias MRAM, por isso devemos ter progressos nos
próximos anos.

De início, o concorrente das memórias MRAM são justamente os chips de
memória SRAM, que são o tipo mais rápido e caro de memória em uso
atualmente. As aplicações são óbvias: HDs com caches que não perdem os
dados quando o micro é desligado no botão, além de palmtops e celulares
menores e com uma maior autonomia de energia.

A longo prazo, pode ser que as memórias MRAM passem a ser usadas em
PCs, substituindo a memória RAM. Um PC que utilizasse memórias MRAM
como memória principal poderia manter o estado anterior depois de desligado,
sem precisar de um novo processo de boot. Não haveria mais problema de
perda de dados por causa de desligamentos incorretos, pois ao ligar o PC
novamente, tudo estaria como antes.



                                                                         394
A partir daí, quem sabe, novas técnicas de produção permitam que passem a
concorrer com as memórias Flash, mas por enquanto, isso ainda é exercício de
futurologia. A menos que alguma grande revolução aconteça, as memórias
MRAM devem demorar pelo menos mais 4 ou 5 anos para se tornarem
competitivas com as memórias SRAM e pelo menos uma década para
começarem a substituir as memórias DRAM em alguns nichos.


Paridade e ECC: Por melhor que seja a qualidade, todos os tipos de memória
são passíveis de erros, que podem ser causados por inúmeros fatores, desde
variações na tensão da tomada que não são completamente absorvidos pela
fonte de alimentação, estática, diversos tipos de interferências
eletromagnéticas e, por incrível que possa parecer, até mesmo raios cósmicos,
que num PC doméstico causam um soft-error em média a cada poucos meses:
http://www-1.ibm.com/servers/eserver/pseries/campaigns/chipkill.pdf

Ao contrário dos "hard-errors", que são danos físicos nos módulos de memória,
causados por eletricidade estática ou outros tipos de descargas, os soft-erros
são erros momentâneos, onde um ou alguns poucos bits são alterados, sem
que os chips de memória sejam danificados.

Eles podem causar os mais diversos efeitos colaterais, como travamentos de
programas, pequenos danos em arquivos salvos e assim por diante. Num
desktop eles não costumam ser catastróficos, mas podem causar efeitos sérios
em sistemas que manipulam informações sensíveis, como no caso dos bancos,
por exemplo, onde um soft-error poderia mudar o saldo da sua conta bancária.
;)

Para aumentar o grau de confiabilidade dos sistemas, foram criados métodos
de diagnóstico e correção de erros. Tudo começou com os sistemas de
paridade, usados em muitos módulos de 30 e 72 vias.

A paridade é um método mais antigo, que somente é capaz de identificar
alterações nos dados depositados nas memórias, sem condições de fazer
qualquer tipo de correção. A paridade consiste na adição de mais um bit para
cada byte de memória, que passa a ter 9 bits, tendo o último a função de
diagnosticar alterações nos dados.

A operação de checagem dos dados na paridade é bem simples: são contados
o número de bits "1" de cada byte. Se o número for par, o bit de paridade
assume o valor "1" e caso seja ímpar, o 9º bit assume o valor "0". Quando
requisitados pelo processador, os dados são checados pelo circuito de
paridade que verifica se o número de bits "1" corresponde ao depositado no 9º
bit.

Caso seja constatada alteração nos dados, ele envia ao processador uma
mensagem de erro. Claro que esse método não é 100% eficaz, pois não é
capaz de detectar a alteração de um número de bits que mantenha a paridade.
Caso, por exemplo, dois bits zero retornassem alterados para bits um, o circuito


                                                                            395
de paridade não notaria a alteração nos dados. Felizmente, a possibilidade da
alteração de dois ou mais bits ao mesmo tempo é remota.


Exemplo de Byte de        Número de Bits "1" no     Bit de paridade
dados                     Byte
00000000                  0                         1
10110011                  5                         0
00100100                  2                         1
11111111                  8                         1


O uso da paridade não torna o computador mais lento, pois os circuitos
responsáveis pela checagem dos dados são independentes do restante do
sistema. Seu único efeito colateral é o encarecimento dos módulos de
memória, que em vez de 8 ou 16 chips, passam a ter 9 ou 18, tornando-se pelo
menos 12% mais caros.

Além do aumento no custo, o grande problema da paridade é que ela apenas
permite identificar erros, mas sem corrigi-los. Isso acaba fazendo com que ela
tenha pouca utilidade, pois ao receber um erro suas únicas opções são ignorá-
lo, ou parar tudo e reiniciar o micro. Conforme os módulos de memória foram
tornando-se mais confiáveis, os módulos com paridade entraram em desuso.

Em seguida temos o ECC, o sistema atual, que permite não apenas identificar,
mas também corrigir erros simples. O ECC acaba sendo a solução perfeita,
pois permite que um servidor continue funcionando, sem interrupções e de
forma confiável, mesmo com um grande número de soft-errors, causados por
fatores diversos.

O número de bits necessários para implementar o ECC decresce conforme
aumenta a largura do barramento usado pelo módulo. Em um módulo de 32
bits (como os antigos módulos de 72 vias), são necessários 7 bits adicionais
para cada 32 bits de memória, mas nos módulos DIMM de 64 bits atuais, são
necessários apenas 8 bits para cada 64 bits de memória, ou seja, o mesmo
que seria necessário para usar paridade.

Os módulos DIMM com ECC são fáceis de identificar, pois eles possuem 5, 9
ou 18 chips, em vez de 4, 8 ou 16. O uso de ECC é mais comum em módulos
registered, que são específicos para servidores, mas também é possível
encontrar alguns módulos unbuffered com ECC:




                                                                          396
Módulo com ECC (note que o módulo possui 9 chips)

Identificando módulos de memória: Como vimos, todos os chips de memória
trazem estampado um número de identificação. Este número pode ser utilizado
para descobrir detalhes sobre o módulo, quem o produziu, qual é seu tempo de
acesso, qual é freqüência máxima suportada, etc.

Os fabricantes disponibilizam tabelas com as especificações de seus produtos,
mas existe um site que concentra a maioria das informações disponíveis,
funcionando como um mecanismo de busca. Esse site, o IC Master, disponível
no endereço http://www.icmaster.com, é extremamente útil, pois permite
identificar não apenas módulos de memória, mas também outros tipos de
circuitos integrados apenas com base no número de identificação. O serviço é
gratuito, você precisará apenas se cadastrar.

Capítulo 5: HDs e armazenamento

Sem dúvida, o disco rígido foi um dos componentes que mais evoluiu na
história da informática. O primeiro disco rígido (o IBM 350) foi construído em
1956 e era formado por um conjunto de nada menos que 50 discos de 24
polegadas de diâmetro, com uma capacidade total de 4.36 MB (5 milhões de
caracteres, com 7 bits cada um), algo espantoso para a época. Comparado
com os discos atuais, este pioneiro custava uma verdadeira fortuna: 35 mil
dólares. Porém, apesar de inicialmente serem extremamente caros, os discos
rígidos foram tornando-se populares nos sistemas corporativos, pois forneciam
um meio rápido de armazenamento de dados.

Foram produzidas cerca de 1000 unidades do 350 entre 1956 e 1961, quando
a produção foi descontinuada em favor de versões mais modernas. Esta foto
rara, cortesia do museu digital da IBM dá uma idéia das suas dimensões:




                                                                          397
Como você pode ver, o IBM 350 não era exatamente um "disco rígido" dentro
da concepção que temos hoje em dia. O gabinete tinha 1.70 metros de altura e
quase o mesmo de comprimento e pesava quase uma tonelada. Na época ele
era chamado de "unidade de disco" (termo ainda usado hoje em dia por alguns)
e podia ser acoplado a diversos computadores produzidos pela IBM. O termo
"disco rígido" só surgiu duas décadas depois, junto com os modelos mais
compactos.

De lá pra cá, tivemos uma evolução notável. Hoje em dia os HDs já
ultrapassaram a marca de 1 TB, utilizam gravação perpendicular e interfaces
SATA 300. São brutalmente mais rápidos que os modelos antigos e também
mais baratos. Mesmo com o barateamento da memória Flash, os HDs ainda
continuam imbatíveis na hora de armazenar grandes quantidades de dados.

Como um HD funciona

Dentro do disco rígido, os dados são gravados em discos magnéticos,
chamados de platters. O nome "disco rígido" vem justamente do fato de os
discos internos serem extremamente rígidos.

Os platters são compostos de duas camadas. A primeira é chamada de
substrato, e nada mais é do que um disco metálico, feito de ligas de alumínio.
Mais recentemente, alguns fabricantes passaram a utilizar também vidro, que
oferece algumas vantagens, como a maior dureza, embora também seja mais
difícil de se trabalhar. Os primeiros HDs com discos de vidro foram os IBM
Deskstar 75GXP, lançados em 2001.

Independentemente do material usado, o disco precisa ser completamente
plano. Como os discos giram a grandes velocidades e as cabeças de leitura
trabalham extremamente próximas da superfície magnética, qualquer variação

                                                                           398
seria fatal. Para atingir a perfeição necessária, o disco é polido em uma sala
limpa, até que se torne perfeitamente plano. Vem então a parte final, que é a
colocação da superfície magnética nos dois lados do disco.

Como a camada magnética tem apenas alguns microns de espessura, ela é
recoberta por uma fina camada protetora, que oferece alguma proteção contra
pequenos impactos.

Os discos são montados em um eixo também feito de alumínio, que deve ser
sólido o suficiente para evitar qualquer vibração dos discos, mesmo a altas
rotações. Este é mais um componente que passa por um processo de
polimento, já que os discos devem ficar perfeitamente presos e alinhados. No
caso de HDs com vários discos, eles são separados usando espaçadores,
novamente feitos de ligas de alumínio.

Finalmente, temos o motor de rotação, responsável por manter uma rotação
constante. O motor é um dos maiores responsáveis pela durabilidade do disco
rígido, pois uma grande parte das falhas graves provém justamente do motor.

Os HDs mais antigos utilizavam motores de 3.600 rotações por minuto,
enquanto que atualmente são utilizados motores de 5.400, 7.200 ou 10.000
RPM. Nos HDs de notebook ainda são comuns motores de 4.200 RPM, mas os
de 5.400 RPM já são maioria. Embora não seja o único, a velocidade de
rotação é sem dúvida o fator que influencia mais diretamente no desempenho.

Para ler e gravar dados no disco, são usadas cabeças de leitura
eletromagnéticas (heads) que são presas a um braço móvel (arm), o que
permite seu acesso a todo o disco. O braço de leitura é uma peça triangular,
também feita de ligas de alumínio, para que seja ao mesmo tempo leve e
resistente. O mecanismo que movimenta o braço de leitura é chamado de
actuator.

Nos primeiros discos rígidos, eram usados motores de passo para movimentar
os braços e cabeças de leitura. Eles são o mesmo tipo de motor usado nos
drives de disquete, onde ao receber um impulso elétrico o motor move o braço
por uma curta distância, correspondente ao comprimento de uma trilha. O
problema é que eles eram muito suscetíveis a problemas de desalinhamento e
não permitiam densidades de gravação muito altas.

Os discos contemporâneos (qualquer coisa acima de 80 MB) utilizam um
mecanismo bem mais sofisticado para essa tarefa, composto por um
dispositivo que atua através de atração e repulsão eletromagnética, sistema
chamado de voice coil. Basicamente temos um eletroímã na base do braço
móvel, que permite que a placa controladora o movimente variando
rapidamente a potência e a polaridade do ímã. Apesar de parecer suspeito à
primeira vista, esse sistema é muito mais rápido, preciso e confiável que os
motores de passo. Para você ter uma idéia, os HDs do início da década de 80,
com motores de passo, utilizavam apenas 300 ou 400 trilhas por polegada,
enquanto um Seagate ST3750640AS (de 750 GB) atual utiliza nada menos do
que 145.000.

                                                                          399
Aqui temos um diagrama mostrando os principais componentes do HD:




Para que o HD possa posicionar a cabeça de leitura sobre a área exata
referente à trilha que vai ser lida, existem sinais de feedback gravados na
superfícies do disco, que orientam o posicionamento da cabeça de leitura. Eles
são sinais magnéticos especiais, gravados durante a fabricação dos discos (a
famosa formatação física), que são protegidos através de instruções de
bloqueio incluídas no firmware do HD contra alteração posterior. Esses sinais
eliminam os problemas de desalinhamento que existiam nos primeiros HDs.

Ao ler um arquivo, a controladora posiciona a cabeça de leitura sobre a trilha
onde está o primeiro setor referente a ele e espera que o disco gire até o setor
correto. Este tempo inicial, necessário para iniciar a leitura, é chamado de
tempo de acesso, e mesmo os HDs atuais de 7.200 RPM fica em torno de 12
milésimos de segundo, o que é uma eternidade em se tratando de tempo
computacional. O HD é relativamente rápido ao ler setores seqüenciais, mas ao
ler vários pequenos arquivos espalhados pelo HD, o desempenho pode cair
assustadoramente. É por isso que existem programas desfragmentadores, que
procuram reorganizar a ordem dos arquivos, de forma que eles sejam gravados
em setores contínuos.

Outro dado interessante é a maneira como as cabeças de leitura lêem os
dados, sem tocar na camada magnética. Se você tiver a oportunidade de ver

                                                                            400
um disco rígido aberto, verá que, com os discos parados, as cabeças de leitura
são pressionadas levemente em direção ao disco, tocando-o com uma certa
pressão. Aqui temos o braço de leitura de um HD, depois de removido. Veja
que mesmo sem o disco magnético entre elas, as duas cabeças de leitura
pressionam-se mutuamente:




Apesar disso, quando os discos giram à alta rotação, forma-se uma espécie de
colchão de ar, que repele a cabeça de leitura, fazendo com que ela fique
sempre a alguns nanômetros de distância dos discos. É o mesmo princípio
utilizado na asa de um avião; a principal diferença neste caso é que a cabeça
de leitura é fixa, enquanto os discos é que se movem, mas, de qualquer forma,
o efeito é o mesmo. Como veremos a seguir, os HDs não são fechados
hermeticamente, muito menos a vácuo, pois é necessário ar para criar o efeito.

Esta foto mostra a cabeça de leitura "flutuando" sobre o disco em movimento. A
distância é tão curta que mesmo ao vivo você tem a impressão de que a
cabeça está raspando no disco, embora na realidade não esteja. Como a
cabeça de leitura se movimenta rapidamente durante a operação do disco, é
muito difícil tirar fotos. Para conseguir tirar esta, precisei "trapacear",
desmontando o actuator e suavemente movendo a cabeça da área de
descanso para o meio do disco. :)




                                                                          401
Os discos magnéticos são montados diretamente sobre o eixo do motor de
rotação, sem o uso de correias ou qualquer coisa do gênero. É justamente este
design simples que permite que os discos girem a uma velocidade tão grande.

Embora mais potente e muito mais durável, o motor de rotação usado nos HDs
é similar aos usados nos coolers. Nos HDs antigos, eram usados motores
sleeve bearing, o sistema mais simples e menos durável, que foi usado nos
HDs de 3600 RPM. Em seguida, foram adotados motores ball-bearing, onde
são usados rolamentos para aumentar a precisão e a durabilidade. Nos HDs
modernos, é utilizado o sistema fluid-dynamic bearing, onde os rolamentos são
substituídos por um fluído especial, que elimina o atrito, reduzindo o ruído e o
nível de vibração.

Aqui temos o mesmo HD da foto anterior completamente desmontado,
mostrando o interior do motor de rotação:




                                                                            402
Assim como a maioria dos modelos de baixa capacidade, este HD utiliza um
único disco, mas a maioria dos modelos utiliza dois, três ou quatro, que são
montados usando espaçadores. O HD possui duas cabeças de leitura para
cada disco (uma para cada face), de forma que um HD com 4 discos utilizaria 8
cabeças de leitura, presas ao mesmo braço móvel.

Embora usar mais discos permita construir HDs de maior capacidade, não é
comum que os fabricantes utilizem mais de 4, pois a partir daí torna-se muito
difícil (e caro) produzir componentes com a precisão necessária para manter
todos os discos alinhados. Antigamente, era comum que HDs de alta
capacidade (e alto custo :), sobretudo os destinados a servidores, possuíssem
6, ou até mesmo 12 discos, mas eles saíram de moda a partir da década de 90,
devido à baixa demanda. Desde então, os fabricantes padronizaram a
produção em torno dos HDs com até 4 discos e quem precisa de mais
capacidade compra vários e monta um sistema RAID. No caso dos servidores,
é muito comum o uso de racks, com um grande número de HDs SAS ou SATA.

Naturalmente, qualquer HD aberto fora de uma sala limpa acaba sendo
impregnado por partículas de poeira e por isso condenado a apresentar
badblocks e outros defeitos depois de alguns minutos de operação.

Todo HD é montado e selado em um ambiente livre de partículas, as famosas
salas limpas. Apesar disso, eles não são hermeticamente fechados. Em
qualquer HD, você encontra um pequeno orifício para entrada de ar
(geralmente escondido embaixo da placa lógica ou diretamente sob a tampa
superior), que permite que pequenos volumes de ar entrem e saiam, mantendo
a pressão interna do HD sempre igual à do ambiente. Esse orifício é sempre
protegido por um filtro, que impede a entrada de partículas de poeira.




                                                                          403
Orifício de ventilação do HD

Devido a isso, a pressão do ar tem uma certa influência sobre a operação do
HD. Os HDs são normalmente projetados para funcionar a altitudes de até
3.000 metros acima do nível do mar. Em altitudes muito elevadas, a pressão do
ar é menor, comprometendo a criação do colchão de ar. Para casos extremos
(uso militar, por exemplo), existem HDs pressurizados, que podem trabalhar a
qualquer altitude.

Internamente, o HD possui um segundo filtro, que filtra continuamente o ar
movimentado pelos discos. Ele tem a função de capturar as partículas que se
desprendam dos componentes internos durante o uso, devido a desgaste ou
choques diversos. Aqui temos uma foto de um, preso num dos cantos da parte
interna do HD:




                                                                          404
Filtro interno

Enquanto o HD está desligado, as cabeças de leitura ficam em uma posição de
descanso. Elas só saem dessa posição quando os discos já estão girando à
velocidade máxima. Para prevenir acidentes, as cabeças de leitura voltam à
posição de descanso sempre que não estão sendo lidos dados, apesar dos
discos continuarem girando.

É justamente por isso que às vezes, ao sofrer um pico de tensão, ou o micro
ser desligado enquanto o HD está sendo acessado, surgem setores
defeituosos. Ao ser cortada a energia, os discos param de girar e é desfeito o
colchão de ar, fazendo com que as cabeças de leitura possam vir a tocar os
discos magnéticos.

Para diminuir a ocorrência desse tipo de acidente, nos HDs modernos é
utilizado um sistema que recolhe as cabeças de leitura automaticamente para a
área de descanso quando a energia é cortada (tecnologia chamada de auto-
parking). A área de descanso é também chamada de "landing zone" e engloba
algumas das trilhas mais centrais do disco, uma área especialmente preparada
para receber o impacto do "pouso" das cabeças de leitura. Uma das
tecnologias mais populares é a LZT (Laser Zone Texture), uma tecnologia
desenvolvida pela IBM, onde um laser é usado para produzir pequenas
cavidades ao longo da zona de pouso, que reduzem o atrito com a cabeça de
leitura:




                                                                          405
Outra técnica consiste em usar "rampas" feitas de material plástico,
posicionadas na área externa dos discos, que suspendem as cabeças de
leitura, evitando que elas toquem os discos mesmo quando eles param de
girar. Esta tecnologia foi inicialmente usada em HDs de notebook, mas
recentemente passou a ser usada também nos de 3.5" para desktops. Ela pode
parecer simples, mas na verdade exige bastante tecnologia, devido à precisão
necessária:




              Rampas de descanso para as cabeças de leitura

Apesar de evitar danos físicos, o auto-parking nada pode fazer para evitar
perda de dados ao desligar o micro incorretamente. Mesmo que todos os
arquivos estejam salvos, ainda existem dados no cache de disco (criado pelo
sistema operacional, usando parte de memória RAM) e também no cache do
HD, que utiliza memória SDRAM (também volátil). Para acelerar as operações
de gravação, todos os arquivos (sobretudo os pequenos) são salvos
inicialmente nos caches e depois transferidos para os discos magnéticos em
momentos de ociosidade. Quando o micro é desligado abruptamente, os dados
em ambos os caches são perdidos, fazendo com que você sempre perca as
últimas alterações, muitas vezes em arquivos que acreditava estarem salvos.


                                                                         406
Por causa de tudo isso, é sempre importante usar um nobreak em micros de
trabalho. A longo prazo, os dados perdidos e possíveis danos ao equipamento
por causa de quedas de energia acabam custando muito mais do que um
nobreak popular.

Mesmo assim, por melhores que sejam as condições de trabalho, o HD
continua sendo um dispositivo baseado em componentes mecânicos, que têm
uma vida útil muito mais curta que a de outros componentes do micro. De uma
forma geral, os HDs para desktop funcionam de forma confiável por de dois a
três anos (em um PC usado continuamente). Depois disso, é melhor substituir
o HD por um novo e mover o antigo para outro micro secundário, onde ele não
vá armazenar informações importantes, pois a possibilidade de defeitos
começa a crescer exponencialmente.

Fala-se muito sobre a vulnerabilidade dos HDs com relação a ímãs. Como os
HDs armazenam os dados em discos magnéticos, colocar um ímã
suficientemente forte próximo a ele pode apagar rapidamente todos os dados.
Existem inclusive "desmagnetizadores", que são eletroímãs ligados na tomada,
que você passa sobre os HDs e outros discos magnéticos, justamente com a
intenção de apagar os dados rapidamente.

Entretanto, se você abrir um HD condenado, vai encontrar dois ímãs
surpreendentemente fortes instalados dentro do mecanismo que move a
cabeça de leitura. Naturalmente, estes ímãs não danificam os dados
armazenados (senão não estariam ali ;). O principal motivo disso é que eles
estão instalados numa posição perpendicular aos discos magnéticos. Se você
remover os ímãs e colocá-los sobre outro HD, vai ver que no outro dia uma
boa parte dos dados terão sido perdidos.

Se você (como todos nós) é do tipo que não consegue desmontar um micro
sem deixar cair parafusos nos locais mais inacessíveis do gabinete, tem
dificuldades em colocar os parafusos dos dois lados ao instalar o HD e ainda
por cima nunca acha uma chave de fenda magnética para comprar, pode usar
esses magnetos "roubados" do HD para transformar qualquer chave de fenda
em uma chave magnética. Basta "encaixar" os ímãs nela quando quiser o
efeito. Esses magnetos são feitos de uma liga contendo neodímio e, além de
parafusos, permitem levantar objetos um pouco mais pesados, como martelos,
por exemplo... ;)




                                                                         407
Naturalmente, você deve tomar cuidado de não passá-los sobre discos
magnéticos, a menos que queira intencionalmente apagá-los. Se você deixar a
chave em contato com os ímãs por um longo período, ela continuará
magnetizada (por algum tempo) mesmo depois de retirá-los.

Ao contrário da crença popular, chaves magnéticas não são perigosas para os
HDs, pois os magnetos usados são muito fracos se comparados aos magnetos
usados no mecanismo de leitura e no motor de rotação do HD. Os próprios
discos magnéticos são relativamente resistentes a forças magnéticas externas,
de forma que ímãs de baixa potência não oferecem grande perigo.

A placa controladora

A placa lógica, ou placa controladora, é a parte "pensante" do HD. Com
exceção dela, o HD é um dispositivo relativamente simples, composto por uma
série de dispositivos mecânicos. É a controladora que faz a interface com a
placa-mãe, controla a rotação do motor e o movimento das cabeças de leitura,
de forma que elas leiam os setores corretos, faz a verificação das leituras, de
forma a identificar erros (e se possível corrigi-los, usando os bits de ECC
disponíveis em cada setor), atualiza e usa sempre que possível os dados
armazenados no cache de disco (já que acessá-lo é muito mais rápido do que
fazer uma leitura nas mídias magnéticas) e assim por diante.

Aqui temos a placa lógica de um HD Samsung HD080HJ:




                                                                           408
Veja que a placa possui apenas três chips. O maior, no canto superior, é um
Samsung K4S641632H-UC60. Você pode notar que ele é muito semelhante a
um chip de memória, e na verdade é :). Ele é um chip de memória SDRAM de
8 MB, que armazena o cache de disco. Até pouco tempo atrás, os HDs
utilizavam chips de memória SRAM, mas os fabricantes passaram a utilizar,
cada vez mais, chips de memória SDRAM convencional para reduzir o custo de
produção. Na prática não muda muita coisa, pois apesar de mais lenta, a
memória SDRAM oferece desempenho suficiente para a tarefa.

Assim como no caso dos processadores, o cache é um componente importante
para o desempenho do HD. Ele armazena os dados acessados, diminuindo
bastante o número de leituras. Dados armazenados no cache podem ser
transferidos quase que instantaneamente, usando toda a velocidade permitida
pela interface SATA ou IDE, enquanto um acesso a dados gravados nos discos
magnéticos demoraria muito mais tempo.

Continuando, temos o controlador principal, um chip Marvell 88i6525, que é
quem executa todo o processamento. Este chip é na verdade um SOC (System
On a Chip), formado por um conjunto de vários chips menores, que são
combinados dentro do mesmo wafer de silício.

Por exemplo, este HD é um modelo SATA. A controladora da placa-mãe se
comunica com ele utilizando comandos padronizados, que são comuns a

                                                                        409
qualquer HD SATA. É por isso que você não precisa instalar um driver especial
para cada modelo de HD, precisa apenas de um driver padrão, que sabe se
comunicar com qualquer HD. Internamente, os comandos SATA são
processados e convertidos nos comandos que irão mover a cabeça de leitura,
fazer girar os discos até o ponto correto e assim por diante. O sistema
operacional não gerencia diretamente o cache de disco, quem faz isso é a
própria controladora, que se esforça para usá-lo da forma mais eficiente
possível.

Naturalmente, tudo isso exige processamento, daí a complexidade interna do
chip controlador. Apesar de pequena, a placa controladora de um disco atual é
muito mais sofisticada do que um micro antigo inteiro (um 286 por exemplo).
Elas possuem mais poder de processamento e até mesmo mais memória, na
forma do cache. Os HDs atuais usam de 8 a 32 MB de cache de disco, mais
memória do que era usada em micros 386 e 486 e, ainda por cima, muito mais
rápida! :)

Uma curiosidade é que muitos HDs antigos utilizavam um processador Intel
186 como controlador de discos. O 186 é, como você pode imaginar, o "elo
perdido" entre o 8088 usado no PC XT e o 286. Ele é um chip que acabou não
sendo usado nos micros PCs, mas fez um grande sucesso como
microcontrolador para funções diversas.

Concluindo, temos um terceiro chip, escondido na parte inferior esquerda da
foto. Ele é um Hitachi HA13645, um chip especializado, que controla o
movimento das cabeças de leitura e também a rotação do motor. O chip
principal envia comandos a ele, dizendo que quer acessar o setor X, ou que o
motor deve entrar em modo de economia de energia, por exemplo, e ele os
transforma nos impulsos elétricos apropriados. Essas funções mudam de um
modelo de HD para o outro, por isso os fabricantes preferem usar um chip de
uso geral como o Marvell 88i6525 como controlador principal, mudando apenas
o controlador auxiliar, que é um chip menor e mais barato.

A placa controladora é um componente "externo" do HD, que pode ser
rapidamente substituído caso necessário. Grande parte (talvez até a maioria)
dos casos onde o HD "queima" devido a problemas na rede elétrica, ou
defeitos diversos, podem ser solucionados através da troca da placa
controladora, permitindo recuperar os dados sem ter que recorrer aos caros
serviços de uma empresa especializada.

O grande problema é justamente onde encontrar outra placa. Os fabricantes
vendem placas avulsas em pequenas quantidades para empresas de
recuperação, mas o fornecimento é muito restrito. Para técnicos autônomos e
pequenas empresas, a única solução é usar placas doadas por outros HDs. Se
o HD for um modelo recente, você pode simplesmente comprar outro, pegar a
placa emprestada para fazer a recuperação dos dados e depois devolvê-la ao
dono. Mas, no caso de HDs mais antigos, a única forma é procurar nos sites de
leilão e fóruns em busca de uma placa usada. Existe um verdadeiro mercado
paralelo de venda de placas avulsas, já que existem muitos casos de HDs
inutilizados por problemas na mídia magnética, onde a placa ainda é utilizável.

                                                                           410
É comum que os fabricantes utilizem a mesma placa lógica e os mesmos
discos magnéticos em vários HDs da mesma família, variando apenas o
número de discos usados. Assim, o modelo de 500 GB pode ter 4 discos,
enquanto o modelo de 250 GB possui apenas dois, por exemplo. Nesses
casos, é normal que a placa controladora de um funcione no outro.

Remover a placa é simples, basta usar uma chave torx para remover os
parafusos e desencaixar a placa com cuidado. Na maioria dos HDs atuais, a
placa é apenas encaixada sobre os contatos, mas em outros ela é ligada
através de um cabo flat, que precisa ser desconectado com cuidado.




Mais uma curiosidade é que os primeiros PCs utilizavam HDs com interfaces
MFM ou RLL. Eles utilizavam controladoras externas, instaladas em um slot
ISA e ligadas ao HD por dois cabos de dados. Esse arranjo era muito
ineficiente, pois a distância tornava a comunicação muito suscetível a
interferências e corrupção de dados. Esses HDs possuíam várias
peculiaridades com relação aos atuais, como a possibilidade de fazer uma
"formatação física", onde as trilhas de dados eram realmente regravadas, o que
permitia recuperar HDs com problemas de alinhamento.

Esses HDs jurássicos foram usados nos micros XT e 286 e sobreviveram até
os primeiros micros 386, quando foram finalmente substituídos pelos HDs IDE
(que por sua vez foram substituídos pelos HDs SATA que usamos atualmente),
onde a controladora é parte integrante do HD.

Hoje em dia, a "formatação física" sobrevive apenas como um vício de
linguagem. Muitos dizem que "fizeram uma formatação física" ao reparticionar
o HD ou ao usar um programa que apaga os dados gravados (como o "zero-
fill", ou o "dd" do Linux), embora uma coisa não tenha nada a ver com a outra.


                                                                          411
Os discos

A capacidade de um HD é determinada por basicamente dois fatores: a
tecnologia utilizada, que determina sua densidade e o diâmetro dos discos, que
determina a área útil de gravação.

A densidade de gravação dos HDs tem aumentado de forma surpreendente,
com a introdução de sucessivas novas técnicas de fabricação. Para você ter
uma idéia, no IBM 350 os discos eram simplesmente pintados usando uma
tinta especial contendo limalha de ferro, um processo bastante primitivo.

Com o passar do tempo, passou a ser usado o processo de eletroplating, que é
semelhante à eletrólise usada para banhar bijuterias à ouro. Esta técnica não
permite uma superfície muito uniforme e justamente por isso só funciona em
discos de baixa densidade. Ela foi usada até o final da década de 80.

A técnica usada atualmente (chamada de sputtering) é muito mais precisa.
Nela a superfície magnética é construída depositando grãos microscópicos de
forma incrivelmente uniforme. Quanto menores os grãos, mais fina e sensível é
a superfície, permitindo densidades de gravação mais altas.

A densidade de gravação de um HD é medida em gigabits por polegada
quadrada. Os HDs fabricados na segunda metade de 2006, por exemplo,
utilizavam em sua maioria discos com densidade de 100 gigabits (ou 12.5 GB)
por polegada quadrada. Neles, cada bit é armazenado em uma área magnética
com aproximadamente 200x50 nanômetros (uma área pouco maior que a de
um transístor nos processadores fabricados numa técnica de 0.09 micron) e é
composta por apenas algumas centenas de grãos magnéticos. Estes grãos
medem apenas alguns nanômetros e são compostos por ligas de cobalto,
cromo, platina, boro e outros materiais raros, muito longe da limalha de ferro
utilizada pelos pioneiros.

Considerando que os discos giram a 7200 RPM e a cabeça de leitura lê os
dados a mais de 50 MB/s (quando lendo setores seqüenciais), atingir
densidades como as atuais é simplesmente impressionante.

Este esquema mostra como funciona o processo de escrita e gravação em um
HD:




                                                                          412
Como você pode ver, a cabeça é composta por dois dispositivos separados,
um para gravação e outro para leitura. O dispositivo de gravação é similar a um
eletroímã, onde é usada eletricidade para criar o campo magnético usado para
realizar a gravação. Nos primeiros HDs, tínhamos um filamento de cobre
enrolado sobre um corpo de ferro. Nos HDs atuais, os materiais usados são
diferentes, mas o princípio de funcionamento continua o mesmo.

O dispositivo de leitura, por sua vez, faz o processo oposto. Quando ele passa
sobre os bits gravados, capta o campo magnético emitido por eles, através de
um processo de indução (nos HDs antigos) ou resistência (nos atuais),
resultando em uma fraca corrente, que é posteriormente amplificada.

O dispositivo de leitura é protegido por um escudo eletromagnético, que faz
com que ele capte apenas o campo magnético do bit que está sendo lido, e
não dos seguintes. Você pode notar que não existe isolamento entre os
dispositivos de leitura e gravação. Isso acontece porque apenas um deles é
usado de cada vez.

Note que essa divisão existe apenas nos HDs modernos, que utilizam cabeças
de leitura/gravação MR ou GMR. Nos antigos, que ainda utilizavam cabeças de
leitura de ferrite, o mesmo dispositivo fazia a leitura e a gravação.

O grande problema é que, assim como em outras áreas da informática, a
tecnologia avançou até o ponto em que se começou a atingir os limites físicos
da matéria. Em um HD, a área referente a cada bit armazenado funciona como
um minúsculo ímã, que tem sua orientação magnética alterada pela cabeça de
leitura. Quando ela é orientada em um sentido temos um bit 1 e no sentido
oposto temos um bit 0. A área da superfície utilizada para a gravação de cada
bit é chamada de "magnetic element", ou elemento magnético.

A partir de um certo ponto, a área de gravação torna-se tão pequena que a
orientação magnética dos bits pode ser alterada de forma aleatória pela própria
energia térmica presente no ambiente (fenômeno chamado de
superparamagnetismo), o que faz com que a mídia deixe de ser confiável.



                                                                           413
A tecnologia usada nos HDs fabricados até a primeira metade de 2007 é
chamada de gravação longitudinal (longitudinal recording), onde a orientação
magnética dos bits é gravada na horizontal, de forma paralela à mídia. O
problema é que a partir dos 100 gigabits por polegada quadrada, tornou-se
muito difícil aumentar a densidade de gravação, o que acelerou a migração
para o sistema de gravação perpendicular (perpendicular recording), onde a
orientação magnética passa a ser feita na vertical, aumentando muito a
densidade dos discos.

Estima-se que, utilizando gravação longitudinal, seria possível atingir
densidades de no máximo 200 gigabits por polegada, enquanto que utilizando
gravação perpendicular seja possível atingir até 10 vezes mais. Isso significa
que os fabricantes ainda terão margem para produzir HDs de até 10 terabytes
antes de esgotar as possibilidades oferecidas pela nova tecnologia.

Na gravação perpendicular, a mídia de gravação é composta de duas
camadas. Inicialmente temos uma camada de cromo, que serve como um
indutor, permitindo que o sinal magnético gerado pelo dispositivo de gravação
"atravesse" a superfície magnética, criando um impulso mais forte e, ao mesmo
tempo, como uma espécie de isolante entre a superfície de gravação e as
camadas inferiores do disco.

Ele poderia (até certo ponto) ser comparado à camada extra usada nos
processadores fabricados com tecnologia SOI (silicon on insulator), onde uma
camada isolante é criada entre os transístores e o wafer de silício, reduzindo a
perda de elétrons e, conseqüentemente, o consumo elétrico do processador.

Sobre a camada de cromo, são depositados os grãos magnéticos. A diferença
é que agora eles são depositados de forma que a orientação magnética seja
vertical, e não horizontal. A cabeça de leitura e gravação também é modificada,
de forma a serem capazes de lidar com a nova orientação:




Embora pareça uma modificação simples, o uso da gravação perpendicular em
HDs é uma conquista técnica notável. Em termos comparativos, seria como se
a NASA conseguisse enviar uma missão tripulada até Marte.

                                                                            414
O processo de gravação perpendicular foi adotado rapidamente por todos os
principais fabricantes. O primeiro foi a Fujitsu, que lançou um HD de 1.8" com
gravação perpendicular ainda em 2005. A próxima foi a Seagate que, em abril
de 2006, anunciou o Barracuda 7200.10, um disco de 3.5" com 750 GB. Em
agosto de 2006 a Fujitsu anunciou um HD de 2.5" com 160 GB, e em Janeiro
de 2007 a Hitachi anunciou o Deskstar 7K1000, um HD de 3.5" com 1 TB, que
utiliza um design incomum, com 5 platters em vez dos 4 comumente usados.

Em seguida, temos a questão do diâmetro dos discos. Como vimos, os
primeiros HDs eram gigantescos, e utilizavam discos de até 24 polegadas de
diâmetro. Com o passar das décadas, os discos foram encolhendo, até chegar
ao que temos hoje.

Mas, como tudo na vida, existem receitas ideais para o tamanho dos discos
magnéticos, de acordo com a área onde eles serão utilizados.

O problema em produzir discos muito compactos é que a superfície de
gravação fica exponencialmente menor, permitindo gravar um volume menor
de dados. Apesar disso, os demais componentes continuam custando quase o
mesmo (ou até mais, dependendo da escala de miniaturização necessária).
Isso faz com que o custo por megabyte cresça, conforme o tamanho físico do
HD diminui. Um exemplo prático disso é a diferença no custo por megabyte
entre os HDs de 2.5" para notebooks e os modelos de 3.5" para desktops.

A partir de um certo nível de miniaturização, o custo por megabyte se torna
mais alto que o dos cartões de memória Flash, e os HDs deixam de ser viáveis.
O melhor exemplo é o HD de 0.85" apresentado pela Toshiba em 2005, que
tinha como objetivo atender o mercado de palmtops e smartphones. Ele era tão
pequeno que podia ser produzido no formato de um cartão SD e possuía um
consumo elétrico baixíssimo:




O problema é que ele seria lançado em versões de apenas 2 e 4 GB, com
preços a partir de US$ 150. Com a rápida queda no custo da memória Flash,
logo surgiram cartões de 2 e 4 GB que custavam menos, de forma que o mini-
HD acabou não encontrando seu lugar no mercado e foi descontinuado
silenciosamente.

                                                                          415
O interessante é que o oposto também é verdadeiro. HDs com discos muito
grandes também acabam sendo inviáveis, pois são mais lentos e mais
passíveis de problemas que HDs baseados em discos menores. Isso se deve a
vários fatores.

O primeiro é a questão da rotação, já que discos maiores são mais pesados e
demandam um maior esforço do motor de rotação, consumindo mais energia e
gerando mais calor e mais barulho. Discos maiores também acabam sendo
menos rígidos, o que impede que sejam girados a velocidades muito altas e
tornam todo o equipamento mais sensível a impactos. Dobrar o diâmetro dos
discos faz com que a rigidez proporcional seja reduzida em até 75%.

O segundo é a dificuldade de produção. Com o avanço da tecnologia, a mídia
de gravação precisa ser cada vez mais fina e uniforme. Quanto maiores os
discos, mais difícil é recobrir toda a superfície sem o surgimento de um grande
número de pontos defeituosos.

Como se não bastasse, temos o terceiro motivo, que é o maior tempo de
acesso, já que com uma superfície maior as cabeças de leitura demoram muito
mais tempo para localizar os dados (justamente devido à maior distância a ser
percorrida). Se combinarmos isso com a velocidade mais baixa de rotação,
acabamos tendo uma redução muito grande no desempenho.

Isso explica porque os HDs com discos de 5.25" usados nos primeiros PCs
foram rapidamente substituídos pelos de 3.5". O pico evolutivo dos HDs de
5.25" foram os Quantum Bigfoot, produzidos até 1999, em capacidades de até
18 GB. Embora eles armazenassem um maior volume de dados por platter, a
velocidade de rotação era bem mais baixa (apenas 3600 RPM), os tempos de
acesso eram maiores e, ainda por cima, a durabilidade era menor.

Os HDs de 3.5" e de 2.5" atuais parecem ser o melhor balanço entre os dois
extremos. Os HDs de 3.5" oferecem um melhor desempenho, mais capacidade
de armazenamento e um custo por megabyte mais baixo (combinação ideal
para um desktop), enquanto os HDs de 2.5" são mais compactos, mais
silenciosos, consomem menos energia e são mais resistentes a impactos,
características fundamentais no caso dos notebooks.

Temos ainda os HDs de 1.8" (mais finos e do tamanho de um cartão PCMCIA),
que são usados em notebooks ultra-portáteis, além de mp3players e alguns
dispositivos de armazenamento portátil.

Uma quarta categoria são os microdrives, que utilizam discos de 1" (pequenos
o suficiente para serem produzidos no formato de cartões CompactFlash) e
podem ser utilizados em palmtops e mp3players. Eles foram utilizados no Palm
Life Drive (4 GB) e também no iPod Nano (4 e 8 GB), mas acabaram perdendo
seu espaço para os cartões de memória Flash. A Hitachi chegou a anunciar o
desenvolvimento de microdrives de 20 GB, utilizando tecnologia de gravação
perpendicular, mas a produção em série acabou sendo cancelada, pois o preço
de venda seria mais alto que o da mesma quantidade de memória Flash.


                                                                           416
Para organizar o processo de gravação e leitura dos dados, a superfície dos
discos é dividida em trilhas e setores. As trilhas são círculos concêntricos, que
começam no final do disco e vão se tornando menores conforme se aproximam
do centro. É diferente de um CD-ROM ou DVD, onde temos uma espiral
contínua.

Cada trilha recebe um número de endereçamento, que permite sua localização.
A trilha mais externa recebe o número 0 e as seguintes recebem os números 1,
2, 3, e assim por diante. Para facilitar ainda mais o acesso aos dados, as trilhas
se dividem em setores, que são pequenos trechos de 512 bytes cada um, onde
são armazenados os dados.

Além das trilhas e setores, temos também as faces de disco. Como vimos, os
HDs atuais possuem de 1 a 4 discos. Como são utilizadas ambas as faces de
cada disco, temos um total de 2 a 8 faces e o mesmo número de cabeças de
leitura.

Como todas as cabeças de leitura estão presas no mesmo braço móvel, elas
não possuem movimento independente. Para acessar informações
armazenadas na trilha 199.982 da face de disco 3, por exemplo, a controladora
do disco ativa a cabeça de leitura responsável pelo disco 3 e, a seguir, ordena
ao braço de leitura que se dirija à trilha correspondente. Não é possível que
uma cabeça de leitura esteja na trilha 199.982 ao mesmo tempo que outra
esteja na trilha 555.631 de outro disco, por exemplo.

Já que todas as cabeças de leitura sempre estarão na mesma trilha de seus
respectivos discos, deixamos de chamá-las de trilhas e passamos a usar o
termo "cilindro". Um cilindro nada mais é do que o conjunto de trilhas com o
mesmo número nos vários discos. Por exemplo, o cilindro 1 é formado pela
trilha 1 de cada face de disco, o cilindro 2 é formado pela trilha 2 de cada face,
e assim por diante. Esta antiga ilustração da Quantum mostra como funciona
esta divisão:




                                                                              417
A trilha mais externa do disco possui mais que o dobro de diâmetro da trilha
mais interna e, conseqüentemente, possui capacidade para armazenar um
volume muito maior de dados. Porém, nos primeiros discos rígidos, assim
como nos disquetes, todas as trilhas do disco, independentemente de seu
diâmetro, possuíam o mesmo número de setores, fazendo com que nas trilhas
mais externas, os setores ocupassem um espaço muito maior do que os
setores das trilhas mais internas.

Tínhamos então um grande espaço desperdiçado, pois era preciso nivelar por
baixo, fazendo com que todas as trilhas possuíssem o mesmo número de
setores permitido pelas trilhas mais internas, acabando por desperdiçar
enormes quantidades de espaço nas primeiras trilhas do disco.

Atualmente, os HDs utilizam o Zoned bit Recording (ZBR), que permite variar a
quantidade de setores por trilha, de acordo com o diâmetro da trilha a ser
dividida, permitindo uma organização mais racional do espaço em disco e,
conseqüentemente, uma maior densidade de gravação.

O HD pode ter então 1584 setores por trilha na área mais externa dos discos e
apenas 740 na área mais interna, por exemplo. Como os discos giram sempre
na mesma velocidade, isso causa um pequeno efeito colateral, que é uma
considerável variação no desempenho de acordo com a área do disco que está
sendo lida, proporcional ao número de setores por trilha.

Trocando em miúdos, o desempenho ao ler as trilhas mais externas acaba
sendo mais que o dobro do obtido ao ler as mais internas. É por isso que em
geral se recomenda colocar a partição com a instalação do sistema, ou com a
partição swap no início do disco (que corresponde às trilhas mais externas)
para obter o melhor desempenho.

Usando um programa de benchmark que permita realizar uma leitura
seqüencial de toda a superfície do HD, como o HD Tach, você obterá sempre

                                                                          418
um gráfico similar a este, onde a taxa de leitura começa num nível alto (trilhas
externas) e vai decaindo até atingir o ponto mais baixo no final do teste (ao ler
o conteúdo das trilhas mais internas):




Um dos principais motivos do desempenho dos HDs não ter crescido na
mesma proporção da capacidade ao longo das últimas décadas é que a
densidade das trilhas aumentou numa escala muito maior que a dos setores
dentro destas. Ou seja, as trilhas foram ficando mais "finas", mas o número de
setores por trilha passou a aumentar em escala incremental. Aumentar o
número de trilhas permite aumentar a área de armazenamento, mas é o
número de setores por trilha, combinado com a velocidade de rotação do HD
que determina a performance.

Um antigo Maxtor 7040A, de 40 MB, por exemplo, possuía uma taxa de leitura
média em torno de 700 KB/s, o que permitia ler todo o conteúdo do disco em
cerca de um minuto.

Um Seagate Barracuda 7200.10 atual, de 750 GB, é bem mais rápido, com
uma taxa média de leitura de 64 MB/s, mas, apesar disso, como a capacidade
é brutalmente maior, ler todos os dados do disco demoraria pelo menos 3:15
horas!

No futuro, esta tendência deve se manter, pois é muito mais simples para os
fabricantes produzir cabeças de leitura e sistemas de codificação capazes de
lidarem com trilhas mais finas, do que espremer mais dados dentro de cada
trilha, já que elementos magnéticos mais curtos correspondem a um sinal
magnético mais fraco e mais difícil de ser captado pela cabeça de leitura.
Como um agravante, temos o problema do superparamagnetismo, que vimos
há pouco.




                                                                             419
Correção de erros e badblocks

Concluindo, temos a questão da detecção e correção de erros, que faz parte do
processo de leitura e gravação.

Por melhor que seja sua qualidade, nenhuma mídia magnética é 100%
confiável (como pode confirmar quem já teve o desprazer de trabalhar com
disquetes ;). Pequenas falhas na superfície da mídia podem levar a erros de
leitura, sobretudo quando ela possui uma densidade de gravação de mais de
100 gigabits por polegada quadrada e gira a 7.200 RPM ou mais, como nos
HDs atuais.

Isso não significa que o seu HD vá pifar amanhã, mas que são comuns erros
na leitura de um setor ou outro. Obviamente, como todos os nossos dados
importantes são guardados no disco rígido, a possibilidade de erros na leitura
de "um setor ou outro" não seria aceitável, principalmente no caso de máquinas
destinadas a operações críticas. Imagine se, nesse "setor ou outro" do servidor
de um grande banco, estivessem gravados os dados referentes à conta
bancária de um cliente importante, por exemplo.

De modo a tornar os HDs uma forma de armazenamento confiável, os
fabricantes utilizam sistemas de ECC para detectar e corrigir erros de leitura
eventualmente encontrados. O ECC é o mesmo sistema utilizado em módulos
de memória destinados a servidores e também em CD-ROMs, onde são
usados nada menos do que 276 bytes de códigos de correção de erros para
cada setor de 2048 bytes.

Em um HD, cada setor armazena, além dos 512 bytes de dados, mais algumas
dezenas de bytes contendo os códigos ECC. A criação dos bytes de ECC,
assim como sua utilização posterior é feita pela placa lógica, um processo
automático que é feito de forma completamente transparente ao sistema
operacional.

Quando um setor é lido pela cabeça de leitura, juntamente com os dados são
lidos alguns dos códigos ECC, que visam apenas verificar se os dados que
estão sendo lidos são os mesmos que foram gravados, uma técnica que
lembra o sistema de paridade antigamente usado na memória RAM. Caso seja
verificado um erro, são usados os demais códigos para tentar corrigir o
problema. Na grande maioria dos casos, esta primeira tentativa é suficiente.
Estes erros transitórios, que são corrigidos com a ajuda dos códigos ECC são
chamados de "soft errors" e não causam nenhum efeito colateral além de um
delay de alguns milissegundos na leitura.

Caso não seja possível corrigir o erro usando o ECC, a controladora faz uma
nova tentativa de leitura do setor, pois é grande a possibilidade do erro ter sido
causado por alguma interferência ou instabilidade momentânea. Caso o erro
persista, ela fará várias tentativas sucessivas, reduzindo a velocidade de
rotação dos discos e comparando o resultado de várias leituras, de forma a
tentar recuperar os dados gravados no setor. Esse processo gera aquele ruído

                                                                              420
característico de HD sendo "mastigado" e quase sempre indica o aparecimento
de um badblock.

Por serem defeitos físicos na mídia magnética, não existe muito o que fazer
com relação a eles. O jeito é marcar os badblocks, de forma que eles não
sejam mais usados.

Os HDs atuais são capazes de marcar automaticamente os setores
defeituosos. A própria controladora faz isso, independentemente do sistema
operacional. Existe uma área reservada no início do disco chamada "defect
map" (mapa de defeitos) com alguns milhares de setores que ficam reservados
para alocação posterior. Sempre que a controladora do HD encontra um erro
ao ler ou gravar num determinado setor, ela remapeia o setor defeituoso,
substituindo-o pelo endereço de um setor "bom", dentro do defect map. Como a
alocação é feita pela própria controladora, o HD continua parecendo intacto
para o sistema operacional.

De fato, é normal que os HDs já venham de fábrica com alguns setores
remapeados, causados por pequenas imperfeições na superfície da mídia.
Como eles não são visíveis para o sistema operacional, nem causam
problemas no uso normal, acabam passando despercebidos.

Naturalmente, o defect map é uma área limitada, que corresponde
normalmente a uma única trilha. Caso o HD possua algum problema crônico,
eventualmente os endereços se esgotarão e os badblocks realmente passarão
a se tornar visíveis.

Deste ponto em diante, entram em cena utilitários como o scandisk (no
Windows) e o badblocks (no Linux), que permitem realizar um exame de
superfície, marcando os setores defeituosos encontrados. Estes setores não
são marcados no defect map, mas sim em uma área reservada da partição.

Um grande número de setores defeituosos são indício de problemas graves,
como envelhecimento da mídia, defeitos no mecanismo de leitura ou mesmo
contaminação do HD por partículas provenientes do ambiente. O ideal nesses
casos é fazer backup de todos os dados e substituir o HD o mais rápido
possível.

Entretanto, mesmo para estes HDs condenados, às vezes existe uma solução.
É comum a maioria dos setores aparecerem mais ou menos agrupados,
englobando uma área relativamente pequena do disco. Se houver muitos
badblocks em áreas próximas, você pode reparticionar o disco, isolando a área
com problemas.

Se, por exemplo, você percebesse que a maioria dos defeitos se encontra nos
últimos 20% do disco, bastaria abrir o particionador, deletar a partição atual e
criar uma nova, englobando apenas 80% do disco. Neste caso, você perderia
uma boa parte da área útil, mas pelo menos teria a possibilidade de continuar
usando a parte "boa" do HD (em algum micro usado para tarefas secundárias,
sem dados importantes), até que ele desse seus derradeiros suspiros.



                                                                            421
Desempenho

O desempenho do HD é determinado basicamente pela densidade dos discos,
velocidade de rotação e, em menor grau, pelo tamanho do cache de leitura e
suporte ao NCQ. Por ser um componente mecânico, não existe muito o que os
fabricantes possam fazer para melhorar o desempenho de forma considerável
sem mexer nesses fatores.

Outra questão é que o mercado de HDs é um ramo incrivelmente competitivo,
de forma que tecnologias revolucionárias, como, por exemplo, a técnica de
gravação perpendicular, são rapidamente adotadas por todos os fabricantes, já
que os que não são capazes de acompanhar a evolução tecnológica
simplesmente não conseguem se manter no mercado.

Em se tratando de HDs "normais", destinados ao mercado de consumo, dois
HDs produzidos na mesma época, com a mesma velocidade de rotação e a
mesma quantidade de cache, tendem a possuir um desempenho muito
parecido.

Na hora da compra você deve se preocupar mais em não levar para casa HDs
antigos, baseados em tecnologias obsoletas que por algum motivo tenham
ficado parados no estoque dos distribuidores. Um HD de 120 GB produzido em
2007 muito provavelmente possuirá um único platter e será mais rápido que um
HD produzido um ano atrás, com a mesma capacidade, mas que utilize dois
platters, mesmo que ambos sejam de 7200 RPM e sejam vendidos por mais ou
menos o mesmo preço.

Existem ainda casos de HDs "premium", que utilizam tecnologias recentemente
introduzidas ou mudanças radicais no design e dessa forma conseguem ficar
um passo à frente em termos de desempenho. Eles naturalmente ficam no topo
das tabelas comparativas, mas em geral não são uma boa opção de compra
fora de nichos muito específicos, pois sempre possuem um custo por megabyte
muito mais alto.

Um bom exemplo são os Maxtor Atlas 15K II, uma série de HDs SCSI que até
2006 estavam entre os mais rápidos do mercado, em detrimento da capacidade
de armazenamento.

Como você pode ver na foto a seguir, embora o Atlas 15K II fosse um HD de
3.5", internamente ele utilizava discos de 2.5", similares aos usados em
notebooks. O menor diâmetro dos discos reduz a capacidade de
armazenamento, mas permitiu que os discos girassem a 15.000 RPM. O menor
diâmetro também permitiu reduzir o tempo de acesso (já que a distância a ser
percorrida pelas cabeças de leitura era menor) o que, combinado com outras
melhorias, resultou num HD Ultra 320 SCSI com tempo de acesso de apenas
5.5 ms e taxa de leitura seqüencial (nas trilhas externas) de 98 MB/s:




                                                                          422
Atlas 15K II: um HD de 3.5", com discos de 2.5"

O problema é que, além de caro, a capacidade de armazenamento era
pequena, mesmo para os padrões da época. O modelo com 1 platter
armazenava apenas 37 GB, enquanto o modelo com 4 armazenava 147 GB.
Ou seja, você pagaria até US$ 1.000 para ter uma capacidade equivalente à de
um HD low-end.

De uma forma geral, o melhor em termos de custo-benefício é comprar HDs de
geração atual, escolhendo entre os modelos de baixo custo e substituir o HD a
cada 18 ou 24 meses, se possível revendendo o antigo (por algum motivo os
HDs costumam ser um item valorizado no mercado de componentes usados,
talvez porque todo mundo sempre precisa de mais espaço ;). Dessa forma,
você vai conseguir sempre manter o seu equipamento relativamente
atualizado, gastando pouco.

Acaba sendo muito melhor do que gastar o dobro, tentando comprar "o melhor
HD", que vai estar desatualizado da mesma forma daqui a dois anos. Tenha
em mente que a vida útil de qualquer equipamento é limitada, então só vale a
pena gastar mais se o ganho de desempenho realmente for lhe trazer um
retorno tangível ao longo desse período.

Em um servidor, o investimento em HDs topo de linha pode compensar em
muitos casos, já que um melhor desempenho equivale a mais requisições e,
conseqüentemente, mais clientes atendidos. A perda acumulada de algumas
visitas diárias, ao longo de alguns anos, poderia corresponder a um prejuízo
equivalente a várias vezes o valor investido nos HDs, por exemplo.

Mas, tenha em mente que o perfil de uso de disco em um servidor é bem
diferente do uso em um desktop típico, sem contar que, dada a sua
importância, pequenos ganhos de desempenho podem realmente compensar
pequenas extravagâncias, o que não é o caso de um desktop típico.



                                                                         423
Por mais que você mantenha vários programas abertos e realize muitas
operações ao mesmo tempo, não vai conseguir chegar nem perto do que
acontece num servidor web, por exemplo, que precisa responder a um grande
volume de requisições simultâneas a cada segundo.

Num servidor típico, são realizadas um enorme número de pequenas leituras,
que são usadas para montar as páginas ou arquivos que serão enviados aos
clientes. Um fórum com um grande número de mensagens pode facilmente
resultar em um banco de dados de 10 ou mesmo 20 GB, contendo uma
infinidade de pequenas mensagens de texto e ter 1000 ou 2000 visitantes
simultâneos em determinados períodos.

Para cada página a ser exibida, o servidor precisa ler várias entradas dentro do
banco de dados (o tópico propriamente dito, informações sobre os usuários e
assim por diante). Mesmo com o uso de caches, não é difícil imaginar que
tantas requisições simultâneas levam o desempenho dos HDs ao limite. Nesse
cenário, qualquer redução no tempo de acesso representa um grande ganho
de desempenho.

Em um desktop, o HD acaba sendo mais relacionado ao tempo de boot e
carregamento dos programas, por isso a taxa de transferência acaba sendo o
item mais importante. A única operação que se aproxima um pouco do que
acontece nos servidores é o uso intensivo de swap, onde o HD também precisa
realizar um grande número de pequenas leituras. Entretanto, nesses casos o
problema não seria o HD, mas sim a falta de memória RAM. O único swap bom
é o swap que não é feito. :)

Em casos onde você realmente faz questão do melhor desempenho,
normalmente faz mais sentido usar 2 ou 4 HDs medianos em RAID 0 do que
comprar um único HD topo de linha. Considere também a compra de mais
memória RAM (já que mais memória significa menor uso de swap e mais cache
de disco) e também o uso o ReadyBoost do Vista em conjunto com um
Pendrive de 2 GB ou mais (o ganho de desempenho ao usar o ReadyBoost
não é tão grande assim, mas como os pendrives são atualmente bastante
baratos, o custo-benefício acaba compensando). Para a maioria das tarefas, o
ganho de desempenho é maior do que o uso de um HD mais rápido.

Existem ainda casos onde o desempenho simplesmente não é um fator
importante, como por exemplo no caso de HDs secundários, usados apenas
para guardar arquivos ou fazer backup, onde você acessa os dados apenas
esporadicamente. Nesses casos, o melhor negócio é simplesmente procurar os
HDs com o menor custo por megabyte, dentro da capacidade de que você
precisa e escolher um baseado na reputação do fabricante. Em casos como
este, um HD mais lento, de 5400 RPM, pode ser até desejável, já que eles
consomem menos energia e geram menos calor que os de 7200 RPM.

De qualquer forma, é importante entender os fatores que determinam o
desempenho dos HDs, de forma a não ser enganado pelas frases floridas
usadas pelos fabricantes e não fazer feio nas rodas de amigos. :)


                                                                            424
Tempo de Busca (Seek Time)

Ao comparar dois HDs fabricados na mesma época, que utilizam a mesma
velocidade de rotação e possuem uma capacidade e número de discos similar
(o que indica que possuem mais ou menos a mesma densidade), o tempo de
busca é provavelmente o único fator que pode diferir de forma significativa
entre os dois.

O tempo de busca indica o tempo que a cabeça de leitura demora para ir de
uma trilha à outra do disco, ou seja, indica a performance do actuator usado no
HD. O tempo de busca é importante, pois ele é o fator que mais influencia no
tempo de acesso e conseqüentemente na performance geral do HD.

Existem três índices diferentes para o cálculo do tempo de busca: Full Stroke,
Track-to-Track e Average.

O primeiro (Full Stroke) indica o tempo que a cabeça de leitura demora para se
deslocar da primeira até a última trilha do HD, o que normalmente demora
entre 15 e 20 milissegundos. Como é o maior dos três, este valor não costuma
ser divulgado muito abertamente pelos fabricantes.

O Track-to-Track é justamente o oposto; o tempo que a cabeça demora para
mudar de uma trilha para a seguinte. Como a distância a ser percorrida é muito
pequena, ele costuma ser muito baixo, inferior a 1 milissegundo. Como ele é o
valor mais baixo dos três, muitos fabricantes divulgam o valor do Track-to-
Track nas especificações, omitindo os outros dois.

Finalmente, temos o Average (valor médio), que é justamente um meio termo
entre os dois. Ele indica o tempo médio que a cabeça demora para se
locomover até um setor aleatório do HD. Ao pesquisar nas especificações,
procure justamente se informar sobre o valor Average, já que ele é o mais
indicativo dos três.

Aqui temos as especificações de um Samsung HD300LJ, um HD de 300 GB e
7.200 RPM, que era um modelo de médio custo no início de 2007:

      Track to Track: 0.8 ms

      Average: 8.9 ms

      Full Stroke: 18 ms

Aqui temos as de um Western Digital Raptor X, um "topo de linha" de 10.000
RPM, que utiliza platters de 2.5". O menor diâmetro dos discos faz com que ele
tenha apenas 150 GB de capacidade (2 discos), mas em troca permitiu obter
tempos de acesso bem mais baixos:

Read Seek Time: 4.6 ms


                                                                           425
Write Seek Time: 5.2 ms (average)

Track-To-Track Seek Time: 0.4 ms (average)

Full Stroke Seek: 10.2 ms (average)

Veja que as descrições usadas pela Samsung e pela Western Digital são
ligeiramente diferentes.

Tanto o "Average" da Samsung quanto o "Read Seek Time" da WD referem-se
ao tempo de busca médio para operações de leitura. A WD incluiu também o
Write Seek Time, que é o tempo de busca para operações de gravação, que é
sempre um pouco mais alto e por isso nem sempre divulgado nas
especificações.

Como você pode ver, esses são dois exemplos extremos. O Raptor possui
tempos de busca quase 50% menores, mas em compensação é mais caro e
possui menos da metade da capacidade do Samsung. Você acaba pagando
muito mais caro pela maior desempenho.

Tempo de Latência (Latency Time)


Dentro do disco rígido, os discos magnéticos giram continuamente. Por isso,
dificilmente os setores a serem lidos estarão sob a cabeça de leitura/gravação
no exato momento de executar a operação. No pior dos casos, pode ser
necessária uma volta completa do disco até o setor desejado passar
novamente sob a cabeça de leitura.

O tempo de latência é tão importante quanto o tempo de busca. Felizmente, ele
é fácil de ser calculado, bastando dividir 60 pela velocidade de rotação do HD
em RPM (rotações por minuto), e multiplicar o resultado por 1000. Teremos
então o tempo de latência em milissegundos. Um HD de 5400 RPM, por
exemplo, terá um tempo de latência de 11.11 milissegundos (o tempo de uma
rotação), já que 60 ÷ 5200 x 1000 = 11.11.

Geralmente é usado o tempo médio de latência, que corresponde à metade de
uma rotação do disco (assumindo que os setores desejados estarão, em
média, a meio caminho da cabeça de leitura). Um HD de 5400 RPM teria um
tempo de latência médio de 5.55 ms, um de 7.200 RPM de 4.15 ms e um de
10.000 RPM de apenas 3 ms.

Muitos fabricantes publicam o tempo de latência médio nas especificações ao
invés do tempo de busca ou o tempo de acesso (já que ele é menor), o que
acaba confundindo os desavisados.




                                                                          426
Tempo de Acesso (Access Time)

O tempo de acesso é a combinação do tempo de busca e do tempo de
latência, o tempo médio necessário para realizar um acesso a um setor
aleatório do HD.

Assim que o comando é processado, a cabeça de leitura é movida para a trilha
especificada (tempo de busca) e aguarda até que a rotação dos discos a faça
passar pelo setor especificado (tempo de latência). Aos dois, somamos
também o settle time (o tempo que a cabeça de leitura demora para estabilizar
depois de movimentada) e o command overhead time, que é o tempo que a
placa controladora demora para processar o comando e iniciar ambas as
operações. Estes dois valores são bem menos significantes (somam algo em
torno de 0.5 ms), por isso nem sempre são divulgados pelos fabricantes,
embora também entrem na conta.

Os fabricantes calculam o tempo de latência dos HDs de formas diferentes,
tornando difícil uma comparação direta. O ideal é que você mesmo calcule o
tempo de acesso médio com base nas informações anteriores.

Para isso, basta somar o tempo de busca médio (Average) e o tempo de
latência, calculado com base na velocidade de rotação dos discos. Como é
muito difícil encontrar o settle time e o command overhead time nas
especificações, você pode adicionar 0.5 ms, que é um valor aproximado.

O Samsung HD300LJ tem tempo de busca de 8.9 ms e latência de 4.15 ms.
Adicionando os 0.5 ms temos um total de 14.55 ms.

Um Seagate ST3200822A (um modelo IDE, de 200 GB) tem tempo de busca
de 8.5 ms. Como ele também é um modelo de 7.200 RPM, a latência também é
de 4.15 ms, o que (incluindo os 0.5 ms) daria um total de 14.15 ms.

O Raptor X tem apenas 4.6 ms de tempo de busca e, por ser um HD de 10.000
RPM, tem latência de 3 ms. Somando os 0.5 ms, teríamos um total de 9.1 ms.

Veja que a diferença entre o HD300LJ ST3200822A é muito pequena. O
Raptor consegue ser 35% mais rápido, mas em compensação é muito mais
caro, como vimos.

Apesar de importante, o tempo de acesso é um fator que não deve ser
superestimado. Ele afeta o desempenho do HD quando é lida uma grande
quantidade de arquivos pequenos, espalhados pelo HD, mas não afeta muito a
taxa de transferência seqüencial, que é o que você vê ao carregar um
programa pesado ou copiar uma grande quantidade de arquivos, por exemplo.




                                                                         427
Head Switch Time

Um disco rígido é composto internamente por (na grande maioria dos casos) de
1 a 4 discos, sendo que cada disco possui duas faces e temos uma cabeça de
leitura para cada face. Mesmo possuindo várias cabeças de leitura, apenas
uma delas pode ser usada de cada vez, de forma que a controladora precisa
constantemente chavear entre elas durante a leitura ou gravação dos dados.

Você poderia perguntar por que os dados não são organizados de forma que a
controladora pudesse ler e gravar usando todas as cabeças simultaneamente,
com cada uma armazenando parte dos arquivos, como em uma espécie de
"RAID interno". O problema aqui é que é tecnicamente impossível manter as
trilhas dos diferentes discos perfeitamente alinhadas entre si.

Quando a controladora chaveia de uma cabeça de leitura para a outra, é
necessário executar o procedimento normal de posicionamento, onde ela
verifica as marcações servo dos discos e o braço de leitura move-se para a
posição apropriada.

Devido a isso, o chaveamento acaba demorando um pouco mais do que
poderíamos pensar inicialmente. Ele é apenas um pouco menor que o tempo
de busca Track-to-Track e quase sempre proporcional a ele.

Embora o Head Switch Time não seja um fator tão significativo quanto o tempo
de acesso, ele acaba sendo um fator importante para a taxa de leitura
seqüencial do HD, já que a controladora lê um cilindro por vez, chaveando
entre todas as cabeças antes de ir para o próximo.

Taxa de Transferência Interna (Internal Transfer Rate)


A taxa de transferência interna é a velocidade "real" do HD ao ler arquivos
gravados em setores seqüenciais. Se tivéssemos à mão todas as
especificações do HD, incluindo o número de setores por trilha, seria simples
calcular a taxa de leitura real do HD.

Em um HD que tivesse 1584 setores por trilha na área mais externa dos discos
e 740 na área mais interna, com 2 patters, rotação de 7200 RPM, tempo de
busca Track-to-Track de 0.8 ms e Head Switch Time de 0.6 ms, por exemplo,
teríamos o seguinte:

Cada trilha externa possui 1584 setores, cada um com 512 bytes, de forma que
temos 792 KB por trilha.

Os discos giram a 7200 RPM, de forma que temos 120 rotações por segundo.
Dividindo um segundo por 120 rotações, temos 8.33 milissegundos para cada
rotação completa do disco, que corresponde à leitura de cada trilha.



                                                                          428
Como o disco tem 2 platters, temos um total de 4 trilhas por cilindro. Para ler
cada cilindro, a cabeça de leitura precisa realizar 3 chaveamentos entre as
cabeças (0.6 ms cada) e em seguida precisa mover o braço de leitura para o
cilindro seguinte, o que demora mais 0.8 ms.

Somando tudo, a leitura de cada cilindro demora aproximadamente 36 ms, o
que significa que temos a leitura de 27.7 cilindros por segundo.

Cada cilindro é composto por 4 trilhas, o que corresponde a 3.093 MB. Se o HD
consegue ler 27.7 deles por segundo, significaria que o nosso HD hipotético
teria uma taxa de transferência interna (nas trilhas externas) de
aproximadamente 85.9 MB/s.

Nas trilhas internas a densidade cai para apenas 1.44 MB por cilindro (já que
cada trilha possui apenas 740 setores), de forma que a taxa de leitura cai para
apenas 40.1 MB/s.

Ao ler pequenos arquivos, temos a interferência do cache de disco, mas ao ler
uma grande quantidade de arquivos, ele deixa de ser eficaz (já que armazena
apenas uma pequena quantidade de dados), de forma que a taxa real de
transferência cai para os valores da taxa de transferência interna, variando
entre 85.9 MB/s e 40.1 MB/s, de acordo com a parte do disco que estivesse
sendo lida.

Quando houver referências à "Internal Transfer Rate" ou "Buffer to Disc" nas
especificações de um HD, pode ter certeza de tratar-se da velocidade
"máxima", atingida quando são lidos setores seqüenciais nas bordas do disco.
Tenha em mente que no centro do disco você obterá um pouco menos da
metade do número divulgado.

No caso dos HDs de notebook, ou de HDs que utilizam platters de 2.5" (como o
Raptor), a diferença entre a taxa de leitura nas trilhas internas e externas é
menor, numa relação de aproximadamente 2/3 em vez de 1/2.

O grande problema é que os fabricantes raramente divulgam o número de
setores por trilha, nem o Head Switch Time dos HDs, de forma que acaba
sendo impossível calcular diretamente a taxa de transferência interna com base
nas especificações. Normalmente, você encontrará apenas o número de
setores por trilhas visto pelo BIOS (64), que não tem nenhuma relação com o
número real.

Resta então usar o método empírico, realizando um teste longo de leitura,
como o teste realizado pelo HD Tach, onde são lidos grandes volumes de
dados, começando pela borda e prosseguindo até o centro dos discos. O cache
pode ajudar o início da leitura, mas os dados armazenados logo se esgotam,
deixando apenas a taxa real.

Um bom lugar para pesquisar sobre as taxas de leitura (e outros índices) de
diversos modelos é a tabela do Storage Review, disponível no:
http://www.storagereview.com/comparison.html.

                                                                           429
Outra tabela recomendada é a disponível                  no    TomsHardware:
http://www23.tomshardware.com/storage.html.

Outra curiosidade é que é comum que os fabricantes produzam alguns
modelos de HDs onde não são utilizadas todas as trilhas dos discos, de forma
a criar HDs com capacidades definidas, que se adaptem a determinados nichos
do mercado. Imagine, por exemplo, que o fabricante X está produzindo todos
os seus discos usando platters de 200 GB. Isso significaria que ele teria
modelos de 200, 400, 600 e 800 GB, de acordo com o número de platters
usados. Imagine agora que o fabricante Y, que ainda usa uma técnica anterior
de produção, lança um HD de 160 GB, que é mais barato que o de 200 GB do
fabricante X e por isso começa a roubar mercado dele.

Ao invés de reduzir o custo do HD de 200 GB e perder dinheiro na venda de
todos os HDs, o fabricante X pode criar um HD de 160 GB fazendo uma
simples alteração no firmware do HD de 200 GB, que faça a controladora
deixar de usar as trilhas mais externas do disco. Ele pode agora vender estes
HDs de "160 GB" a um preço mais baixo, sem ter que mexer no preço do
restante da linha. Por incrível que possa parecer, isto é bastante comum.

NCQ

A grande maioria dos HDs SATA atuais suporta o NCQ, onde a controladora
utiliza o tempo ocioso, entre uma leitura e outra, para estudar e reorganizar a
ordem das leituras seguintes, de forma que elas possam ser executadas na
ordem em que seja necessário o menor movimento possível dos discos. É
como no caso de um ônibus, que precisa fazer um itinerário passando por
diversos pontos da cidade. Com o NCQ o motorista tem autonomia para fazer
alterações na rota, de acordo com as condições do trânsito, escolhendo a rota
mais rápida.

Esta ilustração fornecida pela nVidia mostra como o sistema funciona. O HD à
esquerda não possui suporte a NCQ, de forma que, ao realizar 4 leituras a
setores aleatórios do disco ele precisa realizá-las em ordem, fazendo com que
sejam necessários um número maior de rotações do disco, À direita, o HD com
NCQ usa um atalho para realizar a mesma seqüência de leitura em menos
tempo, lendo os setores fora de ordem:




                                                                           430
HD sem NCQ (à esquerda) e com NCQ

Na prática, o NCQ pode melhorar a taxa de transferência do HD em até 10%
em situações específicas, onde são lidos diversos arquivos pequenos
espalhados pelo HD, como durante o carregamento do sistema operacional, ou
de um programa pesado, mas faz pouca diferença quando você está
transferindo grandes arquivos. De qualquer forma, ele é uma otimização
implementada via software, que não aumenta o custo de produção dos discos e
não tem contra indicações.




                                                                        431
Cache (Buffer)

Embora não seja tão importante para o desempenho quanto geralmente se
pensa, o cache permite à controladora executar um conjunto de operações
úteis para melhorar o desempenho.

Geralmente ao ler um arquivo, serão lidos vários setores seqüenciais. A forma
mais rápida de fazer isso é, naturalmente, fazer com que a cabeça de leitura
leia de uma vez todos os setores da trilha, passe para a trilha seguinte, passe
para a terceira e assim por diante. Isso permite obter o melhor desempenho
possível.

O problema é que na prática não é assim que funciona. O sistema pede o
primeiro setor do arquivo e só solicita o próximo depois de recebê-lo e
certificar-se de que não existem erros.

Se não houvesse nenhum tipo de buffer, a cabeça de leitura do HD acabaria
tendo que passar várias vezes sobre a mesma trilha, lendo um setor a cada
passagem, já que não daria tempo de ler os setores seqüencialmente depois
de todo tempo perdido antes de cada novo pedido.

Graças ao cache, este problema é resolvido, pois a cada passagem a cabeça
de leitura lê todos os setores próximos, independentemente de terem sido
solicitados ou não. Após fazer sua verificação de rotina, o sistema solicitará o
próximo setor, que por já estar carregado no cache será fornecido em tempo
recorde.

Nos HDs atuais, o cache pode ser usado também nas operações de escrita.
Imagine, por exemplo, que a controladora está ocupada lendo um arquivo
longo e o sistema solicita que ela atualize um pequeno arquivo de log. Em vez
de precisar parar o que está fazendo, a controladora pode armazenar a
operação no cache e executá-la mais adiante, em um momento de ociosidade.

Nos HDs SATA com NCQ, a controladora possui liberdade para reorganizar as
operações, realizando-as de forma que sejam concluídas mais rápido. A
controladora passa então a armazenar os dados no cache, de forma que,
depois de concluídas as operações, possa organizar os dados e entregá-los na
ordem correta para o sistema.

O espaço excedente é usado para armazenar os últimos arquivos acessados,
de forma que eles possam ser fornecidos rapidamente caso sejam requisitados
novamente. A principal vantagem de usar um cache maior seria justamente ter
mais espaço para arquivos. A questão é que o sistema operacional também
mantém um cache de leitura e gravação utilizando a memória RAM que, por
ser maior que o cache do HD, acaba sendo mais eficiente e também mais
rápido, já que o cache do HD tem sua velocidade de transferência limitada à
velocidade da interface IDE ou SATA, enquanto o cache feito pelo sistema
operacional está limitado apenas à velocidade de acesso da própria memória
RAM.

                                                                            432
Esse é o principal motivo de um HD com mais cache não ser tão mais rápido
quanto se pensa. Enquanto dobrar o tamanho do cache L2 de um processador
aumenta seu desempenho em até 10%, aumentar o cache de um HD de 16
para 32 MB, por exemplo, acaba aumentando seu desempenho real em menos
de 1% na maioria das aplicações. Uma pequena quantidade de cache é
importante por causa de todos os recursos que vimos, mas a partir de um certo
ponto, o tamanho do cache acaba fazendo pouca diferença.

No final das contas, a melhor forma de melhorar o desempenho do HD é
comprando mais memória :). No caso do Windows XP, verifique a configuração
do cache de disco no Painel de Controle > Sistema > Avançado >
Configurações > Avançado > Uso de memória, mudando de "Uso dos
programas" para "Cache do sistema". No caso do Windows 98/ME a
configuração fica no Painel de Controle > Sistema > Performance, onde a
opção "Servidor de rede" é a que reserva mais memória para o cache. No caso
do Linux, o cache é gerenciado de forma automática pelo sistema, usando a
memória disponível, de forma que não é necessária nenhuma configuração
adicional.




Atualmente muito se fala nos HDs híbridos, onde é utilizado um cache maior,
feito de memória Flash. A principal vantagem neste caso é que os dados
armazenados no cache são preservados mesmo ao desligar o micro,
permitindo que sejam usados no boot seguinte. Muitos arquivos carregados
durante o boot (sobretudo arquivos pequenos) podem então ficar
permanentemente armazenados no cache, tornando mais rápido o boot e o
carregamento dos programas mais usados. Veremos mais detalhes sobre os
HDs híbridos e outras tecnologias similares mais adiante.




                                                                         433
MTBF e service life

Duas informações que constam nas especificações dos HD e que são
freqüentemente mal entendidas são o MTBF e o service life, que se destinam a
dar uma idéia estimada da confiabilidade do HD.

MTBF significa "Mean Time Between Failures" ou "tempo médio entre falhas".
A maioria dos HDs de baixo custo, destinados ao mercado doméstico,
possuem MTBF de 300.000 ou 600.000 horas, enquanto os modelos high-end,
ou destinados a servidores, normalmente ostentam um MTBF de 1.200.000
horas. Complementando temos o "service life" ou "component design life", que
normalmente é de 5 anos.

Como era de se esperar, o service life indica o tempo de vida "recomendado"
pelo fabricante. Como o HD é composto por componentes mecânicos, um certo
desgaste é acumulado durante o uso, culminando na falha do HD. Um service
life de 5 anos indica que o HD é projetado para durar 5 anos e que a grande
maioria das unidades deve realmente resistir ao tempo especificado.

O MTBF, por sua vez, não é uma indicação do tempo de vida do HD, mas sim
indica a percentagem de chance do HD apresentar defeito antes do final do
service life. Se o service life é de 5 anos e o MTFB é de 600.000 horas,
significa que existe uma possibilidade de 1.4% do seu HD apresentar defeito
antes disso.

Parece complicado, mas na verdade não é tanto :). A idéia é que se você
tivesse um datacenter com 1.000 HDs iguais, um deles pifaria em média a cada
600.000 horas somadas (somando os 1.000 HDs), ou seja a cada 25 dias, ao
longo dos primeiros 5 anos de uso. Depois isso, você pode esperar que a taxa
de mortalidade seja cada vez maior nos anos seguintes, embora um pequeno
número dos HDs possa resistir a 10 anos de uso ou mais.

Outra forma de explicar seria que, se você substituísse seu HD por outro igual
a cada 5 anos, aposentando os antigos, seriam necessárias (em média)
600.000 horas, ou seja, 68.4 anos para que você perdesse os dados por causa
de falha em um dos HDs.

Ou seja, tudo gira em torno de possibilidades. Se você for "sortudo", mesmo
um HD com MTBF de 1.200.000 horas pode pifar no primeiro mês de uso, da
mesma forma que o HD de 200 reais do vizinho pode resistir durante 10 anos e
ainda voltar a funcionar depois de removido o pó acumulado ;). O MTBF
apenas serve como um indicativo da possibilidade de qualquer um dos dois
extremos ocorrer.

Outra questão interessante é sobre como o MTBF é calculado, já que
obviamente o fabricante não tem como realizar um teste de 5 anos antes de
colocar um novo HD no mercado. Normalmente o número é calculado com
base nos materiais e tecnologia usados na fabricação, simulações, dados
estatísticos sobre outros modelos similares lançados anteriormente e, em geral,

                                                                           434
também um teste piloto de curta duração, usando algumas dezenas de
unidades.

Complementando, temos também o "Start/Stop Cycles", ou seja, o número de
ciclos de desligamento que o drive é projetado para suportar. Quando o HD é
ligado, o motor de rotação precisa realizar um esforço maior que o habitual
para acelerar os discos, o que acentua o desgaste. Nos HDs antigos, onde
ainda não são utilizadas rampas para estacionar as cabeças de leitura, existe
também o desgaste causado pelo atrito das cabeças ao tocar a landing zone a
cada desligamento.

Contam não apenas o número de vezes em que o micro é desligado, mas
também o número de vezes que o HD entra em modo de economia de energia.
Os HDs atuais normalmente são projetados para suportarem 50.000 ciclos, de
forma que este normalmente não é um problema dentro do uso normal.

Tenha apenas o cuidado de não configurar o tempo de desligamento do HD
com valores muito agressivos, como de 1 em 1 minuto por exemplo. Se o HD
precisar acelerar 30 vezes por hora, pode ter certeza de que isso poderá levar
a uma falha prematura mais cedo ou mais tarde. :)

Como sempre, estamos falando sobre probabilidade e não sobre dados
infalíveis. Um exemplo histórico são os IBM Deskstar 75GX que, devido a um
conjunto de problemas de projeto, possuíam uma taxa de mortalidade
assustadoramente alta, embora possuíssem um MTBF de 500.000 horas. O
caso foi tão grave que acabou dando origem a uma ação coletiva por parte dos
usuários afetados, que levou a um recall dos drives. Pouco depois a IBM
decidiu sair do ramo de produção de HDs, vendendo toda a divisão para a
Hitachi.

Como de praxe, a única forma de se proteger contra falhas é fazer backups
regulares. Existe ainda a opção de utilizar um sistema RAID 1, onde temos dois
HDs e o segundo armazena uma cópia atualizada do conteúdo do primeiro. O
RAID não substitui o backup, mas evita que seu servidor ou máquina de
trabalho fique fora do ar enquanto você restaura os dados.

As interfaces

Assim como outros componentes, as interfaces usadas como meio de conexão
para os HDs passaram por um longo caminho evolutivo.

As placas-mãe usadas nos primeiros PCs sequer possuíam interfaces de disco
embutidas. Naquela época, as interfaces IDE ainda não existiam, de forma que
novas interfaces eram vendidas junto com os HDs e instaladas em slots ISA
disponíveis. A primeira interface foi criada pela Seagate, para uso em conjunto
com o ST-506, um HD de 5 MB. Em seguida foi lançado o ST-412, de 10 MB.
As duas interfaces são chamadas respectivamente de MFM e RLL devido ao
método de codificação usado. Além da Seagate, estes HDs e interfaces foram
produzidos também por outros fabricantes, como a Quantum e a Maxtor.


                                                                           435
Em 1985 a Quantum lançou um produto bastante peculiar, o "Plus HardCard",
que era um HD RLL de 20 MB onde tanto o HD quanto a controladora eram
integrados a uma única placa ISA, e o "HD" era instalado diretamente no slot,
sem ocupar uma das baias do gabinete. Como você pode imaginar, estes HDs
eram um tanto quanto problemáticos, pois a placa era presa por um único
parafuso, o que causava problemas de vibração excessiva e barulho. Mesmo
assim, o Plus HardCard foi um produto relativamente popular na época:




O padrão seguinte foi o ESDI (Enhanced Small Device Interface), criado por um
consórcio de diversos fabricantes, incluindo a Maxtor. As interfaces ESDI ainda
eram instaladas em slots ISA, mas trabalhavam a uma velocidade muito maior
que as MFM e RLL, oferecendo um barramento teórico de 3 MB/s. É bem
pouco para os padrões atuais, mas os HDs da época trabalhavam com taxas
de transferências muito mais baixas, de forma que a velocidade acabava sendo
mais do que satisfatória.

IDE

Tanto as interfaces MFM e RLL quanto a ESDI possuem uma característica em
comum, que é o fato de a controladora fazer parte da interface (e não do
próprio HD, como temos hoje em dia). Naturalmente, integrar a controladora ao
HD oferece diversas vantagens, pois elimina os problemas de sincronismo
causados pelo uso de cabos longos e simplifica todo o design.

Não demorou para que os fabricantes percebessem isso. Surgiu então o
padrão IDE, abreviação de "Integrated Drive Eletronics" (que indica justamente
o uso da controladora integrada), desenvolvido pela Quantum e a Western
Digital.

Os primeiros HDs e interfaces IDE chegaram ao mercado em 1986, mas
inicialmente não existia um padrão bem definido, o que fez com que os
primeiros anos fossem marcados por problemas de compatibilidade entre os
produtos dos diferentes fabricantes.

Em 1990 o padrão foi ratificado pelo ANSI, dando origem ao padrão ATA.
Como o nome "IDE" já estava mais difundido, muita gente continuou usando o
termo "IDE", e outros passaram a usar "IDE/ATA" ou simplesmente "ATA",
fazendo com que os dois termos acabassem virando sinônimos.


                                                                           436
As primeiras placas IDE traziam apenas uma ou duas portas IDE e eram
instaladas em um slot ISA de 16 bits. Mas, logo os fabricantes passaram a
integrar também outros conectores, dando origem às placas "super-ide", que
eram usadas na grande maioria dos micros 386 e 486. As placas mais comuns
incluíam uma porta IDE, uma porta FDD (para o drive de disquete), duas portas
seriais e uma paralela, além do conector do joystick:




                 Placa super-ide, usada em micros 386 e 486

Como você pode ver, estas placas eram configuradas através de um conjunto
de jumpers, já que na época ainda não existia plug-and-play. Os jumpers
permitiam configurar os endereços de IRQ, DMA e I/O usados, além de
desativar os componentes individualmente. Se você precisasse de duas portas
paralelas, por exemplo, utilizaria duas placas e configuraria uma delas para
usar o IRQ 5 e endereço de I/O 378 e a outra para usar o IRQ 7 e o endereço
de I/O 278.

A partir de um certo ponto, os fabricantes passaram a integrar os controladores
diretamente no chipset da placa-mãe, dando origem às placas com conectores
integrados que conhecemos. A exceção ficou por conta do conector do joystick,
que passou a ser integrado nas placas de som. Uma curiosidade é que o
conector inclui também os pinos usados por dispositivos MIDI (como teclados
musicais), que também são ligados no conector do joystick, através de um
adaptador:




                                                                           437
Inicialmente, as interfaces IDE suportavam apenas a conexão de HDs. Devido
a isso, os primeiros drives de CD utilizavam interfaces proprietárias,
incorporadas à placa de som, ou mesmo controladoras SCSI. Na época eram
comuns os "kits multimídia", que incluíam o CD-ROM, placa de som, caixinhas
e microfone.

Para solucionar o problema, foi desenvolvido o protocolo ATAPI (AT
Attachment Packet Interface) que tornou-se rapidamente o padrão, riscando as
interfaces proprietárias do mapa. É graças a ele que você pode comprar um
drive de CD ou DVD e instalá-lo diretamente em uma das portas IDE, sem ter
que comprar junto uma placa de som do mesmo fabricante. :)

Na placa-mãe você encontra duas portas IDE (primária e secundária). Mesmo
com a popularização das interfaces SATA, as portas IDE ainda continuam
sendo incluídas nas placas recentes (muitas placas passaram a trazer apenas
uma porta IDE, mas deve demorar mais um pouco até que elas desapareçam
completamente).

Cada uma das portas permite instalar dois drives, de forma que podemos
instalar um total de 4 HDs ou CD-ROMs na mesma placa:




                                                                         438
Existem casos de placas-mãe com 4 portas IDE (permitindo usar até 8 drives) e
também controladoras IDE PCI, que incluem duas portas adicionais, que
podem ser usadas em casos onde você precise usar mais do que 4 drives IDE
no mesmo micro.

Para diferenciar os dois drives instalados na mesma porta, é usado um jumper,
que permite configurar cada drive como master (mestre) ou slave.

Dois drives instalados na mesma porta compartilham o barramento oferecido
por ela, o que acaba sempre causando uma pequena perda de desempenho.
Por isso, quando são usados apenas dois drives (um HD e um CD-ROM, por
exemplo), é preferível instalar cada um em uma das portas, deixando ambos
jumpeados como master. Ao adicionar um terceiro, você poderia escolher entre
instalar na primeira ou segunda porta IDE, mas, de qualquer forma, precisaria
configurá-lo como slave, mudando a posição do jumper.

Instalar cada drive em uma porta separada ajuda principalmente quando você
precisa copiar grandes quantidades de dados de um HD para outro, ou gravar
DVDs, já que cada drive possui seu canal exclusivo com o chipset.

No Windows, os drives são simplesmente identificados de forma seqüencial. O
HD instalado como master da IDE primária apareceria no Windows Explorer
como "C:" e o CD-ROM, instalado na IDE secundária como "D:", por exemplo.
Se você adicionasse um segundo HD, instalado como slave da primeira IDE,
ele passaria a ser o "D:" e o CD-ROM o "E:".

No Linux, os drives recebem endereços fixos, de acordo com a posição em que
forem instados:
                            Master = /dev/hda
       IDE primária
                            Slave = /dev/hdb
                            Master = /dev/hdc
       IDE secundária
                            Slave = /dev/hdd


O cabo IDE possui três encaixes, onde um é ligado na placa-mãe e os outros
dois são ligados cada um em um dos dois dispositivos. Mesmo que você tenha
apenas um dispositivo IDE, você deverá ligá-lo no conector da ponta, nunca no
conector do meio. O motivo para isto, é que, ligando no conector do meio, o
cabo ficará sem terminação, fazendo com que os dados venham até o final do
cabo e retornem na forma de interferência, prejudicando a transmissão.

Como de praxe, as interfaces IDE/ATA passaram por um longo caminho
evolutivo. As interfaces antigas, usadas em micros 386/486 e nos primeiros
micros Pentium, suportam (de acordo com seu nível de atualização), cinco
modos de operação, que vão do PIO mode 0, ao PIO mode 4:




                                                                          439
Modo de Operação          Taxa de transferência
PIO mode 0                3.3 MB/s
PIO mode 1                5.2 MB/s
PIO mode 2                8.3 MB/s
PIO mode 3                11.1 MB/s
PIO mode 4                16.6 MB/s

As mais recentes suportam também o Multiword DMA, que é um modo de
acesso direto, onde o HD ou CD-ROM pode transferir dados diretamente para
a memória, sem que o processador precise se envolver diretamente na
transferência. O uso do DMA melhora bastante o desempenho e a
responsividade do sistema, evitando que o micro "pare" enquanto um programa
pesado está sendo carregado, ou durante a gravação de um CD, por exemplo.

Apesar disso, o Multiword DMA não chegou a ser muito usado, pois não era
diretamente suportado pelo Windows 95 e os drivers desenvolvidos pelos
fabricantes freqüentemente apresentavam problemas de estabilidade. Para
piorar, muitos drives de CD e HDs antigos não funcionavam quando o DMA era
ativado.

A solução veio com o padrão ATA-4, ratificado em 1998. Ele nada mais é do
que o padrão Ultra ATA/33 (o nome mais popularmente usado) que é usado em
placas para micros Pentium II e K6-2 fabricadas até 2000. Nele, a taxa de
transferência máxima é de 33 MB/s e é suportado o modo UDMA 33, que
permite transferências diretas para a memória também a 33 MB/s. É graças a
ele que você pode assistir a filmes em alta resolução e DVDs no seu PC sem
falhas

Você pode fazer uma experiência, desativando temporariamente o suporte     a
UDMA para o seu DVD-ROM para ver o que acontece. No Linux, use             o
comando "hdparm -d0 /dev/dvd" (como root). No Windows, acesse              o
gerenciador de dispositivos, acesse as propriedades do drive e desmarque   a
opção referente ao DMA.

Tente agora assistir a um DVD. Você vai perceber que tanto o vídeo quanto o
som ficam cheios de falhas, tornando a experiência bastante desagradável.
Isso acontece porque, com o UDMA desativado, o processador precisa
periodicamente parar o processamento do vídeo para ler mais dados no DVD.
Quanto mais rápido o processador, mais curtas são as falhas, mas elas
persistem mesmo em um processador de 2 ou 3 GHz.

Para reverter, use o comando "hdparm -d1 /dev/dvd" ou marque novamente a
opção do DMA, no caso do Windows.

Depois que o problema do DMA foi finalmente resolvido, os fabricantes se
concentraram em aumentar a velocidade das portas. Surgiram então os
padrões ATA-5 (Ultra ATA/66), ATA-6 (Ultra ATA/100) e ATA-7 (Ultra
ATA/133), que é o usado atualmente. Eles suportam (respectivamente), os
modos UDMA 66, UDMA 100 e UDMA 133, além de manterem compatibilidade

                                                                        440
com                   os                  padrões                   anteriores:

Modo de Operação                              Taxa de transferência
ATA-4 (Ultra ATA/33, UDMA 33)                 33 MB/s
ATA-5 (Ultra ATA/66, UDMA 66)                 66 MB/s
ATA-6 (Ultra ATA/100, UDMA 100)               100 MB/s
ATA-7 (Ultra ATA/133, UDMA 133)               133 MB/s

As portas ATA/133 usadas nas placas atuais são uma necessidade, por dois
motivos. O primeiro é que os HDs atuais já superam a marca dos 70 ou 80
MB/s de taxa de transferência ao ler setores contínuos, e a interface precisa
ser substancialmente mais rápida que o HD para absorver também as
transferências feitas a partir do cache, que são bem mais rápidas. O segundo
motivo é que só a partir das interfaces ATA/100 foi introduzido o suporte a HDs
IDE com mais de 137 GB (decimais) de capacidade, como veremos em
detalhes a seguir.

Para que os modos mais rápidos sejam utilizados, é necessário que exista
também suporte por parte do HD e que o driver correto esteja instalado.

No caso do HD, não existe muito com o que se preocupar, pois os fabricantes
são os primeiros a adotar novos modos de operação, de forma a diferenciar
seus produtos. Se você tem em mãos um HD antigo, que só suporta UDMA 33,
por exemplo, pode ter certeza de que a taxa de transferência oferecida por ele
é baixa, o que torna desnecessário o uso de uma interface mais rápida em
primeiro lugar.

Ao contrário dos HDs, os drivers de CD e DVD ficaram estagnados no UDMA
33, pois como eles trabalham com taxas de transferência muito mais baixas, os
padrões mais rápidos também não trazem vantagens. É possível que alguns
fabricantes eventualmente passem a lançar drives "ATA/133", usando a
interface mais rápida como ferramenta de marketing, mas isso não faria
diferença alguma no desempenho.

Como de praxe, devo insistir na idéia de que a velocidade da interface
determina apenas o fluxo de dados que ela pode transportar e não a
velocidade real do dispositivo ligado a ela. Um CD-ROM de 52x lerá as mídias
a no máximo 7.8 MB/s, independentemente da velocidade da interface.
Funciona como numa auto-estrada: se houver apenas duas pistas para um
grande fluxo de carros, haverá muitos congestionamentos, que acabarão com a
duplicação da pista. Porém, a mesma melhora não será sentida caso sejam
construídas mais faixas.

Continuando, junto com as interfaces Ultra ATA/66, veio a obrigatoriedade do
uso de cabos IDE de 80 vias, substituindo os antigos cabos de 40 vias. Eles
são fáceis de distinguir dos antigos, pois os fios usados no cabo são muito
mais finos, já que agora temos o dobro deles no mesmo espaço:




                                                                           441
Cabo IDE de 80 vias (à esquerda) e cabo de 40 vias

A adição dos 40 finos adicionais é uma história interessante, pois eles não se
destinam a transportar dados. Tanto os conectores quanto os encaixes nos
drives continuam tendo apenas 40 pinos, mantendo o mesmo formato dos
cabos anteriores. Os 40 cabos adicionais são intercalados com os cabos de
dados e servem como neutros, reduzindo o nível de interferência entre eles.
Este "upgrade" acabou sendo necessário, pois os cabos IDE de 40 vias foram
introduzidos em 1986, projetados para transmitir dados a apenas 3.3 MB/s!

Os cabos de 80 vias são obrigatórios para o uso do UDMA 66 em diante. A
placa-mãe é capaz de identificar o uso do cabo de 80 vias graças ao pino 34,
que é ligado de forma diferente. Ao usar um cabo antigo, de 40 vias, a placa
baixa a taxa de transmissão da interface, passando a utilizar o modo UDMA 33.

Veja que no caso dos CD-ROMs e DVDs, ainda é comum o uso dos cabos de
40 vias, simplesmente porque, como vimos, eles ainda utilizam o modo UDMA
33. Entretanto, se você precisar instalar um HD junto com o drive óptico, é
interessante substituir o cabo por um de 80 vias, caso contrário o desempenho
do HD ficará prejudicado.

Outra exigência trazida pelos novos padrões é o uso de cabos com no máximo
45 centímetros de comprimento, já que acima disso o nível de interferência e
atenuação dos sinais passa a prejudicar a transmissão dos dados. O padrão
ATA original (o de 1990) permitia o uso de cabos de até 90 centímetros (!) que
não são mais utilizáveis hoje em dia, nem mesmo para a conexão do drive de
CD/DVD.

Mais uma mudança introduzida pelos cabos de 80 vias é o uso de cores para
diferenciar os três conectores do cabo. O conector azul deve ser ligado na
placa-mãe, o conector preto é ligado no drive configurado com master da
interface, enquanto o conector do meio (cinza) é usado para a conexão do
segundo drive, caso presente.

                                                                          442
Os cabos de 80 vias também suportam o uso do sistema cabe select (nos de
40 vias o suporte era opcional), onde a posição dos drives (master/slave) é
determinada pelo conector do cabo ao qual eles estão ligados, eliminando a
possibilidade de conflitos, já que instalar dois drives configurados como master
na mesma interface normalmente faz com que ambos deixem de ser
identificados no Setup.

Para usar o cable select é preciso colocar os jumpers dos dois drives na
posição "CS". Consulte o diagrama presente no topo ou na lateral do drive para
ver a posição correta:




             Diagrama da posição dos jumpers em um HD Maxtor

Os HDs IDE de 2.5", para notebooks, utilizam um conector IDE miniaturizado,
que possui 44 pinos (em vez de 40). Os 4 pinos adicionais transportam energia
elétrica, substituindo o conector da fonte usado nos HDs para desktop.

Existem ainda adaptadores que permitem instalar drives de 2.5" em desktops.
Eles podem ser usados tanto em casos em que você precisar recuperar dados
de um notebook com defeito quanto quando quiser usar um HD de notebook no
seu desktop para torná-lo mais silencioso.

Estes adaptadores ao muito simples e baratos de fabricar, embora o preço no
varejo varie muito, já que eles são um item relativamente raro:




                                                                            443
Adaptador IDE 2.5" > 3.5"

SATA

As interfaces IDE foram originalmente desenvolvidas para utilizar o barramento
ISA, usado nos micros 286. Assim como no barramento ISA, são transmitidos
16 bits por vez e utilizado um grande número de pinos. Como é necessário
manter a compatibilidade com os dispositivos antigos, não existe muita margem
para mudanças dentro do padrão, de forma que, mesmo com a introdução do
barramento PCI e do PCI Express, as interfaces IDE continuam funcionando
fundamentalmente da mesma forma.

Mesmo quando foram introduzidas as interfaces ATA/66, a única grande
mudança foi a introdução dos cabos de 80 vias, desenvolvidos de forma a
permitir taxas de transmissão maiores, sem contudo mudar o sistema de
sinalização, nem os conectores.

A partir de um certo ponto, ficou claro que o padrão IDE/ATA estava chegando
ao seu limite e que mudanças mais profundas só poderiam ser feitas com a
introdução de um novo padrão. Surgiu então o SATA (Serial ATA).

Assim como o PCI Express, o SATA é um barramento serial, onde é
transmitido um único bit por vez em cada sentido. Isso elimina os problemas de
sincronização e interferência encontrados nas interfaces paralelas, permitindo
que sejam usadas freqüências mais altas.

Graças a isso, o cabo SATA é bastante fino, contendo apenas 7 pinos, onde 4
são usados para transmissão de dados (já que você precisa de 2 fios para
fechar cada um dos dois circuitos) e 3 são neutros, que ajudam a minimizar as
interferências.




                                                                          444
Conectores do cabo SATA

Os cabos SATA são bem mais práticos que os cabos IDE e não prejudicam o
fluxo de ar dentro do gabinete. Os cabos podem ter até um metro de
comprimento e cada porta SATA suporta um único dispositivo, ao contrário do
padrão master/slave do IDE/ATA. Por causa disso, é comum que as placas-
mãe ofereçam 4 portas SATA (ou mais), com apenas as placas de mais baixo
custo incluindo apenas duas.

No final, o ganho de desempenho permitido pela maior freqüência de
transmissão acaba superando a perda por transmitir um único bit por vez (em
vez de 16), fazendo com que, além de mais simples e barato, o padrão SATA
seja mais rápido.

Existem três padrões de controladoras SATA, o SATA 150 (também chamado
de SATA 1.5 Gbit/s ou SATA 1500), o SATA 300 (SATA 3.0 Gbit/s ou SATA
3000) e também o padrão SATA 600 (ou SATA 6.0 Gbit/s), que ainda está em
desenvolvimento. Como o SATA utiliza dois canais separados, um para enviar
e outro para receber dados, temos 150 ou 300 MB/s em cada sentido, e não
133 MB/s compartilhados, como no caso das interfaces ATA/133.

Os nomes SATA 300 e SATA 3000 indicam, respectivamente, a taxa de
transferência, em MB/s e a taxa "bruta", em megabits. O SATA utiliza o sistema
de codificação 8B/10B, o mesmo utilizado pelo barramento PCI Express, onde
são adicionados 2 bits adicionais de sinalização para cada 8 bits de dados.
Estes bits adicionais substituem os sinais de sincronismo utilizados nas
interfaces IDE/ATA, simplificando bastante o design e melhorando a
confiabilidade do barramento. Dessa forma, a controladora transmite 3000
megabits, que, devido à codificação, correspondem a apenas 300 megabytes.
Ou seja, não é um arredondamento. :)

As controladoras SATA 300 são popularmente chamadas de "SATA II" de
forma que os dois termos acabaram virando sinônimos. Mas, originalmente,
"SATA II" era o nome da associação de fabricantes que trabalhou no
desenvolvimento dos padrões SATA (entre eles o SATA 300) e não o nome de

                                                                          445
um padrão específico. Da mesma forma, o padrão de 600 MB/s chama-se
SATA 600, e não "SATA III" ou "SATA IV". Mesmo os próprios fabricantes de
HDs não costumam usar o termo "SATA II", já que ele é tecnicamente
incorreto.

Outra curiosidade é que muitas placas-mãe antigas, equipadas com
controladoras SATA 150 (como as baseadas no chipset VIA VT8237 e também
nas primeiras revisões dos chipsets SiS 760 e SiS 964), apresentam problemas
de compatibilidade com HDs SATA 300. Por causa disso, a maioria dos HDs
atuais oferecem a opção de usar um "modo de compatibilidade" (ativado
através de um jumper), onde o HD passa a se comportar como um dispositivo
SATA 150, de forma a garantir a compatibilidade. Veja as instruções impressas
na etiqueta de um HD da Samsung:




Inicialmente, os HDs e as placas-mãe com interfaces SATA eram mais caros,
devido ao tradicional problema da escala de produção. Todo novo produto é
inicialmente mais caro que a geração anterior simplesmente porque a produção
é menor. A partir do momento em que ele passa a ser produzido em
quantidade, o preço cai, até o ponto em que a geração anterior é
descontinuada.

A partir do momento em que os HDs SATA se popularizaram, o preço caiu em
relação aos IDE. Atualmente os HDs IDE são produzidos em escala cada vez
menor e por isso se tornaram mais caros e mais difíceis de encontrar do que os
HDs SATA.

No caso dos micros antigos, uma opção é instalar uma controladora SATA. As
mais baratas, com duas portas e em versão PCI, já custam menos de 20
dólares no exterior e tendem a cair de preço também por aqui, tornando-se um
item acessível, assim como as antigas controladoras USB em versão PCI,
usadas na época dos micros Pentium 1 sem interfaces USB nativas.

Note que o uso do barramento PCI limita a velocidade da controladora a 133
MB/s (um pouco menos na prática, já que o barramento PCI é compartilhado
com outros dispositivos), mas isso não chega a ser um problema ao utilizar
apenas um ou dois HDs.




                                                                          446
Controladora SATA com duas portas

Existem ainda conversores (chamados de bridges), que permitem ligar um HD
IDE diretamente a uma porta SATA. Eles podem vir a se tornar um item
relativamente comum, já que as interfaces IDE estão progressivamente caindo
em desuso e deixando de ser incluídas em placas novas.




   Bridge IDE > SATA, que permite instalar um HD IDE em uma porta SATA

Com o lançamento do SATA, os HDs e as controladoras IDE/ATA passaram a
ser chamadas de "PATA", abreviação de "Parallel ATA", ressaltando a
diferença.

SCSI

As controladoras SCSI (pronuncia-se "iscâzi") são as tradicionais concorrentes
das interfaces IDE. O primeiro padrão SCSI (SCSI 1) foi ratificado em 1986, na
mesma época em que os primeiros HDs IDE chegaram ao mercado, e consistia
em controladoras de 8 bits, que operavam a 5 MHz, oferecendo um barramento
de dados de até 5 MB/s




                                                                          447
Em 1990, foi lançado o padrão Wide SCSI (SCSI 2). A freqüência continuou a
 mesma, mas as controladoras passaram a utilizar um barramento de 16 bits, o
 que dobrou a taxa de transmissão, que passou a ser de 10 MB/s.

 Em seguida surgiram os padrões Fast SCSI (8 bits) e Fast Wide SCSI (16 bits),
 que operavam a 10 MHz e ofereciam taxas de transferência de,
 respectivamente, 10 MB/s e 20 MB/s.

 A partir daí, surgiram os padrões Ultra SCSI (8 bits, 20 MHz = 20 MB/s), Wide
 Ultra SCSI (16 bits, 20 MHz = 40 MB/s), Ultra2 SCSI (8 bits, 40 MHz = 40 MB/s)
 e Wide Ultra2 SCSI (16 bits, 40 MHz = 80 MB/s). Veja que até a evolução foi
 bastante previsível, com um novo padrão simplesmente dobrando a freqüência
 e, conseqüentemente, a taxa de transferência do anterior.

 Nesse ponto o uso de controladoras de 8 bits foi abandonado e surgiram os
 padrões Ultra160 SCSI, onde a controladora opera a 40 MHz, com duas
 transferências por ciclo, resultando em um barramento de 160 MB/s e o Ultra
 320 SCSI, que mantém as duas transferências por ciclo, mas aumenta a
 freqüência para 80 MHz, atingindo 320 MB/s.


                          Controladora de 8 Bits Controladora de 16 Bits
Modelo
                          (Narrow SCSI)          (Wide SCSI)
SCSI 1                    5 MB/s                 10 MB/s
Fast SCSI (SCSI-2)        10 MB/s                20 MB/s
Ultra SCSI (SCSI-3)       20 MB/s                40 MB/s
Ultra2 SCSI (SCSI-4)      40 MB/s                80 MB/s
Ultra160 SCSI             -                      160 MB/s
Ultra320 SCSI             -                      320 MB/s

 Além da diferença na velocidade, as antigas controladoras de 8 bits permitiam
 a conexão de apenas 7 dispositivos, enquanto as atuais, de 16 bits, permitem a
 conexão de até 15.

 Diferentemente do que temos em uma interface IDE, onde um dispositivo é
 jumpeado como master e outro como slave, no SCSI os dispositivos recebem
 números de identificação (IDs) que são números de 0 a 7 (nas controladoras de
 8 bits) ou de 0 a 15 nas de 16 bits. Um dos IDs disponíveis é destinado à
 própria controladora, deixando 7 ou 15 endereços disponíveis para os
 dispositivos.

 O ID de cada dispositivo é configurado através de uma chave ou jumper, ou
 (nos mais atuais), via software. A regra básica é que dois dispositivos não
 podem utilizar o mesmo endereço, caso contrário você tem um conflito similar
 ao que acontece ao tentar instalar dois HDs jumpeados como master na
 mesma porta IDE.




                                                                           448
A maioria dos cabos SCSI possuem apenas 3 ou 4 conectores, mas existem
realmente cabos com até 16 conectores, usados quando é realmente
necessário instalar um grande número de dispositivos:




                     Cabo SCSI para três dispositivos

No barramento SCSI temos também o uso de terminadores, que efetivamente
"fecham" o barramento, evitando que os sinais cheguem à ponta do cabo e
retornem na forma de interferência. Na maioria dos casos, o terminador é
encaixado no dispositivo, mas em alguns basta mudar a posição de uma
chave. Também existem casos de cabos que trazem um terminador pré-
instalado na ponta.




                            Terminadores SCSI

Note que estou usando o termo "dispositivos" e não "HDs", pois (embora raro
hoje em dia) o padrão SCSI permite a conexão de diversos tipos de
dispositivos, incluindo CD-ROMs, impressoras, scanners e unidades de fita.


                                                                        449
Os gravadores de CD SCSI foram populares nos anos 90, pois o barramento
SCSI oferece transferências mais estáveis que as antigas portas ATA-2 e ATA-
3, usadas até então. Naquela época ainda não existia burn-free, de forma que
qualquer interrupção no fluxo de dados causava a perda da mídia. Com o
surgimento das interfaces IDE com suporte a UDMA, a briga se equilibrou e os
gravadores de CD IDE invadiram o mercado. As impressoras e scanners SCSI
também ganharam algumas batalhas, mas acabaram perdendo a guerra para
os dispositivos USB.

As unidades de fita já foram o meio mais popular para fazer backup de grandes
quantidades de dados, utilizando as famosas fitas DAT. Como a fita precisa ser
gravada e lida seqüencialmente, o mais comum é gerar um arquivo
compactado em .tar.gz, .tar.bz2, ou mesmo em .rar, contendo todos os
arquivos do backup e gravá-lo na fita, de forma seqüencial. Um arquivo muito
grande pode ser dividido em vários volumes e gravado em fitas separadas. O
grande problema é que é preciso ler e descompactar todo o arquivo para ter
acesso aos dados.

O problema com as unidades de fita é que, embora as fitas sejam
relativamente baratas, as unidades de gravação são vendidas a preços
salgados. Conforme os HDs foram crescendo em capacidade e caindo em
custo, eles passaram a oferecer um custo por megabyte mais baixo, fazendo
com que os sistemas RAID e servidores de backup se popularizassem
roubando o mercado das unidades de fita.

Um drive VXA-320 da Exabyte, por exemplo, custa (em Julho de 2007), US$
1.250 e utiliza fitas de apenas 160 GB. É comum que os fabricantes dobrem a
capacidade, dizendo que as fitas armazenam "320 GB comprimidos", mas a
taxa de compressão varia de acordo com o tipo de dados. A velocidade de
gravação também é relativamente baixa, em torno de 12 MB/s (cerca de 43 GB
reais por hora), e cada fita custa US$ 80, o que dá um custo de US$ 0.50 por
GB. Como hoje em dia um HD de 300 GB custa (no Brasil) menos de R$ 250, a
unidade de fita simplesmente perde em todos os quesitos, incluindo
confiabilidade e custo por megabyte. Ao invés de utilizar a unidade de fita,
acaba sendo mais prático, rápido e barato fazer os backups usando HDs
externos.




                                                                          450
VXA-320 da Exabyte, unidade de fita em versão SCSI

Chegamos então na questão dos cabos. O SCSI permite tanto a conexão de
dispositivos internos quanto de dispositivos externos, com o o uso de cabos e
conectores diferentes para cada tipo. As controladoras de 8 bits utilizam cabos
de 50 vias, enquanto que as 16 bits utilizam cabos de 68 vias. Este da foto é
um HD Ultra320 SCSI, que utiliza o conector de 68 pinos:




As controladoras SCSI são superiores às interfaces IDE em quase todos os
quesitos, mas perdem no mais importante, que é a questão do custo. Como a
história da informática repetidamente nos mostra, nem sempre o padrão mais
rápido ou mais avançado prevalece. Quase sempre um padrão mais simples e
barato, que consegue suprir as necessidades básicas da maior parte dos
usuários, acaba prevalecendo sobre um padrão mais complexo e caro.




                                                                           451
De uma forma geral, o padrão IDE tornou-se o padrão nos desktops e também
nos servidores e estações de trabalho de baixo custo, enquanto o SCSI tornou-
se o padrão dominante nos servidores e workstations de alto desempenho. Em
volume de vendas, os HDs SCSI perdem para os IDE e SATA numa proporção
de mais de 30 para 1, mas ainda assim eles sempre representaram uma fatia
considerável do lucro líquido dos fabricantes, já que representam a linha
"premium", composta pelos HDs mais caros e de mais alto desempenho.

Até pouco tempo, era comum que novas tecnologias fossem inicialmente
usadas em HDs SCSI e passassem a ser usadas em HDs IDE depois de
ficarem mais baratas. Isso acontecia justamente por causa do mercado de
discos SCSI, que prioriza o desempenho muito mais do que o preço. Hoje em
dia isso acontece com relação aos HDs SATA e SAS (veja a seguir).

Além do custo dos HDs, existe também a questão da controladora. Algumas
placas-mãe destinadas a servidores trazem controladoras SCSI integradas,
mas na grande maioria dos casos é necessário comprar uma controladora
separada.

As controladoras Ultra160 e Ultra320 seriam subutilizadas caso instaladas em
slots PCI regulares (já que o PCI é limitado a 133 MB/s), de forma que elas
tradicionalmente utilizam slots PCI-X, encontrados apenas em placas para
servidores. Isso significa que mesmo que você quisesse, não poderia instalar
uma controladora Ultra320 em seu desktop. Apenas mais recentemente
passaram a ser fabricadas controladoras PCI-Express.




                        Controladora SCSI Ultra320

Como de praxe, vale lembrar que a velocidade da interface não corresponde
diretamente à velocidade dos dispositivos a ela conectados. Os 320 MB/s do
Ultra320 SCSI, por exemplo, são aproveitados apenas ao instalar um grande
número de HDs em RAID.


                                                                         452
Existem muitas lendas com relação ao SCSI, que fazem com que muitos
desavisados comprem interfaces e HDs obsoletos, achando que estão fazendo
o melhor negócio do mundo. Um HD não é mais rápido simplesmente por
utilizar uma interface SCSI. É bem verdade que os HDs mais rápidos, de
15.000 RPM, são lançados apenas em versão SCSI, mas como os HDs ficam
rapidamente obsoletos e têm uma vida útil limitada, faz muito mais sentido
comprar um HD SATA convencional, de 7.200 ou 10.000 RPM, do que levar
pra casa um HD SCSI obsoleto, com 2 ou 3 anos de uso.

SAS

Com a introdução do Serial ATA, o barramento SCSI perdeu grande parte de
seus atrativos, já que o SATA oferece uma grande parte das vantagens que
antes eram atribuídas ao SCSI e, ao mesmo tempo, oferece um sistema de
cabeamento mais simples.

Para preencher a lacuna, surgiu o SAS (Serial Attached SCSI), um barramento
serial, muito similar ao SATA em diversos aspectos, que adiciona várias
possibilidades interessantes voltadas para o uso em servidores. Ele preserva o
mesmo conjunto de comandos e é por isso compatível a nível de software. Não
estou falando aqui do Windows e de programas como os que utilizamos em
desktops, mas sim de aplicativos personalizados, complexos e caros, utilizados
em grandes servidores.

Assim como o SCSI conviveu com o padrão IDE por mais de duas décadas, o
SAS está destinado a concorrer com o SATA, com cada um entrincheirado em
seu respectivo nicho: o SATA nos micros domésticos e servidores de baixo
custo e o SAS em servidores maiores e estações de trabalho.

As versões iniciais do SAS suportavam taxas de transferência de 150 e 300
MB/s. Recentemente foi introduzido o padrão de 600 MB/s e passou a ser
desenvolvido o padrão seguinte, de 1.2 GB/s. A evolução é similar à do padrão
SATA (note que as velocidades são as mesmas), porém o SAS tende a ficar
sempre um degrau acima.

A maior velocidade é necessária, pois o SAS permite o uso de extensores
(expanders), dispositivos que permitem ligar diversos discos SAS a uma única
porta. Existem dois tipos de extensores SAS, chamados de "Edge Expanders"
e "Fanout Expanders". Os Edge Expanders permitem ligar até 128 discos na
mesma porta, enquanto os Fanout Expanders permitem conectar até 128 Edge
Expanders (cada um com seus 128 discos!), chegando a um limite teórico de
até 16.384 discos por porta SAS.

Este recurso foi desenvolvido pensando sobretudo nos servidores de
armazenamento. Com a popularização dos webmails e outros serviços, o
armazenamento de grandes quantidades de dados tornou-se um problema.
Não estamos falando aqui de alguns poucos gigabytes, mas sim de vários
terabytes ou mesmo petabytes de dados. Imagine o caso do Gmail, por
exemplo, onde temos vários milhões de usuários, cada um com mais de 2 GB
de espaço disponível.

                                                                          453
Os extensores SAS normalmente possuem a forma de um gabinete 1U ou 2U,
destinados a serem instalados nos mesmos hacks usados pelos próprios
servidores. Em muitos, os discos são instalados em gavetas removíveis e
podem ser trocados "a quente" (hotswap), com o servidor ligado. Isto permite
substituir rapidamente HDs defeituosos, sem precisar desligar o servidor:




                   Gabinete 1U com HDs SAS removíveis

Nesses casos, seria utilizado um sistema RAID, onde parte do espaço e
armazenamento é destinado a armazenar informações de redundância, que
permitem restaurar o conteúdo de um HD defeituoso assim que ele é
substituído, sem interrupção ou perda de dados. Ao contrário das controladoras
RAID de baixo custo, encontradas nas placas-mãe para desktop, que executam
suas funções via software, as controladoras SAS tipicamente executam todas
as funções via hardware, facilitando a configuração (já que deixa de ser
necessário instalar drivers adicionais) e oferecendo um maior desempenho e
flexibilidade.

Outra pequena vantagem é que o SAS permite o uso de cabos de até 6 metros,
contra apenas 1 metro no SATA. A maior distância é necessária ao conectar
um grande número de extensores, já que eles são grandes, e os últimos
tendem a ficar fisicamente afastados do servidor.

As controladoras SAS incluem normalmente 4 ou 8 portas e são instaladas
num slot PCI-X, ou PCI Express. Nada impede também que você instale duas
ou até mesmo três controladoras no mesmo servidor caso precise de mais
portas. Algumas placas-mãe destinadas a servidores já estão vindo com
controladoras SAS onboard, reduzindo o custo.




                                                                          454
Controladora SAS

Assim como a maioria das controladoras SAS, esta controladora Adaptec da
foto utiliza um único conector SFF 8484, em vez de 4 conectores separados.
Ele simplifica um pouco a instalação, mas na prática não muda muita coisa,
pois o conector dá origem aos 4 cabos separados da mesma forma:




                             Conector SFF 8484

Um detalhe interessante é que o padrão SAS oferece compatibilidade retroativa
com os HDs SATA, permitindo que você use HDs SATA convencionais como
uma forma de cortar custos, sem ter que abrir mão da possibilidade de usar os
extensores.

A relação, entretanto, não é recíproca: embora o conector seja o mesmo, HDs
SAS não são reconhecidos caso instalados numa porta SATA convencional,
pois eles utilizam comandos específicos, que vão bem além do conjunto
suportado pelas controladoras SATA.



                                                                          455
De qualquer forma, os HDs SAS são mais caros e não oferecem vantagens em
termos de desempenho, de forma que você dificilmente iria querer utilizar um
em seu desktop, de qualquer forma. O principal diferencial é que eles são
certificados para operação contínua e possuem garantias maiores, geralmente
de 5 anos.




                         Conectores de um HD SAS

A maior parte dos HDs de alto desempenho, com rotação de 15.000 RPM, que
antes só existiam em versão SCSI, estão sendo lançados também em versão
SAS. Nos próximos anos é de se esperar que o SAS substitua gradualmente o
SCSI, assim como o SATA já substituiu o IDE quase que completamente nos
micros novos.

Não existe nada de fundamentalmente diferente que impeça que estes drives
de alto desempenho sejam lançados também em versão SATA, o problema
reside unicamente na questão da demanda.

Por serem caros e possuírem capacidades reduzidas (devido ao uso de discos
de 2.5"), os HDs de 15.000 RPM acabam não sendo muito adequados para o
público doméstico. Você dificilmente pagaria R$ 1500 por um HD de 73 GB
(como o Seagate Cheetah 15K.4), por mais rápido que ele fosse, quando pode
comprar um HD SATA de 300 GB por menos de R$ 250. Essa brutal diferença
de custo acaba sendo justificável apenas no mercado de servidores de alto
desempenho e workstations, onde, literalmente, "tempo é dinheiro".

As barreiras de 8 GB e 128 GB

Ao longo da evolução dos micros PCs, existiram vários limites de capacidade
dos HDs, causados por limitações nos endereços usados pelos BIOS e
limitações por parte dos drivers e sistemas operacionais. Instalar um HD IDE
de grande capacidade em um micro antigo pode ser bastante frustrante, com o
BIOS da placa reconhecendo apenas os primeiros 504 MB ou os primeiros 7.88
GB do HD, e o sistema operacional se recusando a carregar depois de
instalado.

Estas limitações surgiram devido à falta de visão por parte dos projetistas que
desenvolveram o padrão IDE e as instruções INT 13h do BIOS, as

                                                                           456
responsáveis pelo acesso ao HD. Elas foram originalmente desenvolvidas para
serem usadas pelo PC AT (baseado no 286), mas acabaram sendo
perpetuadas até os dias de hoje. Naquela época, HDs com mais de 504 MB
pareciam uma realidade muito distante.

Ao formatar o HD, ele é dividido em clusters, que são a menor parcela do disco
endereçada pelo sistema de arquivos. Cada cluster pode ter de 512 bytes a 32
KB, de acordo com o sistema de arquivos e as opções usadas durante a
formatação.

Entretanto, num nível mais baixo, os setores do HD precisam ser endereçados
diretamente. Cada setor possui apenas 512 bytes, de forma que é necessária
uma grande quantidade de endereços para endereçá-los individualmente.

O padrão IDE reserva 16 bits para o endereçamento dos cilindros (65,536
combinações), 4 bits para o endereçamento das cabeças de leitura (16
combinações) e 8 bits para os setores dentro de cada cilindro (256
combinações), o que permite endereçar um total de 256 milhões de setores.
Como cada setor tem sempre 512 bytes, teríamos, a princípio, suporte a HDs
de até 128 GB.

Entretanto, o BIOS possui outras limitações para o acesso a discos (serviço
chamado de INT 13h), reservando 10 bits para o endereçamento dos cilindros
(1,024 combinações), 8 bits para as cabeças de leitura (256) e apenas 6 bits
para os setores (63 combinações, pois o endereço 0 é reservado), o que
permite endereçar 1.61 milhões de setores e conseqüentemente discos de até
7.88 GB.

Como é preciso usar tanto a interface IDE quanto as instruções INT 13h do
BIOS, acabamos por juntar os dois conjuntos de limitações. O padrão IDE
reserva 16 bits para o endereçamento dos cilindros, porém o BIOS só utiliza
10. O BIOS por sua vez reserva 8 bits para o endereçamento das cabeças de
leitura, porém só pode utilizar 4 por limitações da interface. A capacidade de
endereçamento então acaba sendo nivelada por baixo, combinando as
limitações de ambos os padrões, permitindo endereçar discos de no máximo
504 MB, limite para a maioria dos micros 486 ou inferiores. Este método de
endereçamento é chamado de Normal ou CHS (cilindro, cabeça de leitura e
setor). Veja a representação na tabela:




                                                                           457
Cabeça         de                   Capacidade
Limitações       Cilindro                            Setor
                                 leitura                             máxima
                 16 bits         4 bits              8 bits
Interface IDE                                                        128 GB
                 (65.536         (16                 (256
                 combinações)    combinações)        combinações)
                 10 bits         8 bits              6 bits
INT        13h
                                                                     7.88 GB
(BIOS)           (1024           (256                (63
                 combinações)    combinações)        combinações)
Combinação
           10 bits               4 bits              6 bits          504 MB
de ambos

 Essa configuração é apenas lógica, o modo como o BIOS enxerga o disco
 rígido não tem necessariamente relação com a organização real do HD. A
 placa lógica de um HD de 504 MB pode dizer que tem 16 cabeças leitura e 63
 setores por cilindro de forma a utilizar todos os endereços disponibilizados pelo
 BIOS, mas internamente endereçar os setores de forma diferente. Na prática
 não faz muita diferença, desde que cada setor receba uma identificação única.

 Na época do 286, onde eram usados HDs de no máximo 20 ou 40 MB, este
 limite não incomodava ninguém; mas a partir do momento em que passamos a
 ter HDs de 800 MB ou mais, alguma coisa precisava ser feita.

 A primeira solução foi o Extended CHS ou modo Large. Este padrão continua
 com as mesmas limitações da interface IDE e do INT 13, mas usa um pequeno
 truque para burlar suas limitações.

 O BIOS possui mais endereços para as cabeças de leitura (256 contra 16),
 porém a interface IDE possui mais endereços para os cilindros (65.536 contra
 1024). Usando o modo Large passamos a utilizar um tradutor, um pequeno
 software integrado ao BIOS, que se encarrega de converter os endereços.

 A conversão é feita usando um simples fator multiplicativo: a interface IDE
 permite mais endereços para o cilindro, mas ao mesmo tempo permite menos
 endereços para a cabeça de leitura, podemos então aplicar a tradução de
 endereços dividindo o número de endereços do cilindro e multiplicando os
 endereços para cabeças de leitura pelo mesmo número. Podem ser usados os
 números 2, 4, 8 e 16.

 Se, por exemplo, instalássemos um drive com uma geometria lógica de 3,068
 cilindros, 16 cabeças e 63 setores, usando o fator 4, passaríamos a ter 3.086 /
 4 = 767 cilindros, 16 x 4 = 64 cabeças e 63 setores. Com isso os valores
 ficariam dentro dos limites do BIOS e o HD poderia ser acessado sem
 problemas:




                                                                               458
Cabeças      de
                Cilindros                         Setor          Capacidade
                                leitura
Geometria
lógica      do 3,068           16                 63             1.5 GB
disco
Geometria
traduzida para 3,068 / 4 = 767 16 x 4 = 64        63             1.5 GB
o BIOS
Limites     do
               1024            256                63             7.88 GB
BIOS

 O modo Large nunca foi muito utilizado, pois logo depois surgiu uma solução
 bem melhor para o problema, conhecida como modo LBA, contração de
 "Logical Block Addressing" ou endereçamento lógico de blocos.

 A idéia é a seguinte: o padrão IDE reserva 16 bits para o endereçamento do
 cilindro, 4 bits para o endereçamento da cabeça de leitura e mais 8 bits para o
 setor, totalizando 28 bits de endereçamento. O modo LBA abandona o
 endereçamento CHS, com endereços independentes para cilindros, cabeças e
 setores, passando a adotar um endereço único. Os setores passam então a
 receber endereços seqüenciais, 0, 1, 2, 3, 4 etc. assim como os clusters no
 sistema FAT. Os 28 bits de endereçamento permitem então 228 milhões de
 endereços, o que corresponde a HDs de até 128 GB (137 GB na notação
 decimal).

 Claro que para usar o LBA é preciso que o disco rígido suporte este modo de
 endereçamento. Felizmente, praticamente todos os HDs acima de 504 MB e
 todos os HDs atuais suportam o LBA. Na verdade, o modo Large só deve ser
 usado nos raríssimos casos de HDs com mais de 504 MB, que por ventura não
 suportem o LBA.

 Veja que para endereçar os 128 GB permitidos pelo LBA, é preciso abandonar
 o uso das instruções INT 13h, o que significa desenvolver novas instruções de
 acesso a disco para o BIOS. A primeira geração de placas-mãe a utilizar o
 modo LBA (fabricadas até 1999) ainda estavam presas às instruções INT 13h e
 por isso continuavam limitadas a HDs de 7.88 GB (8.4 GB decimais). Em
 muitas das placas fabricadas entre 1998 e 1999 é possível solucionar o
 problema através de um upgrade de BIOS. O maior problema no caso é
 encontrar os arquivos de atualização, já que os fabricantes não costumam dar
 suporte a placas tão antigas.

 As placas fabricadas a partir daí incluem as "INT 13h Extensions", ou seja,
 extensões para o conjunto original, que permitem bipassar as limitações e
 acessar HDs de até 128 GB, como previsto pelo padrão IDE.

 Naturalmente, não demorou para que este limite também se tornasse um
 problema. A solução definitiva veio em 2001, juntamente com a introdução das
 interfaces ATA/100 (ATA-6), onde foi incluída uma extensão para os endereços
 disponíveis. Passaram a ser usados 48 bits para o endereçamento, no lugar
 dos 28 anteriores, resultando em uma capacidade de endereçamento
                                                                            459
1.048.576 vezes maior. A extensão foi rapidamente adotada pelos fabricantes,
de forma que praticamente todas as placas fabricadas a partir do final de 2001
já são capazes de endereçar HDs IDE de grande capacidade normalmente.

Para os casos de placas antigas que não possuam upgrades de BIOS
disponíveis, existe um conjunto de soluções criativas que podem ser usadas.
Normalmente, o valor dessas placas é muito baixo, de forma que normalmente
você não vai querer perder muito tempo com elas. Mesmo assim, é
interessante conhecer as possibilidades, mesmo que apenas para referência
histórica.

A primeira é instalar um DDO (Dynamic Drive Overlay), um software tradutor,
instalado no primeiro setor do HD, que passa a ser carregado no início do boot,
antes do carregamento do sistema operacional.

O DDO bipassa as instruções do BIOS, permitindo superar suas limitações. A
Ontrack comercializa o "Disk Go!", que funciona com HDs de qualquer
fabricante. O problema é que ele é um programa comercial, enquanto as
versões dos fabricantes são gratuitas.

Usar um driver de Overlay traz várias desvantagens: eles não são compatíveis
com muitos programas de diagnóstico e não permitem o uso dos drivers de Bus
Mastering, o que prejudica a performance do HD e do sistema como um todo.
Também temos problemas com muitos boot managers, dificultando a
instalação de mais de um sistema operacional no mesmo HD.

Uma segunda solução é simplesmente desativar as portas IDE da placa-mãe e
passar a usar uma interface IDE externa. Elas permitem também instalar portas
ATA/100 ou ATA/133 em placas que contam apenas com interfaces ATA/33,
que limitam o desempenho dos HDs atuais. A grande maioria também oferece
a possibilidade de usar RAID:




                                                                           460
Controladora IDE externa, em versão PCI

Quando lançadas, estas placas eram relativamente caras, custando por volta
de US$ 50 no exterior. Mas, como todo equipamento antigo, você pode achá-
las hoje em dia por preços muito baixos nos sites de leilão.

Note que estas limitações aplicam-se apenas a HDs IDE. Elas não existem no
caso de HDs SCSI e SATA, que utilizam padrões diferentes de endereçamento.

Mais uma limitação de capacidade, essa um pouco mais rara, é a limitação de
32 GB que atinge algumas placas-mãe com BIOS da Award, fabricadas entre
1998 e 1999. Essas placas possuem um bug na implementação do LBA, que
limita os endereços a 65.535 cilindros, 16 cabeças e 63 setores, o que equivale
a 31.5 GB (33.8 GB decimais).

Como essas placas bugadas representaram um volume considerável das
placas vendidas durante este período, muitos HDs IDE suportam a opção "Cap
Limit", que é acionada ao colocar o jumper traseiro em uma posição
especificada:




                                                                           461
Ao ativar a opção, a placa lógica reporta ao BIOS que o HD tem apenas 31.5
GB. Você perde o acesso ao restante da capacidade do disco, mas pelo menos
ele passa a ser acessado.

Concluindo, além das limitações por parte do BIOS, temos ainda algumas
limitações adicionais por parte dos sistemas operacionais.

O MS-DOS (todas as versões), além da primeira versão do Windows 95 e
outros sistemas antigos ainda estão presos às instruções INT 13h originais, de
forma que não são capazes de acessar HDs com mais de 7.88 GB, mesmo que
por ventura sejam instalados numa placa atual. Como eles também suportam
apenas FAT16, você precisa dividir o HD em 4 (ou mais) partições, de até 2 GB
cada. O Windows 95 OS/2 inclui um driver ligeiramente atualizado, que permite
o endereçamento de HDs com até 32 GB e também a possibilidade de usar
partições formatadas em FAT32, removendo o limite de 2 GB por partição.

A versão original do Windows XP não inclui suporte ao padrão LBA de 48 bits e
por isso não é capaz de acessar HDs IDE com mais de 128 GB (137 GB
decimais). Neste caso a limitação diz respeito ao sistema operacional e por
isso ocorre mesmo ao usar uma placa-mãe recente.

Este problema foi corrigido com o SP1, por isso basta atualizar o sistema, ou já
instalar diretamente usando uma mídia de instalação com o SP2. No caso do
Windows 2000, o problema foi corrigido a partir do SP3.

No caso do Linux, não existem limitações com relação ao sistema operacional,
que é capaz de endereçar o HD corretamente independentemente do BIOS.
Apesar disso, você pode ter problemas para iniciar o sistema em placas
antigas, com a limitação dos 7.88 GB, já que se o BIOS não reconhece
corretamente o HD, não consegue iniciar o carregamento do sistema.

A grande maioria das distribuições atuais utiliza o grub como gerenciador de
boot. Se, ao instalar, você receber o famoso "erro 18" do grub durante o boot,
significa que você está usando uma placa atingida pelo problema.

Nesses casos, a solução é reparticionar o HD, de forma que o sistema seja
instalado em uma partição de no máximo 7.88 GB, colocada logo no início do
disco. Como a partição está dentro do limite visto pelo BIOS, o sistema é

                                                                            462
carregado normalmente e, dentro do Linux, o HD passa a ser acessado
diretamente, bipassando as limitações do BIOS.

O sistema passa então a ver o restante do disco normalmente e pode usar o
restante do espaço para criar outras partições e guardar arquivos. O problema
é apenas o boot.

RAID

Devido à sua natureza mecânica, o HD é um dos componentes mais lentos de
qualquer PC. Embora o desempenho venha crescendo de forma incremental a
cada nova geração, os ganhos não têm acompanhado o aumento na
capacidade de armazenamento. Ler todos os dados armazenados num HD
atual, de 1 TB, demora muito mais tempo do que num HD antigo, de 40 GB, por
exemplo.

Ao invés de criar HDs muito rápidos, ou com um número muito grande de
discos (e conseqüentemente com uma maior capacidade), os fabricantes de
HDs se especializaram em fabricar modelos padronizados, utilizando um único
braço de leitura e de 1 a 4 platters, fabricados em grande quantidade e a um
custo relativamente baixo.

Para quem precisa de HDs mais rápidos, ou com uma capacidade muito maior,
a melhor opção é montar um sistema RAID, onde é possível somar a
capacidade e o desempenho de vários HDs, ou então sacrificar parte do
espaço de armazenamento em troca de mais confiabilidade.

O termo RAID significa "Redundant Array of Inexpensive Disks", indicando
justamente o uso de HDs padronizados e baratos como "blocos de montagem"
para a criação de sistemas que se comportam como um único disco, maior,
mais rápido e/ou mais confiável do que suas peças individuais.

Os modos de operação

Um dos grandes atrativos do RAID é a possibilidade de escolher entre
diferentes   modos  de    operação,    de   acordo    com      a   relação
capacidade/desempenho/confiabilidade que você pretende atingir. As opções
básicas são:

RAID 0 (Striping): O RAID 0 é um "RAID pra inglês ver", onde o objetivo é
unicamente melhorar o desempenho, sacrificando a confiabilidade.

Ao usar o RAID 0, todos os HDs passam a ser acessados como se fossem um
único drive. Ao serem gravados, os arquivos são fragmentados nos vários
discos, permitindo que os fragmentos possam ser lidos e gravados
simultaneamente, com cada HD realizando parte do trabalho. Usando RAID 0 a
performance fica em um patamar próximo da velocidade de todos os HDs
somada. Ao usar 4 HDs com uma taxa de transferência e 50 MB/s (em leituras
seqüenciais) em RAID 0, você teria uma taxa de transferência total de quase
200 MB/s em muitas situações.

                                                                          463
Na verdade, a distribuição dos dados nos drives não é completamente
uniforme. Os arquivos são divididos em fragmentos de tamanho configurável
(opção "chunk size", ou "stripe size"). Se você está utilizando 3 HDs em RAID
0, utilizando fragmentos de 32 KB, por exemplo, ao gravar um arquivo de 80
KB teríamos fragmentos de 32 KB gravados nos dois primeiros HDs e os 16 KB
finais seriam gravados no terceiro, sendo que os 16 KB que "sobraram" no
terceiro HD ficariam como espaço desperdiçado.

A configuração do stripe size, ou seja, do tamanho dos fragmentos, tem um
efeito considerável sobre o desempenho. Se você usa predominantemente
arquivos grandes, então um stripe size de 64 KB ou mais renderá os melhores
resultados. Entretanto, no caso de um servidor que manipula um grande
volume de arquivos pequenos, valores mais baixos acabam resultando em um
melhor desempenho e menos espaço desperdiçado.

Ao criar um array com 4 HDs de 500 GB em RAID 0, você teria um espaço total
de armazenamento de 2 TB, onde toda a capacidade é dedicada ao
armazenamento            de        dados,        sem          redundância:


HD 1               HD 2               HD 3                HD 4


Dados              Dados              Dados               Dados



O problema é que cada HD armazena apenas fragmentos de cada arquivo e
não arquivos completos. Por causa dessa peculiaridade, caso qualquer um dos
HDs apresente defeito, você simplesmente perde todos os dados.

O RAID 0 é possivelmente o mais usado em desktops e também em alguns
servidores de alto desempenho. Ele é a melhor opção caso você queira o
melhor desempenho possível e tenha como manter um backup atualizado dos
dados gravados.

Assim como em outros modos RAID, não é realmente obrigatório usar HDs
idênticos, mas isso é fortemente aconselhável, pois tanto a capacidade quanto
o desempenho ficam limitados à capacidade do HD mais lento.

Ao utilizar um HD de 500 GB e outro de 300 GB em RAID 0, o sistema ignora
os últimos 200 GB do HD maior, de forma que você acaba ficando com um total
de 600 GB disponíveis. Os acessos também precisam ser sincronizados, de
forma que ao utilizar um HD com taxa de transferência máxima de 50 MB/s, em
conjunto com 30 MB/s, você acaba tendo um máximo de 60 MB/s. Ou seja,
utilizar dois HDs diferentes é possível, mas geralmente não é um bom negócio.


RAID 1 (Mirroring): Este modo permite usar dois HDs, sendo que o segundo
armazenará uma imagem idêntica do primeiro. Na pratica, será como se você
                                                                          464
tivesse apenas um disco rígido instalado, mas caso o disco titular falhe por
qualquer motivo, você terá uma cópia de segurança armazenada no segundo
disco. Este é o modo ideal se você deseja aumentar a confiabilidade do
sistema.

Também é possível utilizar RAID 1 com quatro ou mais discos (desde que seja
utilizado sempre um número par). Nesse caso, um dos discos de cada par é
visto pelo sistema como um HD separado e o outro fica oculto, guardando a
cópia atualizada do primeiro. Ao utilizar 4 HDs de 500 GB em RAID 1, por
exemplo, o sistema enxergaria 2 HDs, de 500 GB cada um:


HD 1               HD 2                HD 3                 HD 4


Dados              Cópia       (mirror) Dados               Cópia     (mirror)



Usar RAID 1 não proporciona qualquer ganho de desempenho. Pelo contrário,
ele acaba causando uma pequena perda em comparação com usar um único
drive, já que todas as alterações precisam ser duplicadas e realizadas em
ambos os drives.

Caso um dos HDs titulares falhe, o segundo entra em ação automaticamente,
substituindo-o até que você possa substituir o drive.

Uma dica é que, ao fazer RAID 1 utilizando discos IDE, procure colocar um em
cada uma das duas interfaces IDE da placa, isto melhorará o desempenho.
Outro ponto é que caso os dois discos estejam na mesma interface, como
master e slave, você precisa reiniciar o micro caso o primeiro falhe. Usando um
em cada interface, a controladora fará a troca automaticamente, sem
necessidade de reset. Da próxima vez que inicializar o micro você receberá um
aviso pedindo para substituir o HD defeituoso.

Esse problema não afeta as controladoras SATA, já que nelas cada HD é
ligado a uma porta separada, sem a divisão de master/slave como nos HDs
IDE.

É importante ressaltar que o RAID 1 é um sistema dedicado a aumentar a
disponibilidade, evitando que você tenha que desligar seu micro de trabalho ou
servidor para restaurar um backup quando o HD falha. Ele não substitui os
backups, pois protege apenas contra falhas mecânicas do HD e não contra
vírus e arquivos deletados acidentalmente. Assim que os arquivos são
apagados no primeiro, a alteração é automaticamente replicada no segundo,
fazendo com que ambas as cópias sejam perdidas. Também não existe
proteção contra roubo, falhas causadas por raios (os dois HDs podem ser
danificados simultaneamente) e assim por diante.



                                                                           465
Particularmente, não recomendo o uso de RAID 1 como proteção contra perda
de dados fora dos servidores, pois ele acaba por criar um falso senso de
segurança. O principal uso para o RAID 1, ou RAID 5, é aumentar a
confiabilidade e o uptime de servidores de rede, já que o servidor continua
funcionando como se nada tivesse acontecido, mesmo que um dos HDs pife.
Mas, mesmo nos servidores, nada substituiu os backups.

Ao invés de usar dois HDs em RAID 1, seus dados estarão mais seguros se
você colocar o segundo HD numa gaveta USB e usá-lo para manter backups
de todos os arquivos e dados pessoais. Deixe o HD desconectado do PC e, de
preferência, guarde-o num local separado ou carregue-o com você.

Na maioria das controladoras RAID SCSI e SAS é possível realizar a troca do
HD defeituoso "a quente" (recurso chamado de "hot swap"), com o micro
ligado, recurso não disponível nas controladoras RAID IDE e SATA. O suporte
a hot swap não é tão importante nos PCs domésticos já que um reset não toma
mais do que dois ou três minutos do seu tempo, mas, em um servidor de alta
disponibilidade, este recurso é essencial para evitar uma pane na rede.


RAID 10 (Mirror/Strip): Este modo pode ser usado apenas caso você tenha a
partir de 4 discos rígidos e o módulo total seja um número par (6, 8, etc.). Neste
modo, metade dos HDs serão usados em modo striping (RAID 0), enquanto a
segunda metade armazena uma cópia dos dados dos primeiros, assegurando a
segurança.

Este modo é na verdade uma combinação do RAID 0 e RAID 1, daí o nome. O
ponto fraco é que você sacrifica metade da capacidade total. Usando 4 HDs de
500 GB, por exemplo, você fica com apenas 1 TB de espaço disponível.


RAID 5: Este modo é muito utilizado em servidores com um grande número de
HDs. Ele utiliza um método bastante engenhoso para criar uma camada de
redundância, sacrificando apenas uma fração do espaço total, ao invés de
simplesmente usar metade dos HDs para armazenar cópias completas, como
no caso do RAID 1.

O RAID 5 usa um sistema de paridade para manter a integridade dos dados.
Os arquivos são divididos em fragmentos de tamanho configurável e, para cada
grupo de fragmentos, é gerado um fragmento adicional, contendo códigos de
paridade.

Note que, ao invés de reservar um HD inteiro para a tarefa, os códigos de
correção são espalhados entre os discos. Dessa forma, é possível gravar
dados simultaneamente em todos os HDs, melhorando o desempenho.

O RAID 5 pode ser implementado com a partir de 3 discos. Independentemente
da quantidade de discos usados, sempre temos sacrificado o espaço
equivalente a um deles. Ou seja, quanto maior é a quantidade de discos
usados no array, menor é a proporção de espaço desperdiçado.


                                                                              466
Em um sistema com 5 HDs de 500 GB, teríamos 2 TB de espaço disponível e
500 GB de espaço consumido pelos códigos de paridade. Usando 8 HDs
teremos 3.5 TB para dados e os mesmos 500 GB para paridade, e assim por
diante:


HD 1            HD 2              HD 3         HD 4           HD 5


80%        dados 80%    dados 80%        dados 80%     dados 80%      dados


20% paridade 20% paridade 20% paridade 20% paridade 20% paridade

Graças à forma como os bits de paridade são dispostos, é possível recuperar
os dados de qualquer um dos HDs que eventualmente falhe. Mais ainda, o
sistema pode continuar funcionando normalmente, mesmo sem um dos HDs.

A idéia por trás dessa aparente "mágica" é bastante simples. A paridade
consiste em adicionar um bit adicional para cada grupo de bits. Ao usar 5 HDs,
por exemplo, temos um bit extra para cada 4 bits de dados.

Caso dentro destes 4 bits exista um número par de bits 1, então o bit de
paridade é 0. Caso exista um número ímpar de bits 1, então o bit de paridade é
1:


    Bits                                                      Paridade
    1           0             1            0                  0
    1           1             1            0                  1
    0           0             0            0                  0
    1           0             0            1                  0

Veja que, graças ao bit de paridade, é possível saber apenas que, dentro do
grupo de 4 bits existe um número par ou ímpar de bits 1. Isso é o suficiente
para recuperar qualquer um dos 4 bits que seja perdido, desde que sejam
respeitadas duas condições:

a) Que apenas um bit de cada grupo seja perdido
b) Que se saiba qual dos bits foi perdido

No RAID 5 cada um dos bits dentro de cada grupo fica guardado em um dos
HDs. Quando um deles é perdido, a controladora sabe exatamente quais bits
foram perdidos e tem condições de recuperá-los usando uma verificação muito
simples:



                                                                           467
Bits                                                      Paridade
    1            ?              1              0              0
    1            ?              1              0              1
    0            ?              0              0              0
    1            ?              0              1              0

Na primeira linha temos dois bits 1 e um bit 0. Se o bit de paridade é 0, significa
que temos um número par de bits 1. Como já temos dois bits 1, então é claro
que o bit que está faltando é um zero. Na segunda linha temos dois bits 1 e um
bit 0. Como o bit de paridade é 1, significa que temos um número ímpar de bits
1. Como temos apenas dois, significa que o bit perdido é um bit 1.

Como disse, a controladora pode manter o sistema funcionando mesmo sem
um dos HDs, realizando estes cálculos em tempo real para obter os dados que
estavam armazenados nele. Quando o HD é finalmente substituído, a
controladora reescreve todos os dados (usando o mesmo processo) e o
sistema volta ao estado original.

Existe também a possibilidade de adicionar um ou mais discos sobressalentes
num array. Esses HDs "extra" são chamados de hot-spares, ou simplesmente
de "spare disks" e são utilizados automaticamente caso algum dos HDs
titulares falhe, permitindo que o array seja restaurado imediatamente.

Embora o uso de hot-spares não seja muito comum em configurações
domésticas, eles são muito comuns em grandes arrays RAID 5 (ou RAID 6)
usados em grandes servidores.


RAID 6: O ponto fraco do RAID 5 é que ele suporta a falha de um único HD. Se
por ventura um segundo HD falhar antes que o primeiro seja substituído, ou
antes que a controladora tenha tempo de regravar os dados, você perde tudo,
assim como acontece ao perder um dos HDs num array RAID 0. O uso de hot-
spares minimiza a possibilidade de um desastre acontecer, mas não a elimina
completamente, pois de qualquer forma o sistema fica vulnerável enquanto a
controladora está regravando os dados no spare.

O RAID 6 é um padrão relativamente novo, suportado por apenas algumas
controladoras. Ele é semelhante ao RAID 5, porém usa o dobro de bits de
paridade, garantindo a integridade dos dados caso até 2 dos HDs falhem ao
mesmo tempo. Ao usar 7 HDs de 500 GB em RAID 6, por exemplo, teríamos
2.5 TB para dados mais 1 TB de códigos de paridade:




                                                                               468
HD 1       HD 2       HD 3       HD 4       HD 5       HD 6       HD 7


      71%        71%        71%        71%        71%        71%        71%
      dados      dados      dados      dados      dados      dados      dados


      29%      29%      29%      29%      29%      29%      29%
      paridade paridade paridade paridade paridade paridade paridade

A percentagem de espaço sacrificado decai conforme são acrescentados mais
discos, de forma que o uso do RAID 6 vai tornado-se progressivamente mais
atrativo. No caso de um grande servidor, com 41 HDs, por exemplo, seria
sacrificado o espaço equivalente a apenas dois discos, ou seja, menos de 5%
do espaço total. Em troca, ganha-se proteção contra a possibilidade de um
segundo HD falhar durante o processo de substituição e reconstrução dos
dados do primeiro.

Tanto no caso do RAID 5 quanto no RAID 6, o servidor continua funcionando
normalmente durante todo o processo de substituição do disco, embora a
performance decaia, sobretudo logo depois da substituição do drive defeituoso,
quando o sistema precisa regravar os dados, lendo as informações
armazenadas em todos os outros discos e fazendo os cálculos de paridade.


JBOD: Este não é um modo RAID, mas também é bastante usado, sobretudo
em servidores de arquivos. No JBOD (Just a Bunch Of Disks) os HDs
disponíveis são simplesmente concatenados e passam a ser vistos pelo
sistema como um único disco, com a capacidade de todos somada. Os
arquivos são simplesmente espalhados pelos discos, com cada um
armazenando parte dos arquivos (nesse caso arquivos completos, e não
fragmentos como no caso do RAID 0).

No JBOD não existe qualquer ganho de desempenho, nem de confiabilidade.
Caso um dos HDs apresente defeito, os arquivos armazenados nele são
perdidos, mas os arquivos armazenados nos demais continuam intactos. Na
verdade, o único ganho é o de praticidade, com a possibilidade de usar vários
discos para formar um único volume de grande capacidade, ao invés de ter que
espalhar os arquivos e pastas entre os vários HDs.

Ao contrário dos outros modos RAID, não existe nenhum problema em
combinar HDs com capacidades e desempenho variados num sistema JBOD.
Cada HD pode dar sua parcela de contribuição, independentemente de sua
capacidade.

As controladoras

Existem três categorias de RAID. A primeira é a das controladoras que
realizam todas as operações via hardware, o que inclui a maior parte das

                                                                          469
controladoras SCSI e SAS. Esse modo é o ideal tanto do ponto de vista do
desempenho quanto do ponto de vista da compatibilidade e confiabilidade, já
que a própria controladora executa todas as funções necessárias, de forma
independente. O sistema operacional apenas acessa os dados, como se
houvesse um único HD instalado.

Como disse, estas controladoras RAID "de verdade" são quase que
invariavelmente, SCSI ou SAS. Além de trabalharem via hardware, elas
permitem o uso de um número maior de drives. Muitas permitem o uso de um
ou mais módulos de memória (instalados na própria controladora) que
funcionam como um cache adicional, ajudando a melhorar o desempenho do
array. Outro recurso cada vez mais utilizado (sobretudo nas controladoras
SAS) é o hot swap, onde você pode substituir os discos defeituosos com o
sistema rodando. Os servidores com controladoras que suportam hot swap
quase sempre utilizam baias removíveis, facilitando o acesso aos discos.

Nas controladoras que trabalham via hardware, toda a configuração é feita
através do BIOS da placa RAID, que pode ser acessado pressionando uma
combinação de teclas durante o boot. O mais comum é pressionar Ctrl+C
pouco antes do início do carregamento do sistema.




                          Controladora RAID SCSI

Naturalmente, estas controladoras são caras, sem falar no custo dos discos,
por isso elas não são o tipo de equipamento que você compraria para instalar
no seu desktop.

Em seguida, temos o RAID via software, onde todas as funções são
executadas diretamente pelo sistema operacional e os HDs são ligados
diretamente às interfaces da placa-mãe. Neste caso, temos um trabalho
adicional de configuração, mas em compensação não é preciso gastar com


                                                                         470
uma controladora dedicada. É possível criar arrays RAID via software tanto no
Linux quanto no Windows 2000, XP, 2003 Server e Vista.

No caso do Windows XP, a configuração de RAID via software é feita no Painel
de Controle > Ferramentas Administrativas > Gerenciamento do Computador >
Gerenciamento de discos.

Clique com o botão direito sobre um dos HDs que farão parte do array e
selecione a opção "Converter em disco dinâmico". Na tela seguinte, marque
todos os HDs que serão usados.

Depois de converter os HDs para discos dinâmicos, clique novamente com o
botão direito sobre um deles e selecione a opção "Novo Volume". É aberto o
assistente que permite criar o array RAID.

As versões Home e Professional oferecem apenas as opções de criar arrays
RAID 0 (distribuído) ou JBOD (estendido), mas no 2000 ou 2003 Server é
possível criar também arrays RAID 1 (Espelhado) e RAID 5, nesse caso
utilizando a partir de 3 HDs:




O terceiro modo é o fake RAID utilizado pela maioria das controladoras
baratas, incluídas nas placas-mãe para desktop. No fake RAID é utilizada uma
combinação de funções adicionais no BIOS da placa e um driver que roda pelo
sistema operacional. No final, tudo é processado via software, de forma que
não existe ganho de desempenho em relação a utilizar RAID via software.
Apenas a configuração é simplificada.

                                                                         471
Na maioria das placas-mãe, a configuração segue uma lógica simples. Você
começa indicando quais drives farão parte do array através do setup. Em
seguida, usa a tecla F10, Ctrl+C, Ctrl+F, ou outra tecla de atalho para acessar
as opções de configuração do array RAID, onde você pode escolher que tipo
de array será criado, o tamanho dos fragmentos e assim por diante.

Na Asus K8N4-E, por exemplo, a opção para ativar o suporte a RAID e indicar
quais drives serão usados está escondida na seção "Advanced > Onboard
Device Configuration > NVRAID Configuration":




A partir daí, o BIOS da controladora RAID passa a ser inicializado durante o
boot e você pode acessar a configuração pressionando a tecla "F10" durante o
boot.

Dentro da configuração, adicione os drives que serão usados no array na
coluna da direita e escolha entre usar RAID 1 (Mirroring) ou RAID 0 (Stripping)
na opção superior. Você pode ainda ajustar o tamanho dos fragmentos, através
da opção "Stripping Block":




                                                                           472
As controladoras fake RAID IDE suportam, via de regra, apenas os modos
RAID 0, 1 e 10. Não é recomendável utilizar mais do que um HD por porta IDE,
de forma que, numa controladora com duas portas, o ideal é utilizar apenas
dois drives, escolhendo entre usar RAID 0 ou RAID 1.

Algumas controladoras SATA oferecem a opção de usar RAID 5, nesse caso
utilizando um mínimo de 3 drives. Também é possível criar um array RAID 5 via
software no Linux (consulte o "software RAID howto", disponível no tldp.org),
utilizando tanto HDs IDE quanto drives SATA ou SCSI.

Assim como nas controladoras via hardware, as controladoras fake RAID
possuem um BIOS próprio (na verdade uma extensão que faz parte do BIOS
principal), que permite criar os arrays. Muitas vezes, está disponível também
um utilitário acessível através do Windows.

Como estas controladoras precisam de um driver adicional, você precisa copiar
os arquivos do driver para um disquete e fornecê-lo durante a instalação
(pressionando a tecla "F6" quando é exibida a mensagem "Pressione F6 se
precisar instalar um driver SCSI ou RAID de TERCEIROS") ao instalar o
Windows XP diretamente dentro do array RAID. No caso do Vista, os drivers
podem ser carregados a partir de um pendrive. Tanto o XP SP2 quanto o Vista
incluem drivers para diversas controladoras, mas naturalmente não para todas.

Outro problema é que muitas controladoras fake RAID não possuem suporte no
Linux e muitas não possuem sequer drivers para o Vista. Nesse caso, a
solução é partir para o RAID via software.

Depois de configurar o RAID, é interessante simular a falha de um dos discos
para ter certeza de que o sistema reagirá como esperado. A melhor forma é

                                                                          473
simplesmente desligar o micro e desconectar um dos drives. Se você está
usando RAID 1, 10 ou 5, o sistema deverá continuar funcionando de forma
normal depois de novamente ligado, exibindo avisos durante o boot, ou
incluindo entradas no log do sistema (ao utilizar RAID via software). Ao utilizar
RAID 0 o sistema simplesmente deixará de dar boot, já que a falha de um dos
drives implica na perda de todos os dados.

Opções de armazenamento externo

A popularização da memória Flash e das redes wireless trouxe algumas
novidades interessantes em termos de armazenamento.

Antigamente, a opção mais simples para quem queria um HD removível era
comprar uma gaveta interna, que era instalada numa baia de CD-ROM e
permitia remover o HD depois de desligar o micro. Embora fossem baratas,
estas gavetas não eram muito práticas, já que você só podia remover o HD
com o micro desligado.

Em seguida vieram as gavetas USB, onde o HD externo é visto pelo sistema da
mesma forma que um pendrive. Existem tanto gavetas para HDs de 3.5", que
utilizam uma fonte externa, quanto gavetas para HDs de notebook, de 2.5" ou
1.8", que obtêm a alimentação necessária da própria porta USB (dependendo
do consumo do HD usado é necessário usar um cabo extra, que usa energia
de uma segunda porta USB). Graças a elas, você pode transportar algumas
centenas de gigabytes com você, a um custo relativamente baixo.




As gavetas internas são ligadas diretamente à porta IDE e ao conector molex
da fonte. Elas funcionam apenas como uma espécie de ponte, sem incluir
nenhum circuito inteligente. É justamente por isso que elas são tão baratas. No


                                                                             474
auge da sua popularidade, essas gavetas chegavam a custar menos de 6
dólares, se compradas em quantidade, no exterior.

As gavetas USB são um pouco mais complexas, pois precisam incluir um
controlador ATA/USB, que faz a conversão dos sinais, transformando as
requisições no padrão usb-storage recebidas através das portas USB em
comandos ATAPI que são entendidos pelo HD. Esta gaveta da foto a seguir,
por exemplo, usa um chip GL811E (http://www.genesyslogic.com), um chip
relativamente barato, que inclui todos os sub-componentes necessários. Além
do chip, a placa inclui apenas alguns resistores e um cristal de quartzo:




Existem também gavetas para HDs SATA, que seguem o mesmo projeto
básico, normalmente mudando apenas o chip controlador (pode-se usar um
chip GL811S, por exemplo). Graças a essa simplicidade, estas gavetas são
relativamente baratas e por isso bastante populares.

As gavetas para HDs de notebook utilizam a energia da própria porta USB,
sem a necessidade de uma fonte externa. Cada porta USB pode fornecer
apenas 2.5 watts de energia, de forma que as gavetas utilizam duas portas,
sendo a segunda apenas para reforçar o fornecimento elétrico. Apesar disso, é
comum que a gaveta funcione mesmo ligada a uma única porta. Existem dois
motivos para isso: o primeiro é que os HDs de 4200 RPM modernos realmente
não consomem muito mais de 2 watts (os de 5200 consomem um pouco mais)
e o segundo é que muitas placas-mãe são capazes de fornecer bem mais de
2.5 watts em cada porta USB. Embora este seja o padrão, os fabricantes
costumam trabalhar com uma boa margem de tolerância.

No caso das gavetas para HDs de 3.5" é utilizada uma fonte externa, já que
seriam necessárias 6 ou mais portas USB para conseguir alimentar um HD
para desktop (sem falar nos circuitos necessários para converter os 5V

                                                                         475
fornecidos pelas portas USB nos 12V usados pelo motor de rotação do drive).
Existem muitos relatos de problemas de estabilidade ao usar gavetas de 3.5"
baratas, com o HD travando ou desligando durante a operação, muitas vezes
causando corrupções diversas do sistema de arquivos. Dentro da minha
experiência eles são normalmente causados por dois fatores.

O primeiro são variações de tensão na rede elétrica, que causam o
desligamento do circuito controlador, ou do próprio HD. Essas variações
normalmente não são suficientes para fazer o micro reiniciar, por causa dos
capacitores da fonte de alimentação, mas as gavetas são mais vulneráveis a
eles. A solução nesse caso seria ligar a gaveta em um nobreak.

O segundo é superaquecimento, que acontece principalmente nas gavetas
mais baratas, que não utilizam coolers. Muitas delas são projetadas para
trabalharem com HDs de 5400 RPM e por isso superaquecem e travam ao
utilizar HDs de 7200 RPM, já que eles consomem mais energia e dissipam
mais calor. A solução nesses casos é melhorar a ventilação (assim como você
faria num PC), deixando a gaveta aberta, ou mesmo improvisando a instalação
de um cooler sobre ela. Veja o que precisei fazer para que esta gaveta da foto
funcionasse de forma confiável com um HD Maxtor de 7200 RPM:




Naturalmente, esse tipo de improviso só é eventualmente necessário em
produtos de baixa qualidade. Fabricantes responsáveis testam seus produtos
sob várias condições de uso, ou pelo menos indicam claramente suas
limitações nas especificações.

Continuando, estamos vendo mais recentemente a popularização de HDs
externos em miniatura, que seguem o mesmo princípio das gavetas, mas
utilizam um HD de 1.8", não-removível, de forma a criar um conjunto mais mais
compacto e leve que uma gaveta para HD de notebook.
                                                                          476
Em outra frente, temos as gavetas eSATA, um padrão de conector SATA
externo, que mantém a mesma velocidade de transmissão. As placas mais
recentes já estão vindo com conectores eSATA embutidos, mas também é
possível utilizar uma controladora PCI Express, ou mesmo PCI.

Na foto a seguir, temos a porta eSATA de uma Asus M2V, disponível no painel
traseiro, ao lado das 4 portas USB:




O eSATA está sendo usado por diversos modelos de gavetas para HD,
substituindo ou servindo como opção ao USB. A vantagem é que você não
corre o risco do desempenho do HD ser limitado pela interface, já que temos
150 MB/s no eSATA (ou 300 MB/s no SATA 300), contra os 60 MB/s (480
megabits) do USB 2.0. Obviamente, isso só faz alguma diferença quando o HD
transmite dados guardados no cache, ou no caso dos HDs topo de linha, lendo
dados seqüenciais.

Na maioria dos casos, a gaveta possui também uma porta USB, que serve
como segunda opção de interface, para casos em que você precisar conectar a
gaveta em micros sem conectores eSATA.




                                                                        477
Gavetas de HD com interface eSATA

Ao contrário do USB, o conector eSATA não transmite energia, de forma que
ele só permite a conexão de HDs e outros dispositivos com fontes de
alimentação (ou baterias). Não seria uma solução prática para pendrives, por
exemplo.

Prevendo essa limitação, alguns fabricantes estão desenvolvendo placas que
incluem conectores de energia, como este adaptador da Addonics, que usa um
conector mini-DIN, que fornece tensões de 5v e 12v, permitindo (com a ajuda
de adaptadores incluídos no kit) conectar diretamente um HD SATA, sem a
necessidade de uma gaveta ou fonte de alimentação. Existem outras soluções
similares, oferecidas por outros fabricantes, mas por enquanto não existe
nenhum padrão:




Para quem pode gastar um pouco mais, existe a opção de comprar um NAS
(Network Attached Storage) que pode ser acessado diretamente através da
rede. Existem muitas opões de NAS, que vão desde sistemas baratos, que
custam pouco mais que uma gaveta USB, até servidores de grande porte, que
armazenam vários terabytes. Muitas vezes, eles são chamados de "network
                                                                         478
storage", ou simplesmente de "storage", termos que são mais descritivos para
o público não técnico do que "NAS".

Os modelos mais baratos comportam apenas um HD e são ligados diretamente
no hub da rede. Alguns incluem também um transmissor wireless ou
disponibilizam uma porta USB, que acaba sendo útil quando você está fora de
casa e precisa apenas acessar alguns arquivos rapidamente no notebook.

Este da foto é um Netgear SC101, que permite a instalação de dois HDs e
inclui uma interface de rede 10/100. Ele não inclui um transmissor wireless,
mas você pode obter a mesma funcionalidade ligando-o a um ponto de acesso
externo.




Em geral, os servidores NAS domésticos rodam uma versão compacta do
kernel Linux (embora nem sempre divulgado pelos fabricantes), com um
conjunto de drivers, que permitem acessar HDs formatados em diversos
sistemas de arquivos e um servidor Samba, que compartilha os arquivos com a
rede, como se fosse uma máquina Windows compartilhando pastas.

Você pode configurar as pastas compartilhadas no NAS e permissões de
acesso através de uma interface via navegador (similar à usada em modems
ADSL e pontos de acesso) e mapear os compartilhamentos nos micros da rede
para acessá-los. Em geral você tem também a opção de usar algum wizard
fornecido pelo fabricante, que simplifica a configuração.

Você pode muito bem criar um NAS usando algum PC antigo, rodando Linux.
Bastaria instalar os HDs e configurar o servidor Samba para compartilhar as

                                                                         479
pastas desejadas com a rede. A vantagem de comprar um dispositivo dedicado
é a praticidade, o baixo consumo elétrico e o "cool factor".

Existem ainda algumas idéias interessantes para uso em conjunto com
dispositivos móveis que podem ou não cair no gosto do público. Um dos
melhores exemplos é o DAVE, desenvolvido pela Seagate. Ele é um HD
externo, de 1.8", que possui uma bateria interna e pode ser acessado tanto via
WiFi quanto via Bluetooth. Ele pesa apenas 70 gramas e é mais ou menos do
tamanho de um celular. A idéia é que você possa levá-lo no bolso, pasta, bolsa
ou mochila e acessar os arquivos no seu palmtop ou celular, via bluetooth,
além de acessá-lo no notebook ou desktop através do transmissor WiFi.

Na prática ele acaba sendo uma solução cara e pouco prática de usar, já que a
taxa de transferência do Bluetooth é muito baixa e o alcance muito pequeno.
De qualquer forma, ele é uma idéia interessante, que dá algumas pistas sobre
o que podemos ver no futuro.




                          Seagate DAVE (à direita)

SSDs e HHDs

Além da popularização dos pendrives e cartões, a queda no preço da memória
Flash possibilitou o surgimento dos primeiros SSDs ou "Solid State Disks"
(discos de estado sólido) de grande capacidade. Um SSD é um "HD" que utiliza
chips de memória Flash no lugar de discos magnéticos. Eles são projetados
para substituírem diretamente o HD, sendo conectados a uma porta SATA ou
IDE.

Embora as taxas de transferência (na maioria dos modelos) seja comparável à
de um HD modesto, os SSDs oferecem tempos de acesso extremamente
baixos, o que melhora o desempenho consideravelmente em uma grande
gama de aplicativos e reduz bastante o tempo de boot. Os SSDs oferecem
também a vantagem de consumirem muito menos eletricidade, serem mais
resistentes mecanicamente (por não possuírem partes móveis), além de serem
completamente silenciosos.


                                                                          480
Em compensação, eles possuem uma desvantagem fatal, que é a questão do
custo. Em maio de 2007, um SSD de 32 GB da Ridata (um dos modelos mais
acessíveis) custava US$ 475, isso se comprado em quantidade, diretamente do
fabricante. Naturalmente, os preços devem cair com a passagem do tempo,
mas isso será um processo gradual, acompanhando a queda no custo por
megabyte da memória Flash.

Devido à grande diferença de preço, os SSDs ficarão de início restritos aos
notebooks ultraportáteis, onde suas vantagens são melhor aproveitadas.
Conforme o custo da memória Flash for caindo, é possível que eles passem a
concorrer com os discos magnéticos em outras áreas, mas isso ainda
demorará algum tempo.




              SSD da Samsung com e sem a cobertura externa

Um meio termo entre os SSDs e os HDs tradicionais são os HHDs (Hybrid Hard
Drives, ou HDs híbridos), que são HDs tradicionais, que incorporam chips de
memória Flash, usados como um buffer de dados.
                                                                        481
Todos os HDs atuais incluem uma pequena quantidade de memória SDRAM
(ou SRAM), usada como cache de disco. O cache é bastante rápido, mas é
limitado por dois fatores: é muito pequeno (16 MB na maioria dos HDs atuais) e
perde os dados armazenados quando o micro é desligado.

Em um HHD é usada uma quantidade generosa de memória Flash (512 MB ou
mais em muitos modelos), que tem a função de armazenar dados
freqüentemente acessados (como arquivos carregados durante o boot), de
forma que eles continuem disponíveis depois de desligar o micro e possam ser
usados no próximo boot, e também a de servir como um buffer de dados,
permitindo que arquivos sejam salvos na memória Flash e copiados para os
discos magnéticos quando for mais conveniente. Neste caso não existe
problema de perda de dados armazenados no buffer ao desligar o micro no
botão, pois os dados ficam retidos na memória Flash e são gravados nos
discos magnéticos no boot seguinte.

Além dos ganhos de desempenho, sobretudo a potencial redução no tempo de
boot, o buffer permite que o HD fique mais tempo em modo de economia de
energia, já que não é preciso "acordar" o HD ao salvar arquivos ou quando o
sistema precisa atualizar arquivos de log, por exemplo, operações que podem
ser realizadas no buffer. Isso acaba tornando a tecnologia bastante
interessante para os notebooks, onde o HD chega a representar um quarto do
consumo elétrico total.

Naturalmente, a memória Flash é muito mais lenta que a memória RAM
tipicamente usada no cache de disco e (em muitos casos) mais lenta até
mesmo que os discos magnéticos em leitura ou gravação de arquivos
seqüenciais. Ao salvar um arquivo grande (uma imagem de DVD, por
exemplo), a gravação é feita diretamente nos discos magnéticos, sem passar
pelo buffer.

Temos também a tecnologia Robson, desenvolvida pela Intel, onde temos um
buffer similar, instalado na placa-mãe. Os chips de memória Flash podem ser
incorporados diretamente na placa, ou instalados através de uma placa de
expansão (opção que fica a cargo do fabricante):




Em ambos os casos, o buffer se comunica com o chipset através do
barramento PCI Express e ele (chipset), com a ajuda de um driver instalado no
sistema operacional, se encarrega de usar o buffer para cachear as operações

                                                                           482
do HD. O princípio de funcionamento e o resultado prático é o mesmo que usar
um HHD, a única grande diferença é que o dinheiro vai para a Intel, ao invés de
para o fabricante do HD ;). A tecnologia Robson foi introduzida no chipset
i965GM e é usado em alguns notebooks baseados na plataforma Santa Rosa.

Na geração inicial, o ganho de desempenho e de autonomia da bateria é muito
pequeno, mas isso pode vir a melhorar nas revisões subsequentes. De
qualquer forma, fica a cargo do fabricante usar o buffer ou não.

ReadyBoost e ReadyDrive

Tanto no caso dos HHDs quanto na tecnologia Robson, é necessário que
exista suporte por parte do sistema operacional. Toda a idéia de usar memória
Flash para acelerar o acesso ao HD foi inicialmente proposta pela própria
Microsoft, de forma que o Vista já vem com suporte de fábrica, através do
ReadyDrive. No caso do Linux, é de se esperar que tenhamos um driver
incorporado ao Kernel assim que os dispositivos começarem a se tornar
populares. A maior dúvida recai sobre o XP e as versões anteriores do
Windows.

Continuando, temos ainda o ReadyBoost, oferecido pelo Vista, onde um
pendrive é usado para criar uma espécie de cache, acelerando o carregamento
dos programas. O ReadyBoost é um recurso que parece simples, mas que se
revela complexo e até contraditório depois de examinado um pouco mais
minuciosamente.




                                                                           483
Desde que você utilize um pendrive de fabricação recente, de 1 GB ou mais,
ligado a uma porta USB 2.0, você realmente perceberá alguma diferença no
tempo de carregamento dos programas. Muitos jogos e aplicativos maiores
podem chegar a carregar em metade do tempo, além da performance geral
melhorar um pouco (principalmente em micros com apenas 512 MB de RAM).
Mas, se você medir as taxas de transferência do pendrive e do HD, vai
perceber que, quase sempre, o HD é mais rápido. Como pode então o pendrive
melhorar o desempenho?

A questão central é que o HD é rápido em leitura seqüencial, onde são lidos
grandes blocos de dados, situados em setores adjacentes. Um HD moderno
pode facilmente superar a marca de 60 MB/s, enquanto o pendrive fornecerá
15, 20, ou, quem sabe, 30 MB/s. Apesar disso, o HD possui um tempo de
acesso muito alto e por isso pode oferecer taxas de transferências
incrivelmente baixas (muitas vezes 2 MB/s ou menos) ao ler vários arquivos
pequenos espalhados. Nesse quesito o pendrive leva uma grande vantagem.
Para você ter uma idéia da diferença, um HD com tempo de acesso de 13
milissegundos seria capaz de realizar pouco mais de 60 leituras a setores
aleatórios por segundo, enquanto mesmo um pendrive de velocidade modesta
pode realizar facilmente mais de 4.000 leituras por segundo.

Outra questão é que o pendrive e o HD são dois dispositivos distintos, ligados a
barramentos separados, de forma que o sistema pode ler dados nos dois

                                                                            484
simultaneamente. O sistema aproveita então para copiar os arquivos
pequenos, ou que estão gravados em setores distantes entre si do HD para o
pendrive, além de usá-lo para armazenar parte da memória swap (exemplo de
aplicação onde a baixa latência do pendrive oferece vantagens), fazendo com
que o HD possa se concentrar em ler os arquivos maiores, função na qual é
mais rápido.

Como a memória Flash não é volátil, os dados continuam lá, prontos para
serem usados nos boots subseqüentes, sem que precisem ser novamente
transferidos a partir do HD. O principal problema com o ReadyBoost é que a
memória Flash possui um limite de ciclos de leitura, de forma que o uso intenso
pode fazer com que o pendrive apresente defeito depois de um ou dois anos de
uso, sobretudo nos pendrives mais baratos, que utilizam chips de mais baixa
qualidade.

O risco de defeito prematuro devido ao esgotamento dos ciclos de leitura da
memória Flash também existe nos HHDs. Neles, entretanto, o risco acaba
sendo menor, pois os fabricantes se vêem obrigados a usar chips de melhor
qualidade e a implementarem sistemas de proteção adicionais, incluindo um
sistema de wear levelling (que consiste em "rotacionar" os dados, evitando que
grande parte das leituras sejam concentradas em alguns poucos setores) e um
sistema de correção de erros e marcação dos setores defeituosos, algo similar
à marcação de badblocks nos discos magnéticos do HD.

Com a popularização do Vista, os fabricantes de memória Flash passaram a
lançar diversos tipos de pendrives otimizados para o ReadyBoost. Inicialmente
eram modelos de alto desempenho, construídos usando chips e controladores
capazes de sustentar taxas mais altas de transferência. Em seguida, passaram
a ser lançados pendrives "dual-channel", onde dois chips de memória Flash
são acessados simultaneamente, dobrando a taxa de leitura e gravação, de
forma muito similar ao que obtemos ao usar dois HDs em RAID 0.

Finalmente, surgiram pendrives de uso interno, novamente vendidos como
modelos específicos para uso do ReadyBoost. Estes pendrives internos são
instalados diretamente em um dos headers USB da placa-mãe, os mesmos
conectores de 9 pinos onde você conecta as portas USB frontais do gabinete.
A idéia é que eles fiquem instalados continuamente, mantendo o cache o
ReadyBoost:




                                                                           485
Pendrive de uso interno, para uso com o ReadyBoost

Cada header USB da placa-mãe oferece duas portas USB. Entretanto, as duas
portas estão interligadas ao mesmo controlador, por isso compartilham os 480
megabits oferecidos por cada controlador USB 2.0. Fazendo com que o
pendrive ocupe o espaço referentes às duas portas, o fabricante evita que a
performance do pendrive seja subutilizada por qualquer gargalo causado pela
conexão de outro dispositivo USB.

Com exceção da mudança no conector, eles são pendrives normais, que
podem ser usados tanto para o ReadyBoost quanto para guardar arquivos e
fazer backups (ou ter o espaço dividido entre as duas aplicações). Caso a
placa-mãe suporte boot através da porta USB, você pode até mesmo usá-los
para instalar o sistema operacional (substituindo o HD) e assim obter um PC
sem partes móveis. Naturalmente, você não conseguiria instalar o Vista em um
pendrive com 2 ou 4 GB, mas é possível instalar Linux, ou mesmo fazer uma
instalação enxuta do Windows XP.

O gigabyte de 1 bilhão de bytes

Nós, como seres humanos, estamos acostumados a pensar em valores
segundo o padrão decimal, por isso temos muito mais facilidade em lidar com
números múltiplos de 10.

Os computadores, por outro lado, trabalham utilizando o sistema binário, ou
seja, com potências do número 2. Um único bit permite duas combinações
possíveis, dois bits permitem 4, oito bits permitem 256, 16 bits permitem 65.536
e assim por diante.

Por causa dessa peculiaridade, um kilobyte não corresponde a 1000 bytes,
mas sim a 1024, já que 1024 é a potência de 2 mais próxima de 1000. Um
megabyte corresponde a 1024 kbytes, que por sua vez correspondem a
1048.576 bytes.


                                                                            486
Quando falamos em gigabytes e terabytes, as diferenças crescem, já que um
gigabyte corresponde a 1.073.741.824 bytes e um terabyte corresponde a
1.099.511.627.776 bytes. Ou seja, um acréscimo de quase 10% em relação ao
que teríamos utilizando o padrão decimal.

Diversos dispositivos seguem essa notação binária, incluindo módulos de
memória e CD-ROMs. Um módulo de memória de 1 GB possui exatamente
1.073.741.824 bytes, enquanto um CD-ROM de 650 MB é dividido em 333.000
setores de 2048 bytes cada um, totalizando 681.984.000 bytes, ou 650.39 MB.

Esta notação segue o padrão do JEDEC para dispositivos de memória, onde o
"mega" é o número 2 elevado à vigésima segunda potência e o "giga" é o
número 2 elevado à trigésima potência.

O ponto de discórdia são os fabricantes de HDs, que comodamente adotaram o
padrão decimal para medir a capacidade dos seus produtos. A discordância
começou muito antes do que se imagina, datando dos primeiros discos
fabricados pela IBM. O IBM 350 não armazenava 5 megabytes, mas sim 5
milhões de caracteres, com 7 bits cada um.

Concordando ou não, todos os fabricantes acabaram sendo obrigados a aderir
à idéia, já que qualquer fabricante que preferisse seguir o padrão binário teria a
capacidade de seus produtos "encolhida" em relação à concorrência. Querendo
ou não, o anúncio de um HD de "1 terabyte" soa melhor do que o anúncio de
um HD de "931 gigabytes binários".

Graças a isso, um HD de 500 GB possui, na verdade, 500 bilhões de bytes,
que correspondem a apenas 465.6 GB, divididos em pouco mais de 931
milhões de setores de 512 bytes cada um.

Inicialmente, os programas de particionamento exibiam a capacidade dos HDs
de forma correta, calculando o espaço em termos de potências binárias. O
problema é que isso resultava numa diferença considerável entre o espaço
exibido e o espaço declarado pelos fabricantes, o que gerava dúvidas e
confusão entre os usuários, que ficavam sem saber por que o programa de
particionamento dizia que seu HD de "120 GB" tinha apenas 111.7 GB.

Depois de muita confusão e inclusive alguns processos na justiça por
propaganda enganosa, os fabricantes de HDs acabaram ganhando a queda de
braço e os programas de particionamento passaram a mostrar a capacidade
utilizando potências de 10. Veja como o cfdisk (no Linux) reconhece um HD
Samsung de 300 GB:




                                                                              487
Ou seja, ele reconhece corretamente a capacidade do drive em bytes, mas
arredonda o número para "300.0 GB", muito embora 300.069.052.416 bytes
correspondam na verdade a apenas 286.16 GB.

Temos ainda o caso dos pendrives e cartões de memória, que ficam no meio
do caminho. Por comodidade, os fabricantes também adotam a notação
decimal, de forma que um pendrive de 1 GB é divulgado como tendo
"1.000.000.000 de bytes, ou mais", enquanto a capacidade real tende a variar
um pouco de fabricante para fabricante. Um pendrive de 1 GB da PQI que
testei tinha 1.027.603.968 bytes, enquanto um cartão de 2 GB da Kingston
tinha 2.002.255872 bytes.

O caso dos pendrives e cartões é interessante, pois eles são originalmente
compostos por chips de memória Flash que seguem o padrão binário. Ou seja,
um pendrive composto por 2 chips de 8 gigabits possuiria realmente 2 GB
"reais". Apesar disso, os fabricantes precisam reservar parte da capacidade
dos chips para o mapeamento de blocos defeituosos e códigos de correção de
erros, de forma que a capacidade utilizável acaba sendo sempre um pouco
menor, além de variar de fabricante para fabricante, de acordo com o número
de bits reservados.

Na prática acabamos com dois padrões de medida conflitantes dentro do ramo
da informática; o padrão decimal e o padrão binário, onde cada um é apoiado
por um segmento.

Em 2005 o IEEE acabou cedendo à pressão dos fabricantes de HDs e
introduziu um novo conjunto de medidas para a designação de valores binários,
incluindo o mebibyte, o gibibyte e o tebibyte. O "bi" em todos os prefixos é
abreviação de "binary", indicando justamente que estamos falando de
grandezas binárias.

Ou seja, de uma hora para a outra, seu micro deixou de ter 1 gigabyte de
memória e passou a ter 1 gibibyte, enquanto seu HD deixou de ter 465.6 GB e
passou, por decreto, a ter 500 GB!


                                                                          488
Pelo novo padrão (IEEE 1541), um kilobyte deixa de ter 1024 bytes e passa a
ter apenas 1000. Um "kibibyte" não é mais uma mordida no kibe, mas sim um
conjunto de 1024 bytes, enquanto um "kibibit" passa a ser um conjunto de 1024
bits. Mudam também as abreviações, onde "Pib" deixa de ser "produto interno
bruto" e passa ser abreviação de "pebibyte", ou seja, pouco mais que um
quadrilhão de bits. :)

Vamos então parar com as piadinhas e ir diretamente à tabela com o novo
padrão           e           as             novas            abreviações:


   Padrão Decimal                      Padrão Binário
   kilobyte (KB)    kilobit (Kb)       kibibyte (KiB)   kibibit (Kib)
   megabyte (MB)    megabit (Mb)       mebibyte (MiB)   mebibit (Mib)
   gigabyte (GB)    gigabit (Gb)       gibibyte (GiB)   gigibit (Gib)
   terabyte (TB)    terabit (Tb)       tebibyte (TiB)   tebibit (Tib)
   petabyte (PB)    petabit (Pb)       pebibyte (PiB)   pebibit (Pib)
   exabyte (EB)     exabit (Eb)        exbibyte (EiB)   exbibit (Eib)
   zettabyte (ZB)   zettabit (Zb)      zebibyte (ZiB)   zebibit (Zib)
   yottabyte (YB)   yottabit (Yb)      yobibyte (YiB)   yobibit (Yib)


Naturalmente, o novo padrão encontrou muitos opositores e a adoção vem
caminhando a passos de tartaruga. Muitos autores optaram por ignorar o novo
padrão e continuar utilizando a notação binária, usando o termo "decimal" para
indicar o uso do padrão decimal quando isso puder dar origem à confusão.
Posso então dizer que o padrão ATA-6 derrubou o limite de 128 GB para o
endereçamento dos HDs, ou que ele derrubou o limite de 137 GB decimais.

Para que o padrão do IEEE venha a realmente se tornar um "padrão" e não
mais uma simples mudança das regras no meio do jogo, que vem a atender ao
lobby dos fabricantes de HDs, seria necessário que toda a literatura técnica
fosse alterada, mudando todas as referências a unidades de armazenamento e
explicando por que apenas os HDs possuem "gigabytes", enquanto quase
todos os demais componentes possuem "gibibytes".

Drives de Disquetes

Apesar dos drives de disquetes serem baseados nos mesmos princípios dos
HDs, eles são muito mais simples, já que trabalham com densidades e taxas
de leitura muito mais baixas. De certa forma, os drives de disquetes lembram
um pouco os HDs de 5 a 10 MB usados no início da década de 80, com seus
motores de passo e mídias pouco confiáveis.

A mídia magnética de um disquete é composta de óxido de ferro, basicamente
ferrugem. É aplicada uma fina camada desse material sobre um disco feito de
plástico mylar, o mesmo utilizado nas antigas fitas K-7.


                                                                          489
Assim como nos discos rígidos, os disquetes são divididos em trilhas e setores.
A diferença é que, enquanto um disco rígido atual possui mais de 100.000
trilhas, um disquete de 1.44 MB possui apenas 80 trilhas. O número de setores
também é muito menor, apenas 18 setores por trilha num disquete de 1.44,
muito longe dos 1200 ou 1500 setores por trilha dos HDs.

Cada setor possui 512 bytes, o que dá um total 720 KB por face. Nos disquetes
de 1.44 são usadas as duas faces do disco, chegando aos 1.44 MB nominais.

Como nos disquetes não é utilizado o recurso de Zoned Bit Recording, todas as
trilhas possuem o mesmo número de setores. Falando em trilhas, uma
curiosidade sobre os discos flexíveis é que apenas uma pequena faixa do disco
é usada para gravar dados. A densidade em um disquete de 1.44 é de 135
trilhas por polegada. Como temos apenas 80 trilhas, é aproveitada uma faixa
de apenas 1.5 cm do disquete, que começa a partir da borda do disco.

A velocidade de rotação nos drives de disquete também é muitas vezes menor
que a dos discos rígidos. Enquanto nos HDs rotações de 7.200 RPM ou mais
são norma, um drive de 1.44 trabalha com apenas 300 rotações por minuto, ou
seja, apenas 5 rotações por segundo! Um dos motivos de ser utilizada uma
velocidade de rotação tão baixa é a fragilidade da mídia magnética dos
disquetes, que fatalmente seria danificada durante a leitura e gravação de
dados caso fossem utilizadas velocidades mais altas.

Enquanto nos discos rígidos é utilizado um sistema magnético para movimentar
as cabeças de leitura (o sistema voice-coil), que permite uma movimentação
extremamente rápida e precisa, os drives de disquete ainda utilizam motores
de passo, assim como os primeiros HDs.

Ao receber um impulso elétrico, o motor gera um movimento preciso que faz
com que a cabeça de leitura percorra a distância correspondente a uma trilha.
Como você pode ver na foto, a cabeça de leitura dentro do drive é ligada
diretamente no eixo do motor e fica em contato direto com a mídia, ao invés de
"flutuar" sobre ela como as cabeças de leitura dos HDs:




                                                                           490
Apesar do motor de passo funcionar relativamente bem, ele é muito lento,
fazendo com que a cabeça de leitura demore cerca de 200 milissegundos para
se movimentar de um canto ao outro do disquete. Como o motor demora mais
200 milissegundos para concluir uma rotação completa, teríamos um tempo de
acesso médio (somando o tempo de movimento da cabeça de leitura até a
metade do disco, com o tempo de metade de uma rotação) de também 200
milissegundos, o que é quase 18 vezes mais lento que o tempo de acesso num
HD razoável.

O mais impressionante sobre os drives de disquetes foi sua miraculosa
sobrevida. Mesmo sem nenhuma inovação desde 1987 (quando os drives de
1.44 passaram a ser usados no IBM PS/2), os drives de disquetes ainda são
usados em muitos micros novos ainda em 2007! Seja por necessidade de ler
disquetes usados por colegas de trabalho, ou por puro masoquismo, até
mesmo os donos de notebooks muitas vezes recorrem a drives de disquete
USB.

Ao longo dessas duas décadas, houve diversas tentativas de criar um padrão
atualizado para discos magnéticos removíveis, quase todas fracassadas. Os
únicos que atingiram uma certa popularidade foram os discos Zip, de 100 MB e
os LS-120 (de 120 MB ;). No passado, os discos zip chegaram a ser vendidos
em papelarias, mas como eles eram caros, acabavam encalhando.




                                                                         491
Zip drive paralelo

Atualmente (2007) a Iomega fabrica o Rev, uma unidade que utiliza discos
rígidos removíveis de 70 GB. Basicamente, cada cartucho é uma unidade
completa, incluindo o disco magnético e cabeças de leitura, enquanto a leitora
inclui a controladora, interface e outros componentes que num HD fariam parte
da placa lógica. O maior problema é que os discos do Rev são muito caros.
Mesmo nos EUA custam US$ 70 cada um (mais caro do que um HD SATA de
250 GB, que por lá custa menos de US$ 60) o que elimina qualquer
possibilidade de popularização.

Além de derrotarem seus "sucessores", os drives de disquetes sobreviveram à
popularização dos gravadores de CD, à massificação do uso do e-mail e de
outras formas de transferência de arquivos via web e, embora enfraquecidos,
continuam resistindo até mesmo à popularização dos pendrives e cartões de
memória. É possível que no início da próxima década ainda se veja pessoas
procurando disquetes para comprar. Resta o consolo de que as coisas já foram
piores... ;)




                                                                          492
Disquete de oito polegadas, antecessor dos disquetes de 5.25"

Dentro do meio técnico, a principal utilidade dos drives de disquete é usar
disquetes de boot diversos, que permitem tanto rodar ferramentas diversas de
diagnóstico quanto iniciar a instalação do sistema em micros que não suportam
boot através do CD-ROM.

Apesar disso, a maioria dos programas de gravação de CD permitem criar CDs
de boot usando o sistema de emulação de disquete, onde é criado um CD de
boot, contendo o arquivo de imagem de um disquete. No K3B, por exemplo,
você adiciona as imagens através da opção "Projeto > Editar Imagens de
Boot".

Outra ferramenta extremamente útil é o Ultimate Boot CD, uma imagem .ISO,
pronta para gravar, disponível no: http://www.ultimatebootcd.com. Ele inclui um
grande número de utilitários de diagnóstico pré-instalados e você pode
personalizar o CD, gerando uma imagem contendo outros utilitários e também
disquetes de boot, que ficam disponíveis para uso ao dar boot através do CD:




                                                                           493
Muitos utilitários de atualização de BIOS também exigem o uso de um
disquete, mas isso vem diminuindo. Muitos fabricantes oferecem a opção de
baixar um CD de boot e muitas placas oferecem utilitários de gravação dentro
do próprio Setup, que são capazes de regravar o BIOS a partir de um arquivo
salvo numa partição FAT do HD, ou mesmo num pendrive.

Outro problema é a falta de drives para HDs SATA e controladoras RAID na
versão original Windows XP, onde era necessário copiar os drivers da
controladora SATA ou RAID (geralmente encontrados na pasta
DriverDiskSATA, "DriversChipsetdrvdisk" ou DriverDiskRAID do CD-
ROM de drivers da placa-mãe) para um disquete e pressionar a tecla "F6"
durante a fase inicial da instalação, quando era exibida a mensagem
"Pressione F6 se precisar instalar um driver SCSI ou RAID de TERCEIROS" e
em seguida a tecla "E" para que o disquete fosse localizado. Sem isso o HD
não era reconhecido e não era possível concluir a instalação.

Felizmente, esse problema foi resolvido a partir do Windows XP SP2 que
integrou os drivers necessários. Desde que você tenha uma mídia de
instalação atualizada, não precisa mais do disquete durante a instalação.

Capítulo 6: Sistemas de arquivos e recuperação de dados

A forma como a controladora do HD vê os dados armazenados nos discos
magnéticos pode ser bem diferente da forma como vê o sistema operacional.
Enquanto a controladora enxerga as trilhas, setores e cilindros e se esforça
para localizá-los nos discos magnéticos, usando as marcações servo, o
sistema operacional enxerga apenas uma longa lista de endereços, chamados
de clusters ou blocos. Quando ele precisa de um determinado arquivo, ele não
se preocupa em tentar descobrir em qual trilha e setor ele está armazenado.

                                                                         494
Ele apenas envia o endereço do bloco que deve ser lido e a controladora se
encarrega do restante.

O fato da controladora "esconder" as informações sobre a organização interna
dos discos, é o que faz com que os sistemas operacionais sejam compatíveis
com todos os HDs do mercado, sem que seja necessário instalar drivers
completos para cada um. Quando acontece de uma versão antiga do Windows,
ou de alguma distribuição Linux não detectar seu HD durante a instalação,
quase sempre o problema é causado pela falta de drivers para a interface IDE
ou para a controladora SATA do chipset da placa-mãe, e não para o HD em si.
A primeira versão do Windows XP, por exemplo, não oferecia suporte nativo à
maioria das controladoras SATA, de forma que era preciso fornecer um
disquete com drivers durante a instalação.

Formatação física

Originalmente, os discos magnéticos do HD são um terreno inexplorado, uma
mata virgem sem qualquer organização. Para que os dados possam ser
armazenados e lidos de forma organizada, é necessário que o HD seja
previamente formatado.

Em primeiro lugar, temos a formatação física, na qual os discos são divididos
em trilhas, setores e cilindros e são gravadas as marcações servo, que
permitem que a placa lógica posicione corretamente as cabeças de leitura.

Nos HDs atuais, a formatação física é feita em fábrica, durante a fabricação
dos discos. O processo envolve o uso de máquinas especiais e, apenas para
garantir, restrições são adicionadas no firmware do drive, para que a placa
lógica seja realmente impedida de fazer qualquer modificação nas áreas
reservadas. Graças a isso, é impossível reformatar fisicamente um drive atual,
independentemente do software usado.

No caso dos drives "pré-ATA", como os antigos ST-506 e ST-412, a história era
diferente. Eles precisavam ser periodicamente reformatados fisicamente
através do setup, pois as mudanças de temperatura, a vibração causada pelo
motor de rotação e as próprias operações de leitura e gravação acabavam por
alterar a posição das trilhas na mídia magnética, causando desalinhamento e
dificultando a leitura dos dados pela cabeça de leitura. Era necessária, então,
uma nova formatação física, para que as trilhas, setores e cilindros, voltassem
as suas posições iniciais.

No caso dos discos atuais, esse processo não é mais necessário, pois as
mídias são muito mais confiáveis e a placa controladora pode compensar
eventuais desvios rapidamente, simplesmente calibrando o movimento do
braço de leitura.




                                                                           495
Formatação lógica

Em seguida, temos a formatação lógica, que adiciona as estruturas utilizadas
pelo sistema operacional. Ao contrário da formatação física, ela é feita via
software e pode ser refeita quantas vezes você quiser. O único problema é
que, ao reformatar o HD, você perde o acesso aos dados armazenados,
embora ainda seja possível recuperá-los usando as ferramentas apropriadas,
como veremos mais adiante.

Chegamos então ao sistema de arquivos, que pode ser definido como o
conjunto de estruturas lógicas que permitem ao sistema operacional organizar
e otimizar o acesso ao HD. Conforme cresce a capacidade dos discos e
aumenta o volume de arquivos e acessos, esta tarefa torna-se mais e mais
complicada, exigindo o uso de sistemas de arquivos cada vez mais complexos
e robustos.

Existem diversos sistemas de arquivos diferentes, que vão desde sistemas
simples como o FAT16, que utilizamos em cartões de memória, até sistemas
como o NTFS, EXT3 e ReiserFS, que incorporam recursos muito mais
avançados.

A formatação do HD é feita em duas etapas. A primeira é o particionamento,
onde você define em quantas partições o HD será dividido e o tamanho de
cada uma. Mesmo que você não pretenda instalar dois sistemas em dual boot,
é sempre interessante dividir o HD em duas partições, uma menor, para o
sistema operacional, e outra maior, englobando o restante do disco para
armazenar seus arquivos. Com isso, você pode reinstalar o sistema quantas
vezes precisar, sem o risco de perder junto todos os seus arquivos.

Podemos ter um total de 4 partições primárias ou três partições primárias e
mais uma partição estendida, que pode englobar até 255 partições lógicas. É
justamente a partição lógica que permite dividir o HD em mais de 4 partições.

Esta limitação das 4 partições primárias é uma limitação que existe desde o
primeiro PC, lançado em 1981. Os projetistas que escreveram o BIOS para ele
precisavam economizar memória e chegaram à conclusão que 2 bits (4
combinações) para o endereço das partições seriam suficientes, pois na época
os HDs mais vendidos tinham apenas 5 MB e só existia um sistema
operacional para PCs (o MS-DOS), de forma que era raro alguém precisar criar
mais de uma partição. As coisas mudaram "um pouco" de lá pra cá, mas
infelizmente a limitação continua até os dias de hoje.

Para amenizar o problema, foi adicionada a possibilidade de criar partições
lógicas. Em vez de criar 4 partições primárias e ficar sem endereços para criar
novas partições, você cria uma "partição estendida", que é uma espécie de
container, que permite criar mais partições. A partição estendida contém uma
área extra de endereçamento, que permite endereçar as 255 partições lógicas.
É possível criar até 4 partições estendidas, de forma que (em teoria) é possível
dividir o HD em até 1020 partições.


                                                                            496
Digamos que você queira particionar um HD de 160 GB para instalar Windows
e Linux em dual boot, deixando uma partição de 20 GB para o Windows, uma
partição de 20 GB para o Linux, uma partição de 1 GB para swap (do Linux) e
uma partição maior, englobando os 119 GB restantes para guardar seus
arquivos.

Como precisamos de 4 partições no total, seria possível criar diretamente 4
partições primárias, mas neste caso você ficaria sem endereços e perderia a
possibilidade de criar novas partições mais tarde, caso resolvesse testar uma
outra distribuição, por exemplo.

Ao invés disso, você poderia começar criando a partição de 20 GB do Windows
como primária (é sempre recomendável instalar o Windows na primeira
partição do HD e em uma partição primária, devido às particularidades do
sistema) e em seguida criar uma partição estendida, englobando todo o resto
do espaço, criando as demais partições como partições lógicas dentro dela.

Este é um screenshot do Gparted, que mostra um HD dividido em várias
partições. Veja que a quarta partição está marcada como "extended", ou seja,
como partição extendida. Ela não armazena dados, nem ocupa um espaço
considerável no disco, mas permitiu que fossem criadas as partições de 5 a 7.
Veja que existe também um trecho marcado como "não alocada", ou seja,
espaço vago onde é possível criar mais uma partição:




                  Exemplo de particionamento no Gparted


                                                                         497
Do ponto de vista do sistema operacional, cada partição é uma unidade
separada, quase como se houvesse dois ou três discos rígidos instalados na
máquina. Cada partição possui seu próprio diretório raiz e sua própria FAT. As
informações sobre o número de partições, sua localização no disco e o espaço
ocupado por cada uma são armazenadas na tabela de partição, que
compartilha o primeiro setor do disco com o setor de boot.

Você pode particionar o HD usando o próprio assistente mostrado durante a
instalação do Windows XP ou Vista, usando um dos particionadores mostrados
durante a instalação de várias distribuições Linux ou através de programas
avulsos, como o Partition Magic (no Windows) ou o Gparted (no Linux), que
você pode usar dando boot através de uma distribuição live-CD que o traga
pré-instalado.

Tanto o PartitionMagic quanto o Gparted são particionadores gráficos fáceis de
usar. O espaço disponível é mostrado na forma de uma barra na parte superior
da tela, que vai sendo dividida em retângulos menores, conforme você vai
criando as partições. A cor de cada partição representa o sistema de arquivos
usado e os espaços não particionados do disco aparecem em cinza. Além de
criar e deletar partições, os dois programas também oferecem opções
adicionais, como redimensionar partições (sem perder os dados), muito útil
quando você já tem um sistema operacional instalado e precisa liberar espaço
para instalar um segundo sistema em dual boot, por exemplo.

Este é um screenshot do PartitionMagic. Veja que a interface é muito similar à
do Gparted, que mostrei a pouco:




                                PartitionMagic

Em seguida, temos a formatação propriamente dita, onde as estruturas do
sistema de arquivos são finalmente gravadas na partição. Na maioria dos
casos, o próprio programa de particionamento se encarrega de formatar a
partição usando o sistema de arquivos escolhido, mas, em outros, temos dois
programas diferentes, como no caso do fdisk e do format, usados no Windows
98.

                                                                           498
No mundo Windows, temos apenas três sistemas de arquivos: FAT16, FAT32 e
NTFS. O FAT16 é o mais antigo, usado desde os tempos do MS-DOS,
enquanto o NTFS é o mais complexo e atual. Apesar disso, temos uma
variedade muito grande de sistemas de arquivos diferentes no Linux (e outros
sistemas Unix), que incluem o EXT2, EXT3, ReiserFS, XFS, JFS e muitos
outros. Para quem usa apenas o Windows, estes sistemas podem parecer
exóticos, mas eles são velhos conhecidos de quem trabalha com servidores, já
que neles o Linux é o sistema mais popular.

Vamos começar estudando as estruturas do sistema FAT. Por ser o sistema
mais antigo ele é também o mais simples e mais fácil de entender.

FAT16 e FAT32

O sistema FAT16 é uma espécie de "pau pra toda obra", já que é compatível
com praticamente todos os sistemas operacionais e também dispositivos como
câmeras, palmtops, celulares e mp3players. Ele é o sistema de arquivos usado
por padrão nos cartões SD e também nos pendrives de até 2 GB. Só
recentemente os cartões passaram a utilizar FAT32, com a introdução do
padrão SDHC.

No sistema FAT, o HD é dividido em clusters, que são a menor parcela do HD
vista pelo sistema operacional. Cada cluster possui um endereço único, que
permite ao sistema localizar os arquivos armazenados. Um grande arquivo
pode ser dividido em vários clusters, mas não é possível que dois arquivos
pequenos sejam gravados dentro do mesmo cluster. Cada cluster pode ser
composto por de 1 a 64 setores (ou seja, de 512 bytes a 32 KB), de acordo
com o tamanho da partição.

A principal limitação é que, como o nome sugere, o FAT16 usa endereços de
16 bits para endereçar os clusters dentro da partição, permitindo um máximo
de 65536 clusters, que não podem ser maiores que 32 KB. Isso resulta num
limite de 2 GB para as partições criadas.

No caso de HDs (e também pendrives ou cartões) maiores que 2 GB, é
possível criar várias partições de 2 GB cada uma, até utilizar todo o espaço
disponível. Esta pode ser uma solução no caso de dispositivos com 4 ou 5 GB,
por exemplo, mas, naturalmente, não é uma opção realística no caso de um
HD de 60 GB, por exemplo, onde seria necessário criar 30 partições!

Numa partição de 2 GB, cada cluster possui 32 KB, o que acaba resultando
num grande desperdício de espaço ao gravar uma grande quantidade de
arquivos pequenos. Imagine que gravássemos 10.000 arquivos de texto, cada
um com apenas 300 bytes. Como um cluster não pode conter mais do que um
arquivo, cada arquivo iria ocupar um cluster inteiro, ou seja, 32 kbytes. No total,
os 10.000 arquivos ocupariam um total de 10.000 clusters, ou seja, um total de
320 MB!

O tamanho dos clusters em partições FAT16 varia de acordo com o tamanho
da partição. Quanto maior o tamanho da partição, maior o tamanho dos

                                                                               499
clusters:


Tamanho da Partição                   Tamanho dos Clusters usando FAT16
Entre 1 e 2 GB                        32 KB
Menor que 1 GB                        16 KB
Menor que 512 Mb                      8 KB
Menor que 256 Mb                      4 KB

Como em toda regra, existe uma exceção. O Windows NT permitia criar
partições FAT de até 4 GB usando clusters de 64 KB, mas este foi um recurso
pouco usado, devido ao desperdício de espaço.

A versão original do Windows 95 suportava apenas o FAT16, obrigando quem
possuía HDs maiores que 2 GB a dividi-los em duas ou mais partições e lidar
com o desperdício de espaço causado pelos clusters de 32 KB.

A solução foi a criação do sistema FAT32, que foi incorporado no Windows 95
OSR/2 e continuou sendo usado nas versões seguintes.

A principal evolução foi o uso de endereços de 32 bits para o endereçamento
dos clusters, o que possibilita a criação de partições muito maiores, de até 2
terabytes. Isso foi possível por que o Windows 95 era um sistema de 32 bits, ao
contrário do MS-DOS e do Windows 3.1, que eram sistemas de 16 bits.

A princípio, o uso de endereços de 32 bits permitiriam o uso de clusters de 4
KB mesmo em partições muito grandes mas, por questões de desempenho,
ficou estabelecido que por default os clusters de 4 KB seriam usados apenas
em partições de até 8 GB. Acima disto, o tamanho dos clusters varia de acordo
com               o            tamanho                da             partição:


 Tamanho da partição                Tamanho do cluster
 Menor do que 8 GB                  4 KB
 De 8 GB a 16 GB                    8 KB
 De 16 GB a 32 GB                   16 KB
 Maior do que 32 GB                 32 KB

Usando clusters de 4 KB, os 10.000 arquivos do exemplo anterior ocupariam
apenas 40 MB, uma economia considerável. De fato, ao converter uma partição
FAT16 para FAT32 é normal conseguir de 10 a 20% de redução no espaço
ocupado, devido à redução do espaço desperdiçado.

O Windows 98 inclui um conversor, que permite converter partições FAT16
para FAT32 sem perda de dados. Atualmente ele não possui muita utilidade, já
que o FAT16 é raramente usado fora dos pendrives e cartões de memória mas,
de qualquer forma, caso precise dele, o ícone está disponível no Iniciar >
Ferramentas de Sistema.

                                                                           500
A grande limitação do sistema FAT32 está relacionada ao tamanho máximo
dos arquivos. Mesmo usando uma grande partição, não é possível armazenar
arquivos com mais de 4 GB, o que é um grande problema para quem trabalha
com arquivos grandes, como vídeos em formato RAW (sem compressão). Não
é possível sequer armazenar um ISO de DVD, já que a cópia ou transferência
será sempre abortada depois de transferidos os primeiros 4 GB.

Não existe qualquer sinal de que futuras versões do sistema de arquivos
derrubarão esta limitação, já que a Microsoft vem recomendando o uso do
NTFS desde a primeira versão do Windows XP, de forma que a melhor opção,
para quem usa Windows, é seguir a recomendação e migrar para ele.

Outra limitação é que o particionador usado durante a instalação do Windows
XP se recusa a formatar partições FAT32 maiores do que 32 GB. Este é um
limite do software e não do sistema de arquivos em si. A solução para criar
partições FAT maiores é utilizar o PartitionMagic, Gparted ou outro
particionador para criar a partição e em seguida apenas instalar o sistema na
partição criada.

Uma curiosidade é que, antes do FAT16, existiu o FAT12, um sistema ainda
mais primitivo, utilizado em disquetes e também nas primeiras versões do MS-
DOS. Nele, são usados endereços de apenas 12 bits para endereçar os
clusters, permitindo um total de 4096 clusters de até 4 KB, o que permitia
partições de até 16 MB.

Em 1981, quando o IBM PC foi lançado, 16 MB parecia ser uma capacidade
satisfatória, já que naquela época os discos rígidos tinham apenas 5 ou 10 MB.
Claro que, em se tratando de informática, por maior que seja um limite, ele
jamais será suficiente por muito tempo. Um excelente exemplo é a célebre
frase "Por que alguém iria precisar de mais de 640 KB de memória RAM?" dita
por Bill Gates em uma entrevista, no início da década de 80. Logo começaram
a ser usados discos de 40, 80 ou 120 MB, obrigando a Microsoft a criar a FAT
16, e incluí-la na versão 4.0 do MS-DOS.

Apesar de obsoleto, o FAT12 ainda continua vivo até os dias de hoje, fazendo
compania para outro fantasma da informática: os disquetes. Por ser mais
simples, o FAT12 é o sistema padrão para a formatação dos disquetes de 1.44,
onde são usados clusters de apenas 512 bytes.

Estruturas Lógicas

Todos os vários sistemas de arquivos são constituídos de um conjunto de
estruturas lógicas, que permitem ao sistema operacional organizar os dados
gravados e acessá-los com a maior velocidade e confiabilidade possíveis.

Tudo começa com o setor de boot, que é lido pelo BIOS da placa-mãe no
início do boot, logo após a contagem de memória e outros procedimentos
executados durante o POST.




                                                                          501
O setor de boot, também chamado de MBR ou trilha zero, contém dois
componentes essenciais. O primeiro é um bootstrap, o software responsável
por iniciar o carregamento do sistema operacional. Tipicamente, é utilizado um
gerenciador de boot, como o NTLDR (usado pelo Windows XP) ou o Grub
(usado pela maior parte das distribuições Linux). A função do gerenciador de
boot é mostrar uma lista com os sistemas operacionais instalados no início do
boot e carregar o sistema escolhido.

O bootstrap ocupa os primeiros 446 bytes do MBR. Os 66 bytes restantes são
usados para armazenar a tabela de partições, que guarda informações sobre
onde cada partição começa e termina. Alguns vírus, além de acidentes em
geral, podem danificar os dados armazenados na tabela de partição, fazendo
com que pareça que o HD foi formatado. Mas, na maioria dos casos, os dados
continuam lá, intactos, e podem ser recuperados.

Depois que o disco rígido foi formatado e dividido em clusters, mais alguns
setores são reservados para guardar a FAT ("file allocation table" ou "tabela de
alocação de arquivos"). A função da FAT é servir como um índice,
armazenando informações sobre cada cluster do disco. Através da FAT, o
sistema sabe se uma determinada área do disco está ocupada ou livre e pode
localizar qualquer arquivo armazenado.

Cada vez que um novo arquivo é gravado ou apagado, o sistema operacional
altera a FAT, mantendo-a sempre atualizada. A FAT é tão importante que, além
da tabela principal, é armazenada também uma cópia de segurança, que é
usada sempre que a tabela principal é danificada de alguma maneira.

Todos os demais sistemas de arquivos utilizam algum tipo de índice, similar à
FAT. Quando o HD é reformatado, este índice é apagado e substituído por uma
tabela em branco. Apesar disso, os arquivos continuam gravados nas mesmas
posições, embora inacessíveis. Enquanto eles não forem realmente
sobrescritos por outros, é possível recuperá-los usando um programa de
recuperação de dados, como veremos em detalhes mais adiante.

Em seguida, temos o diretório raiz. Se fôssemos comparar um disco rígido,
formatado em FAT16 ou FAT32 com um livro, as páginas seriam os clusters, a
FAT serviria como as legendas e numeração das páginas, enquanto o diretório
raiz seria o índice, com o nome de cada capítulo e a página onde ele começa.

O diretório raiz ocupa mais alguns setores no disco, logo após os setores
ocupados pela FAT. Cada arquivo ou diretório do disco rígido possui uma
entrada no diretório raiz, com o nome do arquivo, a extensão, a data de quando
foi criado ou quando foi feita a última modificação, o tamanho em bytes e o
número do cluster onde o arquivo começa.

Um arquivo pequeno pode ser armazenado em um único cluster, enquanto um
arquivo grande é "quebrado" e armazenado ocupando vários clusters. Nesse
caso, haverá no final de cada cluster uma marcação, indicando o próximo
cluster ocupado pelo arquivo. No último cluster ocupado, temos um código que
marca o fim do arquivo.



                                                                            502
Quando um arquivo é deletado, simplesmente é removida sua entrada no
diretório raiz, fazendo com que os clusters ocupados por ele pareçam vagos
para o sistema operacional. Ao gravar um novo arquivo no disco, o sistema
simplesmente procura o primeiro setor livre, continuando a gravá-lo nos setores
livres seguintes, mesmo que estejam muito distantes uns dos outros. Surge
então o problema da fragmentação, que reduz consideravelmente a
velocidade de acesso, já que dados espalhados significam mais movimentos
da cabeça de leitura.

Ao contrário de outros sistemas de arquivos mais modernos, o sistema FAT
(tanto o FAT16 quanto o FAT32) não possui nenhum mecanismo que impeça,
ou pelo menos diminua a fragmentação, daí a necessidade de rodar o defrag
ou outro programa desfragmentador periodicamente. A função deles é mover
os arquivos, de forma que eles fiquem gravados em clusters seqüenciais.




                                                                           503
Desfragmentação do HD (no Windows), usando o Diskeeper

Uma curiosidade é que a fragmentação é um problema apenas nos HDs, já que
eles trabalham com tempos de acesso muito altos. Nos cartões de memória, o
tempo de acesso é comparativamente muito baixo, de forma que a
fragmentação possui um impacto muito pequeno sobre a performance.

Continuando, além do nome, cada arquivo recebe também uma extensão de
até três caracteres, como "EXE", "DOC", etc. Através da extensão, o sistema
operacional sabe que um determinado arquivo deve ser executado ou aberto
usando o Word, por exemplo.

A extensão não tem nenhuma influencia sobre o arquivo, apenas determina
como ele será visto pelo sistema operacional. Se você abrir o Notepad,
escrever um texto qualquer e salvá-lo como "carta.exe", por exemplo,
conseguirá abrir e editar este arquivo sem problemas, mas se você chamar o
arquivo clicando duas vezes sobre ele dentro do Windows Explorer, o sistema
operacional verá a extensão "EXE" e tentará executar o arquivo, ao invés de
tentar abri-lo usando o Notepad, como faria caso o arquivo tivesse a extensão
"TXT".

Inicialmente, as extensões de arquivo eram utilizadas apenas no Windows,
enquanto o Linux e os sistemas Unix em geral se baseavam no conteúdo do

                                                                          504
arquivo. Mas, recentemente isso vem mudando, com o KDE e o Gnome
utilizando associações de arquivos também baseadas nas extensões.

Depois da extensão, existe mais um byte reservado para o atributo do arquivo,
que pode ser "somente leitura", "oculto", "sistema", "volume label", "diretório"
ou "arquivo". O atributo permite instruir o sistema operacional e demais
aplicativos sobre como lidar com o arquivo. Os atributos suportados mudam de
acordo com o sistema de arquivos. Como veremos adiante, o NTFS suporta um
conjunto de atributos que não existem no sistema FAT. O mesmo pode ser dito
em relação aos sistemas de arquivo usados no Linux.

O atributo "somente leitura" indica que o arquivo não deve ser modificado ou
deletado. Se você tentar deletar ou modificar um arquivo somente leitura pelo
DOS, receberá a mensagem "Access Denied". Tentando apagar o arquivo
através do Windows Explorer você receberá um aviso explicando que o arquivo
é somente para leitura, perguntando se você tem certeza que deseja deletá-lo.
O atributo "sistema" possui uma função parecida, indicando apenas que, além
de ser oculto, o arquivo é utilizado pelo sistema operacional.

Por padrão, o Windows XP não mostra arquivos marcados com o atributo
"sistema", nem os arquivos ocultos. É necessário configurar o Windows
Explorer para exibi-los, marcando a opção "Mostrar todos os arquivos" no
menu Exibir/Opções. Outra opção é usar o comando "DIR /AH" através da linha
de comando.

Para nomear um disquete ou a uma partição de um disco rígido, usamos o
atributo "volume label". O nome dado é armazenado em uma área reservada
do diretório raiz.

De todos os atributos, o mais importante é o atributo de "diretório", pois ele
permite a existência de subpastas. As pastas, mesmo quando vazias, são
vistas pelo sistema operacional como arquivos. Dentro desse arquivo ficam
armazenadas informações sobre o nome da pasta, atributos como somente
leitura, oculto, etc., a posição da pasta na árvore de diretórios
(C:WindowsSystem, por exemplo) e informações sobre quais arquivos ou
subpastas estão guardados dentro dela, assim como a localização destes
arquivos no disco.

Como o diretório raiz ocupa (no sistema FAT) um espaço equivalente a apenas
16 KB no disco rígido (32 setores), podemos ter apenas 512 entradas de
arquivos ou diretórios. Cada sub-pasta funciona mais ou menos como um novo
diretório raiz, permitindo que tenhamos mais arquivos no disco. Como uma
pasta (que nada mais é do que um arquivo, marcado com o atributo especial)
pode ocupar o espaço que quiser, não temos a limitação de 512 arquivos,
como no diretório raiz.

Qualquer arquivo com o atributo "diretório", passa a ser visto pelo sistema
operacional como uma pasta, mas a tentativa de transformar um arquivo
qualquer em pasta não daria certo pois, apesar de, em essência, as pastas
também serem arquivos, elas possuem um formato específico.

                                                                            505
Uma curiosidade sobre as subpastas é que elas só passaram a ser suportadas
a partir da versão 2.0 do DOS. Os usuários do DOS 1.0 tiveram que conviver
durante algum tempo com um sistema que permitia armazenar arquivos
apenas no diretório raiz, com a conseqüente limitação de 512 arquivos no HD.

Finalizando, o atributo "arquivo" é usado com relação a arquivos que
raramente são modificados, ou que são cópias de backup de outros arquivos.
Muitos programas de backup verificam este atributo quando fazem um backup
incremental (quando são salvos apenas os arquivos que foram alterados desde
o último backup). Nesse caso, o programa de backup retira o atributo após
salvar o arquivo. Ao ser alterado por algum outro programa, o arquivo
novamente recebe o atributo, permitindo ao programa de backup saber quais
arquivos foram modificados.

Para alterar os atributos de um arquivo através do Windows Explorer, basta
clicar sobre ele com o botão direito do mouse e abrir a janela de propriedades.
Também é possível alterá-los via linha de comando, usando o comando
ATTRIB.

Concluindo, temos o VFAT (Virtual File Allocation Table), uma extensão
incluída a partir do Windows 95 e suportado também no Linux e outros
sistemas. Inicialmente, o sistema FAT possuía uma grave limitação quanto ao
tamanho dos nomes de arquivos, que não podiam ter mais que 11 caracteres,
sendo 8 para o nome do arquivo e mais 3 para a extensão, como em
"formular.doc".

O limite de apenas 8 caracteres era um grande inconveniente para os usuários
do MS-DOS. O "Boletim da 8a reunião anual de diretoria", por exemplo, teria de
ser gravado na forma de algo como "8reandir.doc".

NTFS

O NTFS é um sistema de arquivos mais antigo do que muitos acreditam. Ele
começou a ser desenvolvido no início da década de 1990, quando o projeto do
Windows NT dava os seus primeiros passos.

Já que o grande problema do sistema FAT16 era o fato de serem usados
apenas 16 bits para o endereçamento de cada cluster, permitindo apenas 65
mil clusters por partição, o NTFS incorporou desde o início a capacidade para
endereçar os clusters usando endereços de 64 bits. A única limitação agora
passa a ser o tamanho dos setores do HD. Como cada setor possui 512 bytes,
o tamanho de cada cluster usando NTFS também poderá ser de 512 bytes,
independentemente do tamanho da partição.

É sem dúvida um grande avanço sobre os clusters de 32 KB e as partições de
até 2 GB do sistema FAT16. Mas, existe um pequeno problema em endereçar
partições muito grandes usando clusters de 512 bytes: o desempenho. Com
um número muito grande de clusters, o processamento necessário para
encontrar os dados desejados passa a ser muito grande, diminuindo a
performance.

                                                                           506
Assim como na FAT 32, ficou estabelecido que o tamanho mínimo de clusters
seria usado por default apenas em partições de um certo tamanho:


Tamanho da partição             Tamanho do cluster
até 512 MB                      512 bytes
até 1 GB                        1 KB
até 2 GB                        2 KB
acima de 2 GB                   4 KB

Apesar do default ser usar clusters de 4 KB em qualquer partição maior do que
2 GB, você pode criar partições com clusters do tamanho que desejar, através
do assistente para criação de partições do Windows 2000/XP, que pode ser
encontrado em Painel de controle > Ferramentas Administrativas >
Gerenciamento do computador > Armazenamento > Gerenciamento de disco.
Do lado direito da tela será mostrado um mapa dos HDs instalados na
máquina, basta clicar com o botão direito sobre uma área de espaço livre e em
seguida em "criar partição":




Continuando, mais uma vantagem do sistema NTFS é que os nomes de
arquivos e pastas utilizam caracteres em Unicode, em vez de ACSII. O ASCII é
o sistema onde cada caracter ocupa 1 byte de dados, mas são permitidas
apenas letras, números e alguns caracteres especiais. No Unicode, cada
caracter ocupa dois bytes, o que permite 65 mil combinações, o suficiente para
                                                                          507
armazenar caracteres de diversos idiomas. Isso permite que usuários do
Japão, China, Taiwan e outros países que não utilizam o alfabeto ocidental,
possam criar arquivos usando caracteres do seu próprio idioma, sem a
necessidade de instalar drivers e programas adicionais.

Outro ponto importante onde o NTFS é superior ao sistema FAT é na tolerância
a falhas. No sistema FAT, sempre que o sistema trava ou é desligado enquanto
estão sendo atualizados arquivos e diretórios no HD, existe uma possibilidade
muito grande do sistema tornar-se inconsistente, com arquivos interligados,
agrupamentos perdidos e outros problemas. Surge, então, a necessidade de
rodar o scandisk depois de cada desligamento incorreto.

No NTFS, o sistema mantém um log de todas as operações realizadas. Com
isto, mesmo que o micro seja desligado bem no meio da atualização de um
arquivo, o sistema poderá, durante o próximo boot, examinar este log e
descobrir exatamente em que ponto a atualização parou, tendo a chance de
automaticamente corrigir o problema. Além de reduzir a perda de tempo, a
possibilidade de perda de dados é muito menor.

Se você chegou a usar o Windows 95/98/ME, deve lembrar-se da "tela de boas
vindas" do scandisk, que era executado após cada desligamento incorreto:




                      O famigerado teste do scandisk :)

Clusters   contendo    setores       defeituosos   também    são     marcados
automaticamente, conforme são detectados, sem a necessidade de usar o
scandisk ou qualquer outro utilitário. Nesse caso, a marcação é feita na tabela

                                                                           508
de endereçamento da partição, de forma que a lista de setores defeituosos é
perdida ao reparticionar o HD. Antigamente, os HDs eram menos confiáveis e o
aparecimento de setores defeituosos, um fenômeno muito mais comum, de
forma que a maioria dos programas de formatação realizavam um teste de
superfície durante a formatação da partição (como no caso do format usado no
Windows 95/98, onde formatar uma partição podia demorar mais de uma hora).
Atualmente, a maioria dos programas realiza uma formatação rápida,
presumindo que o HD não possua setores defeituosos.

Existiram diversas versões do NTFS, que acompanharam a evolução do
Windows NT. A partir do Windows 2000, foi introduzido o NTFS 5, que trouxe
diversos aperfeiçoamentos, incluindo o suporte ao Active Directory.

Outro recurso interessante é a possibilidade de encriptar os dados gravados,
de forma a impedir que sejam acessados por pessoas não autorizadas, mesmo
caso o HD seja removido e instalado em outro micro. Este recurso de
encriptação é interessante, por exemplo, para profissionais de campo, que
levam dados secretos em seus laptops. É possível tanto criptografar o disco
inteiro quanto pastas ou arquivos individuais.

Também é possível compactar pastas e arquivos individuais, economizando
espaço em disco. No Windows 95/98 era possível compactar partições usando
o drvspace, mas só era possível compactar partições inteiras, o que
normalmente acaba não sendo um bom negócio, pois diminuía bastante a
velocidade do micro e aumentava a possibilidade de perda de dados.
Naturalmente, a compactação também é diferente da feita por programas como
o Winzip, já que os arquivos e pastas continuam acessíveis exatamente da
mesma forma, com o sistema fazendo a compactação e descompactação do
arquivo de forma transparente.

Com a possibilidade de compactar pastas individuais, você pode comprimir
apenas as pastas contendo um grande volume de arquivos que suportam um
bom nível de compressão, deixando de lado pastas com fotos, músicas e
arquivos de vídeo, arquivos que já estão comprimidos. Para compactar uma
pasta, acesse o menu "Propriedades". Na seção "avançadas", marque a opção
"Compactar arquivos para economizar espaço".

A compactação de arquivos exige uma carga adicional de processamento, já
que o sistema tem o trabalho de descompactar os arquivos antes de acessá-
los. Antigamente, usar compactação reduzia muito o desempenho do sistema,
já que os processadores eram mais lentos. Num micro atual, a redução é muito
menos significativa e, em muitos casos, o uso da compactação pode até
mesmo melhorar o desempenho, já que arquivos compactados ocupam menos
espaço e, conseqüentemente, são lidos mais rapidamente pela cabeça de
leitura.




                                                                         509
Estruturas lógicas do NTFS

Assim como no sistema FAT, no NTFS são incluídas várias estruturas lógicas
no HD. Apesar da idéia ser basicamente a mesma, estas estruturas são bem
diferentes no NTFS.

Em primeiro lugar, temos a MFT (Master File Table), que substitui a FAT,
armazenando as localizações de todos os arquivos e diretórios, incluindo os
arquivos referentes ao próprio sistema de arquivos. Mas, a forma como este
mapeamento é feito difere um pouco do sistema FAT.

Cada entrada de arquivo ou diretório no MFT possui 2 KB, nos quais são
armazenados o nome do arquivo e seus atributos. Em geral, sobra uma
pequena área, usada para armazenar dados, com cerca de 1500 bytes (pode
ser maior ou menor, dependendo do espaço ocupado pelo nome e pelos
atributos do arquivo) que é usada para guardar o início do arquivo.

Caso o arquivo seja muito pequeno, ele poderá ser armazenado diretamente
na entrada no MFT. Caso contrário, serão armazenados apenas os números
dos clusters ocupados pelo arquivo.

Em alguns casos, não é possível armazenar nem mesmo os atributos do
arquivo no MFT. Nesse caso, os atributos serão gravados em clusters vagos do
HD, e a MFT conterá apenas entradas que apontem para eles. Pode parecer
estranho que um arquivo possa ter mais de 2 KB só de atributos, mas no NTFS
os atributos do arquivo vão muito além dos atributos de arquivo, diretório,
oculto, etc. que existem no sistema FAT.

Os atributos do arquivo incluem seu nome, versão, nome MS-DOS (o nome
simplificado com 8 caracteres e extensão), mas, principalmente incluem as
permissões do arquivo, quais usuários do sistema poderão acessa-lo ou não e,
ainda, um espaço reservado para auditoria, que permite armazenar
informações sobre quais operações, relacionadas ao arquivo, devem ser
gravadas para que seja possível realizar uma auditoria posteriormente, caso
necessário.

Em seguida, temos a questão das permissões de acesso, uma parte
importante da configuração de um servidor, ou de qualquer máquina que vá ser
utilizada por diversos usuários.

Para configurar as permissões de acesso, abra a guia "Segurança" dentro das
propriedades do arquivo. As configurações valem tanto para acessos locais
quanto acessos através da rede. O Windows aplica as permissões de acesso
de acordo com o usuário logado na máquina.

Por default, todos têm acesso total à pasta. Você verá no campo "nome" o
grupo "todos" e todas as permissões marcadas como "permitir". O grupo
"todos" significa todos os usuários do sistema. Se você quiser um melhor
controle, pode deletar o grupo "todos" e adicionar um a um os usuários que
terão acesso à pasta.

                                                                         510
Depois de fazer isso, clique sobre o usuário para configurar as suas
permissões, que aparecem na parte de baixo da janela. Você pode até mesmo
configurar as permissões de modo que nem você mesmo possa acessar a
pasta :). Nesse caso, você receberá uma mensagem de acesso negado até
voltar e reconfigurar as permissões.

A configuração das permissões pode ser a parte mais importante da
implantação de uma rede baseada no Windows 2000, XP ou mesmo do antigo
NT, ao mesmo tempo em que pode ser de longe a mais trabalhosa,
dependendo do número de usuários e restrições que tiver de configurar.

É possível, também, estabelecer quotas de disco, que limitam a quantidade de
espaço que determinados usuários podem utilizar. Este recurso é muito
utilizado em servidores web e em servidores de arquivo, mas pode ser útil
também em situações mais corriqueiras, como quando você precisa limitar
quanto espaço seu irmão menor pode usar, evitando que ele entupa o HD de
downloads. ;)

O NTFS inclui também recursos que reduzem de forma significativa a
fragmentação do sistema de arquivos. Quando existe um volume considerável
de espaço em disco, o sistema reserva até 15% do espaço da partição para
armazenar o MFT e as entradas referentes aos atributos dos arquivos, de
forma que todas as informações possam ser gravadas em setores contínuos.
Os próprios arquivos são salvos de forma inteligente, com o sistema dando
preferência a áreas onde ele pode ser gravado seqüencialmente, sem
fragmentação.

Apesar disso, com o passar dos meses, é normal que um certo nível de
fragmentação ocorra, de forma que um desfragmentador vem a calhar. Tanto o
Windows 2000 e XP quanto o Vista incluem um desfragmentador capaz de lidar


                                                                         511
com partições NTFS. Apesar de demorado, vale a pena usá-lo de vez em
quando.

Com relação ao desempenho, existe uma certa polêmica, já que, por ser mais
complexo, o NTFS é realmente mais lento que o sistema FAT em micros muito
antigos, ou quando são manipuladas pequenas quantidades de arquivos. Esse
é um dos motivos dele ser utilizado apenas em micros PCs e não em câmeras
e celulares, por exemplo, onde o processamento necessário seria proibitivo.

Apesar disso, o NTFS é capaz de lidar eficientemente com volumes muito
maiores de arquivos, de forma que a balança pende para o outro lado em
cenários mais complexos, como na bagunça de arquivos, e-mails, fotos,
músicas e arquivos temporários que é o HD de um PC atual.

Por exemplo, o NTFS utiliza o conceito de balanced trees (árvores balanceadas
ou B+ trees), onde as informações relacionadas a cada diretório são gravadas
próximas umas das outras, ao invés de ficarem em uma tabela central, como
no sistema FAT. A cabeça de leitura precisa percorrer uma distância maior
para acessar as informações relacionadas a cada diretório, mas, em
compensação, perde menos tempo lendo informações referentes aos arquivos
dentro deste diretório, o que acaba compensando a perda inicial e até
revertendo em ganho, que se torna mais e mais expressivo conforme cresce o
volume de arquivos e pastas armazenados.

Concluindo, temos o LFS (Log File Service), que é o principal responsável pela
tolerância a falhas do sistema NTFS. Tolerância a falhas, neste caso, significa
não perder dados ou estruturas do sistema de arquivos quando o sistema
travar, ou houver qualquer outro imprevisto, ou que, pelo menos, o estrago seja
o menor possível.

Para isso, o sistema mantém um log com todas as alterações feitas no sistema
de arquivos. Ao gravar um arquivo qualquer, por exemplo, será primeiro
gravada uma entrada no log, com os detalhes sobre a operação, qual arquivo
está sendo gravado, em que parte do disco, etc. ao terminar a gravação é
gravada uma outra entrada, um OK confirmando que tudo deu certo. Caso o
sistema seja desligado incorretamente durante a gravação, é possível verificar
no próximo boot o que estava sendo feito e fazer as correções necessárias.
Periodicamente, o sistema verifica todas as entradas do Log e caso esteja tudo
em ordem, deleta o antigo log, para evitar que o arquivo ocupe muito espaço
em disco.

EXT3

O EXT3 é atualmente o sistema de arquivos mais utilizado no mundo Linux.
Usado por padrão pela grande maioria das distribuições.

Tudo começou com o sistema EXT (Extended File System), introduzido em
1992. Nos estágios primários de desenvolvimento, o Linux utilizava um sistema
de arquivos bem mais antigo, o MinixFS (o Minix é um sistema Unix, que Linux
Torvalds usou como base nos estágios primários do desenvolvimento do

                                                                           512
Linux). Entretanto, o MinixFS possuía pesadas limitações, mesmo para a
época. Os endereços dos blocos de dados tinham apenas 16 bits, o que
permitia criar partições de no máximo 64 MB. Além disso, o sistema não
permitia nomes de arquivos com mais de 14 caracteres.

Não é de se estranhar que, em pouco tempo o Linux ganhou seu sistema de
arquivos próprio, o "Extended File System", ou simplesmente EXT, que ficou
pronto em abril de 92 a tempo de ser incluído no Kernel 0.96c.

Nesta primeira encarnação, o EXT permitia a criação de partições de até 2 GB
e suportava nomes de arquivos com até 255 caracteres. Foi um grande
avanço, mas o sistema ainda estava muito longe de ser perfeito. O
desempenho era baixo e ele era tão sujeito à fragmentação de arquivos quanto
o sistema FAT. Além disso, logo começaram a surgir HDs com mais de 2 GB,
de forma que em 1993 surgiu a primeira grande atualização, na forma do
EXT2.

O EXT2 trouxe suporte a partições de até 32 TB, manteve o suporte a nomes
de arquivos com até 255 caracteres, além de diversos outros recursos.

O maior problema do EXT2 é que ele não inclui nenhum sistema de tolerância
a falhas. Sempre que o sistema é desligado incorretamente, é necessário
utilizar o fsck, um utilitário similar ao scandisk do Windows, que verifica todos
os blocos do sistema de arquivos, procurando por inconsistências entre as
estruturas e descrições e os dados efetivamente armazenados.

O teste do fsck demora bastante (bem mais que o scandisk) e o tempo cresce
proporcionalmente de acordo com o tamanho da partição. Em um HD atual, o
teste pode, literalmente, demorar horas.

Este problema foi corrigido com o EXT3, que foi introduzido em 1999. A
principal característica do EXT3 é o uso do recurso de journaling, onde o
sistema de arquivos mantém um journal (diário) das alterações realizadas, um
recurso similar ao LFS usado no NTFS.

Este "diário" armazena uma lista das alterações realizadas, permitindo que o
sistema de arquivos seja reparado de forma muito rápida após o desligamento
incorreto. O fsck continua sendo usado, mas agora ele joga de acordo com as
novas regras, realizando o teste longo apenas quando realmente necessário.

O EXT3 possui três modos de operação:

      No modo ordered (o default), o journal é atualizado no final de cada
      operação. Isto faz com que exista uma pequena perda de desempenho,
      já que a cabeça de leitura do HD precisa realizar duas operações de
      gravação, uma no arquivo que foi alterada e outra no journal (que
      também é um arquivo, embora especialmente formatado) ao invés de
      apenas uma.



                                                                             513
No modo writeback o journal armazena apenas informações referentes
      à estrutura do sistema de arquivos (metadata) e não em relação aos
      arquivos propriamente ditos, e é gravado de forma mais ocasional,
      aproveitando os momentos de inatividade. Este modo é o mais rápido,
      mas em compensação oferece uma segurança muito menor contra
      perda e corrompimento de arquivos causados pelos desligamentos
      incorretos.

      Finalmente, temos o modo journal, que é o mais seguro, porém mais
      lento. Nele, o journal armazena não apenas informações sobre as
      alterações, mas também uma cópia de segurança de todos os arquivos
      modificados, que ainda não foram gravados no disco. A cada alteração,
      o sistema grava uma cópia do arquivo (no journal), atualiza as
      informações referentes à estrutura do sistema de arquivos, grava o
      arquivo e atualiza novamente o journal, marcando a operação como
      concluída. Como disse, isso garante uma segurança muito grande contra
      perda de dados, mas em compensação reduz o desempenho
      drasticamente. Justamente por causa disso, este é o modo menos
      usado.

Para usar o modo writeback ou o modo journal, você deve adicionar a opção
"data=writeback", ou "data=journal" nas opções referentes à partição, dentro do
arquivo "/etc/fstab".

Desta forma, ao invés de usar "/dev/hda5 /mnt/hda5 ext3 defaults 0 2", por
exemplo, você usaria "/dev/hda5 /mnt/hda5 ext3 data=writeback 0 2"

O EXT3 (assim como o EXT2) utiliza endereços de 32 bits e blocos (análogos
aos clusters usados no sistema FAT) de até 8 KB. Tanto o tamanho máximo da
partição quanto o tamanho máximo dos arquivos são determinados pelo
tamanho dos blocos, que pode ser escolhido durante a formatação:


Tamanho          dos Tamanho       máximo      da Tamanho      máximo     dos
blocos               partição                     arquivos
1 KB                 2 TB                         16 GB
2 KB                 8 TB                         256 GB
4 KB                 16 TB                        2 TB
8 KB                 32 TB                        2 TB

Uma observação é que, em versões antigas do Kernel, o limite para o tamanho
máximo de arquivos no EXT2 já foi de 2 GB e em seguida de 16 GB, mas
ambas as limitações caíram a partir do Kernel 2.6, chegando à tabela atual.

Por padrão, o tamanho do bloco é determinado automaticamente, de acordo
com o tamanho da partição, mas é possível forçar o valor desejado usando o
parâmetro "-b" do comando mkfs.ext3 (usado para formatar as partições EXT3
no Linux), como em "mkfs.ext3 -b 2048 /dev/hda1" (cria blocos de 2 KB) ou
"mkfs.ext3 -b 4096 /dev/hda1" (para blocos de 4 KB).

                                                                           514
Assim como no caso do NTFS, usar clusters maiores resulta em mais espaço
desperdiçado (sobretudo ao guardar uma grande quantidade de arquivos
pequenos) mas, além do aumento no tamanho máximo dos arquivos e
partições, resulta em um pequeno ganho de desempenho, já que reduz o
processamento e o número de atualizações na estrutura do sistema de
arquivos ao alterar os dados gravados.

Embora o limite de 32 TB para as partições EXT3 não seja um problema hoje
em dia, ele tende a se tornar um obstáculo conforme os HDs cresçam em
capacidade, assim como os limites anteriores. Para evitar isso, o EXT4,
legítimo sucessor do EXT3, incorporou o uso de endereços de 48 bits, o que
permite endereçar um volume virtualmente ilimitado de blocos (só para
referência, o EXT4 permite criar partições de até 1024 petabytes).

O limite de 2 TB para os arquivos também foi removido, abrindo espaço para o
armazenamento de bases de dados gigantes e outros tipos de arquivos que
eventualmente venham a superar esta marca.

Embora existam diversos outros sistemas de arquivos para o Linux, como o
ReiserFS, XFS, JFS e assim por diante, o EXT3 continua sendo o sistema de
arquivos mais utilizado, já que ele atende bem à maioria e é muito bem testado
e por isso bastante estável. A tendência é que o EXT3 seja lentamente
substituído pelo EXT4 e os demais sistemas continuem entrincheirados em
seus respectivos nichos.

Recuperação de dados

Um dos problemas fundamentais dos HDs é que, por guardarem uma
quantidade muito grande de informações, qualquer defeito tem um efeito
potencialmente catastrófico. É muito diferente de riscar ou perder um CD-ROM,
por exemplo, já que o CD armazena uma pequena quantidade de dados,
geralmente cópias de dados que estão gravados em algum outro lugar.

Os casos de perda de dados podem ser divididas em duas classes: falhas
causadas por defeitos mecânicos, onde o HD realmente pára de funcionar,
impedindo a leitura e os defeitos lógicos, onde os dados são apagados, ou
ficam inacessíveis, mas o HD continua funcionando.

Diferentemente dos demais componentes do micro, que são eletrônicos, o HD
é composto de partes móveis, componentes mecânicos que se desgastam e
possuem uma vida útil definida. É bem verdade que os HDs atuais são muito
mais confiáveis do que os modelos que utilizávamos a dez ou vinte anos atrás,
mas o índice de defeitos continua sendo relativamente grande.

Componentes individuais do HD, como o braço de leitura e o motor de rotação
podem ser substituídos e os próprios discos podem ser removidos e instalados
em outro HD, de forma que os dados possam ser lidos. Entretanto, a
"manutenção de HDs" possui três problemas que impedem que ela seja
utilizada em larga escala.



                                                                          515
O primeiro é que você precisa de outro HD idêntico ao primeiro, de onde retirar
peças. Ou seja, para recuperar um HD, você precisaria, quase sempre,
inutilizar outro. O segundo é que o processo é bastante delicado, sobretudo ao
manipular os discos e as cabeças de leitura, que são incrivelmente sensíveis,
Além disso, temos o problema principal, que é a necessidade de realizar todo o
processo dentro de uma sala limpa, já que a poeira presente no meio ambiente
condena qualquer HD aberto fora de uma.

Defeitos na placa lógica do HD podem ser resolvidos com a substituição dos
componentes avariados ou (mais simples) com a substituição da placa lógica
inteira por outra, retirada de um HD do mesmo modelo. Como a placa lógica é
externa, é muito simples substituí-la e é perfeitamente possível encontrar outro
HD idêntico à venda, pesquisando nos sites de leilão. Qualquer volume de
dados importantes vale muito mais do que um HD usado.

Entretanto, defeitos nos componentes internos do HD demandam os serviços
de uma empresa especializada em recuperação de dados, que tenha uma sala
limpa e a aparelharem necessária. Na grande maioria dos casos, abrir o HD em
casa só vai servir para reduzir as chances de recuperação dos dados.

S.M.A.R.T

A boa notícia sobre os defeitos mecânicos é que, na maioria dos casos, eles
são causados por desgaste cumulativo, de forma que, antes de parar
definitivamente, o HD emite sinais que permitem perceber que algo está
errado.

Tudo geralmente começa com uma redução progressiva no desempenho,
causada por desgaste do motor de rotação, desgaste do sistema que
movimenta as cabeças de leitura, erros de leitura ou as três coisas
combinadas.

Outro sinal característico é um barulho de "click click" no início do boot (que
com o tempo passa a se tornar mais e mais freqüente, até que o HD passa a
não fazer outra coisa ao ser ligado), que indica problemas de posicionamento
das cabeças de leitura, causados por envelhecimento da mídia ou danos
cumulativos nas próprias cabeças. É normal que o HD emita um "click" ao ser
ligado ou retornar do modo de economia de energia, mas clicks repetidos são
sinal de problemas.

Outros sinais, menos visíveis, são monitoradas pela própria placa lógica do HD,
utilizando um sistema chamado S.M.A.R.T. O relatório é armazenado em uma
área de memória não volátil do HD e guarda informações estatísticas
armazenadas desde o primeiro boot.

O S.M.A.R.T não tem como prever defeitos súbitos, como um chip estourado
na placa lógica, por causa de um pico de tensão, mas ele faz um bom trabalho
em alertar sobre o risco de defeitos mecânicos.

Todos os HDs atuais oferecem suporte ao S.M.A.R.T. Você pode acompanhar
o relatório através de programas como o HDTune (http://www.hdtune.com/) e o


                                                                            516
SmartExplorer (http://adenix.net/downloads.php), ambos freeware, ou o
daemon smartmontools (http://smartmontools.sourceforge.net/), no Linux.

Estes programas mostram uma série de atributos relacionados ao HD, como
neste screenshot do HDTune:




Em um HD saudável (mesmo em um HD que já tenha dois anos de uso ou
mais), todos atributos devem receber o Status "ok", indicando que estão dentro
da faixa de tolerância especificada pelo fabricante. Quando qualquer um dos
atributos passa a apresentar a flag "failed", é hora de fazer backup dos dados e
trocar de HD, já que a possibilidade de falha passa a ser muito grande. Se
ainda não houver muitos sintomas aparentes, você pode até aproveitar o HD
em algum micro sem muita importância (usado apenas para navegar, por
exemplo), mas não o utilize mais para guardar dados importantes.

Cada atributo possui quatro valores. O "Current" é o valor atual, enquanto o
"Worst" é a pior medição já obtida (na maioria dos casos ambos são iguais, já
que a maioria dos valores vai decaindo progressivamente), ambos indicados na
forma de um valor decrescente. A coluna "Threshold", por sua vez, indica o
limite mínimo, estabelecido pelo fabricante.

A quarta coluna (Data) mostra a informação em valores absolutos (geralmente
crescente). Por exemplo, no screenshot, o "Start/Stop Count" (que indica
quantas vezes o HD foi ligado e desligado) está em "213" e o "Power On Hours


                                                                            517
Count" (quantas horas o HD já permaneceu ligado) está em "454", indicando
que se trata de um HD semi-novo.

A coluna "Data" da opção "Raw Read Error Rate" indica o número de erros de
leitura, enquanto a "Reallocated Event Count" indica o número de badblocks
remapeados. Qualquer aumento constante nos dois valores é uma indicação
de envelhecimento da mídia ou (em casos mais extremos) danos às cabeças
de leitura.

As opções "Throughput Performance" (o desempenho bruto do HD) e "Seek
Time Performance" (o tempo de acesso) são indicativos do desempenho
relativo do HD (por isso ambas estão com o valor "100" na coluna Current do
screenshot, indicando que as medições estão normais). Reduções nestes dois
valores indicam desgaste do motor de rotação, ou do sistema de
movimentação dos braços de leitura.

Em ambos os casos, os valores vão mudando lentamente, permitindo que você
acompanhe o desgaste do HD e possa planejar o próximo upgrade ou
substituição muito antes dos alarmes começarem a disparar. Sai sempre muito
mais barato fazer backup e trocar o HD quando ele começa a apresentar sinais
do problemas do que ter que recorrer a uma empresa de recuperação depois
que o desastre já aconteceu.

Criando uma imagem binária

Se, por outro lado, os dados foram apagados mas o HD continua funcionando
perfeitamente, é quase sempre possível possível recuperar utilizando os
softwares adequados. Desde que os arquivos deletados ainda não tenham sido
sobrescritos por outros, você vai conseguiu recuperá-los em mais de 90% dos
casos.

O primeiro passo ao perceber que os arquivos foram deletados ou que o HD foi
acidentalmente formatado é desligar o micro imediatamente, reduzindo as
chances de que novos arquivos sejam gravados sobre os antigos. Quanto
menos tempo o micro permanecer ligado, maior as chances de recuperar os
dados.

O próximo passo é fazer uma imagem binária do HD. Uma imagem binária é
uma cópia bia a bit do HD, incluindo o conteúdo da trilha MBR, a tabela de
partições e todos os dados. A imagem binária permite que o conteúdo do HD
(incluindo os arquivos deletados) sejam restaurados posteriormente. Ela é um
"seguro" que permite retornar ao estágio original depois de qualquer tentativa
malfadada.

Uma das ferramentas mais simples e mais eficazes para fazer isso é o "dd",
um pequeno utilitário padrão do Linux, disponível em qualquer distribuição.

Para usá-lo, instale um segundo HD, maior que o primeiro, onde será guardada
a cópia. A imagem binária possui sempre exatamente o mesmo tamanho do
HD, de forma que um HD de 80 GB, resultará em uma imagem de também 80
GB, mesmo que ele possua apenas 5 GB ocupados. A idéia da imagem binária


                                                                          518
é salvar não apenas os arquivos que o sistema "vê", mas sim todos os dados
armazenados nos discos magnéticos, incluindo seus arquivos deletados.

Em seguida, dê boot usando uma distribuição Linux live-CD com que tenha
familiaridade, como o Kurumin, Ubuntu, Knoppix, Kanotix, Sidux ou outro.
Depois de terminado o boot, abra uma janela de terminal e logue-se como root.
Na maioria dos live-CDs, você pode fazer isso digitando simplesmente:

$ sudo su

Em outros, você encontrará um link para abrir um terminal como root em algum
lugar do menu.

Chame agora o "gparted", rodando o comando no terminal. Use-o para ver
como o sistema detectou seus HDs e assim ter certeza de qual é o dispositivo
referente ao HD de origem e qual é o do HD de destino. Por padrão, os HDs
são detectados como:

      Master da IDE primária: /dev/hda
      Slave da IDE primária: /dev/hdb
      Master da IDE secundária: /dev/hdc
      Slave da IDE secundária: /dev/hdd

      Primeiro HD SATA: /dev/sda
      Segundo HD SATA: /dev/sdb
      Terceiro HD SATA: /dev/sdc
      Quarto HD SATA: /dev/sdd

Dentro de cada HD, as partições primárias são numeradas de 1 a 4 e as
estendidas de 5 em diante. A primeira partição do primeiro HD SATA, por
exemplo, seria vista pelo sistema como "/dev/sda1".

Depois de identificados os HDs, o primeiro passo é montar a partição do HD
maior, onde será armazenada a imagem. Como disse, esta partição deve ter
um volume de espaço livre equivalente ou superior ao tamanho do HD onde
estão os dados a se recuperar.

Se o HD destino é o "/dev/sdb" e você vai salvar a imagem na primeira partição
primária, então os comandos para montá-la seriam:

# mkdir /mnt/sdb1
# mount /dev/sdb1 /mnt/sdb1

Você deve montar apenas o HD destino. O HD de origem permanece
desmontado, pois o sistema se limitará a fazer uma cópia de baixo nível, sem
tentar entender os dados gravados.

Para gerar a imagem do HD "/dev/sda", salvando-a no arquivo "sda.img",
dentro da partição que acabamos de montar, o comando seria:

# dd if=/dev/sda of=/mnt/sdb1/sda.img



                                                                          519
A cópia binária é sempre demorada. Se a transferência de dados entre os dois
HDs ficar em média a 30 MB/s, por exemplo, a cópia de um HD de 80 GB
demoraria pouco mais de 45 minutos. Infelizmente o dd não exibe um indicador
de progresso, por isso o melhor a fazer é deixar o micro fazendo seu trabalho e
ir se preocupar com outra coisa.

Outra opção é fazer a cópia diretamente para o segundo HD. Esta segunda
opção é até preferível, pois você pode fazer todo o processo de recuperação
diretamente no segundo HD (com a cópia), sem sequer precisar se arriscar a
mexer no HD original. O segundo HD não precisa ser idêntico ao primeiro, nem
possuir exatamente a mesma capacidade. A única regra é que ele seja do
mesmo tamanho ou maior que o primeiro.

Neste caso, você indica diretamente os dois dispositivos no comando do dd,
com ambos desmontados. Para criar uma cópia do /dev/sda, no /dev/sdb
(apagando todo o conteúdo do disco de destino), o comando seria:

# dd if=/dev/sda of=/dev/sdb

Este mesmo comando pode ser usado para clonar HDs, em casos onde você
precisa instalar o sistema em vários micros iguais. Existem formas mais rápidas
de fazer isso, usando programas como o Partimage, mas o dd também
funciona. Falarei um pouco sobre o Partimage no capítulo sobre notebooks,
onde ensino a usá-lo para fazer imagens do sistema pré-instalado, para casos
onde o note vem sem um CD de recuperação.




                                                                           520
Reparando partições


Possivelmente, o tipo mais comum de "recuperação" de arquivos não implica
em realmente recuperar arquivos deletados, mas simplesmente reaver arquivos
depois de problemas no sistema operacional, que impeçam o boot.

Antes de mais nada, comece verificando se os arquivos realmente foram
perdidos, ou se ficaram simplesmente inacessíveis por causa da pane do
sistema. Muitas vezes, partições aparentemente danificadas, que não são mais
vistas através do Windows podem ser lidas perfeitamente ao dar boot usando
uma distribuição Linux live-cd.

Comece abrindo o gparted (como root, através do terminal), de forma a verificar
se as partições do HD continuam presentes (se não estiverem, passe para o
tópico seguinte).

Se tudo estiver em ordem, o próximo passo é montar as partições via linha de
comando, como em:

# mkdir /mnt/sda1
# mount -o ro /dev/sda1 /mnt/sda1
# mkdir /mnt/sda2
# mount -o ro /dev/sda2 /mnt/sda2

Se as partições do HD foram montadas sem erros, significa que provavelmente
a estrutura está intacta, bom sinal. É interessante usar a opção "-o ro", como
no exemplo, para que as partições sejam montadas em modo somente-leitura,
eliminando qualquer possibilidade de piorar as coisas caso elas estejam
danificadas.

Abra o Konqueror (ao utilizar uma distribuição baseada no KDE), ou o Nautilus
(ao usar o Ubuntu ou outra baseada no Gnome). Faça isso usando o terminal
aberto como root, para evitar qualquer problema relacionado às permissões de
acesso. Para abrir o Konqueror, já mostrando o conteúdo da pasta onde foi
montada a partição, use o comando:

# konqueror /mnt/sda1

Para usar o Nautilus, o comando fica:

# nautilus /mnt/sda1

Se todos os arquivos estiverem em ordem, você só precisa copiá-los para outro
HD (ou um compartilhamento de rede) e o problema estará resolvido.

Caso o problema seja justamente na montagem de partição, o próximo passo é
reparar as estruturas lógicas do sistema de arquivos, de forma que a partição
possa ser montada e os dados voltem a ficar acessíveis. Mais uma vez, tudo
pode ser feito a partir do live-cd.


                                                                           521
Para partições formatadas em FAT16 ou FAT32, incluindo pendrives, cartões,
câmeras e outros dispositivos, use o comando "fsck.vfat". Verificar partições
formatadas em FAT regularmente é importante, pois este sistema de arquivos
não possui um mecanismo confiável de detecção de erros. As partições e
pendrives são montados mesmo que o sistema de arquivos esteja corrompido,
fazendo com que os erros acabem se acentuando até o ponto em que os
arquivos não possam ser lidos ou modificados, ou o sistema realmente não
consegue montar a partição, dizendo que ela não está formatada ou outro erro
similar.

Comece fazendo o teste não destrutivo, que acessa o dispositivo em modo
somente-leitura e apenas avisa dos erros que encontrar:

# fsck.vfat /dev/hda1

De acordo com os erros que forem encontrados e a importância dos dados,
você pode optar pela recuperação automática, que simplesmente corrige todos
os erros, colocando arquivos corrompidos que puderam ser recuperados no
diretório raiz, ou a recuperação manual, onde você pode verificar cada
modificação.

Para fazer a recuperação automática, use:

# fsck.vfat -a /dev/hda1

Para a recuperação manual (bem mais longa e sujeita a erro humano), use:

# fsck.vfat -r /dev/hda1

Para que ele faça um exame de superfície, marcando os setores defeituosos,
use a opção "-at", como em:

# fsck.vfat -at /dev/hda1

Erros em partições NTFS são mais incomuns, pois o sistema de arquivos inclui
mais camadas de tolerância a falhas e o Windows realiza uma verificação a
cada boot, executando o teste longo quando necessário. Apesar disso, em
casos onde a partição acumule erros a ponto de não ser mais montada pelo
Windows, você pode utilizar o "ntfsfix", um pequeno utilitário que corrige os
problemas mais comuns. Para usá-lo, indique a partição NTFS a recuperar,
como em:

# ntfsfix /dev/sda1

Depois de executado, o ntfsfix marca a flag de verificação para a partição, o
que força a verificação do sistema de arquivos no próximo boot do Windows.
Normalmente ele consegue reparar a partição o suficiente para que ela volte a
ser montada e o scandisk do Windows cuida do resto.

Caso o ntfsfix não esteja disponível, abra o gerenciador de pacotes e procure
pelo programa "ntfsprogs". A maioria das distribuições live-cd atuais utilizam o
UnionFS, que permite instalar pequenos programas mesmo com o sistema
rodando a partir do CD.
                                                                            522
Temos em seguida as partições Linux, onde são utilizados os sistemas de
arquivos EXT3 (ou EXT2), ReiserFS e (mais raramente) XFS. Assim como no
caso do Windows, danos nas estruturas lógicas das partições podem fazer com
que o sistema não inicialize mais, ou mesmo fazer com que você não consiga
mais montar a partição, mesmo ao dar boot através do live-CD. Nesse caso,
um reparo manual é necessário.

Para reparar uma partição EXT3, use o comando:

# fsck.ext3 /dev/hda1

Ele vai começar a apontar os erros e perguntar se cada um deve ser corrigido.
Normalmente você pode ir apenas respondendo "y" para tudo, mas caso
existam dados realmente importantes na partição é melhor prestar mais
atenção. Arquivos danificados ou fragmentos de arquivos que puderam ser
recuperados vão para a pasta "lost+found" no diretório raiz da partição.

Você pode também adicionar o parâmetro "-f", que força a verificação da
partição mesmo que o sistema de arquivos pareça não ter problemas:

# fsck.ext3 -f /dev/hda1

O fsck não é capaz de recuperar o sistema de arquivos em casos de problemas
com o superbloco, o setor que contém informações essenciais, como o tipo,
tamanho, status e informações sobre a estrutura do sistema de arquivos.
Quando não encontra o superbloco, o fsck simplesmente falha miseravelmente,
exibindo um "fatal error", sem maiores explicações.

Sempre que a partição é criada, são criados vários superblocos alternativos,
que servem justamente de backups para casos de problemas com o primeiro.
Você pode ver a lista de endereços usando o comando "mkfs.ext3 -n partição",
como em:

# mkfs.ext3 -n /dev/hda1

Ao usar o comando, nunca esqueça de incluir o "-n". Caso contrário, ao invés
de mostrar as informações, ele vai formatar a partição (estou falando sério). No
final do relatório você encontra:

      Superblock backups stored on blocks:
      32768, 98304, 163840, 229376, 294912, 819200, 884736

Alternativamente, você pode usar também o comando "dumpe2fs /dev/hda1 |
grep -i superblock", que devolve a mesma informação.

Outra opção é usar o Testdisk (que veremos a seguir). Ele oferece uma opção
para listar superblocos alternativos em partições EXT, que você acessa em
"Advanced > Superblock".

Para restaurar o superbloco, chame novamente o comando "fsck.ext3",
adicionando a opção "-b", seguida do endereço do superbloco que será usado.
Caso, eventualmente, o primeiro resulte em erro, experimente o segundo, e
assim por diante:
                                                                            523
# fsck.ext3 -f -b 32768 /dev/hda2

Para partições EXT2, use o comando "fsck.ext2", que suporta os mesmos
parâmetros.

Em partições formatadas em ReiserFS, comece com o comando:

# reiserfsck --check /dev/hda1

Ele exibe um aviso: Do you want to run this program?[N/Yes] (note need to type
Yes if you do):

Ou seja, você precisa digitar "Yes" para continuar. Caso apenas dê Enter, ele
aborta a operação. Ele vai verificar toda a estrutura do sistema de arquivos e
indicar os erros encontrados. O próximo passo é usar a opção "--fix-fixable":

# reiserfsck --fix-fixable /dev/hda1

Este segundo comando efetivamente corrige todos os erros simples, que
possam ser corrigidos sem colocar em risco as demais estruturas do sistema
de arquivos. Em 90% dos casos isto é suficiente.

Caso seja encontrado algum erro grave, ele vai abortar a operação. Estes erros
mais graves podem ser corrigidos com o comando:

# reiserfsck --rebuild-tree /dev/hda1

Este comando vai reconstruir do zero todas as estruturas do sistema de
arquivos, vasculhando todos os arquivos armazenados. Essa operação pode
demorar bastante, de acordo com o tamanho e quantidade de arquivos na
partição. Nunca interrompa a reconstrução, caso contrário você não vai
conseguir acessar nada dentro da partição, até que recomece e realmente
conclua a operação.

O "--rebuild-tree" vai corrigir qualquer tipo de erro no sistema de arquivos. Ele
só não vai resolver o problema se realmente existir algum problema físico
como, por exemplo, um grande número de setores defeituosos no HD.

Finalmente, se você estiver usando uma partição formatada em XFS, comece
com o:

# xfs_check /dev/hda1

Ele vai indicar os problemas encontrados. Para realmente corrigi-los, rode o:

# xfs_repair /dev/hda1

Assim como no caso do reiserfsck, todo o processo é automático. Ao contrário
do EXT3, tanto o ReiserFS quanto o XFS são sistemas de arquivos muito
complexos, por isso qualquer intervenção manual só aumentaria a
possibilidade de destruir tudo.



                                                                                524
Recuperando a MBR e tabela de partições

Ao comprar um novo HD, você precisa primeiro formatá-lo antes de poder
instalar qualquer sistema operacional. Existem vários programas de
particionamento, como o qtparted, gparted, cfdisk e outros.

Os programas de particionamento salvam o particionamento na tabela de
partição, gravada no início do HD. Esta tabela contém informações sobre o
tipo, endereço de início e final de cada partição. Depois do particionamento,
vem a formatação de cada partição, onde você pode escolher o sistema de
arquivos que será usado em cada uma (NTFS, EXT3, FAT32, ReiserFS, etc.).

Ao instalar o sistema operacional, é gravado mais um componente: o
gerenciador de boot, responsável por carregar o sistema operacional durante o
boot.

Tanto o gerenciador de boot quanto a tabela de particionamento do HD são
salvos no primeiro setor do HD (a famosa trilha MBR), que contém apenas 512
bytes. Destes, 446 bytes são reservados para o setor de boot, enquanto os
outros 66 bytes guardam a tabela de partição.

Ao trocar de sistema operacional, você geralmente subscreve a MBR com um
novo gerenciador de boot, mas a tabela de particionamento só é modificada ao
criar ou deletar partições. Caso, por qualquer motivo, os 66 bytes da tabela de
particionamento sejam sobrescritos ou danificados, você perde acesso a todas
as partições do HD. O HD fica parecendo vazio, como se tivesse sido
completamente apagado.

Para evitar isso, você pode fazer um backup da trilha MBR do HD. Assim, você
pode recuperar tudo caso ocorra qualquer eventualidade. Para fazer o backup,
dê boot usando um live-cd, logue-se como root e use o comando:

# dd if=/dev/hda of=backup.mbr bs=512 count=1

O comando vai fazer uma cópia dos primeiros 512 bytes do "/dev/hda" no
arquivo "backup.mbr" (salvo no diretório atual). Lembre-se de substituir o "hda"
pelo dispositivo correto do HD, que você pode conferir usando o Gparted.

Você pode salvar o arquivo num disquete ou pendrive, mandar para a sua
conta do gmail, etc. Caso no futuro, depois da enésima reinstalação do
Windows XP, vírus, falha de hardware ou de um comando errado a tabela de
particões for pro espaço, você pode dar boot com o live-cd e regravar o backup
com o comando:

# dd if=backup.mbr of=/dev/hda

Claro que, no mundo real, quase ninguém faz backup da tabela de partições, o
que nos leva ao Testdisk, uma ferramenta "sem preço" para recuperar
partições acidentalmente deletadas, ou restaurar tabelas de partições
corrompidas.


                                                                            525
Lembre-se de que o Testdisk é capaz de recuperar partições apenas enquanto
as informações não são subscritas. Se você acabou de apagar a sua partição
de trabalho, é bem provável que consiga recuperá-la, mas se o HD já tiver sido
reparticionado e formatado depois do acidente, as coisas ficam muito mais
complicadas. Sempre que um acidente acontecer, pare tudo e volte a usar o
HD só depois de recuperar os dados.

O Testdisk permite recuperar desde partições isoladas (incluindo as
extendidas), até toda a tabela de partições, caso o HD tenha sido zerado. Ele
suporta todos os principais sistemas de arquivos, incluindo FAT32, NTFS,
EXT2, EXT3, ReiserFS, XFS, LVM e Linux Raid.

A página oficial é a http://www.cgsecurity.org/testdisk.html onde, além da
versão Linux, você encontra versões para Windows, DOS e até para o Solaris.
Todas utilizam a mesma interface, e possuem os mesmos recursos, de forma
que você pode simplesmente escolher qual utilizar de acordo com a situação.

Se você tiver uma máquina Windows disponível, pode instalar o HD com a
tabela de partições danificada como HD secundário e rodar a versão Windows
do Testdisk. Em outros casos, pode ser mais rápido dar boot usando um live-
CD e rodar a versão Linux do Testdisk, usando a própria máquina onde o HD
está instalado, sem precisar removê-lo. O Link de download do programa é o:
http://www.cgsecurity.org/wiki/TestDisk_Download.

Ao rodar sob o Linux, o programa pode ser chamado diretamente através do
terminal, enquanto ao rodar sob o Windows, os executáveis abrem uma janela
do DOS. Em ambos os casos, você pode executar o programa diretamente,
depois de descompactar o arquivo. Não é necessário instalar.

No caso da versão Windows, você só precisa descompactar o arquivo .zip e
clicar sobre o "testdisk_win.exe":




                                                                          526
Ao baixar a versão Linux, você obtém um arquivo .tar.bz2, que precisa ser
descompactado usando o comando "tar -jxvf", como em:

$ tar -jxvf testdisk-6.6.linuxstatic.tar.bz2

Acesse agora a pasta "testdisk-x.x/linux" (onde o x-x é a versão baixada) e
logue-se como root, usando o comando "su -" e execute o comando
"./testdisk_static", como em:

$ cd testdisk-*/linux
$ su -
# ./testdisk_static

Além da versão "genérica", disponível para download, o Testdisk pode ser (na
maioria dos casos) instalado através do gerenciador de pacotes. Nos derivados
do Debian, você pode instalá-lo via apt-get:

# apt-get install testdisk

Neste caso, o comando para executá-lo depois de instalado é apenas
"testdisk".

Outra observação é que muitos live-CDs trazem o testdisk pré-instalado,
incluindo o Kurumin (a partir da versão 6.0), versões recentes do Knoppix
(http://www.knoppix.com/), PLD (http://www.pld-linux.org/) e Ultimate Boot CD
(http://www.ultimatebootcd.com).

Vamos a um exemplo prático de como recuperar duas partições deletadas
"acidentalmente". Onde o cfdisk está mostrando "Free Space" existem, na
verdade, as partições "/dev/hda2" e "/dev/hda3", que removi previamente:




Ao ser aberto, o Testdisk começa detectando os HDs instalados, permitindo
que você selecione em qual deles o teste deve ser realizado.

                                                                          527
Ele é multiplataforma, por isso ele pergunta sob qual plataforma está sendo
executado na opção seguinte. A menos que você esteja usando um Mac, uma
workstation Sun ou um Xbox, responda sempre "[Intel] Intel/PC partition" (a
opção default). Esta opção indica que você está usando um micro PC. O "intel",
no caso, indica a plataforma (Intel i386), não tem nada a ver com o fabricante
do processador usado.

Na tela inicial, selecione o HD que será analisado, acesse a opção "Analyse" e
em seguida "Proceed", para iniciar a varredura do disco.

O Testdisk verifica a tabela de partições atual e em seguida pesquisa em todos
os setores onde podem existir informações sobre outras partições que não
constam na tabela principal.

Veja que, apenas com o teste rápido, ele já conseguiu localizar as duas
partições que haviam sido deletadas:




Pressionando a tecla "P" você pode ver os dados dentro da partição, para ter
certeza que os arquivos estão lá. Nos raros casos onde ele localize a partição,
mas identifique incorretamente o sistema de arquivos, use a opção "T" para
indicar o correto.

Depois de checar se o particionamento detectado está correto, pressione
"Enter" mais uma vez e você chega à tela final, onde pode salvar as alterações,
usando a opção "Write". Reinicie o micro e monte a partição para checar os
dados.

Caso a lista não exiba a partição que você está procurando, use a opção
"Search" no lugar do Write. Isto ativa o teste mais longo, onde ele vasculha
todos os setores do HD em busca de partições deletadas. Este segundo teste
demora alguns minutos e, em um HD com bastante uso, pode retornar uma

                                                                           528
longa lista de partições que foram criadas e deletadas durante a vida útil do
HD. Nesse caso, preste atenção para recuperar a partição correta.




Todas as partições listadas aqui aparecem com o atributo "D", que significa que
a partição foi deletada. Para recuperar uma partição, selecione-a usando as
setas para cima/baixo e use a seta para a direita para mudar o atributo para "*"
(se ela for uma partição primária e bootável, como o drive C: no Windows), "P"
se ela for uma partição primária ou "L" se ela for uma partição lógica. Lembre-
se de que, no Linux, as partições de 1 a 4 são primárias e de 5 em diante são
extendidas.

É possível também adicionar uma partição manualmente, caso você saiba os
setores de início e final, mas isso raramente é necessário.




                                                                            529
Pressione "Enter" mais uma vez e ele mostra uma tela de confirmação, com a
tabela de particionamento alterada que será salva no disco. Use o "Write" para
salvar ou volte à tela inicial para começar novamente em caso de erros.

Tenha em mente que o tamanho da partição é reportado de acordo com o
número de setores de 512 bytes. Uma partição de 5 GB, por exemplo, tem
pouco mais de 10 milhões de setores.

Depois de recuperar qualquer partição, é importante checá-la usando o utilitário
apropriado, para que qualquer problema dentro da estrutura do sistema de
arquivos seja corrigido.

Outro programa para recuperar a tabela de partições, desta vez comercial, é o
PTDD (Partition Table Doctor), disponível no http://www.ptdd.com/. Ele é mais
limitado que o Testdisk em diversos aspectos, e é capaz de recuperar apenas
partições FAT, NTFS e EXT, enquanto o Testdisk oferece suporte a um
conjunto mais completo de sistema de arquivos. O PTDD roda apenas sobre o
Windows, de forma que você precisa sempre remover o HD a reparar e instalá-
lo como slave na máquina Windows com o PTDD instalado. Apesar disso, ele é
gráfico e por isso mais fácil de usar, o que o torna a escolha preferida de
muitos.




                                                                            530
Partition Table Doctor

Recuperando arquivos apagados

O Testdisk pode salvar a sua pele quando partições do HD são apagadas
devido à ação de vírus, erros diversos durante o reparticionamento do HD, etc.
Entretanto, ele pouco pode fazer para recuperar dados deletados dentro das
partições, o que demanda ferramentas específicas. Entram em cena então os
programas de recuperação, que vasculham os discos magnéticos em busca de
arquivos que foram apagados porém ainda não sobrescritos por outros.

Usando o Easy Recovery

Um dos programas mais antigos e respeitados é o Easy Recovery,
desenvolvido      pela     Ontrack. Ele  está  disponível  no:
http://www.ontrack.com/software/.

Assim como em outros programas de recuperação de dados, o trabalho do
Easy Recovery se concentra em acessar diretamente os dados armazenados
na partição, procurando diretamente por diretórios e arquivos, sem depender
das estruturas do sistema de arquivos. Apesar disso, todo o trabalho pesado é
feito por baixo dos panos, fazendo com que o programa tenha uma interface
muito simples. Basicamente, você indica a partição, espera o final do teste,
marca os arquivos que deseja recuperar e indica o destino e, no final, checa os
arquivos recuperados.

                                                                           531
Dentro do programa, acesse a seção "Data Recovery". Dentro dela, a opção
"Deleted Recovery" permite recuperar arquivos e pastas dentro de uma
partição contendo outros arquivos, como em casos em que algumas pastas e
arquivos específicos foram deletados, mas o restante dos arquivos continua
presente; enquanto a "Format Recovery" recupera dados em partições que
foram reformatadas ou em casos onde o sistema foi reinstalado. Usando essa
opção, o programa ignora a estrutura atual e tenta remontar a estrutura da
formatação anterior.

Existe ainda a opção "Raw Recovery" que tenta recuperar dados
remanescentes em casos onde o HD já foi reparticionado mais de uma vez e
dados foram gravados por cima, subscrevendo os anteriores. Nesse caso a
eficiência é limitada, mas é quase sempre possível recuperar alguns arquivos.

Note que o EasyRecovery é eficiente ao recuperar dados apagados dentro de
partições, mas ele não é capaz de recuperar a tabela de particionamento.

Em casos em que as partições são apagadas ou a tabela é corrompida, o
trabalho de recuperação seria feito em duas partes. Na primeira você utilizaria
o Testdisk para recuperar as partições originais e (caso necessário), usaria em
seguida o EasyRecovery para recuperar arquivos dentro delas. É relativamente
incomum que as duas coisas aconteçam ao mesmo tempo (perder a tabela de
particionamento e perder junto arquivos dentro das partições) por isso
normalmente usamos ou um ou outro.




                       Tela principal do EasyRecovery


                                                                           532
O passo seguinte é indicar a partição onde estão os arquivos a recuperar. Além
de partições em HDs, você pode recuperar dados em pendrives, cartões de
memória e outros tipos de mídia. A principal observação é que você precisa
sempre de uma partição separada para onde copiar os arquivos recuperados.
Todo o teste do Easy Recovery é feito de forma não destrutiva, sem alterar os
arquivos dentro da partição, por isso ele não é capaz de restaurar os arquivos
diretamente.

Outra observação é que você nunca deve instalar o Easy Recovery nem usar
uma instalação do Windows dentro da mesma partição onde estão os arquivos.
Se os arquivos perdidos estão armazenados na mesma partição onde o
Windows está instalado, o melhor a fazer é desligar o micro, remover o HD,
instalá-lo como slave em outro PC e realizar o teste a partir dele. Se você
pretende recuperar dados de forma rotineira, o ideal é já ter um PC preparado
para isso.




                             Seleção da partição

Dentro da tela de seleção de partição, você tem a opção de ativar o "Complete
Scan". Essa opção faz o teste demorar mais, mas oferece uma eficiência muito
maior. É recomendável marcá-la sempre que você precisar recuperar mais do
que um ou dois arquivos recentemente deletados.

De acordo com o tamanho da partição, o teste pode demorar de alguns
minutos a algumas horas, já que o programa precisa ler todos os dados
gravados e aplicar os algoritmos que permitem identificar os arquivos.


                                                                          533
Concluído o teste, os arquivos localizados são marcados e você só precisa
selecionar quais quer recuperar (ou simplesmente marcar tudo). Lembre-se de
verificar o espaço disponível na partição de destino.

No screenshot a seguir, estou recuperando um grande volume de arquivos
propositalmente deletados em uma partição FAT32. Como os arquivos não
tinham sido sobrescritos, todos os arquivos foram recuperados. Duas das
pastas perderam a primeira letra do nome ("_IMP" ao invés de "GIMP" e "_LV"
ao invés de "VLC") e alguns dos arquivos de imagem ficaram com pequenos
defeitos nos primeiros kbytes. Com exceção de detalhes como estes, a
recuperação de arquivos recentemente deletados é quase sempre perfeita.




Na tela seguinte você indica a pasta onde salvar os arquivos. Existe também a
opção de dar upload para um servidor FTP (você pode manter um servidor FTP
local na sua rede, de forma que os arquivos sejam copiados na velocidade de
transmissão da rede local) ou gerar um arquivo compactado em .zip, de forma
a reduzir o espaço ocupado.




                                                                         534
O Easy Recovery inclui também algumas ferramentas para reparo de arquivos
danificados (as opções "File Repair" e "Email Repair" do menu) que permitem
reparar arquivos do Office, arquivos .zip e arquivos de e-mail do outlook
corrompidos. Elas podem ser usadas de forma independente das opções de
recuperação.

O grande problema com o EasyRecovery é que ele é um programa caro,
voltado para o uso profissional. A versão de demonstração, disponível para
download executa a varredura e mostra os arquivos que podem ser
recuperados, mas sem opção de recuperá-los. A versão completa (para uso
pessoal) custa nada menos que US$ 499 e está limitada à recuperação de
dados em 20 HDs, enquanto a versão para uso profissional custa US$ 1499
anuais. Existe ainda uma versão Lite, que custa apenas US$ 89, mas está
limitada à recuperação de apenas 25 arquivos por sessão.

Outra questão é que o Easy Recovery não é multiplataforma e se restringe a
recuperar arquivos em partições formatadas em FAT16, FAT32 e NTFS. Isso
impede que ele possa ser considerado sozinho como uma opção completa de
recuperação de dados.




                                                                        535
Usando o Photorec

Outro programa digno de nota, que vale a pena também ter no kit de
ferramentas é o Photorec. Ele utiliza algoritmos de recuperação bem menos
eficientes que o Easy Recovery, por isso não é indicado para recuperar
grandes quantidades de arquivos. Em compensação, ele oferece três
diferenciais: é gratuito (e de código aberto), oferece suporte a um número muito
maior de sistemas de arquivos e é multiplataforma, rodando tanto no Windows
quanto no Linux e outros sistemas. Embora esteja longe de ser perfeito, ele faz
um bom trabalho em recuperar arquivos do Office, imagens, arquivos zip e
outros formatos de arquivos comuns.

O Photorec é mantido pelos mesmos desenvolvedores do Testdisk.
Originalmente a idéia era recuperar fotos acidentalmente deletadas em
câmeras e cartões de memória (daí o nome). Como praticamente todo mundo
usa câmeras digitais hoje em dia, ele atende a uma demanda crescente, que é
recuperar fotos e vídeos deletados acidentalmente na memória de uma forma
rápida. Daí em diante, foi adicionado suporte a outros formatos de arquivos e a
um número crescente de sistemas de arquivos, transformando o Photorec em
uma ferramenta de recuperação de dados de uso geral.

O Link de download é o mesmo do Testdisk:
http://www.cgsecurity.org/wiki/TestDisk_Download.

Assim como no caso do Testdisk, existem tanto versões Windows quanto Linux
e o uso de ambas é muito similar. No caso da versão Windows, você só precisa
descompactar o arquivo. zip e clicar sobre o "photorec_win.exe".

No caso da versão Linux, descompacte o arquivo e acesse a pasta criada (da
mesma forma que no Testdisk) e execute o comando "./photorec_static -d",
seguido de uma pasta do HD, onde os arquivos recuperados serão
armazenados, e o dispositivo referente à partição, pendrive, câmera ou cartão
onde estão os arquivos deletados, como em:

# ./photorec_static -d /home/joao/tmp /dev/sda1

Dispositivos USB de armazenamento são reconhecidos no Linux como
"/dev/sda" e o "1" indica a partição dentro do cartão ou pendrive (quase sempre
dispositivos de memória Flash são particionados usando uma única partição).
Em máquinas com HD SATA, o HD assume a posição de "/dev/sda" e o
dispositivo USB assume a próxima posição disponível: "/dev/sdb". Se você tiver
dois HDs SATA, então o dispositivo USB passa a ser o "/dev/sdc" e assim por
diante. Se você tiver o Gparted instalado, pode usá-lo para ver como cada
dispositivo foi reconhecido pelo sistema.

Ao abrir o Photorec, ele começa confirmando o dispositivo onde será feita a
recuperação. Como ele não altera os dados dentro da partição, apenas verifica
os dados gravados, procurando por arquivos deletados, não existe um grande
perigo ao mandar ele procurar arquivos no lugar errado (na sua partição de
trabalho por exemplo), mas é sempre bom conferir se você indicou o dispositivo


                                                                            536
correto antes de continuar, até para evitar perder tempo. Use a opção
"Proceed" para continuar:




No caso da versão Windows (onde você abre o programa sem especificar
parâmetros), ele mostra um menu de seleção, contendo todas as partições
disponíveis no sistema. Ele detecta as partições usando a nomenclatura do
Linux (/dev/sda, /dev/sdb, etc.) mas você pode localizar a partição referente ao
cartão ou câmera rapidamente, baseado no tamanho:




                                                                            537
Antes de continuar, ele confirma a partição onde será feita a recuperação. Esta
opção só tem serventia caso o cartão ou pendrive esteja dividido em mais de
uma partição. Na maioria dos casos você só precisa confirmar a partição pré-
selecionada:




A opção seguinte (a última) se refere ao sistema de arquivos em que a partição
alvo está formatada. Se por acaso você estiver tentando recuperar fotos
apagadas em uma partição Linux, formatada em EXT2, ou EXT3, você
escolheria a opção "[ EXT2/EXT3 ]", mas em todos os outros casos, incluindo
recuperação em cartões, pendrives, partições Windows e mesmo em partições
Linux formatadas em outros sistemas de arquivos, você usa sempre a opção [
Other]:




                                                                           538
No caso da versão Windows, ele pergunta também onde deve salvar os
arquivos recuperados, já que você não especifica a pasta ao abrir o programa.
A grande limitação é que, por rodar através do Cygwin, ele enxerga a pasta
onde está o executável do programa como diretório raiz, impedindo que você
salve os arquivos recuperados fora dela. Mesmo que você indique o "c" como
diretório destino, ele salvará na pasta "c" dentro do diretório. A melhor forma de
burlar essa limitação é copiar a pasta com o programa para dentro do diretório
onde quer salvar os arquivos e executá-lo a partir de lá. Depois de indicar a
pasta, pressione "Y" para continuar:




                                                                              539
Nunca é demais lembrar que você sempre deve salvar os arquivos em uma
unidade ou partição separada. Pode ser do pendrive para o HD ou do HD para
um HD externo, não importa, desde que sejam duas unidades separadas.
Jamais tente recuperar arquivos de uma partição salvando-os nela mesma.

Agora vem a parte automática, onde ele vai ler cada setor da partição, em
busca de fotos e vídeos deletados. Ele ignora a tabela de alocação e vai
diretamente "na fonte", lendo os bits armazenados diretamente e procurando
por blocos que pareçam ser arquivos.




Ao terminar o teste, é só sair do programa e verificar os arquivos recuperados,
que serão armazenados dentro da pasta indicada no comando inicial.

Se você executá-lo como root (no Linux), vai precisar ajustar as permissões de
acesso à pasta onde foram salvos os arquivos recuperados no final do
processo, usando o comando "chown -R", seguido do usuário de sistema que
você utiliza e a pasta onde os arquivos foram salvos, como em:

# chown -R joao /home/joao/tmp

A partir daí você pode acessar os arquivos normalmente, através do
gerenciador de arquivos, sem precisar mais do terminal aberto como root.

O maior problema é que o Photorec recupera apenas os arquivos propriamente
ditos, sem conseguir recuperar a estrutura de pastas ou os nomes, fazendo
com que, no final, você acabe com uma salada de arquivos.

Se você precisa apenas recuperar alguns documentos específicos, isto não
chega a ser um grande problema, pois você pode encontrá-los rapidamente
pela extensão e pelo tamanho do arquivo. Mas, se você precisa recuperar uma

                                                                           540
série de pastas, com um grande volume de arquivos pequenos, ele já não é a
melhor opção.

Uma dica é que você pode selecionar manualmente os tipos de arquivos que
ele deve procurar. Desmarcando as extensões que não interessam, você reduz
o número de arquivos recuperados (e assim reduz o trabalho necessário para
encontrar os que realmente precisa). Para isso, use a opção "[ File Opt ]" na
tela de escolha da partição (a última antes de começar a busca):




É recomendável que você desmarque a opção "txt", pois o Photorec tende a
encontrar um grande número de arquivos de log e fragmentos de arquivos
parcialmente deletados, que acabam gerando, muitas vezes, alguns milhares
de pequenos arquivos .txt no final do processo.




                                                                          541
Outras opções

Se você está procurando um programa gratuito e fácil de usar, na linha do Easy
Recovery, a melhor opção é o PC Inspector File Recovery, que pode ser
baixado no: http://www.pcinspector.de/.

Ele possui limitações com relação à recuperação de pastas com estruturas
complexas de subpastas e arquivos e também com relação à recuperação de
arquivos fragmentados, além de estar limitado a apenas partições FAT e NTFS.
Apesar disso, ele faz um bom trabalho (muito melhor que o do Photorec na
recuperação dos nomes dos arquivos) e a interface é bastante simples.

Ao abrir o programa, use a opção "Open Drive" para selecionar a partição onde
estão os arquivos a recuperar. Na maioria dos casos ele não consegue mostrar
o nome do volume, mas você pode se orientar pelas letras das unidades:




                                                                          542
Em seguida, use a opção "Find Lost Data" e deixe que ele execute a
verificação. Os arquivos recuperados aparecem na pasta "Deleted" da árvore
principal. Para recuperar, selecione os arquivos e use a opção "Save to". Assim
como no Easy Recovery, não existe a opção de restaurar os arquivos
diretamente; você precisa sempre salvar em uma partição separada.

A pasta "Lost", que ele mostra por padrão depois do teste, inclui apenas
fragmentos de arquivos não identificados. Raramente você encontrará qualquer
coisa utilizável dentro dela.




                                                                           543
Mais um programa de recuperação digno de nota é o Data Recovery Wizard
Professional. Ele também é capaz de lidar apenas com partições do Windows,
mas oferece como ponto forte um bom suporte a arquivos comprimidos ou
encriptados dentro de partições NTFS. Ele é um programa comercial, mas é
muito mais barato que o Easy Recovery. Assim como no caso dele, está
disponível uma versão demo que mostra os arquivos recuperáveis, mas não
permite        salvá-los.       Você        pode        baixá-la       no:
http://www.easeus.com/datarecoverywizardpro/.

Eliminando dados com segurança

Como vimos, é quase sempre possível recuperar dados deletados de HDs
previamente formatados. Isso cria um problema para quem precisa vender ou
descartar HDs usados. Afinal, você não vai querer que seus arquivos pessoais,
ou informações confidenciais da sua empresa sejam dadas "de brinde" junto
com o HD passado adiante.

Muitos órgãos governamentais e militares possuem políticas estritas quanto ao
descarte de HDs. Em muitos casos um HD só pode ser descartado depois de
passar por um software de eliminação de dados e, em outras, os HDs são
realmente destruídos fisicamente, para eliminar qualquer possibilidade de
recuperação.



                                                                         544
Destruir um HD é fácil. "Amacie" usando uma marreta de 20 kg, depois
incinere. Se preferir, você pode usar o HD como alvo em um clube de tiro, ou
destruir a superfície magnética dos discos com ácido. ;)

Claro, nada disso é realmente necessário se você sabe o que está fazendo. Da
mesma maneira que é possível recuperar dados usando as ferramentas
corretas, também é possível apagá-los de forma que seja impossível recuperá-
los.

A maneira mais rudimentar seria simplesmente reescrever todos os dados.
Uma boa opção neste caso é utilizar o comando dd, no Linux, o mesmo que
utilizamos para fazer imagens de baixo nível do HD. Dê boot com a distribuição
live-cd de sua preferência e use o comando abaixo, logado como root:

# dd if=/dev/zero of=/dev/hda
(onde o /dev/hda é o dispositivo referente ao HD)

Aqui, todos os dados do HD são sobrescritos com bits zero e já não poderiam
mais ser recuperados por via normais. Entretanto, grandes empresas de
recuperação, como a Seagate, Ontrack, etc. possuem aparelhos capazes de ler
a carga residual das mídias. Como todo o HD passa a armazenar bits zero, um
resquício de carga positiva sob a superfície indicaria que lá estava antes
armazenado um bit um. Seria um processo caro e demorado, mas ainda assim
seria possível recuperar grande parte dos dados.

Uma forma mais segura seria encher o HD com bits aleatórios, modificando o
comando para ler as informações de entrada a partir do "/dev/urandom", outro
dispositivo virtual, que fornece bits aleatórios, criados com base em
interrupções, operações realizadas e outras variáveis geradas pela atividade da
máquina:

# dd if=/dev/urandom of=/dev/hda

Aqui, a recuperação fica muito mais complicada. Mas, em teoria, ainda seria
possível recuperar alguns trechos dos arquivos usando os processos
adequados. A Ontrack e alguns fabricantes oferecem serviços de recuperação
neste nível a preços exorbitantes (bem além do custo de uma simples
recuperação, que já é cara).

Para realmente eliminar qualquer possibilidade de recuperação, você poderia
executar o comando várias vezes. A cada passada a chance de recuperar
qualquer coisa fica exponencialmente menor.

Em vez de fazer isso manualmente, você pode usar o "shred", um pequeno
utilitário encontrado na maioria das distribuições. Você pode usá-lo também a
partir de um CD de boot do Kurumin.

Um exemplo bem efetivo de uso seria:

# shred -n 5 -vz /dev/hda



                                                                           545
Usado com estas opções, o shred vai encher o HD com bits aleatórios,
repetindo a operação 5 vezes (-n 5). Como o processo é demorado, usamos a
opção "-v" (verbose) para que ele exiba um indicador de progresso, concluindo
com o "z", que faz com que, depois de concluído o processo, ele encha o HD
com zeros, para despistar e esconder o fato de que você fez o apagamento.

Copiando dados de mídias defeituosas

É difícil copiar arquivos a partir de um HD com badblocks, ou um CD-ROM
riscado, por meios normais. Os programas fazem a cópia apenas até o ponto
em que encontram o primeiro erro de leitura. Mesmo que exista apenas um
setor defeituoso no meio do arquivo, você quase nunca conseguirá copiar o
arquivo inteiro, apenas a metade inicial.

Existe um utilitário eficiente para fazer cópias a partir de mídias ruins, o
dd_rescue. Ele faz a cópia das partes boas, ignorando os setores defeituosos.
Funciona bem para recuperar arquivos de texto, imagens, vídeos, músicas,
qualquer tipo de arquivo que possa ser aberto mesmo que estejam faltando
alguns pedaços.

O dd_rescue é mais um pequeno utilitário que pode ser executado a partir de
uma distribuição Linux live-CD. Se você está usando o Kurumin, Knoppix,
Ubuntu, ou outra distribuição baseada no Debian, pode instalá-lo diretamente,
via apt-get (logado como root):

# apt-get update
# apt-get install ddrescue

Para usá-lo, indique a localização da partição ou CD-ROM que será copiado e
um arquivo de destino. Ao copiar uma partição, você sempre precisa copiar o
arquivo para dentro de uma partição diferente. A partição ou CD-ROM de
origem deve sempre estar desmontada.

Para copiar um CD-ROM:

# dd_rescue /dev/cdrom /mnt/hda6/cdrom.img
(onde /mnt/hda6/cdrom.img é o arquivo onde os dados serão salvos)

Para copiar uma partição:

# dd_rescue /dev/hda1 /mnt/hda6/hda1.img

Para acessar os arquivos dentro da imagem, você deve montá-la usando a
opção "-o loop" do mount, que monta um arquivo como se fosse um dispositivo,
indicando a pasta onde os arquivos ficarão acessíveis, como em:

# mount -o loop /mnt/hda6/cdrom.img /mnt/imgcdrom
ou:
# mount -o loop /mnt/hda6/hda1.img /mnt/imghda1

Você verá todos os arquivos dentro da pasta e poderá acessar o que foi
possível ler.


                                                                          546
Um problema do dd_rescue é que ele lê cada setor defeituoso várias vezes, de
forma a tentar obter os dados a qualquer custo. Por um lado, isto é positivo,
pois ele realmente acaba conseguindo recuperar vários setores que falham na
primeira leitura, mas por outro lado, faz com que o processo de recuperação
fique extremamente lento em mídias com muitos setores defeituosos.

Isto é especialmente problemático ao recuperar dados em HDs, pois se o teste
demora muito, a possibilidade do drive dar seu último suspiro durante a
recuperação, levando consigo os dados restantes, é muito maior.

Uma solução é usar o "dd_rhelp", um programa que trabalha em conjunto com
o dd_rescue, otimizando seu comportamento.

Ao usar o dd_rhelp, o processo de recuperação é dividido em duas etapas. Na
primeira, ele recupera os dados, pulando os setores defeituosos. Quando a
recuperação está completa, ele carrega a lista dos setores que falharam na
primeira leitura e aí sim, passa ao comportamento padrão, lendo cada setor
várias vezes. A diferença é que, no caso, você já está com os dados seguros.

Você pode baixar o dd_rhelp no
http://www.kalysto.org/utilities/dd_rhelp/download/index.en.html ou
http://freshmeat.net/projects/dd_rhelp/.

No site, está disponível apenas o pacote com o código fonte, mas ele é
relativamente simples de compilar. Descompacte o arquivo, acesse a pasta que
será criada e use os comandos:

# ./configure
# make

Isto vai criar o executável dentro da pasta atual. Ao usá-lo, a sintaxe é a
mesma do dd_rescue:

# ./dd_rhelp /dev/cdrom /mnt/hda6/cdrom.img




                                                                          547
Capítulo 7: Chipsets e placas

Nos primeiros PCs, os chips controladores da placa-mãe ficavam espalhados
em diversos pontos da placa. Não é preciso dizer que este design não era
muito eficiente, já que mais componentes significam mais custos. Com o
avanço da tecnologia, os circuitos passaram a ser integrados em alguns
poucos chips. Isso trouxe duas grandes vantagens: a primeira é que, estando
mais próximos, os componentes podem se comunicar a uma velocidade maior,
permitindo que a placa-mãe seja capaz de operar a freqüências mais altas. As
segunda é a questão do custo, já que produzir dois chips (mesmo que mais
complexos) sai mais barato do que produzir vinte.

Muitas vezes, temos a impressão de que novas tecnologias (sobretudo
componentes miniaturizados) são mais caras, mas, na maior parte dos casos, o
que acontece é justamente o contrário. Produzir chips utilizando uma técnica
de 45 nanometros é mais barato do que produzir utilizando uma técnica antiga,
de 90 ou 180 nanometros, pois transístores menores permitem produzir mais
chips por wafer, o que reduz o custo unitário. Usando uma técnica de 180
nanometros (0.18 micron), temos transístores 16 vezes maiores que ao utilizar
uma técnica de 45 nanometros. Isso significa que, utilizando aproximadamente
o mesmo volume de matéria-prima e mão de obra, é possível produzir quase
que 16 vezes mais chips.

É bem verdade que migrar para novas tecnologias implica um grande custo
inicial, já que a maior parte do maquinário precisa ser substituído. Os
fabricantes aproveitam o impulso consumista do público mais entusiasta para
vender as primeiras unidades muito mais caro (o que cria a impressão de que a
nova tecnologia é mais cara), mas, uma vez que os custos iniciais são
amortizados, os produtos da nova geração acabam custando o mesmo, ou
menos que os anteriores, mesmo incluindo mais funções.

Assim como os demais componentes, os chipsets evoluíram e incorporaram
mais funções. Nos micros 386, até mesmo as interfaces IDE e portas seriais
eram adicionadas através de placas de expansão, enquanto a maioria das
placas atuais incluem, além das interfaces básicas, também interfaces vídeo,
som e rede onboard, ou seja, oferecem a um custo muito baixo funções que
antes precisavam ser adicionadas através de placas extras.

A grande maioria dos chipsets segue o projeto tradicional, onde as funções são
divididas em dois chips, chamados de porte norte (north bridge) e ponte sul
(south bridge). Nos últimos anos essa designação anda um pouco fora de
moda, com os fabricantes adotando nomes pomposos, mas ainda pode ser
utilizada como uma definição genérica.

A ponte norte é o chip mais complexo, que fica fisicamente mais próximo do
processador. Ele incorpora os barramentos "rápidos" e as funções mais
complexas, incluindo o controlador de memória, as linhas do barramento PCI
Express, ou o barramento AGP, além do chipset de vídeo onboard, quando

                                                                          548
presente. As placas para processadores AMD de 64 bits não possuem o
controlador de memória, já que ele foi movido para dentro do processador.

Nas placas atuais, a ponte norte do chipset é sempre coberta por um
dissipador metálico, já que o chip responde pela maior parte do consumo
elétrico e, conseqüentemente, da dissipação de calor da placa-mãe. Em alguns
casos, os fabricantes chegam a utilizar coolers ou até mesmo heat-pipes para
refrigerá-lo:




              Ponte norte do chipset (com o dissipador removido)

A ponte sul é invariavelmente um chip menor e mais simples que o primeiro.
Nas placas atuais ela incorpora os barramentos mais lentos, como o
barramento PCI, portas USB, SATA e IDE, controladores de som e rede e
também o controlador Super I/O, que agrupa portas "de legado", como as
portas seriais e paralelas, porta para o drive de disquete e portas do teclado e
mouse (PS/2).




                                                                            549
Ponte sul

É comum que os fabricantes adicionem funções adicionais ou substituam
componentes disponíveis na ponte sul, incluindo controladores externos. Com
isso, podem ser adicionadas portas SATA ou IDE adicionais, o controlador de
áudio pode ser substituído por outro de melhor qualidade ou com mais
recursos, uma segunda placa de rede onboard pode ser adicionada e assim
por diante. Entretanto, com pouquíssimas exceções, as funções da ponte norte
do chipset não podem ser alteradas. Não é possível adicionar suporte a mais
linhas PCI Express ou aumentar a quantidade de memória RAM suportada (por
exemplo) adicionando um chip externo. Estas características são definidas ao
escolher o chipset no qual a placa será baseada.

Embora incorpore mais funções (em número) as tarefas executadas pela ponte
sul são muito mais simples e os barramentos ligados a ela utilizam menos
trilhas de dados. Normalmente os fabricantes utilizam as tecnologias de
produção mais recente para produzir a ponte norte, passando a produzir a
ponte sul utilizando máquinas ou fábricas mais antigas.

No caso de um fabricante que produz de tudo, como a Intel ou a AMD, é
normal que existam três divisões. Novas técnicas de produção são usadas para
produzir processadores, a geração anterior passa a produzir chipsets e chips
de memória, enquanto uma terceira continua na ativa, produzindo chips menos
importantes e controladores diversos. Isso faz com que o preço dos
equipamentos seja mais bem amortizado. No final, o maquinário obsoleto (a
quarta divisão) ainda acaba sendo vendido para fabricantes menores, de forma
que nada seja desperdiçado. :)

Por exemplo, o chip MCH (ponte norte) do chipset P35, lançado pela Intel em
julho de 2007, é ainda produzido em uma técnica de 0.09 micron, a mesma
utilizada na produção do Pentium 4 com core Prescott, cuja produção foi
                                                                         550
encerrada mais de um ano antes. O chip ICH9 (ponte sul), por sua vez, é ainda
produzido utilizando uma técnica de 0.13 micron, a mesma usada no Pentium 4
com core Northwood e no Pentium III com core Tualatin. A diferença na técnica
de produção é justificável pela diferença de complexidade entre os dois chips.
Enquanto o MCH do P35 possui 45 milhões de transístores (mais que um
Pentium 4 Willamette, que possui apenas 42 milhões), o ICH9 possui apenas
4.6 milhões, quase 10 vezes menos.

Nos antigos chipsets para placas soquete 7 e slot 1, como o Intel i440BX e o
VIA Apollo Pro, a ligação entre a ponte norte e ponte sul do chipset era feita
através do barramento PCI. Isso criava um grande gargalo, já que ele também
era utilizado pelas portas IDE e quase todos os demais periféricos. Nessas
placas, até mesmo o barramento ISA era ligado no sobrecarregado barramento
PCI, através de um chip conversor, o PCI-to-ISA bridge.

Nas placas atuais, a ligação é feita através de algum barramento rápido (muitas
vezes proprietário) que permite que a troca de informações seja feita sem
gargalos. Não existe uma padronização para a comunicação entre os dois
chips, de forma que (com poucas exceções) os fabricantes de placas-mãe não
podem utilizar a ponte norte de um chipset em conjunto com a ponte sul de
outro, mesmo que ele seja mais barato ou ofereça mais recursos.

O chipset é de longe o componente mais importante da placa-mãe. Excluindo o
chipset, a placa-mãe não passa de um emaranhado de trilhas, conectores,
reguladores de tensão e controladores diversos. Placas que utilizam o mesmo
chipset tendem a ser muito semelhantes em recursos, mesmo quando
fabricadas por fabricantes diferentes.

Devido a diferenças no barramento e outras funções, o chipset é sempre
atrelado a uma família de processadores específica. Não é possível
desenvolver uma placa-mãe com um chipset AMD que seja também compatível
com processadores Intel, por exemplo.

Como o chipset é também o componente mais caro da placa-mãe, ele também
é um indicador da qualidade geral da placa, já que placas com chipsets
baratos, sobretudo as com os modelos mais simples da SiS e VIA tendem a ser
"baratas" também em outros aspectos. Por outro lado, é raro que um fabricante
utilize um chipset mais caro, da Intel ou nVidia, em uma placa de segunda
linha.

Vamos então a um resumo dos principais chipsets utilizados dos micros
Pentium até os dias de hoje:

Chipsets para placas soquete 7

Até por volta de 1994, o mercado de chipsets era controlado por diversas
empresas concorrentes, entre elas a VLSI, a UMC, a Symphony e a OPTI, que
concorriam entre si fabricando chipsets para micros 386 e 486. A Intel chegou a
desenvolver um chipset para 386 (o 82350) e três chipsets para 486 (o 420TX,


                                                                           551
420EX e 420ZX), mas foi com o chipset 430LX, e seus sucessores, que ela
conseguiu ganhar o mercado.

O fato de desenvolver simultaneamente tanto processadores quanto chipsets
acaba sendo uma grande vantagem competitiva, pois, além de aumentar o
volume de vendas, garante que novos processadores sejam lançados
simultaneamente com os novos chipsets projetados para suportá-los. A Intel
também desenvolve e vende placas-mãe, embora a produção seja terceirizada
para outros fabricantes, como a Foxconn.

Desde a primeira geração do Athlon, a AMD também desenvolve chipsets e
placas de referência. Mas, ao contrário da Intel, nunca teve uma presença forte
no setor. Os chipsets da AMD serviam mais como uma referência para outros
fabricantes interessados em desenvolver chipsets para a plataforma. Isso
mudou com a aquisição da ATI, que, ao se fundir com a AMD, já era a número
3 no ramo de chipsets, perdendo apenas para a Intel e a nVidia.

Voltando à história, o 430LX dava suporte à primeira geração de
processadores Pentium, as versões de 60 e 66 MHz. Ele suportava apenas
memórias FPM, até um máximo de 192 MB.

Em 1995 surgiu o 430FX (Triton), um chipset de baixo custo, que acabou
sendo bastante popular. Ele trouxe algumas melhorias importantes, como o
suporte a memórias EDO e cache L2 Pipeline Burst, que é fundamentalmente o
mesmo tipo de cache utilizado até hoje. Nele, as requisições são enviadas em
seqüências rápidas (daí o "Burst" no nome), sem que o controlador precise
esperar a resposta para a requisição anterior. Graças a isso, o cache pode
operar com temporizações muito mais baixas.

O 430FX foi seguido pelo 430MX (uma versão de baixo consumo, destinada a
notebooks) e pelo 430HX, um chipset destinado a micros de alto desempenho
e estações de trabalho, que suportava até 512 MB de memória, com direito a
um espectro cacheável também de 512 MB e suporte a temporizações mais
baixas para a memória, o que resultava em um certo ganho de desempenho.

Por ser um chipset caro, o 430HX foi relativamente pouco usado. Ele foi
sucedido pelo 430VX e pelo 430TX, dois chipsets de baixo custo, que foram
usados na grande maioria das placas soquete 7 com chipsets Intel vendidas
aqui no Brasil.

Eles trouxeram várias modificações importantes com relação ao 430FX, como
a temporização independente para dispositivos ligados à mesma interface IDE
(o que permite instalar um HD com suporte a UDMA, na mesma porta que um
drive de CD-ROM antigo, que suporta apenas PIO 4, por exemplo, sem que o
modo de operação do HD fosse degradado) e o concurrent PCI, onde vários
periféricos podem transmitir dados simultaneamente através do barramento
PCI, dividindo a banda disponível.

O 430VX oferecia suporte a 128 MB de memória RAM e o 430TX a até 256
MB. Entretanto, ambos eram capazes de cachear apenas os primeiros 64 MB

                                                                           552
da memória, o que acabava fazendo com que este fosse o máximo
recomendável. Esta questão do espectro cacheável foi um problema curioso,
que afetou muitos usuários na época. Como nas placas soquete 7 o cache L2
faz parte da placa-mãe (e não do processador, como atualmente), era
responsabilidade do chipset manter o cache atualizado.

Para cachear toda a memória RAM, era necessário que ele incluísse a
quantidade necessária de memória TAG RAM, utilizada para gerar o índice dos
dados armazenados no cache. Como este era um item caro, a Intel optou por
incluir uma quantidade reduzida no 430VX e no 430TX, fazendo com que o
cache só conseguisse enxergar os primeiros 64 MB. Para complicar, a
memória era acessada a partir do final pelo Windows 95/98, de forma que, ao
utilizar 96 MB ou mais, o sistema utilizava primeiro a parte não cacheada, para
só depois passar a utilizar a parte atendida pelo cache.

Sem o cache, a velocidade de acesso à memória despencava, fazendo com
que o desempenho do sistema caísse em até 40%, ou seja, ao rodar
aplicativos leves, instalar mais memória acabava reduzindo o desempenho ao
invés de aumentá-lo.

O 430VX e 430TX incluíam também controladores USB e suporte a memórias
SDRAM, mas nenhum dos dois recursos foi muito utilizado. O USB era uma
novidade na época e praticamente não existiam periféricos compatíveis. Como
a demanda era muito baixa, os fabricantes deixavam de incluir os conectores
USB nas placas, fazendo com que o recurso acabasse não sendo usado. No
caso das memórias SDRAM, os dois chipsets eram capazes de acessar
apenas 2 MB de memória por chip, o que permitia usar módulos de no máximo
32 MB, com 16 chips. Ao instalar um módulo de maior capacidade, a placa
acessava apenas os primeiros 16 ou 32 MB, de acordo com o número de chips
usados no módulo.

O 430TX foi também o primeiro chipset a oferecer interfaces IDE ATA/33, com
direito ao modo UDMA 33. Desde que você usasse o Windows 95 ou mais
recente, com os drivers corretamente instalados, o uso do UDMA resultava em
um ganho de desempenho considerável, pois além da maior taxa de
transferência, o micro não ficava mais "parado" durante o carregamento de
programas e cópias de arquivos.

Pouco depois, surgiram os chipsets VX-Pro (da VIA) e TX-Pro (da Ali), que
rapidamente se tornaram os mais usados nas placas de baixo custo, sobretudo
nas placas "VX-Pro" e "TX-Pro" da PC-Chips, que eram famosas pelos
problemas de instabilidade.

Apesar dos nomes, estes chipsets não tinham nenhuma relação com os
chipsets da Intel, mas realmente incorporavam recursos mais avançados. O
VX-Pro oferecia interfaces UDMA 33, enquanto o TX-Pro oferecia suporte a até
1 GB de memória RAM, com espectro cacheável de 512 MB e suporte oficial
para as freqüências de 75 e 83 MHz, muito utilizadas para fazer overclock.



                                                                           553
Esta é uma VX-Pro da PC-Chips, fabricada em 1997. Ela é uma placa AT, com
4 slots PCI e 3 slots ISA. Veja que além dos 4 soquetes para módulos de
memória de 72 vias, ela oferece suporte a dois módulos de memória DIMM. As
especificações falam no suporte a módulos DIMM de até 64 MB, mas na
prática a compatibilidade é limitada:




                          Placa VX-Pro, da PC-Chips

Muitas placas da época utilizavam chips "falsos" de memória cache, chips
plásticos ocos, que eram facilmente identificáveis por trazerem a palavra "Write
Back" decalcada em destaque. Note que write back é um tipo rápido de
memória cache, capaz de cachear tanto operações de leitura quanto operações
de escrita, mas, graças a este golpe, o termo ganhou outro significado:




                        Chips ocos de memória cache


                                                                            554
Outro chipset bastante usado na época foi o SiS 5591, que foi o primeiro
chipset a incluir um chipset de vídeo integrado. O desempenho não era bom,
pois na época não existia AGP, de forma que o desempenho de acesso à
memória era ruim e o vídeo saturava o barramento PCI, reduzindo o
desempenho global do equipamento. Apesar disso, o SiS5591 era muito
barato, o que garantiu sua popularidade.

Com a concorrência de tantos fabricantes, a Intel optou por se concentrar no
desenvolvimento dos chipsets para os processadores Pentium II, abandonando
a plataforma soquete 7. Apesar disso, a VIA, a SiS e a Ali continuaram
desenvolvendo chipsets aprimorados, incorporando suporte a AGP, bus de 100
MHz e outras melhorias. As placas baseadas neles (apelidadas de placas
super 7) foram extremamente populares durante a época do K6-2, chegando a
superar as placas para Pentium II e Pentium III em volume de vendas.

O primeiro chipset super 7 foi o Ali Aladdin V, que chegou a ser bastante
popular, devido a seus bons recursos e bom desempenho. Além de suportar o
bus de 100 MHz utilizado pelos processadores K6-2 e Cyrix MII, ele oferecia
suporte a até 1 GB de memória RAM, sem limite no espectro cacheável e
suporte ao uso de até 1 MB de cache L2.

Uma observação é que, embora suportem 1 GB de memória ou mais, a maioria
das placas super 7 suporta módulos de memória SDRAM de no máximo 256
MB (com 16 chips), o que dificulta qualquer upgrade hoje em dia, já que você
precisaria encontrar módulos antigos.

O próximo da lista foi o VIA MVP3, que, apesar de ser originalmente um
chipset destinado a notebooks, acabou sendo usado em muitas placas para
micros desktop. Além de suportar Bus de 66 ou 100 MHz, o VP3 permite que a
memória RAM seja acessada numa freqüência diferente do FSB. Usando este
recurso, podemos usar o barramento de 100 MHz permitido pelo chipset,
mantendo, porém, a memória RAM trabalhando a apenas 66 MHz.

O uso deste recurso permitia o uso de memórias EDO ou SDRAM comuns, em
vez de memórias PC100, com a possibilidade de aproveitar as memórias do
micro antigo, no caso de um upgrade. A perda de performance gerada pela
diminuição da velocidade de acesso às memórias, não chegava a causar um
grande impacto sobre o desempenho global do sistema, pois o cache L2
encontrado na placa-mãe continuava trabalhando a 100 MHz. Este recurso é
similar às opções de ajustar a freqüência da memória de forma independente
da freqüência do FSB, disponíveis nas placas atuais.

O MVP3 suportava o uso de até 1 GB de memória RAM, mas era capaz de
cachear apenas 256 MB. Embora fosse muito raro o uso de mais do que 512
KB de cache L2 nas placas da época, o MVP3 oferecia suporte a até 2 MB.
Outro recurso interessante é que a arquitetura do MVP3 permitia que a ponte
norte do chipset fosse usada em conjunto com a ponte sul do VIA Apollo Pro
133, um chipset para Pentium III, muito mais avançado. Isso permitiu que os
fabricantes adicionassem suporte ao UDMA 66 e outros recursos ao MVP3,
pagando apenas um pouco mais pelo chipset.


                                                                         555
Mais um chipset popular na época foi o SiS 530, que, além do suporte a AGP,
portas IDE com UDMA 33 e bus de 100 MHz, oferecia suporte a até 1.5 GB de
memória RAM, embora, assim como no MVP4, apenas os primeiros 256 MB
fossem atendidos pelo cache.

Mesmo depois de lançados o Athlon e o Duron, os processadores K6-2 e K6-3
continuaram sendo uma opção para micros de baixo custo durante muito
tempo. Pensando neste último suspiro da plataforma soquete 7, a VIA lançou o
MVP4, uma versão aperfeiçoada do MVP3.

A principal vantagem do MVP4 sobre o seu antecessor é o fato de já vir com
um chipset de vídeo Trident Blade 3D embutido no próprio chipset. Como em
outras soluções com vídeo integrado, é reservada uma certa parte da memória
principal para o uso da placa de vídeo. No caso do MVP4 é possível reservar
até 8 MB, opção definida através do Setup. O Trident Blade é um chipset 3D
primitivo, que concorria em desempenho com o nVidia Riva 128 (antecessor do
Riva TnT), oferecendo um desempenho bastante modesto, mesmo para a
época.

Ao contrário dos chipsets que o sucederam, o MVP4 não suportava o uso de
placas AGP externas, já que o barramento era utilizado pelo vídeo integrado.
Devido a isso, ele acabou relegado às placas mais baratas (e de baixa
qualidade), já no finalzinho da era K6-2. Na época, a PC-Chips chegou a
colocar no mercado placas soquete 7 sem cache L2, uma economia que
causava uma grande queda no desempenho. Boa parte da má fama dos micros
K6-2 se deve a estas placas de terceira linha.

Chipsets para o Pentium II e Pentium III

Com a integração do cache L2 ao processador, foi resolvido o problema do
espectro cacheável, que afetava a maior parte das placas soquete 7. Todos os
processadores Pentium III, Athlon, Duron e todos os processadores atuais são
capazes de cachear toda a memória disponível.

A única exceção fica por conta dos primeiros processadores Pentium II, das
séries SL264, SL265, SL268, SL269, SL28K, SL28L, SL28R, SL2MZ, SL2HA,
SL2HC, SL2HD, SL2HE, SL2HF, SL2QA, SL2QB, SL2QC, SL2KA, SL2QF e
SL2K9 e dos primeiros Celerons (as versões de até 333 MHz), que eram
capazes de cachear até 512 MB de memória. Na época esta foi considerada
uma limitação importante, mas atualmente não faz mais tanta diferença, já que,
de qualquer forma, não é comum usar mais do que 512 MB em micros tão
antigos.




                                                                          556
Chipsets da Intel

As primeiras placas para Pentium II foram baseadas no chipset i440FX, o
mesmo chipset utilizado nas placas para Pentium Pro. Ele possuía muitas
limitações, incluindo a falta de suporte a AGP e a memórias SDRAM, de forma
que foi pouco usado. O primeiro chipset "de verdade" para o Pentium II foi o
i440LX. Ele incorporou suporte a AGP e memórias SDRAM, mas ainda incluía
interfaces ATA/33 e trabalhava a apenas 66 MHz. As placas baseadas nele
suportam apenas a primeira safra de processadores Pentium II e Celeron, que
ainda utilizavam bus de 66 MHz. Assim como na maioria dos chipsets da
época, ele podia trabalhar a 75 MHz ou 83 MHz, freqüências que, embora não
fossem utilizadas por nenhum processador Intel, podiam ser usadas para fazer
overclock.

O i440LX foi sucedido pelo i440BX, que se tornou rapidamente um dos
chipsets mais usados. Além do suporte a AGP 2x, ele introduziu o suporte ao
bus de 100 MHz, utilizado pelos processadores Pentium II Deschutes de 350,
400, 450, 500 MHz, assim como as versões do Pentium III que utilizam
barramento de 100 MHz. Muitas placas baseadas no BX são capazes de
trabalhar a 133 MHz (em overclock), o que permite rodar as versões do
Pentium III que utilizam barramento de 133 MHz.

O problema em utilizar os 133 "não-oficiais" do BX é que apesar do chipset se
manter estável, os demais periféricos do micro podem vir a apresentar falhas.
Nos chipsets que oficialmente suportam bus de 133 MHz, temos a freqüência
do barramento PCI dividida por 4 e a do AGP dividida por 2, chegando aos 33 e
66 MHz ideais. Porém, no caso do BX a freqüência era dividida por apenas 3 e
1.5, o que dá 33 e 66 MHz com bus de 100 MHz, porém 44 e 89 MHz com bus
de 133. Isso faz com que todos os demais periféricos do micro, como placas de
vídeo, HDs, etc. sejam obrigados a trabalhar mais rápido. Quem mais sofre
com isso são as placas de vídeo AGP. De fato, muitas não funcionam
estavelmente a 89 MHz.

As placas-mãe que oferecem os 133 MHz não-oficiais do BX são popularmente
chamadas de "BX133". Um bom exemplo de placa desta safra é a Abit BX133-
RAID, lançada no início do ano 2000. Ela é uma placa soquete 370, que conta
com um slot AGP 2X, 5 slots PCI, 1 slot ISA, 2 portas USB e 4 portas IDE,
sendo que duas eram as portas ATA/33, oferecidas pelo i440BX e as duas
portas adicionais eram ligadas a um controlador ATA/66, com suporte a RAID.
Esta configuração permitia que você utilizasse até quatro HDs em RAID 0,
RAID 1 ou RAID 10 e ainda ficasse com duas portas IDE vagas para ligar o
CD-ROM e outros periféricos. Esta configuração era comum em outras placas
da época:




                                                                         557
Abit BX133-RAID

A maior limitação do i440BX (assim como do LX) é que, pelo menos
oficialmente, o chipset suporta apenas 512 MB de memória RAM (2 módulos
de 256 MB). Apesar disso, diversos fabricantes ofereceram placas com 3
soquetes de memória, que permitiam o uso de até 768 MB.
Pensando no mercado de servidores e estações de trabalho, a Intel lançou o
i440GX, um chipset mais caro, que suportava até 2 GB de memória e até 4
processadores Pentium II Xeon em SMP. Existiu ainda o i440ZX, uma versão
de baixo custo do i440BX, que foi pouco usada. Os dois são praticamente
idênticos, incluindo a limitação de 512 MB de memória. A principal diferença é
que o ZX suportava o uso de apenas dois módulos de memória.

O principal concorrente do BX, GX e ZX foi o VIA Apollo Pro, lançado em
1997. Os recursos básicos eram o suporte a bus de 100 MHz, AGP 2x, USB e
interfaces ATA/33, com UDMA 33. Também existia a opção manter a memória
RAM a 66 MHz mesmo com bus de 100, permitindo usar módulos PC-66
antigos, recurso que não era encontrado em nenhum chipset Intel). Assim
como o BX, o Apollo Pro suporta os 133 MHz não-oficiais, de forma que as
placas baseadas nele podiam ser usadas em conjunto com as versões do
Pentium III que operavam a 133 MHz (algumas placas precisavam de um
upgrade de BIOS para reconhecer o processador corretamente).

Chegamos então ao início da era moderna, com os chipsets Intel i810, i810E,
i815, i815E e i820, que são baseados na arquitetura hub. Ela trouxe uma série
de melhorias em relação aos chipsets antigos, que ainda eram baseados no
barramento PCI.



                                                                          558
A primeira é a introdução de um barramento rápido ligando a ponte norte e
ponte sul do chipset, o AHA. Embora seja um barramento de 8 bits e opere a
apenas 66 MHz, ele realiza 4 transferências por ciclo, o que resulta em 266
MB/s de banda. Os chipsets anteriores ainda utilizavam o PCI como meio de
comunicação, o que saturava o barramento, reduzindo a performance de outros
componentes.

Na arquitetura hub, a ponte norte do chipset passa a ser chamada de "Memory
Controller Hub" ou MCH e a ponte sul passa a se chamar "I/O Controller Hub",
ou ICH. Embora continue sendo um chip separado, o BIOS passa a ser
considerado parte do chipset e recebe o nome de "Firmware Hub", passando a
armazenar também o BIOS da placa de vídeo onboard. Esta designação
continua sendo usada pela Intel até os dias de hoje.

Apesar da nova terminologia, as funções dos chips continuam
fundamentalmente as mesmas. O MCH inclui o controlador de memória, o
barramento AGP e o vídeo integrado, enquanto o ICH inclui o barramento PCI,
portas IDE e USB, som, rede e outros periféricos integrados e também o chip
super I/O, que inclui as portas seriais, paralelas, teclado, mouse e outras
interfaces de legado.

A partir do i810 foi eliminada a ponte PCI-ISA, removendo o suporte nativo ao
barramento ISA. Os fabricantes ainda tinham a opção de adicionar um chip
externo, mas, como isso representava um custo adicional, a grande maioria
aproveitou a deixa para eliminar de vez os slots ISA. Eles ainda sobreviveram
durante algum tempo na última safra de placas super 7, que utilizavam chipsets
VIA ou SiS, até que desapareceram definitivamente.

O chipset de vídeo integrado é o i752, descendente do i740, uma tentativa
fracassada da Intel de entrar no ramo de placas 3D. Embora o i740 fosse fraco
demais para concorrer com as placas da nVidia e ATI, seu design simples
acabou se revelando uma boa opção de vídeo onboard, tanto que a Intel
continua desenvolvendo versões atualizadas até os dias de hoje.

Como em outras opções de vídeo onboard, o i752 utiliza memória
compartilhada. Para melhorar o desempenho, existia a opção de instalar uma
placa com 4 MB de memória de vídeo dedicada no slot AGP, mas, como era
vendida separadamente, ela nunca foi um acessório comum. Quem queria
mais desempenho 3D acabava comprando logo uma placa offboard completa.

A principal limitação do i810 é que ele não oferecia suporte a slots AGP, já que
o barramento era utilizado pelo chipset de vídeo onboard. Além disso, ele era
capaz de operar a apenas 100 MHz, por isso foi rapidamente substituído pelo
i810E (que era capaz de trabalhar a 133 MHz) e em seguida pelo i815, que
trouxe de volta a possibilidade de utilizar uma placa AGP externa (através de
um slot AGP 4x), neste caso desabilitando o vídeo onboard.

Pouco depois foi lançado o i815E, que incluía uma versão melhorada do chip
ICH, com suporte a interfaces ATA/100 e 4 portas USB (ao invés de apenas
duas, como nos anteriores). Chegou a ser lançada ainda uma versão sem
vídeo integrado, o i815EP, que era comum em placas de alto desempenho,

                                                                            559
onde o vídeo onboard seria desativado e substituído por uma placa AGP
offboard de qualquer forma.

Na foto a seguir temos uma Asus CUSL2 (lançada no final de 2000), uma das
placas mais populares entre as baseadas no i815E. Ela inclui 6 slots PCI (o
sexto slot é mais fino, devido à questão do espaço, mas isso não afeta suas
funções), dois slots CNR, 4 portas USB (onde duas ficam disponíveis no painel
traseiro e as outras duas eram ligadas a um cabo externo), além de vídeo
onboard, cortesia do chipset:




                                 Asus CUSL2

A CUSL2 foi uma das poucas placas que chegou a incorporar um slot AGP Pro,
durante a fase em que a adoção do padrão ainda estava indefinida. Embora ela
possua 3 soquetes, não existia a possibilidade de instalar 768 MB de memória,
como nas placas baseadas no BX. Assim como em outras placas baseadas no
i815, você podia instalar dois módulos de 256 MB, três módulos de 128 MB ou
um módulo de 256 MB e dois de 128 MB. Ao instalar três módulos de 256 MB,
a placa simplesmente não dava boot.

A principal limitação do i815 era o suporte a apenas 512 MB de memória,
limitação que se tornava cada vez mais evidente. Apesar disso, ele acabou
sendo um chipset de grande sucesso, usado desde em placas de baixo custo,
até em placas mais caras, destinadas ao público entusiasta.

Ele foi seguido pelo i820, um chipset fracassado, onde a Intel fez sua primeira
tentativa de empurrar as caras memórias Rambus. Em tese, o i820 seria um
chipset destinado a máquinas de alto desempenho. Ele não trazia o vídeo
integrado (presumindo que o usuário estaria mais interessado em utilizar uma
placa offboard) e abandonava a compatibilidade com os Celerons que


                                                                           560
utilizavam bus de 66 MHz. O maior problema é que ele era nativamente
compatível apenas com as memórias Rambus.

Para utilizar memórias SDRAM era necessário incluir um chip adicional, o MTH
(Memory Translator Hub), um bridge (ponte) que fazia a conversão dos sinais.
O problema era que ao utilizar o MTH o desempenho de acesso à memória
caía, fazendo com que as placas baseadas no i820 acabassem sendo mais
caras e mais lentas que as baseadas no i815.

Estas placas acabaram tendo um triste fim, pois poucos meses depois do
lançamento foi descoberto um bug no chip MTH, que causava instabilidade e
corrupção dos dados gravados na memória, um problema perigoso,
considerando que os micros baseados no i820 eram predominantemente
destinados a estações de trabalho e outras aplicações "sérias".

A Intel acabou sendo obrigada a descontinuar o i820 e fazer um recall de todas
as placas vendidas, substituindo-as por placas i820 sem o MTH,
acompanhadas de um módulo de 128 MB de memória Rambus, o que
representou um prejuízo de mais de 250 milhões.

A saga continuou com o i840, um chipset destinado a estações de trabalho que
utilizava dois canais separados de acesso à memória (similar às placas dual-
channel atuais), onde eram acessados dois RIMM simultaneamente, o que
resultava num barramento teórico de 3.2 GB/s.

Ao contrário do que seria de se esperar, o barramento mais largo de acesso à
memória não resultava num ganho considerável de desempenho, pois apesar
do barramento mais largo, o tempo de latência dos módulos de memória
Rambus era maior, o que acabava equilibrando as coisas.

Por ser um chipset caro, o i840 foi utilizado apenas num pequeno número de
placas. Além de gastar mais com a placa-mãe, era necessário pagar 3, ou até
4 vezes mais caro pelos módulos de memória Rambus, tudo isso em troca de
um ganho marginal de desempenho.

Chipsets da VIA

Com o recall do i820 e o fracasso de vendas do i840, a Intel acabou ficando
numa posição muito vulnerável, já que o único chipset "utilizável" continuava
sendo o antigo i815, com a pesada limitação dos 512 MB. Isso abriu espaço
para o crescimento da VIA, que oferecia os chipsets Apollo Pro 133 e 133A.

Como o nome sugere, o Apollo Pro 133 oferecia suporte oficial aos
processadores Pentium III com bus de 133 MHz. Ele ganhou também suporte a
até 1.5 GB de memória RAM (contra 1 GB do antigo VIA Apollo Pro). Note que
com relação ao volume de memória RAM suportada, os chipsets da VIA para
placas slot 1 e soquete 370 estavam sempre bem à frente dos Intel, o que fazia
com que eles fossem preferidos por muitos.

Comparado ao i815, ele oferecia vários recursos interessantes, como a
possibilidade de ajustar a freqüência da memória RAM de forma independente
do FSB. Isso permitia que a memória trabalhasse a 133, mesmo ao utilizar um

                                                                          561
processador antigo, ou mesmo que fossem aproveitados módulos PC-66 de um
upgrade anterior, mesmo ao usar um processador com FSB de 100 MHz. Este
recurso era configurado através das opções "FSB + 33MHz" e "FSB – 33MHz"
encontradas no Setup das placas baseadas no Apollo 133.

Esta é uma Soyo 6BA133, uma placa mini-ATX bastante popular na época,
baseada no Apollo Pro 133. Ela possui 5 slots PCI, dois slots ISA e um slot
AGP 2X, sem nenhum periférico onboard. O quinto slot PCI tem o espaço
compartilhado com o primeiro ISA, de forma de você pode utilizar apenas um
dos dois. Embora seja uma placa slot 1, esta placa permite o uso de
processadores Celeron e Pentium III Coppermine soquete 370 usando um
adaptador. Com um BIOS atualizado, ela suporta toda a família Pentium III:




               Soyo 6VBA133, baseada no VIA Apollo Pro 133

Considerando que ela suporta até 1.5 GB de memória SDRAM (3 módulos de
512 MB), um micro baseado nela poderia prestar bons serviços mesmo nos
dias de hoje. O principal desafio seria encontrar alguma placa 3D relativamente
atual que fosse compatível com o antiquado slot AGP 2X e pudesse funcionar
dentro das limitações de alimentação elétrica da placa.

Na época, era comum utilizar um Celeron 600 em overclock para 900 MHz
(feito aumentando a freqüência do FSB de 66 para 100 MHz através do setup).
Por ser baseado no core Coppermine, o Celeron 600 suportava overclocks
muito grandes, por isso era bastante popular entre o público entusiasta.

Assim como outras placas da Soyo e Abit fabricadas na época, a 6VBA133
possuía problemas de durabilidade relacionados aos capacitores eletrolíticos,
de forma que é relativamente raro encontrar uma que ainda funcione hoje em


                                                                           562
dia. Esta placa da foto, por exemplo, apresentou problemas e foi consertada
com a substituição dos capacitores.

Voltando ao tema principal, as únicas diferenças entre o Apollo Pro 133 e o
133A diziam respeito ao slot AGP e à quantidade de memória suportada. O
Apollo Pro 133 "normal" traz uma porta AGP 2X, enquanto o 133A traz uma
porta AGP 4x e, enquanto o Apollo 133 suporta 1.5 GB de memória, o Apollo
133 suporta 4 GB completos. Ambos oferecem duas controladoras USB,
totalizando 4 portas, assim como no i815E.

Embora seja mais rápido que o i820+MTH, o Apollo Pro 133A perdia por uma
pequena margem para o i815 em velocidade de acesso à memória e também
com relação ao desempenho do barramento AGP. Assim como o i440BX, ele
ainda utilizava o barramento PCI como meio de comunicação entre a ponte
norte e ponte sul, ao invés de implementar um barramento dedicado, como os
chipsets Intel da série 800, o que causava mais uma pequena perda de
desempenho em relação aos micros baseados no i815.

Entretanto, como vimos, ele oferecia suporte a um volume brutalmente maior
de memória RAM, o que era uma grande vantagem. Ele também oferecia a
ponte PCI-ISA, de forma que muitas placas baseadas nele traziam um ou dois
slots ISA, o que era visto como uma vantagem por muitos, já que permitia
aproveitar modems e placas de som antigos. Completando, ele era um chipset
mais barato e oferecia mais opções de overclock, o que fez com que fosse
bastante popular.

Existiu ainda uma versão do Apollo Pro 133 com vídeo integrado, o VIA Apollo
Pro PM133, que trazia um chipset de vídeo ProSavage integrado. Embora
oferecesse um slot AGP 4x (como o 133A), ele oferecia suporte a apenas 1.5
GB de memória RAM (como o Apollo Pro 133 antigo).

A placa da foto a seguir é uma Asus P3V4X, uma placa baseada no VIA Apollo
Pro 133A lançada no final de 1999, que foi também bastante popular na época.
Ela inclui um slot AGP 4x universal, 6 slots PCI e um único slot ISA, que dividia
a baia do gabinete com o último slot PCI:




                                                                             563
Asus P3V4X, baseada no Apollo Pro 133A

O VIA Apollo Pro 133 era um concorrente direto do i440BX, justamente por isso
ele perdia para o i815 em diversos quesitos, já que tecnicamente ele estava
uma geração à frente.

Aproveitando o vácuo deixado pelo fiasco do i820, a VIA lançou em seguida o
Apollo Pro 266, introduzindo o suporte a memórias DDR. Hoje em dia, parece
óbvio que a Intel fez uma grande burrada apoiando as memórias Rambus,
enquanto a VIA fez a coisa certa apostando nas memórias DDR. Mas, na
época ainda não estava claro qual dos dois padrões prevaleceria, de forma que
cada um dois dois fabricantes fez sua aposta. O erro da Intel foi não ter criado
um "plano B" para o caso da aposta inicial dar errado.

A partir do Apollo Pro 266 a VIA passou a utilizar o V-Link, um barramento
dedicado de 266 MB/s para interligar a porte norte e sul do chipset, eliminando
o uso do barramento PCI. O V-Link é estranhamente similar ao AHA usado
pela Intel nos chipsets da série 800: ambos são barramentos de 8 bits, que
operam a 66 MHz, realizando 4 transferências por ciclo.

Ao contrário dos processadores atuais, o Pentium III ainda não era capaz de
extrair muito benefício das memórias DDR, já que o processador ainda operava
a baixas freqüências de clock e possuía um IPC (o número de instruções
processadas por ciclo) também relativamente baixo. A migração para as
memórias DDR e a adoção do V-Link melhorou o desempenho do Apollo Pro
266 em relação ao 133, mas ele ainda perdia para o i815 (por uma pequena
margem) na maioria das aplicações. De qualquer forma, ele acabou se
revelando uma plataforma muito mais desejável, já que oferecia suporte a até 4
GB de RAM.




                                                                            564
Chipsets da SiS

Outro chipset muito popular foi o SiS 630, utilizado sobretudo nas placas mais
baratas. Ele não era exatamente o que podemos chamar de "produto de alta
qualidade", mas era barato e além do vídeo onboard (SiS 305), ele incluía som
e rede onboard e suporte a modems AMR, o que o tornava uma solução
interessante para as placas "tudo onboard".

A versão original do SiS 630, assim como o 630E, incluía portas IDE ATA/66,
mas as versões posteriores (630ET, 630S e 630ST) incorporaram interfaces
ATA/100. Todas as versões suportam AGP 4x, utilizado tanto pelo chipset de
vídeo onboard quanto por uma placa AGP offboard.

Uma curiosidade é que o SiS 630 era uma solução single chip, onde a ponte
norte e ponte sul do chipset eram integradas num único encapsulamento,
ligadas internamente através do barramento PCI. Este design barateia a
produção do chipset, mas dificulta a produção de placas com 7 slots, já que a
posição central do chipset faz com que as trilhas se tornem muito longas. Em
parte devido a isso e em parte devido a ele ser destinado a placas de baixo
custo, quase todas as placas baseadas no SiS 630 ofereciam apenas 3 ou 4
slots, sendo 1 AGP e 3 PCI, ou mesmo 3 PCI e 1 AMR, sem o AGP.

Mais adiante, a SiS atualizou o projeto, incluindo suporte a memórias DDR.
Surgiu então o SiS 635, que continuou sendo usado em um grande volume de
placas de baixo custo, até o final da era Pentium III.

Tanto o SiS 630 quanto o SiS 635 ofereciam suporte a até 3 GB de memória (3
módulos de até 1 GB), mas na prática o máximo utilizável era 2 GB, pois ou as
placas traziam apenas 2 slots de memória, ou não funcionavam estavelmente
quando eram usados 3 módulos simultaneamente.

Muitas das placas, sobretudo modelos da PC-Chips, possuíam 4 slots de
memória, onde 2 deles permitiam o uso de memórias DDR e os outros 2 de
módulos de memória SDRAM antigos (você escolhia qual tipo utilizar, mas não
podia misturar módulos SDR e DDR). Esta possibilidade era oferecida pelo
chipset, que oferecia suporte a ambos os tipos de memória.

Existia ainda a possibilidade (para o fabricante) de incluir até 32 MB de
memória de vídeo dedicada, o que melhorava o desempenho do vídeo e
evitava o uso de memória compartilhada. Algumas placas chegaram realmente
a utilizar esta possibilidade, como a ECS 635-M (que trazia 16 MB).

Chipsets para o Pentium 4 (soquete 423 e soquete 478)

Era uma vez um chipset chamado i440BX, um chipset originalmente destinado
aos processadores Pentium II com bus de 100 MHz, mas que se revelou tão
robusto que continuou sendo utilizado em vários modelos de placas-mãe para
Pentium III, incluindo os modelos de 133 MHz. Algumas placas, como as Abit
BX6 e BH6 baseadas no i440BX, fizeram história pelo seu desempenho e pelas
possibilidades de overclock.

                                                                          565
Depois do i440BX a Intel lançou a série 800, que trouxe uma nova arquitetura e
o uso do AHA, um barramento rápido utilizado para interligar a ponte norte e
ponte sul do chipset, evitando o uso do já saturado barramento PCI. Tivemos o
i810, o i815 e o i815E, destinados aos processadores Pentium III; o malfadado
i820, a primeira tentativa de lançar um chipset com suporte à memória Rambus
e o i840, destinado a máquinas de alto desempenho.

Depois surgiram os chipsets para o Pentium 4. As versões iniciais do Pentium 4
utilizavam o soquete 423, que foi rapidamente substituído pelo soquete 478,
introduzido com o lançamento do Pentium 4 com core Northwood. Apesar de
diferentes fisicamente, os dois soquetes são muito similares eletricamente, de
forma que compartilham a mesma linha de chipsets, composta pelos modelos
atualizados da série Intel 800, além de chipsets da SiS, VIA, ATI e Ali.

Chipsets da Intel

O primeiro chipset Intel para o Pentium 4 foi o i850, que no início encontrou
uma grande resistência devido ao custo dos módulos de memória Rambus. Ele
foi sucedido pelo i845 e pelo i845E, uma dupla de chipsets de baixo custo que
utilizam, respectivamente, memórias SDRAM comuns e memórias DDR.

O i845 teve uma grande sobrevida, resistindo (em suas diversas encarnações)
até 2003, quando foi substituído pelas diferentes versões do i865 e pelo i875,
que encerrou a era das placas soquete 478, dando lugar aos chipsets da série
Intel 900, utilizados pelas placas soquete 775.

Todos os chipsets da série 800 utilizam a mesma divisão básica. A ponte norte
do chipset é o "Memory Controller Hub", ou simplesmente MCH, que inclui o
controlador de acesso à memória RAM, o chipset de vídeo integrado e o
barramento de comunicação com o processador. A Intel utiliza uma arquitetura
semimodular no MCH, o que permite adicionar ou retirar componentes sem
necessidade de fazer grandes modificações em outras partes do chip. É
possível, por exemplo, lançar uma versão DDR do chipset simplesmente
substituindo o controlador de memória, ou lançar uma versão sem vídeo
integrado simplesmente retirando (ou desativando) o bloco responsável. Nas
versões com vídeo onboard, o MCH incorpora o chipset de vídeo e passa a ser
chamado de "GMCH".

A ponte sul é o "I/O Controller Hub" ou ICH, que inclui os controladores do
barramento PCI, portas USB, IDE, seriais, paralela, etc., além do chipset de
som onboard. Graças à padronização da arquitetura, os chips MCH e ICH de
diferentes gerações são intercompatíveis, permitindo que os dois projetos
sejam atualizados de forma separada, conforme necessário.

Nos chipsets para Pentium III tínhamos também o "Firmware Hub" ou FWH, um
chip de memória Flash de 4 MB, que armazena tanto o BIOS principal quanto o
BIOS do vídeo integrado. Ele deixou de ser usado nos chipsets para Pentium 4,
onde voltou a ser usado o design tradicional, onde o chipset é composto pelos
dois chips principais e o chip do BIOS armazena apenas o BIOS propriamente
dito.

                                                                          566
Do ponto de vista técnico, o i850 era uma opção interessante, pois utilizava
simultaneamente dois módulos RIMM, oferecendo (a 800 MHz) um barramento
teórico de 3.2 GB/s. As placas baseadas nele possuem sempre 4 slots de
memória e é preciso utilizar os módulos RIMM em pares, sempre instalando
terminadores nos slots de memória não usados:




Mesmo considerando que os módulos de memória Rambus possuem um
tempo de latência mais alto, ainda sobra um ganho respeitável. Isso fez com
que o i850E fosse o chipset mais rápido dentro da safra inicial, freqüentemente
superando i845 por uma margem de quase 10%. Apesar disso, ele obteve uma
baixa aceitação devido ao custo dos módulos RIMM e acabou sendo
descontinuado, em favor dos chipsets com suporte a memórias DDR. A Intel
errou grosseiramente ao tentar impor esta arquitetura como padrão, oferecendo
durante vários meses apenas o i850. Isso literalmente "congelou" a adoção
inicial do Pentium 4, até que foi lançado o i845, que, junto com os chipsets da
SiS e VIA, finalmente trouxe suporte às memórias DDR.

Em 2002 foi lançado o i850E, que adicionou o suporte ao barramento de 533
MHz (4x 133 MHz) utilizado pela segunda safra de processadores. Com
exceção desse detalhe, o i850 e o i850E eram idênticos, oferecendo suporte a
2 GB de memória e suporte a AGP 4x. Ambos utilizavam o chip ICH2 como
ponte sul, que incluía duas interfaces ATA-100, mas ainda sem suporte a SATA
ou USB 2.0.

Continuando, temos o i845, que, apesar do nome, foi lançado apenas em
setembro de 2001, dez meses depois do i850. O número inferior no nome
serve mais para indicar a "posição hierárquica" do i845, como um chipset de
baixo custo.

A versão inicial do i845 utilizava módulos de memória SDRAM PC-133, o que
fazia com que seu desempenho fosse inferior ao do i850. Apesar disso, o baixo
custo dos módulos de memória acabou fazendo com que ele fosse mais
popular que o irmão mais velho. Em maio de 2002 foi lançado o i845E, que
trouxe o suporte a memórias DDR e aos processadores com bus de 533 MHz
(4x 133), o que equilibrou a balança.

A maioria das placas baseadas no i845E também suportam o uso de módulos
de memória DDR 333 (166 MHz). Neste caso o barramento com a memória


                                                                           567
operava de forma assíncrona, com o FSB a 133 MHz, realizando 4
transferências por ciclo.

Assim como o i850 e o i850E, ambos oferecem suporte a até 2 GB de memória
e AGP 4x, mas diferem no chip ICH usado. Enquanto o i845 ainda utiliza o
ICH2, o mesmo utilizado no i850, o i845E passou a utilizar o ICH4, que inclui
suporte a USB 2.0 (6 portas) e também uma interface de rede embutida.

Na foto a seguir temos uma ECS P4IBAD, uma placa de médio custo baseada
no i845E, lançada no início de 2002. Ela oferecia um slot AGP 4x (sem vídeo
onboard) e suportava dois módulos DDR-200 ou DDR-266 de até 1 GB cada
um. Veja que além das duas portas IDE ATA/100, ela possuía os pontos de
contatos para duas portas IDE adicionais. Isso acontecia por que ECS
fabricava também uma versão da placa com uma controladora RAID embutida,
onde os contatos vagos eram usados para a instalação do chip controlador e
das duas portas adicionais:




                      ECS P4IBAD, baseada no i845E

Pouco depois, em julho de 2002, foi lançado o i845G, que trouxe como
novidade a volta do chipset de vídeo integrado, uma atualização do i752,
utilizado nos chipsets i810 e i815, batizado de "Intel Extreme Graphics".

Apesar do nome, ele era uma solução bastante modesta, desenvolvido com o
objetivo de ser simples e barato de se produzir e não de ser um campeão de
desempenho. Todos os chipsets de vídeo integrado lançados pela Intel desde
então seguem esta linha básica: são soluções de baixo custo destinadas a
oferecer recursos básicos de aceleração 3D para usuários domésticos e

                                                                          568
empresas, deixando que o público entusiasta, que procura uma solução de
ponta, substitua o vídeo onboard por uma placa 3D offboard.

Tanto a nVidia quanto a ATI se aproveitaram desta característica para lançar
chipsets de vídeo integrado mais poderosos e com isso ganhar uma vantagem
competitiva, sobretudo nos notebooks, onde, na grande maioria dos casos, não
é possível atualizar o vídeo.

Voltando ao i845G, o "Intel Extreme Graphics" era um chipset de vídeo
bastante simples, com apenas um pipeline de renderização (operando a 200
MHz), sem suporte a T&L ou suporte a pipelines programáveis. Só para efeito
de comparação, uma simples GeForce 2 MX possui dois pipelines, além de
contar com memória de vídeo dedicada.

Para tentar reduzir a diferença, a Intel implementou uma série de otimizações.
Em primeiro lugar vem a capacidade de processar até 4 texturas por vez, o que
diminui o número de aplicações e conseqüentemente o número de leituras
necessárias para montar cada quadro. Em seguida temos o IMMT (Intelligent
Memory Manager Technology) que divide a imagem em pequenos blocos,
atualizados separadamente. Isso permite utilizar o pequeno cache incluído no
chipset de vídeo de forma mais eficiente, permitindo que ele armazene a maior
parte dos triângulos e das cores de cada bloco ao invés de uma pequena
parcela da imagem total. Isso é coordenado por um segundo mecanismo
batizado de ZRT (Zone Rendering Technology), que organiza os dados de
cada bloco de modo que eles "caibam" dentro do cache. Este trabalho envolve
também o descarte de dados desnecessários.

Com isso, o chipset de vídeo consegue manter 29 FPS no Quake III Arena (a
1024x768 e 32 bits de cor) e 12 FPS no Unreal Tournament 2003 (FlyBy),
também a 1024x768 e com 32 bits de cor. Ou seja, ele permitia rodar a maior
parte dos games da época em resoluções mais baixas, mas ficava devendo ao
rodar games mais pesados ou ao utilizar resoluções mais altas.

O vídeo onboard sofreu outra pequena atualização com o i845GV (lançado em
outubro de 2002), onde a freqüência de operação do vídeo passou a ser de
266 MHz. Ele trouxe também o suporte a memórias DDR 333, o que trouxe
mais um ganho de desempenho incremental. A grande deficiência é que ele
era um chipset destinado a placas de baixo custo e por isso (assim como o
antigo i810) não oferecia a possibilidade de utilizar uma placa de vídeo AGP
offboard.

Junto com ele foi lançado o i845PE, uma variação destinada a placas de alto
desempenho, que vinha sem o vídeo integrado, mas em compensação oferecia
um slot AGP 4x para o uso de uma placa offboard. Na prática, os dois chipsets
eram idênticos e um ou outro recurso era desabilitado em fábrica, permitindo
que a Intel os vendesse com preços diferentes para dois segmentos diferentes
do mercado.

Este é o diagrama de blocos do i845GE, publicado pela Intel. O "Digital Video
Out" refere-se à saída DVI oferecida pelo chipset de vídeo onboard, que
acabou não sendo muito utilizada na época, já que o DVI ainda era um padrão

                                                                          569
muito recente e existiam poucos monitores compatíveis. A maior parte das
placas-mãe incluía apenas o conector VGA padrão, deixando os contatos
referentes à saída DVI desconectados.




A série i845 foi substituída pela família i865, lançada em maio de 2003. A
principal novidade foi a inclusão de um segundo controlador de memória, que,
trabalhando de forma conjunta com o primeiro, adicionou o suporte a dual-
channel, permitindo que dois módulos DDR sejam acessados
simultaneamente.

O Pentium 4 foi desenvolvido originalmente para trabalhar com memórias
Rambus, manipulando grandes volumes de dados. Devido à organização das
unidades de execução, instruções SSE2 e o design dos caches, o Pentium 4 se
beneficiava de um barramento mais largo de acesso à memória mais do que os
processadores da família Athlon, por isso o lançamento do i865 foi bastante
festejado.

O novo controlador de memória trouxe como "efeito colateral" o suporte a até 4
GB de memória, outro recurso digno de nota. Na época, micros com mais do
que 2 GB de memória ainda não eram tão comuns, mas, atualmente, com o
barateamento dos módulos de memória e o lançamento do Vista, o uso de 4
GB já está se tornando algo relativamente comum nos micros de alto
desempenho.



                                                                          570
Foi incluído ainda o suporte a AGP 8x e uma interface de rede gigabit, ligada
diretamente ao chip MCH, através do barramento CSA, uma cópia do
barramento AHA utilizado para interligar a ponte norte e sul do chipset. Com o
barramento exclusivo, a interface gigabit possuía um barramento exclusivo de
266 MB/s, rápido o suficiente para que a placa pudesse operar em modo full-
duplex, onde a placa envia e recebe dados simultaneamente, resultando em
transferências de até 2 gigabits (1 gigabit em cada direção). Na verdade a
interface de rede não foi diretamente integrada ao chipset, mas o chip era
vendido como parte do pacote:




Placas Gigabit Ethernet em versão PCI têm seu desempenho severamente
limitado e não são capazes de se beneficiar das transferências em modo full-
duplex, já que o gargalo acaba sendo o barramento PCI. Atualmente, a solução
é comprar uma placa PCI Express (já que mesmo um slot 1x oferece banda
suficiente para que a placa utilize todo o seu potencial), mas, na época, o PCI
Express ainda estava em desenvolvimento, de forma que a solução da Intel era
bastante atrativa.

Continuando, os chipsets da série i865 passaram a utilizar também o chip
ICH5, que trouxe como principal novidade a inclusão de duas interfaces SATA-
150 (além de manter as duas interfaces ATA-100) e o suporte a 8 portas USB
2.0. Percebendo a tendência dos fabricantes de placas a incluírem
controladoras RAID nas placas de alto desempenho, a Intel disponibilizou
também o chip ICH5R, que incluía uma controladora SATA RAID, tornando
desnecessário o uso de uma controladora externa.

Existiram no total 4 variações do i865, todas lançadas simultaneamente. A
versão mais básica era o i865P, que suportava apenas memórias DDR-266 e
333 e não possuía vídeo onboard. Em seguida, temos o i865PE, que inclui o
suporte a memórias DDR-400, o i865G, que traz o chipset de vídeo onboard
                                                                           571
(mantendo o slot AGP externo) e o i865GV, uma versão de baixo custo do
i865G, onde o slot AGP era desabilitado.

Em abril de 2004 foi lançado o i848P, um chipset de baixo custo, que ficou no
meio do caminho entre os antigos chipsets da série i845 e os da série i865.
Apesar de incluir suporte a AGP 8x e utilizar o chip ICH5, com o conseqüente
suporte a interfaces SATA, ele não suporta dual-channel e não inclui a rede
gigabit onboard. Ele suporta também até 2 GB de memória DDR-266, 333 ou
400 e não inclui o chipset de vídeo integrado.

Concluindo a série 800, temos o i875P (Canterwood). Ele é muito similar ao
i865PE, suportando dois módulos DDR-400 em dual-channel, oferecendo
suporte a AGP 8x e utilizando o chip ICH5 como ponte sul (com opção de
utilizar o ICH5R, que incluía duas interfaces SATA e suporte a RAID). Por ser
um chipset de alto custo, destinado a placas de alto desempenho, as placas
baseadas nele foram relativamente raras aqui no Brasil.

O i875P oferecia também suporte ao Hyper Treading, introduzido com o
lançamento do Pentium 4 com core Prescott. Como um bônus, ele oferecia
suporte a módulos de memória com ECC (populares em estações de trabalho e
servidores, devido à maior garantia contra corrompimento de dados causados
por defeitos nos módulos de memória) e oferecia o "Turbo mode", recurso que
melhorava sutilmente os tempos de acesso à memória, resultando em um
pequeno ganho de desempenho. Um detalhe é que o i875P acabou sendo
finalizado e lançado um mês antes do i865PE, que seria seu antecessor. :)




                                                                         572
Chipsets da SiS

Como de praxe, a linha de chipsets da Intel sofreu a concorrência dos chipsets
de outros fabricantes, que aproveitaram o maior custo e as limitações nos
chipsets da Intel (como a demora em adicionar suporte ao AGP 8x e as
versões "castradas" do i845 e i865, onde o barramento AGP era desabilitado)
para ganhar terreno. Além da SiS, VIA e Ali, tivemos a participação também da
ATI, que, antes da fusão com a AMD, havia conseguido conquistar um bom
espaço, sobretudo nos notebooks.

Entre os chipsets da SiS, o primeiro foi o SiS 645, um chipset destinado à
primeira geração de processadores Pentium 4, soquete 423 e 478, que incluía
suporte a 3 GB de memória RAM, AGP 4x e oferecia duas portas ATA-100,
som e rede integrados através do chip SiS 961, usado como ponte sul. Pouco
depois, foi anunciado o SiS 650, que incluía um chipset de vídeo SiS 315
onboard e o SiS 651, que incluía suporte a memórias DDR-333, bus de 533
MHz, Hyper-Threading, USB 2.0 e interfaces ATA-133.

Os três chipsets ofereciam suporte tanto a memórias SDRAM quanto memórias
DDR, mas a grande maioria dos fabricantes de placas optaram por utilizar as
DDR devido ao ganho de desempenho. O SiS 651 foi um chipset bastante
popular entre as placas de baixo custo produzidas em 2003 e 2004.

Um exemplo de placa baseada nele é a Asus P4SP-MX, uma placa soquete
478 micro-ATX, que incluía um slot AGP 4x e 3 slots PCI, além de vídeo, som e
rede onboard. Embora o chipset suportasse o uso de até 3 GB de memória, a
placa possuía apenas 2 slots, o que limitava o uso a um máximo de 2 GB (2
módulos de 1 GB cada):




                    Asus P4SP-MX, baseada no SiS 651

                                                                          573
Ao contrário dos chipsets SiS para o Pentium III e anteriores, onde ainda era
utilizado o barramento PCI, os chipsets SiS para o Pentium 4 utilizam o
MuTIOL, um barramento dedicado, para interligar as pontes norte e sul do
chipset. Ele é um barramento de 16 bits, que opera a 133 MHz, com duas
transferências por ciclo, oferecendo um barramento de dados de 533 MB/s.

A geração seguinte inclui os chipsets SiS 648, SiS 655 e SiS 661GX, que
incluem o suporte a AGP 8x e passaram a utilizar o SiS 964 como ponte sul,
chip que inclui suporte a SATA (duas portas) e RAID. Eles incluem também
uma versão atualizada do MuTIOL, onde foi dobrada a taxa de transmissão.

O SiS 655 oferece suporte a dual-channel (assim como os chipsets da série
i865 da Intel), mas não oferece vídeo onboard, enquanto o 661GX inclui um
chipset de vídeo SiS Mirage, uma versão atualizada do SiS 315. A SiS chegou
a lançar também um chipset com suporte a memórias Rambus, o SiS R658,
que foi pouco usado.

Em seguida temos os chipsets da linha FX, que incluem suporte ao bus de 800
MHz, utilizado pelo Prescott, e a memórias DDR-400. A linha inclui o SiS
648FX, SiS 655FX e o SiS 661FX, versões atualizadas dos chipsets anteriores.
O 648FX é a versão mais simples, sem vídeo onboard e sem suporte a dual-
channel, o 655FX é a versão destinada a placas de alto desempenho, com
suporte a dual-channel e a RAID, através do chip SiS 964 (usado como ponte
sul), enquanto o 661FX é a versão com vídeo onboard (e sem dual-channel).

Como de praxe, o 661FX acabou sendo o mais vendido dos três, sendo
utilizado sobretudo em placas micro ATX, com vídeo, som e rede onboard. Na
maioria dos casos ele era utilizado em conjunto com o SiS 964L, uma versão
econômica do SiS 964, que não incluía o suporte a SATA.

De uma forma geral, o desempenho destes chipsets da SiS era inferior aos da
linha 8xx da Intel. O 661FX concorria com o 845PE, que também era um
chipset de baixo custo, mas perdia por uma boa margem em diversos
aplicativos devido a deficiências nos drivers. O vídeo onboard utilizado possuía
um desempenho ruim e não possuía suporte 3D no Linux e problemas
adicionais eram adicionados pelos fabricantes de placas. Como os chipsets da
SiS eram os mais baratos, eles acabavam sendo utilizados nos projetos de
placas mais baratas, somando as deficiências dos chipsets e drivers com as
deficiências nos projetos e componentes utilizados nas placas. No final, a
economia só valia a pena em casos onde realmente não havia outra opção.

Chipsets da VIA

A VIA se envolveu em uma batalha jurídica com a Intel até abril de 2003 em
torno da licença sobre o barramento utilizado pelo Pentium 4, necessária para
a produção de chipsets. Desde o Pentium II, todos os fabricantes de chipsets
pagam royalties à Intel por cada chipset vendido. Em outras palavras, além de
lucrar com a venda dos processadores e as vendas de seus próprios chipsets,
a Intel lucra também com as vendas de chipsets dos concorrentes.


                                                                            574
A VIA contestou o pagamento da licença, mas no final acabou cedendo, já que
a pendenga judicial assustava os fabricantes de placas, que deixavam de
comprar chipsets da VIA com medo de serem processados pela Intel. Entre
2002 e 2003 a VIA chegou a vender placas sob sua própria marca, como uma
forma de tentar preservar sua participação no mercado (embora sem muito
sucesso).

O primeiro chipset VIA para o Pentium 4 foi o VIA Apollo P4X266, que
suportava memórias DDR-200 e DDR-266 (além de memórias SDRAM), até 4
GB de memória, AGP 4x e era compatível com a geração inicial de
processadores Pentium 4 e Celerons com bus de 400 MHz.

Nos anos seguintes, o P4X266 recebeu diversas atualizações. A primeira foi o
P4X266A, que trouxe melhorias no acesso à memória, seguida pelo P4M266,
que incorporou um chipset de vídeo ProSavage e finalmente o P4X266E que
trouxe suporte à segunda geração de processadores, que utilizavam bus de
533, além de passar a utilizar o chip VT8235 como ponte sul, que incluía
suporte a USB 2.0 e ATA-133.

A segunda geração é composta pelos chipsets Apollo P4X400, P4X400A e
P4X533. Como o nome sugere, os dois primeiros suportavam bus de 400 MHz,
enquanto o P4X533 é a versão atualizada, com suporte a bus de 533 MHz.
Eles utilizam uma versão atualizada do barramento V-Link (que interliga a
ponte norte e sul do chipset), que passou a trabalhar a 533 MB/s, além de
passarem a suportar memórias DDR-333 e AGP 8x.

Tanto o P4X400 quanto o P4X400A utilizam o VT8235 como ponte sul (o
mesmo chip utilizado pelo P4X266E), enquanto o P4X533 utiliza o VT8237, que
inclui duas interfaces SATA 150, com direito a RAID.

Em seguida, temos os chipsets PT800 e PM800, que incluem suporte aos
processadores Pentium 4 com core Prescott e a memórias DDR-400. Ambos
utilizam o VT8237 como ponte sul e incluem o suporte a AGP 8x e outros
recursos. A principal diferença entre os dois é que o P4M800 inclui um chipset
de vídeo VIA Unicrome Pro (sucessor do ProSavage) integrado e por isso é
mais comum em placas de baixo custo.

Chipsets da ULi

Embora menos comuns, temos também os chipsets da ULi (Antiga Ali), usados
exclusivamente em placas de baixo custo. O primeiro chipset da linha foi o
Aladdin-P4, um chipset destinado à safra inicial de processadores Pentium 4,
que suportava apenas as versões com bus de 400 MHz. Ele foi rapidamente
substituído pelos chipsets Ali M1681, Ali M1683 e M1685, que constituem a
safra mais atual.

O M1681 é a versão mais antiga, que oferece suporte aos processadores com
bus de 400 e 533 MHz, memórias DDR-400, até um máximo de 3 GB de
memória e AGP 8x. O M1683 inclui suporte aos processadores com bus de 800


                                                                          575
MHz e passou a suportar até 4 GB de memória, enquanto o M1685 inclui
suporte a memórias DDR2 e PCI Express.

Os três chipsets utilizam um barramento HyperTransport como meio de ligação
entre a ponte norte e ponte sul do chipset, sendo que o M1681 e o M1683
utilizam um link de 400 MB/s, enquanto o M1685 utiliza um link de 800 MB/s.

Existe uma certa polêmica com relação ao real ganho de utilizar barramentos
mais rápidos para interligar a ponte norte e sul do chipset. É comprovado que
utilizar um barramento rápido qualquer (seja o Intel AHA, V-Link, MuTIOL, A-
Link ou HyperTransport) oferece ganhos substanciais com relação a utilizar o
barramento PCI, como era feito nos chipsets antigos, pelo simples fato do
barramento PCI ser realmente lento demais para acumular todas as
transferências de dados das portas IDE e SATA, rede, som e todos os demais
componentes onboard, além de toda a comunicação interna do chipset.

Somando as taxas máximas de transferência das duas interfaces IDE, duas
interfaces SATA e todos os demais periféricos integrados, que (com exceção
da rede gigabit utilizada nos chipsets Intel da série i865) são todos integrados à
ponte sul do chipset, você obteria algum valor elevado, próximo da marca de 1
GB/s. Entretanto, não existe situação prática onde todas as interfaces sejam
utilizadas simultaneamente. Para isso, seria necessário que você tivesse
instalados 8 HDs topo de linha (4 IDE e 4 SATA) e escrevesse algum tipo de
programa de benchmark que utilizasse todos os HDs, rede e som
simultaneamente.

Na prática, é raro que a soma do barramento utilizado pelos componentes
integrados à ponte sul do chipset ultrapasse a marca dos 200 MB/s em um
dado momento. Os fabricantes atualizam o barramento de interligação entre os
dois chips conforme novas tecnologias ficam disponíveis e, na medida do
possível, tentam utilizar isso como ferramenta de marketing, mas, na prática,
migrar de um barramento HyperTransport de 800 MB/s para um de 1600 MB/s,
por exemplo, não traz nenhum ganho significativo de desempenho nessa
situação específica, já que o excesso de banda simplesmente não é utilizado.

Chipsets da ATI

Antes da aquisição pela AMD, a ATI lançou duas famílias de chipsets para o
Pentium 4 (todos com vídeo integrado), que se tornaram populares sobretudo
nos notebooks de baixo custo. A primeira família é composta pelos chipsets
Radeon 9000/PRO e 9100/PRO, que oferecem suporte a bus de 400, 533 e
800 MHz, suporte a DDR-400 e AGP 8x, além de trazerem integrado um
chipset de vídeo Radeon 9200.

A linha seguinte é composta pelos chipsets Radeon Xpress 200 RS400 e
Xpress 200 RS410, que incluem suporte a memórias DDR2 (sem abandonar o
suporte às DDR convencionais), trazem um chipset de vídeo Radeon X300 e
passaram a utilizar um barramento HyperTransport de 800 MB/s para interligar
as pontes norte e sul do chipset, substituindo o barramento A-Link (de 266
MB/s) utilizado nos chipsets da série 9000.

                                                                              576
Tanto o RS400 quanto o RS410 não incluem suporte a AGP, que foi substituído
pelo barramento PCI Express. O RS400 é uma solução de baixo custo, que
não permite o uso de placas 3D PCI Express offboard, enquanto o RS410
oferece a possibilidade de usar um slot PCI Express 16x.

De uma forma geral, os chipsets da ATI para o Pentium 4 foram bons produtos,
superiores em alguns aspectos às soluções da SiS e VIA. Entretanto, depois
que a ATI foi adquirida pela AMD, a licença de uso do barramento foi revogada
pela Intel e toda a linha de chipsets para processadores Pentium 4 e Core foi
abandonada. É improvável que a ATI (agora AMD/ATI) volte a produzir chipsets
para processadores Intel, de forma que cito-os aqui mais pela sua importância
histórica.

Chipsets para o Athlon, Duron e Sempron (soquete A)

Por trás de todo grande processador existe sempre um grande chipset. De
pouco adianta um processador rápido espetado em uma placa-mãe instável, ou
que careça de recursos básicos.

Até o K6-3, a AMD não precisava se preocupar em criar uma plataforma para
seus processadores, pois eles simplesmente utilizavam as mesmas placas
usadas pelos processadores Intel. Uma das boas coisas desta época é que
você podia simplesmente escolher o processador mais rápido ou mais barato,
sem se preocupar com os prós e contras das placas para ele.

Com o Pentium II, a Intel mudou as regras do jogo, passando a utilizar um
barramento proprietário, o GTL+. Outros fabricantes, interessados em
desenvolver processadores ou chipset compatíveis precisavam pagar royalties
à Intel e jogar conforme as regras definidas por eles. Como resposta, a AMD
adotou o uso do barramento EV6 a partir do Athlon, o que causou o "racha" da
plataforma PC. Além das mudanças introduzidas juntamente com novas
famílias de processadores, passamos a ter placas para processadores Intel e
placas para processadores AMD.

O barramento EV6 realiza duas transferências por ciclo de forma que, ao
operar a 100 MHz, temos uma freqüência efetiva de 200 MHz, contra as 4
transferências por ciclo do barramento utilizado pelo Pentium 4. Apesar dessa
desvantagem inicial, o EV6 oferece a vantagem de ser um barramento
dedicado, onde cada processador possui uma ligação própria com o chipset.
Além de ajudar nas placas com dois processadores em SMP, esta
característica passou a fazer diferença com o lançamento dos processadores
dual-core.

Chipsets da AMD

O problema em possuir uma plataforma própria é que, além de desenvolver os
processadores, se torna necessário coordenar o desenvolvimento da
plataforma, incentivando outros fabricantes a desenvolver chipsets, fabricar
placas e assim por diante.


                                                                          577
A AMD iniciou então o desenvolvimento de uma linha de chipsets, além de
desenvolver um conjunto de placas de referência, projetos de placas-mãe que
podem ser usados pelos fabricantes interessados. O principal objetivo não era
realmente entrar para o ramo de chipsets, que na época estava fora das
pretensões da AMD, mas sim estimular os demais fabricantes a desenvolverem
produtos para a plataforma, quebrando a hegemonia da Intel.

O primeiro foi o AMD 750 (Irongate), o primeiro chipset para o Athlon. Ele era
um projeto clássico, composto pelos chips AMD 751 (a ponte norte) e AMD 756
(a ponte sul), que eram interligados através do barramento PCI, assim como no
Intel 440BX. O chipset suportava interfaces IDE ATA-66, AGP 2x e utilizava
memórias SDRAM.

A falta de suporte a AGP 4x, além de alguns problemas de estabilidade,
tornaram o AMD 750 uma alternativa um tanto quanto inadequada. Como
disse, a idéia do AMD 750 não era ser uma plataforma definitiva, mas sim
servir como um ponto de partida. A primeira variação usada pelos fabricantes
de placas-mãe foi combinar a porte norte do AMD 750 com a Ponte sul do VIA
Apollo 133, criando uma espécie de solução híbrida, que combinou os recursos
do AMD 750 com o suporte a até 4 portas USB e a slots AMR. Exemplos de
placas que adotaram esta solução mista são a Asus K7M e a FIC SD11.

A K7M foi um caso bastante curioso. Apesar de ser fabricada pela Asus, ela
era vendida em uma caixa branca, sem nenhuma menção à marca no manual
ou no CD de drivers. Até hoje não é possível encontrar qualquer referência a
ela no site da Asus. Existem várias possíveis explicações para a história, que
vão desde receio de represálias por parte da Intel, até medo de associar à
marca a uma plataforma ainda incipiente.

De qualquer forma, a K7M foi uma boa placa dentro das limitações do chipset.
Ela era uma placa full-ATX típica, com 1 slot AGP, 5 slots PCI, um slot ISA
(compartilhado com o último PCI), além de som onboard e um slot AMR para a
conexão de um modem, ambos cortesia do chip VIA 686A, usado como ponte
sul:




       Asus K7M, a placa "clandestina" da Asus, baseada no AMD 750

                                                                          578
Ao contrário do que tivemos com o Pentium III e Celeron, onde era possível
utilizar um adaptador de 20 reais para instalar um processador soquete 370 em
uma placa slot 1, não chegaram a ser fabricados adaptadores que permitissem
instalar processadores soquete A em placas slot A (embora fossem
tecnicamente possíveis), o que abreviou a vida útil das placas slot A, limitando
seu uso à primeira leva de processadores Athlon.

O próximo da lista foi o AMD 760, que trouxe o suporte ao barramento EV6
266, que nada mais é do que uma versão atualizada do barramento original,
capaz de operar a 133 MHz (mantendo as duas transferências por ciclo), além
do suporte a memórias DDR. Ele incluiu também o suporte a AGP 4x e
interfaces ATA-100.

Inicialmente, existiam planos para lançar um terceiro chipset, o AMD 770, que
traria suporte a multiprocessamento e seria utilizado pelo AMD Mustang, uma
versão do Athlon destinada a servidores, com mais cache L2. A promessa
acabou não se materializando e no lugar do 770 foi lançado o AMD 760MP,
uma versão atualizada do 760, que trazia suporte a multiprocessamento. O
próprio Mustang acabou engavetado, dando lugar ao Athlon MP, uma versão
do Athlon Palomino com suporte a SMP.

O 760MP fez um relativo sucesso, sendo utilizado em diversas placas
destinadas a servidores e workstations, incluindo a Tyan Tiger MPX. Um
problema na controladora USB que passou despercebido até que o chipset já
estivesse em produção fez com que toda a safra inicial de placas fossem
vendidas em conjunto com uma placa USB externa, com as portas USB
onboard desativadas no setup.

Chipsets da VIA

Mantendo sua tradição de chipsets alternativos, a VIA entrou no mercado de
chipsets para o Athlon com o KX133, lançado em janeiro de 2000, quase 6
meses após o lançamento do Athlon e do AMD 750. O termo "alternativo" neste
caso é apenas força do hábito, já que o KX133 (e seus sucessores) acabou se
tornando o chipset dominante para a plataforma, substituindo rapidamente o
AMD 750 e o 760. Apenas o AMD 760MP foi capaz de esboçar reação,
mantendo sua posição entre as placas com suporte a SMP durante algum
tempo.

Em termos de recursos, o KX133 era bem semelhante ao VIA Apollo 133 (para
Pentium III), inclusive ambos os chipsets utilizam a mesma ponte sul, o chip
VT82C686A (ou simplesmente 686A), e utilizam o barramento PCI como
barramento de comunicação. O KX133 inclui suporte a AGP 4x, assim como o
AMD 760, mas em compensação ainda não inclui suporte a memórias DDR,
ficando limitado às memórias SDRAM PC-133, que na época ainda eram mais
baratas. Ele suporta 4 módulos, até um máximo de 2 GB.

Assim como no Apollo 133, o KX133 permitia que a freqüência da memória
fosse ajustada de forma assíncrona com a freqüência do FSB, o que permitia
manter as memórias operando a 133 MHz, mesmo ao utilizar as versões do
Athlon com bus de 200 MHz (100 MHz com duas transferências por ciclo).

                                                                            579
Combinadas com mais algumas otimizações, essa característica fazia com que
o KX133 fosse sensivelmente mais rápido que o AMD 750, chegando a
competir com o AMD 760 (que já utilizava memórias DDR) em diversas
aplicações.

Por utilizar o mesmo chip 686A como ponte sul, o KX133 não trouxe nenhuma
novidade com relação aos demais barramentos. Ele continuou oferecendo 4
portas USB, interfaces ATA-66, som onboard (e a possibilidade de adicionar
um modem, através de uma placa AMR), além de conservar o suporte a slots
ISA.

Comparado com os chipsets para processadores Intel da época, o KX133 era
um chipset mediano. Assim como em outros chipsets VIA, seu trunfo era o
baixo custo. A ponte sul integrava vários componentes, controlador de I/O,
ponte ISA/PCI e monitor de hardware, componentes que nos chipsets Intel
precisavam ser adquiridos separadamente pelo fabricante da placa-mãe,
aumentando a diferença no custo de produção das placas. Note que, apesar de
suportar 133 MHz para a memória, o KX133 oferecia suporte apenas aos
processadores com bus de 200 MHz e, mesmo em overclock, não era capaz de
superar os 112 a 115 MHz de FSB.

Em seguida, a VIA lançou o KT133, uma versão adaptada do KX133 destinada
ao Athlon Thunderbird e ao Duron, já utilizando o soquete A. Com exceção
desse detalhe, o KT133 não é diferente do KX133, mantendo o suporte apenas
aos processadores com bus de 200 MHz. Isso foi resolvido apenas com o
lançamento do KT133A, que trouxe suporte às versões do Thunderbird que
utilizam bus de 266 MHz (ou 133 MHz com duas transferências por ciclo, como
preferir :). Ambos suportam também o chip 686B como ponte sul, que
incorporou interfaces ATA-100.

Temos aqui o diagrama de blocos do KT133, que se aplica também ao
KT133A. Veja que ele utiliza um design bastante simples, com toda a
comunicação sendo feita através do barramento PCI:




                       Diagrama de blocos do KT133



                                                                        580
Com o lançamento do Duron, a plataforma soquete A ganhou um processador
de baixo custo, o que levou a VIA a lançar o KM133, mais uma versão do
KT133, que incorporava agora um chipset de vídeo ProSavage, mantendo
todas as demais características, como o suporte a AGP e o uso de memórias
SDRAM.

Como de praxe, o desempenho do vídeo onboard em aplicativos 3D estava
longe de ser espetacular, oferecendo cerca de 70% do desempenho de uma
nVidia TnT2 M64, que era uma das placas offboard mais simples disponíveis
na época. Só para efeito de proporção, a série TnT2 foi a terceira série de
placas da nVidia, anterior às primeiras GeForce. A TnT2 M64 era uma versão
de baixo custo, que operava a um clock mais baixo e possuía um barramento
com a memória de apenas 64 bits (em vez de 128). O ProSavage era o tipo de
chipset de vídeo que você usaria para jogar o Quake III, a 640x480 e com parte
dos efeitos visuais desativados.

Em janeiro de 2001 a VIA lançou seu primeiro chipset com suporte a memórias
DDR, o KT266. O principal motivo da demora é que, ao contrário do Pentium 4,
o Athlon é um processador mais adaptado para trabalhar com um barramento
de dados mais estreito, de forma que o ganho de desempenho ao migrar para
as memórias DDR era relativamente pequeno, pouco superior a 10%. A VIA
simplesmente esperou que os preços dos módulos DDR caíssem até que a
diferença em relação aos SDR fosse pequena. O KT266 mantém o suporte a
memórias SDR, o que permitiu o surgimento de algumas placas híbridas, com
suporte a ambos os padrões.

Assim como o Apollo Pro266, o chipset para processadores Pentium III lançado
poucos meses antes, o KT266 abandona o uso do barramento PCI para a
interligação entre a ponte norte e sul do chipset e passa a utilizar o barramento
V-Link. Com isso ele abandonou a compatibilidade com os chips 686A e 686B
e passou a utilizar o chip VT82331 como ponte sul. Com exceção da pequena
melhora no desempenho geral trazido pelo uso do V-Link, os recursos do
VT82331 e do 686B são muito similares. Ambos oferecem duas interfaces
ATA-100, 6 portas USB 1.1 e som onboard. A principal diferença é que ele
passou a integrar também um chipset de rede VIA Rhine.

Muitas das primeiras placas baseadas no KT266 possuíam problemas
relacionados ao BIOS, o que prejudicava de forma considerável o
desempenho, fazendo com que elas acabassem sendo mais lentas que as
baseadas no KT133. Atualizações de BIOS foram rapidamente disponibilizadas
pelos fabricantes, corrigindo o problema. Combinando o uso de memórias DDR
e otimizações adicionais feitas no controlador de memória, um Athlon espetado
em uma placa baseada no KT266 é de 10 a 15% mais rápido que um espetado
em uma placa da geração anterior, com memórias SDR.

Em agosto de 2001, a VIA lançou uma atualização do KT266, o KT266A, que
além de resolver de vez os problemas de performance relacionados a versões
de BIOS e erros de implementação por parte dos fabricantes de placas, trouxe
algumas melhorias incrementais no controlador de memória, que resultaram
em mais um pequeno ganho. Como não existiram outras mudanças
arquiteturais, a principal vantagem em comprar uma placa baseada no KT266A

                                                                             581
era a garantia de não precisar ficar se debatendo com atualizações de BIOS
para normalizar o desempenho da placa.

Antes de ser aposentada, a série KT266 recebeu mais duas atualizações. A
primeira foi o KM266, uma versão do KT266A que incluía um chipset de vídeo
onboard ProSavage8. A segunda foi o KT333, que incluiu suporte a bus de 333
MHz (166 MHz x 2) e suporte oficial a memórias DDR-333, sem, entretanto,
trazer novos recursos ou novas opções de ponte sul.

Na foto a seguir temos uma Gigabyte GA-7VRXP, um exemplo de placa
baseada no KT333. Ao contrário da maioria das placas baseadas no KM266,
que eram placas micro-ATX, que priorizavam o uso dos componentes onboard
ou mesmo mini-ATX, ela é uma placa full-ATX que inclui um slot AGP universal
4x e 5 slots PCI. Ela possui um total de 4 portas IDE, onde as duas portas
adicionais são cortesia do chip Promise PDC20276, um controlador RAID. As
portas USB 1.1 incluídas na ponte sul do chipset foram desativadas e
substituídas por um chip VIA 6202, mais um controlador adicional, que adiciona
suporte a 8 portas USB 2.0.

Embora o KT333 ofereça suporte a 4 GB de RAM, existe suporte a módulos de
até 1 GB. A GA-7VRXP oferece suporte a até 3 módulos, de forma que o
máximo suportado por ela são 3 GB, o que, de qualquer forma, era uma marca
muito boa para a época:




                  Gigabyte GA-7VRXP, baseada no KT333

Continuando a saga, temos os chipsets VIA KT400 e KM400. O KT400 é um
projeto sensivelmente melhorado em relação ao KT333, incluindo suporte a
AGP 8x, ATA-133 e USB 2.0. Como o nome sugere, ele oferece suporte oficial

                                                                          582
a memórias DDR-400, onde o barramento com a memória opera de forma
assíncrona, mantendo o FSB a 333 MHz. Ele utiliza também a segunda versão
do V-Link, operando agora a 533 MB/s, como barramento de comunicação
entre a ponte norte e ponte sul do chipset.

O KM400, por sua vez, é uma versão do KT400 com vídeo onboard, cortesia
do chipset VIA UniChrome, desenvolvido em parceria com a S3. Como em
outras versões, o KT400 foi tipicamente utilizado nas placas full-ATX ou mini-
ATX, destinadas a PCs offboard, enquanto o KM400 era mais utilizado em
placas micro-ATX, destinadas a PCs de baixo custo.

O KT400 e o KM400 sofreram uma forte concorrência por parte do nVidia
nForce2 que, embora um pouco mais caro, era mais rápido que o KT400
(graças ao suporte a dual-channel) e oferecia a opção de utilizar o nForce2
IGP, uma versão com um chipset de vídeo Geforce4 MX integrado, muito mais
poderoso que o VIA UniChrome do KM400. Para completar, o nForce oferecia
drivers mais maduros e melhor suporte no Linux. A combinação destas
características fez com que ele passasse a rapidamente roubar mercado da
VIA.

A VIA respondeu com o KT400A, uma versão revisada do KT400, que trouxe
um controlador de memória redesenhado, que incluía um novo mecanismo de
prefetch (responsável por adiantar o carregamento de dados nos módulos de
memória, aproveitando os ciclos livres) e um aumento dos buffers de dados
disponíveis no chipset.

Estes buffers armazenam dados carregados pelo mecanismo de prefetch, que
possuem uma grande possibilidade de serem requisitados em seguida. O
princípio é similar ao de um cache L3, mas o funcionamento é diferente, já que
o buffer é gerenciado pelo controlador de memória e o processador não tem
ciência dele. A VIA usou a marca "FastStream64" para divulgar as melhorias.
Basicamente, o KT400A levou ao limite o desempenho que era possível obter
utilizando um único módulo DDR400, reduzindo a diferença em relação ao
nForce2 com dual-channel.

Como um extra, o KT400A passou a oferecer suporte ao chip VT8237R como
ponte sul. Ele incorporava 4 interfaces SATA, com suporte a RAID 0 e 1. Como
opção de baixo custo, os fabricantes podiam utilizar o VT8235CE, que vinha
com apenas 6 portas USB (em vez de 8) e sem as interfaces SATA. Hoje em
dia parece burrice economizar alguns dólares em troca da falta de suporte a
SATA, mas em março de 2003 o cenário era um pouco diferente do atual, de
forma que os fabricantes se dividiram entre as duas opções. Junto com o
KT400A, foi lançado o KM400A, que incluía o chipset de vídeo onboard.

Antes que a plataforma soquete A fosse aposentada, em favor do soquete 754
e dos processadores com as extensões de 64 bits, a VIA lançou dois últimos
chipsets, o KT600 e o KT880. A série KM acabou ficando estagnada no
KM400A, sem novas atualizações.

O KT600 é uma versão atualizada do KT400A, que inclui suporte aos
processadores com bus de 400 MHz. Note que o suporte a memórias DDR-400

                                                                          583
já existia desde o KT400A, mas nele a memória funcionava de forma
assíncrona. A maioria das placas baseadas no KT600 utilizava o chip VT8237
ou o VT8237R (o VT8237R oferece suporte a RAID, enquanto o VT8237 não)
como ponte sul, mas chegaram a ser lançados alguns modelos de baixo custo,
com o VT8235CE, que, como vimos, não trazia interfaces SATA.

Finalmente, temos o KT880, que trouxe como novidade a adição de um
segundo controlador de memória, que possibilitou o suporte a dual-channel e o
suporte a até 8 GB de RAM. Combinado com o uso do FastStream64 (o
conjunto de otimizações incluídas no KT400A), o KT880 se tornou um
concorrente feroz do nForce2, disputando o nicho das placas de alto
desempenho. Apesar disso, ele acabou tendo uma vida útil relativamente curta,
já que chegou ao mercado no final da era soquete A.

Chipsets da SiS

Em junho de 2000 a AMD lançou a primeira versão do Duron. Na época ele era
quase uma pechincha, pois oferecia cerca de 90% do desempenho de um
Athlon Thunderbird do mesmo clock por quase um terço do preço e ainda por
cima suportava overclocks generosos, com a versão de 600 MHz suportando
trabalhar a 800 MHz ou mais.

O maior obstáculo à popularização do Duron nos primeiros meses não era a
performance do processador, mas sim a carência de chipsets com vídeo
onboard. O Celeron contava com as placas baseadas no i815, mas o Duron
precisava ser combinado com placas full-ATX ou mini-ATX baseadas no VIA
KT133, que, combinadas com uma placa 3D offboard, resultavam em PCs
muito mais caros que os Celerons.

Esta carência foi suprida por três chipsets. O VIA KM133 (que já vimos), o Ali
MAGIK1 e o SiS 730S, que marcou a entrada da SiS no ramo das placas
soquete A. Ele era uma solução single-chip, onde a ponte norte e a ponte sul
foram combinadas em um único chip, com a comunicação interna ainda feita
através do barramento PCI.

Ele utilizava um chip SiS 300 como vídeo integrado. Apesar dos problemas
relacionados aos drivers, o desempenho era mediano (para a época), similar
ao i752 usado no chipset i815, destinado ao Celeron e levemente inferior ao
ProSavage, utilizado no VIA KM133.

O SiS 730S foi usado exclusivamente em placas de baixo custo, sempre no
formato micro-ATX e contando tipicamente com um slot AGP e três slots PCI.
O desempenho do controlador de memória era sensivelmente inferior ao do
VIA KM133, de forma que o desempenho geral das placas era cerca de 5%
inferior, mas, em compensação, as interfaces IDE do SiS 730S eram mais
rápidas e o chipset de vídeo incluía suporte a iDCT e motion compensation, o
que reduzia a utilização do processador ao assistir filmes em Divx e DVDs.
Este era um diferencial importante para quem tinha um Duron de baixo clock e
queria manter um filme rodando em segundo plano enquanto navegava ou
trabalhava.



                                                                          584
Completando as especificações, o SIS 730S oferecia suporte a até 1.5 GB de
memória (ainda SDRAM, sem suporte a DDR), AGP 4x, 6 portas USB 1.1,
interfaces ATA-100, som e rede onboard, além da com a opção de usar um
modem AMR. Ele oferecia suporte a bus de 133 MHz, mas o chipset não
trabalhava de forma inteiramente estável acima de 100 MHz, de forma que ele
era mais adequado aos Durons.

Na foto a seguir temos uma PC-Chips M810LR, um triste exemplo de placa de
baixo custo, baseada no SiS 730S, que acabou se tornando extremamente
popular no Brasil devido ao baixo custo.

Ela incluía as portas de expansão típicas em uma placa micro-ATX da época,
incluindo o slot AGP, dois slots PCI, o slot AMR utilizado pelo modem, dois
slots de memória, duas portas IDE, além do vídeo, som e rede onboard. Entre
os diversos problemas da placa estão a falta de estabilidade geral, deficiências
no sistema de alimentação elétrica do slot AGP, o que impedia o uso de placas
AGP mais parrudas (já que o slot AGP não era capaz de fornecer a energia
necessária), problemas de durabilidade causados pela baixa qualidade dos
capacitores, deficiência nos reguladores de tensão do processador, baixo
desempenho, problemas diversos relacionados ao BIOS e drivers e dificuldade
de encontrar e baixar atualizações para eles, ou seja, assim como outras
placas da PC-Chips, a única qualidade da M810LR era mesmo o preço.




                   PC-Chips M810LR, baseada no SiS 730S

Poucos meses depois foi lançado o SiS 735, onde o vídeo onboard foi
substituído por um controlador de memória adicional, que adicionou o suporte a
memórias DDR, possibilitando o desenvolvimento de placas com suporte a
módulos dos dois padrões (embora não fosse possível misturar módulos dos

                                                                            585
dois tipos). Ele manteve todos os demais recursos básicos, incluindo o design
baseado em um único chip e o uso do barramento PCI para toda a
comunicação interna, mas o uso de memórias DDR tornava as placas
baseadas nele consideravelmente mais rápidas.

Ao contrário do 730S, o 735 acabou não se tornando uma solução tão popular,
já que a falta do vídeo onboard dificultava seu uso em PCs de baixo custo. Ele
acabou sendo substituído pelo SiS 740, uma atualização da linha anterior (com
vídeo onboard), que voltou a ser baseado em dois chips separados,
interligados pelo barramento MuTIOL, de 533 MB/s.

O SiS 740 mantém o suporte a até 1.5 GB de memória DDR-400, bus de 266
MHz (133 MHz x 2) e mantém o chipset de vídeo SiS 300 utilizado no 730S. Os
fabricantes tinham a opção de utilizar o chip SiS961 ou o SiS962 como ponte
sul. Ambos incluíam som e rede onboard, mas o 961 oferecia interfaces ATA-
100 e 6 portas USB 1.1, enquanto o 962 incluía interfaces ATA-133 e USB 2.0.

O 740 foi sucedido pelo SiS 745, que trouxe um novo controlador de memória,
com suporte a memórias DDR-333 e a até 3 GB de memória (3 módulos de 1
GB), mas, em compensação, abandonou o suporte às memórias SDRAM, em
uma época em que a migração SDR > DDR já estava em estágio avançado e
os módulos de memória baseados nas duas tecnologias já custavam
aproximadamente o mesmo.

Apesar do aumento na freqüência da memória, ele oferecia suporte oficial
apenas aos processadores com bus de 266 MHz. Assim como em muitos dos
chipsets da VIA, a memória operava de forma assíncrona, de forma que o
sistema se beneficiava do barramento mais rápido com a memória, mesmo
sem um aumento correspondente na freqüência do processador.

Ao contrário do SiS 740, o SiS 745 voltou a utilizar um design single-chip, mas
sem o uso de vídeo onboard. Na verdade, os dois chipsets são descendentes
de linhagens separadas: o 745 é uma evolução do 735, enquanto o 740 é uma
evolução do 730S. Ele utilizava o chip SiS963 como ponte sul (integrado ao
chip principal), que mantinha os recursos do SiS962, acrescentando o suporte
a firewire. Ele mantinha também o suporte a AGP 4x, disponível nos
antecessores.

Embora o número de identificação seja mais baixo, o SiS 741 foi lançado
alguns meses depois do 745. Ele era uma atualização direta do 740 (baseado
em dois chips), incluindo agora um chip SiS Mirage como vídeo onboard, uma
solução mais rápida que o antigo SiS 300, embora padecesse dos mesmos
problemas de estabilidade relacionados aos drivers.

Ele oferecia suporte a toda a linha de processadores soquete A, incluindo os
processadores que utilizavam bus de 333 e 400 MHz, além de manter o
suporte a módulos DDR-400 e a 3 GB de memória RAM. O barramento AGP foi
atualizado, com suporte ao padrão 8x, e o chipset passou a utilizar o chip
SiS964L como ponte sul, que incluía suporte a ATA-133, 8 portas USB 2.0,
além de som e rede onboard, e suporte a modem AMR. Existia ainda a opção
de utilizar o chip SiS964, que incluía duas interfaces SATA e suporte a RAID.

                                                                           586
O 741 recebeu também uma versão de baixo custo, o SiS 741GX, que era
destinado a PCs baratos, baseados no Sempron. A limitação em relação ao
741 era que ele suportava apenas os processadores com bus de 333 MHz e
módulos DDR-333. Na verdade, o 741GX foi utilizado para vender os chips da
série 741 que (devido a imperfeições surgidas durante a fabricação) não eram
capazes de trabalhar estavelmente a 400 MHz, uma manobra similar à utilizada
pela Intel em diversos dos processadores e chipsets.

Chipsets da nVidia

A nVidia começou sua carreira de fabricante de chipsets produzindo chipsets
para o Athlon soquete A. Só a partir da série nForce 4 é que passaram a
produzir também chipsets para processadores Intel.

O principal motivo é que no caso da Intel é necessário obter a licença do
barramento e pagar royalties sobre cada chipset vendido, enquanto que a AMD
costumava ser muito mais liberal, fornecendo as especificações para os
fabricantes, de forma a incentivar a produção de chipsets para o Athlon e,
assim, fortalecer a plataforma.

O nForce nasceu como um chipset para a versão inicial do XBox. Depois de
lançado o console, a nVidia aproveitou a expertise acumulada para
desenvolver a versão inicial do nForce, destinada agora a micros PC. Ele foi o
primeiro chipset para micros PC a utilizar o sistema dual-channel (chamado
pela nVidia de "twin-bank") em conjunto com memórias DDR. A idéia central
era utilizar o acesso simultâneo a dois módulos de memória DDR-266 para
criar um barramento de 4.2 GB/s, capaz de alimentar simultaneamente o
processador e um chipset de vídeo GeForce2 integrado ao chipset.

Ou seja, além de oferecer um desempenho de primeira linha, o nForce traria
uma placa de vídeo "de verdade" integrada à ponte norte do chipset, que
poderia ser substituída por uma placa offboard mais parruda, caso desejado.

A ponte norte do nForce é chamada de IGP (Integrated Graphics Processor) e
a ponte sul de MCP (Media and Communications Processor). Ambos são
interligados por um barramento Hyper Transport de 800 MB/s. Entre as
otimizações incluídas no MCP estava o DASP (Dynamic Adaptive Speculative
Pre-Processor), um sistema de prefetch que faz com que o controlador de
memória adiante o carregamento de dados que possuem grande probabilidade
de serem requisitados pelo processador em seguida. O ganho não é tão
grande quanto pode parecer à primeira vista, mas neste caso qualquer melhora
era bem-vinda. O DASP é similar ao "FastStream64", que seria utilizado pela
VIA a partir do KT400A, porém desenvolvido antes.

Integrada ao IGP estava uma GeForce2 MX, operando a 175 MHz e
compartilhando o barramento de 4.2 GB/s oferecido pelos dois módulos de
memória com o processador (o volume de memória compartilhada era ajustado
através do setup, como de praxe). Embora o nForce oferecesse um slot AGP
4x para a conexão de uma placa de vídeo externa, a comunicação entre o
vídeo onboard e o restante do chipset era feita através de um barramento AGP
6x interno, de forma a agilizar o acesso à memória. Este AGP "6x" não foi um

                                                                          587
padrão estabelecido, mas sim um tweak desenvolvido pela nVidia para uso no
nForce.

Não era obrigatório utilizar dois módulos de memória, assim como não é
obrigatório na grande maioria dos demais chipsets com suporte a dual-channel,
mas ao utilizar um único módulo o barramento com a memória era reduzido à
metade (assim como nos chipsets dual-channel atuais), fazendo com que o
chipset perdesse boa parte do seu sex-appeal.

A ponte sul, representada pelo chip MCP, oferecia duas interfaces ATA-100, 6
portas USB 1.1, além de som, rede e também um modem onboard (que precisa
ser complementado por uma placa externa, com os circuitos analógicos), que
podia ou não ser aproveitado pelo fabricante da placa-mãe. O chipset de som
onboard era o mesmo utilizado no XBox, capaz de reproduzir 256 vozes de
áudio em 2D e até 64 vozes em 3D (com o EAX) e o de rede oferecia o
StreanThru, um conjunto de otimizações que melhorava os tempos de resposta
da rede, de forma a ajudar nos games multiplayer.

Na foto a seguir temos uma Leadtek K7n420DA, um exemplo de placa soquete
A, baseada no nForce original. Você pode notar que a placa possui 3 slots de
memória, um número ímpar. Ao popular os três, o primeiro módulo era utilizado
pelo primeiro controlador de memória, enquanto os outros dois seriam usados
pelo segundo. A memória compartilhada com a placa de vídeo era distribuída
apenas entre o primeiro e segundo módulo, de forma que o número ímpar
acabava não fazendo muita diferença. Era permitido inclusive misturar módulos
de capacidades diferentes.

O slot PCI invertido à esquerda é um slot ACR, que era utilizado pela placa
riser do modem onboard. O uso do ACR acabou não pegando, de forma que o
slot foi removido a partir da segunda geração de placas.




               Leadtek K7n420DA, baseada no nForce original


                                                                         588
Embora não tenha sido o "salvador da pátria" que muitos esperavam, o nForce
se revelou realmente mais rápido que o VIA KT266 e o SiS 735, que eram seus
concorrentes diretos (em 2001). Graças ao uso do dual-channel, o vídeo
onboard oferecia um desempenho similar ao de uma placa offboard low-end,
bastante superior às outras opções de vídeo onboard. O maior problema era
que o chipset (e conseqüentemente as placas baseadas nele) era caro, o que
limitou as vendas.

Existiram três versões do nForce. O nForce 420 era a versão "completa" com
suporte ao twin-bank e vídeo integrado. O nForce 415 era uma versão sem
vídeo integrado, um pouco mais barata e destinada a quem pretendia utilizar
uma placa offboard, enquanto o nForce 220 era a versão mais lenta, com
vídeo integrado, mas sem suporte ao twin-bank.

Em julho de 2002 a nVidia lançou o nForce2, que acabou ganhando nada
menos do que 6 versões diferentes, mantendo-se em serviço ao longo de mais
de 2 anos. O nForce 3 seria lançado apenas em 2004, já como um chipset para
o Athlon 64.

As duas versões originais eram chamadas de nForce2 IGP e nForce2 SPP (a
versão mais simples). Ambos compartilhavam o mesmo projeto básico, com
duas exceções importantes. O nForce2 SPP não vinha com o vídeo integrado e
não suportava processadores com bus de 333 MHz, enquanto o IGP vinha com
o conjunto completo.

O chipset de vídeo usado no nForce2 IGP foi atualizado para uma GeForce4
MX, operando agora a 250 MHz. Foi introduzido também o suporte a memórias
DDR-400, o que aumentou o barramento teórico ao usar dois módulos para 6.3
GB/s, acompanhando a evolução do chipset de vídeo e dos próprios
processadores. O barramento AGP 4x/6x da versão anterior foi atualizado para
o padrão 8x, usado tanto pelo vídeo integrado quanto por uma placa offboard.

Acompanhado de dois módulos DDR-400, o vídeo onboard do nForce2 era
capaz de superar uma GeForce4 MX 420, um feito inédito para uma placa
onboard.

Com relação ao chip MCP, usado como ponte sul, existiram duas versões. O
MCP-T é a versão mais parruda, com interfaces ATA-133, 6 portas USB 2.0,
duas placas de rede 10/100 (destinadas a quem pretendia compartilhar a
conexão ou usar o PC como roteador), firewire e o nVidia APU, o mesmo
chipset de áudio usado no nForce original.

A versão mais simples era chamada simplesmente de "MCP" e contava com
um chipset de áudio mais simples, padrão AC97. Ela vinha também sem a
segunda interface de rede e sem suporte a firewire. Por ser mais barata, esta
foi a versão usada na maior parte das placas.

Além do suporte a DDR-400, o nForce2 trouxe uma versão aprimorada do
DASP, o sistema de prefetch incluído no chipset, que resultou em mais um
pequeno ganho de desempenho. Um efeito colateral curioso é que com o
aumento da taxa de transferência oferecido pelos módulos DDR-400, deixou de
existir um ganho considerável em utilizar dois módulos, a menos que você
                                                                         589
utilizasse o vídeo onboard, que se encarregava de consumir o excesso de
banda, ou seja, ao utilizar uma placa-mãe baseada no nForce2 SPP (a versão
sem vídeo onboard) fazia pouca diferença usar dois módulos de memória ou
apenas um.

Em seguida foram lançados o nForce2 400 e o nForce2 Ultra 400, que
trouxeram suporte a processadores com bus de 400 MHz. A grande diferença
entre os dois é que o nForce2 400 vinha com o suporte a dual-channel
desabilitado, enquanto o Ultra 400 era a versão completa.

Finalizando a série, foram lançados o nForce2 Ultra 400R e o nForce2 Ultra
400 Gb. Estas duas versões são, na verdade, a combinação da ponte norte do
Ultra 400 com versões aprimoradas do chip MCP (ponte sul). O Ultra 400R
vinha com suporte a SATA e RAID (mantendo os recursos anteriores),
enquanto o Ultra 400 Gb adicionava também uma interface de rede Gigabit
Ethernet.

Por estranho que possa parecer, todas estas 4 versões do nForce2 400 são
baseadas no SPP, ou seja, a versão sem vídeo onboard do nForce. Embora o
desempenho do vídeo onboard do nForce2 IGP chamasse a atenção em
relação a outros chipsets de vídeo onboard, o desempenho ainda era
considerado fraco pelos entusiastas, que preferiam investir em uma placa de
vídeo offboard.

O nForce2 IGP era um chipset relativamente caro, de forma que os chipsets
com vídeo onboard da SiS e VIA continuaram dominando o ramo de placas de
baixo custo, enquanto nas placas mais caras o nForce2 SPP, seguido pelas
diferentes versões do Ultra 400, competiam com o VIA KT400A e sucessores.

No final das contas, o nForce2 IGP acabou não encontrando o seu espaço e a
nVidia passou a concentrar os esforços em desenvolver chipsets de alto
desempenho, sem vídeo onboard, aprimorando os demais componentes do
chipset e adicionando diferenciais, como o suporte a SLI. Foi nessas condições
que sugiram os chips nForce 3 e em seguida os nForce 4, nForce 500 e nForce
600, que passaram a ser produzidos também em versão para processadores
Intel.

Chipsets para placas soquete 775

A partir de 2004, a Intel migrou rapidamente todos os processadores de alto
desempenho para o soquete 775, transformando as placas soquete 478 em
uma plataforma de baixo custo, destinada sobretudo aos Celerons. O principal
problema com a plataforma 478 é que ela é um beco sem saída em termos de
upgrade, já que não é possível atualizar para um Core 2 Duo. Apesar disso, as
placas soquete 478 se tornaram tão baratas que continuaram representando a
maior parte das vendas no Brasil ao longo de 2005 e 2006. Além das placas, o
Celeron D (baseado no core Prescott) teve seu preço drasticamente reduzido
após o lançamento do Core 2 Duo, tornando-se mais barato que os Semprons
equivalentes.




                                                                          590
As primeiras placas soquete 775 chegaram ao mercado na primeira metade de
2004, o que representa uma demora sem precedentes com relação à
popularização de uma nova plataforma para processadores Intel. O principal
motivo é que os uso do soquete 775 realmente encarece as placas e apresenta
vantagens reais apenas no caso de processadores que operam com bus de
1066 MHz ou mais, o que não é o caso dos Celerons. O principal motivo da
Intel ter permitido que a plataforma soquete 478 tivesse uma sobrevida tão
grande era conservar uma plataforma de baixo custo, que pudesse conter o
avanço dos processadores AMD.

De qualquer forma, com a popularização dos processadores baseados na
arquitetura Core, as placas soquete 478 chegaram ao fim da linha, abrindo
espaço para suas sucessoras, baseadas nos chipsets Intel da série 9xx,
juntamente com os concorrentes da nVidia, SiS e VIA.

Além de introduzirem o suporte aos processadores que utilizam o soquete 775,
os chipsets da série Intel 9xx trouxeram outra mudança radical, que foi a morte
do barramento AGP, que deu espaço ao barramento PCI Express. Embora
nem todos os chipsets da série 9xx ofereçam slots PCIe 16x para a conexão de
placas 3D offboard, nenhum deles oferece suporte a slots AGP.

Uma observação importante é que nem todas as placas soquete 775 são
compatíveis com os processadores Core 2 Duo. Toda a leva inicial de placas,
produzidas em 2004 e 2005 e também muitas das placas produzidas no início
de 2006 não são diretamente compatíveis com os processadores baseados no
core Conroe. Parte dessas placas utilizam componentes e um regulador de
tensão compatíveis e precisam apenas de um upgrade de BIOS para suportar
os processadores da nova plataforma. Mas, muitas utilizam reguladores de
tensão incompatíveis e por isso não podem ser atualizadas. Para elas, o
Pentium D é o limite.

Isso acontece porque o Core 2 Duo exige uma placa com um regulador de
tensão compatível com a especificação VRM 11, que foi finalizada apenas em
2006. Mesmo que a placa utilize um chipset compatível e um BIOS atualizado,
a questão do regulador de tensão torna-se um obstáculo intransponível. A lista
de placas incompatíveis inclui muitas placas baseadas nos chipsets i915, i925,
i945, i955 e até mesmo nos chipsets i975X, nForce 4 SLI, SiS 661FX e outros,
ou seja, inclui até mesmo placas baseadas em chipsets mais caros.




                                                                           591
Chipsets da Intel

Voltando aos chipsets, a leva inicial da série 9xx da Intel é composta pelos
chipsets da série 915 (a linha de baixo custo, usada na maior parte das placas)
e pela linha 925X, destinada às placas de alto desempenho. Todos
compartilham as mesmas opções de ponte sul, representadas pelos chips ICH6
e ICH6R. Uma das novidades em relação aos ICH anteriores é uma versão
atualizada do chipset de áudio integrado, que ganhou o suporte a streams de
24 bits e até 192kHz de definição. Ambos oferecem 4 portas RAID e 1 porta
IDE, mas o ICH6R inclui suporte a RAID.

A série 915 é a mais segmentada, composta por nada menos de 5 chipsets
(915P, 915PL, 915G, 915GV e 915GL). O 915P é um chipset dual-channel, que
oferece suporte a 4 GB de memória RAM, bus de 800 MHz, PCI Express 16x e
vem sem vídeo onboard. O 915PL é uma versão de baixo custo, que vem com
um dos controladores de memória desativados, de forma que, além de não
oferecer suporte a dual-channel, passa a suportar apenas 2 GB de memória.

Outra diferença é que o 915P oferece suporte tanto a memórias DDR-400
quanto a memórias DDR2-533 (a escolha do tipo de memória a suportar recai
sobre o fabricante da placa), enquanto o 915PL oferece suporte apenas a
memórias DDR-400.

O uso de memórias DDR2-533 não é exatamente uma vantagem em relação
às DDR-400, pois, apesar de realizarem 4 transferências por ciclo, os módulos
DDR2-533 operam a apenas 133 MHz, enquanto os DDR-400 operam a 200
MHz, realizando duas transferências por ciclo. Isso faz com que, embora levem
uma pequena vantagem em transferências seqüenciais, os módulos DDR2-533
trabalham com tempos de latência mais altos, fazendo com que, na prática,
acabem sendo mais lentos em muitas situações.

Módulos de memória DDR2 oferecem ganhos substanciais de desempenho em
relação aos DDR quando são comparados módulos da mesma freqüência. Um
módulo DDR2-800 (200 MHz) é mais rápido que um DDR-400 (também de 200
MHz) em qualquer tarefa, já que os tempos de latência de ambos (se medidos
em milissegundos) são similares e o módulo DDR2 leva vantagem por ser mais
rápido em transferências sequenciais. Mas, se compararmos módulos de
freqüências diferentes, a história muda.

Um exemplo de placa baseada no 915P é a ECS 915P-A, que temos na foto a
seguir. Ela é uma placa curiosa, pois ao mesmo tempo em que tenta se
posicionar como uma placa de alto desempenho, oferecendo um slot PCI
Express 16x e dispensando o vídeo onboard, ela oferece camadas de
compatibilidade normalmente encontradas apenas em placas de baixo custo.

A primeira delas é o fato de oferecer a opção de utilizar módulos DDR-400 ou
DDR2-533, oferecendo dois slots para cada tipo de memória. O problema é
que você não pode misturar módulos dos dois tipos, de forma que acaba com
apenas 2 slots utilizáveis. Como o 915P suporta módulos de até 1 GB, você


                                                                           592
acaba limitado a um máximo de 2 GB, seja qual for o tipo de memória
escolhido.

A segunda é a presença do slot AGP-Express, uma gambiarra feita para
permitir o uso de uma placa AGP, onde a alimentação elétrica de dois slots PCI
é combinada para criar um slot AGP. Como este slot "AGP" é ligado ao
barramento PCI, a performance de qualquer placa AGP ligada a ele é
brutalmente reduzida, já que fica limitada ao barramento compartilhado de 133
MB/s oferecido pelo PCI.

O chipset de rede Intel, que faz parte do pacote do chipset 915P, foi substituído
por um chip Realtek RTL8110S, ligado ao barramento PCI Express. Como em
outras placas atuais, a ECS 915P-A possui 4 portas SATA, mas apenas uma
interface IDE. A idéia é que você utilize HDs SATA, reservando a porta IDE
para a conexão do drive de CD/DVD. Concluindo, a placa possui também dois
slots PCI Express 1x e dois slots PCI:




                    ECS 915P-A, baseada no chipset 915P

Em seguida temos os chipsets 915G, 915GV e 915GL. Os três possuem
suporte a dual-channel e incluem um chipset de vídeo GMA 900 (Extreme
Graphics 3) integrado. O 915G é a versão "completa", que inclui os links PCI
Express necessários para criar o slot 16x e oferece suporte a memórias DDR2.
O 915GV carece do slot PCI Express 16x (ele é destinado a placas de baixo
custo, onde o vídeo integrado não seria substituído por uma placa offboard),
enquanto o 915GL abandona também a compatibilidade com memórias DDR2.


                                                                             593
Existiu ainda o 910GL, um chipset de baixo custo (pouco usado), destinado a
placas para o Celeron D. Ele utiliza um chipset de vídeo GMA 900, não oferece
o slot PCI Express 16x e ainda por cima suporta apenas o bus de 533 MHz
utilizado pelo Celeron D, abandonando a compatibilidade com os
processadores Pentium D e Pentium 4 com core Prescott. Devido a este
conjunto de desvantagens ele acabou sendo virtualmente ignorado pelos
fabricantes de placas, que preferiam utilizar os chipsets da SiS e VIA nas
placas de baixo custo.

A família 925X é composta por apenas dois chipsets, o 925X e o 925XE,
ambos lançados em 2004. Eles são chipsets mais caros, destinados a substituir
o 875P. Diferentemente dos chipsets da série 915, que suportavam tanto
memórias DDR quanto DDR2, o 925X e o 925XE suportam apenas memórias
DDR2, o que tornou a adoção de ambos um pouco mais lenta.

Ambos oferecem slots PCI Express 16X e não possuem vídeo onboard. A
diferença é que o 925X oferece suporte apenas a processadores com bus de
800 MHz, enquanto o 925XE é uma versão atualizada, que oferece suporte a
bus de 1066 MHz.

A seguir temos o diagrama de blocos do 925X. O chip MCH inclui 16 linhas PCI
Express, usadas pelo slot PCIe 16x e os dois controladores DDR2,
responsáveis pelo suporte a dual-channel.

Interligando a ponte norte e ponte sul, temos um barramento DMI, que oferece
uma banda de 2 GB/s. Ele é necessário, pois além de incluir as portas Serial-
ATA, barramento PCI, portas USB e outros dispositivos integrados, o chip ICH
disponibiliza 4 linhas PCI Express adicionais, que são utilizadas pelos slots PCI
Express 1x. Opcionalmente, uma das linhas pode ser utilizada para conectar
um chipset de rede gigabit externo, como no caso da ECS 915P-A:




                                                                             594
Diagrama de blocos do i925X

Os chipsets i915 e i925X possuem uma curiosa "proteção contra overclock"
adicionada intencionalmente pela Intel. Ao tentar aumentar a freqüência de
operação da placa em mais de 10% o mecanismo entra em ação e a placa
simplesmente reinicia sem aviso. A idéia original seria convencer o usuário de
que ele tentou realizar um overclock excessivo e assim convencê-lo a se
conformar em ficar dentro da margem de 10%. Este foi apenas mais um
exemplo de "castração voluntária" de produtos por parte da Intel.

Apesar disso, a Asus e Abit, seguidas pelos demais fabricantes, rapidamente
encontraram formas de burlar o sistema de proteção, utilizando uma série de
truques para oferecer placas soquete 775 capazes de trabalhar de forma
estável a freqüências bem acima do especificado, permitindo ajustar de forma
independente a freqüência de barramentos sensíveis (como o PCI Express).
Atualmente, praticamente todas as placas do mercado incorporam estes
mecanismos, de forma que a trava incluída nos chipsets acabou se tornando
apenas uma história curiosa.

Em 2005 foi lançada a família 945, composta pelos chipsets 945G, 945P e
945PL, que incluem suporte aos processadores Pentium D dual core lançados
na mesma época. Assim como os chipsets da série 925, os três oferecem
suporte exclusivo a memórias DDR2, com direito a dual-channel e suporte a
até 4 GB de memória e slots PCI Express 16x.

O 945G incorpora um chipset de vídeo onboard, o GMA 950 (versão levemente
atualizada do GMA 900 usado na série 915) enquanto tanto o 945P quanto o
945PL são destinados a placas sem vídeo onboard. Assim como outros
chipsets cujos nomes terminam com a letra "L", o 945PL é uma versão de

                                                                          595
baixo custo, que oferece suporte a apenas 2 módulos de memória (embora
conserve o suporte a dual-channel), até um máximo de 2 GB.

Os três chipsets são compatíveis com o ICH7, que adiciona suporte a portas
SATA 300 e aumenta o número de linhas PCI Express de 4 para 6. Existe
ainda a opção de utilizar o chip ICH7R, que inclui suporte a RAID.

Pouco depois, chegaram ao mercado os chipsets 955X e 975X. Ambos
oferecem suporte a bus de 1066 MHz e a processadores dual-core. O suporte
a dual-channel e a memórias DDR2 foi mantido e o máximo de memória
suportado foi ampliado para 8 GB (4 módulos de até 2 GB cada). Um recurso
interessante oferecido por eles (e pelos demais chipsets Intel dual-channel daí
em diante) é o Intel FlexMemory, que permite o uso do dual-channel mesmo ao
utilizar dois módulos de capacidades diferentes.

A principal diferença entre os dois reside na configuração das linhas PCI
Express disponíveis no chip MCH. O 955X suporta um único slot PCI Express
16x, enquanto o 975X oferece a opção de utilizar dois slots PCI Express 16x
(ao utilizar ambos simultaneamente, cada um fica com 8 linhas de dados), o
que permite o desenvolvimento de placas-mãe com suporte a duas placas de
vídeo ATI em modo CrossFire.

Inicialmente, era possível utilizar também placas nVidia em modo SLI, mas esta
possibilidade foi logo removida pela própria nVidia, que incluiu proteções nos
drivers para que o SLI funcionasse apenas em placas-mãe baseadas em seus
chipsets. Com a fusão da ATI e AMD, criou-se uma situação estranha, onde a
Intel dá suporte ao CrossFire, que seria o padrão do "concorrente", enquanto a
nVidia ficou isolada, permitindo que o SLI seja utilizado apenas em conjunto
com seus próprios chipsets. Com a aproximação entre a Intel e a nVidia, é
possível que esta situação mude na próxima geração de chipsets, embora por
enquanto isso seja apenas especulação.

Em 2006 foram lançados os chipsets G965, P965 e Q965, destinados aos
processadores Core 2 Duo. Os três chipsets oferecem suporte a bus de 1066
MHz e suportam até 8 GB de memória DDR2-800.

A principal diferença entre os três diz respeito ao chipset de vídeo usado. O
G965 é a versão "completa", que inclui um chipset de vídeo GMA X3000, um
projeto completamente remodelado, que oferece suporte a shaders (com
processamento via hardware), com unidades programáveis e suporte ao
DirectX 10. O Q965 inclui o GMA 3000 (sem o "X"), uma versão de baixo custo
do X3000, que utiliza uma arquitetura mais simples (similar à do GMA 950, sem
as unidades programáveis), enquanto o P965 é a versão sem vídeo onboard.

Em junho de 2007 a Intel lançou o chipset P35 (Bearlake), representante da
nova geração de chipsets para placas soquete 755, que inclui suporte a
memórias DDR3. Assim como no i915P, ele mantém suporte ao padrão
anterior, de forma que os fabricantes podem escolher entre criar placas com
suporte a memórias DDR2, DDR3, ou mesmo placas híbridas, que suportem
ambos os padrões. Entretanto, o suporte a memórias DDR regulares foi

                                                                           596
removido, já que não faria sentido arcar com os custos de oferecer suporte aos
3 padrões simultaneamente.

O P35 é o primeiro chipset a oferecer suporte oficial ao bus de 1333 MHz. Ele
passa a utilizar o chip ICH9 como ponte sul e inclui também um controlador de
memória sensivelmente aprimorado, que oferece uma melhora de 6 a 20% no
desempenho de acesso à memória, mesmo ao utilizar módulos de memória
DDR2 convencionais. O chip ICH9 oferece 6 portas SATA 300 (com suporte a
NCQ), 12 portas USB, áudio HDA e suporte ao Turbo Memory (tecnologia
Robson), que permite que o fabricante inclua uma pequena quantidade de
memória flash na placa-mãe para ser usada como cache adicional para o HD.
Existe ainda a possibilidade de usar o ICH9R (mais caro), que oferece suporte
a RAID 0, 1, 5 e 10.




                                  Intel P35

Uma observação importante é que a partir do P35 a Intel deixou de oferecer
suporte oficial aos processadores baseados na arquitetura NetBurst, ou seja, a
todos os Pentium 4, Pentium D e Celeron D, de forma a pressionar os
fabricantes a realizarem a transição para os processadores baseados na
plataforma Core o mais rápido possível.

A incompatibilidade é causada por mudanças nas especificações do regulador
de tensão e não por mudanças no barramento do processador, de forma que é
possível que alguns fabricantes decidam desenvolver placas de baixo custo
baseadas nos chipsets Intel 3x que ofereçam suporte aos processadores
soquete 775 antigos, embora isso seja improvável, já que os fabricantes
geralmente preferem seguir os padrões especificados pela Intel, para evitar
potenciais problemas de compatibilidade.

Continuando, o P35 inclui 22 linhas PCI Express, o que ainda não permite o
uso de dois slots PCI Express 16x simultaneamente. Como em chipsets
anteriores, os fabricantes podem criar placas com dois slots PCIe 16x para o
uso de duas placas ATI em modo CrossFire (ainda sem suporte a placas nVidia
em modo SLI), mas ao usar duas placas, ambos passam a operar a 8x, ou
então o primeiro continua operando a 16x, enquanto o segundo opera a 8x ou
4x.

                                                                           597
O uso de dois slots PCIe 16X "reais" torna-se possível a partir do Intel X38, um
chipset de alto desempenho, sucessor direto do 975X. Ele é o primeiro chipset
a oferecer suporte a PCI Express 2.0, onde a taxa de transferência é dobrada,
atingindo um total de 5 gigabits em cada direção, por linha, além de incluir
suporte oficial a módulos DDR3-1333 (o P35 oferece suporte oficial apenas aos
módulos DDR3-1066).

Durante a fase de desenvolvimento do X38, a Intel demonstrou o uso de placas
de referência com placas nVidia em SLI, utilizando drivers modificados,
desenvolvidos sem a participação da nVidia. Isso demonstra que a Intel
pretende oferecer o suporte a SLI em algum ponto, mesmo sem o aval da
concorrente. Mas, só o tempo poderá dizer se o suporte a SLI no X38
realmente se tornará realidade, ou se foi apenas um blefe.

Temos ainda os chipsets G33 e G35, que são as versões de baixo custo dentro
da família, sucessores dos chipsets 945G e G965. Eles também incluem
suporte a bus de 1333 MHz e a módulos DDR3, mas não oferecem suporte a
PCI Express 2.0, que é, por enquanto, uma exclusividade do X38.

A principal diferença entre eles e o P35 é a presença do chipset de vídeo
integrado. O G33 inclui o chipset Intel GMA3100, enquanto o G53 inclui o
GMA3500, uma versão bastante aperfeiçoada, que oferece suporte a DirectX
10. Um exemplo de placa baseada na nova linha de chipsets é a Asus P5K3
Deluxe, lançada em junho de 2007:




                   Asus P5K3 Deluxe, baseada no Intel P35

Esta é uma placa soquete 775, baseada no P35, com suporte a toda a linha
Core 2, incluindo os Core 2 Quad e Core 2 Extreme, além dos processadores
Pentium 4, Pentium D e Celeron soquete 775. Ela oferece suporte apenas a
módulos DDR3, com suporte a até 4 módulos de 2 GB em dual-channel.



                                                                            598
Apesar de ela incluir dois slots PCIe 16x, apenas o primeiro (em azul) é um slot
PCIe 16x real. Embora seja eletricamente compatível com as placas 16x, o
segundo slot inclui apenas 4 linhas, o que prejudica levemente o desempenho
ao utilizar duas placas.

A placa inclui também 2 slots PCIe 1x e três slots PCI. O slot usado para a
conexão da placa wireless é também ligado a uma linha PCI Express, mas o
formato e a posição são diferentes, para evitar que a placa wireless seja usada
em conjunto com placas de outros fabricantes.

Embora o P35 não inclua interfaces IDE, a P5K3 inclui uma porta ATA-133,
ligada a um controlador externo da JMicron. Este mesmo controlador inclui
também duas interfaces eSATA disponíveis no painel traseiro (bem no centro,
abaixo da porta firewire e entre as portas USB). Elas são complementadas
pelas 6 portas SATA 300 (com suporte a RAID 0, 1, 5 e 10) disponibilizadas
pelo chip ICH9R, usado como ponte sul.

Esta é uma placa dual gigabit, que inclui duas placas de rede. A configuração é
interessante, pois as duas interfaces são providas por chipset separados (um
Marvell 88E8056 e um Realtek RTL8187), onde o chip Marvell (responsável
pela primeira interface) é ligado a uma linha PCI Express, enquanto o chip
Realtek (responsável pela segunda) é ligado ao barramento PCI.

Ao contrário do que pode parecer, o chipset P35 não gera tanto calor assim
quando operando à freqüência normal, tanto que você encontra outras placas
baseadas nele com exaustores muito mais modestos. O principal objetivo dos
hot-pipes e dos dissipadores de cobre é permitir que a placa trabalhe
estavelmente a freqüências muito mais altas que as especificadas, atraindo a
atenção do público interessado em overclocks mais extremos.

Devido à preocupação com o baixo consumo elétrico, os processadores Core 2
Duo suportam overclocks surpreendentes, de forma que mesmo placas de
baixo custo incluem um conjunto relativamente completo de opções.

Na foto a seguir temos o setup de uma Gigabyte GA-P35-DS3R, configurada
para trabalhar com FSB de 505 MHz (2020 MHz de freqüência efetiva, já que
temos 4 transferências por ciclo). Apesar de ser uma placa baseada no P35,
ela utiliza memórias DDR2, por isso o multiplicador da memória (System
Memory Multiplier) está em 2.00, o que resulta em uma freqüência de 1010
MHz:




                                                                            599
Como você pode notar, tanto a tensão do processador (CPU Voltage Control)
quanto a tensão da memória (DDR2 OverVoltage Control) foram ajustados com
valores muito mais altos que o normal. O processador está trabalhando com
1.425v, ao invés de 1.312v, e a memória está trabalhando a 2.4v (com o
acréscimo dos 0.6v), ao invés de 1.8v, que seria o valor normal.

Com esta configuração, foi possível obter nada menos do que 3.535 GHz
usando um Core 2 Extreme X6800:




Utilizando um processador mais barato, como o Core 2 Duo E6300, que opera
a 1.86 GHz, com bus de 266 MHz (1.066 GHz levando em conta as 4
transferências por ciclo) e multiplicador travado em 7x, seria possível obter
facilmente 2.8 GHz, ajustando o FSB para 400 MHz e utilizando memórias
DDR2-800 (mantendo o multiplicador da memória em 2.00).




                                                                          600
Chipsets da nVidia

Em seguida temos os chipsets dos demais fabricantes. O destaque fica por
conta dos chipsets da nVidia. A notícia de que a nVidia passaria a fabricar
chipsets para processadores Intel não foi exatamente bem recebida pela
própria, enquanto que a tentativa da Intel de licenciar o padrão SLI para uso em
seus chipsets foi negada pela nVidia. Apesar disso, depois da fusão entre a
AMD e a ATI, a nVidia tem se aproximado cada vez mais da Intel, em uma
relação de amor e ódio.

Inicialmente, a nVidia era apenas um fabricante de placas 3D. Com o
lançamento do nForce, passaram a fabricar também chipsets, mas inicialmente
apenas para processadores AMD. A partir do nForce 4, todas as versões do
nForce passaram a ser produzidas em duas versões, uma para processadores
Intel e outra para processadores AMD. As duas versões são sempre diferentes,
devido à mudança no barramento utilizado e à necessidade de incluir o
controlador de memória na versão para processadores Intel. Nos
processadores AMD de 64 bits, o controlador de memória é incluído
diretamente no processador, o que simplifica muito o design do chipset.

O principal diferencial dos chipsets da nVidia em relação aos Intel e dos demais
fabricantes é o suporte a SLI, que, pelo menos até 2007, é um monopólio da
nVidia. Os chipsets Intel suportam apenas o CrossFire, enquanto os VIA e SiS
não suportam nenhum dos dois padrões.

Tudo começou com o nForce4 SLI Intel Edition, lançado em maio de 2005. Ele
era um chipset destinado ao público entusiasta, que incluía 4 portas SATA 300
(com suporte a RAID), suporte a memórias DDR2 em dual-channel, rede
gigabit e suporte a bus de 1066 MHz, um conjunto de recursos bastante
avançado para a época.

Ao contrário da versão para processadores AMD, ele seguia a divisão clássica
em ponte norte (chamada pela nVidia de SPP) e ponte sul (MCP), onde os dois
chips eram interligados através de um link HyperTransport. O SPP incluía um
total de 20 linhas PCI Express, o que permitia a criação de placas com dois
slots x16 (com 8 linhas de dados cada), para a conexão das duas placas de
vídeo em SLI e a criação de mais três slots PCIe 1x para a conexão de outros
periféricos.

Aqui temos o diagrama de blocos do chipset. Veja que, ao contrário da maioria
dos chipsets, todas as linhas PCI Express são concentradas no SPP, incluindo
as três linhas reservadas para os slots 1x:




                                                                            601
Diagrama de blocos do nForce4 SLI Intel Edition

Diferente dos chipsets Intel, onde a interface de rede gigabit é fornecida na
forma de um chip externo (o que faz com que muitos fabricantes optem por
substituí-lo por um chip mais barato, como os da Realtek e Marvell), nos
chipsets da nVidia a interface de rede é integrada ao MCP e ligada diretamente
ao barramento HyperTransport.

Como em outros chipsets da nVidia, ele incluía também o ActiveArmor, um
aplicativo de firewall que trabalha em conjunto com o driver e um sistema de
inspeção de pacotes incluído no próprio chipset de rede. Em teoria, ele é um
pouco mais seguro que firewalls for Windows, que trabalham apenas na
camada de software (Norton, ZoneAlarm e outros). Apesar disso, ele não é
usado no Linux, pois o sistema já inclui um firewall próprio, o IPtables.

O nForce4 foi posteriormente atualizado, dando origem ao nForce4 SLI X16,
versão que incluía nada menos que 40 linhas PCI Express, permitindo a
criação de dois slots PCI Express 16x "reais", ao invés de dois slots com 8
linhas cada, como na versão anterior. Mas, apesar de interessante do ponto de
vista técnico, o uso de 16 linhas para cada placa em vez de 8 não resultava em
ganhos significativos de desempenho, já que (ao contrário de muitas placas
atuais) as placas 3D da época não chegavam a saturar o barramento, mesmo a
8x.

Apesar de ser superior aos chipsets i915 e i925, que eram seus concorrentes
diretos, o nForce4 acabou sendo usado em um número relativamente pequeno
de placas, pois era um chipset caro e novo no mercado. No início de 2006 a
nVidia atualizou a linha, lançando o 570 SLI. Pouco depois, em julho de 2006,
lançou o 590 SLI, que acabou sendo vendido em quantidades limitadas.


                                                                          602
O 570 SLI é a versão "mainstream", que, assim como o nForce4 SLI, inclui 20
linhas PCI Express, que permitem o uso de um único slot 16x e mais 4 slots 1x,
ou 2 slots 8x para instalação de duas placas em SLI e mais 3 slots 1x. No caso
das placas com dois slots, o chaveamento passou a ser feito automaticamente,
via software, de forma que ao instalar uma única placa 3D, o BIOS da placa-
mãe reserva as 16 linhas para ela e, ao instalar duas, cada uma fica com 8
linhas.

O 570 SLI mantém o suporte a memórias DDR2 em dual-channel, às 4
interfaces SATA 300, suporte a RAID e à interface Gigabit Ethernet.

O 590 SLI, por sua vez, é uma versão sensivelmente aprimorada, que inclui
nada menos que 48 linhas PCI Express. Ele permite a criação de placas com
três slots para a conexão de placas de vídeo (dois deles com 16 linhas e o
terceiro com 8 linhas), onde os dois primeiros permitem a conexão de duas
placas em SLI e o terceiro permite a conexão de uma physics accelerator (uma
placa ainda bastante incomum, que executa cálculos avançados relacionados à
composição das cenas, permitindo melhorar o realismo dos games) ou de uma
placa de vídeo terciária, para o uso de monitores adicionais (é possível usar até
6 monitores, 2 em cada placa!). Sobram ainda mais 8 linhas, que podem ser
usadas por slots 1x ou 4x.




     Configuração com 3 placas de vídeo (duas em SLI) e seis monitores

O 590 SLI inclui ainda 6 interfaces SATA 300 com suporte a RAID e duas
placas de rede gigabit, completando o conjunto. Além de usar as duas
interfaces de rede para compartilhar a conexão, existe ainda a possibilidade de
combinar as duas interfaces, criando uma única interface lógica de 2 gigabits
usando o DualNet, mais um software fornecido como parte do coquetel de
drivers e utilitários. Neste caso, você usa dois cabos de rede e duas portas no
switch, mas as duas placas se comportam como se fossem uma,
compartilhando o mesmo endereço IP. No Linux você utilizaria o módulo
"bonding" do Kernel para obter o mesmo efeito (neste caso usando placas de
qualquer fabricante). Este truque de unir duas placas de rede é muito usado em
servidores de arquivos, de forma a aumentar a banda de rede do servidor.

Como o 590 SLI é um chipset muito caro, destinado a PCs de alto
desempenho, o suporte às interfaces IDE não é mais uma prioridade, por isso


                                                                             603
uma das interfaces foi sacrificada, restando apenas uma, destinada à conexão
do drive óptico.

Toda a série nForce inclui um chipset de som onboard. O nForce4 SLI utiliza
um chipset padrão AC97, enquanto o nForce5 e o nForce6 utilizam o Azalia,
um chipset HDA de alta definição.

Finalmente, temos a série nForce 600, lançada no final de 2006. Ela é
composta pelos chipsets 650i Ultra, 650i SLI e 680i SLI. Todos os chipsets
desta série suportam oficialmente bus de 1333 MHz e memórias DDR2-800,
mas se diferenciam pela quantidade de linhas PCI Express, suporte a SLI,
número de portas SATA e a presença de uma ou duas interfaces de rede.

Note que os chipsets da série nForce são destinados ao público entusiasta e
por isso suportam grandes overclocks. Nada impede que você faça overclock,
aumentando a freqüência do FSB para 1333 mesmo em um nForce 590. Os
próprios fabricantes de placas costumam se adiantar, incluindo suporte a novos
padrões de memória que não são oficialmente suportados pelo chipset.

Não é incomum ver placas com o nForce 590 que suportam memórias DDR2-
800 ou até mesmo DDR2-1066; basta que o fabricante disponibilize a
configuração dos multiplicadores no Setup. O suporte oficial por parte do
chipset é apenas uma garantia de estabilidade.




              Ajuste da freqüência da memória através do setup

O 650i Ultra é a versão mais simples, que não inclui suporte a SLI. Ele inclui
18 linhas PCI Express, que permitem adicionar um slot 16x e mais dois slots
1x. Apesar de parecer pouco, esta é justamente a configuração mais comum
entre os fabricantes de placas, que preferem incluir apenas dois slots PCIe 1x,
reservando o restante do espaço disponível para slots PCI. O 650i Ultra inclui
ainda as 4 portas SATA 300 com suporte a RAID e rede gigabit.



                                                                           604
Em seguida temos o 650i SLI, que é idêntico ao 650i Ultra, incluindo inclusive o
mesmo número de linhas PCI Express. A única diferença entre os dois é que,
como o nome sugere, o 650i SLI suporta o uso de dois slots e duas placas SLI
em modo 8x. Para cortar custos, a nVidia optou por utilizar o chip MCP51 como
ponte sul, uma versão mais antiga que o MCP utilizado no 590 SLI. Apesar de
mais antigo, ele traz como vantagem a presença de duas interfaces IDE (junto
com as 4 portas SATA), no lugar de apenas uma. Isso acaba tornando o 650i
SLI uma opção mais interessante para quem pretende continuar utilizando HDs
IDE de upgrades anteriores.

Muitas das placas baseadas no 650i SLI incluem rotinas automatizadas no
BIOS para dividir as linhas PCI Express entre os dois slots, de acordo com a
presença ou não de uma segunda placa, mas muitas voltaram a utilizar o SLI
Selector, um componente usado desde o nForce4 SLI, onde uma placa
seletora presente entre os dois slots PCIe é usada para indicar se a placa deve
operar em modo dual x8 (com duas placas em SLI) ou x16, com apenas uma
placa 3D instalada:




                                 SLI Selector

Algumas placas, como a ECS NF650iSLIT-A, não possuem a placa seletora
nem as rotinas do BIOS. Elas simplesmente trabalham em modo dual x8 o
tempo todo, o que prejudica o desempenho ao utilizar uma única placa.

O 650i SLI é seguido pelo 680i SLI, que é a versão mais parruda, com suporte
a SLI em modo 16x e mais um terceiro slot, operando em modo 8x (assim
como no 590 SLI). Como um bonus, ele inclui 6 portas SATA e duas interfaces
de rede. Esta é também a versão mais cara. Na época de lançamento, apenas
o chipset custava (para os fabricantes de placas) nada menos que US$ 120, o
que fez com que toda a safra inicial de placas custasse (nos EUA) acima de
300 dólares, ultrapassando facilmente a faixa dos 1000 reais aqui no Brasil.
Para você ter uma idéia, a maioria dos chipsets da Intel custa, para os
fabricantes, entre 40 e 60 dólares, enquanto os chipsets mais baratos da SiS
chegam a custar menos de US$ 25.

                                                                            605
Esta é uma Asus P5N32-E SLI, um exemplo de placa baseada no 680i SLI.
Veja que ela possui três slots PCIe 16x, sendo que o terceiro possui apenas 8
linhas. As placas PCI Express 1x e 4x são perfeitamente compatíveis com os
slots 16x, de forma que ele pode ser usado para a conexão de placas PCIe em
geral. A placa inclui apenas um slot PCIe 1x (o slot branco próximo do hot-pipe,
que se parece com um slot PCIe 1x invertido é para a conexão do riser do
áudio onboard).




               Asus P5N32-E SLI, baseada no nForce 680i SLI

Assim como outras placas de alto desempenho atuais, ela utiliza um par de
dissipadores e hot-pipes, que refrigeram tanto o chipset quanto os reguladores
de tensão, utilizando o fluxo de ar gerado pelo cooler do processador. Muitos
fabricantes estão passando a adotar o uso de exaustores, mas a idéia tem
seus opositores, já que exaustores acumulam sujeira, passam a fazer barulho e
eventualmente param de girar depois de alguns anos de uso, fazendo com que
a placa passe a precisar de uma limpeza periódica.

Chipsets da SiS

Em seguida, temos os chipsets da SiS. Ela oferece os chipsets SiS 649, SiS
649FX, SiS 656, SiS 656FX e SiS 661FX, que são atualizações da linha
anterior, destinada às placas soquete 478.

O SiS 661FX é o carro chefe, usado em diversos modelos de placas de baixo
custo. Ele vem com vídeo onboard SiS Mirage e suporta até 3 GB de RAM
(DDR2). Ele ainda utiliza um slot AGP 8x, sem PCI Express, o que, ao invés de

                                                                            606
atrapalhar, acabou aumentando a sobrevida do chip, já que todos os outros
fabricantes migraram rapidamente para o PCI Express, criando uma demanda
considerável por placas de baixo custo com slots AGP. O 661FX é o mesmo
chipset que vimos no tópico anterior, Ele foi apenas atualizado para suportar
processadores soquete 775.

Os chipsets SiS 649, SiS 649FX, SiS 656 e SiS 656FX são as versões sem
vídeo onboard e com suporte a um slot PCI Express 16X. Os dois da série 649
suportam até 2 GB de RAM (single channel), enquanto os 656 suportam 4 GB,
com dual channel. Os FX (649FX e 656FX) suportam bus de 1066 MHz,
enquanto os outros dois suportam apenas 800 MHz.

Os chipsets da linha (649FX, 656FX e 661FX) suportam bus de 1066 MHz,
enquanto os demais suportam apenas 800 MHz. Além do suporte a PCI
Express, estes 4 chipsets utilizam os chips SiS965 e SiS966 (o fabricante da
placa escolhe qual usar) como ponte sul, enquanto o 661FX (que apesar da
numeração é mais antigo que eles) utiliza o SiS964. Os dois novos chips
incluem 4 interfaces SATA, além de suporte a RAID e interface Gigabit
Ethernet (opcionais). Ao contrário dos chipsets intel, eles mantêm o suporte
nativo a portas IDE, o que representa uma pequena economia de custos para
os fabricantes de placas, que não precisam usar um controlador adicional.

Mais recentemente, a SiS lançou o SiS 671FX, uma versão atualizada do
661FX, que inclui suporte a bus de 1066 MHz, duas interfaces SATA 300 (com
suporte a RAID 0 e 1), uma atualização no vídeo integrado (passou a ser usado
o chipset SiS Mirage 3) e um chipset de rede gigabit. Ele inclui também suporte
a módulos DDR2 de 2 GB (o 661FX suportava módulos de 1 GB), até um
máximo de 4 GB. O AGP foi também substituído por um total de 20 linhas PCI
Express: 16 na ponte norte, que permitem a criação de um slot 16x e mais 4 na
ponte sul, usadas para a conexão do chipset de rede e por até 3 slots 1x.

Um exemplo de placa de baixo custo baseada no 671FX é a Asus P5S-MX SE.
Por ser uma placa micro-ATX, ela inclui apenas 4 slots, sendo um slot PCIe
16x, 2 slots PCI e apenas 1 slot PCIe 1x. Como outras placas baseadas no
chipset, ela inclui apenas dois encaixes para módulos de memória e suporta
apenas módulos DDR2.

O suporte a módulos de 2 GB incluído no chipset vem a calhar, pois ele permite
que sejam usados dois módulos de 2 GB, totalizando 4 GB mesmo com
apenas dois módulos. Além do kit tudo-onboard (vídeo, som, rede, etc.), ela
inclui as duas portas SATA e uma porta IDE. Veja que a bendita porta para o
drive de disquetes continua presente (ao lado do segundo slot PCI),
sobrevivendo à passagem do tempo:




                                                                           607
Asus P5S-MX SE, baseada no SiS 671FX

Chipsets da VIA

Devido aos problemas legais com relação ao uso do barramento do Pentium 4,
a VIA perdeu uma boa parte da participação que tinha dentro do mercado de
placas para processadores Intel. Ela vem lentamente se recuperando agora
que a questão legal está bem resolvida, embora ainda enfrente sérias
dificuldades.

Os primeiros chipsets da VIA para placas soquete 775 foram uma versão
adaptada do VIA P4M800 e o VIA P4M800 Pro. Estes dois chipsets foram logo
substituídos, pois não oferecem suporte a memórias DDR2 nem a PCI Express.

Surgiram então os chipsets VIA PT890, VIA P4M890 e VIA P4M900, que
representam a safra mais atual. A principal diferença entre eles e os
antecessores é o suporte ao barramento PCI Express. Eles utilizam também
memórias DDR2, até um máximo de 4 GB (com módulos de até 2 GB) e
oferecem suporte aos processadores Core 2 Duo com bus de 1066 MHz.

Tanto o P4M890 quanto o VIA P4M900 incluem vídeo onboard. A principal
diferença entre eles é que o P4M890 inclui um chipset VIA UniChrome Pro,
enquanto o P4M900 inclui um chipset VIA Chrome 9, uma versão
sensivelmente aperfeiçoada. Como de praxe, o PT890 é a versão "stand-
alone", destinada a placas sem vídeo onboard.

Um dos problemas com estes três chipsets é que eles carecem de um
controlador de memória dual-channel. Para piorar, eles suportam apenas
memórias DDR2-400 e DDR2-533 (você pode perfeitamente usar um módulo
DDR2-800 ou mais rápido, mas ele ficaria restrito às freqüências suportadas
pelo chipset). O PT890 se destaca um pouco por oferecer suporte a memórias
DDR2-667, mas ainda sem suporte aos padrões mais rápidos.

                                                                        608
O fraco controlador de memória penaliza o desempenho do micro duplamente;
primeiro pelo fato de não suportar o uso de freqüências mais altas e segundo
por não suportar o uso de dual-channel, o que faz com que as placas baseadas
nos dois chipsets sejam perceptivelmente mais lentas do que as baseadas em
chipsets nForce 5xx, suas principais concorrentes. Aqui temos o diagrama de
blocos do PT890:




Pelo diagrama, você pode notar que o chipset oferece suporte tanto a
memórias DDR quanto DDR2, de forma que também existiram algumas placas
baseadas nele com suporte a ambos os padrões. A ponte sul, representada
pelo chip VIA VT8237A inclui duas portas ATA/133 e duas portas SATA 150,
com suporte a RAID 0 e 1. É muito comum que os fabricantes incluam um
controlador SATA externo, de forma a oferecerem duas portas SATA 300
adicionais. O chipset de rede 10/100 incluído no chipset é também
freqüentemente substituído por um controlador gigabit externo.



                                                                         609
Na Asus P5VD2-X, por exemplo, é usado um controlador JMicron JMB363.
Uma das portas é posicionada próxima ao painel traseiro e a segunda foi
transformada em uma porta external SATA, presente no painel ATX:




                O controlador JMicron e a terceira porta SATA




               A porta external SATA presente no painel traseiro

O maior problema com este design é que temos dois pares de portas RAID
separadas, sem integração entre si. Ambas as controladoras oferecem suporte
a RAID, mas apenas dentro de cada par, ou seja, você pode criar um array
entre dois HDs instalados nas duas portas frontais, ou entre o HD instalado na
terceira porta e a porta external SATA. Não é possível criar um array com mais
de dois discos (a não ser via software, usando os utilitários incluídos no Linux
ou Windows).

A VIA lançou também um chipset de "transição" entre o AGP e o PCI Express,
o VIA PT880 Ultra. Ele oferece como vantagens o uso de um controlador de
memória com suporte a dual-channel e suporte simultâneo ao barramento PCI
Express e ao AGP. Ele mantém também o suporte simultâneo a memórias
DDR e DDR2, o que permitiu o desenvolvimento de placas "curinga", que


                                                                            610
ofereciam suporte simultâneo aos dois padrões de barramento de vídeo e de
memória.

Um exemplo de placa baseada nele é a Asus P5VDC-X. Além de oferecer
simultaneamente um slot AGP 8x e o PCI Express x16, ela também oferecia
suporte simultâneo a memórias DDR e DDR2 (dois slots para cada tipo):




                              Asus P5VDC-X

O maior problema com o PT880 Ultra é que ele era um chipset caro e por isso
as placas baseadas nele são bastante raras. No lugar da P5VDC-X você
normalmente vai encontrar a P5VDC-MX, que apesar do nome similar, é uma
placa completamente diferente, baseada no chipset VIA P4M800 Pro.

Chipsets para o Athlon 64

Um dos destaques da arquitetura de 64 bits da AMD é o uso de um controlador
de memória integrado, que passou a fazer parte do próprio núcleo do
processador. Apesar de aumentar a complexidade e o custo de produção dos
processadores, o controlador de memória aumenta de forma perceptível o
desempenho, reduzindo os tempos de acesso e contribuindo para melhorar a
eficiência dos caches.

Como o desempenho do controlador de memória é sempre o principal
diferencial entre os chipsets dos diferentes fabricantes, os chipsets para o
Athlon 64 acabam ficando muito próximos no quesito desempenho. Isso fez
com que os fabricantes passassem a tentar diferenciar seus produtos com
base nas interfaces, recursos gerais e preço, além de investirem no
desenvolvimento de recursos exclusivos, como o SLI, no caso dos chipsets da
nVidia, e o CrossFire, no caso dos ATI.


                                                                         611
Outra questão importante é que como o suporte à memória não depende mais
do chipset, mas sim do controlador de memória incluído no processador, os
fabricantes podem agora lançar versões de seus chipsets tanto para placas
soquete 754 e 939 quanto em placas AM2 e superiores, fazendo apenas
pequenas atualizações no barramento HyperTransport. Como disse
anteriormente, o controlador de memória integrado complicou o projeto do
processador, mas por outro lado tornou a vida dos fabricantes de chipsets
muito mais simples.

Tudo começou com o AMD 8000, o chipset de referência da AMD, que acabou
sendo pouco utilizado na prática. Ele é composto pelos chips AMD 8151 (que
faz o papel de ponte norte) e o chip 8111 (ponte sul), ambos conectados por
um barramento HyperTransport de 8 bits.

O chip 8151 era chamado pela AMD de "AGP Graphics Tunnel". pois com a
remoção do controlador de memória, as únicas funções dele eram conectar o
processador ao barramento AGP 8x e ao chip 8111, que concentrava as
demais interfaces. Os recursos do chip 8111 também são relativamente
modestos. Ele oferece suporte a 6 portas USB 2.0, duas portas IDE ATA-133,
suporte a PCI-X, além de rede e som onboard.

O suporte a PCI-X fez com que o AMD 8000 fosse relativamente popular em
servidores baseados nas primeiras versões do Opteron e também em estações
de trabalho, sobrevivendo até perto do final de 2003. Já nos desktops, ele é
virtualmente desconhecido, já que os chipsets da nVidia, VIA, SiS e ATI
roubaram a cena.

Chipsets da nVidia

O primeiro chipset da nVidia para o Athlon 64 foi o nForce3, que é de certa
forma um sucessor das diversas versões do nForce2 usados nas placas
soquete A. Ele existiu nas versões 150 (a original), 250, Pro250, 250Gb e
250Gb Ultra.

Estas 5 versões são ainda baseadas no uso do barramento AGP, sem suporte
a PCI Express. Todas oferecem suporte a 6 portas USB 2.0 (três controladoras
independentes, cada uma com duas portas), duas interfaces ATA-133 (com
suporte a RAID 0, 1 e 10), rede e som onboard, mas se diferenciam nos
detalhes.

Ao contrário dos demais, o nForce3 150 utilizava um barramento
HyperTransport operando a 600 MHz (multiplicador de 3x em vez de 4x),
abaixo da especificação da AMD, que previa o uso de um barramento de 800
MHz nas placas soquete 754. Embora esta omissão tenha sido bastante
comentada na época do lançamento, não causou nenhuma redução real no
desempenho do chipset, já que o conjunto relativamente modesto de recursos
do nForce3 150 não chegava a saturar nem mesmo o link de 600 MHz, que
oferecia um total de 6 GB/s de taxa de transferência entre o processador e o
chipset. O principal consumidor era o barramento AGP 8x, que, como bem
sabemos, transmite a até 2133 MB/s. Existiu ainda o nForce3 150 Pro, cujo
único diferencial era oferecer suporte ao Opteron.

                                                                         612
O nForce3 250 trouxe como diferencial a inclusão de 4 portas SATA (também
com suporte a RAID), além de uma atualização do barramento HyperTransport,
que passou a trabalhar a 800 MHz. Ele substituiu rapidamente o 150 e foi
bastante comum em placas soquete 754 de baixo custo, já que era o chipset
mais barato dentro da família.

Em seguida temos o nForce3 250Gb, que, como o nome sugere, incorporava
uma interface de rede Gigabit Ethernet, com suporte ao Active Armor, o
sistema de firewall via hardware desenvolvido pela nVidia. Ele foi seguido pelo
250Gb Pro, que oferecia também suporte ao Opteron e aos primeiros modelos
do Athlon 64 FX, que ainda utilizavam o soquete 940 e memórias registered.

O nForce3 250Gb Ultra é apenas uma evolução natural do 250Gb, que
oferece um barramento HyperTransport de 1.0 GHz, adequado para uso em
placas soquete 939. Em tese, o nForce 3 250Gb também poderia ser utilizado
em placas soquete 939, mas o barramento HyperTransport de 800 MHz geraria
a mesma publicidade negativa que vitimou o nForce3 150. Existiu ainda o
nForce 3 Pro250, que oferecia suporte ao Opteron.

Para reduzir o custo de produção, a nVidia optou por utilizar um design single-
chip no nForce3. Um efeito colateral é que o corte de componentes deixou de
fora o vídeo onboard GeForce 4 e o chipset de som onboard de alta qualidade
utilizado nas primeiras versões do nForce. No lugar dele, foi utilizado o mesmo
chipset AC'97 de baixo custo utilizado nas versões recentes do nForce2. Como
o suporte a dual-channel, DASP e outros recursos relacionados ao controlador
de memória também foram removidos (já que o acesso à memória passou a
ser feito diretamente pelo processador), o nForce3 perdeu todos os seus
antigos diferenciais em relação aos concorrentes.

A nVidia se concentrou então em incluir opções relacionadas a overclock e
tweaks diversos, transformando o nForce3 e seus sucessores nos chipsets
preferidos para quem queria explorar os limites do processador.

Um recurso digno de nota é o "AGP/PCI Lock", ativado através de uma opção
no Setup, que permite travar a freqüência do barramento AGP e PCI e assim
ajustar livremente a freqüência do FSB, sem colocar em risco a estabilidade
dos demais componentes. Reduzindo o multiplicador do barramento
HyperTransport, era possível aumentar o "FSB" (no caso o clock de referência
do processador) de 200 para 250 MHz ou mais sem grandes problemas. Como
o multiplicador de todos os processadores Athlon 64 e X2 é destravado para
baixo, era possível aumentar o FSB livremente e procurar a melhor
combinação de freqüência e multiplicador ao fazer overclock.

O AGP/PCI Lock tornou-se funcional a partir das placas baseadas no nForce3
250. Ele na verdade estava disponível também no nForce3 150, mas
problemas de implementação fizeram com que não funcionasse corretamente
na maioria das placas produzidas.

A seguir temos uma Epox 9nda3+, baseada no nForce3 250Gb Ultra. Você
pode notar que o chipset fica entre os slots PCI e AGP, enquanto o
processador é posicionado bem ao lado dos slots de memória, reduzindo o

                                                                           613
comprimento das trilhas que ligam o controlador de memória integrado e os
módulos de memória.

O processador é então ligado ao chipset através das poucas trilhas
responsáveis pelo barramento HyperTransport e as trilhas para os demais
componentes partem dele. Por ser uma placa soquete 939, ela suporta dual-
channel, mas o recurso é, mais uma vez, oferecido pelo controlador de
memória incluído no processador e não pelo chipset:




               Epox 9nda3+, baseada no nForce3 250Gb Ultra

No final de 2004 foi lançado o nForce4, que mais tarde seria também adaptado
para uso em conjunto com o Pentium 4. As versões do nForce4 para
processadores AMD incluem o nForce4 original, nForce4 Ultra, nForce4 SLI e o
nForce4 SLI x16, que, ao contrário da versão para processadores Intel,
mantêm o design single-chip utilizado no nForce 3.

A principal inovação presente no nForce4 foi a adoção do PCI Express em
substituição do AGP. A versão inicial do nForce 4 incluía 20 linhas PCI
Express, permitindo o uso de um slot x16, acompanhado de até 4 slots x1
(embora a maioria das placas utilizasse apenas dois ou três slots). Estavam
disponíveis ainda 10 portas USB, duas interfaces ATA-133 e 4 portas SATA
(com suporte a RAID 0, 1 ou 10), som onboard AC'97 e o chipset de rede
Gigabit Ethernet.

Alguns softwares úteis incluídos no pacote eram o nVidia RAID Morphing, que
permitia alterar a configuração do array RAID rapidamente, e o nTune, que
permitia ajustar freqüências, multiplicadores e outras configurações
                                                                         614
relacionadas a overclock através do Windows, sem precisar reiniciar e ir até o
Setup. Hoje em dia este é um recurso comum, mas na época foi um diferencial.




                                    nTune

Como de praxe, a versão "básica" do nForce 4 foi seguida por diversas versões
aprimoradas. O nForce4 Ultra inclui suporte ao ActiveArmor, interfaces SATA-
300, além de um barramento HyperTransport de 1.0 GHz. A versão original do
nForce4 utilizava um link de 800 MHz (multiplicador 4x), que foi atualizado para
o padrão de 1 GHz apenas a partir da terceira revisão do chipset (A3). O
nForce4 Ultra seria o mínimo que você deve considerar utilizar em um PC
atual, devido ao suporte a SATA-300.

O suporte a SLI foi introduzido a partir do nForce4 SLI, que oferecia a
possibilidade de dividir as linhas PCI Express, transformando o slot x16 em
dois slots 16x com 8 linhas de dados cada. O suporte a SLI acabou se
tornando o grande diferencial dos chipsets nVidia, de forma que o nForce4 SLI
foi rapidamente aperfeiçoado, dando origem ao nForce4 SLI x16, que oferece
38 linhas PCI Express (a versão para processadores Intel possuía 40),
permitindo criar dois slots 16x "reais", com 16 linhas PCI Express cada um.

Devido ao brutal volume de transístores introduzidos pelas 18 linhas PCI
Express adicionais, o nForce4 SLI x16 voltou a ser dividido em dois chips,
assim como a versão para processadores Intel.

Para não perder o filão de placas com vídeo onboard, a nVidia lançou também
os chips nForce410 e nForce430. Eles são versões simplificadas do nForce4,
sem as linhas PCI Express, destinados a serem usados como ponte sul. Eles
são combinados com os chips GeForce 6100 ou GeForce 6150 (que incluem
tanto as linhas PCI Express, quanto um chipset de vídeo onboard), que fazem
o papel de ponte norte.


                                                                            615
Tanto o GeForce 6100 quanto o 6150 incluem um chipset de vídeo da série
GeForce 6, que, embora bastante simplificados em relação às versões
offboard, possuem um desempenho respeitável dentro do ramo de chipsets de
vídeo onboard. Ambos possuem duas unidades de processamento de pixels,
duas unidades de pixel shader, duas unidades de processamento de texturas e
uma unidade de vertex shader. A diferença é que o 6100 opera a 425 MHz,
enquanto o 6150 opera a 475 MHz e oferece suporte a DVI. Ambos utilizam
memória compartilhada e por isso apresentam um ganho considerável de
desempenho quando utilizados dois módulos de memória em dual-channel,
sobretudo quando utilizados em uma placa AM2, com suporte a módulos
DDR2.

O nForce410 é um chip relativamente modesto, com duas interfaces ATA-133,
4 portas SATA (com suporte a RAID 0 e 1), som HDA AC'97 (chip Azalia), rede
10/100 e 8 portas USB 2.0. O nForce430 inclui rede Gigabit Ethernet e suporte
a RAID 5 (utilizando tanto HDs instalados nas portas IDE quanto nas SATA).

Esta é uma Gigabyte K8N51GMF-9, um exemplo de placa soquete 939 de
baixo custo, baseada na combinação do nForce430 e do GeForce 6100. Com a
remoção das linhas PCI Express, o nForce430 (posicionado entre os slots IDE
e as portas SATA) se tornou um chip bastante simples, produzido usando a
técnica de 0.14 micron. O 6100, por sua vez, é mais complexo. Mesmo sendo
produzido usando a técnica de 0.09 micron, ele gera bastante calor e por isso
conta com um dissipador um pouco mais avantajado. Como de praxe, o vídeo
onboard pode ser substituído por uma placa offboard, encaixada no slot PCIe
x16. Estão disponíveis também mais dois slots PCI tradicionais e um slot PCIe
x1:




                                                                         616
Gigabyte K8N51GMF-9

A partir do nForce4, a nVidia passou a fabricar versões de seus chipsets para
processadores AMD e Intel. Embora a linha Intel seja composta por chips um
pouco mais complexos, que incluem o controlador de memória e o suporte ao
barramento utilizado pelo processador (no lugar de um simples link
HyperTransport, como no caso da linha AMD), a nVidia conseguiu criar uma
linha semi-unificada de chipsets, com relativamente poucas diferenças de
recursos entre os modelos para as duas plataformas. Todos os principais
recursos podem ser encontrados tanto de um lado quanto do outro. Por
possuírem mais componentes internos, os chipsets para processadores Intel
são sempre divididos em ponte norte e ponte sul (SPP e MCP), enquanto os
AMD são em sua maioria soluções single-chip.

A linha para processadores AMD é composta pelos chipsets nForce 520,
nForce 550, nForce 570 Ultra, nForce 570 SLI, nForce 590 SLI, além do nForce
680a SLI (destinado à plataforma Quad FX). Enquanto os nForce 3 e 4 eram
destinados às placas soquete 754 e 939, todos os chipsets a partir do 520 são
destinados a placas AM2. Tecnicamente, nada impediria o desenvolvimento de
placas soquete 939 usando os chipsets da série 500, mas isso não é comum.

O nForce 520 é o chipset "value", destinado a PCs de baixo custo. Embora
ofereça 20 linhas PCI express, ele não oferece suporte a SLI, limitando-se a
um único slot x16. Ele também não inclui o chipset de rede gigabit (substituído
por um chipset de rede 10/100 regular), inclui apenas 4 portas SATA e não
oferece suporte a RAID 5, disponível nos outros modelos. Todos os chipsets a


                                                                           617
partir do 520 incluem apenas uma interface IDE, em vez de duas, como nos
anteriores.

O nForce 550 é uma versão levemente aprimorada do 520, que inclui a
interface de rede Gigabit Ethernet e oferece a possibilidade de usar até 4 slots
PCI Express x1 em complemento ao slot x16 (contra apenas 3 do 520). Na
prática este recurso é pouco usado, já que os fabricantes costumam utilizar
apenas 2 ou 3 slots x1, reservando algum espaço para slots PCI de legado,
mas esta foi a forma que a nVidia encontrou para diferenciar os dois :). As
placas baseadas no 550 oferecem quase sempre mais opções de overclock, já
que os fabricantes precisam diferenciá-las das placas de baixo custo.

O nForce 570 Ultra adiciona duas portas SATA adicionais (totalizando 6),
suporte a RAID 5 e também a segunda placa Gigabit Ethernet.

A partir daí temos os chipsets com suporte a SLI. O nForce 570 SLI inclui 28
linhas PCI Express, o que permite utilizar duas placas em modo x8, enquanto o
nForce 590 SLI inclui 46 linhas, permitindo o uso de duas placas em modo
x16. Ao contrário do 520, 550 e do 570, que são single-chip, o 590 SLI segue a
divisão tradicional, dividido entre os chips SPP e MCP.

Um recurso inicialmente disponível no 590 SLI era o LinkBoost, um sistema
automatizado de overclock que aumentava a freqüência do barramento PCI
Express e do HyperTransport em 25% caso uma ou duas placas nVidia
compatíveis (como a GeForce 7900 GTX) com o recurso estivessem
instaladas. O aumento na freqüência permitia eliminar qualquer possível
gargalo relacionado ao barramento ao utilizar duas placas em SLI ou Quad SLI.
Basicamente, era um overclock garantido pelo fabricante e que era aplicado
apenas aos dois slots PCIe x16, sem afetar os demais componentes do micro.
Apesar disso, ele acabou sendo removido das revisões mais recentes do
chipset, pois não trazia nenhum ganho tangível de desempenho e gerou
algumas queixas relacionadas à estabilidade. As opções de overclock ficam
disponíveis no setup, mas não mais usadas automaticamente.

Na foto a seguir temos uma Foxconn C51-XEM2AA, um exemplo de placa
baseada no nForce 590 SLI. Além das duas placas gigabit e das demais
interfaces, suporte a SLI, e outros recursos, o principal atrativo desta placa e de
outras do mesmo nível é a grande variedade de opções de overclock e a boa
tolerância ao uso de freqüências extremas para o barramento PCI Express e
para o link Hyper Transport.

Ela oferece um conjunto completo de ajustes dos tempos de espera dos
módulos de memória (incluindo os ajustes de tCL, tRAS, tRP, tRCD, tRPD,
tRC, CMD, tWR, tRWT, tWTR, tREF, tRRD, drive strength e outros), ajuste da
tensão do processador (de 0.3750v a 1.85v, em incrementos de 0.0125v), dos
módulos de memória (de 1.825v a 2.5v, em incrementos de 0.025v), ajuste da
freqüência do barramento PCI Express (de 100 a 200 MHz), ajuste da
freqüência, multiplicador e também tensão do barramento HyperTransport,
entre outras opções:




                                                                               618
Foxconn C51-XEM2AA, baseada no nForce 590 SLI

Chipsets da VIA

O primeiro chipset da VIA para a plataforma AMD64 foi o VIA K8T800, que foi
concorrente direto do nForce3 150. Um dos diferenciais mais enfatizados é que
o K8T800 implementava um barramento HyperTransport "completo", de 800
MHz, entre o processador e o chipset, enquanto o nForce3 150 utilizava um link
de 600 MHz e ainda por cima assimétrico, com 16 bits de downlink e apenas 8
bits de uplink. Embora esta característica represente uma diferença de
desempenho muito pequena na prática, acabou fazendo com que o chipset da
VIA fosse considerado superior tecnicamente.

O K8T800 segue o design tradicional, baseado em dois chips. A ponte norte é
um chip relativamente simples, que contém o barramento HyperTransport, que
o liga ao processador e à interface AGP 8x. Ao invés de utilizar um segundo
barramento HyperTransport para interligar a ponte norte e a ponte sul, a VIA
optou por utilizar um barramento V-Link de 533 MB/s. Os recursos do chip
VT8237R, usado como ponte sul, incluem duas portas ATA-133, 8 portas USB
2.0, som (AC'97) e rede (10/100) onboard e duas portas SATA, com suporte a
RAID 0 e 1.

Um detalhe técnico interessante sobre o VT8237R é que ele podia ser
expandido através de chips adicionais, com opções para duas portas SATA
adicionais (que adicionavam a possibilidade de usar RAID 10), suporte a slots
PCI-X (um recurso bastante requisitado no caso das placas para o Opteron),
placa de som 7.1 e também uma interface Gigabit Ethernet. A opção de utilizar
ou não estes recursos adicionais recaía sobre o fabricante da placa, o que fazia
com que eles nem sempre fossem usados, ou fossem substituídos por
controladores mais baratos, oferecidos por outros fabricantes.

                                                                            619
Quando a nVidia lançou a série nForce3 250, a VIA respondeu com o K8T800
Pro, uma versão melhorada do K8T800, que atualizou o barramento
HyperTransport para um link de 1.0 GHz e adicionou o recurso AGP/PCI lock, o
mesmo recurso utilizado pela nVidia no nForce3, que permitia travar a
freqüência do barramento AGP e PCI ao fazer overclock, o que permitia atingir
freqüências mais altas, sem risco de afetar a estabilidade dos demais
componentes. O barramento V-Link entre os dois chips foi também atualizado
para a versão de 1.0 GHz, embora as interfaces disponíveis no chip VT8237R
não tenham sofrido mudanças.

Como de praxe, foi lançada também uma versão do K8T800 Pro com vídeo
onboard, o K8M800. Ele incluía um chipset de vídeo VIA UniChrome Pro, o
mesmo controlador utilizado nos chipsets P4M890 e KM800.

Com o final da era AGP, a VIA lançou o K8T890, que inclui um total de 20
linhas PCI-Express, suficientes para criar um slot x16 e mais 4 slots x1,
destinados a placas de expansão diversas. Tanto o barramento HyperTransport
de 1.0 GHz quanto o uso do V-Link como meio de interligação entre a ponte
norte e a ponte sul foram mantidos, mas o antigo chip VT8237R foi substituído
pelo VT8251, uma versão sensivelmente aprimorada.

Além de manter as interfaces ATA-133, o VT8251 trouxe o suporte a 4
interfaces SATA, com suporte a RAID 0, 1 e 10, sem a necessidade da adição
do chip extra e um chip de áudio com suporte ao padrão HDA. Ele inclui
também duas linhas PCI Express extras, que podem ser utilizadas para criar
dois slots x1 adicionais, ou conectar dispositivos diversos, adicionados pelo
fabricante da placa. Apesar das melhorias, ele vem com a mesma interface de
rede 10/100 do VT8237R, que pode ser substituída pela interface gigabit
através do uso do chip adicional.

O chip VT8251 é compatível também com o K8T800 Pro e chegou a ser
utilizado em conjunto com ele durante algum tempo, oferecendo uma
combinação atualizada para fabricantes interessados em fabricarem placas
com suporte a AGP. Existiram ainda casos de placas baseadas no K8T890 que
utilizavam o chip antigo, devido a atrasos na fabricação do VT8251.

Mais recentemente, a VIA passou a oferecer também o chip VT8237A, que
pode ser usado tanto em conjunto com o K8T890 quanto com os chipsets da
linha Intel. O VT8237A mantém as duas portas ATA-133, o chipset de áudio
VIA Vinyl, rede 10/100 e 8 portas USB. A principal diferença entre ele e o
VT8251 é que ele possui apenas duas portas SATA (com suporte a RAID 0 e
1), em vez de 4. Apesar disso, muitos fabricantes de placas combinam o
VT8237A, com controladores SATA e chipsets de rede externos, produzindo
placas com 4 portas SATA e rede gigabit.




                                                                         620
Diagrama de blocos do VIA K8T890

Com o lançamento do K8T890, o K8M foi também atualizado, dando origem ao
K8M890, que vem com um chipset de vídeo Chrome9 integrado.

Pouco depois foi lançado também o K8T900, que mantém as mesmas
características básicas do K8M890 (incluindo o uso do chip VT8251 como
ponte sul), mas vem sem vídeo onboard e, em troca, adiciona a possibilidade
de criar placas com dois slots PCI Express x16 (com 8 linhas de dados cada
um), permitindo o uso de duas placas de vídeo simultaneamente.

Na época em que foi lançado, não existia nenhuma trava nos drivers da nVidia
que impedissem o uso de duas placas em SLI em chipsets de outros
fabricantes, de forma que utilizando uma certa versão dos drivers (um beta do
ForceWare 71.24, caso esteja curioso), era possível utilizar duas placas em SLI
no K8T900. Mas, ao perceber a brecha, a nVidia rapidamente retirou a versão
do driver de circulação e implantou travas de software nas versões futuras,
eliminando a possibilidade.


                                                                           621
O K8T900 também não oferece suporte ao CrossFire. Ao invés disso a VIA
criou o "MultiChrome", onde é possível combinar duas placas baseadas no S3
Chrome S27 (a S3 é atualmente uma subsidiária da VIA), placas de vídeo
bastante incomuns e com um desempenho fraco, inferior ao de uma GeForce
6600 GT. O mérito do MultiChrome é a meta de se tornar um padrão aberto,
que possa ser usado em placas de outros fabricantes. Apesar disso, ele tem
poucas chances de dar certo, pois ao excluir a nVidia e ATI (que já possuem
seus próprios padrões) e a Intel (com quem a VIA mantém uma relação pouco
amistosa), sobram poucos possíveis aliados.

Atualmente a VIA faz de tudo, fabricando chipsets, placas, processadores e
placas de vídeo. O problema é que a VIA é uma empresa muito pequena para
conseguir ser competitiva simultaneamente em todos estes mercados e a
pouca popularidade das placas S3 S27 é apenas mais um sintoma disso.




                            Placa de vídeo S3 S27

Como a possibilidade de você encontrar duas placas S3 a um preço condizente
com o desempenho é pequena, o segundo slot acaba sendo útil apenas caso
você queira utilizar duas placas de vídeo para criar uma configuração com
vários monitores.

Enquanto escrevo (outubro de 2007), existem rumores cada vez mais fortes de
que a VIA está prestes a deixar de produzir chipsets para processadores Intel e
AMD e passar a se dedicar apenas a chipsets para seus processadores C7
(usados nas placas da linha EPIA e em alguns modelos de notebooks), por isso
não se surpreenda se a notícia vier a se confirmar nos meses seguintes.

Chipsets da SiS

Antes de iniciar a série 760, que foi a mais conhecida entre seus chipsets para
o Athlon 64, a SiS lançou três chipsets sem vídeo onboard, que competiam
diretamente com o VIA K8T800 e o nForce3.

O SiS 755 oferecia suporte a AGP 8x, além de incluir um barramento
HyperTransport de 800 MHz, assim como o K8T800. Ligando a ponte norte ao

                                                                           622
chip SiS964, foi utilizado um barramento MuTIOL 1G, que também não criava
gargalos. A ponte sul incluía duas interfaces ATA-133, duas portas SATA com
suporte a RAID 0 e 1, 8 portas USB 2.0, rede 10/100 e áudio AC'97.

Seguindo a evolução natural, o 755 foi sucedido pelo SiS 755FX, que incluía
suporte ao barramento HyperTransport de 1.0 GHz utilizado nas placas
soquete 939, além de trazer suporte ao chip SiS965 (usado como ponte sul),
que incluía 4 portas SATA (incluindo suporte a RAID 0, 1 e agora também a
RAID 10), rede gigabit e duas linhas PCI Express, que permitiam complementar
os slots AGP e PCI com dois slot PCIe x1.

O SiS 756 foi o primeiro chipset SiS a substituir o barramento AGP pelo PCIe,
oferecendo um total de 18 linhas, que permitiam criar o slot x16 e mais dois
slots x1. Ele continuou utilizando o chip SiS965 como opção default de ponte
sul, mas os fabricantes tinham a opção de substituí-lo pelo chip SiS965L, uma
versão de baixo custo, que incluía apenas duas portas SATA, em vez de 4.

Em seguida chegamos à linha de chipsets com vídeo onboard, que incluem os
chipsets SiS 760, 760GX, 761, 761GX e 761GL.

Apesar da numeração superior, o SiS 760 e o SiS 760GX ainda são baseados
no barramento AGP, ao contrário do 756, que já suportava PCI Express. O uso
do AGP fazia sentido, pois tanto o 760 quanto o 760GX eram destinados a
micros de baixo custo, onde o uso de placas AGP, muitas vezes aproveitadas
de upgrades anteriores, ainda era mais comum.

O SiS 760 utilizava o chipset de vídeo SiS Mirage 2, que incluía suporte ao uso
de dois módulos de memória em dual-channel, enquanto o SiS 760GX utilizava
o Mirage 1, que utiliza uma interface single-channel para a comunicação com a
memória compartilhada. Além do fraco desempenho, o Mirage 1 ainda é
baseado no DirectX 7, enquanto mesmo o Chrome9 incluído no K8T890
oferece suporte ao DirectX 9.

Ambos podiam ser usados tanto em conjunto com o chip SiS964 quanto com o
SiS966, que incluía 4 linhas PCI-Express, 4 portas SATA (com suporte a RAID
0, 1 e 10), 10 portas USB, áudio HDA 7.1 e rede gigabit.

O chipset seguinte é o SiS 761, uma versão aprimorada do 760, que inclui um
chipset de vídeo SiS Mirage 3 e utiliza o chip SiS966 como ponte sul, incluindo
as 4 portas SATA, 10 portas USB e rede gigabit.

Foram lançadas também duas versões de baixo custo do 761: SiS 761GL e
SiS 761GX. O 761GX é a versão mais completa, que inclui um barramento
HyperTransport de 1.0 GHz e as linhas PCI Express necessárias para permitir
o uso do slot PCIe x16, usado para a conexão de uma placa de vídeo offboard.
O 761GL, por sua vez, é uma versão muito simplificada, que não inclui o slot
PCIe x16 e utiliza um barramento HyperTransport de 800 MHz para a
comunicação com o processador.

Ambos utilizam o antiquado Mirage 1 como chipset de vídeo, que mostra até
que ponto chegou a economia de recursos. Eles são compatíveis tanto com o


                                                                           623
SiS966 quanto com os antigos SiS965 e SiS965L como ponte sul, de forma
que o fabricante da placa pode escolher qual usar.

Na foto a seguir temos uma PC-Chips A31G, um exemplo de placa de baixo
custo baseada no SiS 761GX. O principal alvo desta placa são os PCs de
extremo baixo custo, por isso ela ainda utiliza o soquete 754, visando manter a
compatibilidade com as versões iniciais do Sempron. Ela utiliza o chip SiS965L
(a versão mais barata) como ponte sul e por isso inclui apenas duas portas
SATA e rede 10/100. Ao contrário da maioria das placas atuais, ela ainda
conserva a porta paralela e uma porta serial, visando manter a compatibilidade
com impressoras e outros periféricos antigos.

Os slot PCIe x1 foram substituídos pelo slot AMR (usado pela placa riser do
modem onboard) e o slot AGP-Express, que visa manter compatibilidade com
as placas AGP antigas, às custas de problemas de compatibilidade e ao
gargalo de desempenho causado pelo uso do barramento PCI. Caso você não
pretenda usar uma placa de vídeo PCI Express, é possível utilizar o slot x16
para a conexão de qualquer placa PCIe (seja x1, x4 ou x16). Devido às muitas
limitações, fraco desempenho do vídeo onboard e aos problemas de
compatibilidade no Linux, este é um exemplo de placa atraente apenas para
quem realmente não pode pagar por coisa melhor:




    PC-Chips A31G, baseada no SiS 761GX (com o dissipador do chipset
                              removido)




                                                                           624
Chipsets da ULi

A ULi fabricou três chipsets de baixo custo, usados sobretudo em placas
soquete 754 e soquete 939. Atualmente (final de 2007) eles ainda são
fabricados em pequenas quantidades, mas tendem a ser descontinuados em
breve, acompanhando a substituição das duas plataformas pelas placas AM2 e
AM2+.

O primeiro é o ULi M1687, um chipset antiquado, muito similar ao AMD-8151
em recursos. Ele inclui suporte a AGP 8x, duas interfaces ATA-133 (sem
suporte a SATA ou RAID), 6 portas USB, som AC'97 e rede 10/100 onboard.
Embora fosse um chipset barato, ele foi pouco usado, devido às muitas
limitações. O segundo é o ULi M1689 é um design single-chip, que inclui
também 2 portas SATA (sem suporte a RAID) e 8 portas USB, mantendo o
suporte a AGP 8x e os mesmos chipsets de som e rede onboard do M1687.

O terceiro chipset e de longe o mais popular dentro da linha é o ULi M1695.
Este chipset é bastante famoso por ser um dos poucos a oferecer
simultaneamente um slot PCI Express x16 e um slot AGP nativo, que
realmente opera à sua freqüência normal. Nesse ponto ele é similar ao VIA
PT880 Ultra (que também oferece suporte simultâneo a AGP e PCI Express),
mas com o mérito de ser consideravelmente mais barato.

Este diagrama mostra como o barramento AGP foi implementado. O chipset é
ligado ao processador através de um barramento HyperTransport (de 1.0 GHz,
como de praxe) e um segundo barramento HT é utilizado para interligar a ponte
norte e a ponte sul. Como você pode ver no diagrama, a ponte norte fica com
as linhas PCI Express, enquanto a ponte sul (o chip M1567) inclui o barramento
AGP e as demais interfaces. Um detalhe técnico interessante é que o chip
M1567 é um descendente direto do chipset M1689, lançado anteriormente. A
flexibilidade oferecida pelo barramento HyperTransport permitiu que ele fosse
rapidamente adaptado para abandonar seu posto de chipset principal e assumir
o papel de ponte sul do M1695:




                                                                          625
Diagrama de blocos do ULi M1695

Os demais recursos do chipset são modestos, incluindo as duas interfaces
ATA-133, duas portas SATA-150 (agora com suporte a RAID 0 e 1), 8 portas
USB, além de rede (10/100) e som onboard. Apesar disso, o desempenho do
M1695 é sensivelmente superior ao dos concorrentes diretos da SiS, chegando
a competir com o nForce4 em alguns quesitos. Esta combinação acaba
tornando-o uma opção mais interessante que os SiS 761GX e 761GL dentro do
ramo de chipsets de baixo custo.

Outro recurso digno de nota é o "Triple Graphics", que permite combinar placas
de vídeo PCI Express, AGP e PCI ao configurar um sistema com vários
monitores, usando simultaneamente placas conectadas aos três barramentos.
Basicamente, este sistema permite que você aproveite todas as placas de
vídeo antigas que tiver à disposição, independentemente do barramento
utilizado por cada uma.

Assim como o VIA K8T900, o M1695 suporta também o uso de dois slots PCI
Express x16 (com 8 linhas cada um). Tecnicamente, esta configuração permite
usar duas placas em SLI, mas neste ponto esbarra-se na relutância da nVidia
em licenciar a tecnologia para outros fabricantes e incluir o suporte a placas de
terceiros nos drivers.

A ULi chegou a distribuir versões modificadas do ForceWare 71.24, a última
versão do driver da nVidia que não inclui a trava contra o uso do SLI em placas
de outros fabricantes, mas ela só permite utilizar placas antigas, como as
GeForce 6800. Entretanto, o lançamento de chipsets da ULi com suporte a SLI


                                                                             626
não pode ser inteiramente descartado, pois ela foi adquirida pela nVidia no final
de 2005 e é atualmente uma subsidiária dela.

Uma das placas baseadas no ULi M1695 mais conhecidas é a ASRock
939Dual-SATA2. A ASRock é uma divisão da Asus. O objetivo da empresa é
"to deliver creative, considerate, and cost effective products to the PC market",
o que, em bom português, significa que são especializados em produzir placas
de baixo custo, que a Asus prefere vender sob uma marca separada.

Como toda placa soquete 939, ela oferece suporte a dual-channel, cortesia do
controlador de memória incluído no processador. Além das duas portas SATA-
150 incluídas no chipset, ela inclui uma porta SATA-300 (destacada das outras
duas por utilizar um conector vermelho), controlada por um chip JMicron
avulso. É daí que surge o "Dual-SATA2" usado no nome. Ela mantém também
a carga de legado completa, incluindo as duas interfaces IDE, porta paralela,
porta serial e porta do drive de disquetes.

Note que ela não inclui vídeo onboard nem o modem AMR presente nas placas
da ECS, PC-Chips e Phitronics, o que dificulta seu uso em micros de baixo
custo. Esta ASRock é uma espécie de placa de baixo custo para entusiastas,
que querem usar uma placa de vídeo offboard e querem mais opções de
overclock do que as oferecidas em outras placas baratas, sem precisar gastar
muito.




               ASRock 939Dual-SATA2, baseada no ULi M1695



                                                                             627
Além da combinação do slot PCI Express x16, do slot AGP 8x (real), ela inclui
três slots PCI e um slot PCIe x1, completados por um estranho slot amarelo,
similar a um slot AGP, mas em posição diferente. Este slot é chamado de
"Future CPU Port" e permite o uso de uma placa de expansão, que permite
instalar um processador AM2 e módulos de memória DDR2, aproveitando o
restante da placa-mãe. Ele é uma idéia bastante engenhosa, pois a placa de
expansão é ligada diretamente ao barramento HyperTransport, o que permite
que ela "substitua" o soquete e os slots de memória presentes na placa-mãe,
oferecendo a possibilidade de usar um processador AM2 sem perda de
desempenho.

Ao instalar a placa de expansão, você precisa mudar a posição dos vários
jumpers entre o slot amarelo e o soquete do processador. Estes jumpers
roteiam as trilhas referentes ao barramento HyperTransport, junto com as
trilhas de alimentação elétrica, desativando o soquete onboard e ativando a
placa.

A "CPU EZ Upgrade" podia ser comprada, no início de 2007, por cerca de US$
50 nas lojas online, um preço bem mais baixo que o da maioria das placas
AM2, mas quase equivalente ao preço da própria ASRock 939Dual-SATA2. No
Brasil ela é difícil de encontrar, mas não deixa de ser uma opção de upgrade a
se tomar nota:




                     Placa de expansão AM2 da ASRock

Os maiores problemas da CPU EZ Upgrade são que ela funciona apenas nas
placas da própria ASRock (com o slot de expansão) e o fato dela ser
relativamente cara para um adaptador. Para fazer o upgrade, você precisa
comprar também o processador AM2 e os módulos de memória DDR2, de
forma que, na ponta do lápis, a economia em relação a comprar uma placa
AM2 "de verdade" acaba sendo pequena.

Em geral, vale mais à pena comprar de uma vez uma placa-mãe AM2 nova e
vender o conjunto de placa, processador e módulos de memória antigos como


                                                                          628
usados para recuperar parte do investimento do que fazer o upgrade usando a
placa de expansão.

Um ponto a ter em mente é que as placas-mãe que utilizam capacitores
eletrolíticos possuem uma vida útil limitada, por isso upgrades como este, que
permitem utilizar a mesma placa indefinidamente, em troca de uma pequena
economia em relação a uma placa nova, não são exatamente uma boa idéia.


Capítulo 8:
Montagem, manutenção e dicas

Hoje em dia, graças ao programa do PC popular e outras formas de incentivos,
PCs de marcas nacionais passaram a ser vendidos até mesmo em
supermercados, com preços relativamente baixos e boas condições de
pagamento. O maior problema é que junto com o preço baixo, temos uma
qualidade que muitas vezes deixa a desejar, de forma que o mercado para PCs
montados, com configurações melhores continua existindo, talvez maior do que
nunca.

Além disso, a maior quantidade de micros vendidos, grande parte deles
modelos com componentes de baixa qualidade, acabam aumentando as
oportunidades de trabalho para técnicos de manutenção. Outra questão é que,
qualquer micreiro que se preze não compra PCs montados; compra as peças e
monta ele mesmo. :)

Coloquei este capítulo de montagem como um dos últimos do livro para que
possamos nos concentrar na escolha dos componentes e na montagem
propriamente dita, sem precisar ficar revisando conceitos básicos. A idéia é que
este capítulo seja interessante não apenas para quem está começando, mas
que também inclua informações úteis para os mais experientes.


As formas mais comuns de destruir um PC

Se pensarmos na quantidade de componentes individuais contidos em um PC
atual, incluindo as inúmeras trilhas e os contatos que os interligam e todas as
diferenças de sinalização e diferentes tensões utilizadas pelos diferentes
componentes, o mais surpreendente é que o computador possa realmente
funcionar, e não que surjam problemas diversos de vez em quando.

Ainda assim, existem diversas formas "simples" de destruir um PC
acidentalmente, curtos lampejos de descuido ou falta de sorte que podem
acabar custando muito caro. Naturalmente, ninguém quer ser o próximo
premiado, por isso, antes de falar sobre montagem de micros, vamos a um
resumo dos acidentes mais comuns.

Fonte de alimentação

A maior fonte de perigos para qualquer PC é a fonte de alimentação. Ela é a
responsável por converter os 110 ou 220 volts da rede elétrica para os 12V, 5V

                                                                            629
e 3.3V fornecidos nas diferentes saídas, além de filtrar a corrente e atenuar
picos de tensão. Por ser um dos componentes de mais baixa tecnologia, existe
um enorme número de empresas que fabricam fontes de alimentação, com
grandes variações na qualidade e no preço. Problemas relacionados à fonte de
alimentação são especialmente perigosos, pois podem danificar outros
componentes.

Toda fonte possui uma determinada capacidade de fornecimento, medida em
watts. Fontes antigas fornecem 250 ou 300 watts, enquanto as atuais são
capazes de fornecer 350, 450, 600 ou até mesmo 1000 watts. A capacidade
anunciada é quase sempre a soma das capacidades nas três saídas, de forma
que uma fonte de 350 watts pode ser capaz de fornecer apenas 150 watts na
saída de 12V, por exemplo.

Temos aqui o exemplo de uma fonte de 450 watts, que, segundo o informado
pelo adesivo, é capaz de fornecer 32 amperes na saída de 3.3V, 35 amperes
na de 5V e mais 14 amperes na de 12V:




Para descobrir a capacidade em watts, basta multiplicar a tensão pela
amperagem. Fazendo isso, descobrimos que as capacidades reais da fonte
são 105.6 watts na saída de 3.3V, 175 watts na de 5V e 168 watts na de 12V.
Os 450 watts prometidos são apenas um arredondamento da soma das
capacidades das três saídas.

O que acontece quando a capacidade de fornecimento da fonte é excedido, ao
instalar duas placas 3D de ponta em SLI, por exemplo? Se você tiver sorte, a
fonte simplesmente vai desligar sozinha depois de algum tempo de uso, talvez
causando a perda de alguns arquivos, mas sem danos ao equipamento.
Porém, se você não for tão sortudo, os resultados podem ser mais
imprevisíveis. A fonte pode literalmente explodir quando sobrecarregada,
levando junto a placa-mãe, memórias, HD, processador e até mesmo seu caro
par de placas 3D.

                                                                          630
O primeiro cuidado ao montar o micro é dimensionar corretamente a
capacidade da fonte. Os números anunciados pelo fabricante nem sempre
correspondem à realidade (sobretudo nas fontes mais baratas), por isso é
importante sempre trabalhar com um bom nível de tolerância. Tenha em mente
que a capacidade da fonte pode decair com a passagem do tempo, devido ao
desgaste de seus componentes, por isso quanto maior a margem de tolerância,
melhor.

Antigamente (até a época do Pentium II), os processadores puxavam toda a
corrente que utilizavam da saída de 5V (no caso dos 486 e Pentium) ou 3.3V
(no caso do Pentium II e K6-2). Conforme processadores mais rápidos eram
lançados, isso começou a se tornar um grande problema, já que a maior parte
do fornecimento da fonte é destinada à saída de 12V e não à de 3.3V.

Para solucionar o problema, a partir do Pentium III FC-PGA o processador
passou a consumir corrente da saída de 12V (a placa-mãe se encarrega de
reduzir a tensão antes de fornecê-la ao processador), assim como as placas de
vídeo offboard que utilizam conectores extra de energia, HDs, exaustores e
drives ópticos. Atualmente, apenas componentes da placa-mãe, pentes de
memória e placas de expansão diversas utilizam a saída de 3.3V, fazendo que
ela seja um problema menor. Muitos componentes utilizam simultaneamente
duas saídas, como os HDs, que utilizam a saída de 5V para alimentar os
circuitos da placa lógica e 12V para o motor que faz girar os discos. A própria
placa-mãe utiliza a saída de 5V para alimentar diversos componentes.

Você pode fazer uma conta rápida, somando o consumo dos componentes que
utilizam a saída de 12V. Um HD de 7200 RPM consome de 15 a 20 watts, cada
gravador de CD ou DVD consome 25 (enquanto está gravando), cada exaustor
(incluindo o do cooler do processador) consome até 10 watts, um processador
dual-core em full load pode consumir até 90 watts, enquanto uma placa 3D
topo de linha pode consumir de 70 a 120 watts.

Se você tem um micro com dois HDs, dois gravadores de DVD, um
processador dual-core e duas placas 3D em SLI, o consumo (apenas na saída
de 12V) pode facilmente exceder os 350 watts. Como disse, a capacidade da
fonte é dividida entre as saídas, de forma que, para obter 350 watts na saída
de 12 volts e mais uma boa margem de tolerância, você precisaria de uma
fonte de 700 watts ou mais. Usar uma fonte barata nesta configuração seria
extremamente perigoso.

Se possível, prefira sempre comprar a fonte separada do gabinete, investindo
alguns reais a mais em uma fonte de melhor qualidade. Fontes boas custam o
dobro ou o triplo do preço, mas muitas vezes acabam se pagando com uma
maior durabilidade, sobrevivendo a vários upgrades.

Você pode monitorar as tensões de saída da fonte através do setup e também
através de utilitários de monitoramento. Quase sempre os fabricantes incluem
algum no conjunto de utilitários incluído no CD de drivers. No Linux você pode
utilizar o LMsensors e uma interface para ele, como o Ksensors:




                                                                           631
Monitorando as tensões e temperaturas no Linux usando o KSensors

Ao montar um novo micro, procure simular uma situação de estresse (como
rodar um benchmark, simular a gravação de um DVD e rodar um game 3D,
tudo ao mesmo tempo) que exija o máximo de todos os componentes e
acompanhe as variações no fornecimento da fonte. Assim como em outros
componentes, a maioria dos problemas de fornecimento se manifesta apenas
quando a fonte é mais exigida. Ser capaz de manter um fornecimento estável e
tensões corretas, não é uma garantia de que a fonte realmente esteja 100%,
mas já permite descartar 90% dos problemas graves.

Variações de até 5%, para mais ou para menos, são perfeitamente normais,
mas variações acima disso (sobretudo variações para mais) podem danificar
componentes sensíveis. Normalmente, as primeiras vítimas são os capacitores
e circuitos de alimentação da placa-mãe, que são responsáveis por reduzir as
tensões da fonte aos valores utilizados pelos diferentes componentes, seguidos
pelos pentes de memória e pelo HD. A grande maioria dos casos de placas-
mãe com capacitores estufados e outros danos relacionados são causados
justamente por fontes defeituosas.

Pessoalmente, sempre que recebo um micro com problemas de hardware
relacionados aos pentes de memória, HD ou placa-mãe, opto por substituir a
fonte junto com os outros componentes necessários, pois a possibilidade da
própria fonte ter causado os danos é muito grande. Sem substituir a fonte, você
pode cair em problemas recorrentes, como substituir um pente de memória
danificado e, depois de algumas semanas ou meses, o micro voltar a
apresentar o mesmíssimo problema, obrigando-o a gastar duas vezes. Se,
depois de testes adicionais, você descobrir que o problema não era na fonte,
pode usá-la em outro micro (de preferência algum micro mais antigo, com
componentes de menor valor).

Caso você desconfie de sobretensão nas saídas da fonte, é possível também
testá-la usando um multímetro, sem precisar arriscar danificar um micro. As
fontes ATX possuem um circuito que faz com que a fonte seja ligada e
desligada pela placa-mãe, ao invés de usar uma chave liga-desliga, como as
antigas fontes AT. O conector de uma fonte ATX possui 20 (ou 24) fios, sendo
que o fio verde é o responsável por ligar a fonte. Quando é fechado um circuito
entre o fio verde e o fio preto ao lado, a fonte liga e, quando o circuito é aberto,
ela desliga automaticamente.

Em PCs baseados no padrão ATX, o botão liga/desliga do gabinete é ligado na
placa-mãe e ela se encarrega de ligar e desligar a fonte. É graças a isso que os
micros atuais podem ser desligados através do sistema operacional, ao
                                                                                632
contrário dos antigos. Se você olhar o conector na horizontal, com o pino de
encaixe virado para baixo, o fio verde é o quarto da linha de baixo, contando da
direita para a esquerda. As fontes recentes utilizam conectores de 24 pinos,
onde os 4 pinos adicionais estão posicionados à esquerda e não alteram a
posição dos demais.

Use um pedaço de fio com as duas pontas descascadas (dobrado em U) para
fechar um circuito entre o fio verde e o fio preto ao lado (o quinto da direita para
a esquerda). Como estamos lidando com eletricidade, é sempre importante
tomar muito cuidado. Se você causar um curto, a fonte pode literalmente
explodir na sua cara (estou falando sério).

Ao fechar o circuito, a fonte liga e, ao retirar o fio, ela desliga imediatamente;
por isso é preciso manter o fio posicionado durante todo o teste:




Programe o multímetro para medir tensão contínua (identificada no multímetro
pelo símbolo V—) em uma escala de 20v, como na foto a seguir. Se você
desconfiar de problemas na fonte, pode começar com a escala de 200v, só pra
garantir, já que uma tensão mais alta que a escala pode danificar o multímetro:




                                                                                633
Todos os fios da mesma cor são ligados em paralelo, por isso não existe
necessidade de testar cada um dos vermelhos, depois cada um dos amarelos,
etc. basta testar um de cada. Os fios vermelhos fornecem 5V, os amarelos
fornecem 12V e os laranjas são os responsáveis pela tensão de 3.3V. Os fios
pretos são todos neutros, usados para fechar circuitos com os demais.

Para medir a tensão de cada uma das saídas, você conecta o pólo negativo
(preto) do multímetro a um dos fios pretos e conecta o pólo positivo (vermelho)
a fios de cada uma das três cores, sempre tomando muito cuidado. Como
disse, variações de até 5% são perfeitamente normais e, além disso, as fontes
costumam sempre fornecer uma tensão um pouco maior quando estão sem
carga, por isso não se assuste se o multímetro mostrar 12.6V, 5.25V e 3.45V
(respectivamente), por exemplo.




                                                                           634
Medindo as tensões da fonte usando um multímetro

Para tornar a medição mais apurada, é interessante adicionar alguma carga na
fonte, ligando um HD velho, por exemplo. Basta conectá-lo em um dos
conectores molex da fonte antes de fazer as medições. Algumas fontes podem
fornecer tensões muito mais altas que o normal quando completamente sem
carga, gerando falsos positivos.

Aqui temos um esquema com a pinagem do conector de fonte ATX, para
consulta. Note que a fonte fornece também tensões de -5V e -12V, mas elas
não são usadas pelas placas modernas, de forma que você não precisa se dar
ao trabalho de testá-las:




                                                                         635
O ponto fraco deste teste do multímetro é que ele mostra as tensões da fonte
sem (ou com pouca) carga, quando a maioria dos problemas só aparece
quando a fonte está sob stress, em situações reais de uso. De qualquer forma,
testar com o multímetro é uma boa forma de testar fontes já sob suspeita,
evitando ter que fazer o teste usando mais um micro inocente.

Uma única fonte defeituosa não compromete a integridade do fabricante, afinal
problemas diversos podem ocorrer durante o uso. Entretanto, se você perceber
irregularidades nas tensões fornecidas ou defeitos prematuros em mais de uma
fonte de um mesmo modelo ou lote, troque rapidamente de fornecedor.

Finalmente, a dica mais óbvia e justamente por isso muitas vezes esquecida:
verifique a posição da chave 110/220 antes de ligar. Quase todas as fontes
vêm com a chave na posição 220 de fábrica, por isso é necessário mudar para
110 antes de ligar o micro. Antes de ligar qualquer micro em uma tomada 220,
cheque novamente e mude a chave. A menos que você tenha muito azar, ligar
uma fonte chaveada para 220 em uma tomada 110 vai apenas fazer com que o
micro não ligue, mas o contrário é quase sempre fatal.

Cooler

Outro erro comum é tentar ligar o micro "só pra testar" antes de instalar o
cooler. Isso até podia ser feito na época dos micros 486, que dissipavam pouco
calor e podiam funcionar por algum tempo sem o cooler, mas em um
processador atual isso pode ser desastroso. Como eles dissipam 60, 80 ou até
mesmo 90 watts de calor, o processador aquece rápido demais se ligado sem o
cooler e queima antes mesmo que o diodo térmico (responsável por desligar o
processador quando é atingida uma temperatura limite) tenha chance de fazer
seu trabalho. O processo é muito rápido: três ou quatro segundos depois de
ligar o micro sem o cooler, você ouve o estalo e o seu processador passa a ser
história.

Os processadores mais vulneráveis são os antigos Athlons, Durons e
Semprons de 32 bits, que não possuíam o heat-spreader metálico usado nos
Athlon 64 e Semprons atuais. Os processadores Intel possuem um circuito de
desligamento, que faz bem o seu trabalho, geralmente evitando a queima do
processador, mas ainda assim é bom não abusar da sorte.


                                                                          636
Este é um quadro de um vídeo antigo do Toms Hardware, que mostra um
Athlon Palomino torrado depois de passar alguns segundos funcionando sem o
cooler:




O estampido instantâneo só se aplica quando você realmente liga o micro sem
instalar o cooler, ou quando ele fica mal encaixado, sem fazer contato com o
die do processador. Quando o cooler está corretamente instalado, mas você só
se esquece de ligá-lo na alimentação, o processo é mais lento, já que o calor é
absorvido pelo metal do cooler, fazendo com que o processo de aquecimento
seja mais gradual e o processador trave ou desligue durante o processo, sem
realmente queimar.

De qualquer forma, é sempre importante verificar tudo antes de ligar o micro.
Se houver a mínima chance de algo dar errado, pode ter certeza de que vai dar
;). Não se esqueça também da pasta térmica, que é essencial para a boa
dissipação térmica e conseqüentemente para a vida útil do processador.

Outro problema relativamente comum nos processadores sem o heat-spreader
é o processador ser danificado durante a colocação do cooler. Sem a proteção
metálica, o que fica em contato com o cooler é o próprio wafer de silício do
processador, que é bastante frágil. Ao instalar o cooler em qualquer
processador Athlon, Duron, Sempron, Pentium III ou Celeron sem o protetor,
redobre os cuidados. Aplique pressão apenas sobre a presilha de encaixe,
nunca se apóie ou exerça força diretamente sobre o cooler.

Finalmente, temos um problema mais óbvio, mas que também acontece com
freqüência, que é encaixar o cooler na direção oposta à saliência do soquete,
fazendo com que ele fique "na diagonal", sem fazer contato com a superfície do
processador:




                                                                           637
Ligar o micro com o cooler instalado desta maneira equivale a ligá-lo sem o
cooler.

Smoke Test

Ao montar um micro, o primeiro boot é sempre um momento de tensão, já que
uma fonte com problemas de fábrica, ou algum componente mal encaixado
pode causar um pequeno desastre. No meio técnico, ligar o micro pela primeira
vez é chamado de "smoke test", ou teste da fumaça, em homenagem ao que
pode acontecer caso as coisas dêem errado ;).

Hoje em dia, a possibilidade de problemas graves acontecerem por causa de
problemas de montagem é relativamente pequena, pois os conectores são
todos projetados de forma que uma coisa não encaixe no lugar da outra. Desde
que você não deixe nenhuma placa mal encaixada (com os contatos na
diagonal, fechando um curto), não ligue um micro com a chave da fonte no 110
em uma tomada 220, nem tente instalar placas com o micro ligado, não existe
realmente muita coisa que possa acontecer.

O principal problema é a questão dos encaixes, que é o grande martírio dos
distraídos. Na maioria dos casos, tentar ligar o micro com uma placa ou um
pente de memória mal encaixado vai apenas fazer com que o boot pare com
uma das seqüências de bips do BIOS, sem maiores conseqüências, mas é
melhor não contar com a sorte. Algumas combinações podem realmente
causar tragédias, sobretudo nas placas AGP ou PCI Express.




                                                                          638
Placa AGP mal encaixada: um desastre em potencial

Antes de ligar, verifique se tudo está corretamente encaixado. Ao usar
gabinetes baratos, cheque duplamente, pois irregularidades no gabinete podem
deixar as placas fora de posição. Não é incomum que a placa seja empurrada
conforme você aperta o parafuso de fixação, por exemplo.

Embora a possibilidade de queimar todo o micro por causa de uma placa mal
encaixada ou uma fonte que venha com defeito de fábrica seja relativamente
pequena, a lei de murphy existe para nos lembrar que os problemas mais
calamitosos podem aparecer onde menos se espera (tem gente que morre
escorregando no banheiro...), por isso, cuidado nunca é demais. Afinal,
montando micros você está mexendo com componentes que podem muitas
vezes custar mais do que um mês de salário.

Ao montar micros, o ideal é sempre fazer o teste da fumaça depois de ligar
apenas os componentes essenciais (placa-mãe, processador, cooler, memória,
teclado e monitor). Se você estiver usando uma placa 3D cara, faça o primeiro
teste usando alguma placa de vídeo barata que tiver em mãos. Fazendo isso,
se algo calamitoso acontecer, você perde apenas parte dos componentes.

Você pode montar a placa-mãe sobre a própria caixa e o plástico antiestático e
usar uma chave Philips para ligar a placa, fechando o contato entre os dois


                                                                          639
polos do conector "Power SW" do painel para os botões do gabinete na placa-
mãe:




Se o primeiro boot ocorrer bem, acesse o setup e cheque as tensões da fonte.
Aproveite e dê também uma revisada nas configurações, principalmente as
relacionadas com o clock e as tensões utilizadas pelo processador. Ao
terminar, desligue o micro e vá instalando os demais componentes, um de cada
vez, sempre tomando o cuidado de desligar o micro e desconectar a fonte da
tomada antes de cada mudança.

Fazendo isso, fica também muito mais fácil detectar problemas. Afinal, se o
micro estava funcionando, mas depois de instalar uma placa de captura de
vídeo (por exemplo), o monitor fica preto e você passa a ouvir bips de erro,
significa que o problema está muito provavelmente relacionado a ela. Se você
já tivesse montado todo o micro, teria que começar a testar cada um dos
componentes até descobrir o que está errado.

Estática

A eletricidade estática é um risco constante que paira sobre os profissionais de
informática. Embora os riscos reais não sejam tão grandes quanto os manuais
podem nos levar a crer, a possibilidade de danos a componentes sensíveis
realmente existe. Um dos grande problemas é a falta de informações sobre o
tema. Cada técnico parece ter uma opinião diferente e informações folclóricas
são propagadas junto com as reais.


                                                                            640
As cargas eletrostáticas surgem naturalmente, principalmente devido a atrito
com materiais isolantes (carpete, cabelo, lã, fibra de vidro, etc.). A eletricidade
se acumula justamente porque você está isolado do solo (por causa do tênis ou
carpete, por exemplo) e ela não tem para onde fluir.

Quando você toca em algum objeto metálico, o diferencial elétrico faz com que
a eletricidade flua de forma violenta na direção com potencial mais baixo.
Dependendo do volume de eletricidade acumulada, a energia pode percorrer
até mesmo através de uma camada fina de material isolante ou ar. É por isso
que usar luvas de borracha não impedem completamente que você danifique
componentes com estática. O plástico anti-estático usado em embalagens de
eletrônicos tem uma estrutura um pouco diferente do plástico usado em
sacolas plásticas comuns, daí o seu nome.

Um exemplo clássico são as nuvens de chuva, que estão separadas do solo
por alguns quilômetros de ar. Apesar disso, quando eletricidade suficiente se
acumula, surge o raio, uma descarga poderosa o suficiente para vencer a
distância. Em ambientes secos, você pode criar um raio em miniatura
esfregando uma peça de lã por algum tempo e depois aproximando o dedo de
algum objeto metálico, como uma maçaneta. Quando ele estiver bem próximo,
você vê uma faísca rápida, que é justamente a descarga eletrostática fluindo do
seu corpo para o metal, vencendo a camada de ar que os separa. Nosso corpo
é capaz de acumular cargas de milhares de volts. A amperagem é muito baixa,
por isso não é suficiente para causar danos a nós ou outras pessoas, mas é
mais do que suficiente para causar descargas capazes de danificar circuitos
eletrônicos.

Como disse, as descargas ocorrem justamente por causa do diferencial elétrico
entre o seu corpo e os componentes, de forma que para eliminar o problema
com descargas eletrostáticas, basta igualar o potencial elétrico de ambos.
Existem no mercado as famosas pulseiras anti-estáticas, que possuem um fio
de aterramento destinado a eliminar cargas acumuladas no seu corpo. Elas são
baratas, geralmente menos de 20 reais, de forma que é sempre bom ter uma.
Ao contrário do que muitos acreditam, o fio da pulseira não precisa
necessariamente ser ligado a um fio terra, ela também oferece uma boa
proteção se ligada ao gabinete do micro ou a alguma peça metálica da carcaça
do notebook onde você vai trabalhar.

O objetivo é simplesmente fazer com que o seu corpo e os demais
componentes do micro fiquem como mesmo potencial elétrico, eliminando a
possibilidade de ocorrerem descargas. Se preferir, você pode primeiro tocar
uma grade metálica (não pintada) antes de conectar a pulseira e começar a
trabalhar, mas isso não é realmente necessário.




                                                                               641
Pulseira antiestática

Se você faz parte dos 99% que não usam a pulseira, vamos à segunda linha de
prevenção. Ela consiste em não trabalhar sobre pisos de carpete ou usando
roupas de lã e sempre tocar uma grade ou outro objeto de metal ligado ao solo
antes de abrir o micro, além de tocar o gabinete constantemente enquanto
estiver trabalhando. Também não vale ficar esfregando as mãos no cabelo,
pois ele tem uma tendência a acumular cargas positivas maior do que a própria
lã.

Se as tomadas tiverem aterramento, uma boa coisa a fazer antes de começar a
trabalhar é tocar o gabinete com a fonte ainda ligada na tomada. O fio de
aterramento é ligado ao corpo da fonte, que por sua vez é parafusada ao
gabinete (é por isso que micros ligados em tomadas não-aterradas muitas
vezes dão choque). Ao tocar no gabinete, a carga é transferida para ele e o
excesso flui através do terra da tomada. Depois disso, você pode desconectar
o gabinete da tomada e trabalhar normalmente. Se, por outro lado, as tomadas
não são aterradas, não adianta muito fazer isso. O melhor é tocar em uma
grade metálica, desligar o gabinete da tomada e cruzar os dedos.

Além de todos os cuidados, soma-se a recomendação de sempre trabalhar
manuseando os componentes pela borda, evitando ao máximo tocar os chips e
contatos metálicos:




                                                                          642
Componentes defeituosos

É relativamente comum que peças venham com problemas, seja por defeito de
fabricação, seja por danos causados pelo transporte ou manuseio. Em muitos
casos a peça simplesmente não funciona, enquanto em outros apresenta
problemas de estabilidade ou erros diversos. Não confie que um componente
está bom simplesmente porque você acabou de tirá-lo da caixa; sempre
procure verificar e testar tudo.

Pentes de memória, por exemplo, podem ser facilmente danificados por
eletricidade estática quando manuseados. Como um pente é composto por 8
ou 16 chips e cada um possui vários milhões de transístores, o dano costuma
ser localizado, afetando apenas um conjunto de células adjacentes. Ao usar o
pente, o sistema pode funcionar de forma normal (sobretudo se a área
danificada estiver próxima dos últimos endereços lógicos do módulo), porém,
quando o sistema operacional ou os programas acessarem a área danificada,
você verá erros ou travamentos.

Um programa de teste de memória, como o memtest, testa individualmente
cada uma das células, indicando até mesmo problemas que aparecem apenas
em determinadas situações. Os pentes de memória podem ser danificados
também por picos de tensão (que a fonte de alimentação e os circuitos da



                                                                         643
placa-mãe não sejam capazes de atenuar completamente) ou ainda por causa
de problemas na fonte ou nos circuitos de alimentação da placa-mãe.

Normalmente, os pentes de memória são os primeiros componentes a
apresentar problemas em micros sem aterramento, ligados em uma rede
elétrica precária ou com problemas na fonte de alimentação. No caso dos HDs,
temos o aparecimento de badblocks, que podem ser causados por impactos
enquanto os discos estão girando (como no caso clássico do usuário batendo
na mesa quando um programa trava), por problemas diversos na rede elétrica
ou fonte (assim como no caso dos pentes de memória) ou ainda pelo
envelhecimento natural da mídia, que começa a se manifestar após alguns
anos de uso.

Todo HD moderno possui uma área "extra" chamada de defect map. Ela é
usada automaticamente pela placa controladora sempre que setores do disco
apresentam erros de leitura. Os setores defeituosos são "remapeados", ou
seja, a controladora deixa de usar o setor defeituoso e passa a usar um dos
setores da área reservada. Só quando estes setores extra se acabam é que
programas de diagnóstico como o scandisk ou o badblocks (no Linux)
começam a indicar setores defeituosos no HD, ou seja, a presença de alguns
poucos setores defeituosos geralmente indica a presença de um problema
mais grave, pois antes deles já vieram muitos outros. Em alguns casos, o
problema se estabiliza e o HD pode ser usado por meses sem o aparecimento
de novos badblocks, mas em outros o problema pode ser crônico.

Em micros de trabalho, o ideal é substituir o HD por outro e transferir o HD com
badblocks para um micro usado para tarefas menos importantes.

Dispositivos USB

Com o aparecimento de todo tipo de carregadores, luzes e gadgets em geral,
as portas USB passaram a ser outra fonte de problemas e acidentes. Embora o
USB seja um barramento plug-and-play, portas ou periféricos queimados são
bem mais comuns do que nas antigas portas seriais e paralelas.

O grande problema é que o USB oferece alimentação elétrica aos
componentes. A especificação prevê o fornecimento de 0.5 ampere a 5 volts (o
que corresponde a 2.5 watts), mas, para manter uma boa margem de
tolerância, os fabricantes oferecem muitas vezes portas capazes de fornecer 1
ampere (ou mais, em alguns casos). É por isso que você muitas vezes
consegue que uma gaveta para HDs de notebook, projetada para usar o
fornecimento elétrico de duas portas USB, funcione perfeitamente com apenas
uma.

Tanta energia favorece o aparecimento de problemas. Um periférico USB mal
projetado, ou um circuito ou conector defeituoso, que provoque um curto ao ser
encaixado, pode causar uma pequena tragédia, queimando a porta USB ou até
mesmo causando danos adicionais na placa-mãe. Normalmente, isso é
acompanhado por um travamento do sistema, que leva embora trabalhos não
salvos.


                                                                            644
Com o barateamento dos pendrives, cartões e leitores e a entrada no mercado
de toda sorte de periféricos de baixa qualidade, eles também estão se tornando
uma fonte comum de problemas, por isso é sempre bom ser precavido e testar
qualquer novo periférico USB em um micro antigo, antes de espetá-lo no seu
notebook ou micro de trabalho.

Softwares

Não é comum que softwares causem problemas de hardware, mas não é
impossível de acontecer. Um caso famoso foi o instalador do Mandrake 9.2
(http://www.newsforge.com/article.pl?sid=03/10/27/0218209),         que
acidentalmente usava uma instrução que apagava o firmware de um certo
modelo de gravador da LG, inutilizando o equipamento até que o firmware
fosse regravado.

O vírus Chernobyl (http://www.cert.org/incident_notes/IN-99-03.html), que
causou pânico entre 1999 e 2000, apagava o BIOS da placa-mãe, usando
funções reservadas aos programas de atualização, novamente inutilizando o
equipamento até que o BIOS fosse regravado. As assistências que contavam
com gravadores de EPROM foram bastante requisitadas nesta época.

Como os componentes modernos possuem cada vez mais firmwares
atualizáveis via software, a possibilidade do aparecimento de programas ou
vírus que danifiquem (seja acidentalmente ou intencionalmente) o componente,
apagando ou danificando o firmware, é cada vez maior. Também é possível
(pelo menos em teoria) que um software cause danos forçando a leitura
repetitiva de alguns poucos setores de um pendrive ou cartão de memória, até
que as células sejam danificadas, por exemplo.

Como a velocidade de rotação dos coolers e até mesmo a freqüência de
operação da placa-mãe e diferentes barramentos podem ser controladas via
software na grande maioria das placas modernas, também não é impossível
que um software consiga causar danos ou travamentos ao forçar um overclock
excessivo ou causar superaquecimento, reduzindo a velocidade de rotação dos
coolers.

Enfim, embora seja extremamente raro, não é impossível que danos de
hardware sejam causados via software, de forma que esta possibilidade
também não deve ser descartada completamente.

Conectores de força

Embora seja um assunto básico, existem atualmente tantos conectores de
força diferentes que é sempre bom dar uma revisada, até para que você
conheça os nomes e um pouco sobre a história de cada um.

Na foto a seguir temos o conector berg, usado pelo drive de disquetes, e o
conector molex, que usamos para o HD e outros dispositivos. Ambos possuem
4 fios (12V, 5V e dois neutros). A grande diferença entre os dois é mesmo o
tamanho e a forma de encaixe. O molex é o conector mais usado em qualquer
PC atual. Além de ser usado pelos HDs, drives ópticos e outros periféricos, ele

                                                                           645
é usado como fonte de energia auxiliar em algumas placas 3D AGP. O
conector berg, por sua vez, está caindo em desuso, junto com os drives de
disquete; normalmente as fontes incluem apenas um:




                Conector berg (à esquerda) e conector molex

O conector molex tem um formato semitriangular, que impede que ele seja
encaixado invertido. Entretanto, o conector pode ser muito duro de encaixar ou
retirar, o que acaba causando acidentes. Imagine que você está segurando o
HD com uma mão e tentando puxar o conector com a outra; como está muito
duro, você faz força e, quando o conector finalmente se solta, você acaba sem
querer batendo o HD em cima da mesa :-O. Nesses casos, o melhor é deixar o
HD fixo no gabinete (ou outro local firme) e puxar o conector com cuidado, com
a ajuda de um alicate, caso necessário.

O problema com o conector berg e os drives de disquetes é que geralmente
não existe nada que impeça que você o encaixe de forma invertida. A boa
notícia é que isso não queima o drive, apenas faz com que ele não funcione.
Ele simplesmente fica com a luz de leitura acesa continuamente, até que você
desvire o cabo de força, similar ao que acontece ao ligar o drive com o cabo de
dados invertido.

Em seguida temos um conector de força SATA, de 15 pinos, que substituiu o
molex nos HDs e nos outros periféricos SATA. Veja que o conector da direita é
alimentado por 5 fios, em vez de 4, como no molex. O quinto fio disponibiliza a
tensão de 3.3V, que não é oferecida pelo molex.

Além disso, o conector SATA é mais fino e o encaixe é mais suave. Como as
fontes oferecem apenas um, dois ou mesmo nenhum conector de força SATA,
existem adaptadores molex > SATA, geralmente fornecidos junto com os
drives. O problema destes adaptadores é que eles não incluem o fio de 3.3V,


                                                                           646
por isso estão condenados a entrar em desuso conforme apareçam drives
projetados para usar a tensão:




          Conector SATA (à direita) e cabo adaptador molex > SATA

Muitos HDs SATA possuem tanto o conector de força SATA quanto um
conector molex, permitindo que você use um ou outro de acordo com a
conveniência. Nesses casos, não existe nenhum prejuízo para o drive em usar
o conector molex no lugar do conector SATA.

Em seguida temos o conector ATX, que alimenta a placa-mãe. Existem duas
versões: a original, com 20 pinos, que utilizamos desde o Pentium II e a versão
atualizada (chamada de ATX24 ou ATX v2), com 24 pinos, que utilizamos nas
placas atuais. O conector ATX de 24 pinos nada mais é do que o antigo
conector de 20 pinos acrescido de mais 4 à esquerda. Nada muda na posição
ou no encaixe dos anteriores, de forma que as fontes geralmente usam
conectores de 24 pinos destacáveis, onde você pode remover o conector com
os 4 pinos adicionais quando precisar usar a fonte em conjunto com uma placa
antiga:




                                                                           647
Você pode perguntar qual a necessidade de adicionar 4 novos pinos ao
conector, se eles transportam as mesmas tensões de 12V e 5V já presentes
nos anteriores. O principal motivo não tem a ver com a pinagem em si, mas
simplesmente com a capacidade de fornecimento da fonte. As fontes antigas
possuem geralmente 300 ou 350 watts, que são insuficientes para muitos
micros atuais. Para evitar acidentes, os fabricantes decidiram introduzir o novo
conector, de forma a dificultar o uso das fontes antigas. De qualquer forma,
existem no mercado adaptadores que transformam um conector ATX de 20
pinos em um ATX24 ou convertem um conector molex nos 4 pinos adicionais.

Em seguida temos o P4, um conector auxiliar, com 4 pinos, destinado a
fornecer energia extra para o processador. Ele sempre está disponível bem ao
lado do soquete do processador, alimentando diretamente os reguladores de
tensão que fornecem energia para ele. Isso evita que toda a eletricidade
consumida pelo processador tenha que ser transportada desde o conector
ATX, através de trilhas na placa-mãe.

O conector P4 é composto de 2 fios amarelos (12V) e 2 pretos (neutro). Na
maioria das placas-mãe com o conector, ele é obrigatório; a placa
simplesmente não liga se ele estiver desconectado. Em algumas placas
antigas, existem dois encaixes, de forma que você pode escolher entre usar o
conector P4 ou um conector molex (de forma a manter a compatibilidade com
fontes antigas) e, finalmente, existem algumas placas antigas, onde o conector
P4 está disponível, mas a placa pode funcionar com ele desconectado,
dependendo do consumo do processador usado.

Na foto a seguir temos o conector P4, ao lado do conector de 3 pinos usado
pelo cooler.




                                                                            648
Conector P4 (à esquerda) ao lado do conector de energia do cooler

Note que, embora seja possível encaixar o conector destacável de 4 pinos do
conector ATX no encaixe para o conector P4, fazer isso danificaria a placa-
mãe, pois ambos possuem pinagens diferentes. Não tente fazer isso:




                                Kabum! :)

O conector P4 possui ainda uma versão com 8 pinos, usada por algumas
placas. Apesar do aumento no número de pinos, o conector continua usando
apenas fios de 12V e GND. Poucas fontes oferecem esta saída de 8 pinos,


                                                                         649
mas existem adaptadores que convertem um conector P4 de 4 pinos em um de
8.




               Conector P4 (à direita) e a versão com 8 pinos

Embora um slot PCI Express 16x seja capaz de fornecer até 75 watts de
energia para a placa de vídeo, muitas placas topo de linha vão muito além
desta marca, exigindo o uso de um conector auxiliar. Na época das placas
AGP, era normalmente utilizado um conector molex, mas as placas PCI
Express ganharam um conector de 6 pinos próprio para a tarefa. Sem o
conector encaixado, a placa pode trabalhar em modo de funcionalidade
reduzida, operando a uma freqüência mais baixa ou com recursos
desabilitados, ou simplesmente se recusar a funcionar, impedindo o boot.




          Conector de força auxiliar em uma placa 3D PCI Express

Fontes de 700 watts ou mais possuem, normalmente, dois conectores PCIe de
6 pinos, prevendo o uso de duas placas em SLI ou Crossfire, mas fontes mais
baratas podem ter apenas um ou nenhum. Nesses casos, é possível usar um

                                                                        650
adaptador, ligado a um conector molex. Lembre-se de calcular a capacidade da
fonte ao tentar usar uma fonte barata qualquer em conjunto com placas 3D
mais gulosas, sobretudo ao usar duas em SLI! Uma fonte operando além do
limite, pode realmente explodir, danificando suas placas. Se você não tem
dinheiro para comprar uma fonte de 700 watts ou mais, não deve pensar em
comprar placas 3D de ponta em primeiro lugar.




                      Adaptador molex > PCI Express

Concluindo, as antigas fontes AT forneciam energia para a placa-mãe através
de dois conectores de 6 pinos, chamados de P8 e P9. Os dois conectores
devem ser ser encaixados com os fios pretos no centro, pois ao inverter você
pode queimar a placa-mãe. Um dos fatores que impulsionaram o
desenvolvimento do padrão ATX, foi justamente o grande número de acidentes
de montagem causados por eles:




          Conectores de força em uma placa-mãe antiga, padrão AT



                                                                         651
Dicas de compra

Antigamente existia a polêmica entre os "PCs onboard" e os "PCs offboard",
mas atualmente praticamente todas as placas trazem som e rede onboard. Isso
acontece por que tanto as placas de som quanto as de rede atingiram um "pico
evolutivo" há alguns anos, onde deixou de existir uma grande diferença
"prática" de performance e qualidade entre as placas que justificasse gastar
mais por uma placa offboard na maioria dos casos.

Uma placa de rede offboard da 3Com ou Intel pode oferecer pequenos ganhos
de desempenho, um certo ganho de estabilidade do sinal ou uma utilização do
processador um pouco mais baixa durante as transferências se comparada a
um chipset Realtek onboard, mas se formos comparar a rede onboard com
uma placa de rede offboard barata, como uma Encore 10/100 baseada no chip
VIA Rhine 6105, por exemplo, é bem provável que a placa onboard seja
superior, principalmente se considerarmos que a maioria das placas-mãe
atuais trazem rede gigabit, com o chipset de rede ligado diretamente ao
barramento PCI-Express, evitando assim o gargalo do barramento PCI.

Algo similar acontece no caso do som onboard. Desde as Sound Blaster 16 ISA
as placas de som atingiram um nível de qualidade sonora a partir do qual a
maioria das pessoas não consegue perceber diferenças consideráveis de uma
placa para a outra. As placas evoluíram em muitos sentidos, naturalmente,
incorporando suporte a múltiplos fluxos de áudio, suporte a taxas de
amostragem mais altas, recursos 3D e assim por diante, mas a característica
básica, que é a qualidade do som ao ouvir música não mudou muito desde
então. Ela depende mais da qualidade dos circuitos analógicos e dos
conectores (além da qualidade dos fones ou das caixas de som, obviamente)
usados do que do chipset propriamente dito.

Atualmente podemos classificar a maioria dos chipsets de som onboard em
duas categorias: As placas que seguem o antigo padrão AC'97 a as placas
compatíveis com o padrão Intel HDA (High Definition Audio), que oferecem
suporte a oito canais de áudio independentes com 32 bits de definição e taxa
de amostragem de 192 kHz, contra 6 canais (20 bits, 48 kHz) do AC'97.

Assim como no caso das placas de rede, existem placas de som offboard de
alta qualidade, destinadas ao público entusiasta e ao uso profissional. Elas
oferecem uma variedade maior de saídas e uma qualidade geral melhor, mas a
maioria das pessoas não percebe diferença na qualidade do som e acaba não
utilizando os recursos adicionais. É por isso que as tradicionais placas de som
da Creative, incluindo as Audigy e as X-Fi, não são nem de longe tão populares
quanto antigamente.

Naturalmente, o mesmo não se aplica na questão das placas 3D, onde as
offboard ainda reinam absolutas. De uma forma geral, as placas de vídeo
onboard possuem duas limitações crônicas.

A primeira é o fato do chipset de vídeo ser integrado à ponte norte do chipset, o
que traz limitações no volume de transístores e também na freqüência de
operação. Isso limita os projetos de vídeo onboard a soluções simplificadas,

                                                                             652
que não têm como concorrer diretamente nem mesmo com as placas offboard
low-end. Mesmo uma GeForce 6200 TC, que é a placa mais lenta e barata
dentro da linha GeForce 6, é de duas a seis vezes mais rápida do que uma
Intel GMA 950 onboard (variando de acordo com a aplicação). Uma GeForce
8800 GTX atual é mais de 10 vezes mais rápida do que uma 6200 TC (até 20
vezes mais rápida em algumas situações), de forma que por aí você você pode
ter uma idéia das proporções.

A segunda limitação é a questão da memória. Placas 3D offboard utilizam
memória dedicada, enquanto as placas onboard precisam compartilhar a
memória principal com o processador e os demais periféricos do micro.

Com a popularização dos módulos DDR2 (e DDR3) e de placas com dual-
channel, o barramento com a memória foi ampliado sensivelmente, o que
beneficiou as placas onboard. A questão é que as placas offboard evoluíram na
mesma proporção, se mantendo muito à frente. Uma GeForce 8800 Ultra
possui um barramento de 103.7 GB/s com a memória, enquanto dois módulos
DDR2 PC2-6400 em dual-channel oferecem um barramento teórico de 12.8
GB/s (quase 10 vezes menos, e com tempos de latência mais altos), que
precisam ser compartilhados entre a placa de vídeo onboard, o processador e
os demais periféricos.

A principal questão é que nem todo mundo usa o PC para jogos e mesmo entre
os que usam, muitos rodam títulos antigos ou se contentam em jogar com
resoluções mais baixas e com efeitos desativados. É impressionante o volume
de pessoas que ainda jogam Counter Strike e Diablo 2 em pleno ano de 2007.
:)

Isso cria situações curiosas. O maior fabricante de chipsets de vídeo 3D (em
volume) é a Intel, que não fabrica uma única placa offboard desde 1998.
Apenas vendendo chipsets com diferentes versões do chipset Intel GMA
onboard, eles vendem um número maior de chipsets 3D do que a nVidia e a
ATI juntas.

Uma solução para o desenvolvimento de placas com vídeo onboard de alto
desempenho seria integrar chipsets de vídeo e chips de memória dedicada,
solução que poderia oferecer o mesmo desempenho de uma placa offboard
baseada no mesmo chipset de vídeo. A questão principal neste caso seria o
custo. Mais de 80% do custo de produção de uma placa 3D correspondem
justamente ao chipset 3D e os chips de memória. Integrá-los diretamente na
placa-mãe ofereceria alguma economia de custos relacionada ao
aproveitamento de espaço no PCB e compartilhamento de alguns dos circuitos
de regulagem de tensão, mas na prática a economia seria pequena demais
para justificar a perda da possibilidade de atualizar a placa de vídeo.

Isso fez com que a velha fórmula de usar um chipset de vídeo low-end
integrado ao chipset, utilizando memória compartilhada, prevalecesse. De certa
forma, isso é bom, pois você pode comprar uma placa-mãe com vídeo onboard
pagando pouca coisa a mais e instalar uma placa offboard apenas se precisar.




                                                                          653
Uma questão interessante é que as placas sem vídeo onboard custam
freqüentemente mais caro do que os modelos com. Isso acontece por que as
placas sem vídeo onboard são tipicamente placas full-ATX ou mini-ATX, com 6
ou 7 slots, destinadas ao público entusiasta, enquanto as placas com vídeo
onboard são tipicamente modelos micro-ATX, com menos slots de expansão,
destinadas ao mercado de placas de baixo custo.

Concluindo, temos também a questão dos modems. Embora os modems
estejam caindo em desuso, quase todos os chipsets VIA, SiS e nVidia ainda
trazem um controlador de modem integrado. Entretanto, ficam faltando os
componentes analógicos, que podem ser instalados através de um riser AMR
ou CNR.

A maioria dos fabricantes não inclui mais estes slots, já que eles tomam o lugar
de um slot PCI ou PCI Express e atualmente, apenas algumas placas da PC-
Chips, ECS e Phitronics trazem o "kit completo", com tanto o slot AMR quanto
o riser. Como a qualidade dos modems PCI decaiu bastante na última década,
com os antigos hardmodems dando lugar a softmodems cada vez mais
baratos, muitas vezes o modem onboard oferece uma qualidade até superior.

Processador

Uma questão interessante sobre os processadores é que os preços são
definidos de forma a maximizar os lucros do fabricante dentro de cada
categoria de preço e não de acordo com a performance relativa. Em muitos
casos, modelos de baixo custo podem ser vendidos com prejuízo, com o
objetivo de ganhar volume, ou simplesmente evitar que o concorrente ganhe
espaço, enquanto os processadores mais rápidos de cada família são vendidos
a preços astronômicos, de forma a maximizar os lucros entre o público que
quer o melhor desempenho a qualquer custo.

Outra variável importante é a questão do overclock. O processador A pode
operar a 2.0 GHz, enquanto o processador B opera a 2.66 GHz. Naturalmente
o processador B é mais caro, mas ambos compartilham a mesma arquitetura,
de forma que a freqüência que ambos podem atingir na prática é muito similar.
Você pode então economizar comprando o processador A e fazer overclock
para 2.66 GHz ou mais, obtendo o desempenho do processador B por uma
fração do custo. Investindo a diferença em uma placa-mãe e cooler melhores,
mais memória e assim por diante, você acaba com um PC de configuração
superior gastando o mesmo.

Para quem faz overclock, quase sempre a melhor opção em termos de custo-
benefício é comprar o processador mais lento dentro da família e aumentar a
freqüência até o máximo que ele suportar mantendo a estabilidade. Em alguns
casos, o segundo modelo (o de 2.2 GHz em vez do de 2.0 GHz, por exemplo)
pode custar apenas um pouco a mais e suportar freqüências um pouco
superiores, ou permitir que você obtenha a mesma freqüência utilizando um
FSB mais baixo na placa-mãe (e com isso uma maior estabilidade), de forma
que ele pode passar a ser a melhor opção.



                                                                            654
O processo de litografia usado na fabricação dos processadores faz com que
dois processadores nunca sejam exatamente iguais. Pequenas diferenças no
foco das máscaras fazem com que alguns processadores fiquem mais
"perfeitos" que os outros, o que faz com que alguns suportem overclocks
maiores. Mesmo comparando dois processadores da mesma série e
produzidos na mesma época (ou até mesmo dois processadores que
compartilharam o mesmo wafer), você perceberá que sempre um deles é
capaz de atingir freqüências um pouco superiores ao outro. Um bom overclock
também depende um pouco da sorte.

Nos primeiros degraus da tabela, os preços crescem de forma mais ou menos
proporcional. Entretanto, a partir de um certo ponto a subida se intensifica e
você passa a pagar uma diferença cada vez maior por cada degrau a mais de
desempenho. Se o processador B custa 50% a mais que o processador A, em
troca de um aumento de apenas 10% na freqüência, é muito difícil justificar a
compra, por mais que você precise de um PC mais rápido.

Um erro comum que as pessoas cometem ao montar o micro é gastar mais
para montar "um micro que dure". Isso é uma ilusão, pois qualquer PC que
você monte hoje vai estar desatualizado daqui a dois anos. O melhor a fazer é
escolher componentes que atendam às suas necessidades mais imediatas,
escolhendo componentes que ofereçam possibilidades de upgrade, gastando
menos e assim já se preparando para as próximas atualizações.

Aqui temos uma tabela com os preços dos processadores Intel, em julho de
2007, que podemos usar como exemplo. Os preços aqui no Brasil variam muito
de acordo com a loja, por isso estou usando a tabela com os preços oficiais,
nos EUA. A idéia é apenas mostrar as proporções, não oferecer um guia de
preços:

      Celeron 420 (1.6 GHz) $50
      Celeron D 352 (3.2 GHz) $57
      Celeron 430 (1.8 GHz) $59
      Celeron 440 (2.0 GHz) $70
      Pentium E2140 (1.6 GHz) $89
      Pentium E2160 (1.8 GHz) $96
      Core 2 Duo E4300 (1.8 GHz) $117
      Core 2 Duo E4400 (1.8 GHz) $139
      Core 2 Duo E6300 (1.86 GHz) $164
      Pentium D 945 (3.4 GHz) $185
      Core 2 Duo E6400 (2.13 GHz) $186
      Core 2 Duo E6600 (2.4 GHz) $223
      Core 2 Duo E6700 (2.66 GHz) $318
      Core 2 Quad Q6600 (2.4 GHz) $480
      Core 2 Extreme QX6700 (2.66 GHz) $968
      Core 2 Extreme X6800 (2.93 GHz) $975

Olhando a tabela, você poderia se sentir tentado a comprar um Celeron D 352
ou um Pentium D 945, mas isso não seria uma boa idéia, pois o desempenho
deles é inferior ao do Celeron 430 e do Core 2 Duo E6400, que custam na
mesma faixa de preço. Eles seriam apenas uma opção de upgrade para quem

                                                                          655
possui uma placa-mãe soquete 775 antiga, que não é compatível com os
processadores da plataforma Core.

Imagine que você se decidiu por um Core 2 Duo E6600, por exemplo. Ele ainda
não está na "zona vermelha", onde os preços começam a subir de forma
desproporcional, mas também não é um processador barato. Se você puder se
contentar com um processador apenas um pouco mais lento, você poderia
comprar um Celeron 430 que custa menos de um terço do preço e fazer um
overclock modesto para 2.39 GHz (usando bus de 266 MHz ao invés dos 200
MHz padrão), ou mesmo ir mais longe (já que ele pode trabalhar estavelmente
a 2.8 GHz ou mais com a ajuda de um bom cooler). Se você faz questão de um
processador dual-core, poderia comprar um Pentium E2140 e fazer overclock
para 2.4 GHz (usando bus de 300 MHz).

Em ambos os casos, você terá um desempenho um pouco inferior ao do E6600
(o Celeron é single-core e o Pentium E tem menos cache), mas em
compensação vai gastar muito menos. Depois de um ano, os preços tendem a
cair em pelo menos 30%, de forma que, mesmo que você optasse por atualizar
o processador, acabaria gastando menos do que pagaria inicialmente apenas
pelo E6600. O Celeron ou Pentium E usado poderia ser vendido e assim ajudar
a financiar o próximo upgrade.

O processador é um bom componente onde economizar, pois ele pode ser
substituído facilmente. O mesmo não se aplica à placa-mãe, que é o
componente "base" do PC. Se você vai montar um micro de baixo custo, o
melhor é comprar o processador mais barato dentro da arquitetura atual (como
o Celeron 420, no caso da plataforma Core) e investir a diferença na placa-
mãe. Se sobrar um pouco de dinheiro, também compensa investir um pouco
mais no cooler.

A placa-mãe é o componente mais importante, pois vai ser o que você vai
aproveitar ao longo de mais upgrades. O cooler é também um bom lugar para
investir alguns trocados, pois um bom cooler permite que você obtenha
overclocks maiores, o que ajuda a amenizar a falta de desempenho do
processador. O overclock sempre reduz a vida útil do processador, mas isso
não é um problema se você tiver planos de trocá-lo depois de um ano, por
exemplo.

A memória RAM também influencia diretamente o desempenho do micro, pelo
simples fato de que sem memória RAM suficiente o sistema passa a usar
memória swap. Por outro lado, a memória é um componente facilmente
atualizável, por isso você pode optar por usar um único módulo de 1 GB, por
exemplo e deixar para comprar o segundo (para completar 2 GB e ativar o
dual-channel) quando tiver dinheiro ou precisar de mais memória. É sempre
recomendável usar dois módulos idênticos em dual-channel, mas isso não é
uma regra. Dois módulos diferentes podem funcionar perfeitamente, desde que
você deixe a placa-mãe ajustar a temporização automaticamente ou ajuste os
tempos de forma que correspondam aos do módulo mais lento.

Se você está montando um micro para jogos, então a placa 3D passa a ser o
item mais importante, seguido do processador, memória e HD. Na maioria dos

                                                                        656
jogos, o desempenho da placa 3D torna-se um gargalo muito antes do
desempenho do processador, de forma que é preferível comprar uma placa 3D
mediana e um processador low-end do que o contrário.

Ao usar uma placa 3D offboard, dê uma olhada nas placas-mãe sem vídeo
onboard. Elas podem custar o mesmo ou até um pouco mais caro que os
modelos populares com vídeo, mas com certeza você leva outros recursos em
troca do vídeo onboard que não vai usar. As placas baseadas nos chipsets
nForce costumam ser boas opções.

Existe uma pequena diferença de preço entre os processadores boxed (ou
retail) e os OEM (tray). Antigamente, se especulava sobre diferença de
qualidade entre os dois tipos, já que os boxed são destinados à venda direta ao
consumidor, enquanto os OEM são destinados a integradores, mas atualmente
isso não existe. A vantagem dos boxed (fora a caixa, que você vai jogar no lixo
depois de abrir) é que eles vêm com o cooler, o que pode justificar a diferença
de preço. Entretanto, o cooler é sempre um modelo simples, apenas bom o
suficiente para refrigerar o processador à freqüência nominal. Se você pretende
fazer overclock, prefira comprar um processador OEM e um cooler de melhor
qualidade.

Memória

Os módulos de memória podem ser divididos em três categorias: módulos
"genéricos", sem marca, módulos de marcas conhecidas, como Kingston,
Micron, Corsair, Samsung, etc. e módulos "premium", que oferecem tempos de
acesso mais baixos, suportam freqüências de clock mais elevadas e/ou
possuem dissipadores avantajados, que facilitam o overclock.

De uma forma geral, a diferença de preço entre os módulos genéricos e os
módulos das marcas conhecidas é muito pequena, inferior a 10% na grande
maioria dos casos, por isso acaba valendo mais à pena evitar os genéricos.

Não que eles sejam necessariamente ruins. Em muitos casos, são usados os
mesmos chips usados em módulos de marcas conhecidas, muitas vezes com a
mesma qualidade de fabricação e acabamento. O mercado de fabricação de
módulos de memória é incrivelmente concorrido, de forma que os fabricantes
que produzem produtos inferiores, ou que possuem margens de defeitos acima
da média, acabam não sobrevivendo muito tempo.

A principal questão é que comprando módulos genéricos a possibilidade de dar
o azar de comprar um módulo ruim é maior, já que estamos falando de
fabricantes que trabalham com margens de lucro incrivelmente apertadas e se
engalfinham por qualquer centavo a menos no preço de venda. Fabricantes
conhecidos trabalham com preços um pouco acima da média e por isso podem
se dar ao luxo de ter melhores sistemas de controle de qualidade e oferecerem
garantias maiores.

Os módulos "premium", por sua vez, raramente são uma boa opção de compra,
pois a diferença de preço é muito grande, podendo chegar a 100% ou mais em

                                                                           657
relação a módulos genéricos da mesma capacidade e o pequeno ganho de
desempenho não compensa o investimento.

Módulos premium são compostos por chips escolhidos durante a fase inicial de
testes, antes que eles sejam soldados aos módulos. Assim como nos
processadores, alguns chips de memória são capazes de operar a freqüências
mais altas que outros. Isso acontece devido a pequenas diferenças no foco das
lentes de litografia. Combinando estes módulos escolhidos a dedo com um
controle de qualidade mais rigoroso e dissipadores mais eficientes fazem com
que estes módulos realmente se destaquem.

O grande problema é que os fabricantes aproveitam o hype e o limitado volume
de produção para os venderem a preços muitos mais altos. Comprar módulos
premium é como comprar roupas de grife. A qualidade normalmente é um
pouco superior, mas a grande diferença de preço não compensa.




               OCZ Reaper, um exemplo de módulo "premium"

Talvez você se sinta melhor tendo um par de módulos Corsair Dominator ou
OCZ Reaper dentro do gabinete e talvez até possa mostrá-los aos amigos, mas
se a idéia é melhorar a boa e velha relação custo benefício, então você
aproveitaria melhor seu dinheiro investindo em uma placa 3D melhor, em
processador um pouco mais rápido, ou em uma placa-mãe com mais recursos.

Em seguida temos a questão da freqüência e tempos de acesso. Em casos em
que o vendedor é bem informado, ele mesmo pode lhe fornecer as
informações, caso contrário você acaba sendo obrigado a pesquisar pelo
código de identificação decalcado no módulo ou pelo código de identificação do


                                                                          658
fabricante. Nos módulos da Kingston, por exemplo, você encontra um código
como "KVR533D2N4/512" na etiqueta de identificação do módulo:




Uma pesquisa rápida no http://kingston.com mostra o significado do código:




A sigla "KVR" indica a linha de produtos da qual o módulo faz parte, neste caso
a "ValueRAM", a linha de módulos de baixo custo da Kingston. Em seguida
temos a freqüência de operação suportada pelo módulo. No caso do módulo da
foto, temos um "533", que indica que ele é um módulo DDR2-533.

Depois do "D2N", que indica que é um módulo DDR2, sem ECC, temos o
número que indica o tempo de latência, que no módulo da foto é de 4 tempos.
A letra "K" (quando presente) indica que o módulo faz parte de um kit, com
duas ou quatro peças, destinado a uso em uma placa dual-channel, enquanto
os últimos dígitos indicam a capacidade do módulos, como em "512", "1G",
"2G" ou "4G".



                                                                             659
Ao comprar, você deve, naturalmente, dar preferência aos módulos com
freqüência de operação mais alta e tempos de latência mais baixos, desde que
isso não implique em um aumento significativo de preço. Infelizmente, nos
módulos de baixo custo as duas coisas andam juntas, de forma que os
módulos com freqüências mais altas possuem quase sempre tempos de
latência também mais altos, já que é mais fácil aumentar a freqüência de
operação do módulo do que reduzir o tempo "real" de acesso, representado
pelo tempo de latência.

A partir dos módulos DDR2, o tempo de acesso tem um impacto mais direto
sobre o desempenho do que a freqüência de operação. Isso acontece não
apenas porque tempos de acesso mais baixos permitem que o processador
inicie as leituras em menos ciclos de clock, mas também por que eles tem uma
influência direta sobre a taxa de transferência efetiva do módulo.

Em um módulo com CAS 5 e RAS to CAS delay 5, por exemplo, um acesso a
um endereço qualquer do módulo demoraria um total de 10 ciclos. Após este
ciclo inicial, o controlador pode realizar um burst de mais 7 leituras (8 no total),
onde cada uma demora apenas mais meio ciclo. No final os 8 acessos
demorariam 13.5 ciclos, 10 dos quais são referentes ao acesso inicial. Em um
módulo com CAS e RAS to CAS delay de 4 tempos, o ciclo inicial demoraria
apenas 8 ciclos, o que permitiria realizar as 8 leituras em apenas 11.5 ciclos.

HDs

Assim como no caso dos processadores, o custo dos HDs cresce conforme
aumenta a capacidade e o desempenho. Em geral, as lojas possuem algum
modelo de baixa capacidade (destinado a quem simplesmente quer um HD o
mais barato possível, sem ligar para a capacidade ou o desempenho) apenas
um pouco mais barato que o seguinte, uma série de HDs com capacidades e
preços mais ou menos proporcionais e, em seguida, um ou dois modelos de
grande capacidade, que custam muito mais caro.

Nos dois extremos, você pode encontrar um HD de 40 GB de alguma série
antiga por R$ 120 e um de 1 TB por R$ 1800 (por exemplo), duas opções
obviamente ruins. Dentro da faixa intermediária, você poderia encontrar um HD
de 160 GB por R$ 200, um de 250 GB por R$ 300 e 400 GB por R$ 460, onde
o custo por megabyte é parecido e a escolha depende mais dos detalhes de
cada modelo e do volume de dados que você precisa armazenar.

Uma dica geral é que normalmente é mais vantajoso comprar um HD que
atenda com uma certa folga as suas necessidades imediatas e deixar para
comprar um segundo HD daqui a um ano ou dois, quando precisar de mais
espaço do que tentar comprar o maior HD possível. Acontece que o preço por
megabyte dos HDs costuma cair pela metade a cada 12 ou 18 meses, de forma
que você pode comprar (por exemplo) um HD de 250 GB hoje e um HD de 750
GB daqui a um ano pagando menos do que pagaria inicialmente por um único
HD de 750 GB. Se você só vai precisar de 750 GB de espaço daqui a um ano,
não existe por que pagar por eles agora. Deixe os preços caírem. Lembre-se
de que o tempo está a seu favor.


                                                                                660
Em seguida temos a questão do desempenho. No capítulo sobre HDs
estudamos os principais quesitos que determinam o desempenho dos HDs.
Também não é difícil encontrar benchmarks comparando o desempenho de
diversos modelos em diversas aplicações. Um HD mais rápido ajuda sobretudo
no carregamento de programas pesados e arquivos grandes e também reduz o
tempo de carregamento dos jogos mais atuais, que carregam um grande
volume de dados e texturas. O tempo de boot também está diretamente
relacionado ao desempenho do HD, mas nesse caso o tempo de acesso acaba
sendo mais decisivo do que a taxa de leitura sequencial, já que durante o
carregamento do sistema são lidos um grande número de arquivos pequenos.

A principal questão sobre o desempenho do HD é que ele nem sempre é tão
importante quanto se imagina. Aumentar a quantidade de memória RAM
instalada, permitindo que o sistema faça mais cache de disco e reduza o
volume de memória virtual usada tem, quase sempre, um impacto mais positivo
sobre o desempenho do que simplesmente usar um HD mais rápido, sobretudo
ao usar um sistema operacional gastador, como o Vista, ou rodar aplicativos
pesados.

Atualmente, a grande maioria dos HDs destinados ao mercado doméstico são
modelos de 7200 RPM. Inicialmente eles eram mais barulhentos, consumiam
mais energia e trabalhavam com temperaturas de operação muito mais altas
que os de 5400 RPM, o que trazia até mesmo problemas relacionados à
durabilidade. Entretanto, com a maturação da tecnologia os HDs de 7200 RPM
atuais são muitas vezes mais silenciosos do que os modelos de 5400 RPM e
três ou quatro anos atrás. A durabilidade também melhorou, a ponto da
Samsung passar a oferecer 3 anos de garantia e a Seagate oferecer 5 anos
(nos EUA).

Este da foto, por exemplo, é um Samsung SpinPoint T166, um modelo de 500
GB e 7200 RPM, com interface SATA/300. Ele possui 16 MB de buffer, suporte
a NCQ, tempo de busca de 8.9 ms e consumo de 7.1 watts quando ocioso e
11.3 watts durante as operações de gravação:




                                                                        661
Seu concorrente direto seria o Seagate Barracuda 7200.10, que também é um
modelo de 500 GB, com 3 platters, 7200 RPM, interface SATA/300, suporte
NCQ e 16 MB de buffer. As especificações mencionam um tempo de busca de
11 ms, consideravelmente mais alto que o do SpinPoint T166, mas nos
benchmarks os dois ficam virtualmente empatados, o que mostra que as
especificações não contam a história completa. Uma implementação mais
eficiente do NCQ pode compensar um tempo de busca mais alto, por exemplo.
Em julho de 2007, o Barracuda 7200.10 custa US$ 119 nos EUA e o Samsung
custa US$ 109, quase 10% mais barato. Entretanto, a Seagate oferece 5 anos
de garantia, contra 3 anos da Samsung, o que acaba equilibrando as coisas.

No Brasil, o tempo de garantia pode variar por uma série de fatores. Em
primeiro lugar, podem existir diferenças na política do fabricante de acordo com
o país, baseado em fatores diversos. Em seguida temos a questão da
procedência.

Os HDs vendidos legalmente, com a garantia do fabricante, sempre possuem
pelo menos um ano de garantia (na maioria dos casos 2 anos ou mais). O
problema é que muitas lojas vendem HDs que entram no país de forma
irregular, que não podem ser trocados facilmente. Neste caso a própria loja
precisa arcar com o prejuízo dos HDs trocados dentro da garantia e
naturalmente vai oferecer uma garantia menor, de apenas 3 ou 6 meses, por
exemplo.

Outro problema aqui no Brasil é que os preços variam muito de acordo com o
fornecedor e você nem sempre encontra o modelo que procura. Muitas vezes
você acaba tendo que comprar o modelo B porque o fornecedor não tinha o
modelo A, ou o estava vendendo por um preço mais alto.


                                                                            662
Finalmente, temos a questão dos HDs refurbished (remanufaturados) que são
um problema mais grave. Assim como no caso de notebooks, palmtops,
celulares, placas-mãe e outros dispositivos, os fabricantes de HDs são capazes
de recuperar grande parte dos HDs trocados dentro do período de garantia.
Estes HDs recuperados são vendidos novamente a um preço mais baixo, já
que são basicamente componentes defeituosos, muitas vezes já com algum
tempo de uso, que foram reparados e agora estão sendo vendidos novamente.

Grande parte dos produtos de informática vendidos no Brasil vem de um
pequeno país que faz fronteira com o estado do Paraná, o que não é segredo
para ninguém. Lojas sediadas lá, como a master10.com e a navenet.com
divulgam as listas de preço nos sites, o que, mesmo que você não pretenda
fazer compras no país vizinho, é um material de pesquisa interessante.

Os HDs e outros periféricos remanufaturados são marcados nas listas de
preços com a sigla "REF" ou simplesmente com a letra "R", como neste
exemplo:




É interessante consultar as listas de vez em quando, ver as marcas e os
modelos com maior oferta de modelos refurbished e evitá-los na hora da
compra. Em primeiro lugar, o fato de um determinado produto ter uma grande
oferta de unidades remanufaturadas não é um bom sinal, já que significa que
estão dando defeito e sendo substituídos em grande quantidade. Em segundo
lugar, grande parte dos produtos vendidos no Brasil são provenientes
justamente destas lojas, de forma que se elas estão vendendo unidades
remanufaturadas de um determinado modelo (e mais barato), significa que são
justamente elas que estarão em breve à venda em muitas lojas, com a
diferença de que raramente vão lhe avisar de que se trata de uma unidade
remanufaturada.

Em muitos casos é possível reconhecer HDs remanufaturados verificando os
valores do SMART (como vimos no capítulo sobre HDs), já que eles terão
contagens mais altas de setores remapeados, erros de leitura, horas de uso e


                                                                          663
ciclos de inicialização. Entretanto, isso nem sempre se aplica, pois muitas
vezes os dados do SMART são zerados durante o processo de recuperação.

Normalmente os fabricantes incluem indicativos nos HDs remanufaturados. A
Seagate utiliza uma etiqueta de identificação específica, onde a borda é verde
e é incluída a frase "Certified Repaired HDD" bem abaixo do logo da empresa:




Temos em seguida a questão do RAID. A maioria das placas atuais oferece
suporte a RAID nas portas SATA, de forma que você acaba não precisando
gastar nada a mais do que o próprio custo dos HDs. Você pode melhorar o
desempenho adicionando um segundo HD e criando um sistema RAID 0. O
problema é que com isso você reduz a confiabilidade geral, já que a falha de
um dos dois HDs faz com que todos os dados sejam perdidos.

Se você não armazena um grande volume de dados, usa o micro só pra jogos,
por exemplo, a idéia pode ser interessante, já que nesse caso o desempenho é
mais importante que a confiabilidade. O problema é que nesse caso você
provavelmente também não vai precisar de muito espaço de armazenamento,
de forma que comprar um segundo HD acaba sendo um desperdício. Comprar
dois HDs antigos, de baixa capacidade, também não é uma opção tão boa,
pois o desempenho "por cabeça" será muito inferior ao de um HD atual, de
forma que mesmo juntos, os dois poderão oferecer um desempenho similar, ou
até mesmo inferior.

Outro segredo sobre o RAID 0 é que embora a taxa de transferência melhore,
já que os dados são espalhados pelos dois HDs e lidos simultaneamente, o
tempo de acesso piora, pois além do tempo necessário para realizar a leitura
nos dois HDs, temos mais um pequeno tempo perdido pela controladora, que
precisa juntar os fragmentos, antes de entregar o arquivo. Isso faz com que o
ganho, na prática, varie muito de acordo com os aplicativos usados, sendo
maior em aplicativos que privilegiam a taxa de transferência e menor em
aplicativos    que    manipulam      arquivos    pequenos      e    dependem
predominantemente do tempo de acesso.

Quem trabalha com edição de vídeos e imagens geralmente precisa de muito
espaço de armazenamento e um melhor desempenho de acesso a disco
também é muito bem vindo. Entretanto, a questão da confiabilidade também é
importante, de forma que o RAID 0 não seria uma boa opção. Existe a
possibilidade de criar um sistema RAID 10, onde adicionamos mais dois discos
que armazenam uma cópia completa dos dados. O problema é que neste caso
precisamos de 4 discos em vez de dois, o que dobra o custo. Como pode ver, o


                                                                          664
RAID pode ser interessante em algumas áreas, sobretudo quando você já tem
os HDs, mas ele não é uma solução para todos os problemas.


PCs de baixo consumo

Além de toda a questão ecológica, montar PCs mais econômicos do ponto de
vista do consumo elétrico pode significar uma boa economia na conta de luz, já
que a diferença entre ter um PC gastador, que consuma na faixa dos 300 watts
e outro mais econômico, que consuma na faixa dos 100 watts, pode chegar a
mais de 1000 reais por ano, considerando que ambos fiquem ligados 12 horas
por dia. Isso significa que em dois anos você economizaria mais do que o
suficiente para montar outro micro completo.

Antigamente, era comum que os processadores mais baratos, fossem também
os mais econômicos, já que eram basicamente versões de baixo clock dos
modelos mais rápidos. Entretanto, com o aumento no número de PCs,
aumentos no custo da eletricidade e outros fatores, a questão do consumo se
tornou um fator importante, de forma que os fabricantes passaram a enfatizar a
"eficiência", ou seja, a relação entre o consumo e o desempenho do
processador, ao invés do desempenho puro e simples, como antigamente.

Isso fez com que tanto a AMD quanto a Intel lançassem séries de baixo
consumo. No caso dos AMD temos a série "Energy Efficient" (composta de
modelos mais econômicos, porém mais caros) e no caso da Intel temos os
processadores mobile e o recém-lançado Core 2 Duo com steeping L2. Nas
posições mais baixas das tabelas de preços, temos os processadores Pentium
D e Celeron D, baseados na arquitetura do Pentium 4, que são processadores
incrivelmente ineficientes.

Você pode achar que está fazendo um bom negócio comprando um Pentium D
925, por exemplo, mas na verdade está levando gato por lebre, pois o
desempenho é inferior ao de um Pentium E2160 (que já é baseado na
plataforma Core) e o consumo elétrico brutalmente mais alto, o que faz com
que você acabe gastando muito mais na conta de luz. A Intel sabe disso e por
isso está vendendo estes processadores a preço de banana, se apressando
em encerrar a produção e vender o resto dos estoques o mais rápido possível.

É sempre complicado recomendar modelos específicos de processadores, já
que as melhores opções variam de acordo com os modelos disponíveis e os
preços. Mas, se você fosse comprar um processador em setembro de 2007, as
melhores opções seriam o Pentium E2140 (1.6 GHz, 1 MB, dual-core) e o
E2160 (1.8 GHz, 1 MB, dual-core). Ambos são processadores dual-core
relativamente baratos que são bastante econômicos, já que além do baixo
clock oferecem suporte ao SpeedStep.

Os Celerons 420, 430 e 440 são ainda mais baratos. Eles seriam uma boa
opção para micros de baixo custo, já que são baratos, relativamente rápidos e
suportam grandes overclocks. Entretanto, eles não são tão interessantes
dentro da proposta de um PC de baixo consumo, pois (ao contrário dos

                                                                          665
Pentium E) eles não oferecem suporte ao SpeedStep, de forma que o
processador opera sempre à freqüência máxima. O Celeron 440 (que opera a
2.0 GHz) consome cerca de 35 watts quando ocioso, o que em um PC de baixo
consumo é bastante coisa.

Do lado da AMD temos o Athlon 64 X2 Energy Efficient, que é baseado no core
Brisbane, de 0.065 micron. Ele também é um pouco mais caro, mas consome
menos que os X2 baseados no core Windsor, que ainda é produzido usando a
técnica de 0.09 micron.

Todos os processadores AMD baseados no Athlon 64 são bastante eficientes,
devido ao uso do Cool'n'Quiet. Embora o consumo máximo do processador
varie de acordo com o clock e a técnica de fabricação, o uso do Cool'n'Quiet
faz com que o processador consuma menos de 10 watts quando ocioso. Os
Athlon 64 X2 EE, baseados no core Brisbane estão entre os mais econômicos,
consumindo apenas 6 watts quando ociosos.

Isso faz com que eles levem uma certa vantagem contra os Core 2 Duo, pois
neles o consumo do processador quando ocioso não cai abaixo dos 22 watts
(para a maioria dos modelos) ou 12 watts (para os novos, baseados no
steeping L2).

Isso acontece por que (mesmo usando o SpeedStep) a freqüência de operação
do Core 2 Duo nunca cai abaixo dos 1.6 GHz, por mais que o processador
fique ocioso por longos períodos, enquanto o Cool'n'Quiet usa um sistema de
gerenciamento mais agressivo, onde a freqüência do processador pode cair
para até 1.0 GHz (ou 800 MHz nos processadores Mobile).

Ao comprar um Sempron, o mais importante é evitar a todo o custo os 2800+ e
3000+, onde o suporte ao Cool'n'Quiet vem desativado. A pequena economia
não justifica sequer o gasto adicional de energia elétrica.

Os Semprons 3400+ e 3600+, baseados no core Manila são uma boa opção,
pois são baratos e relativamente econômicos. O consumo do 3600+ quando
em full-load beira os 60 watts, mas com o Cool'n'Quiet ativado, ele cai para
pouco mais de 6 watts quando o processador está ocioso, ou seja, na maior
parte do tempo.

Em seguida temos a questão do monitor. Além de grandes e desajeitados, os
monitores de CRT são grandes gastadores de energia. Um CRT de 17
polegadas atual consome na faixa dos 100 watts, enquanto modelos antigos
podem chegar perto dos 150. Em comparação, a maioria dos monitores de
LCD para desktops consome na faixa dos 30 a 35 watts, o que representa uma
economia considerável.

Em um PC que fica ligado 12 horas por dia, usar um LCD no lugar do CRT gera
uma economia mensal de cerca de 24 kWh, o que equivale a uma redução de
quase 10 reais na conta de luz. Parece pouco, mas ao longo de um ano dá
quase 120 reais. Se levarmos em conta que um bom monitor pode ser usado
por 3, 4 ou até 5 anos e que um LCD de 17" já custa pouco mais de 600 reais,


                                                                         666
comprar um CTR hoje em dia simplesmente não faz sentido, nem do ponto de
vista do conforto, nem do custo.

A questão da durabilidade menor dos monitores LCD é atualmente um mito.
Antigamente as luzes de catodo frio usadas nos monitores de LCD possuíam
uma vida útil estimada em 10.000 horas, o que equivale a pouco mais de um
ano de uso contínuo. Entretanto, os monitores atuais utilizam lâmpadas com
vida útil estimada em 50.000 horas, o que equivale a mais de 6 anos de uso
contínuo. Outro possível ponto de falha é o inversor, mas nos LCD para
desktops os defeitos relacionados a ele são relativamente raros.

Por incrível que pareça, a fonte mais comum de defeitos nos monitores LCD
para desktops é a fonte de alimentação, sobretudo nos modelos de baixa
qualidade. Casos onde o monitor "queimou" são quase sempre causados por
algum capacitor estufado, transformador queimado ou outro defeito do gênero
na fonte. Felizmente, nesses casos o conserto é geralmente barato.

Continuando, os HDs de 2.5" podem ser perfeitamente usados em desktops e
são realmente uma forma de economizar energia, embora não tanto quanto
poderíamos pensar à primeira vista.

A maioria dos HDs de 7200 RPM atuais consome em torno de 12 watts quando
girando na rotação máxima e algo entre 2 e 6 watts nos diferentes estágios de
economia de energia. O Samsung SpinPoint T166 de 500 GB, por exemplo,
consome 11.3 watts quando está lendo e gravando dados, 7.1 watts quando os
discos estão girando mas o HD está ocioso e menos de 2 watts quando entra
em modo de economia de energia, onde os discos param de girar e apenas
alguns componentes da placa lógica continuam ativos.

Os HDs de 2.5" naturalmente consomem menos, já que os discos são menores
(e conseqüentemente exigem menos esforço por parte do motor de rotação) e
todos os componentes são otimizados para consumir menos energia, já que
isso é essencial em um notebook.

Um Samsung HM160JI, de 160 GB e 5400 RPM, por exemplo, consome 2.6
watts quando lendo ou gravando dados e apenas 0.8 watts quando ocioso.
Quando o HD entra em modo de economia de energia e os discos param de
girar, o consumo passa a ser realmente insignificante, inferior a meio watt.
Mesmo modelos de 2.5" "gastadores", como o Seagate Momentus 7200.1 de
100 GB (que gira a 7200 RPM) raramente ultrapassam a marca dos 4 watts.




                                                                          667
HD de 2.5"

Os HDs de notebook são realmente econômicos do ponto de vista do consumo
elétrico. Eles também são muito silenciosos e não exigem nenhum tipo de
ventilação especial, já que esquentam muito pouco. É perfeitamente possível
usar um HD de 2.5" em um desktop e isso vem se tornando cada vez mais
comum, sobretudo entre os que montam micros usando gabinetes compactos.

Existem diversos tipos de adaptadores no mercado, que vão desde o
tradicional adaptador de 2.5" para 3.5", que permite instalar um HD IDE de
notebook em uma porta IDE normal (o adaptador é geralmente vendido junto
com os suportes necessários para instalar o HD em uma baia de 3.5"), quanto
adaptadores para ligar o HD na porta USB, ligar um HD SATA em uma porta
IDE ou um HD IDE em uma porta SATA, e até mesmo adaptadores "universais"
que suportam diversas combinações diferentes de HDs e interfaces.

O problema com os HDs de notebook é que o preço por megabyte é
expressivamente mais alto que nos HDs de 3.5", já que a capacidade dos HDs
é sempre muito mais baixa. Os HDs de 2.5" de mais baixa capacidade, de 60
ou 80 GB são relativamente acessíveis, mas os de 160 GB ou mais são muito
mais caros, de forma que eles não são uma opção realística para quem precisa
armazenar um grande volume de dados, já que seriam necessários vários HDs.

Uma opção seria usar um HD de 2.5" de baixa capacidade para armazenar o
sistema operacional, programas e arquivos de trabalho e usar um ou mais HDs
de 3.5" de grande capacidade para armazenar arquivos grandes. Com isso,
você poderia configurar o sistema para colocar os HDs de 3.5" em modo de
espera quando não estiverem sendo usados (que neste caso será a maior
parte do tempo) e deixar o HD de 2.5" ativo continuamente, fazendo a maior
parte do trabalho.

A economia na conta de luz por usar um HD de 2.5" não é muito expressiva, de
forma que, na maior parte dos casos, o uso do HD de 2.5 não vai se pagar
financeiramente. O uso pode valer à pena pelo "conjunto da obra", ou seja,



                                                                         668
pela combinação de consumo mais baixo, menos barulho, menos calor e maior
resistência a impactos, mas não pela economia direta.

Presumindo que o PC ficasse ligado 12 horas por dia e o HD ficasse ocioso
(porém ativo) quase todo o tempo, então teríamos um consumo de cerca de 3.6
kWh mensais (considerando que o HD consumisse 7.5 watts quando ocioso e a
fonte do micro trabalhasse com 75% de eficiência), enquanto um HD de
notebook consumiria 0.5 kWh ou menos. Comparando diretamente os dois
valores, a economia parece grande, já que o HD de notebook consome quase
8 vezes menos, mas esta redução equivale a uma redução mensal de menos
de R$ 1.50 na conta de luz. Mesmo se levássemos em conta a economia ao
longo de 3 anos (que seria a vida útil média de um HD), a economia não
chegaria aos 50 reais.

Temos ainda a questão dos SSDs, os "HDs" de estado sólido que utilizam
memória Flash no lugar dos discos magnéticos. Eles fazem algum sentido no
caso dos notebooks, onde qualquer redução no consumo é importante, mas
usar um SSD em um desktop seria muito dispendioso e a economia em relação
a um HD de 2.5" tradicional é muito pequena, inferior a dois watts.

Os componentes da placa mãe não são consumidores muito vorazes de
energia, pois tudo (incluindo o chipset) opera a uma freqüência muito baixa se
comparada à do processador. Além disso, a diferença de consumo elétrico
entre placas com chipsets de diferentes fabricantes não é grande o suficiente
para que isso influa na decisão de compra (com exceção dos notebooks, onde
qualquer redução pode fazer diferença, por causa da questão da autonomia
das baterias).

O conselho básico para montar um PC de baixo consumo (e baixo custo) é
usar componentes onboard sempre que possível, já que eles quase sempre
consomem menos, principalmente quando são integrados diretamente ao
chipset. O principal ponto de economia é a placa de vídeo, já que mesmo uma
placa de baixo custo atual (como uma GeForce 7200) pode facilmente
consumir mais de 60 watts, o que é equivalente ao consumo de 5 HDs em
RAID, lendo ou gravando dados a todo vapor.

Outro ponto importante do ponto de vista do consumo são os circuitos de
regulagem de tensão da placa mãe. Como bem sabemos, a placa recebe
tensões de 12V, 5V e 3.3V da fonte e precisa gerar, a partir delas, as diferentes
tensões usadas pelos componentes do micro. Como todo processo de
conversão, isso resulta em uma certa perda, principalmente no fornecimento de
energia para o processador.

Placas com reguladores de tensão de 6 ou 8 fases são quase sempre capazes
de manter um fornecimento elétrico mais estável em situações de stress, como
ao fazer um overclock agressivo, porém o maior número de fases faz com que
a placa desperdice mais energia nos momentos de baixa atividade. A diferença
entre usar uma placa com um regulador de tensão de 8 fases e outra similar,
com um regulador de tensão de 4 fases, pode chegar a mais de 6 watts
enquanto o processador está ocioso.

                                                                             669
Ao montar um PC usando um processador de baixo consumo, as placas com
reguladores de 3 ou 4 fases acabam sendo preferíveis, já que além de mais
baratas, consomem menos energia. Como nesse caso o processador consome
pouco, a questão do fornecimento acaba não sendo um grande problema.

Em seguida temos a questão dos módulos de memória. Um módulo de
memória DDR2-800 consome cerca de 4 watts de energia. Os módulos DDR3
utilizam uma tensão mais baixa (o que resulta em uma certa economia), mas
em compensação operam a freqüências mais altas, o que acaba equilibrando a
balança. Como quase todas as placas atuais oferecem suporte a dual-channel,
usar dois módulos de memória, em vez de apenas um, resulta em um pequeno
ganho de desempenho. Entretanto, do ponto de vista do consumo, usar um
único módulo de memória, de maior capacidade, faz mais sentido. A economia
de 4 watts gerada pelo uso de um único módulo, acaba resultando (dentro do
cálculo de 12 horas de uso por dia) em uma redução de quase 1.5 kWh
mensais. Não é muito significativo, mas já é quase o que você economizaria ao
substituir o HD de 3.5" por um HD de notebook.

Uma observação importante com relação aos módulos de memória é que dois
módulos com 8 chips consomem apenas um pouco mais do que um único
módulo de 16 chips fabricado utilizando a mesma técnica de produção. A
economia em utilizar um único módulo é considerável apenas quando
comparamos módulos produzidos com diferentes técnicas de fabricação, como
ao comparar o consumo de um módulo de 16 chips e 2 GB, com o de dois
módulos de 16 chips, com 1 GB cada um.

Outra fonte de desperdício é (literalmente ;) a fonte de alimentação. Por melhor
que seja a qualidade da fonte, ela sempre desperdiça parte da energia. A
maioria das fontes de baixo custo trabalha com eficiência de 65 a 75% (nas
fontes mas baratas a eficiência pode ser ainda menor), o que significa que de
um quarto a um terço de toda a energia consumida pelo micro é, na verdade,
desperdiçada pela fonte, a maior parte dela dissipada na forma de calor.




                                                                            670
Entre as fontes de boa qualidade, não é incomum encontrar projetos com 80%
de eficiência. Algumas fontes realmente caras podem atingir 90%, mas a partir
daí qualquer melhoria resulta em um grande aumento do custo. É importante
enfatizar que nem sempre os números especificados pelo fabricante são
inteiramente confiáveis. Por exemplo, se o fabricante escreve algo como "up to
75% efficiency", significa que a fonte provavelmente trabalha com 65% de
eficiência na maior parte do tempo e atinge picos de 75% em situações ideais
de funcionamento.

O Anandtech (http://anandtech.com/casecoolingpsus/) tem publicado alguns
reviews de fontes que vale a pena ler. Embora os modelos testados estejam
um pouco longe da nossa realidade, eles servem como uma boa referência dos
fatores a levar em conta ao comprar uma fonte. Outro endereço interessante é
o http://www.80plus.com, uma organização mantida com incentivos
governamentais que testa e certifica fontes de diversos fabricantes.

Uma questão interessante é que as fontes atingem o nível máximo de
eficiência sob uma certa percentagem da carga máxima, geralmente em torno
dos 30 a 35%. Uma fonte de 750 watts, por exemplo, tem seu pico de eficiência
em torno dos 250 watts, enquanto uma fonte de 450 watts tem seu pico em
torno dos 150.

Em um PC de baixo consumo, é importante dimensionar a capacidade da fonte
para que ela possa trabalhar sempre próximo do nível máximo de eficiência. Se
você montou um PC de baixo consumo, que consome apenas 75 watts, por
exemplo, não faz sentido usar uma fonte de 750 watts, que com uma carga tão
baixa vai trabalhar no nível mais baixo de eficiência. Além de ser um
desperdício de dinheiro, ela seria um desperdício de energia.

                                                                          671
Nesse caso, faria mais sentido usar uma fonte menor, de 300 watts (ou até
mesmo 250 watts) porém de qualidade. Calcule o consumo médio estimado de
todos os componentes do PC, multiplique por 3 e você obtém uma boa
estimativa da capacidade ideal de fonte para ele. É importante enfatizar que o
monitor não entra na conta, pois ele obtém energia diretamente da tomada,
sem passar pelos circuitos da fonte. Mesmo quando a fonte oferece a tomada
para ligar o monitor, ela funciona como uma simples extensão.

É interessante notar que os fabricantes de fonte estão notando este novo filão
e passando a oferecer alguns modelos de fontes de baixa ou média
capacidade (geralmente 250, 300 ou 450 watts), dando ênfase para a
confiabilidade e o baixo nível de ruído. Um exemplo é a Huntkey Green Star
(www.huntkey.com/eng) de 450 watts, uma fonte de "médio custo" (cerca de
170 reais), que oferece como atrativo uma eficiência de 85% (com 35% de
carregamento), com mínimo de 70%, em full-load.

Ao comprar qualquer fonte, recomendo que cheque as especificações. Procure
pela eficiência mínima (com 100% de carga), que nunca deve ser inferior a
70%, e, se disponível, veja se existe alguma especificação de eficiência ideal,
que, como vimos, é atingida quando a fonte trabalha com menos carga. Neste
exemplo a especificação fala em 85% de eficiência, mas a seguir fala em 70%
de eficiência mínima em full-load, o que indica que a eficiência em situações
reais de uso fica entre os dois extremos, de acordo com o percentual de carga:




Se não conseguir encontrar as especificações da fonte, ou se elas não falarem
nada a respeito da eficiência, não compre, pois provavelmente se trata de uma
fonte de baixa qualidade. Outra coisa que é importante enfatizar é que não
existem boas fontes (e nem mesmo fontes medianas) abaixo da faixa dos 100
reais. A maioria das boas fontes custa a partir de 200 reais, com muitos
modelos medianos custando a partir de 150. Fontes baratas (as famosas fontes
de 50 reais) e as fontes que vem de brinde junto com os gabinetes são sempre
modelos de baixa qualidade (e baixa eficiência), que além de representarem
um risco para o equipamento, acabam custando mais caro a longo prazo,
devido ao maior consumo elétrico.

                                                                           672
Mais uma vez, podemos comprovar isso com um cálculo simples: em um PC
que consome 200 watts (sem contar o monitor), uma diferença de 15% na
eficiência da fonte equivale a 30 watts de energia, por hora. Se o PC ficar
ligado 12 horas por dia, teremos uma diferença mensal de 10.8 kWh, o que
equivale a pouco mais de 5 reais na conta. Parece pouco, mas se
multiplicarmos por 3 anos (a vida útil média de uma fonte de qualidade
razoável) temos um total de mais de 180 reais.

Existem no mercado dispositivos destinados a medir o consumo elétrico dos
aparelhos, que podem ser instalados entre o PC e a tomada para medir seu
consumo. Eles podem ser encontrados em casas especializadas em materiais
elétricos, ou comprados online. Um dos mais baratos é o "kill a watt", que custa
em média 35 dólares mais postagem, se comprado no exterior. Ele mostra a
tensão, amperagem, consumo em watts, consumo em VA e também o
consumo cumulativo em um determinado período:




Ele é interessante para medir o consumo global do micro e fazer testes de
consumo, analisando a redução ao reduzir o clock do processador, ativar
recursos de gerenciamento de energia, verificar a economia real ao trocar a
fonte ou outro componente, medir a perda causada pelo uso do nobreak e
assim por diante.




                                                                            673
Ferramentas

Para simplesmente montar um PC, você não precisa de muitas ferramentas.
Na verdade, você pode se virar muito bem usando apenas uma chave de
fenda. Entretanto, se você quiser trabalhar também com cabeamento de redes
e manutenção de notebooks, vai precisar de um conjunto mais completo,
contendo chaves torx e um alicate de crimpar cabos de rede. Além disso, é
sempre bom ter um testador de cabos, um multímetro e também um passador
de fios à mão, para eventualidades. Boas ferramentas podem durar a vida toda,
por isso são uma boa coisa em que se investir. Elas também são um sinal de
status, o que pode ajudar a criar uma boa impressão e transmitir confiança
para o cliente, o que é importante para quem trabalha com manutenção.

Mesmo no caso das chaves de fenda, existe uma grande diferença de
qualidade entre as chaves baratas e as para uso profissional. A principal
diferença é a dureza do aço usado. Chaves baratas são feitas de um aço mole,
que espana facilmente e não se ajusta bem aos parafusos, acabando por
espaná-los mais facilmente também. Chaves de qualidade utilizam pontas de
um aço muito mais duro, que possuem formas mais perfeitas e se encaixam
mais perfeitamente nos parafusos, permitindo que você use muito mais força
antes de chegar ao ponto de espaná-los.

Veja uma comparação entre a ponta de uma chave barata, já desgastada pelo
uso e a ponta de uma chave de melhor qualidade. Você dificilmente
conseguiria remover um parafuso bem apertado usando a chave da esquerda,
enquanto a chave da direita conseguia removê-lo sem problemas:




                                                                         674
O aço é uma matéria-prima relativamente barata hoje em dia, tanto que já é
usado até em pregos e parafusos. A diferença (e o custo) está no processo de
forja, que determina a dureza e resistência do produto final e no acabamento,
que determina a perfeição das formas. É justamente aí que reside a diferença
entre um katana japonesa, capaz de cortar uma barra de ferro, e uma imitação
barata, que você pode comprar na tabacaria da esquina ;).



                                                                          675
Um bom conjunto de chaves pode custar mais de 100 reais, mas é o tipo do
investimento que você não se arrepende de fazer. Justamente por serem caros
e atenderem a um público restrito, não é o tipo de ítem que você vai encontrar
em supermercados ou na loja de ferragens da esquina. Se você não mora
perto de nenhuma loja especializada, é mais fácil pesquisar e comprar pela
web. Este conjunto da foto abaixo, por exemplo, foi comprado via web de uma
loja da Inglaterra (pelo Ebay), por US$ 35:




Montagem de micros

Depois de desempacotar as peças, a primeira coisa a fazer é mudar a posição
da chave de tensão da fonte de alimentação. Por segurança, todas as fontes
vêm de fábrica com a posição no "220V", já que ligar a fonte chaveada para
220 em uma tomada de 110 não causa danos, bem diferente do que acontece
ao fazer o contrário. O problema é que a lei de murphy faz com que você
sempre esqueça de trocar a chave de posição, fazendo com que mais adiante
o micro simplesmente não ligue e você fique sem saber o porquê. :)




                                                                          676
Apesar de muitas vezes não parecer, o gabinete é um componente bastante
barato e fácil de fabricar. A matéria-prima básica são chapas de aço bastante
finas, que são dobradas e prensadas até chegar à forma final. Este aço bruto é
bastante barato e pouco resistente, ao contrário do aço temperado, usado em
aplicações mais nobres. Os gabinetes mais baratos chegam a custar menos de
100 reais e quase metade deste valor é referente à fonte de alimentação que
vem "de brinde".

O maior problema com os gabinetes baratos é a presença de rebarbas, que
agem como lâminas, cortando os dedos dos descuidados. A presença de
rebarbas é sinônimo de gabinete de baixa qualidade, uma dica para evitar o
fabricante na próxima compra, para não cometer o mesmo erro duas vezes.

Além da questão do acabamento, existe uma tendência crescente de substituir
o aço por alumínio nos modelos mais caros. Existem ainda gabinetes de
materiais alternativos, voltados para quem gosta de casemod, feitos acrílico,
resina, vidro ou até mesmo madeira. Além do material usado, acabamento e da
questão estética de uma forma geral, os gabinetes se diferenciam pela
presença de portas USB ou conectores de áudio frontais (ou outros acessórios)
e pela questão da ventilação.

De qualquer forma, a principal função do gabinete é servir como um suporte
para os demais componentes. Você pode muito bem montar um micro dentro
de um armário, de uma gaveta ou até mesmo dentro de uma caixa de pizza,
mas sem uma fonte de alimentação com um mínimo de qualidade, você corre o
risco de ver pentes de memória queimados, HDs com badblocks, capacitores
estufados na placa-mãe e assim por diante em pouco tempo. De uma forma
geral, as fontes que acompanham os gabinetes valem o que custam (muito
pouco), por isso você deve procurar substituí-las por fontes melhores em
qualquer micro com componentes mais caros, ou em micros de trabalho, que
vão desempenhar um papel importante. Como (com exceção de alguns
modelos high-end) todas as fontes utilizam o mesmo tamanho padrão, é muito
fácil substituir a fonte por outra.




                                                                          677
Preparando o terreno

Voltando à montagem, o próximo passo é tirar ambas as tampas do gabinete.
Aproveite para remover também as tampas das baias dos drives de CD e DVD
que for utilizar:




Remova também a tampa do painel ATX, ao lado das aberturas dos
exaustores. Cada placa-mãe utiliza uma combinação própria de conectores, de
forma que o que vem com o gabinete é inútil, já que nunca combina com os
conectores da placa-mãe. Por isso o substituímos pela tampa que acompanha
a placa-mãe, feita sob medida para ela. A tampa do painel ATX é chamada em
inglês de "I/O plate", embora o nome seja pouco usado por aqui.




                                                                        678
A parte interna do gabinete possui um padrão de furação, destinado aos
suportes e parafusos que prendem a placa-mãe. Todos os parafusos
necessários (foto a seguir) devem vir junto com o gabinete:




Dependendo da marca e modelo do gabinete, podem ser usados pinos
plásticos, como os da esquerda, encaixes como os da direita ou (mais comum)
espaçadores metálicos como os do centro. Existem ainda suportes plásticos
como os dois na parte inferior da foto, que podem ser usados como apoio,
inseridos nos furos na placa-mãe que não possuam par no gabinete. Eles eram
mais usados antigamente, na época dos gabinetes AT, mas é sempre bom ter
alguns à mão.
                                                                        679
O conjunto com os parafusos e espaçadores é chamado de "kit de montagem"
pelos fabricantes. Normalmente o gabinete vem também com o cabo de força,
com exceção dos modelos sem fonte, onde o cabo vem junto com a fonte
avulsa.

As placas ATX possuem normalmente 6 furos para parafusos e mais dois ou
três pontos de apoio adicionais, que podem ser usados pelos suportes
plásticos. A posição deles, entretanto, varia de acordo com a distribuição dos
componentes na placa, de forma que o gabinete inclui um número muito maior
de furos. Com o tempo, você acaba aprendendo a descobrir quais usar "de
olho", mas no início você acaba perdendo tempo comparando as furações da
placa e do gabinete para ver onde colocar os suportes.

Uma dica é que você pode usar uma folha de papel para achar mais facilmente
as combinações entre a furação da placa-mãe e a do gabinete. Coloque a
placa-mãe sobre o papel e use uma caneta para fazer pontos no papel, um
para cada furo disponível. Depois, coloque o papel sobre a chapa do gabinete
e vá colocando os parafusos de suporte e espaçadores onde os pontos
coincidirem com a furação. Muito simples, mas bastante prático. :)




                                                                          680
É importante apertar os parafusos de suporte usando uma chave hexagonal,
para que eles continuem no lugar depois de parafusar e desparafusar a placa-
mãe. Se não forem bem apertados, os parafusos de suporte acabam saindo
junto com os usados para prender a placa-mãe ao removê-la, o que não é
muito agradável.




                                                                        681
Conectores do painel

Antes de instalar a placa-mãe, você pode aproveitar para encaixar os
conectores do painel frontal do gabinete e das portas USB frontais, que são
muito mais fáceis de encaixar com a placa-mãe ainda sobre a mesa, do que
com ela já instalada dentro do espaço apertado do gabinete, com pouca luz.

Infelizmente, não existe muita padronização nos contatos do painel frontal,
cada fabricante faz do seu jeito. Embora o mais comum seja que os pinos
fiquem no canto inferior direito da placa, até mesmo a posição pode mudar de
acordo com a placa. Em muitas ele fica mais para cima, quase no meio da
placa.

Nos gabinetes ATX, temos basicamente 5 conectores: Power SW (o botão
liga/desliga), Reset SW (o botão de reset), Power LED (o led que indica que o
micro está ligado), HD LED (o led que mostra a atividade do HD) e o speaker:




                                                                          682
Cada um dos contatos é formado por dois pinos, um positivo e um neutro. Nos
conectores, o fio colorido corresponde ao positivo e o branco ao neutro. Nem
os dois botões (power e reset) nem o speaker (que usa um conector de 4
pinos, embora apenas 2 sejam usados) possuem polaridade, de forma que
podem ser ligados em qualquer sentido. Os LEDs por sua vez, precisam ser
ligados na polaridade correta, caso contrário não acendem.

Quase sempre, a própria placa traz uma indicação resumida decalcada,
indicando inclusive as polaridades, mas em caso de dúvidas você pode dar
uma olhada rápida no manual, que sempre traz um esquema mais visível:




                                                                         683
Em micros antigos, ainda na época dos gabinetes AT, existiam também os
conectores Keylock (uma chave no gabinete que permitia travar o teclado),
Turbo SW (o conector para o botão "turbo") e o Turbo LED (o LED
correspondente).

O botão "turbo" é uma história curiosa. Ele surgiu com o lançamento dos
primeiros micros 286 e tinha a função de reduzir a freqüência de operação do
processador, fazendo com que o micro ficasse com um desempenho similar ao
de um XT (o micro operava à freqüência normal apenas enquanto o botão
estivesse pressionado). Isso permitia rodar alguns jogos e outros programas
que ficavam rápidos demais se executados no 286. Por algum motivo, o botão
"turbo" continuou presente nos gabinetes AT até a época dos micros Pentium,
embora não fosse mais usado.

Outra curiosidade era o mostrador do clock, também usado na época dos
micros Pentium 1. Ele tinha uma função puramente decorativa, mostrando a
freqüência de operação do processador. O engraçado era que ele não tinha
relação nenhuma com a freqüência real. Era simplesmente um painel digital,
configurado através de jumpers, onde você podia colocar a freqüência que
quisesse. Felizmente ele também saiu de moda e não é mais usado nos
gabinetes atuais.




                                                                         684
O famigerado mostrador do clock, usado em gabinetes antigos

Headers USB

Em seguida, temos os conectores das portas USB frontais, também
conectados diretamente na placa-mãe. Eles precisam ser encaixados com
atenção, pois inverter os contatos das portas USB (colocando o pólo positivo
de alimentação na posição do negativo de dados, por exemplo) vai fazer com
que pendrives, mp3players e outros dispositivos eletrônicos conectados nas
portas USB sejam queimados, um problema muito mais grave do que deixar
parafusos soltos ou inverter a polaridade de um LED, por exemplo.

Os conectores USB (ou headers USB) na placa-mãe são conectores de 9
pinos, facilmente reconhecíveis. Cada porta USB utiliza 4 pinos, dois para a
alimentação e dois para dados, sendo que dentro de cada par, um é o positivo
e o outro o negativo. O nono pino do conector serve apenas como orientação,
indicando o lado referente aos dois fios pretos, referentes ao pólo neutro do par
de alimentação:




                                                                             685
Cada header USB inclui duas portas. Uma placa-mãe com "12 portas USB"
normalmente inclui 4 portas no painel traseiro e mais 4 headers para a conexão
das portas frontais do gabinete. Alguns gabinetes possuem 4 portas frontais,
mas a maioria inclui apenas duas. Existem ainda diversos tipos de suportes
com portas adicionais, leitores de cartões e outras bugigangas instaladas na
baia do drive de disquetes, em uma das baias dos drives ópticos ou em uma
das aberturas traseiras. Assim como as portas frontais, eles também são
ligados nos headers USB da placa-mãe.

Dentro de cada header a ordem os fios é a seguinte: VCC (vermelho), DATA -
(branco), DATA + (verde) e GND (preto), onde o GND fica sempre do lado do
nono pino, que serve como guia. Ligue primeiro os pinos da porta 1, para não
arriscar misturá-los com os da segunda porta. :)

Fazendo isso com a atenção, não existe muito o que errar; o problema é que
se você precisa montar vários micros, acaba tendo que fazer tudo rápido, o que
abre espaço para erros.




                                                                          686
Instalação dos conectores das portas USB frontais do gabinete

A partir de 2007, a Asus passou a fornecer "agrupadores" para os conectores
do painel e das portas USB frontais junto com as placas. Eles são práticos, pois
ao invés de ficar tentando enxergar as marcações na placa-mãe, você pode
encaixar os conectores no suporte e depois encaixá-lo de uma vez na placa-
mãe:




                                                                            687
688
Processador

Antes de instalar a placa-mãe dentro do gabinete, você pode aproveitar
também para instalar o processador, o cooler e os módulos de memória. Com
exceção dos antigos Pentium II, Pentium III e Athlons em formato de cartucho,
todos os processadores são ligados ao chipset e demais componentes da
placa-mãe através de um grande número de pinos de contato. Como o
encapsulamento do processador é quadrado, seria muito fácil inverter a
posição de contato (como era possível nos 486), o que poderia inutilizar o
processador quando o micro fosse ligado e a alimentação elétrica fornecida
pela placa-mãe atingisse os pinos errados.

Para evitar isso, todos os processadores atuais possuem uma distribuição de
pinos que coincide com a do soquete em apenas uma posição. Você pode
notar que existe uma seta no canto inferior esquerdo deste Athlon X2, que
coincide com uma pequena seta no soquete:




O encaixe do processador é genericamente chamado de "ZIF" (zero insertion
force), nome que indica justamente que você não precisa fazer nenhuma
pressão para encaixar o processador. A própria ação da gravidade é suficiente
para encaixá-lo no soquete. O ideal é simplesmente segurar o processador
alguns milímetros acima do soquete e simplesmente soltá-lo, deixando que a
lei da gravidade faça seu trabalho. Isso evita que você entorte os pinos se
estiver sonolento e tentar encaixar o processador no sentido errado.




                                                                           689
Danos aos pinos do processador são desesperadores, pois é muito difícil
desentortar os pinos. Se alguns poucos pinos forem entortados, sobretudo
pinos nos cantos, você pode tentar desentortá-los usando uma lâmina,
tentando deixá-los alinhados com os outros da fileira. Em alguns casos, um
alicate de precisão também pode ajudar. O trabalho nunca vai ficar perfeito,
mas você tem a chance de deixar os pinos retos o suficiente para que eles
entrem no soquete, mesmo que seja necessário aplicar um pouco de pressão.




                                                                         690
O Athlon X2 e o Phenom X4 serão possivelmente os últimos processadores
Intel/AMD para micros PCs a utilizarem o formato tradicional, com pinos. Desde
o Pentium 4 com Core Prescott a Intel adotou o formato LGA, onde os pinos
são movidos do processador para o soquete. A AMD utiliza um sistema
semelhante no soquete-F utilizado pelos Opterons, Athlon Quad FX e Phenom
FX e a tendência é que ele substitua as placas AM2, AM2+ e AM3 nos
próximos anos.

A boa notícia é que no sistema LGA não existem mais pinos para serem
entortados no processador, de forma que ele se torna um componente muito
resistente mecanicamente. A má é que agora temos um grande número de
pinos ainda mais frágeis no soquete da placa-mãe, o que demanda ainda mais
cuidado ao instalar o processador. Diferentemente dos pinos dos
processadores tradicionais, os pinos do soquete LGA são praticamente
impossíveis de desentortar. Ao danificar um grande número deles, você
simplesmente condena a placa-mãe.




A melhor estratégia continua sendo suspender o processador apenas alguns
milímetros acima dos pinos de contato e simplesmente soltá-lo, deixando o
resto por conta da gravidade. Assim você minimiza a possibilidade de danificar
os pinos. No caso dos processadores soquete 775, duas guias de um dos
lados do soquete impedem que o processador seja encaixado na direção
errada. Olhando com atenção, você verá também uma seta em baixo relevo no
canto inferior esquerdo do soquete, que faz par com a seta decalcada em um
dos cantos do processador.




                                                                          691
Outra mudança trazida pelo sistema LGA é que a pressão necessária para
manter o processador no lugar é feita pelo próprio soquete, e não mais pelo
cooler. Isso faz com que a força necessária para fechar a alavanca do soquete
nas placas soquete 775 seja muito maior.




                                                                          692
Pasta térmica

Com o processador instalado, o próximo passo é usar a boa e velha pasta
térmica para melhorar a condutividade térmica com o cooler. Hoje em dia,
existem diversos tipos de pasta térmica, que vão desde a tradicional pasta
térmica banca, à base de óxido de zinco, que é bem barata e muitas vezes
vendida em tubos de 50 gramas ou mais até diversos tipos de pasta térmica
"premium" com diferentes compostos, vendidas em seringas ou vidros. Os
próprios coolers muitas vezes acompanham envelopes de pasta térmica
branca.




Usar uma pasta "premium", baseada em algum composto metálico
normalmente reduz a temperatura de operação do processador em dois ou até
três graus em relação a usar alguma pasta branca genérica. A diferença é
maior em overclocks mais extremos, onde a dissipação térmica do processador
(e consequentemente a temperatura de funcionamento) é mais elevada.

Se você já está gastando mais no cooler e na placa-mãe, pensando justamente
em recuperar o investimento com um overclock agressivo, então gastar 20
reais em uma seringa de pasta Arctic Silver, para ganhar mais dois ou três
graus faz sentido. Mas, ao montar um micro de baixo custo, onde você conta
os trocados para conseguir colocar 512 MB de memória, vale mais a pena
aproveitar a dose de pasta branca que veio de brinde com o cooler ou usar
pasta branca genérica. O mais importante é não cair em modismos e deixar
alguém te passar a perna tentando cobrar 40 ou 50 reais por um vidro de pasta
térmica que não vai fazer milagres.



                                                                         693
Independentemente do tipo escolhido, a idéia básica é passar uma fina camada
de pasta térmica cobrindo todo o dissipador do processador. Se você
simplesmente esparramar um montinho de pasta sobre o processador, a
pressão exercida pelo cooler vai se encarregar de espalhá-la cobrindo a maior
parte do dissipador de qualquer forma, mas a aplicação nunca fica perfeita, de
forma que se você tiver tempo para espalhar a pasta uniformemente, antes de
instalar o cooler, o resultado será sempre um pouco melhor.

Aplicar uma camada de pasta é especialmente importante nos processadores
LGA, pois neles o cooler não exerce uma pressão tão forte sobre o
processador. Evite colocar pasta demais, caso contrário ela vai "derramar"
quando o cooler for instalado, fazendo uma meleca sobre o soquete.




                    Processador com a pasta térmica aplicada

Muitos coolers, sobretudo os coolers dos processadores boxed vêm com uma
camada de pasta térmica (quase sempre cinza) pré-aplicada. O principal
objetivo é a praticidade, já que elimina uma das etapas da instalação do cooler.
Caso prefira utilizar sua própria pasta térmica, remova a camada pré-aplicada
no cooler usando uma flanela e álcool isopropílico. Não use espátulas ou
qualquer outro objeto metálico, pois você vai arranhar a base do cooler, o que
também prejudica a dissipação de calor.

O maior problema é que muitos coolers (em sua maioria fabricados entre 2001
e 2005) utilizavam uma camada de elastômero (um tipo de borracha, que podia
ser rosa, cinza ou mesmo branca), no lugar da pasta térmica. Ele é um material
que derrete se aquecido a temperaturas superiores a 60 graus, de forma que a
pressão do cooler acaba moldando-o ao processador.



                                                                            694
O elastômero não é tão eficiente quanto a pasta térmica (mesmo se comparado
à pasta branca comum) e tem a desvantagem de ser descartável, precisando
ser substituído depois da primeira remoção do cooler. Ele era usado porque era
barato e era considerado "bom o bastante" pelos integradores e não por ser
realmente eficiente.

É fácil reconhecer o elastômero, pois ele tem aspecto e consistência de
chiclete. É sempre recomendável removê-lo e substituí-lo por pasta térmica
antes de instalar o cooler. Ao se deparar com um cooler com a camada de
elastômero ao dar manutenção, remova sempre toda a camada antiga antes de
aplicar a pasta e reinstalar o cooler. Misturar os dois materiais acaba
resultando em uma camada ainda mais ineficiente.




                                                                          695
Cooler

Para manter o processador firme no lugar (evitando mal contatos nos pinos) e
eliminar o excesso de pasta térmica o cooler precisa pressionar o processador
com uma certa intensidade. Na maioria dos coolers antigos, você precisava da
ajuda de uma chave de fenda para instalar e remover o cooler. A ponta era
presa em um pequeno encaixe na presilha do cooler e você precisava de uma
boa dose de força para encaixá-lo no soquete:




Esse sistema levava a acidentes, pois com freqüência a chave de fenda
escapava, muitas vezes destruindo trilhas e inutilizando a placa-mãe. Como a
pressão era exercida sobre os pinos laterais do soquete, também às vezes
acontecia de deles quebrarem. Para não ter que descartar a placa-mãe, você
acabava sendo obrigado a fazer algum "chunxo" para prender ou colar o cooler
no soquete.

Para solucionar estes dois problemas, tanto a Intel quanto a AMD
desenvolveram novos sistemas de encaixe. A AMD passou a usar uma "gaiola"
plástica em torno do processador. Os pinos de encaixe ficam na gaiola, que é
presa à placa por dois ou quatro parafusos e pode ser substituída em caso de
quebra. O cooler é encaixado através de um sistema de alavanca, onde você
encaixa a presilha dos dois lados e usa a alavanca presente no cooler para
prendê-lo ao soquete:




                                                                         696
Nas placas soquete 775, a pressão necessária para manter o processador
preso é exercida pelo encaixe metálico incluído no próprio soquete. A Intel se
aproveitou disso para desenvolver um sistema de encaixe bastante engenhoso,
onde o cooler exerce menos pressão sobre a placa-mãe e é preso por 4
presilhas.

As presilhas utilizam um sistema de retenção peculiar. Girando o prendedor no
sentido horário (o sentido oposto à seta em baixo relevo) você o deixa na

                                                                          697
posição de encaixe, pronto para ser instalado. Girando no sentido anti-horário,
o prendedor de solta, permitindo que o cooler seja removido:




Ao instalar o cooler, você só precisa deixar as presilhas na posição de
instalação e pressioná-la em direção a placa. Ao contrário dos coolers para
placas soquete 754, 939 e AM2, você pode encaixar o cooler em qualquer
sentido. A forma correta de instalar o cooler é ir encaixando uma das presilhas


                                                                           698
de cada vez, fazendo um "X", onde você encaixa primeiro a presilha 1, depois a
3, depois a 2 e por último a 4.

Como pode ver, é bem mais fácil instalar o cooler antes de instalar a placa-mãe
dentro do gabinete:




Outra forma de instalar o cooler seria pressionar as 4 presilhas de uma vez,
usando as duas mãos, com a placa já instalada dentro do gabinete. Esta

                                                                           699
segunda opção faz com que seja exercida uma grande pressão sobre a placa-
mãe, o que é sempre bom evitar.

Com o cooler instalado, não se esqueça de instalar o conector de alimentação
do cooler. As placas atuais oferecem pelo menos dois conectores de
alimentação; uma para o cooler do processador e outro para a instalação de
um exaustor frontal ou traseiro. Muitas placas oferecem 3 ou 4 conectores,
facilitando a instalação de exaustores adicionais.

Para remover o cooler, basta girar as presilhas no sentido anti-horário,
destravando o mecanismo. É mais fácil fazer isso usando uma chave de fenda:




Um problema que temos no Brasil é o uso dos famigerados (para não usar um
adjetivo pior) adesivos de garantia, usados por muitos distribuidores.
Antigamente, eles costumavam ser colados na parte inferior do processador,
mas com o lançamento dos processadores soquete 939, AM2 e LGA 775, onde
não existe espaço na parte inferior, muitos distribuidores e lojas passaram a
colar adesivos sobre o spreader do processador, o que prejudica brutalmente o
contato entre o processador e o cooler, causando problemas de
superaquecimento.

Como você pode ver na foto, os adesivos formam uma "cratera" de área sem
contato com o cooler em torno deles. Para amenizar o problema, você acaba
tendo que usar mais pasta térmica, o que também é ruim, já que para ser
eficiente, a camada de pasta térmica deve ser o mais fina possível. Por serem
feitos de material plástico, os próprios adesivos não conduzem bem o calor,
agravando ainda mais o problema:



                                                                          700
Os famigerados adesivos de garantia, que prejudicam o contato com o cooler

Na maioria dos casos, fornecedores com conhecimento de causa e
preocupados com a qualidade não fazem esse tipo de coisa, até porque, é
perfeitamente possível controlar as trocas dos processadores utilizando a
numeração usada tanto pela Intel quanto pela AMD. Em casos em que o
fornecedor for irredutível com relação ao uso dos adesivos, recomendo que
procure outro.

Com relação à alimentação, existem dois tipos de conectores para o cooler.
Além do conector tradicional, com 3 pinos, existe o conector PWM, que possui
4 pinos. Ele foi introduzido pela Intel em 2004 e é usado na maioria das placas
atuais (tanto para processadores Intel quanto AMD). O conector de 4 pinos é
perfeitamente compatível com coolers que utilizam o conector antigo de 3 e
você também pode conectar coolers que utilizam o conector de 4 pinos em
placas com o conector de 3 pinos sem risco. A guia presente em um dos lados
do conector impede que você encaixe o conector invertido ou ocupando os
pinos errados, por isso não existe onde errar:




                                                                           701
No conector de 3 pinos, dois deles são responsáveis pela alimentação elétrica
(+12V e GND), enquanto o terceiro é usado pela placa-mãe para monitorar a
velocidade de rotação do cooler (speed sensor). O quarto pino permite que o
BIOS da placa-mãe controle a velocidade de rotação do cooler (PWM pulse),
baseado na temperatura do processador. Com isso o cooler não precisa ficar o
tempo todo girando na rotação máxima, o que além de reduzir o nível de ruído
do micro, ajuda a economizar energia. Ao conectar um cooler com o conector
de 4 pinos em uma placa com o conector de 3, você perde o ajuste da rotação,
de forma que o cooler simplesmente passa a girar continuamente na
velocidade máxima, mas com exceção disso não existe problema algum.

Além do cooler principal, temos a questão dos exaustores extra, que são um
item cada vez mais importante nos PCs atuais. Alguns exaustores ainda
utilizam conectores molex, como os utilizados pelo HD, mas a grande maioria
dos de fabricação recente podem ser ligados aos conectores oferecidos pela
placa-mãe. A vantagem de utilizá-los é que a placa-mãe pode monitorar as
velocidades de rotação dos exaustores, permitindo que você as monitore via
software. Esta placa da foto, por exemplo, possui 4 conectores, sendo que dois
foram posicionados próximos às portas SATA:




                                                                          702
Memória

Continuando, você pode aproveitar também para instalar os módulos de
memória com a placa ainda fora do gabinete. O chanfro do conector impede
que você encaixe um módulo DDR2 (ou DDR3) em uma placa que suporte
apenas módulos DDR ou vice-versa, de forma que a principal dica é segurar
sempre os módulos pelas bordas, evitando, assim, qualquer possibilidade de
danificá-los com estática:




Além da posição do chanfro, outra forma de verificar rapidamente qual o tipo de
memória utilizado pela placa, é verificar a tensão, decalcada próximo ao
chanfro. Módulos DDR utilizam 2.5V, módulos DDR2 utilizam 1.8V e módulos
DDR3 utilizam 1.5V:




                                                                           703
Em placas com 4 slots de memória, o primeiro e o terceiro slots formam o canal
A, enquanto o segundo e o quarto formam o canal B. Para usar dois módulos
em dual-channel, você deve instalar o primeiro módulo no primeiro slot e o
segundo módulo no segundo, populando simultaneamente ambos os canais.
Em caso de dúvidas sobre a instalação em alguma placa específica, você pode
confirmar a posição correta na seção "Memory" ou "System Memory" do
manual.

Outra observação é que não é obrigatório usar dois módulos em placas dual-
channel. O uso de dois módulos é desejável do ponto de vista do desempenho,
mas a placa funciona perfeitamente com apenas um.

As exceções ficam por conta de algumas placas antigas para Pentium 4, que
utilizavam módulos de memórias Rambus. Nelas era realmente obrigatório
instalar módulos RIMM em pares e usar terminadores nos soquetes não-
utilizados. Também é preciso usar módulos em pares em placas soquete 7
antigas, que utilizam módulos de 72 vias.




                                                                          704
Instalando a placa-mãe

Depois de tudo isso, podemos finalmente instalar a placa dentro do gabinete,
prendendo-a nos suportes usando parafusos. Na verdade, você pode instalar a
placa logo no início da montagem, e encaixar o processador, o cooler, módulos
de memória e os conectores do painel frontal com ela já dentro do gabinete. A
questão é que é bem mais fácil instalar esses componentes com a placa "livre"
sobre a bancada do que dentro do espaço apertado no gabinete.

Uma chave magnética ajuda bastante na hora de posicionar os parafusos.
Lembre-se de que você pode transformar qualquer chave de fenda em uma
chave magnética usando um pequeno ímã de neodímio, como os encontrados
dentro do mecanismo que movimenta a cabeça de leitura do HD. Cuide apenas
para não largá-los sobre mídias magnéticas, como disquetes ou o próprio HD.

Não se esqueça também de encaixar a tampa do painel ATX que acompanha a
placa antes de instalá-la:




O próximo passo é ligar os conectores de força na placa-mãe. Praticamente
todas as placas atuais utilizam tanto o conector ATX de 24 pinos quanto o
conector P4, de 4 pinos, que fornece energia adicional, reforçando o
fornecimento elétrico para o processador e também para o slot PCI Express
x16. Ao montar qualquer PC atual, você deve utilizar uma fonte de pelo menos
450 watts (com exceção de PCs de baixo consumo, que podem, em muitos
casos, utilizar fontes de 250 ou 300 watts), que ofereça ambos os conectores:




                                                                          705
Lembre-se de que 90% das fontes vendidas no Brasil são produtos de baixa
qualidade. Mesmo que a etiqueta diga que a fonte é capaz de fornecer 450
watts, é bem provável que ela, na verdade, ofereça apenas 350 watts ou
menos, por isso é importante manter uma boa margem de segurança.

Voltamos então à velha pergunta: o que fazer com fontes "genéricas" antigas,
que oferecem apenas 300 ou 350 watts e ainda utilizam o conector ATX de 20
pinos? A resposta curta é que você não deve usá-las ao montar um PC novo,
pois não vale a pena arriscar a saúde dos demais componentes para
economizar os 50 ou 70 reais de uma fonte equivalente nova. A resposta longa
é que a maioria das placas funciona usando um conector ATX de 20 pinos,
desde que o conector P4 auxiliar esteja conectado. Entretanto, isto reduz o
fornecimento elétrico da placa-mãe, o que pode causar problemas ao utilizar
processadores e/ou placas 3D com um consumo elétrico mais elevado.

Algumas placas possuem um conector molex ao lado do conector P4 auxiliar.
Esta combinação era comum por volta de 2001 a 2002, quando as fontes com
o conector extra ainda não eram comuns. Nesse caso, você pode escolher qual
dos dois usar:




                                                                         706
HDs e DVD
O próximo passo é instalar os drives. Alguns gabinetes são espaçosos o
suficiente para que você instale os HDs antes mesmo de prender a placa-mãe,
mas na maioria dos casos eles ficam parcialmente sobre a placa, de forma que
você precisa deixar para instalá-los depois.

Ao usar drives IDE, você precisa se preocupar também com a configuração de
master/slave. No caso do drive óptico (vou adotar este termo daqui em diante,
já que você pode usar tanto um drive de CD quanto de DVD), o jumper está
disponível bem ao lado do conector IDE. Colocá-lo na posição central configura
o drive como slave, enquanto colocá-lo à direita configura o drive como master.
Para o HD, a configuração do jumper varia de acordo com o fabricante, mas
você encontra o esquema de configuração na etiqueta de informação do drive.
Quase sempre, o HD vem configurado de fábrica como master e ao retirar o
jumper ele é configurado como slave.

HDs SATA não utilizam jumpers de configuração de master/slave, pois cada
porta permite a instalação de um único HD. Apesar disso, a maioria dos drives
incluem um jumper que permite forçar o HD a operar em modo SATA/150
(evitando problemas de compatibilidade com algumas placas antigas). Em
muitos HDs (como em diversos modelos da Seagate) ele vem ativado por
padrão, fazendo com que o drive opere em modo SATA/150 por default. Ao
usar uma placa equipada com portas SATA/300, não se esqueça de verificar a
posição do jumper, para que a taxa de transferência da interface não seja
artificialmente limitada.




              Jumpers em um HD IDE, HD SATA e drive de DVD IDE

                                                                           707
Ao instalar o HD e o drive óptico em portas separadas, você pode configurar
ambos como master. Atualmente é cada vez mais comum que placas novas
venham com apenas uma porta IDE, o que o obriga a instalar um como master
e o outro como slave. É comum também que o drive óptico seja instalado como
slave mesmo ao ficar sozinho na segunda porta, já deixando o caminho pronto
para instalar um segundo HD como master futuramente.

Ao usar dois (ou mais) HDs SATA, é importante que o HD de boot, onde você
pretende instalar o sistema operacional, seja instalado na porta SATA 1. É
possível mudar a configuração de boot através do setup, dando boot através
dos outros HDs, mas o default é que o primeiro seja usado.

A identificação de cada porta vem decalcada sobre a própria placa-mãe. Na
foto temos "SATA1" e "SATA2" indicando as duas portas SATA e "SEC_IDE",
indicando a porta IDE secundária. Ao lado dela estaria a "PRI_IDE", a porta
primária:




Nas placas e cabos atuais, é usada uma guia e um pino de controle, que
impedem que você inverta a posição dos cabos IDE. Em placas e cabos
antigos, por outro lado, é comum que estas proteções não estejam presentes.
Nesses casos, procure um número "1" decalcado em um dos lados do
conector. A posição do "1" deve coincidir com a tarja vermelha no cabo e, do
lado do drive, a tarja vermelha fica sempre virada na direção do conector de
força:




                                                                         708
Os cabos IDE possuem três conectores. Normalmente dois estão próximos e o
terceiro mais afastado. O conector mais distante é o que deve ser ligado na
placa-mãe, enquanto os dois mais próximos são destinados a serem
encaixados nos drives. Ao instalar apenas um drive no cabo, você deve usar
sempre as duas pontas do conector, deixando o conector do meio vago (nunca
o contrário).

Você deve utilizar sempre cabos de 80 vias em conjunto com os HDs IDE
atuais, pois eles oferecem suporte aos modos ATA-66. ATA-100 e ATA-133.
Os drives ópticos podem utilizar cabos comuns, de 40 vias, pois eles trabalham
sempre em modo ATA-33.

Você deve receber os cabos IDE e SATA juntamente com a placa-mãe.
Normalmente o pacote inclui também o cabo do disquete (embora hoje em dia
seja cada vez mais raro usá-lo) e também um adaptador para converter um
conector molex da fonte no conector de força SATA. A maioria das fontes
oferece apenas um único conector de força SATA, de forma que você acaba
precisando do adaptador ao instalar um segundo HD. Em placas que não
possuem portas IDE, o cabo é substituído por um segundo cabo SATA.




                                                                          709
"Kit" com cabos e manuais que acompanha a placa-mãe

O drive óptico acompanha um segundo cabo IDE (quase sempre um cabo de
40 vias), permitindo que, ao usar um drive óptico e HD IDE, você os instale em
portas separadas.

Aqui temos os cabos IDE e SATA instalados. O cabo IDE preto está instalado
na IDE primária e vai ser usado pelo HD, enquanto o cinza, instalado na IDE
secundária, vai ser usado pelo drive óptico:




                                                                           710
Ao instalar dois ou mais HDs na mesma máquina, deixe sempre que possível
um espaço de uma ou duas baias entre eles, o que ajuda bastante na questão
da refrigeração:




Assim como em outros componentes, a temperatura de funcionamento dos
HDs tem um impacto direto sob a sua via útil. O ideal é que a temperatura de
operação do HD não ultrapasse os 45 graus (você pode monitorá-la usando o
programa de monitoramento incluído no CD de drivers da placa, ou usando o
lm-sensors no Linux), mas, quanto mais baixa a temperatura de funcionamento,
melhor.

Caso tenha alguns trocados disponíveis, uma medida saudável é instalar um
exaustor na entrada frontal do gabinete, puxando o ar para dentro. O fluxo de
ar vai não apenas reduzir a temperatura de operação dos HDs (muitas vezes
em 10 graus, ou mais) mas também dos demais componentes do micro,
incluindo o processador. Para melhores resultados, o exaustor frontal deve ser
combinado com outro na parte traseira, na abertura ao lado do processador,
desta vez soprando o ar para fora.

Para instalar o exaustor frontal, você precisa remover a frente do gabinete. Em
muitos dos modelos atuais, ela é apenas encaixada, de forma que basta puxar
com cuidado. Em outros ela é presa com parafusos, escondidos nas laterias.




                                                                           711
É sempre chato ficar colocando parafusos dos dois lados, tanto para os HDs
quanto para o drive óptico, mas é importante que você resista à tentação de
instalar os drives "nas coxas", sem usar todos os parafusos. A questão
fundamental aqui é a vibração. Colocando parafusos apenas de um lado, ou
colocando apenas um de cada lado, a movimentação da cabeça de leitura dos
HDs e do drive óptico vai fazer com que o drive vibre dentro da baia,
aumentando o nível de ruído do micro, sem falar de possíveis problemas
relacionados ao desempenho ou mesmo à vida útil dos drives.




                                                                        712
O toque final é instalar o cabo de áudio do drive de CD, usado para tocar CDs
de áudio. Hoje em dia ele não é mais tão usado, pois a maioria dos programas
é capaz de reproduzir CDs obtendo as faixas digitalmente, a partir do próprio
cabo de dados do drive (o mesmo processo usado para ripar CDs), mas é
sempre bom ter o cabo instalado, já que você nunca sabe que programas o
dono do micro vai utilizar. O cabo é fornecido junto com o drive e é encaixado
na entrada "CD" da placa-mãe, um conector de 4 pinos.




                                                                          713
Finalizando a montagem

Como disse há pouco, é importante instalar um exaustor na abertura traseira
do micro, soprando o ar para fora. O exaustor dentro da fonte de alimentação
também faz esse trabalho, mas a principal função dele é resfriar a própria
fonte. O exaustor traseiro age mais diretamente, empurrando pra fora
rapidamente o ar quente que já passou pelo cooler do processador.

A maioria dos gabinetes atuais inclui um tubo (chamado de "túnel de vento"
pelos fabricantes) que vai sobre o processador. O tubo canaliza o ar externo,
fazendo com que o cooler do processador utilize o ar frio vindo de fora, ao
invés de ficar simplesmente circulando o ar quente dentro do gabinete. Nesta
configuração, o ar entra pelo tubo, refrigera o processador e sai pelo exaustor
traseiro (e pela fonte), criando um sistema de circulação bastante eficiente. Se
você instalar também o exaustor frontal, melhor ainda.




É possível ainda substituir o túnel de vento por um exaustor adicional,
encarregado de soprar o ar para dentro do gabinete. Muitos gabinetes
permitem o uso de um exaustor de 120 milímetros (bem maiores que os
tradicionais, de 80 milímetros). Nesse caso, a principal vantagem é que o fluxo
de ar gerado pelo exaustor vai se encarregar também de refrigerar a placa de
vídeo e outros componentes do micro. Alguns gabinetes, geralmente
destinados ao uso de duas placas em SLI ou CrossFire, vão além, oferecendo
espaço para instalar 4 exaustores de 80 milímetros na tampa, gerando um fluxo
de ar realmente potente.




                                                                            714
Concluindo, falta apenas instalar a placa de vídeo e outras placas de expansão
(como uma segunda placa de rede, modem ou uma placa de captura) e a
montagem está completa.




Alguns poucos gabinetes utilizam protetores independentes para as aberturas
dos slots, mas na maioria é usada uma simples chapa cortada, onde você
precisa remover as tampas dos slots que serão usados. Algumas sempre
esbarram em capacitores da placa-mãe, por isso precisam ser removidas com
mais cuidado. O aço cortado é praticamente uma lâmina, é bem fácil se cortar.




                                                                           715
Tanto os slots PCI Express x16 quanto os slots AGP utilizam um sistema de
retenção para tornar o encaixe da placa de vídeo mais firme. Ao remover a
placa, não se esqueça de puxar o pino do lado direto do slot, senão você acaba
quebrando-o.




Toda placa-mãe inclui pelo menos um jumper, responsável por limpar o CMOS
(identificado na placa como "CLR_CMOS" ou "CLRTC"). Em muitas placas, ele

                                                                           716
vem de fábrica na posição discharge (com o jumper entre os pinos 2 e 3), para
evitar que a bateria seja consumida enquanto a placa fica em estoque. A
maioria das placas não dá boot enquanto o jumper estiver nesta posição, o que
pode ser confundido com defeitos na placa.

Antes de ligar o micro, certifique-se de que o jumper está na posição 1-2
(indicada no manual como "Normal" ou "Default").




                                                                          717
Solucionando problemas

Seguindo os cuidados que vimos ao longo dos tópicos anteriores, montar
micros é relativamente simples. A grande maioria dos componentes pode ser
encaixado apenas de um jeito e existem travas e chanfros nos encaixes que
evitam muitas combinações de componentes incompatíveis, como encaixar um
pente DDR em uma placa que só suporta módulos DDR2.

Embora a qualidade geral dos componentes seja melhor hoje do que era em
2000 ou 2002, por exemplo, componentes com defeitos de fabricação ainda
são uma ocorrência comum. Em inglês, eles são chamados de "DOA" (dead on
arrival), ou seja, já são vendidos com defeito, devido a danos ocorridos durante
o transporte, ou à falta de controle de qualidade por parte do fabricante.

Embora possam ser trocados dentro da garantia, na maioria das vezes sem
dificuldades, estes componentes defeituosos acabam causando dor de cabeça
para quem monta micros, já que além do tempo necessário para diagnosticar o
problema, você perde tempo para trocar a peça.

Antes de mais nada, comece fazendo uma verificação geral, checando se os
conectores da fonte estão bem encaixados na placa-mãe e se o conector P4
está instalado (a maioria das placas atuais não inicializa com ele
desconectado), se a placa de vídeo e outros periféricos estão bem encaixados,
se todos os cabos IDE e SATA estão em ordem e se os botões do gabinete
estão ligados nos pinos corretos do painel da placa-mãe.

Outra dica é que muitas placas atuais não inicializam se o cabo de energia do
cooler estiver desligado, uma precaução contra danos ao processador
causados por superaquecimento. Se você está usando um nobreak ou
estabilizador, experimente também tentar ligar o micro sem ele. Não é
incomum que estabilizadores de muito baixa qualidade, ou com defeito,
forneçam uma corrente de saída tão instável que a fonte (por segurança)
desative o sinal de "power good" para a placa-mãe. Sem o sinal a placa não
inicializa, como se o micro estivesse desligado da tomada.

Depois de excluir as possibilidades mais óbvias, o procedimento padrão para
solucionar problemas é desconectar todos os dispositivos não-essenciais,
deixando apenas a placa, processador (e cooler! :), um dos pentes de memória
e (no caso das placas de vídeo onboard) também a placa de vídeo. Se o micro
passar a completar o POST, você pode voltar a instalar os demais
componentes, um a um, até achar o culpado. Muitas vezes você vai acabar
descobrindo que o problema era simplesmente mal contato em algum dos
encaixes.

Experimente também mudar as placas de posição. É muito comum que uma
placa não seja detectada ao ser plugada em um determinado slot, ou mesmo
faça com que o micro simplesmente pare de inicializar, mas funcione
perfeitamente em outro. Isso pode ocorrer por defeitos nos contatos do slots,
oxidação (no caso de micros usados) ou simplesmente por mal contato ao
instalar a placa no primeiro slot.
                                                                            718
Ao dar manutenção em micros antigos, é importante também limpar os
contatos das placas e dos módulos de memória, já que a oxidação dos
contatos é uma das principais causas de mal contato. A limpeza pode ser feita
usando uma borracha de vinil ou, na falta de uma, usando uma cédula em bom
estado que tiver no bolso. O papel moeda é abrasivo, por isso também
funciona bem como limpador de contatos.

Se, por outro lado, o micro não liga nem mesmo na "configuração mínima",
comece verificando coisas básicas, como a chave 110/220 da fonte e a posição
do jumper Clear CMOS. Experimente também limpar as configurações do
Setup, removendo a bateria e mudando o jumper Clear CMOS de posição por
15 segundos. Outra opção para limpar as configurações do Setup é usar uma
moeda ou chave de fenda para fechar um curto entre os dois polos da bateria,
também por 15 segundos:




A partir daí, o jeito é partir para a experimentação, trocando o módulo de
memória, a fonte, placa de vídeo, processador e, por último, a própria placa-
mãe, até descobrir o culpado.

Embora estejam longe de serem um indicador preciso, os códigos de erro do
BIOS, emitidos através do speaker podem dar pistas do que está errado em
muitas situações. Os códigos de erro variam de acordo com o BIOS usado,
mas estes são os códigos mais comuns, válidos para a maioria das placas:

      1 bip curto: Este é o bip de confirmação emitido quando o POST é
      realizado com sucesso e nenhum erro é detectado.

      nenhum bip: Se os coolers giram, mas o micro não inicializa e nenhum
      bip é emitido (e você já verificou se o speaker está realmente

                                                                         719
conectado), temos muito provavelmente um problema grave na placa-
mãe ou processador. Isto também acontece ao tentar ligar o micro sem o
processador ou sem nenhum módulo de memória instalado. Se
realmente nada funciona (os coolers não giram, nenhum sinal de vida)
então provavelmente o problema está na fonte (ou no estabilizador, ou
em qualquer outro ponto da instalação elétrica) ou mesmo no botão de
força do gabinete (você pode tê-lo ligado nos pinos errados da placa-
mãe, por exemplo).

2 bips: Este é uma espécie de "erro geral", similar a uma tela azul do
Windows. O POST falhou por uma causa desconhecida. Aqui não existe
muito o que fazer além de recorrer ao método de tentativa e erro até
descobrir o que está errado.

1 bip longo e 1 bip curto: Problema na placa-mãe (erro genérico que
apenas indica que algo está errado, sem oferecer detalhes).

1 bip longo e 2 bips curtos ou 1 bit longo e três curtos: Problemas na
placa de vídeo (ou falta dela). É muito comum que a placa de vídeo
esteja ok, porém mal encaixada ou com os contatos oxidados.
Experimente remover a placa, limpar os contatos usando uma borracha
de vinil ou uma cédula e instalá-la novamente. A maioria das placas
continua o boot depois de emitir o erro, permitindo que você acesse o
micro via rede, mas muitas realmente não inicializam até que você
resolva o problema.

3 bips longos: Erro no teclado. Este erro é relativamente raro. Ele não é
emitido quando o teclado não está instalado, mas sim quando ele está
presente, mas o controlador está com algum defeito ou curto-circuito.

2 (ou mais) bips longos: Problema grave nos módulos de memória
RAM. Este erro é gerado apenas quando o módulo de memória está
instalado, mas é detectado um erro nos primeiros 64 KB, ou quando ele
não passa pelo teste de contagem de memória do BIOS. É raro que um
pente de memória realmente chegue a ficar danificado a ponto de causar
este erro (danos nos módulos, causados por estática são geralmente
mais discretos, afetando apenas uma pequena faixa de endereços
dentro do módulo), o mais comum é que exista algum problema
inesperado de compatibilidade entre ele e a placa-mãe. Antes de mais
nada, teste o micro usando um módulo diferente (se possível de outro
fabricante) e teste o módulo que causou o erro em outra placa diferente.
É bem possível que ambos estejam bons.

5, 6 ou 7 bips curtos: O processador está encaixado, mas com algum
dano grave. Em algumas placas este erro é emitido também quando o
processador está superaquecendo (o cooler está mal encaixado ou não
está instalado, por exemplo).

9 bips: Erro na gravação do BIOS, ou danos no chip de memória Flash
onde ele está gravado. Também não é um erro comum, pois quando
você tenta fazer um upgrade de BIOS e ele é malsucedido, a placa

                                                                     720
simplesmente deixa de funcionar, ou inicializa utilizando algum sistema
      de proteção incluído pelo fabricante. Erros físicos no chip de memória
      Flash são bastante raros.

Vamos a uma pequena lista dos sintomas relacionados a defeitos em cada
componente:

Placa de vídeo: As placas 3D atuais são praticamente computadores
completos, que possuem não apenas um processador (a GPU), mas também
memória e circuitos de alimentação próprios. Muitas placas inclusive obtêm
energia diretamente da fonte, através e um conector molex ou PCI Express de
6 pinos.

Os problemas mais comuns com as placas de vídeo são defeitos causados
pelo desgaste dos capacitores, assim como no caso da placa-mãe. O defeito
começa se manifestando nos jogos mais pesados (quando o consumo elétrico
da placa e conseqüentemente o stress sobre os capacitores é maior) e vai
progredindo gradualmente até que a placa realmente pare de funcionar. Nesse
caso, é possível que o PC simplesmente não funcione com a placa espetada,
que a placa-mãe passe a emitir bips, como se não houvesse placa de vídeo, ou
que o micro inicialize normalmente, mas nenhuma imagem seja exibida no
monitor.

Placas de vídeo também podem apresentar defeitos na memória. Se o defeito
for na área reservada ao frame-buffer (mais raro), você notará corrupções na
imagem, desde o início do boot. Se os defeitos forem no bloco principal,
reservado ao processamento 3D, você notará texturas corrompidas e, em
muitos casos, também travamentos durante os jogos.

Assim como no caso do processador, podem existir casos de incompatibilidade
entre placas de vídeo e placas-mãe específicas. Isso é relativamente raro nas
placas PCI-Express que usamos atualmente, mas era comum ao tentar instalar
placas AGP de fabricação recente em placas-mãe antigas, que não possuíam
circuitos de alimentação dimensionados para suportá-las.

HD: Defeitos no HD não impedem que a placa-mãe realize o POST. O PC
começa o boot normalmente, mas, por não detectar, ou não conseguir
inicializar o HD, para no início do carregamento do sistema operacional.
Entretanto, encaixar o cabo IDE invertido (o que é possível ao usar cabos
antigos, sem o chanfro de proteção) faz com que o micro realmente deixe de
inicializar. Defeitos nos cabos flat causam corrupção nos dados, o que gera
sintomas parecidos com o de um HD com badblocks. Quando se deparar com
problemas de leitura e gravação em HDs IDE, experimente antes de mais nada
trocar o cabo.

Memória: Existem muitos casos de incompatibilidades entre determinadas
marcas de memória e alguns modelos de placas-mãe. Quando o micro
simplesmente não dá boot com um determinado módulo (mas funciona com
outros), ou para de funcionar depois de instalar um módulo adicional, é bem
provável que o módulo esteja bom e o problema seja simplesmente alguma
incompatibilidade entre ele e a placa-mãe.

                                                                          721
Normalmente os fabricantes mantém listas de módulos testados, ou de
fabricantes recomendados, mas elas não têm muita utilidade na prática, pois
são sempre incompletas. O melhor é não se preocupar tanto com isso e
escolher as memórias com base nas características técnicas, preço e
reputação do fabricante e trocar os módulos dentro da garantia em casos onde
eles não funcionem em conjunto com determinada placa-mãe.

Outro tipo de defeito, mais comum, são endereços danificados no módulo. Eles
podem ser causados por estática, picos de tensão, defeitos na fonte ou nos
circuitos de alimentação na placa-mãe, ou mesmo desgaste prematuro
causado pelo uso de tensões muito mais altas que o padrão (ao fazer
overclock). Esse tipo de dano não impede que o micro complete o POST e
inicialize o boot de forma normal. Entretanto, você vai se deparar com
travamentos e comportamento anormal dos programas sempre que os
endereços defeituosos forem usados pelo sistema. Pode ser que os defeitos
estejam logo nos primeiros endereços e o sistema operacional trave durante o
boot, ou pode ser que esteja no final e problemas sejam notados apenas ao
rodar vários programas simultaneamente.

A melhor forma de verificar o estado dos módulos é usar o Memtest, que vimos
no capítulo de memória. É sempre importante deixar o teste correndo por
algum tempo depois de montar um novo micro, pois ele detecta erros não
apenas nos módulos de memória, mas também no controlador de memória,
trilhas e caches do processador.

O Memtest pode ser encontrado em diversas distribuições Linux, como o
Kurumin, Knoppix e Ubuntu (basta usar a opção "memtest" ou "Memory Test"
na tela de boot), faz parte dos utilitários incluídos no Ultimate Boot CD
(http://www.ultimatebootcd.com) e também está disponível na forma de uma
imagem .ISO no http://memtest86.com/.




                                                                         722
Processador: É bastante raro que processadores novos apresentem defeitos.
O controle de qualidade por parte de fabricantes como a Intel e AMD é
normalmente muito bom, de forma que as chances de um processador sair de
fábrica com defeitos é pequena. Danos durante o transporte também são
incomuns, já que o processador é um componente pequeno e bastante
resistente fisicamente. Danos causados pelo manuseio, como pinos entortados,
são também fáceis de perceber.

De qualquer forma, um processador defeituoso, ou danificado por estática,
pode fazer com que o micro simplesmente não inicie o boot (já que a placa-
mãe precisa do processador para realizar o POST), o que é mais raro, ou que o
micro funcione, mas apresente problemas de estabilidade diversos.

Note que existem muitos casos de incompatibilidade entre placas-mãe antigas
e processadores lançados recentemente. Não existe nenhuma garantia de que
uma placa-mãe soquete 775, fabricada em 2005 será compatível com um Core
2 Duo, por exemplo. É comum que placas precisem de atualizações de BIOS
para suportarem processadores lançados após sua fabricação e, em muitos
casos, existem incompatibilidades relacionadas aos circuitos de alimentação ou
ao chipset usado na placa. Nesses casos, o micro pode simplesmente não
iniciar o boot, como se o processador estivesse queimado, quando na realidade
é a placa-mãe que não está conseguindo inicializá-lo.

Acúmulo de pó: Todo o processo de resfriamento do micro é baseado na
circulação de ar (mesmo ao usar um watter cooler você precisa de pelo menos
dois exaustores: um no radiador usado para refrigerar o fluído e outro na fonte
de alimentação). Isso faz com que a poeira do ar se acumule nos exaustores,
na parte interna da fonte e em outros componentes. A poeira acumulada


                                                                           723
prejudica a passagem do ar e a dissipação de calor, o que faz com que o micro
passe a apresentar problemas de superaquecimento.

Os sintomas clássicos são que o micro inicialize forma normal, mas trave após
algum tempo ligado ou ao executar tarefas pesadas. Também é possível que a
poeira feche contatos entre algumas trilhas, causando erros diversos. O PC
pode passar a apresentar erros relacionados à corrupção de dados
armazenados na memória, por exemplo, como se existisse um erro físico nos
módulos.

A solução é simplesmente fazer uma boa limpeza periódica, desmontando o
micro completamente e usando ar comprimido ou um pincel para remover toda
a sujeira. A fonte de alimentação também acumula muito pó, e também pode
ser aberta e limpa. Entretanto, é importante tomar o cuidado de não encostar
nos componentes, pois mesmo com a fonte desligada da tomada, os
capacitores armazenam um volume considerável de energia.




                                                                          724
Ferramentas: o máximo de funções no mínimo espaço

Um dos problemas clássicos de quem trabalha na área de manutenção é que
rapidamente a notícia se espalha e você acaba recebendo pedidos
desesperados de ajuda não apenas de clientes, mas também de amigos,
familiares e vizinhos. Muitas vezes, por mais boa vontade que você tenha,
acaba não tendo como resolver problemas na hora por falta das ferramentas
adequadas. Afinal, cuidar de um PC tendo todas as suas ferramentas e
softwares à mão é uma coisa, mas ter que "dar um jeito" usando uma faca de
cortar margarina é outra completamente diferente.

De algum tempo pra cá, um dos meus passatempos tem sido pesquisar
ferramentas que combinem o máximo de utilidade no menor espaço, de forma
que eu possa carregá-las dentro da carteira e tê-las sempre à mão. Este tópico
é um apanhado geral sobre a evolução do meu "micro-kit" de ferramentas e os
ítens que já passaram por ele, com dicas que você pode utilizar para compor o
seu.

Inicialmente, comecei com este conjunto aqui, contendo um pendrive, um
punhado de parafusos, um jumper e um canivete suíço da Victorinox, que inclui
uma chave Philips magnetizada, uma chave de fenda comum, lâmina, tesoura,
pinça e caneta. Este modelo específico (Manager) é um pouco difícil de achar,
mas você pode escolher outro modelo qualquer que ache interessante.




Depois de algum tempo, desisti de carregar parafusos (já que você quase
nunca precisa deles) e acabei substituindo o Manager por um modelo da

                                                                          725
Swiss+Tech, que consegue ser ainda mais compacto. Ele acabou se revelando
a miniferramenta definitiva:




Quando fechado, ele é um pouco maior que uma chave, de forma que você
pode colocá-lo no seu molho de chaves e esquecer que ele existe até precisar.
Ele inclui a boa e velha chave Philips, chave de fenda, faca, serra, abridor de
garrafas e, se você reparar na "argola" superior, vai ver também uma pequena
chave de fenda de precisão. Ele também é barato, custa apenas 10 dólares.
Você provavelmente não vai encontrá-lo à venda aqui no Brasil, mas pode
comprar pelo Ebay, ou em lojas como o http://www.knifecenter.com. No total,
você vai gastar em torno de 35 reais, incluindo o envio.

Você pode notar que ele não inclui uma pinça, que acaba sendo um acessório
bastante útil, já que a lei de murphy diz que todo parafuso acaba caindo e indo
aparar no canto mais inacessível do gabinete. Ela foi removida do "kit" em favor
de um ímã de neodímio, que acabou se revelando a ferramenta ideal para
pegar parafusos perdidos, com a vantagem de também transformar a chave de
fenda em uma chave magnética:




                                                                            726
Estes ímãs são surpreendentemente potentes. Mesmo um pequeno, como o da
foto, é suficiente para segurar um objeto de metal com mais de 100 gramas.
Graças a isso, posso deixá-lo preso na própria chave, sem medo de ele cair.
Na falta de um ímã específico, você pode usar um pedaço de um ímã de HD.

Em seguida temos a questão do pendrive. Inicialmente usava um de 512 MB,
mas a capacidade logo se revelou insuficiente. O passo seguinte foi este
modelo da PQI de 2 GB, que é um dos mais compactos que consegui
encontrar. Veja que incluí também um micro cabo cross (este você mesmo
pode fazer), que acaba sendo útil na hora de transferir arquivos entre dois
notebooks:




                                                                        727
Mas, pouco depois, acabei substituindo o pendrive por um SD Duo, que tem a
vantagem de ser muito menor e servir tanto como um cartão SD normal (para
uso em câmeras ou palmtops) quanto como pendrive, ligado diretamente na
porta USB:




Além de serem uma opção para quem quer um pendrive ultracompacto, eles
acabam sendo bem práticos para quem tem um palm ou câmera, já que você
pode retirar o cartão e ligá-lo direto no micro, sem precisar carregar cabos ou
adaptadores. O maior problema destes cartões é o preço. Os modelos da
                                                                           728
Sandisk e da OCZ custam quase o dobro do valor de um cartão SD tradicional,
da mesma capacidade. Este modelo da Adata da foto é uma opção mais
barata, embora o desempenho não seja dos melhores. As taxas de
transferência suportadas por ele são relativamente baixas (10.2 MB/s de leitura
e 2.9 MB/s de escrita), o que limita seu uso em algumas áreas.

Continuando, temos a questão dos softwares. Tanto usando um pendrive
quanto usando o SD Duo, você pode instalar uma distribuição Linux, de forma
a poder dar boot no sistema através da porta USB. Você pode ler mais
detalhes sobre como fazer a instalação, usando o grub como gerenciador de
boot         neste        tutorial           disponível         no      site:
http://www.guiadohardware.net/tutoriais/instalar-kurumin-pendrive/

Usando uma distribuição Linux, você pode recuperar arquivos de uma
instalação danificada do Windows, recuperar partições acidentalmente
deletadas ou corrompidas e, no caso do Kurumin 7 e outras distribuições que
incluem o NTFS-3G, pode até mesmo alterar arquivos e configurações dentro
da partição do Windows e remover vírus usando o Clamav. Você pode também
usar o Gparted para redimensionar partições




Dependendo do volume de arquivos que precisar salvar, você pode usar o
próprio espaço livre do pendrive/cartão, usar um segundo HD, ou mesmo outra
máquina, ligada em rede com a primeira. No caso da terceira opção, você pode
usar o Samba, NFS, FTP, ou SSH para transferir os arquivos.

O maior problema de usar um pendrive ou cartão como sistema de boot é que
só as placas recentes suportam boot através da porta USB. Por isso, é sempre
interessante ter à mão também um CD de boot, que fica como opção de
emergência.




                                                                           729
Um CD convencional é grande demais para carregar na carteira, mas você
poderia muito bem usar um mini-CD. Neste caso, você poderia usar o Kurumin
Light, o Slax, ou mesmo uma distribuição mais especializada, como o Damn
Small (http://www.damnsmalllinux.org/), o F.I.R.E. (http://biatchux.dmzs.com/)
ou o Insert (http://www.inside-security.de/insert_en.html), de acordo com suas
preferências e necessidades. A maioria das distribuições Live-CD inclui o
Memtest (normalmente acessível através da opção "memtest" na tela de boot),
que é outra ferramenta importante para se ter à mão.




Lembre-se de que, no caso das distribuições que utilizam o UnionFS (como no
caso do Kurumin Light), você pode instalar programas adicionais mesmo
rodando a partir do CD, o que acaba sendo importante, já que você sempre
acaba precisando de uma ferramenta ou outra que não vem pré-instalada no
CD. É interessante carregar utilitários diversos e também programas como o
Partition Magic, Testdisk e Photorec, além de uma cópia do Easy Recovery ou
do PC Inspector para recuperar dados apagados acidentalmente.

Hoje em dia, quase todo mundo carrega um celular, de forma que um
smartphone acaba sendo a melhor forma de agregar funções adicionais. A
principal vantagem que vejo não é sequer a questão das opções de agenda e
outros aplicativos organizacionais, mas principalmente a questão do acesso a
web via GPRS.

Além de poder navegar, checar os e-mails, usar o MSN/ICQ, acessar máquinas
remotas via SSH e se orientar usando o Google Maps (que recentemente
passou a oferecer os mapas para as capitais brasileiras, além das imagens de
satélite), você pode usar um cabo USB ou um transmissor bluetooth para
compartilhar a conexão com o micro. Assinando um plano com uma quota de
tráfego generosa, ou um plano ilimitado, você acaba tendo uma solução
completa de acesso móvel, que pode se revelar muito útil quando você precisar
resolver algum problema urgente, ou mesmo baixar algum software ou manual
ou pesquisar a solução para algum problema de manutenção que encontrar
quando estiver atendendo algum cliente.




                                                                          730
Filtros de linha, estabilizadores e nobreaks

Quase tudo dentro de um PC é feito usando eletricidade. Ela é convertida em
processamento, usada para gerar laseres, que lêem e gravam CDs e DVDs,
transformada em pulsos magnéticos, usados para gravar dados nos platers do
HD, convertida em sinais de rádio pela placa wireless ou em sinais analógicos
pelo modem e pela placa de som, transformada em luz pelo monitor e assim
por diante.

A mesma eletricidade que mantém seu PC funcionando pode ser também o
grande vilão que o fragiliza durante o uso normal e o destrói durante as
tempestades. Chegamos então aos guardas da muralha, os filtros de linha,
estabilizadores e nobreaks, responsáveis pela sua proteção. Vamos a eles ;).

Filtros de linha

Os filtros de linha são os dispositivos de proteção mais simples, geralmente
baseados em um fusível e um ou mais MOVs ("metal-oxide varistors" ou,
simplesmente, varistores, como são mais popularmente chamados), que
oferecem alguma proteção, a um custo baixo.

Vamos ver o que temos dentro de um "Filtron", um modelo popular da Clone:




Bem, como você pode ver, ele inclui apenas um fusível e um MOV solitário
entre o fase e o terra, além do LED que mostra quando ele está ligado. Ao usar
uma tomada aterrada, este design serve como uma primeira linha de proteção
contra raios, mas nada além disso. Todos os demais problemas com a corrente
elétrica passam direto por ele.



                                                                          731
Outra característica preocupante é o uso de "lâminas" de latão para cada um
dos três polos, ao invés de tomadas separadas, como as encontradas em
produtos de melhor qualidade. Elas formam um conjunto muito frágil, o que
abre margem para mal contato e até mesmo curto-circuitos em caso de
defeitos de montagem ou más condições de manuseio.

Todos os filtros de linha baratos, aqueles na faixa de 15 a 25 reais utilizam
designs semelhantes, que oferecem pouca proteção. Alguns modelos um
pouco melhores utilizam vários MOVs em série, o que aumenta o nível de
proteção. A função dos MOVs é absorver picos de tensão e descargas
elétricas, fornecendo uma corrente constante ao equipamento e transformando
o excedente em calor. A idéia é que ao receber um raio ou outra descarga
violenta, o fusível se queime rapidamente e os MOVs absorvam a tensão
excedente, protegendo o equipamento.

O problema com os MOVs é que eles queimam depois de absorverem alguns
surtos de tensão e deixam de oferecer proteção, sem entretanto que a
passagem de corrente seja interrompida. Filtros de linha "de verdade" oferecem
um segundo LED de status, que se acende avisando que os MOVs não estão
mais oferecendo proteção e é hora de trocar o filtro de linha. Você poderia
muito bem desmontá-lo e substituir os MOVs usando um ferro de solda, mas a
maioria acaba simplesmente usando o filtro danificado indefinidamente, ou
substituindo-o por um novo.

Existe um padrão de qualidade para filtros de linha, o UL 1449, que contém
uma série de especificações mínimas para que o produto realmente seja capaz
de proteger o equipamento contra os problemas mais comuns. O problema é
que, para atender à norma, os filtros de linha precisam ir muito além de
oferecer um fusível e uma coluna de MOVs, o que os torna bem mais caros
que a maioria está disposta a pagar, sobretudo aqui no Brasil.

Bons filtros de linha são geralmente anunciados pelos fabricantes como "surge
protectors" (protetores contra surtos) e estão de acordo com a norma UL 1449
(se não houver referência a ele, ou outra norma similar, é por que se trata de
um modelo mais simples). Eles normalmente custam de 50 a 200 dólares, por
isso são muito incomuns aqui no Brasil. Você pode começar pesquisando no
tripplite.com, belkin.com ou apc.com, na seção de "surge protectors":




                                                                          732
Os filtros de linha mais baratos servem mais como extensões do que como
dispositivos de proteção. Eles podem no máximo ser usados como uma
primeira linha de defesa, colocada entre a tomada e o nobreak ou estabilizador.
Desta forma, você aumenta a chance deles sobreviverem a um raio ou
desastre semelhante.

Estabilizadores

Os estabilizadores surgiram na década de 1940, como um paliativo para os
problemas com a rede elétrica, que prejudicavam a operação de aparelhos
sensíveis, como rádios e TVs valvuladas. A função do estabilizador é, como o
nome sugere, "estabilizar" a corrente, compensando variações na rede elétrica.

Embora tenham sido muito usados até a década de 1970, os estabilizadores já
caíram em desuso na maior parte do mundo. A principal exceção acabou
sendo o Brasil, onde eles continuam sendo massivamente produzidos até os
dias de hoje.

A principal função de um estabilizador é, como o nome sugere, "estabilizar" a
corrente, absorvendo variações e entregando sempre 115V para o
equipamento.

Os três problemas mais comuns são os brownouts (sub-tensão), surtos (sobre-
tensão) e spikes (descargas).

Nos brownouts (também chamados de sags) a tensão cai durante um certo
período, muitas vezes para 90V ou menos, o que pode ser causado tanto pela
própria rede elétrica quanto pelo acionamento de um chuveiro ou outro
aparelho elétrico que consuma muita energia. A maioria das fontes são
capazes de funcionar com uma tensão um pouco mais baixa, mas isso

                                                                           733
aumenta a corrente (amperagem), fazendo com que a fonte aqueça mais que o
normal.

Os surtos são o problema mais comum, onde temos um aumento de até 100%
na tensão, por um curto espaço de tempo. Os 110V da tomada se transformam
em 150 ou 200V por algumas frações de segundo. Devido à sua curta duração,
os surtos são relativamente benignos, mas o estabilizador tem a tarefa de
eliminar o risco, filtrando o excesso de tensão.

Finalmente, temos os spikes, que são descargas maciças, porém de curta
duração. Eles surgem principalmente devido à ação de raios e queima de
transformadores. Eles são especialmente perigosos, pois podem causar desde
danos aos pentes de memória, HD e outros componentes sensíveis, até
queimar completamente o equipamento.

Infelizmente, quase todos os estabilizadores de 50 reais que temos no mercado
nacional se enquadram nesta categoria, de forma que muitos simplesmente
recomendam que o micro seja ligado diretamente na tomada (ou usando
apenas um filtro de linha), sem estabilizador.

Se a decisão for entre comprar um estabilizador de 50 reais de qualidade
duvidosa e não comprar nenhum, então a melhor opção é economizar o seu
dinheiro, afinal, "antes só do que mal acompanhado". Nesse caso use um filtro
de linha, que oferece um nível mínimo de proteção, sem adicionar riscos. É
interessante gastar também um pouco mais na fonte de alimentação, pois no
final das contas é ela a grande responsável pela proteção do equipamento.

Entre usar um estabilizador (mesmo que de boa qualidade) e usar um
aterramento adequado, o aterramento ganha sempre. Entre usar um
estabilizador de qualidade duvidosa e usar um filtro de linha comprovadamente
eficiente, o filtro de linha também ganha.

Existe ainda o "módulo isolador" da Microsol. Embora ele seja muitas vezes
oferecido como um substituto ao fio terra, ele é na verdade um estabilizador
que utiliza transformadores isolados (combinados com um disjuntor nos
modelos mais caros). Ele oferece alguma proteção para PCs não aterrados e
faz com que o gabinete do micro não dê choque, mas não substitui o
aterramento. Ele é apenas um "quebra galho" para situações em que o
aterramento é impossível ou inviável.

Nobreaks (UPS)

Existe uma certa polêmica com relação ao uso dos termos "nobreak" e "UPS"
(uninterruptable power supply, fonte de energia ininterrupta). Ambos dizem
respeito a um dispositivo capaz de manter o fornecimento de energia, por um
certo período, em caso de queda da rede elétrica. O problema é que a grande
maioria dos nobreaks no mercado são modelos offline ou line-interactive, onde
existe uma interrupção de alguns poucos milésimos de segundo até que o
inversor entre em ação e o fornecimento seja restaurado usando a carga das
baterias.



                                                                          734
Devido a isso, muitos defendem o uso dos termos "short-break" (no lugar de
"nobreak") ou "SPS" (standby power supply, ou fonte de energia de reserva) no
lugar de UPS. Outros defendem ainda o uso do termo "BPS" (backup power
supply) no lugar de ambos. Polêmicas à parte, o termo nobreak é mais
comumente usado, por isso fico com ele. Você é livre para usar o termo que
preferir.

Existem vários tipos de nobreaks. Os mais comuns no mercado são os offline e
os line-interactive. Existem alguns nobreaks online, geralmente modelos bem
mais caros, destinados a uso industrial ou em data-centers, além dos line-
boost.

Entre os quatro tipos, os nobreaks online são os mais seguros. Neles, as
baterias são carregadas de forma contínua e o inversor fica constantemente
ligado, retirando energia das baterias e fornecendo aos equipamentos. Este
layout faz com que os equipamentos fiquem realmente isolados da rede
elétrica, com os circuitos de entrada e as baterias absorvendo todas as
variações. O problema é que os nobreaks online são muito caros e, por isso,
pouco comuns.

Além da questão do preço, os nobreaks online possuem uma baixa eficiência
energética, devido à dupla conversão realizada. A maioria dos modelos
trabalham com 70 a 75% de eficiência, o que significa que para cada 300 watts
consumidos pelos equipamentos, o nobreak desperdiça pelo menos mais 100
na forma de calor. Por causa disso, os nobreaks online são quase sempre
relativamente grandes (os modelos de 2000 VA são geralmente do tamanho de
um PC) e utilizam exaustores para dissipar o calor. Veja que devido ao grande
aumento no consumo, o custo real de manter um nobreak online (incluído o
gasto com eletricidade) acaba indo muito além do custo inicial do equipamento.




                               Nobreaks online

                                                                          735
Em seguida temos os nobreaks offline (ou standby), que são a alternativa mais
antiga e barata aos online. Neles, a corrente elétrica é filtrada por um conjunto
de circuitos e entregue diretamente aos equipamentos, como faria um
estabilizador. Paralelamente, temos as baterias e o inversor, que assume
rapidamente em caso de queda na rede. O circuito responsável pelo
chaveamento demora alguns milésimos de segundo (de 2 a 5 ms, na maioria
dos modelos) para perceber a queda na rede e acionar o inversor, por isso
existe uma breve interrupção no fornecimento aos equipamentos, que acaba
passando desapercebida graças aos circuitos da fonte de alimentação.

Os seguintes na lista são modelos line-interactive, que são uma evolução dos
offline. Neles, o inversor também assume apenas quando existe falha na rede
elétrica; a diferença é que o inversor fica ligado continuamente e um circuito de
monitoramento se encarrega de monitorar a tensão e usar energia do inversor
em caso de queda na tensão.

Caso ocorra um brownout e a tensão caia em 10%, por exemplo, o circuito
repõe os mesmos 10% usando energia do inversor, de forma que os aparelhos
recebem sempre uma tensão de 115V. Os nobreaks line-interactive utilizam as
baterias de uma forma muito mais ágil que os offline e são mais confiáveis. O
problema é que eles também desperdiçam mais energia, já que o inversor
precisa ficar continuamente acionado.

Atualmente, existe uma quarta categoria, que são os nobreaks line-boost, que
são uma versão popular dos line-interactive. Ao invés de manterem o inversor
continuamente ativo, a postos para compensar variações na rede elétrica, eles
utilizam um transformador auxiliar, que aumenta a tensão em um valor fixo
(geralmente 12%) quando usado. Se a tensão cai de 110 para 95V, por
exemplo, o transformador entra em cena, aumentando a tensão em 12%,
atenuando a redução e fazendo com que os equipamentos recebam 106V.
Caso a tensão caia abaixo de um certo limite, o inversor é acionado e passam
a ser usadas as baterias. Muitos modelos utilizam transformadores com vários
estágios (2, 3, ou até mesmo 4), oferecendo atenuações bem mais suaves.




                  Modelo de nobreak com a tecnologia line-boost

                                                                             736
A tecnologia line-boost é muito mais barata que a line-interactive, por isso os
fabricantes passaram a usá-la na maioria dos modelos. Embora eles também
sejam chamados de "line-interactive", "interativo" ou até mesmo de "nobreak
com regulação online" (note o uso da palavra "regulação", combinada com o
termo "online" para dar a entender de que se trata de um nobreak online), eles
são diferentes dos online ou line-interactive "de verdade".

Atualmente, quase todos os modelos de nobreaks baratos, destinados ao
mercado doméstico, são line-boost ou offline. O uso de microprocessadores e
melhorias nos projetos fizeram com que eles se tornassem bem mais
confiáveis que os modelos antigos, reduzindo muito a diferença na prática. O
acionamento do inversor se tornou mais rápido (menos de 1 ms em muitos
modelos) e o uso de capacitores e outros circuitos reduzem o tempo de queda
na energia a quase zero. A eficiência também melhorou bastante. Muitos
modelos atuais trabalham com 95% de eficiência (ou seja, para cada 300 watts
de carga, o nobreak desperdiça apenas 15). Isso faz com que hoje em dia a
escolha sobre qual nobreak comprar recaia mais sobre a marca, modelo e
qualidade geral e não sobre a tecnologia usada.

Outra característica importante é o formato de saída de onda do inversor.
Quando o nobreak usa as baterias, o inversor precisa transformar a corrente
contínua das baterias em corrente alternada. Basicamente, a corrente contínua
é uma linha reta e constante, enquanto a corrente alternada é uma onda
analógica que oscila 60 vezes por segundo (60 Hz).

Os nobreaks mais baratos ou antigos utilizam inversores que geram ondas
quadradas (procure referências a "square wave" nas especificações), onde a
tensão varia de forma abrupta. Eles são um pouco perigosos, pois podem
danificar aparelhos sensíveis ou até mesmo a própria fonte de alimentação do
micro se as quedas de energia (e conseqüentemente o uso do inversor) forem
freqüentes.

Os modelos baratos mais recentes utilizam ondas senoidais por aproximação
(nas especificações você encontrará termos como "pseudo-sine wave",
"modified square wave", "near sine wave" ou "stepped sine wave"), que são um
meio termo, onde as variações são feitas em intervalos maiores (evitando as
variações súbitas das ondas quadradas), oferecendo algo mais próximo a uma
onda analógica.

Finalmente, temos os modelos mais caros, que geram ondas senoidais "puras"
("sine wave" ou "pure sine wave"), ou seja, virtualmente idênticas às fornecidas
pela rede elétrica. Estes são naturalmente os melhores dentro do quesito.

Note que não existe uma relação direta entre a tecnologia usada (offline,
online, etc.) e o formato de onda usado pelo inversor. Entretanto, como os
inversores que geram ondas senoidais são mais caros, eles acabam sendo
usados apenas nos modelos premium, que naturalmente utilizam tecnologias
melhores. Você nunca encontraria um nobreak online para uso industrial com
um inversor barato gerando ondas quadradas.




                                                                            737
Uma observação é que você nunca deve usar um estabilizador entre o nobreak
e o PC, pois os estabilizadores são feitos para receberem ondas senoidais. Ao
receber as ondas quadradas geradas por um nobreak barato, o estabilizador
vai aquecer e desperdiçar energia tentando retificar as ondas. Em casos mais
extremos, ele pode até mesmo queimar e/ou danificar os equipamentos ligados
a ele.

Se isso for lhe fazer dormir mais tranquilo a noite, você pode usar o
estabilizador em conjunto com o nobreak, desde que o estabilizador fique entre
o nobreak e a tomada, e não o contrário. A principal desvantagem de fazer isso
é que você aumenta o desperdício de energia, já que são somadas as perdas
causadas pelo nobreak e as causadas pelo estabilizador, o que pode
representar um aumento perceptível no consumo geral do equipamento.

Além disso, antes de ligar o nobreak no estabilizador, é importante checar as
capacidades de fornecimento. Se você tem um nobreak de 600 VA, o ideal é
usar um estabilizador de 800 VA ou mais. Esta margem de segurança é
importante por dois fatores: o primeiro é que a eficiência do nobreak gira em
torno de 90 a 95%, o que significa que ao fornecer 600 VA para o micro, ele vai
consumir 630 ou 660 VA no total. O segundo fator é que o nobreak precisa
recarregar a bateria depois que ela é usada, o que aumenta seu consumo em
mais 10% (ou mais). Se a capacidade do estabilizador for igual ou menor que a
do nobreak, não o use em hipótese alguma.

Devido a tudo isso, o uso de estabilizadores, módulos isoladores ou qualquer
outro tipo de dispositivo "ativo" em conjunto com o nobreak não é
recomendável. Se a idéia é proteger o nobreak, o correto é utilizar um bom filtro
de linha, que é um dispositivo passivo. Mais uma vez, vale lembrar que "nada
substituiu o aterramento"; ele é a proteção mais efetiva (e uma das mais
baratas) contra as intempéries.

Continuando, muitos modelos de nobreaks oferecem a possibilidade de usar
um cabo de monitoramento, que pode ser tanto um cabo USB quanto um cabo
serial (nos modelos mais antigos) ligado ao micro. Um software se encarrega
de monitorar o status e a carga das baterias e pode ser programado para
desligar o PC ou executar outras ações quando a carga das baterias está no
fim.

No Windows você pode usar as opções disponíveis na aba "UPS" do "Painel de
Controle > Opções de energia" (ou usar algum software fornecido pelo
fabricante), enquanto no Linux você utilizaria o "upsd" (o daemon genérico) ou
o "apcupsd" (específico para nobreaks da APC). Eles estão disponíveis nas
principais distribuições, precisam apenas ser configurados e ativados. Você
pode ler mais sobre eles no http://www.networkupstools.org/compat/ e
http://www.apcupsd.com/.

Inversores

Os inversores transformam a corrente contínua de 12V fornecida por uma
bateria na tensão alternada de 115V, fornecida aos aparelhos. Como vimos, o
inversor é um dos componentes do nobreak, mas também existem muitos

                                                                             738
modelos autônomos à venda no mercado, que podem ser ligados no
acendedor de cigarros ou diretamente na bateria do carro. Eles são uma opção
para quem quer usar o notebook ou outros aparelhos quando está viajando, ou
durante temporadas em campings ou locais sem eletricidade.

A maioria dos modelos oferece uma capacidade de 150 a 600 watts. Existem
também alguns modelos baratos, destinados a alimentar um único notebook,
que fornecem apenas 100 watts (ou menos), mas, em compensação, custam
geralmente menos de 100 reais.




        Inversor que pode ser ligado no acendedor de cigarros do carro

Combine o inversor com um notebook e um plano de acesso via GPRS (via
celular) e você tem uma solução para se manter conectado em praticamente
qualquer lugar ;).

VA x watts

Ao comprar um estabilizador ou um nobreak, a capacidade é sempre informada
em VA (Volt-Ampere) e não em watts. Em teoria, um nobreak ou estabilizador
de 600 VA seria capaz de suportar uma carga de 600 watts, mas na prática ele
acaba mal conseguindo manter um PC que consome 400. Se você realmente
ligasse um PC que consumisse 600 watts, ele desligaria (ou queimaria!) quase
que instantaneamente.

Essa diferença ocorre por que a capacidade em VA é igual ao fornecimento em
watts apenas em situações onde são ligados dispositivos com carga 100%
resistiva, como é o caso de lâmpadas e aquecedores. Sempre que são
incluídos componentes indutivos ou capacitivos, como no caso dos PCs e
aparelhos eletrônicos em geral, a capacidade em watts é calculada
multiplicando a capacidade em VA pelo fator de potência da carga, sendo que
a maioria das fontes de alimentação trabalha com fator de potência de 0.65 ou
0.7. Isso significa que um estabilizador de 600 VA suportaria, em teoria, um PC
que consumisse 400 watts, utilizando uma fonte de alimentação com fator de
potência de 0.66.

Como é sempre bom trabalhar com uma boa margem de segurança, uma boa
regra para calcular a capacidade "real" em watts é dividir a capacidade em VA
por 2. Assim, um nobreak de 600 VA suportaria um PC com consumo total de
300 watts com uma boa margem.


                                                                           739
Proteção para a linha telefônica

Se você acessa via modem ou ADSL, é importante comprar um nobreak ou
estabilizador com proteção para a linha telefônica, já que a incidência de raios
através da linha telefônica é bem maior do que através da rede elétrica. O
principal motivo é que na rede elétrica temos os transformadores e disjuntores,
que funcionam como uma barreira inicial, enquanto a linha telefônica é uma
ligação direta entre o seu modem e a central, sem proteções adicionais pelo
caminho.

Uma observação é que qualquer filtro ou protetor para a linha telefônica causa
uma pequena perda de sinal, devido ao uso de MOVs e outros componentes.
Por isso é importante comprar produtos de boa qualidade, onde a perda é
menor. Não acredite nos filtros de 5 reais ou em receitas folclóricas como dar
nós no cabo; os circuitos protetores são caros, por isso apenas os
estabilizadores e nobreaks de boa qualidade oferecem uma proteção real.

Embora menos comum, também é possível que o equipamento seja danificado
através da placa de rede, caso existam outros micros sem proteção na rede, ou
caso o modem ADSL (ligado ao hub) esteja ligado diretamente na linha
telefônica. Um raio que atinja outro equipamento pode continuar através do
cabo de rede e a partir daí danificar o hub e os micros ligados a ele. A rede é
um ponto vulnerável contra descargas elétricas, pois ao contrário da rede
elétrica, a rede não possui aterramento. A única rota de escape são os próprios
micros, daí o perigo.

Autonomia

Outra dúvida comum com relação aos nobreaks é a autonomia. Os fabricantes
fazem uma grande confusão com relação a isso, publicando estimativas de
consumo, do tipo "1 PC onboard + 1 monitor de 15" + impressora jato de tinta =
autonomia de 20 minutos" (como vi nas especificações de um SMS Manager
III), sem especificar a capacidade exata das baterias.

Com exceção de modelos específicos, todos os nobreaks utilizam baterias de
chumbo ácido compactas. Elas são muito similares às baterias usadas em
carros, mas são menores e possuem uma capacidade reduzida.




                                                                            740
Bateria de nobreak (em proporção com um HD de 3.5")

O mais comum é que sejam usadas baterias de 7.2 Ah (as de carro possuem
44, 48, ou mesmo 52 Ah). Os nobreaks menores, de 600 VA normalmente
utilizam apenas uma, enquanto os maiores, de 1.3 VA utilizam duas. A
capacidade das baterias pode variar de acordo com o modelo (você pode
checar nas especificações), mas raramente são usadas mais de duas baterias
internas. Ao invés disso, são oferecidos modelos com engates para baterias
externas.

Já que você pode dizer se o seu nobreak usa uma ou duas baterias
simplesmente pelo tamanho, fica fácil calcular a autonomia. Os "7.2 Ah" de
capacidade da bateria indicam que ela é capaz de fornecer uma carga de 1
ampere por 7.2 horas a 12 volts (que é a tensão nominal da bateria).

O nobreak utiliza um inversor para transformar os 12V fornecidos pela bateria
nos 115 volts que são fornecidos ao micro. Se temos 7.2 Ah a 12V, significa
que temos 0.75 amperes hora a 115V.

Isso significa que a bateria duraria 30 minutos caso seu micro consumisse 156
watts (o que seria próximo do consumo típico de um desktop com um
processador e placa 3D razoáveis, gravador e monitor LCD), ou 20 minutos
caso ele consumisse 234 watts (um micro similar, só que agora usando um
monitor CRT de 17").

Na prática, a conta não é tão exata assim, pois existe alguma perda de energia
nos circuitos do nobreak e na fonte de alimentação do micro, sem contar que
ele interrompe o fornecimento antes que a bateria fique completamente
descarregada. Levando tudo isso em consideração, seria conveniente reduzir


                                                                          741
nosso cálculo teórico em 20 a 25% para chegar a um número mais próximo da
realidade.

Temos em seguida a questão das baterias externas. Nada impede que você
simplesmente substitua a bateria interna do seu nobreak por uma bateria de
carro; o carregador incluído no nobreak vai demorar dias para carregar a
bateria superdimensionada e o resultado não vai ser muito bonito
esteticamente, mas funcionar, funciona. Uma bateria nova, de 44 Ah, lhe daria
uma autonomia 6 vezes maior que a bateria padrão.

O grande problema é que isso viola a garantia e, como disse, o carregador do
nobreak demoraria muito para conseguir carregar a bateria de maior
capacidade. Existe ainda a possibilidade de que o maior volume de uso abrevie
a vida útil do inversor, inutilizando o nobreak antes da hora.

Chegamos então aos modelos de nobreak com engates para baterias externas.
A principal diferença é que eles incluem carregadores dimensionados para
carregar as baterias externas em tempo hábil, além de serem muito mais
práticos. Novamente, você tem a opção de comprar as baterias externas
oferecidas pelo fabricante, ou usar baterias de carro comuns; basta comprar o
cabo apropriado.




                      Cabo de engate para bateria externa

Em casos onde você realmente precisa de muita autonomia, é possível ainda
usar duas ou mais baterias ligadas em paralelo. Neste caso você liga o pólo
positivo da segunda bateria no pólo positivo da primeira, o negativo da segunda
no negativo da primeira, o positivo da terceira no positivo da segunda e assim
por diante. Ligando duas baterias de 12V e 44 Ah em paralelo, você tem como
resultado uma bateria de 12V e 88 Ah. A principal recomendação é que você
procure cabos apropriados, não tente improvisar usando fios comuns, que

                                                                           742
podem superaquecer ou simplesmente não serem capazes de suportar a
amperagem necessária, fazendo com que o nobreak desligue o fornecimento
por achar que a bateria está fraca.

Vale lembrar que como a bateria trabalha com tensão de 12V, a amperagem
transmitida através do cabo é bastante alta. Se o nobreak está fornecendo 300
watts de energia para os equipamentos, significa que o cabo da bateria está
transportando uma corrente de quase 30 amperes, o que não é pouca coisa.

Se você tiver a curiosidade de medir a tensão fornecida à bateria durante o
carregamento (usando o multímetro), não se assuste se ver um valor de 13.6
ou 13.8V, esta é a tensão normal de carregamento. Embora a tensão nominal
da bateria seja de 12 volts, ela oscila entre 9.4 e 13.6, de acordo com o nível
de carga. Na maioria dos nobreaks, o alarme se intensifica quando a bateria
atinge 10.5V e o inversor é desligado quando ela atinge 9.5V, evitando que a
bateria seja completamente descarregada (o que abreviaria sua vida útil).


Capítulo 9: Configuração do Setup, drivers e utilitários

Quando você liga o micro, o primeiro software que é carregado é o BIOS da
placa-mãe, que faz a contagem da memória RAM, realiza uma detecção rápida
dos dispositivos instalados e, por fim, carrega o sistema operacional principal a
partir do HD, CD-ROM, pendrive, disquete, rede ou outra mídia que estiver
disponível. Este procedimento inicial é chamado de POST (Power-on self test).

O POST tem duas funções básicas: detectar o hardware instalado (atribuindo
endereços de IRQ, endereços de I/O e outros recursos) e verificar se os
componentes básicos (processador, memória, placa de vídeo e circuitos de
comunicação) estão funcionando como deveriam. Quando é encontrado algum
erro grave, como blocos defeituosos logo nos primeiros endereços da memória
RAM, defeitos no processador ou em componentes essenciais do chipset da
placa-mãe, o BIOS emite o código de avisos sonoros referente ao problema e
paralisa o boot.

Além da função de "dar a partida", o BIOS oferece uma série de rotinas de
acesso ao vídeo, HDs e outros periféricos, que podem ser usados pelo sistema
operacional. Hoje em dia, tanto o Windows quanto o Linux acessam o hardware
através de drivers especializados, mas na época do MS-DOS as rotinas do
BIOS eram importantes.

Chegamos então ao Setup, um programa de configuração para os parâmetros
do BIOS. Nos primeiros PCs, o BIOS era um aplicativo separado, que
precisava ser carregado através de um disquete de boot, mas a partir dos
micros 386 ele passou a fazer parte do BIOS principal.

As opções configuráveis através do Setup variam muito de acordo com o tipo
de placa e a que público ela é destinada. Temos desde notebooks, com
conjuntos incrivelmente limitados de opções, até placas destinadas a
entusiastas, com mais de 20 opções só para ajustar os tempos de acesso da
memória.


                                                                             743
Assim como todo software, tanto o BIOS quanto muitas vezes o próprio Setup
possuem bugs, em muitos casos graves. É normal que qualquer fabricante
respeitável disponibilize um conjunto de atualizações para o BIOS de uma
placa popular. Em geral, a ausência de atualizações de BIOS disponíveis não é
um sinal de que as placas não possuem problemas, mas simplesmente que o
fabricante não se dá ao trabalho de corrigi-los.

O BIOS é quase sempre escrito em assembly, muitas vezes com módulos
escritos em C. Por ser um programa complexo, que possui diversas camadas
de legado, acumuladas desde o PC original, o BIOS de uma placa-mãe típica é
um software cada vez mais caro e difícil de se manter.

Existe atualmente cada vez mais pressão em torno do desenvolvimento de um
sistema mais elegante, que possa desempenhar as funções dos BIOS atuais
de forma menos problemática e abrir espaço para a introdução de novos
recursos.

Uma tecnologia já em uso é o EFI (Extensible Firmware Interface), usada em
placas-mãe para o Intel Itanium e também nos Macs com processadores Intel.
O EFI utiliza uma arquitetura modular, bem mais limpa e eficiente, que permite
o uso de módulos personalizados para os dispositivos de cada placa-mãe,
mantendo (opcionalmente) compatibilidade com o sistema antigo. No caso dos
Macs, esta camada de compatibilidade é desativada (de forma a dificultar a
vida de quem pretende instalar Linux ou Windows em dual boot com o MacOS),
mas, no caso de placas avulsas, o EFI viria com o modo de compatibilidade
ativado, permitindo rodar qualquer sistema.

Existe ainda um projeto para substituir o BIOS da placa-mãe por uma versão
compacta do Kernel do Linux, que executa as mesmas funções, mas de uma
forma mais confiável e flexível. Você pode obter mais informações sobre ele e
sobre as placas suportadas no: http://www.linuxbios.org/.

Continuando, depois de fazer seu trabalho, o BIOS carrega o sistema
operacional, lendo o primeiro setor do disco rígido o "Master Boot Record"
(MBR), também conhecido como trilha zero ou trilha MBR. No MBR vai o
gerenciador de boot, um pequeno software encarregado de dar a partida no
sistema operacional. O gerenciador de boot usado no Windows XP e no Vista é
chamado de NTLDR, enquanto no Linux o mais usado é o Grub. Na verdade,
no MBR mesmo vai apenas um bootstrap, um pequeno software que instrui o
BIOS a carregar o executável do gerenciador de boot, armazenado em um
ponto específico do HD. O MBR propriamente dito ocupa um único setor do HD
(apenas 512 bytes), de modo que não é possível armazenar muita coisa
diretamente nele.

Como pode ver, o BIOS não se preocupa em detectar qual sistema operacional
está instalado no HD, nem muito menos tentar ler o sistema de arquivos em
que ele (o HD) está formatado. Tudo o que ele faz é ler o setor de boot do HD e
deixar que o gerenciador de boot faça seu trabalho. Se isso não for possível,
ele exibe a fatídica mensagem "No boot device available", ou similar, e espera
que você resolva o problema. :)


                                                                           744
Na grande maioria dos casos, pressionamos a tecla "Del" durante o início do
boot para acessar o Setup. Nos notebooks é usada normalmente a tecla "F2",
mas (embora relativamente raro) existem casos onde a tecla de atalho é "Esc",
"F1", "F8", "F10", "Ins" ou mesmo combinações de teclas, como "Ctrl+Esc",
"Alt+Esc", "Ctrl+Alt+Esc", "Ctrl+Alt+Enter" ou "Ctrl+Alt+F2".

Desde a década de 90, o mercado de desenvolvimento de BIOS é dividido
entre a AMI (a mais usada atualmente), a Award e a Phoenix (usada
predominantemente em notebooks). Como era de se esperar, cada um dos três
utiliza uma interface um pouco diferente para o Setup, mas as opções
propriamente ditas dependem mais do fabricantes da placa do que da marca
do BIOS. Os notebooks são geralmente os mais pobres em opções, já que são
configurações prontas, onde não se espera que você altere muitos
componentes ou faça overclock.

Esta é a interface mais tradicional, usada tanto em BIOS da Award quanto da
AMI e até mesmo em alguns da Phoenix, onde as opções são divididas em
menus. Você navega entre as opções usando as setas, Enter e Esc, e altera as
opções dentro das seções pressionando Enter e escolhendo o valor desejado
dentro de um submenu com as opções disponíveis:




Durante a década de 1990, a AMI utilizou uma interface gráfica, onde você
usava o mouse para navegar entre as opções. Apesar de ser considerada mais
fácil por alguns, essa interface acabou não pegando e foi substituída pela
interface baseada em abas utilizada atualmente. Nela, você usa as setas para
a direita e esquerda para alternar entre as seções, as setas para cima e para
baixo (além de Enter e Esc) para navegar entre as opções e acessar os
submenus e altera as opções usando as teclas "+" e "-".



                                                                         745
Em ambas as interfaces, você pode salvar e sair usando a tecla F10, ou sair
sem salvar pressionando Esc na tela principal. As configurações do Setup são
salvas no CMOS, a área de memória volátil dentro do chip com o BIOS. É
justamente isso que permite que as configurações sejam apagadas ao mudar a
opção do jumper ou ao retirar a bateria, o que permite "destravar" a placa ao
tentar um overclock mais extremo ou usar qualquer opção que faça o micro
passar a travar durante o POST, sem que você tenha chance de acessar o
Setup para restaurar a configuração anterior.

A seção mais básica é a "Main" ou "Standard CMOS Setup", que permite
ajustar o relógio do sistema e conferir a detecção dos HDs. Além de ser
ajustado manualmente através do Setup, o relógio do sistema pode ser
ajustado via software, o que é feito automaticamente pela maior parte dos
programas que acertam o relógio do sistema via internet. De qualquer forma, é
sempre importante acertar o relógio ao montar o micro, antes de instalar o
sistema operacional.

Existe também a opção "Legacy Diskette A", usada para indicar se um drive de
disquetes está instalado. Use "1.44M, 3.5 in.", caso tenha um drive instalado,
ou "Disabled", se não tiver nenhum. Apesar de poucos ainda utilizarem drives
de disquetes (pelo menos em micros novos) eles ainda são necessários em
muitos casos para carregar drivers da porta SATA ou RAID ao instalar o
Windows XP. O problema foi resolvido apenas com o Vista, onde os drivers
podem ser carregados também a partir de um CD-ROM ou pendrive.


Discos e RAID

Antigamente, a detecção dos HDs era feita através da opção "IDE HDD Auto
Detection" presente no menu principal do Setup, mas em placas atuais a

                                                                          746
detecção dos HDs é feita automaticamente durante o POST e os HDs
presentes aparecem dentro da seção Main:




            Seção Main do Setup, mostrando os drives instalados

Acessando o submenu referente a cada um dos discos instalados, você tem
algumas opções adicionais, como ajustar os modos de transferência (PIO
Mode e DMA Mode), além de desativar o uso do SMART, LBA e transferências
de 32 bits. Estas opções podem ser úteis para solução de problemas em
algumas situações, mas em 99.9% dos casos você simplesmente mantém o
SMART e o "32bit Data Transfer" ativados e as demais opções em "Auto".

O BIOS detecta estas configurações automaticamente a partir de informações
transmitidas pela controladora do HD ou drive óptico, por isso existe pouca
margem para erros de detecção:




                                                                        747
Submenu com opções relacionadas ao HD, dentro da seção Main

Como você pode ver, o modelo e os recursos suportados pelo HD são exibidos
na parte superior da tela, o que é uma forma rápida de identificar o HD
instalado, sem precisar primeiro instalar o sistema e rodar algum programa de
diagnóstico. Uma busca rápida no Google pelo modelo (ST380011A no HD do
micro mostrado no screenshot) permite encontrar as especificações completas
do drive.

Uma observação importante sobre as portas SATA e IDE da placa-mãe é que
elas podem ser desativadas, ou configuradas para operar em modo RAID. Por
padrão, as portas ficam ativadas e configuradas para operar em modo normal,
de forma que você precisa alterar a configuração para ativar o uso do RAID. Se
você pegar uma placa-mãe usada, onde os HDs misteriosamente não são
detectados pela placa, verifique antes de mais nada se elas não estão
desativadas. Se mesmo assim o HD não for detectado, experimente instalá-lo
em outra porta.

Como cada porta IDE ou SATA é controlada por um circuito separado dentro
do chipset, é muito comum que uma das portas da placa se queime por
motivos diversos, mas as demais continuem funcionando.

As opções para desativar as interfaces SATA e IDE estão geralmente dentro da
seção "Advanced", "Features Setup", "IDE Function Setup", "Integrated
Peripherals" ou "Onboard Devices Configuration" do Setup. Como você pode
ver, existe uma grande variação nos nomes usados para identificar as mesmas
seções e opções em diferentes placas, por isso é mais importante entender o
que as opções fazem e tentar localizá-las com base nas palavras-chave em
placas diferentes, do que tentar decorar todas as variações possíveis.


                                                                          748
Voltando à ativação das interfaces, procure pelas opções "Onboard IDE",
"Onboard PCI IDE Controller", "IDE Controller", "Onboard SATA-IDE",
"Onboard SATA Controller" ou "Serial ATA Controller", que devem ser
configuradas com o valor "Enabled" ou "Both" (que indica que ambas as postas
IDE devem permanecer ativadas):




      Opções para ativar/desativar as portas IDE e SATA da placa-mãe

A opção "SATA DMA Transfer" ativa o suporte a DMA para os HDs ligados às
portas SATA. Desativar o DMA pode ser usado para tentar solucionar
problemas relacionados à detecção dos HDs ou corrupção dos dados.
Naturalmente, desativar esta opção causa uma grande redução no
desempenho dos drives, por isso é algo que você só deve tentar em último
caso.

Em seguida temos a configuração do suporte a RAID. Na maioria das placas
com chipsets SiS e VIA (com apenas duas portas SATA), a configuração do
RAID para as portas SATA vai na mesma opção onde elas podem ser
desativadas. Em algumas placas é usada a opção "Configure SATA as" e em
outras a opção fica escondida dentro de um submenu da seção "Main" ou
"Advanced".

Para ativar o RAID, você usa a opção "RAID" ao invés de "SATA", "IDE" ou
"Enabled", opções que fazem as portas SATA operarem em modo normal:




                                                                         749
Opções para ativar o RAID usando as portas SATA

Em placas com quatro ou mais interfaces SATA que podem ser usadas em
modo RAID, existe normalmente uma seção separada, onde você pode indicar
quais das portas farão parte do array RAID e quais devem permanecer
operando em modo normal. Isso permite que (em um micro com três HDs) você
use dois dos drives para criar um array RAID 0, mas mantenha o terceiro drive
fora do array para armazenar backups, por exemplo.

Como de praxe, a localização das opções varia de acordo com a placa. Na
maioria das placas Asus com chipsets nVidia, por exemplo, a configuração do
RAID fica escondida dentro do menu Advanced > Onboard Device
Configuration > NVRAID Configuration:




                                                                         750
Depois de ativar o RAID no Setup, você tem acesso a uma interface (separada)
de configuração, onde você deve criar o array, adicionando os HDs que farão
parte dele e escolher o modo de operação. Em algumas placas ela é acessada
ao pressionar a tecla "Tab" ou "F10" durante o boot, em outras são usadas
seqüências como "Ctrl+S", "Ctrl+J" ou "Ctrl+M":




                   Utilitário de configuração do array RAID

Dentro da interface, a opção "RAID Mode" é a mais importante. Use a opção
"Mirroring" para criar um array RAID 1 (2 ou 4 HDs), "Striping" para RAID 0 (2,
3 ou 4 HDs), "Stripe Mirroring" para RAID 10 (4 HDs) ou "Spanning" para usar
JBOD, onde os dados são simplesmente espalhados entre os HDs. A opção
"Striping Block" ajusta o tamanho dos blocos ao usar RAID 0 ou 10.

É importante enfatizar que todos os dados dos HDs são apagados ao criar um
array RAID 0, por isso o ideal é que você faça isso logo depois de montar o
micro. Ao criar um array RAID 1 os dados são normalmente apenas copiados


                                                                           751
do primeiro para o segundo HD, mas é sempre bom fazer backup para
qualquer eventualidade.

A vantagem de utilizar a controladora RAID da placa-mãe, ao invés de
simplesmente criar um sistema de RAID via software usando as opções
disponíveis no Windows ou Linux, é que você pode usar o array RAID
diretamente para instalar o sistema.

No caso do Windows XP, é preciso criar um disquete com os drivers da
controladora e carregá-lo durante a instalação, pressionando a tecla "F6"
quando é exibida a mensagem "Pressione F6 se precisar instalar um driver
SCSI ou RAID de TERCEIROS". Procure por um executável chamado
"Makedisk.exe" ou similar dentro da pasta "drvdisk", "SATA" ou "RAID" no CD
de drivers da placa-mãe. O Windows XP SP2 inclui um conjunto bem mais
atualizado de drivers e o Vista permite carregar os arquivos a partir de um
pendrive, o que reduz a necessidade do disquete.

Uma coisa que você deve ter em mente ao criar um array RAID 0 ou RAID 10
usando a controladora embutida na placa mãe é que nem sempre é possível
transportar os discos para uma placa diferente (como ao fazer upgrade), sem
precisar formatar os HDs e recriar o array.

Normalmente, a migração ocorre sem maiores problemas ao instalar os HDs
em outra placa com uma versão superior do mesmo controlador RAID, como
ao migrar de uma placa mãe Intel baseada no chip ICH7 para uma recente,
baseada no ICH9. Os problemas surgem ao tentar migrar para uma placa mãe
com uma controladora diferente, como de uma placa com chipset Intel para
outra com chipset nVidia. Nesse caso a migração raramente é possível, devido
a diferenças na implementação usadas pelos fabricantes. Ao instalar os HDs
em uma controladora incompatível, ela simplesmente não reconhecerá o array
e não será capaz de acessar os dados.

Mesmo em casos onde a migração é possível, é necessário usar uma mídia de
instalação do Windows para fazer o reparo do sistema, instalando o driver da
nova controladora, já que o Windows não tem como acessar os HDs em RAID
sem eles.

Outra observação com relação ao suporte a RAID é que muitas placas,
sobretudo as baseadas em chipsets VIA ou SiS utilizam um controlador
SATA/RAID externo, geralmente da Marvell ou JMicron, de forma a oferecer 4
ou 8 portas SATA, em vez de apenas 2 ou 4. Neste caso, o controlador possui
um BIOS próprio, inicializado logo depois do BIOS principal e você precisa
configurar ou um ou outro, de acordo com quais portas for utilizar para o RAID.
Não se surpreenda ao receber uma mensagem do segundo controlador a cada
boot, reclamando que não encontrou nenhum disco; isso é normal ao usar as
portas referentes ao controlador embutido no chipset:




                                                                           752
Não se assuste. Em algumas placas é assim mesmo :)

Em quase todas as placas que utilizam controladores extra, existe uma opção
para desativá-los no setup. No caso da Asus M2V, por exemplo, que usa um
controlador Marvell 88SE6121, está disponível a opção "Onboard Marvel6121
Controller" dentro da seção Onboard Devices Configuration, que permite
desativar as duas portas SATA ligadas a ele. Como não é possível dar boot
através de HDs ligados a estas duas portas, muita gente acaba não utilizando-
as e prefere desativar o controlador no Setup para simplificar a configuração.


Boot

Uma das configurações mais básicas do Setup é a ordem de boot. Apesar do
mais comum ser dar boot a partir do CD-ROM para instalar o sistema e a partir
daí dar boot a partir do HD, existe também a possibilidade de dar boot a partir
de pendrives, HDs externos e outras unidades de armazenamento removível e
também dar boot através da rede.

Na maioria das placas, as opções estão concentradas dentro da seção "Boot",
mas em muitas você pode usar as opções "1st Boot Device", "2nd Boot
Device", etc. dentro da seção "Advanced Setup".




                         Definição da ordem de boot


                                                                           753
Muitos BIOS antigos tinham problemas com a ordem de boot. Eles
simplesmente travavam caso não encontrassem um sistema de inicialização no
primeiro dispositivo, sem tentar os demais. Os atuais são bem mais espertos e
realmente procuram por setores de inicialização válidos, pulando os
dispositivos que não estão presentes, ou que não contêm sistema operacional.

Isso permite que você deixe o CD-ROM continuamente como dispositivo
primário de boot, coloque o seu pendrive (ou outro dispositivo removível) como
segundo e deixe o HD em terceiro, por exemplo. Dessa forma, quando você
deixar uma distribuição Linux live-CD ou uma mídia de instalação do Windows
no drive, o micro inicia o boot através dele, quando deixar seu pendrive (com
uma instalação do Linux ou outro sistema) ele tentará inicializar através dele e,
quando nenhum dos dois estiver disponível, é realizado um boot normal
através do HD.

Em casos onde você tenha mais de um HD instalado, você pode definir uma
ordem "interna" de inicialização entre os HDs disponíveis. Isso é importante,
pois permite definir se o BIOS deve inicializar a partir do HD SATA ou IDE, por
exemplo. Em muitos casos, existem também seções separadas para o drive
óptico (caso tenha mais de um) e para os dispositivos removíveis:




      Ordem "interna" de boot entre os HDs e pendrives USB instalados

Dependendo da placa e também do BIOS usado, os pendrives podem ser
detectados como HDs, ou como discos removíveis, mas na prática isso não faz
muita diferença. O mesmo se aplica também aos HDs externos, instalados em
gavetas USB. Como ambos são vistos pelo sistema como dispositivos USB
mass-storage, não existe muita diferença.

O suporte a boot através de pendrives é incipiente nas placas fabricadas até
2004/2005, por isso não é incomum que o boot via USB não funcione mesmo
em placas de fabricação relativamente recente.

                                                                             754
Embora seja perfeitamente possível instalar o Windows XP em um pendrive de
2 GB ou mais (desde que você consiga carregar o disquete com os drives da
porta USB, de forma que o instalador consiga enxergar o pendrive como uma
unidade de armazenamento e permita usá-lo para a instalação do sistema), o
mais comum é usar o pendrive para instalar uma distribuição Linux e, assim, ter
um sistema portátil. A instalação do Linux em pendrives já sai do escopo deste
livro, mas você pode ler detalhes sobre o assunto neste meu tutorial publicado
no Guia do Hardware: http://www.guiadohardware.net/tutoriais/instalar-kurumin-
pendrive/.

Outra possibilidade, muito utilizada, é o boot via rede. Dois sistemas de boot
remoto muito utilizados são o LTSP (com um servidor Linux) e o Citrix
MetaFrame, onde é utilizado um servidor Windows. A idéia central é armazenar
todos os dados e softwares em um servidor central e usar clientes sem HD,
que carregam o sistema via rede. É possível utilizar tanto terminais "burros",
que simplesmente abrem uma seção remota do servidor sem executar nenhum
processamento local, e terminais "inteligentes", que carregam os softwares via
rede e os executam localmente.

O boot via rede é feito via PXE, um protocolo de boot remoto originalmente
desenvolvido pela Intel. Inicialmente, o PC manda um pacote de broadcast pela
rede, que é respondido por um servidor DHCP especialmente configurado. A
partir das informações fornecidas pelo servidor, o cliente inicia o carregamento
do sistema via TFTP (uma versão simplificada do FTP) e, a partir de um certo
ponto, pode acessar um compartilhamento de rede do servidor com o restante
do sistema e softwares.

A princípio, você pode pensar que usar um único servidor para executar
aplicativos para 10 ou 20 terminais vai tornar tudo muito lento, mas na prática o
sistema funciona muito bem, devido ao compartilhamento de recursos. Nem
todos os clientes vão rodar aplicativos pesados simultaneamente e o servidor
pode carregar uma única instância de cada aplicativo usado, abrindo apenas
novas seções para cada cliente. Um servidor com 1 GB de RAM e um
processador razoável pode tranquilamente servir aplicativos básicos para 20
terminais.

O Citrix é um aplicativo caro, reservado para uso em empresas, mas o LTSP é
um sistema gratuito, muito usado para criar redes de terminais leves
aproveitando micros antigos. Você pode ler mais sobre a configuração de
servidores LTSP e boot remoto neste guia que publiquei no Guia do Hardware:
http://www.guiadohardware.net/guias/17/.

Algumas opções também relacionadas ao processo de boot são:

Quick Boot: Esta opção (caso ativada) faz com que o BIOS deixe de executar
parte do conjunto de testes do POST, sobretudo as checagens relacionadas à
memória, reduzindo o tempo de boot. É seguro mantê-la ativada, pois os testes
de memória realizados pelo boot não são confiáveis de qualquer forma. Em
99% dos casos, defeitos graves nos módulos de memória passam
despercebidos pelo BIOS e são notados apenas durante o carregamento do
sistema operacional, na forma de erros e travamentos.

                                                                             755
Em alguns casos muito raros, ativar esta opção pode fazer com que o BIOS
não detecte toda a memória instalada, mas isso também é o tipo de coisa que
você perceberia durante o uso do micro.

Full Screen Logo: Muitas placas exigem um splash gráfico no início do boot no
lugar das mensagens de texto tradicionais. Na maioria dos casos esta imagem
pode ser personalizada (como no caso das placas da Asus, que incluem o
Asus MyLogo). Esta opção diz apenas se a imagem deve ou não ser exibida no
boot.

HDD Sequence SCSI/IDE First: Esta opção, encontrada em muitas placas
antigas, permite definir a ordem de boot em casos onde uma controladora SCSI
está instalada, indicando se o BIOS deve procurar o sistema primeiro nos
discos SCSI, ou nos IDE. Nas placas atuais, quando uma controladora SCSI
está instalada, os discos simplesmente aparecem no menu de ordem de boot,
junto com os HDs SATA e IDE instalados, de forma que esta opção tornou-se
desnecessária.


Overclock

As opções relacionadas à freqüência de operação e tensão do processador e
memória são tradicionalmente agrupadas dentro da seção "CPU PnP Setup",
mas hoje em dia os fabricantes vêm cada vez mais optando por criar seções
com nomes mercadológicos. Nas placas da Asus, por exemplo, elas são
distribuídas dentre as seções "JumperFree Configuration" e "CPU
Configuration", enquanto nas DFI é usada a seção "Genie BIOS Settings".
Algumas opções importantes ao fazer overclock são:

AI Overclocking: Esta é uma opção encontrada em placas da Asus. Ela
oferece uma espécie de "overclock for dummies", onde você pode especificar
uma percentagem de overclock (5%, 10%, etc.) e o BIOS ajusta a freqüência
do processador, memória, HyperTransport e outras usando valores
predefinidos. Para visualizar as opções e ajustá-las manualmente, você precisa
configurá-la com o valor "Manual".

CPU Clock (ou CPU Frequency): Esta é a opção mais básica ao fazer
overclock, onde você ajusta a freqüência do FSB. Em praticamente todos os
processadores atuais, o multiplicador do processador é travado, de forma que a
única forma de fazer overclock é aumentar a freqüência do FSB.

As freqüências mostradas aqui equivalem à freqüência "real" do FSB, sem
considerar as duas ou quatro transferências por ciclo. Um Core 2 Duo que
utiliza bus de "1066 MHz", por exemplo, utiliza na verdade 266 MHz com quatro
transferências por ciclo. São justamente os 266 MHz (e não os 1066) que
aparecem no Setup. O mesmo ocorre no caso dos processadores AMD.




                                                                          756
Ajuste da freqüência do FSB

CPU Multiplier (ou Processor Frequency Multiplier): Permite ajustar o
multiplicador do processador. Nos Athlon 64 e nos Core 2 Duo o multiplicador é
destravado para baixo, por causa do gerenciamento de energia, de forma que é
possível usar um FSB mais alto e reduzir em alguns pontos o multiplicador do
processador. Isso permite obter pequenos ganhos no acesso à memória e na
comunicação entre os componentes. Uma exceção importante são os
processadores Pentium EE e Core 2 Duo Extreme, as séries destinadas a
entusiastas, onde o multiplicador é destravado.

CPU Vcore Voltage (Processor Voltage, Core Voltage ou CPU Voltage): Aqui
você pode ajustar a tensão de operação do processador. Aumentar a tensão
em 0.05V ou mesmo 0.1V facilita o overclock, permitindo que o processador
trabalhe estavelmente a freqüências um pouco mais altas. O maior problema é
que o aumento na tensão, combinado com o aumento da freqüência, faz com
que o consumo e a dissipação térmica do processador aumentem de forma
exponencial, trazendo a necessidade de um cooler mais eficiente e de um
projeto mais caprichado de ventilação do gabinete.

Em alguns casos, você pode preferir fazer o caminho contrário, reduzindo a
freqüência de operação e também a tensão do processador de forma a reduzir
o consumo e, assim, economizar na conta de luz. Isso pode ser interessante no
caso de micros que ficam ligados continuamente executando apenas tarefas
leves, como compartilhar a conexão ou gravar programas de TV.

FSB Spread Spectrum (CPU Spread Spectrum ou PLL1 Spread Spectrum):
Esta é uma opção obscura, sobre a qual você não vai encontrar muitas
explicações nos manuais dos fabricantes. Ela se destina a reduzir o nível de
interferência eletromagnética emitida pelo PC e, assim, permitir que ele atenda
às normas das agências reguladoras. Com o Spread Spectrum a freqüência do
FSB é alterada para cima e para baixo em pouco menos de 1% em intervalos
definidos, o que "espalha" a interferência em uma faixa maior do espectro. Esta

                                                                           757
variação torna o PC um pouco menos estável ao fazer overclocks agressivos,
onde o PC já está operando próximo do limite, de forma que muitos preferem
deixá-la desativada.

HyperTransport Frequency (ou HT Frequency): Em placas soquete 754, 939,
AM2 ou AM3, a freqüência do barramento HyperTransport é um fator
importante ao fazer overclock, já que ele é especialmente sensível a aumentos
na freqüência.

Em algumas placas, a freqüência é baseada em multiplicadores. Ao usar "5x",
por exemplo, a freqüência do HyperTransport é obtida multiplicando por 5 a
freqüência do FSB. Neste caso, ao aumentar a freqüência do FSB, você deve
compensar reduzindo o multiplicador do HyperTransport. Em outras, a
freqüência do HyperTransport é independente do FSB e pode ser ajustada
usando valores absolutos, como "800 MHz" ou "1000 MHz". Aumentar a
freqüência do HyperTransport tem um impacto muito pequeno (ou mesmo nulo)
sobre o desempenho. O mais importante aqui é manter o HyperTransport
trabalhando o mais próximo possível da freqüência nominal, de forma que ele
não prejudique a estabilidade do sistema ao fazer overclock.

PCI Express Clock (ou PCIE Clock): Assim como no caso do HyperTransport,
o barramento PCI Express é bastante sensível a aumentos na freqüência.
Como em um PC atual, quase todos os periféricos são ligados a ele; você pode
ter os mais diversos problemas ao aumentar a freqüência em mais do que 10
ou 15%, desde os HDs ou outros periféricos deixarem de ser detectados, até o
PC simplesmente deixar de dar boot, lhe obrigando a limpar o CMOS para
restaurar as configurações default do Setup.

Em placas antigas, a freqüência do PCI Express era atrelada à do FSB, o que
limitava os overclocks à freqüência suportada por ele. Placas atuais permitem
que a freqüência seja ajustada de forma independente, o que permite usar
freqüências muito altas para o FSB, mantendo o PCI Express nos 100 MHz
default.

Aumentar a freqüência do PCI Express aumenta apenas a velocidade da
comunicação entre os componentes, e não no clock dos componentes em si, o
que acaba tendo um efeito muito pequeno sobre o desempenho. Assim como
no caso do HyperTransport, o melhor é simplesmente mantê-lo operando na
freqüência default.

PCI Clock Synchronization Mode: Quando disponível, esta opção permite
ajustar a freqüência do barramento PCI. Usando o valor "33.3 MHz" ela é
fixada no valor default, enquanto que ao escolher "To CPU" ela flutua junto com
a freqüência do FSB.

Em micros antigos, na época das placas soquete 7 e nos primeiros micros
Pentium II e Pentium III, toda a comunicação entre os componentes da placa-
mãe era feita através do barramento PCI, fazendo com que aumentar a
freqüência de operação tivesse um impacto muitas vezes perceptível sobre o
desempenho. Atualmente o PCI é usado apenas por placas de expansão
instaladas nos slots da placa, de forma que raramente ele chega a ser

                                                                           758
saturado. O melhor então é simplesmente mantê-lo operando na freqüência
default, evitando problemas de estabilidade.

AMD K8 Cool'n'Quiet (ou Cool N'Quiet): Esta opção permite desativar o
Cool'n'Quiet (em placas para processadores AMD), desativando o sistema de
gerenciamento de energia. Minha sugestão é que o mantenha ativado,
principalmente ao fazer overclock, pois ele reduz bastante o consumo elétrico
do processador e a freqüência é chaveada de forma muito rápida, de forma
bastante transparente.

Em casos onde o gerenciamento não está funcionando, mesmo depois de
instalar os drivers ou ativar o powernowd (no Linux), verifique se esta opção
não está desativada no setup.


Memória

Todos os módulos de memória atuais, sem exceção, possuem o chip ESPD,
que armazena as configurações indicadas pelo fabricante, incluindo a
freqüência do módulo e os tempos de acesso. Apesar disso, muitas placas-
mãe (possivelmente a maioria) oferecem um conjunto bastante completo de
opções relacionadas à memória. Por padrão, as configurações são detectadas
automaticamente, a partir do SPD, mas você pode alterá-las manualmente de
forma a ganhar alguns pontos percentuais de desempenho.

É recomendável sempre executar o teste completo do memtest depois de
alterar as opções relacionadas à memória, de forma a confirmar a estabilidade
do micro. Ele é extremamente eficiente em detectar problemas transitórios, que
aparecem apenas em determinadas circunstâncias. Ao fazer overclock da
memória, ele pode indicar erros similares aos de um módulo com defeitos
físicos (já que ele não tem com saber o que causou o erro, sabe apenas onde
ele ocorreu), mas nesses casos basta voltar às configuração originais para que
tudo se normalize. Vamos, então, às configurações:




                                                                          759
Opções relacionadas à memória

Memclock Mode (Timing Mode): Por default, esta opção vem com o valor
"SPD" ou "Auto", o que que faz com que o BIOS configure as opções
relacionadas à memória utilizado os valores definidos pelo fabricante (gravados
no chip SPD do módulo). Normalmente você precisa alterar a configuração
para "Manual" para ter acesso às demais opções.

Memclock Value (Memclock Index Value, DRAM Speed ou DRAM Frequency):
Esta opção permite ajustar a freqüência de operação dos módulos de memória.
Lembre-se de que as memórias DDR realizam duas transferências por ciclo, as
DDR2 realizam 4 e as DDR3 realizam 8. Em algumas placas é mostrado o
valor "real" (geralmente de 100 a 233 MHz), enquanto outras mostram o valor
"composto", que vai até 466 (DDR), 933 (DDR2) ou 1866 MHz (DDR3), o que
no final dá na mesma. Assim como no caso dos processadores, os módulos de
memória suportam sempre trabalhar a freqüências um pouco superiores às
especificadas, o que permite obter pequenos ganhos de desempenho, em troca
de menos estabilidade.

Ao contrário das placas antigas, onde a freqüência da memória era atrelada à
do FSB, nas atuais você pode ajustar as duas coisas de forma independente.
Na maioria, você pode especificar a freqüência da memória diretamente,
enquanto em algumas você ajusta um multiplicador, que indica a freqüência da
memória em relação ao FSB.

Outra opção ao fazer overclock da memória é manter (ou até mesmo reduzir) a
freqüência de operação, mas em compensação reduzir os tempos de acesso.
Como vimos anteriormente, nos PCs atuais, com memórias DDR2 ou DDR3,
reduções nos tempos de acesso resultam geralmente em ganhos de
desempenhos maiores que aumentos na freqüência.


                                                                           760
Memory Voltage (ou DDR Voltage Control): Os módulos de memória DDR2 e
DDR3 utilizam tensões de, respectivamente, 1.8V e 1.5V. Assim como no caso
dos processadores, aumentar a tensão da memória faz com que o módulo seja
capaz de suportar freqüências de operação ligeiramente maiores (ou tempos
de acesso mais baixos). Muitos módulos DDR2 "premium" utilizam tensões de
1.9V, 2.0V ou mesmo 2.1V por padrão, justamente para permitir que o módulo
suporte temporizações mais agressivas.

Você pode obter pequenos ganhos de desempenho (mesmo usando módulos
genéricos) ao fazer o mesmo. O problema é que aumentando a tensão você
aumenta também a dissipação de calor dos módulos, o que, sem um dissipador
apropriado, pode acabar tendo um efeito contrário. De uma forma geral,
aumentos de até 0.2V na tensão podem ser considerados seguros, mas
aumentos maiores podem reduzir a vida útil do módulo.

CAS Latency (CL ou TCL): O CAS Latency é a principal configuração
relacionada ao tempo de acesso da memória. Ele determina o número de ciclos
necessários para iniciar um burst de leituras. Os antigos módulos SDRAM
trabalhavam com CAS Latency de 2 ou 3 ciclos, enquanto os módulos DDR2
atuais trabalham quase sempre com 4 tempos ou mais. Isso não significa que
os módulos estejam regredindo, muito pelo contrário. Os 4 ciclos do módulo
DDR2 equivalem a um único ciclo de um módulo SDRAM (já que o controlador
opera ao dobro da freqüência e realiza duas transferências por ciclo, fazendo
com que cada ciclo demore apenas um quarto do tempo). Alguns módulos
DDR2 de alta qualidade chegam a trabalhar com apenas dois tempos, mas
eles são mais caros e relativamente raros.

O CAS Latency é informado nas especificações do módulo. Em alguns casos, é
possível baixá-lo em um tempo (de 5 para 4, por exemplo), mantendo a
estabilidade, mas isso não é uma regra.

TRCD, TRP e TRAS: Estas três opções permitem ajustar os demais tempos de
acesso. Vimos uma explicação sobre os tempos de acesso no capítulo sobre
memórias. Vamos, então, a uma rápida revisão:

O valor do TRCD (RAS to CAS delay) indica o tempo que o controlador espera
entre o envio dos endereços RAS e CAS a cada leitura. O controlador envia o
sinal RAS, espera o tempo referente ao valor do TRCD, envia o sinal CAS,
aguarda o número de ciclos referente a ele e, então, finalmente obtém a leitura.

Em um módulo DDR2 4-4-4-12, tanto o tCL quanto o tRCD demoram 4 ciclos,
de forma que o acesso inicial demoraria um total de 8 ciclos. Em um módulo 5-
5-5-15, o tempo subiria para 10 ciclos. O TRCD não é tão importante quanto o
CAS Latency, pois é usado apenas ao alterar a linha ativa.

O TRP (Row Precharge Time) é mais um tempo de espera adicionado quando
o controlador precisa mudar a linha ativa. Antes acessar uma linha de
endereços, o controlador precisa carregá-la (precharge). O Row Precharge
Time (tRP) indica justamente o tempo necessário para fazer o carregamento.

Para realizar uma leitura em um módulo 4-4-4-12, o controlador precisa esperar
4 ciclos para o TRP, 4 ciclos para o tRCD, 4 ciclos para o tCL, totalizando 12
                                                                            761
ciclos. Ao fazer vários acessos consecutivos à mesma linha, são perdidos 12
ciclos no primeiro acesso, mas apenas os 4 referentes ao TCL nos acessos
subsequentes. Sendo um pouco repetitivo, o tempo referente ao TCL é perdido
em cada burst de 4 leituras, enquanto os outros dois são perdidos apenas ao
mudar a linha ativa, daí darmos mais ênfase ao TCL do que aos outros.

O TRAS (RAS Activate to Charge) indica o tempo necessário para realizar a
leitura completa, que corresponde geralmente à soma dos três. O TRAS é o
último número que aparece nas especificações do módulo. Em um módulo 4-4-
4-12, o "12" corresponde ao TRAS.

Usei o termo "geralmente" porque existem casos de módulos nos quais o
TRAS não é a soma dos três. Muitos módulos suportam um recurso chamado
"Additive Latency", que permite que o comando para iniciar o precharge do
banco seguinte seja enviado antes que a leitura termine. Isso faz com que o
tempo total da leitura seguinte seja reduzido em 1 ou até mesmo 2 ciclos. Este
é o caso dos módulos 5-4-4-11 ou 4-4-4-11, por exemplo. Em alguns módulos
de baixo custo, é necessário um ciclo adicional para fechar o banco, que
aumenta o tRAS ao invés de diminui-lo. É o caso dos módulos 5-5-5-16 ou 6-6-
6-19, por exemplo.

Uma coisa curiosa sobre o TRAS é que usar um valor mais baixo que o
suportado pelo módulo acaba reduzindo o desempenho ao invés de aumentá-
lo, pois ele faz com que a página seja fechada antes que o burst de leituras
seja concluído. Com isso o controlador precisa realizar um número maior de
leituras, reduzindo drasticamente a taxa de transferência. Não é exibida
nenhuma mensagem de erro, nem surgem problemas de estabilidade: o micro
simplesmente fica mais lento.

É importante rodar algum programa de benchmark (os testes do Everest ou do
Sandra servem bem) depois de alterar as opções, de forma a detectar
eventuais quedas no desempenho e também medir os ganhos em caso de
sucesso.

TRC, TRRD, TRFC, TWR, TWTR, TRTW e TWCL: Muitas placas oferecem um
conjunto mais completo de opções, abrangendo também as temporizações
mais exotéricas. Em muitas delas você precisa ativar a opção "Extended
Memory Settings" (ou similar) para ter acesso a elas. Todas estas opções são
secundárias e não afetam tanto o desempenho quanto as anteriores. Elas são
apenas uma "última fronteira" para quem é perfeccionista e quer extrair até a
última gota de desempenho. O volume e a ordem das opções variam de acordo
com a placa, por isso procurei organizar a explicação de forma que ela seja útil
no maior número possível de placas diferentes:

O TRC (Row Cycle Time) é o tempo necessário para um ciclo completo de
acesso a uma linha qualquer do módulo. Como de praxe, valores mais baixos
resultam em um pequeno ganho no desempenho de acesso à memória, mas
usar um valor muito baixo acaba resultando em corrupção dos dados ou perda
de desempenho, já que o controlador não tem tempo de terminar a leitura.




                                                                            762
O TRRD (Row to Row Delay) indica o número de ciclos necessários para ativar
a linha seguinte, no caso de leituras que envolvam dados armazenados em
linhas diferentes. Esta opção é, de certa forma, similar ao Row Precharge
Time. A diferença entre os dois é que o Row Precharge Time indica o tempo
necessário para carregar as células da linha seguinte, enquanto o TRRD é um
tempo de espera adicional que o controlador aguarda depois que a linha já está
carregada.

O TRFC (Row Refresh Cycle Time) indica a duração dos ciclos de refresh do
módulo. Novamente, reduzir o valor resulta em um ganho muito pequeno de
desempenho, pois o refresh é feito apenas algumas dezenas de vezes por
segundo. Usar um refresh muito curto pode causar problemas de estabilidade,
sobretudo com o módulo operando a altas freqüências, por isso, usar valores
mais baixos acaba servindo mais para reduzir o percentual de overclock do que
para melhorar o desempenho.

O TWR (Write Recovery Time) é uma "pausa" incluída durante cada operação
em uma seqüência de operações de escrita. Como elas são mais raras que as
operações de leitura, ele acaba tendo um efeito pequeno sobre o desempenho.
Outra opção similar é o TWTR (Write to Read Delay), uma pausa feita quando
o controlador termina as operações de escrita e precisa iniciar uma série de
operações de leitura. Em alguns casos, aumentar o valor padrão do TWR e do
TWTR em um tempo pode ajudar a estabilizar o módulo ao usar ajustes mais
agressivos nas outras opções, mas não espere nenhum ganho perceptível de
desempenho ao reduzir os valores. O TRTW (Read to Write Delay) é similar ao
TWTR, mas se aplica em situações onde o controlador executou uma série de
operações de leitura e precisa agora iniciar uma série de operações de escrita.

Finalmente, temos o TWCL (Write CAS Latency), que conclui nossa exaustiva
explicação. Ele é o primo pobre do CAS Latency (TCL), que é aplicado às
operações de escrita, em vez das de leitura. Embora menos importante que o
TCL, ele tem um efeito maior sobre o desempenho do que as demais opções
secundárias.

CPC (ou 1T/2T Memory Timing): O CPC (Command Per Clock) é um tempo de
espera adicional aplicado quando o controlador de memória alterna entre
endereços em diferentes chips do módulo. Ao ativar um chip, o controlador
precisa esperar um ou dois ciclos para que ele seja ativado, para só então
enviar os comandos de leitura.

Esta opção está presente apenas em algumas placas e pode ser ajustada com
o valor "1T" e "2T". Módulos single-sided, ou seja, os módulos de mais baixa
capacidade, onde os chips ocupam apenas um dos lados, podem geralmente
trabalhar com apenas 1 tempo, enquanto os módulos com chips dos dois lados
freqüentemente precisam de 2 tempos. Usar a opção 1T naturalmente resulta
em um melhor desempenho, mas em muitos casos usar a opção 2T faz com
que o módulo seja capaz de operar a freqüências mais altas, o que pode
compensar a perda.

DRAM ECC Enable: Quando presente, esta opção indica se o micro tem
módulos de memória com ECC. O ECC consiste em um bit adicional para cada

                                                                           763
byte de dados, que é usado para verificar e corrigir os dados armazenados. Os
chips de memória com ECC possuem 9 ou 18 chips ao invés de 8 ou 16 e são
usados quase que exclusivamente em servidores e estações de trabalho, onde
o pequeno ganho de confiabilidade compensa o gasto adicional. Naturalmente,
esta opção deve ser ativada apenas ao usar módulos com ECC.

Memory Hole Remapping, Memory Hoisting (ou DRAM Over 4G
Remapping): Como vimos no capítulo sobre memórias, ao usar 4 GB de
memória ou mais, um grande trecho de memória entre os 3 e 4 GB é perdido,
devido às faixas de endereços usadas pelos dispositivos. Ao usar um sistema
operacional de 32 bits, esta faixa de memória é perdida e não existe nada o
que você possa fazer. O melhor é se contentar em usar apenas 3 GB.

Ao combinar um sistema operacional de 64 bits com um processador equipado
com as extensões AMD64 ou EM64, você ganha a possibilidade de usar mais
do que 4 GB de memória, mas a faixa entre os 3 e 4 GB continua sendo
perdida, de forma a manter compatibilidade com os programas de 32 bits.

Estas opções, disponíveis na maioria das placas recentes, fazem com que a
área de endereços reservada para uso dos dispositivos seja movida para uma
área mais alta do Virtual Address Space, liberando a maior parte da memória
perdida. As duas seguem princípios diferentes, mas o resultado prático é o
mesmo. Você encontra uma ou outra, de acordo com a placa usada.

Uma observação é que esta opção só deve ser ativada ao usar um sistema
operacional de 64 bits e ao usar 4 GB ou mais de memória. Ela pode causar
problemas de compatibilidade diversos, sobretudo com jogos e aplicativos 3D,
por isso verifique a estabilidade do micro ao ativá-la.


Componentes integrados

Com exceção do processador e da memória, as placas tudo-onboard atuais
são praticamente PCs completos. Em alguns casos, até o processador vem
pré-instalado ou soldado à placa, de forma que você só precisa instalar a placa
dentro do gabinete, instalar o HD e espetar um pente de memória para ter um
PC completo.

De uma forma geral, não existe muita diferença em colocar um mesmo chipset
de rede em uma placa PCI, instalá-lo diretamente à placa-mãe ou integrá-lo
diretamente ao chipset. O circuito continua sendo o mesmo e, se não forem
feitas modificações no projeto, a qualidade e o desempenho também. A
vantagem é que a integração torna o conjunto bem mais barato, o que abriu as
portas para o surgimento de PCs de baixo custo, como os que temos hoje.

Os componentes integrados à placa-mãe podem ser desativados através da
seção "Onboard Device Configuration", "Features Setup" ou "Integrated
Peripherals". Algumas das opções que incluo neste tópico estão espalhadas
por outras seções, como a "PCI / Plug and Play Setup" ou "Advanced >
Chipset", mas optei por combiná-las, pois estão relacionadas ao tema.



                                                                           764
Você pode desabilitar os componentes que não pretende utilizar, ou que
pretende substituir, como no caso da placa de som ou rede, por exemplo. Isso
facilita a parte de instalação dos drivers e a configuração do sistema. Embora
os conflitos de IRQ sejam relativamente raros hoje em dia, devido às
tecnologias que vimos no final do capítulo sobre placas-mãe, desativar alguns
componentes da placa reduz a possibilidade de eles ocorrerem, o que é
sempre desejável.

De qualquer forma, é importante checar as opções, nem que seja apenas para
verificar se todos os componentes que vai usar estão ativados.




           Opções para ativar/desativar os dispositivos integrados

Primary Graphics Adapter: Um recurso muito utilizado nos PCs atuais é a
possibilidade de usar dois ou mais monitores, o que é suportado desde o
Windows 98. Você pode combinar duas ou mais placas de vídeo, cada uma
com uma ou duas saídas, para instalar 2, 3, 4 ou mesmo 9 monitores no
mesmo PC. Esta opção permite especificar qual das placas instaladas
assumirá a função de vídeo primário. Normalmente você pode escolher entre
"PCI" e "PCI Express" ou "AGP".

Em geral, a placa de vídeo onboard não pode ser usada em conjunto com uma
placa offboard AGP ou PCI-Express (ao instalar a placa offboard, a onboard é
automaticamente desativada), mas existem exceções. Muitas placas atuais são
capazes de repartir as linhas PCI Express entre o slot x16 e o vídeo onboard,
permitindo usar ambos simultaneamente. Existem ainda os casos da PC-Chip,
ECS e ASRock, que combinam slots PCI Express com um slot AGP ou AGP
Express. Neste caso você tem ainda mais opções:




                                                                          765
Configuração da placa de vídeo primária

Share Memory Size: Como era de se esperar, esta opção permite ajustar a
quantidade de memória RAM compartilhada com o vídeo onboard.
Naturalmente, usar um valor baixo prejudica o desempenho da placa em jogos
e aplicativos 3D (já que ela não terá memória suficiente para armazenar as
texturas) mas, por outro lado, não altera o desempenho da placa em aplicativos
2D.

Micros de baixo custo quase sempre combinam o vídeo onboard com pouca
memória RAM. Parte da memória é compartilhada com o vídeo, deixando ainda
menos para o sistema. Entre 2005 e 2006 foram vendidos muitos PCs com
apenas 128 MB de RAM, onde 32 ou até mesmo 64 MB eram compartilhados
com o vídeo onboard, deixando apenas 96 ou 64 MB para uso do sistema(!!!),
um verdadeiro crime.

Em casos de micros com 256 MB (ou menos), ou que serão usados apenas
para navegar e rodar aplicativos de escritório, é interessante ajustar a opção
com o valor mais baixo possível. Em muitas placas o mínimo permitido são 32
MB, mas outras permitem usar até 8 MB. Uma observação é que, em algumas
placas, usar menos de 32 MB faz com que o boot trave durante a ativação do
vídeo (pelo sistema operacional). Este problema está mais relacionado aos
drivers do que ao hardware propriamente dito.

Onboard LAN (Ethernet Device, Onboard Giga LAN, Onboard PCIEX GbE
LAN, etc): Permite desativar a placa de rede onboard. Em situações normais,
não existem muitos motivos para desativar a rede onboard, já que você pode
perfeitamente ter duas placas de rede instaladas, mesmo que pretenda usar
apenas uma. De qualquer forma, você pode precisar desativá-la em casos de
conflitos ou queima.

Onboard LAN Boot ROM: Esta opção permite desativar a ROM da placa de
rede onboard, que contém o cliente PXE, usado para dar boot via rede. Ao
desativar esta opção, o Setup deixa de oferecer a opção de boot via rede na
configuração da ordem de boot.

                                                                          766
Audio Device (Audio Controller, AC97 Audio, HD Audio ou HD Audio
Controller): Opção para desativar o som onboard, útil ao instalar uma placa
offboard. Embora seja perfeitamente possível ter duas placas de som
instaladas, isso torna a configuração um pouco mais trabalhosa, já que você
precisa indicar qual placa usar na configuração do sistema. Se você não vai
usar o som onboard, acaba sendo mais fácil desativá-lo de uma vez.

Uma curiosidade é que headsets, caixas de som e webphones USB incluem
um controlador de áudio e são vistos pelo sistema como placas de som
completas, ao contrário dos headsets baratos, que são simplesmente ligados
nas saídas da placa de som. Ao usar o Skype, ou outro cliente VoIP, você
especifica qual dispositivo usar nas configurações.

Game Port Address, Midi Port Address, Midi Port IRQ: Estas opções
permitem alterar os endereços de IRQ e I/O utilizados pela porta do joystick e
Midi da placa-mãe (que compartilham o mesmo conector). Estas opções
existem apenas para casos onde você precisa instalar duas portas de joystick
no mesmo micro (seja usando um adaptador avulso, ou uma segunda placa de
som). Atualmente o mais comum é que sejam utilizados joysticks USB, de
forma que estas opções, junto com o próprio conector de joystick da placa de
som, estão caindo em desuso.

Modem Device: Nas placas com modem onboard, esta opção permite
desativá-lo, o que pode ser feito quando quiser usar um modem externo, ou se
você acessa via banda larga e simplesmente não pretende utilizá-lo.

É importante notar que o modem onboard é sempre dividido em duas partes: o
circuito controlador integrado ao chipset e um riser contendo os circuitos
analógicos, que é instalado em um slot AMR ou outro conector. Mesmo que o
riser não esteja instalado o controlador do modem continua ativo, ocupando um
endereço de IRQ e, em alguns casos, causando conflitos diversos com a placa
de som, já que os dois geralmente compartilham o mesmo chip DSP.
Desativando esta opção, você corta o problema pela raiz.

Serial Port1 Address: Um número impressionantemente grande de placas
recentes ainda oferece uma porta serial. Em muitos casos, ela não faz parte do
painel ATX, como antigamente, mas fica disponível na forma de um conector
interno. Esta da foto não é uma placa antiga, mas sim uma Asus M2V, uma
placa comprada em plena segunda metade de 2007. À primeira vista o
conector parece ser o header de um par de portas USB, mas o "COM1"
denuncia sua função:




                                                                          767
Vaso ruim não quebra :)

Se você conseguir um cabo serial, talvez roubado de um PC antigo, pode usar
a porta para conectar seu velho Palm Pilot ou qualquer outro dispositivo que
tenha guardado. Esta opção do Setup permite ajustar os endereços de IRQ e
I/O usados por ela, ou desativá-la. Antigamente era muito comum precisar
alterar o endereço da porta serial para evitar conflitos com um modem ISA,
mas hoje em dia isso é raramente necessário. De qualquer forma, se você não
vai usar a porta, é sempre prudente desativá-la para liberar o endereço de IRQ.

Onboard IR Port: Muitas placas placas possuem um header para a instalação
de um transmissor infravermelho externo, incluído no lugar da segunda porta
serial. O transmissor não é um acessório caro, mas é incrivelmente incomum e
difícil de encontrar, o que faz com que a maioria das pessoas que precisam de
uma porta IR comprem um transmissor USB. É sempre interessante desativar
esta opção, liberando mais um endereço de IRQ.

Onboard Parallel Por Address, Parallel Port Mode, Parallel Port IRQ: Assim
como a porta do drive de disquetes, a boa e velha porta paralela persiste nas
placas novas, mantendo a compatibilidade com o grande contingente de
impressoras e scanners paralelos ainda em uso. Como a grande maioria
destes dispositivos antigos não possuem drivers para o Vista (em muitos casos
nem para o XP), é bem provável que a maioria acabe sendo descartada por
falta de drivers, antes do que por falta de suporte por parte das placas-mãe.
Curiosamente, o suporte a impressoras antigas é atualmente bem mais
completo no Linux do que no Vista, pois a maioria dos drivers são
desenvolvidos de forma independente dos fabricantes e por isso continuam
sendo atualizados mesmo depois que a impressora é descontinuada.

Estas três opções permitem ajustar os endereços e o modo de operação da
porta paralela. Embora muito incomum, é possível usar até três portas
paralelas no mesmo PC, usando os endereços de I/O 378, 278 e 3BC e
endereços de IRQ e DMA diferentes para cada uma. Mas, ao usar apenas
uma, não existe motivo para alterar os endereços padrão.

Existe ainda a questão do modo de operação, que pode ser configurado com
os valores "Normal" (o mais lento), "EPP", "ECP" e "EPP+ECP". O modo ECP
é o mais rápido e permite uma menor utilização do processador durante o uso

                                                                           768
da porta devido ao uso de um canal de DMA. Ao usar o ECP, você pode se
deparar com alguns casos de incompatibilidades com impressoras e scanners
antigos, que suportam apenas o padrão EPP. O modo "ECP+EPP" ativa uma
camada de compatibilidade com o padrão anterior, que resolve o problema na
grande maioria dos casos. Quando disponível, ele é a opção recomendável.

Onboard USB Function (USB Ports Enable): Esta opção permite desativar as
portas USB da placa-mãe, o que naturalmente não é recomendável hoje em
dia, já que o USB é o barramento mais usado para a conexão de periféricos
externos.

Esta opção surgiu junto com as primeiras placas soquete 7 baseadas no
chipset 430VX. O 430VX incluía um controlador USB integrado, mas na época
o USB era um padrão muito novo e era muito raro que as portas fossem
utilizadas. Desativá-las era, então, uma forma de liberar um endereço de IRQ.

Legacy USB Support (USB Function for DOS): Esta opção ativa uma camada
de compatibilidade, que permite o uso de mouses e teclados USB em
programas MS-DOS. Em algumas placas, é necessário manter esta opção
ativada para que o teclado USB possa ser usado para configurar o setup.
Mantê-la ativada também permite solucionar problemas de detecção do mouse
e do teclado USB em versões antigas do Windows e também no Linux.

Por outro lado, esta opção é famosa por causar problemas no Windows
98/SE/ME, onde o sistema freqüentemente travava durante o boot quando a
opção estava ativada, procurando um teclado USB que não existia. De uma
forma geral, é preferível deixar esta opção desativada e ativar apenas em
casos onde precise dela.

USB 2.0 Controller Mode: Esta opção, presente em algumas placas com
portas USB 2.0, pode ser configurada com os valores "HiSpeed" e "FullSpeed".
Alguém poderia achar que o valor "FullSpeed" é algum tipo de acelerador, mas
é justamente o contrário. O modo "HiSpeed" é o padrão de 480 megabits usado
pelo USB 2.0, enquanto o "FullSpeed" é o modo de 12 megabits, utilizado no
padrão original. Como você pode imaginar, configurar esta opção com o valor
"FullSpeed" simplesmente rebaixa a velocidade das portas USB para os 12
megabits do padrão 1.x. A única utilidade desta opção é servir como uma forma
radical de solucionar os raros problemas de compatibilidade com periféricos
USB antigos.

PS/2 Mouse Support (PS/2 Mouse Function Control): Esta opção permite
desativar a porta PS/2 da placa-mãe. Ela é mais uma opção herdada da época
das placas soquete 7, onde a porta PS/2 nem sempre era usada (já que os
mouses seriais eram os mais comuns e muitas placas sequer acompanhavam
o cabo necessário). A porta PS/2 consome um endereço de IRQ (o IRQ 12),
por isso alguns preferem desativá-la ao usar um mouse USB.

Onboard Floppy Controller, Boot UP Floppy Seek, Swap Floppy Drive:
Estas são três opções relacionadas à porta do drive de disquetes, ainda
presente mesmo nas placas de fabricação recente. A primeira permite
desativá-la completamente, liberando o endereço de IRQ usado por ela. A

                                                                          769
segunda tem o efeito oposto; faz com que o BIOS procure por um drive de
disquete durante o boot, o que retarda o boot em alguns segundos. Ela é uma
opção obsoleta para solucionar problemas com a detecção do drive. A última
permite trocar a posição dos drives (o A: vira B: e o B: vira A:) caso existam
dois drives instalados. É outra opção obsoleta.


Outras opções

Microcode Updation: Todos os processadores atuais possuem uma área de
memória volátil que armazena uma cópia do conjunto de instruções utilizado
pelo processador, chamado de microcode. Esta área de memória é acessível
pelo BIOS, o que permite a instalação de "patches", que corrijam bugs nas
instruções do processador. Este sistema foi desenvolvido para evitar casos
como o famoso bug do processador aritmético, que afetou as primeiras famílias
do Pentium 1 e obrigou a Intel a substituir um grande número de
processadores.

Quando um bug é descoberto, fabricantes como a Intel e AMD distribuem
patches que são incorporados pelos fabricantes de placas e repassados aos
usuários na forma de upgrades de BIOS. Depois de atualizado, o BIOS da
placa passa a carregar o microcode atualizado a cada boot, substituindo a
versão problemática incluída no processador. Como disse, a versão atualizada
é gravada em uma área de memória volátil no processador, por isso não existe
qualquer possibilidade de alteração ou dano no processador. Ao desligar o
micro, tudo volta a ser como era.

Estas atualizações são mais comuns do que se pensa. Em Junho de 2007, a
Intel lançou uma atualização "crítica" para as versões iniciais do Core 2 Duo
(http://www.theinquirer.net/default.aspx?article=40567),  que     corrige  um
problema relacionado ao TLB. Existem diversos outros casos similares, tanto
por parte da Intel quanto da AMD, por isso é importante manter esta opção
ativa.

AGP Aperture Size: Esta opção é usada apenas em placas-mãe com slot
AGP. Ela permite especificar o volume máximo de memória RAM que a placa
de vídeo poderá utilizar para o armazenamento de texturas. A placa recorre à
memória RAM principal sempre que a memória de vídeo se esgota, utilizando-a
como uma espécie de "memória swap", que permite armazenar os dados
necessários, às custas de uma redução no desempenho.

Placas de vídeo antigas, que possuíam apenas 16 ou 32 MB de memória,
utilizavam a memória principal com freqüência, mas logo os fabricantes
passaram a vender placas com 128 MB ou mais, de forma a evitar a perda de
desempenho causada por ela. Isso faz com que esta opção seja muito menos
importante do que pode parecer à primeira vista.

Uma curiosidade é que ajustar o valor do AGP Aperture com um valor abaixo
de 32 MB pode causar travamentos em conjunto com algumas placas, onde o
driver de vídeo é projetado para sempre trabalhar com um certo valor mínimo
de memória disponível através do barramento AGP. Isso, entretanto, não é

                                                                          770
uma regra e pode ser classificado mais como um bug dos drivers de vídeo do
que como uma característica do hardware.

AGP mode: Esta é outra opção encontrada apenas em placas com slot AGP.
Ela permite ajustar o modo de operação do AGP, de forma a resolver eventuais
problemas de compatibilidade com placas de vídeo antigas. Através dela, o slot
AGP pode ser configurado para operar em modo 4X, ou mesmo 2X.
Infelizmente ela só serve para reduzir o modo de operação e não aumentá-lo. :)

Allocate IRQ to PCI VGA: Esta é uma opção antiga, que ainda continua
disponível nas placas atuais para fins de compatibilidade. Qualquer placa de
vídeo PCI com aceleração 3D precisa de um endereço de IRQ, usado para a
comunicação com o processador. Esta opção ativa a alocação do endereço, o
que é necessário ao usar qualquer placa de vídeo PCI minimamente atual. Esta
opção é, entretanto, indiferente ao usar uma placa PCI Express, AGP ou o
vídeo onboard, pois, mesmo que a opção esteja ativa, o sistema percebe que
não existe uma placa de vídeo PCI instalada e não aloca o endereço.

VGA Palette Snooping: Esta é mais uma opção de compatibilidade que ainda
pode ser encontrada em algumas placas atuais. Esta opção é necessária para
o funcionamento de placas de captura ISA (muito antigas), como a Sig Reel
Magic e a C&T PC-TV, onde a placa de captura precisava de acesso à paleta
de cores usada pela placa de vídeo principal para gerar as imagens
corretamente. Mais tarde, este mesmo recurso foi utilizado por algumas placas
decodificadoras MPEG, como as vendidas em conjunto com os primeiros
drivers de DVD, de forma a reduzir a carga sobre o processador principal e,
assim, permitir que DVDs fossem assistidos mesmo em micros Pentium 1, sem
processamento suficiente.

A questão é que esta opção prejudica o desempenho do vídeo em algumas
situações e é utilizada apenas por um pequeno número de placas obsoletas,
que não são mais utilizadas hoje em dia, por isso é importante sempre mantê-
la desativada quando disponível.

Turbo Frequency: Esta é uma opção encontrada em algumas placas antigas,
que permite aumentar o clock da placa-mãe em 2,5% ou 3% (varia de acordo
com o modelo da placa), oferecendo uma espécie de overclock leve. Ela é uma
espécie de antecessora da opção AI Overclocking encontrada atualmente nas
placas Asus.

Cache Timing (Cache Read Cycle): Esta é mais uma opção das antigas,
encontrada apenas em placas soquete 7, onde os chips de cache L2 ainda
eram soldados à placa-mãe. Ela era usada para indicar a temporização do
cache, como 3-2-2-2 ou 2-1-1-1. A temporização variava de acordo com a
freqüência de FSB usada. Os módulos podiam suportar 2-1-1-1 a 66 MHz, mas
apenas 3-2-2-2 a 100 MHz, por exemplo.

Force Update ESCD: O ESCD é a área do CMOS que armazena a
configuração dos endereços de IRQ, I/O e DMA dos periféricos instalados.
Ativar esta opção força um "refresh" do ESCD, o que força uma nova atribuição
de endereços a todos os periféricos, tanto por parte do BIOS quanto do sistema

                                                                          771
operacional. Isso muitas vezes resolve problemas relacionados a conflitos e
periféricos não detectados corretamente. Após o ESCD ser apagado, esta
opção voltará automaticamente para o valor disabled.

Plug and Play OS (Boot With PnP OS): Sistemas operacionais antigos, como
o Windows NT4, OS/2 e Windows 3.1 não são compatíveis com o padrão plug-
and-play, ou possuem uma compatibilidade limitada. Ao usar algum deles, você
deve manter esta opção desativada, o que faz com que o BIOS atribua os
endereços de IRQ usados pelos periféricos, ao invés de deixar esta tarefa a
cargo do sistema operacional.

Ao usar qualquer sistema atual, é recomendável manter esta opção ativada,
caso contrário podem ocorrer problemas na detecção de alguns periféricos
(principalmente no caso do Windows 2000). Em alguns casos, desativar a
opção pode solucionar problemas de detecção da placa de rede, som ou outros
periféricos no Linux, mas isso é mais exceção do que regra.

Maximum Payload Size: Esta opção ajusta o tamanho máximo dos pacotes de
dados (TLP, ou "Transaction Layer Packet") utilizados pelo barramento PCI
Express. O valor "4096" (geralmente o default) garante o melhor desempenho,
mas usar valores mais baixos permite obter pequenos ganhos nos tempos de
latência, que podem ser úteis em algumas aplicações. Em geral, placas que se
beneficiam de pacotes menores já são pré-configuradas para utilizar valores
fixos, subscrevendo a configuração do BIOS. Isso faz com que, na prática,
essa opção acabe tendo pouca influência.

PCI Latency Timer: O barramento PCI é um barramento compartilhado, onde
apenas um dispositivo pode transmitir dados por vez. Esta opção determina o
tempo máximo (em ciclos) que um dispositivo PCI pode usar o barramento
antes de passar a vez para o seguinte. Em placas antigas, onde o PCI é usado
como barramento geral de comunicação e é conseqüentemente muito
saturado, ajustar esta opção com valores um pouco mais altos, como 64 ou
mesmo 128, resultava em um pequeno ganho de desempenho, mas em PCs
atuais, onde o PCI é um barramento secundário, esta opção tem um impacto
quase nulo. Na dúvida, use o valor "32".

IRQ-X Assigned To: Esta é, na verdade, uma longa lista de opções, que vai do
IRQ 3 até o IRQ 15. Para cada um, você pode usar o valor "PCI Device"
(No/ICU, em algumas placas) ou "Reserved" (Legacy/ISA em placas antigas):




                                                                         772
Como os valores sugerem, esta opção permite reservar endereços de IRQ para
o uso de placas Legacy ISA, ou algumas placas PCI antigas, que utilizam um
endereço de IRQ fixo. Por não serem compatíveis com o padrão plug-and-play,
estas placas não são vistas pelo BIOS, que sem a indicação manual dos
endereços usados por elas, pode atribuir os endereços a outros dispositivos,
causando conflitos.

Esta opção era importante em PCs antigos, onde o uso de modems e placas
de rede ISA era comum, mas atualmente ela é apenas mais uma opção de
legado. A principal observação é que os endereços reservados aqui ficam
indisponíveis para uso do sistema. Se você sair reservando endereços a esmo,
pode chegar a uma situação onde periféricos deixam de funcionar por falta de
endereços disponíveis.

CPU Internal cache, CPU External cache: Algumas placas oferecem a opção
de desativar os caches L1 e L2 do processador. Esta opção surgiu na época
dos 486, quando nem todas as placas-mãe traziam cache L2. Elas podem ser
usadas também em casos de defeitos nos caches, para permitir que o micro
pudesse ser usado, mesmo que com um baixo desempenho (em
processadores com cache externo, como o Pentium II, os chips de cache
podem ser danificados por estática durante o manuseio, assim como no caso
dos chips de cache externo usados em placas antigas). Naturalmente,
desativar os caches reduz o desempenho de forma brutal; é o tipo de coisa que
você só faz se realmente não tiver outra opção.

Power On By PS/2 Keyboard: Esta opção está relacionada com o recurso de
ligar o PC pressionando o botão on/off do teclado, que faz parte do conjunto de
três teclas ao lado do Enter. Para que ela funcione, é necessário ativar esta
opção e também alterar a opção do jumper "Keyboard Power" da placa-mãe
(quase sempre posicionado ao lado do conector do teclado), deixando-o na
posição 2-3. Geralmente está presente também a opção "Power On By PS/2
Mouse", que permite ligar o PC pressionando um dos botões do mouse.



                                                                           773
Algumas placas incluem a opção "Power On Function" que tem a mesma
função, mas permite que você escolha uma combinação de teclas (como
Ctrl+F1), ao invés de escolher apenas entre "Enabled" e "Disabled".

Boot Sector Virus Protection (Virus Warning, Anti-Virus): Esta opção é
geralmente encontrada apenas em placas antigas. Ela permite ativar uma
proteção rudimentar contra a instalação de vírus no setor de boot do HD.
Muitos vírus se instalam no setor de boot de forma a serem carregados
automaticamente durante o boot, antes mesmo do sistema operacional.

O BIOS não impede a gravação, mas exibe um aviso chato a cada boot quando
uma possível infecção é detectada. O grande problema é que o aviso é exibido
não apenas quando vírus são encontrados na MBR, mas também quando
qualquer sistema não conhecido pelo BIOS é instalado. Isso causa o
aparecimento de falsos positivos ao instalar diversas distribuições Linux e em
alguns casos até mesmo versões recentes do próprio Windows. No final ela
acaba fazendo mais mal do que bem e por isso é recomendável mantê-la
desativada.

Restore on AC Power Loss: Ativar esta opção faz com que o PC seja religado
automaticamente assim que a energia retornar, após uma queda de luz. Em um
servidor, ou qualquer PC que fique ligado continuamente, é importante mantê-
la ativada, para que a máquina fique o menor tempo possível fora do ar por
falta de energia e volte automaticamente, sem que alguém precise apertar
manualmente o botão. Mas, em um desktop, o comportamento esperado é
geralmente que o PC permaneça desligado, por isso muita gente prefere
manter a opção desativada.

Uma observação importante é que em locais onde a rede elétrica é instável, é
comum que a energia vá e volte repetidamente. Nesses casos é importante
manter a opção desativada, para prevenir dados ao equipamento.

ACPI Function (ACPI Support): O ACPI controla recursos relacionados com o
gerenciamento de energia e suporte a funções especiais, incluindo a maior
parte das funções de economia de energia, sensores de temperatura, ajuste de
rotação dos coolers, botões especiais (para ativar a antena da placa wireless,
por exemplo) e assim por diante. Ele é essencial para o bom funcionamento do
PC, sobretudo em notebooks, por isso nunca deve ser desativado, salvo em
casos muito específicos.

Existem muitos casos de incompatibilidades com o ACPI no Linux, sobretudo
em placas com chipsets SiS e VIA. Eles causam efeitos diversos, que vão
desde problemas na detecção de alguns componentes, até um travamento
completo durante o boot. A primeira medida nesses casos é testar uma
distribuição com um Kernel atual, já que a compatibilidade é melhorada
continuamente.

Se o problema persistir, você pode experimentar desativar o ACPI. Ao invés de
desativar diretamente na opção do Setup, você pode desativá-lo adicionando o
parâmetro "acpi=off" na linha de opções exibida na tela de boot (ao dar boot
através do CD). Ela é uma opção que é passada diretamente ao Kernel,

                                                                          774
fazendo com que ele ignore as funções do ACPI, mesmo que a opção esteja
ativada no Setup. Com isso o ACPI é desativado apenas no Linux, sem afetar o
Windows ou outros sistemas operacionais instalados.

ACPI APIC Support: O APIC é um subsistema do ACPI que controla a
atribuição de endereços de IRQ para os periféricos. Ele faz com que os
endereços sejam atribuídos de forma dinâmica (evitando o aparecimento de
conflitos) e permite que os endereços de IRQ sejam compartilhados quando
necessários. Ele também é um recurso importante, que você nunca deve
desativar em situações normais.

Assim como no caso do ACPI, existem casos de problemas de compatibilidade
no Linux. Você pode desativar o suporte ao APIC apenas no Linux, sem
precisar desativá-lo no Setup, usando a opção "noapic" na tela de boot.

Start Easy Flash: Este é um utilitário para atualização do BIOS encontrado no
Setup de placas da Asus. Ele permite que você atualize o BIOS diretamente
através do Setup, simplesmente indicando o arquivo de atualização. O arquivo
deve estar salvo no diretório-raiz em uma partição primária do primeiro HD,
formatada em FAT16 ou FAT32, ou em um disquete. Versões futuras do
utilitário tendem a suportar outras mídias.

Internal Pointing Device: Esta opção é encontrada em notebooks. Ela permite
desativar o touchpad ou trackpoint integrado (algumas pessoas preferem
desativá-lo e usar um mouse USB). Note que isso também pode ser feito
através do sistema operacional.

Boot Display Device: Outra opção encontrada em notebooks. Ela pode ser
ajustada com o valor "LCD", "CRT" ou "CRT+LCD" (Both). O valor LCD faz com
que seja usada a tela integrada, o que é o default. As outras duas opções
permitem ativar a saída de vídeo ao utilizar um projetor ou monitor externo.

Start Battery Calibration: A maioria dos notebooks inclui utilitários para
calibrar a bateria, disponíveis através do Setup. Ao acessar a opção, o utilitário
primeiro carrega a bateria completamente e depois pede que você desconecte
a fonte e deixe o notebook ligado até a carga acabar. Com isso, ele atualiza os
valores mínimos e máximos de carga, que tendem a ficar desatualizados
depois de algumas recargas parciais. Isso faz com que o indicador de carga da
bateria (no sistema operacional) volte a mostrar os valores corretos e toda a
carga da bateria volte a ser usada.

HDD Smart Monitoring: Esta opção faz com que o BIOS monitore as
informações geradas pelo SMART e exiba um aviso "Smart Failure Predicted
on" durante o boot caso alguma das leituras caia abaixo do valor mínimo.
Como de praxe, é importante lembrar que erros relacionados ao SMART não
significam que o HD vá parar de funcionar nos próximos dias, mas que a partir
daquele ponto existe uma grande possibilidade de falha.

Delay Prior to Thermal: Esta é uma opção interessante, que se aplica apenas
aos processadores derivados do Pentium 4. Estes processadores utilizam um
sistema de proteção térmica (TCC) que reduz a freqüência de operação do
processador quando ele atinge uma temperatura limite, evitando que o
                                                                              775
processador superaqueça. Ele é importante nestes processadores, pois sem
ele o processador pode aquecer até o nível crítico, onde o diodo térmico entra
em ação, desligando o sistema.

Esta opção permite especificar um delay na ativação do TCC, fazendo com que
ele entre em ação apenas após o término do boot, evitando que o micro fique
lento, devido à redução da freqüência durante o carregamento do sistema. Se o
seu micro demora 2 minutos para concluir o boot, por exemplo, você pode
ajustar a opção para 4 minutos.

Q-Fan Controller: Esta opção é encontrada na seção "Power" de muitas
placas. Ela permite ativar o ajuste da velocidade de rotação do cooler do
processador, de acordo com a temperatura. Este recurso só funciona ao usar
um cooler PWM, que possui o conector de 4 pinos.

Com o Q-Fan ativo, a velocidade de rotação do cooler do processador pode
cair para 800 RPM ou menos nos momentos de baixa atividade. Isso acaba
fazendo com que programas monitores de hardware (muitas vezes o próprio
BIOS) disparem o alarme de baixa rotação do cooler. Nesse caso, desative o
alarme ou reconfigure o programa, indicando a velocidade de rotação mais
baixa. No caso do BIOS, isso é feito através da opção "CPU Fan Speed
warning".

Normalmente, a opção "Q-Fan Controller" é acompanhada pelas opções "Start
Up Temperature" e "Full Speed Temperature", que permitem (respectivamente)
ajustar a temperatura mínima, onde o cooler é ativado (em velocidade
reduzida) e a temperatura máxima, a partir da qual o cooler gira na rotação
máxima.


Drivers e utilitários

Como este é um livro sobre "hardware", optei por deixar de fora explicações
sobre a instalação e configuração das diferentes versões do Windows, já que
este é um tema já bem conhecido da maioria. Mas, um tema que vale a pena
abordar, mesmo que de passagem, é a questão dos drivers, que estão tão
intimamente ligados ao hardware que podem, de certa forma, ser considerados
parte dele. Este tópico é uma explicação geral sobre os drivers no Windows,
enquanto o seguinte fala sobre o suporte a hardware no Linux, traçando um
paralelo entre as diferenças dos dois sistemas.

O driver funciona como uma ponte entre o sistema operacional e o hardware,
permitindo que o sistema tenha acesso a todos os recursos oferecidos por ele.
A qualidade do driver influencia diretamente a performance, estabilidade e
também o volume de recursos disponíveis. Duas placas com recursos similares
podem oferecer um desempenho radicalmente diferente devido a diferenças
nos drivers usados. Drivers problemáticos também estão entre os principais
causadores de travamentos, telas azuis e erros em geral, que, em alguns
casos, resultam em sintomas muito similares aos causados por problemas no
hardware.



                                                                          776
Em muitos casos, os drivers incluem também o firmware da placa, que é
carregado, a cada boot, em uma área volátil de memória no dispositivo. Isto
abre ainda mais espaço para problemas relacionados aos drivers, além de
dificultar o suporte no Linux e outros sistema operacionais (já que, além do
driver, é necessário ter em mãos o arquivo do firmware), mas oferece duas
vantagens do ponto de vista do fabricante.

A primeira é a questão da economia, já que deixa de ser necessário incluir um
chip de memória ROM ou Flash na placa. A segunda é que correções podem
ser feitas com a atualização dos drivers (e, conseqüentemente, do firmware), o
que permite que o fabricante apresse o desenvolvimento do projeto, já que a
maior parte dos erros e bugs pode ser corrigida posteriormente, com uma
atualização dos drivers.

No mundo Windows, os drivers são desenvolvidos pelos próprios fabricantes. O
sistema inclui uma biblioteca de drivers, atualizada próximo à data de
lançamento do sistema, mas, com o passar do tempo, ela fica rapidamente
desatualizada. Isso faz com que, ao ser instalado, o sistema detecte o
hardware da máquina apenas parcialmente e/ou utilize drivers desatualizados
para os dispositivos.

A solução é instalar os drivers fornecidos pelo fabricante, como qualquer um
que já reinstalou o Windows mais do que um punhado de vezes já está
acostumado a fazer :). Os drivers podem ser fornecidos na forma de um
conjunto de arquivos, onde você acessa o utilitário para a instalação de novo
hardware do Windows e indica o arquivo ".inf" dentro da pasta, ou na forma de
um executável, que se encarrega de automatizar o processo de instalação.

Se você tem em mãos os CDs de instalação da placa-mãe e outros periféricos,
o processo é simples, caso contrário você precisa perder algum tempo
procurando drivers na web. Outro passo recomendável é verificar a
disponibilidade de versões atualizadas dos drivers, sobretudo para dispositivos
mais complexos, como a placa 3D e a placa wireless. Drivers atualizados
trazem sempre correções importantes e muitas vezes também ganhos de
desempenho.


Placa-mãe

Como atualmente a maior parte dos dispositivos do micro são componentes
onboard na placa-mãe, os fabricantes de placas acabaram tornando-se a
principal fonte de drivers. Na maioria dos casos, você acaba precisando
apenas dos drivers da placa-mãe e dos drivers da placa 3D (caso esteja
usando uma placa offboard).

Aqui estão os links dos principais fabricantes. Alguns dos links são longos, pois
procurei incluir os links diretos para baixar os drivers. Se você trabalha com
manutenção, é interessante deixar estes links no bookmark do navegador, pois
você acaba precisando deles com freqüência:

      Asus: http://support.asus.com/download/download.aspx?SLanguage=pt-
      br
                                                                             777
ECS:
      http://www.ecs.com.tw/ECSWebSite/Downloads/Category_Download.as
      px

      PC-Chips:
      http://www.pcchips.com.tw/PCCWebSite/Downloads/Category_Downloa
      d.aspx

      ASRock: http://www.asrock.com/support/download.asp

      Intel: http://downloadcenter.intel.com/

      Abit: http://www.uabit.com/

      MSI: http://global.msi.com.tw/index.php?func=downloadindex

      Gigabyte:
      http://www.gigabyte.com.tw/Support/Motherboard/MainPage.aspx

      Foxconn: http://www.foxconnchannel.com/support/downloads.aspx

      DFI: http://us.dfi.com.tw/

      EpoX: http://www.epox.com.tw/eng/support.php

      AOpen: http://global.aopen.com/products_download.aspx

      Phitronics: http://www.phitronics.com.br

Cipset


Em casos em que não for possível obter os drivers diretamente do fabricante
da placa-mãe (o site da PC-Chips, por exemplo, é famoso pela lentidão, erros e
links quebrados), uma segunda opção é utilizar os drivers oferecidos pelo
fabricante do chipset:

      Intel: http://downloadcenter.intel.com/ (na seção Download
      Center/Chipsets)

      nVidia: http://www.nvidia.com/content/drivers/ (na seção Plataform
      /nForce Drivers)

      AMD/ATI: http://ati.amd.com/support/driver-pt.html (na seção
      Integrated/Motherboard)

      VIA: http://www.viaarena.com/default.aspx?PageID=2

      SIS: http://www.sis.com/download/

      ULi: http://www.nvidia.com/page/uli_drivers.html



                                                                           778
Como a maior parte dos componentes onboard são integrados diretamente no
chipset, os drivers "genéricos" do chipset permitem ativar a maior parte dos
recursos da placa. Em muitos casos você vai ter problemas com o som (veja
mais detalhes a seguir), com a placa de rede ou com controladores SATA ou
IDE, caso o fabricante da placa tenha optado por utilizar chips externos.
Nesses casos, o próximo passo é procurar por drivers nos sites dos fabricantes
dos chips, como a Realtek, Marvel ou JMicron.

Placa 3D

Atualmente não existe muita dificuldade em encontrar drivers para a placa 3D,
pois ao utilizar vídeo onboard você pode obter os drivers diretamente no site do
fabricante da placa-mãe (uma segunda opção é o fabricante do chipset) e, ao
usar uma placa offboard, você tem basicamente duas opções: nVidia ou
AMD/ATI.

Em ambos os casos, os pacotes com os drivers de vídeo incluem um conjunto
de utilitários agrupados na forma de um painel de controle. No caso da nVidia
temos o nVidia Control Panel e o nTune e no caso da AMD/ATI temos o
Catalyst Control Center, que justificam o brutal tamanho dos downloads.




                            Catalyst Control Center



                                                                            779
Os links para baixar os drivers de vídeo são os mesmos dos chipsets
(http://www.nvidia.com/content/drivers/    e    http://ati.amd.com/support/driver-
pt.html), basta indicar o chipset da placa 3D. Estão também disponíveis drivers
para Linux, veja mais detalhes a seguir.

Para um fabricante como a nVidia e a ATI, incluir recursos no painel é sempre
um dilema. Por um lado, precisam incluir um bom volume de recursos, para
não ficar atrás da concorrência, mas por outro não podem incluir recursos
muito exóticos ou avançados, já que precisam oferecer suporte aos aplicativos
e um conjunto maior de recursos significam mais chamadas de suporte.

A ATI segue a cartilha mais à risca, oferecendo um conjunto mais básico de
opções no Catalyst, organizadas de uma forma intuitiva, enquanto a nVidia vai
um pouco além, oferecendo um conjunto mais completo de opções no NVIDIA
Control Panel, mas, em compensação, organizadas de forma mais caótica. De
qualquer forma, ambos ficam devendo em alguns quesitos, sobretudo com
relação a opções avançadas de overclock. Chegamos, então, aos utilitários
independentes, que preenchem a lacuna:

ATI Tray Tools: Apesar de ter pouco mais de 1 MB, o ATI Tray Tools oferece
um número assombroso de opções, incluindo todo tipo de tweak. Como de
praxe, o maior número de opções significa também uma curva mais acentuada
de aprendizado, de forma que ele não é muito indicado para iniciantes. Ele não
seria o tipo de utilitário que você deixaria pré-instalado no micro de clientes, por
exemplo, mas sim uma ferramenta que você utilizaria para extrair o máximo da
placa no seu micro de casa.




Um dos destaques é o grande número de opções de overclock, incluindo o
ajuste da freqüência da GPU e da memória, ajuste das tensões e opções


                                                                                780
diversas     de     monitoramento.          Ele   está     disponível     no:
http://www.guru3d.com/article/atitraytools/189.

RivaTuner: O RivaTuner é o equivalente ao ATI Tray Tools para placas nVidia.
Embora a necessidade de um utilitário externo seja menor nas placas nVidia, já
que o nVidia Control Painel é mais completo, ele oferece um bom conjunto de
opções, com destaque para as ferramentas de overclock. A principal
observação é que ele não oferece opções de ajuste de tensão, o que limita um
pouco as possibilidades de overclock, mas evita configurações que possam
causar danos permanentes à placa. Nas versões recentes, ele oferece também
suporte às placas ATI, embora o principal foco do projeto sejam mesmo as
placas        nVidia.        A        página         oficial      é         a:
http://www.guru3d.com/index.php?page=rivatuner

ATITool: Ao contrário do que o nome sugere, o ATITool oferece suporte tanto
às placas da ATI quanto da nVidia. Ele começou como um utilitário ATI-only,
mas atualmente oferece suporte às duas famílias de placas de forma
similarmente competente. O ATITool não é muito forte em opções gerais, mas
ele oferece um conjunto bastante completo de opções de overclock, incluindo a
configuração de "profiles", que podem ser acionados através de combinações
de teclas. Isso permite que você defina, por exemplo, um perfil moderado para
uso geral e um perfil mais agressivo de overclock para usar esporadicamente.




Um destaque é a presença de um teste de imagem, onde um modelo 3D,
baseado no uso intensivo de shaders e de texturas, é reproduzido
continuamente, permitindo que você detecte rapidamente problemas de
corrupção na geração das imagens causados pelo overclock. Apesar de não
parecer, o teste usa os recursos da placa de forma bastante agressiva. O
ATITool pode ser baixado no: http://www.techpowerup.com/atitool/.

nHancer: O principal foco do nHancer é o gerenciamento de profiles,
oferecendo uma opção mais prática de ajustes que a oferecida pelo nVidia
                                                                          781
Control Panel, principalmente para quem usa duas placas em SLI. Ele pode ser
baixado no: http://www.nhancer.com/.

Overclock: Como pode ver, a maior parte dos utilitários relacionados ao tweak
de placas de vídeo tem justamente ênfase nas opções de overclock. O
overclock em placas de vídeo é uma prática quase tão comum quanto o
overclock em processadores. As regras são basicamente as mesmas, ou seja,
placas mais baratas, onde a GPU trabalha a freqüências mais baixas suportam
geralmente overclocks maiores e, quanto melhor a ventilação, maior é o
overclock que é possível obter.

No caso das placas de vídeo, existe também a possibilidade de fazer overclock
da memória, o que é especialmente efetivo no caso das placas mais baratas,
que utilizam barramentos com a memória de apenas 128 ou mesmo 64 bits
e/ou utilizam chips de memória mais lentos.

A competição acirrada entre os fabricantes faz com que as placas de vídeo
trabalhem muito mais próximo das freqüências limite da GPU e da memória. É
muito raro encontrar uma placa de vídeo que suporte um overclock de 50% no
clock da GPU, por exemplo. Na maioria das placas de vídeo, um overclock de
10% para a GPU e 5 ou 6% para a memória, sem problemas de estabilidade, já
é considerado satisfatório, já que, no outro extremo, existem casos de placas
que apresentam instabilidade com overclocks de menos de 3%.

Como de praxe, overclocks mais agressivos podem reduzir bastante a vida útil
da placa de vídeo, já que o maior consumo e a maior temperatura de operação
aumentam o stress sobre os componentes, sobretudo ao aumentar também as
tensões de operação. É muito raro que a GPU ou os módulos de memória
cheguem a ser danificados, o grande problema são os capacitores e demais
circuitos de alimentação da placa, que podem falhar prematuramente,
inutilizando o equipamento. É possível substituir capacitores e outros
componentes em placas de vídeo (assim como em placas-mãe), mas o
processo exige bastante habilidade.

Essa combinação de fatores torna o overclock em placas de vídeo uma tarefa
um tanto quanto inglória, já que o risco é maior e a recompensa menor. A
principal vantagem é que você pode fazer e desfazer o overclock de forma
muito prática usando o ATITool e os demais programas que citei. Ativando o
overclock apenas ao rodar os jogos mais pesados, você minimiza os riscos.

Som, modem e outros

Um detalhe importante com relação às placas de som onboard é que elas são,
na verdade, formadas por dois componentes distintos. O primeiro é o chipset
de áudio propriamente dito, que é quase sempre incorporado diretamente ao
chipset. Embora ele possa ser desativado e substituído por um chipset externo,
esta não é uma solução popular entre os fabricantes de placas, já que aumenta
os custos de produção. O segundo componente é o codec, o chip responsável
por transformar o sinal digital enviado pelo chipset de áudio no sinal analógico,
que é enviado às caixas de som.


                                                                             782
Os dois componentes são independentes, de forma que o fabricante da placa-
mãe pode combinar um chipset da VIA com um codec da Realtek, por exemplo,
de forma a cortar custos. O problema é que o uso de um codec diferente exige
adaptações nos drivers, o que causa problemas de compatibilidade entre os
drivers "oficiais", oferecidos pelo fabricante do chipset, e as placas que utilizam
codecs de outros fabricantes.

O codec é um chip relativamente pequeno, quase sempre instalado na beirada
da placa, próximo aos conectores de áudio do painel ATX. Na foto a seguir
temos um codec da Realtek, usado em uma Asus M2V, baseada no chipset
VIA K8T890:




    Codec de áudio da Realtek, usado em uma placa-mãe com chipset VIA

Por causa disso, é sempre preferível usar os drivers de áudio oferecidos pelo
fabricante da placa-mãe, deixando para usar os drivers genéricos do chipset
apenas em último caso. Em casos onde o chipset de áudio incluído no chipset
é combinado com um codec externo de outro fabricante, normalmente você
encontrará os drivers no site do fabricante do codec e não no site do fabricante
do chipset.

Atualmente, a Realtek é a maior fabricante de codecs "alternativos", assim
como de chipsets para placas de rede de baixo custo, por isso você acaba
usando bastante os drivers disponíveis no realtek.com.tw. Entre os fabricantes
de placas de som offboard, praticamente os únicos que sobreviveram foram a
Creative e a C-Media, que atuam respectivamente, no mercado de placas high-
end e de extremo baixo custo. Todo o resto do espaço é ocupado pelas placas
onboard. Os links são:

      Realtek: http://www.realtek.com.tw/downloads/

      Creative: http://us.creative.com/support/downloads/

      C-Media: http://www.cmedia.com.tw/?q=en/driver



                                                                               783
Atualmente, as conexões via ADSL e cabo estão cada vez mais baratas e
populares. Para quem mora em locais afastados, existe também a opção de
acessar através de um plano de dados, usando a rede celular, através de
serviços como o Tim Web e o Vivo Zap. Com o barateamento das conexões de
banda larga, o acesso via modem deixou de ser vantajoso, mas, mesmo assim,
eles continuam sendo usados por um volume expressivo de usuários, que
acessam esporadicamente ou moram em locais sem outras opções de acesso.

No caso dos modems onboard, temos quase sempre a combinação de um
controlador incluído no próprio chipset (quase todos os chipsets VIA e SIS
incluem controladores de modem até hoje, muito embora eles nem sempre
sejam usados pelos fabricantes de placas) e de uma placa riser AMR ou CNR,
que contém os circuitos analógicos. Nesses casos você pode utilizar tanto os
drivers da placa-mãe quanto os drivers do chipset. Os modems PCI podem ser
fabricados por uma infinidade de pequenos fabricantes, mas o que importa
mesmo é o chipset usado:

      Intel: http://www.intel.com/design/modems/support/drivers.htm

      Conexant e Smartlink: http://www.conexant.com/support/

      Motorola: http://www.motorola.com/softmodem/driver.htm

      Lucent/Agere: http://www.lsi.com/cm/DownloadSearch.do
      (Networking > Modem Chipsets)

Para outros dispositivos, principalmente no caso de periféricos antigos, onde o
fabricante já não existe mais, a melhor opção é usar um programa como o
Everest ou o Sandra para identificar o chipset usado e a partir daí pesquisar no
Google. Outra opção são os sites de drivers, que se propõem a oferecer uma
lista categorizada, com links para drivers dos mais diversos fabricantes. Um
dos problemas é que muitos dos sites de drivers passaram a ser serviços
pagos e alguns incluem spywares ou adwares nos arquivos, por isso é
importante ter cuidado ao baixá-los. Alguns links que poderia citar (embora não
coloque a mão no fogo por nenhum deles) são:

      http://www.driversplanet.com/
      http://www.driverzone.com/
      http://driverscollection.com/
      http://drivers.softpedia.com/
      http://www.boadica.com.br/iniciodrivers.asp (nacional)
      http://www.driverguide.com/ (pago)
      http://www.windrivers.com/ (pago)

Utilitários e benchmark

Para localizar os drivers necessários, o primeiro passo é identificar os
componentes da máquina. Uma das dicas mais manjadas é localizar
dispositivos detectados, porém não ativados no gerenciador de dispositivos do
Windows. Eles aparecem com o ícone de interrogação e pela identificação
você normalmente obtém informações suficientes para localizar o driver.
Entretanto, existem utilitários que oferecem informações mais completas, como

                                                                            784
o Everest e o Sandra. Outro campo importante são os programas de
benchmark, que você pode utilizar para identificar gargalos de desempenho e
também medir o ganho obtido depois de um upgrade. Vamos a alguns links:

Everest: O Everest é uma das suítes mais completas, incluindo módulos para a
identificação do hardware da máquina (indicando inclusive links para baixar os
drivers), geração de relatórios, módulos de diagnóstico e um conjunto bastante
completo de benchmarks. Ele é um aplicativo comercial, desenvolvido por uma
equipe que inclui os desenvolvedores do antigo AIDA32, que até ser
descontinuado foi um dos programas de diagnóstico e geração de relatórios
mais usado.

O Everest existe em duas versões. A versão corporate é destinada ao uso
empresarial, com recursos interessantes para quem precisa monitorar uma
rede com vários micros, identificando problemas, instalando atualizações de
drivers e assim por diante. A versão ultimate, por sua vez, é a versão destinada
a uso em desktops, que você usa na maior parte do tempo.

Ambas as versões são pagas, mas você pode baixar o trial de 30 dias, que
apesar de não incluir todas as funções, é suficiente para testar, medir o
desempenho, identificar o hardware e atualizar os drivers de um novo micro.
Ele também não é um software caro; a versão Ultimate custa US$ 29. Baixe no:
http://www.lavalys.com/products.php.




                  Um dos módulos de benchmark do Everest



                                                                            785
Sandra: O Sandra é o principal concorrente do Everest. Por ser muito mais
antigo, ele é bastante conhecido e possui muitos usuários fiéis. O Sandra
também oferece um conjunto bastante completo de ferramentas de
identificação e testes de hardware, além de incluir um conjunto de benchmarks.
A principal vantagem é que ele possui uma versão Lite, que pode ser usada
sem limitações (as versões pagas custam a parte de US$ 39). Ele está
disponível no: http://www.sisoftware.net/.




     O teste de desempenho em operações de ponto flutuante do Sandra

CPU-Z: Exibe informações detalhadas sobre o processador (incluindo o
stepping e a tensão), placa-mãe (incluindo o fabricante, o chipset e a versão do
BIOS) e também sobre os módulos de memória (incluindo as temporizações
suportadas e o fabricante dos chips). Ele é um freeware que pode ser baixado
no: http://www.cpuid.com/cpuz.php.

PC Wizard: Complementa o CPU-Z, fornecendo informações completas sobre
os demais componentes do micro, incluindo diversos dispositivos da placa-mãe
(detalhes sobre o chipset, sensores, suporte ACPI, etc.), detalhes sobre os
dispositivos instalados em cada barramento e muitas outras informações. Ele
inclui também um pequeno conjunto de benchmarks.

Ele também é um freeware, desenvolvido pela mesma equipe do CPU-Z. Você
pode baixá-lo no: http://www.cpuid.com/pcwizard.php.

HD Tach: O HD Tach é um dos programas mais usados para benchmark de
HDs e ao mesmo tempo um dos mais acessíveis. Você pode baixá-lo no:
http://www.simplisoftware.com/.

                                                                            786
Ele testa o desempenho do HD utilizando funções de baixo nível, bipassando
diversas das camadas de software utilizadas pelo Windows. Isso garante
leituras bastante precisas do desempenho do HD, evitando contaminações
causadas por problemas de desempenho causadas pelos drivers, por exemplo.
A versão gratuita realiza todos os testes de leitura, incluindo leitura não-
sequencial e a taxa de utilização do processador. A única limitação é que ela
não realiza os testes de gravação.

PCMark e 3DMark: Estes são dois dos mais tradicionais benchmarks. O
PCMark engloba uma série de testes que simulam tarefas tipicamente
executadas dentro de programas de escritório, medindo o desempenho global
do micro em aplicativos 2D. Os resultados são mais influenciados pelo
desempenho geral do processador, desempenho dos caches e pelo
desempenho da memória.

O 3DMark, como o nome sugere, é desenvolvido de forma a medir o
desempenho do micro em aplicativos 3D, sobretudo em jogos que utilizam o
DirectX. O resultado leva em conta principalmente o desempenho da placa 3D,
embora o desempenho do processador também seja importante até certo
ponto.

Ambos possuem uma versão "Basic", que é gratuita porém tem a
funcionalidade limitada, e a versão completa, que custa US$ 19. Eles podem
ser                                baixados                             no:
http://www.futuremark.com/products/

Com relação aos notebooks, alguns utilitários úteis são:

Dead Pixel Buddy: Este é um pequeno utilitário que ajuda a localizar dead
pixels na tela. Sempre que possível, rode o teste antes de comprar o note, já
que na maioria dos casos a garantia não prevê troca em caso de apenas um ou
dois     dead     pixels    na     tela.   Ele      está    disponível   no:
http://www.laptopshowcase.co.uk/downloads.php?id=1.

Notebook Hardware Control: Permite ajustar o clock e as tensões utilizadas
pelo processador e outras opções relacionadas ao gerenciamento de energia,
com o objetivo de prolongar a autonomia das baterias. Os ajustes podem ser
desfeitos rapidamente, de forma que você pode deixar para usá-lo apenas em
situações onde a autonomia for mais importante que o desempenho. A versão
básica       é     gratuita      e      pode      ser      baixada      no:
http://www.pbus-167.com/nhc/nhc.htm.

Outro programa similar (embora mais limitado) é o RMClock, disponível no:
http://cpu.rightmark.org/products/rmclock.shtml.

Battery Eater Pro: Este é um teste de autonomia da bateria, onde o software
simula uma situação de uso intenso, com todas as opções de gerenciamento
de energia desativadas. Ele pode ser baixado no: http://batteryeater.com/.




                                                                          787
Suporte a hardware no Linux

A principal diferença entre Windows e Linux com relação a drivers e suporte a
dispositivos é que no Windows os drivers são desenvolvidos pelos fabricantes
e precisam ser instalados manualmente, após a instalação do sistema,
enquanto no Linux os drivers são incorporados diretamente ao Kernel e por
isso vêm pré-instalados no sistema.

Naturalmente, o Windows também inclui uma biblioteca de drivers, com suporte
a um grande número de dispositivos, mas a biblioteca fica rapidamente
desatualizada, já que a vida útil do sistema é muito grande. Ao instalar o Vista
em um PC montado com componentes disponíveis na mesma época do
lançamento (do sistema), praticamente todo o hardware será ativado durante a
instalação, mas ao fazer o mesmo com o XP, que foi lançado em 2001, você
precisará instalar praticamente tudo posteriormente.

Podemos dividir os drivers de dispositivo para o Linux em dois grupos. O
primeiro é o dos drivers de código aberto, que podem tanto ser desenvolvidos
pelos próprios fabricantes quanto por voluntários em cantos remotos do mundo.
Estes drivers open-source são incluídos diretamente no Kernel, o que faz com
que sejam incluídos diretamente nas distribuições e você não precise se
preocupar muito com eles. O segundo grupo é o dos drivers proprietários
(como os drivers para placas de vídeo da nVidia e da ATI), que na maioria dos
casos precisam ser instalados manualmente.

Os componentes suportados são detectados durante a instalação do sistema e
os módulos necessários são carregados, fazendo com que o dispositivo
funcione sem precisar de configuração adicional. Muitas distribuições incluem
inclusive scripts ou utilitários que se oferecem para fazer a instalação de drivers
proprietários.

O maior problema é justamente quando o sistema de detecção não funciona
tão bem quanto deveria, ou quando o sistema não possui os drivers para o
dispositivo em questão e você precisa baixar e instalar os drivers
manualmente. Nesse ponto, a maioria das pessoas simplesmente desiste ou
passa a testar outras distribuições até encontrar alguma que consiga detectar
os componentes que precisa, ao invés de tentar resolver o problema inicial.
Embora solucionar problemas no Linux possa ser um processo complexo,
neste tópico vou tentar dar algumas dicas gerais de por onde começar.

Em primeiro lugar, o suporte a dispositivos no Linux é feito através de
"módulos" incluídos no Kernel, arquivos que ficam dentro da pasta
"/lib/modules/versão_do_kernel_usada/":




                                                                               788
Estes módulos são a coisa mais parecida com um "driver" dentro da concepção
que temos no Windows. Para ativar o suporte a um certo dispositivo, você
precisa apenas carregar o módulo referente a ele. Veja que os módulos ficam
organizados em pastas: a pasta "kernel/drivers/net/" contém drivers para placas
de rede, a pasta "kernel/drivers/usb/" agrupa os que dão suporte dispositivos
USB e assim por diante.

Até o Kernel 2.4, os módulos de Kernel utilizavam a extensão ".o", que é uma
extensão genérica para objetos em C. A partir do Kernel 2.6, passou a ser
usada a extensão ".ko" (kernel object), que é mais específica.

Quase sempre, os módulos possuem nomes que dão uma idéia do dispositivo
a que oferecem suporte. O "8139too.ko" dá suporte às placas de rede com o
chipset Realtek 8139, o "sis900.ko" dá suporte às placas com chipset SiS 900,
enquanto o "e100.ko" ativa as placas de rede com chipset Intel E100, por
exemplo.

Os módulos podem ser carregados e descarregados a qualquer momento
usando os comandos "modprobe" e "modprobe -r"; não apenas na
inicialização do sistema.

Algumas distribuições oferecem a opção de carregar módulos adicionais
durante a instalação, justamente pensando nos raros casos onde você precisa
de um determinado módulo para ativar a placa SCSI onde está instalado o HD
para poder prosseguir com a instalação, por exemplo.

Os módulos são gerados durante a compilação do Kernel. Você não precisa se
preocupar com isso se não quiser, pois as distribuições quase sempre incluem
versões bem completas do Kernel por padrão. Mas, de qualquer forma, existe
sempre a possibilidade de recompilar o Kernel, mexendo nas opções e
ativando ou desativando os módulos que quiser.

                                                                           789
As distribuições atuais são bem competentes com relação à detecção do
hardware da máquina, mas sempre existem casos onde a detecção de
hardware falha. Se existe um driver disponível e o problema foi apenas na
detecção do dispositivo, o suporte a ele pode ser ativado carregando o módulo
referente a ele, como em:

# modprobe ipw2200
(como root)

Aqui carregamos o módulo que dá suporte a placa IPW2200, usadas em
notebooks Intel Centrino. Os módulos são inteligentes, eles detectam se o
dispositivo a que dão suporte está realmente presente, caso contrário incluem
uma mensagem de erro no log do sistema e não fazem nada. Com poucas
exceções, você pode testar o carregamento de quantos módulos quiser, sem
causar problemas ao funcionamento do sistema.

Em alguns casos, pode ser necessário especificar opções diversas ao carregar
o módulo, como no caso das placas de captura de vídeo que são ativadas
através do módulo "bttv". Se você tem uma PixelView PlayTV Pro, por
exemplo, precisa carregar o módulo incluindo os parâmetros "card=37
tuner=2". Na maioria dos casos, o módulo já vai estar carregado (devido ao
sistema de detecção de hardware da distribuição), mas com os parâmetros
incorretos. Nesse caso, você precisaria primeiro descarregar o módulo (usando
o comando "modprobe -r"), para depois carregá-lo novamente usando o
modprobe, como em:

# /sbin/modprobe -r bttv
# /sbin/modprobe -r tuner
# /sbin/modprobe bttv card=37 tuner=2

Originalmente, a modificação seria perdida ao reiniciar a máquina. Para não
precisar ficar executando os comandos novamente a cada boot, você
adicionaria os comandos (apenas os comandos, sem o "#", que indica que eles
devem ser executados como root) em um dos arquivos de inicialização do
sistema.

Os mais próprios para isso são os arquivos "/etc/rc.local" ou
"/etc/rc.d/rc.local". Verifique qual dos dois está disponível, abra-o em um
editor de texto puro, como o kedit, kwrite, gedit ou mcedit e adicione os
comandos no final do arquivo, antes da linha "exit 0" (caso presente).

Naturalmente, pouca gente sabe os nomes e parâmetros dos módulos de cor.
Ao se deparar com problemas de detecção, o caminho é sempre pesquisar
pelo modelo da placa ou pelo chipset usado. Quase sempre você vai encontrar
dicas de como ativá-la em algum wiki ou fórum. Em muitos casos é só questão
de ativar o módulo apropriado, mas em outros você precisa instalar algum
driver proprietário ou experimental manualmente.




                                                                          790
Drivers proprietários

Os drivers proprietários são uma categoria à parte. Eles não são incluídos
diretamente na maior parte das distribuições, seja por restrições com relação à
redistribuição do arquivo (em muitos casos a EULA não permite a redistribuição
do driver, de forma que ele precisa ser baixado manualmente no site do
fabricante) ou seja por dúvidas com relação à estabilidade e segurança, já que
o código-fonte do driver não está disponível e por isso não pode ser auditado
em busca de erros. É aqui que entram os drivers para softmodems, algumas
placas wireless e também os drivers para placas 3D da nVidia e da ATI, que
citei anteriormente.

Instalar um desses drivers envolve duas tarefas: baixar o pacote com o código-
fonte, ou um instalador e em seguida instalá-lo, carregando o módulo criado e
fazendo outras configurações necessárias.

Ao instalar o driver para modems com chipset Lucent, por exemplo, é criado
um dispositivo "/dev/ttyLT0", por onde o modem é acessado. Para facilitar esta
tarefa, geralmente os drivers vêm com algum tipo de instalador, geralmente um
script simples de modo texto que cuida disso para você.

Os módulos são parte integrante do Kernel, por isso os módulos compilados
para uma determinada distribuição não funcionam em outra, a menos que, por
uma grande coincidência, as duas utilizem exatamente a mesma versão do
Kernel. Isso é bastante improvável, já que o Kernel do Linux é atualizado quase
que diariamente.

Se você usar uma distribuição popular, como o Mandriva, Fedora, SuSE, etc., é
possível que você encontre um driver pré-compilado para download (que pode
ser encontrado com a ajuda do Google ;). Neste caso, você só vai precisar
instalar um pacote RPM ou executar um arquivo de instalação. Em outras
situações, você encontrará apenas um arquivo genérico ainda não compilado,
contendo um instalador que se encarrega de compilar um módulo sob medida
para o Kernel em uso.

Como ele não tem como adivinhar qual distribuição ou Kernel você está
utilizando, é necessário ter instalados dois pacotes que acompanham qualquer
distribuição: kernel-source e kernel-headers. No Mandriva, por exemplo, você
pode instalá-los usando os comandos:

# urpmi kernel-source
# urpmi kernel-headers

Naturalmente, para que ele possa compilar qualquer coisa, você precisará
também de um compilador, o gcc, que também acompanha as distribuições.
Você pode instalá-lo marcando a categoria de pacotes de desenvolvimento
(development) durante a instalação do sistema.

No caso do Ubuntu e de outras distribuições da família do Debian, instale o
pacote "build-essential" (que contém os compiladores básicos) e o pacote
"linux-headers-2.6.x-x" (onde o 2.6.x-x é a versão do Kernel em uso), que
contém os headers, ou seja, as partes do código-fonte necessárias para
                                                                           791
compilar módulos. Você pode usar o comando "uname -a" para descobrir qual
versão do Kernel está instalada, como em:

# uname -a

      Linux server 2.6.18-4 #1 Tue Aug 16 12:46:35 UTC 2005 i686
      GNU/Linux

Em seguida, instale os pacotes usando o apt-get, como em:

# apt-get install build-essential
# apt-get install linux-headers-2.6.18-4

No caso do Ubuntu, você pode precisar criar manualmente o link
"/usr/src/linux", apontando para a pasta referente à versão instalada. Para isso,
acesse a pasta "/usr/src" e rode o comando "sudo ln -sf linux-headers-2.6.*-*
linux", como em:

# cd /usr/src
# sudo ln -sf linux-headers-2.6.18-4 linux

Com os compiladores e os headers do Kernel instalados, você vai conseguir
instalar qualquer driver sem maiores problemas, basta seguir as instruções
disponíveis na página de download ou no arquivo INSTALL ou README dentro
do pacote. Ao baixar, procure por uma versão atualizada do driver, que seja
compatível com a versão do Kernel em uso. É muito comum que drivers pouco
usados sejam atualizados esporadicamente e não funcionem em versões
recentes do Kernel. Nesse caso existe pouco a fazer senão esperar o
lançamento de uma versão atualizada.

Vamos a um exemplo de instalação com o driver "gspca", que adiciona suporte
a um grande número de webcams, incluindo muitos dos modelos incorporados
à      tela   dos       notebooks.    Ele pode      ser     baixado     no:
http://mxhaard.free.fr/download.html.

Na página de download, você encontra um aviso:

      for kernel up from 2.6.11 : gspcav1-20070508.tar.gz
      for kernel below 2.6.11: spca5xx version 0.60.00-1: spca5xx-
      v4l1goodbye.tar.gz

Como no exemplo estamos usando o Kernel versão 2.6.18-4, baixaríamos o
primeiro arquivo. Para instalá-lo, você descompacta o arquivo e, dentro da
pasta criada (como root), executa os comandos:

# make
# make install

Na maioria dos pacotes, você precisaria usar primeiro o comando "./configure",
mas no caso do gspca ele não é necessário. Como os comandos de instalação
podem sofrer pequenas variações de um pacote para o outro, é sempre
importante dar uma olhada rápida nas instruções de instalação.


                                                                             792
Com o módulo instalado, o próximo passo é carregá-lo. Se a webcam estiver
entre os modelos suportados, ela passará a ser vista pelos programas de
mensagem (como o kopete) e por programas de visualização de imagem que
oferecem suporte a câmeras.

# modprobe gspca

Para que ele seja carregado automaticamente durante o boot, adicione o
comando no final do arquivo "/etc/rc.local" ou "/etc/rc.d/rc.local". Existe também
um arquivo específico para incluir módulos que devem ser carregados durante
o boot, que é o "/etc/modules". Ao usá-lo, você deve incluir apenas o nome do
módulo (sem o "modprobe") no final do arquivo.

Outro exemplo de driver muito comum é o driver 3D para placas nVidia,
disponível no: http://www.nvidia.com/object/unix.html.

O pacote disponível para download contém um instalador, que automatiza o
processo de instalação e permite que o mesmo pacote possa ser instalado em
qualquer distribuição.

Existem três versões do driver. A mais recente oferece suporte às GeForce
6100 em diante, excluindo o suporte às placas antigas. Existem ainda duas
versões "legacy", destinadas às placas anteriores. A versão 96xx oferece
suporte às GeForce 2, GeForce 3 e GeForce 4, incluindo as GeForce 2 MX e
GeForce 4 MX e as GeForce 2 onboard, enquanto a versão 71xx oferece
suporte às placas realmente antigas, a partir das TnT.

Em qualquer um dos três casos, o processo de instalação é o mesmo. Comece
marcando a permissão de execução para o arquivo, o que pode ser feito
através das propriedades do arquivo, ou via terminal, usando o comando
"chmod +x", como em:

$ chmod +x NVIDIA-Linux-x86-100.14.11-pkg1.run

Por precaução, o instalador exige que você o execute em modo texto puro, já
que o instalador não tem como substituir os módulos antigos caso eles estejam
em uso. Dependendo da distribuição usada, o comando para fechar o ambiente
gráfico pode ser "/etc/init.d/kdm stop", "/etc/init.d/gdm stop", "service dm stop",
"telinit 3" ou "init 3".

Depois de executar o comando apropriado (sempre como root), você cai em
um terminal de texto puro. Logue-se como root (no Ubuntu você pode se logar
com o seu login de usuário e usar o comando "sudo su" para virar root), acesse
a pasta onde foi baixado o arquivo (usando o comando "cd") e execute-o,
usando o comando "./" seguido do nome do arquivo, como em:

# ./NVIDIA-Linux-x86-100.14.11-pkg1.run

A maior parte da instalação consiste em simplesmente copiar alguns arquivos e
bibliotecas. Mas, existe um componente que precisa ser gerado sob medida
para o seu sistema, que é o módulo para o Kernel, que permite que o driver
tenha acesso de baixo nível ao hardware.

                                                                               793
O instalador já traz vários módulos pré-compilados para várias distribuições,
incluindo Mandriva, SuSe, Fedora e outras. Ao usar uma delas, ele
simplesmente vai instalar o que já tem, sem fazer mais perguntas. Caso
contrário, ele verificará se existe algum módulo disponível no FTP da nVidia e
em seguida tentará compilar um módulo sob medida, o que é feito
automaticamente depois de uma tela de confirmação:




No final ele pergunta se deve editar o arquivo de configuração do X
automaticamente. Responda "yes" para que ele faça as alterações
automaticamente e reinicie o modo gráfico. Este era um passo que precisava
ser feito manualmente em versões antigas do driver.

Para as placas wireless que não possuem drivers nativos, existe a opção de
carregar o driver do Windows XP através do Ndiswrapper. Infelizmente ele
funciona apenas com drivers de rede, por isso não é uma solução para quem
precisa de drivers para um softmodem ou outro dispositivo. Ele já vem pré-
instalado na maioria das distribuições atuais. Caso não esteja, procure pelos
pacotes "ndiswrapper-utils" e "ndiswrapper-modules" no gerenciador de
pacotes.

Para usar o Ndiswrapper, você precisa ter em mãos o driver da placa para
Windows XP, que pode ser encontrado no CD de instalação ou no site do
fabricante. Comece descompactando o arquivo do driver, caso necessário. Os
drivers distribuídos na forma de arquivos .exe são, na verdade, arquivos
compactados no formato cab, que contém um instalador. Eles podem ser
descompactados no Linux usando o comando "cabextract" (que faz parte do
pacote do mesmo nome), como em:

$ cabextract sp32158.exe

Para carregar o driver, use o comando "ndiswrapper -i" (como root), seguido do
caminho completo para o arquivo ".inf", como em:

# ndiswrapper -i /mnt/hda6/Driver/WinXP/GPLUS.inf

Com o driver carregado, ative o módulo com o comando:

# modprobe ndiswrapper

Se tudo estiver ok, o led da placa acenderá, indicando que ela está ativa. A
partir daí, falta apenas configurar a rede da forma normal. Caso você esteja
tendo problemas para se conectar em redes com encriptação WPA, verifique
se o pacote "wpa_supplicant" está instalado.

Muitas distribuições incluem wizards ou utilitários gráficos para facilitar a
configuração do Ndiswrapper, como no ndisgtk, mas estes passos manuais

                                                                          794
podem ser usados quando tudo mais falhar. Aqui está uma lista de outros
drivers de que você pode precisar. Eles vem pré-instalados em muitas
distribuições, mas sempre existem casos em que você precisa instalá-los
manualmente:

Placas 3D com chipset ATI:
http://www.ati.com (na seção "Drivers & Software > Linux Display Drivers").

Placas wireless com chipsets ACX100 e ACX111:
http://rhlx01.fht-esslingen.de/~andi/acx100/

Placas wireless com chipset Atheros: http://madwifi.sourceforge.net/

Placas wireless com chipset ADM8122 (ADMteck):
http://aluminum.sourmilk.net/adm8211/

Notebooks      com    placas    wireless   Intel    IPW2100     ou    IPW2200:
http://ipw2200.sourceforge.net/        ou        http://ipw2100.sourceforge.net/
(além do driver, é necessário baixar o arquivo compactado na seção
"firmware", que deve ser descompactado dentro da pasta "/lib/firmware". Muitas
distribuições incluem o driver, mas não o firmware, que também é necessário
para a placa funcionar)

Placas wireless com chipset Ralink rt2400, rt2500 ou rt61:
http://prdownloads.sourceforge.net/rt2400/

Placas wireless com chipset Realtek rtl8180:
http://rtl8180-sa2400.sourceforge.net/

Modems PC-Tel onboard e AMR (incluindo os das placas M810, M812, e
outros modelos da PC-Chips/ECS, além de vários notebooks) e modems PCI
com        chipset  PC-Tel       recentes,   como   os   LG-Netodragon:
http://www.smlink.com/ (Support > Drivers Download > Linux Drivers) ou
http://linmodems.technion.ac.il/packages/smartlink/

Modems com chipset PC-Tel em versão PCI, que não são atendidos pelo driver
da Smartlink:
http://linmodems.technion.ac.il/pctel-linux/welcome.html

Modems com chipset Intel 537 (Tigerjet) e Intel 537ep (Ambient):
http://linmodems.technion.ac.il/packages/Intel/537/

Modems Lucent e Agere (este driver funciona apenas com os modelos
antigos):
http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/

Modem ADSL Speedtouch USB (incluindo o Speedtouch 330):
http://sourceforge.net/projects/speedtouch/

Diversas placas de TV só funcionam caso o módulo seja carregado usando as
opções adequadas, como no exemplo da PlayTV Pro, que usei há pouco. Você
pode ver um resumo dos chipsets suportados no Linux e os parâmetros


                                                                              795
utilizados      pelos      diferentes       modelos   de      placas      no:
http://tvtime.sourceforge.net/cards.html.

Opções de boot

Outra dica importante com relação à solução de problemas de detecção de
hardware no Linux são as opções de boot. Devido a bugs e a questões mal
resolvidas com relação ao ACPI, ao roteamento de endereços (APIC) e outros
recursos, é comum que surjam problemas de compatibilidade entre alguns
modelos de placas-mãe e distribuições Linux baseadas em versões específicas
do Kernel, que fazem com que o sistema não consiga detectar alguns dos
periféricos instalados (como a placa wireless ou a placa de som, por exemplo)
ou mesmo trave completamente durante o boot.

A solução, na maioria dos casos, é desativar os recursos problemáticos através
de opções de boot, passadas diretamente para o Kernel do sistema.

Por exemplo, muitos notebooks da Acer, como os 5043 e os 5050, possuem
problemas relacionados ao roteamento de IRQs que causam diversos
problemas no Linux, entre eles a não detecção da placa wireless e problemas
diversos relacionados ao som e ao uso dos recursos 3D da placa de vídeo.
Estes problemas intermitentes podem ser solucionados usando as opções
"irqpoll noapic pci=biosirq".

Ao dar boot através do CD ou DVD, procure pela opção para inserir opções
para o Kernel na tela de boot. Em muitas distribuições você só precisa digitar
as opções diretamente, mas em outras você precisa pressionar uma tecla de
atalho, como no caso do Ubuntu, onde você precisa pressionar a tecla F6.
Adicione as opções no final da linha, sem alterar as demais opções:




Fazendo isso, as opções continuarão sendo usadas após a instalação do
sistema. Você pode também adicionar as opções com o sistema já instalado

                                                                           796
editando como root o arquivo "/boot/grub/menu.lst", que contém as opções
relacionadas ao gerenciador de boot. Nesse caso, adicione as opções no final
da linha com as opções relacionadas ao Kernel (reinicie para que entrem em
vigor), como em:

      kernel /boot/vmlinuz-2.6.20-15-generic ro irqpool noapic pci=biosirq

O conjunto de opções a usar varia de acordo com a placa ou o notebook
problemático, mas as opções mais usadas são:

acpi=off: Esta opção desativa o ACPI, corrigindo problemas diversos de boot
em muitas máquinas. Evite usá-la em notebooks, pois ela desativa o medidor
de bateria e outros recursos importantes.

noapic: O APIC é usado para atribuir endereços de IRQ, evitando conflitos
entre os dispositivos. Entretanto, muitos micros usam BIOS bugados que
atribuem os endereços incorretamente, fazendo com que a placa de som ou
placa de rede (por exemplo) não seja detectada pelo sistema. Usar esta opção
soluciona o problema em muitas situações. Note que, em muitos casos, a
melhor forma de corrigir de forma definitiva este tipo de problema é fazer uma
atualização de BIOS da placa-mãe, já que uma versão corrigida pode
solucionar o problema direto na fonte.

pci=biosirq: Esta é mais uma opção que resolve problemas de detecção da
placa de rede ou som em algumas máquinas. Ela faz com que o sistema siga a
configuração de endereços definida pelo BIOS, ao invés de usar o
procedimento normal de detecção.

pnpbios=off: Desativa o suporte a plug-and-play por parte do BIOS da placa-
mãe, deixando que o Kernel se encarregue da detecção de todos os
componentes. Esta é mais uma opção que resolve problemas de
compatibilidade em algumas placas.

irqpoll: Esta opção modifica a forma como o sistema detecta os dispositivos da
máquina, corrigindo uma série de problemas em micros e notebooks recentes.
Ela é necessária para o wireless funcionar em diversos notebooks Acer com
placas Broadcom, resolve problemas relacionados com a placa de som ou com
placa de rede em diversas configurações e soluciona um problema relacionado
à detecção de HDs SATA em placas baseadas no chipset K8T890 (como a
Asus A8V-E), entre outras. Esta opção causa poucos efeitos colaterais, de
forma que você pode usá-la (inclusive combinada com outras opções) sempre
que perceber que algo está errado.

all-generic-ide: Esta opção soluciona problemas de compatibilidade com as
controladoras IDE ou SATA de algumas placas-mãe, sobretudo nas placas com
o infame chipset SiS 761GX/965L (ao usar um HD SATA), como a PC-Chips
K8 A31G. Esta opção deve ser usada em casos onde o sistema não consegue
detectar os HDs do micro (o que além de impedir que você acesse os arquivos,
impossibilita a instalação). Ao usar a opção de boot, o sistema utiliza um modo
de acesso genérico para os HDs, o que resolve o problema em 90% dos casos,
embora cause uma certa redução no desempenho do HD.


                                                                             797
Capítulo 10: Vídeo e placas 3D

As placas de vídeo passaram por duas grandes evoluções desde os primeiros
PCs. As primeiras placas de vídeo, ligadas ao barramento ISA, eram
dispositivos burros, que trabalhavam atualizando a tela com relação a um
bitmap armazenado na memória de vídeo, o frame buffer. Este design é muito
simples, mas também ineficiente, pois o processador principal executa todo o
trabalho.

O passo seguinte foram as placas de vídeo com aceleração 2D, que incluem
recursos relacionados ao desenho das janelas, renderização do texto,
decodificação de determinados formatos de vídeo e outros recursos, que
reduzem a carga sobre o processador principal e tornam a atualização do vídeo
muito mais rápida e transparente.

Finalmente, as placas de vídeo ganharam recursos 3D, o que nos remete à era
atual. Gráficos 3D são gerados de uma forma fundamentalmente diferente de
uma imagem bidimensional (como uma janela do navegador ou do editor de
textos, por exemplo). Imagens bidimensionais são apenas um conjunto de
pixels, bitmaps que depois de montados podem ser enviados diretamente ao
monitor, sem necessidade de processamento adicional. Imagens 3D, por sua
vez, são formadas por polígonos, texturas e outros componentes, que são
armazenados na forma de cálculos, comandos e coordenadas na memória da
placa de vídeo. Para ser exibida no monitor, a imagem precisa ser renderizada,
processo no qual as informações são interpretadas pela placa 3D e
transformadas em uma imagem bidimensional, que pode então ser exibida no
monitor.

Gráficos 3D permitem criar imagens muito mais elaboradas e animações muito
mais realísticas. O problema é que eles exigem muito poder de processamento.
É possível usar o processador principal para renderizar imagens 3D e, de fato,
muitos jogos antigos rodavam mesmo sem uma placa 3D instalada, usando
renderização via software. O problema é que o processador principal é
otimizado para processar instruções sequenciais, o que faz com que ele tenha
um desempenho muito ruim ao assumir a tarefa, na maioria dos casos inferior
até mesmo ao uma placa 3D onboard.

Os processadores gráficos incluídos nas aceleradoras 3D são otimizados para
o processamento de polígonos, shaders, aplicação de texturas, efeitos de luz e
assim por diante, oferecendo um desempenho brutalmente melhor. Isso
permite que o processador se encarregue de executar o aplicativo e cuide das
etapas que exigem processamento, deixando a parte pesada da renderização
da imagem e a aplicação das imagens para a placa 3D.

Hoje em dia, mesmo as placas onboard mais simples oferecem recursos 3D e
muitas placas offboard são monstros, que possuem muitas vezes mais poder
de processamento e mais memória (e também custam mais) que o resto do
PC. O chipset G80 usado nas GeForce 8800 GTS, GTX e Ultra, por exemplo,
possui 681 milhões de transístores (mais do que um Core 2 Quad, baseado no

                                                                          798
core Kentsfield) e muitas placas de vídeo já utilizam 1 GB completo de
memória RAM.

Além da questão do custo, isso traz à tona também a questão do consumo
elétrico e do aquecimento. Quase todas as placas 3D de alto desempenho
atuais ocupam o espaço de dois slots no gabinete (devido ao tamanho do
dissipador) e utilizam um blower que sopra o ar quente diretamente para fora
do gabinete:




                             GeForce 8800 GTX

A diferença principal entre um exaustor e um blower é que o exaustor empurra
o ar para baixo, enquanto o blower o espalha na horizontal. Essa peculiaridade
permite que o cooler seja mais fino, o que é muito importante no caso de uma
placa de vídeo.

Uma placa como a GeForce 8800 GTX consome quase 150 watts em full load,
o que faz com que a placa utilize não apenas um, mas dois conectores de força
PCI-Express, de forma a obter toda a energia necessária. O alto consumo gera
uma série de gastos adicionais (além do custo da placa em si), incluindo uma
fonte de melhor qualidade e o gasto mensal com eletricidade. Em um PC que
fica ligado 12 horas por dia, uma placa 3D que consome 150 watts representa
um gasto anual de quase 360 reais.

O outro lado da moeda são as placas 3D onboard, sobretudo as versões
mobile. A GeForce Go 6150, por exemplo, tem um TDP de apenas 5.6 watts e
um consumo médio inferior a 3 watts. Placas mais simples, como as GMA 900

                                                                          799
usadas nos chipsets Intel Mobile antigos podem consumir abaixo da marca de
1 watt ao rodar aplicativos leves. Naturalmente, o desempenho destas placas
não se compara com o de placas offboard mais parrudas, mas mostra que
placas 3D não precisam necessariamente ser gastadoras. Tudo depende da
arquitetura e do desempenho que se pretende obter.

Chipsets de vídeo puramente 2D estão hoje em dia restritos a dispositivos
muito mais simples, como palmtops e celulares, e mesmo nesses últimos
nichos já enfrentam concorrência de chipsets 3D de baixo consumo.

Utilizando o AIGLX (no Linux), ou o Aero do Vista, você pode utilizar parte do
poder de processamento da placa 3D até mesmo para renderizar o ambiente
de trabalho, o que permite a aplicação de diversos efeitos possíveis apenas em
um ambiente 3D. É provável que essa tendência continue no futuro, com cada
vez mais interfaces adotando o uso de um ambiente 3D.

Naturalmente, existe uma brutal diferença de recursos, desempenho e preço
entre as diferentes opções de placas 3D. Temos desde chipsets de vídeo
onboard, que adicionam muito pouco ao custo da placa mãe, até placas high-
end que custam mais de 500 dólares. Por isso é importante saber escolher com
cuidado.

FPS, V-Sync e tearing

Existem basicamente três motivos para investir em uma placa 3D mais rápida:
FPS, qualidade de imagem e compatibilidade.

O aumento no frame-rate (FPS) é possivelmente o aspecto mais enfatizado, já
que melhora a jogabilidade e torna a movimentação mais fluída. O FPS é
determinado diretamente pela resolução e pelas configurações usadas. Quanto
mais trabalho a placa precisa executar a cada frame, menos frames ela
consegue renderizar por segundo, e vice-versa. É possível rodar jogos atuais
em placas relativamente modestas, mas você fica limitado a resoluções mais
baixas e precisa se conformar em manter a maior parte dos efeitos visuais
desativados.

O FPS pode ser também limitado pelo desempenho do processador (afinal, é
ele quem executa a maior parte do processamento referente ao jogo ou ao
aplicativo), mas em situações normais a placa 3D torna-se um gargalo muito
antes do processador. Em geral, o processador limita o FPS apenas ao usar
uma placa 3D desproporcionalmente rápida em relação a ele (como ao
combinar uma placa 3D high-end com um processador antigo), ou ao jogar
usando resoluções muito baixas (o que reduz o trabalho da placa 3D para
renderizar cada frame).

Isso nos leva ao segundo motivo, que é a qualidade da imagem. Usando uma
placa mais rápida, você pode se dar ao luxo de sacrificar parte dos quadros
para usar resoluções mais altas, ativar o uso de antialiasing, recursos de
sombra, Anisotropic Filtering e outros recursos, que melhoram de forma
expressiva a qualidade visual.



                                                                          800
O FPS "prático" é limitado pela taxa de atualização do monitor. A maioria dos
monitores de LCD atuais trabalha com 60 Hz de taxa de atualização, o que
permite a exibição de um máximo de 60 quadros por segundo. Em situações
onde a placa 3D é capaz de gerar um número maior de quadros por segundo,
os quadros adicionais acabam sendo simplesmente descartados.

Monitores CRT oferecem taxas de atualização um pouco mais altas, indo
geralmente até 85 Hz com resolução de 1024x768 nos monitores de 17".
Muitas pessoas associam a maior taxa de atualização com uma melhor
jogabilidade, mas na verdade ela acaba fazendo pouca diferença. O principal
motivo de os monitores CRT trabalharem com taxas de atualização mais altas
é que elas são necessárias para evitar o aparecimento de flicker. Diferenças de
jogabilidade ao utilizar um monitor de CRT e um LCD estão mais relacionadas
ao tempo de resposta, que era consideravelmente mais alto nos monitores LCD
antigos.

Este limite "físico" para a exibição dos quadros, representado pela taxa de
atualização do monitor faz com que não faça muito sentido gastar mais com
uma placa para jogar com um FPS muito acima de 60 quadros, simplesmente
porque os quadros excedentes não serão exibidos. O principal motivo de
algumas pessoas gastarem mais de mil reais em uma placa 3D de ponta não é
o desejo de jogar a 200 quadros por segundo, mas sim de poder jogar a 60
FPS com todos os efeitos ativados.

O problema com relação ao FPS é que ele não é um valor fixo. Ele varia de
forma considerável de acordo com a cena, caindo bastante nas cenas mais
movimentadas, que são justamente quando você mais precisa. Isso faz com
que muitos prefiram reduzir os efeitos (ou comprar uma placa ainda mais
rápida), de forma a obter 100 FPS ou mais e assim jogar com uma boa
margem de segurança, de forma que o valor não caia muito abaixo dos 60 FPS
mesmo nas cenas mais pesadas.

Em condições normais, o olho humano não é capaz de diferenciar muito mais
do que 25 quadros por segundo, que é a taxa utilizada nos filmes. É justamente
por isso que os novos formatos de vídeo sempre priorizam o aumento na
resolução e não no número de quadros por segundo. A questão é que você
tende a ficar muito alerta ao jogar, sobretudo no caso dos jogos de primeira
pessoa, o que faz com que o cérebro consiga captar mais informações e assim
diferenciar entre um número maior de quadros.

Para um jogador ocasional, um FPS de 30 quadros pode ser mais do que
satisfatório, mesmo levando em conta que a taxa caia para 20 ou mesmo 18
FPS nas cenas mais movimentadas. Por outro lado, um gamer mais hardcore
dificilmente ficará satisfeito com menos de 60 FPS e talvez seja até capaz de
perceber a queda para 40 ou 35 FPS na cenas mais intensas.

Uma forma de tornar a exibição dos quadros mais fluída é ativar o V-Sync,
opção que sincroniza a atualização dos quadros com o refresh do monitor. A
idéia é que o monitor exiba um novo quadro a cada atualização, sem pular ou
repetir quadros. Ao usar refresh de 60 Hz para o monitor, o sistema tenta exibir


                                                                            801
sempre 60 quadros, ao usar 75 Hz tenta exibir 75 quadros e assim por diante, o
que seria o ideal.

Naturalmente, o sistema só será capaz de exibir 60 FPS caso a placa de vídeo
seja capaz de renderizar um novo quadro a cada 0.1666 segundo. Em
situações onde a placa passa a demorar mais do que isso para renderizar cada
quadro, a imagem passa a ser atualizada a cada dois quadros (30 FPS) ou
mesmo a cada 3 quadros (20 FPS). A vantagem é que a atualização é sempre
mais ou menos constante, sem "pulos", mas a desvantagem é que os quadros
ficam alguns milissegundos parados no buffer da placa de vídeo, esperando a
próxima atualização do monitor.

Com o V-Sync desativado, os novos frames são exibidos o mais rápido
possível. Se um novo frame fica pronto enquanto o monitor ainda está
renderizando a primeira metade do anterior, o monitor finaliza a atualização da
tela exibindo o novo frame. Isso causa um fenômeno curioso, que faz com que
a tela exiba a metade superior do primeiro frame e a metade inferior do frame
seguinte, efeito que é chamado de tearing.

Muitos não percebem o tearing e preferem jogar com o V-Sync desativado, de
forma a obter o melhor FPS possível, mas muitos ficam bastante incomodados
com ele e preferem o "conforto" de jogar com o V-Sync ativado. Nesse caso a
questão é bastante subjetiva e depende basicamente do gosto pessoal.

Uma dica: ao ativar o V-Sync, procure ativar também o Triple Buffering, ele faz
com que a placa de vídeo passe a utilizar três frame-buffers em vez de dois.

Funciona assim: o primeiro buffer contém o frame completo que está sendo
exibido no monitor, enquanto o segundo contém o frame seguinte, no qual a
GPU da placa de vídeo ainda está trabalhando. Sempre que a placa de vídeo
não consegue finalizar o quadro seguinte antes que o tempo da atualização da
tela se esgote, o sistema repete o quadro anterior e a placa precisa esperar
mais 0.1666 segundo (a 60 Hz), para poder trabalhar no quadro seguinte, já
que não pode fazer nada com os dois buffers cheios. Ao ativar o Triple
Buffering, a placa passa a dispor de um terceiro buffer, o que permite que ela
inicie o processamento de um novo quadro em situações em que o segundo
buffer já está cheio. Isso ajuda a absorver melhor a variação de processamento
necessário entre os quadros e faz com que a placa perca a atualização de um
número muito menor de quadros.

Continuando, mesmo que você seja um jogador realmente modesto, que não
faz questão nem de um alto FPS, nem de uma boa qualidade de imagem,
existe a questão da compatibilidade, que seria o terceiro motivo. Se você utiliza
uma placa antiga, com suporte apenas a Shader Model 2.0, você não
conseguirá rodar jogos que exigem suporte a Shader Model 3.0, por exemplo.
Não é possível rodar jogos que exigem suporte a Vertex Shader via hardware
em placas que não oferecem o recurso, como as GMA900 (onboard) e assim
por diante. A única solução nesses casos é atualizar a placa.




                                                                             802
Recursos

Em um PC para jogos, a placa 3D é o componente mais importante. Como
placas 3D de bom desempenho não são um item barato, você acaba gastando
bem mais na placa 3D do que no processador. Em muitos casos, a placa pode
ser mais cara que todo o resto do micro, por isso é importante saber investir o
seu dinheiro. Vamos começar com um resumo das principais características
das placas atuais:

Clock da GPU

Assim como no caso dos processadores, aumentar o clock da GPU resulta em
um ganho proporcional no poder bruto de processamento da placa, já que mais
vértices, pixels, texturas e efeitos podem ser processados do mesmo espaço
de tempo. Entretanto (assim como nos processadores) o desempenho de
diferentes placas pode ser brutalmente diferente, mesmo que elas operem à
mesma freqüência, devido a diferenças na arquitetura (sobretudo no número de
unidades de processamento e no barramento com a memória).

Por exemplo, o chipset GMA 950 (onboard) usado em placas com chipset Intel,
que é o low-end entre os chipsets low-end opera a 400 MHz, enquanto a GPU
da GeForce 8800 GTS, que está próxima do topo da pirâmide, opera a 500
MHz, apenas 100 MHz a mais. Este é um exemplo extremo de como o
desempenho de duas placas de clock similar pode ser brutalmente diferente.

Nas placas recentes, é comum que alguns componentes internos operem a
uma freqüência maior que o restante da GPU, de forma a melhorar o
desempenho. Na GeForce 8800 GTS do exemplo anterior, as unidades de
processamento operam a 1.2 GHz, mais do dobro do restante da GPU. Isso
torna ainda mais difícil comparar diretamente o desempenho de duas placas
diferentes.

O clock da GPU pode ser ajustado via software (assim como o clock da
memória), usando utilitários como o ATI Tray Tools, o RivaTuner ou o ATITool.
Em muitos casos, os próprios fabricantes podem alterar o clock do chipset, de
forma que suas placas sejam um pouco mais rápidas que concorrentes
baseadas no mesmo chipset. O maior problema é que as placas de vídeo
normalmente trabalham muito próximo do limite, de forma que você raramente
obtém overclocks de 20% ou mais, como é comum nos processadores. Em
muitas placas, um overclock de 5% já é suficiente para desestabilizar o
equipamento.

Ao contrário dos processadores, as GPUs são baseadas em unidades de
processamento com poucos estágios de pipeline e são pesadamente limitadas
ao desempenho da memória (embora as GPUs mais recentes incluam
pequenas quantidades de cache, ele não funciona de forma tão efetiva quanto
em um processador, devido à natureza dos dados processados), por isso
acabam operando a freqüências muito mais baixas, mesmo quando produzidas
usando uma técnica similar de fabricação (comparado aos processadores).




                                                                           803
Fill rate

Toda imagem 3D começa como um enorme conjunto de políginos,
coordenadas e comandos, gerado pelo processador principal e armazenado na
memória. A função básica da placa de vídeo é transformar estes dados na
imagem 2D que será mostrada no monitor, processo chamado de
renderização. No caso dos jogos, as informações na memória são atualizadas
em tempo real (ou quase :) pelo processador, conforme o código do jogo é
processado e a placa de vídeo se encarrega de tirar "screenshots" periódicos,
que são exibidos no monitor. Por estranho que possa parecer, o trabalho
necessário para renderizar as cenas em tempo hábil é muito maior do que o
próprio trabalho de executar o jogo e armazenar as informações na memória,
daí a necessidade de usar uma placa 3D.

O fill rate indica a capacidade bruta da placa de vídeo em renderizar pixels. Em
placas antigas, o fill rate é a especificação mais importante da placa, mas nas
atuais existem diversos outros fatores, como o processamento de shaders, de
texturas e o suporte a recursos diversos.

Existem dois tipos de fill rate, o "pixel fill rate" e o "texel fill rate". O primeiro
indica o processamento de pixels (medido em megapixels por segundo),
enquanto o segundo indica a capacidade da placa em aplicar texturas (medida
em megatexels por segundo). O pixel fill rate é especialmente importante ao
ativar o suporte a antialiasing, enquanto que um bom texel fill rate permite rodar
os jogos usando texturas maiores e efeitos relacionados a elas (como o
Anisotropic Filtering), que resultam em uma melhor qualidade de imagem.

O fill rate pode ser calculado com base no número de unidades de
processamento e o clock da GPU. O processamento dos pixels é dividido em
duas etapas. A primeira é executada pelos pixel pipelines, que geram a
imagem "bruta" a partir dos polígonos. Os pixels são então enviados aos ROPs
(Raster Operations Pipelines, ou Render Output Pipelines) que combinam a
imagem com as texturas (geradas pelas unidades de processamento de
texturas), aplicam efeitos adicionais e geram a imagem final, que é mostrada
no monitor.

A GeForce 7900 GTX, por exemplo, possui 16 ROPs, 24 pixel pipelines, 24
unidades de processamento de texturas e opera a 650 MHz. Isso resulta em
um fill rate de 10400 megapixels e 15600 megatexels. Você pode notar que ela
possui mais pixel pipelines e mais unidades de processamento de texturas do
que ROPS, ao contrário de placas mais antigas (como as GeForce 6), que
possuem a mesma quantidade de cada tipo. Isso visa melhorar o desempenho
da placa ao usar recursos como o Antialiasing e o Anisotropic Filtering, sem
contanto aumentar exageradamente a complexidade do projeto adicionando
mais ROPs.

Como de praxe, o fill rate é determinado pela combinação do clock da GPU e
do número de unidades de processamento. A GeForce 8800 GTS, por exemplo
opera a uma frequência mais baixa que a 7900 GTX (apenas 500 MHz) mas


                                                                                  804
possui, em compensação, 48 unidades de processamento de texturas, o que
resulta em um fill rate de 24000 megatexels, mais de 50% maior.

Antigamente, as placas possuíam o mesmo fill rate para pixels e texels, mas as
atuais possuem, via de regra, uma capacidade de processamento de texturas
muito maior. Isso acontece porque nos jogos atuais o uso de texturas é muito
mais intenso, inclusive com o uso de texturas sobrepostas. Isso faz com que a
placa acabe processando um volume muito maior de texturas do que de pixels,
fazendo com que o texture fill rate torne-se, quase sempre, um gargalo muito
antes do pixel fill rate. É por isso que o pixel fill rate sequer é mencionado nas
especificações de muitas placas atuais.

Só para efeito de comparação, a Voodoo 1, lançada em 1996, possui um fill
rate de apenas 50 megatexels, enquanto a Riva TNT2, lançada em 1999, tem
um fill rate de 250 megatexels. A TNT2 tem um fill rate cinco vezes maior do
que a Voodoo, mas quase 100 vezes menor que a GeForce 8800 GTS. Como
você pode ver, as placas 3D evoluíram (proporcionalmente) bem mais rápido
do que os processadores do final da década de 1990 pra cá.

Unidades de vertex shader

Os shaders são programas incluídos nos jogos recentes, que executam
operações específicas dentro das imagens, criando efeitos diversos. Eles
oferecem uma flexibilidade muito grande aos desenvolvedores e por isso
passaram a ser usados exaustivamente nos jogos atuais, a ponto de eles
simplesmente não rodarem em placas antigas, sem suporte ao recurso.

Os shaders são úteis sobretudo em situações onde é necessário mover um
grande número de polígonos, adicionar um grande número de detalhes ou
mudar a forma de objetos, efeitos que não ficariam satisfatórios simplesmente
utilizando texturas, ou seriam complexos demais para serem criados
diretamente, da forma tradicional.

Um caso clássico é o cabelo dos personagens, onde só é possível obter um
resultado realístico desenhando cada fio separadamente e fazendo com que
eles se movam de forma mais ou menos independente, acompanhando os
movimentos do personagem. Outros usos comuns são efeitos de explosões,
grama (não o desenho das folhas propriamente ditas, mas sobretudo a
movimentação), folhas de árvores e outros efeitos e detalhes diversos em
objetos. Os shaders fazem um trabalho muito bom em todas essas áreas,
consumindo relativamente pouco poder de processamento e oferecendo
animações realísticas.

Existem dois tipos de shaders: os vertex shaders e os pixel shaders. Os vertex
shaders trabalham na estrutura dos objetos 3D que compõe a imagem,
adicionando efeitos e criando animações, como no caso da grama ou dos
cabelos, (que citei anteriormente), por exemplo.

Eles são processados em unidades independentes da placa, as vertex shader
units (ou vertex processors). Como de praxe, o desempenho é determinado
pelo o número de unidades e pela freqüência de operação destas. O problema
é que a arquitetura e conseqüentemente o desempenho das unidades varia
                                                                              805
muito de uma GPU para outra. É possível comparar diretamente o
desempenho de placas da mesma família (baseadas na mesma arquitetura)
com base nas especificações, mas o desempenho de placas diferentes só
pode ser medido "na prática", através de benchmarks ou uso em situações
reais.

Unidades de pixel shader

Continuando, o segundo tipo de shaders são os pixel shaders, que
complementam o trabalho iniciado pelos vertex shaders. Os pixel shaders
atuam na etapa de renderização da imagem, analisando a estrutura dos
objetos, as fontes de luz, cores e outras variáveis e usando estas informações
para criar efeitos de luz e sombra, realce de cores, reflexos e outros efeitos
bastante realísticos. Esta é considerada a parte mais importante do trabalho, já
que determina a qualidade das imagens que serão finalmente mostradas no
monitor e é também a parte que consome mais processamento.

Os pixel shaders são executados em unidades separadas, as pixel shader units
(ou pixels processors). Nas placas atuais, o desempenho em processamento
de pixel shaders é mais importante que o processamento de vertex shaders,
simplesmente porque eles são muito mais pesados, de forma que as unidades
de processamento de pixels tornam-se um gargalo muito antes das de vértices.
Devido a isso, é normal que as placas possuam um número muito maior de
unidades de pixel shader que de vertex shader.

Unidades de shader unificadas

O uso de unidades separadas para o processamento de vertex shaders e pixel
shaders faz com que o desempenho da placa nunca seja ideal, já que o
carregamento sobre ambos os tipos varia de acordo com a situação e também
de acordo com o tipo de efeitos usados pelo game. Isso faz com que sempre
ou as unidades de vertex shader, ou as de pixel shader sejam subutilizadas,
criando um gargalo. Visando reduzir o problema, os fabricantes optam
freqüentemente por utilizar um número maior de unidades de pixel shader (a
GeForce 7800 possui 24 unidades de pixel shader, para apenas 8 unidades de
vertex shader, por exemplo), mas esta também está longe de ser uma solução
ideal.

Nas placas mais modernas, os dois tipos de processadores são substituídos
por unidades unificadas, que podem ser programas para executar
processamento de pixels ou de vértices, conforme a demanda. Basicamente,
cada uma destas unidades age como um pequeno processador de cálculos de
ponto flutuante independente, que pode ser programado para executar
praticamente qualquer tipo de operação.

Embora o uso de unidades de shader unificadas não seja exatamente um pré-
requisito para o suporte ao DirectX 10, tanto a nVidia quanto a ATI e a Intel
(com o GMA X3000) aparentemente chegaram à conclusão de que o uso de
unidades unificadas seja a forma mais simples de oferecer suporte aos novos
recursos e efeitos trazidos pela API do DirectX 10, de forma que as duas coisas
acabaram relacionadas.

                                                                            806
Texture Mapping Units (TMUs)

As unidades de processamento de texturas trabalham em conjunto com as
unidades de processamento de shaders, carregando texturas utilizadas na
cena. Embora o trabalho das TMUs seja muito mais simples do que o das
unidades de pixel shader, elas podem ser um limitante em algumas situações,
sobretudo ao ativar o uso do Anisotropic Filtering, que resulta em um grande
número de operações relacionadas ao carregamento de texturas.

O desempenho das unidades de texturas também é muito dependente do
barramento com a memória, de forma que placas low-end, com chips de
memória mais lentos e/ou um barramento mais estreito acabam sendo
penalizadas, mesmo que o chipset usado seja o mesmo. Nesses casos a
melhor opção é evitar o uso do Anisotropic Filtering e de outros efeitos que
utilizem um grande volume de texturas.

É comum também que os fabricantes desenvolvam versões reduzidas de seus
chipsets principais, com um volume menor de unidades de processamento, que
são destinadas às placas de baixo custo. O RV610, usado nas Radeon HD
2400, por exemplo, possui apenas 4 unidades de processamento de texturas,
contra as 16 do R600, a versão "completa", usada na Radeon HD 2900 XT.
Estes chipsets reduzidos são mais baratos de se produzir, o que, combinado
com a redução no barramento com a memória (o que significa menos trilhas na
placa) e outras economias, permite produzir placas bastante baratas, embora
também mais lentas.

Raster Operation units (ROPs)

Os ROPs entram em ação no final do processo de renderização. Eles são
responsáveis pela aplicação de filtros adicionais, dos algoritmos de antialiasing,
cálculo de profundidade (Z-buffer) e outras operações.

Muitas placas utilizam arquiteturas balanceadas, onde estão disponíveis o
mesmo número de unidades de processamento de texturas (os TMUs), de
processamento de pixel shaders e ROPs (um exemplo é a Radeon 9700, que
possui 8 unidades de cada tipo), mas cada vez mais placas estão adotando o
uso de arquiteturas mais flexíveis, de forma a melhor distribuir o uso dos
recursos internos. O número de ROPs disponíveis na placa não é um indicador
direto de performance, pois o volume de processamento executado por cada
unidade varia muito de acordo com a arquitetura da placa.

Os ROPs são mais exigidos (em relação aos demais componentes da placa)
ao utilizar as opções mais pesadas de antialiasing e ao ativar o uso de mais
filtros e efeitos diversos. No caso de placas com um número menor de ROPS
(como as GeForce 6600, que possuem apenas quatro unidades, ou as
GeForce 6200, que possuem apenas duas), a melhor forma de evitar que os
ROPS tornem-se um gargalo é reduzir ou desativar o uso de antialiasing.




                                                                              807
Tipo de memória

O barramento com a memória é ainda mais importante para a placa de vídeo
do que é para o processador principal. Este é um dos fatores que dificulta o
desenvolvimento de placas 3D onboard de alto desempenho, já que por mais
poderoso que fosse o chipset gráfico, o desempenho seria seriamente
penalizado pelo lento barramento com a memória compartilhada.

Não existe nenhuma diferença fundamental no tipo de memória RAM utilizado
nas placas de vídeo. Elas podem utilizar os mesmos chips de memória DDR,
DDR2 ou DDR3 utilizados nos módulos de memória principais (muitas placas
de baixo e médio custo realmente utilizam, de forma a reduzir os custos de
produção), mas os fabricantes de placas 3D geralmente optam por utilizar
memórias GDDR2, GDDR3 ou GDDR4, tipos de memória especialmente
otimizados para placas de vídeo, que são capazes de operar a freqüências
mais elevadas.




                         Chips de memória GDDR4

Existe uma certa confusão com relação às memórias GDDR, pois os padrões
são desenvolvidos de forma independente e não são diretamente relacionados
aos padrões de memórias DDR. As memórias GDDR3 não são equivalentes às
memórias DDR3, como poderia parecer à primeira vista. Elas realizam quatro
transferências por ciclo de clock, assim como as memórias DDR2 e
compartilham de outras características, como o uso do terminador resistivo
interno, mas oferecem (em relação às memórias DDR2) a vantagem de
consumirem menos energia, dissiparem menos calor e serem capazes de
operar a freqüências mais altas.

As memórias GDDR4, por sua vez, são bastante similares às memórias DDR3
(muito embora os dois padrões não estejam diretamente relacionados). Elas
trabalham com tensão nominal de 1.5V (o que reduz o consumo elétrico),
suportam o uso de até 8 bancos de memória e realizam 8 transferências por
ciclo de clock, assim como as memórias DDR3. Para evitar que o aumento no
número de transferências por ciclo resultasse em um aumento muito grande na
latência da memória, o padrão GDDR4 inclui diversas otimizações, incluindo o


                                                                         808
DBI (Data Bus Inversion) e o Multi-Preamble, que permitem reduzir os tempos
de espera dos chips.

Assim como no caso das memórias DDR2 e DDR3, o aumento no número de
transferências por ciclo de clock aumenta a freqüência efetiva dos chips de
memória, mas não reduz a latência do ciclo inicial, que continua sendo
demorado. Apesar disso, os padrões GDDR permitem que os fabricantes
desenvolvam chips de memória com tempos de latência muito mais baixos, o
que reduz o problema. São justamente os tempos de latência mais baixos
oferecidos pelas memórias GDDR3 e GDDR4 que fazem com que os
fabricantes optem por utilizá-los no lugar das memórias DDR2 sempre que
possível, mesmo nas placas de baixo custo.

Como de praxe, os fabricantes quase sempre divulgam a freqüência efetiva da
memória (que é obtida multiplicando a freqüência real pelo número de
transferências realizadas por ciclo) nas especificações, no lugar da freqüência
real. A Radeon X1800 XL, por exemplo, utiliza memórias GDDR3 com
freqüência efetiva de 1.0 GHz, enquanto a Radeon X1950 XTX utiliza
memórias GDDR4, que atingem uma freqüência efetiva de 2.0 GHz.

A principal vantagem das memórias GDDR4 é justamente que a tecnologia tem
potencial para atingir freqüências efetivas de operação muito mais altas,
extraindo mais desempenho das células de memória, de forma similar ao que
temos nos desktops, onde as memórias DDR2 estão sendo lentamente
substituídas pelas DDR3.

Freqüência da memória e largura do barramento

Existem basicamente 3 formas de um fabricante de placas 3D aumentar o
barramento com a memória da placa 3D. A primeira (mais óbvia) é utilizar uma
nova arquitetura de memória, migrando, por exemplo, das memórias GDDR3
para as GDDR4. Desde que os custos permitam e a GPU usada seja
compatível com o tipo de memória escolhido, esta é também a forma mais
simples, já que basta fazer pequenas alterações no projeto.

A segunda é utilizar chips de memória que operam a freqüências mais
elevadas. Ao utilizar memórias GDDR3 com freqüência efetiva de 1.5 GHz, por
exemplo, o fabricante aumenta em quase 50% o desempenho de acesso à
memória em relação ao que teria ao usar memórias GDDR3 de 1.0 GHz. O
problema em utilizar memórias mais rápidas é que elas são mais caras e
consomem mais energia.

A terceira é aumentar o número de trilhas de dados, ampliando o barramento
com a memória de 256 bits para 512 bits, por exemplo. Dobrando o número de
trilhas, dobra-se a taxa de transferência, sem nenhum efeito colateral do ponto
de vista do desempenho. O problema é que usar mais trilhas torna a produção
da placa muito mais cara e torna necessário usar também o dobro do número
de chips de memória.

Como as três coisas envolvem aumento de custos, os fabricantes procuram
encontrar o melhor balanço entre custo e desempenho dentro de cada faixa de
preço. Placas de baixo custo utilizam tipicamente barramentos de 64 ou 128
                                                                           809
bits e chips de memória de freqüência mais baixa, enquanto placas mais caras
utilizam barramentos de 256, 384 ou mesmo 512 bits, populados por chips
mais rápidos, o que acaba resultando em um ganho exponencial.

A GeForce 8500 GT, por exemplo, utiliza chips de memória DDR2 comuns, que
operam a 800 MHz e são ligados à GPU através de um barramento de 128 bits,
o que resulta em um barramento de 12.8 GB/s. A GeForce 8800 GTX, por sua
vez, utiliza chips de memória GDDR3, que operam a uma freqüência efetiva de
1.8 GHz e são ligados à GPU através de um barramento de 384 bits, o que
oferece um barramento de impressionantes 86.4 GB/s.

DirectX e OpenGL

Antigamente (na época do MS-DOS), os jogos acessavam diretamente os
recursos da placa de vídeo. Isso obrigava os desenvolvedores a criarem rotinas
separadas para o uso de cada tipo de placa disponível, o que dificultava o
desenvolvimento e limitava os recursos que podiam ser utilizados. E olhe que
ainda estamos falando de jogos 2D simples, como, por exemplo, o antigo
Warcraft 2.

Criar jogos 3D manipulando diretamente os recursos do hardware seria
inviável, devido à complexidade do trabalho. Surgiram então APIs para a
criação de gráficos 3D, que facilitam o trabalho do desenvolvedor, oferecendo
um conjunto de comandos e recursos padronizados, que podem ser usados em
qualquer placa 3D compatível. Passa então a ser responsabilidade do
fabricante tornar sua placa compatível com as APIs existentes e disponibilizar
drivers.

A primeira API 3D proeminente foi o Glide, que era suportado apenas pelas
antigas placas da linha Voodoo, da 3dfx. É possível rodar jogos antigos, que
utilizam o Glide em placas da nVidia ou da ATI utilizando programas
conversores, os glide-wrappers, que são integrados aos drivers. Eles eram
importantes no final da década de 1990, mas são irrelevantes hoje em dia, já
que o uso do Glide foi a muito abandonado. Atualmente, temos a
predominância de duas APIs: o Direct 3D (que faz parte do DirectX) e o
OpenGL.

A grande vantagem do OpenGL é que ele é um padrão aberto e
multiplataforma, o que permite que os jogos sejam portados para o Linux e
outras plataformas sem uma grande dificuldade. Um exemplo são os jogos da
ID Software, que possuem todos versão Linux. Neles, a instalação é feita
usando os mesmos CDs da versão Windows, você precisa apenas baixar o
executável do game para Linux, disponível para download. É possível também
rodar jogos DirectX no Linux, através do Cedega (disponível no
http://transgaming.com) ou do Wine, mas neste caso a compatibilidade é
limitada e existe sempre uma pequena perda de desempenho.

O OpenGL é muito usado também em aplicativos profissionais. Existem
inclusive linhas de placas 3D destinadas a uso profissional, como as nVidia
Quadro, que oferecem otimizações diversas e drivers OpenGL certificados.



                                                                          810
O Direct3D, por sua vez, é a API mais usada em jogos. O Direct3D faz parte do
DirectX, que é, na verdade, um conjunto de APIs, cada uma com uma função
específica relacionada a multimídia. O Direct3D é a API específica para a
geração de gráficos 3D.

Como tudo na informática, o DirectX foi evoluindo e incorporando novas
funções desde sua introdução, no final de 1995. Com o passar do tempo, os
desenvolvedores de jogos passaram a incluir suporte às novas versões e a
lentamente abandonar o suporte às versões antigas. Como as novas versões
do DirectX exigem, quase sempre, modificações não apenas nos softwares,
mas também nas placas 3D, a versão do DirectX suportada pela placa tornou-
se uma especificação importante, já que está diretamente relacionada com a
compatibilidade da placa com os jogos atuais.

O DirectX 9 é suportado pelas placas nVidia da série GeForce FX, GeForce 6 e
GeForce 7 e pelas placas ATI baseadas nos chipsets das famílias R300, R400
e R500, enquanto o DirectX 10 é suportado pelas placas da série GeForce 8 e
pelas baseadas no chipset ATI R600 (e derivados). As placas onboard com
chipset Intel GMA X3000 também suportam o DiretX10, embora o desempenho
seja fraco.

Atualmente (final de 2007) a adoção do DirectX 10 ainda está engatinhando e
todos os jogos que já utilizam a nova API conservam a compatibilidade com o
DirectX 9, de forma a manter a compatibilidade com as placas antigas. De
qualquer forma, a adoção tende a crescer nos próximos anos.

Existem muitos casos de jogos recentes que mantém compatibilidade com o
DirectX 8, ou até mesmo com o DirectX 7. Isso é feito inserindo diferentes
blocos de código dentro do aplicativo, que são utilizados de acordo com a
versão disponível. Isso permite que o game rode mesmo em placas antigas
(limitado ao desempenho da placa, naturalmente), mas sempre existem
grandes diferenças de qualidade de imagem entre as diferentes versões do
DirectX usadas.

Para complicar um pouco mais, existe ainda a questão das versões do Shader
Model (a API responsável pelo uso dos shaders), outro fator relacionado à
qualidade de imagem e à compatibilidade das placas. O DirectX 9.0 (lançado
em 2002) inclui suporte ao Shader Model 2.0, o DirectX 9.0c (lançado em 2004)
ao Shader Model 3.0, enquanto o DirectX 10 (lançado no início de 2007,
juntamente com o Vista) oferece suporte ao Shader Model 4.0. Cada nova
versão oferece mais recursos de programação, que possibilitam a criação de
efeitos mais complexos (o que melhora a qualidade visual dos jogos), mas é
necessário que exista compatibilidade por parte da placa de vídeo.

O grande problema do DirectX 10 é que ele é uma API quase que
completamente nova, profundamente amarrada ao Windows Vista. Criar uma
versão para o Windows XP não seria apenas contra os interesses comerciais
da Microsoft (que deseja que os usuários migrem para o Vista o mais rápido
possível), mas também muito difícil tecnicamente, de forma que é bastante
improvável que isso venha a acontecer.


                                                                          811
O Vista, por sua vez, é um sistema operacional muito mais complexo e mais
pesado (sobretudo na questão do uso de memória), o que faz com que os
jogos quase sempre rodem com um FPS mais baixo. Como o DirectX 10
implementa novos efeitos, a placa precisa realizar mais processamento para
renderizar cada frame, o que resulta em uma redução ainda maior no FPS.

No final das contas, você acaba precisando de um hardware muito mais
poderoso para rodar os mesmos jogos em modo DirectX 10, sobre o Vista (com
uma qualidade visual um pouco melhor), do que para rodá-los em modo
DirectX 9.0c sobre o XP, o que tem retardado a adoção do DirectX 10.

Antialiasing e Anisotropic Filtering

Antes de ser renderizada, a imagem 3D é uma espécie de desenho vetorial,
que pode ser exibido em qualquer resolução, sem perda de qualidade. O
problema é que o monitor possui uma resolução definida, de forma que a placa
de vídeo precisa renderizar a imagem de acordo com a limitação de resolução
do monitor, muitas vezes descartando detalhes das imagens.

A partir do ponto em que a placa de vídeo tem potência suficiente para
renderizar os frames a uma resolução superior à do monitor, você pode ativar o
uso de um algoritmo de antialiasing, o que permite aplicar parte dos ciclos
ociosos em melhorar a qualidade das imagens exibidas.

Os algoritmos de antialiasing são chamados genericamente de "FSAA" (Full-
Screen Antialiasing). A idéia básica é suavizar as imagens (sobretudo os
contornos), reduzindo a granulação e tornando a imagem mais "lisa", de forma
que ela aparente uma resolução maior que a real:




Temos aqui um exemplo de aplicação do antialiasing. Nos dois screenshots
temos exatamente a mesma cena, mas você pode perceber que a da direita
ficou com os contornos mais suaves e uma qualidade geral muito melhor:




                                                                          812
813
A primeira geração foi o SSAA (SuperSampling Antialiasing), suportado desde
as primeiras versões das placas nVidia GeForce e ATI Radeon. A idéia por trás
do SSAA é bastante simples: renderizar imagens 2, 4 ou 8 vezes maiores do
que a resolução do monitor e em seguida reduzí-las até a resolução que será
exibida, aplicando um algoritmo de antialiasing. Com isso os detalhes são
suavizados e a imagem preserva a maior parte dos detalhes da imagem inicial.

O grande problema é que usar o SSAA causa uma grande redução no
desempenho da placa de vídeo, já que ela passa a essencialmente renderizar
as imagens em uma resolução muito mais alta. Ao usar o valor "4X", a placa
passa a renderizar imagens 4 vezes maiores que a resolução do monitor
(1600x1200 ao usar 800x600, por exemplo), o que reduz o FPS a
aproximadamente um quarto do valor original (com exceção de casos em que o
gargalo seja o processador, e não a placa de vídeo). Isso faz com que o SSAA
seja utilizável apenas ao usar uma placa muito parruda, ou ao rodar jogos mais
antigos.

A segunda geração é o MSAA, suportado a partir das GeForce 3. No MSAA o
cálculo de antialiasing é feito de forma muito mais inteligente, com a placa
aplicando processamento apenas em pontos da imagem onde eles podem
resultar em ganho de qualidade. Por exemplo, se dentro de um polígono
existem 4 pixels idênticos, eles são processados como se fossem apenas um e
o mesmo valor de cor é aplicado aos quatro. No SSAA eles seriam
processados como 4 pixels separados, o que consumiria 4 vezes mais
processamento.

Com a aplicação de sucessivas melhorias no algoritmo do MSAA, tanto por
parte da nVidia, quanto por parte da ATI, chegamos ao ponto atual, onde as
placas são capazes de aplicar o algoritmo de Antialiasing com uma perda de
desempenho relativamente pequena, se comparada ao que tínhamos na época
do SSAA.

O Anisotropic Filtering, por sua vez, é uma técnica usada para melhorar a
qualidade das texturas quando aplicadas sobre objetos de formato irregular
(como, por exemplo, a textura aplicada sobre o piso, em jogos de primeira
pessoa), evitando que a qualidade e a nitidez da textura variem de acordo com
a proximidade. Veja um exemplo:




                         Anisotropic Filtering Ativado

                                                                          814
Anisotropic Filtering Desativado

Tudo começou com o Bilinear Filtering, efeito usado em jogos antigos, onde a
mesma textura é usada em toda a extensão do objeto, utilizando um simples
algoritmo de zoom. O Bilinear Filtering é bastante leve, mas resulta em uma
qualidade visual ruim, pois faz com que a parte mais próxima fique pixerizada.
Em seguida veio o Trilinear Filtering, que utiliza diferentes versões da mesma
textura (com diferentes tamanhos) para obter transições mais suaves. Dessa
forma, uma versão maior da mesma textura pode ser utilizada na parte mais
próxima e uma versão reduzida pode ser utilizada na parte mais distante,
amenizando o problema. Naturalmente, o uso do Trilinear Filtering consome
mais recursos da placa, sobretudo mais memória, mas a diferença não é tão
grande assim.

O Anisotropic Filtering segue o mesmo princípio, mas utiliza um número muito
maior de versões da mesma textura, combinado com algoritmos adicionais.
Quando ativado, você pode configurar o Anisotropic Filtering com valores de 2x
(duas vezes mais versões de cada textura do que no Trilinear Filtering) a 16x
(16 vezes mais). Cada aumento no valor corresponde a um pequeno ganho de
qualidade, mas a partir de 8x a diferença torna-se muito pequena.

Ativar o Anisotropic Filtering faz com que a placa passe a armazenar um
volume muito maior de texturas, o que aumenta tanto o volume de memória de
vídeo usada, quanto o volume de dados transferidos. Isso faz com que ele
tenha um impacto maior sobre o desempenho em placas de baixo custo, que
possuem pouca memória e utilizam barramentos de 64 ou 128 bits, do que em
placas mais parrudas, que possuem mais memória e utilizam barramentos de
256 bits ou mais.

SLI

As primeiras placas a suportarem o uso do SLI (nesse caso ainda o antigo
"Scan Line Interleave") foram as placas Voodoo 2 (ainda em versão PCI) da
3dfx, que utilizavam um sistema primitivo, onde as duas placas eram
alimentadas com os mesmos dados e uma delas renderizava as linhas pares e
a outra as linhas ímpares de cada frame. Um cabo pass-thru interligava as
duas placas, através do próprio conector VGA, permitindo que a imagem final
fosse gerada e enviada ao monitor.


                                                                           815
A 3dfx acabou indo à falência no final do ano 2000 e a propriedade intelectual
relacionada a seus produtos foi adquirida pela nVidia. Isso permitiu que o SLI
ressurgisse como uma tecnologia para interligar duas placas nVidia, dividindo o
processamento e assim aumentando o desempenho.

Para usar o SLI, é necessário utilizar uma placa mãe com chipset nVidia,
equipada com dois slots PCI Express x16. Inicialmente, o SLI era suportado
também por placas-mãe com chipsets de outros fabricantes, mas logo a nVidia
decidiu incluir travas nos drivers, de forma que ele fosse usado apenas em
conjunto com seus próprios chipsets. Existe a possibilidade de a Intel ou outros
fabricantes licenciarem a tecnologia no futuro, mas isso já é exercício de
futurologia.

Entre as placas que suportam SLI estão diversas versões das GeForce 6800,
7300, 7600, 7800, 7900 e 7950, além das 8500, 8600 e 8800. No SLI, ao invés
de um cabo pass-thru, as duas placas são ligadas digitalmente através de um
bridge:




                  Bridge SLI interligando duas placas nVidia

Toda a comunicação entre as duas placas é feita diretamente e apenas a
primeira placa é ligada ao monitor. A segunda fica fazendo seu trabalho
silenciosamente, recebendo tarefas a processar e devolvendo quadros já
renderizados. A exceção fica por conta das GeForce 6600, 6600 LE, 7100 GS
e outras placas low-end, que podem trabalhar em SLI sem o uso do bridge.
Como essas placas usam pouca banda, toda a comunicação pode ser feita
diretamente através do barramento PCI Express. No caso das GeForce 8800
GTX (e outras placas que serão lançadas no futuro), temos o inverso, com o
uso de dois bridges ao invés de um, de forma a ampliar o barramento de
comunicação entre as duas placas:




                                                                            816
Bridge SLI duplo da GeForce 8800 GTX

Nas Voodoo 2, SLI era a abreviação de "Scan-Line Interleave", mas nas nVidia
o significado mudou para "Scalable Link Interface", indicando as mudanças no
funcionamento do sistema.

O trabalho de renderização pode ser dividido entre as duas placas de duas
formas distintas. A primeira, chamada de SFR (Split Frame Rendering) consiste
em dividir a cena em duas partes, onde a primeira placa fica com a parte
superior e a segunda com a inferior. A divisão é baseada na carga de
processamento necessária e é ajustada de forma dinâmica pelo driver, por isso
não é necessariamente meio a meio. Você pode ver uma indicação visual da
divisão, atualizada em tempo real, ativando a opção "Show GPU load
balancing" na configuração do driver. As duas barras verticais indicam o nível
de carregamento de cada uma das duas placas e a linha horizontal indica o
ponto da imagem onde está sendo feita a divisão.

A segunda é o AFR (Alternate Frame Rendering), onde cada placa processa
um frame completo, de forma alternada. Por ser mais simples, esta é a opção
que acaba sendo usada por padrão na maioria dos jogos. Ao usar a opção de
visualização em conjunto com o AFR, a linha horizontal fica exatamente no
meio da tela e apenas as barras que indicam o carregamento das duas placas
se movem:




                                                                          817
Nas versões atuais do driver está disponível o "Alternate Frame Rendering 2",
uma versão otimizada do algoritmo, que oferece um melhor desempenho em
vários aplicativos e jogos. Existe ainda a opção "SLI Antialiasing" (onde a
segunda placa é usada apenas para auxiliar na aplicação do algoritmo de
antialiasing) e a "Single-GPU Rendering", que permite desativar o SLI em
casos de jogos que apresentem problemas de compatibilidade diversos ou
simplesmente rodem mais rápido com o SLI desativado (que é o caso de muito
títulos antigos, não otimizados).

Sob vários pontos de vista, usar duas placas em SLI é similar a usar um
processador dual-core. Embora títulos otimizados ofereçam um grande ganho
de desempenho, muitas vezes próximo do dobro, a maioria apresenta ganhos
menores, de apenas 50 a 70%, e muitos jogos antigos apresentam ganhos
muito menores, ou até mesmo uma pequena perda.

Isso faz com que o uso do SLI acabe ficando restrito a quem realmente quer o
melhor desempenho possível e está disposto a pagar caro por isso. Salvo raras
exceções, não vale muito à pena tentar usar duas placas antigas com o
objetivo de atingir o desempenho de uma placa mais atual, pois, mesmo
combinadas, elas acabarão oferecendo um desempenho inferior ao da placa de
geração superior e custando mais caro.

Por exemplo, uma única GeForce 7800 GTX supera facilmente duas GeForce
6800 Ultra em SLI (com a vantagem de consumir menos energia) e o mesmo
acontece ao comparar uma única GeForce 8800 GTX com duas 7900 GTX (ou
duas 8600 GTS) em SLI. A menos que você conseguisse comprar as duas
6800 Ultra ou as duas 7900 GTX a um preço muito baixo (o que é improvável),
a 7800 GTX ou a 8800 GTX em carreira solo seriam uma opção muito melhor.



                                                                          818
É importante também colocar na conta o custo da placa mãe (já que as placas
com suporte a SLI são quase sempre modelos mais caros, destinados a
entusiastas) e também o gasto adicional com a fonte de alimentação (já que
você precisará de uma fonte de maior capacidade).

Continuando, para que o SLI seja ativado em cada game é necessário o uso de
um profile, que inclui as configurações necessárias. Sem o profile, o game roda
sem tirar proveito do SLI.

O driver da nVidia incorpora um conjunto de profiles com as melhores
configurações para um número relativamente grande de títulos (a lista está
disponível no SliZone: http://www.slizone.com/object/slizone2_game.html). Eles
são aplicados automaticamente ao rodar títulos oficialmente suportados. Para
os demais, você deve criar um profile manualmente, especificando o modo SLI
desejado:




Não é obrigatório utilizar duas placas idênticas para ativar o SLI. Embora não
seja uma solução exatamente livre de falhas, é possível usar duas placas de
fabricantes diferentes, desde que elas sejam baseadas no mesmo chipset.
Você poderia utilizar uma GeForce 8800 GTX em conjunto com uma 8800
GTS, por exemplo, já que ambas são baseadas no mesmo chipset, o G80. Em
muitos casos, você pode encontrar incompatibilidades diversas ao usar placas
de diferentes fabricantes, mas em outros tudo funciona como esperado.

O problema em utilizar duas placas diferentes em SLI é que o driver precisa
"nivelar por baixo", reduzindo o clock da placa mais rápida e desativando a
memória adicional, de forma que as duas placas ofereçam o mesmo volume de
processamento e de memória de vídeo.

                                                                           819
O SLI também não está limitado apenas a duas placas de vídeo.
Tecnicamente, é possível interligar 4 ou mais placas, como é o caso do Quad-
SLI, onde temos dois pares de placas, sendo que cada par é interligado através
de um barramento interno e os dois pares são ligados através do bridge. É
possível que futuramente surja a possibilidade de usar 8 placas, mas seria uma
solução muito dispendiosa. No caso das GeForce 8800 GTX, que possuem
dois conectores SLI, é possível também interligar três placas (desde que você
utilize uma placa-mãe com 3 slots PCI Express x16, naturalmente), embora
esta seja uma configuração relativamente incomum.

CrossFire

O CrossFire é a resposta da ATI ao SLI. Embora as duas tecnologias não
sejam relacionadas e o funcionamento interno seja diferente, a necessidade
acabou fazendo com que as soluções adotadas pelos dois fabricantes fossem
bastante similares.

Veja a questão dos algoritmos usados para dividir a carga entre as duas
placas, por exemplo. No SLI são utilizados os modos SFR (onde a cena é
dividida em dois pedaços) e AFR (onde os frames são processados pelas duas
placas de forma intercalada). No CrossFire temos os modos AFR (que funciona
da mesma forma que no SLI), o modo "Scissor", onde a cena é dividida, de
forma muito similar ao SFR e o SuperTiling (onde a imagem é dividida em
quadrados de 32x32 pixels, o que oferece um melhor desempenho que o modo
Scissor em muitos jogos), que é o único modo realmente diferente.

Com relação à configuração, o CrossFire oferece a vantagem de não utilizar
profiles. Você simplesmente ativa o modo multi-VPU na configuração do driver
e a segunda placa passa a ser usada em todos os jogos que rodar. A
desvantagem dessa abordagem é que a falta de testes individuais para cada
game (como faz a nVidia ao elaborar os profiles) acaba levando ao
aparecimento de mais problemas de compatibilidade.

Na leva inicial de placas, lançadas a partir de 2005, incluindo as Radeon x800,
x850, x1800 e x1900, usar o modo CrossFire era mais complicado, pois não
bastava simplesmente comprar duas placas baseadas no mesmo chipset. A
placa "master" precisava ser uma placa "CrossFire Edition", uma variação com
o conector especial, que podia ser combinada com uma placa convencional da
mesma série. Naturalmente, as placas CrossFire Edition eram mais caras e
muito mais difíceis de encontrar, sobretudo aqui no Brasil, o que tornava o uso
do CrossFire inviável financeiramente.

A partir das RADEON X1950 Pro e X1650 XT, a ATI introduziu uma solução
mais elegante, onde as duas placas trocam informações através de um par de
bridges, muito similar ao usado nas placas da nVidia. Temos aqui duas fotos,
mostrando o sistema antigo, com o cabo Y (à esquerda) e o sistema novo,
utilizando os bridges:




                                                                           820
A principal vantagem do CrossFire em relação ao SLI é que ele é suportado
também por algumas placas-mãe com chipset Intel, além das próprias placas
com chipset ATI. Entretanto, com a aquisição da ATI por parte da AMD, não se
sabe até quando isso vai durar, já que, do ponto de vista da Intel, o CrossFire
passou a ser o padrão da concorrente.

TurboCache e HyperMemory

O TurboCache é uma tecnologia desenvolvida pela nVidia, que permite que a
placa de vídeo utilize parte da memória RAM do sistema como extensão da
memória de vídeo. Isso permite criar placas de baixo custo, com uma pequena
quantidade de memória dedicada (128, 64, 32, ou mesmo 16 MB), onde a
placa de vídeo utiliza memória compartilhada para completar 128, 256 ou até
mesmo 512 MB de memória.

Ele funciona de forma diferente do AGP GART, o recurso de acesso à memória
oferecido pelo barramento AGP, pois permite que a memória principal seja
efetivamente usada como uma extensão da memória de vídeo, armazenando
qualquer tipo de informações e não apenas texturas. Outra vantagem é que um
slot PCI Express x16 oferece muito mais banda do que um slot AGP, o que
agiliza as transferências, reduzindo a perda de desempenho por utilizar
memória compartilhada.

É possível encontrar o TurboCache em diversas placas PCI Express, incluindo
as GeForce 6200, GeForce 7100, GeForce 7200, GeForce 7300, GeForce
7400, GeForce 8400GS e diversos chipsets da série GeForce Go, destinados a
notebooks. Não é comum encontrá-lo em placas mais caras, simplesmente
porque seu uso não faz sentido em placas com mais memória. Apesar do nome
"Turbo Cache", ele não é um recurso destinado a melhorar o desempenho da
placa (em relação a uma placa com mais memória dedicada), mas
simplesmente possibilitar o desenvolvimento de placas de baixo custo, que
sejam mais rápidas do que placas onboard (onde é usada apenas memória
compartilhada). A pequena quantidade de memória dedicada é usada como
uma espécie de "cache" para a memória compartilhada, daí o nome.
                                                                           821
A ATI utiliza o HyperMemory, uma tecnologia muito similar, que também se
baseia no uso de uma pequena quantidade de memória de vídeo dedicada,
combinada com uma quantidade maior de memória compartilhada. Ele é
encontrado nas placas da série HM e também em algumas placas de baixo
custo, da série LE, além de nos modelos mais básicos da Mobility Radeon,
destinada a notebooks.

Você pode classificar as placas com o TurboCache ou o HyperMemory como
uma classe intermediária entre as placas onboard e as placas mais caras, com
mais memória dedicada. A principal armadilha é que os fabricantes muitas
vezes vendem as placas (ou os notebooks baseados nas versões mobile das
mesmas) anunciando a quantidade de memória total, incluindo tanto a memória
dedicada quanto a memória compartilhada. Uma determinada placa pode ser
anunciada como tendo "512 MB" de memória, quando na verdade tem apenas
64 MB e pode utilizar mais 448 MB de memória compartilhada.

Um exemplo de placa que utiliza o TurboCache é a GeForce 6200 TC, lançada
em 2005. Ela é uma placa bastante modesta, baseada no chipset NV44, uma
versão reduzida do NV43 usada nas GeForce 6600. A placa pode vir com 16,
32, 64 ou 128 MB de memória DDR (1) dedicada, operando à 550 ou 700 MHz
e ligada à GPU através de um barramento de 32 ou 64 bits. Esse arranjo
resulta em um barramento com a memória de vídeo de 2.2 GB/s (550 MHz, 32
bits) a 5.6 GB/s (700 MHz, 64 bits), que é, em muitos casos, mais estreito que
o barramento com a memória principal (que pode ser de até 4 GB/s, já que o
acesso é feito através do barramento PCI Express). Nesses casos, a principal
vantagem da memória onboard passa a ser o tempo de latência mais baixo. A
placa pode utilizar 128 ou 256 MB de memória compartilhada, de acordo com o
modelo e a versão dos drivers usados.




           GeForce 6200 TC, com 64 MB e suporte ao TurboCache



                                                                          822
Chipsets 3D

O principal componente da placa 3D é a GPU, como bem sabemos. Apesar
disso, é muito comum o uso do termo "chipset" no lugar de "GPU". O principal
motivo é que o termo "chipset" é mais genérico, indicando o conjunto de
componentes que são comuns às placas de vídeo da mesma família, incluindo
não apenas a GPU, mas também outros chips que façam parte do projeto. É
muito comum que diferentes placas, sem falar das inúmeras variações
produzidas pelos diferentes fabricantes, sejam produzidas utilizando o mesmo
chipset.

Tanto a GeForce 8400 GS quanto a GeForce 8500 GT, por exemplo, são
baseadas no chipset G86. Apesar disso, o desempenho das duas placas é bem
diferente, pois a 8400 utiliza um barramento com a memória de apenas 64 bits,
enquanto a 8500 utiliza um barramento de 128 bits.

Tanto a nVidia quanto a ATI costumam lançar novas arquiteturas a cada 12 ou
18 meses, com o lançamento de modificações e versões atualizadas dos
chipsets entre os releases principais. Como de praxe, existem casos de atrasos
e até mesmo de lançamentos antecipados para responder a um produto do
concorrente, mas a meta é normalmente essa.

No caso da nVidia tivemos o NV40, lançado em 2004, o G70, lançado em 2005
e o G80, lançado no final de 2006. Estes três chips deram origem a um grande
número de subversões, gerando toda a linha de placas nVidia que temos visto
nos últimos anos.

Uma curiosidade é que as linhas de placas são, quase sempre, construídas "de
cima para baixo", com as placas mais rápidas sendo lançadas primeiro e os
modelos de baixo custo sendo lançados nos meses seguintes. Por exemplo, a
GeForce 7800 GTX (o modelo high-end) foi lançada em junho de 2005,
enquanto a GeForce 7200 GS (um dos modelos mais baratos dentro da série)
foi lançada apenas em abril de 2007, quase dois anos depois. Isso é feito de
forma a maximizar os lucros dos fabricantes, já que eles trabalham com
margens de lucro muito maiores nas placas mais caras.

Outro fator que é importante enfatizar é que tanto a nVidia quanto a ATI não
produzem um grande volume de placas. Eles simplesmente desenvolvem os
chipsets e placas de referência e terceirizam a maior parte da produção para
outros fabricantes. As freqüências de operação para as GPUs e as memórias
das placas que cito aqui são simplesmente as especificações de referência,
que podem ser alteradas livremente pelos fabricantes das placas. É muito
comum encontrar placas de baixo custo, que utilizam módulos de memória
mais lentos, ou mesmo a GPU operando a uma freqüência inferior (de forma a
reduzir a dissipação de calor e assim possibilitar o uso de um cooler mais
barato) e também placas "diferenciadas", que utilizam módulos de memória
mais rápidos e GPUs overclocadas de forma a oferecer um desempenho
superior ao das concorrentes.



                                                                          823
NV40

O NV40 é o chipset usado na série GeForce 6, lançado em abril de 2004. Ele é
composto por 220 milhões de transístores, utiliza um barramento de 256 bits
com a memória e é produzido usando uma técnica de 0.13 micron.
Internamente, ele é composto por 16 unidades de processamento de pixels
(que resultam em um fill rate de 6400 megatexels a 400 MHz), 16 unidades de
pixel shader, 16 unidades de processamento de texturas e 6 unidades de
vertex shader.

As primeiras placas baseadas no NV40 ainda usavam o barramento AGP, mas
logo foi feita a migração para o PCI Express, através do uso de um bridge
AGP>PCIe (chamado pela nVidia de HSI, ou "High Speed Interconnect"),
incluído nos chipsets do NV42 em diante.

O uso do bridge resulta em uma pequena redução de desempenho em relação
às placas AGP, devido à conversão dos sinais, embora a diferença na prática
seja muito pequena. Note que isso afeta apenas as placas GeForce 6, já que a
partir da geração seguinte a nVidia passou a desenvolver chips com suporte
nativo ao barramento PCI Express.

O NV40 original foi usado nas placas GeForce 6800 (256 MB, GPU a 325 MHz,
memória a 700 MHz), GeForce 6800 GT (256 MB, GPU a 350 MHz e memória
a 1.0 GHz) e GeForce 6800 Ultra (256 MB, GPU a 400 MHz e memória a 1.1
GHz), todas em versão AGP. A GeForce 6800 original utilizava memórias DDR
convencionais, mas a GT e a Ultra utilizavam memórias GDDR3, o que
acentuou a diferença de desempenho.

Estes três modelos custavam (na época de lançamento) entre 449 e 599
dólares, seguindo a estratégia de lançar os modelos mais rápidos dentro da
série primeiro, de forma a vender o máximo de unidades a preços altos e só
então lançar os modelos de baixo custo.




       O chipset NV40 e os chips de memória em uma GeForce 6800 Ultra


                                                                         824
Ao longo da segunda metade de 2004 e o ano de 2005, o NV 40 deu origem a
5 variações: NV41, NV42, NV43, NV44 e NV45. Todas elas suportam o Shader
Model 3.0 e são compatíveis com o DirectX 9.0c. Isso faz com que, embora o
desempenho seja bem diferente, elas estejam apenas um degrau abaixo das
GeForce 8 atuais (que suportam o Shader Model 4 e o DirectX 10) em termos
de compatibilidade. Até que os títulos que utilizam exclusivamente o DirectX 10
tornem-se norma (o que ainda deve demorar algum tempo), as placas da série
GeForce 6 ainda continuarão prestando bons serviços.

O NV41 é uma versão de baixo custo do NV40, que possui um número menor
de unidades de processamento. Ele inclui 12 unidades de processamento de
pixels, 12 unidades de pixel shader, 12 unidades de processamento de texturas
e 5 unidades de vertex shader, contra 16/16/16/6 do NV40.

O NV42, por sua vez, é uma versão do NV41 fabricada usando uma técnica de
0.11 micron, que inclui também suporte ao barramento PCI Express, através da
inclusão do bridge HSI. Embora o desempenho da GPU não seja diferente do
NV41, as placas baseadas no NV42 são capazes de operar a freqüências um
pouco mais altas em overclock, devido ao uso da nova técnica de fabricação.

Estes dois chipsets foram usados nas placas GeForce 6800 XT (256 MB, GPU
a 325 MHz e memória a 700 MHz), GeForce 6800 GTO (256 MB, GPU a 350
MHz e memória a 900 MHz) e GeForce 6800 GS (256 MB, GPU a 425 MHz e
memória a 1.0 GHz). Estas placas existiriam tanto em versão AGP quanto PCI
Express (as PCI Express utilizam o NV42) e, com exceção da 6800 XT (que
utiliza memórias DDR convencionais), também utilizavam memórias GDDR3.

Continuando, temos o NV43, que é basicamente um "meio NV40", com todas
as principais especificações reduzidas à metade. Ele possui apenas 8 unidades
de processamento de pixels, 8 unidades de pixel shader, 8 unidades de
processamento de texturas e 3 unidades de vertex shader, alimentadas por um
barramento de 128 bits com a memória. Naturalmente, a "poda" resultou em
uma grande redução no desempenho, mas a idéia era essa mesma, já que o
NV43 foi criado para ser um chipset de baixo custo.

Em seguida temos o NV44, uma versão ainda mais reduzida, usada em placas
de baixo custo, como as GeForce 6200. O NV44 possui apenas 77 milhões de
transístores (pouco mais de um terço do NV40) e é equipado com 4 unidades
de processamento de pixels, 4 de texturas, 4 de pixel shader e 3 unidades de
vertex shader (o único quesito em que ele não perde para o NV43). O
barramento com a memória também foi reduzido à metade, para apenas 64
bits.

O NV43 e o NV44 foram usados nas placas da série GeForce 6 de baixo e
médio custo, incluindo as GeForce 6200, 6200 TC, 6500, 6600, 6600 LE e
6600 GT.

As GeForce 6200 TC são as versões mais simples, baseadas no NV44. Elas
são placas de extremo baixo custo, baseadas no uso do TurboCache, onde a
GPU opera a 350 MHz e são usados apenas 16, 32, 64 ou 128 MB de memória
DDR dedicada, acessada através de um barramento de 32 ou 64 bits. Graças

                                                                           825
ao TurboCache, a placa pode utilizar memória compartilhada como
complemento para a pouca memória dedicada, mas o desempenho é ruim.

Embora sejam muito lentas se comparado às 6800, elas foram placas bastante
populares, devido ao baixo custo. Usando uma 6200 TC com 32 MB você pode
jogar Half Life 2 (a 800x600) a 55 FPS (em média), ou o Battlefield 2 (a
1024x760) a 40 FPS. Desde que você mantenha o Antialiasing, o Anisotropic
Filtering e outros efeitos desativados, a maioria dos títulos antigos rodam sem
maiores problemas, mas, naturalmente, o FPS nos títulos mais atuais é muito
baixo.

As GeForce 6200 (sem o "TC") são versões com mais memória dedicada. Elas
são também baseadas no NV44 (ou em uma versão castrada do NV43, onde
parte das unidades de processamento são desativadas, de forma que ele fique
com o mesmo número de unidades do NV44) e incluem 128 ou 256 MB de
memória DDR ou DDR2 dedicada, acessada através de um barramento de 64
bits ou 128 bits (de acordo com o modelo da placa). A freqüência da GPU e da
memória também varia de acordo com a série, podendo ser de 300 ou 350
MHz para a GPU e 400, 500 ou 533 MHz para a memória.

Toda essa variação dentro da série GeForce 6200 é justificável por esta ser a
série de baixo custo, onde a prioridade é cortar custos e não oferecer um bom
desempenho. Além das variações "oficiais" dentro da série existem variações
introduzidas pelos fabricantes, que em muitos casos aumentam a freqüência da
GPU, ou utilizam módulos de memória mais rápidos como uma forma de
diferenciar suas placas em relação às concorrentes. É por isso que reviews
com comparações de placas de diferentes fabricantes, baseadas no mesmo
chipset, são tão comuns.

As coisas melhoram a partir das GeForce 6600, que são baseadas na versão
"completa" do NV43. A série inclui a GeForce 6600 (128 ou 256 MB, GPU a
300 MHz e memória DDR a 500 MHz), GeForce 6600 DDR2 (256 MB, GPU a
350 MHz e memória DDR2 a 800 MHz) e GeForce 6600 GT (128 MB ou 256
MB, GPU a 500 MHz e memória GDDR3 a 1.0 GHz). A GeForce 6600 original
ainda usava memórias DDR, daí a baixa freqüência efetiva dos módulos, o que
limitava bastante o desempenho da placa. A 6600 GT, por sua vez, já utiliza
memórias GDDR3, que oferecem uma freqüência efetiva duas vezes maior e
tempos de acesso mais baixos.




                                                                           826
GeForce 6600 GT

Existiram ainda as GeForce 6500 (128 ou 256 MB, GPU a 350 ou 450 MHz e
memória a 550 ou 700 MHz) e 6600 LE (128 ou 256 MB, GPU a 300 MHz e
memória a 500 MHz), versões de baixo custo baseadas em uma versão
castrada do NV43, com apenas 4 unidades de processamento de pixels, pixel
shader e texturas, em vez de 8. A redução faz com que a queda de
desempenho em relação às GeForce 6600 seja maior do que a diferença de
clock sugere. A 6600 LE é especialmente lenta, quase no nível das 6200,
devido ao baixo clock da GPU e da memória.

Por estranho que possa parecer, o NV44 foi usado também na GeForce 7100
GS, a placa mais barata dentro da série GeForce 7. Nela o NV44 opera a 350
MHz, com a memória (DDR) a 667 MHz, o que resulta em um desempenho
pouca coisa superior ao de uma 6600 LE.

Finalmente, temos o NV45. Ao contrário do que a lógica sugere, ele não é uma
versão simplificada do NV44, mas sim uma versão atualizada do NV40, que
utiliza o barramento PCI Express, graças à inclusão do bridge HSI. Ele foi
utilizado nas versões PCI Express da GeForce 6800 GT e 6800 Ultra e também
na GeForce 6800 Ultra Extreme (256 MB, GPU a 450 MHz e memória a 1.2
GHz), que foi a placa mais rápida dentro da família GeForce 6.

G70

O G70 é o chip usado nas placas da série GeForce 7800. A arquitetura interna
é similar à do NV40 e, assim como ele, o G70 é compatível com o DirectX 9.0c
e o Shader Model 3.0. A grande diferença entre os dois é que o G70 possui
quase 50% mais poder bruto de processamento por ciclo de clock, com 24
unidades de pixel shader, 24 unidades de processamento de texturas e 8
unidades de vertex shader, formando um chip com 302 milhões de transístores.

Outra vantagem sobre o NV40 é que ele é fabricado em uma técnica de 0.11
micron, o que permite o uso de freqüências um pouco mais altas, além de
reduzir o consumo elétrico do chip. O G70 é também o primeiro chipset da

                                                                         827
nVidia a utilizar o barramento PCI Express nativamente, sem o uso do bridge
HSI usado nas placas da geração anterior. Também existem placas da série
GeForce 7 em versão AGP, mas neste caso utilizando um bridge PCI Express
> AGP, que reduz sutilmente o desempenho da placa, similarmente ao que
ocorre nas versões PCI Express das placas da série GeForce6.

Para não aumentar demasiadamente o custo de produção das placas, a nVidia
optou por manter o barramento de 256 bits com a memória usado no NV40,
aumentando a taxa de transferência apenas através do uso de chips de
memória mais rápidos. Isso limitou um pouco o desempenho das placas
baseadas no G70, impedindo que o chipset manifestasse todo o seu potencial
em diversas situações.

Uma característica do G70 é o uso de um número menor de ROPs do que de
unidades de texturas e unidades de pixel shader. Em vez de utilizar o mesmo
número, como no NV40 e derivados, o G70 possui apenas 16 ROPs, o que
significa uma proporção de 2 para 3 em relação às demais unidades, que são
24. A idéia por trás da redução é que nem todos os pipelines trabalham com
100% de carregamento todo o tempo, já que processam diferentes partes da
imagem. Um novo componente, o fragment crossbar, faz com que os dados
gerados pelos pipelines sejam enviados a qualquer um dos ROPs disponíveis.
Isso faz com que o número menor de ROPs absorva melhor a variação de uso
dos pipelines, permitindo que o poder de processamento disponível seja melhor
aproveitado. Este diagrama da nVidia ilustra o conceito:




                                                                         828
Naturalmente, um ROP para cada pipeline ofereceria um desempenho um
pouco melhor em diversas situações, mas em compensação exigiria o uso de
mais transístores, o que encareceria o chip. A idéia é que a arquitetura 24/16
do G70 oferece um desempenho superior ao que seria possível obter com uma
arquitetura 20/20, onde teríamos menos pipelines e os ROPs adicionais
acabariam sendo subutilizados. Esta idéia de utilizar uma arquitetura flexível,
no lugar de unidades fixas tem sido usada em uma escala cada vez maior nas
GPUs atuais.

O G70 foi utilizado na GeForce 7800 GT (256 MB, GPU a 400 MHz e memória
a 1.0 GHz), GeForce 7800 GTX (256 MB, GPU a 430 MHz e memória a 1.2
GHz) e na GeForce 7800 GTX 512 (512 MB, GPU a 550 MHz e memória a 1.7
GHz), sendo que as três eram equipadas com memórias GDDR3 e utilizavam o
barramento PCI Express. Pouco depois (fevereiro de 2006), foi lançada
também uma versão AGP, a GeForce 7800 GS (256 MB, GPU a 375 MHz e
memória a 1.2 GHz).

É importante notar que apenas a 7800 GTX e a 7800 GTX 512 são baseadas
na versão "completa" do G70. A 7800 GT é baseada em uma versão castrada,
com apenas 20 das unidades de pixel shader, 20 unidades de processamento
de texturas e 7 das unidades de vertex shader ativas, enquanto a 7800 GS usa
uma versão ainda mais limitada, com apenas 16 unidades de pixel shader, 16
unidades de texturas, 8 ROPs e 6 das unidades de vertex shader. O uso da
versão simplificada do G70, combinado com o clock mais baixo da GPU e o
uso do bridge, fazem com que a 7800 GS seja consideravelmente mais lenta
do que a 7800 GT.

Como de praxe, as versões originais da 7800 foram seguidas por versões mais
simples, baseadas em versões reduzidas do chip NV70 e em seguida também
por versões mais rápidas, baseadas no G71.

O G73 é uma versão reduzida do G70, que (assim como o NV43 em relação ao
NV40) teve todas as características reduzidas à metade. Ele possui apenas 12
unidades de pixel shader, 8 ROPs e usa um barramento com a memória de
apenas 128 bits. A única exceção fica por conta das unidades de vertex
shader, que são 5 (em vez de 4). Com a redução, o chip passou a ter apenas
170 milhões de transístores, o que, combinado com uma técnica de produção
de 0.09 micron, tornou o chip muito mais barato de se produzir, possibilitando o
surgimento da classe de placas intermediárias dentro da família GeForce 7.

A versão original do G73 é usada na GeForce 7600 GS (256 MB, GPU a 400
ou 560 MHz e memória DDR2 a 800 MHz) e na GeForce 7600 GT (256 MB,
GPU a 560 GHz e memória GDDR3 a 1.4 GHz). Temos também a GeForce
7300 GT (256 MB, GPU a 350, 400 ou 500 MHz e memória DDR2 a 667 ou
800 MHz), que é baseada em uma versão castrada, com 8 unidades de pixel
shader, 8 ROPs e 4 unidades de vertex shader.

O seguinte na escala de redução é o G72, um chip drasticamente reduzido,
que conserva apenas 4 unidades de pixel shader, 3 unidades de vertex shader
e utiliza um barramento com a memória de apenas 64 bits. Ele é utilizado nas
GeForce 7200 e 7300, placas de baixo custo e sucessoras diretas das 6200,

                                                                            829
que combinam o fraco desempenho do G72 e o limitado barramento com a
memória com o uso de chips de memória mais baratos e mais lentos.

O G72 "completo" é usado nas GeForce 7300 LE (128 ou 256 MB, GPU a 450
MHz e memória DDR a 667 MHz) e na GeForce 7300 GS (128 MB ou 256 MB,
GPU a 550 MHz e memória DDR2 a 810 MHz).

Por estranho que possa parecer, existe ainda uma versão castrada do chip,
ainda mais fraca, com apenas 2 unidades de pixel shader, 2 unidades de
texturas, 2 unidades de vertex shader e 2 ROPs. Ela é usada na GeForce 7200
GS (64, 128 ou 256 MB, GPU a 450 MHz e memória DDR a 667 ou DDR2 a
800 MHz) e na 7300 SE (128 MB ou 256 MB, GPU a 450 MHz e memória DDR
a 667 MHz). Existiram ainda alguns raros modelos das 7200 e 7300 com 512
MB, mas estas versões são mais caras e acabam se revelando uma opção
muito ruim, pois o estreito barramento com a memória impede que os 512 MB
sejam utilizados efetivamente.

Vale lembrar que estas 4 placas utilizam um barramento com a memória de
apenas 64 bits, que acentua a baixa freqüência de operação dos módulos. A
7300 LE, por exemplo, dispõe de um barramento com a memória de apenas
5.3 GB/s, cerca de 7 vezes menos que a 7800 GTX, que dispõe de um
barramento de 38.4 GB/s.

Por compartilharem da mesma arquitetura do G70 original, mesmo as GeForce
7200 são capazes de rodar todos os jogos baseados no DirectX 9.0c. O maior
problema é que a brutal redução nas unidades de processamento lhe obrigam
a desativar o Antialiasing e o Anisotropic Filtering e a jogar em resoluções mais
baixas. Desde que você saiba ajustar as configurações apropriadamente, o
game vai rodar basicamente da mesma forma, mas a qualidade visual será
muito inferior.

Concluindo, temos o G71, que deixei por último. Ele é uma versão
aperfeiçoada do G70, produzido usando uma técnica de 0.09 micron. Ele foi
usado na GeForce 7900 GS (256 MB, GPU a 450 MHz e memória a 1.32 GHz),
GeForce 7900 GT (256 MB, GPU a 450 MHz e memória a 1.32 GHz), GeForce
7900 GTO (512 MB, GPU a 650 MHz, memória a 1.32 GHz), GeForce 7900
GTX (512 MB, GPU a 650 MHz e memória a 1.6 GHz), GeForce 7950 GT (256
MB ou 512 MB, GPU a 550 MHz e memória a 1.4 GHz) e também na GeForce
7950 GX2 (2x512 MB, duas GPUs a 500 MHz e memória a 1.2 GHz), que é o
resultado da combinação de duas placas, ligadas internamente em SLI (e
possível ainda lugar duas 7950 GX2 em SLI, criando uma configuração Quad-
SLI, com um total de 4 placas).




                                                                             830
GeForce 7950 GX2

Você pode ter achado estranho que a 7900 GS e a 7900 GT utilizem as
mesmas freqüências tanto para a GPU quanto para a memória. A diferença
entre as duas é que a GeForce 7900 GS é baseada em uma versão castrada
do G71 que, assim como o G70 usado na 7800 GT, possui apenas 20 das
unidades de pixel shader e 7 das unidades de vertex shader ativas, enquanto a
7900 GS é baseada na versão completa do chip. Naturalmente, todas estas
placas utilizam memórias GDDR3. Dentro da série GeForce 7, apenas as
placas de mais baixo custo, incluindo as 7200, 7300 e a 7600 GS utilizam
memórias DDR ou DDR2 convencionais.

G80

O G70 não inclui nenhuma grande novidade em relação ao NV40. Ele é mais
rápido, por incluir mais unidades de processamento e ser capaz de operar a
freqüências um pouco mais altas, mas a arquitetura é basicamente a mesma.

O G80, por sua vez, é baseado em uma arquitetura bem diferente, com o uso
de unidades shader unificadas, chamadas de "stream processors", que são
basicamente unidades de ponto flutuante programáveis, que podem ser usados
como unidades de pixel shader, unidades vertex shader ou ainda desempenhar
outras funções, de acordo com a demanda. O G80 é também compatível com o

                                                                         831
DirectX 10 (o G70 é compatível com o 9.0c) e com o Shader Model 4.0, o que
representa uma garantia de compatibilidade com os jogos lançados no futuro.

A vantagem de utilizar os stream processors no lugar das unidades shader
dedicadas é que eles podem absorver melhor a variação na demanda por
processamento de pixel shaders ou de vertex shaders por parte do aplicativo,
sem gargalos. A desvantagem é que os stream processors são um pouco
menos eficientes do que unidades dedicadas, por isso o G80 inclui um número
muito maior deles.

Enquanto o G70 inclui 24 unidades de pixel shader e 8 unidades de vertex
shader (32 no total), o G80 utiliza um conjunto de 8 clusters, com 16 unidades
unificadas cada um, totalizando 128 stream processors. Dentro das unidades,
as ALUs (os circuitos responsáveis pelo processamento das instruções)
operam a uma freqüência maior que o restante do chip (o dobro ou mais), o
que representa uma melhoria importante. Com isso, a GPU da 8800 GTX, por
exemplo, trabalha a 575 MHz, mas as unidades de processamento trabalham a
1.35 GHz, o que resulta em um aumento expressivo no volume de dados
processados.

Na prática, é incorreto dizer que o G80 possui "128 unidades de shader
unificadas", já que cada cluster se comporta como uma única unidade.
Tecnicamente, o G80 possui apenas 8 unidades shader unificadas, embora
elas sejam muito maiores e executem muito mais processamento do que as
mais numerosas unidades dedicadas do G70. Isso explica o fato do G80
possuir apenas 6 ROPs (contra os 16 do G70). Embora em menor número, os
ROPs do G80 são muito mais "largos", executando muito mais processamento
por ciclo de clock do que os do G70.

O chip inclui ainda pequenas porções de cache dentro de cada cluster e
também dentro dos ROPs, que armazenam tanto instruções quanto texturas
que estão sendo processadas. Os caches possuem uma função muito similar
aos caches usados nos processadores, embora a eficiência seja mais limitada,
devido ao tipo de processamento executado pela placa de vídeo.




                                                                          832
Diagrama de blocos do G80

Naturalmente, um número tão grande de unidades de processamento
resultaram em um chip bastante complexo (e caro de produzir), com nada
menos do que 686 milhões de transístores. O aumento nas unidades de
processamento foi acompanhado por um aumento também no barramento com
a memória, que passou a ser de 384 bits (dividido em 6 canais independentes,
de 64 bits cada).

O G80 original é usado na GeForce 8800 GTX (768 MB, GPU a 575 MHz - com
as unidades de processamento a 1.35 GHz - e memória GDDR3 a 1.8 GHz) e
na GeForce 8800 Ultra (768 MB, GPU a 612 MHz - com as unidades de
processamento a 1.5 GHz - e memória GDDR3 a 2.16 GHz). A 8800 GTS (320
ou 640 MB, GPU a 500 MHz - com as unidades de processamento a 1.2 GHz -
e memória GDDR3 a 1.6 GHz) é baseada em uma versão castrada do chip,
com duas das unidades shader unificadas desativadas e um barramento com a
memória de apenas 320 bits. Como de praxe, o G80 foi seguido por duas
versões de baixo custo, o G84 e o G86.

O G84 é uma versão reduzida do G80. Ele é produzido usando a mesma
técnica de 80 nanômetros, mas possui apenas 2 unidades shader unificadas
(ou seja, 32 stream processors), o que resulta (a 675 MHz) em um fill rate de
10800 megatexels. Como de praxe, o barramento com a memória também foi
reduzido, para apenas 128 bits.

O G84 é usado na GeForce 8600 GT (256 MB, GPU a 540 MHz - com as
unidades de processamento a 1.18 GHz - e memória GDDR3 a 1.4 GHz) e na
GeForce 8600 GTS (256 MB, GPU a 675 MHz - com as unidades de
processamento a 1.45 GHz - e memória GDDR3 a 2.0 GHz).


                                                                          833
Embora o barramento com a memória seja mais estreito, o uso de chips
GDDR3 de 2.0 GHz faz com que a 8600 GTS disponha de um barramento de
respeitáveis 32 GB/s. Embora possuam apenas um quarto do poder de
processamento bruto das GeForce 8800 GTX, as GeForce 8600 GT e GTS são
de longe mais populares, já que são placas mais baratas. Do ponto de vista do
desempenho, elas não se comparam com as 8800, mas também não são de
todo ruins. A 8600 GTS consegue superar a 7800 GTX por uma pequena
margem na maioria dos jogos, com a vantagem de oferecer suporte ao DirectX
10.

Temos ainda o G86, usado nas placas mais baratas dentro da família, que
conserva apenas uma única unidade shader unificada (um oitavo do original,
com 16 stream processors) e utiliza um barramento com a memória de 128 bits
ou 64 bits, de acordo com a placa onde é usado.




   O chip G86 e os módulos de memória em uma GeForce 8400 GS (com o
                             cooler removido)

Ele é usado na GeForce 8500 GT (256 MB ou 512 MB, GPU a 450 MHz - com
a unidade de processamento a 900 MHz - e memória DDR2 a 800 MHz) e na
GeForce 8400 GS (256 MB, GPU a 450 MHz - com a unidade de
processamento a 900 MHz - e memória DDR2 a 800 MHz). A grande diferença
entre as duas é que a 8500 GT utiliza um barramento com a memória de 128
bits, enquanto a 8400 GS usa um barramento de 64 bits, o que reduz o
desempenho, mas em troca também torna a placa mais barata de se produzir.
De uma forma geral, a 8500 GT compete com a 7300 GT em desempenho, ou
seja, não espere muito. Ela é uma placa destinada a quem quer gastar o
mínimo possível e não a quem espera um desempenho satisfatório nos jogos
atuais.

R520

O R520 é o chipset usado nas placas ATI Radeon da série X1000. Ele oferece
suporte ao DirectX 9.0c e ao Shader Model 3.0 e concorre diretamente com o
G70 da nVidia com relação ao desempenho. Ele é o sucessor dos chipsets


                                                                         834
X300 e X420, usados nas placas ATI Radeon anteriores, incluindo as Radeon
9000 e as X800.

O R520 original possui 16 unidades de processamento de texturas, 16
unidades de pixel shader, 16 ROPs e 8 unidades de vertex shader, alimentadas
por um barramento de 256 bits com a memória. Ao contrário da nVidia, que
utilizava o bridge HSI nas versões do NV40 destinadas às placas PCI Express,
o que causava uma pequena redução no desempenho, a ATI optou por
produzir versões separadas do R520 (e derivados) em versão PCI Express e
AGP. Acessando o barramento de forma direta, as placas em versão PCI
Express realmente eram um pouco mais rápidas que as AGP.

Uma característica de todos os chips da série é que não são mais usados
"pipelines", como em placas mais antigas (onde as unidades de processamento
são projetadas em fila, de forma que as tarefas sejam processadas
sequencialmente). No R520 as unidades de pixel shader e de processamento
de texturas são independentes, controladas por um circuito que divide os
trabalhos a processar, tentando aproveitar o processamento das unidades da
forma mais eficiente possível. Isso melhora um pouco a eficiência do chipset
em relação aos projetos antigos, a um custo relativamente pequeno em termos
de aumento no número de transístores (e conseqüentemente no custo de
fabricação).

O R520 foi utilizado nas placas Radeon X1800 GTO (256 MB, GPU a 500 MHz
e memória GDDR3 a 1.0 GHz), Radeon X1800 XL (256 MB, GPU a 500 MHz e
memória GDDR3 a 1.4 GHz) e na Radeon X1800 XT (256 ou 512 MB, GPU a
625 MHz e memória GDDR3 a 1.5 GHz). A X1800 GTO original utilizava uma
versão castrada do R520, com apenas 12 unidades de texturas, 12 unidades
de pixel shader e 12 ROPs ativos, mas ela foi logo substituída por uma versão
atualizada (a X1800 GTO Rev.2), que vem com o R520 completo.

Assim como no caso da nVidia, a ATI utiliza a mesma família de chipsets em
diversas placas diferentes, que vão desde modelos de baixo custo e chipsets
integrados, até placas de alto desempenho. A receita é basicamente a mesma:
desenvolver diferentes versões do mesmo chipset, adicionando, removendo ou
desativando componentes internos, de forma a produzir as várias combinações
de custo e desempenho desejadas.

O RV515 é a versão mais simples. Ele possui apenas um quarto das unidades
de processamento do R520, contando com 4 unidades de texturas, 4 unidades
de pixel shader, 4 ROPs e 2 unidades de vertex shader. Apesar da redução de
4 para 1 das unidades de processamento, o R515 conserva um barramento
com a memória de 128 bits, o que ajuda a manter o desempenho das placas
em níveis aceitáveis, apesar dos lentos módulos SDRAM e GDDR2 usados.

Ele foi usado na Radeon X1300 (128 ou 256 MB, GPU a 450 MHz e memória
SDRAM a 250 MHz), Radeon X1300 Pro (256 MB, GPU a 600 MHz e memória
GDDR2 a 800 MHz) e na Radeon X1550 (256 MB, GPU a 550 MHz e memória
GDDR2 a 800 MHz), os modelos mais lentos e baratos dentro da série.




                                                                          835
O seguinte é o RV530, um chip intermediário, que possui 12 unidades de pixel
shader, 4 unidades de texturas, 4 ROPs e 5 unidades de vertex shader. O
reforço nas unidades de processamento de shaders faz com que as placas
baseadas no RV530 sejam muito mais rápidas do que as baseadas no R515
nos jogos mais atuais, que utilizam shaders de forma extensiva.

Ele é usado na Radeon X1300 XT (128, 256 ou 512 MB, GPU a 500 MHz e
memória GDDR2 a 800 MHz), Radeon X1600 Pro (128, 256 ou 512 MB, GPU a
500 MHz e memória GDDR2 a 800 MHz), Radeon X1600 XT (256 MB, GPU a
590 MHz e memória GDDR3 a 1380 MHz) e na Radeon X1650 Pro (256 ou 512
MB, GPU a 600 MHz e memória GDDR2 a 700 MHz).

As placas baseadas no RV530 oferecem um bom desempenho, considerando
que são placas relativamente baratas. A X1600 XT, por exemplo, era vendida
na mesma faixa de preço da GeForce 6600 GT, mas era capaz de superar a
6800 GT (consideravelmente mais cara) em diversas situações. O problema
com as placas da ATI, de forma geral, é que o desempenho ideal é atingido
apenas em jogos que utilizam o Direct 3D. O desempenho em jogos que
utilizam o OpenGL, e, sobretudo, o desempenho no Linux (utilizando os drivers
proprietários da ATI) é severamente penalizado, o que acaba se revelando um
ponto fraco importante.




                 Radeon X1650 Pro (com o cooler removido)

Apesar de possuir uma numeração inferior, a X1300 XT é bem mais poderosa
que a X1550, já que as duas placas utilizam quase a mesma freqüência de
operação e a 1300 XT é baseada no R530. Esse tipo de variação é muito
comum também nas placas da nVidia, onde as placas mais simples dentro de
uma nova linha são quase sempre muito mais lentas que as placas de médio e
alto desempenho da família anterior (como no caso das GeForce 7200 e da
8400 GS, que perdem para, respectivamente, as GeForce 6800 e 7900 por
uma grande margem), por isso é sempre importante checar as especificações.



                                                                         836
Dentro da nomenclatura adotada pela ATI, temos, em ordem hierárquica, as
versões "LE" e "SE" (séries de baixo custo), GT, RX e GTO (placas
intermediárias) e, finalmente as XL, XT e XTX, que são as placas high-end. A
categoria "Pro" era originalmente usada em relação às placas mais caras, mas
a partir das Radeon X1000 passou a ser usado em séries de baixo custo, ou
intermediárias, abaixo das GTO, XL, XT e XTX. Dois exemplos são a X1300
Pro, que é, dentro da série, superior apenas à X1300 regular e a x1950 Pro,
que ganha apenas da x1950 GT.

Continuando, outra versão intermediária é o RV560, que possui 24 unidades de
pixel shader, 8 unidades de texturas, 8 ROPs e 8 unidades de vertex shader,
mas conserva o barramento de 128 bits com a memória do RV530. Ele é usado
na Radeon X1650 XT (256 MB, GPU a 575 MHz e memória GDDR3 a 1.4
GHz).

O seguinte é o RV570, que possui 36 unidades de pixel shader, 12 unidades de
texturas, 12 ROPs e 8 unidades de vertex shader. Ao contrário do RV560, ele
utiliza um barramento de 256 bits, necessário para evitar que a comunicação
com a memória se tornasse um gargalo.

Ele foi utilizado na Radeon X1950 GT (256 ou 512 MB, GPU a 500 MHz e
memória GDDR3 a 1.2 GHz) e na Radeon X1950 Pro (256 ou 512 MB, GPU a
575 MHz e memória GDDR3 a 1.38 GHz). Estas duas placas concorriam
diretamente com as GeForce 7900 da nVidia, tanto que, durante toda a
primeira metade de 2006, a X1950 Pro e a 7900 GS custavam (preço de
tabela, nos EUA), exatamente o mesmo: US$ 199, enquanto a X1650 Pro
custava US$ 149 e as X1300 custavam abaixo de US$ 99.

Concluindo, temos também o R580, uma versão expandida do R520, que
mantém as 16 unidades de texturas, os 16 ROPs e as 8 unidades de vertex
shader, mas traz o triplo de unidades de pixel shader, num total de 48,
mantendo o barramento de 256 bits com a memória. Esta proporção de 3
unidades de pixel shader para cada unidade de texturas não ajuda muito no
desempenho da placa em jogos antigos, mas é uma melhora bem vinda ao
rodar títulos mais atuais. O F.E.A.R, por exemplo, utiliza até 7 operações
aritméticas (executadas pelas unidades de pixel shader) para cada operação
envolvendo texturas, enquanto o Splinter Cell: Chaos Theory a proporção é
ainda maior, com 8 operações aritméticas para cada operação envolvendo
texturas. Do ponto de vista da longevidade do chip, a decisão de usar 48
unidades de pixel shader foi acertada.

O R580 foi usado em um grande número de placas da série X1900, entre elas
a Radeon X1900 XT (256 ou 512 MB, GPU a 625 MHz e memória GDDR3 a
1.45 GHz), Radeon X1900 XTX (512 MB, GPU a 650 MHz e memória GDDR3
a 1.55 GHz), Radeon X1950 XT (256 ou 512 MB, GPU a 625 MHz e memória
GDDR3 a 1.8 GHz) e a Radeon X1950 XTX (512 MB, GPU a 650 MHz e
memória GDDR3 a 2.0 GHz). Estas eram as placas topo de linha da ATI que,
na época do lançamento, eram vendidas (no EUA) na faixa dos 500 dólares.
Uma opção um pouco mais barata é a Radeon X1900 GT (256 MB, GPU a 575
MHz e memória GDDR3 a 1.2 GHz), baseada em uma versão castrada do


                                                                         837
R580, com apenas 36 unidades de pixel shader, 12 unidades de texturas, 12
ROPs e 8 unidades de vertex shader.

R600

O R600 é o concorrente direto do G80. Ele adota uma arquitetura baseada em
shaders unificados e oferece suporte ao DirectX 10 e ao Shader Model 4.0.
Internamente, o chip é composto por 320 stream processors, agrupados em 64
clusters (com 5 unidades cada um) e utiliza um barramento com a memória de
generosos 512 bits. À primeira vista, pode parecer que o R600 é muito mais
poderoso que o G80, já que ele possui apenas 128 stream processors e utiliza
um barramento de apenas 384 bits com a memória. Mas, a arquitetura interna
dos dois chips é bastante diferente, de forma que a comparação não é tão
simples.

Em primeiro lugar, os stream processors usados no R600 são muito mais
simples do que os usados no G80 (justamente por isso foi possível incluir um
número tão grande deles). Dentro de cada cluster, temos 4 stream processors
capazes de processar apenas instruções simples e uma única unidade capaz
de processar instruções complexas, diferente da arquitetura usada pela nVidia,
onde todos os stream processors podem processar tanto instruções simples
quanto instruções complexas. Isso faz com que o desempenho dos dois chips
varie muito de acordo com o tipo de instruções predominantemente usadas em
cada situação.

Outra questão importante é que as unidades de processamento do G80
trabalham ao dobro ou mais do clock da GPU, enquanto que no R600 eles
operam na mesma freqüência do restante do chip. A grande diferença na
freqüência de operação acaba revertendo a vantagem que o R600 teria com
relação ao processamento bruto e fazendo com que, na maioria das
aplicações, o G80 seja mais rápido (considerando duas placas com a GPU
operando à mesma freqüência e com o mesmo tipo de memórias). Apesar
disso, a ATI conseguiu equilibrar as coisas fazendo com que o R600 atingisse
freqüências mais altas e reduzindo os preços.

O R600 original é utilizado na Radeon HD 2900 XT, onde a GPU opera a 743
MHz e utiliza 512 ou 1024 MB de memória GDDR3 a 1.65 GHz, ou GDDR4 a
2.0 GHz. Embora a 2900 XT perca para uma GeForce 8800 Ultra, ela compete
bem contra a 8800 GTS, que na época do lançamento custava na mesma faixa
de preço que ela. Apesar disso, pode ser que futuras versões do chip, ou
mesmo atualizações de drivers mudem a situação radicalmente. Não é
incomum que novas versões dos drivers, com otimizações e correções para
problemas detectados após o lançamento melhorem o desempenho de uma
nova placa em 20% ou mais. É o tipo de coisa que não se pode prever.




                                                                          838
Radeon HD 2900 XT

Como esperado, o R600 foi seguido por duas versões de baixo custo. O RV630
é uma versão reduzida, com 120 stream processors e um barramento com a
memória de apenas 128 bits. Ele é usado na Radeon HD 2600 Pro (256 MB,
GPU a 550 MHz e memória GDDR3 a 1.4 GHz) e na Radeon HD 2600 XT (512
MB, GPU a 800 MHz e memória GDDR4 a 2.2 GHz). Embora o desempenho
seja bem inferior ao da 2900 XT, como seria de se esperar, a 2600 Pro oferece
como vantagens o fato de ser relativamente barata (em outubro de 2007 ela
custava apenas US$ 99, nos EUA) e possuir um consumo elétrico baixo, de
pouco mais de 45 watts, cortesia do baixo clock da GPU e da técnica de
fabricação de 0.065 micron usada no RV630.




                            Radeon HD 2600 Pro

Temos ainda o RV610, a versão mais simples, que conserva apenas 40 dos
stream processors e utiliza um barramento com a memória de apenas 64 bits.
Ele é usado na Radeon HD 2400 Pro (256 MB, GPU a 525 MHz e memória
DDR2 a 800 MHz) e na Radeon HD 2400 XT (256 MB, GPU a 700 MHz e
                                                                         839
memória GDDR3 a 1.0 ou 1.6 GHz). A 2400 Pro é uma placa de baixo custo
(apenas US$ 50, nos EUA), que possui inclusive alguns modelos com cooler
passivo. Embora o desempenho seja muito ruim (bem menos da metade do da
2600 Pro), ela acabou se tornando popular devido ao preço.

Por serem baseadas na arquitetura do R600, as 2400 são compatíveis com o
DirectX 10, mas este não é um fator que deve ser levado em conta nesse caso,
pois o desempenho é fraco demais para que você possa se beneficiar das
melhorias visuais. No final das contas, você vai acabar jogando a baixas
resoluções e com parte dos recursos visuais desativados, seja rodando títulos
que usam o DirectX 9, ou o DirectX 10.

Manutenção

Assim como no caso das placas-mãe, a maior parte dos defeitos em placas de
vídeo estão relacionados a capacitores ou outros componentes do circuito
regulador de tensão. Você pode notar que as placas de vídeo que dão mais
defeitos são justamente os modelos com consumo mais alto (e placas usadas
por longos períodos em overclock), onde estes componentes são mais
exigidos, e não placas baratas, que operam a baixas freqüências e utilizam
dissipadores passivos.

O sintoma mais comum é que a placa torne-se menos estável com o tempo,
devido à deterioração dos capacitores, travando com cada vez mais freqüência
até que o dono resolva substituí-la, ou que a placa simplesmente pare de
funcionar definitivamente, fazendo com que o micro deixe de inicializar o vídeo
durante o boot.




       Capacitores e regulador de tensão em uma Radeon HD 2600 XT

A instabilidade é causada, sobretudo, pela perda de eficiência dos capacitores,
principalmente em placas que ainda utilizam capacitores eletrolíticos. É
possível substituir capacitores em placas de vídeo (assim como no caso de
placas-mãe) e, em muitos casos, o conserto realmente vale a pena, pois muitas
placas de vídeo atuais custam muito mais caro que uma simples placa-mãe.




                                                                           840
Outra opção no caso de placas instáveis é fazer um underclock, ou seja, baixar
a freqüência de operação da GPU, de forma a reduzir o consumo elétrico da
placa e assim permitir que ela funcione dentro de uma margem maior de
tolerância. Afinal, é preferível uma placa mais lenta do que uma que trava a
todo instante.

Chipsets de vídeo integrados

Falar sobre o desempenho dos chipsets de vídeo onboard é em grande parte
irrelevante, pois o desempenho é invariavelmente fraco, de forma que quem
usa o PC para jogos, acaba comprando uma placa 3D offboard mais cedo ou
mais tarde. Acaba não fazendo muito sentido comparar o desempenho de um
Mirage 3 com o de um Chrome9 (por exemplo) se ambos são inadequados
para rodar qualquer game atual.

A maioria dos usuários que se contenta em usar o vídeo onboard usa o PC
predominantemente para navegação, aplicativos de escritório, vídeo e áudio ou
outras aplicações 2D. Eles estão mais preocupados com a qualidade de
imagem, as resoluções e taxas de atualização suportadas e os recursos de
aceleração de vídeo em 2D, incluindo a decodificação de formatos de vídeo via
hardware.

Apesar disso, as placas onboard constituem uma base instalada grande
demais para ser ignorada. Vou aproveitar para dar uma pincelada no assunto e
deixar para falar mais um pouco no capítulo sobre notebooks. Neles, o
desempenho do vídeo onboard é mais importante do que nos desktops,
simplesmente porque você não tem como instalar uma placa 3D offboard
facilmente.

Por incrível que pareça, a Intel é a maior fabricante de chipsets de vídeo (em
número), muito embora não fabrique uma única placa offboard. O forte da Intel
são os chipsets de vídeo onboard, integrados na maior parte de seus chipsets.

Depois do chipset i752 e do "Extreme Graphics", duas soluções bastante fracas
usadas nos chipsets da série 800, foram lançadas as séries GMA e X3x00,
usadas atualmente.

A primeira geração é o chip GMA 900, incluído nos chipsets Intel 910G, 915G e
915GX. O GMA 900 opera a 333 MHz e utiliza até 128 MB de memória
compartilhada, alocada dinamicamente de acordo com a utilização do vídeo. A
segunda geração é o GMA 950, uma versão levemente atualizada, encontrada
no chipset Intel 945G. Ele opera a 400 MHz e utiliza até 256 MB de memória
compartilhada, também alocada dinamicamente. Como você não tem controle
direto sobre a quantidade de memória alocada para o vídeo (não é possível
ajustar o valor através do Setup), é importante usar pelo menos 512 MB de
memória em micros baseados no GMA 950.

Uma curiosidade é que no Linux a memória reservada para a placa de vídeo
aparece no relatório gerado pelo comando "free", como se fosse memória
alocada para uso do Kernel. Se você comentar as linhas Load "dri" e Load "glx"
dentro do arquivo "/etc/X11/xorg.conf" (o que desativa a aceleração 3D para o
vídeo) e reiniciar o modo gráfico, vai perceber que a memória consumida pelo
                                                                           841
sistema cai em 40 MB, ou mais, em qualquer micro com vídeo onboard Intel, já
que o chipset de vídeo deixa de reservar memória para os recursos 3D.

Continuando, tanto o GMA 900 quanto o 950 possuem 4 pixel pipelines (cada
um composto por uma unidade de processamento de texturas e um ROP), o
que resulta em um fill rate de 1333 megapixels (ou megatexels, já que neste
caso a proporção é de 1 para 1) para o GMA 900 e 1600 megapixels para o
GMA 950.

À primeira vista, os valores parecem comparáveis com os da GeForce 6500,
que (com a GPU a 350 MHz) possui um fill rate de 1400 megapixels. O
problema é que, além do baixo desempenho da memória compartilhada, os
chipsets da série GMA não possuem suporte a processamento de shaders via
hardware (contam apenas com processamento de pixel shaders via software,
emulado pelo driver de vídeo), o que reduz bastante a capacidade gráfica dos
chips e impede que eles rodem jogos recentes, que exigem suporte a vertex
shader por parte da placa de vídeo, como o Battlefield 2142, CoD 2, Elder
Scrolls Oblivion e Ghost Recon. Nesses títulos, não é só questão de reduzir a
resolução ou os efeitos. Se você possui uma placa com um chipset GMA 900
ou 950, realmente não existe muito o que fazer, além de instalar uma placa
offboard.

Com relação aos recursos 2D, ambos os chipsets são equipados com um
RAMDAC que trabalha a 400 MHz, o que permite que utilizem até 2048x1536
de resolução, com 75 Hz de refresh. Ambos oferecem suporte a DVI, mas na
grande maioria dos casos as placas incluem apenas o conector VGA
tradicional, deixando o recurso sem uso (é possível adicionar a saída DVI
através de uma placa de expansão ligada ao slot PCI Express, mas ela é muito
incomum, já que representa um custo adicional). O GMA 950 é compatível com
o Aero do Vista, mas o 900 não, devido a deficiências nos drivers.

Mais recentemente foi lançado o GMA X3000, que é integrado ao chipset Intel
G965. Ele é um projeto radicalmente diferente dos anteriores, baseado no uso
de unidades programáveis, que, assim como os stream processors do G80,
podem trabalhar como unidades de pixel shader, vertex shader ou como
aceleradores de vídeo, de acordo com a demanda.




                                                                         842
Ponte norte do chipset G965, contendo o X3000 onboard (com o dissipador
                                 removido)

O X3000 possui 8 unidades programáveis, opera a 667 MHz e é capaz de usar
até 384 MB de memória compartilhada (que, assim como nos anteriores, é
alocada dinamicamente). A maior freqüência de operação, combinada com o
suporte a vertex shaders e a pixel shaders via hardware, tornam X3000 uma
solução mais respeitável, que oferece suporte ao DirectX 10 e é capaz de rodar
a maioria das jogos recentes, embora com baixo FPS. Naturalmente, as 8
unidades programáveis do X3000 são muito mais simples que as 8 unidades
usadas no G80 e oferecem um desempenho brutalmente inferior, mas dentro
do que se pode esperar de um chipset onboard, o X3000 é um projeto bastante
avançado.

Graças ao processamento de shaders via hardware, o X3000 oferece um
desempenho bem superior ao GMA 950 na maioria dos jogos. Entretanto, para
adicionar as unidades programáveis, a Intel precisou remover dois dos pixel
pipelines, o que reduz o fill rate por ciclo do X3000 à metade. Mesmo operando
a 667 MHz, o X3000 possui um fill rate teórico de apenas 1333 megapixels, o
que faz com que o GMA950 seja mais rápido em alguns jogos, embora o
projeto do X3000 seja bastante superior no geral.

Vale lembrar que o X3000 é incluído apenas no chipset G965. O Q965 (assim
como o Q963) inclui o GMA 3000 (sem o "X"), uma versão simplificada que,
apesar do nome, utiliza uma arquitetura muito similar à do GMA 950, sem as
unidades programáveis e o suporte a shaders via hardware.

A nVidia, por sua vez, possui os chipsets GeForce 6100 e GeForce 6150,
destinados às placas AM2. O vídeo integrado é uma versão reduzida do
chipset NV44, usado nas placas GeForce 6200 offboard, que além da redução
no número de unidades de processamento, tem o desempenho limitado pelo


                                                                          843
uso de memória compartilhada. Ele é a base da base da pirâmide dentro da
linha de chipsets 3D da nVidia.

O 6100 opera a 425 MHz, enquanto o 6150 opera a 475 MHz, mas ambos
compartilham da mesma arquitetura, com 2 pixel pipelines (cada um composto
por uma unidade de pixel shader, uma unidade de texturas e um ROP), uma
única unidade vertex shader e a possibilidade de usar até 256 MB de memória
compartilhada. Apesar do suporte a shaders ajudar em vários jogos, eles
oferecem um fill rate relativamente baixo, de apenas 850 megatexels (a 425
MHz) ou 950 megatexels (a 475 MHz) ou que faz com que percam para o GMA
X3000 por uma boa margem (o que é normal, considerando que o X3000 é um
projeto mais recente).

Só para efeito de comparação, o 6150 consegue manter uma média de 15 FPS
no Half Life, a 1024x768, enquanto o X3000 mantém 20 FPS. No Unreal 2004
(também a 1024x768) o 6150 mantém 44 FPS, enquanto o X3000 fica um
pouco a frente, com 47 FPS. É difícil fazer uma comparação direta entre as
duas famílias, já que o GeForce 6100/6150 é usado em placas para
processadores AMD, enquanto o X3000 é encontrado apenas em chipsets para
processadores Intel, mas nestes dois exemplos o desempenho do processador
tem pouco efeito, já que o grande gargalo é mesmo o desempenho do vídeo
onboard.

O RAMDAC do GeForce 6150 opera a uma freqüência um pouco mais baixa,
300 MHz, o que limita a resolução suportada pelo chipset a 1920x1440 (com
75Hz), criando uma possível limitação para quem utiliza monitores maiores.
Outro problema é que as placas-mãe baseadas nos chipsets GeForce 6100 e
6150 são relativamente caras, o que as torna pouco atraentes do ponto de vista
do custo-benefício. Ao invés de pagar mais caro por uma placa com o
6100/6150, valeria mais à pena comprar uma placa equivalente, sem vídeo
onboard, e instalar uma placa offboard barata, da série GeForce 6 ou GeForce
7, já que mesmo uma 6200 TC oferece um desempenho superior ao de uma
6150 onboard.

Levando isso em consideração, as placas com o 6100/6150 acabam servindo
mais como uma opção para quem procura uma placa com vídeo onboard com
um baixo consumo elétrico, que conserve um nível mínimo de desempenho do
que uma opção realística para quem está montando um micro para jogos.

Continuando, temos os chipsets de vídeo da SiS, que incluem o Mirage (usado
nos chipsets SiS 661FX, 661GX e 741GX), Mirage 1 (chipsets SiS 662 e
761GX), Mirage 2 (SiS 760) e Mirage 3 (SiS 671 e 771), descendentes diretos
do SiS315, um chipset lançado em 2001, que chegou a ser utilizado em
algumas placas offboard.

Eles são chipsets bastante simples, sem suporte a processamento de shaders
via hardware (o Mirage 3 suporta o Shader Model 2.0, mas o processamento é
feito via software, assim como no GMA 900) e um fill rate bastante baixo devido
à baixa freqüência de operação (o Mirage 3 opera a 250 MHz e os demais a
200 MHz). O Mirage 3 oferece suporte ao DirectX 9, o que permite rodar alguns


                                                                           844
jogos relativamente atuais, mas o desempenho é muito baixo, menos da
metade do GMA 950.

Concluindo, temos a VIA, que produz os chipsets UniChrome Pro (usado nos
chipsets VIA P4M890, K8M800 e outros) e Chrome 9 (usado no P4M900 e no
K8M890).

O UniChrome Pro é uma versão levemente atualizada do antigo ProSavage,
um chipset de vídeo usado desde o Apollo Pro PM 133. O desempenho 3D é
muito fraco (no nível das antigas placas nVidia TnT, antecessoras da GeForce
original), de forma que ele não pode ser considerado propriamente um chipset
de vídeo 3D, pelo menos não dentro da concepção atual. Com relação ao
desempenho, ele é simplesmente o pior chipset 3D ainda em produção, tanto
que a VIA evita citar o desempenho 3D no material publicitário, se limitando a
dizer que ele oferece um desempenho 2D satisfatório.

O Chrome 9 é um chipset atualizado, que ganhou suporte a shaders e ao
DirectX 9. O principal objetivo é oferecer suporte ao Aero do Vista, de forma
que o desempenho em jogos 3D continua sendo muito fraco, mesmo se
comparado aos chipsets Intel da série GMA. Para ter uma idéia, o fill rate do
Chrome 9 é de apenas 500 megapixels e a simplicidade do projeto faz com que
o desempenho relativo seja ainda pior.

Tanto os chipsets da série Mirage, quanto o Chrome 9 são soluções bastante
fracas. Se você procura um desempenho 3D minimamente aceitável, eles são
opções a evitar, a menos que você pretenda desativar o vídeo onboard e usar
uma placa offboard.

Conectores: VGA x DVI

Em 1987 a IBM lançou o padrão de vídeo VGA, que permitia o uso de 640x480
com 256 cores. Com o passar dos anos, surgiram os padrões SVGA
(800x600), XGA (1024x768), SXGA (1280x1024) e assim por diante, usados
pelos monitores atuais. Apesar disso, o mesmo conector VGA analógico (Mini
D-Sub) de 15 pinos continua sendo utilizado até hoje.

O grande problema é que os monitores CRT estão sendo rapidamente
substituídos pelos monitores LCD, que são digitais por natureza. Para manter
compatibilidade com as placas antigas, eles incluem conversores
analógico/digital, que além de encarecerem os monitores, reduzem a qualidade
da imagem.

Para resolver o problema, foi criado o padrão DVI (Digital Visual Interface), que
permite que o sinal seja transmitido de forma digital da placa de vídeo até o
monitor, eliminando a necessidade de fazer a conversão digital > analógico >
digital, que causa degradação da imagem.

Existem diversos sub-padrões dentro do DVI. As placas atuais utilizam
conectores DVI-I, que mantém a compatibilidade com os monitores antigos,
oferecendo simultaneamente o sinal digital e o analógico. Isso permite que
você conecte um monitor analógico em uma placa de vídeo com saída DVI-I
utilizando um adaptador simples. Ele é normalmente fornecido junto com

                                                                             845
placas de vídeo que trazem apenas saídas DVI, como a maioria dos modelos
da nVidia e da ATI:




O conector DVI utiliza 29 pinos. Destes, os pinos 8, C1, C2, C3, C4 e C5 são
usados para transmitir o sinal analógico usado pelos monitores antigos,
enquanto os demais transmitem o sinal digital, como você pode ver no
diagrama:




O DVI suporta o uso de conexões single-link e dual-link. Cada link de dados é
formado por três canais independentes (um para cada cor), de 8 bits e 165
MHz. Assim como no SATA e no PCI Express, para cada 8 bits de dados, são
enviados 2 bits adicionais de sincronismo, de forma que cada link DVI oferece
um total de 4.95 gigabits de banda. Uma conexão dual-link dobra este valor,
oferecendo uma banda total de 9.9 gigabits.

Uma conexão single-link suporta o uso de até 1600x1200 (com 60 Hz de
atualização), enquanto uma conexão dual-link suporta o uso de 2048x1536
(com 75 Hz) ou 2560x1600 (com 60 Hz, que é a taxa de atualização usada pela
maioria dos monitores LCD). Como estamos falando de um link digital, existe
uma grande flexibilidade. É possível atingir resoluções mais altas reduzindo o
refresh rate, por exemplo, mas isso não é muito comum, já que causa perda da
fluidez da imagem e, de qualquer forma, ainda não existe muita demanda por
monitores com resoluções acima de 2048x1536.

Os cabos single-link possuem duas colunas de pinos a menos, mas são
fisicamente compatíveis com os conectores dual-link:

                                                                          846
Conector DVI dual-link (à esquerda) e conector single-link

Você pode ligar um monitor single-link em uma placa com conectores dual-link
sem problema algum. O inverso (uma placa single-link com um monitor dual-
link) também funciona, mas neste caso você fica limitado a 1920x1080,
independentemente da resolução suportada pelo do monitor. Uma observação
é que muitas placas de vídeo baratas utilizam conectores dual-link, mas na
verdade operam apenas em modo single-link. Se você pretender usar um
monitor de alta resolução, cheque sempre as especificações da placa.

Embora pareça exagero, muitos monitores de LCD de 30" já suportam o padrão
WQXGA (2560x1600) nativamente, como o Apple 30IN cinema, o HP LP3065 e
o Dell 3007WFP. Com a queda nos preços dos monitores LCD, não se
surpreenda se daqui a poucos anos estes displays monstruosos passarem a
ser um item popular nos micros desktop. :)




             Dell 3007WFP de 30", com resolução de 2560x1600

Além do DVI-I, existem também os conectores DVI-D, que carregam apenas o
sinal digital, abandonando a possibilidade de usar o adaptador para conectar
um monitor antigo. A única diferença visível entre os dois é que o DVI-D não
possui os pinos C1, C2, C3 e C4. As placas com conectores DVI-D são
relativamente raras, já que o DVDI-I combina o melhor dos dois mundos, mas o
DVI-D pode virar a mesa no futuro, conforme a compatibilidade com monitores
antigos for lentamente deixando de ser uma preocupação. Adotar o DVI-D
permite que os fabricantes de placas de vídeo removam o conversor
digital/analógico, o que reduz em alguns dólares o custo de produção.




                                                                        847
Conector DVI-D

É possível ainda ligar uma placa de vídeo com saída DVI a uma HDTV que
utilize um conector HDMI. Tanto o DVI quanto o HDMI utilizam o mesmo
padrão de sinalização, de forma que é necessário apenas comprar um cabo
simples. A limitação neste caso é que a saída DVI não inclui os pinos
destinados ao som, de forma que você precisa usar um cabo de áudio
separado.




                              Cabo DVI > HDMI

Outro termo associado ao DVI é o HDCP (High-Bandwidth Digital Content
Protection), uma tecnologia menos nobre, que se destina a "proteger" a
indústria cinematográfica dos ladrões de conteúdo (consumidores), provendo
uma forma de proteger e encriptar filmes e seriados. Ele é utilizado tanto no HD
DVD quanto no Blu-ray. O que diferencia o HDCP de sistemas anteriores de
encriptação, como o CSS usado no DVD, é o fato dele ser bem mais intrusivo,
demandando a combinação de um sistema operacional, um software de
reprodução, uma placa de vídeo e um monitor compatíveis com o padrão, caso
contrário o sinal de alta-resolução é bloqueado e a qualidade é degradada a
um nível similar ao do DVD.

Concluindo, muitas placas incluem ainda um conector S-Video, que permite
usar uma TV como monitor. A qualidade não é muito boa, já que a placa
degrada a imagem para o sinal de 640x480 com 60 Hz (interlaçado ainda por
cima) suportado pela TV, mas ainda assim o conector é utilizado por muita
gente na hora de assistir filmes e jogar, já que, apesar da baixa qualidade de
imagem, a TV é geralmente bem maior do que o monitor. Muitas placas
                                                                            848
incluem as três saídas, como esta antiga ATI R9500, permitindo que você
escolha qual usar:




Monitores: LCD x CRT x Plasma x OLED


Por absurdo que possa parecer, a maioria dos computadores das décadas de
60 e 70 não utilizavam monitores, mas sim impressoras de margarida
(antecessoras das impressoras matriciais) como dispositivos de saída. Neles,
você digitava os comandos no teclado e precisava esperar os resultados serem
lentamente impressos em um rolo de papel. Estes terminais contendo o teclado
e a impressora eram chamados de teletipos e, tipicamente, vários deles eram
ligados a um único mainframe. Os monitores passaram a ser usados em larga
escala apenas a partir do final da década de 70, mas, assim como outros
dispositivos, tiveram uma evolução notável. Atualmente, temos em uso
basicamente 4 tecnologias de monitores: CRT, LCD, Plasma e OLED.

Os monitores CRT utilizam um princípio bastante simples, fundamentalmente a
mesma tecnologia usada nas TVs desde a década de 1930. Um canhão de
elétrons bombardeia as células de fósforo que recobrem a tela, fazendo com
que elas se iluminem em diferentes intensidades (de acordo com a intensidade
da descarga recebida), formando a imagem:




                                                                         849
O conector VGA transporta os sinais analógicos referentes às três cores
primárias (azul, verde e vermelho), além dos sinais de sincronismo horizontal e
vertical. Como o nome sugere, estes dois últimos são responsáveis pelo
movimento do canhão de elétrons do monitor, que varre toda a tela
continuamente, atualizando cada pixel com os sinais referentes às três cores.

Variando rapidamente as tensões fornecidas, a placa de vídeo consegue que
cada um dos três pontos que compõe cada pixel brilhem numa intensidade
diferente, formando a imagem. Quando é necessário obter um pixel branco,
são usadas as tensões máximas para os três pixels, por exemplo. Aqui temos a
imagem de um monitor CRT ampliada de forma a mostrar os pontos
individuais:




                                                                           850
As células de fósforo se apagam muito rapidamente, por isso a imagem precisa
ser atualizada várias vezes por segundo, processo chamado de refresh. A taxa
de atualização da imagem é uma configuração importante nos monitores CRT,
pois uma baixa taxa de atualização faz com que o intervalo entre as
atualizações seja muito longo, fazendo com que as células passem a piscar,
perdendo a luminosidade durante o intervalo da atualização e sendo
reacendidas na atualização seguinte. Este fenômeno é chamado de flicker e
torna bastante desconfortável usar o monitor por longos períodos, podendo, a
longo prazo, até mesmo causar danos à visão.

Devido à própria natureza dos monitores CRT, não é possível eliminar o flicker
completamente, mas é possível reduzí-lo a níveis toleráveis usando taxas de
atualização de 75 Hz ou mais. Reduzir o brilho do monitor também ajuda, pois
a luminosidade mais baixa faz com que as células de fósforo demorem mais
tempo para perderem o brilho (já que a intensidade é menor).

A taxa máxima de atualização suportada pelo monitor varia de acordo com a
resolução. No monitor, a imagem é atualizada linha a linha, de cima para baixo.
Temos então a freqüência horizontal, uma das especificações mais importantes
em um monitor CRT, que indica a quantidade "bruta" de linhas que o monitor
pode atualizar por segundo.

O LG 710E, por exemplo, é um monitor de 17" que trabalha com uma
freqüência horizontal de 71 kHz (71 mil linhas por segundo). Em teoria, isso
permitiria que ele trabalhasse com refresh de até 69 Hz ao utilizar resolução de
1280x1024 (onde temos 1024 linhas horizontais) ou até 92 Hz ao usar
1024x768. Na prática, entretanto, os valores são mais baixos devido ao tempo
perdido pelo monitor ao final de cada atualização da tela (retraço vertical),
quando precisa reposicionar o canhão de elétrons no topo da tela para iniciar a
atualização seguinte. Isso faz com que, no final, o monitor seja capaz de
trabalhar com resolução de 1024x768 a 85 Hz ou 1280x1024 a 60 Hz (essa
última pouco recomendável por causa do flicker).

Em seguida temos os monitores LCD que, embora tenham ficado restritos a
nichos durante as décadas de 1980 e 1990, estão rapidamente roubando a
cena e substituindo os monitores CRT.

Uma tela de LCD é uma espécie de chip. A técnica de fabricação de um
processador e de uma tela de LCD são similares, a principal diferença é que o
processador é feito sobre um wafer de silício, enquanto que uma tela de LCD é
feita sobre uma placa de vidro, utilizando camadas de silício amorfo
depositadas sobre ela.

Em uma tela de matiz ativa, temos um transístor para cada ponto da tela (cada
pixel é formado por três pontos) e um pequeno sulco, onde é depositado o
cristal líquido. Os cristais líquidos são substâncias que tem sua estrutura
molecular alterada quando recebem corrente elétrica. Em seu estado normal, o
cristal líquido é transparente, mas ao receber uma carga elétrica torna-se
opaco, impedindo a passagem da luz. A função de cada transístor é controlar o
estado do ponto correspondente, aplicando a tensão correta para cada
tonalidade:

                                                                            851
Os LCDs mais simples, como os usados em relógios e palmtops com tela
monocromática, utilizam uma camada refletora, instalada na parte traseira, que
simplesmente reflete a luz ambiente. Existem casos de LCDs coloridos que
utilizam o mesmo princípio (como o usado no Game Boy Advance). Essas telas
são chamadas de transflexivas e apresentam como problema fundamental o
fato de só poderem ser usadas em ambientes bem iluminados e contra a luz.

Os LCDs usados em PCs e notebooks são transmissivos, ou seja, a tela utiliza
um sistema de iluminação que permite que seja usada em qualquer ambiente.
A desvantagem é o fato da tela ser mais complexa e o sistema de iluminação
torná-la mais propensa a falhas (muitas telas são descartadas por defeito nas
lâmpadas de catodo frio ou no inversor, muito embora o LCD continue intacto),
além de consumir mais energia. Mas, este é um caso em que os ganhos
compensam as perdas, já que ninguém iria querer um notebook que só
pudesse ser usado contra a luz.

Temos aqui uma tela de LCD desmontada. Veja que ela é apenas parcialmente
transparente. É graças à iluminação que você pode ver a imagem claramente:




Existem duas tecnologias de iluminação de telas LCD. A mais comum consiste
no uso de lâmpadas de catodo frio, um tipo de lâmpada florescente, ultra
compacta e de baixo consumo. Alguns notebooks ultra portáteis, como o Sony
Vaio TX2 utilizam LEDs para a iluminação da tela, uma tecnologia que permite
produzir telas mais finas, econômicas e duráveis, porém mais caras.


                                                                          852
Além do baixo consumo elétrico, outra vantagem do uso de LEDs é que a
iluminação da tela é mais uniforme do que nos monitores de LCD com
lâmpadas de catodo frio, pois os LEDs são distribuídos de forma relativamente
uniforme, em contraste com a lâmpada de catodo frio, que fica em uma das
extremidades da tela. Existe também um pequeno ganho na nitidez das cores,
pois os LEDs usados emitem luz quase que perfeitamente branca, ao contrário
das lâmpadas de catodo frio, que tendem ao azul.

Como os monitores de LCD estão substituindo rapidamente os CRT, é sempre
interessante fazer algumas comparações. Uma das principais vantagens dos
monitores LCD é a questão da geometria. Nos monitores CRT a imagem é
criada por um conjunto de três feixes de elétrons, um para cada cor primária,
que iluminam as células de fósforo da tela, produzindo a imagem. Os feixes
são movidos usando eletroímãs, o que torna os monitores CRT bastante
sensíveis a interferência eletromagnética, já que qualquer fonte significativa
interfere com o posicionamento dos feixes, distorcendo a imagem em maior ou
menor grau.

Você pode distorcer a imagem da tela colocando caixas de som muito próximo
ao monitor (sobretudo caixas de som não blindadas) ou qualquer outra fonte
significativa de interferência. Experimente, por exemplo, colocar um telefone
celular (durante uma conversação) bem ao lado do monitor. Ele vai produzir um
colapso temporário na imagem :). Os LCDs, por outro lado, são praticamente
imunes a qualquer tipo de interferência do ambiente.

Outra questão é que nos CRTs o posicionamento dos pixels na tela nunca é
perfeito, pois o feixe de elétrons nunca atinge precisamente as células de
fósforo referentes a cada pixel. Entretanto, como as células de fósforo são
muito pequenas, a distorção acaba não sendo visível a olho nu.

Nos LCDs, por outro lado, cada pixel corresponde precisamente a um conjunto
de três pontos, de forma que a geometria é sempre perfeita. A desvantagem é
que o LCD só oferece uma boa qualidade de imagem quando trabalha em sua
resolução nativa. Você pode usar resoluções mais baixas (800x600 em um
LCD de 15", ou 1024x768 em um de 19", que trabalham nativamente a,
respectivamente, 1024x768 e 1280x1024, por exemplo), mas a qualidade da
imagem é prejudicada, já que o sistema precisa interpolar a imagem via
software, usando mais de um pixel da tela para exibir cada ponto da imagem.
Os CRTs, por outro lado, podem trabalhar com diversas resoluções diferentes,
sem perdas perceptíveis.

Tradicionalmente, os LCDs são inferiores aos CRTs com relação à fidelidade
de cores e principalmente com relação ao contraste, já que um monitor LCD
trabalha bloqueando a luz branca gerada pelas lâmpadas de catodo frio usadas
na iluminação, enquanto os CRTs trabalham produzindo luz diretamente. Este
é, entretanto, um quesito onde os monitores LCD evoluíram muito. Embora os
monitores mais baratos continuem oferecendo uma imagem lavada, que não
atende bem ao público profissional, já existem monitores LCD (um pouco mais
caros) com uma qualidade de imagem muito similar à dos melhores monitores
CRT.


                                                                          853
Finalmente, temos a questão da área útil da tela. Se você colocar um CRT e
um LCD de 17 polegadas lado a lado, você vai notar que a área útil no LCD é
muito maior. Isso acontece porque a tela de um LCD de 17" tem realmente 17
polegadas de medida diagonal, enquanto no CRT pouco mais de uma
polegada da tela é de área não-útil, que corresponde às bordas da tela,
cobertas pela carcaça plástica.

Devido a isso, um CRT de 17" tem cerca de 16 polegadas de área visível (você
encontra a medida exata nas especificações do monitor). Muitos tem como
hábito ajustar a imagem de forma a não utilizar as extremidades da tela (onde a
distorção causada pela angulação da tela é maior), o que corresponde a mais
uma pequena perda. Somando as duas coisas, chegamos a casos em que
temos menos de 15 polegadas de área realmente utilizada em um monitor CRT
de 17".

De qualquer forma, grande parte da discussão em torno dos pontos positivos e
negativos dos monitores LCD e CRT está ultrapassada, pois os monitores LCD
já venceram a guerra. Os preços caíram a ponto de os monitores LCD mais
baratos já custarem menos (pelo menos do ponto de vista dos fabricantes) do
que monitores CRT equivalentes. Como o custo de produção dos monitores
CRT já atingiu o ponto mais baixo há vários anos, enquanto o custo dos LCDs
continua caindo sucessivamente (conforme novas técnicas de produção são
introduzidas) a diferença tende a se acentuar.

Alguns fabricantes ainda sobrevivem produzindo monitores CRT de baixo
custo, para uso em PCs populares, mas eles tendem a desaparecer nos
próximos anos. A pergunta hoje em dia é: "qual marca ou modelo de LCD é
melhor?" e não mais: "devo comprar um CRT ou um LCD?".

Em seguida temos as telas de Plasma, que trabalham sob um princípio bem
diferente. Pequenas quantidades de gás neon e xenon são depositadas em
pequenas câmaras seladas, entre duas placas de vidro. Cada câmara contém
dois eletrodos (um deles protegido por uma camada isolante) e também uma
camada de fósforo (similar ao fósforo usado nos monitores CRT). Quando uma
certa tensão é aplicada, o gás é ionizado e se transforma em plasma,
passando a emitir luz ultra-violeta que, por sua vez, ativa a camada de fósforo,
fazendo com que ela passe a emitir luz. Cada pixel é composto por três
câmaras individuais, cada uma utilizando uma camada de fósforo de uma das
três cores primárias.

As telas de plasma oferecem uma luminosidade muito boa e um bom nível de
contraste. O maior problema é que as células contendo gás são relativamente
grandes, por isso não é possível produzir monitores com uma densidade muito
alta. Este é o principal motivo das telas de plasma serem sempre muito
grandes (geralmente de 40 polegadas ou mais) e possuírem uma resolução
relativamente baixa, se considerado o tamanho. Outra desvantagem é o
consumo elétrico, que supera até mesmo o dos CRTs, sem falar na questão do
custo. Essa combinação de fatores faz com que as telas de plasma sejam mais
adequadas a TVs do que a monitores destinados a micros desktop, embora a
presença de conectores HDMI, DVI ou VGA permitam que elas sejam usadas
como telas de apresentação ou mesmo como monitores.

                                                                            854
Finalmente, temos as telas baseadas na tecnologia OLED (Organic Light-
Emitting Diode), que são baseadas no uso de polímeros contendo substâncias
orgânicas que brilham ao receber um impulso elétrico. Cada ponto da tela é
composto com uma pequena quantidade do material, que depois de receber os
filamentos e outros componentes necessários, se comporta como um pequeno
LED, emitindo luz.

A principal diferença entre os OLEDs e os LEDs convencionais é que os
OLEDs são compostos líquidos, que podem ser "impressos" sobre diversos
tipos de superfície, usando técnicas relativamente simples, enquanto os LEDs
convencionais são dispositivos eletrônicos, que precisam ser construídos e
encapsulados individualmente.

O princípio de funcionamento das telas OLED é exatamente o oposto das de
LCD, já que enquanto no OLED os pontos da tela emitem luz ao receberem
uma carga elétrica, no LCD os pontos obstruem a passagem da luz emitida
pelo sistema de iluminação. A principal vantagem do OLED é que as telas
tendem a ser mais compactas e econômicas, já que não precisam de
iluminação adicional. A desvantagem é que esta ainda é uma tecnologia nova,
que ainda tem um bom caminho a percorrer.

A principal dificuldade é encontrar compostos que sejam duráveis e possam ser
produzidos a custos competitivos. As primeiras telas possuíam vida útil de
2.000 horas ou menos, mas as atuais já possuem uma vida útil média de 5.000
horas ou mais. Com a evolução da tecnologia, a vida útil dos compostos tende
a crescer, possivelmente até o ponto em que as telas OLED concorram com os
monitores LCD em durabilidade.

Embora (em 2007) ainda não existam monitores ou telas de TV OLED
produzidas em escala comercial (apenas protótipos), telas menores já são
usadas em um grande volume de celulares, players de áudio e outros
dispositivos compactos. O principal motivo é que a tela nesses dispositivos é
usada por curtos períodos de tempo, o que faz com que a questão da
durabilidade não seja um quesito tão importante quanto em uma tela de
notebook, por exemplo.

Na maioria dos casos, a tela OLED é instalada no meio de duas placas de
vidro, lembrando o design de uma tela de LCD. Apesar disso, não é usado o
tradicional backlight: toda a luz é emitida diretamente pela tela, o que simplifica
o design. As vantagens são o menor consumo elétrico (o que ajuda na
autonomia das baterias) e o melhor ângulo de visão (a tela pode realmente ser
vista de qualquer ângulo, sem distorção das cores). Esta foto mostra a tela
OLED usada em um MP4. Veja que a imagem continua perfeita, apesar do
ângulo da foto:




                                                                               855
O "Santo Graal" para os fabricantes de monitores seria o desenvolvimento de
telas flexíveis, onde os pixels, formados por OLEDs, juntamente com os
transístores e filamentos necessários possam ser "impressos" diretamente
sobre uma superfície plástica, utilizando impressoras de jato de tinta
modificadas. Isso permitiria o desenvolvimento de telas baratas, que poderiam
ser enroladas e usadas em todo tipo de dispositivos. Naturalmente, ainda
estamos longe disso, mas pode ser que a tecnologia eventualmente evolua a
ponto de realmente substituir os monitores LCD.

Características dos Monitores LCD


Hoje em dia, todos os monitores de LCD são de matiz ativa (TFT), mas houve
um tempo que quase todos os notebooks utilizavam telas de matiz passiva. A
diferença fundamental entre as duas tecnologias é que um LCD de matiz ativa
possui um conjunto de três transístores para cada pixel (um para cada uma das
três cores primárias), enquanto os monitores de matiz passiva utilizam apenas
um par de transístores para cada linha e para cada coluna (um de cada lado da
tela).

Uma tela de matiz ativa com resolução de 1024x768 possui nada menos do
que 2.359.296 transístores, enquanto uma tela de matiz passiva com a mesma
resolução possui apenas 3584 (2048 transístores para as linhas verticais e
mais 1536 para as linhas horizontais). Esse arranjo simples fazia com que os
monitores de matiz passiva fossem mais baratos e consumissem um pouco
menos de energia, mas em compensação a qualidade da imagem era muito
ruim, pois não era possível controlar a cor de diferentes pixels dentro da
mesma linha (ou coluna) de forma muito precisa, o que tornava a imagem
borrada e com baixa definição de cor. A atualização também era muito lenta

                                                                          856
(até 200 ms em muitos monitores antigos), o que tornava inviável usar a tela
para jogar ou assistir vídeos.

Conforme as técnicas de produção evoluíram, a diferença de preço entre as
telas de matiz passiva e as de matiz ativa foi caindo, até o ponto em que as
telas de matiz passiva foram substituídas quase que completamente.
Atualmente, telas de LCD de matiz passiva são usadas apenas em alguns
celulares, players de áudio e pequenos dispositivos em geral e, mesmo neste
último nicho, elas vem perdendo espaço para as telas de matiz ativa e telas
OLED.

Entre os monitores de matiz passiva, eram comuns o uso das tecnologias
CSTN (super-twist nematic), DSTN (double-layer super-twist nematic) e HPA
(high-performance addressing), esta última a mais avançada das três. Nas
telas de matiz ativa predomina a tecnologia TFT (Thin-Film Transistor), a ponto
de as telas de matiz ativa serem genericamente chamadas de "telas TFT".

Na verdade, o TFT nada mais é do que a técnica de fabricação utilizada para
construir os transístores sobre o substrato de vidro do monitor. Através de um
processo de deposição, é criada uma fina camada de silício amorfo sobre o
substrato de vidro. Esta camada de silício não é muito transparente, por isso é
usado um processo de litografia para criar a estrutura do transístor e um banho
químico para remover o excesso, deixando apenas as partes ocupadas pelo
transístor.

Assim como no caso dos processadores, o processo é repetido várias vezes
(pelo menos 5), utilizando máscaras de litografia diferentes, de forma a criar as
diversas camadas que formam os transístores.

Estes dois diagramas (cortesia da AU Optronics Corp.) mostram o processo de
litografia aplicado sobre uma das camadas de silício amorfo e um transístor
pronto, depois de passar sucessivamente por várias repetições do processo de
deposição da camada de silício, litografia e banho químico:




                                                                             857
Uma das características mais enfatizadas nos monitores de LCD é o tempo de
resposta, que indica o tempo necessário para que os pixels da tela mudem de
cor e a tela seja atualizada. Em monitores de matiz ativa antigos, o tempo de
resposta era normalmente de 40 ms ou mais, o que corresponde a menos de
25 atualizações por segundo. Eles eram aceitáveis para uso em aplicativos de
escritório, mas ao assistir filmes ou jogar você percebia os fantasmas causados
pela demora na atualização da tela. Muitos monitores atuais, entretanto,
trabalham com tempos de resposta de 8 ms ou menos, o que elimina o
problema. Para ter uma idéia, em um monitor de CRT que utiliza refresh de 75
Hz, a imagem é atualizada "apenas" a cada 13.33 ms.

O tempo de resposta divulgado pelos fabricantes leva em conta o tempo
necessário para um pixel mudar do preto para o branco e para o preto
novamente (mais precisamente, de 90% de obstrução de luz, para 10% e
depois para 90% novamente). Entretanto, as transições entre diferentes
tonalidades de cor (cinza 40% para cinza 50%, por exemplo) demoram mais

                                                                           858
tempo, pois a variação na tensão aplicada é muito pequena, o que faz com que
a célula demore mais para responder. É por isso que a maior parte dos
monitores LCD ainda não são capazes de superar os antigos monitores CRT
em tempo de resposta, muito embora estejam cada vez mais próximos.

Uma das técnicas utilizadas nos monitores atuais para reduzir o problema é o
"Response Time Compensation" (também chamado de "Overdrive") que
consiste em utilizar uma tensão maior do que a necessária para ativar a
mudança de estado das células de cristal líquido. A tensão mais alta é aplicada
durante um curto espaço de tempo, forçando a célula a iniciar rapidamente a
mudança de estado e em seguida rapidamente reduzida, de forma que a
mudança pare exatamente na tonalidade desejada.

Nas versões mais atuais da tecnologia o mesmo princípio é aplicado também
na hora de reduzir a tensão das células, de forma que o pixel permita a
passagem da luz. A tensão é reduzida subitamente e em seguida nivelada no
nível referente ao tom desejado.

Em seguida temos a questão do ângulo de visão, um quesito em que os
monitores LCD vem melhorando bastante.

Monitores de matiz passiva antigos possuíam um ângulo de visão muito
restrito, onde você percebia alterações nas cores ao olhar a tela a partir de um
ângulo de apenas 50 ou 60 graus. Em 1995 surgiu a tecnologia IPS (In-Plane
Switching), desenvolvida pela Hitachi, que permite alinhar horizontalmente as
moléculas de cristal líquido dentro de cada célula, de forma a permitir um maior
ângulo de visão na horizontal. Mais tarde, a Fujitsu desenvolveu a tecnologia
MVA (Multi-Domain Vertical Alignment), que funciona de forma ligeiramente
diferente, mas tem o mesmo efeito. Ambas as tecnologias são atualmente
licenciadas para outros fabricantes, que por sua vez desenvolvem melhorias
diversas.

Atualmente, muitos fabricantes prometem ângulos de visão de 170, ou até
mesmo 180 graus (180 graus é o máximo possível para qualquer tipo de tela
plana, já que a partir daí você passa a ver a lateral e o fundo do monitor e não
a tela propriamente dita), mas as especificações não contam a história
completa.

O primeiro truque é que o ângulo de visão especificado é calculado com base
em um contraste de 10:1 (ou mesmo 5:1, de acordo com o fabricante), um
contraste muito baixo, considerando que qualquer monitor LCD atual trabalha
com um contraste de 400:1 ou mais. Ou seja, ao olhar a tela no ângulo
prometido, você vê a imagem, mas já com uma perda significativa de nitidez.

O segundo é que o ângulo de visão é tão bom apenas na horizontal. Ao olhar o
monitor em um ângulo vertical, a imagem perde definição muito mais rápido.
Um dos efeitos colaterais de alinhar as moléculas do cristal líquido na
horizontal, é justamente uma redução no ângulo de visão vertical. Isso explica
porque telas que precisam ser visualizáveis a partir de qualquer ângulo (como
as usadas nos tablets) normalmente possuem ângulos de visão mais restritos,
mas em compensação válidos tanto na horizontal quanto na vertical.

                                                                            859
Resoluções: Com a popularização dos monitores widescreen, passamos a ter
algumas opções adicionais de resolução além dos tradicionais 800x600,
1024x768 e 1280x1024. Os notebooks da série Vaio TX, por exemplo, usam
telas wide de 11.1" com resolução de 1368x768, um "super-wide" que acaba
sendo um formato bom para assistir DVDs, pois faz com que o filme ocupe toda
a área útil da tela, embora não seja tão confortável para ler textos e rodar
aplicativos de escritório.

A resolução é geralmente proporcional ao tamanho da tela. O grande problema
em produzir telas pequenas com suporte a altas resoluções não é tanto
técnico, mas sim mercadológico. Resoluções muito altas tornam o conteúdo da
tela menos legível, o que afasta compradores em potencial. O próprio Vaio TX,
por exemplo, possui uma tecla de atalho com uma função de "zoom", que
permite reduzir a resolução da tela para 1064x600. Por não ser a resolução
nativa do LCD, a qualidade da imagem fica longe do ideal, mas mesmo assim
muitos usuários realmente utilizam o recurso em muitas situações.

As resoluções mais usadas são:

      QVGA: 320x240 (usada em palmtops)
      VGA: 640x480
      SVGA: 800x600
      XGA: 1024x768
      WXGA: 1280x800
      WXGA+: 1440x900
      SXGA: 1280x1024
      SXGA+: 1400x1050
      UXGA: 1600x1200
      WSXGA: 1680x1050
      WUXGA: 1920x1200
      WQXGA: 2560x1600

Existem ainda dois padrões WXGA "alternativos", com resolução de 1280x768
e 1368x768 inventados pela Sony e usados em alguns de seus notebooks.
Outra variante que está se tornando popular é o XGA de 800x480, comum em
tablets e UMPCs.

Existe ainda a questão do tipo de acabamento usado na tela: fosco ou glossy.
Tradicionalmente, as telas de LCD utilizam um acabamento não-reflexivo,
fosco, que torna o uso da tela mais confortável em ambientes muito iluminados,
ou sob luz solar, mas em troca prejudica um pouco o contraste e a fidelidade
das cores. As telas com acabamento glossy, por sua vez, utilizam um
acabamento reflexivo, que torna as cores mais vivas e melhora o contraste da
tela, mas é, em compensação, mais frágil (tornando riscos e arranhões uma
ocorrência comum) e faz com que a tela se comporte como um espelho,
refletindo muito mais a luz do ambiente. O acabamento glossy recebe
diferentes nomes de acordo com o fabricante. A Acer, por exemplo, chama o
revestimento de "CrystalBrite", enquanto a Sony chama de "XBrite".




                                                                          860
Reflexão em uma tela XBrite: quase um espelho

As telas com acabamento glossy tornaram-se norma nos notebooks com tela
wide, destinados ao público geral, mas as telas foscas ainda sobrevivem em
notebooks destinados ao público "business", como muitos modelos da Lenovo
e da HP.

Finalmente, temos a questão dos dead pixels e stuck pixels, também
bastante enfatizada. Embora uma tela TFT possua um número muito menor de
transístores do que um processador, a fabricação é igualmente difícil, pois o
silício amorfo utilizado na tela possui uma qualidade muito inferior ao wafer de
silício usado na fabricação do processador.

Defeitos de fabricação nos transístores das telas de LCD são uma ocorrência
relativamente comum. Eles não inutilizam a tela, mas causam o aparecimento
de pontos defeituosos, onde um dos transístores (responsável por uma das três
cores primárias) não funciona corretamente, ficando sempre ativo ou sempre
inativo. Com apenas duas das cores primárias ativas, ou uma delas
permanentemente acesa, o pixel passa a exibir cores diferentes das dos
demais, ficando vermelho enquanto os demais estão pretos, por exemplo. Veja
um exemplo:




                                                                            861
Stuck pixel próximo ao canto da tela

Nesta foto usei um fundo preto na tela pra destacar o pixel defeituoso, que fica
vermelho enquanto os outros estão pretos. O que acontece nesse caso é que o
transistor responsável pela cor vermelha dentro do pixel não funciona, de forma
que o ponto fica sempre aberto à passagem de luz.

Para que o pixel exiba a cor preta, os três transístores devem mandar energia
para as moléculas de cristal líquido, de forma que elas impeçam a passagem
da luz. Se um dos três transístores fica sempre desligado, a cor primária
referente a ele fica sempre ativa. Se o defeito for no transístor responsável pela
cor vermelha, então o pixel acabará ficando sempre vermelho sob um fundo
preto.

Se o contrário ocorrer, e o transistor ficar sempre ligado (fazendo com que o
cristal líquido impeça a passagem de luz) então o pixel exibirá uma cor alterada
sob um fundo branco, mas se comportará de forma normal sob um fundo preto.

Pixels que ficam permanentemente apagados são chamados de "dead pixels",
enquanto os que ficam permanentemente acesos, exibindo um ponto vermelho,
verde ou azul sob um fundo escuro são chamados de "stuck pixels" (pixels
emperrados).

A existência de apenas um ou dois dead pixels ou stuck pixels no monitor pode
ser bastante desagradável, já que uma vez que você percebe o pixel
defeituoso, tende a prestar cada vez mais atenção e a ficar cada vez mais
incomodado com ele.

Normalmente, as políticas de troca dos fabricantes prevêem a troca da tela
apenas quando um certo número de dead pixels é excedido, ou em casos onde
eles estão próximos ao centro da tela, por isso é sempre melhor verificar a
existência de pixels defeituosos antes de comprar o monitor ou o notebook. Um
programa que ajuda nesse caso é o Dead Pixel Buddy, disponível no
http://www.laptopshowcase.co.uk/downloads.php?id=1.



                                                                              862
Com o avanço das técnicas de fabricação, os dead pixels estão se tornando
uma ocorrência cada vez mais rara, mas eles são ainda são encontrados em
muitos monitores novos, sobretudo de marcas mais baratas, que muitas vezes
são usadas como "segunda linha", vendendo telas que não passaram pelo
controle de qualidade de algum fabricante maior.

Monitores USB?

Existem dois tipos de "monitores USB". Os primeiros são os bem conhecidos
monitores com hubs USB embutidos, onde temos um monitor LCD ou CRT
normal, que incorpora um hub USB, geralmente passivo. O hub USB neste
caso é apenas um acessório, incorporado ao monitor apenas como uma forma
de diferenciar o produto.

O segundo tipo são os monitores USB "reais", onde a porta USB é realmente
usada como interface para a transmissão da imagem, substituindo o conector
da porta DVI ou VGA. Neste caso, um chip decodificador, incluído no próprio
monitor, faz o papel de placa de vídeo, recebendo as informações referentes à
imagem e exibindo-as na tela. O primeiro monitor baseado na nova tecnologia
é o Samsung 940UX, lançado em Junho de 2007:




                              Samsung 940UX

À primeira vista, ele parece um monitor LCD de 19" tradicional. Além do
conector USB tipo B, ele inclui as tradicionais entradas DVI e VGA, além de
possuir um hub USB embutido, com duas portas. Alguém que não soubesse do
que se trata, poderia muito bem achar que ele é um monitor LCD com um hub
USB embutido e usá-lo durante anos sem saber de sua verdadeira identidade.




                                                                         863
Conectores traseiros do 940UX (USB, DVI e VGA)

Apesar de apenas duas portas estarem disponíveis, o hub USB incluído no
monitor possui na verdade 4 portas. Uma delas é ligada ao chip decodificador e
outra é ligada a um chip de memória Flash, que contém o driver do monitor.

Ao plugar o monitor na porta USB, o chip de memória Flash é detectado como
uma unidade de armazenamento removível, como se fosse um pendrive.
Dentro dele você encontra o executável com o driver do monitor (for Windows).
Só depois de instalar o driver, o sistema passa a reconhecer o monitor e você
pode começar a usá-lo.

Como o funcionamento do monitor depende do trabalho do driver, ele só
funciona dentro das versões suportadas do Windows, de forma que você não
pode usá-lo para visualizar as informações do Setup ou qualquer aviso exibido
durante o carregamento do sistema. Ele também não funciona no Linux, ou
qualquer versão do Windows anterior ao XP (por falta de drivers), de forma que
é muito inconveniente usa-lo como monitor primário. Outro problema é que o
decodificador incluído no monitor não oferece suporte 3D (nem mesmo um 3D
rudimentar, como o encontrado nas placas onboard), de forma que você
também não pode utilizá-lo na grande maioria dos jogos.

A idéia principal por trás do 940UX é que ele seja usado como monitor
secundário. Ou seja, a conexão através da porta USB não foi desenvolvida
para que você utilizasse o monitor como display primário, mas sim para facilitar
sua instalação como segundo monitor. Mesmo que você comprasse dois
940UX, você ligaria o primeiro na saída DVI ou VGA da placa de vídeo e
apenas o segundo é que seria ligado na porta USB.

É possível ainda conectar dois ou mais monitores no mesmo micro, criando
configurações com 3 ou mais monitores, como este sistema de demonstração
apresentado pela Samsung na Cebit 2007:




                                                                            864
Configuração com três monitores USB

A tecnologia de conexão de monitores através da porta USB não é uma
tecnologia proprietária da Samsung, mas sim uma solução desenvolvida por
outra empresa, a DisplayLink (http://displaylink.com), que também está
disponível para outros fabricantes.

Tanto o USB quanto o DVI são links digitais. Não existe nada de
fundamentalmente diferente entre os dois barramentos que impeça o uso de
uma porta USB como interface com o monitor. Seria perfeitamente possível
ligar um monitor diretamente à porta USB e fazer com que o sistema fizesse o
processamento da imagem via software, dispensando assim o uso de uma
placa de vídeo.

O maior problema é que as portas USB são muito mais lentas. Uma porta DVI
single-link oferece um barramento de 4.95 gigabits, suficiente para transportar
imagens a 1600x1200 (com 60 Hz de atualização), enquanto uma porta USB
2.0 oferece apenas 480 megabits, que seriam suficientes apenas para exibir
imagens a 640x480 e ainda assim com baixas taxas de atualização.

Para resolver o problema, a DisplayLink desenvolveu um sistema de
compressão sem perdas, que demanda relativamente pouco processamento.
Um software de compressão incluído no driver do monitor se encarrega de
comprimir a imagem que será enviada através da porta USB e o chip
decodificador incluído no monitor faz o papel inverso, descomprimindo o sinal e
gerando um sinal DVI, que é então enviado ao controlador da tela para
exibição.

O maior problema é que o sistema depende do trabalho de compressão
executado pelo driver, de forma que o uso do monitor através da porta USB
consome um volume considerável de processamento. Podemos fazer uma
analogia com os softmodems, onde todo o processamento é executado via
software, taxando o processador principal.




                                                                           865
A tecnologia desenvolvida pela DisplayLink não é nada que não possa ser
reproduzido por outros fabricantes. Tecnologias de compressão de imagem são
bem conhecidas e são exaustivamente usadas em softwares de acesso
remoto, como o VNC, o NX e o RDP (o protocolo usado pelo Windows Terminal
Services). Por isso, não se surpreenda se no futuro mais e mais monitores
passem a oferecer a opção de conexão através da porta USB.

Outra possibilidade interessante, que já está sendo explorada pela DisplayLink
é o uso de conexões de rede e também de conexões sem fio, tanto em
monitores quanto em projetores, obtida através da combinação do chip
decodificador com uma interface de rede também incluída no monitor.

Em um desktop, usar um monitor wireless não faz sentido, pois a degradação
na velocidade de atualização da imagem e os potenciais problemas não
compensam o ganho em termos de praticidade, mas esta é uma possibilidade
interessante para quem tem um notebook, já que (depois de configurado) o
monitor poderia ser acionado automaticamente quando você colocasse o
notebook próximo a ele, sem dúvida mais prático do que ter que conectar o
cabo, usar as teclas de atalho para ativar a saída de vídeo e depois ainda ter
que ajustar a resolução, como hoje em dia.

A mesma tecnologia pode ser usada em projetores e gadgets diversos. Não é
difícil de imaginar pequenos monitores portáteis, com tela touch-screen, que
possam ser usados ao mesmo tempo como monitores secundários e como
"controle-remoto" do PC.

Na verdade eles já existem, embora ainda pouco populares. Um exemplo é o
Viewsonic Airsync V210, lançado em 2006. Ele é uma espécie de tablet, com
uma tela de 800x600 e um processador ARM de 400 MHz. Assim como o
940UX, ele depende da instalação de um driver, que faz com que o sistema
passe a detectá-lo como um segundo monitor, e também de um software de
gerenciamento, responsável pelas demais funções.




                           Viewsonic Airsync V210

                                                                          866
Assim como em outros produtos-conceito, o Airsync V210 era bastante caro
(nada menos que US$ 995, nos EUA, na época de lançamento) e tinha uma
utilidade limitada. É provável que as próximas safras de produtos tenham
preços mais competitivos, embora os monitores wireless ainda devam
permanecer como produtos de nicho por muito tempo.

Atualmente, é preciso incluir praticamente um computador inteiro dentro do
monitor para oferecer a possibilidade de conectá-lo através da porta USB. A
solução da DisplayLink se baseia no uso de uma placa de referência batizada
de "Kestrel" que inclui, além do chip decodificador, 16 MB de memória DDR, o
chip de memória Flash e o controlador USB, além de um conjunto de circuitos
de apoio:




                      Placa de referência da DisplayLink

Se a conexão for através de um link wireless, a coisa se complica ainda mais,
já que torna-se necessário incluir também a interface de rede, o transmissor e a
antena. Com tecnologia atual, é difícil colocar tudo isso dentro de um único
chip, de forma que é preciso construir uma placa com vários chips separados, o
que torna a solução bastante custosa. Apesar disso, o preço tende a cair
conforme os fabricantes desenvolvam soluções mais integradas.

Não podemos nos esquecer que você pode usar um segundo PC ou notebook
como "monitor wireless" utilizando um software de acesso remoto, como o
próprio Terminal Services do Windows, VNC ou o NX Server (leia meu tutorial
sobre ele no http://guiadohardware.net/tutoriais/nx-server/) ou usá-lo como
monitor secundário usando o Synergy, soluções via software que estão
disponíveis para uso do público técnico desde já:




                                                                            867
Configuração com dois monitores usando o Synergy

Usando o Synergy, o foco do mouse (e também do teclado) passa para o
segundo micro quando você arrasta o ponteiro para um dos cantos da tela, de
forma similar ao que temos ao utilizar dois monitores. O conteúdo da área de
transferência também é sincronizado, de forma que você pode copiar links e
blocos de texto. A configuração do Synergy sai um pouco do escopo do livro,
mas        você       pode       ler       mais      sobre      ele      no:
http://www.guiadohardware.net/artigos/kvm-synergy/.

Capítulo 11: Notebooks

Antigamente, ter um notebook era um luxo reservado apenas aos que
realmente precisavam de portabilidade e podiam gastar o triplo ou o quádruplo
do valor que pagariam por um desktop de configuração equivalente.

Felizmente, este tempo já passou e hoje em dia os notebooks mais populares
custam apenas um pouco mais do que um desktop equivalente, com monitor
de LCD e nobreak. Em alguns casos, promoções e condições de parcelamento
podem fazer com que o note chegue até a custar mais barato.

Outra área em que houve avanço foi a questão do desempenho. Antigamente,
notebook era sinônimo de desempenho inferior. Os modelos antigos utilizavam
HDs muito lentos, processadores de baixo clock, menos memória e antiquados
monitores LCD de matiz passiva, que arruinavam o desempenho e tornavam o
equipamento praticamente inutilizável para jogos e multimídia.

Embora os notebooks atuais ainda continuem perdendo em certas áreas, como
no caso do desempenho do HD e da placa de vídeo, na maioria dos demais
quesitos as coisas já estão equilibradas. Você pode comprar um notebook com
2 GB ou mais de RAM, com um processador dual core, com gravador de DVD,
com uma placa 3D razoável ou até mesmo com uma tela de 17", depende
apenas de quanto você está disposto a gastar.

Os notebooks também ficam atrás na questão do upgrade, já que (com
exceção de modelos específicos) você não tem como instalar mais de um HD

                                                                          868
ou espetar mais do que dois pentes de memória. Atualizar o processador
também é complicado, pois usar um modelo de maior clock (e maior dissipação
térmica) exigiria também a substituição do cooler, o que é raramente possível
num notebook. Em geral, você fica restrito a adicionar mais memória ou
substituir o HD por um de maior capacidade. A partir daí a única forma de
upgrade acaba sendo usar periféricos externos, ligados às portas USB ou
firewire.

Apesar disso, a portabilidade e o "cool factor" dos notebooks acabam
superando suas desvantagens e fazendo com que cada vez mais gente acabe
optando por um. Segundo o IDC, as vendas de notebooks devem superar as
de desktops (em número de unidades) em 2011, uma tendência que deve ser
percebida também aqui no Brasil.

Com a crescente redução na diferença de preço, não é difícil de imaginar que
no futuro os notebooks se tornem padrão, com os desktops cada vez mais
restritos a nichos específicos, como no caso dos gamers mais inveterados e
nas estações de trabalho.

Muitos acham que a popularização dos notebooks vai reduzir o campo de
trabalho para os técnicos de manutenção, mas eu vejo justamente o cenário
oposto. Notebooks precisam de tanta manutenção quanto os desktops (ou até
mais, já que acidentes e quedas são comuns), o que vai na verdade aumentar
a oferta de trabalho. A questão fundamental é que serão exigidos profissionais
com mais conhecimento técnico, que sejam capazes não apenas de identificar
os defeitos e substituir as peças necessárias, mas também de obter as peças
de reposição a um preço aceitável.

Se um técnico pode solucionar um problema na tela trocando todo o LCD e um
segundo pode corrigir o mesmo problema trocando apenas o FL Inverter, sem
dúvida o segundo teria como cobrar um preço muito mais competitivo pelo
conserto.

Estes dois últimos capítulos do livro são dedicados aos notebooks. Vou
começar com uma explicação teórica sobre as diferenças entre os
componentes dos desktops e notebooks, incluindo os processadores, chipsets,
aceleradoras 3D e baterias. No capítulo seguinte entraremos na parte "prática",
mostrando como desmontar, indicando os defeitos mais comuns e incluindo
explicações sobre as particularidades de mais alguns dos componentes
internos.

Categorias

Como tudo na informática, os portáteis podem ser divididos em categorias, que
definem as combinações de tamanho e recursos mais usadas pelos
fabricantes.

Antigamente, era comum que os portáteis fossem classificados em três
categorias: laptops, notebooks e subnotebooks. Os laptops eram os modelos
maiores, basicamente qualquer computador portátil o suficiente para que você
pudesse colocá-lo no colo ("laptop" significa, literalmente, "no colo" ou "sobre o
colo") e usá-lo com relativo conforto. O notebook seria um aparelho menor,
                                                                              869
aproximadamente do tamanho de um caderno universitário (os IBM Thinkpad
antigos são um bom exemplo), enquanto os subnotebooks eram os portáteis
ainda mais compactos, que frequentemente sacrificavam o drive óptico e
utilizavam processadores de baixo consumo para atingir o objetivo.

Um exemplo de subnotebook é o Toshiba Libretto, que foi relativamente
popular durante a década de 1990. A configuração era fraca, mesmo se
comparado com outros portáteis da época, mas em compensação ele era
pouco maior que uma fita VHS e pesava apenas 850 gramas. O modelo mais
rápido da safra inicial foi o Libretto 70, lançado em 1997. Ele era baseado em
uma versão de baixo consumo do Pentium MMX, que operava a 120 MHz e
suportava o uso de até 32 MB de RAM. Uma das maiores limitações era a tela,
de 640x480:




                             Toshiba Libretto 70CT

A partir de um certo ponto, entretanto, cada vez mais fabricantes passaram a
chamar seus portáteis de "notebooks", independentemente do tamanho. Com
isso a designação tradicional deixou de fazer sentido, de forma que hoje em dia
podemos dizer que os termos "laptop" e "notebook" tornaram-se sinônimos.

No lugar da classificação tradicional, os fabricantes passaram a usar os termos
"Desktop replacement" (substituto para o desktop), "Thin-and-light" (leve e fino)
e "Ultraportable" (ultraportátil).

                                                                             870
Os desktop replacement são notebooks maiores, com tela de 15" ou mais
(alguns chegam a usar telas de 21"!), desenvolvidos com o objetivo de serem
confortáveis de usar sobre uma mesa e serem relativamente poderosos, sem
tanta preocupação com a portabilidade ou com a autonomia das baterias.

Os thin-and-light já são modelos menores, com telas de 14" ou menos,
desenvolvidos com o objetivo de serem mais portáteis. Em geral, os thin-and-
light preservam um teclado de dimensões normais e continuam sendo
confortáveis de usar, apesar da tela um pouco menor. O menor espaço interno
limita um pouco a seleção de processadores, mas isto não chega a ser ruim,
pois deixa de fora processadores muito gastadores como os mobile Pentium 4
e mobile Athlon 64.

Finalmente, temos os ultraportáteis, modelos com tela de 12" ou menos, que
pesam menos de 1.7 kg. Para atingir esta marca, eles utilizam processadores
de baixo consumo (e, conseqüentemente, de baixa freqüência), teclados de
dimensões reduzidas, drives ópticos miniaturizados (mais caros e difíceis de
substituir em caso de defeito) ou drives externos e, em muitos casos, HDs de
1.8" ou drives de estado sólido, de memória Flash.

A questão do peso não é necessariamente uma regra. Por exemplo, a Lenovo
classifica o A100, como um ultraportátil por causa da tela de 12", muito embora
ele pese exatos 2 kg e tenha 3 centímetros de espessura, mais do que a
maioria dos ultraportáteis, que ficam entre os 2 e 2.5 cm. Ele fica no limite entre
o que seria considerado um thin-and-light e um ultraportátil:




                                  Lenovo A100


                                                                               871
Na foto a seguir temos uma comparação entre um Acer 5043WLMI e um Sony
Vaio GN-TX670P. O 5043WLMI está no limite entre a classificação de desktop
replacement e thin-and-light (ele possui uma tela de 15.4", mas é relativamente
leve, pesando 2.85 kg). O GN-TX670P, por sua vez, é indiscutivelmente um
ultraportátil, com tela de 11.1" e apenas 1.26 kg. Ele utiliza um processador
Pentium M ULV de 1.2 GHz e um HD de 1.8", da Fujitsu:




                   Acer 5043WLI e Sony Vaio GN-TX670P

Muitos fabricantes ainda usam o termo "subnotebook" para aparelhos ainda
menores, com menos de 1.2 kg, mas atualmente a designação está caindo em
desuso, cedendo espaço para os termos "UMPC" e "MID" (veja a seguir) que
são as novas categorias de pesos leves.

Outro termo conhecido é o "desknote", que tem duplo sentido. Atualmente, o
uso mais comum é em relação aos notebooks maiores, no lugar do termo
"desktop replacement". Nesta conotação, um desknote é um notebook grande,
pouco portável, feito para ser usado sobre a mesa.

Outro uso é em relação aos "desknotes" fabricados pela PC-Chips/ECS entre
2001 e 2005, uma classe de portáteis de baixo custo, sem bateria, que
aproveitavam componentes usados em micros de mesa. A idéia era até boa,
afinal, removendo a bateria, utilizando processadores de baixo custo e
aproveitando projetos de placas-mãe para micros desktop, seria possível
produzir notebooks relativamente baratos. Na prática, entretanto, acabou não
dando muito certo, pois a pequena redução de preço acabava não sendo
suficiente para compensar a perda de portabilidade. Os desknotes eram
famosos também pela baixa qualidade e pelo uso de processadores de baixo
desempenho, como os C3 e os Crusoe, vendidos sob a marca "GigaPro".

                                                                           872
Existiram também modelos baseados no Celeron P6 e no Athlon (as séries
A901, A927 e A929), mas eles esquentavam bastante, resultando em
problemas de estabilidade.

Outra categoria é a dos tablet-PCs, onde o uso de uma tela touch-screen
permite que você use o notebook como uma espécie de bloco de anotações,
navegando entre as funções usando uma stylus e utilizando um teclado
onscreen ou um sistema de reconhecimento de escrita para a entrada de
informações.

A maioria dos modelos atuais são "conversíveis", ou seja, notebooks normais,
onde você pode girar a tela touch-screen, fazendo com que ela se feche sobre
o teclado. Desta forma, é possível usá-lo tanto como um notebook normal,
como um tablet, de acordo com a situação:




                                                                         873
Somados aos recursos de reconhecimento de escrita e anotações, a solução
acaba se tornando relativamente prática. O problema é que o baixo volume de
produção faz com que os tablets tornem-se mais caros que um notebook
"normal", de configuração equivalente, o que acaba fazendo com que eles
fiquem restritos a nichos muito específicos.

Mais uma observação é que nas especificações de notebooks é comum que o
peso seja informado em libras (pounds) ao invés de quilogramas, já que este é
o padrão mais usado nos EUA. Neste caso é só fazer as contas. Uma libra
internacional equivale a 454 gramas (453.59237g se quiser o número exato),
de forma que um "6 pounds notebook" é um notebook que pesa
aproximadamente 2.7 kg.

                                                                         874
UMPCs e MIDs

Conforme a tecnologia foi avançando, os computadores deixaram de ser
mastodontes do tamanho de armários para se tornarem desktops e depois
notebooks. Temos ainda os celulares e palmtops, que desempenham uma
função complementar, servindo como dispositivos de comunicação e
gerenciamento pessoal.

Os UMPCs e MIDs se enquadram entre as duas categorias. Eles são mais
portáteis que os notebooks, mas são muito mais poderosos que os palmtops e
são equipados com processadores x86, o que garante a compatibilidade com
os aplicativos destinados a micros PC.

Originalmente, a plataforma UMPC era um projeto desenvolvido por um
conjunto de fabricantes, com destaque para a Intel e Microsoft. O interesse de
ambos era óbvio: a Intel pretendia vender mais processadores e chipsets e a
Microsoft queria vender mais cópias do Vista.

A idéia era boa: criar uma plataforma de PCs ultra-compactos, menores, mais
leves e com uma maior autonomia que os notebooks, equipados com
processadores dual-core, aceleração 3D, wireless e, opcionalmente, também a
opção de se conectar à web via GPRS, EVDO ou outra tecnologia de rede
celular. Com um UMPC, você teria um PC que poderia levar com você o tempo
todo, carregando seus aplicativos e arquivos, o que permitiria que você se
conectasse à web ou assistisse vídeos em qualquer lugar.

Dentro da idéia inicial, até o final de 2006 teríamos UMPCs a preços
acessíveis, criando um nicho intermediário entre os notebooks e os
smartphones. Quem realmente precisasse de um PC completo, poderia
comprar um notebook, enquanto quem quisesse apenas ter um PC portátil,
para rodar tarefas leves, poderia usar um UMPC.

Embora a maioria dos protótipos de UMPC não tivesse teclados embutidos,
você poderia utilizar um teclado e mouse USB ou Bluetooth, aproveitando para
plugar também um monitor externo enquanto estivesse em casa ou no
escritório e utilizar o teclado onscreen no restante do tempo.

Apesar disso, o plano não deu muito certo. Os poucos modelos disponíveis
inicialmente eram muito caros e as vendas ínfimas, tornando a plataforma mais
um objeto de curiosidade, do que uma alternativa real.

Um dos UMPCs mais bem sucedidos até a primeira metade de 2007 (pelo
menos do ponto de vista técnico) foi o Sony VGN-UX1XN. Ele é um dos poucos
modelos com potência suficiente para rodar o Vista:




                                                                          875
Ele é baseado em um processador Intel Core Solo, de 1.33 GHz, com 1 GB de
memória DDR2 e vídeo Intel GMA 950 integrado. A tela tem apenas 4.5
polegadas, mas mesmo assim usa resolução de 1024x600. Ao invés de utilizar
um HD, ele utiliza um SDD, com 32 GB de memória Flash, o que permitiu
reduzir o peso e o consumo elétrico, além de tornar o aparelho mais resistente
a impactos.

Além da tela touch-screen e da câmera de 1.3 mp integrada, ele inclui um
joystick no canto superior direto (que pode ser usado para funções diversas de
navegação), diversas teclas de atalho e um teclado embutido. Além de navegar
utilizando redes wireless próximas, você pode se conectar utilizando um celular
com Bluetooth, desde que, naturalmente, tenha um plano de dados com uma
quota generosa de tráfego.

Medindo apenas 15 x 9.5 x 3.5cm e pesando apenas 500 gramas, ele se
encaixa muito bem no conceito proposto inicialmente. Embora não seja um
topo de linha, ele possui uma configuração poderosa o suficiente para rodar
todo tipo de aplicativos e as limitações com relação ao tamanho da tela e do
teclado podem ser supridas através do uso de um monitor, teclado e mouse
externos, ataxados à dock-station que acompanha o aparelho. Com um destes,
você não precisaria mais sequer carregar o notebook.

O problema todo se resume a uma única palavra: preço. O VGN-UX1XN
custava, em maio de 2007, nada menos que 2000 euros, uma verdadeira



                                                                           876
bolada. Caso ele chegasse a ser vendido no Brasil, não custaria menos de
10.000 reais, dinheiro suficiente para comprar 5 notebooks low-end.

O mesmo problema afetou todos os outros UMPCs lançados. Ou eles eram
muito caros (a maioria dos modelos custava a partir de US$ 1.600), ou
possuíam uma configuração muito fraca, ou ainda ambas as coisas
combinadas, o que fez com que, sem exceção, todos tivessem vendas
medíocres. A realidade mostrou que construir um UMPC com um processador
dual-core, capaz de rodar o Vista (ou mesmo o XP) por US$ 500 era uma idéia
um pouco à frente de seu tempo.

Para piorar, temos ainda a questão dos softwares e da ergonomia. Os UMPCs
da safra inicial eram baseados no Windows XP ou no Vista e rodavam os
mesmos aplicativos que você usaria em uma PC de mesa. O problema é que
as pequenas dimensões da tela e ausência de um teclado e mouse "de
verdade" tornam o conjunto bastante desconfortável de usar.

Apesar disso, a Intel não desistiu de criar uma nova plataforma que se encaixe
entre o notebook e o smartphone e seja capaz de reforçar suas vendas. Este
slide exibido durante o IDF de 2007 dá uma pista do que vem pela frente:




Como você pode ver, o UMPC foi retirado da lista e substituído pelo "Handtop"
(ou MID), uma nova plataforma, que pode vir a fazer sucesso ao longo dos
próximos anos, conquistando o espaço que os UMPCs não conseguiram.

MID é a abreviação de "Mobile Internet Device". A idéia central é oferecer um
dispositivo portátil, baseado em um processador x86 que possa rodar um
navegador, leitor de e-mail e comunicadores diversos. A principal diferença
entre um MID e um UMPC é que o MID é baseado em um processador muito
mais simples, possui menos memória e utiliza alguns poucos GB de memória
Flash no lugar do HD. A configuração mais fraca visa permitir o
desenvolvimento de dispositivos mais baratos e ao mesmo tempo mais leves
que os UMPCs.

Não existe um formato rígido a seguir. Os fabricantes podem criar produtos
seguindo o conceito de "tablet", usado nos UMPCs, com uma tela touch-screen
e um teclado retrátil (ou um teclado onscreen), ou então criar "mini-notebooks",
com teclados completos e mouses touch-pad, porém mais leves que um
notebook tradicional.


                                                                            877
Os MIDs serão inicialmente baseados nos processadores A100 e A110,
versões de baixo consumo do Pentium M (com core Dothan), que trabalham a
respectivamente 600 e 800 MHz. Embora baratos de se produzir, eles ainda
consomem em torno de 3 watts, o que ainda passa longe da meta de 0.5 watts
exibida no slide.

O plano é deixar os fabricantes brincarem com esta solução provisória,
produzindo modelos conceito que sejam capazes de atrair a atenção do público
e deixar as coisas começarem a acontecer de verdade a partir de 2008, com o
lançamento da plataforma Menlow. Ela será baseada em processador x86 de
baixo consumo, produzido com base na mesma técnica de produção de 45
nanômetros Hi-k, que será utilizada na produção do Penryn. Este novo
processador, batizado de Silverthorne, terá um desempenho similar ao de um
Celeron M atual, mas terá um consumo brutalmente mais baixo, além de um
custo de produção reduzido.

Complementando o Silverthorne, teremos o Poulsbo, um chipset que incluirá
técnicas agressivas de gerenciamento de energia e um grande número de
periféricos integrados, novamente com o objetivo de reduzir os custos de
produção e consumo elétrico.

Ao invés de repetir o mesmo erro que cometeu nos UMPCs, tentando utilizar
versões adaptadas de processadores da sua linha desktop, a Intel optou por
desenvolver do zero o projeto do Silverthorne e do Poulsbo, o que permitiu
reduzir brutalmente o número de transístores. É este conjunto otimizado que
deve atingir a prometida marca de 0.5 watts de consumo para o processador.

Ao que tudo indica, o Silverthorne será um processador de 32 bits, com um
conjunto de instruções muito similar ao do Pentium M e o conseqüente suporte
a um máximo de 4 GB de memória RAM. Em outras palavras, ele será uma
espécie de versão modernizada do Pentium M, com um consumo elétrico muito
baixo, mas sem grandes novidades na questão do processamento.

O plano é que os MIDs utilizem telas com 4.5 ou 6 polegadas, utilizando
resoluções de 800x480 ou 1024x600, pesem em torno de 300 gramas e
custem na faixa dos 500 dólares. A bateria duraria pelo menos 4 horas e, para
atingir ambos os objetivos, o HD seria substituído por uma certa quantidade de
memória Flash, que armazenaria o sistema operacional, aplicativos e arquivos
salvos.




                                                                           878
Protótipo de MID, rodando uma distribuição Linux customizada

Os UMPCs também tinham como meta serem vendidos abaixo da faixa dos
500 dólares, mas na prática acabaram custando pelo menos o triplo disto.
Desta vez, entretanto, a meta parece ser pelo menos um pouco mais realística,
já que estamos falando de uma plataforma muito mais simples.

Outra característica que chama a atenção é que os MIDs não rodarão o
Windows XP ou alguma versão simplificada do Vista, mas sim um sistema
Linux customizado, com uma série de aplicativos adaptados ou desenvolvidos
especialmente para a nova plataforma, como demonstra este outro slide
exibido durante o IDF:




                                                                          879
Os principais motivos divulgados são a redução do custo (já que mesmo uma
cópia OEM do Windows custa pelo menos 50 dólares para os fabricantes, o
que representa mais de 10% do custo final planejado) e o simples fato da
Microsoft não ter uma versão do Windows adequada para a nova plataforma, já
que o Vista é pesado demais para a configuração modesta dos MIDs e o XP
não oferece os recursos de personalização necessários. Pode ser que a
Microsoft resolva investir em uma versão "Mobile" do Vista, de forma a tentar
reaver o terreno perdido, mas ela demoraria para ficar pronta e não resolveria o
problema do custo.

Possivelmente, o primeiro projeto ambicioso de MID dentro do modelo proposto
pela Intel é o Asus Eee, um projeto derivado do Intel ClassMate, porém
destinado ao uso geral e não apenas dentro do ramo educacional. Além de ser
bastante compacto e portátil, ele chama a atenção pelo preço, com a versão
mais simples custando apenas US$ 249 (no EUA).

O Eee é baseado em uma versão de baixo consumo do Celeron M, baseada no
core Dothan (ele ainda não é baseado no Menlow, embora possa vir a ser
utilizado nas próximas versões). O processador opera a 900 MHz e faz par com
um chipset Intel 910GM e 512 MB de RAM (DDR2).




                                                                            880
Asus Eee

Para cortar custos e reduzir o tamanho do aparelho, optaram por utilizar uma
tela de apenas 7", com resolução de 800x480. Assim como no caso dos
processadores, o preço das telas de LCD é diretamente relacionado ao
tamanho. Isso faz com que a tela de 7 polegadas do Eee custe quase um
oitavo do preço de uma tela de 19", como as usadas em monitores para
desktops. Se calcularmos que hoje já é possível comprar um LCD de 19" (ou
EUA) por menos de US$ 300, vemos que a tela usada no Eee pode ser muito
barata se produzida em quantidade.

O Eee inclui também uma placa wireless, placa de rede, modem, som e portas
USB como qualquer notebook. Ele usa uma bateria de quatro células (a maioria
dos notes usa baterias de 6 células), mas devido ao baixo consumo geral, ela
dura cerca de 3 horas. O HD foi substituído por uma unidade de estado sólido
de 2, 4, 8 ou 16 GB (de acordo com o modelo). A memória Flash caiu muito de
preço nos últimos meses (já temos pendrives de 2 GB por menos de 70 reais,
mesmo aqui no Brasil) de forma que, apesar da redução na capacidade, usar 8
ou mesmo 16 GB de memória Flash já é mais barato do que usar um HD.

Como era de se esperar, o Eee roda uma distribuição Linux otimizada para o
aparelho (baseada no Xandros). A proposta é que ele seja fácil de usar, com
foco no público geral, que quer um aparelho portátil para acessar a web e rodar
aplicativos leves. Ao contrário de um palmtop, que utiliza um processador ARM
e um sistema operacional próprio, o Eee é um PC, de forma que nada impede

                                                                           881
que a distribuição Linux pré-instalada seja substituída por outra distribuição, ou
até mesmo por alguma versão do Windows, desde que você consiga instalar o
sistema através de um pendrive ou CD-ROM USB e seja capaz de configurar o
sistema e otimizá-lo para rodar dentro das limitações do aparelho.

Fabricantes

A primeira questão a ter em mente com relação aos notebooks é que existe um
número relativamente pequeno de fabricantes, como a Quanta
(http://www.quantatw.com), Compal (http://www.compal.com) e a Clevo
(http://www.clevo.com.tw), que embora não vendam notebooks sob sua marca,
desenvolvem e fabricam equipamentos para inúmeros outros fabricantes que
os vendem sob sua marca, tais como a HP, Dell, etc. Estes fabricantes são
chamados genericamente de "Contract manufacturer" (CM).

O mesmo acontece com os integradores nacionais, como a Positivo e Amazon.
Com exceção de algumas das etapas finais da montagem, empacotamento e
venda, praticamente tudo é terceirizado. A grande maioria destes modelos
populares são na verdade fabricados pela Compal, Clevo ou a ECS.

A Toshiba já foi uma das maiores fabricantes de notebooks, mas atualmente
terceiriza a maior parte da produção para a Compal. Outro caso interessante é
o da IBM, que vendeu sua divisão de notebooks para a Lenovo.

Temos em seguida o time de fabricantes que vendem equipamentos sob sua
própria marca, como a Asus, a ECS e a Acer. A Asus por exemplo, fabrica
desde os Apple Mac Book até algumas séries do Playstation 3, enquanto a
Acer fabrica alguns dos notebooks da Dell e de diversos outros integradores
espalhados pelo mundo.

O fato de fabricar ou terceirizar acaba influindo pouco no preço final dos
produtos, pois devido à concorrência, os fabricantes trabalham com margens
muito apertadas de lucro. Se a Acer e a HP resolvessem produzir um notebook
com a mesma configuração, onde a Acer o fabrica diretamente e a HP o
terceiriza para a Quanta (por exemplo), o custo inicial acabaria sendo
praticamente o mesmo. As diferenças de preço são geralmente introduzidas
mais adiante no processo, quando são incluídos os gastos com distribuição,
marketing, substituição de aparelhos na garantia e a margem de lucro de cada
fabricante. Quem consegue ser mais eficiente na combinação de todas estas
etapas, acaba levando a melhor.

Em seguida, temos a questão da variação de preço entre diferentes modelos
do mesmo fabricante. Enquanto os modelos mais básicos são vendidos no
exterior por 600 dólares ou menos, modelos apenas um pouco mais parrudos
podem custar o dobro ou o triplo deste valor. Mesmo aqui no Brasil temos esta
variação.

O que ocorre neste caso é que os fabricantes trabalham com margens de lucro
maiores nos lançamentos, aproveitando-se do público que quer "o melhor" e
está disposto a pagar caro por isto, e margens progressivamente menores nos
modelos mais baratos, chegando a vender os modelos antigos com prejuízo,
para se livrar dos estoques. Muita gente acha que os fabricantes nunca
                                                                              882
vendem equipamentos com prejuízo, mas devido à rápida evolução dos
componentes, isso é extremamente comum. Ou seja, do ponto de vista do
custo-benefício, os notebooks mais baratos são geralmente melhores, pois são
"subsidiados" pelos lucros obtidos nos modelos mais caros.

Finalmente, temos a "terceira linha", representada pelos equipamentos
remanufaturados (refurbished). Estes são equipamentos que deram defeito,
foram trocados dentro do período de garantia e estão sendo vendidos
novamente depois de consertados. Embora sejam mais baratos, os
remanufaturados nem sempre são uma boa opção, pois além de serem
equipamentos já com algum uso (muitas vezes com riscos e outros detalhes),
são invariavelmente vendidos com uma garantia menor. Preste atenção na
hora de comprar.

Processadores

Ao longo de livro, comentei sobre os HDs de 2.5" e 1.8" usados em notebooks,
assim como sobre os módulos de memória SODIMM. Dois outros componentes
que são consideravelmente diferentes nos portáteis são os processadores e as
aceleradoras 3D. Você pode perfeitamente comprar um notebook com um
processador dual-core ou até mesmo com duas aceleradoras 3D em SLI, mas
naturalmente ele será equipado com componentes de baixo consumo,
diferentes dos que seriam usados em um desktop.

Antigamente, o mercado de micros portáteis era muito menor, de forma que os
fabricantes não tinham o hábito de investir muito no desenvolvimento de
processadores para portáteis. Até pouco tempo atrás, os processadores mobile
eram quase sempre versões de baixo consumo dos mesmos processadores
destinados a desktops, apenas operando a freqüências um pouco mais baixas
e incluindo algum sistema rudimentar de gerenciamento de energia.

Uma das primeiras empresas a tentar produzir processadores de baixo
consumo, destinado especificamente a notebooks e outros equipamentos
portáteis foi a Transmeta, que citei brevemente no capítulo sobre
processadores. Ela produziu duas linhas de processadores, o Crusoe e o
Efficeon. Ambos eram incrivelmente eficientes, mas ofereciam um baixo
desempenho e o preço não era competitivo com relação aos concorrentes
diretos da Intel e da AMD. A Transmeta conseguiu ganhar algumas batalhas
entre 2002 e 2005, mas acabou naufragando com o lançamento do Pentium M
e do Turion, processadores que conseguem combinar um bom desempenho
com um sistema eficiente de gerenciamento de energia, além de ter sofrido
com a concorrência direta do VIA C3 (veja mais detalhes a seguir), também
desenvolvido para ser um processador de baixo consumo.

Antigamente, os processadores AMD não eram exatamente uma boa opção
para portáteis, pois a AMD não possuía um sistema eficiente de gerenciamento
de energia. Antes do Turion, os processadores "Mobile" da AMD eram
basicamente versões de baixo consumo dos chips para desktops, fazendo com
que o aquecimento e o consumo elétrico ficassem longe do ideal.




                                                                         883
A Intel também cometeu suas gafes, com os Pentium 4 Mobile e os modelos
equivalentes do Celeron Mobile, ambos baseados na arquitetura NetBurst. Um
Mobile Pentium 4 de 3.06 GHz (baseado no core Northwood), por exemplo,
possui um TDP de absurdos 70 watts, o que resultava em notebooks
volumosos, pesados e com pouca autonomia de baterias. Para completar, além
de todas as desvantagens, o Mobile Pentium 4 de 3.06 GHz baseado no core
Northwood perde em processamento para um simples Turion MT-34, lançado
menos de dois anos depois.

A situação mudou com o lançamento do Banias, a primeira geração do Pentium
M. Ele foi um processador desenvolvido sob medida para o uso em notebooks
e acabou se revelando tão eficiente que acabou dando origem ao Core 2 Duo.
A AMD respondeu lançando as versões Mobile do Athlon 64 e do Sempron e
em seguida lançando o Turion e o Turion X2, também processadores bastante
eficientes. Vamos então aos detalhes.

Pentium M

Se você está lendo o livro sequencialmente, o Banias é um velho conhecido, já
que comentei sobre ele no capítulo 2 ao introduzir os processadores baseados
na plataforma Core.

A moral da história é que o Banias é um descendente indireto do Pentium III
Tualatin, em vez de ser uma versão de baixo consumo do Pentium 4. Sob
diversos pontos de vista, ele era um processador mobile desenvolvido
especificamente para ser usado em portáteis, ao invés de ser um processador
para desktops adaptado para uso em notebooks.

Apesar do baixo consumo, o Banias se revelou relativamente poderoso. Um
Pentium M de 1.6 GHz baseado no core Banias supera facilmente um Pentium
4 de 2.4 GHz na maior parte dos aplicativos. Com a decadência da plataforma
NetBurst, o Banias foi sucessivamente atualizado, dando origem à plataforma
Core.

O Banias foi originalmente lançado em versões de 1.3 a 1.7 GHz, todas com
TDP de 24.5 watts e 1 MB de cache L2. Mais tarde foram lançadas também
versões de baixo consumo, de 900 MHz a 1.2 GHz. Ele introduziu o suporte ao
macro-fusion, que permite que pares de determinadas instruções seja
combinados e processados como se fossem uma única instrução. O macro-
fusion é responsável por um grande ganho de eficiência em relação aos
processadores anteriores e continua sendo utilizado em todos os
processadores da família Core.

A segunda geração do Pentium M é baseada no core Dothan, sucessor do
Banias. A primeira diferença entre eles é que o Banias ainda era produzido
usando uma técnica de 0.13 micron, enquanto o Dothan inaugurou o uso da
técnica de 0.09 micron. A redução possibilitou o aumento no cache, que
passou a ser de 2 MB, além de reduzir o consumo do processador que, apesar
do aumento na freqüência de operação, caiu de 24.5W para apenas 21W. O
Dothan trouxe também melhorias no circuito de branch-prediction, que é
basicamente o mesmo usado no Conroe, a primeira versão do Core 2 Duo.

                                                                          884
Pentium M com core Dothan

Com o lançamento da plataforma Sonoma, a segunda geração da plataforma
Centrino, o Pentium M com core Dothan recebeu mais um upgrade, passando
a utilizar memórias DDR2 e bus de 533 MHz. Estas melhorias, entretanto, são
relacionadas ao controlador de memória incluído no chipset e não ao
processador em si.

Todos os processadores Pentium M e Core oferecem suporte ao SpeedStep III
(o SpeedStep original era usado nos processadores baseados na arquitetura
P6 e o SpeedStep II era usado pelos processadores Mobile Pentium 4), que
permite que a freqüência e tensão usadas pelo processador sejam ajustadas
dinamicamente, de acordo com a carga de processamento.

O ajuste é feito em "degraus" (steps, daí o nome). Em um Pentium M de 1.73
GHz, com core Dothan, por exemplo, os "degraus" disponíveis são 1.73 GHz,
1.33 GHz, 1.06 GHz e 800 MHz (a freqüência mínima) e a tensão pode oscilar
entre 0.988 e 1.356V.

A freqüência é alterada através do ajuste do multiplicador, justamente por isso
existe um número tão pequeno de estágios. A freqüência mínima de 800 MHz é
compartilhada por todos os processadores com bus de 533 MHz, enquanto os
modelos com bus de 400 MHz podem reduzir a freqüência para até 600 MHz. A
Intel poderia adicionar degraus adicionais, permitindo que o processador
operasse a 400 MHz, por exemplo, mas optaram por utilizar os 600 e 800 MHz
como mínimo para manter um desempenho razoável mesmo quando o
processador está em modo de baixo consumo.



                                                                           885
No Linux, o SpeedStep é suportado diretamente pelo Kernel e o ajuste da
freqüência é feito pelo daemon "powernowd", o mesmo que dá suporte ao
Cool'n'Quiet e ao PowerNow dos processadores AMD. Na grande maioria das
distribuições atuais, o suporte é ativado automaticamente.

No Windows XP e no Vista, o suporte também vem incluído no sistema e o
ajuste pode ser feito através do Painel de Controle. O maior problema são as
versões antigas do Windows, onde o driver para ativar o SpeedStep precisa ser
obtido junto ao fabricante do notebook, já que a Intel não disponibiliza drivers
genéricos.

No screenshot a seguir temos uma medição de consumo feita em um Asus
M5200, baseado no Pentium M com core Dothan de 1.73 GHz. Ao executar
tarefas pesadas, com o processador operando na freqüência máxima, com o
HD sendo acessado, o transmissor wireless ativado e o brilho da tela no
máximo, o consumo do notebook chega a atingir os 36 watts. Ao executar
tarefas leves, por outro lado, com o processador operando na freqüência
mínima (800 MHz), o transmissor da placa wireless desativado e o brilho da
tela reduzido em 6 níveis, o consumo do notebook chega a se aproximar da
marca dos 10 watts. No screenshot ele está consumindo 10.879W:




Continuando, o Dothan foi lançado em versões de até 2.26 GHz, mas estas
últimas trabalhavam com um TDP muito mais elevado, de 27 watts. Como a
Intel calcula seu TDP com base em uma estimativa de 75% da dissipação
máxima do processador, é seguro dizer que um Dothan de 2.26 pode dissipar
até 36 watts (durante curtos espaços de tempo) em determinadas aplicações.

A partir do Dothan, a Intel passou a vender os processadores sob um sistema
de numeração, similar ao usado nos processadores para desktop. A lista de
processadores baseados no core Dothan inclui o Pentium M 710 (1.4 GHz, 2
MB, 21W, 400 MHz), 715 (1.5 GHz, 2 MB, 21W, 400 MHz), 725 (1.6 GHz, 2
MB, 21W, 400 MHz), 730 (1.6 GHz, 2 MB, 27W, 533 MHz), 735 (1.7 GHz, 2
MB, 21W, 400 MHz), 740 (1.73 GHz, 2 MB, 27W, 533 MHz), 745 (1.8 GHz, 2
MB, 21W, 400 MHz), 750 (1.86 GHz, 2 MB, 27W, 533 MHz), 755 (2.0 GHz, 2
MB, 21W, 400 MHz), 760 (2.0 GHz, 2 MB, 27W, 533 MHz), 765 (2.1 GHz, 2
MB, 21W, 400 MHz), 770 (2.13 GHz, 2 MB, 27W, 533 MHz) e 780 (2.26 GHz, 2
MB, 27W, 533 MHz).




                                                                            886
Todos estes modelos utilizam o soquete 479 e não oferecem suporte às
instruções SSE3 (apenas ao SSE2), que, ironicamente, são suportadas pelo
AMD Turion, que seria seu concorrente direto.

Tanto o Banias quanto o Dothan podem ser considerados processadores
transitórios, que ficam no meio do caminho entre a antiga arquitetura P6, do
Pentium III e os processadores da plataforma Core.

O Banias foi rapidamente descontinuado depois do lançamento do Dothan, de
forma que acabou sendo usado em um número relativamente pequeno de
processadores, fabricados entre 2003 e 2004. O Dothan por sua vez acabou
sendo uma plataforma muito utilizada, pois além de ser usado na grande
maioria dos processadores Pentium M, ele foi usado no Celeron M e é a base
para os processadores de baixo consumo, da série ULV.

Soquetes

As versões iniciais do Pentium M utilizam o soquete 479 (mFCPGA), que é
basicamente uma versão miniaturizada do soquete 478 usado pelos
processadores Pentium 4 para desktops. Na época, a Asus chegou a lançar um
adaptador que permitia instalar um Pentium M em uma placa soquete 478 para
desktop, de forma a montar um PC de baixo consumo.

Apesar do nome, o soquete 479 possui na realidade apenas 478 pinos, pois um
dos contatos não é usado. O soquete 479 é utilizado pelos Pentium M com
core Banias e Dothan e também pelos modelos correspondentes do Celeron.

Em 2006 surgiu o soquete M (FCPGA6), usado pelos processadores da família
Core Duo e também pelos Core 2 Duo T5x00 e T7x00, baseados no core
Meron.




           Soquete M. Note que no lugar da alavanca de retenção,
                 é usada uma trava em forma de parafuso

                                                                         887
Apesar de ser fisicamente muito similar ao soquete 479, o soquete M faz par
com um regulador de tensão atualizado, com suporte às características
elétricas dos processadores Core Duo. Ele marcou também a transição para os
processadores com bus de 667 MHz.

Embora não existisse nenhum grande empecilho técnico com relação à
compatibilidade com os processadores soquete 479, a Intel optou por alterar a
posição de um dos pinos do soquete, de forma a tornar os dois encaixes
incompatíveis.

Em maio de 2007 foi lançada mais uma atualização, na forma do soquete P,
cujo lançamento coincidiu com a migração para o bus de 800 MHz, utilizado
pelos processadores Core 2 Duo mobile atuais. Atualmente (2007) existem
versões do Core 2 Duo tanto para o soquete M (com bus de 667 MHz) quanto
para o soquete P (bus de 800 MHz), mas as versões soquete M devem ser
descontinuadas em breve.

Apesar do soquete P também possuir 478 pinos, assim como os anteriores,
novamente a Intel optou por torná-lo incompatível com os processadores
anteriores, mudando a posição de um dos pinos. Como os upgrades de
processador em notebooks não são comuns, acaba sendo mais fácil para eles
mudarem o soquete a cada modificação nos processadores e nos circuitos de
alimentação, de forma a impedir o uso dos novos processadores em placas
antigas, potencialmente incompatíveis.

Core Duo e Core 2 Duo

O Yonah, lançado em 2006, foi um projeto ambicioso e o primeiro processador
mobile dual-core desenvolvido pela Intel.

A partir do Yonah, a Intel abandonou o uso da marca "Pentium M" e passou a
usar as marcas "Core Solo" e "Core Duo", para (respectivamente) as versões
single-core e dual-core do processador. O Core 2 Duo para desktops se chama
"Core 2 Duo" justamente por ser a segunda versão da plataforma iniciada com
o Yonah.

O uso de dois núcleos é mais problemático em um processador mobile do que
em um processador desktop devido à questão do consumo. Dois núcleos
dissipam mais calor do que apenas um e consomem o dobro de energia.
Apesar disso, o TDP dos Core Duo é de 31 watts, contra os 27 watts dos
Pentium M single-core baseados no Dothan, um aumento de apenas 4 watts.

Isso ocorre por dois motivos. O primeiro é que o Yonah é produzido usando a
técnica de 0.065 micron, o que faz com que, mesmo com dois núcleos, ele
ocupe uma área de apenas 90 mm², contra 84 mm² do Dothan e tenha um
consumo elétrico apenas um pouco mais alto. O segundo é que o Yonah inclui
uma versão aprimorada do SpeedStep, que é capaz de ajustar a freqüência de
operação dos dois núcleos de forma independente.

Isso faz com que o segundo núcleo passe a maior parte do tempo operando na
freqüência mínima, enquanto o primeiro tem sua freqüência ajustada de acordo
com a demanda. Em situações onde os dois núcleos sejam muito exigidos

                                                                          888
durante longos períodos e o processador aqueça de forma exagerada, o
SpeedStep pode também reduzir a freqüência de um dos núcleos "na marra",
reduzindo assim a dissipação até que a temperatura do processador volte a
níveis seguros.

Além de ser um processador dual-core, o Yonah incorporou o suporte a SSE3,
o que melhorou o desempenho em diversas aplicações. Entretanto, a latência
do cache L2 aumentou de 10 para 14 ciclos, o que prejudica o desempenho em
diversas áreas, sobretudo em aplicativos de produtividade, que usam
predominantemente processamento de números inteiros. Isso faz com que um
Core Solo baseado no Yonah realmente perca para um Dothan do mesmo
clock em algumas aplicações, embora ganhe em outras devido ao suporte ao
SSE3.

O cache L2 de 2 MB é compartilhado entre os dois núcleos, essencialmente o
mesmo sistema utilizado no Core 2 Duo. Isso permite que o espaço utilizado
por cada núcleo seja ajustado dinamicamente, conforme o uso. Temos aqui
uma foto de divulgação da Intel que mostra os componentes internos do
processador:




Uma curiosidade é que os processadores "Core Solo" na verdade não
constituem uma linha separada. Eles são simplesmente versões do Yonah com
um dos núcleos desativados, o que os transforma em processadores single-
core com 2 MB de cache, muito similares ao Pentium M com core Dothan.

Mesmo os Celerons baseados no "Yonah-1024" começam a vida como
processadores dual-core e são sucessivamente castrados, até que reste
apenas um dos núcleos, com metade do cache e sem suporte ao SpeedStep.

                                                                       889
Por motivos diversos, a Intel acredita ser mais vantajoso manter uma linha
unificada de produção e castrar os processadores conforme a aplicação
(aproveitando assim processadores defeituosos que de outra forma precisariam
ser descartados) do que manter linhas separadas para os processadores
single-core, dual-core e para os Celerons.

O Yonah foi usado nos Core Duo T2050 (1.6 GHz, 2 MB, 31W, 533 MHz),
T2250 (1.73 GHz, 2 MB, 31W, 533 MHz), T2300 (1.66 GHz, 2 MB, 31W, 667
MHz), T2350 (1.86 GHz, 2 MB, 31W, 533 MHz), T2400 (1.83 GHz, 2 MB, 31W,
667 MHz), T2450 (2.0 GHz, 2 MB, 31W, 533 MHz), T2500 (2.0 GHz, 2 MB,
31W, 667 MHz), T2600 (2.16 GHz, 2 MB, 31W, 667 MHz) e T2700 (2.33 GHz,
2 MB, 31W, 667 MHz).

Temos ainda três modelos de baixo consumo, o Core Duo LV L2300 (1.5 GHz,
2 MB, 15W, 667 MHz), LV L2400 (1.66 GHz, 2 MB, 15W, 667 MHz) e o LV
L2500 (1.83 GHz, 2 MB, 15W, 667 MHz). Como pode ver, eles possuem um
TDP de apenas 15 watts, inferior até mesmo que o dos Celerons baseados no
Dothan-1024.

O Yonah foi utilizado também nos Core Solo T1200 (1.5 GHz, 2 MB, 27W, 667
MHz), T1300 (1.66 GHz, 2 MB, 27W, 667 MHz), T1350 (1.86 GHz, 2 MB, 27W,
533 MHz), T1400 (1.86 GHz, 2 MB, 27W, 667 MHz), T1500 (2.0 GHz, 2 MB,
27W, 667 MHz) e T1600 (2.16 GHz, 2 MB, 27W, 667 MHz).

Todos os processadores baseados no Yonah utilizam o soquete M e são por
isso incompatíveis com as placas anteriores. É importante enfatizar que tanto
os processadores baseados no core Dothan quanto no Yonah não possuem
suporte a instruções de 64 bits (o EM64 está disponível apenas nos Core 2
Duo e superiores). Este é um dos pontos em que os processadores Intel desta
safra inicial perdem para os processadores da AMD.




Core Duo baseado no core Yonah (à esquerda) e Pentium M com core Dothan



                                                                         890
Em seguida temos o Meron, que é a versão mobile do Core 2 Duo. Se
comparado com o Yonah, ele inclui diversas melhorias, com destaque para o
cache de 4 MB, adição de um decodificador adicional de instruções simples (o
Meron possui três, contra dois do Yonah), reforço nas unidades de
processamento de instruções SSE, aumento do comprimento do buffer do
circuito ordenador de instruções e melhorias no circuito de branch prediction.
Combinadas, estas melhorias justificam o brutal aumento no número de
transístores, que saltou de 151 milhões no Yonah para nada menos do que 291
milhões no Meron, distribuídos sob uma área de 144 mm².

Quase tão importante quanto as melhorias relacionadas ao desempenho é o
suporte a instruções de 64 bits, incluído apenas a partir do Meron. Nenhum dos
processadores baseados no Banias, Dothan ou Yonah oferece suporte ao
EM64, o que acaba sendo uma limitação grave.

A questão é que o Meron não é diferente do Conroe, usado nos Core 2 Duo
para desktops. Naturalmente ele possui otimizações relacionadas à redução do
consumo elétrico, mas a arquitetura dos dois é idêntica. Comparando dois
processadores do mesmo clock, o Meron consegue ser de 10 a 20% mais
rápido que o Yonah em quase todos os aplicativos. Apesar do brutal aumento
no número de transístores, o Meron também não consome consideravelmente
mais energia que um Yonah do mesmo clock, de forma que realmente não
existem pontos negativos no Core 2 Duo em relação ao Core Duo.

Apesar das melhorias, a Intel optou por não fazer nenhum grande esforço de
marketing com relação a ele. Notebooks vendidos sob a marca "Centrino Duo"
podem tanto ser baseados no Core Duo baseado no Yonah quanto no Core 2
Duo baseado no Meron, sem distinção. É inclusive possível substituir um
Yonah soquete M, por um Meron (também soquete M) diretamente, na maioria
dos casos precisando apenas de um upgrade de BIOS. O preço dos
processadores também não mudou, de forma que durante muito tempo, era
possível encontrar processadores baseados nas duas arquiteturas pelo mesmo
preço.

A lista de processadores baseados no Meron inclui o Core 2 Duo T5200 (1.6
GHz, 2 MB, 34W, 533 MHz), T5500 (1.66 GHz, 2 MB, 34W, 667 MHz), T5600
(1.83 GHz, 2 MB, 34W, 667 MHz), T7200 (2.0 GHz, 4 MB, 34W, 667 MHz),
T7300 (2.0 GHz, 4 MB, 35W, 800 MHz), T7400 (2.16 GHz, 4 MB, 34W, 667
MHz), T7500 (2.2 GHz, 4 MB, 35W, 800 MHz), T7600 (2.33 GHz, 4 MB, 34W,
667 MHz) e T7700 (2.4 GHz, 4 MB, 35W, 800 MHz).

Existe também o Meron-2M, uma versão reduzida do Meron, com apenas 2 MB
de cache, em vez de 4 MB. Ele é diferente dos T5200, T5500 e T5600,
modelos baseados no Meron que possuem apenas 2 MB do cache (com os
outros 2 MB desativados), pois ele é realmente um processador diferente, com
menos cache, e não um Meron regular com metade do cache desativado.

O Meron-2M é usado no Core 2 Duo T5250 (1.5 GHz, 2 MB, 34W, 667 MHz),
T5300 (1.73 GHz, 2 MB, 34W, 533 MHz), T5450 (1.66 GHz, 2 MB, 34W, 667
MHz), T5470 (1.6 GHz, 2 MB, 34W, 800 MHz), T5500 (1.66 GHz, 2 MB, 34W,


                                                                           891
667 MHz), T5600 (1.83 GHz, 2 MB, 34W, 667 MHz) e T7100 (1.8 GHz, 2 MB,
35W, 800 MHz).

Os Core 2 Duo baseados no Meron e Meron-2M são produzidos tanto em
formato soquete M quanto soquete P. Isso permite que eles sejam usados
tanto em placas novas quanto como substitutos diretos para os Core Duo
baseados no Yonah em projetos já existentes.




                  Core 2 Duo T5600, baseado no Meron-2M

Celeron M

O Celeron M é possivelmente o processador mobile da Intel mais vendido,
usado em uma infinidade de notebooks de baixo custo. Embora todo o
marketing seja concentrado em torno da plataforma Centrino, os notebooks
baseados no Celeron acabam sendo vendidos em maior número, já que são
mais baratos.




                                                                     892
Celeron M 350, baseado no core Dothan-1024

Como de praxe, o Celeron M possui metade do cache do Pentium M. No caso
do Celeron com core Dothan, por exemplo, temos 1 MB contra 2 MB do
Pentium M. Isto não chega a ser uma desvantagem tão grande, já que reduz o
desempenho em apenas 10%, em média. A principal fraqueza do Celeron M
reside na falta de gerenciamento avançado de energia. Ao contrário do
Pentium M, ele trabalha sempre na freqüência máxima, sem a opção de usar o
speedstep, o que significa mais consumo e uma menor autonomia das baterias,
sobretudo ao rodar aplicativos leves, situação onde a diferença de consumo
entre o Celeron e outros processadores (com suporte a sistemas de
gerenciamento de energia) é maior.

Muitos aplicativos que permitem ajustar a freqüência do processador oferecem
a opção de reduzir o clock do Celeron, assim como em outros processadores,
como é o caso do cpufreq, no Linux. Você pode forçar a redução de clock
usando o comando "cpufreq-set", como em:

# cpufreq-set -f 175000
(que força o processador a trabalhar a 175 MHz)

O comando é executado sem erros e usando o comando "cpufreq-info" ele
realmente informa que o processador está trabalhando a 175 MHz. Entretanto,
esta informação é irreal. Na verdade o que acontece é que o processador
continua funcionando na frequência máxima, porém inclui ciclos de espera
entre os ciclos usados para processar instruções. Ou seja, no Celeron M, o que
o comando faz é simplesmente limitar artificialmente o desempenho do
processador, sem com isto reduzir de forma substancial o consumo. Ao forçar
uma frequência baixa, como no exemplo, o notebook vai ficar extremamente
lento, mas vai continuar esquentando quase que da mesma maneira e a carga
da bateria durando praticamente o mesmo tempo.

                                                                          893
Você pode comprovar isso verificando o consumo do notebook com o
processador na frequência normal e com a frequência reduzida. Para isso,
desligue o note da tomada (para que seja usada a carga das baterias) e use o
comando:

# cat /proc/acpi/battery/BAT0/status

Naturalmente, o consumo e a dissipação térmica do processador oscilam de
acordo com o uso. O TDP do Celeron com core Dothan é de 21 watts, o que é
um número aproximado, divulgado pela Intel para toda a plataforma,
independentemente do clock. Na prática, o consumo do Celeron M de 1.5 GHz
fica entre 12 e 15 watts, de acordo com a tarefa. Em comparação, um Pentium
M, quando ocioso, chega a consumir próximo de 6 watts, embora o consumo
de ambos em aplicações pesadas seja similar.

O Celeron M é usado quase que exclusivamente em notebooks de baixo custo,
concorrendo com o Sempron e os modelos single-core do Turion. De uma
forma geral, o Celeron M perde para um Turion, ou mesmo para um Sempron
do mesmo clock em praticamente todos os quesitos, incluindo desempenho e o
consumo elétrico, já que, embora o Sempron e o Turion trabalhem com um
TDP um pouco mais alto, eles operam em modo de baixo consumo na maior
parte do tempo (graças ao PowerNow), enquanto o Celeron opera na
freqüência máxima o tempo todo.

Tenha em mente que o consumo do Celeron M aumenta juntamente com a
freqüência de operação, resultando em um notebook mais quente (e/ou mais
barulhento) e com uma menor autonomia de baterias, diferente de outros
processadores mobile, onde o notebook esquenta mais apenas quando é
realmente mais exigido. Um notebook com um Celeron M de 2.0 GHz só é
realmente mais vantajoso que um notebook com um de 1.6 GHz (por exemplo)
se você realmente vai utilizar a maior potência do processador.

A única defesa para os notebooks baseados no Celeron seria o fato da maioria
ser baseada em chipsets Intel, que oferecem uma qualidade satisfatória e uma
boa compatibilidade geral, sobretudo para quem usa Linux. Muitos notebooks
baseados em processadores AMD utilizam chipsets da VIA e SiS, que são mais
problemáticos.

O chipset é tão importante quanto o processador, sobretudo em um notebook
onde você não tem a possibilidade de substituir a placa mãe, como faria em um
desktop. Isso faz com que, em muitos casos, um notebook baseado no Celeron
possa ser uma melhor opção de compra, devido ao "conjunto da obra", embora
o processador seja fraco.

As primeiras versões do Celeron eram baseadas no "Banias-512" que, como o
nome sugere, é uma versão do Pentium M com core Banias com metade do
cache L2. Esta série inicial engloba o Celeron M 310 (1.2 GHz, 512 KB,
24.5W), 320 (1.3 GHz, 512 KB, 24.5W), 330 (1.4 GHz, 512 KB, 24.5W) e 340
(1.5 GHz, 512 KB, 24.5W).

A série seguinte é baseada no "Dothan-1024", novamente uma versão do
Pentium M com metade do cache. Ela inclui o Celeron M 350 (1.3 GHz, 1 MB,
                                                                         894
21W), 360 (1.4 GHz, 1 MB, 21W), 360J (1.4 GHz, 1 MB, 21W), 370 (1.5 GHz, 1
MB, 21W), 380 (1.6 GHZ, 1 MB, 21W) e 390 (1.7 GHz, 1 MB, 21W).

Todos estes modelos utilizam placas soquete 479 e suportam apenas
instruções MMX, SSE e SSE2, sem suporte a SSE3. Os modelos 360J, 370,
380, 390 suportam XD bit (o recurso de segurança, que protege áreas de
memória, dificultando a ação dos vírus). Todos os modelos utilizam também
bus de 400 MHz.

Em seguida temos os modelos mais atuais, baseados no Yonah e no Meron.
Ao contrário do Pentium M, os Celerons baseados em ambas as séries são
single-core e possuem apenas 1 MB de cache L2. Os núcleos são chamados
respectivamente de "Yonah-1024" e "Meron-1024".

Até o momento (outubro de 2007) não existem Celerons dual-core, nem
notícias sobre um possível lançamento. Mesmo que a Intel decidisse lançar
versões de baixo custo do Meron dual-core, possivelmente venderia os
processadores sob a marca "Pentium", assim como no caso do Pentium E para
desktops (baseados no Allendale) e não sob a marca "Celeron".

Voltando ao que interessa, a série baseada no Yonah-1024 inclui o Celeron M
410 (1.46 GHz, 1 MB, 27W), 420 (1.6 GHz, 1 MB, 27W), 430 (1.73 GHz, 1 MB,
27W), 440 (1.86 GHz, 1 MB, 27W) e 450 (2.0 GHz, 1 MB, 27W).

A série baseada no Meron-1024 inclui o Celeron M 520 (1.6 GHz, 1 MB, 30W)
e 530 (1.73 GHz, 1 MB, 30W). Existe ainda a série baseada no "Meron-L", uma
versão de baixo consumo do Meron-1024 que inclui o Celeron 520 (1.6 GHz, 1
MB, 26W), 540 (1.86 GHz, 1 MB, 30W) e 550 (2.0 GHz, 1 MB, 30W). O Celeron
520 baseado no Meron-L diferencia-se do 520 baseado no Meron-1024 apenas
pelo TDP, que é um pouco mais baixo. As demais características dos dois
processadores são idênticas.

Todos estes modelos utilizam o soquete M e bus de 533 MHz. A exceção fica
por conta do Celeron M 540, que utiliza o soquete P. Todos eles oferecem
suporte também ao SSE3 e ao XD bit.

Processadores ULV

A Intel possui ainda uma linha de processadores de baixo consumo, destinada
a notebooks ultra-portáteis, tablets e UMPCs, composta pelos processadores
da série ULV (Ultra low voltage). Enquanto um Celeron M 440 tem um TDP 27
watts, muitos dos processadores da série ULV trabalham dentro de um TDP de
apenas 5 watts! A redução no consumo é obtida através da combinação de
freqüências de operação mais baixas e o uso de tensões reduzidas, resultando
em um efeito cascata, que reduz dramaticamente o consumo do processador.

Os processadores UVL possuem suas limitações, já que oferecem um fraco
desempenho e (com exceção dos Celerons) estão longe de serem
processadores baratos. Apesar disso, eles são utilizados em alguns notebooks
ultraportáteis (não necessariamente modelos baratos), além de UMPCs de
outros dispositivos compactos.


                                                                         895
Um exemplo de notebook baseado em um processador ULV é o Vaio VGN-
TX670P. Ele é um ultraportátil com uma tela wide de 11.1", que pesa apenas
1.26 kg (incluindo a bateria). Entre outros recursos, ele oferece a possibilidade
de ficar continuamente conectado à web através de uma interface WAN, que é
um transmissor de celular GSM incluído diretamente no notebook, que permite
acessar a web via EDGE ou GPRS, utilizando um plano de dados.




                              Vaio VGN-TX670P

Ele é equipado com um Pentium M 753 ULV de 1.2 GHz, que usa tensão de
apenas 0.924V e está entre os modelos com TDP de 5 watts. Além de
aumentar brutalmente a autonomia das baterias, isso ajuda bastante na
questão do aquecimento. Embora seja muito compacto e silencioso (você
precisa literalmente colar o ouvido no note pra ouvir o ruído do cooler), a
temperatura do processador fica, na maior parte do tempo entre 51 e 53 graus.

Além do processador de baixo consumo, ele utiliza LEDs na iluminação da tela,
no lugar de lâmpadas de catodo frio, e utiliza um HD de 1.8" em vez de um HD
tradicional de 2.5". Graças à combinação dos componentes de baixo consumo
e um sistema bastante agressivo de gerenciamento de energia, este notebook
é incrivelmente econômico. Reduzindo um pouco o brilho da tela, desligando o
transmissor wireless e ativando o gerenciamento de energia para o
processador, o consumo elétrico total do notebook oscila entre apenas 8 e 9
watts. Só para efeito de comparação, um monitor de LCD de 15", para
desktops consome sozinho cerca de 35 watts, 4 vezes mais do que o notebook
inteiro.




                                                                             896
"present rate: 8623 mW": pouco mais de 8 watts de consumo total, incluindo a
                                   tela

Os primeiros Pentium M ULV eram ainda baseados no Banias, mas devido à
baixa freqüência de operação, tensão reduzida e outras melhorias, trabalhavam
dentro de um TDP de apenas 7 watts. Um ano depois, foram lançados os
Pentium M ULV baseados no core Dothan, onde o TDP foi reduzido para
apenas 5 watts.

Os dois primeiros modelos baseados no Banias operavam a, respectivamente,
900 MHz e 1.0 GHz e ainda não eram vendidos sob o sistema de numeração.
O terceiro modelo foi o Pentium M ULV 713, que operava a 1.1 GHz.

A lista dos Pentium M ULV baseados no core Dothan inclui os modelos 723
(1.0 GHz, 2 MB, 5W, 400 MHz), 733 (1.1 GHz, 2 MB, 5W, 400 MHz), 753 (1.2
GHz, 2 MB, 5W, 400 MHz) e 773 (1.3 GHz, 2 MB, 5W, 400 MHz).

Existiram também 2 modelos ULV do Celeron M baseados no "Dothan-512", o
Celeron ULV 353 (900 MHz, 512 KB, 5W, 400 MHz) e o ULV 373 (1.0 GHz, 512
KB, 5W, 400 MHz).

Entre os ULV baseados no Yonah temos o Core Solo U1300 (1.06 GHz, 2 MB,
5.5W, 533 MHz), U1400 (1.2 GHz, 2 MB, 5.5W, 533 MHz) e U1500 (1.33 GHz,
2 MB, 5.5W, 533 MHz) o Core Duo U2400 (1.06 GHz, 2 MB, 9W, 533 MHz) e
U2500 (1.2 GHz, 2 MB, 9W, 533 MHz), além o Celeron M 423 (1.06 GHz, 1
MB, 5.5W, 533 MHz) e 443 (1.2 GHz, 1 MB, 5.5W, 533 MHz).

Existem ainda dois processadores ULV baseados no Meron-2M (a versão do
Meron com apenas 2 MB de cache L2), o Core 2 Duo ULV U7500 (1.06 GHz, 2
MB, 10W, 533 MHz) e o U7600 (1.2 GHz, 2 MB, 10W, 533 MHz).




                                                                          897
A plataforma Centrino

Sem dúvida, vender um pacote com processador, chipset e placa wireless é
muito mais lucrativo do que vender apenas o processador. Controlar o
desenvolvimento dos três componentes facilita também o desenvolvimento de
sistemas mais eficientes de gerenciamento de energia e otimizações em geral.

A idéia por trás de todo o marketing em torno da marca "Centrino" é convencer
os compradores de que os notebooks com o selo são uma escolha segura. A
partir do momento em que os compradores passam a preferir notebooks
baseados na plataforma, a Intel pode trabalhar com margens de lucro maiores
e assim maximizar os lucros, ao mesmo tempo em que mantém o controle
sobre toda a plataforma.




            Processador, placa wireless e chipset: O "kit" Centrino

Fabricantes, como a nVidia, Broadcom, Ralink, Atheros, VIA, SiS, Realtek e
outros vendem chipsets e placas wireless a preços mais competitivos que a
Intel. Em muitos casos os produtos alternativos são inclusive claramente
superiores, como no caso das soluções de vídeo onboard da nVidia e ATI, que
superam em muito os chipsets de vídeo da série GMA900 utilizados nos
chipsets Intel. Apesar disso, o marketing em torno da marca Centrino faz com
que os fabricantes prefiram utilizar os chipsets e placas wireless da Intel,
relegando os produtos de outros fabricantes aos modelos de baixo custo ou a
configurações específicas.

A única brecha importante para o uso de componentes "não-Intel" em
notebooks Centrino é no caso de chipsets de vídeo alternativos. Embora os
chipsets Intel mais usados sejam os chipsets da linha "GM", que incluem vídeo
onboard, estão disponíveis também os chipsets da linha "PM", que são
idênticos, mas não incluem o chipset de vídeo. Eles permitem que os
fabricantes de notebooks incluam chips ou placas MXM ou AXION da nVidia ou
ATI sem com isso abandonar o uso da marca "Centrino". Entre os notebooks
mais caros, é comum o uso de placas nVidia offboard no lugar do fraco vídeo
Intel onboard.

                                                                         898
A primeira encarnação da plataforma Centrino foi lançada em 2003 e responde
pelo codenome Carmel. Ela consiste na combinação de um Pentium M com
core Banias ou Dothan, um chipset i855 e uma placa wireless Intel 2100 ou
2200.

O chipset Intel 855 oferece suporte apenas a memórias DDR e as placas
wireless Intel PRO/Wireless 2100 ainda utilizam o padrão 802.11b (11
megabits), sem suporte ao 802.11g, o que hoje em dia são duas pesadas
limitações. A questão da placa wireless foi solucionada em 2004, com o
lançamento da Intel PRO/Wireless 2200, que pode operar tanto em modo b
quanto g. Quase todos os notebooks Centrino produzidos a partir do segundo
trimestre de 2004 já são equipados com a placa wireless atualizada.

Em 2005 foi lançada a segunda geração, sob o codenome Sonoma. Nessa
época, o Banias já havia sido descontinuado, de forma que passou a ser usado
exclusivamente o Pentium M com core Dothan. O limitado 855 foi substituído
pelo Intel 915, que trouxe o suporte a memórias DDR2, SATA, slots Express
Card, áudio HDA e bus de 533 MHz.

O uso de memórias DDR2 ajuda a reduzir o consumo elétrico, já que os
módulos utilizam uma tensão mais baixa. Existe também um pequeno ganho
com relação à compatibilidade com módulos de diferentes fabricantes, já que
os módulos DDR2 possuem um terminador resistivo dentro de cada chip, o que
garante uma melhor qualidade de sinal e reduz o número de casos de
incompatibilidade, sobretudo ao utilizar dois módulos diferentes.

A partir do Intel 915, todos os chipsets mobile da Intel oferecem suporte a dual-
channel (com exceção dos chipsets da linha "GMS", como o 915GMS, que são
uma linha de baixo custo, com um controlador single-channel). Apesar disso, a
maior parte dos notebooks não vem com o recurso ativado, simplesmente
porque o uso de dual-channel exige o uso de dois módulos de memória, o que
aumenta os custos. Nada impede, entretanto, que você instale um segundo
módulo de memória, ativando assim o dual-channel.

Com relação à placa wireless, os notebooks baseados na plataforma Sonoma
podem utilizar tanto a PRO/Wireless 2200 (BG) quanto a 2915ABG, que, como
o nome sugere, oferece como diferencial o suporte também ao padrão 802.11a.




                                                                             899
Placa wireless Intel 2915ABG mini-PCI instalada

A terceira geração é a plataforma Napa, lançada em 2006. Ela consiste no uso
de um processador Core Solo, Core Duo ou Core 2 Duo em versão soquete M,
combinado com o chipset Intel 945 (que inclui suporte a bus de 667 MHz) e
uma placa wireless Intel 3945ABG ou 4965AGN.

A 3945ABG é uma versão atualizada da 2915ABG, que mantém o suporte aos
padrão a, b e g, enquanto a 4965AGN (a mesma utilizada no Santa Rosa) é
uma placa "draft-n", com suporte a uma versão prévia no padrão 802.11n, que
oferece uma taxa de transmissão teórica de 300 megabits e um alcance até
duas vezes maior que uma placa 802.11g equipada com um transmissor de
potência similar. É fácil diferenciar as placas 4965AGN das antigas, pois além
de serem produzidas exclusivamente no formato Express Mini, abandonando o
formato mini-PCI, elas possuem três conectores de antena, em vez de apenas
dois:




                                                                          900
Placa wireless 4965AGN, no formato Express Mini

Os notebooks baseados no Napa, equipados com processadores Core Solo
ainda são vendidos sob a marca "Centrino", enquanto os baseados em
processadores Core Duo ou Core 2 Duo passaram a utilizar a marca "Centrino
Duo". Não existem notebooks "Centrino Duo" baseados na plataforma Sonoma,
já que ela não prevê o uso de processadores dual-core.

Temos ainda a plataforma Santa Rosa, lançada em 2007. Ela prevê o uso de
um processador Core 2 Duo soquete P (bus de 800 MHz), combinado com um
chipset Intel 965 e uma placa wireless Intel 4965AGN.

O sistema de gerenciamento de energia foi atualizado, de forma a (além de
ajustar a freqüência do processador) permitir a redução da freqüência do FSB
de 800 para 400 MHz nos momentos de baixa atividade, ajudando a
compensar o aumento de consumo trazido pelo uso do bus de 800 MHz
(recurso batizado de "Dynamic Front Side Bus Switching").

A redução da freqüência do FSB resulta em uma economia relativamente
pequena, de menos de 1 watt. Entretanto, muitos notebooks ultra-compactos
baseados na plataforma Centrino chegam a consumir apenas 12 watts ou
menos (incluindo a tela) quando o processador está operando na freqüência
mais baixa, de forma que qualquer nova redução acaba tendo um impacto
significativo. Outro recurso divulgado ao extremo pela Intel é o "Turbo Memory"
(tecnologia Robson), onde é utilizado um módulo de memória Flash ligado ao
barramento PCI Express em conjunto com o ReadyDrive do Vista, de forma a
melhorar o desempenho do acesso ao HD e aumentar a autonomia da bateria.

É importante ressaltar que a economia de energia trazida pelo Turbo Memory é
apenas incremental, pois os HDs de 2.5" e 5400 RPM atuais são bastante
econômicos, consumindo em torno de 3 watts ou menos. Além disso, o HD não
fica todo o tempo girando, o que reduz o consumo prático a níveis bem mais
baixos. O Turbo Memory evita um certo número de acessos ao HD, mas em
troca os próprios chips de memória Flash e a linha PCI Express a que eles
estão ligados consomem uma certa quantidade de energia, o que reduz o
ganho na prática. Não espere mais do que 2 ou 4% de ganho de autonomia de
bateria em um notebook com o Turbo Memory em relação a outro de
configuração similar sem o recurso. O ganho é tão pequeno que fica até

                                                                           901
mesmo difícil de medir, pois a diferença nos resultados fica muitas vezes
dentro da variação normal de um teste para outro.

O Turbo Memory é desejável se for um "brinde", incluído em uma certa
configuração sem um aumento considerável no custo. Não aceite pagar mais
caro por um notebook equipado com ele, pois o ganho realmente não
compensa qualquer aumento expressivo no preço.

É esperada uma atualização da plataforma Santa Rosa para 2008, com a
inclusão de processadores baseados no Penryn. Eles incluirão suporte ao
EDAT (Enhanced Dynamic Acceleration Technology), onde o processador pode
desativar o segundo núcleo e usar a redução no consumo para fazer um
overclock temporário do núcleo ativo, melhorando assim o desempenho em
aplicativos single threaded, que não são capazes de se beneficiar de um
processador dual-core.

Mobile Athlon 64

Os primeiros processadores mobile da AMD foram o K6-2+ (uma versão do K6-
2 com 128 KB de cache L2 on-die) e o K6-3+ (uma versão de baixo consumo
do K6-3, com 256 KB de cache L2), que concorriam com os processadores
Mobile Pentium II e Mobile Pentium III da Intel.

Em 2001 lançaram o "Mobile Athlon 4", uma versão do Athlon Palomino com
suporte ao PowerNow, o sistema de gerenciamento de energia que é usado
(com modificações) até os processadores atuais. Ele foi seguido pela linha
Mobile Athlon XP, composta por versões de baixo consumo do Thoroughbred e
do Barton. Chegamos então à era atual. :)

Os primeiros processadores mobile baseados no Athlon 64 foram os Mobile
Athlon 64, que nada mais eram do que versões adaptadas dos processadores
para desktop. Por questões relacionadas ao custo e ao consumo elétrico, a
AMD optou por utilizar o soquete 754 em toda a leva inicial de processadores
mobile, adotando o uso de um barramento dual-channel com a memória
apenas a partir do Turion X2.

A série mobile utiliza um encapsulamento ligeiramente diferente dos
processadores soquete 754 para desktops, sem o spreader metálico sobre o
die do processador. Isso visa reduzir o peso e o espaço ocupado pelo
processador, facilitando o uso em notebooks:




                                                                         902
Mobile Athlon 64

O soquete, por sua vez, não é diferente do soquete 754 usado em placas para
micros desktop. Existiram casos de notebooks baseados em versões desktop
do Athlon 64, mas eles foram poucos, pois não existia uma grande diferença de
preço entre as versões desktop e mobile dos processadores.




  Soquete 754 usado pelos processadores mobile: o mesmo das placas para
                                 desktop

As primeiras séries eram baseadas no core ClawHammer, de 0.13 micron.
Com exceção do encapsulamento, eles não tinham nada de diferente dos

                                                                         903
processadores para desktop (não podiam ser considerados processadores
"mobile" dentro do conceito tradicional) e trabalhavam dentro de um TDP de
absurdos 81.5 watts.

É importante enfatizar que a Intel e a AMD calculam o TDP de forma diferente.
Nos processadores Intel, o TDP corresponde a 75% da dissipação máxima do
processador, enquanto nos AMD ele corresponde a 100% da dissipação
máxima. Isso causa uma certa discrepância ao comparar diretamente o
consumo de processadores dos dois fabricantes baseado apenas nas
especificações, já que o consumo real dos processadores Intel é quase sempre
um pouco mais alto do que o TDP sugere.

Na prática, o consumo dos Mobile Athlon 64 baseados no ClawHammer ficava
em torno de 40 a 60 watts em aplicativos pesados, com apenas os modelos de
clock mais elevado se aproximando dos 81.5 watts divulgados. Eles contavam
também com uma versão atualizada do PowerNow (agora uma versão mobile
do Cool'n'Quiet, com melhorias em relação ao PowerNow usado nos
processadores anteriores), que mantém o consumo a níveis mais toleráveis
durante os momentos de baixa atividade. A principal diferença entre os dois
sistemas é que no PowerNow a freqüência do processador pode ser reduzida
para até 800 MHz, enquanto no Cool'n'Quiet a freqüência mínima é de 1.0
GHz. Apesar disso, os mobile Athlon 64 baseados no ClawHammer eram muito
gastadores e foram relativamente pouco usados.

Os modelos do Athlon 64 baseados no core ClawHammer incluem o 2700+
(1.6 GHz, 512 KB, 81.5W), 2800+ (1.6 GHz, 1 MB, 81.5W), 3000+ (1.8 GHz, 1
MB, 81.5W), 3200+ (2.0 GHz, 1 MB, 81.5W), 3400+ (2.2 GHz, 1 MB, 81.5W) e
3700+ (2.4 GHz, 1 MB, 81.5W).

A primeira tentativa da AMD em produzir um processador realmente "mobile"
baseado no Athlon 64 foi o core Oakville. Embora ele nada mais fosse do que
Athlon 64 com core Winchester (0.09 micron) disfarçado, a AMD foi capaz de
manter os processadores baseados no Oakville trabalhando dentro de um TDP
de 35 watts, utilizando uma tensão um pouco mais baixa (1.35V), desativando
o segundo controlador de memória e utilizando freqüências de clock um pouco
mais baixas.

O Oakville foi usado em apenas três versões: 2700+ (1.6 GHz, 512 KB, 35W),
2800+ (1.8 GHz, 512 KB, 35W) e 3000+ (2.0 GHz, 512 KB, 35W).

O seguinte foi o Newark, que era baseado no core Venice e graças a isso
oferecia suporte às instruções SSE3. Ele foi vendido em versões de até 2.6
GHz (4000+), com um TDP de 62 watts, o que é, novamente, muito para um
notebook. Os modelos incluem o 3000+ (1.8 GHz, 1 MB, 62W), 3200+ (2.0
GHz, 1 MB, 62W), 3400+ (2.2 GHz, 1 MB, 62W), 3700+ (2.4 GHz, 1 MB, 62W)
e 4000+ (2.6 GHz, 1 MB, 62W).




                                                                         904
Mobile Sempron

Como de praxe, foi lançada também uma linha de baixo custo, vendida sob a
marca "Sempron". O Mobile Sempron diferencia-se do Mobile Athlon 64 por
possuir menos cache L2 (apenas 128 ou 256 KB, de acordo com o modelo) e
vir com o suporte a instruções de 64 bits desativado. Por ser um processador
barato, ele foi usado em um número muito grande de notebooks de baixo
custo, sobretudo nos modelos mais baratos da Acer, vendidos aqui no Brasil
entre 2004 e 2006.

As primeiras versões do Mobile Sempron utilizavam o core Dublin, derivado do
ClawHammer e ainda fabricado em uma técnica de 0.13 micron. Ele foi usado
nas versões de 1.6 e 1.8 GHz, mas elas foram logo descontinuadas.

As versões mais populares foram as baseadas no core Georgetown, que é na
verdade uma versão com menos cache do core Oakville (0.09 micron), usado
no Mobile Athlon 64.

Ele foi usado nos Mobile Sempron 2600+ (1.6 GHz, 128 KB, 62W), 2800+ (1.6
GHz, 256 KB, 62W), 3000+ (1.8 GHz, 128 KB, 62W), 3100+ (1.8 GHz, 256 KB,
62W) e 3300+ (2.0 GHz, 128 KB, 62W).

Mais tarde, foram lançados modelos baseados no core Albany, uma versão
castrada do core Newark usado no Mobile Athlon 64. Ele trouxe
compatibilidade com as instruções SSE3, mas a AMD aproveitou o ganho para
esticar os valores do índice de desempenho.

O Albany foi usado no 3000+ (1.8 GHz, 128 KB, 62W), 3100+ (1.8 GHz, 256
KB, 62W), 3300+ (2.0 GHz, 128 KB, 62W), 3400+ (2.0 GHz, 256 KB, 62W) e
3600+ (2.2 GHz, 128 KB, 62W).

Estes processadores da safra inicial não são muito aconselháveis, pois o
desempenho é muito inferior ao dos Turions e o consumo elétrico é bastante
elevado. O TDP de 62 watts é na verdade atingido apenas pelo 3300+
(Georgetown) e pelo 3600+ (Albany), quando operando em full load. Os outros
modelos consomem ligeiramente menos e o uso do PowerNow mantém o
processador operando a 800 MHz enquanto o processador está ocioso,
reduzindo o consumo de forma substancial. Mesmo assim, o notebook
esquenta bastante ao rodar programas pesados e a autonomia das baterias
não é das melhores.

Existiram ainda duas séries de baixo consumo do Mobile Sempron, baseadas
no core Sonora e no core Roma. Apesar de ainda serem baseados na técnica
de 0.09 micron, eles utilizam uma tensão mais baixa (1.25V no Sonora e 1.2V
no Roma, contra os 1.4V do Georgetown), operam a freqüências um pouco
mais baixas e incorporam um conjunto de pequenas melhorias que reduzem o
consumo. Graças a tudo isso eles são capazes de trabalhar dentro de um TDP
de 25 watts.




                                                                         905
Com exceção da pequena diferença na tensão usada, a única grande diferença
entre o Sonora e o Roma é o fato do Roma oferecer suporte ao SSE3 e o
Sonora não.

O core Sonora foi usado em modelos 2600+ (1.6 GHz, 128 KB, 25W), 2800+
(1.6 GHz, 256 KB, 25W), 3000+ (1.8 GHz, 128 KB, 25W) e 3100+ (1.8 GHz,
256 KB, 25W). O Roma, por sua vez, foi usado em modelos 2800+ (1.6 GHz,
256 KB, 25W), 3000+ (1.8 GHz, 128 KB, 25W), 3100+ (1.8 GHz, 256 KB, 25W),
3300+ (2.0 GHz, 128 KB, 25W) e 3400+ (2.0 GHz, 256 KB, 25W). Note que,
apesar de não existir distinção entre o índice de desempenho usado nos
processadores das duas linhas, os Roma são um pouco mais rápidos, graças
ao suporte a SSE3.

Você pode descobrir rapidamente se um notebook usa uma das versões de
baixo consumo através do CPU-Z. Se ele for identificado como Sonora ou
Roma, ou se utilizar tensão de 1.25V ou 1.2V, então trata-se de um modelo de
baixo consumo.

Outra observação é que, assim como no Sempron para desktops, o índice de
desempenho do Mobile Sempron é calculado com relação ao desempenho do
Celeron D, por isso não deve ser levado muito a sério, nem comparado
diretamente com o índice de desempenho do Mobile Athlon 64, que é calculado
de forma diferente.

Você pode se perguntar o por que da AMD especificar o mesmo TDP para
todos os modelos dentro de cada série, se apenas os com clock mais elevado
atingem efetivamente o valor especificado (e mesmo assim, nem sempre). Por
que eles não especificam um TDP mais baixo para os processadores mais
lentos?

O principal motivo é facilitar a vida dos fabricantes. O TDP serve como uma
indicação geral do tipo de refrigeração que um determinado processador
necessita, de forma que o fabricante possa desenvolver um projeto adequado.
Se um determinado modelo de notebook usa um cooler e reguladores de
tensão adequados para um processador de 62 watts, por exemplo, significa
que o fabricante pode usar qualquer processador com o core Albany, por
exemplo, variando o modelo de acordo com a configuração desejada, sem
precisar mexer em outros componentes do projeto.

Isso permite que um mesmo modelo de notebook seja vendido em diversas
configurações diferentes, com diferentes combinações de processador,
memória, HD e placa wireless, como é cada vez mais comum hoje em dia.

O TDP do processador é também uma dica de que processadores você pode
usar em caso de upgrade. Salvo limitações por parte do BIOS, você pode
utilizar qualquer processador que utilize o mesmo soquete, opere dentro das
tensões suportadas e utilize um TDP igual ou inferior ao processador original.
Você poderia substituir um Sempron 3000+ baseado no core Albany (1.8 GHz,
62W) por um Albany 3600+ (2.2 GHz, 62W), ou por um um Sonora 3400+ (2.0
GHz, 25W), por exemplo.



                                                                          906
Concluindo, existem também alguns Mobile Sempron que utilizam o soquete
S1. Eles são baseados no core Keene que, ao contrário dos anteriores, inclui
suporte à instruções de 64 bits, além de usar mais cache L2. Os Semprons
baseados no Keene são todos modelos de baixo consumo, com TDP de
apenas 25 watts.

A lista dos modelos inclui o 3200+ (1.6 GHz, 512 KB, 25W), 3400+ (1.8 GHz,
256 KB, 25W), 3500+ (1.8 GHz, 512 KB, 25W) e 3600+ (2.0 GHz, 256 KB,
25W).

Existiu ainda uma versão "fanless" (que pode trabalhar usando apenas um
dissipador simples, sem uso de exaustor), o Sempron 2100+, que operava a
1.0 GHz e trabalhava dentro de um TDP de apenas 9W. Ele era destinado a
ultraportáteis, UMPCs e tablets, concorrendo com os processadores da linha
ULV da Intel.

Turion 64

Apesar dos processadores Pentium M, baseados no core Dothan, e os Core
Duo, baseados no core Yonah não serem capazes de operar a freqüências
muito altas se comparados aos processadores para desktop, eles ofereciam
um desempenho por ciclo de clock muito bom, o que permitia que competissem
com processadores para desktop, baseados na arquitetura NetBurst, que
operavam a freqüências muito mais elevadas, mesmo mantendo um consumo
elétrico relativamente baixo.

A arquitetura equilibrada, combinada com o esforço de marketing da Intel em
torno da marca Centrino fizeram com que eles fossem um sucesso de vendas
nos notebooks de médio e alto custo. Apesar disso, os notebooks baseados na
plataforma Centrino sempre foram mais caros e o processador Intel para
notebooks de baixo custo era o Celeron M, um chip muito menos competitivo,
devido ao baixo clock, menos cache e à ausência do suporte ao SpeedStep.

A resposta da AMD veio na forma do Turion 64, uma versão mobile do Athlon
64 soquete 754, que operava a freqüências mais baixas e incluía o PowerNow.
Além de ser relativamente barato, o Turion oferecia um desempenho muito
bom, chegando a superar o Pentium M baseado no core Dothan em diversas
aplicações, e era relativamente econômico em termos de consumo elétrico.

Levando em conta apenas a questão do processador, o Turion era competitivo
com o Pentium M e era uma escolha muito melhor que o Celeron M. A questão
é que um notebook é um conjunto, onde o resultado não depende apenas das
características do processador, mas sim da combinação de todos os
componentes. A Intel possuía uma plataforma mais sólida, já que desenvolvia
seus próprios chipsets e placas wireless, enquanto os notebooks baseados no
Turion utilizavam chipsets da ATI, VIA ou SiS, criando plataformas mais
problemáticas.

Isso fazia com que os Turion acabasse sendo usado predominantemente nos
notebooks de baixo custo, o que não era necessariamente ruim, pois permitia
que você comprasse notebooks relativamente potentes, baseados nas


                                                                         907
diferentes versões do Turion a preços substancialmente mais baixos que os
baseados na plataforma Centrino.




                  Turion 64 e Pentium M com core Dothan

O Turion 64 também surgiu como uma derivação do Athlon 64 com core Venice
(assim como o Mobile Athlon 64 com core Newark), mas desta vez a AMD
tomou cuidados adicionais. Para reduzir o consumo elétrico, a AMD adotou o
uso de transístores de chaveamento mais lento, que reduzem a freqüência
máxima de operação do processador, mas em troca oferecem um consumo
elétrico muito mais baixo. Como um processador mobile como o Turion nunca
opera a freqüências muito elevadas, devido à questão do consumo e
dissipação térmica, a troca acabou fazendo sentido. Foi incluído ainda um
estágio adicional no sistema de gerenciamento de energia (o C3), que colocou
o Turion um passo à frente dos Athlon 64 para desktops na questão do
gerenciamento de energia.

Os Turions da série MT trabalham dentro de um TDP de 25 watts, enquanto os
ML são um pouco mais gastadores e adotam um TDP de 35 watts. Existem
ainda versões com 512 KB e 1 MB de cache L2, mas todas as versões utilizam
um controlador de memória single-channel (justamente por isso é utilizado o
soquete 754), uma restrição adicionada para reduzir o consumo.

Assim como os processadores soquete 754 para desktop, eles suportam
apenas módulos DDR (sem suporte a DDR2) o que, combinado com o acesso
single-channel, estrangula o barramento com a memória, prejudicando o
desempenho do processador em diversas aplicações.

A diferença no consumo é justificada pelo tipo de transístores e pelas
otimizações utilizados em cada série. Apesar disso, não existe diferença de


                                                                         908
desempenho entre um MT e um ML de mesmo clock (e com a mesma
quantidade de cache).

Esta versão inicial do Turion 64 foi chamada de Lancaster e, assim como o
Venice, era produzida usando a técnica de 0.09 micron e oferecia suporte a
SSE3 e instruções de 64 bits, além do suporte ao PowerNow.

O core Lancaster foi usado no MT-28 (1.6 GHz, 512 KB, 25W), MT-30 (1.6
GHz, 1 MB, 25W), MT-32 (1.8 GHz, 512 KB, 25W), MT-34 (1.8 GHz, 1 MB,
25W), MT-37 (2.0 GHz, 1 MB, 25W), MT-40 (2.2 GHz, 1 MB, 25W), ML-28 (1.6
GHz, 512 KB, 35W), ML-30 (1.6 GHz, 1 MB, 35W), ML-32 (1.8 GHz, 512 KB,
35W), ML-34 (1.8 GHz, 1 MB, 35W), ML-37 (2.0 GHz, 1 MB, 35W), ML-40 (2.2
GHz, 1 MB, 35W), ML-42 (2.4 GHz, 512 KB, 35W) e ML-44 (2.4 GHz, 1 MB,
35W).

Mais adiante foi lançado o core Richmond, que utiliza o soquete S1, o mesmo
utilizado pelo Turion X2. Ele tem a função de ser um processador de transição,
permitindo que os fabricantes possam construir notebooks baseados em placas
S1, sem necessariamente migrar para o Turion X2, que é mais caro. O
Richmond foi vendido em apenas duas versões: MK-36 (2.0 GHz, 512 KB,
31W) e MK-38 (2.2 GHz, 512 KB, 31W).

Um dos principais pontos fortes do Turion é o sistema de gerenciamento de
energia. Tanto o PowerNow, usado nos processadores mobile, quanto o
Cool'n'Quiet, usado nos processadores para desktop, trabalham dentro do
mesmo princípio, ajustando o multiplicador (e conseqüentemente a freqüência)
do processador, juntamente com a tensão, conforme mais ou menos poder de
processamento é exigido.

Cada "degrau" corresponde a uma redução de 1x no multiplicador o que (no
caso do Turion) corresponde a uma redução de 200 MHz na freqüência do
processador. A freqüência é reduzida sequencialmente até atingir 1.6 GHz,
ponto no qual o processador entra no estágio mais baixo, onde passa a operar
a apenas 800 MHz (independentemente do modelo).

Juntamente com a freqüência, a tensão também é reduzida, já que o
processador é projetado para funcionar estavelmente usando tensões mais
baixas, desde que operando a freqüências também mais baixas. Quando mais
processamento é exigido, a tensão volta ao valor inicial, seguida do aumento
correspondente na freqüência.

Um Turion ML-40, por exemplo, opera a 2.2 GHz e tem um TDP de 35 watts,
mas consome este valor apenas quando está operando na freqüência máxima.
Conforme o PowerNow reduz a freqüência de operação do processador, o
consumo cai para 29 watts (2.0 GHz), 24.5 watts (1.8 GHz), 20 watts (1.6 GHz)
e, finalmente, 7.9 watts (800 MHz).

Como a mesma freqüência de 800 MHz é usada como estágio final em todos
os Turions, independentemente da freqüência original, todos os modelos
acabam consumindo apenas 7.9 watts quando ociosos.



                                                                          909
Para ter uma idéia da diferença que isso representa no consumo global da
máquina, fiz um teste rápido usando um Acer 5050, que usa um Turion MK-36,
que possui um TDP de 31 watts.

Rodando o equivalente Linux do teste do Super PI, o processador chaveia para
a freqüência máxima e o notebook consome 41.8 watts (medidos usando o
comando "cat /proc/acpi/battery/BAT1/state"). Com o sistema ocioso, o
processador passa a operar a 800 MHz e o consumo global cai para apenas
18.3 watts (incluindo a tela e a placa wireless), uma redução de mais de 50%.
Como o teste taxa apenas o processador principal, sem um efeito significativo
sobre os demais componentes, é seguro dizer que quase toda a economia de
23.5 watts pode ser creditada à ação do PowerNow.

Desativando o transmissor da placa wireless e reduzindo o brilho da tela, é
possível ficar abaixo da marca dos 15 watts, o que é menos do que o
consumido por muitos notebooks baseados na plataforma Centrino.

Outra observação é que no Turion o controlador de memória é incluído no
processador, enquanto nos processadores Intel ele faz parte do chipset. O
controlador de memória corresponde a um consumo de pouco menos de 1
watt, que não entra na conta do TDP feita pela Intel.

Embora os Turions possam consumir mais quando operando em full-load, eles
acabam consumindo menos que um Pentium M equivalente em tarefas leves, o
que acaba levando a situações paradoxais, onde a autonomia de baterias do
notebook baseado no Turion é menor que a de um notebook equivalente
baseado em um Pentium M ao rodar benchmarks e tarefas intensivas, mas
acaba sendo maior em situações reais de uso, onde o processador acaba
operando na freqüência mínima na maior parte do tempo.

Turion X2

O próximo passo da AMD foi o lançamento do Turion X2, com o objetivo de
competir com o Core 2 Duo baseado no core Merom.

O Turion X2 é, essencialmente, uma versão de baixo consumo do Athlon X2,
que preserva as mesmas características básicas, como o uso do Crossbar
Switch, o controlador de memória DDR2 dual-channel (compartilhado entre os
dois núcleos) e o uso do barramento HyperTransport.

Naturalmente, o fato de ser um processador mobile torna necessário o uso de
um gerenciamento mais agressivo de energia. Entra em cena então uma
versão atualizada do PowerNow, com suporte a um sistema de gerenciamento
independente de cada núcleo.

O nível de utilização de cada núcleo é continuamente monitorado e os níveis
apropriados de economia de energia são aplicados. Isso permite que um dos
núcleos continue operacional, enquanto o outro "hiberna", em um dos estágios
de baixo consumo.

O primeiro nível é o ajuste de freqüência e tensão de operação do processador,
essencialmente o mesmo sistema já usado nos processadores anteriores. A

                                                                          910
freqüência de operação é reduzida para 800 MHz e a tensão para 1.075V (ou
menos, de acordo com a revisão do processador). O próximo nível é o estágio
C1 (Halt) onde o núcleo é essencialmente desativado, mas os caches e
registradores continuam ativos. A partir daí, existem mais três estágios
adicionais (C2, C3 e C4), onde mais componentes internos são desativados,
reduzindo o consumo, mas aumentando o tempo de reativação. No estágio C1
o consumo do processador cai para apenas 4.5 watts e no estágio C4 para
apenas 0.085 watts.

Apesar de ser um processador dual-core, o sistema de gerenciamento faz com
que o consumo acabe sendo similar, ou pouca coisa superior ao dos Turions
single-core, muito embora o desempenho seja superior.

Com os dois núcleos operando à 800 MHz, o Turion X2 (de 0.09 micron)
consome 10 watts, o que dá apenas 5 watts por núcleo, menos que os 7 watts
do Turion single-core. O principal motivo da redução é o uso de uma versão
aprimorada do SOI (silicon on insulator), a técnica que permite adicionar uma
fina camada de material isolante entre os transístores do processador e o
waffer, reduzindo a perda de elétrons e conseqüentemente o consumo do
processador. O SOI é utilizado também em outros processadores AMD
produzidos usando a técnica de 0.09 micron em diante, mas neste caso é
utilizada uma revisão anterior, menos eficiente que a usada no Turion X2.

O Turion X2 adotou o uso do soquete S1, uma versão mobile do soquete AM2,
onde também são utilizados módulos de memória DDR2, com suporte a dual-
channel. Como nem todos os fabricantes utilizam dois módulos de memória
(sobretudo nos modelos de baixo custo), você nota um certo ganho de
desempenho ao instalar um segundo módulo, não apenas pelo aumento no
volume de memória instalada, mas também pela ativação do dual-channel.

Um dos destaques do soquete S1 é o número reduzido de pinos. Ele possui
apenas 638 pinos, contra 940 pinos do soquete AM2 para desktops (menos até
mesmo que o soquete 754, que é single-channel). O número reduzido de pinos
ajudou a reduzir o tamanho do encapsulamento do processador, que passou a
ser um pouco menor que o dos processadores soquete 754. O soquete S1 tem
uma aparência muito similar ao soquete M usado pelos processadores Intel:




                                                                         911
Turion X2 instalado no soquete S1

O soquete S1 não é uma exclusividade do Turion X2. Ele é utilizado também
pelo Turion single-core com core Richmond e também pelo Mobile Sempron
baseado no core Keene. Uma forma muito simples de verificar se o seu
notebook utiliza um destes processadores (e não um dos modelos antigos,
soquete 754) é verificar o tipo de memória usada. Todos os notebooks soquete
754 utilizam memórias DDR, enquanto os soquete S1 utilizam memórias
DDR2.

Na ilustração a seguir temos um Core Duo baseado no Yonah, um Core 2 Duo
baseado no Meron e um Turion X2. Note que apesar de possuir menos cache,
o die do Turion X2 é maior, pois ele é ainda produzido usando uma técnica de
0.09 micron.




              Core Duo (à esquerda), Core 2 Duo e o Turion X2




                                                                         912
Do ponto de vista do upgrade, as memórias DDR2 são muito mais desejáveis,
não apenas pela questão do desempenho, mas porque (assim como nos
desktops) os módulos SODIMM DDR2 já são mais baratos que os módulos
DDR. Outra questão é que usando módulos DDR2 você vai, muito
provavelmente, poder aproveitar os mesmos módulos ao trocar de notebook,
enquanto as DDR são um beco sem saída.

Voltando ao processador, a safra inicial, lançada em 2006, inclui os Turions
baseados nos cores Taylor e Trinidad. Ambos são fabricados utilizando a
mesma técnica de fabricação de 0.09 micron, com SOI e o uso de transístores
de baixo consumo usados nos Turions single-core da série ML. Eles incluem
suporte a SS3, instruções de 64 bits, NX Bit e suporte ao AMD-V, a única
diferença é que o Taylor inclui apenas 256 KB de cache L2 por núcleo,
enquanto o Trinidad (usado na maior parte dos modelos) inclui 512 KB por
núcleo.

A lista de modelos é composta pelo Turion X2 TL-50 (1.6 GHz, 2x 256 KB,
31W), TL-52 (1.6 GHz, 2x 512 KB, 31W), TL-56 (1.8 GHz, 2x 512 KB, 33W),
TL-60 (2.0 GHz, 2x 512 KB, 35W) e TL-64 (2.2 GHz, 2x 512 KB, 35W).

Em 2007 foi lançado o Turion X2 baseado no core Tyler, produzido usando a
nova técnica de 0.065 micron, usada também no Athlon X2 Brisbane e outros
processadores recentes. Ele é usado nos modelos TL-56 (1.8 GHz, 2x 512 KB,
31W), TL-58 (1.9 GHz, 2x 512 KB, 31W), TL-60 (2.0 GHz, 2x 512 KB, 31W),
TL-64 (2.2 GHz, 2x 512 KB, 35W) e TL-66 (2.3 GHz, 2x 512 KB, 35W).

Você pode notar que não existe diferenciação entre os modelos baseados no
Tyler e no Trinidad. Com exceção do TL-56 e do TL-60 (que possuem um TDP
ligeiramente inferior), até mesmo o TDP dos processadores baseados nos dois
cores é o mesmo. Na verdade, o Tyler é mais econômico que o Trinidad
(embora a diferença não seja tão grande), o que a AMD passou a fazer foi
simplesmente passar a usar uma margem mais folgada para cálculo do TDP.
Lembre-se de que o TDP é simplesmente um teto de consumo que não deve
ser excedido pelo processador. O fabricante pode usar o mesmo TDP para
vários processadores, muito embora o consumo real de alguns deles seja mais
baixo.

Via C3 e C7

Além dos processadores da Intel e da AMD, temos também os processadores
fabricados pela VIA, que ocupa um distante terceiro lugar. A linha atual é
representada pelos processadores VIA C7, usados nas placas mini-ITX, nano-
ITX e pico-ITX fabricadas pela VIA e também em alguns notebooks.

Ao invés de tentar competir diretamente com a Intel e a AMD, a VIA se
especializou no desenvolvimento de processadores de baixo consumo e baixo
custo. É improvável que o C7 venha a concorrer diretamente com os Core 2
Duo e os Phenom nos desktops, mas ele tem uma chance de se tornar popular
nos notebooks, UMPCs e dispositivos portáteis em geral.

O C7 é descendente direto dos processadores Cyrix 6x86, que foram
relativamente populares aqui no Brasil entre 1997 e 1999. Eles eram
                                                                         913
compatíveis com placas soquete 7 e eram uma opção de upgrade de baixo
custo. A Cyrix foi comprada pela VIA em 1999 e o projeto do 6x86 recebeu
várias melhorias, dando origem ao VIA C3, lançado em 2001.

O C3 foi bastante utilizado nos desknotes da PC-Chips/ECS (com destaque
para o A900), o que acabou rendendo uma fama muito ruim ao processador. O
C3 de 666 MHz era apelidado de "GigaPro", o que apesar de ser apenas um
nome comercial, dava a entender que ele oferecia um desempenho similar ao
de um Pentium III ou Athlon de 1.0 GHz, que eram seus concorrentes diretos.

A questão é que o C3 possuía um desempenho por ciclo de clock
consideravelmente mais lento e a baixa freqüência de operação não ajudava.
Do ponto de vista do desempenho o C3 era um fracasso, mas ele oferecia com
vantagem o fato de ser um chip bastante econômico do ponto de vista do
consumo e relativamente barato. Embora mais rápidos, os desknotes baseados
em processadores Athlon 4 eram bem maiores e mais caros.

O core Samuel, usado no C3 original foi sucessivamente aperfeiçoado, dando
origem ao Samuel II, Erza, Nehemiah e finalmente ao Esther, usado no C7.

Embora tenha recebido diversas melhorias, o Esther continua sendo um
processador muito simples, que conta com duas unidades de execução de
inteiros (que utiliza um pipeline de 16 estágios) e uma única unidade de
execução para instruções de ponto flutuante. Ele possui 128 KB de cache L1 e
mais 128 KB de cache L2, o que também é pouco se comparado com outros
processadores atuais. Um atenuante é que ele é compatível com as instruções
SSE, SSE2 e SSE3 e inclui o VIA PadLock, um sistema de encriptação via
hardware que melhora o desempenho do processador no processamento de
alguns algoritmos de encriptação. Aqui temos uma foto de divulgação da VIA
que mostra os componentes internos do processador:




                          VIA C7 com core Esther

                                                                         914
Do ponto de vista do desempenho, é muito difícil defender o C7, já que o
desempenho por ciclo de clock não é muito melhor do que o dos antigos K6-3,
com destaque para o fraco desempenho em ponto flutuante. Entretanto, o C7
possui algumas características interessantes do ponto de vista do consumo
elétrico e da produção.

Em primeiro lugar, o chip é muito menor e mais simples que os Pentium M e
Turions, que seriam seus concorrentes diretos. Mesmo produzido usando uma
antiquada técnica de 0.09 micron, o C7 ocupa uma área de apenas 32 mm², o
que é quase um terço de um Pentium M com core Dothan (que ocupa 88 mm²),
por exemplo.

A segunda vantagem é o consumo elétrico. Um C7 de 2.0 GHz em full-load
consome cerca de 20 watts, o que não é muito impressionante para os padrões
atuais, já que um Core Duo LV-2400 (1.66 GHz) tem um TDP de apenas 15
watts e é consideravelmente mais rápido que ele. Entretanto, o C7 oferece um
sistema de gerenciamento de energia bastante agressivo (o LongHaul), que
reduz drasticamente a tensão e freqüência de operação do processador
enquanto ele está ocioso, fazendo com que o consumo caia para meros 0.1
watts. Entre os dois extremos, existem diversas fases intermediárias, onde o
desempenho e consumo são ajustados de acordo com a demanda. Assim
como no Cool'n'Quiet usado nos processadores AMD, o chaveamento é feito
de forma muito rápida, de forma que o sistema continua respondendo bem.

Existe ainda a linha ULV, que engloba modelos de baixo consumo (com clock
de até 1.5 GHz), que podem ser refrigerados usando um dissipador passivo. O
C7-M ULV de 1.5GHz, por exemplo, consome apenas 7.5 watts em full-load,
enquanto os modelos mais lentos chegam a superar a barreira dos 5 watts.

Isso torna o C7 um processador competitivo para aplicações que não exijam
muito poder de processamento, onde o processador possa operar a
freqüências baixas na maior parte do tempo. A VIA tem se esforçado para
popularizar o uso do C7 em notebooks, tablets e UMPCs, e existem planos de
futuramente passar a utilizá-lo também em celulares, que poderiam (dentro das
limitações da tela, armazenamento e sistema operacional usado) rodar
aplicativos x86.

Um exemplo de projeto e notebook ultraportátil baseado no C7 é o VIA
NanoBook, anunciado em maio de 2007. Ele é um ultraportátil com tela de 7",
que utiliza um C7 de 1.2 GHz (com um simples cooler passivo), pesa apenas
850 gramas e funciona por até 5 horas usando uma bateria de 3 células:




                                                                         915
VIA NanoBook, baseado no C7 Esther

O C7 utiliza um barramento próprio, baseado no soquete 479 do Pentium M,
porém com um formato e sinalização diferentes (ele utiliza o barramento VIA
V4 no lugar do barramento AGTL+ utilizado nos processadores Intel). Para
cortar custos e permitir o desenvolvimento de placas mais compactas, a VIA
utiliza o encapsulamento NanoBGA2, que mede apenas 3 x 3 cm e é
diretamente soldado à placa. Este é um dos motivos que faz com que o C7 seja
destinado exclusivamente ao uso em notebooks e placas com o processador
pré-instalado, além de impedir qualquer tipo de upgrade do processador.




                                                                         916
VIA C7 com o encapsulamento NanoBGA2 (à esquerda) e o C3

O core Esther foi lançado em 2004, época em que a AMD ainda fabricava
processadores soquete A e a Intel ainda produzia processadores baseados na
arquitetura NetBurst. De lá para cá, os processadores evoluíram muito, fazendo
com que o C7 ficasse cada vez mais defasado com relação aos concorrentes.

A VIA tem trabalhado em um novo core, batizado de Isaiah, cujo lançamento
está planejado para o início de 2008. Ainda existem poucas informações sobre
ele, mas sabe-se que ele será produzido usando uma técnica de 0.065 micron
e receberá reforços nas unidades de execução e outros componentes internos,
de forma a oferecer um melhor desempenho por ciclo de clock.

Tudo indica que o Isaiah será um processador de 64 bits, compatível com o
conjunto de instruções AMD64. A VIA tem falado em um aumento de até 100%
no desempenho por ciclo de clock, o que não é difícil de imaginar,
considerando que o Esther é muito fraco na questão do desempenho. O cache
L2 do processador também será ampliado, de 128 KB para 1 MB, o que
também deve ter um impacto considerável sobre o desempenho.

Com os reforços, é provável que o Isaiah consiga oferecer um desempenho
próximo ao de um Turion ou Celeron do mesmo clock. O principal problema é
que o aumento na complexidade do processador sacrificará a principal
vantagem dos processadores VIA atuais, que é o baixo consumo elétrico.

Por utilizar um barramento próprio, o Isaiah será (pelo menos a princípio)
compatível apenas com os chipsets fabricados pela própria VIA, o que reduz
mais um pouco as chances de sucesso do chip. É sempre complicado tentar
fazer previsões baseadas em informações incompletas, mas arriscaria dizer
que o Isaiah não será muito mais do que mais uma opção de processador de
baixo custo, que concorrerá com o Turion nos notebooks mais baratos e
conquistará alguma participação nos desktops, através das placas nano-ITX e
pico-ITX fabricadas pela VIA.


                                                                           917
AMD Geode

Outro processador de baixo consumo que merece uma citação é o Geode,
fabricado pela AMD. Além de ser usado em thin-clients e outros dispositivos,
ele é o processador usado nas primeiras versões do OLPC (o laptop de 100
dólares). O Geode opera a freqüências muitos baixas e oferece pouco poder de
processamento, mas em compensação é bastante econômico e barato.

Na verdade, existem duas versões diferentes do Geode, uma baseada no
projeto do antigo Cyrix Media GX (a AMD comprou os direitos sobre o projeto
em 2003) e uma versão atualizada, baseada no Athlon.

As versões baseadas no Media GX incluem as séries GX e LX, enquanto as
baseadas no Athlon fazem parte da série NX. As três são ainda produzidas
utilizando uma antiquada técnica de 0.13 micron (em pleno ano de 2007!), o
que tira parte da competitividade dos chips.

A série GX é a mais simples, composta por modelos de 333, 366 e 400 MHz,
que consomem, respectivamente, 0.9, 1.0 e 1.1 watts, mesmo sem utilizar
nenhum sistema sofisticado de gerenciamento de energia. Embora o
desempenho seja muito fraco (o GX de 333 MHz perde para um K6-2 de 300
MHz por uma boa margem), eles estão entre os processadores x86 mais
econômicos.

Em seguida temos a série LX, que inclui modelos de 433, 500 e 667 MHz, que
consomem (respectivamente) 1.3, 1.6 e 2.6 watts e incluem 128 KB de cache
L1 e 128 KB de cache L2.

Finalmente, temos o Geode NX, desenvolvido com base no projeto da versão
mobile do Athlon XP. Eles possuem 128 KB de cache L1 e 256 KB de cache L2
e são consideravelmente mais rápidos que as duas séries iniciais, embora o
consumo elétrico também seja mais alto (a versão de 1.0 GHz consome 6
watts, enquanto a versão de 1.4 GHz consome 14 watts), o que inviabiliza seu
uso em muitas aplicações.

Se comparado com o consumo dos processadores para desktop, os 14 watts
consumidos pelo Geode NX de 1.4 GHz podem parecer pouco, mas se
compararmos com outros processadores de baixo consumo, o valor é bastante
alto. Para efeito de comparação, o Celeron M 353 ULV (baseado no core
Dothan), que opera a 900 MHz, consome apenas 5 watts.

O menor consumo elétrico é o principal motivo do Geode LX ter sido escolhido
para uso na versão original do OLPC, no lugar do Geode NX. Esta é uma foto
da placa-mãe do OLPC, que inclui o processador Geode LX, acompanhado por
um chipset AMD CS5536, 4 chips de memória RAM (à esquerda) e um chip
solitário de memória Flash (à direita), usado como unidade de armazenamento.




                                                                         918
Placa-mãe do OLPC, baseada no Geode LX

Chipsets 3D

Incluir uma aceleradora 3D de alto desempenho em um notebook é um desafio
muito maior do que fazê-lo em um desktop, simplesmente porque o notebook
precisa ser muito mais compacto e consumir muito menos energia.

Um chipset 3D de alto desempenho precisa de um grande volume de unidades
de processamento, operando a uma freqüência relativamente alta, combinado
com uma grande quantidade de memória, ligada à GPU através de um
barramento generoso. O problema é que quanto mais transístores, mais
unidades de processamento, mais chips de memória e mais trilhas na placa,
mais energia é consumida pela aceleradora, o que compromete a questão da
portabilidade.

Produzir uma aceleradora 3D "mobile" representa um desafio similar ao de
produzir um processador mobile. Até certo ponto, é possível obter ganhos
aprimorando a técnica de fabricação (migrando da técnica de 0.09 micron para
a de 0.065 micron, por exemplo) e fazendo otimizações no projeto, mas, a
partir de um certo ponto, é necessário realmente "cortar na carne", reduzindo o
clock de operação, reduzindo a tensão usada pela GPU, simplificando o projeto
e adotando outras medidas que reduzem o consumo às custas do
desempenho.

Justamente por isso, a maior parte dos notebooks utiliza alguma opção de
vídeo onboard com memória compartilhada, que invariavelmente oferecem um
desempenho entre "fraco" e "regular". Não significa que não existam notebooks
com "placas offboard", mas apenas que eles são muito mais raros e caros.

                                                                           919
Vamos então a uma análise rápida das opções de aceleradoras 3D para
notebooks, incluindo tanto as opções de vídeo onboard quanto offboard.

Assim como no caso dos desktops, a Intel é a maior produtora de chipsets de
vídeo para notebooks, mesmo sem produzir uma única placa offboard. Os
chipsets Intel são bastante populares e a grande maioria dos notebooks
baseados em chipsets Intel utilizam o chipset de vídeo integrado.

Em segundo lugar vem a AMD/ATI, que também produz um grande número de
chipsets com vídeo integrado (além de um bom volume de aceleradoras
dedicadas) que são usados em um enorme volume de notebooks baseados em
processadores AMD. Até pouco tempo atrás, antes de ser comprada pela AMD,
a ATI também produzia um grande volume de chipsets para processadores
Intel.

Em terceiro temos a nVidia, com (no final de 2007) pouco mais de 20% do
volume de placas vendidas. A nVidia também vende chipsets com vídeo
integrado, mas seu carro chefe são as placas de vídeo dedicadas.

Chipsets onboard

A Intel inclui chipsets de vídeo da série GMA e X3xxx na maioria dos chipsets,
incluindo, naturalmente, as versões mobile. Os chips são fundamentalmente os
mesmos usados nos chipsets para desktops, mas operam a freqüências de
operação mais baixas e possuem otimizações relacionadas com o consumo
elétrico.

A versão mobile do GMA 900 opera a apenas 200 MHz (contra os 333 MHz da
versão para desktops) e é usado nos chipsets Intel 910GML, 915GM e
915GMS. O GMA 950 opera a 250 MHz (contra 400 MHz da versão para
desktops) e é usado no chipset Intel 945GM. Em ambos os casos, a memória
de vídeo é alocada dinamicamente (até 128 MB para o GMA 900 e até 224 MB
para o 950), o que torna recomendável ter pelo menos 512 MB de memória
instalada.

Estes dois chipsets são otimizados para consumirem pouca energia e serem
baratos de produzir, não para serem opções de alto desempenho. Com
exceção das soluções da SiS e da VIA, o GMA 900 e o GMA 950 mobile são os
aceleradores 3D mais fracos que você vai encontrar atualmente. O objetivo é
simplesmente oferecer um bom desempenho em 2D, de forma a atender a
quem usa predominantemente aplicativos de produtividade e oferecer um nível
mínimo de desempenho 3D, suficiente para rogar algum game antigo
esporadicamente.

Mais recentemente foi lançado o GMA X3100, a versão mobile do GMA X3000,
que é integrado ao chipset Intel 965GM (usado em notebooks baseados na
plataforma Santa Rosa). Ele possui as mesmas características do X3000,
incluindo as 8 unidades programáveis e a possibilidade de usar até 384 MB de
memória compartilhada (o que torna recomendável ter 1 GB de memória
instalada), mas opera a apenas 500 MHz (contra 667 MHz do X3000). Apesar
da redução no clock, o X3100 oferece um desempenho respeitável se
comparado com os outros chipsets onboard.
                                                                          920
Continuando, temos os chipsets da nVidia. Embora faça mais sucesso com os
chipsets de vídeo offboard, a nVidia também oferece um chipset mobile com
vídeo integrado, que é a combinação do chipset nForce Go 430, com um
chipset GeForce Go 6100 ou GeForce Go 6150. Nestes dois casos, não
temos exatamente um chipset de vídeo integrado, mas sim uma solução "semi-
dedicada", onde temos um chipset de vídeo dedicado, mas que que utiliza
memória compartilhada para cortar custos:




O desempenho 3D do Go 6100 e do Go 6150 não é diferente. As diferenças
entre os dois chipsets residem nos recursos de economia de energia (o GO
6100 trabalha dentro de um TDP de 7.5 watts, enquanto o Go 6150 é mais
econômico, trabalhando dentro de um TDP de apenas 5.6 watts) e na
distribuição das linhas PCI Express. A arquitetura é a mesma dos GeForce
6100 e 6150 para desktops, com 2 pixel pipelines (incluindo uma unidade de
pixel shader cada um) e 1 unidade vertex shader.

Ao contrário da Intel, que optou por reduzir a freqüência de operação dos
chipsets da linha mobile, a nVidia foi capaz de manter o clock de 425 MHz
usado no GeForce 6100 para desktops em ambos os chips. Isso mudou um
pouco a relação de desempenho dos dois chips em relação ao que temos nas
versões para desktop, fazendo com que eles tenham um desempenho muito
mais próximo do oferecido pelo X3100 do que no caso do 6100/6150 para
desktops. Eles são capazes de superar os chipsets Intel GMA 900 e 950 e
também os ATI Xpress 200M com tranquilidade, mas ainda perdem para o Intel
GMA X3100 e também para os ATI Xpress 1100 e 1150 por uma pequena
margem.

Um amenizante é que eles contam com suporte ao nVidia PureVideo, um
sistema de decodificação de vídeo via hardware que reduz o uso do
processador (e conseqüentemente o consumo) ao assistir vídeos codificados
em diversos formatos, incluindo o formato H.264 usado nos HD-DVDs.

A ATI, por sua vez, oferece os chipsets Radeon Xpress 200M, Radeon Xpress
1100 e Radeon Xpress 1150, disponíveis tanto em versão para processadores
AMD quanto para processadores Intel. Naturalmente, com a aquisição da ATI
pela AMD, o desenvolvimento dos chipsets para processadores Intel foi


                                                                       921
suspenso, mas existe um número muito grande de notebooks em uso
baseados neles.




      Acer 5043WLMI (com o Xpress 200M), rodando o Rome Total War

As diferenças entre os chipsets para processadores Intel e AMD se restringem
à interface com o processador e à presença ou não do controlador de memória.
Nos três casos, o chipset de vídeo integrado é o mesmo, uma versão reduzida
do Mobility Radeon X300, ligada ao barramento PCI Express.

O Mobility Radeon X300 possui originalmente 4 pixel pipelines (incluindo 4
unidades de pixel shader) e 2 unidades de vertex shader. Ele opera a 350 MHz
e utiliza 64 MB de memória dedicada, operando a 300 MHz. Apesar de ser um
chipset relativamente simples, se comparado a chipsets recentes, como o R600
e o G80, ele suporta o DirectX 9 e o Shader Model 2.0, de forma que é capaz
de rodar a maioria dos jogos atuais, embora com baixo FPS.

A versão simplificada do X300 integrada ao Xpress 200M, Xpress 1100 e
Xpress 1150 possui apenas 2 pixel pipelines (ou seja, possui apenas metade
da força bruta do X300) e utiliza memória compartilhada. O único quesito em
que o desempenho do chip não foi reduzido é com relação ao processamento
de vertex shaders, já que foram mantidas as mesmas duas unidades.

Nos chipsets Xpress 200M e Xpress 1100 o chipset de vídeo opera a 300 MHz
e pode utilizar até 128 MB de memória compartilhada. O Xpress 1150 vai um
pouco adiante, com o chipset de vídeo operando a 400 MHz e utilizando até
256 MB de memória compartilhada. Outra diferença é que o Xpress 200M é um
chipset mais antigo, que ainda utiliza memória DDR, enquanto o Xpress 1100 e


                                                                         922
o Xpress 1150 utilizam memórias DDR2, o que praticamente dobra a banda
disponível para o chipset de vídeo, melhorando o desempenho.

Assim como no caso dos chipsets Intel, uma das grandes preocupações é o
consumo elétrico. O consumo médio do 200M (incluindo o chipset de vídeo) é
de apenas 2 watts, enquanto o Xpress 1150 vai além, consumindo pouco mais
de 1 watt. Isso é possível devido ao sistema de gerenciamento de energia, que
desativa ou reduz o clock dos componentes ociosos. Ao rodar um game 3D,
onde o chipset de vídeo seja obrigado a trabalhar a toda, o consumo sobe para
até 8 watts no caso do 200M e até 9 watts no caso do Xpress 1150, um
consumo modesto se comparado ao das placas para desktop, que chegam a
consumir mais de 150 watts.

Fazendo um "ranking" de performance 3D destas opções de vídeo integrado,
teríamos os GMA 900 e GMA 950 na lanterna, seguidos (nessa ordem) pelo
Radeon Xpress 200M, GeForce Go6100/6150, Radeon Xpress 1100 e 1150 e,
finalmente, o GMA X3100.

Apesar das diferenças na arquitetura, o Xpress 200M e o GeForce
Go6100/6150 oferecem um desempenho muito parecido, enquanto o Xpress
X1150 consegue superá-los com uma margem de cerca de 30%.

O GMA X3100 é o chipset mais recente da lista, por isso é natural que ele
acabe sendo o mais rápido, com suas 8 unidades programáveis. A principal
questão é que a Intel geralmente demora 3 anos ou mais para lançar versões
sensivelmente atualizadas de seus chipsets de vídeo, de forma que daqui a
dois anos o X3100 tende a voltar a ficar na lanterna, conforme os outros
fabricantes forem lançando chipsets atualizados.

Uma observação importante é que é comum existirem variações dentro no
mesmo modelo de notebook, com mudanças não apenas no processador,
memória e HD, mas também no chipset usado. O Acer Aspire 5043WLMI, por
exemplo, existe em versões com o Radeon Xpress 200M, com o com SiS
Mirage II (uma solução pobre, que sequer possui suporte 3D no Linux) e
também com o Mobility Radeon X1300, um chipset de vídeo dedicado.

É importante prestar atenção nas especificações, sobretudo ao comprar em
lojas online, pois na maioria dos casos não existem diferenças externas entre
variações do mesmo modelo.

Chipsets dedicados e placas offboard

Em inglês, o termo usado para indicar que um componente não é integrado é
"discrete". Ele tem um significado oposto do da palavra "discreto", é um falso
cognato. Um "discrete controller" é um controlador independente, que não está
integrado ao chipset, ou outro chip maior. A melhor tradução seria "dedicado".

Um exemplo é o encapsulamento utilizado na Mobility Radeon X1600, onde
além da GPU, temos quatro chips de memória de vídeo dedicada. Este
conjunto forma uma solução muito similar a uma placa 3D offboard, a única
limitação é que o encapsulamento é diretamente soldado à placa mãe, o que
impede qualquer tipo de upgrade:

                                                                          923
Mobility Radeon X1600 com os chips de memória instalados sobre o
                             encapsulamento

Assim como no caso dos desktops, é perfeitamente possível comprar um
notebook com uma aceleradora 3D dedicada, ou até mesmo um notebook com
uma placa "offboard". Quando falo em "dedicado" entenda que se trata de uma
solução com um chipset de vídeo dedicado, mas ainda integrado à placa-mãe,
diferente de uma placa "offboard", que é realmente uma placa separada, que
pode até mesmo ser atualizada.

Como de praxe, as placas 3D para notebooks utilizam formatos miniaturizados,
diferentes das placas para micros desktop, muito embora também sejam
conectadas ao barramento PCI Express. A nVidia desenvolveu o formato MXM
(Mobile PCI Express Module), que permite a criação de placas de vídeo
compactas, contendo a GPU e memória dedicada, que são instaladas através
de uma versão miniaturizada do slot PCI Express x16. A placa MXM não inclui
o conversor DAC nem as saídas de vídeo, que são movidas para a placa-mãe
do notebook:




                                                                         924
Instalação de uma placa de vídeo MXM

Este formato é utilizado pelas placas da série GeForce Go e GeForce 8M, que
são atualmente as opções mais poderosas de aceleradoras 3D para
notebooks, oferecendo inclusive a opção de usar duas placas em SLI,
possibilidade realmente explorada em alguns desktop replacement de alto
desempenho:




            Duas placas MXM em SLI, com os coolers instalados

                                                                        925
O principal atrativo das placas MXM é a possibilidade de atualizar a placa de
vídeo, assim como fazemos nos desktops. Entretanto, esta possibilidade acaba
não sendo tão explorada quanto poderia ser, pois, além dos problemas
relacionados à diferença de consumo elétrico entre diferentes placas, as placas
MXM de alto desempenho precisam de coolers elaborados, que por questão de
espaço, são personalizados para cada família de notebooks.

Para complicar, existem 4 padrões diferentes de placas MXM, o MXM-I
(7.0x6.8cm, 230 pinos), MXM-II (7.3x7.8cm, 230 pinos), MXM-III (8.2x10cm,
230 pinos) e o MXM-HE (8.2x10cm 232 pinos), onde as placas são construídas
em um dos quatro formatos de acordo com o espaço necessário e a dissipação
térmica da GPU, sendo que o formato MXM-I é usado pelas placas mais
simples e o MXM-HE pelas mais parrudas.

Notebooks com slots MXM-HE podem acomodar placas dos outros padrões
(com exceção de casos de incompatibilidades diversas, causadas por
problemas por parte do BIOS ou deficiências no sistema de alimentação), mas
notebooks menores, equipados com slots MXM-I ficam restritos apenas a
placas MXM-I. Como os próprios fabricantes produzem as placas MXM (a
nVidia apenas fornece os chipsets) existem ainda casos de placas fora do
padrão, que não podem ser utilizadas em outros modelos.

Com isso, você acaba ficando restrito a algumas poucas opções de placas,
para as quais o sistema de refrigeração é dimensionado. Você não pode
substituir diretamente uma GeForce Go 7300 em um ultraportátil por uma
GeForce Go 7950 GTX, por exemplo. Um bom lugar para se informar sobre
casos onde o upgrade é possível é o http://mxm-upgrade.com/.

Apesar de ter sido originalmente desenvolvido pela nVidia, o MXM é um padrão
aberto, que pode ser usado por outros fabricantes. Entretanto, o MXM ainda
está longe de se tornar o padrão, pois temos também o padrão da ATI, o
AXIOM (Advanced Express I/O Module).

Embora também seja baseado no barramento PCI Express, o AXIOM utiliza um
encaixe bem diferente (e, naturalmente, incompatível com o MXM) onde os
contatos ficam na parte inferior da placa:




                                                                           926
Conector de uma placa AXION

Embora cada um dos dois fabricantes defenda seu padrão, fabricantes
independentes podem muito bem produzir placas MXM com chipsets ATI e de
fato isso acontece, embora de forma esparsa. A Dell utiliza um formato
proprietário em muitos de seus notebooks, similar ao AXION, mas usado tanto
para placas com chipset ATI quanto nVidia. Em alguns casos, é até mesmo
possível trocar uma placa ATI por outra nVidia, ou vice-versa.




      Placa MXM com chipset ATI ao lado de uma MXM com chipset nVidia

ATI

Voltando aos chipsets, a linha de chipsets da ATI começa com a série Mobility
Radeon X1K (ou X1000), composta por chips dedicados, que podem ser
combinados com um certo volume de memória de vídeo dedicada, também
instalada na placa mãe, ou simplesmente utilizar memória RAM compartilhada,
assim como os chipsets de vídeo onboard. Eles ficam longe de serem soluções
de alto desempenho, mas consomem pouca energia, são baratos (a ponto de

                                                                          927
serem integrados em muitos notebooks de baixo custo da Acer e de outros
fabricantes) e já são consideravelmente mais rápidos que os chipsets de vídeo
onboard.

Os chipsets da série X1K são versões reduzidas do chipset R520 para
desktops. Eles oferecem suporte ao DirectX 9.0c e ao Shader Model 3.0, além
de oferecerem suporte a FSAA, HDR, Anisotropic Filtering e outros recursos.
Naturalmente, você vai precisar desabilitar o FSAA e o Anisotropic Filtering na
grande maioria dos jogos, de forma a melhorar o FPS, por isso não espere
muito.

As versões mais simples são os chipsets Mobility Radeon X1300, X1350,
X1400 e X1450. Eles são baseados no chip RV515 (uma versão reduzida do
R520), o mesmo utilizado nas placas Radeon X1300 e X1550 para desktops. A
principal diferença entre as versões mobile e as versões para desktop do
RV515 são as otimizações relacionadas ao consumo elétrico e o
encapsulamento usado, já que o chip é destinado a ser instalado diretamente
na placa-mãe, ao invés de ser usado em uma placa offboard.




                           Mobility Radeon X1300

O RV515 é composto por 4 unidades de pixel shader, 4 unidades de texturas, 4
ROPs e 2 unidades de vertex shader, o que o torna quase 2 vezes mais
poderoso que um Xpress 1150 do mesmo clock. O X1300 opera a 400 MHz,
enquanto o X1350, X1400 e o X1450 operam a 433 MHz. Os 4 chips podem
utilizar até 128 MB de memória DDR, DDR2 ou GDDR3 dedicada, acessada
através de um barramento de 128 bits.

Eles também suportam o HyperMemory, que permite o uso de até 256 MB de
memória compartilhada. A principal questão é que o fabricante do notebook é
quem escolhe qual o tipo de memória utilizar e em qual quantidade, já que os
chips são soldados à placa-mãe. Isso faz com que exista uma grande variação
de desempenho entre os notebooks de diferentes marcas, já que temos desde
notebooks com 128 MB de memória GDDR3 dedicada, até notebooks sem
memória dedicada alguma, onde o chipset de vídeo utiliza apenas memória
compartilhada, através do HyperMemory. A freqüência de operação dos


                                                                           928
chipsets também pode ser alterada pelos fabricantes, o que acentua as
diferenças.

Uma das vantagens destes 4 chipsets (assim como os sucessores) sobre o
Xpress X1000 e o Xpress X1150 é o suporte ao AVIVO, recurso que permite
que o chipset de vídeo decodifique vídeos nos formatos H.264, VC-1, WMV9 e
MPEG-2 via hardware, sem taxar o processador principal. Como a placa de
vídeo executa a tarefa de forma mais eficiente e consumindo menos energia,
isso acaba resultando em uma autonomia de baterias um pouco maior ao
assistir DVDs ou vídeos nos formatos suportados.

Com relação ao formato H.264 (que é o algoritmo mais pesado dos 4), os
chipsets X1300 a X1450 suportam decodificação via hardware de vídeos com
resolução de até 480 linhas (resolução usada no DVD), o X1600 suporta até
720 linhas e o X1800 em diante suporta vídeos em alta resolução, com até
1080 linhas. Você pode assistir (ou pelo menos tentar assistir) um vídeo com
1080 linhas em um notebook com um chipset X1300, mas neste caso toda a
decodificação passa a ser feita pelo processador principal, o que resulta em um
maior consumo elétrico e um desempenho inferior.

Em seguida temos o Mobility Radeon X1600, que, apesar da numeração
superior, foi lançado um pouco antes, em dezembro de 2005. Ele é baseado no
chip RV530, que possui 12 unidades de pixel shader, 4 unidades de texturas, 4
ROPs e 5 unidades de vertex shader. Ele opera a 445 ou 470 MHz (a
freqüência é definida pelo fabricante do notebook), utiliza 128 ou 256 MB de
memória GDDR3 dedicada, operando a 700 MHz (existem notebooks que
utilizam chips mais rápidos de até 936 MHz) ligada à GPU através de um
barramento de 128 bits. Isso resulta em um desempenho respeitável (para um
chipset Mobile), superior ao de uma GeForce Go 6600 e próximo ao de uma
GeForce Go 6800 equipada com módulos de memória de baixa frequência.

O uso de um barramento de apenas 128 bits com a memória acabou se
revelando uma vantagem do ponto de vista da fabricação, já que ele permite
que o chipset de vídeo seja servido por apenas 4 chips de memória. Isso
permite que os fabricantes instalem os chips de memória diretamente sobre o
encapsulamento do chipset de vídeo, sem necessidade de usar um módulo
AXION, reduzindo os custos de forma considerável.

Existe também o Mobility Radeon X1700, uma variação do X1600 produzida
usando a técnica Strained silicon, que reduz um pouco o consumo elétrico. A
freqüência "stock" do X1700 é de 470 MHz, mas o chip possui uma margem de
overclock um pouco maior, o que faz com que existam notebooks onde o
X1700 opere a freqüências mais altas.

Em seguida temos os chipsets Mobility Radeon X1800, X1800 XT e X1900,
chipsets mais caros, que possuem um consumo e dissipação térmica muito
maior, e por isso são geralmente usados apenas em notebooks desktop
replacement. Ao contrário do X1600 e do X1700, que podem ter os chips de
memória montados no mesmo encapsulamento do chipset, os três são usados
apenas na forma de placas AXION ou MXM.


                                                                           929
Mobility Radeon x1800, no formato MXM

O X1800 possui 12 unidades de pixel shader, 12 unidades de texturas, 12
ROPs e 8 unidades de vertex shader. O chipset opera a 450 MHz e utiliza 256
MB de memória GDDR3, operando a 1.0 GHz e ligada ao chipset através de
um barramento de 256 bits. O X1800 XT possui as mesmas 8 unidades de
vertex shader, mas é consideravelmente mais rápido, já que possui 16
unidades de pixel shader, 16 unidades de texturas, 16 ROPs e opera a 550
MHz, com a memória (os mesmos 256 MB de memória GDDR3, com
barramento de 256 bits) operando a 1.3 GHz. O X1900 é o mais poderoso da
série, com 36 unidades de pixel shader, mas apesar disso é um chipset
bastante raro, pois é muito caro e o consumo elétrico é muito elevado.

Em maio de 2007 foram lançados os chipsets Mobility Radeon HD 2400, HD
2400 XT, HD 2600 e HD 2600 XT que, ao contrário dos chipsets da série
X1000, são baseados na arquitetura do R600, com o uso de unidades shader
unificadas e suporte ao DirectX 10. Eles oferecem também suporte ao AVIVO
HD que se diferencia do AVIVO usado nas placas da série X1000 por oferecer
suporte a discos nos formatos HD-DVD e Blu-Ray. Isso é um pouco mais
complicado do que parece, pois além da questão da decodificação do vídeo,
existe a necessidade de incluir o suporte ao HDCP (o sistema de criptografia
usado), o que aumenta os custos.

O Mobility Radeon HD 2400 e o HD 2400 XT são baseados na versão mobile
do chip RV610. Assim como as placas Radeon HD 2400 para micros desktop,
elas possuem apenas 40 stream processors e utilizam um barramento com a
memória de apenas 64 bits, o que as torna muito mais fracas que as X1800.
Isso é justificável pelo fato de eles serem chipsets de baixo custo, destinados a
substituírem os chipsets X1300 a X1450. O HD 2400 opera a 450 MHz, com a
memória a 1.0 GHz, enquanto o HD 2400 XT opera a 600 MHz, com a memória
a 1.4 GHz

As HD 2600 e HD 2600 XT, por sua vez, são baseadas no chipset RV630 e
possuem o triplo de poder bruto de processamento, com 120 stream
processors. O HD 2600 opera a 500 MHz, com a memória a 1.2 GHz, enquanto
o HD 2600 XT opera a 700 MHz, com a memória a 1.5 GHz.


                                                                             930
nVidia

Em seguida temos os chipsets da nVidia, cuja linha de chipsets mobile inclui
versões de baixo consumo dos chipsets G70 e G80, usadas nas placas
GeForce das séries 7 e 8. A nVidia não vende tantos chipsets de vídeo mobile
quanto a ATI (em número), mas em compensação é bastante forte no ramo de
placas offboard, que embora representem uma parcela pequena das vendas,
acabam sendo o ramo mais lucrativo. Ao contrário dos GeForce Go 6100 e Go
6150, que são chipsets onboard, todos estes chipsets são destinados a serem
usados em placas MXM.

As placas mais simples são as GeForce Go 7300 e Go 7400, que são
baseadas no chipset G72M, a versão mobile do G72, que possui 4 unidades de
pixel shader, 4 unidades de texturas, 2 ROPs e 3 unidades de vertex shader.
Ambas utilizam 128 MB (ou, em casos raros, 256 MB) de memória GDDR3
dedicada e podem utilizar mais 256 MB de memória compartilhada usando o
TurboCache. A diferença entre eles é que o Go 7300 opera a 350 MHz (com a
memória a 700 MHz), enquanto o Go 7400 opera a 450 MHz (com a memória a
900 MHz), oferecendo um desempenho muito similar ao de uma GeForce 7300
LE para desktops.

Elas são seguidas pelas placas GeForce Go 7600, Go 7600 GT e Go 7700,
que são baseadas no chipset G73M. O Go 7600 é a versão mais simples,
baseada em uma versão castrada do chipset, que conta com apenas 8
unidades de pixel shader, 8 unidades de texturas, 8 ROPs e 5 unidades de
vertex shader. Ele opera a 450 MHz, com 256 MB de memória GDDR3 (a 800
MHz). Tanto o Go 7600 GT quanto o Go 7700 são baseados na versão
"completa" do G73M, com 12 unidades de pixel shader, 12 unidades de
texturas, 8 ROPs e 5 unidades de vertex shader. O Go 7600 GT opera a 500
MHz, com 256 MB de memória GDDR3 (a 1.2 GHz) e o 7700 (que apesar da
numeração superior, é mais lento), opera a 450 MHz, com a memória (também
256 MB de memória GDDR3) a 1.0 GHz.

Além de possuírem mais unidades de processamento, as Go 7600 e Go 7700
utilizam um barramento de 128 bits com a memória, enquanto as Go 7300 e Go
7400 utilizam um barramento de apenas 64 bits, o que acentua a diferença de
desempenho.

Em seguida temos as placas high-end dentro da família, que utilizam os
chipsets G70M e G71M. Estes dois chipsets compartilham a mesma
arquitetura, com 24 unidades de pixel shader, 24 unidades de texturas, 16
ROPs e 8 unidades de vertex shader. A diferença entre os dois é que o G70M
(usado nas placas da série 7800) ainda é baseado em uma técnica de 0.11
micron, enquanto o G71M (usado nas séries 7900 e 7950) é fabricado usando
a técnica de 0.09 micron, o que possibilita o uso de freqüências de operação
mais altas, mantendo o consumo elétrico a um nível aceitável. Ambos os
chipsets utilizam também um barramento de 256 bits com a memória, outro
diferencial em relação às séries anteriores.



                                                                         931
A GeForce Go 7800 é a versão mais simples, baseada em uma versão
castrada do G70M, com apenas 16 unidades de pixel shader, 16 unidades de
texturas, 8 ROPs e 6 unidades de vertex shader. Nela o chipset de vídeo opera
a 350 MHz, com 256 MB de memória GDDR3 operando a 1.1 GHz. A GeForce
Go 7800 GTX é baseada na versão completa do chip, com 24 unidades de
pixel shader, 24 unidades de texturas, 16 ROPs e 8 unidades de vertex shader
e opera a 400 MHz (com a memória também a 1.1 GHz).

O modelo seguinte é a GeForce Go 7900 GS que, apesar da numeração, é
inferior à 7800 GTX. Ela é baseada em uma versão castrada do G71M, com 20
unidades de pixel shader, 20 unidades de texturas, 16 ROPs e 7 unidades de
vertex shader, que opera a apenas 375 MHz, com a memória a 1.0 GHz.




                   GeForce Go 7900 GS, no formato MXM

Tanto a GeForce Go 7900 GTX quanto a Go 7950 GTX são baseadas na
versão completa do G71M, com 24 unidades de pixel shader, 24 unidades de
texturas, 16 ROPs e 8 unidades de vertex shader. A diferença entre elas é que
na 7900 GTX a GPU trabalha a 500 MHz e a memória a 1.2 GHz, enquanto na
7950 GTX a GPU trabalha a 575 MHz e a memória a 1.4 GHz. Naturalmente, a
7950 dissipa um pouco mais calor que a 7900, mas apesar disso ambas
trabalham dentro de um TDP de 45W. Outra diferença é que a Go 7900 GTX
existe em versões com 256 e 512 MB, enquanto a Go 7950 GTX existe apenas
em versão com 512 MB.

Só para efeito de comparação, a Go 7900 GTX possui um fill rate de 12.000
megatexels e a Go 7950 GTX 13.800 megatexels. A GeForce 7900 GTX para
desktops compartilha da mesma arquitetura, mas a GPU opera a uma
freqüência mais alta, 650 MHz, o que resulta em um fill rate de 15.600
megatexels. Ou seja, embora possuam os mesmos recursos, as versões
mobile são um pouco mais lentas devido ao clock mais baixo. Tecnicamente,
seria possível desenvolver uma versão da Go 7900 GTX também operando a
650 MHz, mas o consumo elétrico seria proibitivo.

                                                                         932
Assim como as GeForce 7000 para desktops, as placas da série Go 7000
oferecem suporte ao DirectX 9.0c e ao Shader Model 3.0. Em maio de 2007 a
nVidia lançou a série GeForce 8000M, composta por placas baseadas nas
versões mobile dos chipsets G84 e G86, que utilizam a arquitetura de unidades
unificadas e são compatíveis com o DirectX 10. Elas são compatíveis também
com o PureVideo HD que, assim como o AVIVO HD (usado nas placas da série
HD 2000, da ATI), que oferece suporte à exibição de filmes nos formatos HD-
DVD e Blu-Ray, incluindo o suporte ao HDCP.

A placa mais simples dentro da família é a GeForce 8400M G, baseada em
uma versão castrada do mobile G86, que possui apenas 8 stream processors
(só para efeito de comparação, a GeForce 8800 GTX para desktops possui
128, ou seja, 16 vezes mais), o que resulta em um desempenho 3D bastante
fraco. Esta é mais uma solução para fabricantes interessados em desenvolver
notebooks com suporte a HD-DVD e ao DirectX 10 (importante do ponto de
vista do marketing) do que uma placa 3D propriamente dita. Mesmo com a
GPU operando a 400 MHz e utilizando 256 MB de memória dedicada, o
desempenho não é muito superior ao de uma Intel X3100 onboard.

Em seguida temos as placas GeForce 8400M GS, 8400M GT e 8600M GS. As
três utilizam 512 MB de memória GDDR3 dedicada e são baseadas na versão
"completa" do mobile G86, com 16 stream processors. Como de praxe, elas se
diferenciam pela freqüência de operação, com a 8400M GS operando a 400
MHz (com a memória a 1.2 GHz), a 8400M GT operando a 450 MHz (com a
memória também a 1.2 GHz) e a 8600M GS operando a 600 MHz (com a
memória a 1.4 GHz). Nos três casos, as unidades de processamento operam
ao dobro da freqüência do restante da GPU, o que resulta em freqüências de
(respectivamente) 800, 900 e 1.2 GHz. A 8400M GS utiliza um barramento de
64 bits com a memória, o que limita bastante o desempenho da GPU, enquanto
a 8400M GT e a 8600M GS utilizam um barramento de 128 bits.

Temos ainda as GeForce 8600M GT e a 8700M GT, que são baseadas na
versão mobile do G84, com 32 stream processors. Ambas utilizam 512 MB de
memória GDDR3, ligada à GPU através de um barramento de 128 bits. A
8600M GT opera a 475 MHz, com a memória a 1.4 GHz, enquanto a 8700M
GT opera a 625 MHz, com a memória a 1.6 GHz. Em ambos os casos, as
unidades de processamento operam ao dobro da frequência, o que resulta em
950 MHz e 1.25 GHz, respectivamente.

Barebones

Um barebone é um notebook personalizável, onde você compra apenas a
carcaça, com a placa-mãe, tela, bateria, teclado e touchpad. Desta forma, você
pode personalizar o equipamento, escolhendo o processador, módulos de
memória, HD, drive óptico e, em alguns modelos, também a placa de vídeo
(neste caso escolhendo entre um pequeno conjunto de modelos mobile).

Dois exemplos de barebones são o Asus Z84JP e o MSI MS-1058. À primeira
vista eles parecem notebooks normais, e realmente são. Um barebone nada
mais é do que um notebook desenvolvido com o objetivo de permitir uma certa
flexibilidade na escolha dos componentes, que é vendido "incompleto",

                                                                          933
permitindo que você escolha o que usar. Não é incomum que o fabricante
ofereça também opções de notebooks "completos" baseados nos mesmos.




                      Asus Z84JP e MSI MS-1058




                                                                   934
O Asus Z84JP é um desktop replacement, grande e equipado com uma tela de
17", enquanto o MSI MS-1058 é um thin-and-light, compacto e com tela de 12".
Escolhi os dois como exemplo justamente devido às diferenças entre eles.

O Z84JP usa uma placa mãe baseada no chipset Intel 945PM. Ao contrário do
945GM, este chipset não tem vídeo onboard, por isso o notebook inclui um slot
mobile PCI Express interno, onde você pode instalar uma placa de vídeo MXM,
da série GeForce Go, o que permite montar um notebook com um desempenho
3D respeitável, usando uma GeForce Go 7900 GTX com 512MB, por exemplo.

O chipset suporta processadores Intel baseados no soquete M, incluindo os
Core 2 Duo (Meron), Core Duo (Yonah) e Pentium M (Dothan) e a placa possui
dois slots para módulos SODIMM de memória, de até 2 GB cada, o que
permite instalar até 4 GB. O barebone já vem com um drive DVD-RW, leitor de
cartões, som, rede e modem onboard, transmissor Bluetooth e uma webcam
integrada na tela, mas (além do processador, memória e placa de vídeo),
faltam o HD e a placa wireless.

Não existem limitações com relação à escolha do HD, você pode escolher
qualquer modelo SATA de 2.5", incluindo os modelos de 7200 RPM. Apesar da
placa-mãe ser baseada em um chipset Intel, você pode utilizar uma placa
wireless de qualquer fabricante. A única observação é que o barebone utiliza
um slot Express Mini, o que deixa de fora as placas wireless no formato mini-
PCI.

O MS-1058 é numa plataforma bem diferente. Em primeiro lugar, ele é baseado
no chipset ATI Radeon Xpress 1100 (composto pelos RS485M e SB460), que
inclui um chipset de vídeo onboard relativamente poderoso (pelo menos se
comparado com os chipsets de vídeo integrado da Intel), mas em
compensação não suporta o uso de uma placa MXM externa.

Ele suporta processadores AMD soquete S1, incluindo, naturalmente, todos os
modelos do Turion X2 e oferece suporte a módulos SODIMM de até 1 GB,
permitindo um máximo de 2 GB de memória instalada.

Assim como no caso do Asus Z84JP, o MSI MS-1058 inclui um drive DVD-RW,
som, rede, modem, leitor de cartões, Bluetooth e um slot Express Mini para a
conexão da placa wireless, mas, ao invés de uma interface SATA, ele ainda
utiliza a boa e velha porta IDE para a conexão do HD, o que limita um pouco as
escolhas, pois mesmo entre os HDs de 2.5", os modelos IDE são cada vez
mais raros.

Em agosto de 2007, o Z84JP custava US$ 973 e o MS-1058 custava US$ 719.
Os preços podem parecer baixos a princípio, mas lembre-se de que estes são
os preços nos EUA. Para comprá-los aqui no Brasil você teria que pagar o
envio e os impostos de importação, o que dobraria o valor.

Somando o valor do barebone, com o valor individual dos componentes, você
logo percebe que o custo excede bastante o da maioria dos notebooks de
baixo e médio custo. Este é o primeiro segredo dos barebones: eles não são
vantajosos quando você quer montar um notebook de baixo custo, mas sim em
casos onde você quer uma configuração mais parruda ou incomum.
                                                                          935
O principal motivo desta discrepância é que notebooks de baixo custo tem seu
custo amortizado pelo grande volume de produção e são parcialmente
subsidiados pelos modelos mais caros da mesma linha. Os barebones são
quase sempre produzidos em pequena quantidade e por isso (depois de
somados os custos individuais dos componentes) acabam saindo mais caro.

A situação muda um pouco, entretanto, quando você quer comprar um
notebook high-end. Como os fabricantes trabalham com margens de lucro
muito maiores nos modelos topo de linha (justamente o oposto do que temos
nos modelos de baixo custo), comprar os componentes separadamente pode
sair mais barato, além de que um barebone lhe oferecerá melhores
possibilidades de upgrade.

Por exemplo, imagine o caso de alguém que quer desesperadamente um
notebook para games. Todos sabemos que as opções de vídeo integrado
atendem apenas jogadores ocasionais, nenhum aficionado ficaria satisfeito
jogando o F.E.A.R a 20 FPS, usando as configurações mínimas, em uma ATI
X200M, por exemplo.

Presumindo que dinheiro não seja problema, esta seria uma situação onde um
barebone poderia prestar bons serviços. Veja o caso do Clevo M590KE, por
exemplo. Ele inclui uma tela de 20.1", suporta o uso de dois HDs SATA de 2.5"
em RAID e suporta o uso de duas placas GeForce Go em SLI, com a
possibilidade de usar duas GeForce Go 7950 GTX com 512 MB cada, ou (no
caso de um notebook destinado a uso profissional) duas Quadro FX Go 2500M.
Com relação ao processador, você pode utilizar um Turion X2 TL-66 (2.3 GHz),
combinado com até 2 GB de memória. Ou seja, utilizando este barebone como
base, você poderia montar um laptop com uma configuração superior à de
muitos desktops.




                               Clevo M590KE

                                                                         936
Naturalmente, isso tem um preço em termos de portabilidade. O M590KE pesa
quase 7 kg e a bateria de 12 células dura pouco mais de meia hora rodando
jogos pesados com duas placas em SLI.

O barebone em si custa US$ 2259 (em Agosto de 2007), mas você poderia
gastar mais de US$ 4000 no total (preço dos EUA), já que cada GeForce Go
7950 GTX custa US$ 390 e ainda temos o custo do processador, memória,
placa wireless e HDs. Naturalmente, um desktop com um desempenho similar
sairia brutalmente mais barato, mas o preço ainda é baixo se comparado com o
de outros laptops de configuração similar.

O maior problema com relação aos barebones, é a dificuldade em comprar os
componentes aqui no Brasil. Uma coisa é comprar um notebook montado
dentro de uma determinada configuração ou faixa de preço, outra é conseguir
encontrar modelos específicos de barebones, processadores mobile e placas
MXM à venda. Você pode perfeitamente comprar tudo online, em lojas do
exterior, mas os gastos com o transporte e impostos acabam elevando muito
os valores.

Drivers

Infelizmente, cada vez mais fabricantes optam por não fornecer um CD de
quick restore e muitas vezes nem mesmo um CD de drivers junto com os
notebooks vendidos, uma pequena economia, que acaba representando dor de
cabeça para quem compra.

Nesses casos, para gerar o quick-restore, você deve usar o utilitário incluído no
sistema e fornecer um DVD virgem. O maior problema é que ele inclui apenas
uma imagem do sistema, sem uma pasta com os drivers.

Ao instalar uma cópia limpa do Windows, você precisa baixar os drivers e
utilitários necessários no site do fabricante. Em muitos casos, além dos drivers,
você precisa também de um software de gerenciamento para ativar os botões
controlados via software, como o "Launch Manager", que controla o botão do
transmissor da placa wireless e outras funções em notebooks da Acer.

Vamos então a uma lista dos principais fabricantes:

Acer: http://support.acer-euro.com/drivers/downloads.html ou
http://www.cpsy.com.br/.

HP: http://welcome.hp.com/country/br/pt/support.html

Lenovo e IBM: http://www.lenovo.com/support/br/ (a página inclui também
manuais técnicos detalhados para a maioria dos modelos).

Toshiba: http://support.toshiba.com/

Asus: http://support.asus.com/download/

Averatec: http://www.averatec.com/customercare/downloads.asp

Dell: http://support.dell.com/support/downloads/

                                                                             937
Compal: Embora a Compal venda um número muito pequeno de notebooks
sob sua própria marca, ela é a verdadeira fabricante de uma grande parcela
dos notebooks vendidos pela Amazon, Toshiba e outros. O Amazon L81 é na
verdade um Compal EL81, o Amazon L71 é um Compal DL71 e assim por
diante. Os drivers para notebooks fabricados pela Compal podem ser
encontrados no: http://www.compal.com/asp/driver_dnd/.

Clevo: A Clevo é a verdadeira fabricante da maior parte (senão todos) os
notebooks da Positivo, entre outros integradores nacionais. O Positivo V41, por
exemplo, é na verdade um Clevo M540S. Os drivers estão disponíveis no:
http://www.clevo.com.tw/download/

Além de drivers, as páginas de download da Compal e Clevo incluem manuais
e até mesmo guias de desmontagem (para alguns modelos). As fotos incluídas
nos manuais também ajudam a identificar os modelos vendidos pelos
integradores nacionais em caso de dúvidas.




                                                                           938
Foto do manual do Clevo M540S e foto de divulgação do Positivo V41.
                           Nota alguma semelhança?

Criando uma imagem de recuperação

Com relação ao CD de recuperação, outra opção é fazer um backup da
instalação original usando o Partimage. Ele é um utilitário incluído em muitas
distribuições Linux live-CD, que permite criar imagens compactadas do
conteúdo da partição e restaurá-las quando desejado.

O Partimage é uma ferramenta extremamente útil, que permite tanto fazer
backup das partições do HD (o que permite restaurar a instalação do sistema,
exatamente como estava, em caso de qualquer eventualidade) quanto clonar
instalações do sistema, de forma a replicar a instalação em várias máquinas.
Se você já usou o Norton Ghost, vai notar que o Partimage oferece funções
muito semelhantes, com a vantagem de ser gratuito e mais fácil de usar. Além
de oferecer suporte a partições FAT e NTFS, ele é capaz de manipular
partições formatadas nos mais diversos sistemas de arquivos, incluindo EXT3,
ReiserFS, XFS e outros sistemas de arquivos usados no Linux. Ele pode ser
usado tanto para fazer imagens de instalações do Windows quanto imagens de
instalações do Linux ou outros sistemas operacionais.

Os arquivos de imagem podem ser salvos no próprio HD (caso ele esteja
dividido em duas partições), em um HD externo, em um compartilhamento de
rede ou, até mesmo em um pendrive, dependendo do tamanho da imagem de
sistema que você precisar salvar.

Em geral, gerar a imagem usando o Partimage é bem mais rápido do que ficar
gravando os CDs de recuperação usando o utilitário oferecido pelo fabricante,
além de garantir uma flexibilidade maior.


                                                                             939
O Partimage vem pré-instalado no Kurumin, de forma que você pode dar boot
no sistema através do CD, montar a partição ou compartilhamento de rede
onde a imagem será salva e gerar a imagem através do próprio CD. Também é
possível usar um CD do Ubuntu ou outra distribuição live-cd, desde que você
instale manualmente o pacote "partimage", que contém o programa. Se você
está procurando uma distribuição minimalista, pode usar o System Rescue-CD
(que também contém o Partimage), disponível no: http://www.sysresccd.org/.
Ele exige um pouco mais de familiaridade com o sistema, mas não deixa de ser
uma boa opção.

Ao fazer a imagem da partição, o Partimage verifica seu conteúdo e salva
apenas os dados, aproveitando para comprimir tudo usando o sistema de
compressão escolhido por você. Isso permite gerar arquivos relativamente
pequenos. Se você tiver uma instalação do sistema que está ocupando 3 GB
de uma partição com 20 GB, vai acabar (na maior parte dos casos) com um
arquivo compactado de imagem de pouco mais de 1 GB.

O Partimage também é capaz de quebrar a imagem em vários arquivos (você
especifica o tamanho desejado), permitindo que os backups possam ser
facilmente gravados em DVD ou múltiplos CDs. Você pode chamá-lo usando o
comando "sudo partimage" ou simplesmente "partimage", neste caso como
root.

Assim como ao particionar o HD usando o gparted, você não tem como criar ou
restaurar imagens de partições que estão montadas, por isso, é fortemente
recomendável que você sempre rode o Partimage usando uma distribuição
Linux live-CD já que, dessa forma, todas as partições do HD ficam disponíveis
sem restrições.

A primeira tela mostra as partições disponíveis no HD. Lembre-se de que, no
Linux, as partições primárias são numeradas de 1 a 4 e as partições lógicas de
5 em diante, mesmo que você possua apenas uma ou duas partições
primárias. É fácil identificar as partições dentro do Partimage, pois ele exibe o
tamanho e o sistema de arquivos de cada partição:




                                                                             940
Aqui temos um HD picotado em várias partições. As duas em NTFS
correspondem a uma instalação do Windows e uma partição de dados, a hda3
é uma instalação do Kurumin, a hda5 é uma instalação do Debian, enquanto o
hda6 é mais uma partição dados, que vou usar para salvar as imagens. O HD
tem também uma partição livre, não-formatada, e uma partição swap, mas elas
não fazem diferença nesse caso.

Naturalmente, o backup da partição precisa ser gravado em algum lugar. Você
pode usar o espaço livre em uma outra partição disponível no HD (pode ser até
uma partição Windows) ou fazer o backup via rede. Por enquanto, vamos fazer
as coisas localmente.

No menu com as partições, use as setas para escolher qual partição deseja
salvar. Em seguida, use a tecla TAB para selecionar o campo "Image file to
create/use" e digite o local onde deseja salvar a imagem.

Eu poderia guardar o backup de qualquer uma das partições em qualquer outra
(com exceção da partição swap), desde que houvesse espaço livre disponível.
Poderia fazer um backup do Debian na partição do Windows ou um backup do
Windows na partição do Kurumin (desde que houvesse espaço livre suficiente,
naturalmente). Mas, no meu caso, usarei a partição hda6, que possui bastante
espaço livre.



                                                                          941
Para gravar qualquer coisa em uma partição, você precisa primeiro montá-la
dentro de alguma pasta. Para isso, usamos o comando "mount", incluindo o
dispositivo da partição e a pasta onde ela será montada (sempre como root),
como em:

# mount -t /dev/hda6 /mnt/hda6

O comando mount "genérico" serve para todo tipo de partições, com exceção
das partições NTFS do Windows. A única forma de montá-las em modo leitura
e escrita é usar o NTFS-3g. Se quisesse salvar a imagem na partição hda2,
formatada em NTFS, precisaria usar o comando abaixo para montá-la
especificando os parâmetros do NTFS-3g (ele só funciona em distribuições que
trazem o NTFS-3g instalado):

# ntfs-3g -o umask=0,silent /dev/hda1 /mnt/hda1

Note que você deve montar apenas a partição de destino, onde a imagem será
salva. A partição de origem deve sempre permanecer desmontada, pois o
Partimage precisa de acesso de baixo nível aos dados dentro da partição.

Neste exemplo, estou salvando uma imagem da partição hda3, do Kurumin,
dentro do arquivo "kurumin.iso", na pasta /mnt/hda6, que, por sua vez, é o
ponto de montagem da minha partição de dados. Para isso, uso a opção "Save
partition into a new image file":




                                                                         942
Esta interface de texto pode parecer estranha para quem não está
acostumado, mas as funções são simples: a tecla Tab permite navegar entre
os campos, as setas alternam entre as opções e a barra de espaço permite
marcar e desmarcar opções. Depois de terminar, pressione F5, para ir para a
próxima tela, ou F6, para sair. Na tela seguinte você terá várias opções para a
criação da imagem:




As opções selecionadas por default são justamente as que você vai usar na
maior parte do tempo. Por isso, você pode perfeitamente pressionar a tecla F5
mais uma vez para continuar.

A compressão em Gzip é a mais rápida, mas existe também a opção de usar o
Bzip2, um algoritmo muito mais pesado, que gera arquivos até 10% menores,
mas em compensação faz com que o processo de geração da imagem dure 3
vezes mais.

Ao dividir em vários volumes, o Partimage adicionará uma extensão ".000",
".001", ".002", etc. aos arquivos, como em um arquivo .rar dividido em vários
volumes. Na hora de restaurar a imagem, você precisa apenas colocá-los todos
no mesmo diretório e apontar para o arquivo .000.

Pressionando F5 novamente, você vai para a tela de criação da imagem.
Inicialmente ele pede uma descrição para a imagem, onde você pode adicionar
um texto que será mostrado ao restaurá-la. O texto é opcional, apenas para
                                                                           943
seu próprio controle. Você pode simplesmente pressionar o "Ok" para
continuar. Esta última confirmação inicia oficialmente a criação da imagem.
Agora é só ir tomar um café e voltar depois de alguns minutos.

O principal determinante na velocidade de geração da imagem é o
desempenho do processador. No meu caso, estou fazendo uma imagem de
uma partição com 2 GB ocupados, usando compressão em gzip em um
Pentium M de 1.73 GHz e o processo todo demorou pouco menos de 5
minutos:




O tamanho final da imagem varia de acordo com o tipo de arquivos dentro da
partição. Se for uma partição de sistema, com um monte de executáveis de
programas, então provavelmente o Partimage conseguirá reduzir o tamanho do
arquivo a aproximadamente um terço do original. O backup da partição com 2
GB de dados do exemplo resultou em um arquivo de 671 MB. Mas, por outro
lado, se a partição estiver cheia de arquivos em .mp3, filmes em divx, imagens
em .jpg ou outros tipos de arquivos já compactados, o índice de compressão
será mínimo.

Na hora de restaurar uma imagem, o processo é basicamente o mesmo:
montar a partição ou CD/DVD onde está o arquivo e apontar a partição que
será regravada e a localização do arquivo de imagem na tela principal do
Partimage. A diferença é que agora você deve marcar a opção "Restore

                                                                          944
partition from an image file". O nome do arquivo deve ser fornecido exatamente
como aparece no gerenciador de arquivos, incluindo o ".000" que o Partimage
adiciona ao usar a opção "Image split mode > Into files whose size is".




O último passo é a gravação da imagem propriamente dita, bem mais rápido do
que quando geramos a imagem, já que é mais fácil descompactar um arquivo
do que gerar o arquivo compactado.

Uma dica importante é que você também pode salvar as imagens em
compartilhamentos de rede e também restaurá-las a partir deles. Isso pode ser
muito prático quando você administra uma rede com várias máquinas, pois
pode salvar backups de todas as instalações em um servidor central e
restaurá-las diretamente via rede. Para restaurar um micro, você precisaria
apenas dar boot com o live-CD, configurar a rede, montar o compartilhamento
do servidor e usar o Partimage para restaurar o sistema a partir da imagem
correspondente.

Concluindo, o Partimage não oferece a opção de fazer uma cópia completa do
HD, apenas de partições isoladas. Mas, é possível fazer isso se você utilizar
um comando adicional, para copiar também a trilha MBR e a tabela de partição
do HD. Com as duas coisas em mãos é possível realmente clonar um HD
inteiro. Para isso, são necessários mais dois comandos. Acesse o diretório
onde você está armazenando as imagens e execute:

                                                                           945
# dd if=/dev/hda of=hda.mbr count=1 bs=512

Este comando faz uma cópia do setor de boot do HD, aqueles primeiros 512
bytes de extrema importância, que incluem o gerenciador de boot e também a
tabela de partição do HD, salvando-o no arquivo "hda.mbr".

Ao restaurar esta cópia do MBR em um HD limpo, ele ficará particionado
exatamente da mesma forma que o primeiro (porém sem os dados). Se depois
disto você restaurar também as imagens das partições, ficará com uma cópia
idêntica de todo o conteúdo do HD.

O HD de destino não precisa necessariamente ser do mesmo tamanho que o
primeiro; você pode usar um HD maior sem problemas. Neste caso, o
excedente ficará vago e você poderá criar novas partições depois.
Naturalmente, o HD de destino não pode ser menor que o original, caso
contrário você vai ficar com um particionamento inválido e dados faltando, ou
seja, uma receita para o desastre.

Na hora de restaurar os backups, acesse a pasta onde está o arquivo e inverta
o comando, para que o MBR seja restaurado:

# dd if=hda.mbr of=/dev/hda

Se você tem um HD dividido em duas partições ("hda1" e "hda2", por exemplo),
é necessário fazer imagens das duas partições usando o Partimage e fazer o
backup da MBR usando o comando do dd. Na hora de restaurar, comece
restaurando o MBR, deixando para regravar as imagens das partições por
último.

Baterias

Embora o Wi-Fi e o Bluetooth tenham transformado as redes em redes
wireless, ainda temos o problema da transmissão de energia. Seu notebook
pode ficar conectado à rede wireless da sua casa continuamente, mas você
ainda precisa ligá-lo na tomada a cada duas ou três horas para recarregar as
baterias.

Existem tecnologias experimentais para a transmissão de energia sem o uso
de fios a curtas distâncias, que podem vir a eliminar essa necessidade nos
próximos anos. Uma delas, mais convencional, é baseada no uso de indução
para carregar as baterias de dispositivos de baixo consumo, como celulares e
palmtops. Um módulo receptor é instalado dentro do aparelho, permitindo que
ele seja carregado simplesmente por ser deixado sobre uma base:




                                                                          946
Essa tecnologia é comercializada pela SplashPower (splashpower.com) e é
relativamente barata, de forma que pode vir a ser utilizada em um certo número
de aparelhos a partir dos próximos anos. Entretanto, a funcionalidade é
limitada, já que o aparelho precisa ficar sobre a base por algumas horas para
ser carregado o que, na prática, não é muito diferente de usar um cradle, como
no caso dos Palms.

A segunda tecnologia, mais esotérica, é baseada no uso de ressonância,
utilizando o mesmo princípio que faz com que objetos vibrem ao receberem
ondas em uma determinada freqüência. A idéia é utilizar duas bobinas de
cobre, desenvolvidas para ressoarem à mesma freqüência. Dessa forma, é
possível transmitir energia de uma bobina para a outra de forma relativamente
eficiente, já que a energia é canalizada diretamente para a segunda bobina, ao
invés de ser irradiada em todas as direções.

Esta tecnologia foi demostrada em junho de 2007 por pesquisadores do MIT,
que utilizaram duas bobinas para transmitir energia suficiente para acender
uma lâmpada de 60 watts a uma distância de 2 metros
(http://web.mit.edu/isn/newsandevents/wireless_power.html):




                                                                          947
Foto da equipe do MIT, entre as duas bobinas usadas no experimento

Teoricamente, seria possível transmitir energia a distâncias de até 5 metros, o
que seria suficiente para que um notebook pudesse ficar continuamente ligado
e recarregar as baterias enquanto estivesse dentro da mesma sala que o
carregador. O problema é que atualmente as bobinas ainda são muito grandes
e pesadas e a eficiência é baixa. Na demonstração, foram utilizadas boninas
com 60 centímetros de diâmetro e a eficiência da transmissão foi de apenas
40% (ou seja, o sistema consumia 150 watts para transmitir 60 watts para a
lâmpada). Ainda existe um longo caminho a percorrer até que sejam
desenvolvidas bobinas pequenas e leves o suficiente a ponto de poderem ser
usadas em um notebook.

De qualquer forma, estas duas tecnologias são destinadas a substituírem os
carregadores e eliminar a necessidade do uso de fios e não substituir as
baterias, cujo uso só tende a aumentar. Elas (as baterias :) são tão
onipresentes que seria difícil imaginar como seria o mundo sem elas.

Infelizmente, não existe nenhuma lei de Moore para baterias: elas não dobram
de capacidade a cada 18 meses como os processadores. Os avanços na área
das baterias são muito mais lentos e incrementais, de forma que qualquer nova
tecnologia é comemorada. Vamos então às principais tecnologias:

Ni-Cad

As baterias Ni-Cad ficam no meio do caminho entre a alta densidade
energética das baterias Li-ion e a ineficiência das baterias de chumbo ácido.
Por serem relativamente baratas, elas foram utilizadas em todo tipo de
notebooks e aparelhos portáteis em geral ao longo da década de 1990.

A principal característica das baterias Ni-Cad é o temível efeito memória, que
ocorre quando a bateria recebe uma seqüência de cargas parciais. A bateria
passa a armazenar cada vez menos energia, até que é virtualmente inutilizada.

Isso acontece porque as baterias Ni-Cad são compostas por cristais
microscópicos, desenvolvidos para proporcionar uma maior área de contato.

                                                                           948
Depois de algumas cargas parciais, os cristais começam a se juntar, formando
cristais maiores. Quanto maiores os cristais, menor é a área de contato e
menos energia a bateria é capaz de armazenar.

É possível quebrar os cristais "exercitando" a bateria, através de uma série de
ciclos de carga e descarga completa. Alguns carregadores utilizam pulsos de
recarga, onde a tensão aplicada varia em ciclos de menos de um segundo.
Estes pulsos ajudam a quebrar os cristais, acelerando o processo de
recondicionamento. Outra técnica é fazer uma deep discharge, ou seja, uma
"descarga profunda", onde a tensão das células é reduzida a um valor muito
abaixo do normal, processo seguido por uma recarga completa.

Uma bateria Ni-Cad bem conservada e exercitada periodicamente pode
proporcionar de 1000 a 1500 ciclos de carga e descarga, o que é muito mais do
que uma bateria Li-ion atual suporta. Entretanto, devido ao efeito memória, a
maioria das baterias acabam sendo descartadas muito antes.

Um segundo problema é que o cádmio usado nas baterias é extremamente
tóxico. Conforme as baterias Ni-Cad cresciam em popularidade, maiores eram
os estragos ambientais, o que acelerou sua substituição pelas baterias Ni-MH e
Li-ion.

Ni-MH

Desenvolvidas a partir da década de 1970 e aperfeiçoadas ao longo da década
de 1980, as baterias Ni-MH são uma evolução direta das Ni-Cad. Elas também
utilizam o níquel como matéria prima básica, mas o cádmio é substituído por
uma liga de metais não tóxicos, amenizando a questão ambiental.

Naturalmente, as Ni-MH também possuem seus méritos técnicos. Elas
possuem uma densidade energética cerca de 40% superior à das baterias Ni-
Cad; ou seja, um notebook que tem 1:30 horas de autonomia utilizando uma
bateria Ni-Cad, teria mais de 2:00 horas caso fosse utilizada uma bateria Ni-MH
de dimensões similares.

Outra vantagem é que elas são menos suscetíveis ao efeito memória. Realizar
um ciclo completo de carga e descarga é normalmente suficiente para reverter
os danos causados por algumas recargas parciais. Por outro lado, as baterias
Ni-MH são um pouco mais caras de se produzir e suportam bem menos ciclos
de recarga.

Enquanto uma bateria Ni-Cad suporta mais de 1000 ciclos, uma bateria Ni-NH
já apresenta sinais de envelhecimento após menos de 300 ciclos completos,
chegando ao final de sua vida útil depois de cerca de 400 ciclos. Neste ponto,
não existe muito o que fazer a não ser trocar as células.

Falando em células, um ponto que facilitou a migração das baterias Ni-Cad
para as Ni-MH é que ambas utilizam células de 1.2V. Isso permitiu que as Ni-
MH substituíssem diretamente as antecessoras, sendo produzidas nos
mesmos formatos e utilizando os mesmos carregadores.



                                                                           949
Originalmente, as baterias Ni-MH também demoravam mais para carregar, até
o dobro do tempo que as baterias Ni-Cad. Com o tempo, os fabricantes
passaram a desenvolver carregadores rápidos "inteligentes", que interrompem
a recarga quando a bateria atinge seu limite, evitando danos.

Embora as Ni-Cad tenham entrado em desuso, sobrevivendo apenas em
alguns nichos, as Ni-MH ainda são as mais utilizadas em pilhas recarregáveis,
baterias para telefones sem fio e outras áreas "menos nobres". Nos notebooks,
palmtops e celulares, elas foram quase que completamente substituídas pelas
Li-ion e Li-poli, que são o próximo passo da cadeia evolutiva.

Li-ion

As baterias Li-ion são o padrão atual. Elas são de longe mais complexas e
temperamentais que as Ni-Cad e Ni-MH, mas, em compensação, possuem
uma densidade energética de duas a três vezes maior que as baterias Ni-MH
(considerando duas baterias do mesmo peso), variando de acordo com a
técnica de fabricação utilizada.

Outra vantagem é que elas não possuem efeito memória. Pelo contrário,
descarregar a bateria completamente antes de carregar acaba servindo apenas
para desperdiçar um ciclo de carga/descarga, tendo um efeito oposto do
esperado.

As baterias Li-Ion são uma tecnologia relativamente recente. Os primeiros
testes foram feitos na década de 70, utilizando o lítio na forma de metal, com
resultados quase sempre catastróficos. O lítio é um material muito instável e
por isso as baterias explodiam, destruindo os equipamentos e até ferindo os
operadores. Durante a década de 80, as pesquisas se concentraram no uso de
íons de lítio, uma forma bem mais estável. Em 1991 a Sony lançou as primeiras
baterias comercias.

Como disse, as baterias Li-Ion são bastante temperamentais. Em agosto de
2006 a Dell e a Apple anunciaram um mega-recall, substituindo 5.9 milhões de
baterias com células de um lote defeituoso, fabricado pela Sony. Estas células
foram acidentalmente produzidas com lítio impuro, contaminado com traços de
outros metais. Esta foto, publicada pelo theinquirer.net, mostra um dos
principais riscos associados:




                                                                          950
Apesar de não parecer, esta é uma foto real, tirada durante uma conferência,
onde um notebook com uma bateria defeituosa literalmente pegou fogo.
Naturalmente, a possibilidade de isto acontecer com você é quase tão grande
quanto a de ganhar na loteria, mas ela realmente existe. As células de baterias
li-ion são bastante instáveis. A maior surpresa é como elas podem funcionar
bem na maior parte do tempo, e não as unidades que explodem. :)

As células podem vazar ou explodir se aquecidas a temperaturas superiores a
60 graus, ou caso sejam carregadas além de seu limite energético. E, como a
foto mostra, isto não é apenas mito. Outro problema é que as células oxidam
rapidamente caso completamente descarregadas, o que demanda uma grande
atenção.

Não seria de se esperar que o pobre usuário soubesse de tudo isso e ficasse
com o cronômetro na mão, calculando o tempo exato de recarga da bateria.
Para tornar as baterias confiáveis, todas as baterias Li-Ion usadas
comercialmente possuem algum tipo de circuito inteligente, que monitora a
carga da bateria. Ele interrompe o carregamento quando a bateria atinge uma
tensão limite e interrompe o fornecimento quando a bateria está quase
descarregada, a fim de evitar o descarregamento completo. A obrigatoriedade
do uso do chip é o principal motivo das pilhas recarregáveis ainda serem todas
Ni-MH ou Ni-Cad: seria muito dispendioso incluir um chip em cada pilha (fora o
fato das células Li-ion trabalharem a 3.6V).




                                                                           951
Bateria Li-ion de um IBM Thinkpad desmontada

Em geral, o "circuito inteligente" não é tão inteligente assim, pois se limita a
monitorar a tensão fornecida pela bateria. Para evitar explosões acidentais, os
fabricantes precisam trabalhar dentro de uma margem de tolerância, de forma
que normalmente é usada apenas 80 a 90% da capacidade real da bateria.

Outra questão interessante, sobretudo nos notebooks, é que as baterias são
compostas por de três a nove células independentes. O circuito não tem como
monitorar a tensão individual de cada célula, mas apenas do conjunto. Isso faz
com que, em situações onde as células fiquem fora de balanço, ou em casos
onde uma das células apresenta algum defeito prematuro, o circuito passe a
interromper o fornecimento de energia após pouco tempo de uso. Surgem
então os numerosos casos onde uma bateria que originalmente durava 2
horas, passa a durar 15 minutos, por exemplo.

Na maioria dos notebooks, o circuito da bateria trabalha em conjunto com o
BIOS da placa-mãe, o que abre margem para erros diversos. É comum que,
depois de várias cargas parciais, o monitor do BIOS fique fora de balanço e
passe a calcular a capacidade da bateria de forma errônea. Ele passa a
sempre fazer recargas parciais, o que faz a carga da bateria durar cada vez
menos, muito embora as células continuem perfeitamente saudáveis. É por
isso que muitos notebooks incluem utilitários para "calibrar" a bateria,
disponíveis no setup. Eles realizam um ciclo de carga e descarga completo,
atualizando as medições.

Outro (mais um) problema é que as baterias Li-ion "envelhecem" rapidamente,
mesmo que não sejam usadas, pois o lítio é um metal extremamente instável,
que reage com outros elementos.

As baterias da década de 1990 normalmente duravam menos de 3 anos, quer
a bateria fosse utilizada ou não. Depois do primeiro ano acontecia uma queda
de 5 a 20% na autonomia (dependendo das condições de armazenamento da
bateria), no final do segundo ano a bateria segurava apenas metade da carga e
no final do terceiro não segurava mais carga alguma. As baterias suportavam
em torno de apenas 300 ciclos de carga e descarga, de forma que uma bateria
muito exigida chegava a durar apenas alguns meses.


                                                                            952
Com melhorias nas ligas e processos de fabricação utilizados, a durabilidade
das baterias aumentou. Não é incomum que uma bateria Li-ion atual,
conservada adequadamente, dure 4 ou 5 anos e suporte 500 ciclos de recarga
ou mais. Apesar disso, os problemas fundamentais continuam.

As baterias Li-ion se deterioram mais rapidamente quando completamente
carregadas ou quando descarregadas, por isso o ideal é deixar a bateria com
de 40 a 50% de carga quando for deixá-la sem uso. O calor acelera o
processo, por isso, quanto mais frio o ambiente, melhor.

Segundo o batteryuniversity, uma bateria completamente carregada, guardada
numa estufa, a 60°C, pode perder mais de 40% de sua capacidade de
armazenamento energético depois de apenas 3 meses, enquanto uma bateria
conservada a 0°C, com 40% da carga, perderia apenas 2% depois de um ano.

Evite descarregar a bateria completamente quando isso não é necessário. O
melhor é simplesmente usar e carregar a bateria seguindo seu ciclo de uso.
Outra dica é que a durabilidade da bateria é menor quando frequentemente
submetida a descargas rápidas, por isso gravar DVDs no notebook usando a
carga das baterias não é uma boa idéia :). A cada 20 ou 30 recargas, é
interessante realizar um ciclo completo de carga e descarga, a fim de "calibrar"
as medições do chip e do monitor do BIOS.

A princípio, retirar a bateria de um notebook que fica ligado na tomada na maior
parte do tempo seria uma boa idéia para aumentar sua (da bateria) vida útil. O
problema é que a maioria dos notebooks usam a bateria como escape para
picos de tensão provenientes da rede elétrica. Removendo a bateria, esta
proteção é perdida, o que pode abreviar a vida útil do equipamento.

Ao contrário das baterias Ni-Cad, que podem ser recuperadas de diversas
maneiras caso vitimadas pelo efeito memória, não existe muito o que fazer com
relação às baterias Li-Ion. A única forma de ressuscitar uma bateria que
chegou ao final de sua vida útil seria abrir e trocar as células, o que é
complicado (já as baterias são seladas e é difícil adquirir as células
separadamente) e perigoso, pois o lítio dentro das células reage com o ar e as
células podem explodir (lembra da foto? ;) caso a polaridade seja invertida. De
qualquer forma, esta página inclui dicas de como desmontar uma bateria e
substituir                              as                              células:
http://www.electronics-lab.com/articles/Li_Ion_reconstruct/index_1.html

Tentar recuperar uma bateria Li-ion através de uma descarga completa (como
nas baterias Ni-Cad), é inútil. Só serviria para oxidar as células, acabando de
vez com a bateria. Graças ao chip, as células de uma bateria Li-Ion nunca se
descarregam completamente, pois o fornecimento é cortado quando a bateria
ainda conserva de 10 a 20% da carga (de acordo com os parâmetros definidos
pelo fabricante).




                                                                            953
Li-poly

Ainda dentro da família do lítio, temos as baterias Li-poly, que são baterias
"secas", que utilizam um tipo de filme plástico como eletrólito, em vez de utilizar
líquido. Isto simplifica o design da bateria, o que permite produzir células ultra-
finas, com até 1 mm de espessura.




                       Exemplo de bateria Li-poly ultra-fina

A principal limitação é que o polímero não é bom condutor, fazendo com que a
bateria seja incapaz de fornecer grandes cargas, como as necessárias para
disparar o flash de uma câmera digital, por exemplo.

Com o tempo, surgiram baterias Li-poly "híbridas", que utilizam um tipo de gel
como eletrólito, eliminando a limitação mas mantendo a espessura reduzida.
Embora ainda caras, estas baterias vem ganhando espaço nos celulares e
palmtops, pois são consideradas mais seguras que as baterias Li-ion
tradicionais:




                                                                               954
Células de combustível

As células de combustível produzem energia a partir da reação do hidrogênio
com o oxigênio do ar, gerando apenas água, eletricidade e calor como
subprodutos.

A tecnologia de célula de combustível mais promissora para uso em portáteis é
a DMFC (Direct Methanol Fuel Cell), onde é utilizado metanol (um tipo de
álcool combustível, produzido a partir do gás natural).

O metanol é, neste caso, utilizado como um meio de armazenamento do
hidrogênio, o que permite a construção de células muito mais compactas do
que seria se fosse utilizado hidrogênio pressurizado. Ao invés de queimar o
combustível, como faria um motor de combustão, a célula de combustível
combina o hidrogênio do metanol com oxigênio do ar, um processo bem mais
seguro.

Desde 2003, a NEC, IBM, Toshiba e outros fabricantes vêm demonstrando
diversos protótipos de células de combustível destinadas a notebooks e
palmtops. Na maioria dos casos, as células de combustível são utilizadas como
uma bateria secundária, utilizada apenas quando a bateria interna se esgota.

Em um protótipo demonstrado pela IBM em 2003, uma carga de 130 ml com
uma mistura de metanol e água era capaz de gerar 72 watts-hora de energia,
suficientes para manter um Thinkpad ligado por 8 horas. Entretanto, os
cartuchos de metanol eram relativamente caros e a célula de combustível
pesava tanto quanto o próprio Thinkpad:




Este protótipo demonstrado pela Antig em Janeiro de 2006 já é bem mais
compacto, desenvolvido para ser encaixado na baia do CD-ROM. A idéia é que
ele pudesse ser utilizado como bateria complementar, instalado apenas quando
necessário:




                                                                          955
Em 2005, a Toshiba anunciou o desenvolvimento de uma célula DMFC em
miniatura, que poderia ser usada em palmtops e outros aparelhos portáteis.
Segundo o divulgado, ela poderia manter um mp3player ligado por 20 horas
(autonomia similar ao que obtemos usando uma pilha AAA), usando uma carga
de 2 ml de uma solução de metanol diluído em água:




Esta célula produz apenas 0.1 watt de energia, a uma tensão de 0.65v, por isso
é utilizável apenas em aparelhos muito pequenos. As células para notebook
precisam produzir 200 vezes mais energia, por isso são tão grandes.

Existem dois tipos de células de combustível. As menores (como este modelo
da Toshiba) trabalham de forma "passiva", onde o combustível flui de forma
natural dentro da célula. As para notebooks utilizam um sistema "ativo", onde
uma bomba força o metanol e o ar dentro da célula e um exaustor resfria a
                                                                          956
célula, evitando que ela superaqueça. As células ativas produzem muito mais
energia, mas em compensação são muito maiores.

De qualquer forma, o principal atrativo das células de combustível é a boa
autonomia, combinada com a rapidez da recarga. Ao invés de precisar ligar o
aparelho no carregador, basta encher o reservatório periodicamente, de forma
que, levando metanol suficiente, você poderia manter o notebook ligado
continuamente por semanas em algum local remoto, sem eletricidade. A vida
útil das células atuais é estimada em 3.000 horas de uso, mas ela tente a
aumentar nas próximas gerações.




             Recarga de um mp3player com célula de combustível

Apesar disso, o futuro das células de combustível nos portáteis ainda é incerto.
Atualmente, elas são muito mais caras que as baterias, o que elimina qualquer
vantagem relacionada ao custo. Elas também são grandes, de forma que é
mais simples utilizar uma bateria de maior capacidade quando o problema é
aumentar a autonomia.

De 2005 para cá, diversos fabricantes tem anunciado baterias Li-ion de carga
ultra-rápida, que podem ser recarregadas em até 1 minuto (como num protótipo
demonstrado             pela            Toshiba            em            2005:
http://www.dpreview.com/news/0503/05032903tosh1minbatt.asp). Esta nova
geração de baterias elimina outro atrativo das células de combustível, que é a
rapidez da recarga.

Naturalmente, as células de combustível também não param de evoluir, com
células mais eficientes, baratas e compactas. Estima-se que em 2010 já
existirão células baratas o suficiente para começar a competir com as baterias
Li-ion. Embora seja impossível prever quem será o vencedor, a briga promete.


                                                                            957
Calculando a capacidade e autonomia

Mais um tema interessante relacionado às baterias é como calcular a
autonomia do seu notebook, baseado na bateria usada. Por exemplo, veja o
caso de um Acer 2423WXCi:




Ele usa uma bateria Li-ion de 6 células, que fornece 4000 mAh a 11.1V. A
tensão nominal das células Li-ion é 3.6V, mas isso varia sutilmente de acordo
com a tecnologia usada. Para chegar aos 11.1V, foram utilizadas células de
3.7V, onde temos as células distribuídas em duas séries de 3 células ligadas
em série:




                                                                         958
Se temos 4000 mAh (miliAmperes-hora) a 11.1V, significa que a bateria
fornece um total de aproximadamente 44.4 watts-hora de energia.

Isso significa que a bateria dura cerca de 2 horas caso o notebook consuma 22
watts (o que é mais ou menos a média deste modelo ao assistir a um Divx, sem
usar o CD-ROM nem a placa wireless), 1 hora e 20 minutos caso consuma 33
watts (o que está próximo do máximo observado ao assistir um DVD com o
brilho da tela no máximo) ou quase 3 horas caso o consumo fique em torno de
15 watts (algo que você atinge ao usar o note apenas para tarefas leves e
deixando o brilho da tela no mínimo).

No Linux, você pode ver as especificações técnicas da bateria usando o
comando:

$ cat /proc/acpi/battery/BAT0/info




                                                                         959
Por aqui você sabe que o notebook usa uma bateria Li-Ion e que a bateria está
começando a apresentar sinais de deterioração, pois na última carga (last full
capacity) atingiu apenas 3803 mAh.

Quando a bateria começa a ficar viciada, a carga máxima atingida vai ficando
cada vez mais abaixo da máxima, acompanhada por uma redução proporcional
da autonomia. Através dessas informações você tem como verificar a saúde da
bateria sem precisar ficar carregando e descarregando para cronometrar o
tempo de autonomia.

Para ver a carga atual da bateria (sem depender do ícone do lado do relógio) e
o consumo atual do note, use o comando:

$ cat /proc/acpi/battery/BAT0/status
ou:
$ cat /proc/acpi/battery/BAT0/state

Este comando deve ser executado com o note desligado da tomada, para que
o sistema possa medir o consumo da bateria. Este screenshot mostra o
comando executado num Asus M5, que utiliza uma bateria de 3 células. O
campo "present rate" indica o consumo atual (no caso 14.27 watts-hora) e o
campo "remaining capacity" mostra a energia restante (19.4 watts-hora,
suficientes para pouco mais de 1 hora e 15 minutos de autonomia).




                                                                           960
Note que a tensão informada no campo "present voltage" (12094 mV) é bem
maior que a tensão nominal da bateria, que é de apenas 11.1V (ou 11100 mV).
Isto é perfeitamente normal, pois a tensão fornecida pela bateria varia de
acordo com a carga. Uma bateria de 11.1V oscila entre mais de 12V quando
completamente carregada e 10.8V ou menos quando descarregada.
Reguladores de tensão incluídos no notebook ajustam a tensão, fornecendo as
tensões corretas aos componentes internos.

Outra observação é que em alguns modelos, como na maioria dos HP, o
consumo é informado em micro-amperes e não em micro-watts, tornando o
cálculo um pouco mais complicado, já que você precisa multiplicar pela tensão
da bateria.

Se o comando "cat /proc/acpi/battery/BAT0/status" informa que um HP NX6110
está consumindo 2000 micro-amperes e ele utiliza uma bateria de 11.1V,
significa que ele está consumindo 22220 mili-watts (2000 x 11.1), ou seja, 22.2
watts. Se ele utiliza uma bateria de 4400 mAh, significa que, mantendo esta
média de consumo, a bateria duraria exatamente duas horas.




                                                                           961
Capítulo 12: Manutenção de notebooks


Os notebooks estão se tornando um item cada vez mais popular, muitas vezes
substituindo o desktop. Apesar disso, um dos principais problemas com relação aos
notebooks continua sendo a manutenção. Antigamente, existia o mito de que, apesar de
mais caros, os notebooks eram construídos com componentes de melhor qualidade e
que, por isso, raramente davam problemas. Isso pode ter sido verdade no passado, mas,
hoje em dia, com modelos cada vez mais baratos e fabricantes trabalhando com margens
cada vez mais estreitas, os notebooks apresentam tantos problemas de hardware quanto
os desktops, ou talvez até mais.

Caímos então no alto custo da manutenção. Uma simples limpeza pode custar mais de
350 reais em uma autorizada. Uma troca de tela custa quase metade do valor de um
equipamento novo e assim por diante. Muita gente acaba vendendo notebooks com telas
apagadas ou problemas de travamento a preço de banana, quando o problema é, na
verdade, simples de resolver.

De certa forma, o hardware de um notebook é muito similar ao de um desktop. O
notebook usa barramento PCI Express (ou AGP), usa memória DDR/DDR2/DDR3 e
possui até slots PCI (na forma do encaixe mini-PCI, usado normalmente para a placa
wireless e do slot PC-Card). A grande diferença é que no notebook quase tudo é
miniaturizado, o que leva ao uso de componentes mais compactos e que consomem
menos energia.

Ao contrário dos desktops, as telas LCD dos notebooks não utilizam o conversor
analógico-digital. Elas são digitais por natureza, o que economiza componentes e reduz
o consumo. Os módulos de memória também são miniaturizados. Antigamente, os
módulos de memória para notebook eram muito caros, com alguns fabricantes cobrando
preços extorsivos pelos upgrades, mas atualmente os preços estão muito mais próximos
dos módulos tradicionais.




                                  Módulo SODIMM

Na maioria dos notebooks, é fácil substituir o HD ou instalar mais um módulo de
memória. Em alguns modelos, o compartimento do cooler também está bem acessível, o
que facilita a limpeza (aquele problema clássico do notebook começar a travar ou
desligar depois de um ano de uso, é quase sempre causado justamente pelo acúmulo de
sujeira).

                                                                                     962
Vou aproveitar este final de livro para falar um pouco sobre manutenção de notebooks,
abordando desmontagem, substituição de peças, upgrades e resolução de problemas
diversos.

Desmontagem e dicas

Para começar, vamos a um exemplo de desmontagem usando um Toshiba
A70, um modelo que geralmente precisa de bastante manutenção:




Cada notebook possui um procedimento de desmontagem ligeiramente
diferente, mas os passos básicos podem ser resumidos ao seguinte:

       1- Remova a bateria e abra os compartimentos do HD e memória e/ou
       da placa wireless.

       2- Remova o HD, drive de CD/DVD e a placa wireless, sem se esquecer
       de desconectar os cabos da antena, que é integrada à tela. Tome muito
       cuidado com os conectores, cabos, flats, etc. pois eles são fáceis de
       quebrar e muito difíceis de substituir.


                                                                                   963
3- Remova todos os parafusos da parte inferior da carcaça. Quase
      sempre existem alguns escondidos no compartimento da bateria, HD,
      memória ou placa wireless. Em alguns casos, o drive óptico (ou o HD) é
      preso por um parafuso escondido sob o teclado.

      4- Todo notebook possui um protetor removível entre a tela e o teclado,
      algumas vezes bem duro de desencaixar. Depois de removê-lo, você
      pode retirar o teclado, o que vai lhe dar acesso à placa-mãe e a outros
      parafusos.

      5- Remova a tela com cuidado, depois de desconectar todos os cabos e
      remover os parafusos que a prendem à carcaça.

      6- Desconecte o flat do touchpad, os cabos dos speakers e remova a
      parte superior da carcaça, tomando cuidado para não deixar dentes no
      plástico.

      7- Remova o restante dos parafusos e outras placas visíveis e retire a
      placa-mãe. Em alguns casos o cooler e o processador estão bem
      acessíveis e podem ser removidos logo no início da desmontagem, mas
      em outros você só tem acesso a eles depois de remover a placa-mãe.

Uma dica é que procure tirar sempre algumas fotos durante a desmontagem do
note. Como são sempre muitos passos, é muito comum que você se esqueça
da posição de alguns dos parafusos, ou da ordem de instalação de alguns
componentes ou cabos na hora de remontá-lo. As fotos ajudam bastante
nesses casos.

Desmontando um Toshiba A70

Vamos então à desmontagem do A70. Ele usa um processador Pentium 4 de
3.06 GHz, por isso é bem pesado e utiliza dois exaustores:




                                                                         964
O primeiro passo é virar o note e remover os protetores do compartimento da
placa wireless, do HD e a bateria. O protetor do HD inclui um encaixe plástico
além dos dois parafusos, por isso é um pouco duro de remover:




O próximo passo é remover o HD. Ele é preso pelos mesmos dois parafusos
que prendem o protetor. É só puxar com cuidado:

                                                                           965
A placa wireless é instalada no slot mini-PCI e presa por duas presilhas,
similares às do módulo de memória. Tome cuidado ao desconectar os fios da
antena, pois os conectores são bastante frágeis. Aproveite para remover o
módulo de memória, caso instalado. Este notebook vem com 256 MB soldados
à placa-mãe, por isso possui um único soquete vago para upgrade de memória.
Muitos modelos possuem dois.




                                                                        966
Remova em seguida o drive de DVD, que é preso pelo parafuso ao lado da
etiqueta de identificação. Em quase todos os notebooks temos algo similar,
com o drive preso por um único parafuso na parte inferior e, por isso, fácil de
remover:




Com exceção dos drives "slim", usados em alguns notebooks ultracompactos,
os drives para notebooks são padronizados, permitindo que você substitua um
drive com problemas ou instale um gravador de DVDs muito facilmente. Aqui
temos o drive do Toshiba A70, junto com o drive do HP NX6110. Veja que o
conector e a espessura dos dois são idênticos, a única coisa que muda é a
presilha de metal que prende o drive à carcaça, presa a ele por dois parafusos.

Basta trocar as presilhas e um drive pode ser usado no outro note sem
problema algum. A principal observação é que alguns notebooks antigos, com
leitores de CD, não se dão muito bem com gravadores de CD e DVD, pois
estes consomem mais energia.




                                                                           967
Chegamos então à parte mais chata, que é remover todos os demais parafusos
da parte inferior. São 16 parafusos no total, fora os 4 que já removemos.
Lembre-se de que é comum as lojas cobrirem alguns dos parafusos com as
etiquetas de garantia, justamente para dificultar a desmontagem.

É comum que todo notebook possua um ou dois parafusos "escondidos", ou
em locais de difícil acesso, por isso é importante dar sempre uma última olhada
mais cuidadosa. No caso do A70 temos dois parafusos dentro do
compartimento da bateria e este aqui, dentro do compartimento do HD, que fica
especialmente camuflado:




                                                                           968
Depois de terminar, vire o notebook. Agora vem o maior "segredo" da
desmontagem de notes em geral: para remover o teclado e continuar com o
desmantelamento, você deve remover o protetor que fica entre a tela e o
teclado. Em alguns notebooks, ele fica preso por parafusos na parte inferior (no
HP NX6110, por exemplo, existem dois parafusos embaixo da bateria). Ele é
preso por um conjunto de encaixes, por isso é bem duro de remover. É preciso
usar um pouco de força, mas, ao mesmo tempo, ter muito cuidado para não
quebrar ou danificar o acabamento.

Neste modelo, o jeito mais fácil de removê-lo é usar uma chave de fenda para
desencaixar a parte sobre a base do monitor, primeiro um lado, depois o outro,
e depois puxar os dois simultaneamente:




                                                                            969
Remova agora os dois parafusos que prendem o teclado. Existe também uma
trava no meio, que precisa ser solta usando a chave de fenda:




O teclado é conectado à placa-mãe através de um cabo flat. Afrouxe os dois
lados da trava para desconectá-lo. Nunca puxe o teclado de uma vez ao
desmontar qualquer notebook, pois você pode arrebentar o flat (o que vai lhe

                                                                         970
obrigar a comprar outro teclado ou passar algumas horas tentando reparar o
flat partido) ou, pior, danificar o conector na placa-mãe:




O teclado é outro componente que é personalizado pelos fabricantes. Além do layout
das teclas, varia o tamanho e espaçamento entre elas, o que altera o tamanho físico do
teclado de acordo com as dimensões do note. É normal que os fabricantes utilizem o
mesmo modelo de teclado em diversos modelos de notes e até que o mesmo modelo de
teclado seja utilizado por mais de um fabricante, mas não isso não é regra.

Continuando, é hora de remover a tela. Puxe o cabo da antena wireless com cuidado (ele
passa para o outro lado, através de uma abertura na carcaça), desconecte o cabo do LCD
(ele possui um terra que é preso à carcaça por um parafuso) e depois remova os
parafusos que prendem a tela. São quatro no total, dois na parte traseira, ao lado do
conector da fonte e da entrada do modem, e mais dois na parte metálica da base:




                                                                                    971
Aqui temos o Toshiba sem a tela. Já vi gente usando o note assim, ligado a um
monitor externo, depois de quebrar a tela e desistir de trocá-la por causa do
preço ;).




Em casos em que o LCD realmente quebra ou trinca, não existe outra saída
senão realmente trocar a tela, o que muitas vezes sai mais da metade do valor

                                                                          972
do note. Entretanto, casos em que a tela está intacta e apenas a iluminação
não funciona são quase sempre sanáveis. Veremos mais detalhes a seguir.

Continuando, a cobertura é presa por seis parafusos (dois na parte prateada e
mais quatro na parte preta da carcaça). Além de removê-los, você deve
desconectar o flat do touchpad e os dois conectores dos speakers:




Em seguida vem a parte mais delicada, que é remover a cobertura, tendo o
cuidado de não quebrar as travas plásticas, nem danificar o acabamento. Uma
das formas mais práticas é usar uma chave de fenda bem fina para começar a
soltar pela parte próxima ao encaixe da tela e depois usar um cartão
magnético, ou uma paleta de violão para soltar o restante. Não use a chave de
fenda, senão você vai deixar a carcaça cheia de dentes e arranhados. Se a
cobertura estiver presa em algum ponto, é provável que você tenha esquecido
de remover algum dos parafusos nas etapas anteriores:




                                                                         973
Chegamos agora à parte final, que é remover a placa-mãe. Comece tirando os
quatro parafusos hexagonais dos conectores do vídeo e da porta paralela:




Remova agora o protetor do soquete PCMCIA (dummy card) e os dois
parafusos pretos que prendem a placa-mãe à carcaça:



                                                                       974
A placa é presa também pelo slot PCMCIA, pelo potenciômetro que ajusta o
áudio e as saídas de som. É preciso desencaixar com cuidado, usando a chave
de fenda:




Levante a placa e puxe-a com cuidado. Neste notebook o cooler do
processador é preso à própria placa, na face inferior:

                                                                        975
Depois de remover a placa, retire os quatro parafusos prateados que prendem
os exaustores do cooler:




Vire a placa com cuidado, desconecte os dois cabos de força e remova os
exaustores. O A70 usa um cooler duplo, com um dissipador sobre o



                                                                        976
processador e um dissipador auxiliar, ligado ao primeiro através de um hot-
pipe.

Muita gente acha que o segundo exaustor é para o chipset de vídeo ATI, mas
na verdade este modelo utiliza um chipset ATI 9100 IGP, de baixo consumo (e
baixo desempenho :), que não precisa de refrigeração adicional. O cooler
gigantesco é mesmo apenas para o processador:




Neste notebook o cooler é preso diretamente à placa-mãe e a única forma de
ter acesso a ele é fazendo uma desmontagem completa do notebook. O
engenheiro que inventou este design devia estar com dor de barriga, ou com
raiva do mundo, pois o cooler está na pior posição possível do ponto de vista
da manutenção. Com o tempo, o cooler acumula poeira, o que prejudica a
eficiência do sistema de ventilação, fazendo com que o processador
superaqueça. Neste modelo, ao atingir uma temperatura limite, o notebook
simplesmente desliga sozinho, levando embora qualquer trabalho não-salvo.




                                                                         977
Em qualquer notebook, é recomendável limpar o cooler preventivamente a
cada 6 meses ou um ano, de acordo com o volume de uso. Quanto maior é a
dissipação térmica do processador, maior precisa ser a rotação do cooler,
acentuando o problema. Os notebooks baseados em processadores Pentium 4
ou Athlon são os que precisam de limpezas mais freqüentes. O acúmulo de
sujeira é de longe o motivo mais comum de problemas relacionados a
travamentos e desligamentos espontâneos e as autorizadas chegam a cobrar
R$ 350 por uma limpeza.

Este A70 foi limpo há pouco mais de 4 meses e, mesmo assim, veja que a
poeira já encobriu quase que completamente a abertura do cooler:




                                                                      978
Na hora de limpar, você pode usar um jato de ar comprimido (o ideal) ou, na
falta deste, usar um pincel. Aproveite também para trocar a pasta térmica do
processador a cada limpeza. Aqui temos a placa-mãe depois de terminada a
desmontagem:




                                                                         979
Na maioria dos notebooks, é possível fazer upgrade do processador,
substituindo-o por outro processador da mesma família, com clock ligeiramente
maior.

Entretanto, isso nem sempre é recomendável, pois um processador mais
rápido também consumirá mais energia, sobrecarregando os circuitos de
alimentação e gerando superaquecimento. Mas, existem casos em que o
upgrade pode ser feito sem maiores problemas, como ao substituir um Celeron-
M por um Pentium-M do mesmo clock, ou ao substituir o processador por outro
baseado em uma arquitetura mais recente, que apesar do aumento do clock,
tenha uma dissipação térmica similar. Nesse caso, verifique a compatibilidade
da placa-mãe.

Uma dica na hora de remontar o notebook é que neste modelo as entradas
para os parafusos possuem uma legenda. As com o "F3" são para os
parafusos menores e as com o "F8" são pra os grandes. Nem todos os
fabricantes utilizam estas legendas, mas, quando presentes, elas facilitam um
pouco:




                                                                          980
Desmontando o HP 6110NX

Vamos agora a um segundo exemplo, desmontando um HP 6110NX. A
construção deste notebook é quase idêntica à do 6105, 6115 e do 6125 (e
outros da série 61xx), mudando apenas o processador, a placa-mãe e alguns
outros componentes internos, mas sem mudanças no processo de
desmontagem:




Você perceberá que apesar de todas as diferenças técnicas e nos
componentes usados, a lógica da desmontagem é mais ou menos a mesma da
do Toshiba A70. Vou aproveitar para incluir mais algumas dicas gerais, que se
aplicam também a outros modelos.

Comece virando o notebook, removendo a bateria, os protetores dos slots
PCMCIA e abrindo o compartimento da memória e placa wireless. O conector
que você vê próximo ao módulo de memória é usado pela bateria adicional,
que é um dos atrativos deste modelo. Ela é usada pelo sistema antes da
bateria principal, aumentando bastante a autonomia. Muitos modelos mais
antigos possuem encaixes similares, porém utilizados pela docking station:




                                                                          981
Continuando com a desmontagem, abra agora o compartimento do HD, remova
o parafuso que prende o HD à carcaça e remova o HD com cuidado, puxando a
fita para a esquerda:




Assim como o CD-ROM, o HD é um componente padronizado, que pode ser
facilmente substituído. Cada modelo de notebook utiliza uma baia um pouco


                                                                      982
diferente, por isso o HD é instalado dentro de um suporte metálico e inclui um
conector destacável. Ao substituir o HD, você só precisa desmontar o conjunto:




Além dos HDs de 2.5" slim, que são os mais comuns, existem HDs de 1.8",
usados em alguns notebooks ultraportáteis e HDs de 2.5" regulares, utilizados
em notebooks antigos, que possuem o dobro da espessura e por isso não
podem ser usados nos modelos atuais.

O conector IDE dos HDs de 2.5" inclui quatro pinos extras, que fornecem
alimentação elétrica ao drive, por isso não existe um conector molex separado,
como no caso dos HDs de 3.5" para desktops. Outra diferença é que os HDs
IDE de 2.5" utilizam apenas tensão de 5V, ao contrário dos HDs de 3.5", que
recebem também 12V (usada pelo motor de rotação). O motivo é que os discos
usados nos HDs de 2.5" são muito mais leves e por isso o motor de rotação
pode trabalhar com uma tensão mais baixa, o que ajuda a reduzir o consumo
elétrico do drive.

Nos HDs SATA temos uma organização similar, onde o cabo de dados e os
pinos de energia formam um único conector:




                                                                          983
Conector para o HD SATA no notebook e os contatos do drive

As portas SATA usadas em notebooks não são diferentes das usadas em
micros desktop. É possível inclusive ligar um HD SATA de 3.5" em um
notebook usando o cabo apropriado. O maior problema é que o conector do
notebook não fornece a tensão de 12V usada pelos drives de 3.5" (e nem é
capaz de fornecer a quantidade de energia utilizada por eles) de forma que,
além do cabo SATA macho/fêmea, você precisaria ligar o HD de 3.5" ao
conector de força de uma fonte ATX externa, ou seja, é possível, mas não seria
uma solução muito elegante.

Continuando com a desmontagem, depois do HD, remova agora a placa
wireless e o módulo de memória (caso esteja instalado), tomando cuidado ao
desconectar os fios da antena. Como de praxe, tome o cuidado de sempre
manusear as placas pelas bordas, nunca encostando nos chips ou contatos, a
menos que esteja usando uma pulseira antiestática:




                                                                          984
Remova agora os dois parafusos dentro do compartimento da bateria, que
prendem o protetor do teclado:




Para remover estes dois parafusos, você vai precisar de uma chave torx. Na
verdade, você vai precisar de um kit com chaves torx de vários tamanhos para
desmontar diversos notebooks, impressoras e outros eletrônicos, por isso, se
ainda não tem um, é hora de atualizar seu kit de ferramentas.

                                                                         985
A vantagem das chaves torx é que elas oferecem um encaixe muito mais
preciso do que as chaves de fenda, evitando que o parafuso seja espanado, ou
que a chave escorregue ao apertar um parafuso em algum local delicado,
danificando a placa. Outra questão é que, por serem menos comuns, o uso
desestimula a desmontagem por leigos, por isso os fabricantes geralmente
gostam delas.




                          A boa e velha chave torx

Remova também os dois parafusos escondidos dentro do compartimento do
módulo de memória. Eles prendem o teclado e o drive de DVD:




                                                                         986
Precisamos agora remover o protetor do teclado. Existem duas formas de fazer
isso neste modelo. A primeira é usar uma chave de fenda bem fina para
desencaixar pelos cantos, tomando bastante cuidado para não deixar dentes
no plástico:




A segunda forma, um pouco mais exótica, é deixar o notebook de lado e usar
uma chave de fenda para pressionar através dos encaixes dos dois parafusos

                                                                         987
dentro do compartimento da bateria, que acabamos de remover. Tome cuidado
para não fazer muita força e acabar derrubando o notebook:




Com o protetor fora do caminho, chegou a hora de remover o teclado. Além
dos dois parafusos dentro do compartimento da memória, ele é preso por mais
um, na frente da tecla F4:




                                                                        988
Ao remover o teclado, tome muito cuidado com o cabo flat. Note que ele fica na
mesma posição do flat do A70. Esta é a posição padrão:




Em seguida, remova o exaustor do cooler, que é preso por dois parafusos
simples. Veja que, por usar um processador de baixo consumo (um Celeron-M,
baseado no core Dothan), o NX6110 usa um cooler mais "normal", muito menor
e mais leve que o usado no Toshiba A70. Como de praxe, o exaustor é dividido
em dois blocos, ligados por um hot pipe, uma barra de cobre, contendo uma
pequena quantidade de um fluído vaporizável, que se encarrega de mover o
calor do bloco sobre o processador (mais quente) para o bloco "frio",
refrigerado pelo exaustor. Este design permite montar o cooler na horizontal, o
que é essencial no caso de um notebook. O chipset é refrigerado passivamente
por outro pequeno dissipador, também de cobre, mas sem ligação com o
exaustor principal:




                                                                           989
Desmontando até este ponto, você tem acesso à saída de ar do dissipador e
pode aproveitar para fazer uma manutenção preventiva, removendo a sujeira
acumulada. Veja também que existe um segundo slot de memória escondido
(ao invés dos chips serem soldados diretamente à placa-mãe, como no A70),
permitindo que o módulo original seja substituído em caso de upgrade:




                                                                      990
O próximo passo é remover a tela. Comece desconectando com cuidado o
cabo principal, puxando a fita. Aproveite para puxar os fios da antena. Eles são
presos por uma pequena presilha metálica na placa-mãe, que você pode abrir
com cuidado usando uma chave de fenda ou pinça bem pequena:




Uma curiosidade é que neste modelo a tela representa mais de 50% do peso
total do note (descontando a bateria). Se a HP utilizasse uma tela mais
moderna, o note poderia ser bem mais leve :). A tela é presa por um total de 6
parafusos. Dois sobre as dobradiças metálicas e mais quatro no painel traseiro:




                                                                            991
O drive de DVD é preso por um dos dois parafusos que prendem o teclado.
Você pode tanto removê-lo logo no início da desmontagem quanto deixar para
fazer isso depois de remover a tela. No caso deste modelo, tanto faz:




Temos agora acesso às entranhas do note. Uma vantagem deste modelo é que
você não precisa abrir a carcaça para ter acesso aos componentes internos.


                                                                       992
Neste ponto você pode remover o dissipador e o próprio processador ou
substituir a bateria da placa-mãe:




Continuando, remova todos os demais parafusos da carcaça. Temos mais um
na parte superior, próximo ao teclado e mais 13 na parte inferior. Desencaixe
também os conectores da bateria do CMOS e do touchpad, ambos situados
bem ao lado do conector usado pelo flat do teclado.

Depois de remover todos os parafusos, desencaixe a parte superior da
carcaça, procurando os encaixes com cuidado. Ao contrário do A70, os
encaixes são bem duros, por isso o cartão magnético não será de muita ajuda.
O jeito é usar a chave de fenda no vinco entre as duas partes para ir soltando
os encaixes um a um. Existem dois encaixes, um na área do drive de DVD e
outro ao lado do conector do modem, que são especialmente duros. Cuidado
para não quebrá-los.




                                                                          993
Temos aqui uma foto com o note aberto. Veja que a placa-mãe se ajusta
precisamente ao espaço livre entre o compartimento da bateria, drive de DVD,
HD e slot PC-Card. Este nível de personalização torna quase impossível o
surgimento de placas e gabinetes padrão, como temos nos desktops:




Nesta última foto, você pode notar que a bateria do CMOS foi removida. Na
maioria dos modelos, incluindo este HP, a bateria é ligada à placa-mãe através

                                                                          994
de um conector de dois pinos. Assim como nos desktops, a bateria do CMOS
precisa ser trocada depois de dois ou três anos. Na maioria dos casos, uma
bateria descarregada simplesmente faz com que o note passe a perder as
configurações do Setup, mas alguns modelos da série Thinkpad passam a
exibir um código de erro e não inicializam enquanto a bateria não é substituída.

Mesmo que não consiga encontrar outra bateria de reposição, você pode
remover os dois pólos do conector e soldá-los a outra bateria de lítio de 3V.
Existem ainda casos onde a bateria é soldada à placa-mãe (como na foto
abaixo à direita), neste caso você precisa substituí-la com cuidado usando o
ferro de solda:




Assim como em diversos outros modelos, os conectores de áudio fazem parte
de uma daughter-board, que é ligada à placa-mãe através de dois cabos. O
segundo é usado apenas em alguns modelos, que incluem saídas adicionais.
Neste modelo ele vem desconectado:

                                                                            995
Continuando, desconecte os dois cabos da placa de áudio e o cabo do
speaker:




Remova os 4 parafusos que prendem o speaker à carcaça e remova-o. A
posição dos speakers varia muito de um modelo para outro, de acordo com o
design adotado pelo fabricante. Eles podem ser instalados na base da tela


                                                                      996
(como no Toshiba A10), dos dois lados do touchpad ou mesmo na parte inferior
(como no Asus M5200).




A placa-mãe é presa por um último parafuso, escondido ao lado do conector do
modem. É importante enfatizá-lo, pois ele fica bem no canto, em uma parte da
placa que pode facilmente se quebrar caso você tente removê-la sem primeiro
tirar o parafuso, o que inutilizaria o equipamento. Aproveite para remover
também o exaustor do cooler:




                                                                         997
É necessário remover também os dois parafusos hexagonais do conector VGA,
que também prendem a placa:




Outra pegadinha é que os dois fios da placa MDC são presos ao conector do
modem. Você deve desconectar o cabo no lado conectado à placa MDC, ou
simplesmente remover a placa MDC de uma vez:


                                                                      998
O MDC (Mobile Daughter Card ou Modem Daughter Card) é um slot de
expansão similar ao slot AMR encontrado nas placas para desktop. Ele é
usado por modems e transmissores bluetooth (nos notebooks atuais, ambos
são combinados em uma única placa MDC), permitindo que os componentes
analógicos (que precisam ser certificados pelos órgãos de telecomunicação)
sejam separados do restante da placa-mãe. Para os fabricantes, é possível
integrar todos os componentes diretamente à placa-mãe, eliminando a
necessidade de usar a placa MDC, mas isso abre brecha para problemas no
processo de certificação atrasarem todo o projeto.

Como disse, nos notebooks atuais a placa MDC combina o modem e o
transmissor bluetooth. Embora difíceis de encontrar, estas placas MDC "dual"
podem ser usadas para atualizar notebooks sem bluetooth, sem necessidade
de usar um transmissor USB externo. Uma observação é que é necessário
haver suporte por parte do BIOS, caso contrário a placa pode se recusar a
funcionar com a nova placa, exibindo uma mensagem de "Invalid Daughter
Card".

Normalmente, a própria placa inclui uma pequena antena para o transmissor
bluetooth, embora em alguns modelos seja usada uma antena separada. As
placas que combinam modem e bluetooth são também chamadas de BMDC
(Bluetooth and Modem Daughter Card) e o slot na placa-mãe neste caso se
chama CDC.

Continuando, temos aqui a placa-mãe em carreira solo, já sem o dissipador do
processador:




                                                                         999
As placas para notebook são feitas sob medida para o uso em conjunto com a
carcaça, um dos fatores que permitem que os notebooks sejam tão compactos.
O problema é que isso impede que a placa-mãe seja substituída por outra,
como em um desktop. Em caso de danos não reparáveis à placa-mãe, a única
solução é substituí-la por outra exatamente igual. É possível comprar placas de
reposição, mas assim como no caso das telas, o preço é muitas vezes
proibitivo. A solução mais comum acaba sendo procurar por uma placa de
segunda mão, retirada de outro notebook do mesmo modelo (ou similar, onde a
placa seja compatível) que foi inutilizado por outros problemas.

Para remover o processador, basta girar o parafuso de segurança. Esta placa-
mãe aceita também processadores Pentium-M com core Dothan, de até 1.6
GHz. Eles oferecem a vantagem de oferecerem suporte ao SpeedStep, que
reduz bastante o consumo do processador em relação ao Celeron,
aumentando a autonomia da bateria. Embora não seja tão comum ver
processadores mobile à venda, caso consiga um por um bom preço, seria um
bom upgrade.




                                                                          1000
Desmontando a tela

Depois dos problemas diversos gerados por acúmulo de sujeira e
(possivelmente) por problemas relacionados ao HD ou ao drive óptico, as telas
de LCD são os componentes que mais dão problemas nos notebooks.

É possível comprar telas de reposição diretamente com os fabricantes, mas o
preço é quase sempre proibitivo. Nos sites de leilão, é possível encontrar
algumas telas usadas, geralmente retiradas de notebooks com defeitos
diversos e vendidas separadamente. As telas usadas são uma opção mais
palatável em termos de custo, mas é difícil encontrar o modelo exato, e você
nunca sabe qual é a real condição do equipamento antes de tê-lo em mãos.

Trocar uma tela é um procedimento relativamente simples. Você precisa fazer
apenas uma desmontagem parcial do notebook, removendo uma e instalando a
outra. Mas, trocar a tela inteira é quase sempre um desperdício, com exceção,
claro, de situações onde o notebook cai e o LCD realmente se quebra.

Por enquanto, a grande maioria dos LCDs utilizam as boas e velhas lâmpadas
de catodo frio, embora os com LEDs estejam lentamente se popularizando. É
importante não confundir estas telas de LCD que usam LEDs para iluminação
com telas OLED, que são uma tecnologia completamente diferente.

Assim como as lâmpadas florescentes domésticas, as lâmpadas de catodo frio
trabalham com uma tensão altíssima (geralmente 1300 volts), necessária para
transformar os gases dentro da lâmpada no plasma que gera a luz.

Nas lâmpadas florescentes é usado um reator para gerar a tensão necessária,
enquanto em um notebook é usado o FL inverter, um tipo de reator


                                                                         1001
ultracompacto, que transforma os 5 volts fornecidos pela placa-mãe nos 1300
volts ou mais usados pelas lâmpadas de catodo frio.

Para economizar energia e também para cortar custos, é normalmente usada
uma única lâmpada, instalada na parte superior da tela. Em alguns notebooks,
são usadas duas lâmpadas, mas eles são bastante raros. A luz gerada pela
lâmpada é espalhada por toda a tela graças a uma tela difusora, que fica atrás
do LCD. Na verdade, nenhum LCD tem uma iluminação completamente
uniforme, mas os atuais conseguem ser "bons o bastante" para que você não
note nenhuma variação visível.

A tela de LCD em si é extremamente durável. Normalmente o LCD precisa ser
trocado apenas quando é trincado ou quebrado. As lâmpadas de catodo frio
possuem uma vida útil estimada em entre 10 mil horas (nos notebooks mais
antigos) e 30 mil horas (nos notebooks atuais) de uso contínuo, o que,
excetuando defeitos de fabricação, seriam suficientes para quase 4 anos de
uso contínuo.

Temos ainda o FL inverter, cuja vida útil é quase sempre menor que a da
lâmpada, e a placa de circuito contendo o controlador da tela. O FL inverter é
justamente o responsável pela maior parte dos defeitos.

O defeito mais comum é a tela simplesmente "apagar" devido a falhas no
sistema de iluminação. Olhando para a tela sob luz forte, você percebe que ela
está funcionando, mas sem a iluminação não é possível ver com clareza.




Os problemas de tela apagada são quase sempre causados pelo FL Inverter. O
FL Inverter raramente "queima", ele apenas perde eficiência com o uso,
passando a fornecer uma tensão um pouco mais baixa que o normal. Com as

                                                                         1002
lâmpadas de catodo frio é "tudo ou nada", se a tensão fornecida for apenas um
pouco abaixo da normal, elas simplesmente não acendem.

Mesmo ao reduzir a luminosidade da tela (o que é feito reduzindo a
luminosidade das luzes), é reduzida apenas a amperagem, e não a tensão.
Revisando: a amperagem determina a quantidade de energia que é fornecida,
enquanto a tensão determina a vazão. Fazendo uma analogia com um rio, a
tensão seria a largura do rio, enquanto a amperagem seria a vazão de água. É
possível tanto ter uma tensão muito alta e uma amperagem muito baixa (como
na saída do FL Inverter) quanto uma amperagem incrivelmente alta e uma
tensão muito baixa, como no caso de um processador Pentium 4.

Continuando, embora muito mais raro, existem casos em que as próprias
lâmpadas queimam. O sintoma é o mesmo do da falha do FL-inverter, ou seja,
a tela simplesmente se apaga. Entretanto, a queima da lâmpada é muito mais
rara que os defeitos no FL inverter, de forma que ele é sempre o primeiro
suspeito. Em geral, apenas cerca de 5% dos defeitos de tela apagada são
causados por queima das lâmpadas. O maior culpado é mesmo o FL Inverter.

Outro defeito comum, que é geralmente também causado pelo FL Inverter, é o
backlight continuar funcionando, mas com um nível progressivamente menor
de brilho. Nesse caso, o inverter continua funcionando com a tensão normal,
mas passa a fornecer uma amperagem cada vez mais baixa. Este problema é
menos grave do que a tela simplesmente deixar de acender, mas também pode
ser corrigido com a troca do inverter. As lâmpadas de catodo frio também
perdem luminosidade durante sua vida útil, mas a redução no brilho é muito
menor, raramente perceptível.

Existe também uma pequena possibilidade do problema ser com a placa
controladora, dentro da tela, ou com o próprio chipset de vídeo ou outro
componente na placa-mãe, o que pode causar sintomas diversos, desde a falta
de uma das três cores primárias (deixando a tela com as cores alteradas) até
distorções diversas na imagem.

O primeiro passo para consertar a maioria dos defeitos é desmontar a tela. Na
maioria dos casos, é possível desmontar a tela diretamente, sem precisar
removê-la da carcaça do note. Mas, é muito mais fácil e recomendável
trabalhar na tela depois de removê-la:




                                                                         1003
Toda tela de notebook é desmontável, porém nem sempre isso é muito
simples, pois temos sempre uma combinação de parafusos, encaixes e partes
coladas. A primeira coisa a fazer é encontrar e remover os parafusos. Eles são
sempre escondidos embaixo das borrachinhas de apoio ou de adesivos.
Comece localizando e removendo cada com a ajuda de uma chave de fenda
pequena, ou usando um estilete; sempre com muito cuidado:




                                                                         1004
Na hora de remontar o monitor, use um pequeno pingo de cola branca em cada
uma das borrachinhas. Isso ajuda a colá-las novamente. Existem também "kits"
com borrachinhas avulsas para substituição, assim como no caso das esponjas
para impressoras, mas eles são muito difíceis de encontrar. Neste monitor da
HP, por exemplo, temos um total de 12 parafusos: 4 na parte inferior, 4 na
parte superior e mais 2 em cada lateral:




                                                                        1005
Este esquema, de um dos manuais da IBM, mostra as posições dos parafusos
na tela de um Thinkpad T40. Veja que a posição dos parafusos é similar à da
tela do HP:




Depois de remover todos os parafusos, use um cartão magnético ou uma
paleta de violão para desencaixar a parte frontal do bezel (a cobertura plástica).
Evite usar a chave de fenda, pois ela pode escorregar e fazer um risco
medonho na tela. Normalmente, além dos encaixes, os fabricantes usam cola
ou algum tipo de adesivo, o que torna alguns pontos bem duros de descolar.




                                                                             1006
O FL Inverter é uma plaquinha localizada na base da tela. Como ele é um
componente que trabalha com alta tensão, ele vem sempre protegido por uma
capa plástica e o alerta de praxe, avisando sobre o risco de choques.
Removendo a proteção você tem acesso à placa de circuito:




                                                                     1007
Em alguns casos, o FL inverter possui um potenciômetro (similar ao encontrado
no laser dos drivers de CD-ROM), que permite ajustar a tensão de entrada do
inversor. Quando presente, ele pode ser usado como uma solução emergencial
enquanto espera a chegada do item de reposição.

Girando o potenciômetro no sentido horário você aumenta a potência e para o
sentido anti-horário diminui. Quase sempre, em casos em que o inversor não
está queimado, você pode estender a vida útil do FL inverter aumentando um
pouco a tensão de entrada. Gire o potenciômetro cerca 10 graus no sentido
horário (ou seja, 1/36 de uma volta completa, bem pouco). Em seguida,
remonte a tela e faça o teste:




                                                                        1008
Se a tela voltar a apagar depois de algumas semanas de uso, você pode
repetir o procedimento mais uma vez. Se ela falhar novamente depois de
algum tempo, é hora de realmente trocar o FL inverter.

O potenciômetro é extremamente sensível, por isso você deve sempre ajustá-lo
em pequenos incrementos. Se você quiser um exemplo "marcante" do que
acontece ao aumentar muito a tensão de entrada do FL Inverter, pegue um
drive de CD condenado, desmonte e procure pelo trimpot, um parafusinho
parecido com o regulador de tensão do FL Inverter, instalado próximo à lente
do laser. Dê uma ou duas voltar completas, em sentido horário, e monte
novamente o drive. Ao ligar o micro e colocar um CD qualquer no drive, você
vai ouvir um "vuuuummmm", seguido por um estalo e um leve cheiro de
queimado. Desmonte novamente o drive e você verá vários componentes
queimados próximos ao laser. O drive foi inutilizado de vez.

É mais ou menos isso que acontece ao aumentar demais a saída do FL
inverter em um notebook. Você pode queimar as lâmpadas, queimar de vez o
próprio FL inverter ou mesmo sobrecarregar os circuitos de alimentação na
placa-mãe, possivelmente inutilizando o equipamento. Como disse, ao ajustar o
FL inverter, todo o cuidado é pouco.

Continuando, em casos em que o problema é com as lâmpadas, ou com o LCD
em si, prossiga a desmontagem, removendo os parafusos que prendem a tela
à carcaça:




                                                                        1009
Uma dica é que em casos de telas quebradas, sai muito mais barato comprar
um LCD de segunda mão (trocando apenas o LCD e aproveitando a carcaça)
do que comprar a tela completa. Em geral, cada fabricante trabalha com alguns
poucos modelos de telas diferentes, mudando apenas a carcaça de um modelo
para o outro. Muitas vezes, o mesmo modelo de LCD é usado em notebooks
de três ou quatro marcas diferentes. Se a tela for do mesmo tamanho e usar o
mesmo conector, é quase certo que ela pode ser usada.

Você pode também importar uma tela de reposição através do
http://www.screentekinc.com ou outro dos links que cito mais adiante. Em
muitos casos é possível identificar a tela de reposição através do modelo do
note, mas o ideal é desmontar a tela e procurar pelo part number.

No caso desta tela da HP, o LCD é preso à carcaça por seis parafusos, quatro
na base e mais dois na parte superior. Depois de remover a tela, você precisa
retirar mais quatro parafusos, que prendem as dobradiças:




                                                                         1010
As antenas da placa wireless fazem parte da carcaça, e não da tela em si, por
isso você não precisa se preocupar com elas ao substituir a tela. Apenas tome
cuidado com os fios, pois eles são bastante frágeis.




Aqui temos a tela desmontada, esperando para ser substituída. Em alguns
casos a tela de reposição virá com outro cabo de vídeo, mas na maioria dos
casos, você precisa aproveitar o mesmo cabo. Basta desencaixá-lo com

                                                                         1011
cuidado, removendo os adesivos. As telas de reposição incluem o conjunto
completo, incluindo as lâmpadas. Da tela antiga, você aproveita apenas a
carcaça, o FL inverter e o cabo de vídeo:




A proteção de alumínio que muitas vezes envolve a tela serve como refletor,
para evitar qualquer perda de luz e, ao mesmo tempo, como uma proteção
para a tela enquanto está fora da carcaça.

Neste modelo ele é colado pelas bordas e por isso dá um bom trabalho
removê-lo. É preciso usar um estilete para ir descolando cuidadosamente:




                                                                       1012
Aqui temos a placa lógica da tela. A parte branca faz parte o difusor,
responsável por espalhar a luz gerada pelas lâmpadas de catodo frio. Note que
do lado direito temos a etiqueta com a identificação do fabricante e o part
number, útil ao procurar uma tela de reposição:




Note que o cabo flat e os fios do conector da placa-mãe são bastante frágeis,
por isso inspiram cuidado redobrado.

                                                                         1013
Localizando defeitos

Diferentemente de um desktop, onde você pode solucionar problemas
simplesmente na base da tentativa e erro, trocando peças até descobrir qual é
o culpado, nos notebooks isso nem sempre é possível, já que a maior parte dos
componentes são diretamente integrados à placa-mãe e você dificilmente terá
um LCD ou outra fonte de alimentação compatível (por exemplo) para testar.

Na maior parte dos casos, você precisa identificar o problema e certificar-se de
que o componente X precisa mesmo ser substituído, para só então
encomendar a peça de reposição e poder fazer o conserto. Um erro de
diagnóstico pode sair muito caro, levando-o à compra de uma nova placa-mãe
quando o defeito era em um dos cabos flat, por exemplo.

Vamos então a um guia rápido de como localizar defeitos ao dar manutenção
em notebooks e, assim, descobrir qual componente precisa ser reparado ou
substituído.

Não liga

Se o notebook simplesmente não dá nenhum sinal de vida, a primeira coisa a
se verificar é a fonte de alimentação.

Não confie que a fonte está funcionando só porque o led está aceso, use um
multímetro para medir a tensão de saída da fonte, ajustando-o para medir a
tensão em uma escala de 20V. Compare a medição do multímetro com os
valores informados na etiqueta da fonte. A fonte deve fornecer a tensão de
saída especificada na etiqueta, com uma margem de tolerância de 5% para
mais ou para menos:




                                                                           1014
Além da possibilidade da fonte ter queimado devido a alguma intempérie,
também é comum que fontes de baixa qualidade apresentem capacitores
estufados e outros defeitos após alguns meses de uso. A fonte pode então
passar a oferecer uma tensão cada vez mais baixa, até que o notebook
simplesmente não ligue e não inicie a carga da bateria.

Na maioria dos casos, a solução mais barata é reparar a fonte. As fontes
usadas em notebooks não são diferentes das usadas em monitores de LCD e
outros periféricos, por isso um técnico especializado em manutenção de fontes
pode resolver a maioria dos defeitos sem muita dificuldade. Ao optar por trocar
a fonte, você pode tanto procurar outra fonte idêntica, do mesmo fabricante, ou
comprar um fonte "curinga", onde são fornecidos diversos encaixes, de forma
que a fonte possa ser usada em conjunto com um grande número de modelos:




Essas fontes são muito comuns no Ebay (cheque a categoria "Computers &
Networking > Desktop & Laptop Accessories > Adapters, Chargers for
Laptops"), embora a qualidade nem sempre seja das melhores. Em qualquer
um dos casos, não se esqueça de verificar a tensão de saída (novamente
usando o multímetro) antes de ligar a nova fonte no note.

Se a fonte está fornecendo a tensão correta, a próxima possibilidade é que as
soldas do encaixe para o conector da fonte na placa-mãe do note estejam
quebradas. Este defeito é muito comum nos Toshiba M35X, A65, A70, A75 e
outros modelos, onde o conector é diretamente soldado na placa-mãe e fica
preso apenas pelas soldas, sem um bom suporte na carcaça. Embora isso
exija uma certa dose de habilidade manual, é sempre possível desmontar o
note, remover a placa-mãe e refazer as soldas do conector.

Assim como nos desktops, problemas de mal contato e oxidação são muito
comuns. Experimente sempre desconectar o HD, o drive óptico, a placa
wireless e outros componentes não-essenciais e limpar os contatos dos
módulos de memória. Se o notebook tiver dois slots de memória, experimente
instalar o módulo no segundo slot. Se tiver dois módulos, experimente ligá-lo


                                                                          1015
com apenas um e assim por diante. Outra observação é que alguns notebooks
(sobretudo modelos antigos) não ligam se a bateria não estiver instalada.

Instabilidade

Ainda mais comuns do que os casos em que o notebook simplesmente "morre"
são os casos de instabilidade, onde o notebook trava, apresenta erros diversos
ou simplesmente desliga sozinho de tempos em tempos, ou nos momentos de
maior atividade.

Assim como em um desktop, problemas de estabilidade podem ser causados
pelos mais diversos fatores, incluindo problemas de software, problemas de
superaquecimento causado pelo acúmulo de pó nos dissipadores, defeitos nos
módulos de memória, entre outras possibilidades, por isso é quase sempre
necessário fazer uma checagem geral, verificando diversas possibilidades até
finalmente conseguir descobrir a fonte do problema.

A primeira coisa a fazer é dar boot com uma distribuição Linux live-cd com que
você tenha familiaridade. Use o sistema por algum tempo, execute algumas
tarefas pesadas (como compactar e descompactar grandes quantidades de
arquivos, por exemplo) e monitore as respostas do sistema. Se os problemas
de estabilidade se manifestam apenas no Windows, muito provavelmente o
problema se restringe aos softwares e drivers instalados e pode ser resolvido
com uma simples reinstalação do sistema.

Se os problemas continuam mesmo depois de descartar o fator software, o
próximo passo é fazer um teste completo da memória usando o memtest, já
que a memória passa a ser a próxima suspeita. O mais comum é que o note
possua dois slots de memória, um externo, acessível através das tampas
inferiores, e outro interno, acessível depois de remover o teclado (como no
HP6110). Nesses casos, você só precisa identificar qual dos módulos
apresentou o defeito e substituí-lo. Se o defeito for nos últimos endereços, é
possível também usar as dicas que vimos no capítulo sobre memória para
limitar a quantidade de memória usada pelo sistema e, assim, evitar o uso da
parte onde estão as células defeituosas.

Como a grande maioria dos notebooks utilizam memória compartilhada para o
vídeo, defeitos na memória podem causar também o aparecimento de falhas
na imagem, incluindo o aparecimento de linhas horizontais ou verticais.

Se o defeito se restringir à área de memória utilizada pelo chipset de vídeo
(normalmente os primeiros endereços do módulo), o sistema pode funcionar de
forma perfeitamente estável (com os problemas se restringindo ao vídeo), por
isso é importante sempre checar a memória antes de colocar a culpa no LCD
ou na controladora de vídeo.

Em casos em que os chips referentes ao módulo interno vêm soldados à placa-
mãe do notebook, a situação fica mais complicada, já que você não tem como
substituir os chips de memória diretamente:




                                                                         1016
A solução "correta" nesse caso seria substituir a placa-mãe. Algumas
autorizadas possuem câmaras de vapor e são capazes de substituir os
módulos, mas não é o tipo de coisa que você pode fazer usando um ferro de
solda. Se o reparo não for possível e você chegar ao ponto de decidir descartar
a placa, uma última solução desesperada que você pode tentar é remover os
chips de memória (com muito cuidado, para evitar danificar outros
componentes) e passar a usar um módulo instalado no slot de expansão. Se
não houver nenhuma trava relacionada ao software, o BIOS vai detectar a
remoção da memória integrada e passará a usar o módulo instalado no slot.

Se o notebook funciona de forma aparentemente normal por algum tempo, mas
trava, reinicia ou desliga ao executar tarefas pesadas, muito provavelmente
temos um problema de superaquecimento. A solução neste caso é remover o
cooler do processador, fazer uma boa limpeza e substituir a pasta térmica do
processador. Em alguns notes o cooler fica bem acessível através das tampas
inferiores, mas em outros é preciso desmontar o note para chegar até ele.

Uma opção rápida para desobstruir o exaustor sem precisar desmontar o
notebook é usar um jato de ar comprimido na saída de ar. O problema neste
caso é que você apenas espalha a sujeira dentro do note, ao invés de removê-
la. Isso faz com que o fluxo de ar gerado pelo cooler acabe movendo o pó
novamente para a saída do cooler, fazendo com que o problema de
superaquecimento reapareça mais rápido do que demoraria se você tivesse
feito uma limpeza completa.

Além do acúmulo de sujeira nos dissipadores, é comum a entrada de pó dentro
do próprio motor de rotação do cooler, o que causa o aparecimento de um
ruído irritante e faz com que o exaustor gire cada vez mais devagar (ou até
pare completamente). A solução nesse caso é desmontar o exaustor e fazer
uma boa limpeza interna.

Na maioria dos coolers para notebook, o motor e a hélice são presos ao corpo
principal apenas pelo conjunto de ímãs, de forma que basta puxar. Em alguns
casos as duas partes são presas por uma presilha, escondida sob uma
etiqueta.

Limpe bem as partes internas do motor, usando um cotonete embebido em
álcool isopropílico e coloque um pouco (pouco!) de pó de grafite antes de
fechar. Ele funciona como um lubrificante seco, que faz seu papel sem o risco

                                                                          1017
de ressecar ou se misturar à sujeira com o tempo. O pó de grafite é usado para
desemperrar fechaduras e pode ser encontrado facilmente em lojas de
ferragens ou lojas de 1.99.

HD e DVD

Assim como nos desktops, os HDs de notebook também apresentam defeitos
mecânicos e muitas vezes precisam ser substituídos. Por sorte, os HDs são um
componente padronizado, de forma que você pode substituir o drive em caso
de defeito ou ao fazer upgrade sem muitas dificuldades. A principal cuidado ao
comprar é verificar se o HD usa interface IDE ou SATA.

Em casos de perda de dados, os procedimentos de recuperação são os
mesmos de um desktop. Você pode remover o HD do notebook e plugá-lo em
outro micro usando uma gaveta USB ou um adaptador para instalá-lo
diretamente nas portas IDE ou SATA do desktop. É possível encontrar tanto
adaptadores para drives de 2.5" IDE (velhos conhecidos de quem trabalha com
manutenção) quanto adaptadores para os novos drives de 2.5" SATA. Por
serem relativamente raros, estes adaptadores podem custar muitas vezes R$
50 ou mais em lojas do Brasil, mas são muito baratos se comprados no Ebay.

Outra opção é dar boot no próprio notebook, usando uma distribuição Linux
live-CD, e copiar os dados para um compartilhamento de rede, ou um HD
externo. Isso permite acessar os dados e fazer a recuperação muito mais
facilmente, sem precisar abrir o note e sem precisar de um segundo micro.
Carregando um CD de boot e um HD externo (ou pelo menos um pendrive),
você poderia recuperar os dados diretamente no local, sem precisar de
ferramentas extras.

Em casos em que os dados foram apagados e você precisa usar um programa
de recuperação, como o Easy Recovery ou o PC Inspector para recuperá-los,
um opção é fazer uma imagem do HD usando o dd (como vimos no tópico de
recuperação de dados do capítulo sobre HDs) a partir do próprio live-CD
(salvando a imagem em um HD externo), restaurar a imagem em outro HD,
instalado em um desktop (obtendo, assim, um clone do HD original) e rodar o
programa de recuperação no HD clonado. Dessa forma, você não corre o risco
de piorar as coisas manipulando os dados salvos no HD original.

Assim como no caso dos HDs, os drives ópticos são padronizados e podem ser
substituídos, inclusive usando um drive removido de outro notebook. Em muitos
casos, os problemas de leitura podem ser causados pelo acúmulo de sujeira na
lente ou no mecanismo de leitura do drive. Nesse caso, uma boa limpeza e
lubrificação pode resolver.




                                                                         1018
Defeitos na tela

Defeitos na tela são possivelmente os mais comuns. Como vimos, problemas
de "tela apagada" são quase sempre relacionados ao FL inverter e podem ser
reparados com a substituição deste.

Os casos de defeitos relacionados às lâmpadas de catodo frio são mais raros,
mas a possibilidade nunca deve ser descartada, sobretudo em notebooks com
mais tempo de uso. As lâmpadas de catodo frio são um componente do LCD,
mas podem ser substituídas separadamente, caso você encontre peças de
reposição. É preciso extremo cuidado ao substituí-las, pois elas são bastante
frágeis (imagine uma lâmpada fluorescente comprida e muito fina).




                   Lâmpada de catodo frio testada fora do LCD

Em notebooks que utilizam LEDs para a iluminação da tela, os problemas são
muito mais raros, já que eles não utilizam o FL inverter (os LEDs utilizam
tensão de 5V ou 3.3V, fornecida diretamente pelos circuitos reguladores da
placa-mãe) e são utilizados um número muito grande de LEDs, de forma que a
queima de um ou alguns deles não causa uma perda considerável de
luminosidade.

Em alguns casos mais raros, o problema pode ser com os circuitos de
alimentação na placa-mãe (causado por capacitores estufados, por exemplo).
Esses defeitos são relativamente raros nos notebooks atuais, pois os
fabricantes têm adotado o uso de capacitores de estado sólido, que são muito
mais duráveis que os capacitores eletrolíticos, como você pode ver na foto a
seguir:




                                                                        1019
Cada pixel do LCD é formado por um conjunto de três transístores, um para
cada cor. Quando alguns dos transístores passam a queimar, seja qual for o
motivo, a tela passa a apresentar um número crescente de bad-pixels. Eles são
relativamente benignos, já que não impedem o uso da tela, apenas têm um
aspecto visual desagradável.

O aparecimento de bad-pixels causados pelo "envelhecimento" da tela era
comum em notebooks antigos, mas as telas atuais possuem uma qualidade de
fabricação muito superior e por isso eles se tornaram um problema mais raro.
Em um notebook atual, se a tela não vem com bad-pixels de fábrica, é muito
difícil que eles apareçam posteriormente.

Um problema mais grave é a corrupção da tela, causada por defeitos na placa
controladora. Nesse caso, o LCD pode apresentar desde linhas horizontais ou
verticais ou defeitos de atualização em imagens em movimento, até um borrão
completo em vez da imagem:




Você pode diferenciar os defeitos no LCD de defeitos causados pela memória
ou defeitos no controlador de vídeo (que faz parte da placa-mãe) usando um
monitor externo. Na maioria dos notebooks, você precisa pressionar uma

                                                                        1020
combinação de teclas, como Fn+F4, Fn+F5, Fn+F7 ou Fn+F8, para ativar o
monitor externo. Se a imagem aparece corrompida no LCD, mas fica perfeita
no monitor externo, então o problema é ou nos cabos ou no próprio LCD.

Esse tipo de defeito é causado por defeitos na placa controladora incluída na
tela, e não pelo LCD em si. Em muitos casos a controladora é presa à tela por
um cabo flat e pode ser substituída, mas em muitos ela é soldada, de forma
que só é possível trocá-la em conjunto com o LCD. Também não é comum
encontrar apenas a controladora à venda, de forma que você acaba tendo que
substituir todo o LCD.




              LCD desmontado, mostrando a placa controladora

Nem sempre vale a pena substituir o LCD em caso de defeito, pois nos
notebooks mais baratos, a tela custa mais de metade do valor de um note
novo. Em muitos casos vale mais à pena comprar outro note e passar a usar o
antigo como desktop (usando um monitor, teclado e mouse externos), ou
desmontá-lo e vender as peças.

Se, por outro lado, a imagem aparece corrompida tanto no LCD quanto no
monitor externo, então o problema está em outro lugar e não adianta perder
tempo trocando o LCD. Se o problema estiver na memória, você pode
solucioná-lo usando as dicas anteriores. Se, por outro lado, o defeito for no
controlador de vídeo, a situação fica mais complicada, já que ele é integrado à
placa-mãe ou ao próprio chipset, lhe obrigando a trocar toda a placa.

Muitos notebooks utilizam placas de vídeo dedicadas. Além das placas MXM e
AXION, existem ainda formatos proprietários, usados em modelos específicos,
como nesta placa com chipset ATI usada em um Acer Aspire 1350:




                                                                          1021
Placa proprietária usada em um Acer Aspire 1350 (à esquerda) e uma placa
     alternativa para o mesmo modelo, baseada em um chipset diferente

Nesses casos, não apenas o chipset de vídeo, mas também a memória fazem
parte de um módulo separado, que pode ser substituído em caso de
problemas. Os módulos MXM e AXION são relativamente bem padronizados,
de forma que você pode encontrar placas de reposição em lojas online diversas
e nos sites de leilão, mas os módulos proprietários são componentes
incomuns, que geralmente são vendidos apenas pelo próprio fabricante.

Uma observação é que em alguns notebooks determinadas configurações de
resolução e refresh podem fazer a tela ficar fora de sincronismo, assim como
em um monitor para micros de mesa. Se o LCD exibe corretamente a tela do
setup, mas a imagem fica embaralhada depois do carregamento do sistema,
muito provavelmente é este o caso. Lembre-se também de que a regra do mal
contato também vale para notebooks. Antes de descartar qualquer
componente, experimente sempre limpar os contatos, desencaixar e re-
encaixar os conectores e assim por diante.




                                                                        1022
Modem e placa wireless

Assim como nos desktops, os modems discados incluídos nos notebooks
podem se queimar ao receber uma descarga através da linha telefônica. O
único motivo disso ser menos comum nos notebooks é que eles não costumam
ficar o tempo todo ligados na linha telefônica como é o caso de muitos
desktops. Na maioria dos notebooks, o modem acaba nem sendo usado.

De qualquer forma, em caso de queima do modem, quase sempre o dano se
restringe à placa MDC, que contém os componentes analógicos do modem.
Você pode substituir a placa por outra retirada de um note similar.




           Placa MDC com os componentes analógicos do modem

Ao contrário do modem, é muito raro que a placa wireless apresente qualquer
defeito, já que ela não é vulnerável a descargas externas como ele. A
possibilidade da placa wireless se queimar ou apresentar defeito não é maior
do que a do chipset da placa-mãe, por exemplo.

A maioria dos "defeitos" relacionados à placa wireless são relacionados a
problemas de configuração. Por exemplo, na maioria dos notebooks, o botão
que ativa e desativa o transmissor da placa wireless é controlado através de
funções do ACPI, o que faz com que ele só funcione depois de instalar o driver
ou o utilitário correspondente do fabricante.

Na maioria dos notebooks da Acer, por exemplo, você precisa instalar (além do
driver) o "Launch Manager", caso contrário você não consegue ativar o
transmissor da placa Wireless no Windows. No Linux essa função é
desempenhada por um módulo de Kernel que, nas distribuições recentes, vem
pré-instalado no sistema. O processo manual seria carregar o módulo

                                                                         1023
"acer_acpi", usando o comando "modprobe acer_acpi" e em seguida ativar o
transmissor usando o comando "echo "enabled : 1" > /proc/acpi/acer/wireless".
Esse é o tipo de coisa que pode ser feita automaticamente pelo sistema
durante a fase de detecção do hardware e muitas distribuições realmente o
fazem de forma automática.




    Placa wireless ExpressCard (à direita), instalada em um notebook HP

Além da questão dos drivers, temos os problemas normais relacionados à
conexão com a rede wireless. O sinal pode estar sendo atenuado por paredes,
lajes ou interferências presentes no ambiente (como aparelhos de microondas);
ou o ponto de acesso pode ter sido configurado para não divulgar o ESSID, o
que faz com que a rede não apareça no utilitário de conexão, até que você
tente se conectar a ela manualmente, especificando o nome da rede.

Outra questão comum é que pontos de acesso 802.11g ou 802.11n podem ser
configurados para não aceitar a conexão de placas de padrões anteriores,
deixando de fora notebooks com placas 802.11b, por exemplo. Nesse caso não
existe muito o que fazer além de mudar a configuração do ponto de acesso ou
atualizar a placa do notebook.

Além da possibilidade de instalar uma placa PC-Card ou ExpressCard, é
perfeitamente possível atualizar a placa Mini-PCI ou Express Mini do notebook
caso desejado. Ambos são barramentos padronizados, de forma que do ponto
de vista do hardware a alteração é perfeitamente normal. Apesar disso, existem
casos de incompatibilidades entre novas placas e o BIOS. Nesse caso você
recebe uma mensagem "Unsupported Card Detected" (ou similar) ao ligar o
note e precisa ir atrás de uma atualização de BIOS ou de outra placa que seja
compatível com o BIOS original.




                                                                          1024
Comprando peças de reposição no exterior

Trocar o FL Inverter é uma tarefa simples, basta remover qualquer parafuso
que o prenda à carcaça e soltar os dois conectores. O maior problema é como
encontrar o substituto. O mesmo se aplica a telas, fontes de alimentação,
cabos flat, teclados, baterias e outras peças de reposição.

O FL inverter, por exemplo, é uma peça relativamente barata, que custa de
US$ 60 a US$ 120, dependendo do modelo. Aqui no Brasil, os preços variam
muito, de acordo com onde pesquisar. É possível também encontrar alguns
com bons preços nos sites de leilão.

Se você tem um cartão de crédito internacional, a melhor opção é comprar
diretamente no exterior. Pesquisando pelo part number (que quase sempre
vem decalcado no componente ou impresso em um adesivo) ou pelo modelo
do note, você encontra diversas lojas que vendem peças de reposição. Alguns
exemplos são:

http://www.screentekinc.com
(página em português: http://www.screentekinc.com/telas-lcd.shtml)
http://www.sparepartswarehouse.com/
http://www.impactcomputers.com
http://www.laptoprepairco.com
http://www.crucial.com (para módulos de memória difíceis de encontrar)

Outra opção é pesquisar no Ebay, onde você também encontra componentes
usados a preços mais baixos: http://ebay.com. Ao pesquisar no Ebay, faça uma
busca por "inverter" e a marca do notebook e procure por algum compatível
com o modelo entre os anúncios. Não especifique diretamente o modelo, pois
assim você reduz muito o número de resultados. Nem todo mundo especifica
diretamente o modelo exato no título.

Na parte superior da lista, clique no link "Shipping to USA" e mude para "Brazil
- BRA" no menu. Assim você pode ver diretamente os vendedores que
oferecem a opção de envio para o Brasil, sem precisar ficar abrindo cada um
dos anúncios. Em muitos casos, o vendedor pode não ter especificado o envio
para o Brasil, mas aceitar enviar caso contactado diretamente. Outros
especificam diretamente que enviam apenas para os EUA ou outros locais
específicos.




                                                                           1025
Comprar peças no exterior usando o cartão de crédito é relativamente simples.
Também é interessante ter uma conta no PayPal, o sistema de pagamento
usado no Ebay, que é aceito por um grande número de lojas. Ele permite que
você faça o pagamento sem precisar fornecer o número do cartão e possui
alguns sistemas de proteção contra fraudes.

Com relação ao envio, você pode optar pelo envio via correios (USPS), Fedex
ou outro sistema de envio expresso, como o UPS (note que UPS é diferente de
USPS). Ao chegar no Brasil, o pacote passa pela receita, que vai decidir se os
impostos se aplicam de acordo com o valor e o tipo de componente.

Por estranho que possa parecer, os impostos são calculados com base no
valor total da compra, incluindo os produtos e o frete. Além dos 60% de
impostos, você paga também uma taxa de ICMS (a alíquota varia de acordo
com o estado; em São Paulo, por exemplo, é de 21%) e mais uma "taxa
aduaneira", de pouco mais de 20 reais.

As opções de envio expresso internacional da UPS e da Fedex são muito
caras, você acaba pagando 40 dólares ou mais mesmo para itens pequenos.
Como além do custo do envio você vai pagar também impostos sobre ele, você
acaba pagando, na prática, quase o dobro desse valor.

A melhor opção de envio para itens pequenos é o "USPS First Class Mail
International", uma modalidade de envio prioritário oferecida pelos correios dos
EUA. Nesta modalidade, um pacote vindo dos EUA demora de 7 a 10 dias
corridos para chegar. Outra opção é o "USPS Priority Mail International", que é
um pouco mais rápido, chegando, muitas vezes, em 5 dias. Pacotes vindos de
outros países costumam demorar, em média, duas semanas, principalmente os
vindos de países da ásia.

Normalmente os vendedores cobram uma taxa única de "Shipping and
Handling" (envio e manuseio), que inclui o custo do envio e qualquer outra taxa
que ele queira cobrar. É por isso que alguns podem cobrar 6 dólares e outros

                                                                           1026
20 pela mesma modalidade de envio. No mercado americano isso é
considerado normal.

Existe a velha questão da isenção de compras de 50 dólares. Esta regra se
aplica apenas para envios de pessoa física para pessoa física, para fins
pessoais. Se algum amigo dos EUA lhe mandar um mouse de presente,
colocando dentro uma carta lhe dando os parabéns e o valor do mouse,
somado com o custo do envio, não ultrapassar os 50 dólares, muito
provavelmente o pacote será enquadrado na regra e você não pagará
impostos. Mas, compras em geral não se enquadram nela.

A exceção fica por conta dos livros, que são isentos na maior parte dos países
do mundo. Compras em que o envio é feito de forma eletrônica, como no caso
de um software ou um e-book, também são isentas.

No caso dos serviços de entrega expressa (UPS, Fedex, etc.) é comum que a
empresa pague as taxas de importação diretamente, para acelerar a liberação
do pacote na alfândega e o entregador lhe apresente o comprovante e lhe
cobre o valor ao entregar. Em alguns casos, o pagamento é feito através de um
boleto entregue junto com o pacote.

Uma observação é que optando pelo envio via UPS ou Fedex você paga
impostos praticamente sempre, mesmo no caso de presentes, pois o valor do
envio sozinho já dá quase os 50 dólares permitidos. Você pode chegar então a
casos extremos onde paga US$ 45 de envio, mais R$ 80 de impostos por um
item de US$ 6.

No caso dos pacotes enviados pelo correio (USPS ou similar), você recebe um
aviso dos correios avisando da chegada do pacote, do endereço da agência
(dos correios) onde ele está disponível e também dos valores a pagar. Você
paga os impostos na própria agência, ao retirar o pacote. A principal vantagem
é que o envio neste caso é muito mais barato, então você acaba pagando
impostos praticamente apenas sobre o valor da mercadoria propriamente dita.

Pacotes que são considerados isentos são entregues diretamente, como
qualquer outra correspondência. Em muitos casos você verá uma fita escrito
"aberto pela aduana do Brasil", indicando justamente que o pacote foi aberto e
o conteúdo conferido.

O valor da mercadoria é informado na "Custons Declaration", uma etiqueta
padrão colada na parte externa do envelope. No caso de compras feitas em
lojas, vale o valor da nota fiscal. Em casos onde o valor declarado é mais baixo
que o real (o velho truque de declarar um valor menor para pagar menos
imposto, ou para que o pacote se enquadre na regra dos 50 dólares), os
impostos podem ser calculados usando uma tabela interna.

Lojas e empresas de informática pagam os mesmos impostos ao trazer
produtos do exterior. Geralmente economizam no frete, por comprar vários
itens de cada vez, mas é só. Como qualquer empresa saudável precisa vender
produtos com lucro, os preços acabam sendo quase sempre mais altos do que
você pagaria ao comprar diretamente, incluindo todos os impostos. É muito


                                                                           1027
comum que um FL inverter de US$ 50 seja vendido por R$ 300 ou uma bateria
de US$ 60 seja vendida por R$ 400, por exemplo.

Comprar no exterior geralmente não é vantajoso ao comprar produtos comuns,
como um processador ou um módulo de memória, por exemplo, ou no caso de
itens pesados, como gabinetes e monitores, onde o custo do envio é muito alto.

Mas, no caso de itens raros, como peças de reposição para notebooks,
baterias, cabos, adaptadores incomuns, etc. é muito mais prático e barato
pesquisar diretamente e comprar no exterior. Recomendo fortemente que você
pelo menos faça um teste, comprando algum item barato ou um livro.

Apêndice:
Um resumo sobre redes e o protocolo TCP/IP

Como este é um livro sobre Hardware, optei por não incluir muitas informações
sobre a configuração de redes, já que o assunto é abordado no livro Redes e
Servidores Linux. Apesar disso, abordei algumas noções básicas na introdução
e aproveitei para incluir algumas informações mais técnicas neste apêndice,
um "bônus", que serve como um resumo sobre as camadas da rede (o famoso
modelo OSI), a estrutura dos pacotes e também sobre o protocolo TCP/IP.
Vamos lá :).

Podemos dizer que a função de qualquer rede é simplesmente transportar
informações de um ponto a outro. Pode ser entre dois micros ligados através
de um simples cabo cross-over, ou pode ser entre dois servidores situados em
dois continentes diferentes. Do ponto de vista do sistema operacional e dos
aplicativos, não faz muita diferença.

No nível mais baixo, temos os cabos de rede, que são enquadrados no
primeiro nível do modelo OSI (camada física) e se destinam unicamente a
transportar os impulsos elétricos de um micro a outro. Ao utilizar uma rede
wireless ou cabos de fibra óptica, os sinais são transmitidos (respectivamente)
na forma de sinais de rádio ou luz, mas a função básica (transportar dados de
um ponto a outro) continua a mesma, independentemente da mídia utilizada.

Em seguida temos os switches ou hub-switches que utilizamos para interligar
os micros da rede local. Na verdade, o termo "hub-switch" foi inventado pelos
fabricantes para diferenciar os switchs mais baratos, que carecem de funções
mais avançadas dos switchs "de verdade", que possuem mais portas e incluem
interfaces de administração elaboradas.

O termo "switch" está mais relacionado ao modo de funcionamento do aparelho
e não ao seu custo ou suas funções. Um switch é capaz de encaminhar os
frames Ethernet para o destinatário correto, fechando "circuitos" entre as duas
portas envolvidas, enquanto um hub antigo simplesmente repete os sinais
recebidos em todas as portas.




                                                                          1028
Switch e cabos de rede

Assim como as placas de rede, os switchs trabalham no nível 2 do modelo OSI
(link de dados), enviando frames Ethernet e endereçando os outros dispositivos
da rede usando endereços MAC ao invés de endereços IP. Só para efeito de
comparação, os hubs "burros" trabalham no nível 1, assim como os cabos de
rede. Eles são meros dispositivos de transmissão, que não realizam
processamento.

Os frames Ethernet são "envelopes" para os pacotes TCP/IP. O aplicativo (um
navegador, um servidor web, ou qualquer outro aplicativo transmitindo dados
pela rede) envia os dados ao sistema operacional, que divide o fluxo em
pacotes TCP/IP e os envia à placa de rede. As placas de rede (que não
entendem o protocolo TCP/IP) tratam os pacotes como um fluxo de dados
qualquer e adicionam mais uma camada de endereçamento, desta vez
baseada nos endereços MAC dos dispositivos da rede, gerando o frame
Ethernet que é finalmente transmitido. Ao chegar do outro lado, o "envelope" é
removido e o pacote TCP/IP é entregue.

O uso dos frames adiciona alguns bytes adicionais a cada pacote transmitido,
reduzindo sutilmente o desempenho da rede. Veja o diagrama de um frame
Ethernet:




A transmissão de cada frame começa com o envio de 8 bytes contendo um
preâmbulo e uma sequência de inicialização. Ele serve para avisar outros
micros da rede de que uma transmissão está prestes a começar. Estes 8 bytes
iniciais não fazem parte do frame e são descartados pelas placas de rede
depois de recebidos, por isso não aparecem no relatório mostrado por sniffers
de rede, como o wireshark.



                                                                         1029
O pacote TCP/IP está contido dentro do campo de dados, que pode incluir até
1500 bytes por frame. Junto com os dados é transmitido o cabeçalho do frame
(14 bytes no total), que inclui o endereço MAC de destino, endereço MAC de
origem e um campo para o tipo de dados e mais 4 bytes finais, que contém
códigos de CRC, usados (pelas placas de rede) para verificar a integridade do
frame recebido. Caso o frame chegue incompleto ou corrompido, a placa de
rede solicita a retransmissão.

Dentro do pacote TCP/IP temos novos headers, que contém o endereço IP de
origem, endereço IP de destino, porta de origem, porta de destino, códigos de
verificações, número do pacote, campo para inclusão de opções e assim por
diante. No total, temos 20 bytes para os headers do protocolo TCP e mais 20
bytes para os headers do protocolo IP, totalizando 40 bytes de headers por
pacote. Desta forma, temos 1460 bytes de dados em um pacote de 1500 bytes
e 536 bytes de dados em um pacote de 576 bytes, por exemplo:




À primeira vista, pode parecer estranho que sejam incluídos headers
separados para o TCP e o IP, mas a verdade é que os dois são
complementares e por isso não podem ser dissociados. É por isso que usamos
o termo "TCP/IP", como se os dois protocolos fossem uma coisa só.

Os headers do protocolo IP incluem o endereço IP de origem e o endereço IP
de destino, enquanto os headers do TCP incluem a porta de origem e de
destino, por exemplo. Em resumo, podemos dizer que o IP se encarrega da
entrega dos pacotes, enquanto o TCP se encarrega da verificação de erros,
numeração de portas e tudo mais.

Como disse, os pacotes podem ter até 1500 bytes no total, onde temos até
1460 bytes de dados e 40 bytes dos headers. Arquivos e outros tipos de
informações são transmitidas na forma de sequências de vários pacotes. Um
arquivo de 15 KB, por exemplo, seria dividido em um total de 11 pacotes; os 10
primeiros contendo 1460 bytes cada um e o último contendo os últimos 760
bytes. É graças aos códigos de verificação e numeração dos pacotes que
arquivos grandes podem ser transmitidos de forma íntegra mesmo através de
conexões via modem ou links wireless, onde diversos pacotes são corrompidos
ou perdidos. Basta retransmitir os pacotes extraviados ou danificados quantas
vezes for necessário. :)

Embora os pacotes TCP/IP de 1500 bytes sejam os mais comuns, o tamanho
pode variar de acordo com o meio de transmissão usado. No ADSL PPPoE (o
ADSL com autenticação, usado na maioria das instalações atuais), por
exemplo, são utilizados pacotes de 1492 bytes, enquanto que nas conexões
discadas são geralmente utilizados pacotes de apenas 576 bytes. Existem
ainda casos de pacotes maiores, utilizados em situações específicas.

                                                                         1030
Dentro da rede local, temos (incluindo o preâmbulo do frame Ethernet) um total
de 1526 bytes transmitidos para cada pacote TCP/IP de 1500 bytes. Em uma
rede local, que trabalha a 100 ou 1000 megabits, isso não faz muita diferença,
mas na internet isso seria um grande desperdício. Por isso, os roteadores se
encarregam de eliminar estas informações desnecessárias, retransmitindo
apenas os pacotes TCP/IP propriamente ditos. É por isso disso que não é
possível criar regras de firewall baseadas em endereços MAC para pacotes
vindos da Internet: os endereços MAC fazem parte das informações incluídas
no frame Ethernet, que são descartadas pelos roteadores.

Por trabalharem diretamente com endereços IP, os roteadores podem ser
enquadrados na camada 3 do modelo OSI (camada de rede). Basicamente,
são roteadores que cuidam de todo o trafego de dados na internet. Você pode
utilizar um hub ou switch dentro da sua rede local, mas ao acessar a internet
você sempre utiliza um roteador, seja um roteador Cisco de grande porte, seja
um micro com duas placas de rede compartilhando a conexão, ou seja um
roteador dentro da rede do provedor de acesso. Na internet, o mais comum é o
uso de links de fibra óptica, mas os roteadores podem se interligados utilizando
qualquer tipo de mídia.




             Backbones de fibra óptica interligando países da ásia




                                                                           1031
Roteador Cisco com diversos links de fibra óptica

O endereçamento IP é um tema importante, já que é ele que permite que o
brutal número de redes e hosts que formam a internet sejam capazes de se
comunicar entre si.

Existem duas versões do protocolo IP: o IPV4 é a versão atual, que utilizamos
na grande maioria das situações, enquanto o IPV6 é a versão atualizada, que
prevê um número brutalmente maior de endereços e deve começar a se
popularizar a partir de 2010 ou 2012, quando os endereços IPV4 começarem a
se esgotar.

No IPV4, os endereços IP são compostos por 4 blocos de 8 bits (32 bits no
total), que são representados através de números de 0 a 255, como
"200.156.23.43" ou "64.245.32.11".

As faixas de endereços começadas com "10", com "192.168" ou com de
"172.16" até "172.31" são reservadas para uso em redes locais e por isso não
são usados na internet. Os roteadores que compõe a grande rede são
configurados para ignorar estes pacotes, de forma que as inúmeras redes
locais que utilizam endereços na faixa "192.168.0.x" (por exemplo) podem
conviver pacificamente.

No caso dos endereços válidos na internet as regras são mais estritas. A
entidade responsável pelo registro e atribuição dos endereços é a ARIN
(http://www.arin.net/). As operadoras, carriers e provedores de acesso pagam
uma taxa anual, que varia de US$ 1.250 a US$ 18.000 (de acordo com o
volume de endereços requisitados) e embutem o custo nos links revendidos
aos clientes.

Ao conectar via ADSL ou outra modalidade de acesso doméstico, você recebe
um único IP válido. Ao alugar um servidor dedicado você recebe uma faixa com
5 ou mais endereços e, ao alugar um link empresarial você pode conseguir
uma faixa de classe C inteira. Mas, de qualquer forma, os endereços são
                                                                        1032
definidos "de cima para baixo", de acordo com o plano ou serviço contratado,
de forma que você não pode escolher quais endereços utilizar.

Embora aparentem ser uma coisa só, os endereços IP incluem duas
informações. O endereço da rede e o endereço do host dentro dela. Em uma
rede doméstica, por exemplo, você poderia utilizar os endereços "192.168.1.1",
"192.168.1.2" e "192.168.1.3", onde o "192.168.1." é o endereço da rede (e por
isso não muda) e o último número (1, 2 e 3) identifica os três micros que fazem
parte dela.

Os micros da rede local podem acessar a internet através de um roteador, que
pode ser tanto um servidor com duas placas de rede, quando um modem ADSL
ou outro dispositivo que ofereça a opção de compartilhar a conexão. Neste
caso, o roteador passa a ser o gateway da rede e utiliza seu endereço IP válido
para encaminhar as requisições feitas pelos micros da rede interna. Este
recurso é chamado de NAT (Network Address Translation).

Um dos micros da rede local, neste caso, poderia usar esta configuração de
rede:

      Endereço IP: 192.168.1.2
      Máscara: 255.255.255.0
      Gateway: 192.168.1.1 (o servidor compartilhando a conexão)
      DNS: 200.169.126.15 (o DNS do provedor)

O servidor, por sua vez, utilizaria uma configuração similar a esta:

      Placa de rede 1 (rede local):
      Endereço IP: 192.168.1.1
      Máscara: 255.255.255.0

      Placa de rede 2 (internet):
      Endereço IP: 200.213.34.21
      Máscara: 255.255.255.0
      Gateway: 200.213.34.1 (o gateway do provedor)
      DNS: 200.169.126.15 (o DNS do provedor)

A configuração da segunda placa de rede seria obtida automaticamente, via
DHCP, de forma que você só precisaria realmente se preocupar com a
configuração da sua rede local. Normalmente, você primeiro configuraria a rede
local, depois conectaria o servidor à internet e, depois de checar as duas
coisas, ativaria o compartilhamento da conexão via NAT.

É possível instalar mais placas de rede no roteador e dividir a rede em vários
segmentos distintos, interligados através dele. Em uma empresa, poderíamos
ter três segmentos diferentes, um para a rede cabeada e a maior parte dos
micros, outro para a rede wireless e outro para os servidores, que ficariam
isolados em uma sala trancada.

O roteador nesse caso teria 4 placas de rede (um para cada um dos três
segmentos e outra para a internet). A vantagem de dividir a rede desta maneira
é que você poderia criar regras de firewall no roteador, especificando regras

                                                                          1033
diferentes para cada segmento. Os micros conectados à rede wireless (menos
segura), poderiam não ter acesso aos servidores, por exemplo. O firewall, ativo
no roteador, poderia também ser configurado para proteger os micros das
redes internas de ataques provindos da internet:




Continuando, temos a configuração das máscaras de sub-rede, que servem
para indicar em que ponto termina a identificação da rede e começa a
identificação do host. No nosso exemplo, utilizaríamos a máscara
"255.255.255.0", que indica que os três primeiros números (ou octetos) do
endereço servem para identificar a rede e apenas o último indica o endereço do
host dentro dela.

Na internet, os endereços IP são divididos em três faixas, que se diferenciam
pela máscara utilizada. Os endereços de classe A começam com números de 1
a 126 (como, por exemplo, "62.34.32.1") e utilizam máscara 255.0.0.0. Cada
faixa de endereços classe A é composta de mais de 16 milhões de endereços,
mas como existem apenas 126 delas, elas são reservadas para o uso de
grandes empresas e órgãos governamentais.

Em seguida temos os endereços de classe B, que abrangem os endereços
iniciados com de 128 a 191. Eles utilizam máscara 255.255.0.0, o que permite
a existência de um número muito maior de faixas, cada uma composta por 65
mil endereços.

Finalmente temos o "terceiro mundo", que são as faixas de endereços classe
C, que abrangem os endereços que começam com de 192 a 223. Elas são
mais numerosas, pois utilizam máscara 255.255.255.0, mas em compensação
cada faixa de classe C é composta por apenas 254 endereços. Com a
escassez de endereços válidos, as faixas de classe C são praticamente as
únicas que ainda podem ser obtidas hoje em dia.

                                                                          1034
Existe ainda a possibilidade de utilizar máscaras complexas para dividir uma
faixa de endereços de classe A, B ou C em faixas menores e independentes.
Esta possibilidade é usada ao extremo pelas empresas de hospedagem, que
dividem faixas de endereços de classe A ou B em diversas faixas menores,
com apenas 4 ou 8 endereços, que são atribuídas aos servidores dedicados
hospedados em seus data-centers.

Ao usar a máscara 255.255.255.248, por exemplo, apenas 3 bits do endereço
são reservados ao endereçamento dos hosts (convertendo 255.255.255.248
para binário, você teria 11111111.11111111.11111111.11111000), permitindo
que a empresa de hospedagem divida uma faixa de endereços classe A (16
milhões de hosts) em 2.080.768 pequenas redes, uma para cada servidor
dedicado que for locado.

Três bits permitem 8 combinações, mas o primeiro e o último endereço são
reservados ao endereço da rede e ao endereço de broadcast, fazendo com que
apenas 6 endereços possam realmente ser utilizados. Destes, mais um é
sacrificado, pois é atribuído ao gateway (sem o gateway o servidor não acessa
a internet), de forma que no final apenas 5 endereços ficam realmente
disponíveis.

Ao locar um servidor dedicado, você precisa de uma faixa de endereços inteira
para poder configurar o DNS reverso, um pré-requisito para que seus e-mails
não sejam rotulados como spam por outros servidores.

Ao registrar um domínio, você precisa fornecer os endereços de dois
servidores DNS, que responderão por ele. Ao invés de ter dois servidores, você
pode utilizar outro dos seus 5 endereços disponíveis para criar um alias
(apelido) para a placa de rede do seu servidor dedicado e assim poder
configurá-lo para responder simultaneamente como servidor DNS primário e
secundário, eliminando a necessidade de utilizar dois servidores. Novamente,
esta configuração é possível apenas caso o servidor possua uma faixa de
endereços própria.

No final, a configuração de rede de um servidor dedicado acaba sendo algo
similar a isto:

      Endereço IP: 72.232.35.106
      Máscara: 255.255.255.248
      Gateway: 72.232.35.105
      Endereço da rede: 72.232.35.104
      Endereço de broadcast: 72.232.35.111
      Alias da placa de rede (para o DNS secundário): 72.232.35.107
      Endereços vagos: 72.232.35.108, 72.232.35.109 e 72.232.35.110

Como se não bastasse, é possível ainda instalar o VMware Server, Xen, ou
outro sistema de virtualização e aproveitar estes três endereços vagos para
criar três máquinas virtuais, cada uma com seu próprio endereço IP e
configurada como se fosse um servidor separado. O princípio é o mesmo que
ao rodar um segundo sistema operacional dentro do VMware Player no seu



                                                                         1035
micro de trabalho, a única grande diferença é que neste caso toda a
configuração é feita remotamente.

Em seguida temos a questão do IPV6, que é uma fonte frequente de dúvidas.
Ele é uma evolução do padrão de endereçamento atual onde, ao invés de
endereços de 32 bits, são usados endereços de 128 bits. O número de
endereços disponíveis no IPV6 é simplesmente absurdo; seria o número
340.282.366.920 seguido por mais 27 casas decimais. Tudo isso para prevenir
a possibilidade de, em um futuro distante, ser necessária uma nova migração.

Por serem muito mais longos, os endereços IPV6 são representados através
de caracteres em hexa. No total temos 32 caracteres, organizados em oito
quartetos e separados separados por dois pontos.

No conjunto hexadecimal, cada caracter representa 4 bits (16 combinações).
Devido a isso, temos, além dos números de 0 a 9, também os caracteres A, B,
C, D, E e F, que representariam (respectivamente), os números 10, 11, 12, 13,
14 e 15. Um exemplo de endereço IPV6, válido na internet, seria
"2001:bce4:5641:3412:341:45ae:fe32:65".

Um atenuante para esta complexidade dos endereços IPV6 é que eles podem
ser abreviados de diversas formas. Graças a isso, os endereços IPV6 podem
acabar sendo incrivelmente compactos, como "::1" ou "fee::1".




Em primeiro lugar, todos os zeros à esquerda dentro dos quartetos podem ser
omitidos. Por exemplo, ao invés de escrever "0341", você pode escrever
apenas "341"; ao invés de "0001" apenas "1" e, ao invés de "0000" apenas "0",
sem que o significado seja alterado. É por isso que muitos quartetos dentro dos
endereços IPV6 podem ter apenas 3, 2 ou mesmo um único dígito. Os demais
são zeros à esquerda que foram omitidos.

É muito comum que os endereços IPV6 incluam seqüências de números 0, já
que atualmente poucos endereços são usados. Graças a isso, o endereço
"2001:bce4:0:0:0:0:0:1" poderia ser abreviado para apenas "2001:bce4::1",
omitimos todo o trecho central "0:0:0:0:0".

Ao usar o endereço, o sistema sabe que entre o "2001:bce4:" e o ":1" existem
apenas zeros e faz a conversão internamente, sem problema algum.



                                                                          1036
O suporte a IPV6 está presente em todas as distribuições Linux atuais, assim
como no Windows XP SP2 e no Vista. Uma vez que você entende como os
endereços IPV6 são estruturados e que uma mesma interface de rede pode ter
ao mesmo tempo um endereço IPV4 e um IPV6 (respondendo em ambos), não
existe nada de exotérico em atribuir endereços IPV6 para os micros da sua
rede e começar a testar o novo sistema.

Assim como no IPV4, os endereços IPV6 são divididos em dois blocos. Os
primeiros 64 bits (os 4 primeiros quartetos) identificam a rede, enquanto os
últimos 64 bits identificam o host. No endereço "2001:bce4:0:0:0:0:0:1", por
exemplo, temos a rede "2001:bce4:0:0" e o host "0:0:0:0:1" dentro dela.

Ao configurar endereços dentro de uma mesma rede, existem duas opções. A
primeira seria simplesmente usar endereços seqüenciais, como "
2001:bce4::1", " 2001:bce4::2", "2001:bce4::3" e assim por diante. Nada de
errado com isso. A segunda seria seguir a sugestão do IEFT e usar os
endereços MAC das placas de rede para atribuir os endereços dos hosts. É
justamente isso que é feito ao utilizar a atribuição automática de endereços no
IPV6.

Digamos que o endereço da rede é "2001:bce4:0:0:" e o endereço MAC do
micro é "00:16:F2:FE:34:E1". Como você pode ver, o endereço MAC contém
apenas 12 dígitos hexa, enquanto no IPV6 a parte do host contém 16 dígitos.
Está em estudo uma expansão dos endereços MAC das placas de rede, que
passariam a ter 16 dígitos, mas, enquanto isso não é colocado em prática,
usamos uma regra simples para converter os endereços de 12 dígitos atuais
em endereços de 16 dígitos, adicionando um "ffff" entre o sexto e sétimo dígito
do endereço.

O endereço "00:16:F2:FE:34:E1", viraria então "0016:f2ff:fffe:34e1". Como viu,
os 12 dígitos originais continuam os mesmos (apenas converti para
minúsculas). São apenas adicionados os 4 dígitos no meio.

Adicionando o endereço da rede, o endereço IPV6 completo deste micro seria
"2001:bce4:0:0:0016:f2ff:fffe:34e1", o que poderia ser abreviado para apenas
"2001:bce4::0016:f2ff:fffe:34e1".

O IPV6 também oferece um recurso de compatibilidade com endereços IPV4,
permitindo que você continue utilizando os mesmos endereços ao migrar para
ele. Neste caso, você usaria o endereço "::FFFF:" seguido pelo endereço IPV4
usado atualmente, como em:

      ::FFFF:192.168.0.1

Por estranho que possa parecer, este é um endereço IPV6 completamente
válido, que você pode usar para todos os fins.

Outra mudança é que no IPV6 você pode atribuir diversos endereços para o
mesmo micro. Isto também era possível no IPV4 utilizando-se alises para a
placa de rede, mas no caso do IPV6, este passou a ser um recurso nativo.
Graças a isso, o mesmo micro pode ser acessado tanto através do endereço
"2001:bce4:5641:3412:341:45ae:fe32:65" (por exemplo), quanto pelo

                                                                          1037
::FFFF:192.168.0.1 (pelos micros da rede local), sem que você precise usar
duas placas de rede.

É possível também adicionar um endereço IPV6 a um micro já configurado com
um endereço IPV4, na maioria dos casos sem nem mesmo precisar derrubar a
rede. Neste caso, ele continua respondendo de forma normal no endereço
IPV4 antigo, mas passa a responder também no endereço IPV6. Um dos
objetivos do novo sistema é justamente manter compatibilidade com o antigo,
já que muitos sistemas provavelmente nunca serão atualizados.

Imagine, por exemplo, que uma migração em larga escala para o IPV6 está
ocorrendo. A maior parte da internet já utiliza o novo sistema, mas seu
provedor de acesso ainda oferece suporte apenas a endereços IPV4.

Prevendo situações assim, o IPV6 oferece suporte ao tunelamento de pacotes
IPV6 através de redes IPV4. Ao perceber que os pacotes IPV6 precisarão
passar por uma rede IPV4, o roteador empacota os pacotes IPV6, colocando-
os dentro de pacotes IPV4, de forma que eles sejam roteados normalmente
através da rede IPV4. Do outro lado da conexão teríamos outro roteador IPV6,
que se encarregaria de remover o cabeçalho IPV4 dos pacotes, obtendo
novamente os pacotes IPV6 originais.

Este sistema permite também que sistemas configurados com endereços IPV4,
continuem acessando a internet normalmente, mesmo depois que a migração
ocorrer. Imagine o caso de micros rodando o Windows 95/98, por exemplo,
sistemas que provavelmente nunca serão atualizados.




                                                                       1038

Mais conteúdo relacionado

PDF
Aquitetura dos Processadores Multicore
PPT
Phenom II Web Seminário
PDF
Tw 9850 201
PDF
As mother boards
PPTX
Atualização Canal Phenom I I X2 7000 Outras C P Us Dragon
PPT
Processadores
PDF
Aula 01-introducao-ao-so
PPTX
Unitec processador
Aquitetura dos Processadores Multicore
Phenom II Web Seminário
Tw 9850 201
As mother boards
Atualização Canal Phenom I I X2 7000 Outras C P Us Dragon
Processadores
Aula 01-introducao-ao-so
Unitec processador

Mais procurados (18)

PDF
Aula 05-entrada e-saida
PDF
Tw 9850 200
DOCX
PPTX
Montagem de computadores aula 1
PDF
Aula 15 processadores
PDF
INTEL vs AMD
PPTX
Processadores tipos e modelos amd intel e cpuz
PPTX
Montagem e configuração de computadores
PPT
Processadores
PPTX
Apresentacao 2 - Convidado especial: Intel - SantaASUS 2009
PDF
Evolução das CPUs
PPTX
Montagem e Configuração de Computadores
PPT
1984
PPTX
Sebenta
PPT
Trabalhos dos alunos: Processadores
PPTX
Processadores
PDF
Descricao de-laboratorios
PDF
Aula 07-oac-processadores
Aula 05-entrada e-saida
Tw 9850 200
Montagem de computadores aula 1
Aula 15 processadores
INTEL vs AMD
Processadores tipos e modelos amd intel e cpuz
Montagem e configuração de computadores
Processadores
Apresentacao 2 - Convidado especial: Intel - SantaASUS 2009
Evolução das CPUs
Montagem e Configuração de Computadores
1984
Sebenta
Trabalhos dos alunos: Processadores
Processadores
Descricao de-laboratorios
Aula 07-oac-processadores
Anúncio

Destaque (11)

DOC
312584 placas-mae
PPTX
Componentes gráficos do computador
PDF
Placa mãe
PDF
Reparação de placa mãe – curso completo
PDF
Resolvendo problemas no seu micro 2007 - laercio vasconcelos -
PPTX
Tipos de Placa-Mãe
PPTX
Placas mãe
PDF
Curso notebook
PDF
Curso.completo.de.manutencao.de.placa.maes www.apostilagratis.com
PDF
Componentes da placa mãe
PDF
Manutenção de Computadores - Aula 1
312584 placas-mae
Componentes gráficos do computador
Placa mãe
Reparação de placa mãe – curso completo
Resolvendo problemas no seu micro 2007 - laercio vasconcelos -
Tipos de Placa-Mãe
Placas mãe
Curso notebook
Curso.completo.de.manutencao.de.placa.maes www.apostilagratis.com
Componentes da placa mãe
Manutenção de Computadores - Aula 1
Anúncio

Semelhante a Hardware fundamental (20)

PDF
Instalação e Manutenção de Computadores
PDF
Hardware
ODP
PDF
Arquitetura de Hardware
PDF
Hardware de sistemas
PPTX
Aula 01 informática aplicada - história e evolução
PDF
Augusto loureiro sistemas microprocessados
PPS
"AMD - Phenom - O Verdadeiro Processamento Com 4 Núcleos"
PPTX
Aula 3 - Dicionário de Termos
DOC
Apostila Curso Montagem E Manutenção De Micros
PPT
Placa-mãe e seus barramentos
PDF
11 montagem
DOC
Trabalho processadores vanessa
PPTX
Aula 005 noções de hardware
PPT
PPT
Processadores e suas tecnologias.
PDF
Montagem manutenção de computadores
PDF
Hardware
PDF
The Penguin's got the POWER - ERI-MS 2010
PDF
Descrição dos componentes
Instalação e Manutenção de Computadores
Hardware
Arquitetura de Hardware
Hardware de sistemas
Aula 01 informática aplicada - história e evolução
Augusto loureiro sistemas microprocessados
"AMD - Phenom - O Verdadeiro Processamento Com 4 Núcleos"
Aula 3 - Dicionário de Termos
Apostila Curso Montagem E Manutenção De Micros
Placa-mãe e seus barramentos
11 montagem
Trabalho processadores vanessa
Aula 005 noções de hardware
Processadores e suas tecnologias.
Montagem manutenção de computadores
Hardware
The Penguin's got the POWER - ERI-MS 2010
Descrição dos componentes

Mais de Pessoal (20)

PDF
Escatologia Comparada
PDF
4 tri 2019 aula 1
ODP
Aula 6 - A Razão da nossa Fé
PDF
Lição 4 - Livros Históricos
PDF
Livros históricos - Aula 3
PDF
Livros Históricos Lição 2 - 1 livro de samuel
PDF
Livros históricos - Aula 1
PDF
L10 4 tri 2018
PDF
L9 4 tri 2018 a maravilhosa-cura-divina
PDF
L8 4 tri 2018 a-profecia-na-experiencia-pentecostal
PDF
Licao 7 o genuino culto petencostal
PDF
Licao 6 o dom de linguas
PDF
Licao 5 contemporaneidade dos dons
PDF
L4 3 tri 2018 - Acontecimento na Vida de Jesus
PDF
L2 3 tri 2018 - O Proposito dos milagres de Jesus
PDF
A Entrada Triunfal
PDF
Matemática financeira com Excel
PDF
Curso de ShellScript - Lm10 shellscript10
PDF
Curso de ShellScript - Lm09 shellscript9
PDF
Curso de ShellScript - Lm07 shellscript7
Escatologia Comparada
4 tri 2019 aula 1
Aula 6 - A Razão da nossa Fé
Lição 4 - Livros Históricos
Livros históricos - Aula 3
Livros Históricos Lição 2 - 1 livro de samuel
Livros históricos - Aula 1
L10 4 tri 2018
L9 4 tri 2018 a maravilhosa-cura-divina
L8 4 tri 2018 a-profecia-na-experiencia-pentecostal
Licao 7 o genuino culto petencostal
Licao 6 o dom de linguas
Licao 5 contemporaneidade dos dons
L4 3 tri 2018 - Acontecimento na Vida de Jesus
L2 3 tri 2018 - O Proposito dos milagres de Jesus
A Entrada Triunfal
Matemática financeira com Excel
Curso de ShellScript - Lm10 shellscript10
Curso de ShellScript - Lm09 shellscript9
Curso de ShellScript - Lm07 shellscript7

Hardware fundamental

  • 1. 1
  • 2. Autor: Carlos E. Morimoto Páginas: 1038 Formato: 23 x 16 cm Editora: GDH Press e Sul Editores ISBN: 978-85-99593-10-2 Lançado em: Outubro de 2007 Introdução: Como um PC Capítulo 7: Chipsets e placas funciona o Chipsets para placas o Os Componetes básicos Soquete 7  Processador o Chipsets para o Pentium  Memória II e Pentium III  HD  Chipsets da Intel  Placa de Vídeo  Chipsets da VIA  Placa-mãe  Chipsets da SiS  Hardware X o Chipsets para o Pentium Software 4 (Soquete 423 e soquete  Arquiteturas 478) o Um pouco sobre redes  Chipsets da Intel  Configuração da  Chipsets da SiS rede  Chipsets da VIA  Rede Wireless  Chipsets da Uli Capítulo 1: 54 anos de  Chipsets da ATI história: do ENIAC ao Athlon o Chipsets para o Athlon, o Os primórdios Duron e Sempron o O ENIAC (soquete A) o O transístor  Chipsets da AMD o Como são fabricados os  Chipsets da VIA processadores  Chipsets da SiS o Os supercomputadores  Chipsets da nVidia o A evolução dos o Chipsets para placas computadores pessoais soquete 775 o A década de 80  Chipsets da Intel o Do 486 ao Athlon  Chipsets da nVidia o Sistemas embarcados  Chipsets da SiS Capítulo 2: Processadores  Chipsets da VIA o Pentium4 o Chipsets para Athlon 64  Willamette  Chipsets da nVidia  Hyper  Chipsets da VIA Pipelined  Chipsets da SiS Technology  Chipsets da ULi  Execution Capítulo 8: Montagem, trace cache manutenção e dicas  Bus de 400 o As formas mais comuns MHz de destruir um PC  Rapid  Fonte de Execution alimentação Engine  Cooler  SSE2  Smoke Test  Northwood  Estática 2
  • 3.  Prescott  Componentes  Hyper- defeituosos Threading  Dispositivos USB  Soquete  Softwares 775  Conectores de  Smithfield, Cedar força Mill e Presler o Dicas de compra  O sistema de  Processador numeração  Memória  Pentium 4  HDs  Pentium D o PCs de baixo consumo  Extreme o Ferramentas Edition o Montagem de micros  Celeron D  Preparando o o Athlon e Duron terreno  Athlon Thunderbird  Conectores do  Athlon Palomino painel  Athlon  Headers USB Thoroughbred  Processador  Athlon Barton  Pasta térmica o Athlon 64  Cooler  Desenvolvendo  Memória um sucessor  Instalando a placa-  Itanium mãe  X86-84  HDs e DVD (AMD64)  Finalizando a  A arquitetura K8 montagem  Os modelos o Solucionando problemas  Athlon 64 e Athlon o O máximo de funções no 64 FX mínimo espaço  Athlon 64 X2 o Filtros de linha,  Sempron estabilizadores e  Reconhecendo o nobreaks processador  Filtros de linha  Quad FX  Estabilizadores o A plataforma Core  Nobreaks (UPS)  Conroe  Inversores  Kentsfield  VA x watts  Allendale  Proteção  Conroe-L para a linha o Futuros chips telefônica  Penryn  Autonomia  Nehalem Capítulo 9: Configuração do  Phenom e Setup, drivers e utilitários Barcelona o Discos e RAID  Fusion o Boot Capítulo 3: Placas-mãe e o Overclock barramentos o Timings da Memória o Os Componentes o Componentes integrados  BIOS o Outras opções 3
  • 4. o Formatos o Drivers e utilitários o Barramentos  Drivers da placa-  ISA mãe  MCA, EISA e VLB  Drivers do chipset  PCI  Drivers 3D  PC Card  Drivers de som, (PCMCIA) modem e outros  AMR e CNR  Utilitários e  AGP benchmark  PCI Express o Suporte a hardware no  Como o PCI Linux Express funciona  Drivers  Dentro do proprietários chipset  Opções de boot  As linhas de Capítulo 10: Vídeo e placas 3D dados e os o FPS, V-Sync e tearing periféricos o Recursos  Express  Clock na GPU Mini e  Fill rate ExpressCar  Unidades de vertex d shader  PCI  Unidades de pixel Express 2.0 shader  USB  Unidades de  Firewire (IEEE shader unificadas 1394)  Texture Mapping  WUSB Units (TMUs) o Endereços de IRQ e  Raster Operation DMA Units (ROPs)  APIC  Tipo de memória  DMA e I/O  Freqüência de Capítulo 4: Memórias memória e largura o Formatos do barramento o Tecnologias utilizadas  Quantidade de  Memórias memória Regulares  DirectX e OpenGL  Memórias FPM  Antialiasing e  Memórias EDO Anisotropic  Memórias SDRAM Filtering  Memórias DDR  SLI  Memórias DDR2  CrossFire  Memórias DDR3  TurboCache e o Identificando módulos de HyperMemory memória defeituosos o Chipsets 3D o Limites no  NV40 endereçamento da  G70 memória  G80 o Memória Flash  R520 o Outras tecnologias  R600 Capítulo 5: HDs e o Manutenção 4
  • 5. armazenamento o Chipsets de vídeo o Como um HD funciona integrados  A placa o Conectores: VGA x DVI controladora o Monitores: LCD x CRT x  Os discos Plasma x OLED  Correção de erros o Características dos e badblocks Monitores LCD  Desempenho o Monitores USB?  Tempo de Capítulo 11: Notebooks busca o Categorias (Seek Time) o UMPCs e MIDs  Tempo de o Fabricantes latência o Processadores (Latency  Pentium M Time)  Soquetes  Tempo de  Core Duo e Core 2 Acesso Duo (Access  Celeron M Time)  Processadores  Head ULV Switch Time  A plataforma  Taxa de Centrino transferênci  Mobile Athlon 64 a interna  Mobile Sempron (Internal  Turion 64 Transfer  Turion X2 rate)  Via C3 e C7  NCQ  AMD Geode  Cache o Chipsets 3D (Buffer)  Chipsets onboard  MTBF e  Chipsets service life dedicados e placas o As interfaces offboard  IDE  ATI  SATA  nVidia  SCSI o Barebones  SAS o Drivers  As barreiras de  Criando uma 8GB e 128GB imagem de o RAID recuperação  Os modos de o Baterias operação  Chumbo Ácido  As controladoras  Ni-Cad o Opções de  Ni-MH armazenamento externo  Li-ion o SSDs e HHDs  Li-poly o ReadyBoost e  Células de ReadyDrive combustível o O gigabyte de 1 bilhão de  Calculando a bytes capacidade e 5
  • 6. o Drives de disquetes autonomia Capítulo 6: Sistemas de Capítulo 12: Manutenção de arquivos e recuperação de notebooks dados o Desmontagem e dicas o Formatação física o Desmontando um o Formatação lógica Toshiba A70  FAT16 e FAT32 o Desmontando o HP  Estruturas 6110NX Lógicas o Desmontando a tela  NTFS o Localizando defeitos  Estruturas  Não liga lógicas do  Instabilidade NTFS  HD e DVD  EXT3  Defeitos na tela o Recuperação de dados  Modem e placa  S.M.A.R.T. wireless  Criando uma o Comprando peças de imagem binária reposição no exterior  Reparando Apêndice: Um resumo sobre partições redes e o protocolo TCP/IP  Recuperado a MBR e tabela de partições  Recuperando arquivos apagados  Usando o Easy Recovery  Usando o Photorec  Outras opções  Eliminando dados com segurança  Copiando dados de mídias defeituosas 6
  • 7. Introdução: Como um PC funciona O primeiro PC foi lançado em 1981, pela IBM. A plataforma PC não é a primeira nem será a última plataforma de computadores pessoais, mas ela é de longe a mais usada e provavelmente continuará assim por mais algumas décadas. Para a maioria das pessoas, "PC" é sinônimo de computador. Começando do básico, existem duas maneiras de representar uma informação: analogicamente ou digitalmente. Uma música gravada em uma antiga fita K7 é armazenada de forma analógica, codificada na forma de uma grande onda de sinais magnéticos, que podem assumir um número virtualmente ilimitado de freqüências. Quando a fita é tocada, o sinal magnético é amplificado e novamente convertido em som, gerando uma espécie de "eco" do áudio originalmente gravado. O grande problema é que o sinal armazenado na fita se degrada com o tempo, e existe sempre uma certa perda de qualidade ao fazer cópias. Ao tirar várias cópias sucessivas, cópia da cópia, você acabava com uma versão muito degradada da música original. Ao digitalizar a mesma música, transformando-a em um arquivo MP3, você pode copiá-la do PC para o MP3 player, e dele para outro PC, sucessivamente, sem causar qualquer degradação. Você pode perder alguma qualidade ao digitalizar o áudio, ou ao comprimir a faixa original, gerando o arquivo MP3, mas a partir daí pode reproduzir o arquivo indefinidamente e fazer cópias exatas. Isso é possível devido à própria natureza do sistema digital, que permite armazenar qualquer informação na forma de uma seqüência de valores positivos e negativos, ou seja, na forma de uns e zeros. O número 181, por exemplo, pode ser representado digitalmente como 10110101; uma foto digitalizada é transformada em uma grande grade de pixels e um valor de 8, 16 ou 24 bits é usado para representar cada um; um vídeo é transformado em uma sequência de imagens, também armazenadas na forma de pixels e assim por diante. A grande vantagem do uso do sistema binário é que ele permite armazenar informações com uma grande confiabilidade, em praticamente qualquer tipo de mídia; já que qualquer informação é reduzida a combinações de apenas dois valores diferentes. A informação pode ser armazenada de forma magnética, como no caso dos HDs; de forma óptica, como no caso dos CDs e DVDs ou até mesmo na forma de impulsos elétricos, como no caso dos chips de memória flash. 7
  • 8. Chips de memória flash Cada um ou zero processado ou armazenado é chamado de "bit", contração de "binary digit" ou "dígito binário". Um conjunto de 8 bits forma um byte, e um conjunto de 1024 bytes forma um kilobyte (ou kbyte). O número 1024 foi escolhido por ser a potência de 2 mais próxima de 1000. É mais fácil para os computadores trabalharem com múltiplos de dois do que usar o sistema decimal como nós. Um conjunto de 1024 kbytes forma um megabyte e um conjunto de 1024 megabytes forma um gigabyte. Os próximos múltiplos são o terabyte (1024 gigabytes) e o petabyte (1024 terabytes), exabyte, zettabyte e o yottabyte, que equivale a 1.208.925.819.614.629.174.706.176 bytes. :) É provável que, com a evolução da informática, daqui a algumas décadas surja algum tipo de unidade de armazenamento capaz de armazenar um yottabyte inteiro, mas atualmente ele é um número quase inatingível. Para armazenar um yottabyte inteiro, usando tecnologia atual, seria necessário construir uma estrutura colossal de servidores. Imagine que, para manter os custos baixos, fosse adotada uma estratégia estilo Google, usando PCs comuns, com HDs IDE. Cada PC seria equipado com dois HDs de 500 GB, o que resultaria em pouco menos de 1 terabyte por PC (não seria possível chegar a exatamente 1 terabyte, já que não existem HDs de 512 GB binários no mercado, por isso vamos arredondar). Estes PCs seriam então organizados em enormes racks, onde cada rack teria espaço para 1024 PCs. Os PCs de cada rack seriam ligados a um conjunto de switchs e cada grupo de switchs seria ligado a um grande roteador. Uma vez ligados em rede, os 1024 PCs seriam configurados para atuar como um enorme cluster, trabalhando como se fossem um único sistema. Construiríamos então um enorme galpão, capaz de comportar 1024 desses racks, construindo uma malha de switchs e roteadores capaz de ligá-los em rede com um desempenho minimamente aceitável. Esse galpão precisa de um sistema de refrigeração colossal, sem falar da energia consumida por mais de um milhão de PCs dentro dele, por isso construímos uma usina hidrelétrica para alimentá-lo, represando um rio próximo. Com tudo isso, conseguiríamos montar uma estrutura computacional capaz de armazenar 1 exabyte. Ainda precisaríamos construir mais 1.048.576 mega- datacenters como esse para chegar a 1 yottabyte. Se toda a humanidade se 8
  • 9. dividisse em grupos de 6.000 pessoas e cada grupo fosse capaz de construir um ao longo de sua vida, deixando de lado outras necessidades existenciais, poderíamos chegar lá. :P Voltando à realidade, usamos também os termos kbit, megabit e gigabit, para representar conjuntos de 1024 bits. Como um byte corresponde a 8 bits, um megabyte corresponde a 8 megabits e assim por diante. Quando você compra uma placa de rede de "100 megabits" está na verdade levando para a casa uma placa que transmite 12.5 megabytes por segundo, pois cada byte tem 8 bits. Quando vamos abreviar, também existe diferença. Quando estamos falando de kbytes ou megabytes, abreviamos respectivamente como KB e MB, sempre com o B maiúsculo. Por outro lado, quando estamos falando de kbits ou megabits abreviamos da mesma forma, porém usando o B minúsculo: Kb, Mb e assim por diante. Parece só um daqueles detalhes sem importância, mas esta é uma fonte de muitas confusões. Se alguém anuncia no jornal que está vendendo uma "placa de rede de 1000 MB", está dando a entender que a placa trabalha a 8000 megabits e não a 1000. Os componentes básicos Qualquer PC é composto pelos mesmos componentes básicos: processador, memória, HD, placa-mãe, placa de vídeo e monitor. Essa mesma divisão básica se aplica também a outros aparelhos eletrônicos, como palmtops e celulares. A principal diferença é que neles os componentes são integrados numa única placa de circuito (muitas vezes no mesmo chip) e são utilizados chips de memória flash no lugar do HD. Antigamente, a placa-mãe funcionava apenas como um ponto central, contendo os slots e barramentos usados pelos demais componentes. Além do processador e pentes de memória, era necessário comprar a placa de vídeo, placa de som, modem, rede, etc. Cada componente era uma placa separada. Com a integração dos componentes, a placa-mãe passou a incluir cada vez mais componentes, dando origem às placas "tudo onboard" que utilizamos atualmente (existem placas que já vêm até com o processador e chips de memória!). Isso permitiu que os preços dos PCs caíssem assustadoramente, já que, com menos componentes, o custo de fabricação é bem menor. Para quem quer mais desempenho ou recursos, é sempre possível instalar placas adicionais, substituindo os componentes onboard. Com o micro montado, o próximo passo é instalar o sistema operacional e programas, que finalmente vão permitir que ele faça algo de útil. Vamos começar com um overview da função de cada um destes componentes: 9
  • 10. Processador O processador é o cérebro do micro, encarregado de processar a maior parte das informações. Ele é também o componente onde são usadas as tecnologias de fabricação mais recentes. Existem no mundo apenas quatro grandes empresas com tecnologia para fabricar processadores competitivos para micros PC: a Intel (que domina mais de 60% do mercado), a AMD (que disputa diretamente com a Intel), a VIA (que fabrica os chips VIA C3 e C7, embora em pequenas quantidades) e a IBM, que esporadicamente fabrica processadores para outras empresas, como a Transmeta. Athlon X2 e Pentium D O processador é o componente mais complexo e freqüentemente o mais caro, mas ele não pode fazer nada sozinho. Como todo cérebro, ele precisa de um corpo, que é formado pelos outros componentes do micro, incluindo memória, HD, placa de vídeo e de rede, monitor, teclado e mouse. Dentro do mundo PC, tudo começou com o 8088, lançado pela Intel em 1979 e usado no primeiro PC, lançado pela IBM em 1981. Depois veio o 286, lançado em 1982, e o 386, lançado em 1985. O 386 pode ser considerado o primeiro processador moderno, pois foi o primeiro a incluir o conjunto de instruções básico, usado até os dias de hoje. O 486, que ainda faz parte das lembranças de muita gente que comprou seu primeiro computador durante a década de 1990, foi lançado em 1989, mas ainda era comum encontrar micros com ele à venda até por volta de 1997. Depois entramos na era atual, inaugurada pelo Pentium, que foi lançado em 1993, mas demorou alguns anos para se popularizar e substituir os 486. Em 1997 foi lançado o Pentium MMX, que deu um último fôlego à plataforma. Depois, em 1997, veio o Pentium II, que usava um encaixe diferente e por isso era incompatível com as placas-mãe antigas. A AMD soube aproveitar a 10
  • 11. oportunidade, desenvolvendo o K6-2, um chip com uma arquitetura similar ao Pentium II, mas que era compatível com as placas soquete 7 antigas. A partir daí as coisas passaram a acontecer mais rápido. Em 1999 foi lançado o Pentium III e em 2000 o Pentium 4, que trouxe uma arquitetura bem diferente dos chips anteriores, otimizada para permitir o lançamento de processadores que trabalham a freqüências mais altas. O último Pentium III trabalhava a 1.0 GHz, enquanto o Pentium 4 atingiu rapidamente os 2.0 GHz, depois 3 GHz e depois 3.5 GHz. O problema é que o Pentium 4 possuía um desempenho por ciclo de clock inferior a outros processadores, o que faz com que a alta freqüência de operação servisse simplesmente para equilibrar as coisas. A primeira versão do Pentium 4 operava a 1.3 GHz e, mesmo assim, perdia para o Pentium III de 1.0 GHz em diversas aplicações. Quanto mais alta a freqüência do processador, mais ele esquenta e mais energia consome, o que acaba se tornando um grande problema. Quando as possibilidades de aumento de clock do Pentium 4 se esgotaram, a Intel lançou o Pentium D, uma versão dual-core do Pentium 4. Inicialmente os Pentium D eram caros, mas com o lançamento do Core 2 Duo eles caíram de preço e passaram a ser usados até mesmo em micros de baixo custo. Os Pentium D eram vendidos sob um sistema de numeração e não sob a freqüência real de clock. O Pentium D 820, por exemplo, opera a 2.8 GHz, enquanto o 840 opera a 3.2 GHz. Em 2003 a Intel lançou o Pentium M, um chip derivado da antiga arquitetura do Pentium III, que consome pouca energia, esquenta pouco e mesmo assim oferece um excelente desempenho. Um Pentium M de 1.4 GHz chega a superar um Pentium 4 de 2.6 GHz em diversas aplicações. O Pentium M foi desenvolvido originalmente para ser usado em notebooks, mas se mostrou tão eficiente que acabou sendo usado como base para o desenvolvimento da plataforma Core, usada nos processadores Core 2 Duo fabricados atualmente pela Intel. O Pentium 4 acabou se revelando um beco sem saída, descontinuado e condenado ao esquecimento. Paralelamente a todos esses processadores, temos o Celeron, uma versão mais barata, mas com um desempenho um pouco inferior, por ter menos cache ou outras limitações. Na verdade, o Celeron não é uma família separada de chips, mas apenas um nome comercial usado nas versões mais baratas (com metade ou um quarto do cache) de vários processadores Intel. Existem Celerons baseados no Pentium II, Pentium III, Pentium 4, Pentium M e também o Celeron 4xx, que é uma versão single-core (e com menos cache) do Core 2 Duo. Para efeito de comparação, entre os chips antigos e os atuais, um 486 tinha cerca de 1 milhão de transistores e chegou a 133 MHz, enquanto o Pentium MMX tinha 4.3 milhões e chegou a 233 MHz. Um Pentium 4 (Prescott) tem 125 milhões e chegou aos 3.8 GHz, freqüência mais alta atingida por um 11
  • 12. processador Intel (ou AMD) lançado oficialmente até hoje, recorde que deve ser quebrado apenas em 2008 ou 2009. O transístor é a unidade básica do processador, capaz de processar um bit de cada vez. Mais transistores permitem que o processador processe mais instruções de cada vez enquanto a freqüência de operação determina quantos ciclos de processamento são executados por segundo. Continuando, temos os processadores da AMD. Ela começou produzindo processadores 386 e 486, muito similares aos da Intel, porém mais baratos. Quando a Intel lançou o Pentium, que exigia o uso de novas placas-mãe, a AMD lançou o "5x86", um 486 de 133 MHz, que foi bastante popular, servindo como uma opção barata de upgrade. Embora o "5x86" e o clock de 133 MHz dessem a entender que se tratava de um processador com um desempenho similar a um Pentium 133, o desempenho era muito inferior, mal concorrendo com um Pentium 66. Este foi o primeiro de uma série de exemplos, tanto do lado da AMD, quanto do lado da Intel, em que existiu uma diferença gritante entre o desempenho de dois processadores do mesmo clock. Embora seja um item importante, a freqüência de operação não é um indicador direto do desempenho do processador. Uma analogia poderia ser feita em relação aos motores de carro. Os motores de 1.6 do final da década de 70, usados nas Brasílias e nos Fuscas, tinham 44 cavalos de potência, enquanto os motores 1.0 atuais chegam a mais de 70 cavalos. Além da capacidade cúbica, existem muitos outros fatores, como a eficiência do sistema de injeção de ar e combustível, taxa de compressão, refrigeração, etc. Depois do 5x68 a AMD lançou o K5, um processador similar ao Pentium, mas que não fez tanto sucesso. Ele foi seguido pelo K6 e mais tarde pelo K6-2, que novamente fez bastante sucesso, servido como uma opção de processador de baixo custo e, ao mesmo tempo, como uma opção de upgrade para quem tinha um Pentium ou Pentium MMX. Esta era do K6-2 foi uma época negra da informática, não pelo processador em si (que excluindo o desempenho em jogos, tinha um bom custo-benefício), mas pelas placas-mãe baratas que inundaram o mercado. Aproveitando o baixo custo do processador, os fabricantes passaram a desenvolver placas cada vez mais baratas (e de qualidade cada vez pior) para vender mais, oferecendo PCs de baixo custo. A época foi marcada por aberrações. Um certo fabricante chegou a lançar uma família de placas sem cache L2, que pifavam em média depois de um ano de uso. As coisas voltaram aos trilhos com o Athlon, que foi o primeiro grande processador (tanto em desempenho, quanto em tamanho :) da AMD. A primeira versão usava um formato de cartucho (slot A) similar ao Pentium II, mas incompatível com as placas para ele. Ele foi sucedido pelo Athlon Thunderbird, que passou a usar o formato de soquete utilizado (com atualizações) até os dias de hoje. 12
  • 13. Athlon XP, para placas soquete A Competindo com o Celeron, a AMD produziu o Duron, um processador de baixo custo, idêntico ao Athlon, mas com menos cache. Em 2005 o Athlon foi descontinuado e o cargo foi herdado pelo Sempron, uma versão aperfeiçoada do Duron (com mais cache e capaz de atingir freqüências mais altas), que passou a ser vendido segundo um índice de desempenho (em relação ao Pentium 4) e não mais segundo o clock real. Por volta de 2000, surgiram as primeiras notícias do "SledgeHammer", um processador de 64 bits, que foi finalmente lançado em versão doméstica na forma do Athlon 64, que passou a ser o topo de linha da AMD. Apesar das mudanças internas, o Athlon 64 continua sendo compatível com os programas de 32 bits, da mesma forma que os processadores atuais são capazes de rodar softwares da época do 386, muito embora tenham incorporado diversos novos recursos. Na prática, o fato de ser um processador de 64 bits não torna o Athlon 64 gritantemente mais rápido, mesmo em aplicativos otimizados (os ganhos de desempenho surgem mais devido ao controlador de memória integrado e aos novos registradores). A principal vantagem dos processadores de 64 bits é derrubar uma limitação inerente a todos os processadores de 32 bits, que são capazes de acessar apenas 4 GB de memória RAM, um limite que está se tornando cada vez mais uma limitação grave em várias áreas. Os 4 GB de memória podem não parecer um obstáculo imediato, mas lembre- se de que há duas décadas os PCs eram vendidos com 128 KB de memória, há uma década já vinham com 4 ou 8 MB, e hoje são vendidos com 512 MB ou mais. O Athlon 64 deu origem ao Athlon X2, o primeiro processador dual-core da AMD, onde temos dois processadores Athlon 64 no mesmo encapsulamento, dividindo a carga de processamento e também o Turion, que é uma versão de baixo custo do Athlon 64, destinado a notebooks. 13
  • 14. Memória Depois do processador, temos a memória RAM, usada por ele para armazenar os arquivos e programas que estão sendo executados, como uma espécie de mesa de trabalho. A quantidade de memória RAM disponível tem um grande efeito sobre o desempenho, já que sem memória RAM suficiente o sistema passa a usar memória swap, que é muito mais lenta. A principal característica da memória RAM é que ela é volátil, ou seja, os dados se perdem ao reiniciar o micro. É por isso que ao ligar é necessário sempre refazer todo o processo de carregamento, em que o sistema operacional e aplicativos usados são transferidos do HD para a memória, onde podem ser executados pelo processador. Os chips de memória são vendidos na forma de pentes de memória. Existem pentes de várias capacidades, e normalmente as placas possuem dois ou três encaixes disponíveis. Você pode instalar um pente de 512 MB junto com o de 256 MB que veio no micro para ter um total de 768 MB, por exemplo. Módulo DDR Ao contrário do processador, que é extremamente complexo, os chips de memória são formados pela repetição de uma estrutura bem simples, formada por um par de um transístor e um capacitor. Um transístor solitário é capaz de processar um único bit de cada vez, e o capacitor permite armazenar a informação por um certo tempo. Essa simplicidade faz com que os pentes de memória sejam muito mais baratos que os processadores, principalmente se levarmos em conta o número de transistores. Um pente de 1 GB é geralmente composto por 8 chips, cada um deles com um total de 1024 megabits, o que equivale a 1024 milhões de transistores. Um Athlon 64 X2 tem "apenas" 233 milhões e custa bem mais caro que um pente de memória. Existem basicamente dois tipos de memória em uso: SDR e DDR. As SDR são o tipo tradicional, onde o controlador de memória realiza apenas uma leitura por ciclo, enquanto as DDR são mais rápidas, pois fazem duas leituras por 14
  • 15. ciclo. O desempenho não chega a dobrar, pois o acesso inicial continua demorando o mesmo tempo, mas melhora bastante. Os pentes de memória SDR são usados em micros antigos: Pentium II e Pentium III e os primeiros Athlons e Durons soquete A. Por não serem mais fabricados, eles são atualmente muito mais raros e caros que os DDR, algo semelhante ao que aconteceu com os antigos pentes de 72 vias, usados na época do Pentium 1. É fácil diferenciar os pentes SDR e DDR, pois os SDR possuem dois chanfros e os DDR apenas um. Essa diferença faz com que também não seja possível trocar as bolas, encaixando por engano um pente DDR numa placa-mãe que use SDR e vice-versa (a menos que você use um alicate e um martelo, mas a placa provavelmente não vai funcionar mais depois ;). Mais recentemente, temos assistido a uma nova migração, com a introdução dos pentes de memória DDR2. Neles, o barramento de acesso à memória trabalha ao dobro da freqüência dos chips de memória propriamente ditos. Isso permite que sejam realizadas duas operações de leitura por ciclo, acessando dois endereços diferentes. Como a capacidade de realizar duas transferências por ciclo introduzida nas memórias DDR foi preservada, as memórias DDR2 são capazes de realizar um total de 4 operações de leitura por ciclo, uma marca impressionante :). Existem ainda alguns ganhos secundários, como o menor consumo elétrico, útil em notebooks. Os pentes de memória DDR2 são incompatíveis com as placas-mãe antigas. Eles possuem um número maior de contatos (um total de 240, contra 184 dos pentes DDR), e o chanfro central é posicionado de forma diferente, de forma que não seja possível instalá-los nas placas antigas por engano. Muitos pentes são vendidos com um dissipador metálico, que ajuda na dissipação do calor e permite que os módulos operem a freqüências mais altas. Módulo DDR2 Algumas placas (geralmente modelos de baixo custo) possuem dois tipos de soquete, permitindo usar módulos SDR e DDR, DDR e DDR2 ou DDR2 e DDR3 de acordo com a conveniência, mas sem misturar os dois tipos. Elas são comuns durante os períodos de transição, quando uma tecnologia de memória 15
  • 16. é substituída por outra e podem ser uma opção interessante, já que permitem aproveitar os módulos antigos. De qualquer forma, apesar de toda a evolução a memória RAM continua sendo muito mais lenta que o processador. Para atenuar a diferença, são usados dois níveis de cache, incluídos no próprio processador: o cache L1 e o cache L2. O cache L1 é extremamente rápido, trabalhando próximo à freqüência nativa do processador. Na verdade, os dois trabalham na mesma freqüência, mas são necessários alguns ciclos de clock para que a informação armazenada no L1 chegue até as unidades de processamento. No caso do Pentium 4, chega-se ao extremo de armazenar instruções já decodificadas no L1: elas ocupam mais espaço, mas eliminam este tempo inicial. De uma forma geral, quanto mais rápido o cache, mais espaço ele ocupa e menos é possível incluir no processador. É por isso que o Pentium 4 inclui apenas um total de 20 KB desse cache L1 ultra-rápido, contra os 128 KB do cache um pouco mais lento usado no Sempron. Em seguida vem o cache L2, que é mais lento tanto em termos de tempo de acesso (o tempo necessário para iniciar a transferência) quanto em largura de banda, mas é bem mais econômico em termos de transistores, permitindo que seja usado em maior quantidade. O volume de cache L2 usado varia muito de acordo com o processador. Enquanto a maior parte dos modelos do Sempron utilizam apenas 256 KB, os modelos mais caros do Core 2 Duo possuem 4 MB completos. HD No final das contas, a memória RAM funciona como uma mesa de trabalho, cujo conteúdo é descartado a cada boot. Temos em seguida o disco rígido, também chamado de hard disk (o termo em Inglês), HD ou até mesmo de "disco duro" pelos nossos primos lusitanos. Ele serve como unidade de armazenamento permanente, guardando dados e programas. O HD armazena os dados em discos magnéticos que mantêm a gravação por vários anos. Os discos giram a uma grande velocidade e um conjunto de cabeças de leitura, instaladas em um braço móvel faz o trabalho de gravar ou acessar os dados em qualquer posição nos discos. Junto com o CD-ROM, o HD é um dos poucos componentes mecânicos ainda usados nos micros atuais e, justamente por isso, é o que normalmente dura menos tempo (em média de três a cinco anos de uso contínuo) e que inspira mais cuidados. 16
  • 17. Mecanismo interno do HD Na verdade, os discos magnéticos dos HDs são selados, pois a superfície magnética onde são armazenados os dados é extremamente fina e sensível. Qualquer grão de poeira que chegasse aos discos poderia causar danos à superfície, devido à enorme velocidade de rotação dos discos. Fotos em que o HD aparece aberto são apenas ilustrativas, no mundo real ele é apenas uma caixa fechada sem tanta graça. Apesar disso, é importante notar que os HDs não são fechados hermeticamente, muito menos a vácuo, como muitos pensam. Um pequeno filtro permite que o ar entra e saia, fazendo com que a pressão interna seja sempre igual à do ambiente. O ar é essencial para o funcionamento do HD, já que ele é necessário para criar o "colchão de ar" que evita que as cabeças de leitura toquem os discos. Tradicionalmente, o sistema operacional era sempre instalado no HD antes de poder ser usado. Enquanto está trabalhando, o sistema precisa freqüentemente modificar arquivos e configurações, o que seria impossível num CD-ROM, já que os dados gravados nele não podem ser alterados. Isso mudou com o aparecimento do Knoppix, Kurumin e outras distribuições Linux que rodam diretamente do CD-ROM. Neste caso, um conjunto de modificações "enganam" o sistema, fazendo com que ele use a maior parte dos arquivos (os que não precisam ser alterados) a partir do CD-ROM, e o restante (os que realmente precisam ser alterados) a partir da memória RAM. Isto tem algumas limitações: as configurações são perdidas ao desligar (a menos que você as salve em um pendrive ou em uma pasta do HD), pois tudo é armazenado na memória RAM, cujo conteúdo é sempre perdido ao desligar o micro. 17
  • 18. Mas, voltando à função do HD, imagine que, como a memória RAM é cara, você compra sempre uma quantidade relativamente pequena, geralmente de 512 MB a 2 GB, de acordo com a aplicação a que o micro se destina e ao seu bolso. Por outro lado, você dificilmente vai encontrar um HD com menos que 80 ou 120 GB à venda. Ou seja, temos centenas de vezes mais espaço no HD do que na memória RAM. Bem antigamente, nos anos 80, época dos primeiros PCs, você só podia rodar programas que coubessem na memória RAM disponível. Naquela época, a memória RAM era muito mais cara que hoje em dia, então o mais comum era usar 256 ou 512 KB (sim, kbytes, duas mil vezes menos que usamos hoje, tempos difíceis aqueles :). Os mais abonados tinham dinheiro para comprar um megabyte inteiro, mas nada além disso. Se você quisesse rodar um programa com mais de 256 KB, tinha que comprar mais memória, não tinha conversa. Sem outra escolha, os programadores se esforçavam para deixar seus programas o mais compactos possíveis para que eles rodassem nos micros com menos memória. Mais tarde, quando a Intel estava desenvolvendo o 386, foi criado o recurso de memória virtual, que permite simular a existência de mais memória RAM, utilizando espaço do HD. A memória virtual pode ser armazenada em um arquivo especialmente formatado no HD, ou em uma partição dedicada (como no caso do Linux) e a eficiência com que ela é usada varia bastante de acordo com o sistema operacional, mas ela permite que o sistema continue funcionando, mesmo com pouca memória disponível. O problema é que o HD é muito mais lento que a memória RAM. Enquanto um simples módulo DDR2-533 (PC2-4200) comunica-se com o processador a uma velocidade teórica de 4200 megabytes por segundo, a velocidade de leitura sequencial dos HDs atuais (situação em que o HD é mais rápido) dificilmente ultrapassa a marca dos 100 MB/s. Existe um comando no Linux que serve para mostrar de forma rápida o desempenho do HD, o "hdparm". Quando o rodo no meu micro, que usa um HD SATA relativamente recente, ele diz o seguinte: # hdparm -t /dev/sda /dev/sda: Timing buffered disk reads: 184 MB in 3.02 seconds = 60.99 MB/sec No Windows, você pode medir a taxa de leitura sequencial do HD usando o HD Tach, disponível no http://www.simplisoftware.com/. Não se surpreenda com o resultado. Como disse, o HD é muito lento se comparado à memória. Para piorar as coisas, o tempo de acesso do HD (o tempo necessário para localizar a informação e iniciar a transferência) é absurdamente mais alto que o da memória RAM. Enquanto na memória falamos em tempos de acesso inferiores a 10 nanosegundos (milionésimos de segundo), a maioria dos HDs trabalha com tempos de acesso superiores a 10 milissegundos. Isso faz com que o desempenho do HD seja muito mais baixo ao ler pequenos arquivos espalhados pelo disco, como é o caso da memória virtual. Em muitas 18
  • 19. situações, o HD chega ao ponto de não ser capaz de atender a mais do que duas ou três centenas de requisições por segundo. A fórmula é simples: quanto menos memória RAM, mais memória swap (memória virtual) é usada e mais lento o sistema fica. O processador, coitado, não pode fazer nada além de ficar esperando a boa vontade do HD em mandar à conta-gotas os dados de que ele precisa para trabalhar. Ou seja, quando você compra um micro com um processador de 3 GHz e 256 MB de RAM, você está literalmente jogando dinheiro no lixo, pois o processador vai ficar boa parte do tempo esperando pelo HD. Vender micros novos com 256, ou pior, com apenas 128 MB de RAM, é uma atrocidade que deveria ser classificada como crime contra a humanidade. ;) Por outro lado, quando você tem instalado mais memória do que o sistema realmente precisa, é feito o inverso. Ao invés de copiar arquivos da memória para o HD, arquivos do HD, contendo os programas, arquivos e bibliotecas que já foram anteriormente abertos é que são copiados para a memória, fazendo com que o acesso a eles passe a ser instantâneo. Os programas e arquivos passam a ser abertos de forma gritantemente mais rápida, como se você tivesse um HD muito mais rápido do que realmente é. Esse recurso é chamado de cache de disco e (sobretudo no Linux) é gerenciado de forma automática pelo sistema, usando a memória disponível. Naturalmente, o cache de disco é descartado imediatamente quando a memória precisa ser usada para outras coisas. Ele é apenas uma forma de aproveitar o excedente de memória, sem causar nenhum efeito desagradável. Ironicamente, a forma mais eficiente de melhorar o desempenho do HD, na maioria das aplicações, é instalar mais memória, fazendo com que uma quantidade maior de arquivos possa ser armazenada no cache de disco. É por isso que servidores de arquivos, servidores proxy e servidores de banco de dados costumam usar muita memória RAM, em muitos casos 4 GB ou mais. Uma outra forma de melhorar o desempenho do HD é usar RAID, onde dois ou quatro HDs passam a ser acessados como se fossem um só, multiplicando a velocidade de leitura e gravação. Esse tipo de RAID, usado para melhorar o desempenho, é chamado de RAID 0. Existe ainda o RAID 1, onde são usados dois HDs, mas o segundo é uma cópia exata do primeiro, que garante que os dados não sejam perdidos no caso de algum problema mecânico em qualquer um dos dois. O RAID tem se tornado um recurso relativamente popular, já que atualmente a maioria das placas-mãe já vêm com controladoras RAID onboard. 19
  • 20. Placa de vídeo Depois do processador, memória e HD, a placa de vídeo é provavelmente o componente mais importante do PC. Originalmente, as placas de vídeo eram dispositivos simples, que se limitavam a mostrar o conteúdo da memória de vídeo no monitor. A memória de vídeo continha um simples bitmap da imagem atual, atualizada pelo processador, e o RAMDAC (um conversor digital- analógico que faz parte da placa de vídeo) lia a imagem periodicamente e a enviava ao monitor. A resolução máxima suportada pela placa de vídeo era limitada pela quantidade de memória de vídeo. Na época, memória era um artigo caro, de forma que as placas vinham com apenas 1 ou 2 MB. As placas de 1 MB permitiam usar no máximo 800x600 com 16 bits de cor, ou 1024x768 com 256 cores. Estavam limitadas ao que cabia na memória de vídeo. Esta da foto a seguir é uma Trident 9440, uma placa de vídeo muito comum no início dos anos 90. Uma curiosidade é que ela foi uma das poucas placas de vídeo "atualizáveis" da história. Ela vinha com apenas dois chips de memória, totalizando 1 MB, mas era possível instalar mais dois, totalizando 2 MB. Hoje em dia, atualizar a memória da placa de vídeo é impossível, já que as placas utilizam módulos BGA, que podem ser instalados apenas em fábrica. Trident 9440 Em seguida, as placas passaram a suportar recursos de aceleração, que permitem fazer coisas como mover janelas ou processar arquivos de vídeo de forma a aliviar o processador principal. Esses recursos melhoram bastante a velocidade de atualização da tela (em 2D), tornando o sistema bem mais responsivo. Finalmente, as placas deram o passo final, passando a suportar recursos 3D. Imagens em três dimensões são formadas por polígonos, formas geométricas como triângulos e retângulos em diversos formatos. Qualquer objeto em um game 3D é formado por um grande número destes polígonos, Cada polígono tem sua posição na imagem, um tamanho e cor específicos. O "processador" 20
  • 21. incluído na placa, responsável por todas estas funções é chamado de GPU (Graphics Processing Unit, ou unidade de processamento gráfico). Quase todo o processamento da imagem em games 3D é feito pela placa 3D Para tornar a imagem mais real, são também aplicadas texturas sobre o polígonos. Uma textura nada mais é do que uma imagem 2D comum, aplicada sobre um conjunto de polígonos. O uso de texturas permite que um muro realmente tenha o aspecto de um muro de pedras, por exemplo, já que podemos usar a imagem de um muro real sobre os polígonos. O uso das texturas não está limitado apenas a superfícies planas. É perfeitamente possível moldar uma textura sobre uma esfera, por exemplo. Quanto maior o número de polígonos usados e melhor a qualidade das texturas aplicadas sobre eles, melhor será a qualidade final da imagem. Veja um exemplo de aplicação de texturas: 21
  • 22. Polígonos e imagem finalizada (cortesia da nVidia) O processo de criação de uma imagem tridimensional é dividido em três etapas, chamadas de desenho, geometria e renderização. Na primeira etapa, é criada uma descrição dos objetos que compõem a imagem, ou seja: quais polígonos fazem parte da imagem, qual é a forma e tamanho de cada um, qual é a posição de cada polígono na imagem, quais serão as cores usadas e, finalmente, quais texturas e quais efeitos 3D serão aplicados. Depois de feito o "projeto" entramos na fase de geometria, onde a imagem é efetivamente criada e armazenada na memória da placa 3D. Ao final da etapa de geometria, todos os elementos que compõem a imagem estão prontos. O problema é que eles estão armazenados na memória da placa de vídeo na forma de um conjunto de operações matemáticas, coordenadas e texturas, que ainda precisam ser transformadas na imagem que será exibida no monitor. É aqui que chegamos à parte mais complexa e demorada do trabalho, que é a renderização da imagem. Essa última etapa consiste em transformar as informações armazenadas na memória em uma imagem bidimensional que será mostrada no monitor. O processo de renderização é muito mais complicado do que parece; é necessário determinar (a partir do ponto de vista do espectador) quais polígonos estão visíveis, aplicar os efeitos de iluminação adequados, etc. 22
  • 23. Apesar de o processador também ser capaz de criar imagens tridimensionais, trabalhando sozinho ele não é capaz de gerar imagens de qualidade a grandes velocidades (como as demandadas por jogos complexos), pois tais imagens exigem um número absurdo de cálculos e processamento. Para piorar ainda mais a situação, o processador tem que ao mesmo tempo executar várias outras tarefas relacionadas com o aplicativo. As placas aceleradoras 3D, por sua vez, possuem processadores dedicados, cuja função é unicamente processar as imagens, o que podem fazer com uma velocidade incrível, deixando o processador livre para executar outras tarefas. Com elas, é possível construir imagens tridimensionais com uma velocidade suficiente para criar jogos complexos a um alto frame-rate. Depois dos jogos e aplicativos profissionais, os próximos a aproveitarem as funções 3D das placas de vídeo foram os próprios sistemas operacionais. A idéia fundamental é que, apesar de toda a evolução do hardware, continuamos usando interfaces muito similares às dos sistemas operacionais do final da década de 80, com janelas, ícones e menus em 2D. Embora o monitor continue sendo uma tela bidimensional, é possível criar a ilusão de um ambiente 3D, da mesma forma que nos jogos, permitindo criar todo tipo de efeitos interessantes e, em alguns casos, até mesmo úteis ;). No caso do Windows Vista temos o Aero, enquanto no Linux a solução mais usada é o AIGLX, disponível na maioria das distribuições atuais: Efeito de cubo do AIGLX, que permite alternar entre diversos desktops virtuais Com a evolução das placas 3D, os games passaram a utilizar gráficos cada vez mais elaborados, explorando os recursos das placas recentes. Isso criou um círculo vicioso, que faz com que você precise de uma placa razoavelmente recente para jogar qualquer game atual. As placas 3D atuais são praticamente um computador à parte, pois além da qualidade generosa de memória RAM, acessada através de um barramento muito mais rápido que a do sistema, o chipset de vídeo é muito mais complexo 23
  • 24. e absurdamente mais rápido que o processador principal no processamento de gráficos. O chipset de uma GeForce 7800 GT, por exemplo, é composto por 302 milhões de transistores, mais do que qualquer processador da época em que foi lançada. As placas 3D offboard também incluem uma quantidade generosa de memória de vídeo (512 MB ou mais nos modelos mais recentes), acessada através de um barramento muito rápido. O GPU (o chipset da placa) é também muito poderoso, de forma que as duas coisas se combinam para oferecer um desempenho monstruoso. Com a introdução do PCI Express, surgiu também a possibilidade de instalar duas, ou até mesmo quatro placas, ligadas em SLI (no caso das placas nVidia) ou CrossFire (no caso das placas AMD/ATI), o que oferece um desempenho próximo do dobro (ou do quádruplo) obtido por uma placa isolada. Aqui, por exemplo, temos duas placas AMD/ATI X1950 em modo CrossFire: CrossFire com duas placas AMD/ATI X1950 Longe do mundo brilhante das placas de alto desempenho, temos as placas onboard, que são de longe as mais comuns. Elas são soluções bem mais simples, onde o GPU é integrado ao próprio chipset da placa-mãe e, em vez de utilizar memória dedicada, como nas placas offboard, utiliza parte da memória RAM principal, que é "roubada" do sistema. Mesmo uma placa antiga, como a GeForce 4 Ti4600, tem 10.4 GB/s de barramento com a memória de vídeo, enquanto ao usar um pente de memória DDR PC 3200, temos apenas 3.2 GB/s de barramento na memória principal, que ainda por cima precisa ser compartilhado entre o vídeo e o processador principal. O processador lida bem com isso, graças aos caches L1 e L2, mas a placa de vídeo realmente não tem para onde correr. É por isso que os chipsets de vídeo onboard são normalmente bem mais simples: mesmo um chip caro e complexo não ofereceria um desempenho muito melhor, pois o grande limitante é o acesso à memória. De uma forma geral, as placas de vídeo onboard (pelo menos os modelos que dispõem de drivers adequados) atuais atendem bem às tarefas do dia-a-dia, com a grande vantagem do custo. Elas também permitem rodar os games mais 24
  • 25. antigos, apesar de, naturalmente, ficarem devendo nos lançamentos recentes. As placas mais caras são reservadas a quem realmente faz questão de rodar os games recentes com uma boa qualidade. Existem ainda modelos de placas 3D específicos para uso profissional, como as nVidia Quadro. 25
  • 26. Placa-mãe A placa-mãe é o componente mais importante do micro, pois é ela a responsável pela comunicação entre todos os componentes. Pela enorme quantidade de chips, trilhas, capacitores e encaixes, a placa-mãe também é o componente que, de uma forma geral, mais dá defeitos. É comum que um slot PCI pare de funcionar (embora os outros continuem normais), que instalar um pente de memória no segundo soquete faça o micro passar a travar, embora o mesmo pente funcione perfeitamente no primeiro e assim por diante. A maior parte dos problemas de instabilidade e travamentos são causados por problemas diversos na placa-mãe, por isso ela é o componente que deve ser escolhido com mais cuidado. Em geral, vale mais a pena investir numa boa placa-mãe e economizar nos demais componentes, do que o contrário. A qualidade da placa-mãe é de longe mais importante que o desempenho do processador. Você mal vai perceber uma diferença de 20% no clock do processador, mas com certeza vai perceber se o seu micro começar a travar ou se a placa de vídeo onboard não tiver um bom suporte no Linux, por exemplo. Ao montar um PC de baixo custo, economize primeiro no processador, depois na placa de vídeo, som e outros periféricos. Deixe a placa-mãe por último no corte de despesas. Não se baseie apenas na marca da placa na hora de comprar, mas também no fornecedor. Como muitos componentes entram no país ilegalmente, "via Paraguai", é muito comum que lotes de placas remanufaturadas ou defeituosas acabem chegando ao mercado. Muita gente compra esses lotes, vende por um preço um pouco abaixo do mercado e depois desaparece. Outras lojas simplesmente vão vendendo placas que sabem ser defeituosas até acharem algum cliente que não reclame. Muitas vezes os travamentos da placa são confundidos com "paus do Windows", de forma que sempre aparece algum desavisado que não percebe o problema. Antigamente existia a polêmica entre as placas com ou sem componentes onboard. Hoje em dia isso não existe mais, pois todas as placas vêm com som e rede onboard. Apenas alguns modelos não trazem vídeo onboard, atendendo ao público que vai usar uma placa 3D offboard e prefere uma placa mais barata ou com mais slots PCI do que com o vídeo onboard que, de qualquer forma, não vai usar. Os conectores disponíveis na placa estão muito relacionados ao nível de atualização do equipamento. Placas atuais incluem conectores PCI Express x16, usados para a instalação de placas de vídeo offboard, slots PCI Express x1 e slots PCI, usados para a conexão de periféricos diversos. Placas antigas não possuem slots PCI Express nem portas SATA, oferecendo no lugar um slot AGP para a conexão da placa de vídeo e duas ou quatro portas IDE para a instalação dos HDs e drives ópticos. 26
  • 27. Temos ainda soquetes para a instalação dos módulos de memória, o soquete do processador, o conector para a fonte de alimentação e o painel traseiro, que agrupa os encaixes dos componentes onboard, incluindo o conector VGA ou DVI do vídeo, conectores de som, conector da rede e as portas USB. O soquete (ou slot) para o processador é a principal característica da placa- mãe, pois indica com quais processadores ela é compatível. Você não pode instalar um Athlon X2 em uma placa soquete A (que é compatível com os antigos Athlons, Durons e Semprons antigos), nem muito menos encaixar um Sempron numa placa soquete 478, destinada aos Pentium 4 e Celerons antigos. O soquete é na verdade apenas um indício de diferenças mais "estruturais" na placa, incluindo o chipset usado, o layout das trilhas de dados, etc. É preciso desenvolver uma placa quase que inteiramente diferente para suportar um novo processador. Existem dois tipos de portas para a conexão do HD: as portas IDE tradicionais, de 40 pinos (chamadas de PATA, de "Parallel ATA") e os conectores SATA (Serial ATA), que são muito menores. Muitas placas recentes incluem um único conector PATA e quatro conectores SATA. Outras incluem as duas portas IDE tradicionais e dois conectores SATA, e algumas já passam a trazer apenas conectores SATA, deixando de lado os conectores antigos. Existem ainda algumas placas "legacy free", que eliminam também os conectores para o drive de disquete, portas seriais e porta paralela, incluindo apenas as portas USB. Isso permite simplificar o design das placas, reduzindo o custo de produção para o fabricante. 27
  • 28. Placa soquete 775 Tudo isso é montado dentro do gabinete, que contém outro componente importante: a fonte de alimentação. A função da fonte é transformar a corrente alternada da tomada em corrente contínua (AC) já nas tensões corretas, usadas pelos componentes. Ela serve também como uma última linha de defesa contra picos de tensão e instabilidade na corrente, depois do nobreak ou estabilizador. Embora quase sempre relegada a último plano, a fonte é outro componente essencial num PC atual. Com a evolução das placas de vídeo e dos processadores, os PCs consomem cada vez mais energia. Na época dos 486, as fontes mais vendidas tinham 200 watts ou menos, enquanto as atuais têm a partir de 450 watts. Existem ainda fontes de maior capacidade, especiais para quem quer usar duas placas 3D de ponta em SLI, que chegam a oferecer 1000 watts! Uma fonte subdimensionada não é capaz de fornecer energia suficiente nos momentos de pico, causando desde erros diversos, provocados por falhas no fornecimento (o micro trava ao tentar rodar um game pesado, ou trava sempre depois de algum tempo de uso, por exemplo), ou, em casos mais graves, até mesmo danos aos componentes. Uma fonte de má qualidade, obrigada a 28
  • 29. trabalhar além do suportado, pode literalmente explodir, danificando a placa- mãe, memórias, HDs e outros componentes sensíveis. Micro montado Evite comprar fontes muito baratas e, ao montar um micro mais parrudo, invista numa fonte de maior capacidade. Não se esqueça também do aterramento, que é outro fator importante, mas freqüentemente esquecido. O fio terra funciona como uma rota de fuga para picos de tensão provenientes da rede elétrica. A eletricidade flui de uma forma similar à água: vai sempre pelo caminho mais fácil. Sem ter para onde ir, um raio vai torrar o estabilizador, a fonte de alimentação e, com um pouco mais de azar, a placa-mãe e o resto do micro. O fio terra evita isso, permitindo que a eletricidade escoe por um caminho mais fácil, deixando todo o equipamento intacto. O fio terra é simplesmente uma barra de cobre com dois a três metros de comprimento, que é cravada no solo, no meio de um buraco de 20 cm de largura, preenchido com sal grosso e carvão. Naturalmente, instalar o terra é trabalho para o eletricista, já que um aterramento mal feito pode ser mais prejudicial que não ter aterramento algum. Não acredite em crendices como usar um prego fincado na parede ou um cano metálico como aterramento. Sem o terra, o filtro de linha ou estabilizador perde grande parte de sua função, tornando-se mais um componente decorativo, que vai ser torrado junto com o resto do equipamento, do que uma proteção real. Nas grandes cidades, é relativamente raro que os micros realmente queimem por causa de raios, pois os transformadores e disjuntores oferecem uma proteção razoável. Mas, pequenos picos de tensão são responsáveis por pequenos danos nos pentes de memória e outros componentes sensíveis, 29
  • 30. danos que se acumulam, comprometendo a estabilidade e abreviando a vida útil do equipamento. A longo prazo, o investimento na instalação do terra e melhorias na instalação elétrica acabam se pagando com juros, principalmente se você tem mais de um micro. Hardware x Software Os computadores são muito bons em armazenar informações e fazer cálculos, mas não são capazes de tomar decisões sozinhos. Sempre existe um ser humano orientando o computador e dizendo a ele o que fazer a cada passo. Seja você mesmo, teclando e usando o mouse, ou, num nível mais baixo, o programador que escreveu os programas que você está usando. Chegamos então aos softwares, gigantescas cadeias de instruções que permitem que os computadores façam coisas úteis. É aí que entra o sistema operacional e, depois dele, os programas que usamos no dia-a-dia. Um bom sistema operacional é invisível. A função dele é detectar e utilizar o hardware da máquina de forma eficiente, fornecendo uma base estável sobre a qual os programas que utilizamos no cotidiano possam ser usados. Como diz Linus Torvalds, as pessoas não usam o sistema operacional, usam os programas instalados. Quando você se lembra que está usando um sistema operacional, é sinal de que alguma coisa não está funcionando como deveria. O sistema operacional permite que o programador se concentre em adicionar funções úteis, sem ficar se preocupando com que tipo de placa de vídeo ou placa de som você tem. O programa diz que quer mostrar uma janela na tela e ponto; o modelo de placa de vídeo que está instalado e que comandos são necessários para mostrar a janela são problema do sistema operacional. Para acessar a placa de vídeo, ou qualquer outro componente instalado, o sistema operacional precisa de um driver, que é um pequeno programa que trabalha como um intérprete, permitindo que o sistema converse com o dispositivo. Cada placa de vídeo ou som possui um conjunto próprio de recursos e comandos que permitem usá-los. O driver converte esses diferentes comandos em comandos padrão, que são entendidos pelo sistema operacional. Embora as duas coisas sejam igualmente importantes, existe uma distinção entre o "hardware", que inclui todos os componentes físicos, como o processador, memória, placa-mãe, etc. e o "software", que inclui o sistema operacional, os programas e todas as informações armazenadas. Como diz a sabedoria popular, "hardware é o que você chuta, e software é o que você xinga". :p 30
  • 31. Arquiteturas Nos primórdios da informática, nas décadas de 50, 60 e 70, vários fabricantes diferentes disputavam o mercado. Cada um desenvolvia seus próprios computadores, que eram incompatíveis entre si. Tanto o hardware quanto os softwares para cada arquitetura não funcionavam nas outras. Isso causava uma ineficiência generalizada, pois cada fabricante tinha que desenvolver tudo, da placa-mãe ao sistema operacional. No começo dos anos 80, os fabricantes começaram a se especializar. Surgiu então a plataforma PC, uma arquitetura aberta que permite o uso de periféricos de diversos fabricantes e de diferentes sistemas operacionais. O principal concorrente é a Apple, que produz os Macs. Ao contrário dos PCs, eles possuem uma arquitetura fechada. A Apple desenvolve tanto os computadores quanto o sistema operacional. Naturalmente muita coisa é terceirizada, e várias empresas desenvolvem programas e acessórios, mas como a Apple precisa manter o controle de tudo e desenvolver muita coisa por conta própria, o custo dos Macs acaba sendo mais alto que o dos PCs. Isso faz com que (embora tenham seus atrativos) eles sejam muito menos populares. Atualmente os Macs possuem menos de 3% do mercado mundial, o que significa uma proporção de mais de 30 PCs para cada Mac. No início da década de 80, a concorrência era mais acirrada, e muitos achavam que o modelo da Apple poderia prevalecer, mas não foi o que aconteceu. Dentro da história da informática temos inúmeras histórias que mostram que os padrões abertos quase sempre prevalecem. Um ambiente onde existem várias empresas concorrendo entre si favorece o desenvolvimento de produtos melhores, o que cria uma demanda maior e, graças à economia de escala, permite preços mais baixos. Como os micros PC possuem uma arquitetura aberta, diversos fabricantes diferentes podem participar, desenvolvendo seus próprios componentes baseados em padrões já definidos. Temos então uma lista enorme de componentes compatíveis entre si, o que permite escolher as melhores opções entre diversas marcas e modelos de componentes. Qualquer novo fabricante, com uma placa-mãe mais barata ou um processador mais rápido, por exemplo, pode entrar no mercado, é apenas uma questão de criar a demanda necessária. A concorrência faz com que os fabricantes sejam obrigados a trabalhar com uma margem de lucro relativamente baixa, ganhando com base no volume de peças vendidas, o que é muito bom para nós que compramos. 31
  • 32. Um pouco sobre redes Montar uma rede já foi complicado e caro. Hoje em dia, praticamente todas as placas-mãe trazem placas de rede onboard, e os cabos e switchs são extremamente baratos, o que fez com que as redes se tornassem extremamente comuns, permitindo compartilhar a conexão com a internet, transferir arquivos, compartilhar impressoras e assim por diante. Como não falo sobre a configuração de redes em outros tópicos do livro, vou aproveitar para fazer um apanhado geral sobre o assunto. O uso mais corriqueiro é compartilhar a conexão com a internet. Você tem apenas uma linha ADSL ou apenas uma assinatura do serviço de acesso via cabo e pode acessar, ao mesmo tempo, a partir de todos os micros que tiver em sua casa ou empresa. Neste caso um dos micros atua como um ponto de encontro, enviando os pedidos de todos para a internet e devolvendo as respostas. Além de compartilhar a conexão, este servidor pode compartilhar arquivos, servir como firewall (protegendo a rede de acessos externos), rodar um proxy (que permite criar um cache de arquivos e páginas acessados, melhorando a velocidade da conexão), além de outros serviços. Outra necessidade comum é compartilhar arquivos. Antigamente (naquela época em que os micros tinham 512 KB de memória e os homens eram homens e escreviam seus próprios sistemas operacionais) era usado o protocolo DPL/DPC (disquete pra lá, disquete pra cá), mas ele não era muito eficiente, principalmente quando o amigo que estava esperando os arquivos estava em outra cidade. Hoje em dia, você pode compartilhar arquivos entre micros Windows simplesmente ativando o "Compartilhamento de arquivos para redes Microsoft" e o "Cliente para redes Microsoft" nas propriedades da rede e compartilhando as pastas desejadas (que passam a aparecer no ambiente de rede para os outros micros). No Linux, você pode compartilhar arquivos usando o Samba (que permite que os compartilhamentos sejam acessados também por máquinas Windows), NFS ou mesmo via SFTP (o módulo de transferência de arquivos do SSH). Os componentes básicos da rede são uma placa de rede para cada micro, os cabos e o hub ou switch que serve como um ponto de encontro, permitindo que todos os micros se enxerguem e conversem entre si. As placas de rede já foram componentes caros, mas como elas são dispositivos relativamente simples e o funcionamento é baseado em padrões abertos, qualquer um pode abrir uma fábrica de placas de rede, o que faz com que exista uma concorrência acirrada que obriga os fabricantes a produzirem placas cada vez mais baratas e trabalhem com margens de lucro cada vez mais estreitas. As placas de rede mais baratas chegam a ser vendidas no atacado por menos de três dólares. O preço final é um pouco mais alto naturalmente, mas não é difícil achar placas por 20 reais ou até menos. 32
  • 33. Placa de rede PCI Temos três padrões de redes Ethernet: de 10 megabits, 100 megabits e 1 gigabit. As placas são intercompatíveis, mas, ao usar placas de velocidades diferentes, as duas vão conversar na velocidade da placa mais lenta. As redes de 10 megabits são obsoletas, mas ainda é possível encontrar muitas instalações antigas por aí. Caso a rede já use cabos de categoria 5 (o número vem decalcado no cabo), é possível fazer um upgrade direto para 100 megabits, trocando apenas o hub e as placas. Cabo de rede categoria 5e Lembre-se de que a velocidade das placas é calculada em bits e não em bytes. Uma rede de 100 megabits permite uma taxa de transmissão (teórica) de 12.5 MB/s. Como além dos dados são transmitidas outras informações (a estrutura dos pacotes, retransmissões, códigos de correção de erros, etc.), a velocidade na prática fica sempre um pouco abaixo disso. Normalmente é possível transferir arquivos a no máximo 10.5 MB/s, com a taxa máxima variando sutilmente de acordo com a placa e o sistema operacional usado. A opção para quem precisa de mais velocidade são as redes Gigabit Ethernet, que transmitem a até 1000 megabits (125 megabytes) por segundo. As placas gigabit atuais são compatíveis com os mesmos cabos de par trançado categoria 5, usados pelas placas de 100 megabits, por isso a diferença de custo fica por conta apenas das placas e do switch. Como hoje em dia a maioria das placas-mãe incluem chipsets de rede gigabit onboard e os switchs também estão caindo de preço, elas estão se tornando cada vez mais comuns. Os cabos de rede também são um artigo relativamente barato. Os cabos de categoria 5, que usamos em redes de 100 ou 1000 megabits geralmente custam em torno de 80 centavos o metro, com mais alguns centavos por conector. Os cabos de categoria 5e são construídos dentro de normas um pouco mais estritas e normalmente custam o mesmo preço, por isso são sempre preferíveis. 33
  • 34. Você pode comprar quantos metros de cabo quiser, junto com o número necessário de conectores, e crimpar os cabos você mesmo, ou pode comprá- los já prontos. É no caso dos cabos já crimpados que o preço começa a variar de forma mais expressiva. Algumas lojas chegam a crimpar os cabos na hora, cobrando apenas o valor do material, enquanto outras vendem os cabos por preços exorbitantes. Cabos de rede de diferentes cores Para crimpar os cabos de rede, o primeiro passo é descascar os cabos, tomando cuidado para não ferir os fios internos, que são frágeis. Normalmente, o alicate inclui uma saliência no canto da guilhotina, que serve bem para isso. Existem também descascadores de cabos específicos para cabos de rede. Descascando o cabo de rede usando a saliência no próprio alicate É possível comprar alicates de crimpagem razoáveis por pouco mais de 50 reais, mas existem alicates de crimpagem para uso profissional que custam bem mais. Existem ainda "alicates" mais baratos, com o corpo feito de plástico, que são mais baratos, mas não valem o papelão da embalagem. Alicates de 34
  • 35. crimpagem precisam ser fortes e precisos, por isso evite produtos muito baratos. Os quatro pares do cabo são diferenciados por cores. Um par é laranja, outro é azul, outro é verde e o último é marrom. Um dos cabos de cada par tem uma cor sólida e o outro é mais claro ou malhado, misturando a cor e pontos de branco. É pelas cores que diferenciamos os 8 fios. O segundo passo é destrançar os cabos, deixando-os soltos. Eu prefiro descascar um pedaço grande do cabo, uns 6 centímetros, para poder organizar os cabos com mais facilidade e depois cortar o excesso, deixando apenas a meia polegada de cabo que entrará dentro do conector. O próprio alicate de crimpagem inclui uma guilhotina para cortar os cabos, mas você pode usar uma tesoura se preferir. Existem dois padrões para a ordem dos fios dentro do conector, o EIA 568B (o mais comum) e o EIA 568A. A diferença entre os dois é que a posição dos pares de cabos laranja e verde são invertidos dentro do conector. Existe muita discussão em relação com qual dos dois é "melhor", mas na prática não existe diferença de conectividade entre os dois padrões. A única observação é que você deve cabear toda a rede utilizando o mesmo padrão. Como o EIA 568B é de longe o mais comum, recomendo-o que você utilize-o ao crimpar seus próprios cabos. Muitos cabos são certificados para apenas um dos dois padrões; caso encontre instruções referentes a isso nas especificações, ou decalcadas no próprio cabo, crimpe os cabos usando o padrão indicado. No padrão EIA 568B, a ordem dos fios dentro do conector (em ambos os lados do cabo) é a seguinte: 1- Branco com Laranja 2- Laranja 3- Branco com Verde 4- Azul 5- Branco com Azul 6- Verde 7- Branco com Marrom 8- Marrom Os cabos são encaixados nesta ordem, com a trava do conector virada para baixo, como neste diagrama: Ou seja, se você olhar o conector "de cima", vendo a trava, o par de fios laranja estará à direita e, se olhar o conector "de baixo", vendo os contatos, eles estarão à esquerda. 35
  • 36. No caso de um cabo "reto" (straight), que vai ser usado para ligar o micro ao hub, você usa esta mesma disposição nas duas pontas do cabo. Existe ainda um outro tipo de cabo, chamado de "cross-over", que permite ligar diretamente dois micros, sem precisar do hub. Ele é uma opção mais barata quando você tem apenas dois micros. Neste tipo de cabo a posição dos fios é diferente nos dois conectores, de um dos lados a pinagem é a mesma de um cabo de rede normal, enquanto no outro a posição dos pares verde e laranja são trocados. Daí vem o nome cross-over, que significa, literalmente, "cruzado na ponta". Para fazer um cabo cross-over, você crimpa uma das pontas seguindo o padrão EIA 568B que vimos acima e a outra utilizando o padrão EIA 568A, onde são trocadas as posições dos pares verde e laranja: 1- Branco com Verde 2- Verde 3- Branco com Laranja 4- Azul 5- Branco com Azul 6- Laranja 7- Branco com Marrom 8- Marrom Esta mudança faz com que os fios usados para transmitir dados em um dos micros sejam conectados aos pinos receptores do outro, permitindo que eles conversem diretamente. A maioria dos hub/switchs atuais é capaz de "descruzar" os cabos automaticamente quando necessário, permitindo que você misture cabos normais e cabos cross-over dentro do cabeamento da rede. Graças a isso, a rede vai funcionar mesmo que você use um cabo cross-over para conectar um dos micros ao hub por engano. Na hora de crimpar é preciso fazer um pouco de força para que o conector fique firme. A função do alicate é fornecer pressão suficiente para que os pinos do conector RJ-45 (que internamente possuem a forma de lâminas) esmaguem os fios do cabo, alcançando o fio de cobre e criando o contato. Você deve retirar apenas a capa externa do cabo e não descascar individualmente os fios, pois isso, ao invés de ajudar, serviria apenas para causar mau contato, deixando frouxo o encaixe com os pinos do conector. 36
  • 37. Crimpando o cabo É preciso um pouco de atenção ao cortar e encaixar os fios dentro do conector, pois eles precisam ficar perfeitamente retos. Isso demanda um pouco de prática. No começo, você vai sempre errar algumas vezes antes de conseguir. Veja que o que protege os cabos contra as interferências externas são justamente as tranças. A parte destrançada que entra no conector é o ponto fraco do cabo, onde ele é mais vulnerável a todo tipo de interferência. Por isso, é recomendável deixar um espaço menor possível sem as tranças. Para crimpar cabos dentro do padrão, você precisa deixar menos de meia polegada de cabo (1.27 cm) destrançado. Você só vai conseguir isso cortando o excesso de cabo solto antes de encaixar o conector, como na foto: O primeiro teste para ver se os cabos foram crimpados corretamente é conectar um dos micros (ligado) ao hub e ver se os LEDs da placa de rede e do hub acendem. Isso mostra que os sinais elétricos enviados estão chegando até o hub e que ele foi capaz de abrir um canal de comunicação com a placa. Se 37
  • 38. os LEDs nem acenderem, então não existe o que fazer. Corte os conectores e tente de novo. Infelizmente, os conectores são descartáveis: depois de crimpar errado uma vez, você precisa usar outro novo, aproveitando apenas o cabo. Mais um motivo para prestar atenção. ;) Os cabos de rede devem ter um mínimo de 30 centímetros e um máximo de 100 metros, distância máxima que o sinal elétrico percorre antes que comece a haver uma degradação que comprometa a comunicação. Todas as placas são ligadas ao hub, ou ao switch, que serve como uma central, de onde os sinais de um micro são retransmitidos para os demais. É possível também ligar vários hubs ou switchs entre si (até um máximo de 7), formando redes maiores. Um exemplo de hub/switch barato A diferença entre um hub e um switch é que o hub apenas retransmite tudo o que recebe para todos os micros conectados a ele, é um tagarela. Isso faz com que apenas um micro consiga transmitir dados de cada vez e que todas as placas precisem operar na mesma velocidade (sempre nivelada por baixo, caso você coloque um micro com uma placa de 10 megabits na rede, a rede toda passará a trabalhar a 10 megabits). Os switchs, por sua vez, são aparelhos mais inteligentes. Eles fecham canais exclusivos de comunicação entre o micro que está enviando dados e o que está recebendo, permitindo que vários pares de micros troquem dados entre si ao mesmo tempo. Isso melhora bastante a velocidade em redes congestionadas, com muitos micros. Antigamente, existia uma grande diferença de preço entre os hubs burros e os switchs, mas os componentes caíram tanto de preço que a partir de um certo ponto a diferença se tornou insignificante, e os fabricantes passaram a fabricar apenas switchs, que por sua vez dividem-se em duas categorias: os switchs "de verdade", aparelhos caros, capazes de gerenciar o tráfego de uma quantidade maior de micros e que possuem várias ferramentas de gerenciamento e os "hub-switchs", os modelos mais simples e baratos, que usamos no dia-a-dia. 38
  • 39. Configuração da rede Assim como quase tudo na informática, as redes funcionam graças a uma mistura de hardware e software. A parte "física" da rede, que inclui as placas, cabos e switchs é responsável por transportar os sinais elétricos de um micro ao outro. Para que eles possam efetivamente se comunicar, é necessário utilizar um conjunto de normas e protocolos, que especificam como enviar informações e arquivos. Chegamos então ao TCP/IP, o protocolo comum que permite que computadores rodando diferentes programas e sistemas operacionais falem a mesma língua. Pense nas placas, hubs e cabos como o sistema telefônico e no TCP/IP como a língua falada que você usa para realmente se comunicar. Não adianta nada ligar para alguém na China que não saiba falar Português. Sua voz vai chegar até lá, mas a pessoa do outro lado não vai entender nada. Além da língua em si, existe um conjunto de padrões, como por exemplo dizer "alô" ao atender o telefone, dizer quem é, se despedir antes de desligar, etc. Ligar os cabos e ver se os leds do hub e das placas estão acesos é o primeiro passo. O segundo é configurar os endereços da rede para que os micros possam conversar entre si, e o terceiro é finalmente compartilhar a internet, arquivos, impressoras e o que mais você quer que os outros micros da rede tenham acesso. Graças ao TCP/IP, tanto o Windows quanto o Linux e outros sistemas operacionais em uso são intercompatíveis dentro da rede. Não existe problema para as máquinas com o Windows acessarem a internet através da conexão compartilhada no Linux, por exemplo. Independentemente do sistema operacional usado, as informações básicas para que ele possa acessar a internet através da rede são: - Endereço IP: Os endereços IP identificam cada micro na rede. A regra básica é que cada micro deve ter um endereço IP diferente, e todos devem usar endereços dentro da mesma faixa. O endereço IP é dividido em duas partes. A primeira identifica a rede à qual o computador está conectado (necessário, pois numa rede TCP/IP podemos ter várias redes conectadas entre si, veja o caso da internet), e a segunda identifica o computador (chamado de host) dentro da rede. É como se o mesmo endereço contivesse o número do CEP (que indica a cidade e a rua) e o número da casa. A parte inicial do endereço identifica a rede, enquanto a parte final identifica o computador dentro da rede. Quando temos um endereço "192.168.0.1", por exemplo, temos o micro "1" dentro da rede "192.168.0". Quando alguém diz "uso a faixa 192.168.0.x na minha rede", está querendo dizer justamente que apenas o último número muda de um micro para outro. 39
  • 40. Na verdade, os endereços IP são números binários, de 32 bits. Para facilitar a configuração e a memorização dos endereços, eles são quebrados em 4 números de 8 bits cada um. Os 8 bits permitem 256 combinações diferentes, por isso usamos 4 números de 0 a 255 para representá-los. Todos os endereços IP válidos na internet possuem dono. Seja alguma empresa ou alguma entidade certificadora que os fornece junto com novos links. Por isso não podemos utilizar nenhum deles a esmo. Quando você conecta na internet, seu micro recebe um (e apenas um) endereço IP válido, emprestado pelo provedor de acesso, algo como por exemplo "200.220.231.34". É através desse número que outros computadores na Internet podem enviar informações e arquivos para o seu. Quando quiser configurar uma rede local, você deve usar um dos endereços reservados, endereços que não existem na internet e que por isso podemos utilizar à vontade em nossas redes particulares. Algumas das faixas reservadas de endereços são: 10.x.x.x, 172.16.x.x até 172.31.x.x e 192.168.0.x até 192.168.255.x Você pode usar qualquer uma dessas faixas de endereços na sua rede. Uma faixa de endereços das mais usadas é a 192.168.0.x, onde o "192.168.0." vai ser igual em todos os micros da rede e muda apenas o último número, que pode ser de 1 até 254 (o 0 e o 255 são reservados para o endereço da rede e para o sinal de broadcast). Se você tiver 4 micros na rede, os endereços deles podem ser, por exemplo, 192.168.0.1, 192.168.0.2, 192.168.0.3 e 192.168.0.4. - Máscara de sub-rede: A máscara é um componente importante do endereço IP. É ela que explica para o sistema operacional como é feita a divisão do endereço, ou seja, quais dos 4 octetos compõem o endereço da rede e quais contêm o endereço do host, isto é, o endereço de cada micro dentro da rede. Ao contrário do endereço IP, que é formado por valores entre 0 e 255, a máscara de sub-rede é formada por apenas dois valores: 0 e 255, como em 255.255.0.0 ou 255.0.0.0, onde um valor 255 indica a parte do endereço IP referente à rede, e um valor 0 indica a parte do endereço IP referente ao host dentro da rede. Se você está usando a faixa 192.168.0.x, por exemplo, que é um endereço de classe C, então a máscara de sub-rede vai ser 255.255.255.0 para todos os micros. Você poderia usar uma máscara diferente: 255.255.0.0 ou mesmo 255.0.0.0, desde que a máscara seja a mesma em todos os micros. Se você tiver dois micros, 192.168.0.1 e 192.168.0.2, mas um configurado com a máscara "255.255.255.0" e o outro com "255.255.0.0", você terá na verdade duas redes diferentes. Um dos micros será o "1" conectado na rede "192.168.0", e o outro será o "0.2", conectado na rede "192.168". - Default Gateway (gateway padrão): Quando você se conecta à internet através de um provedor de acesso qualquer, você recebe apenas um endereço IP válido. A princípio, isso permitiria que apenas um micro acessasse a web, 40
  • 41. mas é possível compartilhar a conexão entre vários micros via NAT, opção disponível tanto no Windows quanto no Linux. Quando você compartilha a conexão entre vários micros, apenas o servidor que está compartilhando a conexão possui um endereço IP válido, só ele "existe" na internet. Todos os demais acessam através dele. O default gateway ou gateway padrão é justamente o micro da rede que tem a conexão, é ele que os outros consultarão quando precisarem acessar qualquer coisa na internet. Por exemplo, se você montar uma rede doméstica com 4 PCs, usando os endereços IP 192.168.0.1, 192.168.0.2, 192.168.0.3 e 192.168.0.4, e o PC 192.168.0.1 estiver compartilhando o acesso à internet, as outras três estações deverão ser configuradas para utilizar o endereço 192.168.0.1 como gateway padrão. - Servidor DNS: Memorizar os 4 números de um endereço IP é muito mais simples do que memorizar o endereço binário. Mas, mesmo assim, fora os endereços usados na sua rede interna, é complicado sair decorando um monte de endereços diferentes. O DNS (domain name system) permite usar nomes amigáveis em vez de endereços IP para acessar servidores, um recurso básico que existe praticamente desde os primórdios da internet. Quando você se conecta à internet e acessa o endereço http://www.guiadohardware.net, é um servidor DNS que converte o "nome fantasia" no endereço IP real do servidor, permitindo que seu micro possa acessar o site. Para tanto, o servidor DNS mantém uma tabela com todos os nomes fantasia, relacionados com os respectivos endereços IP. A maior dificuldade em manter um servidor DNS é justamente manter esta tabela atualizada, pois o serviço tem que ser feito manualmente. Dentro da internet, temos várias instituições que cuidam dessa tarefa. No Brasil, por exemplo, temos a FAPESP. Para registrar um domínio é preciso fornecer à FAPESP o endereço IP real do servidor onde a página ficará hospedada. A FAPESP cobra uma taxa de manutenção anual de R$ 30 por esse serviço. Servidores DNS também são muito usados em intranets, para tornar os endereços mais amigáveis e fáceis de guardar. Faz parte da configuração da rede informar os endereços DNS do provedor (ou qualquer outro servidor que você tenha acesso), que é para quem seu micro irá perguntar sempre que você tentar acessar qualquer coisa usando um nome de domínio e não um endereço IP. O jeito mais fácil de conseguir os endereços do provedor é simplesmente ligar para o suporte e perguntar. O ideal é informar dois endereços, assim se o primeiro estiver fora do ar, você continua acessando através do segundo. Também funciona com um endereço só, mas você perde a redundância. Exemplos de endereços de servidores DNS são: 200.204.0.10 e 200.204.0.138. 41
  • 42. Um exemplo de configuração de rede completa para um dos micros da rede, que vai acessar a internet através do micro que está compartilhando a conexão seria: IP: 192.168.0.2 Máscara: 255.255.255.0 Gateway: 192.168.0.1 (o endereço do micro compartilhando a conexão) DNS: 200.204.0.10 200.204.0.138 O micro que está compartilhando a conexão, por sua vez, terá duas placas de rede, uma para a internet e outra para a rede local, por isso vai ter uma configuração separada para cada uma. A configuração da internet é feita da forma normal, de acordo com o tipo de conexão que você usa, e a configuração da rede interna segue o padrão que vimos até aqui. É possível usar também um servidor DHCP, que faz com que os clientes possam obter a configuração da rede automaticamente, a partir do servidor. Hoje em dia, mesmo os modems ADSL mais simples oferecem a opção de ativar um servidor DHCP, onde você só precisa especificar a faixa de endereços que será fornecida aos clientes. Também é possível ativar o DHCP ao compartilhar a conexão, tanto no Linux, quanto no Windows. Aqui temos um exemplo de configuração do servidor DHCP, num modem ADSL Kayomi LP-AL2011P. Assim como outros modems atuais, ele possui uma interface de administração que pode ser acessada via navegador, através de outro micro da rede: 42
  • 43. Redes wireless Apesar de inicialmente muito mais caras, as redes wireless estão gradualmente caindo de preço e se popularizando. Além da questão da praticidade, as redes wireless podem ser utilizadas em casos onde, por um motivo ou outro, não é viável usar cabos. Em uma rede wireless, o hub é substituído pelo ponto de acesso (access- point em inglês). Ele tem basicamente a mesma função: retransmitir os pacotes de dados, de forma que todos os micros da rede os recebam. Em geral os pontos de acesso possuem uma saída para serem conectados num hub tradicional, permitindo que você "junte" os micros da rede cabeada com os que estão acessando através da rede wireless, formando uma única rede. Ao contrário dos hubs, os pontos de acesso são dispositivos inteligentes, que podem ser configurados através de uma interface de administração via web. Você se conecta num endereço específico usando o navegador (que muda de aparelho para aparelho, mas pode ser encontrado facilmente no manual), loga- se usando uma senha padrão e altera as configurações (e senhas!) de acordo com as necessidades da sua rede. Ponto de acesso wireless Ao contrário de uma rede cabeada (onde podemos utilizar um switch), em qualquer rede wireless a banda da rede é compartilhada entre os micros que estiverem transmitindo dados simultaneamente. Isso acontece por que não existem cabos independentes ligando o ponto de acesso a cada micro, mas um único meio de transmissão (o ar), o que faz com que a rede opere como se todos os micros estivessem ligados ao mesmo cabo. Enquanto um transmite, os outros esperam. Conforme aumenta o número de micros e aumenta o tráfego da rede, mais cai o desempenho. Outra questão é que a potência do sinal decai conforme aumenta a distância, enquanto a qualidade decai pela combinação do aumento da distância e dos 43
  • 44. obstáculos pelo caminho. É por isso que num campo aberto o alcance será muito maior do que dentro de um prédio, por exemplo. Conforme a potência e a qualidade do sinal se degradam, o ponto de acesso pode diminuir a velocidade de transmissão, a fim de melhorar a confiabilidade da transmissão. A velocidade pode cair para 5.5 megabits, 2 megabits ou chegar a apenas 1 megabit por segundo antes que o sinal se perca completamente. Existem três padrões diferentes de rede wireless em uso. O primeiro (e mais lento) é o 802.11b, onde a rede opera a uma taxa teórica de 11 megabits. O seguinte é o 802.11a, que ao contrário do que o nome dá a entender, é mais recente que o 802.11b. As redes 802.11a são mais rápidas (54 megabits) e são mais resistentes a interferências, pois operam na faixa de freqüência dos 5 GHz, em vez dos 2.4 GHz usados no 802.11b. A desvantagem é que, pelo mesmo motivo (a freqüência mais alta), o alcance das redes 802.11a é menor, cerca de metade do alcance de uma rede 802.11b. As placas 802.11a são relativamente raras e, como a maioria é capaz de operar nos dois padrões, muitas delas acabam operando a 11 megabits, juntando-se a redes 802.11b já existentes. Finalmente, temos o 802.11g, o padrão atual. Ele junta o melhor dos dois mundos, operando a 54 megabits, como no 802.11a, e trabalhando na mesma faixa de freqüência do 802.11b (2.4 GHz), o que mantém o alcance inicial. Para que a rede funcione a 54 megabits, é necessário que tanto o ponto de acesso, quanto todas as placas sejam 802.11g, caso contrário a rede inteira passa a operar a 11 megabits, a fim de manter compatibilidade com as placas antigas. Muitos pontos de acesso permitem desativar esse recurso, fazendo com que as placas de 11 megabits simplesmente fiquem fora da rede, sem prejudicar o desempenho das demais. As redes wireless também são redes Ethernet e também usam o TCP/IP. Mas, além da configuração dos endereços IP, máscara, gateway, etc., feita da mesma forma que numa rede cabeada, temos um conjunto de parâmetros adicional. A configuração da rede wireless é feita em duas etapas. Primeiro você precisa configurar o ESSID, o canal e (caso usada encriptação) a chave WEP ou WPA que dá acesso à rede. O ESSID é uma espécie de nome de rede. Dois pontos de acesso, instalados na mesma área, mas configurados com dois ESSIDs diferentes formam duas redes separadas, permitindo que a sua rede não interfira com a do vizinho, por exemplo. Mesmo que existam várias redes na mesma sala, indicar o ESSID permite que você se conecte à rede correta. Em seguida temos o canal, que novamente permite que vários pontos de acesso dentro da mesma área trabalhem sem interferir entre si. Temos um total de 16 canais (numerados de 1 a 16), mas a legislação de cada país permite o uso de apenas alguns deles. Nos EUA, por exemplo, é permitido usar apenas 44
  • 45. do 1 ao 11 e na França apenas do 10 ao 13. Essa configuração de país é definida na configuração do ponto de acesso. O ESSID sozinho provê uma segurança muito fraca, pois qualquer um que soubesse o nome da rede poderia se conectar a ele ou mesmo começar a escutar todas as conexões. Embora o alcance normal de uma rede wireless, usando as antenas padrão das placas e os pontos de acesso, normalmente não passe de 30 ou 50 metros (em ambientes fechados) usando antenas maiores, de alto ganho e conseguindo uma rota sem obstáculos, é possível captar o sinal de muito longe, chegando a 2 ou até mesmo a 5 km, de acordo com a potência de sinal do ponto de acesso usado. Como é praticamente impossível impedir que outras pessoas captem o sinal da sua rede, a melhor solução é encriptar as informações, de forma que ela não tenha utilidade fora do círculo autorizado a acessar a rede. Existem atualmente três padrões de encriptação, o WEP de 64 bits, o WEP de 128 bits e o WPA, o padrão mais recente e mais seguro. Embora nenhum dos três seja livre de falhas, elas são uma camada essencial de proteção, que evita que sua rede seja um alvo fácil. É como as portas de uma casa. Nenhuma porta é impossível de arrombar, mas você não gostaria de morar numa casa sem portas. O WEP é relativamente fácil de quebrar, usando ferramentas como o kismet e ao aircrack, mas o WPA pode ser considerado relativamente seguro. Ao usar WEP, você define uma chave de 10 (WEP de 64 bits) ou 26 (WEP de 128 bits) caracteres em hexa, onde podem ser usados números de 0 a 9 e as letras A, B, C, D, E e F. Também é possível usar caracteres ASCII (incluindo acentuação e todo tipo de caracteres especiais); nesse caso as chaves terão respectivamente 5 e 13 caracteres. A regra básica é que os micros precisam possuir a chave correta para se associarem ao ponto de acesso e acessarem a rede. Em geral os pontos de acesso permitem que você especifique várias chaves diferentes, de forma que cada micro pode usar uma diferente. Capítulo 1: 54 anos de história: do ENIAC ao Athlon Assim como em outras áreas, os computadores começaram como aparelhos rudimentares, que eram capazes de desempenhar apenas tarefas muito simples. Mesmo componentes básicos, como o HD e outros tipos de unidade de armazenamento foram introduzidos apenas muito mais tarde. Estudar sobre a história da informática permite entender melhor como os PCs atuais funcionam, já que uma coisa é consequência da outra. Do ENIAC, construído em 1945, até os processadores modernos, tivemos um longo 45
  • 46. caminho. Este capítulo é justamente um "resumo da ópera", que resume a história da informática, das válvulas e relês até o Athlon, lançado em 1999, passando pelos computadores das décadas de 50, 60 e 70, os primeiros computadores pessoais e a era dos processadores modernos, que começou com o 386. Os primórdios A história da informática nos remete ao final do século XIX. Na época dos nossos tataravôs, os computadores já existiam, apesar de extremamente rudimentares. Eram os computadores mecânicos, que realizavam cálculos através de um sistema de engrenagens, acionado por uma manivela ou outro sistema mecânico qualquer. Esse tipo de sistema, comum na forma de caixas registradoras, predominou até o início da década de 70, quando as calculadoras portáteis se popularizaram. No final do século XIX, surgiu o relê, um dispositivo eletromecânico, formado por um magneto móvel, que se deslocava unindo dois contatos metálicos. O relê foi muito usado no sistema telefônico, no tempo das centrais analógicas. Nas localidades mais remotas, algumas continuam em atividade até os dias de hoje. relê Os relês podem ser considerados como uma espécie de antepassados dos transístores. Suas limitações eram o fato de serem relativamente caros, grandes demais e, ao mesmo tempo, muito lentos: um relê demora mais de um milésimo de segundo para fechar um circuito. Apesar disso, os relês são usados até hoje em alguns dispositivos. Um exemplo são os modems discados, onde o relê é usado para ativar o uso da linha telefônica, ao discar. Eles são usados também em estabilizadores e nobreaks (geralmente nos modelos de baixo custo), onde são os responsáveis pelos "clicks" que você ouve durante as variações de tensão. O fato de usar relês e fazer barulho, não é um indício de qualidade do estabilizador ou nobreak (muito pelo contrário), mas infelizmente muitas pessoas associam isso com o fato do aparelho estar funcionando, o que faz com que produtos de baixa qualidade continuem sendo produzidos e vendidos. 46
  • 47. Voltando à história, também no final do século XIX, surgiram as primeiras válvulas. As válvulas foram usadas para criar os primeiros computadores eletrônicos, na década de 40. As válvulas têm seu funcionamento baseado no fluxo de elétrons no vácuo. Tudo começou numa certa tarde quando Thomas Edson, inventor da lâmpada elétrica, estava brincando com a sua invenção. Ele percebeu que, ao ligar a lâmpada ao pólo positivo de uma bateria e uma placa metálica ao pólo negativo, era possível medir uma certa corrente fluindo do filamento da lâmpada até a chapa metálica, mesmo que não existisse contato entre eles. Havia sido descoberto o efeito termoiônico, o princípio de funcionamento das válvulas. As válvulas já eram bem mais rápidas que os relês, atingiam freqüências de alguns megahertz, o problema é que esquentavam demais, consumiam muita eletricidade e se queimavam com facilidade. Era fácil usar válvulas em rádios, que utilizavam poucas, mas construir um computador, que usava milhares delas era extremamente complicado e caro. Apesar de tudo isso, os primeiros computadores começaram a surgir durante a década de 40, naturalmente com propósitos militares. Os principais usos eram a codificação e a decodificação de mensagens e cálculos de artilharia. O ENIAC Sem dúvida, o computador mais famoso daquela época foi o ENIAC (Electronic Numerical Integrator Analyzer and Computer), construído em 1945. O ENIAC era composto por nada menos do que 17.468 válvulas, além de 1.500 relês e um grande número de capacitores, resistores e outros componentes. No total, ele pesava 30 toneladas e era tão volumoso que ocupava um grande galpão. Outro grave problema era o consumo elétrico: um PC típico atual, com um monitor LCD, consome cerca de 100 watts de energia, enquanto o ENIAC consumia incríveis 200 kilowatts. Construir esse monstro custou ao exército Americano 468.000 dólares da época, que correspondem a pouco mais de US$ 10 milhões em valores corrigidos. Porém, apesar do tamanho, o poder de processamento do ENIAC é ridículo para os padrões atuais, suficiente para processar apenas 5.000 adições, 357 multiplicações ou 38 divisões por segundo. O volume de processamento do ENIAC foi superado pelas calculadoras portáteis ainda na década de 70 e, hoje em dia, mesmo as calculadoras de bolso, das mais baratas, são bem mais poderosas do que ele. A idéia era construir um computador para quebrar códigos de comunicação e realizar vários tipos de cálculos de artilharia para ajudar as tropas aliadas durante a Segunda Guerra Mundial. Porém, o ENIAC acabou sendo terminado exatos 3 meses depois do final da guerra e foi usado durante a Guerra Fria, contribuindo por exemplo no projeto da bomba de hidrogênio. 47
  • 48. ENIAC (foto do acervo do Exército dos EUA) Se você acha que programar em C ou em Assembly é complicado, imagine como era a vida dos programadores daquela época. A programação do ENIAC era feita através de 6.000 chaves manuais e, ao invés de ser feita através de teclas, toda a entrada de dados era feita através de cartões de cartolina perfurados, que armazenavam poucas operações cada um. Uma equipe preparava os cartões, incluindo as operações a serem realizadas, formando uma pilha, outra ia trocando os cartões no leitor do ENIAC, e uma terceira "traduzia" os resultados, também impressos em cartões, para o padrão decimal. O ENIAC também possuía sérios problemas de manutenção. A cada 5 minutos, em média, alguma das válvulas se queimava, tornando necessárias manutenções freqüentes. A seguir está a foto de uma válvula muito usada na década de 40: Válvula Vendo essa foto, é fácil imaginar por que as válvulas eram tão problemáticas e caras: elas eram simplesmente complexas demais. Mesmo assim, na época, as válvulas eram o que existia de mais avançado, permitindo que computadores como o ENIAC executassem, em poucos segundos, cálculos que um matemático equipado com uma calculadora mecânica demorava horas para executar. 48
  • 49. O transistor Durante a década de 1940 e início da de 1950, a maior parte da indústria continuou trabalhando no aperfeiçoamento das válvulas, obtendo modelos menores e mais confiáveis. Porém, vários pesquisadores, começaram a procurar alternativas menos problemáticas. Várias dessas pesquisas tinham como objetivo o estudo de novos materiais, tanto condutores quanto isolantes. Os pesquisadores começaram então a descobrir que alguns materiais não se enquadravam nem em um grupo nem em outro, pois, de acordo com a circunstância, podiam atuar tanto como isolantes quanto como condutores, formando uma espécie de grupo intermediário que foi logo apelidado de grupo dos semicondutores. Haviam encontrado a chave para desenvolver o transístor. O primeiro protótipo surgiu em 16 de dezembro de 1947 (veja a foto a seguir), consistindo em um pequeno bloco de germânio (que na época era junto com o silício o semicondutor mais pesquisado) e três filamentos de ouro. Um filamento era o pólo positivo, o outro, o pólo negativo, enquanto o terceiro tinha a função de controle. Tendo apenas uma carga elétrica no pólo positivo, nada acontecia: o germânio atuava como um isolante, bloqueando a corrente. Porém, quando uma certa tensão elétrica era aplicada usando o filamento de controle, um fenômeno acontecia e a carga elétrica passava a fluir para o pólo negativo. Haviam criado um dispositivo que substituía a válvula, que não possuía partes móveis, gastava uma fração da eletricidade e, ao mesmo tempo, era muito mais rápido. O primeiro transístor O primeiro transístor era muito grande, mas não demorou muito para que esse modelo inicial fosse aperfeiçoado. Durante a década de 1950, o transístor foi aperfeiçoado e passou a gradualmente dominar a indústria, substituindo 49
  • 50. rapidamente as problemáticas válvulas. Os modelos foram diminuindo de tamanho, caindo de preço e tornando-se mais rápidos. Alguns transístores da época podiam operar a até 100 MHz. Claro que essa era a freqüência que podia ser alcançada por um transístor sozinho, nos computadores da época, a freqüência de operação era muito menor, já que em cada ciclo de processamento o sinal precisa passar por vários transístores. Mas, o grande salto foi a substituição do germânio pelo silício. Isso permitiu miniaturizar ainda mais os transístores e baixar seu custo de produção. Os primeiros transístores de junção comerciais (já similares aos atuais) foram produzidos a partir de 1960 pela Crystalonics, decretando o final da era das válvulas. A idéia central no uso do silício para construir transístores é que, adicionando certas substâncias em pequenas quantidades, é possível alterar as propriedades elétricas do silício. As primeiras experiências usavam fósforo e boro, que transformavam o silício em condutor por cargas negativas ou em condutor por cargas positivas, dependendo de qual dos dois materiais fosse usado. Essas substâncias adicionadas ao silício são chamadas de impurezas, e o silício "contaminado" por elas é chamado de silício dopado. O funcionamento de um transístor é bastante simples, quase elementar. É como naquele velho ditado "as melhores invenções são as mais simples". As válvulas eram muito mais complexas que os transístores e, mesmo assim, foram rapidamente substituídas por eles. Um transístor é composto basicamente por três filamentos, chamados de base, emissor e coletor. O emissor é o pólo positivo, o coletor, o pólo negativo, enquanto a base é quem controla o estado do transístor, que como vimos, pode estar ligado ou desligado. Veja como esses três componentes são agrupados num transístor moderno: transístor Quando o transístor está desligado, não existe carga elétrica na base, por isso, não existe corrente elétrica entre o emissor e o coletor. Quando é aplicada uma certa tensão na base, o circuito é fechado e é estabelecida a corrente entre o emissor e o receptor. Cada transístor funciona como uma espécie de interruptor, que pode estar ligado ou desligado, como uma torneira que pode estar aberta ou fechada, ou mesmo como uma válvula. A diferença é que o transístor não tem partes 50
  • 51. móveis como uma torneira e é muito menor, mais barato, mais durável e muito mais rápido que uma válvula. A mudança de estado de um transístor é feita através de uma corrente elétrica. Cada mudança de estado pode então comandar a mudança de estado de vários outros transístores ligados ao primeiro, permitindo o processamento de dados. Num transístor essa mudança de estado pode ser feita bilhões de vezes por segundo, porém, a cada mudança de estado é consumida uma certa quantidade de eletricidade, que é transformada em calor. É por isso que quanto mais rápidos tornam-se os processadores, mais eles se aquecem e mais energia consomem. Um 386, por exemplo, consumia pouco mais de 1 watt de energia e podia funcionar sem nenhum tipo de resfriamento. Um 486DX-4 100 consumia cerca de 5 watts e precisava de um cooler simples, enquanto um Athlon X2 chega a consumir 89 watts de energia (no X2 5600+) e precisa de no mínimo um bom cooler para funcionar bem. Em compensação, a versão mais rápida do 386 operava a apenas 40 MHz, enquanto os processadores atuais já superaram a barreira dos 3.0 GHz. O grande salto veio quando descobriu-se que era possível construir vários transístores sobre o mesmo wafer de silício. Isso permitiu diminuir de forma gritante o custo e tamanho dos computadores. Entramos então na era do microchip. O primeiro microchip comercial foi lançado pela Intel em 1971 e chamava-se 4004. Como o nome sugere, ele era um processador que manipulava palavras de apenas 4 bits (embora já trabalhasse com instruções de 8 bits). Ele era composto por pouco mais de 2000 transístores e operava a apenas 740 kHz. Embora fosse muito limitado, ele foi muito usado em calculadoras, área em que representou uma pequena revolução. Mais do que isso, o sucesso do 4004 mostrou a outras empresas que os microchips eram viáveis, criando uma verdadeira corrida evolucionária, em busca de processadores mais rápidos e avançados. Intel 4004 Em 1972 surgiu o Intel 8008, o primeiro processador de 8 bits e, em 1974, foi lançado o Intel 8080, antecessor do 8088, que foi o processador usado nos 51
  • 52. primeiros PCs. Em 1977 a AMD passou a vender um clone do 8080, inaugurando a disputa Intel x AMD, que continua até os dias de hoje. O 8080 da AMD Uma observação é que o termo original, em inglês é "transistor", sem o acento. O problema é que em português pronunciamos "transístor" e não "transistor", por isso é comum que ao escrever em português o termo seja "aportuguesado" e escrito com o acento. O mesmo acontece com a palavra "micron", que é muitas vezes escrita com acento (mícron), indicando a pronúncia mais usada. Nestes casos você fica livre para escrever da forma que preferir. Como são fabricados os processadores O componente básico para qualquer chip é o wafer de silício que é obtido através da fusão do silício junto com os materiais que permitirão sua dopagem posteriormente. O silício é um dos materiais mais abundantes da natureza, o grande problema é que os wafers de silício precisam ser compostos de silício 99,9999% puro, o que demanda um caro e complicado processo de purificação. Qualquer impureza que passe despercebida nessa fase acabará resultando em um chip defeituoso mais adiante. Inicialmente são produzidos cilindros, com de 20 a 30 centímetros de diâmetro, que são posteriormente cortados em fatias bastante finas: Essas "fatias" são polidas e tratadas, obtendo os wafers de silício. A qualidade do wafer determinará o tipo de chip que poderá ser construído com base nele. Wafers de baixa qualidade, usados para construir circuitos rudimentares, com poucos milhares de transístores, podem ser comprados a preços bastante baixos, a partir de milhares de fornecedores diferentes. Entretanto, para produzir um processador moderno, é preciso utilizar wafers de altíssima qualidade, que são extremamente caros. 52
  • 53. Embora o silício seja um material extremamente barato e abundante, toda a tecnologia necessária para produzir os wafers faz com que eles estejam entre os produtos mais caros produzidos pelo homem. Cada wafer de 30 centímetros custa mais de 20 mil dólares para um fabricante como a Intel, mesmo quando comprados em grande quantidade. Cada wafer é usado para produzir vários processadores, que no final da produção são separados e encapsulados individualmente. Não seria possível mostrar todos os processos usados na fabricação de um processador, mas para lhe dar uma boa idéia de como eles são produzidos, vou mostrar passo a passo a construção de um único transístor. Imagine que um Core 2 Duo possui 291 milhões de transístores e cada wafer permite produzir algumas centenas de processadores. Tudo começa com o wafer de silício em seu estado original: A primeira etapa do processo é oxidar a parte superior do wafer, transformando-a em dióxido de silício. Isso é feito através da exposição do wafer a gases corrosivos e a altas temperaturas. A fina camada de dióxido de silício que se forma é que será usada como base para a construção do transístor: Em seguida é aplicada uma camada bastante fina de um material fotossensível sobre a camada de dióxido de silício. Usando uma máscara de litografia, é jogada luz ultravioleta apenas em algumas áreas da superfície. A máscara tem um padrão diferente para cada área do processador, de acordo com o desenho que se pretende obter: 53
  • 54. A técnica usada aqui é chamada de litografia óptica. Existem diversas variações da tecnologia, como a EUVL (Extreme Ultra Violet Lithography), usada nos processadores atuais. Quanto mais avançada a técnica usada, menores são os transístores, permitindo o desenvolvimento de processadores mais complexos e rápidos. A camada fotossensível é originalmente sólida, mas ao ser atingida pela luz ultravioleta transforma-se numa substância gelatinosa, que pode ser facilmente removida. Depois de remover as partes moles da camada fotossensível (através de um banho químico), temos algumas áreas do dióxido de silício expostas, e outras que continuam cobertas pelo que restou da camada: O wafer passa por um novo banho químico (baseado em compostos diferentes), que remove as partes do dióxido de silício que não estão protegidas pela camada fotossensível. Apesar disso, o restante continua intacto: Finalmente, é removida a parte que restou da camada fotossensível. Note que, como temos substâncias diferentes, é possível remover uma camada de cada vez, ora o dióxido de silício, ora a própria camada fotossensível. Com isto é possível "desenhar" as estruturas necessárias para formar os transístores: 54
  • 55. Cada transístor é formado para várias camadas, dependendo do projeto do processador. Neste exemplo, temos um transístor simples, mas os processadores atuais utilizam um numero muito maior de camadas, mais de vinte em alguns casos, dependendo da densidade que o fabricante pretende alcançar. Começa então a construção da segunda camada do transístor. Inicialmente o wafer passa novamente pelo processo de oxidação inicial, sendo coberto por uma nova camada (desta vez bem mais fina) de dióxido de silício. Note que apesar da nova camada de dióxido de silício, o desenho anterior é mantido. Em seguida é aplicada uma camada de cristal de silício sobre a estrutura anterior. Sobre ela é aplicada uma nova camada de material fotossensível, que será usado na fase seguinte: O waffer passa novamente pelo processo de litografia, desta vez utilizando uma máscara diferente. O processo de fabricação das diferentes camadas do processador baseia-se justamente na repetição deste processo básico, alternando o uso de diferentes máscaras de litografia e banhos químicos: 55
  • 56. Novamente, a parte da camada fotossensível que foi exposta à luz é removida, deixando expostas partes das camadas de cristal de silício e dióxido de silício, que são removidas em seguida: Como na etapa anterior, é removido o que restou da camada fotossensível. Terminamos a construção da segunda camada do transístor: Chegamos a uma das principais etapas do processo de fabricação, que é a aplicação das impurezas, que transformarão partes do wafer de silício num material condutor. Essas impurezas também são chamadas de íons. Note que os íons aderem apenas à camada de silício que foi exposta no processo anterior e não às camadas de dióxido de silício ou à camada de cristal de silício: 56
  • 57. É adicionada então uma terceira camada, composta por um tipo diferente de cristal de silício, e novamente é aplicada a camada fotossensível sobre todo o material: O wafer passa novamente pelo processo de litografia, usando mais uma vez uma máscara diferente: As partes do material fotossensível expostas à luz são removidas, expondo partes das camadas inferiores, que são removidas em seguida: Temos agora pronta a terceira camada do transístor. Veja que a estrutura do transístor já está quase pronta, faltando apenas os filamentos condutores: 57
  • 58. Uma finíssima camada de metal é aplicada sobre a estrutura anterior. Nos processadores atuais, que são produzidos através de uma técnica de produção de 0.065 micron, essa camada metálica tem o equivalente a apenas 3 átomos de espessura. O processo de aplicação da camada fotossensível, de litografia e de remoção das camadas, é aplicado mais uma vez, com o objetivo de remover as partes indesejadas da camada de metal. Finalmente temos o transístor pronto. Cada processador é constituído por vários milhões de transístores, divididos em diversos grupos de componentes, entre eles as unidades de execução (onde as instruções são realmente processadas) e os caches. Como todo processador atual processa várias instruções por ciclo, são incluídos diversos circuitos adicionais, que organizam e ordenam as instruções, de forma a aproveitar da melhor maneira possível os recursos disponíveis. Como você viu, embora absurdamente mais avançado, o processo de fabricação dos processadores é muito similar ao processo de revelação de fotos, onde a imagem do negativo é impressa no papel fotográfico usando luz. O "negativo" neste caso são as retículas (as máscaras de litografia). Embora nesse exemplo tenha mostrado a produção de um único transístor, na produção real são usadas máscaras contendo todos os componentes do processador. No final do processo, teríamos um processador inteiro pronto, em toda a sua complexidade, ao invés de um transístor solitário. No começo (início da década de 70), os filmes usados para produzir as máscaras de litografia eram, literalmente, feitos a mão, usando rubylith, um filme plástico de duas camadas, que é ainda usado por artistas gráficos. O engenheiro cortava a camada superior usando um estilete, criando um desenho das trilhas e outros componentes que seriam posteriormente "impressos" no wafer de silício formando o chip. Eram usadas várias máscaras diferentes, que deveriam combinar-se com precisão absoluta. Esta é uma foto antiga, 58
  • 59. publicada no Intel Technology Journal, que mostra como o trabalho era delicado: Existiram inclusive histórias engraçadas, como o Intel 3101, o primeiro chip de memória da Intel. A primeira versão acabou ficando com apenas 63 bits (ao invés de 64) devido a um erro em uma das máscaras de litografia ;). As máscaras feitas no rubylith eram depois transferidas para um filme, através de um processo de redução, gerando as retículas usadas na produção. Devido à enorme precisão envolvida, são utilizados espectros de luz não-visível, utilizando comprimentos de onda incrivelmente curtos, geradas a partir de laser ou pulsos de de descarga. Atualmente, o processo de produção das máscaras é completamente automatizado. O próprio desenvolvimento dos processadores mudou. Ao invés de projetar os circuitos manualmente, os engenheiros utilizam um HDL (hardware description language), como o VHDL ou o Verilog (os mais usadas atualmente), que são uma espécie de linguagem de programação para o desenvolvimento de processadores, onde o engenheiro "programa" as instruções que devem ser executadas e outras características do processador, e o HDL gera o projeto do chip. Naturalmente, ainda é possível desenvolver processadores (ou otimizar componentes internos específicos) usando o processo manual (assim como é possível programar em assembly), mas o processo se torna muito mais lento e trabalhoso. É comum que os processadores passem por diversas revisões 59
  • 60. durante sua via útil, onde a equipe de desenvolvimento começa com um design produzido através de um HDL e depois trata de otimizá-lo sucessivamente, obtendo assim ganhos de performance e outras melhorias. No final do processo, temos um grande arquivo, que é enviado para a fábrica, onde são produzidas as retículas e feitas as demais fases do processo. Uma vez terminado o projeto, os engenheiros precisam esperar várias semanas até que os primeiros chips funcionais sejam produzidos. Qualquer erro que chegue até a fase de produção geraria um prejuízo de vários milhões, por isso o projeto passa por inúmeras revisões. As máquinas de produção (chamadas steppers) repetem a "impressão" várias vezes, até cobrir toda a área do wafer de silício. Em seguida o wafer é movido para a máquina com a máscara seguinte e assim continua, até que o processo esteja completo. Todo o processo é feito numa sala limpa, por engenheiros usando os trajes de astronauta que aparecem nos comerciais da Intel. Todo cuidado é pouco, já que cada wafer contém centenas de processadores, que juntos valem algumas dezenas de milhares de dólares. Temos aqui uma foto ilustrativa, cortesia da Intel: Depois de pronto, o wafer é cortado, dando origem aos processadores individuais. Desses, muitos acabam sendo descartados, pois qualquer imperfeição na superfície do wafer, partícula de poeira, ou anomalia durante o processo de litografia acaba resultando numa área defeituosa. Como não é possível produzir um wafer de silício quadrado, temos também os processadores "incompletos", que ocupam as bordas do wafer e que também são descartados no final do processo. 60
  • 61. Processo de corte do wafer de silício (imagem cortesia da Micron) Você poderia perguntar o porquê de não utilizarem retículas maiores para imprimir todo o wafer de uma única vez, ao invés de ter que repetir o processo para cada processador individual. O problema aqui reside no foco, que é perfeito no centro e sensivelmente pior nas bordas. Já é difícil desenvolver máquinas que consigam manter o foco na área do chip, o que dizer então de mantê-lo em toda o wafer, que é uma superfície muito maior. É por isso também que os processadores são sempre mais ou menos quadrados, já que o formato permite obter o melhor foco. Cada processador é testado individualmente, através de um processo automático. O wafer é finalmente cortado e os processadores "bons" são finalmente encapsulados, ou seja, instalados dentro da estrutura que os protege e facilita o manuseio e a instalação: Nem todo processador nasce igual. Pequenas diferenças no foco, pequenos desvios no posicionamento das máquinas ao "imprimir" cada camada e assim por diante, fazem com que alguns processadores sejam mais rápidos que outros e muitos simplesmente não funcionem ou apresentem defeitos diversos. 61
  • 62. Em geral, mesmo grandes fabricantes como a Intel e AMD mantêm uma única linha de produção para cada processador. Os processadores são testados individualmente e vendidos de acordo com a freqüência de operação em que são capazes de trabalhar. Um Core Duo 6600 (2.4 GHz) não é diferente de um Core Duo 6800 (2.96 GHz), por exemplo. Ambos compartilham a mesma arquitetura e passaram pela mesma linha de produção (pode ser que os dois tenham até mesmo compartilhado o mesmo wafer! :). A única diferença é que o 6800 teve a "sorte" de sair mais perfeito e, graças a isso, ser capaz de operar a freqüências mais altas. Com o passar o tempo o índice de aproveitamento tende a melhorar, fazendo com que mais e mais processadores sejam capazes de operar nas freqüências mais altas, até que finalmente é introduzida uma nova técnica de fabricação, ou uma nova família de processadores, dando início a um novo ciclo. O formato do encapsulamento varia de processador para processador. Geralmente temos um spreader, ou seja, uma proteção de metal sobre o die do processador, que fica entre ele e o cooler. Entretanto em muitos processadores, como os Athlons, Durons e Semprons antigos, é usado um encapsulamento mais simples, em que a parte central é a própria parte inferior do wafer de silício, exposta para melhorar a dissipação de calor. Nesses casos, é preciso redobrar os cuidados na hora de instalar e remover o cooler, pois qualquer dano ao núcleo será suficiente para inutilizar o processador: Sempron soquete A, exemplo de processador sem o spreader metálico Só a título de curiosidade: o Intel 4004 era produzido usando uma técnica de 10 micra, em que cada transístor media o equivalente a 1/100 de milímetro. Considerando que um fio de cabelo possui apenas 1/10 de milímetro de espessura, transístores de 10 micra (micra é o plural de micron) podem parecer pequenos, mas se comparados com os atuais, eles parecem pirâmides, de tão grandes. :) O 486 já foi produzido numa técnica de 1 micron, onde cada transístor ocupa uma área 100 vezes menor. Enquanto o 4004 tinha apenas 2.000 transístores, o 486 tinha um milhão deles. 62
  • 63. Como a velocidade de operação do transístor está diretamente relacionada a seu tamanho, o 486 é também brutalmente mais rápido. Enquanto o 4004 opera a 740 kHz, o 486 atingiu 100 MHz (nas versões fabricados pela Intel). Mas isso não é nada se comparado aos processadores atuais. Um Core 2 Duo X6800 é fabricado numa técnica de 0.065 micron (237 vezes menores que os do 486!), possui 291 milhões de transístores e opera a 2.93 GHz. Estão previstos processadores fabricados numa técnica de 0.045 micron em 2008 e 0.032 micron em 2010. Depois disso não se sabe até onde a tecnologia poderá evoluir, pois os fabricantes estão se aproximando dos limites da matéria. A 0.032 micron já temos transístores ocupando uma área equivalente a poucas centenas de átomos de silício. Atualmente, muitos tem passado a utilizar o nanômetro como unidade de medida no lugar do micron, pois é mais fácil de pronunciar. Um nanômetro equivale a um milésimo de micron, de forma que em vez de dizer que o processador, x é fabricado numa técnica de 0.045 micron, você pode dizer que ele é fabricado numa técnica de 45 nanômetros. Os supercomputadores Nas décadas de 1940 e 1950, todos os computadores do mundo eram gigantescos e caros, agregando tudo o que havia de mais avançado em termos de conhecimento humano. Hoje, pode parecer ridículo que qualquer calculadora de mão de 3 reais possa ter um poder de processamento muito superior ao de um ENIAC, que só de manutenção consumia o equivalente a quase 200.000 dólares por dia (em valores corrigidos). Mas, os supercomputadores continuam existindo, tão grandes e caros quanto o ENIAC, porém incomparavelmente mais rápidos do que os PCs e notebooks domésticos. Esses mastodontes estão por trás de muitos dos avanços da humanidade e, apesar de estarem escondidos em grandes salas refrigeradas, são alvo de grande curiosidade. Enquanto escrevo, o supercomputador mais rápido do planeta (segundo o http://www.top500.org/) é o IBM Blue Gene/L, desenvolvido pela IBM. Ele é composto por nada menos do que 131.072 processadores PowerPC e possui 32 terabytes de memória RAM. Para chegar a esses números, a IBM desenvolveu módulos relativamente simples, cada um contendo 2 processadores, 512 MB de RAM e uma interface de rede gigabit Ethernet, similares a um PC doméstico. Esses módulos foram agrupados em racks (chamados de nós), cada um com 128 deles. No final, chegaram a 512 racks, interligados por uma complexa malha de cabos de rede, rodando um software próprio de gerenciamento. Essa gigantesca estrutura funciona como um cluster, onde o processamento é dividido em pequenos pedaços e dividido entre os módulos. Veja uma foto mostrando parte das instalações: 63
  • 64. IBM Blue Gene/L Os primeiros supercomputadores começaram a surgir na década de 60, aliás uma década de muitos avanços, já que no final da década de 50 foi feita a transição das válvulas para os transístores. Cada transístor era centenas de vezes menor que uma válvula, era muito mais durável e tinha a vantagem de gerar pouco calor. Todos os computadores da década de 60 já utilizavam transístores, o que permitiu o desenvolvimento dos primeiros minicomputadores. Naquela época, minicomputador era qualquer coisa do tamanho de um armário, com uma capacidade de processamento inferior ao de uma agenda eletrônica atual, das mais baratas. Os computadores de grande porte, porém, continuaram a ser desenvolvidos, passando a ser chamados de supercomputadores. O primeiro supercomputador para fins comerciais foi o CDC 6600, que foi seguido pelos IBM 360/95 e 370/195. Na década de 70 surgiu uma nova revolução: o microchip. Um microchip sozinho oferecia uma capacidade de processamento equivalente à de um minicomputador, mas em compensação era escandalosamente menor e mais barato. Surgiram então os primeiros microcomputadores. Os supercomputadores da década de 70 já eram centenas de vezes mais poderosos do que os produzidos uma década antes. Os principais modelos foram o CDC 7600, o BSP, produzido pela Burroughs, e o ASC da Texas Instruments. 64
  • 65. Esses sistemas atingiram a marca de 100 megaflops, ou seja, 100 milhões de cálculos de ponto flutuante por segundo. Essa é a mesma capacidade de processamento de um Pentium 60, porém atingida 20 anos antes. :) No final da década de 70 surgiram os supercomputadores Cray, produzidos pela Seymour. O primeiro da linha, chamado de Cray 1, também processava 100 megaflops, porém o Cray-XMP atingiu a incrível marca de 1 gigaflop, ainda no início da década de 80, uma capacidade de processamento próxima à de um Pentium II 350. Só para efeito de comparação, o Blue Gene/L, que citei há pouco, possui 360 teraflops de poder de processamento, ou seja, é 360 mil vezes mais rápido. Apesar de mesmo um "PC de baixo custo" atualmente possuir um poder de processamento superior ao de um supercomputador, que custava 5 milhões de dólares há 15 anos atrás, a demanda por sistemas cada vez mais rápidos continua. As aplicações são várias, englobando principalmente pesquisas científicas, aplicações militares e diversos tipos de aplicativos financeiros e relacionados à Internet; aplicativos que envolvem uma quantidade absurda de processamento, e claro, são necessários para instituições que podem pagar muito mais do que 5 ou 10 mil dólares por um computador o mais rápido possível. Existindo demanda, aparecem os fornecedores. Atualmente, todos os supercomputadores são construídos com base em praticamente os mesmos componentes que temos em micros de mesa, memória, HDs e processadores, Intel, IBM ou AMD. Ao invés de usar apenas um disco rígido IDE ou SATA, como num micro de mesa, um supercomputador utiliza um array de centenas de HDs, sistemas semelhantes ao RAID, mas numa escala maior, que permitem gravar dados de forma fragmentada em vários discos e ler os pedaços simultaneamente a partir de vários HDs, obtendo taxas de transferência muito altas. Processadores e memória RAM geralmente são agrupados em nós, cada nó engloba de um a quatro processadores e uma certa quantidade de memória RAM e cache. Isso garante que os processadores tenham um acesso à memória tão rápido quanto um PC de mesa. Os nós por sua vez são interligados através de interfaces de rede, o que os torna partes do mesmo sistema de processamento, assim como neurônios interligados para formar um cérebro. Um nó sozinho não tem uma capacidade de processamento tão surpreendente assim, mas ao interligar algumas centenas, ou milhares de nós, a coisa muda de figura. Uma opção mais barata para instituições que precisam de um supercomputador, mas não possuem muito dinheiro disponível, é usar um sistema de processamento distribuído, ou cluster. Um cluster formado por vários PCs comuns ligados em rede. 65
  • 66. O exemplo mais famoso de processamento distribuído foi o projeto Seti@Home, onde cada voluntário instalava um pequeno programa que utilizava os ciclos de processamento ociosos da máquina para processar as informações relacionadas ao projeto. Os pacotes de dados de 300 KB cada chegavam pela Internet e demoravam várias horas para serem processados. Isso permitiu que mais de 2 milhões de pessoas, muitas com conexão via modem, participassem do projeto. O sistema montado pela Seti@Home foi considerado por muitos o supercomputador mais poderoso do mundo, na época. Esse tipo de sistema pode ser construído usando, por exemplo, a rede interna de uma empresa. Rodando o software adequado, todos os micros podem fazer parte do sistema, alcançando juntos um poder de processamento equivalente ao de um supercomputador. O mais interessante é que esses PCs poderiam ser usados normalmente pelos funcionários, já que o programa rodaria utilizando apenas os ciclos ociosos do processador. A tecnologia de cluster mais usada atualmente são os clusters Beowulf, formados por vários computadores interligados em rede. Não é necessário nenhum hardware muito sofisticado: um grupo de PCs parrudos, ligados através de uma rede gigabit já é o suficiente para montar um cluster Beowulf capaz de rivalizar com muitos supercomputadores em poder de processamento. A idéia é criar um sistema de baixo custo, que possa ser utilizado por universidades e pesquisadores com poucos recursos. O primeiro cluster Beowulf foi criado em 1994 na CESDIS, uma subsidiária da NASA. Ele era formado por 16 PCs 486 DX-100 ligados em rede. Para manter a independência do sistema e baixar os custos, os desenvolvedores optaram por utilizar o Linux. Os clusters não servem para processar dados em tempo real (um game qualquer por exemplo), mas apenas para processar grandes quantidades de dados, que podem ser quebrados em pequenas partes e divididos entre os vários computadores. Uma área onde são populares é na aplicação de efeitos especiais e renderização de imagens para filmes de cinema. Há inclusive casos de filmes como o Shrek e o Final Fantasy, que foram renderizados inteiramente utilizando clusters Beowulf. A evolução dos computadores pessoais Até aqui, falei sobre os supercomputadores e sobre a evolução dos processadores, que evoluíram das válvulas para o transístor e depois para o circuito integrado. Vou agora falar um pouco sobre os primeiros computadores pessoais, que começaram a fazer sua história a partir da década de 70. Tempos difíceis aqueles :). Como disse há pouco, o primeiro microchip, o 4004, foi lançado pela Intel em 1971. Era um projeto bastante primitivo, que processava instruções de 8 bits, através de um barramento rudimentar, que permitia transferir apenas 4 bits por ciclo, e operava a meros 740 kHz. Na verdade, o 4004 era tão lento que 66
  • 67. demorava 10 ciclos para processar cada instrução, ou seja, ele processava apenas 74 mil instruções por segundo (mesmo assim, ele era cerca de 15 vezes mais rápido que o ENIAC). Hoje em dia esses números parecem piada, mas na época era a última palavra em tecnologia. O 4004 permitiu o desenvolvimento das primeiras calculadoras eletrônicas portáteis. Pouco tempo depois, a Intel lançou um novo processador, que fez sucesso durante muitos anos, o 8080. Ele já era um processador de 8 bits e operava a incríveis 2 MHz: "Ele é capaz de endereçar até 64 KB de memória e é rápido, muito rápido!" como dito num anúncio publicitário do Altair 8800 que, lançado em 1974, é considerado por muitos o primeiro computador pessoal da história. O Altair era baseado no 8080 da Intel e vinha com apenas 256 bytes de memória, realmente bem pouco, mesmo para os padrões da época. Estava disponível também uma placa de expansão para 4 KB. Em teoria, seria possível instalar até 64 KB, mas o custo tornava o upgrade inviável. No modelo básico, o Altair custava apenas 439 dólares, na forma de kit (onde você precisava soldar manualmente todos os componentes). Em valores corrigidos, isso equivale a quase 4.000 dólares, mas na época esse valor foi considerado uma pechincha, tanto que foram vendidas 4.000 unidades em 3 meses, depois de uma matéria da revista Popular Eletronics. Esse "modelo básico" consistia nas placas, luzes, chips, gabinete, chaves e a fonte de alimentação, junto, claro, com um manual que ensinava como montar o aparelho. Existia a opção de comprá-lo já montado, mas custava 182 dólares (da época) a mais. Em sua versão básica, o Altair não tinha muita utilidade prática, a não ser a de servir como fonte de aprendizado de eletrônica e programação. Entretanto, pouco tempo depois, começaram a surgir vários acessórios para o Altair: um teclado que substituía o conjunto de chaves que serviam para programar o aparelho, um terminal de vídeo (bem melhor que ver os resultados na forma de luzes :), um drive de disquetes (naquela época ainda se usavam disquetes de 8 polegadas), placas de expansão de memória e até um modelo de impressora. Até mesmo Bill Gates (antes mesmo da fundação da Microsoft) participou, desenvolvendo uma versão do Basic para o Altair. Se você tivesse muito dinheiro, era possível chegar a algo que se parecia com um computador moderno, capaz de editar textos e criar planilhas rudimentares. Algumas empresas perceberam o nicho e passaram a vender versões "completas" do Altair, destinadas ao uso em empresas, como neste anúncio, publicado na revista Popular Eletronics, onde temos um Altair "turbinado", com o terminal de vídeo, impressora, dois drives de disquete e 4 KB de memória: 67
  • 68. O Altair serviu para demonstrar a grande paixão que a informática podia exercer e que, ao contrário do que diziam muitos analistas da época, existia sim um grande mercado para computadores pessoais. Pouco depois, em 1976, foi fundada a Apple, tendo como sócios Steve Jobs (que continua ativo até os dias de hoje) e Steve Wozniak. Na verdade, a Apple só foi fundada porque o projeto do Apple I (desenvolvido pelos dois nas horas vagas) foi recusado pela Atari e pela HP. Uma frase de Steve Jobs descreve bem a história: - Então fomos à Atari e dissemos: “Ei, nós desenvolvemos essa coisa incrível, pode ser construído com alguns dos seus componentes, o que acham de nos financiar?” Podemos até mesmo dar a vocês, nós só queremos ter a oportunidade de desenvolvê-lo, paguem-nos um salário e podemos trabalhar para vocês. Eles disseram não, fomos então à Hewlett-Packard e eles disseram “Nós não precisamos de vocês, vocês mal terminaram a faculdade”. O Apple I não foi lá um grande sucesso de vendas, vendeu pouco mais de 200 unidades a 666 dólares (pouco mais de US$ 5000 em valores corrigidos) cada uma. Mesmo assim, os lucros sustentaram a Apple durante o primeiro ano, abrindo caminho para o lançamento de versões mais poderosas. Quem comprou um, acabou fazendo um bom negócio, pois hoje em dia um Apple I (em bom estado) chega a valer US$ 50.000. Diferente do Altair, o Apple I era vendido já montado. A placa era vendida "pelada" dentro de uma caixa de papelão, sem nenhum tipo de gabinete, por isso era comum que os Apple I fossem instalados dentro de caixas de madeira feitas artesanalmente. O Apple I era baseado no processador 6502, um clone do Motorola 6800, que era fabricado pela MOS Tecnology. Ele era um processador de 8 bits, que operava a apenas 1 MHz. Em termos de poder de processamento, o 6502 68
  • 69. perdia para o 8080, mas isso era compensado pelos "espaçosos" 8 KB de memória, suficientes para carregar o interpretador BASIC (que ocupava 4 KB), deixando os outros 4 KB livres para escrever e rodar programas. Uma das vantages é que o Apple I podia ser ligado diretamente a uma TV, dispensando a compra de um terminal de vídeo. Ele possuía também um conector para unidade de fita (o controlador era vendido separadamente por 75 dólares) e um conector proprietário reservado para expansões futuras: Apple I Naquela época, as fitas K7 eram o meio mais usado para guardar dados e programas. Os disquetes já existiam, mas eram muito caros. Os grandes problemas das fitas K7 eram a lentidão e a baixa confiabilidade. No Apple I, os programas eram lidos a meros 1500 bits por segundo e em outros computadores o acesso era ainda mais lento, com de 250 a 300 bits. Era preciso ajustar cuidadosamente o volume no aparelho de som antes de carregar a fita e, conforme a fita se desgastava, era preciso tentar cada vez mais vezes antes de conseguir uma leitura sem erros. Na época, existiam até programas de rádio que transmitiam softwares como parte da programação. O locutor avisava e em seguida "tocava" a fita com o programa. Os interessados precisavam ficar com o aparelho de som à mão para gravar a cópia. Esses programas de rádio foram a primeira rede de pirataria de softwares de que se tem notícia, décadas antes da popularização da internet. ;) 69
  • 70. Fita K7 com o BASIC para o Apple I O Apple I foi logo aperfeiçoado, surgindo então o Apple II, lançado em 1977. Esse sim fez sucesso, apesar do preço salgado para a época: US$ 1.298, que equivalem a quase 10.000 dólares em valores corrigidos. O Apple II vinha com apenas 4 KB de memória, mas incluía mais 12 KB de memória ROM, que armazenava um interpretador BASIC e o software de bootstrap, lido no início do boot. Isso foi uma grande evolução, pois você ligava e já podia começar a programar ou a carregar programas. No Apple I, era preciso primeiro carregar a fita com o BASIC, para depois começar a fazer qualquer coisa. O BASIC era a linguagem mais popular na época (e serviu como base para diversas linguagens modernas), pois tem uma sintaxe simples se comparado com o C ou o Assembly, utilizando comandos derivados de palavras do Inglês. Este é um exemplo de programa em BASIC simples, que pede dois números e escreve o produto da multiplicação dos dois: 10 PRINT "MULTIPLICANDO" 20 PRINT "DIGITE O PRIMEIRO NUMERO:" 30 INPUT A 40 PRINT "DIGITE O SEGUNDO NUMERO:" 50 INPUT B 60 LETC=A*B 70 PRINT "RESPOSTA:", C Este pequeno programa precisaria de 121 bytes de memória para rodar (os espaços depois dos comandos são ignorados, por isso não contam). Ao desenvolver programas mais complexos você esbarrava rapidamente na barreira da memória disponível (principalmente se usasse um ZX80, que tinha apenas 1 KB ;), o que obrigava os programadores a otimizarem o código ao máximo. Aplicativos comerciais (e o próprio interpretador BASIC) eram escritos diretamente em linguagem de máquina, utilizando diretamente as instruções do processador e endereços de memória, de forma a extraírem o máximo do equipamento. Voltando ao Apple II, a memória RAM podia ser expandida até 52 KB, pois o processador Motorola 6502 era capaz de endereçar apenas 64 KB de memória, 70
  • 71. e 12 KB já correspondiam à ROM embutida. Um dos "macetes" naquela época era uma placa de expansão, fabricada pela recém formada Microsoft, que permitia desabilitar a ROM e usar 64 KB completos de memória. Além dos jogos, um dos programas mais populares para o Apple II foi o Visual Calc, ancestral dos programas de planilha atuais: Foto de um manual antigo que mostra a interface do Visual Calc O Apple II já era bem mais parecido com um computador atual. Vinha num gabinete plástico e tinha um teclado incorporado. A versão mais básica era ligada na TV e usava o famigerado controlador de fita K7, ligado a um aparelho de som para carregar programas. Gastando um pouco mais, era possível adquirir separadamente uma unidade de disquetes. Apple II A linha Apple II se tornou tão popular que sobreviveu até o início dos anos 90, quase uma década depois do lançamento do Macintosh. O último lançamento foi o Apple IIC Plus, que utilizava um processador de 4 MHz (ainda de 8 bits) e vinha com um drive de disquetes de 3.5", já similar aos drives atuais. Outra inovação dos Apple I e Apple II em relação ao Altair e outros computadores anteriores é o tipo de memória usada. O Apple I foi o primeiro a 71
  • 72. utilizar memórias DRAM, que é essencialmente a mesma tecnologia utilizada até hoje em pentes de memória. Ao longo das primeiras décadas, a memória RAM passou por duas grandes evoluções. No ENIAC, não existia uma unidade de memória dedicada. Parte das válvulas eram reservadas para armazenar as informações que estavam sendo processadas. Não existia unidade de armazenamento, além dos cartões perfurados e as anotações feitas manualmente pelos operadores. Na década de 50 surgiram as memórias core, um tipo antiquado de memória onde são usados anéis de ferrite, um material que pode ter seu campo magnético alterado através de impulsos elétricos, armazenando o equivalente a um bit 1 ou 0). Esses anéis de ferrite eram carinhosamente chamados de "donuts" (rosquinhas) e eram montados dentro de uma complexa rede de fios, que transportavam os impulsos elétricos usados para ler e escrever dados. Cada anel armazenava apenas um bit, de forma que você precisava de 8.192 deles para cada KB de memória. Inicialmente a malha de fios era "tecida" manualmente, mas logo começaram a ser usadas máquinas, que permitiram miniaturizar bastante as estruturas. Este é um exemplo de placa de memória core. Ela mede 11 x 11 cm (um pouco menor que um CD), mas armazena apenas 50 bytes: Essas placas eram ligadas entre si, formando "pilhas" organizadas dentro de estruturas maiores. Imagine que, para atingir 1 MB de memória no início da década de 1960, você precisaria de quase 21 mil dessas plaquinhas. Este é um exemplo de unidade de memória, construída usando placas de memória core, que está em exposição no museu no MIT. Apesar do tamanho, ela possui apenas 64 KB: 72
  • 73. Por serem muito caras e precisarem de um grande número de circuitos de apoio, as memórias core ficaram restritas aos computadores de grande porte. O Altair já utilizava memórias "modernas" na forma de chips. Para ser exato, ele utilizava dois chips de 1024 bits (ou 128 bytes) cada um. O Altair utilizava chips de memória SRAM (static RAM), que eram rápidos e confiáveis, porém muito caros. Na memória SRAM, são usados de 4 a 6 transístores para cada bit de dados (as do Altair usavam 4 transistores), o que multiplica o custo dos chips. Atualmente, as memórias SRAM são usadas nos caches L1 e L2 dos processadores, o tipo mais rápido e caro de memória que existe. O Apple I inovou utilizando um "novo" tipo de memória, as DRAM (dynamic RAM), onde é usado um único transístor para cada bit de dados. Embora à primeira vista pareçam mais simples, os chips de memória DRAM são muito mais complicados de se trabalhar (principalmente se considerarmos as limitações da época), pois são capazes de armazenar os dados por apenas uma pequena fração de segundo. Para conservar os dados, eles precisam de um circuito de refresh, que lê e regrava os dados a cada 64 milissegundos (ou menos, de acordo com o projeto). Apesar de todas as dificuldades, foi o uso de memórias DRAM no Apple I que permitiu que ele viesse com 8 KB de memória, custando pouco mais que um Altair, que vinha com meros 256 bytes. A partir daí, as memórias DRAM se tornaram norma, o que continua até os dias de hoje. Voltando à história, em 1979 surgiu um outro modelo interessante, desta vez da Sinclair, o ZX80. Ele não era tão poderoso quanto o Apple II, mas tinha a 73
  • 74. vantagem de custar apenas 99 dólares (pouco mais de 400 em valores corrigidos). Ele foi o computador mais popular até então, com 100.000 unidades vendidas (entre 1979 e 1981), sem contar uma grande quantidade de clones, produzidos em diversos países ao longo da década de 80. O ZX80 era baseado no NEC-780C, um clone do Z80, que operava a 3.25 MHz. Ele era relativamente poderoso para os padrões da época, mas aquecia bastante. Segundo as más línguas, ele foi o primeiro processador overclocado da história. :) Para cortar custos, ele vinha de fábrica com apenas 1 KB de memória RAM, combinados com 4 KB de memória ROM que armazenavam o interpretador BASIC, usado pelo aparelho. Como em qualquer sistema popular da época, os programas eram armazenados em fitas K7 e ele era ligado diretamente na TV: Considerando o preço, o ZX80 foi uma máquina surpreendente, mas claro, tinha pesadas limitações, mesmo se comparado com outras máquinas da época. Apesar de já vir com uma saída de vídeo, a resolução gráfica era de apenas 64x48, mesmo em modo monocromático, já que o adaptador de vídeo tinha apenas 386 bytes de memória. Existia também uma opção de modo texto (usada para programas em BASIC, por exemplo), com 32x24 caracteres. O processador Z80 se tornou incrivelmente popular, superando as vendas de qualquer outro processador da história. Versões modernizadas do Z80 (que conservam o mesmo projeto básico, mas são produzidas com técnicas modernas de fabricação e trabalham a freqüências mais altas) fazem sucesso até hoje, sendo utilizadas em todo tipo de eletrônicos, incluindo impressoras, aparelhos de fax, controladores diversos, robôs de uso industrial, brinquedos, diversos tipos de calculadoras, videogames (incluindo o Game Boy e Game Boy color), diversos modelos populares de mp3players, entre inúmeros exemplos. Apesar de não ser nenhum campeão de velocidade, o Z80 é um 74
  • 75. chip extremamente barato e fácil de programar, já que todos os seus truques são bem conhecidos e documentados. Aqui no Brasil tivemos os TK80 e os TK82 da Microdigital, além do NE-Z80 da Prológica, produzidos na época da reserva de mercado. Eles concorriam com os computadores compatíveis com os Apple, como o AP II, Exato, Craft II e Magnex M10. A linha CP (200, 300, 400 e 500) da Prológica era baseada em chips Z80 e havia também os clones da linha MSX, como os Expert 1.0 e Expert Plus. A reserva de mercado estagnou o desenvolvimento tecnológico do país, de forma que clones de computadores de 8 bits, lançados há uma década atrás era tudo que nossa indústria conseguia produzir. Isso perdurou até 1992, quando a reserva de mercado foi abolida, permitindo a entrada de computadores importados. Em pouco tempo, todos esses computadores de 8 bits foram substituídos por PCs 386 e 486. Concluindo nosso passeio pela década de 70, outro que não poderia deixar de ser citado é o Atari 800. Sim, apesar de ser mais vendido como um videogame, o Atari 800 também podia ser usado como um computador relativamente poderoso, chegando a ser adotado nos laboratórios de informática de algumas universidades. Ele foi o antecessor do Atari 2600, o videogame conhecido por aqui. Ele vinha de fábrica com 16 KB de memória RAM, que podiam ser expandidos para até 48 KB, com mais 10 KB de memória ROM. O sistema operacional era o Atari-OS, uma versão do BASIC: Atari 800 Originalmente, o sistema vinha apenas com a entrada para os cartuchos, com o sistema operacional ou jogos, mas era possível adquirir separadamente uma unidade de disquetes, que o transformavam num computador completo. Não existiram muitos programas para o Atari, já que o foco foram sempre os jogos. A principal função do Atari como computador era desenvolver programas em BASIC, por isso seu uso em escolas. 75
  • 76. A década de 80 Como profetizado por Gordon Moore, os processadores vêm, em média, dobrando de desempenho a cada 18 meses desde o início da década de 70. Uma década é uma verdadeira eternidade dentro do mercado de informática, o suficiente para revoluções acontecerem e serem esquecidas. Depois dos dinossauros da primeira metade da década de 70, os computadores pessoais finalmente começaram a atingir um nível de desenvolvimento suficiente para permitir o uso de aplicativos sérios. Surgiram então os primeiros aplicativos de processamento de texto, planilhas, e até mesmo programas de editoração e desenho. Depois dos Apple I e Apple II, ZX80, Ataris e outros computadores de 8 bits, chegamos finalmente à era PC. A IBM de 1980 era uma gigantesca empresa, especializada em mainframes e terminais burros. Entretanto, percebendo a crescente demanda por computadores pessoais, decidiram criar um pequeno grupo (que originalmente possuía apenas 12 desenvolvedores) para desenvolver um computador pessoal de baixo custo. O PC era considerado um projeto menor dentro da IBM, apenas uma experiência para testar a demanda do mercado. O projeto chegou a ser marginalizado dentro da empresa, pois muitos executivos acreditavam que o IBM PC poderia concorrer com outros produtos do portfólio da IBM. Depois de quase um ano de desenvolvimento, o primeiro PC foi lançado em 12 de agosto de 1981. O PC original 76
  • 77. Para cortar custos e acelerar o desenvolvimento, a equipe decidiu que usaria apenas componentes-padrão, que pudessem ser encontrados facilmente no mercado. O processador escolhido foi o Intel 8088, uma versão econômica do processador 8086, que havia sido lançado pela Intel em 1978. Quando a IBM estava desenvolvendo seu computador pessoal, chegou a ser cogitado o uso do 8086, mas acabou sendo escolhido o 8088 devido ao seu baixo custo. Tanto o 8086 quanto o 8088 são processadores de 16 bits, considerados bastante avançados para a época. Um processador de 16 bits é capaz de endereçar mais memória (até 64 KB de memória de cada vez) e processar instruções muito mais complexas que os processadores de 8 bits usados até então. A grande diferença entre os dois é que o 8086 é um processador de 16 bits "puro", enquanto o 8088 se comunica com os demais periféricos usando um barramento de 8 bits. Isso naturalmente prejudicava o desempenho, mas trouxe uma vantagem importante: a possibilidade de usar os componentes de 8 bits usados em outros computadores da época, que eram muito mais populares e baratos. Essa arquitetura permitiu ao primeiro PC competir na mesma faixa de preço dos computadores de 8 bits mais populares e, ao mesmo tempo, possuir um desempenho bem superior devido ao seu processador de 16 bits. O 8088 é capaz de acessar até 1 MB de memória RAM (embora o PC original suportasse apenas 640 KB, devido a limitações por parte do BIOS e por parte da placa- mãe) e funciona a 4.77 MHz, recursos incríveis para a época, já que estamos falando de um processador lançado no final de 1979. Lembre-se de que o principal concorrente do IBM PC era o Apple II que, embora fosse mais barato e contasse com mais softwares disponíveis, usava um processador de 8 bits, de apenas 1 MHz e meros 4 KB de memória RAM. Entretanto, o aspecto técnico não foi o determinante para o sucesso do PC. Ele era um bom computador para a época, mas era caro e não tinha nada que os concorrentes não pudessem usar em seus produtos. Ele tinha tudo para ser apenas mais um no mercado, se não fosse um diferencial importante: a arquitetura aberta. Diferente dos Apples e de outros computadores da época, qualquer fabricante podia desenvolver e vender acessórios para o PC, sem pagar royalties ou fazer acordos de licenciamento. Como todos os componentes podiam ser encontrados no mercado, era possível também desenvolver clones, computadores compatíveis com o PC, fabricados por outras empresas. Isso lentamente fez com que toda a indústria passasse a orbitar em torno do PC, fazendo com que a plataforma crescesse assustadoramente. Voltando ao tema original, o PC original tinha, em sua versão mais simples, apenas 16 KB de memória RAM, com direito apenas ao gabinete e teclado. A partir daí, tudo era opcional, incluindo o monitor (você podia usar uma TV, embora a qualidade da imagem ficasse ruim), os drives de disquete e o HD. Também estava disponível um conector para um gravador de fitas K7 77
  • 78. (localizado ao lado do conector para o teclado), mas ele nunca foi muito usado e desapareceu a partir do XT. Na configuração básica, o PC custava "apenas" 1.564 dólares da época, mas incluindo mais 48 KB de memória, dois drives de disquete e um monitor mono de 12", o preço chegava facilmente a 2.500 dólares, que equivalem a mais de 7.000 dólares em valores atuais. Na época, os HDs ainda eram um componente caro e exótico. Em 1981, um Seagate ST-506 (o modelo mais popular até então) custava mais de 1.000 dólares (da época) e tinha apenas 5 MB de capacidade. Este HD da foto a seguir é um ST-225 (também da Seagate), um modelo de 20 MB, lançado em 1984, que foi muito usado nos micros 286. Esses primeiros modelos ainda utilizavam motores de passo para mover as cabeças de leitura (como nos drives de disquete), por isso os problemas eram comuns. Seagate ST-225, de 20 MB Ao usar um PC sem HD, o sistema operacional e todos os programas eram carregados a partir de disquetes de 5¼. Inicialmente eram usados disquetes de 180 KB, mas eles foram logo substituídos por disquetes de 360 KB (onde eram usadas as duas faces do disco) e, alguns anos mais tarde, por disquetes de "alta densidade", com 1.2 MB. Os disquetes de de 3.5", com 1.44 MB, que usamos hoje em dia passaram a ser usados nos PCs apenas em 1987, com o lançamento do IBM PS/2. Existiu ainda um padrão de disquetes de 2.8 MB, lançado nos anos 90, que acabou não pegando. 78
  • 79. Disquetes de 5¼ O PC era monotarefa, de forma que para carregar outro programa, você precisava primeiro encerrar o primeiro e trocar o disquete dentro do drive. O segundo drive de disquetes era um item extremamente popular (e necessário), pois os disquetes de 5¼ eram extremamente frágeis e a mídia se degradava com o tempo, de forma que você precisava copiar os discos freqüentemente. Conforme foram sendo lançados PCs com mais memória RAM, surgiu o "macete" de criar um ramdisk (um pedaço da memória RAM usado como se fosse um HD) e usá-lo para copiar disquetes sem precisar de um segundo drive :). Também era comum aparecerem versões "capadas" dos principais programas, com componentes e bibliotecas desativados ou removidos, de forma a rodar nos PCs com menos memória RAM. Naquela época, ainda não existia memória swap, de forma que se o PC não tivesse memória suficiente, os programas simplesmente não rodavam. O sistema operacional usado no PC original era o MS-DOS 1.0 (na época ainda chamado de PC-DOS), que foi desenvolvido às pressas pela Microsoft com base num sistema operacional mais simples, chamado QDOS, comprado da Seattle Computers, uma pequena empresa desenvolvedora de sistemas. Na verdade, a Microsoft foi a segunda opção da IBM, depois de ter sua proposta de licença recusada pela Digital Research, que desenvolvia versões do seu CP/M para várias arquiteturas diferentes. Na época, a IBM acreditava que ganharia dinheiro vendendo as máquinas e não vendendo sistemas operacionais e softwares, o que era considerado um negócio menor, dado de bandeja para a Microsoft. Com o passar do tempo, os executivos da IBM se arrependeram amargamente da decisão, pois a concorrência entre os diversos fabricantes derrubou os preços e as margens de lucro dos PCs, enquanto a Microsoft conseguiu atingir um quase monopólio do sistema operacional para eles e, sem concorrentes de peso, passou a trabalhar com margens de lucro cada vez maiores. Um fabricante de memórias, como a Micron, trabalha normalmente com margens de lucro abaixo de 1%. Conseguem ganhar dinheiro apenas por venderem quantidades muito grandes. Um integrador como a Dell trabalha com 79
  • 80. margens de 3 a 5% (e leva prejuízo às vezes, nas unidades que ficam muito tempo em estoque ou não vendem), enquanto a Microsoft (mesmo com toda a pirataria) trabalha com margens superiores a 80% vendendo o Windows e Office, um negócio da China. Hoje em dia, a IBM sequer fabrica PCs. Mesmo os famosos notebooks IBM Thinkpad são agora fabricados e vendidos pela Lenovo, uma empresa Chinesa que comprou os direitos sobre a marca em 2000. Voltando à história, dois anos depois foi lançado o PC XT, que apesar de continuar usando o 8088 de 4.77 MHz, vinha bem mais incrementado, com 256 KB de RAM, disco rígido de 10 MB, monitor CGA e o MS-DOS 2.0. O XT se tornou um computador bastante popular e chegou a ser fabricado no Brasil, durante a reserva de mercado. Enquanto os americanos já usavam muitos 386, os clones tupiniquins do XT eram a última palavra em tecnologia aqui no Brasil... Depois do XT, o próximo passo foi o PC AT (lançado em 1984), já baseado no Intel 286. Na verdade, o processador 286 foi lançado em fevereiro de 1982, apenas 6 meses após a IBM ter lançado o seu primeiro PC, porém demorou até que a IBM conseguisse desenvolver um computador baseado nele, pois foi preciso desenvolver toda uma nova arquitetura. Da placa de vídeo ao gabinete, praticamente tudo foi mudado, o que somado à burocracia e a longos períodos de testes antes do lançamento, levou mais de 2 anos. Atualmente, o período de desenvolvimento dos periféricos é muito mais curto. Quase sempre quando um novo processador é lançado, já temos placas-mãe para ele disponíveis quase imediatamente, pois o desenvolvimento é feito de forma simultânea. O PC AT vinha com um processador 286 de 6 MHz (depois surgiram versões mais rápidas, de 8, 12 e até 16 MHz), HD de 10 MB, monitor EGA (640x350, com 64 cores) e já usava disquetes de 5¼ de 1.2 MB. Como a memória RAM ainda era um item muito caro, existiam versões com de 256 KB a 2 MB de RAM. Embora fosse extremamente raro usar mais de 2 MB, existia a possibilidade de instalar até 16 MB. 80
  • 81. PC AT O processador 286 trouxe vários avanços sobre o 8088. Ele utilizava palavras binárias de 16 bits, tanto interna quanto externamente, o que permitia o uso de periféricos de 16 bits, muito mais avançados do que os usados no PC original e no XT. O custo dos periféricos desta vez não chegou a ser um grande obstáculo, pois enquanto o PC AT estava sendo desenvolvido, eles já podiam ser encontrados com preços mais acessíveis. Para manter compatibilidade com os periféricos de 8 bits usados no PC original e no XT, a IBM desenvolveu os slots ISA de 16 bits, que permitem usar tanto placas de 8 bits, quanto de 16 bits. As placas de 8 bits são menores e usam apenas a primeira série de pinos do slot, enquanto as placas de 16 bits usam o slot completo. Devido à sua popularidade, o barramento ISA continuou sendo usado por muito tempo. Em 2004 (20 anos depois do lançamento do PC AT) ainda era possível encontrar algumas placas-mãe novas com slots ISA, embora atualmente eles estejam extintos. Slots ISA, em uma placa-mãe de 386 81
  • 82. O principal avanço trazido pelo 286 são seus dois modos de operação, batizados de "Modo Real" e "Modo Protegido". No modo real, o 286 se comporta exatamente como um 8086 (apesar de mais rápido), oferecendo total compatibilidade com os programas anteriores, escritos para rodarem no 8088. Já no modo protegido, ele manifesta todo o seu potencial, incorporando funções mais avançadas, como a capacidade de acessar até 16 MB de memória RAM (apesar de ser um processador de 16 bits, o 286 usa um sistema de endereçamento de memória de 24 bits), multitarefa, memória virtual em disco e proteção de memória. Assim que ligado, o processador opera em modo real e, com uma instrução especial, passa para o modo protegido. O problema é que, trabalhando em modo protegido, o 286 deixava de ser compatível com os programas escritos para o modo real, inclusive com o próprio MS-DOS. Para piorar, o 286 não possuía nenhuma instrução que fizesse o processador voltar ao modo real, o que era possível apenas resetando o micro. Isso significa que um programa escrito para rodar em modo protegido, não poderia usar nenhuma das rotinas de acesso a dispositivos do MS-DOS, tornando inacessíveis o disco rígido, placa de vídeo, drive de disquetes memória, etc., a menos que fossem desenvolvidas e incorporadas ao programa todas as rotinas de acesso a dispositivos necessárias. Isso era completamente inviável para os desenvolvedores, pois, para projetar um simples jogo, seria praticamente preciso desenvolver todo um novo sistema operacional. Além disso, o programa desenvolvido rodaria apenas em micros equipados com processadores 286, que ainda eram minoria na época, tendo um público-alvo muito menor. De fato, apenas algumas versões do UNIX e uma versão do OS/2 foram desenvolvidas para utilizar o modo protegido do 286. Basicamente, os micros baseados no 286 eram usados para rodar aplicativos de modo real, que também podiam ser executados em um XT, aproveitando apenas a maior velocidade do 286. Devido às várias mudanças na arquitetura, destacando o acesso mais rápido à memória e as alterações no conjunto de instruções do processador, que permitiam realizar muitas operações de maneira mais rápida e eficiente, um 286 consegue ser quase 4 vezes mais rápido que um 8088 do mesmo clock. Em outubro de 1985 a Intel lançou o 386, que marcou o início dos tempos modernos. Ele trouxe vários recursos novos. Para começar, o 386 trabalha tanto interna quanto externamente com palavras de 32 bits e é capaz de acessar a memória usando um barramento de 32 bits, permitindo uma transferência de dados duas vezes maior. Como o 386 pode trabalhar com palavras binárias de 32 bits, é possível acessar até 4 GB de memória (2 elevado a 32ª potência), mesmo sem usar a segmentação de endereços, como no 8088. Assim como o 286, o 386 continua possuindo os dois modos de operação. A diferença é que no 386 é possível alternar entre o modo real e o modo protegido livremente. Os programas que rodavam sobre DOS podiam chavear o processador para o modo protegido, para se beneficiarem de suas vantagens 82
  • 83. e voltarem ao modo real sempre que precisavam usar alguma sub-rotina do DOS, de maneira transparente ao usuário. Nesse caso, era usado um programa de DPMI ("DOS Protected Mode Interface", ou "interface DOS de modo protegido") para fazer o chaveamento entre os dois modos. Toda vez que o programa precisava usar alguma sub-rotina do DOS, ele passava o comando ao chaveador e ficava esperando. O chaveador, por sua vez, colocava o processador em modo real, executava o comando, chaveava o processador para o modo protegido e entregava o resultado ao aplicativo, que continuava trabalhando como se nada tivesse acontecido. Um bom exemplo de programa de DPMI é o DOS4GW, que é usado por muitos jogos antigos que rodam sobre o MS-DOS, como o DOOM, Sim City 2000 e vários emuladores de videogames. O esquema de chaveamento também era utilizado pelo Windows 3.x, que incluía todas as rotinas necessárias, dispensando qualquer programa de DPMI. O Windows 95/98 também pode chavear para o modo real caso precise carregar algum driver de dispositivo de modo real. No Windows XP os programas DOS passaram a ser executados dentro de um emulador (ao invés de nativamente), o que reduziu a compatibilidade do sistema com os aplicativos MS-DOS. Ter um processador 386 é o requisito mínimo para rodar qualquer sistema operacional moderno. Com um 386, memória RAM e espaço em disco suficiente, você pode rodar o Windows 95 e aplicativos, embora bem lentamente devido à pouca potência do processador. Você pode também instalar distribuições Linux antigas e (usando algum truque para burlar a detecção da configuração mínima ao instalar o sistema) até mesmo instalar o Windows 98. Com um simples 286, no máximo você poderia rodar o DOS e aplicativos mais simples, que operassem em modo real. Também era possível rodar o Windows 3.0, porém em modo "Standard", onde era possível acessar todos os 16 MB de memória permitidos pelo 286, mas sem memória virtual nem multitarefa. Apenas o Athlon 64 e os processadores Intel com o EM64 (o conjunto de instruções compatíveis com os processadores de 64 bits da AMD) vieram a quebrar essa compatibilidade histórica. Os processadores de 64 bits atuais são perfeitamente compatíveis com os aplicativos de 32 bits, mas programas otimizados para eles não rodam mais nas máquinas antigas. Embora mais suave e gradual, estamos assistindo a uma migração similar à que ocorreu na transição do 286 para o 386. Voltando ao lançamento do 386, embora o processador tenha sido lançado em 1985, a IBM só foi capaz de lançar um PC baseado nele em 1987, dando tempo para a Compaq sair na frente. Este foi um verdadeiro marco pois, de repente, as companhias perceberam que não eram mais obrigadas a seguir a IBM. Qualquer um que tivesse tecnologia suficiente poderia sair na frente, como fez a Compaq. A partir daí, a IBM começou a gradualmente perder a liderança do mercado, tornando-se apenas mais um entre inúmeros fabricantes de PCs. 83
  • 84. O primeiro 386 operava a apenas 16 MHz. Quando foi lançada a versão de 20 MHz, os projetistas perceberam que o processador havia se tornado rápido demais para as memórias RAM existentes na época. Por isso, a cada acesso, o processador tinha que ficar "esperando" os dados serem liberados pela memória RAM para poder concluir suas tarefas, perdendo muito em desempenho. Para solucionar esse problema, passaram a ser usadas pequenas quantidades de memória cache na grande maioria das placas-mãe para micros 386 e superiores. Os chips de memória cache utilizam memória SRAM, um tipo mais caro de memória que não precisa de refresh. O refresh é uma característica inerente a todas as tecnologias de memória RAM, incluindo as DDR e DDR2 atuais. Cada célula do pente de memória é composta por um transístor e um capacitor. O transístor controla a passagem do impulso elétrico, enquanto o capacitor o armazena. O problema é que o capacitor é capaz de manter a carga por um curto período, de forma que os dados precisam ser reescritos várias vezes por segundo. A memória cache armazena os dados mais usados pelo processador, reduzindo o número de operações em que é preciso buscar dados diretamente na lenta memória RAM. Mesmo uma pequena quantidade de memória cache é capaz de melhorar bastante o desempenho do processador. Na foto a seguir temos um exemplo de placa para 386. A memória cache é composta pelos 5 chips, posicionados entre o slot ISA e os pentes de memória. Esta placa ainda utiliza módulos de memória de 30 vias e os 4 módulos instalados somam apenas 4 MB de memória. Note ainda que ela possui apenas slots ISA, sem nenhuma opção de barramento mais rápido: 4 MB de memória, com direito a coprocessador aritmético. Wow! :) Outro componente exótico usado na época era o co-processador aritmético, um processador adicional, que executava cálculos complexos, as famosas 84
  • 85. operações de ponto flutuante. Até o 386, o co-processador aritmético era um componente opcional, que podia ser instalado num soquete vago disponível na placa-mãe. Ele era necessário para rodar programas de engenharia, modelagem 3D e alguns games, mas não era muito popular, pois custava quase tanto quanto o processador principal. A partir do 486, o co-processador passou a ser incorporado diretamente ao processador principal, eliminando o soquete separado. Com a miniaturização dos transístores, os processadores passaram a trazer cada vez mais componentes. Os processadores atuais incluem várias unidades de execução, o que os torna capazes de processar várias instruções por ciclo, quantidades generosas de memória cache, componentes extras destinados a organizar e decodificar as instruções que serão processadas, conjuntos de instruções extras e, no caso dos Athlon 64 (e derivados), também o controlador de memória, que antes fazia parte da placa-mãe. Os processadores dual-core, onde temos dois processadores completos na mesma pastilha de silício, também estão se tornando cada vez mais comuns, seguidos pelos processadores quad-core. É uma corrida que ainda está longe de acabar. Voltando ao 386, como as placas-mãe da época eram muito caras, existiam várias opções de upgrade. O 386SX, por exemplo, podia ser instalado em muitas placas para 286. Existiam também os processadores 486 DLC e 486 SLC (fabricados pela Texas Instruments), que podiam ser instalados em placas para o 386, servindo como uma opção de upgrade. Aqui temos um 486 DLC, instalado numa placa de 386. O soquete vago ao lado do processador é o encaixe para o co-processador aritmético. Note que naquela época ainda eram usados pentes de memória de 30 vias. Eles eram pentes de 8 bits, por isso era necessário instalar sempre 4 ou 8 módulos, para que eles fornecessem os 32 bits usados pelo processador. O mais comum na época era usar pentes de 1 MB, totalizando 4 ou 8 MB. Em 1990, cada megabyte de memória custava mais de 100 dólares: Naturalmente, a Apple não ficou sentada durante este tempo todo. Além de continuar aperfeiçoando a linha Apple II, a empresa começou a investir 85
  • 86. pesadamente no desenvolvimento de computadores com interface gráfica e mouse. A "inspiração" surgiu numa visita de Steve Jobs ao laboratório da Xerox, onde computadores com interface gráfica eram desenvolvidos desde a década de 70 (embora sem sucesso comercial, devido ao custo proibitivo). Em 1983, eles apresentaram uma grande novidade, o Lisa. Em sua configuração original, o Lisa vinha equipado com um processador Motorola 68000 de 5 MHz, 1 MB de memória RAM, dois drives de disquete de 5¼ de alta densidade (eram usados discos de 871 KB), HD de 5 MB e um monitor de 12 polegadas, com resolução de 720 x 360. Era uma configuração muito melhor do que os PCs da época, sem falar que o Lisa já usava uma interface gráfica bastante elaborada e contava com uma suíte de aplicativos de escritório à lá Office. O problema era o preço: 10.000 dólares da época (suficiente para comprar 5 PCs). Apple Lisa Embora não houvesse nada melhor no mercado, o Lisa acabou não atingindo o sucesso esperado. No total, foram produzidas cerca de 100.000 unidades em dois anos, porém a maior parte delas foram vendidas com grandes descontos, muitas vezes abaixo do preço de custo (como um lote de 5.000 unidades vendido para a Sun em 1987, depois que o Lisa já havia sido descontinuado). Como a Apple investiu aproximadamente US$ 150 milhões no desenvolvimento do Lisa, a conta acabou ficando no vermelho. Apesar disso, o desenvolvimento do Lisa serviu de base para o Macintosh, um computador mais simples, lançado em 1984. Ao contrário do Lisa, ele fez um grande sucesso, chegando a ameaçar o império dos PCs. A configuração era similar à dos PCs da época, com um processador de 8 MHz, 128 KB de memória e um monitor de 9 polegadas. A grande arma do Macintosh era o MacOS 1.0 (derivado do sistema operacional do Lisa, porém otimizado para consumir muito menos memória), um sistema inovador de vários pontos de vista. Ao contrário do MS-DOS ele era inteiramente baseado no uso da interface gráfica e mouse, o que o tornava muito mais fácil de ser operado. O MacOS 86
  • 87. continuou evoluindo e incorporando novos recursos, mas sempre mantendo a mesma idéia de interface amigável. MacOS 1.0, ainda monocromático Depois do Macintosh original, a Apple lançou um modelo atualizado, com 512 KB de memória RAM. Para diferenciá-lo do primeiro, a Apple passou a chamá- lo de Macintosh 512k. O modelo antigo continuou sendo vendido até outubro de 1985 como uma opção de baixo custo, passando a ser chamado de Macintosh 128k. Pouco tempo depois foi lançado o Mac Rescue, uma placa de expansão que ampliava os 128 ou 512k de memória para 4 MB (algo assustador para a época) e dava "de brinde" um ramdisk de 2 MB para armazenamento de arquivos e programas (as primeiras versões do Mac não possuíam HD). O Mac já utilizava um recurso de hibernação, de forma que muita gente nunca desligava o aparelho, apenas o colocava pra dormir, preservando os dados do ramdisk. Embora fosse um upgrade muito bem vindo, o Mac Rescue não foi muito popular, pois era caro demais. Neste mesmo período, a Microsoft desenvolveu a primeira versão do Windows, anunciada em novembro de 1983. Ao contrário do MacOS, o Windows 1.0 era uma interface bastante primitiva, que fez pouco sucesso. Ele rodava sobre o MS-DOS e podia executar tanto aplicativos for Windows quanto os programas para MS-DOS. O problema era a memória. Os PCs da época vinham com quantidades muito pequenas de memória RAM e na época ainda não existia a possibilidade de usar memória virtual (que viria a ser suportada apenas a partir do 386). Para rodar o Windows, era preciso primeiro carregar o MS-DOS. Os dois juntos já consumiam praticamente toda a memória de um PC básico da época. Mesmo nos PCs mais parrudos não era possível rodar muitos aplicativos ao mesmo tempo, novamente por falta de memória. 87
  • 88. Como os aplicativos for Windows eram muito raros na época, poucos usuários viram necessidade de utilizar o Windows para rodar os mesmos aplicativos que rodavam (com muito mais memória disponível...) no MS-DOS. Sem contar que a versão inicial do Windows era bastante lenta e tinha vários bugs. O Windows começou a fazer algum sucesso na versão 2.1, quando os micros 286 com 1 MB ou mais de memória já eram comuns. Com uma configuração mais poderosa, mais memória RAM e mais aplicativos, finalmente começava a fazer sentido rodar o Windows. O sistema ainda tinha vários bugs e travava com freqüência, mas alguns usuários começaram a migrar para ele. Windows 2.0 O Windows emplacou mesmo a partir da versão 3.11. Ele era relativamente leve do ponto de vista dos PCs da época, e já suportava o uso de memória virtual, que permitia abrir vários programas, mesmo que a memória RAM se esgotasse. Já existiam também vários aplicativos for Windows e os usuários tinham a opção de voltar para o MS-DOS quando desejassem. Foi nesta época que os PCs começaram a recuperar o terreno perdido para os Macintoshs da Apple. Convenhamos, o Windows 3.11 travava com muita freqüência, mas tinha muitos aplicativos e os PCs eram mais baratos que os Macs. Na época começaram a surgir também os primeiros concorrentes para o Windows, como o OS/2 da IBM. Desde o início da era PC, a Microsoft e a IBM vinham trabalhando juntas no desenvolvimento do MS-DOS e outros programas para a plataforma PC. Mas, em 1990, a IBM e a Microsoft se desentenderam e cada uma ficou com uma parte do trabalho feito, com o qual tentaram tomar a liderança do mercado de sistemas operacionais. 88
  • 89. Alguns brincam que a IBM ficou com a parte que funciona e a Microsoft com o resto, mas a verdade é que apesar de o OS/2 da IBM ser tecnicamente superior ao Windows 95, foi o sistema das janelas quem levou a melhor, pois era mais fácil de usar e contava com a familiaridade dos usuários com o Windows 3.1, enquanto a IBM derrapava numa combinação de falta de investimento, falta de apoio aos desenvolvedores e falta de marketing. Inicialmente, o OS/2 era incompatível com os softwares desenvolvidos para o Windows, o que era um grande empecilho, já que o Windows era muito mais popular entre os desenvolvedores. Depois de muita negociação, a IBM conseguiu um acordo com a Microsoft, que permitia que o OS/2 executasse o Windows 3.11 dentro de uma máquina virtual, oferecendo compatibilidade com seus programas. Entretanto, o tiro acabou saindo pela culatra, pois desestimulou ainda mais o desenvolvimento de aplicativos nativos para o OS/2, fazendo com que ele acabasse concorrendo (em desvantagem) com o Windows em seu próprio território. Rodar programas Windows dentro do OS/2 era muito mais problemático e o desempenho era inferior, fazendo com que mais e mais usuários preferissem usar o Windows diretamente. Embora esteja oficialmente morto, o OS/2 ainda é utilizado por algumas empresas e alguns grupos de entusiastas. Em 2005 a Serenity comprou os direitos sobre o sistema, dando origem ao eComStation, um sistema comercial disponível no http://www.ecomstation.com/. OS/2 Warp 3 Um sistema muito mais bem-sucedido, que começou a ser desenvolvido no início da década de 90, é o Linux, que todos já conhecemos. O Linux tem a vantagem de ser um sistema aberto, que atualmente conta com a colaboração de milhares de desenvolvedores voluntários espalhados pelo globo, além do apoio de empresas de peso, como a IBM. 89
  • 90. Mas, no começo, o sistema era muito mais complicado que as distribuições atuais e não contava com as interfaces gráficas exuberantes que temos hoje em dia. Embora o Linux seja forte em servidores desde o final da década de 90, usar Linux em desktops é algo relativamente recente. Voltando ao lado negro da força, a Microsoft continuou melhorando seu sistema ao longo da década de 90. Foram lançados o Windows 95, depois o 98 e finalmente ME, com todos os problemas que conhecemos, mas com a boa e velha interface fácil de usar e uma grande safra de aplicativos que garantiram a manutenção e o crescimento da popularidade do sistema. Paralelamente, a Microsoft desenvolvia uma família de sistemas Windows destinadas a servidores, o Windows NT, que chegou até a versão 4, antes de ser transformado no Windows 2000. Em seguida, as duas famílias Windows fundiram-se no Windows XP, um sistema destinado tanto ao uso doméstico quanto em estações de trabalho e servidores, que é bem mais estável que o 98 e o ME, por ser baseado no NT. O XP foi aperfeiçoado ao longo dos anos seguintes, dando origem ao Vista. A Apple, por sua vez, passou por duas grandes revoluções. A primeira foi a migração do MacOS antigo para o OS X, que, por baixo da interface polida, é um sistema Unix, derivado do BSD. A segunda aconteceu em 2005, quando a Apple anunciou a migração de toda a sua linha de desktops e notebooks para processadores Intel. Mac OS X Do ponto de vista do hardware, os Macs atuais não são muito diferentes dos PCs, você pode inclusive rodar Windows e Linux através do boot camp. Entretanto, só os Macs são capazes de rodar o Mac OS X, devido ao uso do EFI, um firmware especial, que substitui o BIOS da placa-mãe. Essa combinação permitiu que a Apple se beneficiasse da redução de custo nos processadores e outros componentes para micros PCs, mas ao mesmo 90
  • 91. tempo conservasse seu principal diferencial, que é o software. E a história continua... ;) Do 486 ao Athlon Com o final da reserva de mercado, em 1992, a importação de computadores voltou a ser permitida no Brasil, sem maiores restrições. Rapidamente, os computadores de 8 bits e os XT's de fabricação nacional foram substituídos por micros 386 e 486, e muita gente teve a chance de comprar o primeiro micro. Isto coincidiu justamente com o início da era 486, fazendo com que eles fossem vendidos em enorme quantidade aqui no Brasil. É por isso que ainda é relativamente comum ver micros 486 por aí, muitos ainda funcionando, mas é muito raro encontrar um 386 ou anterior. Assim como outros processadores da época, o 486 era vendido encapsulado dentro de uma pastilha de cerâmica, que ao mesmo tempo protegia o processador e facilitava a dissipação do calor. Os contatos ficavam nas beiradas internas do processador e eram ligados aos pinos externos através de filamentos de ouro. Atualmente, são utilizados compostos plásticos resistentes em vez de cerâmica, e os contatos do processador são feitos através de minúsculos pontos de solda disponíveis na parte inferior do próprio wafer de silício. Esta foto de divulgação da Intel mostra um close de um 486 aberto. Veja que, graças ao zoom, é possível distinguir os componentes do processador dentro da pastilha de silício: O 486 possuía 1.2 milhões de transistores e era fabricado numa técnica de 1 micron. Isto significa que cada transístor media um milionésimo de centímetro. Como tínhamos 1.2 milhões deles, o die do processador tinha cerca de 120 milímetros quadrados. Para efeito de comparação, o 386 tinha apenas 275.000 transistores, quase 5 vezes menos. Esse brutal aumento de complexidade pode ser justificado por três inovações introduzidas pelo 486. Em primeiro lugar, ele usa um co-processador aritmético integrado, ao invés de um chip separado, como no 386. Em segundo, ele 91
  • 92. incorpora 8 KB de cache ultra-rápido diretamente no processador, complementando o cache mais lento disponível na placa-mãe. O cache interno passou a ser chamado de cache L1 (level 1, ou nível 1) e o cache da placa- mãe, de cache L2. O cache L1 integrado se tornou um item de série em todos os processadores a partir do 486, pois melhora de forma considerável o desempenho do processador, oferecendo acesso instantâneo aos dados que estão sendo processados. Mesmo em casos em que o cache L2 opera à mesma freqüência no processador (como no 486 DX-33, onde a placa-mãe também trabalhava a 33 MHz, ou nos processadores atuais, onde o cache L2 também é integrado ao processador) existe uma grande diferença nos tempos de acesso dos caches L1 e L2. Enquanto (nos processadores atuais) o cache L1 trabalha sempre com tempos de latência de 2 ou 3 ciclos, o L2 trabalha com latência de 7 ciclos ou mais e é acessado através de um barramento mais estreito. Voltando ao 486, foi introduzido também o processamento de instruções em etapas, recurso que é utilizado até os dias de hoje. A unidade de execução do 486 é composta por um pipeline de 5 estágios, que possuem funções distintas. Cada instrução passa sucessivamente por cada um dos 5 estágios, sendo que cada um deles faz seu trabalho em apenas um ciclo, passa a instrução adiante e recebe outra. Poderíamos fazer uma analogia com uma linha de produção, que passa a ter 5 trabalhadores em vez de um. O uso do pipeline trouxe duas vantagens. A primeira é que muitas instruções complexas, que consumiam vários ciclos do 386, passaram a ser executadas numa única passagem. A segunda é a redução do trabalho feito em cada estágio, o que permite que o processador seja capaz de atingir freqüências mais altas. O 486 foi vendido em três versões: o 486DX (a versão completa), o 486SX (uma versão de baixo custo, sem o co-processador aritmético) e o 486SL (uma versão de baixo consumo, destinada a notebooks). O 486SX foi relativamente popular no começo, devido ao custo mais baixo, mas ele acabou sendo logo descontinuado, de forma que o 486DX tornou-se rapidamente a versão mais popular. Os 486 (a partir do DX-33) foram também os primeiros processadores Intel a utilizarem coolers. Naquela época, eram usados dissipadores com menos de um centímetro de altura e exaustores minúsculos. Conforme os processadores passaram a dissipar cada vez mais calor, os coolers foram crescendo na mesma proporção, até chegar às monstruosidades que vemos atualmente ;). Aqui temos um cooler para 486 em comparação com um cooler low-end atual, dos mais baratos: 92
  • 93. Como disse, esse é apenas um cooler low-end, que pode ser usado em processadores AMD de até 1.8 GHz. Coolers para processadores dual core, ou voltados para quem deseja fazer overclock são muito maiores e mais pesados, com exaustores maiores, bases de cobre e hot-pipes, como este Arctic Freezer Pro: Exemplo de cooler que combina base de cobre, dissipador de alumínio e hot- pipes O cobre é capaz de absorver quantidades maiores de calor que o alumínio, mas em compensação é mais caro e mais difícil de se trabalhar. O alumínio, por sua vez, permite criar lâminas mais finas, que facilitam a dissipação do calor. Por isso, é comum que os coolers atuais utilizem bases de cobre e dissipadores de alumínio. Os hot-pipes são barras de cobre, maciças, ou contendo fluído, que permitem "transportar" o calor da base do cooler para o dissipador. Os hot-pipes são muito comuns em notebooks, onde o cooler é montado "na horizontal", com a base de um lado, o exaustor do outro e dois ou mais hot-pipes interligando as duas peças, como neste Toshiba A45: 93
  • 94. Hot-pipes utilizados no dissipador de um Toshiba A45 Mais recentemente, os hot-pipes passaram a ser usados também para criar "links" entre os diferentes componentes da placa-mãe, permitindo que eles sejam resfriados de forma conjunta, a partir de um único cooler, ou através de um conjunto de dissipadores passivos. Na foto a seguir temos um exemplo de uso, em uma placa Asus P5B Deluxe, onde um hot-pipe é utilizado para ligar o dissipador da ponte norte do chipset e o dissipador instalado sobre os reguladores de tensão da placa. Dessa forma, o fluxo de ar gerado pelo cooler do processador acaba resfriando de forma conjunta os dois componentes: Hot-pipes interligando o dissipador da ponte norte e reguladores de tensão em uma Asus P5B Deluxe De uma forma geral, os fabricantes de placas-mãe não gostam de utilizar coolers ativos em suas placas, pois eles aumentam o índice de defeitos. Com o tempo, todo cooler acumula poeira e passa a girar mais lentamente, até parar completamente. Quando isso acontece, a placa passa a superaquecer e travar, o que prejudica a imagem do fabricante. Além disso, coolers adicionais aumentam o nível de ruído do equipamento, aumentam (embora pouco) o consumo elétrico e assim por diante. Soluções de dissipação passiva como 94
  • 95. essa da Asus P5B são cada vez mais populares, já que aproveitam o grande fluxo de ar gerado pelo cooler do processador. Finalmente, temos os water coolers, que utilizam água ou outro líquido refrigerante no lugar do ar. O líquido é bombeado dentro do sistema, passando pelo water block (o módulo que fica sobre o processador, substituindo o cooler) e em seguida pelo radiador, onde é resfriado. Os water coolers são em geral mais eficientes que os coolers tradicionais, mas são sistemas muito caros, destinados a entusiastas. Um "meio termo" entre os coolers tradicionais e os water coolers são os water coolers self-contained, onde todos os componentes, incluindo a bomba, radiador, water-block e o reservatório para o fluído são combinados na forma de um design bastante compacto, de tamanho similar ao de um cooler tradicional: Evercool Silver Night, exemplo de water cooler self-contained Voltando ao tema inicial, outra inovação introduzida pelo 486 foi a multiplicação de clock, onde o processador trabalha numa freqüência mais alta que a placa- mãe. Isto parece natural hoje em dia, mas na época causou espanto. Graças a todas as inovações, as versões iniciais do 486 eram capazes de operar a 50 MHz ou mais. Por questões estratégicas, a Intel optou por lançar versões iniciais de 25 e 33 MHz, que funcionavam bem nas placas da época. Quando, pressionada pelos concorrentes, a intel decidiu gastar os cartuchos e lançar um 486 operando a 50 MHz, se viu num beco sem saída, pois na época não existia tecnologia para produzir uma placa-mãe capaz de trabalhar estavelmente a 50 MHz. A solução foi incluir um circuito simples, que fazia com que o processador trabalhasse ao dobro da freqüência da placa-mãe. Surgiu então o 486 DX-2 50, seguido pelo DX-2 66. Pouco depois, a Intel introduziu uma nova técnica de fabricação, com transistores de 0.6 micron, e foi capaz de lançar o 486 DX-4 100, que trabalha ao triplo da freqüência da placa-mãe: 95
  • 96. Processador placa-mãe Multiplicador 486 25 MHz 25 MHz 1x 486 33 MHz 33 MHz 1x 486DX-2 50 MHz 25 MHz 2x 486DX-2 66 MHz 33 MHz 2x 486DX-2 80 MHz 40 MHz 2x 486DX-4 75 MHz 25 MHz 3x 486DX-4 100 MHz 33 MHz 3x 486DX-4 120 MHz 40 MHz 3x O 486DX-4 trouxe um complicador adicional: o uso de 3.3v de tensão, ao invés dos 5v usados pelos processadores anteriores. Os fabricantes passaram a produzir placas compatíveis com toda a família, onde o ajuste da freqüência da placa-mãe, multiplicador e tensão usada pelo processador eram configurados através de jumpers. Isto continuou durante toda a era Pentium 1, fazendo com que os manuais de placas viessem com longas tabelas com as opções disponíveis, como neste exemplo, de uma placa TX Pro (para Pentium 1): Exemplo de tabela de configuração de jumpers, item de série nos manuais de placas antigas Com isso, surgiu também a possibilidade de fazer overclock do processador, usando uma freqüência ou multiplicador maior que o nominal. Era muito comum usar um 486DX-2 66 a 80 MHz ou um 486DX-4 100 a 120 MHz, 96
  • 97. aumentando a freqüência da placa-mãe de 33 para 40 MHz. Obviamente, fazer overclock aumenta o consumo e o aquecimento do processador (exigindo muitas vezes o uso de um cooler mais parrudo), além da possibilidade de redução da vida útil. Mesmo assim, ele se tornou incrivelmente popular, por permitir aumentar o desempenho do equipamento a custo zero. A partir das placas para Pentium II, os ajustes passaram a ser feitos através do setup, ao invés de jumpers. A placa detecta automaticamente as configurações usadas pelo processador, mas você pode alterar as configurações manualmente para fazer overclock. Se, por acaso, você exagerar na dose e o micro não der mais boot, use o jumper do CMOS (o único ainda encontrado em todas as placas atuais) para limpar o CMOS, restaurando as configurações originais. Aqui temos um exemplo de overclock (em uma placa moderna) feito através das configurações do setup. Neste exemplo, a placa foi configurada para operar a 148 MHz (em vez de 133), resultando em um aumento proporcional da freqüência do processador: Overclock através do Setup Mesmo depois do lançamento do Pentium 1, a plataforma 486 ainda teve uma sobrevida surpreendente graças aos processadores AMD 5x86, Cyrix Cx5x86 e ao Pentium overdrive da Intel, que serviam como opções de upgrade para quem tinha um 486DX-2 ou um 486DX-4, prometendo um desempenho similar ao dos processadores Pentium low-end. A grosso modo, um 486 possui um desempenho duas vezes superior ao de um 386 do mesmo clock. Isto significa que mesmo um 486SX de 25 MHz ganha fácil de um 386 de 40 MHz. Por outro lado, um 486 apresenta apenas 50 a 60% do desempenho de um Pentium 1 do mesmo clock. Isto significa que mesmo um Pentium 60 consegue superar um 486 DX4-100. O AMD 5x68 é um 486 "modernizado", lançado pela AMD no final de 1995. Ele vinha com 16 KB de cache L1, que operava em modo write-back (onde o cache trabalha cacheando tanto as operações de leitura, quanto as de escrita) e era fabricado numa técnica de produção de 0.35 micron, o que permitia que ele trabalhasse a 133 MHz (4x 33 MHz) e também o tornava menor e mais barato de se produzir. Na época, ele era o processador mais barato do mercado e permitia montar micros usando placas para 486, que também eram bem mais baratas. Isso o tornou especialmente popular aqui no Brasil. Apesar do clock de 133 MHz, o 5x86 concorria com o Pentium 75 em termos de desempenho. Era comum que o 5x68 fosse overclocado para 160 MHz 97
  • 98. (aumentando a freqüência da placa-mãe de 33 para 40 MHz), resultando em um desempenho próximo ao de um Pentium 90. Concorrendo com o 5x86, a Cyrix lançou o Cx5x86, um processador que utilizava uma arquitetura bastante similar ao Pentium da Intel, mas usava placas para 486. A versão de 100 MHz rivalizava com o 5x86 de 133 MHz, enquanto a de 120 MHz conseguia superá-lo com uma certa margem. O maior problema é que o Cx5x86 era bem mais caro, por isso acabou não sendo uma opção muito popular. Completando o time, a Intel lançou o Pentium overdrive, um Pentium adaptado para utilizar as placas para 486, que existia em versões de 63 e 83 MHz. Apesar da diferença de clock, o overdrive de 83 MHz conseguia competir de igual para igual com o 5x86 de 133 MHz, com o vencedor variando de acordo com a aplicação usada. Apesar disso, o AMD 5x86 acabou sendo mais popular devido à questão do custo. Muitas placas-mãe desta época vinham sem memória cache, trazendo no lugar um encaixe marrom, ao lado do processador, que permitia encaixar um módulo COAST (cache on a stick), com 128, 256 ou 512 KB de cache. Essas placas são bem diferentes da primeira safra de placas para 486, pois já possuem slots PCI e utilizam pentes de memória de 72 vias, assim como as placas para Pentium 1. Placa mãe para 486, com um 5x86 e o módulo COAST instalado Com o Pentium, a Intel tentou solucionar os principais gargalos de desempenho da plataforma anterior, mudando vários aspectos não apenas do processador, mas também nas placas-mãe para ele. A primeira mudança trazida pelo Pentium foi o aumento da quantidade de cache L1, que passou a ser de 16 KB, dividido em dois blocos de 8 KB. Isso melhorou a eficiência do cache (em relação ao cache unificado do 486), permitindo que o processador consiga acessar instruções e os dados necessários (para executá-las) simultaneamente, em vez de precisar fazer duas operações separadas. 98
  • 99. Além do aumento no tamanho, o cache passou a ser acessado através de um barramento interno de 512 bits (256 bits para o cache de dados e mais 256 para o de instruções), contra apenas 128 bits no 486. Assim como no 5x86 da AMD, passou também a ser utilizado cache write-back, que também cacheava as operações de escrita. O cache usado no 486 cacheia apenas as operações de leitura, o que permite ao processador ganhar tempo ao ler dados, mas não ajuda na hora de gravar, situação onde o processador tinha que esperar pela memória RAM. Com a popularização dos games e aplicativos 3D de uma forma geral, o desempenho do processador em ponto flutuante passou a ser cada vez mais importante. Combinado com as melhorias no cache, foi desenvolvido um co- processador aritmético cerca de 5 vezes mais rápido que o usado no 486. O co-processador do Pentium era tão rápido (comparado com outros processadores da época), que mesmo um K6-2 perdia para um Pentium da mesma freqüência em jogos e aplicativos muito dependentes de cálculos de ponto flutuante. O Pentium também foi o primeiro processador Intel a usar uma arquitetura superescalar. Internamente, o Pentium possui duas unidades de execução, com a inclusão de um circuito de branch prediction, encarregado de dividir as instruções entre as duas unidades e antecipar o processamento de instruções, de forma a manter ambas ocupadas na maior parte do tempo. Essa tendência de "executar mais por ciclo de clock" continua até os dias de hoje, com os processadores incluindo um número cada vez maior de unidades de execução, mais memória cache, circuitos aprimorados de branch prediction, sem falar nos processadores dual-core e quad-core. Mesmo que existisse um 486 ou Pentium capaz de operar a 2 ou 3 GHz, o desempenho seria ridiculamente inferior ao de um processador atual operando na mesma freqüência. Pentium 133, com o encapsulamento de cerâmica Acompanhando as melhorias no processador, foram feitas mudanças nas placas-mãe, de forma a melhorar o desempenho de acesso à memória. Em primeiro lugar, as placas para Pentium operam a freqüências mais altas: 60 ou 66 MHz, de acordo com o processador usado. Embora as memórias FPM e EDO usadas na época não fossem capazes de acompanhar a mudança (elas passaram a trabalhar usando tempos de espera), o aumento da freqüência permitiu usar chips de cache L2 mais rápidos (já que eles operavam na 99
  • 100. freqüência da placa-mãe). Além disso, o Pentium passou a acessar a memória a 64 bits, ao invés de 32 bits como no 486, o que efetivamente dobrou a velocidade do barramento com a memória. Como os pentes de 72 vias usados na época eram módulos de 32 bits, era necessário utilizá-los aos pares, sempre 2 ou 4 módulos, sendo que os módulos dentro de cada par deveriam ser idênticos. Os pentes de 72 vias são antecessores diretos dos módulos DIMM usados atualmente. Na foto a seguir temos uma comparação entre um módulo DIMM, um módulo de 72 vias e um antigo módulo de 30 vias, dos usados nos micros 386 e nos primeiros 486: Os processadores Pentium existiram em versões de 60 a 200 MHz, sempre com a placa-mãe operando a 60 ou 66 MHz e usando um multiplicador de 1x, 1.5x, 2x, 2.5x ou 3x para atingir a freqüência anunciada. Era comum fazer overclock aumentando a freqüência da placa-mãe para 75 MHz, opção oferecida pela maioria das placas soquete 7 da época. Assim como na época dos micros 486, as placas-mãe para processadores Pentium (com exceção de placas muito antigas) suportam várias freqüências de barramento e vários multiplicadores distintos. Na maioria dos casos é possível configurar a placa-mãe para utilizar qualquer processador da família. Em 1996 a Intel lançou o Pentium MMX, que foi o integrante final da família Pentium 1. Ele chegou ao mercado acompanhado de uma forte campanha de marketing, que divulgava as novas instruções MMX como a maior invenção da humanidade depois da batata frita ;). As instruções MMX permitiam que até 4 instruções simples fossem combinadas numa única instrução complexa, de forma a serem processadas em um único ciclo de clock. A Intel esperava que elas fossem capazes de multiplicar o desempenho do processador em aplicativos multimídia, principalmente em compressão e descompressão de áudio, mas no final acabou dando com os burros n'agua. As instruções MMX continuam disponíveis nos processadores atuais, mas nunca foram muito utilizadas devido a uma combinação de fatores. O primeiro 100
  • 101. é que elas só ajudam em algumas operações envolvendo números inteiros, enquanto a maioria dos aplicativos de multimídia e jogos utilizam predominantemente instruções de ponto flutuante. O segundo é que para tirar proveito delas, os aplicativos precisam ser manualmente otimizados e não existe nada que os programadores odeiem mais do que ficar otimizando seus programas para cada conjunto de instruções existente. O terceiro é que, mesmo em aplicativos otimizados, elas não conseguem fornecer o ganho de desempenho esperado e, como se não bastasse, logo surgiram conjuntos mais completos e adequados de instruções multimídia, como o 3D-Now (introduzido pela AMD no K6-2) e o SSE (desenvolvido pela Intel e usado a partir do Pentium III). Para não depender apenas das novas instruções, a Intel aumentou o cache L1 do processador, de 16 para 32 KB. Com isto, o MMX passou a ser um pouco mais rápido do que um Pentium 1 da mesma freqüência, mesmo nos aplicativos sem otimização. Lembre-se de que naquela época o cache L2 do processador ainda fazia parte da placa-mãe e operava a apenas 66 MHz. Um cache L1 competente era essencial. O MMX foi lançado em versões de 200 e 233 MHz, ambas compatíveis com a grande maioria das placas soquete 7 existentes. Ele também foi o primeiro processador Intel a usar um encapsulamento plástico com um dissipador metálico, ao contrário da cerâmica usada nos anteriores. Essa mudança foi na verdade bastante benéfica, pois o dissipador metálico é muito mais eficiente na dissipação do calor do que a cerâmica, o que melhora a eficiência do cooler. Pentium MMX, com o encapsulamento PGA Na foto a seguir temos uma VX Pro, uma placa bem comum no final da era Pentium. Ela suporta todos os processadores da família, até o 233 MMX. Note que ela inclui três slots ISA, pois na época os modems e placas de som ISA ainda eram bastante comuns: 101
  • 102. Além dos 4 soquetes para pentes de 72 vias, ela possui também dois soquetes para módulos DIMM, mas eles não servem para muita coisa, pois o chipset so é capaz de endereçar chips de memória de até 2 MB, permitindo que fossem utilizados módulos de no máximo 32 MB. Mesmo que você tentasse instalar um módulo de maior capacidade, a placa só reconhecia 16 ou 32 MB, de acordo com o número de chips no módulo. Durante a era Pentium, tivemos também os chips K5 e K6 (da AMD), o Cyrix 6x86 e o IDT C6, que eram compatíveis com as mesmas placas, mas que possuíam uma fatia relativamente pequena do mercado. A Cyrix foi comprada pela VIA em 1999, que usou sua tecnologia para desenvolver os processadores VIA C3 e VIA C7, que são vendidos atualmente. A IDT era uma fabricante menor, que desapareceu sem deixar rastros. Das antigas concorrentes, sobrou a AMD, que, com o lançamento do Athlon 64 e derivados, chegou a superar a Intel em volume de processadores vendidos em 2005 e 2006. Na época, a AMD ainda era uma empresa menor, que enfrentava problemas financeiros depois das fracas vendas dos processadores K5 e K6. Para completar, a Intel passou a utilizar um barramento proprietário no Pentium II, impedindo que a AMD desenvolvesse processadores capazes de utilizar as placas-mãe para ele. Sem escolha, a AMD apostou tudo no K6-2, um processador relativamente poderoso, que mantinha compatibilidade com as placas soquete 7. Em termos de processamento de inteiros, o K6-2 competia diretamente com um Pentium II do mesmo clock, o maior problema continuava sendo o co-processador aritmético, que era até duas vezes mais lento. 102
  • 103. AMD K6-2, com o encapsulamento CPGA Para reduzir a diferença, a AMD investiu no desenvolvimento de um novo conjunto de instruções, o 3D-Now, formado por 27 novas instruções, com o objetivo de agilizar o processamento 3D, sobretudo em jogos. O 3D-Now só ajudava em aplicativos otimizados, mas ao contrário do MMX ele era realmente eficiente, o que levou muitas empresas a otimizarem seus títulos para ele. O K6-2 também incorporou, sem muito alarde, o suporte às instruções MMX. Junto com a AMD, fabricantes de chipsets, como a VIA, SiS e Ali foram prejudicados pela decisão da Intel, pois não podiam desenvolver chipsets para o Pentium II sem o pagamento de licenças, o que continua até os dias de hoje. Isto causou uma certa "revolta" entre os fabricantes, que passaram a apoiar a AMD, desenvolvendo placas soquete 7 aprimoradas, que suportavam barramento de 100 MHz, utilizavam pentes de memória DIMM e possuíam slots AGP. Essas placas passaram a ser chamadas de placas super 7 e, junto com os processadores K6-2, se tornaram uma opção de baixo custo para quem não queria gastar com um Pentium II. Esta é uma Asus P5A-B, uma placa super 7 bastante comum na época. Veja que ela possui slot AGP e três soquetes para pentes de memória DIMM, que permitem o uso de módulos até 256 MB. Ela oferecia suporte a toda a família K6-2, até o K6-2 550, além de manter suporte aos processadores antigos. A qualidade da placa não era das melhores, sobretudo se comparada com placas mais caras para o Pentium II, mas ela era barata o que para muitos era argumento suficiente: 103
  • 104. Asus P5A-B, exemplo de placa super 7 Uma das prioridades da AMD foi manter a compatibilidade com as placas soquete 7 antigas. Por isso, optaram por vender o K6-2 com o multiplicador destravado. Isso permitia instalar processadores K6-2 em placas antigas, que trabalhavam a apenas 66 MHz, desde que a placa suportasse a tensão de 2.2v (ou 2.4v nas versões mais recentes) utilizada pelo processador. Um K6-2 de 300 MHz podia ser utilizado tanto numa placa-mãe configurada para operar a 100 MHz com multiplicador de 3x quanto em uma placa configurada para operar a 66 MHz com multiplicador de 4.5x. Naturalmente, o desempenho era melhor na placa de 100 MHz, pela diferença na freqüência de operação da memória e do cache L2, mas o esforço em manter compatibilidade com as placas antigas foi louvável. Em 1999 a AMD lançou uma última atualização para a plataforma K6, na forma do K6-3, o primeiro processador AMD a trazer cache L2 integrado ao processador. Além de manter os mesmos 64 KB de cache L1 do K6-2, o K6-3 incorporou 256 KB de cache L2 full-speed (operando na mesma freqüência do processador), assim como os processadores atuais. Ele também aproveitava o cache disponível nas placas soquete 7, que passava a funcionar como um cache L3, resultando em mais um pequeno ganho. Embora fosse perceptivelmente mais rápido que um K6-2 do mesmo clock, o K6-3 era mais caro e foi lançado no finalzinho da era soquete 7, quando a plataforma já caminhava para a obsolência. Por causa disso, ele acabou não fazendo muito sucesso, sendo substituído rapidamente pelos Athlons e Durons. Como disse, ao desenvolver o Pentium II, a Intel optou por desenvolver um barramento proprietário (o GTL+), de forma a dificultar a vida dos concorrentes. Inicialmente a AMD continuou usando as placas soquete 7, mas em seguida respondeu com o EV6, um barramento próprio (na verdade desenvolvido pela 104
  • 105. Alpha Digital e licenciado pela AMD), utilizado pelos processadores Athlon e Duron. A partir daí, nunca mais tivemos um barramento padrão, que permitisse a criação de placas-mãe com suporte a processadores dos dois fabricantes, como na época das placas soquete 7. As primeiras versões do Pentium II utilizavam o encapsulamento SEPP (Singled Edge Processor Package), um formato dispendioso, em que ao invés de um pequeno encapsulamento de cerâmica, temos uma placa de circuito, que traz o processador e o cache L2 integrado. Protegendo esta placa, temos uma capa plástica, formando um cartucho muito parecido com um cartucho de videogame, onde o cooler era instalado na parte de trás. O encaixe para ele foi batizado de slot 1: Pentium II, com o encapsulamento SEPP O Pentium II inclui 512 KB de cache L2, que opera à metade da freqüência do processador (num Pentium II 400, por exemplo, o cache L2 opera a 200 MHz) e por isso é bem mais rápido que o cache usado nas placas soquete 7, que opera a apenas 66 ou 100 MHz. Com o cache movido para dentro do processador, as placas deixaram de trazer cache externo, o que continua até os dias de hoje. O único processador para micros PC a utilizar cache L3 instalado na placa-mãe foi mesmo o K6-3. Existiram séries de processadores Intel, como o Pentium 4 Extreme Edition (lançado em 2005) e algumas versões do Intel Xeon que também utilizavam cache L3, mas nesses casos o cache era instalado dentro do encapsulamento do processador, e não na placa-mãe. Durante muito tempo, a idéia de utilizar cache L3 acabou sendo abandonada, em favor de caches L2 cada vez maiores, mas tudo indica que ele retornará no AMD Phenom e no Intel Nehalem. Além do cache L2, o Pentium II manteve os 32 KB de cache L1 (dividido em dois blocos de 16 KB para dados e instruções) do MMX. Abrindo o cartucho, é possível ver os dois grandes chips de cache L2 instalados próximos ao die do processador: 105
  • 106. Pentium II com core Klamath, sem a cobertura plástica O Pentium II foi produzido em duas arquiteturas diferentes. As versões de até 300 MHz utilizaram a arquitetura Klamath, que consistia em uma técnica de fabricação de 0.35 micron, muito parecida com a utilizada nos processadores Pentium MMX. Nas versões a partir de 333 MHz foi utilizada a arquitetura Deschutes de 0.25 micron, que resultou em uma dissipação de calor muito menor, possibilitando o desenvolvimento de processadores mais rápidos. As versões do Pentium II de até 333 MHz usam bus de 66 MHz, enquanto que as versões a partir de 350 MHz usam bus de 100 MHz, quebrando a compatibilidade com as placas da geração anterior. Com o lançamento do Pentium II, a Intel abandonou a fabricação do Pentium MMX, passando a vender apenas processadores Pentium II que eram muito mais caros. O problema com essa estratégia foi que a Intel passou a perder terreno rapidamente no mercado de PCs de baixo custo, principalmente para o K6-2. Para preencher a lacuna, a Intel lançou o Celeron, que inicialmente era uma simples versão castrada do Pentium II, sem os chips de cache e o invólucro plástico. O Celeron original era muito lento, pois não possuía cache L2 algum, contando apenas com os 32 KB de cache L1. O cache L2 é um componente extremamente importante nos processadores atuais, pois apesar de o desempenho dos processadores ter aumentado quase 10.000 vezes nas últimas duas décadas, a memória RAM pouco evoluiu em velocidade. Pouco adianta um processador veloz, se a todo instante ele tem que parar o que está fazendo para esperar dados provenientes da memória RAM. É justamente aí que entra o cache secundário, reunindo os dados mais importantes da memória para que o processador não precise ficar esperando. Retirando o cache L2, a performance do equipamento cai em 40% ou mais. Justamente por isso, além de perder feio para o Pentium II, o Celeron sem cache perdia até mesmo para processadores mais antigos. Essa primeira safra foi rapidamente substituída pelo Celeron Mendocino, que trazia 128 KB de cache L1 interno (full-speed), que resolveu o problema da performance. O Mendocino foi produzido em versões de 300 a 533 MHz, sempre utilizando barramento de 66 MHz. Além de possírem um desempenho próximo ao de um Pentium II do mesmo clock (o cache do Pentium II é maior, porém mais lento), as versões de 300, 333 e 366 MHz permitiam overclocks de 50%, atingindo respectivamente 450, 500 e 550 MHz com boa estabilidade. 106
  • 107. Não poderia ser mais simples: bastava investir num cooler de boa qualidade e instalar o Celeron Mendocino em uma placa-mãe configurada para operar a 100 MHz. O Celeron Mendocino foi também o primeiro processador a utilizar o soquete 370, que mais tarde seria utilizado pelo Pentium III Coppermine e demais processadores da família. Foram produzidos também adaptadores, que permitiam usar processadores soquete 370 em placas slot 1 compatíveis: Celeron Mendocino instalado em uma placa slot 1 usando o adaptador Em fevereiro de 1999 foi lançado o Pentium III. A versão inicial (que utilizava o core Katmai) não trazia grandes mudanças: era basicamente um Pentium II, que utilizava o encapsulamento SEPP, mantinha o uso do cache externo e operava a 500 MHz. A novidade foi a inclusão das instruções SSE que, assim como as instruções 3D-Now da AMD, eram voltadas para aplicativos multimídia e 3D. Pouco depois, em outubro de 1999, foi lançado o Pentium III Coppermine, uma versão aprimorada, produzida numa técnica de 0.18 micron, que trazia 256 KB de cache L2 integrado (operando na mesma freqüência do processador) e abandonou o formato SEPP em favor do FC-PGA, destinado a uso em conjunto com as placas-mãe soquete 370. A mudança decretou a morte do slot 1, que não voltou a ser utilizado por outros processadores Intel. Apesar disso, as versões do Pentium III PC-PGA que utilizavam bus de 100 MHz ainda podiam ser usadas na maioria das placas slot 1 antigas, com a ajuda do adaptador (muitas placas precisavam de uma atualização de BIOS). 107
  • 108. Pentium III, com o encapsulamento FC-PGA Não demorou para que a Intel lançasse também uma nova versão do Celeron, baseada na mesma arquitetura, dando continuidade à tradição de overclocks gigantescos. O Celeron Coppermine nada mais era do que um Pentium III com metade do cache L2 desativado (128 KB), que utilizava bus de 66 MHz (em vez de 100 ou 133, como as diferentes versões do Pentium III). Embora fosse originalmente mais lento que um Pentium III do mesmo clock, o Celeron Coppermine de 600 MHz podia tranquilamente operar a 900 MHz, utilizando bus de 100 MHz, oferecendo um desempenho similar ao de um Pentium III 800 a uma fração do custo. Eu mesmo tenho um, funcionando até hoje. ;) O Celeron acabou se revelando um bom negócio para a Intel, pois permitia aproveitar processadores Pentium III com defeitos na memória cache, que de outra forma iriam para o lixo. Quando ocorre um defeito no cache, em geral apenas alguns poucos bits são afetados, normalmente bits fisicamente próximos. Antes de saírem de fábrica, todos os processadores são rigorosamente testados, e os que apresentam defeitos no cache são separados. O Pentium III foi projetado de tal maneira que o cache L2 era dividido em duas seções de 128 KB, que podiam ser desabilitadas individualmente (um processo irreversível). Como é usada apenas a metade "boa" do cache, o processador funciona perfeitamente e temos mais um consumidor satisfeito. O Celeron Coppermine foi lançado em versões de até 950 MHz, sendo que a partir do Celeron 800 passou a ser utilizado bus de 100 MHz (que melhorou um pouco o desempenho do processador em relação aos antigos). O Pentium III passou a utilizar barramento de 133 MHz e foi lançado em versões de até 1.0 GHz, até ser substituído pelo Pentium 4. Entre 2001 e 2002, já depois de descontinuar o Pentium III, a Intel produziu pequenas quantidades do Celeron Tualatin, uma versão aprimorada, produzida numa técnica de 0.13 micron e equipada com 256 KB de cache L2. O Tualatin existiu em versões de 1.0 e 1.4 GHz e era compatível com a maioria das placas soquete 370 para Pentium III (embora muitas precisassem de uma atualização de BIOS). Ele possuía um bom desempenho em relação ao Pentium 4 e era bastante econômico com relação ao consumo elétrico e 108
  • 109. aquecimento, mas a Intel optou por não levar o projeto adiante, com medo de prejudicar as vendas do Pentium 4. Exemplar raro do Tualatin de 1.2 GHz Uma questão interessante é que os processadores Pentium II e Pentium III são derivados do Pentium Pro, um processador destinado a workstations e servidores, lançado pela Intel em 1995, em versões de 150, 166, 180 e 200 MHz. Embora fosse contemporâneo do Pentium I, o Pentium Pro era baseado numa arquitetura completamente diferente (a plataforma P6), inspirada nos processadores RISC. Em vez de processar diretamente todas as instruções complexas incluídas no conjunto x86, o Pentium Pro incluía unidades de execução capazes de processar apenas instruções simples, porém a uma grande velocidade, quase sempre uma instrução em cada unidade de execução, por ciclo de clock. Antes de chegarem às unidades de execução, as instruções complexas utilizadas pelos programas eram convertidas em instruções simples pelas unidades decodificadoras, incluídas no processador. O Pentium Pro incluía três unidades de execução e uma unidade decodificadora capaz de mantê-las ocupadas na maior parte do tempo. Para completar, o processador incluía 256 KB de cache L2 full speed no mesmo encapsulamento do processador. Isto soa familiar não é? O Pentium Pro é muito similar a um Pentium III Coppermine, só que lançado 4 anos antes. Na época a Intel não possuía tecnologia para incluir o cache L2 diretamente no die do processador, por isso era utilizado um wafer separado, porém incluído no mesmo encapsulamento do processador. Isso fazia com que o Pentium Pro tivesse um formato retangular: 109
  • 110. Interior de um Pentium Pro, com o chip de cache separado Naturalmente, o Pentium Pro não possuía as instruções SSE, mas os ingredientes básicos já estavam presentes. Podemos dizer que tanto o Pentium II quanto o Pentium III são versões melhoradas do Pentium Pro, adaptadas ao mercado doméstico. Uma observação é que também existiram versões do Pentium Pro com 512 KB e 1 MB de cache, mas elas eram muito mais caras e por isso foram produzidas em pequenas quantidades. Voltando à AMD, embora o K6-2 tenha dado combate ao Pentium II e às primeiras versões do Pentium III, as limitações da antiga plataforma soquete 7 limitavam o desempenho do processador. Outro problema é que o K6-2 era uma plataforma de baixo custo, que levava ao aparecimento de placas-mãe cada vez mais baratas e de qualidade cada vez pior. Os constantes problemas com as placas acabaram fazendo com que o K6-2 ficasse com má fama no mercado, embora o processador em si apresentasse um bom custo benefício. Em 1999 a AMD finalmente conseguiu lançar o Athlon (na época também chamado de K7), uma plataforma completamente nova, que conseguiu solucionar os principais problemas associados ao K6-2. Apesar de toda a evolução, todos os processadores AMD lançados daí em diante, incluindo os Athlon 64 dual-core e quad-core continuam sendo baseados nessa mesma arquitetura. As primeiras versões do Athlon utilizavam um formato de cartucho, muito similar ao usado pelo Pentium II, com chips de memória cache externos, operando à metade da freqüência do processador. As placas-mãe utilizavam o slot A, um conector similar ao usado pelo Pentium II, porém incompatível e com uma pinagem diferente. O uso de cache externo atrapalhou o desempenho dessa versão inicial, principalmente se levarmos em conta que na época a Intel já vendia o Pentium III Coppermine, com cache full-speed, que era mais rápido e mais barato de se produzir. Para piorar, a AMD não conseguiu obter chips de memória cache capazes de operar a mais de 350 MHz, de forma que o divisor da freqüência do cache foi aumentando conforme lançava processadores mais rápidos. As versões de até 700 MHz do Athlon slot A trazem cache L2 operando à metade da freqüência do processador. As versões de 750, 800 e 850 MHz 110
  • 111. trazem cache operando a apenas 2/5 da freqüência, enquanto nas versões de 900, 950 e 1 GHz o cache opera a apenas 1/3 da freqüência. Athlon slot A, baseado na arquitetura K7 Essa cara e desajeitada versão inicial do Athlon foi rapidamente substituída pelo Athlon Thunderbird, que incorporou 256 KB de cache L2 full-speed e voltou a utilizar o formato soquete, dando início à era soquete A (soquete 462). Esse mesmo formato continuou sendo usado pelos Durons, Athlons XP e Semprons, até a introdução do Athlon 64, que passou a utilizar placas-mãe baseadas no soquete 754 ou 939. O Duron substituiu o K6-2 como processador de baixo custo da AMD e prestou bons serviços, concorrendo com as diferentes versões do Celeron. Em todas as suas encarnações, o Duron possui apenas 64 KB de cache L2. Entretanto, ele conserva o massivo cache L1 de 128 KB do Athlon, o que cria uma configuração interessante, com mais cache L1 do que cache L2. Assim como o Athlon, o Duron utiliza um sistema de cache "exclusivo", onde os dados armazenados no cache L1 são sempre diferentes dos armazenados no cache L2. O cache L1 do Celeron, por sua vez, armazena sempre cópias de informações já armazenadas no cache L2 de 128 KB. Graças a essa característica, o Duron acaba levando vantagem com relação ao cache, pois é capaz de armazenar um total de 196 KB de informações nos caches, contra apenas 128 KB no Celeron. A versão inicial do Duron utilizava o core Spitfire (baseado no Athlon Thunderbird) e existia em versões de 600 a 950 MHz. Em seguida foi lançado o Duron Morgan (baseado no Athlon XP), que existiu em versões de até 1.3 GHz, quando foi substituído pelo Sempron. As versões iniciais do Athlon Thunderbird utilizavam barramento de 100 ou 133 MHz, assim como o Pentium III. Entretanto, as versões seguintes (com core Thoroughbred e Barton) passaram a utilizar bus de 166 ou 200 MHz, memórias DDR e tensões mais baixas, quebrando a compatibilidade com as placas antigas. Com o uso de memória DDR, o barramento passa a realizar duas transferências por ciclo, por isso é comum que os fabricantes dobrem a freqüência na hora de divulgar as especificações, chegando aos 333 (166 x 2) ou 400 MHz (200 x 2). 111
  • 112. Como citei anteriormente, a Intel patenteou o barramento GTL+ usados pelos processadores Pentium II em diante, assim como o slot 1 e o soquete 370, de forma que a AMD não podia utilizá-los em seus processadores. A AMD optou então por licenciar o barramento EV6, desenvolvido pela Alpha Digital. O EV6 possui uma vantagem importante sobre o barramento da Intel, que é o fato de ser um barramento ponto a ponto. Nele, cada processador tem seu barramento exclusivo de comunicação com o chipset, permitindo o desenvolvimento de placas para dois ou quatro processadores Athlon, trabalhando em SMP, cada um com o seu barramento exclusivo com a memória e outros componentes, resultando em um ganho considerável de desempenho em relação ao Pentium III. Embora a AMD não tenha conseguido tirar muito proveito deste recurso nos desktops, ele ajudou o Athlon a ganhar espaço nos servidores, onde máquinas com dois processadores são comuns. A seguir temos uma foto que mostra como o Athlon é fisicamente. Essa foto foi cedida pela própria AMD e é bem interessante, pois ajuda a entender como os dados trafegam dentro do processador: Veja que a foto está dividida em pequenos retângulos, cada um mostrando a área ocupada por cada componente do processador. Infelizmente tudo está em inglês, mas aqui vai uma breve legenda dos componentes mais importantes (na ordem em que cada componente aparece na ilustração, começando de cima) Floating Point Execution Units: São as unidades de execução de ponto flutuante. Nada mais é do que a parte fundamental do coprocessador aritmético, fundamental em vários aplicativos. 112
  • 113. Floating Point Control: Este componente controla a ordem em que as instruções serão executadas pelo co-processador aritmético, permitindo que as unidades de ponto flutuante fiquem ocupadas na maior parte do tempo. Floating Point Scheduler: Armazena as próximas instruções que serão processadas pelo co-processador. Este componente é essencial para o trabalho do Floating Point Control. 64 Kbyte Data Cache: Os 128 KB de cache L1 do Athlon são divididos em dois blocos, 64 KB para dados e 64 KB para instruções. Esta divisão meio a meio é utilizada na maioria dos processadores atuais e melhora a velocidade de acesso, pois permite que os dois blocos sejam acessados simultaneamente. O Data Cache é a metade que armazena dados. Integer Execution Unit: Composto pelas unidades de execução de inteiros, ele é o componente básico de qualquer processador. É aqui que são processadas as operações envolvendo números inteiros. Instruction Control Unit: Circuito que controla o envio de instruções para as unidades de execução de inteiros. Também ordena as instruções, de forma que possam ser processadas mais rápido. Bus Interface Units: É por aqui que os dados entram e saem do processador. Controla a comunicação do processador com o chipset e com os demais componentes do micro. 64 Kbyte Instruction Cache: É o segundo bloco do cache L1, o bloco que armazena instruções. Branch Prediction: O circuito de Branch Prediction é um dos componentes mais importantes dos processadores atuais, responsável por organizar as instruções de forma a manter as unidades de execução do processador ocupadas. Além de procurar adiante no código por instruções que podem ser "adiantadas", ele "adivinha" o resultado de operações de tomada de decisão (levando em conta fatores como o resultado de operações similares executadas anteriormente), permitindo que o processador vá "adiantando o serviço" enquanto o resultado da primeira operação ainda não é conhecido. Como todo bom adivinho, ele às vezes erra, fazendo com que o processador tenha que descartar todo o trabalho feito. Apesar disso, o ganho é muito grande, pois nos processadores atuais o circuito de branch prediction acerta em mais de 90% dos casos. Predecode Array: Esta é a porta de entrada do processador. O predecore array é composto pelos circuitos que convertem as instruções x86 enviadas pelos programas nas instruções simples que o processador executa internamente. Até certo ponto, tanto o Pentium III quanto o Athlon e outros processadores x86 atuais trabalham da mesma maneira. Internamente, o processador é capaz de 113
  • 114. executar apenas instruções simples, para ser mais exato apenas quatro instruções: adição, atribuição, leitura e gravação. Se você já estudou alguma linguagem de programação, aprendeu a importância das variáveis, que são pequenos espaços de memória reservados para guardar algum tipo de informação. Existem vários tipos de variáveis, de 8, 16, 32 bits, etc. que mudam de nome dependendo da linguagem de programação usada. A instrução de atribuição do processador é usada sempre que é necessário criar ou alterar o valor de uma variável. Por exemplo, imagine que um programa qualquer criou uma variável de 8 bits com o número 5. A próxima instrução manda que o programa compare o valor da variável com o número 6 e, caso o número seja menor, altere o valor para 9. Como 5 é menor que 6, o programa decide fazer a alteração, utilizando a operação de atribuição do processador, que lê o valor 9 e grava-o no espaço de memória da variável, que passa a ter o valor 9 em vez de 5. A instrução de soma é a operação básica que permite fazer todo tipo de processamento, enquanto as instruções de leitura e gravação permitem mover os dados. Basicamente é só isso que um processador atual sabe fazer. Operações mais complexas são executadas através da combinação de várias instruções simples. Para calcular uma multiplicação, por exemplo, o processador utilizará seqüencialmente várias operações de soma. Na verdade, dentro do processador todas as operações, mesmo as mais complexas, são calculadas com base em várias operações de soma, feitas entre os valores binários processados pelo processador. Uma operação de subtração é obtida através de uma operação de atribuição, que transforma um dos valores em negativo, seguida por uma operação de soma. Uma operação de divisão é obtida executando-se uma seqüência de operações de subtração e todos os demais cálculos, mesmo os cálculos mais complexos, executados pelo co-processador aritmético, são resolvidos usando apenas as quatro operações, obtidas a partir das simples instruções de soma e atribuição. Pois bem, o conjunto de instruções x86, utilizadas pelos programas e com as quais qualquer processador destinado a micros PC deve ser compatível, é composto tanto por instruções simples (soma, subtração, leitura, gravação, comparação, etc.) quanto por instruções muito complexas, que devem ser quebradas em várias instruções simples para que possam ser executadas pelo processador. Excluindo-se componentes de apoio, como o cache L1, deixando apenas a parte "funcional" do processador, podemos dividir o processador em três partes. A primeira parte é o decodificador de instruções. Esse componente tem a função de converter as instruções x86 usadas pelos programas nas instruções simples que podem ser executadas pelo processador. As instruções simples vão então para uma unidade de controle (o circuito de branch prediction), que organiza as instruções da forma que possam ser executadas mais 114
  • 115. rapidamente. As instruções formam então uma fila (organizada pelo scheduler) a fim de permitir que a unidade de controle tenha tempo de fazer seu trabalho. Lembre-se de que os processadores atuais são superescalares, executam várias instruções por ciclo, simultaneamente, o que torna essencial a existência de algum circuito que as coloque numa ordem em que a execução de uma não dependa do resultado da execução de outra. Finalmente, temos as unidades de execução, onde as instruções preparadas e organizadas são finalmente processadas. Veja que todos os circuitos trabalham simultaneamente, com o objetivo de manter as unidades de execução ocupadas: A lógica é que quanto mais unidades de execução tivermos trabalhando ao mesmo tempo, mais instruções todas juntas serão capazes de processar e quanto mais circuitos de decodificação e controle tivermos, mais eficiente será a decodificação das instruções, resultando em um processador mais rápido. O maior limitante é que a maioria dos programas são desenvolvidos esperando que o processador processe uma instrução de cada vez. Temos também um grande número de operações de tomada de decisão, onde o processador precisa resolver uma determinada operação para então poder decidir o que vai fazer depois. Graças aos circuitos de branch prediction, os processadores são capazes de ir "adiantando o serviço", processando outras instruções mais adiante, enquanto a operação de tomada de decisão é solucionada. De qualquer forma, existe um limite para quanto trabalho o processador é capaz de executar por ciclo. Com mais do que três ou quatro unidades de execução, o processador acaba ficando ocioso grande parte do tempo, de forma que processadores muito mais complexos do que isso acabariam sendo um desperdício de recursos. Em vez de adicionar mais e mais unidades de execução aos processadores, os fabricantes passaram, a partir de um certo ponto, a desenvolver processadores dual-core e quad-core, onde temos dois ou quatro processadores no mesmo encapsulamento, trabalhando como se fossem um único processador. Isto resulta num melhor desempenho ao rodar vários aplicativos simultaneamente (você pode jogar e ripar um DVD ao mesmo tempo, por exemplo) e é muito mais simples e barato para os fabricantes do que desenvolver um único e processo super-processador. Como atualmente é comum manter um grande número de aplicativos abertos simultaneamente, somados com o antivírus, 115
  • 116. antispyware, firewall e outros integrantes do "kit Windows", um processador dual-core acaba oferecendo um bom ganho na prática. Aqui temos um diagrama da Intel, que mostra como isso funciona no Core 2 Duo. Veja que temos um grande bloco de cache L2, que é compartilhado por dois núcleos (cores). Tudo isso dentro do mesmo die, ou seja, dentro da mesma pastilha de silício: Visão ampliada do Core 2 Duo Outros processadores seguem um projeto mais convencional, onde temos dois núcleos completamente separados, cada um com seu próprio cache L2, ou mesmo processadores dual-core formados pela combinação de dois processadores separados, instalados dentro do mesmo encapsulamento, como no caso do Pentium D. A partir do Phenom, a AMD passou a utilizar uma arquitetura com dois ou quatro núcleos por processador, cada um com seu próprio cache L1 e L2, que compartilham um grande bloco de cache L3. Tudo indica que a Intel utilizará uma arquitetura semelhante no Nehalem, cujo lançamento está agendado para o final de 2008. Sistemas embarcados Pergunte a algum amigo quantos computadores ele tem em casa. Provavelmente ele vai responder "tenho só um", ou talvez "tenho dois". Involuntariamente ele estará mentindo, pois na verdade ele tem 10, 20 ou quem sabe 50 computadores em casa. :) Os demais estão escondidos, dentro do celular, TV, aparelho de som, modem ADSL, ponto de acesso, brinquedos, câmeras digitais, mp3 players, fornos de microondas e outros aparelhos domésticos, controles remotos e assim por diante. Até mesmo o carro que está na sua garagem inclui vários deles, na forma do sistema de injeção eletrônica, freio ABS, airbag, computador de bordo, etc. Seja bem-vindo ao fantástico mundo dos sistemas embarcados. 116
  • 117. Ao contrário de um PC, que pode executar os mais diversos programas e alternar entre eles, desempenhando as mais diversas funções, os sistemas embarcados são dispositivos "invisíveis", que se fundem no nosso cotidiano, de forma que muitas vezes sequer percebemos que eles estão lá. Eles são formados, fundamentalmente, pelos mesmos componentes de um PC: processador, memória, algum dispositivo de armazenamento, interfaces e assim por diante. A principal diferença é que, ao contrário de um PC, eles se limitam a executar bem uma única tarefa, de maneira contínua e, na maioria das vezes, sem travamentos e panes. O fato de ser um sistema embarcado, não diz muito sobre o tamanho ou a importância do sistema, pode ser desde um furby, até uma máquina com centenas de processadores, destinada a criar previsões sobre mercados de capitais, ou controlar o tráfego aéreo. Basicamente, qualquer equipamento autônomo que não é um PC, um Mac ou outro tipo de computador pessoal acaba se enquadrando nessa categoria. Furby, um exemplo de sistema embarcado na forma de brinquedo É graças aos sistemas embarcados que o Z80 (em suas inúmeras variações) é até hoje o processador mais produzido. Por ser um processador muito simples, de 8 bits, ele é incrivelmente barato e possui um baixíssimo consumo elétrico. Não seria possível incluir um Core Duo ou um Athlon X2 em um controle remoto, por exemplo, mas um Z80 cumpre bem a função. Lembra do game boy? Ele era justamente baseado num Z80, acompanhado de um controlador de áudio externo e outros circuitos. Outro exemplo são os S1 Mp3 players, aqueles Mp3 players genéricos em formato de pendrive, fabricados em massa pelos mais diversos fabricantes. Outro processador muito usado é o Motorola 68000, o mesmo chip de 32 bits utilizado nos primeiros Macintoshs. Naturalmente, não estamos falando exatamente do mesmo chip introduzido em 1979, mas sim de versões "modernizadas" dele, que conservam o mesmo design básico, mas são produzidas usando tecnologia atual e operam a freqüências mais altas. Um exemplo é o chip DragonBall usado nos primeiros Palms, que incluía um processador 68000, controlador de vídeo e outros componentes, tudo no mesmo wafer de silício. 117
  • 118. Processador Motorola DragonBall, usado nas primeiras versões do Palm Para dispositivos que precisam de mais processamento, temos as diversas famílias de processadores ARM, chips RISC de 32 bits, produzidos por diversos fabricantes, que vão da Samsung à Intel. Embora possuam um design bastante simples, se comparados aos processadores x86, os chips ARM conservam um bom desempenho. Um Treo 650, por exemplo, que é baseado num Intel Xscale de 312 MHz, consegue exibir vídeos em Divx com resolução de 320x240 sem falhas, tarefa que mesmo um Pentium II 266 tem dificuldades para realizar. Usando um processador ARM e pelo menos 4 MB de memória, seu sistema embarcado pode rodar Linux, o que abre grandes possibilidades em termos de softwares e ferramentas de desenvolvimento. Adicionando um pouco mais de memória, é possível rodar o Windows Mobile ou o Symbian. Embora operem a freqüências relativamente baixas, se comparados aos processadores x86 (na maioria dos casos apenas 300, 400 ou 500 MHz), os chips ARM são baratos e possuem um baixo consumo elétrico, por isso são extremamente populares em celulares, PDAs, pontos de acesso, modems ADSL, centrais telefônicas, sistemas de automatização em geral, videogames (como o GameBoy Advance) e assim por diante. Cerca de 75% de todos os processadores de 32 bits usados em sistemas embarcados são processadores ARM. Além da família ARM e Z80, existem inúmeras outras famílias de chips e controladores. Cada uma conta com um conjunto próprio de ferramentas de desenvolvimento (SDK), que incluem compiladores, debuggers, documentação e ferramentas úteis. Em alguns casos o SDK é distribuído gratuitamente, mas em outros precisa ser comprado ou licenciado, o que encarece o projeto. Normalmente, o desenvolvedor roda as ferramentas de desenvolvimento em um PC e transfere o software para o sistema embarcado que está desenvolvendo apenas nos estágios finais do desenvolvimento. Em alguns casos isso é feito através da porta USB (ou de uma porta serial), mas em outros é necessário gravar um chip de EPROM ou memória flash com a ajuda do gravador apropriado e transferir o chip para o sistema embarcado para poder testar o software. Um bom exemplo de sistema embarcado é este MP4 player da foto a seguir. Ele utiliza apenas três chips, sendo um o controlador principal, outro um chip de memória flash (usado para armazenamento) e o terceiro um sintonizador de 118
  • 119. rádio AM/FM, que poderia muito bem ser retirado do projeto sem prejuízo para as demais funções do aparelho: Isso é possível porque o chip principal (um Sigmatel STMP3510) é um microcontrolador que desempenha sozinho todas as funções do aparelho, incluindo controladores para as diversas funções disponíveis e até mesmo uma pequena quantidade de memória RAM: É esse tipo de microcontrolador que permite que modems ADSL, MP3 players, celulares e outros aparelhos que usamos no dia-a-dia sejam tão baratos em relação ao que custavam há alguns anos. Com menos chips, o custo cai proporcionalmente. Existem no mercado os mais diversos tipos de microcontroladores, cada um com um conjunto próprio de periféricos e funções. Ao invés de desenvolver e fabricar seus próprios chips, as empresas passaram a cada vez mais utilizar componentes disponíveis no mercado, que são fabricados em massa e 119
  • 120. vendidos a preços incrivelmente baixos. Para você ter uma idéia, o STMP3510 custa apenas 6 dólares se comprado em quantidade. Microcontroladores mais simples podem custar menos de 1 dólar, enquanto chips menores chegam a custar apenas alguns centavos. A maior parte do custo de um processador ou chip qualquer está em seu desenvolvimento. Mesmo um microcontrolador relativamente simples pode consumir vários milhões para ser desenvolvido. Entretanto, o custo de produção por unidade é relativamente baixo, de forma que os chips mais vendidos acabam tendo o custo inicial amortizado e passam a ser cada vez mais baratos. Muitos microcontroladores podem ser conectados a dispositivos analógicos, permitindo o uso de sensores diversos. Isso permite a criação de dispositivos simples, que monitoram temperatura, umidade, intensidade da luz, aceleração, campos magnéticos e assim por diante, executando ações predefinidas em caso de mudanças, como ligar o ar condicionado, abrir ou fechar as persianas, ou mesmo disparar o air bag do seu carro em caso de colisão. Para aplicações em que um chip personalizado é essencial, existe ainda a opção de usar chips programáveis, chamados de FPGAs (field-programmable gate arrays) ou, mais raramente, de LCAs (logic-cell arrays). Como o nome sugere, eles são chips compostos por um enorme número de chaves programáveis, que podem ser configurados para simular o comportamento de qualquer outro circuito. Um único FPGA pode simular não apenas um processador simples, mas também outros circuitos de apoio, como o controlador de vídeo, uma interface serial e assim por diante. Os modelos recentes incluem inclusive uma pequena quantidade de memória RAM e circuitos de apoio, de forma que você pode ter um sistema completo usando apenas um chip FPGA previamente programado, um chip de memória EPROM (ou memória flash) com o software, a placa de circuito com as trilhas e conectores e uma bateria ou outra fonte de energia. Chip FPGA 120
  • 121. Os FPGAs são naturalmente muito mais caros que chips produzidos em série, mas são uma opção em situações em que são necessárias apenas algumas centenas de unidades de um design exclusivo. Imagine o caso do ramo da automação industrial, por exemplo. Eles são também o caminho para projetos artesanais, que são a nova onda entre quem gosta de eletrônica ou está cursando engenharia da computação. Um bom site dedicado ao assunto é o http://www.fpga.ch/, que disponibiliza softwares, layouts de placas e até mesmo projetos prontos, como este que reproduz uma máquina de arcade antiga, rodando Pac-Man ou Galaga: Outro bom site é o http://www.fpga4fun.com, que inclui uma grande quantidade de informações e alguns projetos de exemplo. Os componentes necessários para construir os projetos podem ser comprados facilmente pela web, basta ter um cartão internacional ou uma conta no PayPal. Uma questão interessante nos sistemas embarcados é a memória flash. Com a queda no preço, mesmo aparelhos que tradicionalmente usavam memória SRAM (muito mais cara) como forma de armazenamento, como os palmtops e os celulares, passaram a utilizar memória flash. O problema é que a memória flash funciona apenas como espaço de armazenamento e não como memória de trabalho. Numa analogia com um PC, a memória flash seria similar a um HD, que serve para armazenar arquivos, mas que não elimina a necessidade de usar memória RAM. Isso significa que mesmo dispositivos com grandes quantidades de memória flash ainda precisam de uma certa quantidade de memória RAM ou SRAM, seja incorporada ao próprio microcontrolador, seja na forma de um chip separado. Nos primeiros Palms, por exemplo, tínhamos um chip de memória flash, que armazenava os softwares e chips adicionais de memória SRAM, que serviam tanto como memória de trabalho quanto como espaço para armazenar dados e programas. 121
  • 122. A partir do Treo 650, todos os programas e arquivos passaram a ser armazenados em memória flash (você pode remover a bateria, sem medo de perder dados) e foi adicionado um chip de memória SRAM que serve como memória de trabalho. A grande questão é que a memória SRAM é muito mais cara que a memória flash, de forma que vale mais a pena utilizar uma pequena quantidade de SRAM e uma grande quantidade de memória flash, do que o oposto. Temos ainda a questão do fornecimento elétrico. A maioria dos circuitos trabalham com tensão de 5v ou 3.3v, mas é possível usar praticamente qualquer bateria ou fonte de energia, usando fontes de alimentação ou os circuitos apropriados. Um resistor, acompanhado por um regulador de tensão e um fusível, é geralmente o suficiente para que ele possa ser ligado diretamente em uma bateria de carro, por exemplo. No caso de dispositivos ligados a um PC, é possível utilizar diretamente a energia fornecida pela porta USB. Também é possível utilizar placas solares ou outras fontes alternativas de energia, permitindo a criação de sistemas embarcados capazes de operar de forma autônoma. Um exemplo são os pontos de acesso repetidores usados por alguns provedores de acesso, que utilizam painéis solares e baterias, de forma que podem ser instalados num poste ou no topo de um prédio sem precisarem de qualquer cabeamento: O uso de redes sem fio também abre algumas possibilidades interessantes na área publicitária. Imagine o caso de letreiros eletrônicos ou telões publicitários. Se os anúncios pudessem ser atualizados remotamente, a instalação seria muito mais simples, já que bastaria ligá-los na eletricidade. Um sistema embarcado, contendo um transmissor wireless, memória e o software adequado, poderia ser acessado remotamente e programado com os anúncios a exibir. Enfim, embora os PCs normalmente roubem a cena, os sistemas embarcados são muito mais numerosos e são responsáveis por toda a estrutura que 122
  • 123. utilizamos no dia-a-dia. Eles são também uma das áreas mais promissoras dentro da área de tecnologia, já que um simples FPGA pode ser programado para desempenhar praticamente qualquer função. Capítulo 2: Processadores No capítulo anterior fiz um resumo da história dos primeiros processadores, criando uma espécie de linha do tempo. Conhecer a história dos primeiros processadores é importante para entender os atuais, mas entrar em detalhes sobre, por exemplo, o gerenciamento de memória do 8088, pode ser muito tedioso, daí a idéia de resumir tudo em um único capítulo sobre a história da informática. Vamos falar agora sobre os processadores atuais (de 2000 pra cá), passando a abordar as coisas de forma mais detalhada. Como um novo projeto de processador demora de 3 a 5 anos para ser desenvolvido, os fabricantes aproveitam o mesmo projeto básico em diversos modelos de processadores, incluindo pequenas melhorias e mais cache L2 ao longo do processo. Todos estes processadores baseados na mesma arquitetura podem ser classificados dentro de uma única família e colocados em um galho separado da árvore evolutiva. Por exemplo, a arquitetura NetBurst foi utilizada pela Intel de 2000 a 2006, englobando desde os primeiros modelos do Pentium 4 até o Pentium D, passando por diversas variações, como os Pentium Extreme Edition e os Celerons. Entre 2006 e 2007 ela foi substituída rapidamente pelos processadores baseados na plataforma Core, incluindo os Core 2 Duo, Core 2 Quad, Pentium E e Celerons 4xx. Em vez de tentar abordar os processadores diretamente em ordem cronológica, vou dividi-los em famílias, falando sobre todos os processadores baseados na arquitetura NetBurst, depois todos os Athlons de 32 bits, seguidos pelos Athlons de 64 bits e pelos processadores baseados na plataforma Core. No final, aproveitei para incluir também um resumo sobre os próximos processadores, criando um panorama do que você pode esperar para os próximos anos. Pentium 4 O Pentium 4 foi lançado em novembro de 2000, trazendo uma arquitetura completamente redesenhada, baseada na idéia do uso de um longo pipeline para permitir que o processador fosse capaz de atingir freqüências de clock elevadas e no uso de um cache L1 muito rápido e um barramento de dados capaz de realizar 4 transferências por ciclo para mantê-lo alimentado com o volume necessário de dados e instruções. 123
  • 124. O Pentium 4 representa a sétima geração de processadores Intel. A primeira foram os processadores 8086 e 8088, lançados no final da década de 70, que foram seguidos pelos processadores 286, 386 e 486 que bem conhecemos. A quinta geração é representada pelos processadores Pentium e Pentium MMX, enquanto a sexta (também chamada de arquitetura P6) é representada pelos processadores Pentium II e Pentium III (incluindo também o Pentium Pro). Por diversos motivos que vou explicar ao longo deste capítulo, o Pentium 4 acabou se revelando um beco sem saída. Devido à enorme dissipação térmica dos processadores, a Intel não foi capaz de lançar versões com clock acima de 3.8 GHz (a versão de 4.0 GHz, que acabou sendo cancelada no último momento), e operando a freqüências baixas o Pentium 4 perdia facilmente para os processadores AMD. Só em 2006 a Intel conseguiu dar a volta por cima, com o lançamento do Core 2 Duo. Willamette O Willamette foi a versão inicial do Pentium 4, produzido usando uma técnica de 0.18 micron (a mesma usada na fabricação dos processadores Pentium III com cache integrado), com apenas 256 KB de cache L2. Ele existiu em versões de 1.3 a 2.0 GHz, com o TDP de 48.9 watts (para o de 1.3) a 73.5 watts (para o 2.0). O TDP (Thermal Design Power) indica, em processadores Intel, o consumo médio do processador ao executar aplicativos pesados. O consumo real pode superar o TDP ao rodar benchmarks e aplicativos específicos, mas na maior parte do tempo o consumo fica dentro da faixa especificada. Na época, o consumo elétrico não era considerado uma especificação importante. Se o processador era beberrão demais, você simplesmente gastava um pouco mais, comprando um cooler adequado. Entretanto, com o lançamento de versões mais rápidas do Pentium 4, o TDP chegou aos 130 watts, o que chamou a atenção do público. A partir de um certo ponto, os fabricantes passaram a falar em "eficiência", dando ênfase não apenas ao clock e ao desempenho geral do processador, mas também ao seu consumo elétrico. Basta fazer as contas. Se você mantém o micro ligado durante 12 horas por dia, um processador que consuma 130 watts (como o Pentium D 830) lhe custa (apenas em eletricidade) cerca de 20 reais mensais a mais do que um que consuma apenas 30 watts. Calculando que você também gastaria mais com o cooler e que o próprio PC consumiria mais energia devido à necessidade de exaustores adicionais, a diferença total acabaria sendo ainda maior. Ou seja, um processador ineficiente que te custa R$ 400 na hora da compra, poderia lhe custar mais 500 ou 600 reais (incluindo apenas o aumento na conta de luz) ao longo de 2 anos de uso. Voltando ao tema inicial, um ponto interessante sobre as primeiras versões do Pentium 4 é que o único chipset disponível durante quase um ano, o i850 da própria Intel, suportava apenas memórias Rambus, o que obrigava qualquer 124
  • 125. interessado em adquirir um Pentium 4 a comprar também módulos de memória RIMM. Este tipo de memória era inicialmente absurdamente caro, tanto que a Intel passou a subsidiar parte do custo das memórias, dando um desconto nos processadores vendidos a integradores e dando "de brinde" dois pentes de memórias Rambus de 64 MB cada nos processadores in-a-box, destinados ao consumidor final. As vendas do Pentium 4 só deslancharam com o lançamento do chipset i845, que oferecia suporte a módulos de memória SDRAM convencionais. Em 2002 a Intel lançou dois modelos (1.7 e 1.8 GHz) do Celeron baseado no core "Willamette-128", que nada mais é do que uma versão do Pentium 4 Willamette com metade do cache L2 desabilitado. Eles foram vendidos apenas em versão soquete 478 e eram relativamente baratos para o padrão dos processadores Intel na época, custando abaixo da faixa dos 100 dólares. Embora o desempenho fosse ruim, essa geração inicial do Celeron baseado no Pentium 4 foi uma forma de a Intel popularizar o uso das placas soquete 478 e assim abrir caminho para as gerações seguintes do Pentium 4. Para quem pretendia fazer overclock, o Celeron 1.7 era a melhor opção, pois além de um pouco mais barato ele podia ser overclocado para 2.26 GHz (desde que usado um bom cooler e um gabinete bem ventilado), aumentando o FSB de 400 para 533, opção oferecida por praticamente todas as placas soquete 478. Operando a 2.26 GHz, ele oferecia um desempenho muito próximo do de um Pentium 4 Willamette de 2.0 GHz. Na época se discutia muito sobre o desempenho dos Celerons baseados no core Willamette-128 contra os baseados no Core Tualatin (mesmo a 1.2 GHz, o Tualatin ganhava em boa parte das aplicações), mas a discussão era em grande parte irrelevante, pois o Tualatin foi vendido em pequenas quantidades e apenas para integradores, de forma que não era realmente possível comprar um, por melhor que fosse a arquitetura. Devido ao alto custo inicial (incluindo a questão das memórias) o Willamette acabou vendendo poucas unidades e foi rapidamente substituído pelo Northwood, lançado 11 meses depois, em outubro de 2001. Na mesma época, as placas soquete 423 (que oferecem suporte apenas ao Pentium 4 Willamette) foram rapidamente substituídas pelas placas soquete 478, que continuam em uso até 2005/2006, sendo lentamente substituídas pelas placas soquete 775. Apesar de sua vida curta, o Willamette é uma boa oportunidade para explicar um pouco sobre a arquitetura do Pentium 4. O primeiro alerta a se fazer a respeito é que o aumento da freqüência de operação não significa um ganho direto de desempenho. A arquitetura do Pentium 4 é baseada no uso de mais estágios de pipeline para permitir que o processador seja capaz de atingir freqüências de clock mais elevadas. É por isso que um Pentium 4 Willamette atingiu a marca dos 2.0 GHz, enquanto o Pentium III Coppermine, que compartilha da mesma técnica de fabricação de 0.18 micron que ele não foi capaz de superar a marca dos 1.0 GHz. 125
  • 126. Entretanto, a diferença de desempenho entre os dois não é tão grande quanto pode parecer à primeira vista. Mesmo com todas as otimizações que foram aplicadas, um Willamette de 2.0 GHz, equipado com memórias SDRAM não consegue ser sequer 50% mais rápido que um Pentium III Coppermine de 1.0 GHz. Mesmo quando equipado com pentes de memória RDRAM, o Willamette ainda perde para o Athlon Thunderbird de 1.4 GHz (que foi seu concorrente mais direto, na época) na maior parte dos aplicativos. A arquitetura do Pentium foi claramente desenvolvida para operar a altas freqüências e assim compensar o baixo desempenho por ciclo de clock. Isso acabou se revelando um bom golpe de marketing, já que na época o público estava acostumado a relacionar a freqüência de clock com o desempenho. Para não ficar para trás, a AMD adotou um índice de desempenho a partir do Athlon XP, que compara o desempenho do processador ao alcançado pelo Pentium 4. Um Athlon XP 1800+, por exemplo, opera a apenas 1.533 GHz. Mais adiante, o feitiço se voltou contra o feiticeiro e a própria Intel decidiu parar de enfatizar a freqüência de clock e adotar um sistema de numeração para seus processadores. Voltando ao final de 2000, a Intel batizou a nova arquitetura do Pentium 4 de NetBurst. O nome não tem nada a ver com o desempenho em redes ou na internet; é apenas um nome mercadológico usado para tentar ilustrar a arquitetura do processador e suas otimizações com relação ao processamento de grandes volumes de dados. Sempre que ouvir falar em um processador "baseado na arquitetura NetBurst", tenha em mente que se trata de alguma derivação do Pentium 4, como um Pentium D ou Celeron. A arquitetura NetBurst é composta por 4 pontos principais: Hyper Pipelined Technology, Rapid Execution Engine, Execution Trace Cache e o uso do bus quad-pumped. Vamos aos detalhes de cada uma das 4 tecnologias: Hyper Pipelined Technology O pipeline é um recurso que divide o processador em vários estágios, que trabalham simultaneamente, dividindo o trabalho de processar as instruções. É como uma linha de produção com vários operários, em que cada um monta uma peça, até termos no final o produto completo. O primeiro processador Intel a utilizar esse recurso foi o 486, que possuía 5 estágios. Como o 486 era um processador muito simples (para os padrões atuais), que processava uma instrução de cada vez, ele não precisava de muitos dos componentes usados nos processadores modernos, tais como o ordenador, circuito de branch-prediction e assim por diante. O processador simplesmente recebia cada instrução, fazia a decodificação e em seguida a executava. Enquanto a primeira instrução passava do primeiro para o segundo estágio do pipeline, o primeiro estágio recebia a instrução seguinte e assim por diante. 126
  • 127. O Pentium manteve os 5 estágios do 486, mas incorporou uma segunda unidade de execução e um coprocessador aritmético muito aprimorado. Com o uso de duas unidades de execução, surgiu a necessidade de dividir as instruções entre elas, o que gerou um problema adicional, já que a grande maioria dos programas executam processamento de maneira sequencial, esperando que o processador execute uma instrução de cada vez. Surgiu então a necessidade de incluir circuitos adicionais, que ordenam as instruções de forma que o processador possa executar duas instruções por ciclo na maior parte do tempo. O mais importante dele é o circuito de branch prediction, que permite que o processador use o tempo ocioso para ir "adiantando o trabalho", processando um dos caminhos possíveis em uma operação de tomada de decisão enquanto não sabe o resultado da operação que diz qual dos caminhos é o carreto, como, por exemplo, ao executar um trecho de código, como neste exemplo: if [ a = b ]; then bloco de código 1 else bloco de código 2 fi Aqui o processador não tem escapatória, já que só vai saber se deve executar o bloco de código 1, ou o bloco de código 2 depois que souber o resultado da primeira operação, ou seja, souber se "a" é igual a "b". O circuito de branch prediction escolhe então o caminho que parece mais provável, permitindo que o processador permaneça ocupado. O nível de exatidão do circuito de branch prediction varia muito de acordo com o processador. No Pentium ele era bastante simples, escolhendo qual caminho seguir praticamente de forma aleatória, enquanto nos processadores atuais ele decide consultando uma tabela com resultados anteriores de operações similares. Quando o processador escolhe o caminho certo, ele ganha tempo, já que pode aproveitar o trabalho já feito. Mas, quando erra, ele precisa descartar todo o trabalho e recomeçar a partir do outro caminho. O Pentium III possui um total de 10 estágios, além de um conjunto de outros circuitos (fora do pipeline) que são encarregados de converter e ordenar as instruções. Ao contrário do Pentium, que é um processador CISC, que processa todas as instruções x86 diretamente, o Pentium III e todos os demais processadores atuais, são processadores híbridos CISC/RISC, que quebram as instruções x86 em instruções simples, que são então processadas. Graças à inclusão de todos os demais circuitos, uso do cache integrado e melhorias nas placas-mãe, o aumento no número de estágios de pipeline do Pentium III não teve um impacto muito negativo sobre o desempenho. Pelo contrário, um Pentium III é pelo menos duas vezes mais rápido que um Pentium I do mesmo clock. O Pentium II, por sua vez, é muito similar ao 127
  • 128. Pentium III em arquitetura, carecendo apenas do cache L2 on-die e das instruções SSE. Foi graças ao aumento no número de estágios no pipeline que o Pentium III foi capaz de atingir freqüências de operação tão mais elevadas que o Pentium, que (com o MMX) atingiu apenas 233 MHz. Mesmo que fosse produzido em uma técnica de 0.18 micron, o Pentium provavelmente não seria capaz de superar a barreira dos 500 MHz, enquanto o Pentium III (de 0.18 micron) existiu em versões de até 1.0 GHz. O Pentium 4 leva essa filosofia adiante, utilizando um total de 20 estágios de pipeline, daí o nome "Hyper Pipelined". Temos aqui um slide da Intel que mostra um comparativo entre o pipeline de 10 estágios do Pentium III com os 20 estágios do Willamette. Tenha em mente que cada instrução precisa percorrer cada um dos 20 estágios para ser completamente processada: Com mais estágios, cada um responde por uma fração menor do processamento, o que permite que o processador seja capaz de operar a freqüências mais elevadas. Voltando ao exemplo da linha de produção, seria como se dobrássemos o número de operários e cada um passasse a encaixar apenas uma peça em cada produto que passa através da esteira, em vez de duas. Reduzindo o trabalho de cada operário pela metade, seria possível mover a esteira ao dobro da velocidade, dobrando a produção. O grande problema é que os processadores atuais executam várias instruções simultaneamente, enquanto os programas são uma seqüência de instruções, de forma que sempre existe uma penalidade em adicionar mais estágios. Quanto mais estágios, mais tempo o processador demora para executar as instruções iniciais de tomada de decisão e mais tempo perde ao escolher o caminho errado. Ainda no exemplo da linha de produção seria como se o produto a ser montado mudasse constantemente, de acordo com os pedidos recebidos dos clientes. Cada vez que o produto muda, é preciso parar a esteira, desmontar as unidades do produto anterior que já estavam parcialmente montadas e limpar a esteira, para só então poder recomeçar a produção. No Pentium 4, a cada tomada de decisão errada são perdidos pelo menos 20 ciclos de processamento, uma eternidade considerando que em média, 14% das instruções processadas são de tomada de decisão. Com exceção do Pentium 4, quase todos os processadores atuais utilizam de 8 a 14 estágios de pipeline, que parece ser a faixa com a melhor relação entre 128
  • 129. clock, complexidade e desempenho. Acima disto, mais pipelines equivalem a um desempenho por ciclo de clock cada vez menor. A partir de um certo ponto, aumentar o número de estágios torna-se contra produtivo, já que o processador precisa operar a freqüências de clock cada vez mais altas para compensar a perda de desempenho causada pelo maior número de estágios. Um bom exemplo disto é o Pentium 4 com core Prescott (que veremos a seguir), que precisou incorporar um conjunto de várias melhorias apenas para compensar a perda de desempenho causada pelo novo aumento no número de estágios. Além de ser mais lento que um Athlon Thunderbird da mesma freqüência, o Willamette é também substancialmente mais lento que um Pentium III do mesmo clock em praticamente todos os aplicativos. Todas as demais alterações feitas pela Intel, explicadas a seguir servem como paliativos para tentar diminuir a perda de desempenho trazida pelo maior número de estágios de pipeline. Foi justamente devido a isto que a Intel optou por lançar diretamente os modelos de 1.4 e 1.5 GHz do Pentium 4, pulando as versões de 1.1 e 1.2, que seriam o caminho mais óbvio já que o Pentium III ficou estacionado na versão de 1 GHz. Caso fosse lançado, um Pentium 4 de 1.1 GHz perderia para um Pentium III de 1 GHz, o que não seria uma boa propaganda. Além da perda de desempenho, outro efeito colateral de se usar mais estágios de pipeline é o fato de tornar o processador maior e mais complexo e fatalmente bem mais caro de se produzir. O Pentium 4 de 0.18 micron mede 217 milímetros quadrados, quase o dobro do Athlon Thunderbird, que mede 120 mm². Isso significa que o Pentium 4 é proporcionalmente mais caro de se produzir. Execution trace cache O Pentium III possui 32 KB de cache L1, dividido em dois blocos, onde 16 KB são para o armazenamento de dados e os demais 16 KB para o armazenamento de instruções. O Athlon utiliza um cache L1 de 128, novamente dividido em dois blocos separados, que armazenam dados e instruções. No Pentium 4, o bloco do cache L1 destinado a instruções foi substituído pelo Execution trace cache, um tipo de cache ultra-rápido que, em vez de instruções, armazena diretamente uOPs, que são as instruções já decodificadas, prontas para serem processadas. Isto garante que o cache tenha apenas um ciclo de latência (a instrução é solicitada em um ciclo e recebida no seguinte), o que faz com que o processador não perca praticamente tempo algum ao utilizar dados armazenados no trace cache, ao contrário do que acontecia no Pentium III, onde são perdidos pelo menos dois ciclos em cada leitura, o tempo necessário para decodificar a instrução. Se você está em dúvida sobre o que é um "uOP", e como eles são produzidos e processados, aqui vai uma explicação resumida: 129
  • 130. Apesar dos processadores para micros PC continuarem usando o conjunto x86 de instruções, que é composto por 184 instruções, internamente eles são capazes de processar apenas instruções simples de soma e atribuição. Existe então um circuito decodificador, que converte as instruções complexas usadas pelos programas nas instruções simples entendidas pelo processador. Uma instrução complexa pode ser quebrada em várias instruções simples. No Pentium 4, cada instrução simples é chamada de uOP. No Athlon cada conjunto de duas instruções recebe o nome de macro-ops. O trace cache ocupa uma área muito grande do die do processador, equivalente ao que seria ocupado por aproximadamente 96 KB de cache L1 convencional. Apesar disso, ele armazena o equivalente a apenas 8 KB de instruções decodificadas, já que elas ocupam brutalmente mais espaço. Ou seja, por um lado o trace cache melhora o desempenho do processador, já que é muito rápido, mas por outro diminui (em relação ao que seria obtido ao utilizar um cache convencional de maior capacidade), pois o pequeno volume de dados armazenados faz com que ele precise recorrer mais freqüentemente aos dados armazenados no cache L2 e na memória principal. O trace cache é complementado por um cache de dados de baixa latência, consideravelmente mais rápido que o cache L1 encontrado no Pentium III e no Athlon. O problema é que, para atingir o desempenho desejado, as células do cache se tornaram extremamente volumosas, de forma que a Intel optou por incluir apenas 8 KB. Ou seja, na prática, o Pentium 4 possui apenas 16 KB de cache L1: 8 KB para dados e mais o equivalente a 8 KB para instruções, armazenadas de forma decodificada no trace cache. Por algum motivo, os projetistas da Intel decidiram que essa configuração seria a melhor em termos de desempenho. Este diagrama mostra as áreas ocupadas pelo trace cache e pelo cache L2 dentro do die do Willamette. Veja que, apesar de armazenar um volume pequeno de dados, o trace cache ocupa uma área equivalente a pouco mais de 60% da ocupada pelos 256 KB de cache L2: 130
  • 131. Die do Pentium 4 Willamette, com as áreas referentes ao trace cache e ao cache L2 assinaladas Bus de 400 MHz O execution trace cache oferece tempos de latência muito baixos, mas em troca armazena um volume muito pequeno de dados e instruções. Devido a isso, o processador é muito mais dependente do desempenho do cache L2 e do acesso à memória. O plano inicial era utilizar módulos de memória Rambus em dual-channel. Cada módulo RIMM oferecia (no caso dos módulos PC-800) um barramento de dados de 1.6 GB/s, de forma que combinando a banda oferecida por dois módulos, seria possível obter 3.2 GB/s, o que é 3 vezes o oferecido pelos módulos de memória PC-133 utilizados pelo Pentium III. Para absorver esse grande volume de dados, o Pentium 4 utiliza um barramento quad-pumped, ou seja, capaz de realizar 4 transferências por ciclo. Operando a 100 MHz, temos uma taxa efetiva de 400 MHz, que é a freqüência utilizada nas primeiras placas soquete 423. 131
  • 132. Com a evolução da plataforma, a Intel foi capaz de desenvolver chipsets capazes a operar a 133, 200 e 266 MHz, que, com as 4 transferências por ciclo, equivalem a, respectivamente, 533, 800 e 1066 MHz. Embora o Willamette tenha ficado restrito aos 400 MHz originais, as freqüências mais altas foram utilizadas pelos processadores lançados posteriormente. Embora o Pentium 4 fosse consideravelmente mais lento quando usado em conjunto com memórias SDRAM, as memórias DDR reduziram a perda de forma expressiva. A partir de um certo ponto cada vez mais placas passaram a suportar o uso de memórias DDR em dual-channel, configuração que supera as memórias Rambus em desempenho, já que, além da maior taxa de transferência, oferece tempos de latência mais baixos. Embora na prática não exista muita diferença, um barramento de 1066 MHz "reais" é diferente, do ponto de vista técnico, de um que opera a 266 MHz realizando 4 transferências por ciclo. No caso do barramento do Pentium 4 existe ainda um agravante, que é o fato dos endereços e instruções serem enviados apenas duas vezes por ciclo, metade da freqüência da transferência de dados. Apesar disso, como as transferências de dados são muito mais numerosas que a transmissão de endereços, a "inexatidão técnica" do barramento de 1066 MHz da Intel acaba passando desapercebida. ;) Rapid Execution Engine Todo processador atual é dividido em dois componentes básicos, as unidades de execução de inteiros e as unidades de ponto flutuante (FPU). A parte que processa as instruções envolvendo números inteiros é responsável pela maior parte das instruções e pelo desempenho do processador nos aplicativos do dia- a-dia, enquanto as unidades de ponto flutuante são as responsáveis pelo processamento das instruções envolvendo valores complexos, usadas por jogos e aplicativos gráficos. O "Rapid Execution Engine" do Pentium 4 consiste num reforço nas unidades de inteiros do processador. O Pentium 4 possui um total de 3 unidades de processamento de inteiros, duas ALUs, que processam as instruções mais simples e uma terceira ALU, encarregada de decodificar e processar as instruções complexas que, embora em menor quantidade, são as que tomam mais tempo do processador. Esse conjunto de 3 unidades de execução de inteiros é semelhante ao do Pentium III, porém, como diferencial, no Pentium 4 tanto as duas ALUs encarregadas das instruções simples quanto as duas GLUs encarregadas das leituras e gravações executam duas instruções por ciclo, de forma que, em um Willamette de 2.0 GHz, elas atingem uma freqüência efetiva de nada menos que 4.0 GHz. Este é um recurso que na teoria parece maravilhoso, mas existe um pequeno detalhe que elimina boa parte do ganho que seria de se esperar deste 132
  • 133. esquema. Apesar das duas ALUs de instruções simples terem ficado mais rápidas, visando justamente compensar a perda de desempenho trazida pelos 20 estágios de pipeline do Pentium 4, a ALU de instruções complexas não teve a mesma evolução. Isto significa que ao passar a usar 20 estágios de pipeline, a terceira ALU tornou-se mais lenta que a do Pentium III. Temos então um cenário onde as instruções simples são rapidamente processadas, mas as instruções complexas ficam entaladas na vala comum da terceira ALU, causando uma grande perda de desempenho. No coprocessador aritmético o cenário é ainda mais complicado, pois apesar das unidades de execução terem perdido desempenho devido ao pipeline de 20 estágios, não houve nenhum avanço para equilibrar a balança, como tivemos nas unidades de inteiros. Pelo contrário, o coprocessador aritmético encolheu, pois foram podadas duas das unidades de execução, uma das que processava instruções MMX e uma das que processava instruções SSE. Ao invés de evoluir, como seria de se esperar, o coprocessador aritmético do Pentium 4 tornou-se ainda mais frágil do que o do Pentium III, trazendo um cenário no mínimo curioso. Enquanto na época do Pentium II e do K6 a AMD competia com um processador que, apesar de possuir um bom desempenho em aplicativos de escritório, era literalmente massacrado nos jogos e aplicativos gráficos, tivemos com o Pentium 4 x Athlon um cenário semelhante, porém com os lados invertidos: a Intel atacava com um processador potente em inteiros, mas fraco em ponto flutuante. Ironicamente, a solução da Intel para tentar diminuir a deficiência do processador em ponto flutuante foi a mesma que a AMD usou na época do K6- 2. Lembra-se do 3D-Now, as instruções incorporadas ao K6-2, que melhoravam seu desempenho nos jogos otimizados? A Intel optou por seguir exatamente o mesmo caminho, incorporando 144 novas instruções ao Pentium 4, chamadas de SSE2 que visam melhorar seu desempenho em jogos e aplicativos gráficos. SSE2 As "Double Precision Streaming SIMD Extensions" do Pentium 4 são 144 novas instruções de ponto flutuante de dupla precisão. Elas têm basicamente a mesma função das instruções SSE do Pentium III e do 3D-Now! Do Athlon: melhorar o desempenho do processador em aplicativos de ponto flutuante. A diferença é que as instruções do Pentium 4 são mais poderosas que os conjuntos anteriores e podem ser utilizadas em mais situações, o que ajudou o Pentium 4 em alguns aplicativos específicos. O grande problema é que existe um número brutalmente grande de softwares em uso e apenas alguns deles acabam sendo devidamente otimizados para usar novos conjuntos de instruções de forma que no final o ganho acaba não sendo tão grande quanto se espera. O Athlon 64 (e os Semprons de 64 bits) incluem um conjunto de instruções compatível com o SSE2, desenvolvido pela AMD. Isto permite que eles 133
  • 134. também se beneficiem de aplicativos otimizados para o Pentium 4, equilibrando a balança e valorizando o trabalho dos desenvolvedores. Vale lembrar que tanto o Pentium 4 quanto os processadores AMD (a partir do Athlon Palomino) são compatíveis também com as instruções SSE do Pentium III, o que faz com que eles se beneficiem também dos aplicativos otimizados para o conjunto anterior. Northwood O Northwood é a segunda geração do Pentium 4, produzido em uma técnica de 0.13 micron. Ele não inclui mudanças na arquitetura, mas a redução no tamanho físico dos transístores permitiu que fossem adicionados mais 256 KB de cache L2, totalizando 512 KB. Como o Pentium 4 foi originalmente projetado para trabalhar em conjunto com pentes de memória Rambus, que (apesar dos maiores tempos de latência) oferecem taxas de transferência de dados muito elevadas, o desempenho do Willamette era prejudicado de forma significativa ao utilizar memórias SDRAM. O aumento no cache e a popularização das placas com suporte a memórias DDR melhoraram de forma significativa o desempenho do processador, fazendo com que (respeitadas as diferenças no clock) ele passasse a competir em pé de igualdade com o Athlon Thunderbird da AMD. O Northwood foi produzido em versões de 1.6 a 3.06 GHz, englobando tanto modelos com bus de 400 MHz quanto modelos utilizando bus de 533. A série com bus de 400 MHz inclui os modelos de 2.0, 2.2, 2.4, 2.6, 2.8 e 3.0 GHz, enquanto a série com bus de 533 MHz inclui modelos de 2.26, 2.40, 2.53, 2.66, 2.8 e 3.06 GHz Mais tarde foi lançada uma série com suporte a Hyper-Threading (vendida sob a marca "Pentium 4 HT"), que incluiu modelos com de 2.4 a 3.4 GHz. Com exceção do modelo de 3.06 GHz, todos utilizam bus de 800 MHz. Na verdade, os circuitos responsáveis pelo Hyper-Threading estão disponíveis em todos os processadores Pentium 4 (mesmo nos Willamette), incluindo os Pentium D e Celerons. A Intel simplesmente habilitava ou desabilitava o recurso de acordo com a faixa de mercado a que cada processador se destinava, limitando-se a ativar o HT nas séries de alto desempenho, como o Pentium 4 HT, ou o Pentium Extreme Edition. Existiram ainda diversos modelos do Celeron baseados no core Northwood, com clock de 1.8 a 2.8 GHz, sempre utilizando bus de 400 MHz. Assim como os modelos baseados no Willamette, os baseados no Northwood possuem apenas 128 KB de cache e por isso não oferecem nenhum ganho de desempenho em relação à série anterior. Comparando dois modelos com o mesmo clock, as únicas vantagens reais do Celeron baseado no Northwood é o fato de consumir menos energia e possuir uma maior margem de overclock. De qualquer forma, ambos perdiam por uma boa margem para o AMD Duron, que ainda por cima era mais barato. 134
  • 135. Aqui temos o die de um Pentium 4 com core Northwood. Embora a disposição de alguns dos componentes internos tenha mudado em relação ao Willamette, o processador continua quase idêntico, com exceção do cache adicional. O cache L2 é representado pelos dois retângulos mais escuros na parte superior. O cache é dividido, na verdade, em quatro blocos de 128 KB cada. Os Celerons baseados no Northwood possuem apenas um dos blocos ativados: Pentium 4 com core Northwood Junto com o Northwood foi introduzido o soquete 478, onde o processador utiliza um encapsulamento muito mais compacto que no soquete 423 utilizado pelo Willamette. A principal vantagem técnica do novo soquete foi a de reduzir o comprimento das trilhas dentro do encapsulamento do processador, o que reduz a perda de sinal, permitindo que o processador funcione estavelmente a freqüências mais elevadas. O encapsulamento usado pelo processador também ficou um pouco mais barato de se produzir, o que ajudou a Intel na hora de reduzir os preços de venda e acirrar a competição com a AMD. Inicialmente o Northwood de 2.2 GHz custava nada menos que 600 dólares, mas, com o lançamento de versões de maior clock, ele logo passou a ser vendido por US$ 169. Veja uma comparação entre o Northwood soquete 478 e o Willamette soquete 423: 135
  • 136. Pentium 4 Northwood (à esquerda) e Pentium 4 Willamette Prescott O Prescott representa a terceira geração do Pentium 4, produzido a partir de 2004, utilizando uma técnica de fabricação de 0.09 micron. A mudança arquitetural mais significativa foi a adição de 11 novos estágios ao já longo pipeline do Northwood. Com isso, o Prescott atingiu a impressionante marca de 31 estágios de pipeline, um número sem precedentes entre os processadores x86. Em um processador atual, o uso de um pipeline mais longo não é exatamente uma boa notícia, muito pelo contrário. Como vimos, aumentar o número de pipelines do processador permite que cada estágio execute um volume menor de processamento. Com isso, o processador passa a ser capaz de operar a freqüências mais altas, mas, em compensação, as instruções demoram um número maior de ciclos de clock para serem processadas (já que precisam percorrer todo o pipeline), o que aumenta brutalmente o tempo perdido em operações de tomada de decisão, onde o processador precisa aguardar o resultado de uma operação para poder processar a seguinte. Se as alterações parassem por aí, o Prescott seria capaz de operar a freqüências mais elevadas, mas em troca seria brutalmente mais lento que um Northwood do mesmo clock. Para evitar essa sombria perspectiva, a Intel realizou um conjunto de melhorias na arquitetura, de forma a anular, ou pelo menos reduzir a perda. A primeira melhoria foi feita no circuito de branch prediction, responsável por "prever" o resultado de operações de tomada de decisão e assim permitir que o processador adiante o processamento das instruções seguintes enquanto a 136
  • 137. instrução inicial é processada. O Prescott é especialmente dependente do desempenho do circuito de branch prediction, pois cada instrução precisa percorrer um longo caminho ao longo dos 31 estágios do pipeline. Sem ele, o projeto do Prescott seria inviável, pois o processador perderia muito tempo em operações de tomada de decisão. Em um processador atual, o circuito de branch prediction é capaz de indicar o caminho correto em mais de 95% das operações. Tal precisão é possível, porque ele se baseia em um histórico de operações já realizadas. Sempre que é preciso "adivinhar" o caminho mais provável de uma operação, ele pesquisa pelo resultado de operações semelhantes anteriormente realizadas. A maioria dos programas realiza um grande número de operações repetitivas (sobretudo aplicativos pouco otimizados, ou escritos em linguagens de alto nível), o que permite que o circuito de branch prediction execute seu trabalho com grande precisão. O grande problema é que, sempre que ele erra, o processador precisa descartar todo o trabalho adiantado e começar de novo a partir do ponto inicial. Neste caso, são perdidos não apenas os 31 ciclos que a instrução inicial demora para percorrer o pipeline, mas também os ciclos necessários para remover os dados anteriores e carregar os registradores com as novas instruções a processar. Quanto mais longo é o pipeline, maior é a penalidade a cada erro, o que coloca o Pescott em uma situação complicada, já que as operações de tomada de decisão representam até 14% das operações realizadas por um aplicativo típico. Para reduzir a perda, o circuito de branch prediction do Prescott foi sensivelmente aprimorado, e passou a ser capaz de trabalhar com um índice de acerto maior que o do Northwood. O scheduler (o circuito que ordena as instruções, de forma que as unidades de execução possam processar o número máximo de instruções a cada ciclo) também foi melhorado, resultando em outro pequeno ganho. Foram feitas ainda duas pequenas modificações nas unidades de execução, que resultaram em mais um pequeno ganho, muito embora o número de unidades não tenha sido alterado. O primeiro e mais significativo, foi a adição de um circuito dedicado de multiplicação de números inteiros. Até o Northwood, todas as operações de multiplicação eram enviadas à FPU (o coprocessador aritmético), processadas separadamente e então devolvidas. Com o Prescott, as unidades de processamento de números inteiros ganharam a habilidade de processá-las diretamente, o que representa uma grande economia de tempo. Como vimos, o Pentium 4 possui três unidades de execução de números inteiros. Duas delas são "double-pumped", ou seja, são capazes de processar duas instruções simples por ciclo de clock. Um conjunto específico de instruções, que incluem operações um pouco mais complexas, são enviados 137
  • 138. para a terceira unidade de execução, que trabalha à freqüência normal. No Prescott, uma das duas unidades "rápidas" ganhou um novo bloco, capaz de processar operações shift/rotate (usadas em várias situações), que antes precisavam ser processadas na unidade mais lenta. Com isso, a terceira unidade foi desafogada, resultando em mais um pequeno ganho. O Prescott ganhou também um novo bloco de instruções, o conjunto SSE3. Ele é composto por 13 novas instruções, que complementam os dois conjuntos anteriores, dando sua cota de contribuição em aplicativos otimizados. Finalmente, temos as mudanças no cache. O bloco de dados do cache L1 foi aumentado de 8 para 16 KB e o bloco de instruções (o trace-cache) recebeu pequenas melhorias, embora a capacidade tenha permanecido a mesma. O cache L2 dobrou de tamanho, saltando de 512 KB para 1 MB, mas o aumento teve como efeito colateral o aumento dos tempos de latência, que aumentaram em aproximadamente 40%. Em outras palavras, o Prescott tem um cache L2 maior, porém mais lento, o que anula grande parte do benefício. Com relação à fabricação, o Prescott foi o primeiro processador Intel a ser produzido utilizando a técnica Strained Silicon. Ela consiste em "esticar" a superfície do wafer de silício, colocando-o sobre um substrato especialmente desenvolvido. Aumentando a distância entre os átomos do wafer, é reduzida a resistência à passagem dos impulsos elétricos. Essa técnica não tem nenhum efeito direto sobre o desempenho, mas ajuda a reduzir o consumo e a dissipação térmica do processador, além de (pelo menos em teoria) permitir que ele seja capaz de operar a freqüências mais elevadas. Slide demonstrando a técnica Strained Silicon De uma forma geral, o Pentium 4 baseado no core Prescott é um pouco mais lento que um Northwood do mesmo clock. Ele ganha por uma pequena margem em alguns aplicativos otimizados (graças ao aumento no tamanho do cache e às novas instruções SSE), mas na prática acabamos tendo um empate técnico entre os dois cores. 138
  • 139. Isso não é surpresa já que, como vimos, os aperfeiçoamentos feitos no Prescott tiveram como principal objetivo anular a perda de performance causada pelo aumento no número de estágios do pipeline e não a realmente melhorar o desempenho por ciclo de clock. Na época o plano era melhorar o desempenho do processador com sucessivos aumentos na freqüência de clock e não com base no aumento da eficiência. O projeto de um novo processador demora de 3 a 5 anos para ser desenvolvido, até o ponto em que está testado e pronto para entrar em produção. Mesmo em casos onde um projeto já existente é modificado, como no caso do Prescott, o desenvolvimento não toma menos do que 2 anos. Ou seja, é preciso planejar quais modificações realizar com uma antecedência muito grande e, qualquer erro estratégico (como o uso das memórias Rambus) acaba demorando muitos anos para ser consertado. Como o Prescott foi lançado no início de 2004, podemos imaginar que a Intel começou a desenvolvê-lo pouco depois do lançamento do Pentium 4 Willamette, colocando em prática as idéias que vigoravam na época. Já que o desempenho por ciclo de clock era praticamente o mesmo, as vantagens de possuir um Prescott em vez de um Northwood recaiam apenas sobre a maior margem de overclock. Para quem não pretendia fazer overclock, não existiam realmente grandes vantagens em utilizar um Prescott em relação a um Northwood do mesmo clock. Devido ao aumento no número de estágios do pipeline e das melhorias feitas nas unidades de execução, o Prescott dissipa mais calor que um Northwood do mesmo clock, mesmo sendo produzido em uma técnica de 0.09 micron. Se isso lhe soa estranho, basta ter em mente que apesar da técnica mais avançada de produção, ele possui 125 milhões de transístores, contra apenas 55 milhões do Northwood. O TDP (Thermal Design Power, que no caso dos processadores Intel indica o consumo típico do processador) do Northwood de 3.4 GHz é de 89 watts, enquanto o do Prescott da mesma freqüência é de 103 watts, ou seja, 14 watts a mais. Um consumo tão elevado torna necessário o uso de uma fonte de alimentação de 400 watts ou mais, capaz de fornecer 16 Amperes na saída de 12V (consulte a etiqueta com as especificações da fonte), um cooler adequado e um gabinete com uma boa ventilação, com (de preferência) um exaustor adicional instalado na abertura lateral, soprando ar sobre o processador. Sem uma ventilação adequada, o processador pode facilmente ultrapassar o limite de temperatura estabelecido, fazendo com que o Thermal Throttling entre em ação, reduzindo a freqüência do processador, sem contar que um gabinete abafado causa prejuízos à vida útil e à estabilidade dos demais componentes. Para evitar confusão, os modelos baseados no core Prescott que operam à mesma freqüência dos Northwood recebem a letra "E", como em: 139
  • 140. Pentium 4 3.40E Pentium 4 3.20E Pentium 4 3.00E Pentium 4 2.80E Todos estes modelos utilizam bus de 800 MHz, por isso é necessário que exista suporte por parte da placa-mãe. No caso das placas com chipset Intel, o suporte foi introduzido a partir da série i865, no caso dos chipsets da SiS a partir da série FX (SiS648FX, SiS655FX e SiS661FX) e no caso dos da VIA a partir do PT800. A primeira safra de placas (produzidas na primeira metade de 2004) precisava de um upgrade de BIOS para reconhecer corretamente o processador. O Prescott acabou se revelando um grande fracasso. Devido ao massivo consumo e dissipação térmica do processador, a Intel não foi capaz de lançar versões do Prescott acima de 3.8 GHz, ou seja, apenas 400 MHz a mais que os Pentium 4 baseados no core Northwood, fabricados na antiga técnica de 0.13 micron. O aumento no número de estágios do pipeline e as outras mudanças arquiteturais feitas no processador acabaram sendo em vão. Hyper-Threading O Hyper-Threading foi introduzido no final de 2002, na forma de duas versões especiais do Pentium 4 Northwood (soquete 478), que operavam a 2.8 e 3.06 GHz. A partir daí, ele foi utilizado em diversas séries do Prescott. As séries com suporte ao Hyper-Threading eram identificadas pelo logotipo, que continha as letras "HT", em laranja: Com o Hyper-Threading, o processador se apresenta ao sistema operacional como um sistema dual-core. Com isso, o sistema ativa os módulos que ativam 140
  • 141. o suporte a SMP e passa a dividir o processamento dos aplicativos entre os dois processadores lógicos. Dentro do processador, as instruções são reorganizadas, de forma que o processador possa aproveitar os ciclos ociosos para incluir operações relacionadas ao segundo aplicativo. Aumentar o nível de utilização das unidades de execução resulta em um pequeno ganho de desempenho. Este slide da Intel apresenta o conceito: Slide da Intel que demonstra o uso do Hyper-Threading Dentro do processador, os circuitos responsáveis pelo Hyper-Threading representam menos de 5% dos transístores do processador. Embora tenham sido habilitados apenas em algumas séries de processadores, que eram vendidos a preços mais altos, os circuitos responsáveis estavam presentes desde o Pentium 4 Willamette, embora desativados. Os circuitos responsáveis pelo Hyper-Threading representam uma expansão do circuito de TLB e do trace cache, além de três pequenos circuitos adicionais, o Return Stack Predictor, Next Instruction Pointer e o Register Alias Tables. Eles são os responsáveis por criar a "ilusão" de dois processadores, vista pelo sistema operacional e por agendar o processamento de instruções aproveitando os ciclos ociosos. 141
  • 142. Slide da Intel que mostra os circuitos responsáveis pelo Hyper-Threading O Hyper-Threading foi, de certa forma, um ensaio para os processadores dual- core que a Intel viria a lançar cerca de três anos depois. O ganho obtido ao ativar o Hyper-Threading não é nem próximo do obtido ao utilizar um processador dual-core "de verdade", já que ele se baseia no melhor aproveitamento das unidades de execução do processador e não na presença de um segundo processador físico. Ao ativá-lo você arca com o overhead de utilizar um sistema com dois processadores, já que o sistema operacional e aplicativos precisam lidar com o trabalho adicional de dividir a carga entre os dois processadores. Embora sejam dois processadores lógicos, o impacto sobre o desempenho não é nem de longe é o mesmo de ter dois processadores reais. Isso faz com que o Hyper-Threading seja uma faca de dois gumes. Em alguns aplicativos, ele pode resultar em ganhos de 10, ou até mesmo 20%, mas na maioria o ganho é muito pequeno, abaixo de 2%. Existe ainda um grande número de aplicativos onde ativar o HT reduz substancialmente o desempenho, o que anula em grande parte o ganho obtido em outros aplicativos. Os aplicativos que mais se beneficiam do HT, de uma forma geral, são os aplicativos de compressão de áudio e vídeo, compactação e descompactação de arquivos, aplicativos de renderização 3D e alguns jogos. Os ganhos são mais expressivos em ambientes multitarefa, já que o maior número de processos ativos permite que o processador aproveite melhor o tempo ocioso, adiantando operações em um aplicativo enquanto aguarda pela conclusão de uma operação de tomada de decisão em outro, por exemplo. Os aplicativos que costumam apresentar perdas são sobretudo os aplicativos do dia-a-dia, incluindo navegadores, processadores de texto, planilhas e assim por diante. Outro efeito colateral é que ativar o Hyper-Threading aumenta o consumo e, conseqüentemente, a dissipação térmica do processador em de 6 a 8%. Não é incomum que ao ativar o HT a temperatura do processador suba 5 ou 6 graus, o que pode prejudicar a estabilidade do sistema, caso a ventilação dentro do gabinete não seja boa e o processador já esteja trabalhando próximo limite. Os relatos de instabilidade ao ativar o HT quase sempre derivam-se disso. 142
  • 143. Como os processadores Pentium 4 (sobretudo os Prescott, que operam a freqüências muito elevadas e ainda são fabricados numa técnica de 0.09 micron) possuem uma dissipação térmica muito alta e uma relação consumo/performance já muito ruim, os ganhos obtidos com a ativação do HT acabam sendo superados pelas desvantagens, de forma que muitos preferiam simplesmente desativar o recurso através do setup. Soquete 775 Junto com o Prescott, foi lançado o soquete LGA775 (também chamado de soquete T), que passou a ser utilizado nas placas de alto desempenho. A sigla LGA é abreviação de "Land Grid Array", onde o nome indica a forma como o processador é encaixado, "pousando" sobre a cama de pinos do soquete. Existiram versões do Prescott tanto em versão soquete 478, quanto em versão soquete 775. A partir de então, todos os processadores de alto desempenho passaram a utilizar o novo soquete, transformando a plataforma soquete 478 em uma plataforma de baixo custo. O soquete 775 foi projetado de forma a melhorar o contato dos pinos e reduzir a distância que os sinais elétricos precisam percorrer do processador ao chipset, além de permitir que os capacitores instalados na parte inferior do processador (responsáveis por filtrar e estabilizar a corrente) possam ser instalados o mais próximo possível do núcleo. Os pinos de encaixe foram retirados do processador e movidos para o soquete, e um novo mecanismo de retenção foi projetado: Soquete 775 143
  • 144. A primeira coisa a ter em mente é que os contatos do soquete 775 são realmente muito finos e frágeis. No lugar de sulcos, o processador possui pequenos pontos de contato, que correspondem precisamente aos contatos no soquete: Pentium 4 com core Prescott em versão LGA775 Essa fragilidade faz com que seja muito fácil entornar parte dos contatos da placa ao instalar o processador de forma desastrada. Ao contrário do que temos em processadores antigos, onde com um pouco de jeito é possível desentortar alguns pinos entortados durante uma tentativa de instalação mal feita, é praticamente impossível desentortar contatos amassados no soquete 775, de forma que uma instalação incorreta do processador simplesmente inutiliza a placa-mãe. Segundo a própria Intel, o índice de falhas é de uma em cada vinte inserções. Ou seja, o soquete foi projetado para resistir a algumas poucas inserções, incluindo a instalação inicial do processador e alguns upgrades futuros, e não para suportar inserções e remoções freqüentes. Ao instalar o processador você deve posicioná-lo sobre o soquete e simplesmente soltá-lo, deixando que a lei da gravidade se encarregue de encaixá-lo. Nunca aplique pressão sobre o processador, pois isso só servirá para entortar os pinos que não estiverem bem posicionados. Uma vez fechado, o mecanismo de retenção prende o processador, aplicando a pressão necessária para que ele fique bem preso ao soquete, maximizando a condutividade elétrica. Graças a isso, a pressão exercida pelo sistema de retenção do cooler pode ser muito menor, o que evita que a placa "envergue", como no caso das placas soquete 478. Você pode notar, pela foto, que não existe um mecanismo de retenção para o cooler, como nas placas soquete 478. Como a pressão sobre o processador é 144
  • 145. exercida pelo mecanismo de retenção do soquete, o cooler é simplesmente encaixado através dos orifícios disponíveis na placa: O mecanismo de retenção Smithfield, Cedar Mill e Presler O core Smithfield é uma versão dual-core do Prescott (1 MB de cache para cada core), produzido em uma técnica de 0.09 micron. Ele foi utilizado nas primeiras versões do Pentium D (abrangendo modelos de 2.66 a 3.2 GHz) e também no Pentium Extreme Edition 840. Estes processadores foram produzidos em quantidades limitadas e foram rapidamente substituídos pelos Pentium D baseados no core Presler. Esta imagem mostra o núcleo de um Pentium D baseado no core Smithfield. Como você pode ver, ele nada mais é do que dois Prescotts, que compartilham o mesmo wafer e são unidos diretamente através do FSB, que no caso dos processadores Intel é também usado para ligar o processador à memória e ao chipset: 145
  • 146. Núcleo do Pentium D baseado no core Smithfield O Cedar Mill é uma versão atualizada do Prescott 2M, produzida utilizando uma técnica de 0.065 micron (65 nanômetros). Ele mantêm os 2 MB de cache e não inclui mudanças na arquitetura, nem para melhor, nem para pior. O desempenho dos processadores baseados no core Cedar Mill é rigorosamente o mesmo dos Prescott 2M da mesma freqüência. A única vantagem é que a dissipação térmica do Cedar Mill é um pouco mais baixa, e ele é capaz de atingir freqüências de clock um pouco maiores (embora a diferença seja pequena) quando em overclock. De um modo geral, é possível atingir até 4.2 GHz fazendo overclock em um processador baseado no Core Prescott, enquanto os baseados no Cedar Mill atingem até 4.5 GHz (em ambos os casos sem muita estabilidade). A freqüência máxima não varia muito de acordo com o clock original do processador, você precisa apenas ajustar a freqüência do FSB de acordo com o multiplicador, já que ele é travado, tanto no Prescott, quanto no Cedar Mill. Foram lançadas apenas 4 versões do Cedar Mill, operando a 3.0, 3.2, 3.4 e 3.6 GHz, todas em versão LGA775 e utilizando bus de 800 MHz. Embora o Cedar Mill fosse capaz de facilmente superar a marca dos 4.0 GHz, em overclock, a Intel decidiu não lançar processadores acima dos 3.6 GHz, dando prioridade para o lançamento de versões de baixo consumo. O Cedar Mill deu origem também ao Cedar Mill-512, a versão mais competitiva do Celeron lançada até então, que contava com 512 KB de cache e era fabricado usando uma técnica de 0.065 micron. Eles existiram em versão de 3.06 a 3.6 GHz (todas utilizando bus de 533 MHz) e se tornaram muito baratos depois do lançamento do Core 2 Duo, oferecendo uma boa relação custo- benefício. 146
  • 147. Utilizando um bom cooler, é possível superar facilmente a faixa dos 4.0 GHz em overclock. Uma configuração muito comum é overclocar o Celeron D 347 (a versão de 3.06 GHz) para 3.83 GHz, aumentando a freqüência do FSB para 800 MHz. O Presler, por sua vez, era uma versão dual-chip do Cedar Mill, onde dois chips eram instalados dentro do mesmo encapsulamento. Como os dois chips eram separados por uma distância de 5 mm, a dissipação de calor era um pouco mais eficiente do que no Smithfield. Além disso, graças à utilização de núcleos separados, o índice de aproveitamento da Intel era melhor, já que os dois processadores podiam ser testados separadamente. No caso do Smithfield, caso um dos dois cores apresentasse defeito, ambos precisavam ser descartados. Externamente, um Pentium D baseado no core Presler não é diferente de um Prescott, Cedar Mill ou Smithfield soquete 775, com o mesmo formato e o mesmo dissipador metálico protegendo o processador. Mas, ao remover o dissipador, você pode ver os dois cores separados: Pentium D com core Presler (com o dissipador removido) Em teoria, utilizar dois chips separados resulta em um processador capaz de operar a freqüências mais baixas do que ao utilizar um processador dual-core "de verdade", como o Smithfield. Apesar disso, os ganhos advindos da redução de custos parecem ter superado as desvantagens para a Intel. 147
  • 148. O Presler foi lançado em versões de 2.8 a 3.6 GHz, todas com 2 x 2 MB de cache L2 e utilizando bus de 800 MHz. Além de representar a maior parte dos Pentium D vendidos, ele foi utilizado também em duas versões do Pentium Extreme Edition, operando a 3.46 e 3.73 GHz. Por ser um processador dual-chip, o Presler não era capaz de atingir freqüências tão altas quanto o Cedar Mill quando em overclock. Mesmo nos modelos de fabricação mais recente, é muito difícil superar a marca dos 3.9 GHz. Devido à concorrência da AMD, a Intel passou a ajustar o preço de seus processadores dual-core de forma bastante agressiva. A diferença de preço entre um Pentium D e um Pentium 4 da série 6xx (baseado no Cedar Mill) não era grande, de forma que, em 2006, você podia comprar um Pentium D de 2.8 GHz por aproximadamente o mesmo que pagaria por um Pentium 4 631, a versão single-core de 3.0 GHz. De uma forma geral, aplicativos que dividem a carga de processamento em vários threads e por isso se beneficiam de um processador dual-core são aplicativos de edição e compressão de vídeo, renderização 3D, edição de imagens (Photoshop, Gimp, etc.) e diversos aplicativos de uso profissional. Aplicativos que trabalham com um único thread e por isso não se beneficiam de um processador dual-core são aplicativos office de uma forma geral, navegadores, players de áudio e vídeo e a maioria dos games. Note entretanto que o uso de um processador dual-core sempre ajuda quando você está rodando dois aplicativos pesados simultaneamente. Pode ser que um determinado game 3D não apresente ganho algum de FPS ao rodar sobre um processador dual-core, mas sem dúvida o FPS será mais alto se você resolver comprimir um filme em Divx em segundo plano enquanto joga. Nos servidores a coisa muda de figura, pois quase todos os serviços geram um volume muito grande de threads, de forma que um processador dual-core oferece sempre um ganho muito grande de desempenho. Sistema de numeração Ao migrar seus processadores para o soquete 775, a Intel adotou o sistema de numeração que ainda é usado até os dias de hoje. Ao contrário da AMD, que até então usava o sistema de numeração como um indicador aproximado de desempenho, o sistema de numeração da Intel é apenas um código que indica a família, a "posição hierárquica" do chip e os recursos adicionais (EM64, suporte a virtualização, etc.) suportados por ele. Isso faz com que, em muitos casos, um processador mais rápido receba um número de identificação muito inferior ao de um processador mais lento, porém de outra família. Por exemplo, a versão de ultra baixo consumo do Pentium M (com core Dothan) de 1.0 GHz recebe o código 723, enquanto um Pentium M "normal", de 1.5 GHz recebe o código 715 e um Prescott de 3.4 GHz recebe o código 551. 148
  • 149. Um Celeron D de 3.6 GHz baseado no core Cedar Mill-512 recebe o número 365, enquanto um simples Prescott de 2.66 GHz recebe o número 505. O sistema de numeração é aplicado apenas aos processadores produzidos em versão soquete 775. Mesmo depois do lançamento deles, os processadores soquete 478 (tanto Pentium 4, quanto Celeron) continuaram sendo vendidos sob a freqüência de operação, até serem descontinuados. A partir da segunda metade de 2007, a AMD acabou adotando um sistema de numeração similar ao da Intel, também abandonando a idéia do índice de desempenho. Pentium 4 Os primeiros modelos a adotarem o sistema de numeração foram lançados no final de 2004. A série 5xx é formada pelos processadores Pentium 4 com core Prescott e 1 MB de cache. A leva inicial inclui os modelos 505 (2.66 GHz), 505J (2.66 GHz), 506 (2.66 GHz), 511 (2.8 GHz), 515 (2.93 GHz), 515J (2.96 GHz), 516 (2.66 GHz), 517 (2.93 GHz) 519J (3.06 GHz) e 519K (3.06 GHz), todos utilizando bus de 533 MHz. Além do clock, os processadores são diferenciados pela presença dos recursos especiais, justamente por isso existem tantos modelos com o mesmo clock. Os modelos 506, 516, 517 e 519K oferecem suporte ao EM64 (também chamado de Intel 64), o conjunto de instruções de 64 bits desenvolvido pela Intel e por isso são capazes de rodar as versões de 64 bits do XP, Vista e distribuições Linux compiladas para processadores de 64 bits. Todos os processadores da série 5xx com o EM64 oferecem também suporte a Hyper- Threading. O 511 oferece apenas suporte a HT, sem suporte a instruções de 64 bits, enquanto o 505J, 515J e 519J oferecem suporte ao XD bit (eXecute Disable bit), um sistema de proteção utilizado por alguns softwares para aumentar a proteção contra ataques de buffer overflow. Este recurso recebeu uma grande atenção na época em que foi lançado, mas acabou não sendo tão utilizado na prática. Os demais são modelos "simples" do Prescott, sem nenhum dos três recursos. Em seguida temos a série composta pelos modelos 520 (2.8 GHz), 520J (2.8 GHz), 521 (2.8 GHz), 524 (3.06 GHz), 530 (3.0 GHz), 530J (3.0 GHz), 531 (3.0 GHz), 540 (3.2 GHz), 540J (3.2 GHz), 541 (3.2 GHz), 550 (3.4 GHz), 550J (3.4 GHz), 551 (3.4 GHz), 560 (3.6 GHz), 560J (3.6 GHz), 561 (3.6 GHz), 570J (3.8 GHz GHz) e 571 (3.8 GHz). 149
  • 150. Todos estes modelos suportam Hyper-Threading, por isso a informação não é mais indicada no número. Estas versões eram vendidas sob a marca "Pentium 4 HT", de forma que ficava claro ao comprar que o processador suportava HT. Apesar de serem baseados no mesmo core Prescott com 1 MB da série anterior, todos estes modelos utilizam bus de 800 MHz e por isso são um pouco mais rápidos, embora a diferença seja pequena. Todos os modelos cuja numeração termina com "1" oferecem também suporte ao EM64 e ao recurso XD bit. A lista completa inclui os modelos HT 521, HT 524, HT 531, HT 541, HT551, HT 561 e HT 571. Os modelos cuja numeração inclui um "J" oferecem suporte apenas ao XD bit, que não é nem de longe tão interessante quando o suporte a instruções de 64 bits. A lista inclui os modelos HT520J, HT 530J, HT540J, HT 550J, HT 560J, e HT 570J. Os demais modelos, cuja numeração termina com "0" são os modelos "simples", que incluem apenas o suporte a Hyper-Threading inerente à série. Uma curiosidade é que os modelos HT 570J e HT 571 (assim como o 670) são os processadores Intel com a maior freqüência de clock, oficialmente suportada até hoje. Os modelos dual-core baseados na arquitetura do Pentium 4, assim como os Core 2 Duo, trabalham a freqüências mais baixas. É possível superar a marca de 3.8 GHz usando um Core 2 Duo em overclock (usando algum tipo de refrigeração especial), mas vai demorar um pouco até que seja lançado um Core 2 Duo capaz de operar oficialmente a esta freqüência. Apesar disso, a ineficiente arquitetura do Prescott faz com que os processadores da série 5xx tenha um desempenho modesto para os padrões atuais. Em seguida temos os processadores baseados no Prescott 2M. Apesar de terem 2 MB de cache, o dobro dos modelos anteriores, o cache L2 incluído utiliza um design mais compacto, que tem como efeito colateral um novo aumento na já alta latência do cache L2 do Prescott original. Isto faz com que parte do ganho de desempenho obtido com a ampliação do cache seja anulado. A série inclui os modelos 620 (2.8 GHz), 630 (3.0 GHz), 640 (3.2 GHz), 650 (3.4 GHz), 660 (3.6 GHz), 662 (3.6 GHz), 670 (3.8 GHz) e 672 (3.8 GHz) Todos estes modelos utilizam bus de 800 MHz, oferecem suporte a instruções de 64 bits, Hyper-Threading e XD bit. Com exceção do 620, todos suportam também o EIST (Enhanced Intel SpeedStep), um sistema aprimorado de gerenciamento de energia, que reduz de forma substancial o consumo do processador enquanto ele está ocioso. Este recurso é suportado inclusive no Linux, através do daemon "powernowd". Os modelos cuja numeração termina com "2", lista que inclui apenas o 662 e 672, incluem também suporte ao Intel VT, um sistema de virtualização que visa melhorar o desempenho de programas de virtualização, como o VMware, 150
  • 151. Virtual PC e Xen (no Linux). Em teoria, o uso do Intel VT poderia melhorar de forma substancial o desempenho destes programas, mas até o presente momento a promessa ainda não se concretizou. Finalmente, temos os modelos baseados no core Cedar Mill, a atualização do core Prescott 2M, fabricada usando a técnica de fabricação de 0.065 micron. Todos estes modelos mantém os 2 MB de cache, mas possuem um consumo elétrico um pouco mais baixo. A série inclui os modelos 631 (3.0 GHz), 641 (3.2 GHz), 651 (3.4 GHz) e 661 (3.6 GHz). Todos os modelos utilizam bus de 800 MHz, EM64, Hyper-Threading e XD bit. Existiram três revisões do core Cedar Mill, com steeping B1, C1 e D0, que se diferenciam com relação ao consumo elétrico. Os mais antigos, baseados no steeping B1 possuem um TDP de 86 watts e não suportam o EIST. Os baseados no steeping C1 mantém o mesmo TDP, mas já incluem suporte ao EIST (o que faz com que o processador fique muito mais frio enquanto o PC está rodando aplicativos leves), enquanto os baseados no steeping D0 possuem um TDP mais baixo, de apenas 65 watts. Esta tabela, fornecida pela Intel, mostra todos os modelos, a partir do 521: 151
  • 152. Pentium D Ao lançar o Cedar Mill, a Intel estava preocupada em reduzir o consumo e aumentar a eficiência dos processadores. Embora os Cedar Mill fossem capazes de trabalhar a freqüências ligeiramente superiores aos processadores baseados no core Prescott (o que você pode comprovar ao fazer overclock), a perda de corrente ao operar a freqüências acima de 3.6 GHz era muito alta, o que fez a Intel desistir do lançamento de versões mais rápidas. Ao invés disso, os esforços foram concentrados nos modelos dual-core e na finalização do Core 2 Duo, que viria a ser lançado em Julho de 2006, apenas 6 meses depois das 4 versões do Cedar Mill. Os processadores dual-core baseados na arquitetura NetBurst foram vendidos sob a marca "Pentium D" (de dual). Existiram duas famílias, baseadas nos cores Smithfield (série 8xx) e Presler (9xx). O core Smithfield é uma versão de dois núcleos do Prescott, onde cada um dos dois processadores inclui 1 MB de cache, totalizando 2 MB. Foram produzidas apenas quatro versões baseadas no Smithfield: 805 (2.66 GHz), 820 (2.8 GHz), 830 (3.0 GHz) e 840 (3.2 GHz). O 805 foi uma versão de baixo custo, destinada a ser utilizada em conjunto com as placas soquete 775 que suportavam apenas bus de 533. As outras três versões utilizavam bus de 800 MHz. Com relação aos recursos especiais, os 4 modelos suportam o EM64 e o XD bit, mas apenas o 830 e o 840 (que possuem um TDP mais alto) suportam o Advanced SpeedStep. Nenhum dos modelos oferece suporte ao Hyper- Threading, que foi desativado em parte para diferenciá-los do Pentium Extreme Edition 840 (que era bem mais caro) e em parte para reduzir o consumo elétrico dos processadores, que no 830 e 840 já superava a marca dos 130 watts em momentos de atividade intensa. Os Pentium D baseados no core Smithfield foram substituídos pelos baseados no core Presler a partir de Janeiro de 2006. A série foi composta pelos modelos 915 (2.8 GHz), 920 (2.8 GHz), 925 (3.0 GHz), 930 (3.0 GHz), 935 (3.2 GHz), 940 (3.2 GHz), 945 (3.4 GHz), 950 (3.4 GHz) e 960 (3.6 GHz). Assim como no caso da série 8xx, nenhum destes modelos suporta Hyper- Threading, desativado para diferenciá-los dos processadores da série Extreme Edition. Todos suportam instruções de 64 bits, XD bit e também o Advanced SpeedStep. Os modelos cujo código termina com "0" (920, 930, 940, 950 e 960) oferecem suporte ao Intel VT, o mesmo recurso de virtualização que foi introduzido na série 6xx. Este é o único recurso que os diferencia dos 9x5. Veja a tabela com todos os modelos: 152
  • 153. Extreme Edition No final de 2003, pressionada pela AMD, a Intel criou a série Pentium 4 Extreme Edition (Pentium 4 EE), processadores com mais cache, que foram produzidos em quantidades limitadas e vendidos a preços exorbitantes. A principal função destes processadores foi servir como ferramenta de marketing, atraindo a atenção do público entusiasta. As versões iniciais eram baseadas no core Gallatin, uma versão adaptada do Xeon MP (que por sua vez era baseado no core Northwood), que possuía apenas 512 KB de cache L2, complementados por um generoso cache L3 de 2 MB. O Gallatin ainda era fabricado usando a antiga técnica de 0.13 micron, por isso foi lançado em versões de 3.2 a 3.46 GHz, tanto em versão soquete 478 (de 3.2 e 3.4 GHz) quanto em versão soquete 775 (versões de 3.4 e 3.46 GHz). Em seguida veio o Pentium 4 EE baseado no core Prescott 2M que, como o nome sugere, é uma versão aperfeiçoada do core Prescott, com 2 MB de cache L2 (que substituíram o cache L3 do Gallatin). A versão inicial (e única) operava a 3.73 GHz e era destinada exclusivamente a placas soquete 775 com suporte a bus de 1.06 GHz. A Intel pretendia lançar versões mais rápidas, atingindo a marca de 5 GHz, mas a brutal dissipação térmica do processador impediu que isso se concretizasse. 153
  • 154. Mais adiante foram lançadas versões Extreme Edition baseadas nos cores Smithfield e Presler. Elas foram vendidas sob a marca "Pentium Extreme Edition" (sem o "4"). Para evitar confusão, abreviamos o nome "Pentium Extreme Edition" como "Pentium XE", diferenciando-os da série antiga, abreviada como "Pentium 4 EE". O core Smithfield foi usado em uma única versão do Pentium XE (o XE 840), que operava a 3.2 GHz. A única vantagem real do XE 840 sobre os processadores da série 8xx era o suporte a Hyper- Threading. Apesar disso ele era vendido (na época de lançamento) por US$ 999, quase o dobro do preço de um Pentium D 840, que também operava a 3.2 GHz. No início de 2006 foram lançados dois novos modelos, baseados no core Presler: o Pentium XE 955 e o XE 965, que operavam respectivamente a 3.46 e 3.73 GHz. O principal diferencial destes dois modelos sobre os demais processadores da série 9xx era o uso do bus de 1.06 GHz, o que melhorava sutilmente o desempenho em relação a um Pentium D do mesmo clock. O XE 965 operava a uma freqüência 133 MHz maior que o Pentium D 960 (3.6 GHz), o que o torna o processador mais rápido dentro da plataforma NetBurst. Ao mesmo tempo, ele é um dos piores processadores de todos os tempos com relação ao custo-benefício, já que custava, em Abril de 2006, nada menos que 999 dólares. Três meses depois, era possível comprar dois Core 2 Duo E6700 pelo mesmo valor. Celeron D Como de praxe, a Intel lançou versões atualizadas do Celeron baseadas no core Prescott (com 256 KB de cache) e do Cedar Mill (com 512 KB), que lentamente substituíram os antigos Celerons baseados no Northwood. Apesar do maior número de estágios de pipeline e da maior latência do cache L2 (cortesia do Prescott), o Celeron D acaba sendo consideravelmente mais rápido que um Celeron Northwood do mesmo clock (de 10 a 20%, de acordo com o aplicativo) devido à combinação do maior cache L1 de dados (16 KB x 8 KB), do maior cache L2 e do uso do bus de 533 MHz. Todos os Celeron D utilizam o soquete 775 e bus de 533 MHz. Apesar do "D" no nome, eles não são processadores dual-core. A Intel simplesmente resolveu nomear o Celeron de forma parecida para aproveitar o esforço de marketing feito em torno do Pentium D. O "D" no caso do Celeron não tem nenhum significado especial, é apenas uma letra a mais no nome. A lista dos Celerons D baseados no core Prescott-256 inclui o 310 (2.13 GHz), 315 (2.26 GHz), 320 (2.4 GHz), 325 (2.53 GHz), 325J (2.53 GHz), 326 (2.53 GHz), 330 (2.66 GHz), 330J (2.66 GHz), 331 (2.66 GHz), 335 (2.8 GHz), 335J (2.8 GHz), 336 (2.8 GHz), 340 (2.93 GHz), 340J (2.93 GHz), 341 (2.93 GHz), 345 (3.06 GHz), 345J (3.06 GHz), 346 (3.06 GHz), 350 (3.2 GHz), 351 (3.2 GHz) e 355 (3.33 GHz). 154
  • 155. Como você pode ver, desta vez a lista é grande e temos um número muito grande de versões com o mesmo clock. Vamos então entender as diferenças entre elas. :) Nenhum dos Celerons D suporta Hyper-Threading ou o Advanced SpeedStep, mas diversos modelos suportam o XD bit e o EM64. Os modelos que possuem suporte ao XD bit são identificados pela letra "J". A lista inclui os modelos 325J, 330J, 335J, 340J, 345J. Como vimos, o XD bit não é um recurso tão interessante, de forma que ter um processador da série J é ao mesmo tempo uma boa e uma má notícia. A boa é que ele vem com o XD bit ativado e a má é que ele não inclui suporte ao EM64, que seria o recurso realmente importante. Os Celerons D com suporte a instruções de 64 bits foram lançados posteriormente e tiveram o número de identificação aumentando em 1 para diferenciá-los dos anteriores. A lista inclui o 326, 331, 336, 341, 346, 351 e também o 355. Todos estes modelos incluem "de brinde" também o suporte ao XD bit. Em seguida temos os modelos baseados no core Cedar Mill-512. Eles são os modelos recomendados, pois além de serem fabricados usando a técnica de 0.065 micron, possuem 512 KB de cache. Desta vez a escolha é mais simples, já que temos apenas 5 modelos: 347 (3.06 GHz), 352 (3.2 GHz), 356 (3.33 GHz), 360 (3.46 GHz) e 365 (3.6 GHz). Todos os 5 modelos suportam tanto o EM64 quanto o XD bit, eliminando a ambiguidade da série anterior. Veja a tabela completa, cortesia da Intel: 155
  • 156. Uma questão interessante na informática é que nem sempre processadores e outros componentes mais lentos ou descontinuados são uma opção ruim de compra, já que, conforme são substituídos, os preços tendem a cair rapidamente. Como sempre, é tudo uma questão de custo-benefício. Em muitos casos, um processador 40% mais lento pode custar 10 vezes menos e suportar um 156
  • 157. overclock de 30%, que o deixa com um desempenho próximo do modelo topo de linha. Athlon e Duron A versão original do Athlon (em formato de cartucho, com cache L2 externo) foi lançada pouco depois do Pentium III com core Katmai. Como os dois processadores utilizavam cache L2 trabalhando à metade da freqüência do processador, a briga manteve-se equilibrada, com o Pentium III ganhando em alguns aplicativos e o Athlon, em outros. Apesar de, no geral, o Athlon ganhar por uma pequena margem, o posto de processador mais rápido acabava sendo conquistado pelo processador com a freqüência de operação mais alta e assim trocava de mãos conforme os fabricantes se revezavam no lançamento de versões mais rápidas. Mas, o Athlon começou a ficar para trás depois que a Intel lançou as novas versões do Pentium III, baseadas no core Coppermine, devido ao seu (do Athlon) cache L2 mais lento. Enquanto em um Pentium III de 900 MHz o cache L2 opera à mesma freqüência do processador, em um Athlon 900 antigo ele opera a apenas 300 MHz, um terço da freqüência. Isto mudou com o lançamento do Athlon Thunderbird, que (com exceção do K6-3) foi o primeiro processador AMD com cache L2 integrado, um design muito mais elegante e eficiente, que além de mais rápido passou a ser mais barato de se produzir que a versão anterior, onde além do núcleo do processador, era usada uma placa de circuito e dois chips de cache L2 separados: Athlon slot A (sem a cobertura plástica). Repare nos dois chips separados de cache L2 157
  • 158. Athlon Thunderbird Com exceção dos K6-2, que foram vendidos em enorme quantidade e por isso ainda vão demorar para serem substituídos completamente, o Thunderbird é provavelmente o processador AMD mais antigo que você ainda encontrará em uso. O Athlon original era caro e foi produzido em quantidades limitadas, devido a dificuldades da AMD relacionadas ao processo de produção e à obtenção de chips de cache L2 em volume suficiente. Foi a partir do Thunderbird que a AMD passou a ter um produto competitivo e a ganhar espaço no mercado. As primeiras séries do Athlon slot A (K7), produzidas em versões de 500 a 700 MHz foram ainda produzidas em uma antiquada técnica de 0.25 micron, que limitava pesadamente a freqüência de operação do processador. A partir de novembro de 1999, o Athlon passou a ser produzido em uma técnica de 0.18 micron (K75), dando origem às versões de até 1.0 GHz. A Athlon Thunderbird ainda é produzido em uma técnica de 0,18 micron, mas ele traz como grande destaque o uso de cache L2 integrado, um verdadeiro divisor de águas, que além de melhorar o desempenho do processador, baixou os cursos de produção (e consequentemente o preço de venda), permitiu o lançamento de versões com clock mais elevado e, ainda por cima, permitiu o lançamento do Duron, que rapidamente substituiu os antigos K6-2 no posto de processador de baixo custo. O Thunderbird possui apenas 256 KB de cache L2, contra 512 KB do Athlon antigo. A grande diferença é que nele o cache é integrado diretamente no núcleo do processador e opera sempre à mesma freqüência que ele, o que resulta em um ganho de desempenho muito grande. O cache L2 é complementado por mais 128 KB de cache L1, que também opera à mesma freqüência do processador, mas oferece tempos de latência mais baixos. Em um Athlon slot A de 1.0 GHz, o cache L2 opera a apenas 333 MHz (1/3 da freqüência do processador), enquanto em um Thunderbird da mesma freqüência, ele opera a 1.0 GHz. Esta brutal diferença na freqüência do cache cobre com lucro a perda resultante da diminuição do tamanho, fazendo com que o Thunderbird seja mais de 10% mais rápido que o modelo antigo. Outra diferença importante com relação ao cache do Thunderbird é que ele passou a ser "exclusivo" ao invés de "inclusivo", como no Athlon antigo. Isso faz com que o cache L1 armazene sempre dados diferentes dos armazenados no cache L2, fazendo com que o processador realmente armazene 384 KB de informações em ambos os caches. No cache inclusivo o Athlon antigo, o cache L1 armazenava cópias de dados já armazenados no cache L2, fazendo com que o processador armazenasse um total de 512 KB de dados em ambos os caches: 158
  • 159. Slide da AMD que mostra o uso do cache exclusivo do Thunderbird Com a simplificação no design do processador, o formato de cartucho deixou de ser necessário, de forma que a AMD voltou a utilizar um encaixe em formato de soquete, dando origem ao soquete A (também chamado de soquete 462), utilizado na segunda geração de placas para o Athlon. Ao contrário da Intel, que permitiu uma migração suave do slot 1 para o soquete 370, desenvolvendo adaptadores e vendendo processadores em ambos os formatos durante algum tempo, a AMD optou por fazer uma migração abrupta, substituindo os processadores slot A pelos soquete A rapidamente. Esse movimento foi coordenado com os fabricantes de placas, que retiraram rapidamente as antigas placas slot A do mercado e passaram a vender apenas as placas soquete A, que foram vendidas até 2005. A AMD chegou a produzir uma série do Thunderbird em formato slot A, que foi vendida a alguns integradores que ainda tinham estoques de placas slot A, mas essa foi uma série limitada, que não chegou a ser vendida diretamente ao consumidor. Infelizmente não existe nenhum adaptador que permita instalar um Thunderbird numa placa slot A, de forma que elas se tornaram obsoletas. 159
  • 160. Athlon Thunderbird espetado em uma placa soquete A Como você pode ver, o Thunderbird não utiliza nenhum tipo de proteção sobre o núcleo do processador. Isto melhora a dissipação do calor (já que não existem intermediários entre o processador e o cooler), mas em compensação torna o processador muito mais frágil. É preciso ter cuidado redobrado ao instalar o cooler, para não trincar o núcleo do processador e você não deve jamais ligar o micro sem encaixar o cooler corretamente, pois isso vai literalmente torrar o processador. Não caia na tentação de "ligar o micro só pra testar" antes de encaixar o cooler, pois depois de "testar" você vai precisar comprar outro processador. :) Em termos de performance, o Thunderbird supera um Pentium III Coppermine do mesmo clock na maioria das aplicações. Em alguns testes o Pentium III era mais rápido, mas no geral o Thunderbird se mostrava superior, apesar de ser mais barato. O verdadeiro concorrente do Thunderbird não foi o Pentium III, que já estava em vias de ser descontinuado, mas sim as versões iniciais do Pentium 4 que, apesar de possuírem um desempenho por ciclo de clock muito inferior, trabalhavam a freqüências de clock muito mais elevadas, competindo na base da força bruta. Inicialmente o Thunderbird foi lançado em versões de 750, 800, 850, 900, 950 e 1000 MHz, utilizando sempre bus de 100 MHz (200 MHz, se levarmos em 160
  • 161. conta as duas transferências por ciclo do barramento EV6). Mais tarde, foram introduzidas versões de 1.1, 1.2 e 1.3 GHz (ainda utilizando bus de 100 MHz) e, em seguida, versões de 1.13, 1.2, 1.26, 1.33 e 1.4 GHz, utilizando bus de 133 MHz. Ao contrário do que temos nos processadores Intel, não existia uma diferença perceptível de desempenho entre as versões do Thunderbird com bus de 100 e 133 MHz, pois as placas da época, baseadas nos chipset VIA KT133 e SiS 730S, eram capazes de trabalhar com a memória operando de forma assíncrona, com uma freqüência acima da do FSB. Desta forma, a memória podia trabalhar a 133 MHz, mesmo ao utilizar um Thunderbird com bus de 100 MHz. Como o barramento EV6 utilizado pelo Athlon realiza duas transferências por ciclo, havia banda mais do que suficiente para absorver os dados enviados pela memória, mesmo a 100 MHz. Em junho de 2000 foi lançado o Duron, que finalmente substituiu os antigos K6-2 e K6-3 como processador de baixo custo. A versão inicial do Duron, baseada no core Spitfire, é um descendente direto do Athlon Thunderbird. Ambos compartilham a mesma arquitetura (incluindo os 128 KB de cache L1), mas o Duron vem com apenas 64 KB de cache L2, apenas um quarto do usado no Thunderbird. O Duron foi possivelmente o primeiro processador da história a vir com mais cache L1 do que cache L2. Apesar de incomum, essa configuração de cache funcionava muito bem, graças ao sistema de cache exclusivo introduzido pela AMD no Thunderbird. Graças a ele, o Duron podia armazenar dados diferentes em ambos os caches, totalizando 192 KB de dados. O Celeron Coppermine, que era seu concorrente direto, possuía 32 KB L1 e 128 KB de cache L2 e utilizava o sistema inclusivo, onde o cache L1 armazenava cópias de dados já armazenados no cache L2. Isso fazia com que o Celeron fosse capaz de armazenar apenas 128 KB de informações em ambos os caches, um volume muito menor que o Duron. O cache L2 do Duron contava com 16 linhas associativas (o mesmo número do Thunderbird), contra 8 do Pentium III e 4 do Celeron. O maior número de linhas de associação melhora bastante a eficiência do cache, agilizando o acesso aos dados gravados e garantindo um melhor aproveitamento do espaço. O grande problema é que o Celeron utilizava um barramento de 256 bits para acesso ao cache L2, enquanto o Duron utilizava um barramento muito mais lento, com apenas 64 bits. O barramento estreito anulava parte dos ganhos obtidos nos outros quesitos. Outra diferença em relação ao Celeron é que o Duron era realmente um processador diferente, com menos transístores e produzido em fábricas separadas, enquanto o Celeron Coppermine era um Pentium III com metade do cache L2 desativado em fábrica. No início, esse artifício permitiu que a intel aproveitasse um certo número de processadores Pentium III com defeitos no cache, já que podia desativar a parte ruim e vendê-los como Celerons. Mas, a partir de um certo ponto, o número de Celerons vendidos passou a superar em 161
  • 162. muito o número de processadores com defeito, de forma que a Intel precisava realmente produzir um Pentium III completo, arcando com todos os custos, para então desativar metade do cache e vendê-lo como um Celeron. A partir deste ponto, a estratégia da AMD se revelou mais vantajosa. O Duron Spitfire possui apenas 25 milhões de transístores, contra 37 milhões do Thunderbird, resultando em uma redução quase que proporcional no custo de produção. Os dois processadores eram produzidos em fábricas separadas e, além da questão do cache, existia uma pequena diferença na técnica de produção utilizada em cada um. Tradicionalmente, os processadores utilizavam alumínio nos filamentos que interligam os transístores. O alumínio é um material fácil de se trabalhar, que não reage com o silício. Por outro lado, o alumínio não é um condutor tão bom quanto o cobre, ouro, platina ou outros materiais mais "nobres". O cobre é um bom sucessor, pois é um material barato e que pode ser aplicado através das reações químicas usadas para construir um processador, ao contrário do ouro, por exemplo. A grande dificuldade em utilizar cobre no lugar do alumínio é que ele reage com o silício, tornando o processador imprestável caso nada seja feito a respeito. A IBM desenvolveu então uma técnica que permitia usar uma finíssima camada de alumínio entre o silício e o filamento de cobre, isolando os dois materiais (copper interconnects). O uso de cobre permite que o processador seja capaz de operar a freqüências mais elevadas e manter-se estável trabalhando a temperaturas mais altas. Na época, a AMD possuía duas fábricas, situadas em Austin (Texas) e Dresden (na Alemanha). A fábrica de Austin produzia apenas processadores na técnica antiga, utilizando filamentos de alumínio, enquanto a de Dresden produzia utilizando a técnica mais recente, com filamentos de cobre. As versões mais rápidas do Athlon, começando com a série "AXIA" de 1.0 GHz eram produzidas na fábrica de Dresden, enquanto as versões mais lentas do Thunderbird, junto com o Duron, eram produzidas na fábrica de Austin. Durante algum tempo, as séries do Thunderbird com filamentos de cobre se tornaram uma febre entre os entusiastas, pois suportavam overclocks muito maiores que os anteriores. Um Athlon AXIA de 1.0 GHz podia trabalhar estavelmente a 1.5 GHz, o que era algo absolutamente espantoso para a época. Todos os processadores Athlon soquete A possuem alguns códigos decalcados na parte superior do processador, na área que fica em contato com o cooler. Na primeira linha vai o tradicional "AMD Athlon", enquanto a segunda linha informa a freqüência do processador. A terceira linha traz justamente informações sobre a série do processador. A AMD utilizava um sistema de identificação bem simples para seus processadores, utilizando um código de identificação de 4 dígitos. O primeiro era a letra "A", de Athlon, enquanto os outros três mudavam de acordo com a 162
  • 163. série do processador. A mudança era sempre em ordem alfabética, o que permitia diferenciar facilmente os processadores de fabricação mais recente. Os "AXIA" (ou superiores) eram produzidos usando filamentos de cobre, enquanto os anteriores, como a série "AFFA", utilizavam a técnica antiga. Os códigos mudam de acordo com a família de processadores, por isso eles só têm alguma serventia ao comparar dois processadores da mesma família (dois Thunderbird, ou dois Palominos, por exemplo). A quarta linha trazia mais uma letra de identificação, indicando a sub-série (também classificada na ordem alfabética), como "K" ou "Y". Ela indicava refinamentos na técnica de produção, de forma que os processadores de sub- séries mais recentes oferecem margens de overclock um pouco maiores: Athlon "AXIA" de 1.0 GHz, da sub-série "K" Como em outros processadores, as possibilidades de overclocks não tinham muito a ver com a freqüência do processador, mas sim com a série. Um Athlon AXIA de 1.0 GHz e um Athlon AXIA de 1.33 GHz teriam um limite muito parecido, em torno de 1.5 GHz, de forma que era vantajoso comprar o processador mais barato. Voltando ao Duron, a série inicial, baseada no Spitfire, foi composta por modelos de 550 a 950 MHz, todos utilizando bus de 200 MHz e produzidos utilizando filamentos de alumínio. As primeiras versões, sobretudo os de 600 e 650 MHz, suportavam overclocks generosos, atingindo facilmente os 900 MHz (bastava aumentar a tensão do processador de 1.6V para 1.7V no setup). As versões mais rápidas, por outro lado, trabalham com margens de overclock muito mais estreitas, já que já operam muito mais próximo do limite da arquitetura. O Duron Spitfire de 950 MHz, por exemplo, mal consegue ultrapassar a barreira dos 1000 MHz com estabilidade. 163
  • 164. Athlon Palomino O Palomino foi a quarta geração do Athlon, sucessor do Thunderbird. Ao contrário do que muitos esperavam na época, o Palomino não foi uma versão do Athlon produzida em uma técnica de 0.13 micron. Ele continuou sendo produzido na fábrica de Dresden, utilizando a mesma técnica de 0.18 micron, com filamentos de cobre, mas foram feitas uma série de modificações no projeto, que reduziram o consumo e a dissipação térmica do processador em cerca de 20%, permitindo que ele fosse capaz de operar a freqüências mais altas. Para efeito de comparação, um Palomino de 1.4 GHz consumia 62.8 watts, contra 72 watts do Thunderbird da mesma freqüência. Pode parecer pouco, mas essa pequena redução permitiu que o Palomino atingisse os 1.73 GHz, uma freqüência de clock quase 20% maior que a versão mais rápida do Thunderbird, que compartilhava a mesma técnica de produção. Com relação ao desempenho, o Palomino trouxe duas modificações importantes. A primeira foi a compatibilidade com as instruções SSE, que haviam sido introduzidas pela Intel junto com o Pentium III. Quando o Palomino foi lançado, em 2001, já existia uma grande quantidade de softwares otimizados, de forma que houve um ganho imediato de desempenho em relação ao Thunderbird. As instruções SSE da AMD foram chamadas de "3D- Now! Professional". A segunda melhoria foi um sistema aperfeiçoado de data prefetch, que melhorou a eficiência dos caches, permitindo que o processador aproveitasse a banda ociosa no barramento com a memória para carregar instruções e dados que possuem uma grande probabilidade de serem utilizadas nos ciclos seguintes. Com isso, o número de ciclos de processamento perdidos foi reduzido, resultando em um pequeno ganho. Outro pequeno avanço é um aumento nos endereços disponíveis no TLB (Translation Lookaside Buffer). O TLB é uma pequena área de memória que armazena os endereços necessários para que o processador possa buscar dados na memória RAM, caso os mesmos não sejam encontrados nos caches. O processador não tem como armazenar diretamente todos os endereços da memória RAM, pois são realmente muitos. Ao invés disso, são armazenados apenas os mais usados. O problema é quando o processador precisa acessar uma informação qualquer na memória RAM, cujo endereço não está carregado no TLB. Perde-se uma verdadeira eternidade, pois primeiro será preciso carregar o endereço, para só depois fazer o já lento acesso à memória. O aumento no número de endereços disponíveis no TLB diminui a possibilidade destas "tragédias", permitindo mais um pequeno ganho de desempenho. Foi incluído ainda um diodo térmico, cuja função era proteger o processador, desligando o sistema quando ele atingia uma certa temperatura limite. O diodo 164
  • 165. não evitava a queima caso você ligasse o processador sem o cooler, mas oferecia alguma proteção adicional durante o uso normal do sistema. O Palomino trouxe também suporte a multiprocessamento, possibilitando o lançamento do Athlon MP e das primeiras placas dual-Athlon, como a Tyan Tiger MPX. O Athlon MP era mais caro e operava a freqüências mais baixas que as versões domésticas (as versões iniciais operavam a apenas 1.0 e 1.2 GHz), de forma a garantir a estabilidade do sistema em conjunto com o segundo processador. Apesar disso, ele oferecia um desempenho muito bom em aplicativos profissionais e servidores em geral. Dois Athlon MP, esperados em uma placa baseada no chipset AMD-760 MP Inicialmente, o core Palomino foi utilizado na fabricação do Athlon MP e em uma versão mobile do Athlon (chamada de "Mobile Athlon 4"), que utilizava a versão inicial do PowerNow, o sistema de gerenciamento de energia que, mais tarde, viria a ser incluído no Athlon 64. Quando chegou a hora de lançar as versões destinadas a PCs domésticos, a AMD chegou a ameaçar usar o nome "Athlon 4", mas depois mudou de idéia e resolveu apelar para a marca "Athlon XP". Oficialmente o "XP" vem de "Extreme Performance", mas na época pareceu óbvio que a idéia era pegar carona no esforço de marketing da Microsoft feita em torno do Windows XP. Ao invés de continuar vendendo o Athlon XP com base na freqüência de clock, a AMD passou a utilizar um índice de desempenho que comparava o desempenho do processador com o de um Pentium 4. Foram lançadas no total 7 versões do Athlon XP baseado no core Palomino, todas utilizando bus de 133 MHz: 1500+ (1.33 GHz), 1600+ (1.4 GHz), 1700+ (1.46 GHz), 1800+ (1.53 GHz), 1900+ (1.6 GHz), 2000+ (1.66 GHz) e 2100+ (1.73 GHz). Como você pode notar, a cada aumento de 100 pontos no índice, a AMD aumentava apenas 66 MHz na freqüência do processador, o que foi progressivamente minando a credibilidade do índice. O XP 1500+ superava com facilidade um Pentium 4 Willamette de 1.5 GHz, que operava a uma 165
  • 166. freqüência apenas 166 MHz maior, mas quando chegou no 2000+, o Willamette passou a ganhar em muitas aplicações. A situação se tornou mais grave com o lançamento do Northwood, que era até 10% mais rápido que um Willamette do mesmo clock. A partir do Athlon XP, a AMD passou a utilizar um novo encapsulamento, composto de resinas plásticas, gradualmente substituindo o antigo encapsulamento de cerâmica, usado desde os primeiros chips. Embora o termo "resinas plásticas" não inspire muita confiança, o encapsulamento é bastante resistente e permitiu uma precisão muito maior no posicionamento do núcleo do processador, dos filamentos de conexão e também dos capacitores responsáveis por estabilizar o fornecimento elétrico do processador. Tudo isso contribuiu para permitir o lançamento das versões mais rápidas do Palomino. Alguns processadores foram fabricados na cor verde e outros na cor marrom, mas esses são detalhes estéticos que não têm relação com a performance do processador. Athlon XP com o encapsulamento plástico Concluindo, o Palomino deu origem à segunda geração do Duron, o Duron Morgan. Ele ainda era produzido na mesma técnica de 0.18 micron utilizando filamentos de alumínio e mantendo o antigo encapsulamento de cerâmica, mas as melhorias introduzidas com o Palomino ajudaram o Morgan a atingir freqüências mais altas. Enquanto o Spitfire estacionou nos 950 MHz, o Morgan foi lançado em versões de 900, 950, 1000, 1100, 1200 e 1300 MHz, todas utilizando bus de 100 MHz. O suporte às instruções SSE e as demais melhorias também trouxeram ganhos 166
  • 167. de até 7%, se comparado com um Spitfire do mesmo clock. Em alguns benchmarks, como no caso do SYSMark 2001 (overall performance), o suporte a SSE sozinho chegava a representar um ganho de mais de 10%. Com os reforços, o Duron superou de vez os Celerons soquete 370 e começou a concorrer com as versões mais lentas do Pentium 4. Na época a Intel ainda não tinha um processador de baixo custo competitivo (já que estava descontinuando o Celeron baseado no Pentium III e ainda não havia lançado o Celeron baseado no Northwood), de forma que a AMD aproveitou o ambiente favorável para baixar os preços e aumentar sua participação no mercado. Na época, o Duron de 700 MHz (baseado no Spitfire) chegou a ser vendido por menos de US$ 25. Mesmo visualmente, existem algumas diferenças entre os dois. No Spitfire o núcleo do processador fica na horizontal, enquanto no Morgan fica na vertical. Veja que também mudou a disposição dos gold fingers do processador (usados para alterar o multiplicador ao fazer overclock): Duron Spitfire e Duron Morgan (à direita) Uma curiosidade é que, ao contrário do Palomino (que consome menos energia que um Thunderbird da mesma freqüência), o Morgan consome na verdade mais energia que um Spitfire. Isto acontece porque o Spitfire utilizava tensão de 1.6V, enquanto que o Morgan utiliza 1.75V. O aumento na tensão anulou a redução de consumo trazido pela arquitetura e ainda reverteu em prejuízo. Por já trabalharem a uma tensão elevada e já operarem muito próximos dos limites da plataforma, os Durons com core Morgan são ruins de overclock. Na época, as melhores opções eram as versões de baixo clock do Athlon, incluindo o XP 1500+. 167
  • 168. Athlon Thoroughbred Com a arquitetura de 0.18 micron atingindo seu limite com o Palomino de 1.73 GHz, a AMD se apressou em terminar a atualização de suas fábricas e assim iniciar a fabricação dos processadores baseados na técnica de 0.13 micron. O primeiro foi o Thoroughbred, uma versão modernizada do Palomino, que manteve os mesmos 256 KB de cache L2 e demais características, mas que oferecia uma dissipação térmica muito mais baixa e era assim capaz de trabalhar a freqüências de clock mais elevadas, o que era uma boa notícia tanto para quem queria processadores mais rápidos quanto para quem queria processadores bons de overclock. Para efeito de comparação, um Thoroughbred de 1.6 GHz consome 52.5 watts, contra 68 watts de um Palomino da mesma freqüência. Existiu uma redução de 1% no número de transístores, mas ela foi causada por pequenas otimizações feitas durante a transição no processo de fabricação, sem efeito sobre o desempenho. Utilizando a mesma placa-mãe e os mesmos módulos de memória, um Thoroughbred e um Palomino do mesmo clock possuem rigorosamente o mesmo desempenho. O Thoroughbred original foi produzido em versões de 1.46 a 1.8 GHz, dando origem ao Athlon XP 2200+ (1.8 GHz). Foram lançadas ainda as versões 1700+ (1.46 GHz), 1800+ (1.53 GHz), 1900+ (1.6 GHz) e 2000+ (1.66 GHz) e 2100+ (1.73 GHz), destinadas a substituir os antigos Palominos. Uma forma simples de diferenciar os primeiros Thoroughbreds dos antigos Palominos é observar a posição dos capacitores incluídos no encapsulamento do processador. Nos Palominos os capacitores são posicionados na face inferior do processador, enquanto no Thoroughbred eles foram movidos para a face superior. Outra diferença visível é que, graças à técnica de 0.13 micron, o núcleo o Thoroughbred é muito menor que o do Palomino. O Thoroughbred ocupa uma área de 80 mm², enquanto o Palomino ocupa 128 mm², cerca de 60% maior. A diferença salta à vista ao colocar os dois processadores lado a lado: 168
  • 169. Athlon Thoroughbred (à esquerda) e Athlon Palomino Além da questão estética, a redução no tamanho físico do processador representou uma grande economia de custos para a AMD, que passou a ser capaz de produzir 60% mais processadores utilizando o mesmo número de waffers. Isso fez com que, depois de atualizadas as fábricas e solucionados os entraves inicias, os Palominos fossem rapidamente descontinuados. Todas as versões iniciais do Thoroughbred utilizavam bus de 133 MHz, por isso mantinham a compatibilidade com a maioria das placas antigas. O único empecilho era a tensão, que passou a ser de 1.5, 1.6 ou 1.65v (variando de acordo com o clock e a revisão do processador), contra os 1.75v utilizados pelo Palomino. Devido a isto, muitas placas precisavam de atualizações de BIOS. Como de praxe, algumas placas antigas não eram compatíveis, devido a limitações dos reguladores de tensão, ou incompatibilidades diversas. Em agosto de 2002 a AMD lançou uma atualização do core Thoroughbred, batizada de "Thoroughbred-B". Embora mantivesse a mesma arquitetura e fosse produzida utilizando o mesmo processo de fabricação, ela tinha 400 mil transístores a mais e utilizava uma camada metálica adicional (totalizando 9), incluída de forma a melhorar a comunicação entre os componentes internos do processador e assim permitir que ele fosse capaz de atingir freqüências mais altas. O core Thoroughbred-B foi utilizado nos Athlon XP 2400+ (2.0 GHz) e 2600+ (2.13 GHz), que ainda utilizavam bus de 133 MHz e mais adiante nos modelos 2600+ (1.83 GHz), 2700+ (2.17 GHz) e 2800+ (2.25 GHz), que passaram a utilizar bus de 166 MHz (333). Devido à mudança na freqüência do barramento, estas três versões exigiam uma placa-mãe atualizada, como as baseadas nos chipsets VIA KT333, nVidia nForce2 ou SiS 745. Muitas das placas antigas, baseadas nos chipsets VIA KT266A e SiS 735 suportavam trabalhar com FSB a 166 MHz em overclock, de forma que também podiam ser usadas em conjunto com as novas versões. 169
  • 170. O Thoroughbred deu origem à terceira geração do Duron, o Applebred, lançado em agosto de 2003, em versões de 1.4, 1.6 e 1.8 GHz (todas utilizando bus de 133 MHz e tensão de 1.5). O Applebred foi o suspiro final do Duron, antes que ele fosse substituído pelo Sempron. Por manter os mesmos 64 KB de cache L2, o Duron Applebred não oferecia nenhum ganho de desempenho em relação a um Morgan do mesmo clock. O uso da arquitetura de 0.13 micron e do encapsulamento plástico serviram apenas para permitir que ele fosse capaz de operar a freqüências mais altas. Um detalhe que chama a atenção é que o Duron Applebred é exatamente igual ao Athlon Thoroughbred, incluindo o tamanho do núcleo do processador, encapsulamento e posição dos capacitores. Se não fosse pela etiqueta de identificação, você não seria capaz de diferenciar um do outro visualmente: Athlon Thoroughbred e Duron Applebred (à direita) A explicação é que, diferentemente do Spitfire e do Morgan, que eram realmente produzidos em uma linha separada, o Applebred era um Thoroughbred com três quartos do cache L2 desabilitado em fábrica, assim como no caso do Celeron. Aparentemente, o núcleo de 80 mm² do Thoroughbred era barato de se produzir, de forma que a AMD não se deu ao trabalho de criar uma versão separada do processador. Por ser muito barato, o Duron Applebred foi a opção preferida entre os PCs de baixo custo durante toda a sua vida útil. Era possível inclusive fazer overclocks relativamente grandes aumentando a tensão do processador de 1.5v para 1.65v (a mesma utilizada pelo Thoroughbred). Dependendo do cooler usado, o Duron de 1.6 GHz era capaz de trabalhar estavelmente a 2.0 GHz (utilizando bus de 166 MHz) ou mesmo 2.1 GHz (com bus de 174 MHz, suportado por muitas placas). 170
  • 171. Athlon Barton O Barton é uma versão do Thoroughbred-B com 512 KB de cache. É interessante notar que os 256 KB adicionais de cache adicionaram quase 17 milhões de transístores ao processador (totalizando 54.3 milhões, contra 37.6 milhões do Thoroughbred-B), mas aumentaram a área do processador em apenas 21 mm², totalizando apenas 101 mm². A princípio, poderia parecer que a AMD decidiu utilizar um cache mais lento, como no caso do Pentium 4 com core Prescott, mas isso felizmente não aconteceu. O Barton mantém o mesmo cache com 16 linhas de associação e os mesmos tempos de acesso, de forma que não existem "poréns" na nova arquitetura. O Barton é realmente mais rápido que um Thoroughbred em todas as situações, variando apenas a percentagem. Como o Barton mantém os 128 KB de cache L1 e mantém o uso do sistema exclusivo, ele é capaz de armazenar até 640 KB de dados em ambos os caches, um número nada desprezível. Apesar disso, o ganho de desempenho em relação ao Thoroughbred é relativamente pequeno se comparado com o ganho do Pentium 4 Northwood sobre o Willamette, por exemplo, já que o Athlon já possuía um sistema de caches mais equilibrado, sem grandes gargalos. Os maiores beneficiados pelo cache maior são os games 3D. Utilizando uma placa 3D rápida (onde o gargalo passe a ser o processador), o UT2003 roda com um FPS 9% maior, enquanto no Comanche 4 o ganho é de 7%. A maioria dos aplicativos de produtividade roda com ganhos modestos, de 3 a 6%. Apesar disso, o cache foi uma boa adição, que ajudou a tornar o processador mais equilibrado, sem aumentar o custo de forma considerável. O Barton foi inicialmente lançado em três versões: 2500+ (1.83 GHz), 2800+ (2.08 GHz) e 3000+ (2.16 GHz). As três utilizavam bus de 166 MHz e mantinham compatibilidade com as placas anteriores, já que o Barton utilizava os mesmos 1.65v de tensão do Thoroughbred. Mais adiante foram lançados os modelos 3000+ (agora a 2.1 GHz) e 3200+ (2.2 GHz). Estas duas versões utilizavam bus de 200 MHz, o que demandava uma placa-mãe compatível. Uma observação é que o Barton 3000+ de 2.1 GHz era levemente mais lento que o de 2.16 GHz, pois o aumento de 33 MHz na freqüência do barramento não era suficiente para compensar a diminuição de 66 MHz no clock do processador. Devido ao grande cache L2, o Barton era menos dependente do barramento com a memória, de forma que aumentar a freqüência do FSB tinha pouco efeito sobre o desempenho. Outra questão é que o XP 2800+ baseado no Thoroughbred-B (que operava a 2.25 GHz) era capaz de superar o Barton 3000+ (que operava a 2.1 ou 2.16 GHz) em alguns aplicativos e benchmarks, (como, por exemplo, o teste Content Creation do Winstone 2003), já que, embora com menos cache, o clock do processador era maior. Como disse, o Barton ganha de um 171
  • 172. Thoroughbred do mesmo clock em todas as aplicações, mas comparações entre processadores de clocks diferentes podem sempre revelar surpresas. O Barton 3000+ competia de igual para igual com o Pentium 4 Northwood de 3.06 GHz, embora a briga fosse apertada, com o Northwood ganhando em muitas aplicações. De uma forma geral, o Barton dominava os aplicativos de escritório e de produtividade e, embora com uma margem menor, também na maioria dos games. O Northwood, por sua vez, ganhava nos aplicativos de compressão de áudio e vídeo e também em alguns aplicativos profissionais. O Barton 3200+ acabou sendo o topo da evolução entre os processadores AMD de 32 bits, marcando o final da era dos processadores soquete A. Depois disso, a Intel entrou em seu período negro, andando para o lado com o core Prescott, enquanto a AMD tomou a dianteira lançando os processadores de 64 bits. Esse foi o período de maior crescimento da AMD, onde, mesmo trabalhando com margens de lucro mais folgadas, chegou ao ponto de superar as vendas da Intel. Em 2006 a balança voltou a pender novamente para o lado da Intel, com o lançamento do Core 2 Duo e os cortes de preços nos processadores antigos. Ao longo de 2007, a Intel recuperou boa parte do terreno perdido, enquanto a AMD se defendia reduzindo os preços dos processadores, assim como na época do K6-2. Mas, voltando ao Barton e suas variações, temos também uma versão com metade do cache L2 desabilitado (provavelmente modelos com defeitos no cache, onde era aproveitada a metade boa), batizada de Thorton. Ele foi vendido em quantidades limitadas, com freqüências de 1.6 GHz (2000+) a 2.2 GHz (3100+). O índice de desempenho era calculado de forma diferente do Barton, já que com metade do cache desabilitado, o desempenho do Thorton era idêntico ao de um Thoroughbred do mesmo clock. Com o lançamento do Athlon 64 e da plataforma soquete 754, o Athlon XP se tornou um processador de baixo custo dentro da linha da AMD. O problema é que essa posição já era ocupada pelo Duron, de forma que o Athlon XP acabou ficando no meio, atrapalhando tanto as vendas do Athlon 64, quanto do Duron. Para colocar ordem na casa, a AMD decidiu descontinuar tanto o Duron quanto o Athlon XP em 2004, dando origem ao Sempron, sua nova linha de processadores de baixo custo. O Sempron soquete A nada mais é do que um Athlon Thoroughbred-B, Thorton ou Barton, vendido sob um índice de desempenho um pouco "afrouxado", onde o índice dos processadores foi aumentado em de 100 a 200 pontos, sem que fossem feitas mudanças na arquitetura. Basicamente, a AMD usou a linha para vender todos os processadores soquete A que ainda tinha em estoque, aproveitando enquanto havia procura. A versão 2800+, por exemplo, era na verdade um Thorton, operando a apenas 2.0 GHz, enquanto o 3300+ era um Barton operando a 2.2 GHz. A explicação oficial é que no Sempron o índice passou a ser calculado em relação ao desempenho do Celeron D (que seria seu concorrente direto) e não mais em relação ao Pentium 4. 172
  • 173. Sempron 2600+ baseado no core Thoroughbred-B Os Semprons soquete A conviveram com os processadores soquete 754 por algum tempo, até que a plataforma soquete A foi finalmente descontinuada. Athlon 64 Todos os processadores Intel e AMD, do 386 ao Athlon, são chamados genericamente de "processadores x86", deixando claro que apesar de todas as diferenças de arquitetura, eles são compatíveis com o mesmo conjunto básico de instruções. É graças a isso que temos um número tão grande de softwares, acumulados ao longo de mais de duas décadas, que continuam funcionando nos PCs atuais. Com exceção da questão dos drivers, você poderia perfeitamente rodar o DOS e o Windows 3.11 em um Pentium 4, por exemplo. Duas grandes limitações da plataforma x86 são o pequeno número de registradores e o suporte nativo a apenas 4 GB de memória RAM, limitação compartilhada por todos os processadores de 32 bits. Os registradores são pequenos espaços de memória utilizados pelo processador para armazenar informações que serão usadas para processar a instrução seguinte. Você pode pensar nos registradores como uma espécie de "cache L0". Eles estão muito próximos das unidades de execução do processador e por isso as informações podem ser acessadas imediatamente, mas em troca eles são incrivelmente limitados em tamanho. A arquitetura x86 prevê o uso de apenas 8 registradores, com 32 bits cada um. Ou seja, todos os registradores somados armazenam apenas 8 bytes de dados. 173
  • 174. Não é possível adicionar mais registradores facilmente, pois softwares escritos para utilizarem os registradores adicionais não seriam mais compatíveis com os processadores antigos. A solução encontrada foi utilizar o recurso chamado "register renaming" onde o processador possui um número maior de registradores, mas apenas 8 são visíveis. Os demais são gerenciados de forma dinâmica pelo processador, que vai chaveando entre eles conforme novas informações são necessárias. Essa técnica ameniza os problemas de desempenho causados pelo pequeno número de registradores, mas não soluciona a questão completamente. Com relação à memória, o limite de 4 GB se tornou uma limitação séria em algumas áreas a partir da época do Pentium 1. A solução veio na forma do PAE (Physical Address Extension), um hack (originalmente desenvolvido pela Intel) que está disponível na maior parte dos processadores a partir do Pentium Pro. O PAE consiste numa segunda tabela de endereços, com 4 bits adicionais, que permitem endereçar 16 páginas de memória, cada uma com 4 GB. Com o PAE, passa a ser possível endereçar até 64 GB de memória. A desvantagem é que o processador continua sendo capaz de acessar apenas 4 GB por vez e o chaveamento entre diferentes páginas de memória toma um certo tempo, o que acaba prejudicando bastante o desempenho. Ou seja, assim como no caso do register renaming, o PAE ameniza o problema, mas não o soluciona completamente. A única forma de solucionar de vez as duas questões, assim como um conjunto de outros problemas comuns a todos os processadores de 32 bits, era desenvolver uma nova nova arquitetura, composta agora por processadores de 64 bits. Desenvolvendo um sucessor Em primeiro lugar, precisamos definir o que são processadores de 64 bits e quais são as vantagens sobre os de 32. Processadores de 64 bits não são duas vezes mais rápidos nem processam (necessariamente) o dobro de dados por ciclo de clock. A grande vantagem dos processadores de 64 bits é que eles são capazes de trabalhar com endereços de memória de 64 bits, o que permite endereçar muito mais do que 4 GB de memória RAM. Temos também um aumento no tamanho dos registradores, que passam a armazenar 64 bits de informações, em vez de 32, o que representa um pequeno ganho de desempenho. Outro benefício (embora menos significativo) é que eles são capazes de processar números inteiros de até 64 bits, ao invés de 32. Isto oferece ganhos de desempenho em algumas áreas específicas (como, por exemplo, softwares de encriptação e alguns aplicativos científicos) mas não ajuda muito nos aplicativos do dia-a-dia. Processadores de 32 bits podem processar números inteiros de 64 bits, mas eles precisam ser divididos em duas instruções separadas, o que naturalmente toma mais tempo. 174
  • 175. Com relação ao processamento de números de ponto flutuante, não existe ganho, pois os co-processadores aritméticos utilizados nos processadores atuais já são capazes de processar números de ponto flutuante de 64 bits e vetores de 128 bits. Nestas duas áreas não existe um ganho direto, já que a transição foi feita há muito tempo. Itanium A primeira tentativa de criar um sucessor de 64 bits para a plataforma x86 veio da Intel, que em 2001 lançou o Itanium, um processador de 64 bits destinado a servidores. O Itanium quebra a compatibilidade com a família x86, passando a utilizar o IA- 64, um novo conjunto de instruções. O plano inicial era popularizar a arquitetura primeiro nos servidores, onde os benefícios de um processador de 64 bits são mais evidentes, e em seguida lançar também versões destinadas a desktops. O problema com o Itanium (além do processador ser muito caro) era que não existiam softwares capazes de se beneficiar da nova plataforma. Ele incluía um sistema de emulação, que permitia rodar softwares de 32 bits, mas neste caso o desempenho era muito ruim. As duas versões iniciais do Itanium operavam a 733 e 800 MHz. Elas foram seguidas pelas diferentes versões do Itanium 2, vendidas em versões de 900 MHz a 1.67 GHz, incluindo versões dual-core. A Intel continua investindo no desenvolvimento do Itanium, lançando novas versões, mas o futuro da plataforma é incerto. Itanium 2 175
  • 176. x86-84 (AMD64) Ao invés de repetir o mesmo erro da Intel, lançando uma plataforma completamente nova, incompatível com os softwares atuais, a AMD decidiu desenvolver um projeto mais simples, que adicionasse suporte a instruções de 64 bits no Athlon (incluindo novos registradores, suporte a endereços de memória de 64 bits, etc.) sem entretanto quebrar a compatibilidade com os softwares de 32 bits, nem prejudicar o desempenho do processador ao executá-los. Com isso chegaram a um processador de 64 bits, que desfruta de um número maior de registradores e maior capacidade de endereçamento de memória, mas que é capaz também de rodar aplicativos de 32 bits nativamente, sem perda de desempenho. Este slide de apresentação da AMD mostra os novos registradores adicionados. Os 8 registradores x86 foram expandidos de 32 para 64 bits e foram adicionados 8 novos registradores de 64 bits, o que resultou em um espaço de armazenamento 4 vezes maior. Foram adicionados ainda 8 novos registradores para instruções SSE ou SSE2, mas neste caso não houve expansão, já que o SSE utiliza registradores de 128 bits: Novos registradores x86-64 No modo "legacy", o processador funciona como um processador x86 comum, executando instruções de 32 bits e utilizando apenas os registradores padrão. Ao mudar para o modo "long", o processador tem acesso a 16 registradores de 64 bits cada um e passa a suportar as instruções e endereços de memória de 64 bits. O chaveamento entre os dois modos é feito de maneira muito rápida, de forma que o processador pode inclusive rodar aplicativos de 32 bits dentro de um sistema operacional de 64 bits, assim como era possível rodar 176
  • 177. aplicativos DOS ou Windows 3.x (de 16 bits) dentro do Windows 98 (que já era um sistema de 32 bits). O conjunto de instruções da AMD foi batizado de x86-64 (e posteriormente renomeado para AMD64) e acabou sendo adotado também pela Intel, na forma do EM64T, um conjunto compatível, incluído sem muito alarde a partir do Pentium 4 com core Prescott. Pela primeira vez na história, a AMD ditou o novo padrão e a Intel se viu obrigada a segui-lo. Ao utilizar um processador Athlon 64 ou um Intel equipado com o EM64T, existem 3 possibilidades. A primeira é continuar usando as versões de 32 bits do Windows XP, Vista ou Linux, utilizando apenas aplicativos de 32 bits. Neste modo o processador se beneficia do controlador de memória integrado (no caso dos AMD) e outras melhorias na arquitetura, mas não utiliza os novos registradores, nem é capaz de endereçar mais do que 4 GB de memória nativamente. A segunda possibilidade é utilizar um sistema operacional de 64 bits, como as versões de 64 bits do XP, Vista e de diversas distribuições Linux. Neste caso você tem um pequeno ganho de desempenho devido ao uso dos novos registradores e o processador passa a suportar mais de 4 GB de memória RAM. A maior parte dos aplicativos não exibe grandes ganhos de desempenho ao serem recompilados para rodarem em modo 64 bits, mas alguns (sobretudo bancos de dados) podem obter 15 ou mesmo 20% de ganho de desempenho em alguns casos. A grande dificuldade em utilizar um sistema de 64 bits é encontrar versões nativas de todos os aplicativos. Chegamos então à terceira possibilidade, que é rodar um sistema de 64 bits, mas utilizar o modo de compatibilidade para executar aplicativos de 32 bits quando necessário. Neste modo, o sistema operacional precisa de mais memória, pois acaba tendo que manter carregadas muitas bibliotecas e componentes duplicados, mas o desempenho do processador não é prejudicado. Como vimos, os aplicativos de 32 bits podem utilizar apenas 4 GB de memória (menos na prática, devido à limitações por parte dos sistemas operacionais). Um efeito colateral interessante é que, em um PC com 8 GB de memória, por exemplo, os aplicativos de 32 bits enxergarão e utilizarão apenas os primeiros 4 GB. A memória adicional poderá ser usada pelo sistema operacional e aplicativos de 64 bits, mas não ajudará muito em casos em que os aplicativos de 32 bits sejam os aplicativos principais. Com relação à memória, os processadores AMD64 são capazes de endereçar até 1 terabyte de memória física, o que corresponde a 40 bits de endereços. Os 64 bits completos não são usados por questões relacionadas ao desempenho, já que não existem módulos e placas que permitam utilizar tanta memória atualmente. Apesar de o AMD64 reservar "apenas" 40 bits para o endereçamento da memória física, estão disponíveis 48 bits de endereçamento para o virtual address space, o que permite endereçar até 256 terabytes. Esse limite não tem 177
  • 178. apenas a ver com o uso de memória swap, mas indica o volume total de memória que o processador é capaz de endereçar, incluindo não apenas a memória RAM, mas também a memória da placa de vídeo (e outros dispositivos) e está relacionado também com o suporte a arquivos grandes, como bancos de dados. Você poderia imaginar esses dois limites em ação no caso de um grande servidor, com muita memória RAM e diversos HDs em RAID, que armazenam um grande banco de dados. Quando criamos um array RAID, o sistema passa a enxergar um único e grande disco, ao invés de vários HDs separados, de forma que podemos usar todo o espaço somado para armazenar um único e gigantesco arquivo. Com o sistema de endereçamento do AMD64, o nosso hipotético servidor poderia ter até 1 TB de memória RAM, e o sistema operacional seria capaz de gerenciar um banco de dados de até 256 TB espalhado pelos diversos HDs, sem que fosse necessário recorrer a truques ou gambiarras para aumentar o espaço de endereçamento, como é necessário ao acessar mais do que 4 GB de RAM, ou gerenciar arquivos maiores do que 4 GB em um processador de 32 bits. Quando esse limite se tornar um empecilho, daqui a talvez mais uma década, novas revisões dos processadores podem estender os limites de endereçamento para 56 ou mesmo 64 bits completos, permitindo gerenciar volumes virtualmente ilimitados de endereços. Esta tabela, divulgada pela AMD, mostra os diferentes modos de operação suportados. Note que, além dos três modos que citei (64-Bit mode, que corresponde ao modo de 64 bits nativo; Compatibility Mode, onde são usados aplicativos de 32 bits, sob um sistema operacional de 64 bits e Protected Mode, onde são executados um sistema operacional e aplicativos de 32 bits) existe suporte também ao modo Virtual-8086 e ao Real Mode, que são os modos de legado, também suportados pelos processadores atuais. Neles o processador executa aplicativos de 16 bits, escritos para o DOS ou Windows 3.x: 178
  • 179. Modos de operação dos processadores x86-64 Tenha em mente que a migração para os aplicativos de 64 bits é similar à migração dos sistemas operacionais de 16 bits (DOS e Windows 3.x) para os sistemas de 32 bits que ocorreu a partir de 1995. Ela acontecerá de maneira gradual, de forma que daqui a 10 anos ainda estaremos rodando alguns aplicativos de 32, ou mesmo de 16 bits, utilizando o modo de compatibilidade. A arquitetura K8 Além do x86-64, a arquitetura K8, compartilhada por todos os processadores de 64 bits da AMD, inclui um circuito de branch-prediction sensivelmente melhorado, com um global history counter 4 vezes maior que o do Athlon K7. O global history counter é a área reservada a armazenar os resultados de operações processadas anteriormente. Estas informações são utilizadas como base de consulta pelo circuito de branch prediction na hora de decidir qual caminho deve tomar dentro de uma operação de tomada de decisão. Outro recurso, possivelmente o mais famoso, é o controlador de memória integrado, chamado de IMC (Integrated Memory Controller). Tradicionalmente, o controlador de memória faz parte do chipset e opera à mesma freqüência que ele. O processador se comunica com o chipset através do Front Side Bus (o barramento principal) e ele (o FSB) é utilizado para todo o tráfego, incluindo a leitura e gravação de dados na memória Ao mover o controlador de memória para dentro do processador, a AMD foi capaz de reduzir sensivelmente o tempo de latência nos acessos à memória, aumentando assim o desempenho do processador em alguns pontos. Nos processadores baseados na arquitetura K8, o processador é ligado diretamente às trilhas da placa-mãe que levam aos pentes de memória, e a comunicação 179
  • 180. com o chipset é feita através de um barramento HyperTransport. No caso de sistemas com dois processadores em SMP (como no caso de servidores equipados com o Opteron), barramentos HyperTransport adicionais fazem a ligação entre os processadores. O Athlon 64 não utiliza mais um barramento frontal, como nos processadores antigos, mas sim um link HyperTransport que liga o processador ao chipset. Existe um clock de referência de 200 MHz, que substitui o FSB, gerando a freqüência do processador, da memória e do próprio barramento HyperTransport. Tecnicamente, seria incorreto dizer que um Athlon 64 ou Sempron utiliza "200 MHz de FSB", já que ele não possui FSB e os 200 MHz são apenas a freqüência de referência, mas para manter as coisas simples, vou continuar usando o termo "FSB" para descrever o clock da freqüência de referência daqui em diante. O HyperTransport é um barramento ponto a ponto, muito similar ao PCI Express sob diversos pontos de vista. A principal idéia é criar um barramento bastante rápido e de baixa latência utilizando poucas trilhas de dados. Um link HyperTransport é sempre bidirecional, composto por dois links com de 2 a 32 bits de largura cada. Os dados são transmitidos duas vezes por ciclo (como nas memórias DDR) e a freqüência de operação pode ser de 200 MHz a 2.6 GHz. Só para efeito de comparação, o barramento PCI opera a apenas 33 MHz, com apenas uma transferência por ciclo; isso faz com que a velocidade de transmissão seja muito baixa para os padrões atuais (apenas 133 MB/s), mesmo com o barramento transmitindo 32 bits de dados por ciclo. 180
  • 181. O padrão HyperTransport é desenvolvido por um conjunto de fabricantes, por isso é utilizado em diversos dispositivos, indo do Xbox da Microsoft a roteadores da Cisco. Os chipsets nForce, para placas soquete A, por exemplo, já utilizavam o HyperTransport para interligar a ponte norte e a ponte sul do chipset bem antes do Athlon 64 ser lançado. No caso dos processadores AMD64, são utilizados links com 16 bits de largura em cada direção (16 pares), operando a 800 MHz (nas placas soquete 754) ou 1.0 GHz (nas placas soquete 939, 940 e AM2). Como são realizadas duas transferências por ciclo, podemos dizer também que a freqüência "efetiva" é de (respectivamente) 1.6 GHz e 2.0 GHz As placas AM3, cujo lançamento está previsto para 2008, trarão um barramento atualizado, capaz de operar a 2.0 GHz (4.0 GHz efetivos). Esta expansão não traz ganhos diretos, já que apenas aumenta a banda disponível para a comunicação entre o processador e o chipset, sem influenciar na velocidade dos demais componentes. Ela serve apenas para evitar potenciais gargalos no futuro, conforme novos dispositivos e barramentos forem sendo incorporados. Com 16 bits de largura e operando a 800 MHz, com duas transferências por ciclo, temos um total de 6.4 GB/s de transferência de dados (3.2 GB/s em cada direção), o que é uma marca espantosa. Ao aumentar a freqüência para 1.0 GHz, a taxa de transmissão sobe para 8 GB/s e, ao atingir 2.0 GHz, a taxa sobe para nada menos do que 16 GB/s. Apesar da brutal taxa de transferência, o link HyperTransport é composto por um número relativamente pequeno de trilhas na placa-mãe. Em muitas placas, é possível ver claramente as trilhas do HyperTransport ligando o processador ao chipset: 181
  • 182. Trilhas referentes ao barramento HyperTransport interligando o processador e o chipset em uma placa da EPOX Continuando, temos a questão do gerenciamento de energia. Com exceção do Sempron 2800+, todos os processadores da linha Athlon 64 suportam o Cool'n'Quiet, um sistema de gerenciamento de energia bastante eficiente que, assim como o SpeedStep da Intel e o PowerNow usado pela AMD nos processadores mobile, é capaz de ajustar a freqüência de operação do processador de forma dinâmica de acordo com o uso. A principal diferença entre o Cool'n'Quiet e o PowerNow é que ele é otimizado para uso em desktops, de forma que utiliza um sistema menos agressivo de gerenciamento, que tem como prioridade não prejudicar o desempenho. Um Athlon 64 3500+, por exemplo, pode trabalhar a 2.2 GHz (a freqüência normal), 2.0, 1.8 ou 1.0 GHz, de acordo com os aplicativos em uso. Operando na freqüência mínima, a tensão do processador cai de 1.4 para 1.1V, gerando uma economia adicional. No final, um Athlon 64, baseado no core Venice, ou mais atual, chega a consumir menos de 10 watts quando ocioso, operando na freqüência e tensão mínimas. Como a freqüência do processador muda muito rapidamente, de acordo com a demanda (segundo a AMD, até 30 vezes por segundo), você mal percebe a redução de clock. Demora exatamente o mesmo tempo para ripar um DVD, renderizar uma imagem 3D, aplicar um filtro no Photoshop, pois logo que o processador percebe o aumento na demanda de processamento, passa a operar na freqüência máxima automaticamente. As áreas em que você acaba percebendo alguma perda são justamente nas operações mais simples e rápidas, como chavear entre as janelas e abrir 182
  • 183. menus dentro dos programas. Estas operações são muito rápidas para disparar o aumento na freqüência, de forma que, se prestar atenção, você realmente percebe alguma diferença, embora muito pouco. De uma forma geral, o Cool'n'Quiet é um recurso muito interessante, pois aumenta a vida útil do equipamento (mesmo componentes como o HD e a placa-mãe duram mais ao operar numa temperatura mais baixa, sem falar do cooler, que acumula menos poeira e assim precisa de menos manutenção) e gera economia na conta de luz, em troca de uma redução de desempenho muito pequena. Com o passar dos meses, a economia pode somar um valor significativo. Em um PC com um Athlon 64 3500+ que ficasse ligado continuamente, teríamos uma economia de aproximadamente 30 kW por mês. Em dois anos, isso representa uma economia de mais de R$ 350 na conta de luz, suficiente para pagar parte do próximo upgrade. :) Para utilizar o Cool'n'Quiet, basta manter o recurso ativado no setup e instalar os drivers da placa. No caso do Linux, o suporte é oferecido através do módulo "powernow-k8" do Kernel e o serviço "powernowd" (instalado através do pacote de mesmo nome). Com os dois componentes disponíveis, a configuração é bem simples, basta carregar o módulo e ativar o serviço, como em: # modprobe powernow-k8 # /etc/init.d/powernowd start Você pode acompanhar a oscilação na freqüência do processador utilizando um monitor de sistema qualquer. No Linux, você pode utilizar também o comando "cat /proc/cpuinfo". Com o Athlon 64, a AMD voltou a utilizar o heat spreader sobre o núcleo do processador, assim como na época do K6-2. Devido a isso, não é mais possível diferenciar rapidamente as diferentes famílias do Athlon 64 apenas olhando para o tamanho e a posição do núcleo do processador, como na época do Athlon XP: Athlon 64 e Athlon XP 183
  • 184. Assim como o clock do processador, a técnica de produção e a quantidade de cache, o controlador de memória é também usado como um diferencial entre as diferentes famílias de processadores. Tudo começou com o Opteron, o primeiro processador baseado na arquitetura Hammer, destinado a servidores. Ele utilizava um controlador de memória dual- channel e oferecia suporte apenas a memórias registered, módulos especiais que incluem um pequeno buffer que estabiliza o sinal, permitindo que sejam utilizados mais módulos. Os módulos registered são mais caros e mais lentos que os módulos DDR tradicionais que utilizamos em micros domésticos, mas eles são uma necessidade nos servidores, já que eles precisam utilizar um número muito maior de módulos de memória. Devido ao brutal número de contatos utilizados pelo controlador de memória, o soquete utilizado pelo Opteron tinha nada menos do que 940 pinos, o que na época era inédito. A partir do momento que passou a ser capaz de produzir um volume maior de processadores, a AMD lançou os modelos destinados ao mercado doméstico, que incluem as versões iniciais do Athlon 64 e Athlon 64 FX. O Athlon 64 FX era uma variação do Opteron, que vinha com 1 MB de cache L2 e mantinha o controlador de memória dual-channel. A grande mudança em relação ao Opteron é que ele passou a oferecer suporte a memórias DDR comuns, o que barateou muito o custo dos micros. Para diferenciar as placas para o Opteron e para o Athlon 64 FX, a AMD criou o soquete 939, que era virtualmente idêntico ao soquete 940 do Opteron. A posição de alguns dos pinos foi alterada apenas para indicar a mudança no tipo de memória suportado e impedir que o Opteron fosse usado nas placas para o Athlon 64 FX e vice-versa. Mais tarde, o soquete 939 foi usado também pelas versões iniciais do Athlon X2. Em seguida temos as versões "domésticas" do Athlon 64, que vinham com apenas 512 KB de cache L2 e utilizavam um controlador de memória simplificado, sem suporte a dual-channel. Devido ao menor número de contatos utilizados pelo controlador de memória, eles passaram a utilizar o soquete 754. Athlon 64 FX (soquete 939) e Athlon 64 soquete 754 (à direita) 184
  • 185. Soquete 939 (à esquerda) e soquete 754 Considerando dois processadores do mesmo clock, a diferença de desempenho entre um Athlon 64 "normal" e um Athlon 64 FX não é tão grande quanto se poderia imaginar. O controlador de memória dual-channel e o maior cache ajudam em alguns aplicativos, mas a diferença não era tão grande a ponto de justificar pagar US$ 1000 pelo processador, como chegaram a custar algumas versões do FX. 185
  • 186. Se você se assustou com o preço, vale lembrar que as primeiras versões do Athlon 64 FX competiam com o Pentium 4 Extreme Edition; ambos eram processadores "de vitrine", destinados ao público entusiasta e vendidos a preços exorbitantes. Mais tarde, foram lançadas versões do Athlon 64 soquete 754 com 1 MB de cache L2, que praticamente anularam as vantagens do FX. Finalmente, temos os processadores recentes, que utilizam o soquete AM2. Eles trazem um controlador de memória remodelado, com suporte a memórias DDR2. Apesar de também possuir 940 contatos, o soquete AM2 é incompatível com o soquete 940 utilizado pelo Opteron, além de ser incompatível com todos os processadores anteriores. Os módulos de memória DDR2 utilizam 240 contatos, contra apenas 184 contatos dos módulos DDR. Com o controlador de memória integrado, os contatos vão diretamente para o processador, através de pinos no soquete. A AMD conseguiu fazer a migração das memórias DDR para as DDR2 sem aumentar o número de pinos do soquete remanejando uma série de contatos sem uso no processador. Apesar do ganho de desempenho não ser tão grande quanto poderia parecer à primeira vista, as memórias DDR2 oferecem a vantagem de trabalharem utilizando uma tensão mais baixa: apenas 1.8v, contra 2.5v das memórias DDR. Isto faz com que tanto os módulos de memória quanto o próprio controlador de memória integrado ao processador consumam menos energia (e dissipem menos calor), o que ajuda na questão da refrigeração. Atualmente as memórias DDR2 são produzidas em maior quantidade e são consequentemente mais baratas que as DDR, de forma que a migração para o AM2 foi um passo natural. As placas soquete 754 ficaram inicialmente relegadas à posição de plataforma de baixo custo e eventualmente foram completamente substituídas. A partir da segunda metade de 2006, até mesmo os Semprons passaram a ser fabricados em versão AM2. O AM2 trouxe também um novo suporte de retenção do cooler (a "gaiola" em volta do processador). Ele é preso à placa-mãe por quatro parafusos (em vez de apenas dois), o que tornou o mecanismo de retenção mais firme. O problema é que ele passou a usar um formato octagonal (ao invés do formato quadrado usado no soquete 754 e 939), o que quebrou a compatibilidade com parte dos coolers antigos. 186
  • 187. Cooler NPH para processadores AM2 Visualmente, o soquete AM2 é praticamente idêntico ao soquete 939, mudando apenas a posição de alguns dos pinos. O contato adicional pode ser visto no canto inferior direito do soquete: 187
  • 188. Soquete AM2, com o pino adicional em destaque A principal desvantagem de utilizar o controlador de memória integrado é que passou a ser necessário lançar uma versão atualizada do processador e criar um novo soquete cada vez que é necessário fazer alterações no controlador de memória, ou oferecer suporte a uma nova tecnologia, como no caso das memórias DDR2. A partir do final de 2007, serão lançadas placas e processadores baseados no soquete AM2+, uma pequena atualização do AM2, que oferecerá um barramento HyperTransport atualizado, operando a 2.0 GHz (o dobro da freqüência do HyperTransport utilizado no AM2) e oferecerão suporte ao sistema avançado de gerenciamento de energia utilizado no Phenom. Este novo sistema de gerenciamento suportará o ajuste independente das freqüências de operação do processador e do controlador de memória, o que resultará em redução do consumo e dissipação térmica do processador. Estas são inovações técnicas, que não possuem um impacto direto sobre o desempenho. Os processadores AM2+ poderão ser usados nas placas AM2 atuais e vice-versa, mas neste caso os novos recursos permanecem desativados. A partir de 2008 a AMD passará a utilizar o soquete AM3 que, como o nome sugere, trará compatibilidade com as memórias DDR3. O soquete AM3 manterá a mesma pinagem do AM2 e será eletricamente compatível com ele. Os processadores AM3 terão um controlador de memória compatível tanto com memórias DDR3 quanto com memórias DDR2 e, graças a isso, poderão ser usados em placas AM2 compatíveis (neste caso limitados ao uso de memórias DDR2, por limitações da placa). Infelizmente a compatibilidade será de mão única, sem a possibilidade de utilizar os processadores AM2 atuais em conjunto com as placas AM3, já que eles não oferecem suporte às memórias DDR3. 188
  • 189. Com o lançamento do AM2+ e do AM3, teremos (desconsiderando o soquete F, utilizado pelo Opteron e Quad FX) um total de 6 padrões diferentes para os processadores AMD de 64 bits, exigindo atenção na hora de comprar ou fazer upgrade. Por outro lado, a vida dos fabricantes de chipsets passou a ser muito mais simples, já que não precisam mais se preocupar com o controlador de memória. O uso dos diferentes soquetes não demanda mudanças no chipset, já que mudam apenas o processador e o encaixe (e trilhas) na placa-mãe. Os modelos Assim como na questão dos soquetes, a lista de modelos do Athlon 64 apresenta uma variedade espantosa de arquiteturas, variações na quantidade de cache, soquete usado, freqüência do HyperTransport e assim por diante. O índice de desempenho dos processadores é calculado com base no desempenho médio, de forma que existem casos de processadores com clocks, caches e arquiteturas diferentes vendidos sob o mesmo índice e muitas vezes pelo mesmo preço. Todo processador inclui uma pequena área de memória com detalhes sobre a arquitetura usada, quantidade de cache, freqüência, tensão, conjuntos de instruções suportados e assim por diante. Estes códigos de identificação são acessíveis através de uma série de programas de diagnóstico, que podem ser usados para identificar o processador. Um dos mais práticos (para Windows) é o CPU-Z, disponível no: http://www.cpuid.com/cpuz.php. 189
  • 190. No Linux você pode usar o comando "cat /proc/cpuinfo", deixando que o próprio Kernel do sistema leia os códigos de identificação e mostre as informações na tela. Athlon 64 e Athlon 64 FX Tudo começou com os cores ClawHammer e SledgeHammer, que são as versões originais do K8, produzidas em uma técnica de 0.13 micron. Ambos tinham originalmente 1 MB de cache L2, a principal diferença entre eles é que o SledgeHammer vinha com ambos os controladores de memória ativados, enquanto o ClawHammer vinha com apenas um, suportando apenas o modo single-channel de acesso à memória. Muitos modelos do ClawHammer vinham com metade do cache L2 desativado (o que permitia aproveitar processadores com defeitos no cache) e existiram também versões com suporte a dual-channel (virtualmente idênticas ao core SledgeHammer), vendidas em versão soquete 939. Na época a AMD tinha problemas para produzir os processadores em quantidade suficiente, de forma que foi lançando novas versões do jeito que conseguia, sem muita organização ou lógica. 190
  • 191. O core ClawHammer foi utilizado nas primeiras versões do Athlon 64, sendo vendido nas versões 2800+ (1.8 GHz, 512 KB, soquete 754), 3000+ (2.0 GHz, 512 KB, soquete 754), 3200+ (2.0 GHz, 1 MB, soquete 754), 3400+ (2.2 GHz, 1 MB, soquete 754), 3500+ (2.2 GHz, 512 KB, soquete 939), 3700+ (2.4 GHz, 1 MB, soquete 754) e 4000+ (2.4 GHz, 1 MB, soquete 939). Ele foi utilizado ainda no Athlon 64 FX-53 (2.4 GHz, 1 MB, soquete 939) e no FX-55 (2.6 GHz, 1 MB, soquete 939). Todas as versões do Athlon FX vinham com o multiplicador destravado, de forma a facilitar os overclocks. Isto era utilizado pela AMD como um diferencial para justificar a diferença de preço entre os FX e os modelos "normais" do Athlon 64. Note que o FX não é vendido sob o índice de desempenho, os números seguem apenas uma sequência crescente que indica a "posição hierárquica" do processador, mas sem uma relação direta com seu desempenho. Além de ser utilizado no Opteron, a versão do Athlon 64 destinada a servidores, o core SledgeHammer foi utilizado nos Athlon 64 FX-51 (2.2 GHz, 1 MB) e FX-53 (2.4 GHz, 1 MB), ambos vendidos apenas em versão soquete 940, o que adicionava o custo de utilizar memórias registered. Estas duas versões (lançadas em 2003, quase um ano antes do FX-53 e FX-55 baseados no ClawHammer) foram processadores "pra inglês ver", vendidos em quantidade muito limitada. O principal motivo da existência deles foi manter a guerra de benchmarks com a Intel. O seguinte foi o core Newcastle, que ainda era fabricado usando a técnica de 0.13 micron, mas utilizava apenas 512 KB de cache L2, o que o tornava mais barato de produzir em relação ao ClawHammer. Ele foi vendido nas versões 2800+ (1.8 GHz, 512 KB, soquete 754), 3000+ (2.0 GHz, 512 KB, soquete 754), 3000+ (1.8 GHz, 512 KB, soquete 939), 3200+ (2.2 GHz, 512 KB, soquete 754), 3200+ (2.0 GHz, 512 KB, soquete 939), 3400+ (2.4 GHz, 512 KB, soquete 754), 3500+ (2.2 GHz, 512 KB, soquete 939) e 3800+ (2.4 GHz, 512 KB, soquete 939). Note que, assim como no caso do ClawHammer, as versões soquete 939 são vendidas sob um índice de desempenho mais alto, muito embora o uso do dual-channel tenha pouca influência sobre o desempenho das versões de baixo clock do Athlon 64. Isso faz com que um 3000+ soquete 754 acabe sendo mais rápido que um soquete 939 (que opera a apenas 1.8 GHz) na maioria das aplicações. Se você fosse montar um PC de baixo custo, na época, sem dúvida valeria mais a pena comprar um 3000+ soquete 754 e usar um único pente de memória. O Winchester foi a primeira versão a ser fabricada em uma técnica de 0.09 micron. Ele é virtualmente idêntico ao Newcastle, incluindo os 512 KB de cache, mas oferece uma dissipação térmica muito mais baixa. Enquanto o TDP dos modelos baseados no Newcastle é de 89 watts, nos baseados no Winchester é apenas 67 watts. O Winchester foi usado somente nos modelos 3000+ (1.8 GHz, 512 KB, soquete 939), 3200+ (2.0 GHz, 512 KB, soquete 939) e 3500+ (2.2 GHz, 512 KB, soquete 939). 191
  • 192. O Venice mantém a técnica de 0.09 micron e os 512 KB de cache, mas adiciona suporte ao conjunto de instruções SSE3, o que resultou em um pequeno ganho de desempenho, sobretudo em games já otimizados. As primeiras versões chegaram ao mercado em abril de 2005, substituindo rapidamente os processadores baseados nos cores anteriores. Ele foi vendido nas versões 3000+ (2.0 GHz, 512 KB, soquete 754), 3000+ (1.8 GHz, 512 KB, soquete 939), 3200+ (2.2 GHz, 512 KB, soquete 754), 3200+ (2.0 GHz, 512 KB, soquete 939), 3400+ (2.4 GHz, 512 KB, soquete 754), 3400+ (2.2 GHz, 512 KB, soquete 939), 3500+ (2.2 GHz, 512 KB, soquete 939) e 3800+ (2.4 GHz, 512 KB, soquete 939). Existiu também o Manchester, uma revisão do Venice com um consumo elétrico pouca coisa inferior. Ele existiu em versões 3200+ (2.0 GHz, 512 KB, soquete 939) e 3500+ (2.2 GHz, 512 KB, soquete 939). O próximo é o core San Diego, uma versão do core Manchester com 1 MB de cache L2. Ele foi utilizado tanto em modelos do Athlon 64 (um deles com metade do cache desabilitado, assim como na época do ClawHammer) e também em dois modelos do Athlon FX. Dentro da linha Athlon 64, o San Diego foi utilizado nos modelos 3500+ (2.2 GHz, 512 KB, soquete 939), 3700+ (2.2 GHz, 1 MB, soquete 939) e 4000+ (2.4 GHz, 1 MB, soquete 939). Dentro da linha FX, ele foi utilizado nos modelos FX-55 (2.6 GHz, 1 MB, soquete 939) e FX-57 (2.8 GHz, 1 MB, soquete 939). Estes dois modelos eram processadores escolhidos a dedo dentro da produção do San Diego, incluindo apenas os processadores mais perfeitos, que eram capazes de operar estavelmente a freqüências mais altas. Além do clock (e preço) mais alto, a única vantagem deles sobre os da linha Athlon 64 era o fato de virem com o multiplicador destravado. O Orleans é mais um core fabricado utilizando a técnica de 0.09 micron. Apesar disso, ele traz três vantagens sobre os anteriores. A primeira é o suporte ao soquete AM2 (e o consequente suporte a memórias DDR2), utilizado por todos os modelos. A segunda é o suporte ao AMD-V (também chamado de "Pacifica"), um sistema de virtualização muito similar ao Intel-VT (assim como o Intel-VT, o AMD-V pode ser utilizado para melhorar o desempenho de virtualizadores como o VMware e o Xen). A terceira é uma série de otimizações e o uso de uma tensão mais baixa, que reduzem o TDP de 89 watts (no Venice 3800+) para apenas 62 watts em todos os modelos do Orleans. O Orleans foi utilizado nos modelos 3000+ (1.8 GHz, 512 KB, soquete AM2), 3200+ (2.0 GHz, 512 KB, soquete AM2), 3500+ (2.2 GHz, 512 KB, soquete AM2), 3800+ (2.4 GHz, 512 KB, soquete AM2) e 4000+ (2.6 GHz, 512 KB, soquete AM2). 192
  • 193. Concluindo, temos o core Lima, o primeiro fabricado usando a nova técnica de 0.065 micron. Um dos destaques é o baixo consumo: as duas versões possuem um TDP de apenas 45 watts. Enquanto escrevo, ele é usado em apenas duas versões do Athlon 64: 3500+ (2.2 GHz, 512 KB, soquete AM2) e 3800+ (2.4 GHz, 512 KB, soquete AM2). Athlon 64 X2 O Athlon 64 X2 é a versão dual-core do Athlon 64. Quando ele foi lançado, em 2005, a Intel ainda se debatia com a plataforma NetBurst, produzindo primariamente o Pentium D, que era um processador dual-chip (em que temos dois processadores separados, dentro do mesmo encapsulamento) e não um processador dual-core "de verdade". No Pentium D, os dois cores comunicam- se entre si e com o chipset, utilizando o FSB, um barramento relativamente lento para acumular as duas funções. No caso do Athlon X2, temos os dois núcleos construídos sobre o mesmo wafer. A comunicação entre os dois núcleos é feita internamente, utilizando um barramento interno, batizado de SRI (System Request Interface), o que garante tempos de latência mais baixos e pequenos ganhos de desempenho ao rodar muitos aplicativos simultaneamente (que é justamente a área em que os processadores dual-core oferecem mais vantagens), além de permitir que o processador seja capaz de operar a freqüências um pouco mais elevadas. Na camada mais externa, temos o "Crossbar Switch", responsável por dividir as requisições entre os dois cores, controlar o acesso de ambos ao controlador de memória (e ao barramento HyperTransport), além de monitorar o nível de carregamento de cada um, informação utilizada, entre outras coisas, pelo sistema de gerenciamento de energia. Este diagrama da AMD mostra o conceito: 193
  • 194. Diagrama de blocos do X2 Cada processador possui seu próprio cache L2, mas ambos compartilham o mesmo controlador de memória e o mesmo barramento HyperTransport, através do qual é feita toda a comunicação com o chipset e os demais componentes do PC. Olhando uma foto ampliada do processador, você pode notar que os dois núcleos ficam no centro, envoltos pelos circuitos referentes ao controlador de memória e HyperTransport. Além dos circuitos compartilhados, os dois núcleos também não são exatamente cópias idênticas um do outro: Athlon 64 X2 O uso de dois núcleos torna o processador mais dependente do barramento com a memória. Devido a isso, o Athlon 64 X2 foi lançado apenas em versões 194
  • 195. soquete 939 e AM2 (futuramente serão lançadas também versões AM2+ e AM3), já que uma versão soquete 754 seria penalizada pelo barramento single- channel. O lançamento do Athlon X2 acelerou a migração para as placas soquete 939, transformando a plataforma 754 em uma opção de baixo custo, destinada ao Sempron e às versões mais lentas do Athlon 64. Ao contrário do que teríamos ao utilizar dois processadores separados em SMP, um processador dual-core atual, como o Athlon X2, Pentium D ou Core 2 Duo não consomem o dobro de energia que as versões single-core. Isto é possível graças a sistemas de gerenciamento de energia incluídos no processador, que reduzem a freqüência ou mesmo desativam completamente o segundo núcleo quando o processador está ocioso. No caso do Athlon X2, muitos componentes são compartilhados entre os dois processadores, o que aumenta a economia. Se comparado com um Athlon 64 4000+ com core San Diego (que também opera a 2.4 GHz), um Athlon X2 4800+ Toledo (2.4 GHz, 1 MB) consome cerca de 12 watts a mais enquanto o sistema está ocioso e 24 watts a mais ao rodar um benchmark. Considerando que o TDP do San Diego é de 89 watts, o aumento não é tão significativo. Um aplicativo que conseguisse utilizar simultaneamente todo o processamento de ambos os cores poderia, em teoria, fazer com que o consumo chegasse a ser, momentaneamente, próximo do dobro, mas em situações reais isto não acontece com freqüência. A carreira do X2 começa com o core Manchester, lançado em maio de 2005. Ele era fabricado usando uma técnica de 0.09 micron, com 512 KB de cache L2 por core (1 MB no total) e suporte às instruções SS3. A versão mais lenta tinha metade do cache L2 desabilitado, de forma a aproveitar os cores com defeitos no cache. O Manchester foi usado nos Athlon 64 X2 3600+ (2.0 GHz, 2x 256 KB, soquete 939), 3800+ (2.0 GHz, 2x 512 KB, soquete 939), 4200+ (2.2 GHz, 2x 512 KB, soquete 939) e 4600+ (2.4 GHz, 2x 512 KB, soquete 939) O seguinte foi o core Toledo, ainda fabricado em uma técnica de 0.09 micron, mas agora com 1 MB de cache por core, totalizando 2 MB. Ele foi lançado simultaneamente com o Manchester, e os modelos do X2 baseados em ambos conviveram durante mais de um ano. Apenas três dos modelos produzidos utilizando o core Toledo vieram com todo o cache ativo. O demais vinham com metade do cache desativado, o que os tornava praticamente indistinguíveis dos baseados no Manchester. O Toledo foi utilizado nos modelos 3800+ (2.0 GHz, 2x 512 KB, soquete 939), 4200+ (2.2 GHz, 2x 512 KB, soquete 939), 4400+ (2.2 GHz, 2x 1 MB, soquete 939), 4600+ (2.4 GHz, 2x 512 KB, soquete 939) e 4800+ (2.4 GHz, 2x 1 MB, soquete 939). Quase um ano depois, em maio de 2006, foi lançado o Windsor, que passou a utilizar o soquete AM2 e adicionou suporte ao AMD-V, mantendo a mesma técnica de produção de 0.09 micron e o uso de 2x 1 MB de cache. Assim como 195
  • 196. no Toledo, uma grande parte dos modelos vinham com metade do cache L2 desabilitado e eram vendidos sob índices de desempenho mais baixos que os "completos". O Windsor foi utilizado nos modelos 3800+ (2.0 GHz, 2x 512 KB, soquete AM2), 4000+ (2.0 GHz, 2x 1 MB, soquete AM2), 4200+ (2.2 GHz, 2x 512 KB, soquete AM2), 4400+ (2.2 GHz, 2x 1 MB, soque AM2), 4600+ (2.4 GHz, 2x 512 KB, soquete AM2), 5000+ (2.6 GHz, 2x 512 KB, soquete AM2), 5200+ (2.6 GHz, 2x 1 MB, soquete AM2), 5400+ (2.8 GHz, 2x 512 KB, soquete AM2), 5600+ (2.8 GHz, 2x 1 MB, soquete AM2) e 6000+ (3.0 GHz, 2x 1 MB, soquete AM2). Todos os modelos baseados no core Windsor possuem um TDP de 89 watts, assim como a maior parte das versões baseadas nos cores Manchester e Toledo. A exceção fica por conta do 6000+, que apesar da diferença de apenas 200 MHz em relação ao 5600+, possui um TDP de 125 watts. Esta diferença tão grande é causada pelo gate leakage, o mesmo problema que a Intel enfrentou com o Pentium 4 ao cruzar a barreira dos 3.0 GHz e que às vezes enfrentamos ao fazer overclocks agressivos. A partir de uma certa freqüência (que varia de acordo com a arquitetura), os transístores passam a desperdiçar cada vez mais energia, de forma que é necessário utilizar uma tensão cada vez mais alta para estabilizar o processador (aumento que aumenta ainda mais o desperdício de energia), criando um ciclo vicioso que se intensifica a cada novo aumento de freqüência. O 6000+ é basicamente uma versão overclocada do 5600+, onde a tensão foi aumentada de 1.30 para 1.35v para estabilizar o processador. Ele é um modelo que deve ser evitado na hora da compra. Como uma opção para quem prefere um processador mais econômico e frio, a AMD lançou a série "Energy Efficient", onde são usadas técnicas derivadas dos processadores mobile, como o uso de tensões mais baixas e de transístores de chaveamento mais lento, que resultam em processadores com um consumo mais baixo, mas que em compensação não são capazes de atingir freqüências de operação tão altas quanto os das séries principais. A série Energy Efficient do Windsor, por exemplo, abrange modelos do 3600+ (2.0 GHz, 2x 1MB, soquete AM2) ao 5200+ (2.6 GHz, 2x 1MB, soquete AM2), todos com tensão de 1.2v e TDP de 65 watts. Eles são mais caros que os da série regular, com o preço variando de acordo com o clock (nas freqüências mais altas, a diferença pode ser de mais de 200 reais, enquanto nos modelos populares pode cair para menos de 30). De uma forma geral, os modelos Energy Efficiency valem a pena em casos em que a diferença de preço é pequena, pois a economia de energia acaba se pagando com o passar do tempo. Em um PC que fica ligado continuamente, uma economia de 24 watts acaba resultando em uma redução de mais de 200 reais na conta de luz ao longo de dois anos. Por último, temos o Brisbane, a primeira série do X2 a ser produzida usando uma técnica de 0.065 micron. Uma informação importante é que, apesar da 196
  • 197. redução do espaço ocupado por cada processador (cortesia da nova técnica de fabricação) todos os modelos baseados no Brisbane possuem apenas 512 KB de cache por core. A redução foi feita para aumentar o índice de aproveitamento, já que, como em toda nova técnica de produção, o índice de defeitos é inicialmente muito grande, de forma que produzir processadores menores permite aumentar substancialmente o número de processadores "bons" por wafer. Uma má notícia é que a AMD aumentou os tempos de latência do cache L2 do Brisbane de 12 para 14 tempos, visando facilitar a produção de futuros modelos com mais cache L2, além de permitir o uso de freqüências de clock ligeiramente maiores. Como o Brisbane não inclui melhorias em relação aos modelos anteriores, ele acaba sendo mais lento que um Manchester do mesmo clock (e com a mesma quantidade de cache). Embora a diferença seja pequena, inferior a 2% na maioria dos aplicativos, ela existe. O Brisbane foi usado em 6 modelos da série Energy Efficient, todos eles com TDP de 65 watts: 3600+ (1.9 GHz, 2x 512 KB, soquete AM2), 4000+ (2.1 GHz, 2x 512 KB, soquete AM2), 4400+ (2.3 GHz, 2x 512 KB, soquete AM2), 4800+ (2.5 GHz, 2x 512 KB, soquete AM2), 5000+ (2.6 GHz, 2x 512 KB, soquete AM2) e 5200+ (2.7 GHz, 2x 512, soquete AM2). Como de praxe, o uso de um processador dual-core tem seus prós e contras. O principal benefício de usar um processador dual-core é o melhor desempenho ao rodar muitos aplicativos pesados simultaneamente. Se você é do tipo que abre 50 abas do navegador, ouve música, comprime um DVD, retoca imagens no Photoshop (ou Gimp ;) para o cartaz que está diagramando no Corel e ainda por cima quer abrir 3 máquinas virtuais do VMware, tudo ao mesmo tempo, um processador dual-core, acompanhado por 2 ou 4 GB de memória DDR2 (ou DDR3), é uma necessidade. Por outro lado, para usuários que rodam um ou dois aplicativos por vez, que usam o PC predominantemente para games (sem executar outras tarefas simultaneamente como, por exemplo, deixar o PC comprimindo um DVD em segundo plano) ou que rodam apenas aplicativos leves, um processador single- core mais barato, ou com uma freqüência ligeiramente maior ofereceria uma relação custo-benefício melhor. Comparando um X2 4800+ (2.4 GHz, 2x 1 MB, core Toledo) com um Athlon 64 single-core 4000+ (2.4 GHz, 1 MB, core San Diego) temos o X2 4800+ ganhando por uma margem de 17% no Winstone 2004 (Content Creation), 41% no SYSMark 2004 (3D Content Creation), 1% no Photoshop 7 e 2% no Premiere 6.5 (testes do World Bench 2005), 1% no Doom3 (FPS a 1024x768), 2% no Half Life 2 e 3% no Unreal 2004. Você pode notar que, com exceção do SYSMark 2004, todos os demais benchmarks e games mostram um ganho de desempenho muito inferior ao sugerido pelo aumento de 800 pontos no índice de desempenho da AMD. Isso acontece por que estes testes levam em conta o desempenho ao executar apenas uma tarefa de cada vez. Como disse, um processador dual-core traz benefícios consideráveis apenas ao rodar vários aplicativos simultaneamente. 197
  • 198. Rodando um aplicativo por vez, ou rodando apenas benchmarks, existem até casos em que o 4800+ perde do 4000+ por uma pequena margem (1 ou 2%). É o caso de aplicativos que não conseguem obter nenhum benefício do segundo core e acabam tendo o desempenho penalizado pelo overhead de dividir a carga entre os dois. Sempron Apesar de serem processadores completamente diferentes dos Semprons soquete A baseados no Barton, Thorton e Thoroughbred-B, a AMD continuou utilizando a marca "Sempron" ao lançar a linha de processadores de baixo custo, baseada na arquitetura K8. Além da questão do cache menor, as versões iniciais do Sempron vinham sem suporte ao AMD64, ou seja, sem suporte às instruções de 64 bits, incluindo os registradores extra e as outras melhorias trazidas pela arquitetura. Embora fossem baseados na arquitetura K8, eles eram processadores de 32 bits, sem praticamente nenhuma das inovações trazidas por ela. Outra diferença é que o índice de desempenho do Sempron é calculado com relação ao desempenho do Celeron D e não ao Pentium 4. Isso faz com que exista uma diferença significativa entre o desempenho de um Sempron "3000+" e de um Athlon 64 também "3000+". Por exemplo, o Athlon 64 3000+ baseado no core Newcastle (2.0 GHz, soquete 754, com 512 KB de cache) tem um desempenho parecido com o de um Sempron de 2.2 GHz com 256 KB de cache, baseado no core Palermo. O problema é que o Palermo de 2.2 GHz recebe o índice "3400+", 400 pontos acima do índice do Athlon 64 equivalente. A primeira encarnação do Sempron K8 foi o core Paris, uma versão simplificada do ClawHammer, produzido em uma técnica de 0.13 micron, que possuía nativamente apenas 256 KB de cache e vinha sem suporte às instruções de 64 bits, ao Cool'n'Quiet e também às instruções SSE3. Ele foi lançado em julho de 2004 e foi vendido por pouco mais de um ano. Existiram duas versões: 3000+ (1.8 GHz, 128 KB, soquete 754) e 3100+ (1.8 GHz, 256 KB, soquete 754). Como pode ver, o 3000+ vinha com metade do cache desabilitado. Como o Sempron já possui pouco cache nativamente, essa nova redução acabava tendo um efeito muito maior sobre o desempenho do que a diferença de 100 pontos no índice sugere. O Sempron com core Paris é um modelo a se evitar, mas entre os dois o 3000+ é o pior. A partir de 2005, o core Paris foi rapidamente substituído pelo Palermo, produzido usando uma técnica de 0.09 micron. Nativamente, o core Palermo possui 256 KB de cache e oferece suporte às extensões de 64 bits, Cool'n'Quiet e também às instruções SSE3. O problema é que, a fim de aproveitar o maior número possível de processadores saídos da linha de produção, a AMD passou a desativar não apenas metade do cache, como de 198
  • 199. praxe, mas também o suporte às instruções de 64 bits e ao SSE3 nos cores que eram produzidos com defeitos nos componentes relacionados a estes recursos, o que resultou em uma grande salada de modelos com índice de desempenho similar, mas com conjuntos muito diferentes de recursos. A chave para diferenciar os Palermos é o código de identificação dos processadores. Os processadores cujo código termina com "BA" são os piores, pois não suportam nem instruções de 64 bits, nem SSE3. Os que terminam com "BO" suportam SSE3, mas ainda não suportam instruções de 64 bits, enquanto os terminados com "BX" são as versões completas, com ambos os recursos ativados. Com exceção do 2500+, todos os modelos foram fabricados nas três versões, e a presença do suporte a 64 bits ou SSE3 não influenciava no índice de desempenho ou preço, de forma que era importante checar antes de comprar. A isto soma-se a questão do Cool'n'Quiet, que não era suportado pelo core Paris e está disponível apenas nos Palermos 3000+ em diante. O Palermo foi usado nas versões 2500+ (1.4 GHz, 256 KB, soquete 754), 2600+ (1.6 GHz, 128 KB, soquete 754), 2800+ (1.6 GHz, 256 KB, soquete 754), 3000+ (1.8 GHz, 128 KB, soquete 754), 3100+ (1.8 GHz, 256 KB, soquete 754), 3300+ (2.0 GHz, 128 KB, soquete 754) e 3400+ (2.0 GHz, 256 KB, soquete 754). Pouco depois, no final de 2005, foi lançada uma versão atualizada do core Palermo, com suporte ao soquete 939 (e consequentemente a dual-channel). Surgiram então os modelos 3000+ (1.8 GHz, 128 KB, soquete 939), 3200+ (1.8 GHz, 256 KB, soquete 939), 3400+ (2.0 GHz, 128 KB, soquete 939) e 3500+ (2.0 GHz, 256 KB, soquete 939). Estes 4 modelos suportavam SSE3, mas apenas as séries com final "BW" ofereciam suporte às instruções de 64 bits. As séries com final "BP" vinham com o suporte a 64 bits desabilitado e devem ser evitadas. Finalmente, temos o Sempron com core Manila, ainda fabricado usando a técnica de 0.09 micron, mas agora com suporte ao soquete AM2. Ao contrário dos Palermos, todos os Manilas incluem suporte às instruções de 64 bits e SSE3, mas o Cool'n'Quiet é suportado apenas nas versões 3200+ em diante. O core Manila foi usado nas versões 2800+ (1.6 GHz, 128 KB, soquete AM2), 3000+ (1.6 GHz, 256 KB, soquete AM2), 3200+ (1.8 GHz, 128 KB, soquete AM2), 3400+ (1.8 GHz, 256 KB, soquete AM2), 3500+ (2.0 GHz, 128 KB, soquete AM2), 3600+ (2.0 GHz, 256 KB, soquete AM2) e 3800+ (2.2 GHz, 256 KB, soquete AM2). Como de praxe, as versões de 256 KB oferecem um desempenho sensivelmente superior na maior parte dos aplicativos, por isso devem ser preferidas na hora da compra. Essa confusão com relação aos modelos do Sempron e do Athlon 64 fez com que a AMD perdesse alguns potenciais compradores e permitiu que a Intel recuperasse parte do espaço anteriormente perdido, passando a oferecer versões do Celeron D a preços bastante competitivos. 199
  • 200. No início de 2007, os Celeron D baseados no core Cedar Mill-512 (os modelos 347, 352, 356, 360 e 365) eram especialmente atraentes, pois possuíam 512 KB de cache, eram fabricados usando a técnica de 0.065 micron e suportavam overclocks generosos. Overclock: Assim como os demais processadores dentro da família do Athlon 64, o Sempron não é particularmente generoso com relação aos overclocks. Os melhores dentro da família são os com core Manila, do 2800+ ao 3200+ (1.6 a 2.0 GHz). Eles utilizam uma tensão dual de 1.25v - 1.4v e, na maioria dos casos, podem ser overclocados para até 2.4 GHz com estabilidade, desde que a placa-mãe suporte a freqüência necessária e você aumente a tensão do processador em 0.1v. A maioria das placas baratas, baseadas em chipsets SiS e VIA podem trabalhar com o FSB a até 220 MHz com estabilidade, o que permitiria fazer overclock das versões de 1.6, 1.8 e 2.0 GHz para, respectivamente, 1.76, 1.98 e 2.2 GHz. Neste caso o overclock é simples e na maioria dos casos você não vai precisar sequer aumentar a tensão do processador (embora um aumento de 0.05v possa ajudar a manter a estabilidade): Ajuste do clock e tensão do processador através do setup A partir daí, as possibilidades dependem das opções disponíveis no Setup da placa-mãe. O primeiro problema é a freqüência do barramento HyperTransport (HT Frequency), que é particularmente sensível. Nas placas soquete 754 o HyperTransport trabalha a 800 MHz (200 MHz x 4) e nas soquete 939 ou AM2 ele trabalha a 1.0 GHz (200 MHz x 5). Em ambos os casos, ele não suporta trabalhar com estabilidade a mais do que, respectivamente, 900 ou 1100 MHz, o que nos restringe ao humilde overclock de 10% do passo anterior. Para ir além, é necessário que a placa-mãe ofereça a opção de ajustar o multiplicador do barramento HyperTransport. Desta forma, você pode reduzir o multiplicador de 4x ou 5x para, respectivamente, 3x e 4x, o que permitirá aumentar o FSB para até 250 MHz com relativa segurança. Usando um multiplicador de 4x e 250 MHz em uma placa AM2, o HyperTransport trabalharia a 1.0 GHz, sua freqüência padrão. Em uma placa soquete 754, você poderia aumentar o FSB para até 270 MHz e ainda assim (com multiplicador 3x) o HyperTransport estaria operando a 810 MHz. 200
  • 201. Ajuste do FSB e multiplicador do barramento HyperTransport Reduzindo o multiplicador do HyperTransport e aumentando a tensão do processador em 0.1v, você poderia aumentar a freqüência do FSB para 240 MHz e assim obter 1.92, 2.16 e 2.4 GHz. No caso das versões de 1.6 e 1.8 GHz, você poderia ir um pouco mais longe e ajustar o FSB para 250 MHz, obtendo 2.0 e 2.25 GHz, respectivamente. A até 2.4 GHz, o processador deve funcionar sem problemas utilizando um cooler padrão, desde que o gabinete seja bem ventilado. A partir daí, os resultados variam muito de acordo com a série do processador, placa-mãe, cooler usado e até mesmo com a qualidade da fonte de alimentação, já que quanto maior a freqüência, maior o consumo elétrico e consequentemente maior o stress sobre ela. Praticamente todas as placas soquete 754, 939 e AM2 oferecem a opção de manter a memória operando de forma assíncrona. Isso permite que você aumente a freqüência do FSB (e consequentemente do processador) sem mexer na freqüência da memória. Depois de testar o overclock do processador, você pode obter um pequeno ganho adicional aumentando a freqüência, ou baixando os tempos de espera da memória. Neste caso as possibilidades dependem das opções oferecidas pela placa e da qualidade dos módulos de memória instalados. Ajuste da freqüência e tempos de espera da memória Para overclocks mais extremos, outra opção útil é o "PCI/AGP Lock", opção suportada por placas com chipset nVidia e algumas com chipset VIA, onde é possível ajustar a freqüência do FSB de forma independente da freqüência dos demais barramentos da placa, assim como no caso da memória. 201
  • 202. Reconhecendo o processador A gigantesca variedade de variações dentro da família Athlon 64 torna realmente complicado identificar os processadores visualmente. Um "3000+" pode ser desde um ClawHammer de 2.0 GHz, soquete 754, até um Orleans de 1.8 GHz, soquete AM2, passando por praticamente todas as outras famílias. É relativamente simples distinguir os processadores baseado no soquete usado, já que os processadores soquete 754 possuem a área central sem pinos e os AM2 possuem um pino extra em relação aos soquete 939. Com base no soquete usado, data aproximada de fabricação, índice de desempenho e clock do processador, você pode ter então uma idéia de qual família ele pertence, mas para ter certeza mesmo você precisaria montar o micro e verificar usando o CPU-Z ou outro software. Mas, apesar de um pouco mais complicado, é possível diferenciar os Athlon 64 e X2 com base no código de identificação com 13 dígitos decalcado sobre o spreader do processador: Código de identificação de um Athlon X2 Dentro do código, o campo mais óbvio são os 4 dígitos do número de identificação (4800 no exemplo). Como vimos, o mesmo código pode ser usado em processadores com diferentes combinações de clock, cache e soquete. 202
  • 203. Os três dígitos finais ajudam a distinguir processadores com o mesmo índice, pois indicam a quantidade de cache e a arquitetura em que são baseados: O antepenúltimo dígito (6 no exemplo) se refere ao cache. As possibilidades são as seguintes: 2 - 128 KB (Sempron) 3 - 256 KB (Sempron) 4 - 512 KB (1x 512 para os single-core ou 2x 256 KB para os dual-core) 5 - 1 MB (2x 512 KB no caso dos dual-core) 6 - 2 MB (2x 1 MB no caso dos dual-core) Os dois últimos são um código de identificação, que indica o stepping, tecnologia de fabricação, soquete e também se o processador é single-core ou dual-core. A tabela para os processadores Athlon 64 e X2 em versão OEM é a seguinte: AP - Stepping C0 (ClawHammer), single-core, 0.13 micron, soquete 754 AR - Stepping CG (ClawHammer), single-core, 0.13 micron, soquete 754 AS - Stepping CG (ClawHammer), single-core, 0.13 micron, soquete 939 AW - Stepping CG (Newcastle), single-core, 0.13 micron, soquete 939 AX - Stepping CG (Newcastle), single-core, 0.13 micron, soquete 754 AZ - Stepping CG (Newcastle), single-core, 0.13 micron, soquete 939 BI - Stepping D0 (Winchester), single-core, 0.09 micron, soquete 939 BN - Stepping E4 (San Diego), single-core, 0.09 micron, soquete 939 BO - Stepping E3 (Venice), single-core, 0.09 micron, soquete 754 BP - Stepping E3 (Venice), single-core, 0.09 micron, soquete 939 BV - Stepping E4 (Manchester), dual-core, 0.09 micron, soquete 939 BW - Stepping E6 (Venice ou San Diego), single-core, 0.09 micron, soquete 939 BX - Stepping E6 (Venice), single-core, 0.09 micron, soquete 754 BY - Stepping E6 (Venice ou San Diego), single-core, 0.09 micron, soquete 939 BZ - Stepping E3 (Venice), single-core, 0.09 micron, soquete 939 CD - Stepping E6 (Toledo), dual-core, 0.09 micron, soquete 939 CF - Stepping E6 (Venice ou San Diego), single-core, 0.09 micron, soquete 939 CG - Stepping E4 (Manchester ou San Diego), single-core, 0.09 micron, soquete 939 CN - Stepping F2 (Orleans), single-core, 0.09 micron, soquete AM2 CS - Stepping F2 (Windsor), dual-core, 0.09 micron, soquete AM2 CU - Stepping F2 (Windsor), dual-core, 0.09 micron, soquete AM2 CW - Stepping F2 (Orleans), single-core, 0.09 micron, soquete AM2 CZ - Stepping F3 (Windsor), dual-core, 0.09 micron, soquete AM2 203
  • 204. DD - Stepping G1 (Brisbane), dual-core, 0.065 micron, soquete AM2 DE - Stepping G1 (Lima), single-core, 0.065 micron, soquete AM2 DH - Stepping F3 (Lima), single-core, 0.065 micron, soquete AM2 DL - Stepping G1 (Brisbane), dual-core, 0.065 micron, soquete AM2 Para os Semprons, baseados na arquitetura K8, temos: AX - Stepping CG (Paris), 0.13 micron, soquete 754 (sem suporte a 64 bits e SSE3) BA - Stepping D0 (Palermo), 0.09 micron, soquete 754 (sem suporte a 64 bits e SSE3) BI - Stepping D0 (Palermo), 0.09 micron, soquete 939 (sem suporte a 64 bits) BO - Stepping E3 (Palermo), 0.09 micron, soquete 754 (sem suporte a 64 bits) BP - Stepping E3 (Palermo), 0.09 micron, soquete 939 (sem suporte a 64 bits) BW - Stepping E6 (Palermo), 0.09 micron, soquete 939 BX - Stepping E6 (Palermo), 0.09 micron, soquete 754 CN - Stepping F2 (Manila), 0.09 micron, soquete AM2 CV - Stepping D0 (Palermo), 0.09 micron, soquete 754 CW - Stepping F2 (Manila), 0.09 micron, soquete AM2 O terceiro dígito (A no exemplo) se refere ao TDP do processador. Ele não é uma indicação precisa do consumo, já que o TDP é apenas uma espécie de "teto", onde o mesmo número é compartilhado por diversos processadores da mesma família, com freqüências de clock e consumo muito diferentes. O principal objetivo do número é ajudar os integradores a dimensionarem corretamente o cooler do processador e a ventilação do gabinete. Apesar disso, o TDP ajuda a identificar os processadores de baixo consumo e os modelos gastadores (como o 6000+ baseado no core Windsor). As possibilidades são as seguintes: A - Standard (consumo normal dentro da arquitetura usada) D - TDP de 35 watts H - TDP de 45 watts O - TDP de 65 watts V - Low power (os modelos Energy Efficient) X - TDP de 125 watts (como o Windsor 6000+) O oitavo dígito (logo após o índice de desempenho) também indica o soquete usado. Ele é útil em casos em que o processador já estiver instalado na placa- mãe ou não for possível examinar os contatos por outro motivo qualquer: A - Soquete 754 D - Soquete 939 I - Soquete 940 204
  • 205. Os dois primeiros dígitos (AD no exemplo) permitem confirmar a família da qual o processador faz parte: AD - Athlon 64, Athlon 64 X2 ou Athlon 64 FX OS - Opteron (servidores) AM - Mobile Athlon 64 ou Mobile Athlon 64 X2 SD - Sempron SM - Mobile Sempron TM - Turion ou Turion X2 No caso dos processadores em versão boxed, o código de identificação termina com a sigla "BOX" e os dois dígitos depois do índice de desempenho indicam o código de identificação (dentro da tabela que vimos há pouco). No caso deles, o código não contém informações sobre o cache ou soquete utilizado. Pelo código, podemos dizer que o Sempron da foto a seguir é um Sempron (SD), da série de consumo standard (A), vendido sob o índice 3000+, soquete 939 (D), com 128 KB de cache (2) e que faz parte da série baseada no core Palermo, sem suporte a 64 bits (BP). O código não fala nada sobre a freqüência real de operação, mas com base nas informações descobertas podemos deduzir que ele opera a 1.8 GHz, já que essa é a única freqüência possível para um Sempron soquete 939 com 128 KB de cache. Como o código não termina com a sigla "BOX", sabemos também que ele é um processador OEM. 205
  • 206. Sempron com código SDA3000DIO2BP No caso do Athlon 64 a seguir, podemos dizer que trata-se de um Athlon 64 3800+, também soquete 939 (D), com 512 KB, e que é um processador single- core, baseado no core Newcastle (AW). Com base nessas informações podemos deduzir que ele é o modelo de 2.4 GHz, já que não existem outras versões do Newcastle com 512 KB para o soquete 939 que receberam o índice 3800+. Athlon 64 com código ADA3800DEP4AW Caso esteja curioso, o quarto e quinto dígito da direita para a esquerda (AA na foto abaixo), dizem respeito à tensão usada e à temperatura máxima onde o funcionamento do processador é garantido: 206
  • 207. Assim como no caso da freqüência, diferentes modelos e steepings do processador possuem diferentes níveis de tolerância a altas temperaturas, quesito que também é testado em fábrica. A temperatura limite é indicada na quarta letra da direita para a esquerda (este dígito não é incluído no código usado nos processadores boxed). As possibilidades são as seguintes: A - Variável (de acordo com a série) I - 63°C K - 65°C O - 69°C P - 70°C M - 67°C O - 69°C Q - 71°C T - 78°C U - 83°C X - 95°C Estes números são apenas uma garantia. Seu Athlon X2 de rating "K" não vai queimar por atingir 66°C ao executar alguma tarefa pesada, apenas a estabilidade não é garantida. Normalmente, apenas os Opterons e alguns modelos do FX possuem os ratings de M em diante e apenas os Turions utilizam o ratting X. No caso dos processadores Mobile, suportar altas temperaturas é um quesito importante, pois permite que o exaustor do cooler seja ativado menos vezes, poupando a carga da bateria. O rating "A" é usado em processadores que não passaram pela verificação, o que inclui a maior parte dos modelos domésticos do Athlon 64, X2 e Sempron. Na prática, o teto térmico deles é um pouco mais baixo do que os processadores com rating "I". Para manter o sistema estável e seguro, é recomendável mantê-los trabalhando abaixo de 61°C (ao rodar aplicativos pesados), se necessário instalando exaustores adicionais dentro do gabinete. Temos em seguida a quinta letra da direita para a esquerda, que diz respeito à tensão utilizada. Esta indicação não é muito importante na prática, pois a tensão é detectada automaticamente pelo BIOS e muitos processadores trazem a tensão usada decalcada de forma visível. A principal utilidade seria verificar se o processador utiliza uma tensão compatível com a placa-mãe, já que muitas placas antigas não possuem reguladores de tensão capazes de trabalhar com processadores que utilizam menos de 1.4v, por exemplo. Assim como no caso do dígito da temperatura, este dígito também não é usado no código dos processadores boxed: 207
  • 208. A - Variável (de acordo com o modelo) C - 1.55v E - 1.5v I - 1.4v K - 1.35v M - 1.3v O - 1.25v Q - 1.2v S - 1.15v Novamente, o rating "A" é um "nada a declarar", indicando que o processador simplesmente utiliza a tensão normal, dentro da arquitetura utilizada. O rating "C" (1.55v) foi utilizado apenas por alguns modelos do Opteron, ainda baseados no core SledgeHammer, de 0.13 micron. Dentro das séries domésticas, a maior tensão usada são os 1.5v utilizados pelos processadores baseados no core ClawHammer e Newcastle. Quad FX Apesar da introdução das novas técnicas de fabricação, tanto o Athlon 64, quanto o Sempron não foram capazes de atingir freqüências muito mais elevadas que os pioneiros de 0.13 micron, baseados nos cores ClawHammer e Paris. O mesmo pode se dizer dos processadores Intel, que não avançaram muito em termos de freqüência de operação desde o Northwood, também fabricado em uma técnica de 0.13 micron. Mesmo o core Prescott, que utilizava mais estágios de pipeline e tempos de latência maiores para o cache L2, com o objetivo de atingir freqüências de operação mais altas (em troca de uma redução no desempenho por ciclo), não foi capaz de superar os 3.8 GHz. Os tempos em que simplesmente migrar para uma nova técnica de fabricação garantia um aumento expressivo no clock do processador acabaram. Velhos truques como aumentar o número de estágios de pipeline ou aumentar os tempos de latência do cache L2 para atingir freqüências de operação mais altas também já foram usados até o limite, de forma que novos aumentos acabam sendo contra-produtivos. Ao invés disso, tanto a Intel quanto a AMD se voltaram para a "última fronteira", que é adicionar novos recursos e componentes internos (suporte a novos conjuntos de instruções, suporte a 64 bits, controladores de memória integrados, mais cache L2, etc.) ou criar processadores dual-core ou quad- core, de forma a fazer com que o processador seja capaz de executar mais processamento por ciclo. Depois da linha Athlon X2, composta de processadores dual-core, a evolução natural seriam processadores quad-core. Surge então a plataforma Quad FX, lançada pela AMD em dezembro de 2006. A primeira observação sobre o Quad FX é que não se trata exatamente de um processador quad-core, mas sim de dois processadores da série FX, 208
  • 209. espetados na mesma placa-mãe e ligados através de um link HyperTransport. Ou seja, temos um sistema dual-CPU: Quad FX Inicialmente foram lançadas três versões, o FX-70 (2x 2.6 GHz), FX-72 (2x 2.8 GHz) e FX-74 (2x 3.0 GHz). Todas são baseadas no core Windsor (0.09 micron), com 1 MB de cache por core, totalizando 2 MB para cada um dos dois processadores. O soquete AM2 oferece suporte a um único barramento HyperTransport, usado para interligar o processador ao chipset. Para permitir a inclusão de um barramento adicional, necessário para fazer a interligação entre os dois processadores, a AMD adotou o uso do soquete F, utilizado também pelo Opteron. Assim como o soquete 775 da Intel, o soquete F utiliza o sistema LGA (Land Grid Array), onde os pinos de contato são movidos do processador para o soquete, criando uma "cama" de contatos, sobre a qual o processador é firmemente preso: 209
  • 210. Soquete F A principal diferença é que o soquete F possui um número brutalmente maior de contatos, nada menos do que 1207. Esse número absurdo é necessário, pois além do controlador de memória integrado, o processador passa a dispor de três barramentos HyperTransport independentes. Um deles é utilizado para ligar o processador ao chipset, outro para permitir a comunicação entre os dois processadores e o terceiro fica disponível para a inclusão de recursos adicionais. No caso dos Opterons, o terceiro link pode ser utilizado para criar sistemas com 4 processadores. Isto seria dispendioso demais em um PC doméstico e não ofereceria grandes benefícios sobre o uso de apenas dois. Em vez de simplesmente deixar o link sem uso, a nVidia o utilizou para ligar um segundo chipset ao processador, criando a plataforma nForce 680a SLI: 210
  • 211. Diagrama de blocos do nForce 680a SLI O objetivo dessa combinação é dobrar o número de linhas PCI Express e outras interfaces, criando uma placa-mãe monstruosa, com 4 slots PCI Express 16x (dois deles com 16 linhas completas, dois com 8 linhas), 12 interfaces SATA e até 4 placas de rede onboard. Ou seja, você poderia montar um sistema quad-SLI, com 4 (ou mais) HDs SATA em RAID e ainda teria várias interfaces disponíveis. Como cada processador possui seu próprio controlador de memória dual- channel, é necessário utilizar um total de 4 módulos: dois para cada processador. Como cada processador tem acesso direto à apenas metade da memória instalada, é necessário um sistema que permita a comunicação entre eles, de forma que um possa enxergar a metade utilizada pelo outro. Entra em cena o NUMA (Non-Uniform Memory Architecture) que permite que ambos os processadores trabalhem utilizando uma tabela de endereços unificada. Graças a isso, cada um dos dois processadores enxerga toda a memória disponível, e acessos feitos à metade de propriedade do outro processador são realizados através do link HyperTransport que os interliga. Embora a idéia pareça boa no papel, o uso do NUMA aumenta os tempos de latência do acesso à memória, já que aproximadamente metade dos acessos são feitos aos módulos do processador vizinho, fazendo todo o caminho através do barramento HyperTransport, em vez de de irem diretamente do módulo ao controlador de memória local. 211
  • 212. Em aplicativos não-otimizados (atualmente poucos programas são capazes de explorar ao máximo o benefício de um segundo núcleo, o que dizer de quatro) a perda causada pelo aumento da latência no acesso à memória anula grande parte do benefício proporcionado pelos dois núcleos adicionais, fazendo com que mesmo o FX 74 tenha dificuldades em oferecer ganhos tangíveis sobre um X2 6000+, que também opera a 3.0 GHz. Em alguns benchmarks, aplicativos científicos e modelagem em 3D, o Quad FX se destaca, mas em aplicativos de uso geral e em games o ganho de desempenho real é pequeno. Em um teste rápido, utilizando uma NVIDIA GeForce 8800 GTX a 1600x1200, o FX-70 consegue apenas 148 FPS no Half Life 2 (Gunship Timedemo), contra 147 obtidos por um X2 5200+, que também opera a 2.6 GHz. Ele ganha por uma margem de 6% no 3D MAX e ganha por uma pequena margem em compressão de vídeo usando o Xmpeg, mas perde (embora por apenas 2 a 3 FPS) no Quake 4, que seria um bom exemplo de game em que o uso do NUMA acaba fazendo mais mal do que bem. Na prática, a plataforma Quad FX oferece pouca utilidade, já que é muito dispendiosa. Em junho de 2007, uma ASUS L1N64-SLI WS (baseada no nForce 680a SLI) custava US$ 350 e cada processador FX-74 custava mais US$ 480 (preços dos EUA), totalizando mais de 1300 dólares, apenas pela placa e processadores. Adicionando os módulos de memória, coolers, gabinete, placas de vídeo, monitor e periféricos, você passaria facilmente dos US$ 4000. Como moramos no Brasil, teríamos ainda as taxas de importação, resultando em uma cifra pornográfica. :) Mesmo que você tivesse tanto dinheiro para gastar em um PC, seria muito mais prudente montar um PC "simples", com um Athlon 64 X2 ou um Core 2 Duo, usando uma boa placa-mãe, 1 ou 2 GB de memória e uma placa de vídeo razoável (que no final ofereceria um desempenho apenas alguns pontos inferior) e aplicar o resto do dinheiro, deixando-o disponível para futuros upgrades. Apesar disso, o Quad FX é interessante como conceito, dando uma amostra de tecnologias que poderão ser usadas em futuros processadores, como o uso do soquete F e o NUMA. A plataforma Core O mercado de processadores é bastante competitivo. Atualmente temos a predominância da Intel e AMD, com uma pequena participação da VIA, mas diversas outras empresas, incluindo a IBM, Texas, Transmeta, Cyrix (que acabou sendo comprada pela VIA) e IDT já tentaram a sorte, sem tanto sucesso. Aqui temos um 486 produzido pela IBM e o Crusoe da Transmeta: 212
  • 213. 486 produzido pela IBM e o Transmeta Crusoe O Crusoe foi provavelmente o mais "exótico" entre os chips alternativos. Ele era um processador de baixo consumo, que chegou a ser utilizado em alguns notebooks ultra-compactos e também em alguns modelos de baixo custo, incluindo alguns desknotes fabricados pela ECS. A principal característica do Crusoe era a de ser um chip VLIW relativamente simples e bastante eficiente, que executava instruções x86 através de um software de tradução, batizado de Code Morphing Software, executado continuamente. Ele tinha a função de converter as instruções x86 enviadas pelos programas nas instruções simples entendidas pelo processador, ordená- las de forma a serem executadas mais rápido e coordenar o uso dos registradores, tarefas que em outros processadores são executadas via hardware. Graças a isso, o Crusoe podia ser um chip muito menor e consumir menos energia. O TM5420 de 600 MHz, por exemplo, consumia menos de 2 watts operando em full-load, menos do que um 486. O grande problema é que o Code Morphing Software consumia parte dos recursos do processador (que já 213
  • 214. não era muito rápido, para início de conversa), deixando menos recursos para o processamento de instruções. Isso fazia com que o Crusoe fosse muito lento se comparado a um Athlon ou Pentium III do mesmo clock, o que reduziu a procura pelo processador a ponto de inviabilizar o projeto. Fabricar processadores é muito mais complexo e arriscado do que fazer placas-mãe ou telas de LCD, por exemplo, pois os projetos são muito mais complexos e o investimento inicial absurdamente maior. Leva-se pelo menos 5 anos para projetar um novo processador e, para produzi-lo, é necessário investir mais 2 a 4 bilhões de dólares, investimento necessário para montar uma fábrica de ponta. Mesmo para uma grande empresa, como a Intel, um erro estratégico pode custar muito caro. Investir em uma plataforma ineficiente pode gerar um atraso de vários anos, até que o projeto de um novo processador, mais competitivo, seja concluído e seja possível produzi-lo em quantidade. Com o lançamento do Pentium 4, em 2001, a Intel fez um movimento arriscado, investindo em um processador com um longo pipeline (a primeira versão do Pentium 4 trabalhava com 20 estágios, contra 10 do Pentium III e 11 das primeiras versões do Athlon). Dobrar o número de estágios no processador é como dobrar o número de funcionários em uma linha de produção, fazendo com que cada um faça metade do trabalho e a esteira corra duas vezes mais rápido. O plano era simples: com mais estágios, o processador seria capaz de atingir freqüências mais altas. Para manter as unidades de execução abastecidas, o processador contaria com um cache L1 muito rápido, que armazenaria instruções pré-decodificadas, um grande cache L2 e utilizaria um tipo mais rápido de memória RAM, as famosas memórias Rambus. Entretanto, o tempo mostrou que esse design possuía inconsistências óbvias. Adicionar mais estágios tornou o processador menos eficiente, pois as instruções precisavam do dobro do número de ciclos do processador para serem processadas, fazendo com que o processador perdesse muito tempo em operações de tomada de decisão, em que o processador depende do resultado de uma instrução para processar a próxima. Possuir o dobro de estágios significa também possuir aproximadamente o dobro de transístores e consumir o dobro da eletricidade. Se isso vem acompanhado de um aumento no clock, chegamos a um processador ineficiente, que consome muito mais energia e dissipa muito mais calor. Por armazenar instruções decodificadas, o cache L1 do Pentium 4 também se tornou menos eficiente, já que instruções decodificadas ocupam mais espaço. Enquanto o Athlon possuía 64 KB (metade) do cache L1 reservado para armazenar instruções, o cache do Pentium 4 Willamette armazenava o equivalente a apenas 8 KB. Isso tornava o processador mais dependente do 214
  • 215. cache L2 (que devia ser obrigatoriamente maior, para que o processador mantivesse um bom nível de desempenho) e do barramento com a memória RAM, que deveria ser capaz de alimentar os caches. O Pentium 4 original (core Willamette) possuía apenas 256 KB de cache L2, por isso era consideravelmente mais lento que um Athlon, ou mesmo um Pentium III do mesmo clock. O core Northwood, lançado em seguida, trouxe 512 KB de cache e o Prescott (lançado em 2004) trouxe 1 MB completo. Pentium 4 com core Prescott O cache L2 é um item extremamente caro, pois cada bit de cache adiciona cerca de 6 transístores ao processador. Um cache L2 de 1 MB ocupa pelo menos 60 milhões de transístores, o que é quase o dobro do número de transístores do Athlon Palomino (que possuída 37.5 milhões). Mais transístores tornam o processador proporcionalmente mais caro de se produzir, o que aumenta o preço de venda. Para completar, existiu o problema das memórias Rambus, um tipo proprietário de memória, que trabalhava a freqüências superiores, porém com tempos de latência mais altos, o que eliminava a maior parte do ganho. O Pentium 4 utilizaria apenas memórias Rambus, obrigando os fabricantes de memória a aderirem à nova tecnologia. A Rambus Inc. receberia royalties dos fabricantes e a Intel ficaria com parte do bolo, na forma de incentivos e descontos. Felizmente não foi o que aconteceu. As memórias Rambus foram um dos maiores fiascos da história da informática. Na época do lançamento do Pentium 4, um módulo de 64 MB custava US$ 99, enquanto um módulo de memória PC-133 da mesma capacidade custava apenas US$ 45. Isto significava gastar 215
  • 216. US$ 216 (ao comprar 256 MB) a mais, só de memória, sem contar a diferença de preço do processador Pentium 4 e da placa-mãe, que na época ainda eram consideravelmente mais caros. Pouca gente comprou as versões iniciais do Pentium 4, e quem se arriscou acabou com um abacaxi nas mãos. Isto obrigou a Intel a modificar a plataforma, passando a utilizar memórias DDR padrão. A demora gerou um vácuo, que permitiu que a AMD aumentasse consideravelmente sua participação no mercado, já que contava com o Athlon Thunderbird, um processador mais barato e mais eficiente. Com o Pentium 4 Northwood, a Intel voltou a ser competitiva, chegando rapidamente aos 3.4 GHz. Foi introduzido também o Hyper Treading, que visa melhorar a eficiência do processador, dividindo-o em dois processadores lógicos. O plano da Intel, de compensar a baixa eficiência do Pentium 4 com freqüências de clock maiores, parecia estar dando certo. Na época, o roadmap da Intel mostrava processadores Pentium 4 com core Prescott atingindo 5.2 GHz no final de 2004 e planos para o core "Tejas", que alcançaria impressionantes 10 GHz no final de 2005. Porém, nada disso aconteceu. Os 3.4 GHz se tornaram uma barreira difícil de transpor. A partir daí, a Intel conseguiu apenas pequenos incrementos de clock, atingindo a muito custo os 3.8 GHz com o Prescott, que além de ser produzido numa técnica de 0.09 micron, teve o pipeline esticado para um total de 31 estágios. Acima de 3.8 GHz, o gate leakage, ou seja, a eletricidade perdida pelos transístores do processador a cada ciclo, tornava o consumo e dissipação térmica altos demais. Embora seja possível superar a barreira dos 4.0 GHz com o Prescott, via overclock, o resultado é um processador beberrão demais. É como se cada transístor do processador fosse um minúsculo cano, por onde passa água. Quanto menores os transístores, mais finos são os canos e quanto maior o clock, mais forte é a pressão da água. Os transístores são compostos por filamentos muito finos, o que causa uma pequena perda de energia, chamada de "gate leakage" a cada chaveamento. É como se os canos do exemplo possuíssem pequenos furos por onde vaza uma pequena quantidade de água. Conforme o clock aumenta, a pressão se torna mais forte e cada vez mais água vaza pelos canos, gerando um desperdício cada vez maior. No caso do processador, toda a energia desperdiçada se transforma em calor, o que traz a necessidade de um cooler mais eficiente, gerando um ciclo vicioso. A partir dos 4 GHz (no caso do Pentium 4), é necessário um aumento cada vez maior no consumo e dissipação térmica, em troca de um aumento cada vez menor na freqüência de operação. A Intel chegou a demonstrar uma versão do Prescott refrigerada com nitrogênio líquido, que trabalhava a 6.0 GHz, porém consumia mais de 300 watts. A equipe do site akiba-pc foi capaz de reproduzir o feito (a página original não 216
  • 217. está mais no ar), também usando nitrogênio liquido, porém sem estabilidade e por um curto espaço de tempo: Pentium 4 Prescott a 6 GHz, refrigerado com nitrogênio líquido O pequeno aumento no clock proporcionado pelo core Prescott serviu mais para encobrir a perda de desempenho causada pelo novo aumento no número de estágios do pipeline do que para realmente aumentar o desempenho, transformando o Prescott em um dos maiores fiascos da história da Intel. Uma versão atualizada do Prescott, com 2 MB de cache, foi lançada no início de 2005 (utilizada no Pentium 4 Extreme Edition), dando um último fôlego à plataforma, porém, novamente sem aumento no clock. O Cedar Mill, lançado no início de 2006, mais uma vez mostrou a dificuldade em produzir processadores Pentium 4 com clock mais alto. Mesmo produzido numa técnica de 0.065 micron, o Cedar Mill não foi capaz de superar a barreira dos 3.8 GHz. Ao invés disso, a Intel optou por produzir processadores dual core (baseados no core Presler), chegando ao Pentium Extreme Edition 965, que opera a 3.73GHz. Em resumo: em dois anos, a Intel conseguiu apenas ganhos incrementais de desempenho na plataforma Pentium 4. Caminhou bastante, porém para o lado e não para a frente. Naturalmente, a AMD não ficou parada. Depois do Athlon Palomino e do Thoroughbred, a AMD lançou o Barton, que trouxe pequenas melhorias de projeto e 512 KB de cache L2. Além de ser usado nas versões mais rápidas do Athlon XP, o core Barton foi utilizado nos Semprons 2400+ a 3000+, os últimos processadores lançados para o saudoso soquete A. A partir daí, temos os Athlon 64, Athlon 64 FX, Athlon 64 X2 e os Semprons para as placas soquete 754, 939 e AM2. Pela primeira vez na história, a AMD tomou a dianteira, produzindo processadores mais rápidos que a Intel e 217
  • 218. fazendo seu padrão de instruções de 64 bits (o AMD64) prevalecer, obrigando a Intel a desenvolver o EM64T, um conjunto compatível de instruções, incluído no Pentium 4 Prescott, sem muito alarde. De fato, a participação da AMD no mercado só não cresceu mais neste período devido à sua incapacidade de produzir seus processadores em maior volume. Assim como é demorado desenvolver um novo projeto, também é caro e demorado inaugurar novas fábricas. Por sorte, a Intel não desistiu inteiramente de produzir um processador mais econômico e com um melhor desempenho por clock, apenas relegou o projeto a segundo plano, dando prioridade ao desenvolvimento do Pentium 4 e da plataforma NetBurst. O desenvolvimento deste processador de baixo consumo ficou a cargo de um grupo de engenheiros sediados em Israel, que passaram a trabalhar em uma versão aprimorada do antigo Pentium III, um processador com menos estágios e menos transístores, incapaz de atingir freqüências de operação muito altas, mas que, em compensação, oferecia um desempenho por clock muito superior ao do Pentium 4. A idéia era trabalhar para reforçar os pontos fortes do Pentium III e minimizar seus pontos fracos, produzindo um processador com um desempenho por ciclo ainda melhor, mas que, ao mesmo tempo, consumisse menos energia e fosse capaz de operar a freqüências mais altas. A primeira encarnação do novo processador foi o core Banias (lançado em 2003), que chegou ao mercado na forma da primeira versão do Pentium-M. Muitos defendem que o Banias recebeu tantas melhorias em relação ao Pentium III, que pode ser considerado um novo projeto em vez de uma evolução deste. Como neste caso os critérios são subjetivos, você pode aderir a qualquer uma das duas linhas, como preferir. O Banias foi fabricado numa técnica de produção de 0.13 micron, com 64 KB de cache L1 e 1 MB de cache L2 e em versões de até 1.6 GHz. O barramento com o chipset (o principal ponto fraco do Pentium III) foi substituído pelo mesmo barramento de 400 MHz utilizado do Pentium 4, reduzindo o gargalo na conexão com a memória. O Banias recebeu ainda o reforço das instruções SSE2 e uma versão aprimorada do SpeedStep, que gerencia dinamicamente o clock, tensão e componentes internos do processador, desativando os componentes que não estão em uso e reduzindo a freqüência nos momentos de pouca atividade, reduzindo bastante o consumo do processador. Um Banias de 1.6 GHz consome 24 watts ao operar na freqüência máxima, mas consome pouco mais de 4 watts quando ocioso, operando na freqüência mínima. Junto com o Banias, veio a marca "Centrino", uma jogada de marketing da Intel, para vender o pacote completo, com o processador, chipset e placa 218
  • 219. wireless. Apenas os notebooks com os três componentes podem usar a marca "Centrino", criando uma certa pressão sobre os fabricantes. Na foto a seguir temos o interior de um notebook Asus A6V, em que temos (da esquerda para a direita) o processador, chipset e placa wireless assinalados: Interior de um notebook Asus A6V, baseado na plataforma Centrino O Banias mostrou ser um processador promissor. Mesmo com o agressivo sistema de gerenciamento de energia (que causava uma pequena diminuição no desempenho, mesmo quando o processador operava na freqüência máxima), o Banias era cerca de 50% mais rápido que um Pentium 4 Northwood do mesmo clock (embora ficasse longe de superá-lo, já que operava a freqüências de clock muito mais baixas). Em 2004 foi lançado o Pentium-M com core Dothan, equipado com 2 MB de cache L2, melhorias no circuito de branch prediction (que minimiza a perda de tempo com operações de tomada de decisão), um reforço nas unidades de execução de inteiros e melhoria no acesso aos registradores. Combinadas, estas melhorias resultaram num ganho real de cerca de 8% em relação a um Banias do mesmo clock. O Pentium M com core Dothan atingiu 2.0 GHz (Pentium M 755), com um consumo de apenas 21 watts, menos que o Banias de 1.5 GHz. Como de praxe, foi lançada também uma versão do Celeron baseada no Dothan, o Celeron-M, que se tornou bastante comum nos notebooks de baixo custo. Ele é castrado de duas formas, a fim de não concorrer diretamente com o Pentium-M: vem com metade do cache e com o suporte ao gerenciamento de energia desativado, fazendo com que o processador trabalhe sempre na 219
  • 220. freqüência máxima, desperdiçando energia e reduzindo a autonomia das baterias. Aproveitando o baixo consumo do Dothan, a Intel desenvolveu o Yonah, um processador dual-core para notebooks, produzido usando uma técnica de 0.065 micron. O Yonah original passou a ser vendido sobre a marca "Core Duo", enquanto uma versão de baixo custo, com um único core assumiu a marca "Core Solo". Assim como o Dothan, o Yonah possui 2 MB de cache L2. Entretanto, em vez de ser dividido entre os dois cores (1 MB para cada um), o cache é compartilhado, permitindo que ambos os cores acessem os mesmos dados, evitando assim duplicação de informações e desperdício de espaço. Nos momentos em que o processador está parcialmente ocioso, o segundo core pode ser completamente desligado (para economizar energia), deixando o primeiro core com um cache de 2 MB inteiramente para si. A desvantagem do cache compartilhado é que ele aumenta o tempo de latência: são necessários 14 ciclos para acessar alguma informação no L2 do Yonah, contra 10 ciclos do Dothan. Apesar disso, o Yonah possui dois núcleos, o que acaba compensando a diferença e proporcionando um bom ganho em relação ao Dothan. Outro pequeno ganho é proporcionado pela inclusão das instruções SSE3. Um processador dual core melhora bastante a responsividade do sistema ao executar várias tarefas simultaneamente, já que os processos podem ser divididos entre os dois cores, porém faz pouca diferença ao rodar aplicativos leves. Entretanto, hoje em dia é comum deixarmos muitos programas abertos simultaneamente, sem falar nos processos em background, o que faz com que um processador dual-core realmente proporcione uma melhora significativa, embora a maioria dos benchmarks não mostrem isso, já que simulam o uso de um único aplicativo. O Yonah inclui uma versão atualizada do sistema de gerenciamento de energia introduzido no Banias, que desliga partes do processador ociosas, mantendo apenas um dos cores ativos em momentos de pouca atividade. Isso faz com que o consumo médio de um Core Duo, em tarefas leves, não seja muito diferente de um Core Solo do mesmo clock, o que acaba juntando o melhor dos dois mundos. Ao executar tarefas pesadas, um Core Duo de 2.0 GHz consome 31 watts, contra 21 watts do Dothan do mesmo clock. Ou seja, mesmo com os dois cores ativos, o consumo aumenta menos de 50%, muito longe de dobrar, como seria de se esperar. O departamento de marketing da Intel passou então a falar em "eficiência" em vez de freqüências de clock mais altas. Os planos frustrados de lançar um processador de 10 GHz baseado no Pentium 4 foram varridos para debaixo do tapete e a meta passou a ser lançar processadores que executem mais 220
  • 221. processamento com menos energia, exacerbando os pontos fortes dos processadores Core Solo e Core Duo, baseados no core Yonah. Este slide do IDF 2006 dá uma amostra do novo discurso. Ele mostra como a eficiência energética (o volume de eletricidade necessária para processar cada instrução) dos processadores vinha caindo desde o Pentium, atingindo seu nível mais baixo com o Pentium 4 Dual Core, até a introdução do Banias, Dothan e Yonah; uma posição pouco honrosa para o Pentium 4, que (segundo a própria Intel) precisa de 5 vezes mais eletricidade para fazer o mesmo trabalho: Conroe Apesar de possuir um desempenho por ciclo de clock muito superior ao do Pentium 4 e do Pentium D, superando-os em muitas aplicações, o Yonah era um processador mobile e por isso era limitado a freqüências de operação relativamente baixas. Surgiu então o Conroe, uma versão aperfeiçoada do Yonah, com foco no uso em desktops, que deu origem às primeiras versões do Core 2 Duo, lançadas em junho de 2006. Embora seja um chip radicalmente diferente, ele é produzido utilizando a mesma técnica de 0.065 micron utilizada na produção do Cedar Mill e do Presler e utiliza o mesmo encapsulamento que eles. Outra similaridade com o Pentium D é o uso do mesmo barramento de dados, o que permitiu que o Conroe continuasse utilizando o soquete LGA775, introduzido em 2004. 221
  • 222. Praticamente todas as placas soquete 775 produzidas a partir de 2006 oferecem suporte ao Conroe, embora muitas precisem de um upgrade de BIOS. O grande problema são as placas antigas, que incluem quase todas as placas produzidas em 2004 e 2005 e parte das placas produzidas nos primeiros meses de 2006. O Core 2 Duo precisa de uma placa com um regulador de tensão compatível com a especificação VRM 11, que foi finalizada apenas em 2006. Sem um regulador de tensão compatível, a placa não tem como gerar as tensões utilizadas pelo processador e acaba sendo incompatível, mesmo que utilize um chipset compatível e um BIOS capaz de reconhecer corretamente o processador. Todos os Core 2 Duo utilizam o soquete 775, sem nenhum tipo de compatibilidade com as antigas placas soquete 478, que ficam limitadas aos Pentium 4 e Celeron D. Core 2 Duo O Conroe não inclui nenhum tipo de controlador de memória integrado. Essa continua sendo uma exclusividade do Athlon 64 e sua principal arma, que permite reduzir de forma substancial o tempo de acesso à memória, ajudando assim a reduzir a pressão sobre os caches. O Athlon 64 também possui 128 KB de cache L1 (64k dados + 64k instruções), o dobro do Conroe, que possui apenas 64KB (dividido em dois blocos de 32 KB, para dados e instruções). 222
  • 223. Foto de divulgação da Intel que mostra o encapsulamento do processador Em compensação, o cache L1 do Conroe trabalha com 8 linhas de associação, contra apenas duas do Athlon 64. Isso torna o cache mais eficiente, aumentando a probabilidade da informação necessária ser encontrada. A segunda vantagem é o massivo cache L2, que além de maior, é acessado através de um barramento de dados de 256 bits, muito mais largo que o usado no Athlon 64 (que usa um barramento de 128 bits). Uma observação é que o Conroe voltou a utilizar um cache L1 tradicional, sem vestígios do "trace cache" usado no Pentium 4, que armazenava instruções decodificadas. Até o core Manchester, a AMD utilizava um cache L2 com 12 tempos de latência, o que representava uma pequena vantagem em relação ao Conroe, que utiliza um cache L2 com 14 tempos. Apesar disso, a partir do core Brisbane, a AMD passou a também utilizar um cache L2 com 14 tempos, o que equilibrou a balança. Para efeito de comparação, o Prescott utilizava um cache L2 com absurdos 28 tempos de latência, muito mais lento que ambos. A maioria das versões do Core 2 Duo utilizam bus de 1066 MHz (4x 266), o que ajuda a reduzir a latência do acesso à memória, reduzindo a vantagem do Athlon 64 neste quesito. Aparentemente, a Intel chegou à conclusão de que o novo cache, combinado com o uso de memórias DDR2 ou DDR3 de baixa latência tornam desnecessário o uso de um controlador de memória integrado. Muitas das melhoras estruturais do Conroe em relação ao Pentium 4 e processadores anteriores da Intel já estavam disponíveis no Dothan e Yonah, mas vou abordá-las em conjunto para simplificar a abordagem. Uma das melhoras mais significativas é o recurso batizado de Macro-fusion, que permite que diversos pares de instruções comuns sejam combinados em uma única instrução, em vez de serem processados separadamente. Isto 223
  • 224. causa um efeito cascata, economizando espaço nos buffers, economizando processamento no agendador de instruções (scheduler), e assim por diante, resultando num ganho bruto de até 11%. O Conroe possui 3 decodificadores de instruções simples e mais um decodificador de instruções complexas, 4 no total. Graças ao Macro-fusion, uma grande quantidade de instruções são combinadas (um par em cada 10 instruções, segundo os engenheiros da Intel), permitindo que em quase metade dos ciclos sejam decodificadas 5 instruções. O Athlon 64 possui apenas 3 decodificadores, capazes de lidar tanto com instruções simples (as mais comuns), quanto com instruções complexas. Isso significa que, na maior parte do tempo, os 4 decodificadores do Conroe levam uma grande vantagem, mas em alguns aplicativos que utilizem predominantemente instruções complexas, o Athlon 64 se sai melhor. O Conroe leva uma grande vantagem também ao processar instruções SSE de 128 bits, pois é capaz de processá-las diretamente, num total de 3 instruções completas por ciclo. O Athlon 64 também possui três unidades SSE, mas nele cada instrução SSE precisa ser dividida em duas instruções de 64 bits, que são processadas separadamente. Ou seja, na prática, o Athlon 64 processa apenas três instruções SSE a cada dois ciclos, ou seja, o equivalente a apenas uma instruções SSE e meia por ciclo. Atualmente, os conjuntos SSE, SSE2 e SSE3 são utilizados na grande maioria dos games, programas de processamento de vídeo e assim por diante, onde as instruções SSE são usadas como substitutas mais rápidas para instruções x87, executadas através do coprocessador aritmético. Isso acentua a vantagem do Conroe em aplicativos muito otimizados para as instruções SSE, sobretudo programas de compressão de vídeo e áudio. Só para efeito de comparação, o Pentium 4 possuía apenas duas unidades SSE, que, como as do Athlon 64, eram capazes de processar apenas meia instrução por ciclo. Ou seja, o Conroe possui três vezes mais processamento bruto em SSE que o Pentium 4, o que explica a enorme diferença entre os dois em alguns benchmarks. Outro reforço são as unidades de ponto flutuante (que formam o coprocessador aritmético) capazes de processar 4 instruções de dupla precisão por ciclo, contra apenas 3 por ciclo do Athlon 64. Em relação ao Presler, foi mantido também o suporte ao EM64T, que torna o Conroe compatível com os sistemas e aplicativos de 64 bits, desenvolvidos para o Athlon 64 (um pré-requisito para qualquer processador x86 atual) e também com o Intel VT. Você deve se lembrar do pipeline de 31 estágios do Pentium 4 com core Prescott. Sempre que o processador chega a uma operação de tomada de decisão, ele precisa esperar a conclusão do processamento da primeira instrução (o que, no Prescott, demora 31 ciclos) para saber quais instruções deve processar em seguida. Para não ficar parado, o processador utiliza o 224
  • 225. circuito de branch prediction, que escolhe o caminho mais provável, permitindo que o processador vá "adiantando o trabalho". O problema é que, sempre que é feita a escolha errada, todo o trabalho precisa ser descartado, causando uma grande perda de tempo. O Conroe possui um pipeline de apenas 14 estágios e um circuito de branch prediction muito aprimorado em relação ao Pentium 4. Isso faz com que ele tome bem menos decisões erradas e perca muito menos tempo (menos da metade do número de ciclos) em cada um, gerando um grande aumento no número de instruções efetivamente processadas por ciclo de clock. O mais interessante é que, apesar de possuir apenas 14 estágios e ser muito mais eficiente, o Conroe atingiu 2.96 GHz (no X6800) logo no lançamento, se aproximando das freqüências atingidas pelo Pentium 4 e superando por uma boa margem o clock dos Athlon X2. Os Core 2 Duo também oferecem suporte ao SpeedStep (como nos Pentium- M), que ajuda a reduzir o consumo para níveis ainda menores, sem prejudicar de forma perceptível o desempenho. Com o SpeedStep ativado, o processador reduz a freqüência de operação e a tensão (diminuindo consideravelmente o consumo), mas volta ao clock máximo assim que é executada alguma tarefa pesada. No Extreme X6800, por exemplo, o processador trabalha nativamente a 2.93 GHz e usa 1.34v. No modo de economia, a freqüência cai para 1.6 GHz e a tensão para apenas 0.9v, resultando num consumo de apenas 25 watts, similar ao de um Pentium III 900. Temos aqui uma foto do Conroe antes do encapsulamento do processador, divulgada pela Intel. Na verdade, as versões baseadas no core Conroe com 2 e 4 MB de cache são idênticas, porém as de 2 MB têm metade do cache desativado antes do encapsulamento, como nos Celeron: 225
  • 226. Foto mostrando os componentes internos do Core 2 Duo baseado no Conroe Outro recurso herdado do Yonah, e por enquanto exclusivo dos processadores Intel, é o "Advanced Smart Cache", um sistema de cache unificado, onde os dois núcleos compartilham o mesmo bloco de cache L2, em vez de cada um possuir um cache separado, como no caso do Pentium D e do Athlon X2. A principal vantagem desta abordagem é evitar a duplicação de informações quando ambos os núcleos estão trabalhando no mesmo bloco de instruções. Em vez de a informação ser carregada duas vezes na memória (uma vez para cada bloco de cache) e ser armazenada duas vezes, tudo é feito uma vez só, o que poupa tanto o barramento com a memória, quanto economiza espaço no cache, aumentando o número de informações efetivamente armazenadas. Outra vantagem é que, em momentos de baixa atividade, quando apenas um dos núcleos estiver ativo, ele pode "tomar conta" do cache, reservando a maior parte do espaço para si, de forma a trabalhar mais eficientemente. Este slide da Intel ilustra como o sistema funciona: 226
  • 227. Criar um cache unificado deve ter representado um grande desafio do ponto de vista técnico, já que com ambos os processadores acessando o cache simultaneamente, constantemente gravando e apagando informações, é muito difícil manter a coerência do cache, evitando que um modifique as informações armazenadas pelo outro. Os circuitos necessários para coordenar o acesso ao cache ocuparam um grande número de transístores do processador, mas uma vez que o problema foi resolvido, o Smart Cache realmente representa uma vantagem importante. Assim como no caso do Pentium D e do Celeron D, os Core 2 Duo são vendidos sob um sistema de numeração que não tem relação direta com o desempenho do processador. Os modelos lançados originalmente, em julho de 2006, incluem o E6300 (1.86 GHz, 2 MB, 1066 MHz), E6400 (2.13 GHz, 2 MB, 1066 MHz), E6600 (2.4 GHz, 4 MB, 1066 MHz) e E6700 (2.67 GHz, 4 MB, 1066 MHz). Foi lançado também o Extreme X6800 (2.93 GHz, 4 MB, 1066 MHz), um descendente da série "Extreme Edition", que além da freqüência um pouco maior, vem com o multiplicador destravado, facilitando o overclock. Apesar do marketing, ele é um processador produzido em volume limitado, que na época de lançamento custava US$ 999 (o dobro do E6700 e mais de 4 vezes mais que o E6400), o que o tornava um modelo "de vitrine". Durante maio e junho de 2006, a Intel distribuiu vários processadores e placas para review, porém sob um NDA que impedia a divulgação de detalhes sobre eles e benchmarks. Quando o NDA expirou, vários sites publicaram reviews ao 227
  • 228. mesmo tempo. Você encontra um conjunto exaustivo de benchmarks das versões iniciais do Core 2 Duo nos links a seguir: http://techreport.com/reviews/2006q3/core2/index.x?pg=3 http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=2795&p=3 http://www.xbitlabs.com/articles/cpu/display/core2duo-e6300_9.html http://www.firingsquad.com/hardware/intel_core_2_performance/page4.asp http://www.tomshardware.com/2006/07/14/core2_duo_knocks_out_athlon_64/p age11.html Como era de se esperar, o Athlon X2 continua levando vantagem no acesso à memória, tanto em latência quanto em taxas de transferência, graças ao controlador de memória integrado. Mas o enorme cache L2 do Conroe, combinado com as demais melhorias na arquitetura faz com que ele acabe levando a melhor em quase todos os benchmarks. O que chama mais a atenção é a consistência: ele apresenta um desempenho equilibrado em quase todas as tarefas, sem os altos e baixos do Pentium 4, que se saía muito bem em algumas tarefas e muito mal em outras. O Athlon 64 FX-62 ainda consegue ser competitivo, em alguns dos testes, mas os Athlon X2 perdem quase sempre por uma boa margem, até porque, o Core 2 Duo trabalha a freqüências de clock maiores. Os Pentium D ficam na lanterna em quase todos os testes, com o 965 Extreme Edition perdendo para o Core 2 Extreme X6800 por uma margem de 40 a 60% em quase todos os testes e esboçando alguma reação apenas no Photoshop, Sysmark 2004, no Sandra e em alguns benchmarks envolvendo compressão de áudio e vídeo. Em alguns testes, a desvantagem chega a ser maior: o Core 2 Duo Extreme X6800 chega a ser 100% mais rápido que o Pentium XE 965 no game Rise of The Legends. Naturalmente, o Extreme X6800 é muito caro para ser considerado na hora da compra, mas os Duo E6300 e E6400 apresentam um bom custo-benefício em relação aos Athlon X2, mesmo desconsiderando as possibilidades de overclock. Ao contrário do que ocorria em alguns modelos do Celeron, onde dobrar a quantidade de cache causava um aumento de 10% ou mais no desempenho do processador, os 4 MB de cache incluídos no E6600 em diante são responsáveis por um aumento de apenas 2 a 4% no desempenho (por ciclo de clock) em relação às versões com 2 MB, um ganho incremental. Apenas alguns games chegam a exibir ganhos na casa dos 10%. Embora mais cache seja sempre algo desejável, você deve levar em conta a diferença de preço na hora de comprar. Sempre que a diferença for grande, vale mais a pena comprar um modelo com 2 MB. Caso ache necessário, você pode compensar a diferença de desempenho fazendo um overclock leve. Em abril de 2007 foram lançadas duas novas versões, o E6320 (1.86 GHz, 4 MB, 1066 MHz) e o E6420 (2.13 GHz, 4 MB, 1066 MHz). Estas novas versões são destinadas a substituir os antigos modelos E6300 e E6400, que possuem 228
  • 229. apenas 2 MB de cache. Com a substituição dos dois, toda a linha E6xxx passa a ter 4 MB de cache L2. Em junho de 2007 foram lançadas 3 novas versões do Conroe, destinadas a placas com suporte a bus de 1333 MHz (4x 333 MHz). Todas possuem 4 MB de cache L2 e conservam os mesmos recursos básicos, mas existe um pequeno ganho de desempenho (inferior a 1% na maioria das aplicações) em relação a um Conroe com bus de 1066 MHz de mesmo clock. Os 3 modelos são o Core 2 Duo E6550 (2.33 GHz, 4 MB, 1333 MHz), E6750 (2.67 GHz, 4 MB, 1333 MHz) e E6850 (3.0 GHz, 4 MB, 1333 MHz). Kentsfield O Kentsfield é o processador Quad-Core da Intel, vendido sob a marca "Core 2 Quad". Assim como o Pentium D com core Presler, o Kentsfield é na verdade um processador dual-chip, onde temos dois processadores dual-core independentes, colocados dentro do mesmo encapsulamento e interligados através do front-side bus. O dissipador metálico do processador esconde justamente os dois chips separados: Core 2 Quad baseado no Kentsfield, sem o dissipador metálico O Kentsfield nada mais é do que um Conroe adaptado para suportar a configuração multi-clip. Foram mantidos os mesmos 4 MB de cache L2 por processador (totalizando 8 MB, já que agora temos dois). Cada chip é composto por 291 milhões de transístores, de forma que os dois totalizam nada menos do que 582 milhões, um número sem precedentes dentro da plataforma PC. Embora seja interessante do ponto de vista técnico, o uso do Kentsfield em um PC doméstico não representa uma grande vantagem em relação a um Conroe do mesmo clock, já que, embora já existam muitos aplicativos multi-thread, capazes de extrair algum ganho de desempenho do segundo core, ainda não existem muitos aplicativos otimizados para o uso de 4 cores. Uma exceção 229
  • 230. importante são aplicativos de renderização 3D, como o 3Ds Max, onde o ganho cresce quase linearmente ao adicionar mais núcleos, crescendo em quase 80% em relação ao Conroe. Existe ganho de desempenho também na maior parte dos codecs de compressão de vídeo, embora menor, na casa dos 10 a 20%. A versão inicial do Kentsfield, lançada em novembro de 2006, é o Core 2 Extreme QX6700 (2.66 GHz, 2x 4 MB, 1066 MHz) que era vendido por US$ 999, o mesmo preço do Core 2 Extreme X6800 (que apesar de possuir apenas dois cores, operava a 2.93 GHz). Em Janeiro de 2007 foi lançado o Core 2 Quad Q6600 (2.4 GHz, 2x 4 MB, 1066 MHz) uma versão mais barata, que passou a custar "apenas" US$ 530 (preço nos EUA) a partir de abril de 2007. As diferenças na freqüência de operação em relação às versões dual-core é causada por dois motivos. O primeiro é que, assim como no caso do Presler (usado no Pentium D), o uso de dois chips separados gera problemas de sincronismo, que dificultam a operação do processador à freqüência máxima. A segunda é a própria questão da dissipação térmica, já que, a 2.66 GHz, o Kentsfield tem um TDP de 130 watts. Tanto a freqüência nominal de operação quanto a margem de overclock são menores no Kentsfield do que nos Core 2 Duo e Core 2 Extreme baseados no Conroe, o que, além de anular parte das vantagens trazidas pelos dois cores adicionais, faz com que ele realmente perca para as versões dual-core em muitos aplicativos. Apesar disso, em abril de 2007 a Intel conseguiu lançar o QX6800 (2.93 GHz, 2x 4 MB, 1066 MHz), que, embora com 10 meses de atraso, conseguiu igualar a freqüência do X6800 dual-core. Em julho de 2007 foi lançado o QX6850 (3.0 GHz, 2x 4MB, 1333 MHz), que apesar do pequeno incremento no clock, trouxe como novidade o uso do FSB de 1333 MHz, suportado pela nova geração de placas soquete 775. No caso do Kentsfield o aumento na freqüência do FSB é importante, pois além de ser usado para o acesso à memória, ele é responsável por toda a comunicação entre os dois chips. Como de praxe, ao ser lançado o QX6850 ocupou o posto de processador mais caro da Intel, vendido por US$ 999 (nos EUA), empurrando para baixo o preço dos antecessores. Um dos grandes problemas do Kentsfield é que ele não inclui nenhum sistema de gerenciamento avançado de energia, que permita desligar ou reduzir a tensão dos núcleos ociosos. Ele suporta o SpeedStep, assim como o Conroe, mas a mesma tensão e freqüência são sempre aplicadas aos 4 núcleos, sem distinção. Se um dos núcleos passa a trabalhar a todo vapor (executando um aplicativo que não seja otimizado para multiprocessamento, por exemplo), todos os 4 cores passarão a trabalhar na freqüência máxima, mesmo que 3 deles estejam ociosos. Devido a isso, o Kentsfield passa mais de 90% do tempo consumindo o dobro de energia que um Conroe do mesmo clock, variando de pouco mais de 40 watts (enquanto o processador está ocioso) a até quase 130 watts quando operando a 2.66 GHz. Você pode encontrar um conjunto bastante completo de benchmarks do Kentsfield neste link do TomsHardware (a partir da página 8): 230
  • 231. http://www.tomshardware.com/2006/09/10/. Ele inclui duas versões overclocadas, operando a 3.0 e 3.3 GHz. Outro set bem elaborado de benchmarks é este do Anandtech: http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=2866&p=10. Allendale O Allendale não é um novo processador, mas sim uma versão reduzida do Conroe, que possui apenas 2 MB de cache L2 e é por isso mais barato de se produzir. Na prática, os processadores baseados no core Allendale são muito semelhantes aos E6300 e E6400, modelos do Conroe com metade do cache L2 desabilitado ainda em fábrica. O principal objetivo da Intel ao desenvolver o Allendale é o de produzir modelos de baixo custo do Core 2 Duo, destinados a substituir os antigos Pentium D baseados na arquitetura NetBurst. Os primeiros modelos baseados no Allendale foram os Core 2 Duo E4300 (1.8 GHz, 2 MB, 800 MHz), E4400 (2.0 GHz, 2 MB, 800 MHz) e E4500 (2.2 GHz, 2 MB, 800 MHz). Como você pode ver, os três modelos utilizam bus de 800 MHz, de forma a oferecerem uma melhor compatibilidade com placas antigas. O bus mais baixo serve também para diferenciá-los dos modelos mais caros do Core 2 Duo, que utilizam bus de 1066 ou 1333 MHz, que resulta em um pequeno incremento de desempenho. Mas, o uso do bus de 800 MHz tem suas vantagens, já que facilita o overclock. Por operarem a freqüências mais baixas e serem produzidos usando as mesmas técnicas usadas no Conroe, os Allendale possuem margens de overclock surpreendentes. Se a placa-mãe e as memórias permitirem, você pode aumentar a freqüência do FSB de 200 MHz (800) para 300 MHz (1200), e assim fazer um mero E4300 operar a 2.7 GHz. Em muitos casos, você vai precisar aumentar a tensão do processador em 0.1v para estabilizar o sistema, mas em outros ele vai funcionar perfeitamente mesmo usando os 1.325v default. Dependendo da série usada (e naturalmente do cooler), você pode atingir 3.0 GHz (9x 333 MHz) ou mesmo 3.15 GHz (9x 350 MHz), aumentando a tensão em 0.2v. Não existe uma grande diferença nas freqüências atingidas pelas três versões, de forma que é preferível comprar um E4300, que é mais barato, e investir a diferença em uma placa-mãe de melhor qualidade, que lhe ofereça maiores condições de overclock ou em um cooler mais parrudo. Não se esqueça também de instalar exaustores adicionais no gabinete para melhorar a circulação de ar. A colocação de um exaustor traseiro (puxando o ar para fora) e outro na abertura frontal, ou sobre o processador (empurrando o ar para dentro) tem, na maioria dos casos, um efeito maior do que trocar o cooler do processador. De nada adianta um cooler de ponta dentro de um gabinete abafado. 231
  • 232. Continuando a saga do Allendale, temos também dois modelos castrados, onde metade do cache L2 é desabilitado em fábrica (a velha técnica de usar a metade boa do cache, aproveitando processadores que de outra forma seriam descartados). Diferentemente das versões com 2 MB, que são vendidos sob a marca "Core 2 Duo", esses processadores com apenas 1 MB são vendidos sob a marca "Pentium". A mudança de nome tem um efeito meramente psicológico. O objetivo é simplesmente aproveitar o esforço de marketing feito em torno do Pentium D, já que as versões de 1 MB do Allendale substituem diretamente os últimos remanescentes da série 9xx, baseados no antigo core Presler. Temos então o Pentium E2140 (1.6 GHz, 1 MB, 800 MHz) e o Pentium E2160 (1.8 GHz, 1 MB, 800 MHz). Estes dois processadores foram os primeiros processadores baseados na plataforma Core a serem vendidos por menos de US$ 100. Com exceção dos modelos mais baratos do Athlon X2, eles são os processadores dual-core mais baratos que você pode comprar. Todos os processadores baseados no core Allendale são produzidos nas mesmas fábricas e compartilham os mesmos waffers de silício. O que diferencia um Core 2 Duo da série E4xxx de um Pentium E2xxx é meramente o fator "sorte". Os processadores perfeitos são vendidos como Core 2 Duo, enquanto os que apresentam defeitos em células do cache têm metade do cache desabilitado e são vendidos como Pentium E. Isso faz com que as duas famílias ofereçam margens de overclock similares, o que torna o Pentium E uma opção muito interessante para quem quer um micro rápido gastando pouco. Um mero Pentium E2160, espetado em uma boa placa-mãe, em overclock para 3.0 GHz (9x 333 MHz, com aumento de 0.2v na tensão) pode competir de igual para igual com um Core 2 Duo E6700 (2.67 GHz) e superá-lo em muitas aplicações, custando menos de um terço do valor. A redução do cache de 4 MB para apenas 1 MB não tem um efeito tão grande sobre o desempenho quanto poderíamos imaginar à primeira vista. Alguns games (como o Company of Heroes) chegam a apresentar quedas de até 20% no FPS, mas a maioria dos games e aplicativos de produtividade apresenta uma queda de 5 a 15%. Alguns aplicativos, como o 3Ds Max, pouco são influenciados pela redução no cache, apresentando quedas de menos de 3%. Você pode ver algumas comparações entre Conroes e Allendales (operando à mesma freqüência) com 4, 2 e 1 MB de cache neste link do xbitlabs: http://www.xbitlabs.com/articles/cpu/display/pentium-e2160_4.html Uma curiosidade é que, com o lançamento do Allendale, passaram a existir séries dos Core 2 Duo E6300 e E6400 baseadas no Conroe (com metade do cache L2 desabilitado) e outras baseadas no Allendale, que oferece os mesmos 2 MB de cache L2. A diferença neste caso é apenas técnica, já que não existem outras diferenças na arquitetura. Entretanto, as séries baseadas 232
  • 233. no Allendale são de fabricação mais recente e por isso tendem a oferecer margens de overclock um pouco superiores. Conroe-L Com exceção de alguns poucos aplicativos científicos cuidadosamente otimizados, os processadores dual-core não chegam nem perto de serem duas vezes mais rápidos do que processadores single-core de arquitetura e clock similares. Pelo contrário, na maioria das tarefas o ganho acaba sendo de apenas 10 ou 15%, muito embora os ganhos em multitarefa sejam visíveis. Se os processadores single-core fossem capazes de operar ao dobro da freqüência, superariam os dual-core por uma margem considerável. A principal questão é que, devido ao gate-leakage e a outros fatores, não é mais tão simples aumentar a freqüência de operação dos processadores. Como a história do Pentium 4 mostrou, técnicas como aumentar o número de estágios de pipeline do processador ou aumentar os tempos de latência do cache L2 de forma a permitir que o processador seja capaz de atingir freqüências de operação mais elevadas acabam sendo contra-produtivas, já que o pequeno aumento na freqüência acaba não compensando a perda de desempenho. Por outro lado, a cada nova técnica de fabricação, os transístores do processador tornam-se menores, gerando uma redução substancial no espaço ocupado pelo processador. Os fabricantes têm então a opção de manter o projeto anterior (o que causa uma redução no custo de produção, já que a área ocupada por cada processador passa a ser menor) ou de usar o espaço adicional para adicionar componentes que possam aumentar o desempenho do processador. Redução no tamanho do processador, de acordo com a técnica de fabricação usada A modificação mais simples é adicionar mais cache L2. As células de cache são "clones" umas das outras, de forma que é muito fácil para os projetistas 233
  • 234. adicionar mais 2 ou 4 MB de cache L2. A questão é que, a partir de um certo ponto, adicionar mais cache passa a gerar ganhos de desempenho cada vez menores. Aumentar o cache do processador de 256 KB para 2 MB gera um ganho expressivo de desempenho, mas aumentar de 2 MB para 4 MB gera um ganho muito menor. A partir de um certo ponto, adicionar um segundo núcleo ao processador gera um ganho muito maior do que adicionar mais cache. Embora não seja tão simples quanto adicionar mais cache, criar um processador com dois núcleos ainda é muito mais simples do que desenvolver um novo projeto a partir do zero. Passa então a fazer mais sentido vender processadores dual-core, repassando o aumento no custo para os consumidores do que continuar vendendo processadores single-core indefinidamente. Afinal, a cada novo aperfeiçoamento na técnica de fabricação, a diferença de custo fica menor. Com o Core 2 Duo, todos os processadores de médio a alto custo da Intel passaram a ser dual-core ou quad-core. Durante a transição, os processadores Pentium D e Celeron D, baseados na arquitetura do NetBurst tornaram-se a linha de baixo custo e passaram a ser vendidos a preços cada vez mais baixos. Para ter uma idéia, no início de agosto de 2006, o Pentium D 805 (2.66 GHz) era vendido (nos EUA) por apenas US$ 90, menos da metade do preço do Core 2 Duo E6300. Durante o início de 2007, as últimas unidades do Celeron D chegaram a ser vendidas por menos de US$ 25, mais barato até mesmo que os Semprons. Isso explica a grande oferta de PCs populares com o Celeron D ou até mesmo com o Pentium D que tivemos ao longo da primeira metade de 2007. Esses preços baixos foram um fenômeno momentâneo, que serviu para acabar com os estoques de processadores da geração anterior. Não seria viável para a Intel vender versões do Core 2 Duo nesses preços, já que o processador custa mais do que isso para ser produzido. A solução encontrada pela Intel foi desenvolver uma versão simplificada do Conroe, com apenas um núcleo e 512 KB de cache L2, batizada de Conroe-L. Nasceu assim o sucessor do Celeron-D, que voltou a ser chamado simplesmente de "Celeron" e foi lançado sem muito alarde. As versões iniciais, lançadas em junho de 2007, incluem o Celeron 420 (1.6 GHz), o Celeron 430 (1.8 GHz) e o Celeron 440 (2.0 GHz). Os três modelos possuem apenas 512 KB de cache L2, utilizam bus de 800 MHz (4x 200 MHz) e são produzidos usando a técnica de 0.065 micron. Eles são genericamente chamados de "Celeron 4xx", termo que adoto ao longo do livro para me referir a eles. Embora eles possam ser usados em qualquer placa-mãe soquete 775 que suporte o Core 2 Duo, eles não devem ser vistos como um upgrade direto para as máquinas baseadas no Celeron D, já que a maior parte das placas antigas 234
  • 235. não possuem suporte a eles, por não utilizarem reguladores de tensão compatíveis com a especificação VRM 11. Por utilizarem o mesmo encapsulamento, os Celerons 4xx são fisicamente quase idênticos aos Core 2 Duo. Com exceção das inscrições sobre o heat- spreader do processador, a única forma de diferenciar os dois é com base nos capacitores cerâmicos instalados na parte inferior do processador. Por possuir apenas um núcleo, o Celeron possui um número muito menor deles: Celeron 430 (à esquerda) e Core 2 Duo Embora seja o "patinho feio" dentro da plataforma Core, o Celeron 4xx oferece algumas vantagens interessantes. A primeira (e mais óbvia) é que os processadores são muitos baratos, com os modelos de clock mais baixo custando menos de US$ 40 nos EUA (ou pouco mais de 100 reais aqui no Brasil). A segunda é que a combinação da arquitetura core, com uma técnica atualizada de fabricação, bus de 800 MHz e o uso de um único núcleo faz com que o Celeron 4xx suporte overclocks generosos, que me fazem lembrar dos antigos Celerons 300A. Usando uma placa que suporte bus de 266 MHz (1066) você pode fazer os três modelos trabalharem a, respectivamente, 2.13, 2.39 e 2.66 GHz. Caso a placa permita ir além, você pode chegar perto da marca dos 3.0 GHz, aumentando a tensão do processador em 0.2v. Embora (mesmo em overclock), seja difícil de comparar o desempenho do Celeron 4xx com o de um Core 2 Duo, ele é sensivelmente mais rápido que os antigos Celerons D. De uma forma geral, é preciso um Celeron D com o dobro do clock para competir de igual para igual com um Celeron 4xx. Um mero Celeron 430 (1.8 GHz) é capaz de superar um Celeron D de 3.6 GHz na maioria dos games e aplicativos de compressão de vídeo, além de consumir 235
  • 236. menos da metade da energia e oferecer uma margem de overclock muito maior. Além de poder ser usado em micros de baixo custo, o Celeron 4xx permite que você monte um PC com componentes de boa qualidade, gastando relativamente pouco. Você pode comprar uma boa placa-mãe soquete 775, 1 GB de memória e uma placa 3D offboard e deixar para economizar no processador. Fazendo overclock, você pode ter de 70 a 80% do desempenho de um Core 2 Duo E6400 ou E6600, com a possibilidade de atualizar o processador quando precisar de mais desempenho. Assim como o Celeron-M, destinado a notebooks, o Conroe-L não oferece suporte ao SpeedStep, de forma que o processador opera sempre à freqüência máxima. Isso não é um grande problema ao usar o processador na freqüência original, já que a 2.0 GHz ele consome menos de 35 watts de energia, mas torna-se uma desvantagem ao fazer overclocks mais extremos, onde além do clock é aumentada também a tensão. Se você está pensando em montar um micro de baixo consumo, o Celeron 4xx não é uma boa opção. Embora menos importante, outro "diferencial" é a ausência do suporte ao Intel VT que, para ser sincero, não faz muita falta, já que, apesar das promessas, ele (em 2007) ainda não oferece ganhos de desempenho no VMware, Virtual PC ou Xen, os três softwares que poderiam se beneficiar do sistema. No geral, se você pode pagar um pouco mais, um Pentium E2140 ou um E2160 são uma melhor opção, já que são processadores dual-core, que oferecem suporte ao SpeedStep e possuem 1 MB completo de cache L1. Mas, se o orçamento está apertado, é melhor comprar um Celeron 4xx do que economizar na placa-mãe ou em outros componentes do PC. Futuros chips Além da redução de preços, a acirrada concorrência entre a Intel e a AMD tornou ambas as empresas muito mais abertas com relação à divulgação de informações referentes a novas tecnologias, com cada uma tentando convencer o público de que seus próximos produtos serão superiores. Graças a isso, é possível ter uma idéia bastante clara do que os próximos dois ou três anos nos reservam. Embora essas informações estejam sujeitas a mudanças de percurso, atrasos e outros imprevistos, elas permitem que você possa planejar melhor os upgrades e ter uma idéia mais clara dos caminhos que serão seguidos pela indústria. 236
  • 237. Penryn O Penryn é o sucessor direto do Conroe, cujo lançamento está previsto para o início de 2008. Ele será o primeiro processador Intel produzido usando a nova técnica de 45 nanômetros (0.045 micron), que está em desenvolvimento desde 2001. Ele deve ser visto como uma evolução do Conroe e não como um novo processador. Imagine que o Penryn está para o Conroe assim como o Pentium 4 Northwood (0.13 micron) está para o antigo Willamette, produzido usando a antiga técnica de 0.18 micron. O Penryn é composto por nada menos do que 410 milhões de transístores. Apesar disso, ele ocupa uma área de apenas 107 mm², sensivelmente menor que o Conroe (que ocupa 143 mm²). Ele continua sendo um processador dual- core, onde cada núcleo possui 64 KB de cache L1 e ambos utilizam um grande cache L2 compartilhado. A mudança mais visível é a adição de mais 2 MB de cache L2, totalizando 6 MB (agora com 24 linhas de associação), mas ele inclui também outras melhorias. A primeira é a adição de mais um conjunto de instruções, o SSE4. Com a popularização dos processadores dual-core e quad-core, um dos maiores desafios passou ser otimizar os softwares, de forma que eles passem a se beneficiar dos núcleos adicionais. Um dos principais objetivos do SSE4 é oferecer instruções que permitam utilizar todos os núcleos do processador de forma mais eficiente, complementando os conjuntos de instruções anteriores. Assim como o Conroe, o Penryn não conta com um controlador de memória integrado, por isso a Intel recorreu a um novo aumento na freqüência do FSB para arejar o barramento com a memória. Além das versões com bus de 1066 MHz e 1333 MHz, serão lançadas versões com bus de 1600 MHz (4x 400 MHz), já suportado extra-oficialmente por muitas placas soquete 775. Inicialmente, o bus de 1600 MHz será utilizado por uma versão do Xeon baseada no Penryn, mas a partir de um certo ponto ele será utilizado também nas versões desktop. Por manter o uso do soquete 775, ele será, a princípio, compartível com as placas atuais, mas ainda não está claro até que ponto. Vale lembrar que toda a safra inicial de placas soquete 775 são incompatíveis com os processadores Core 2 Duo devido a deficiências no regulador de tensão. Na questão do consumo elétrico, a principal novidade é a introdução do "Deep Power Down Technology" um novo estágio de baixo consumo (batizado de C6), que permite que o processador consuma consideravelmente menos energia enquanto ocioso. Este recurso estará disponível apenas para as versões mobile, mas ainda assim é interessante entender como ele funciona. 237
  • 238. Ao entrar no modo C6, o sinal de clock é desligado, a tensão é reduzida drasticamente e os caches L1 e L2 são desligados. Neste modo, o chipset continua oferecendo acesso à memória para os demais periféricos do sistema, permitindo que diversas funções continuem acessíveis, sem que o processador precise ser acordado. O maior problema é que o processador demora um tempo relativamente longo para retornar do estado C6, já que perde todos os dados armazenados nos caches, de forma que ele é reservado para situações em que o processador fique ocioso por longos períodos. Na maior parte do tempo ele chaveia entre os modos atuais de gerenciamento, onde o tempo de recuperação é menor. O Penryn inclui também algumas melhorias nas unidades de execução, com destaque para o processamento de instruções de divisão, usadas por diversos aplicativos gráficos e de renderização 3D e uma versão aperfeiçoada do Intel VT, que promete oferecer (finalmente) ganhos tangíveis de desempenho no VMware e outros softwares de virtualização. Um recurso interessante do ponto de vista técnico é o EDAT (Enhanced Dynamic Acceleration Technology), que permite melhorar o desempenho do processador em aplicativos que não são capazes de se beneficiar do segundo núcleo. A idéia é bastante original: desligar o segundo núcleo (que de qualquer forma não seria utilizado pelo programa) e aproveitar a redução na dissipação térmica para fazer um overclock temporário do núcleo ativo, permitindo assim um ganho real de desempenho. O sistema pode então escolher entre manter os dois núcleos ativos a "100%" da capacidade, ou manter apenas um, trabalhando a "120%" da capacidade, de acordo com o aplicativo em uso. Inicialmente o EDAT será usado apenas nas versões mobile do Penryn, mas é de se esperar que ele seja incorporado em alguma revisão futura do Penryn para desktops caso se mostre realmente útil. Esta foto divulgada pela Intel dá uma amostra da organização dos componentes internos do Penryn. Veja que, somados, os caches L2 e L1 ocupam mais de 60% da área do processador: 238
  • 239. Penryn Embora o Penryn seja um processador dual-core, dois chips podem ser combinados para formar processadores quad-core (assim como o Kentsfield), que contarão com generosos 12 MB de cache L2. A versão "simples", com dois núcleos, é chamada de Wolfdale, enquanto a versão quad-core (dual-chip) responde pelo codenome Yorkfield. Por outro lado, é improvável que o Penryn receba uma versão single-core, como o Conroe-L, pois o chip já é relativamente pequeno. Segundo todas as informações divulgadas até agora, é quase certo que a produção dos Celerons single-core, baseados no Conroe-L, continue ao longo de 2008 e a partir de um certo ponto a linha seja descontinuada, dando origem a versões de baixo custo do Core 2 Duo baseado no Penryn, com clock mais baixo e parte do cache L2 desativado. Se as promessas se concretizarem, em 2009 a Intel terá abandonado a produção de processadores single-core para desktops e notebooks, passando apenas a produzir processadores dual-core e quad-core. Uma observação importante é que, embora o lançamento do Penryn esteja planejado para o início de 2008, ele levará vários meses para se popularizar, como toda nova arquitetura. Inicialmente a Intel produzirá o novo processador em quantidades limitadas e a partir daí irá aumentar a produção gradualmente, conforme for capaz de refinar a técnica de produção de 45 nanômetros. Embora não esteja diretamente relacionado ao Penryn, este slide da Intel mostra essa questão da produção usando novos processos de fabricação: 239
  • 240. Índice de defeitos nas diferentes técnicas de produção (Intel) As primeiras levas de waffers produzidas em cada nova técnica de produção são basicamente imprestáveis. O índice de defeitos é tão alto que praticamente nenhum processador é utilizável. No caso da Intel, os primeiros waffers são usados para produzir células de memória SRAM, que por serem cópias da mesma estrutura básica, são mais fáceis de produzir. Ao longo dos primeiros meses, o maquinário vai sendo calibrado, impurezas são removidas do ambiente e problemas de produção são resolvidos, fazendo com que o índice de defeitos caia rapidamente, embora ainda permaneça em níveis muito altos. A partir de um certo ponto, é possível produzir alguns processadores utilizáveis, que são usados em sistemas de demonstração, fornecidos para review e assim por diante. Mas, é geralmente só depois de um ano e meio que torna-se viável iniciar a produção em larga escala. O volume de produção vai então crescendo gradualmente, conforme os últimos problemas são resolvidos, fazendo com que os processadores produzidos na nova técnica de fabricação convivam com os da antiga por um período relativamente longo. Dois recursos bastante enfatizados pela Intel na transição para o processo de 45 nanômetros são o "high-k dielectric" e o "metal gate electrode", abreviados como HK e MG. O high-k dielectric consiste no uso de uma fina camada de um material baseado no elemento Háfnio (número 72 da tabela periódica) que possui uma constante dielétrica superior (high-k) ao do dióxido de silício, tradicionalmente utilizado na camada inferior do pólo central (gate) de cada transístor. Esta camada é chamada de gate dieletric e tem a função de separar o emissor e o coletor, os dois pólos do transístor, evitando que a corrente flua enquanto o 240
  • 241. transístor está desligado. Conforme o transístor fica menor, a camada fica mais fina e torna-se menos eficiente, fazendo com que cada vez mais energia seja desperdiçada. O uso do high-k dielectric reduz o problema, permitindo que o processador opere a freqüências mais altas, consumindo menos energia. O metal gate electrode consiste em substituir o gate electrode, a camada superior do pólo central do transístor (que vai logo acima do gate dieletric) por uma fina camada metálica, que melhora a condutividade do gate quando o transístor está aberto. Isto reduz o volume de energia necessária para mudar o estado do transístor, permite que ele chaveie de forma mais rápida (o que permite que o processador seja capaz de operar a freqüências mais elevadas) e permite que trabalhe utilizando uma tensão mais baixa, o que também ajuda a reduzir o consumo elétrico. Se pudéssemos cortar uma fatia muito fina do wafer de silício do processador e isolar a área referente a um único transístor, você veria uma estrutura similar a este diagrama, onde o emissor (positivo) e o coletor (negativo) do transístor são separados pelo gate, onde temos as duas camadas: Diagrama mostrando o uso do high-k e metal gate A combinação dos dois recursos é chamada pela Intel de "HK+MG" e serve para basicamente melhorar a eficiência geral dos transístores, permitindo que menos corrente passe quando o transístor está fechado e mais corrente passe quando ele está aberto. Estima-se que a transição para o processo de 45 nanômetros gere uma redução de até 30% na energia necessária para mudar o estágio dos transístores e que a combinação do high-k dielectric e o metal gate electrode torne o chaveamento dos transístores até 20% mais rápido, além de uma redução de até 80% no gate-leakage (o desperdício de energia que cresce exponencialmente conforme aumenta a freqüência de operação do processador), o que representa uma boa vantagem competitiva para Intel. 241
  • 242. Nehalem O Nehalem representa a próxima arquitetura Intel, ainda produzida usando a técnica de 45 nanômetros, mas com diversas mudanças arquiteturais em relação ao Penryn. Ainda se sabe relativamente pouco sobre ele, de forma que vou me limitar a comentar as informações que já estão mais ou menos confirmadas. Enquanto escrevo, o projeto ainda não está sequer finalizado e é tratado como segredo de estado dentro da Intel. Se não houverem atrasos, as primeiras unidades do Nehalem devem chegar ao mercado no final de 2008, mas não espere que ele se popularize antes da segunda metade de 2009. Ao contrário do Yorkfield, produzido pela combinação de dois Penryns, com dois núcleos cada um, o Nehalem será um processador quad-core nativo. Ele adotará dois recursos que até então eram exclusividade dos processadores AMD: um controlador de memória integrado (DDR3) e um barramento rápido (similar ao HyperTransport) para interligar os núcleos do processador e também ligá-lo ao chipset. Um detalhe importante sobre o controlador de memória é que além do tradicional suporte a dual-channel, estão em desenvolvimento também versões "tri-channel" e "quad-channel", com acesso simultâneo a até 4 módulos simultaneamente, alargando o barramento com a memória de forma a melhor atender os 4 núcleos. As quad-channel estarão inicialmente restritas aos servidores, mas pode ser que a Intel utilize o sistema em alguma série destinada a entusiastas (como os Core 2 Extreme). A questão é que usar 4 módulos de memória é muito custoso e o ganho de desempenho em relação a utilizar apenas dois tende a ser pequeno, de forma que não devemos ver o recurso se popularizar nos PCs domésticos em um futuro próximo. Assim como o Conroe e o Penryn, o Nehalem utilizará um sistema de cache compartilhado, onde todos os núcleos possuem um cache comum. Ainda não está claro se será mantida a arquitetura atual, onde cada núcleo possui um cache L1 próprio e o cache L2 é compartilhado, ou se será adotado um cache de 3 níveis, onde cada núcleo possui um pequeno cache L2 próprio e um grande cache L3 é compartilhado por todos. Ao contrário do deselegante Kentsfield, onde todos os núcleos operam sempre à mesma freqüência e usando a mesma tensão, o Nehalem oferecerá um sistema de gerenciamento independente, onde cada núcleo pode operar a uma freqüência condizente com seu nível de utilização. Dentro deste conceito, a idéia do cache de três níveis, onde cada núcleo possui caches L1 e L2 exclusivos me parece fazer mais sentido, pois permite que os núcleos não- utilizados, ou mesmo o próprio cache L3 (que consumiria boa parte da energia do processador) sejam completamente desligados, sem prejuízo para o desempenho dos núcleos que continuarem ativos. Podemos esperar uma configuração similar à do Athlon X2, onde temos um único controlador de memória, compartilhado entre todos os núcleos e uma 242
  • 243. interface de gerenciamento encarregada de distribuir a carga entre eles e monitorar o nível de carregamento de cada um. Buscando melhorar o aproveitamento dos 4 núcleos e maximizar o desempenho do processador nos momentos de inatividade, em que apenas um ou dois deles estiverem ativos, o Nehalem utilizará uma versão aperfeiçoada do Hyper-Threading, introduzido na época do Pentium 4. O Nehalem utilizará uma arquitetura mais modular, o que facilitará o desenvolvimento de versões com mais ou menos núcleos. Além da versão com 4 núcleos, existirão versões com 2 núcleos e 8 núcleos, embora ainda não esteja claro se a versão com 8 núcleos será um design octo-core "nativo", ou se será a combinação de dois processadores quad-core dentro do mesmo encapsulamento. Além da questão do gerenciamento de energia, a arquitetura escalável do Nehalem permitirá o lançamento de versões mais simples, com apenas 1 ou 2 núcleos, que podem ser usadas nas linhas de processadores de baixo custo. É de se esperar que, caso realmente lançada, a versão com apenas 1 núcleo não seja destinada a desktops, mas sim a sistemas móveis como os UMPCs e MIDs. Como de praxe, serão lançadas versões com configurações variadas de cache, de acordo com o preço e o público-alvo, como atualmente. A Intel divulgou também planos para produzir versões do Nehalem com aceleradores gráficos integrados, de forma similar ao Fusion da AMD. O principal problema é que, ao contrário da AMD (que agora possui a ATI), a Intel não possui sequer um acelerador gráfico competitivo. A Intel poderia desenvolver uma versão um pouco mais rápida do GMA3500 (o vídeo onboard utilizado no chipset G53) e integrá-la ao processador ao invés de no chipset, mas isso não seria uma grande evolução, já que o desempenho do vídeo integrado continuaria sendo baixo. No final de 2009 ou (mais provavelmente) início de 2010 está previsto o lançamento do Westmere (também chamado de Nehalem-C), uma versão aprimorada do Nehalem, produzido usando a técnica de 32 nanômetros que sucederá a de 45 nanômetros usada no Penryn. Ele será sucedido pelo Sandy Bridge (anteriormente chamado Gesher), uma nova arquitetura, sobre a qual pouco se sabe além de vagos anúncios que dão a entender que ele possuirá 8 núcleos nativamente, onde cada núcleo possuirá cache L1 e L2 próprios e todos compartilharão um grande cache L3 (o que reforça a tese do uso do design de 3 níveis no Nehalem) e de que ele será capaz de operar a 4.0 GHz ou mais. Essa última informação merece uma análise mais cuidadosa, pois 4 GHz não está muito acima dos processadores atuais. Como as versões iniciais do Penryn operarão na faixa dos 3.2 GHz, a meta de 4 GHz para o Sandy Bridge (que está duas gerações à frente) mostra que a própria Intel não acredita mais em grandes aumentos na freqüência de operação das próximas famílias de processadores e está por isso investindo no desenvolvimento de projetos com 4 e 8 núcleos, além do desenvolvimento de novos conjuntos de instruções 243
  • 244. (como o SSE4), novos compiladores e outras ferramentas que facilitem o desenvolvimento de softwares capazes de extrair ganhos reais de desempenho dos novos processadores. Uma coisa que está clara é que softwares não-otimizados, categoria que engloba a grande maioria dos programas que utilizamos hoje em dia, não rodarão muito mais rápido em um Nehalem ou Sandy Bridge do que rodam atualmente em um Core 2 Duo overclocado para 3.0 GHz ou mais. Será necessária toda uma safra de novos softwares para que o potencial de designs com 8 cores, como o Sandy Bridge, possa ser completamente explorado. Com o Sandy Bridge, já estamos em 2011. A partir deste ponto as informações oficiais acabam e passamos a depender apenas de especulações. Duas tendências que poderia antecipar, com uma razoável margem de certeza, são a introdução de uma técnica de fabricação de 22 nanômetros (0.022 micron) em algum ponto entre 2011 e 2013 e a introdução de chips "modulares", construídos a partir da combinação de um grande número de processadores x86, derivados da arquitetura do Nehalem e chips especializados em funções específicas, como processamento de vetores, unidades de processamento 3D (que complementarão, ou substituirão as placas 3D dedicadas) e assim por diante. Uma amostra deste "admirável mundo novo" foi a demonstração de um chip com 80 núcleos dada pela Intel em fevereiro de 2007, desenvolvido com o objetivo de oferecer 1 teraflop de poder de processamento. Cada um dos 80 núcleos é um chip relativamente simples, otimizado para processar instruções de ponto flutuante. Cada chip possui um "roteador" que o interliga aos vizinhos. Esta estrutura permite que as instruções sejam distribuídas entre os núcleos de forma bastante similar ao que acontece dentro de um cluster com várias máquinas. A principal diferença é que tudo é feito dentro de um único chip. Este slide exibido durante o Spring Intel Developer Forum de 2007 demonstra o conceito: 244
  • 245. Slide da Intel que demonstra o processador de 80 núcleos O chip de 80 núcleos é apenas um sistema de demonstração, que nunca virá a se tornar um produto. Embora o poder de processamento seja respeitável, a aplicação dele seria muito limitada, já que ele é capaz de processar apenas instruções de ponto flutuante. Futuros chips combinariam diversos tipos de unidades especializadas, formando chips capazes de executar todo tipo de instruções. O principal problema é que estes chips exigirão profundas modificações nos softwares, o que vai sem dúvida retardar sua popularização. Não é difícil de imaginar que eles serão introduzidos inicialmente como chips especializados, destinados a grandes servidores, para só depois de mais alguns anos descerem a pirâmide, chegando até os desktops. Phenom e Barcelona O Barcelona é o primeiro processador quad-core "nativo" desenvolvido pela AMD. Apesar de possuir nada menos do que 463 milhões de transístores, as versões iniciais do Barcelona ainda serão produzidas usando a técnica de 0.065 micron (65 nanômetros), mas a AMD pretende produzir versões de 0.045 micron a partir da segunda metade de 2008. Relembrando, os Athlons, Durons e Semprons de 32 bits fazem parte da plataforma K7, enquanto os Athlon 64, X2 e FX fazem parte da plataforma K8. Para evitar trocadilhos a AMD decidiu pular o "K9" (que é o nome de uma unidade de cães farejadores), de forma que o Barcelona e derivados formam a plataforma K10. Este diagrama, divulgado pela AMD, mostra detalhes sobre os componentes internos do processador: 245
  • 246. Componentes internos do Barcelona, com 4 núcleos e cache L3 compartilhado Como você pode ver, o Barcelona é composto por 4 núcleos idênticos, cada um contendo seu próprio cache L1 (de 128 KB, dividido em dois blocos de 64 KB, para dados e instruções) e 512 KB de L2. Entre os processadores temos os circuitos referentes ao Crossbar Switch (o componente responsável por dividir as requisições entre os dois cores e controlar o acesso de ambos ao controlador de memória, entre outras funções) e outros circuitos de gerenciamento. No centro temos o bloco referente ao controlador de memória (que é compartilhado por todos os núcleos) e do lado esquerdo temos o cache L3, também compartilhado pelos 4 núcleos. O Barcelona inclui também quatro links HyperTransport. Um é usado para a conexão com o chipset, enquanto os outros três ficam disponíveis para a comunicação com outros processadores, o que permite a criação de sistemas com dois ou até mesmo 4 processadores, cada um com 4 núcleos. À primeira vista, parece que o Barcelona é uma simples expansão do Athlon 64 X2, onde foram adicionados mais dois núcleos e o cache L3 compartilhado, de forma a produzir um sistema similar ao Quad-FX, porém composto de um único processador. Mas, uma análise mais minuciosa revela outras melhorias. Além de adicionar os dois núcleos adicionais, a AMD fez um trabalho de aperfeiçoamento no X2, eliminando gargalos e adicionando novos recursos, de forma a desenvolver um processador capaz de competir em pé de igualdade com o Kentsfield e o Penryn da Intel. 246
  • 247. A primeira mudança diz respeito ao processamento das instruções SSE, área onde o Conroe e os demais processadores baseados na plataforma Core superam o Athlon 64 por uma boa margem. O problema fundamental da arquitetura K8 neste quesito é o fato de serem utilizadas unidades SSE de 64 bits. Isso faz com que instruções SSE de 128 bits precisem ser divididas e processadas na forma de duas instruções de 64 bits separadas, que consomem dois ciclos de clock. Em comparação, o Conroe é equipado com unidades SSE de 128 bits, capazes de processar as instruções em um único ciclo. Embora isso tenha representado um grande aumento no volume de transístores do processador, a AMD conseguiu equilibrar a balança, também equipando o Barcelona com unidades SSE de 128 bits. A ampliação das unidades SSE foi acompanhada também por melhorias no cache e nos decodificadores. O K8 era capaz de realizar duas transferências de 64 bits por ciclo do cache L1 para as unidades SSE, e os decodificadores de instruções eram dimensionados para alimentar as unidades de execução com 16 bytes de instruções por ciclo. No Barcelona, as transferências do cache L1 para as unidades SSE passarem a ser de 128 bits e os decodificadores passaram a ser capazes de alimentar as unidades de execução com 32 bytes por ciclo, tudo dimensionado de forma a acompanhar a ampliação das unidades SSE. A AMD chama esse conjunto de melhorias de "SSE128". Você vai ver várias referências ao termo no material publicitário daqui em diante. Com relação ao acesso aos caches, o Barcelona continua sendo inferior ao Penryn e ao Conroe, já que eles possuem caches muito maiores. Ao optar por utilizar um controlador de memória integrado no K8 e, em seguida, por utilizar uma arquitetura quad-core no Barcelona, a AMD sacrificou um brutal número de transístores que de outra forma poderiam ser utilizados para incluir um grande cache L2, assim como nos processadores Intel. A principal arma do Barcelona contra as deficiências no cache é o controlador de memória integrado, que recebeu duas pequenas melhorias. Em primeiro lugar, em vez de um grande controlador de memória de 128 bits, que realiza acessos aos dois módulos de memória simultaneamente, ele passou a incluir dois controladores de 64 bits independentes. Isso representa uma pequena redução nos tempos de latência, pois duas leituras podem ser realizadas de forma independente, permitindo que sejam realizados dois acessos (de 64 bits) a endereços diferentes, ao invés de um único acesso (de 128 bits) a endereços sequenciais. Outra melhoria foi uma expansão dos buffers do controlador de memória, desenvolvida para tirar melhor proveito dos bursts oferecidos pelos módulos DDR2 e DDR3. Basicamente, os módulos de DDR2 e DDR3 oferecem taxas de transferência muito elevadas, mas em compensação trabalham com tempos de latência relativamente altos. Ao invés de realizar várias operações de escrita separadas (tendo que arcar com um lento acesso inicial para cada uma delas), o controlador pode acumular um certo volume de dados e escrevê-los de uma 247
  • 248. vez em um único burst de operações de escrita. Isso permite que as operações de escrita tomem menos tempo, deixando mais ciclos livres para as operações de leitura. Inicialmente o Barcelona incluirá um controlador de memória DDR2, mas a AMD já deixou o terreno pronto para o lançamento de futuras revisões do processador com suporte a memórias DDR3, que devem ser lançadas por volta do final de 2008. Em seguida temos as melhorias no funcionamento dos caches, desenvolvidas de forma a melhorar sua eficiência. Novos dados, selecionados pelo circuito de prefetch, são carregados diretamente para o cache L1, ao invés de passarem primeiro pelo cache L2, minimizando o tempo de acesso inicial. Nem todos os dados carregados pelo circuito de prefetch são úteis, já que ele trabalha tentando "adivinhar" de quais dados o processador precisará em seguida, mas o fato do processador possuir 128 KB de cache L1 permite que a AMD se dê ao luxo de armazenar alguns dados desnecessários de forma a acelerar o acesso aos demais. Conforme novos dados são carregados, informações antigas vão sendo descartadas. Entretanto, em vez de serem apagadas, as informações são movidas para o cache L2 e em seguida para o cache L3 compartilhado, onde podem ser recuperadas rapidamente caso sejam necessárias mais tarde. Ou seja, em vez de armazenar um grande volume de informações nos caches, como no caso dos processadores Intel, a AMD optou por usar um cache mais "fluído" onde é priorizado o tempo de acesso à novas informações. Combinadas com as melhorias no controlador de memória, este novo sistema tem tudo para oferecer um ganho de mais alguns pontos percentuais em relação ao desempenho dos Athlon X2. O uso de caches L1 e L2 independentes para cada núcleo permitiu que a AMD desenvolvesse um sistema de gerenciamento de energia bem mais eficiente que o do Kentsfield. Cada núcleo é basicamente independente dos demais, de forma que a freqüência de operação de cada um pode ser ajustada de forma independente. O processador pode manter apenas um dos núcleos ativo enquanto executa operações leves, por exemplo, mantendo os outros três operando a freqüências reduzidas. Esse sistema de gerenciamento independente é similar ao que a Intel pretende implantar no Nehalem, porém disponibilizado um ano antes. Outro pequeno conjunto de melhorias foi feito no circuito de branch prediction, responsável por "adivinhar" qual caminho o processador deve seguir enquanto não conhece o resultado de operações de tomada de decisão. Além de ter ganhado um circuito aprimorado, capaz de calcular o resultado de derivações indiretas (assim como no Conroe), o histórico de operações foi dobrado de tamanho. 248
  • 249. O histórico armazena os resultados de operações de tomada de decisão executadas anteriormente, informações que são usadas pelo circuito de branch prediction para prever o caminho mais provável para novas operações. Com um histórico maior, o circuito de branch prediction torna-se mais eficiente, embora seja muito difícil calcular o ganho baseado apenas em informações teóricas. As "derivações indiretas" (indirect branches) são usadas em funções que envolvem diversas possibilidades, como ao usar funções "case" ou "switch" em que o programador estabelece diversas possibilidades, de acordo com o resultado de uma condição. Como era de se esperar, essas operações representam um desafio muito maior para o circuito de branch prediction do que as funções "if", onde existem apenas duas possibilidades, mas prevê-las corretamente aumenta de forma considerável a eficiência do processador. O nome "Barcelona" é apenas o codenome do projeto, assim como no caso do Penryn e do Nehalem da Intel. As versões do Barcelona destinadas a servidores serão vendidas sob a marca "Opteron", enquanto as versões para PCs domésticos serão chamadas de "Phenom" (de "Phenomenal"). O nome tem justamente o objetivo de diferenciá-lo dos Athlons 64 e X2 e enfatizar que se trata de uma nova arquitetura. As versões desktop do Barcelona respondem pelos nomes de "Agena FX" (a versão com 4 cores, quase idêntica ao Barcelona destinado a servidores), "Agena" (uma versão quad-core levemente simplificada, sem os links HyperTransport usados em sistemas com dois processadores) e "Kuma" (uma versão simplificada, com apenas dois núcleos). Tanto o Agena quanto o Agena FX serão equipados com 128 KB de cache L1 e 512 KB de cache L2 por núcleo, além do cache L3 compartilhado de 2 MB. Assim como os processadores AMD anteriores, eles utilizam a arquitetura de cache exclusivo, onde os dados armazenados nos caches não são duplicados. Graças a isso, podemos dizer que eles possuem um total de 4.5 MB de cache. Apesar de possuírem apenas dois núcleos, os processadores baseados no core Kuma manterão o cache L3 de 2 MB. Combinado com as outras melhorias na arquitetura, a presença do cache L3 fará com que eles ofereçam um desempenho consideravelmente superior ao de um Athlon 64 X2 do mesmo clock. A AMD pretende lançar versões de até 2.6 GHz do Agena e Agena FX e versões de até 2.8 GHz do Kuma antes do final de 2007. Estão planejadas ainda novas versões do X2 e do Sempron, que respondem pelos codenomes "Rana" e "Spica", cujo lançamento está planejado para 2008. O Rana será uma versão de baixo custo do Kuma, baseado na arquitetura K10, mas desprovido do cache L3. Embora mais lento que um Kuma, o Rana superará os Athlon X2 baseados no core Brisbane devido às demais melhorias na arquitetura. O Spica, por sua vez, será uma versão single- core, que substituirá os Semprons baseados no core Sparta e anteriores. 249
  • 250. Com a introdução do Phenom, teremos uma mudança radical dentro da linha de processadores AMD e também um novo sistema de numeração dos processadores, que está sendo implantada aos poucos, ao longo da segunda metade de 2007. Em primeiro lugar, todos os processadores da linha Athlon 64 foram renomeados para apenas "Athlon", sem o "64". A AMD chegou à conclusão de que o "64" passou a ser redundante, já que a Intel também passou a incluir o suporte a instruções de 64 bits em todos os seus processadores. O "Athlon 64 X2" passou a se chamar apenas "Athlon X2". Com o lançamento do Phenom, o Athlon X2 assume a posição de processador "mainstream", e toda a linha de processadores Athlon single-core é descontinuada, mantendo apenas o Sempron como opção single-core de baixo custo, concorrendo diretamente com os Celerons 4xx da Intel. Entre os processadores high-end, temos três versões do Phenom: X4 (a versão original, com 4 núcleos), X2 (a versão com 2 núcleos) e o Phenom FX, a linha destinada a entusiastas, que substitui o Athlon 64 FX e o Quad-FX. Slide de divulgação da AMD mostrando a linha de processadores com o lançamento do Phenom O antigo índice de desempenho, que servia basicamente para comparar o desempenho dos processadores com modelos do Pentium 4, deixou de fazer 250
  • 251. sentido com o lançamento do Core 2 Duo, de forma que a AMD optou por descartá-lo em favor de um novo sistema de numeração (similar ao atualmente usado pela Intel), onde cada processador recebe um código de acordo com a sua "posição hierárquica", sem relação direta com o desempenho. Na nova terminologia, todos os processadores recebem um código composto por duas letras e quatro números, como em "BE-2300". A primeira letra indica a classe do processador, indicando se ele é um processador "premium", de alto desempenho, intermediário ou de baixo custo. A letra "G" é reservada para os processadores Phenom, a letra "B" é usada pelos Athlon X2 de clock mais alto, enquanto a letra "L" (de low-cost) é reservada aos Semprons e Athlon X2 mais lentos. Em seguida temos uma segunda letra que indica o consumo. A letra "P" (de "premium") é usada para processadores com TDP acima de 65 watts, a letra "S" (de "standard") indica processadores com TDP de 65 watts ou menos, enquanto a letra "E" (de "Energy Efficient") indica os processadores com TDP de 45 watts ou menos. Dentro dos quatro números, o primeiro indica a família à qual o chip pertence, onde um "7" indica que é um Phenom X4, um "6" indica que se trata de um Phenom X2, um "2" é usado no caso dos Athlon X2 e o "1" é reservado aos Semprons single-core. Os três números seguintes indicam a posição do chip dentro da família, como em "BE-2300", "BE-2350" e "BE-2400". Os números não são uma indicação direta do clock ou performance do processador, servem apenas para diferenciar os processadores dentro de uma mesma família. Os primeiros representantes da nova terminologia são os Athlon X2 BE-2300 (1.9 GHz, 2x 512 KB), BE-2350 (2.1 GHz, 2x 512 KB) e BE-2400 (2.3 GHz, 2x 512 KB), três processadores da série "Energy Efficient" (ainda baseados no core Brisbane), com TDP de apenas 45 watts, vendidos, nos EUA, por menos de US$ 100. Eles serão seguidos pelos Sempron LE-1100 (1.9 GHz), LE-1150 (2.0 GHz), LE-1200 (2.1 GHz), LE-1250 (2.2 GHz) e 1300 (2.3 GHz). Estes novos Semprons são baseados no core "Sparta", produzidos usando a técnica de 0.065 micron e se destinam a placas AM2 e AM2+. Se nada mudar nos planos da AMD, os Phenom X4 serão vendidos sob a série "GP-7xxx", e os Phenom X2 sob a série "GS-6xxx". Teremos ainda uma série de baixo custo do X2, a "LS-2xxx". Como você pode ver, a nova terminologia da AMD foi desenvolvida como resposta à terminologia adotada pela Intel com o Core 2 Duo, já que continuar usando o Pentium 4 (um processador ultrapassado) como parâmetro, não faria muito sentido. 251
  • 252. Toda a nova linha de processadores, incluindo os novos X2 e Semprons são chamados pela AMD de "Stars", mais um nome mercadológico. Todos os processadores da série Stars utilizarão placas AM2+, mas muitas das placas AM2 atuais também poderão ser usadas, depois de um upgrade de BIOS. A principal diferença entre o AM2 e o AM2+ é o suporte ao uso de tensões independentes para os núcleos do processador e os circuitos que formam o northbridge (dentro do processador) e outros dos recursos de economia de energia introduzidos com o Phenom. Outra novidade é o uso do HyperTransport 3.0, que opera a 2.0 GHz, o dobro da freqüência do HyperTransport 2.0 usando nas placas AM2. Ao usar uma placa AM2 "normal", esses recursos não são usados, fazendo com que o consumo elétrico e a dissipação do processador sejam mais altos e a comunicação entre ele e o chipset seja chaveada para o modo mais lento. As placas AM2+ também continuam sendo compatíveis com os processadores Athlon 64 e X2 antigos, já que não foi feita nenhuma mudança na pinagem, mas neste caso os novos recursos também ficam desativados. O soquete AM2+ permanecerá sendo o carro chefe da AMD até algum ponto entre a segunda metade de 2008 e a primeira metade de 2009, quando serão introduzidas as placas AM3, iniciando a transição para as memórias DDR3 do lado da AMD. Assim como fez anteriormente, o plano da AMD é deixar a Intel "dar a cara a tapa" iniciando a migração para as memórias DDR3, enquanto elas ainda são mais caras, e pegar carona depois que a tecnologia já estiver estabelecida e os preços já tiverem caído. As versões do Sempron e do Athlon 64 destinadas a placas soquete 754 e 939 já estavam sendo descontinuadas mesmo antes do lançamento dos novos processadores. O anúncio do Phenom só acelerou o processo. Continuando, o Phenom FX também utilizará um novo encaixe, o soquete 1207+ (ou F+), novamente uma versão atualizada do soquete F utilizado pelos Opterons e na plataforma Quad-FX atual. O Phenom FX dará origem também ao sucessor do Quad-FX, batizado de "FASN8" (pronuncia-se "fés-en-eight", alusão à palavra "fascinate"), onde são combinados dois Phenom X4 com uma placa dual soquete 1207+ e duas placas ATI Radeon HD 2900 XT em modo crossfire, resultando em um sistema com 8 núcleos. O FASN8 é um sistema "de vitrine", destinado a ganhar benchmarks e atrair a atenção do público entusiasta, mas vendido a um preço proibitivo. Chavões como "Phenomenal", "Fascinate" e "Stars" podem soar chamativos demais, mas lembre-se de que é preferível um bom processador com um nome ruim, do que o contrário :). 252
  • 253. Fusion Com a aquisição da ATI, a AMD deixou de ser apenas um fabricante de processadores e chips de memória flash para entrar no mundo das placas 3D e chipsets. A idéia principal por trás da aquisição é criar uma plataforma mais forte, onde a AMD possa produzir, além dos processadores, também chipsets competitivos e otimizados para eles, sem depender unicamente do trabalho de outros fabricantes, como a nVidia e a VIA. Embora não tenha fabricado uma só placa de vídeo offboard, desde 1998, quando lançou, sem sucesso, o chip i740, a Intel é atualmente o maior fabricante de chipsets de vídeo (em volume) com mais de 40% do mercado. Isso acontece porque, apesar de oferecerem um desempenho longe de ser fenomenal, as soluções de vídeo onboard da Intel são bastante populares. O mesmo fenômeno acontece (embora em menor grau) com todos os demais fabricantes de chipsets. Embora sejam mais lentas, as placas 3D onboard são de longe as mais populares, já que a integração com a placa-mãe as torna muito baratas. Com o Fusion, a AMD pretende levar a idéia ao próximo nível, integrando o chipset de vídeo ao próprio processador principal. Além da questão da integração e das otimizações relacionadas, a idéia oferece duas vantagens interessantes. A primeira é que, ao ser incluído no processador, o chipset de vídeo passa a ser produzido utilizando a mesma técnica de fabricação que ele, o que reduzirá o consumo e permitirá que opere a freqüências de clock mais elevadas. Tradicionalmente, as placas de vídeo são sempre produzidas utilizando técnicas de fabricação bastante antiquadas, sempre uma ou duas gerações atrás dos processadores. Em plena metade de 2007, a nVidia ainda fabrica seus chipsets 3D topo de linha usando uma técnica de 0.09 micron, enquanto tanto a Intel quando a AMD fabricam seus processadores usando a técnica de 0.065 micron, com a técnica de 0.045 já em vista. A segunda vantagem é que, dentro do processador, a GPU teria acesso ao controlador de memória integrado, o que permitiria o acesso à memória RAM compartilhada com tempos de latência mais baixo do que as soluções atuais, que o fazem através do barramento PCI Express ou AGP. Este slide da AMD mostra o conceito: 253
  • 254. Integração do processador e chipset de vídeo Se bem exploradas, estas duas vantagens poderiam permitir o desenvolvimento de chipsets de vídeo integrado com um desempenho compatível com o das placas offboard, mesmo utilizando memória compartilhada. Isto seria uma grande vantagem competitiva para a AMD, já que você passaria a ganhar uma boa placa 3D "de brinde" junto com o processador. Indo um pouco mais a fundo na idéia, chegamos a uma outra constatação. Embora fundamentalmente diferentes, o processador principal e a placa 3D são complementares. O processador principal é rápido ao processar instruções sequenciais, usadas pela maioria dos programas, enquanto a placa 3D é especializada em processar um grande volume de instruções paralelamente. O processador principal pode renderizar imagens em 3D (como ao rodar games 3D antigos, com renderização via software), mas é muito lento nesta tarefa, de forma que mesmo um humilde chipset de vídeo onboard é capaz de superar praticamente qualquer processador atual nesta tarefa. Da mesma forma, a placa 3D não é capaz de processar instruções sequenciais com um desempenho aceitável, de forma que depende do processador principal. Em um game 3D, o processador se encarrega de executar a engine, processar as respostas do AI e assim por diante, enquanto a placa 3D se encarrega de renderizar as imagens. Apesar disso, a arquitetura paralelizada dos chipsets de vídeo poderia ser muito bem usada para executar outras tarefas, como rodar algoritmos de renderização e compressão de vídeo e áudio em geral, que atualmente não são aproveitadas. 254
  • 255. Atualmente, ao assistir um filme em divx ou ripar um DVD, quase todo o processamento é feito pelo processador principal. Com o Fusion, a AMD pretende incluir algoritmos que permitam utilizar o processamento da GPU integrada para executar este tipo de tarefa, fazendo com que, mais do que ser simplesmente uma placa de vídeo integrada, ela possa melhorar o desempenho do sistema em aplicações diversas. Teríamos então novos conjuntos de instruções (similares ao SSE), que permitiriam que os programas utilizem o processamento da GPU integrada. As primeiras versões do Fusion serão compostas de dois componentes separados, um processador e um chipset de vídeo dentro do mesmo encapsulamento e interligados através de um link HyperTransport. A AMD planeja lançá-las ainda em 2008, mas elas não devem trazer grandes vantagens em relação a usar um processador e uma placa 3D offboard, com exceção de uma possível redução no custo. A coisa começa a ficar mais interessante a partir da segunda fase, quando os dois componentes são integrados no mesmo chip, permitindo um nível de otimização muito maior. A partir daí, o plano da AMD é fundir os dois componentes, produzindo processadores capazes de desempenhar simultaneamente as duas funções. Teríamos então processadores que, além das unidades de execução, unidades SSE e coprocessador aritmético, teriam unidades de processamento de mapas de texturas, vertex shaders e pixel shaders, como os incluídos nos chipsets de vídeo 3D. Esse nível de integração faz sentido sobretudo nos notebooks, pois tende a reduzir o consumo elétrico do equipamento, em relação ao uso de um processador e um chipset de vídeo separados, como atualmente. Nos desktops, a combinação de CPU e GPU pode trazer ganhos maiores do que o desenvolvimento de processadores com mais núcleos (de 4 para 8, por exemplo), já que o ganho de migrar para processadores com mais núcleos tende a ser cada vez menor. Um processador bem otimizado, com 2 núcleos e uma GPU embutida poderia se sair melhor que um processador com 4 núcleos e uma placa 3D offboard equivalente em diversas aplicações. É importante notar que a Intel está desenvolvendo uma solução similar para o Nehalem, que também terá uma GPU embutida, o que mostra que a fusão de processador e placa 3D pode estar mais próxima do que podemos imaginar. Capítulo 3: Placa-mãe e barramentos Um PC é composto por diversos componentes, incluindo o processador, pentes de memória, HD, placa de rede e assim por diante. No meio de tudo isso, temos a placa-mãe, que acaba sendo o componente mais importante. Ela não é apenas o componente mais complexo, mas também o que mais influencia a estabilidade e as possibilidades de expansão do sistema. 255
  • 256. No início, as placas-mãe serviam simplesmente como uma interface entre os demais componentes, uma placa de circuito sem vida própria. Com o passar do tempo, mais e mais componentes passaram a ser integrados à placa-mãe, dando origem às placas atuais, que incluem vídeo, som, rede e outros periféricos onboard. Inicialmente, as placas "tudo onboard" enfrentaram preconceito, mas no final acabaram virando norma. Naturalmente, componentes offboard de boa qualidade quase sempre superam os componentes onboard em desempenho, mas eles ganham na questão do custo, que acaba sendo o fator mais importante para a maioria. Com exceção dos mais abastados, ninguém compra "o melhor PC possível", mas simplesmente procura a melhor configuração dentro de um determinado orçamento. Para quem não pode gastar muito (a grande maioria), acaba fazendo mais sentido procurar uma placa-mãe de boa qualidade, aproveitando os componentes onboard e investindo o restante em mais memória, um HD de maior capacidade, uma placa 3D offboard, ou mesmo um processador um pouco mais rápido, de acordo com o perfil de uso. Os componentes O componente básico da placa-mãe é o PCB, a placa de circuito impresso onde são soldados os demais componentes. Embora apenas duas faces sejam visíveis, o PCB da placa-mãe é composto por um total de 4 a 10 placas (totalizando de 8 a 20 faces!). Cada uma das placas possui parte das trilhas necessárias, e elas são unidas através de pontos de solda estrategicamente posicionados. Ou seja, embora depois de unidas elas aparentem ser uma única placa, temos na verdade um sanduíche de várias placas. PCB 256
  • 257. Como o PCB é um dos componentes de mais baixa tecnologia, é comum que a produção seja terceirizada para países como a China, onde a mão de obra é mais barata. É por isso que muitas placas-mãe possuem um "made in China" decalcado em algum lugar da placa, mesmo que as demais etapas de produção tenham sido realizadas em outro lugar. A maior parte dos componentes da placa, incluindo os resistores, MOSFETs e chips em geral utilizam solda de superfície, por isso é muito difícil substituí-los manualmente, mesmo que você saiba quais são os componentes defeituosos. Os menores componentes da placa são os resistores e os capacitores cerâmicos. Eles são muito pequenos, medindo pouco menos de um milímetro quadrado e por isso são instalados de forma automatizada (e com grande precisão). As máquinas que fazem a instalação utilizam um conjunto de braços mecânicos e, por causa da velocidade, fazem um barulho muito similar ao de uma metralhadora. A "munição" (os componentes) também é fornecida na forma de rolos, onde os componentes são pré-posicionados entre duas folhas plásticas. Rolos com resistores e outros componentes Depois que todos os componentes são encaixados, a placa passa por um uma câmara de vapor, que faz com que os pontos de solda derretam e os componentes sejam fixados, todos de uma vez. 257
  • 258. Resistores, capacitores e cristal de clock Você pode diferenciar os resistores dos capacitores que aparecem na foto pela cor. Os resistores são escuros e possuem números decalcados, enquanto os capacitores são de uma cor clara. Estes pequenos capacitores são sólidos, compostos de um tipo de cerâmica. Eles são muito diferentes dos capacitores eletrolíticos (que veremos em detalhes a seguir) e possuem uma capacitância muito mais baixa. Outros componentes, como os slots, capacitores e a maior parte dos conectores utilizam o sistema tradicional, onde os contatos são encaixados em perfurações feitas na placa e a solda é feita na parte inferior. Na maioria dos casos, eles são instalados manualmente, por operários. É por isso que a maioria das fábricas de placas são instaladas em países da Ásia, onde a mão de obra é barata. No final da produção, a placa-mãe passa por mais uma máquina de solda, que fixa todos os componentes com contatos na parte inferior de uma só vez. Linha de montagem de placas-mãe 258
  • 259. Outro componente importante são os reguladores de tensão, cujo componente mais importante são os MOSFETs, que são transístores de uso externo, facilmente reconhecíveis pelo tamanho avantajado: MOSFETs Uma fonte ATX fornece tensões de 12V, 5V e 3.3V, sendo que a maioria dos componentes num PC atual utilizam tensões mais baixas, como os 1.5 ou 0.8V das placas AGP, 1.8V dos pentes de memória DDR2 e assim por diante. Os reguladores são os responsáveis por reduzir e estabilizar as tensões fornecidas pela fonte aos níveis corretos para os diversos componentes. Parte da energia é transformada em calor, de forma que os reguladores estão entre os componentes que mais esquentam numa placa atual. Em muitas placas, eles recebem dissipadores de alumínio e, em alguns casos, até mesmo coolers ativos. O volume e a capacidade dos reguladores de tensão são um quesito importante nas placas "premium", destinadas a suportarem grandes overclocks. Os reguladores de tensão são formados por um conjunto de MOSFETs, alguns capacitores, uma bobina e um controlador. Placas antigas utilizavam um único regulador de tensão, mas conforme os processadores foram evoluindo e passando a consumir cada vez mais energia, as placas passaram a utilizar reguladores divididos em "fases", onde temos vários reguladores de tensão trabalhando em paralelo, formando um sistema capaz de fornecer uma quantidade de energia muito maior e um fluxo mais estável. Tecnicamente, um regulador de tensão com mais fases é superior, já que o trabalho é dividido entre mais componentes. Isso permite que o regulador desperdice menos energia na forma de calor, ao mesmo tempo em que oferece um fluxo de energia mais estável para o processador. 259
  • 260. Placas atuais utilizam reguladores de tensão com 3, 4, 6 ou 8 fases. É fácil descobrir o número de fases do regulador da placa-mãe, pois cada fase é composta por um conjunto idêntico de componentes, que são instalados em série próximo ao encaixe do processador. Esta placa da foto, por exemplo, utiliza um regulador de tensão com 3 fases. Note a presença de 3 bobinas idênticas, cercadas por MOSFETs e capacitores na parte superior: Regulador de tensão de 3 fases Em teoria, uma placa com um regulador de 4 fases pode fornecer 33% mais energia para o processador do que um com 3 fases, e um de 8 fases pode fornecer o dobro que um de 4 fases. Naturalmente, o resultado final depende da qualidade e das especificações dos componentes usados, mas a regra geral é que quanto mais fases, maior é a capacidade de fornecimento da placa. A principal vantagem de usar uma placa com um regulador de tensão de 6 ou 8 fases, ao invés de uma com um regulador de 3 ou 4 fases, é a garantia de que a placa será capaz de manter um fornecimento estável em situações de stress, como ao fazer um overclock agressivo. O maior problema é que um número maior de fases faz com que a placa desperdice mais energia nos momentos de baixa atividade. A diferença entre usar uma placa com um regulador de tensão de 8 fases e outra similar, com um regulador de tensão de 4 fases pode chegar a mais de 6 watts enquanto o processador está ocioso. Não é uma diferença muito grande, mas não deixa de ser um fator a se levar em conta. Se você está comprando um processador de baixo consumo e não pretende fazer grandes overclocks, não existe necessidade de pagar mais caro por uma placa com um regulador de tensão de 8 fases. 260
  • 261. Em seguida, temos a questão estética. A fim de diferenciar seus produtos, cada vez mais fabricantes adotam cores alternativas no PCB das placas, como preto, azul, ou até mesmo vermelho, fugindo do verde tradicional. A cor tem apenas efeito decorativo, não é um indicador da qualidade da placa. Em muitos casos, o acabamento colorido acaba encarecendo o custo de produção, mas isso é problema do fabricante, não nosso. ;) Da mesma forma como a cor da placa, a cor dos slots pode variar. Os slots PCI, que são originalmente brancos, podem ser azuis numa placa da ECS ou amarelos numa DFI, por exemplo. As placas coloridas podem ser usadas para criar um visual diferente ao fazer um casemod. Continuando, existe uma regra geral de que, quanto mais baixa for temperatura de funcionamento, mais tempo os componentes dos PCs tendem a durar. De uma forma geral, um PC em que a temperatura dentro do gabinete fique em torno dos 35°C tente a apresentar menos defeitos e problemas de instabilidade e durar mais do que um onde a temperatura fique em torno dos 45°C, por exemplo. Naturalmente, existem exceções, já que no mundo real entram em cena os imprevistos do dia-a-dia e até mesmo falhas na produção dos componentes que abreviem sua vida útil. Mas, se você fizer um teste de maior escala, monitorando o funcionamento de 100 PCs de configuração similar ao longo de 5 anos, por exemplo, vai ver que uma diferença de 10 graus na temperatura influencia de forma significativa a vida útil. O principal motivo disso são os capacitores eletrolíticos, que são usados em profusão na placa-mãe, na placa de vídeo e em diversos outros componentes. Capacitores eletrolíticos 261
  • 262. Os capacitores permitem armazenar pequenas quantidades de energia, absorvendo variações na corrente e entregando um fluxo estável para os componentes ligados a ele. Você pode imaginar que eles atuam como pequenas represas, armazenando o excesso de água na época das chuvas e entregando a água armazenada durante as secas. Imagine uma situação em que o processador está em um estado de baixo consumo de energia e subitamente "acorda", passando a operar na freqüência máxima. Temos então um aumento imediato e brutal no consumo, que demora algumas frações de segundo para ser compensado. Durante esse período, são os capacitores que fornecem a maior parte da energia, utilizando a carga armazenada. Tanto o processador principal quanto a GPU da placa de vídeo e controladores responsáveis por barramentos diversos (PCI Express, AGP, PCI, etc.) são especialmente suscetíveis a variações de tensão, que podem causar travamentos e até mesmo danos. Basicamente, é graças aos capacitores que um PC pode funcionar de forma estável. Existem diversos tipos de capacitores. Os mais usados em placas-mãe e outros componentes são os capacitores eletrolíticos. Eles possuem uma boa capacidade e são muito baratos de se produzir, daí a sua enorme popularidade. O problema é que eles possuem uma vida útil relativamente curta, estimada em um período de 1 a 5 anos de uso contínuo, variando de acordo com a qualidade de produção e condições de uso. Entre os fatores "ambientais", o que mais pesa na conta é, justamente, a temperatura de funcionamento. Uma redução de 10 graus na temperatura interna do gabinete pode resultar num aumento de até 100% no tempo de vida útil dos capacitores, daí a recomendação de caprichar na ventilação e, caso necessário, instalar exaustores adicionais. Durante a década de 1990 existiram muitos casos de placas-mãe com capacitores de baixa qualidade (sobretudo em placas da PC-Chips, ECS, Soyo e da Abit), que falhavam depois de apenas um ou dois anos de uso. Recentemente, as coisas melhoraram, com os fabricantes percebendo que usar capacitores de baixa qualidade acaba causando mais prejuízo do que ganho. Infelizmente, como temos uma grande predominância de equipamentos de baixa qualidade aqui no Brasil, ainda é preciso ter cuidado. Com o passar do tempo, os capacitores eletrolíticos perdem progressivamente a sua capacitância, deixando os componentes desprotegidos. O capacitor passa então a atuar como um condutor qualquer, perdendo sua função. Sem a proteção proporcionada por ele, os circuitos passam a receber diretamente as variações, o que, além de abreviar sua vida útil, torna o sistema como um todo mais e mais instável. Como o processo é muito gradual, você começa notando travamentos esporádicos nos momentos de atividade mais intensa, que passam a ser mais e mais freqüentes, até chegar ao ponto em que você acaba sendo obrigado a 262
  • 263. trocar de placa-mãe, pois o micro simplesmente não consegue mais nem concluir o boot. Nesses casos, o defeito raramente é permanente, de forma que ao substituir os capacitores defeituosos, a placa volta a funcionar normalmente. É aí que entram os técnicos e as empresas que fazem manutenção de placas-mãe, substituindo capacitores e outros componentes defeituosos. Internamente, um capacitor eletrolítico é composto por duas folhas de alumínio, separadas por uma camada de óxido de alumínio, enroladas e embebidas em um eletrólito líquido (composto predominantemente de ácido bórico, ou borato de sódio), que acaba evaporando em pequenas quantidades durante o uso. Como o capacitor é hermeticamente selado, isto com o tempo gera uma pressão interna que faz com que ele fique estufado. Esse é o sinal visível de que o capacitor está no final de sua vida útil. Em alguns casos, o eletrólito pode vazar, corroendo as trilhas e outros componentes próximos e assim causando uma falha prematura do equipamento. Ao contrário de chips BGA e outros componentes que usam solda de superfície, os contatos dos capacitores são soldados na parte inferior da placa. Embora trabalhoso, é possível substituir capacitores estufados ou em curto usando um simples ferro de solda, permitindo consertar, ou estender a vida útil da placa. Aqui temos um caso dramático, de uma placa com diversos capacitores estufados, três deles já apresentando sinais de vazamento: Capacitores estufados e com sinais de vazamento Atualmente, cada vez mais fabricantes estão passando a oferecer placas com capacitores de estado sólido (chamados de Conductive Polymer Aluminum), onde a folha de alumínio banhada no líquido eletrolítico é substituída por uma 263
  • 264. folha de material plástico (um polímero) contendo um eletrolítico sólido de alumínio. Por não conterem nenhum tipo de líquido corrosivo, estes capacitores não são susceptíveis aos problemas de durabilidade que caracterizam os capacitores eletrolíticos. Embora mais duráveis, os capacitores de estado sólido são mais caros que os capacitores eletrolíticos. Como o uso deles aumenta em até US$ 10 o custo de produção da placa (o que acaba causando um aumento de até 20% no preço final), eles são oferecidos apenas em placas "premium", desenvolvidas para o público entusiasta. Com o passar do tempo, entretanto, o uso tende a se tornar mais comum. Os capacitores de estado sólido podem ser diferenciados dos eletrolíticos facilmente, pois são mais compactos e possuem um encapsulamento inteiriço: Capacitores de estado sólido 264
  • 265. BIOS O BIOS contém todo o software básico, necessário para inicializar a placa-mãe, checar os dispositivos instalados e carregar o sistema operacional, o que pode ser feito a partir do HD, CD-ROM, pendrive, ou qualquer outra mídia disponível. O BIOS inclui também o Setup, o software que permite configurar as diversas opções oferecidas pela placa. O processador é programado para procurar e executar o BIOS sempre que o micro é ligado, processando-o da mesma forma que outro software qualquer. É por isso que a placa-mãe não funciona "sozinha", você precisa ter instalado o processador e os pentes de memória para conseguir acessar o Setup. :) Por definição, o BIOS é um software, mas, como de praxe, ele fica gravado em um chip espetado na placa-mãe. Na grande maioria dos casos, o chip combina uma pequena quantidade de memória Flash (256, 512 ou 1024 KB), o CMOS, que é composto por de 128 a 256 bytes de memória volátil e o relógio de tempo real. Nas placas antigas era utilizado um chip DIP, enquanto nas atuais é utilizado um chip PLCC (plastic leader chip carrier), que é bem mais compacto: Chip PLCC que armazena o BIOS da placa-mãe O CMOS serve para armazenar as configurações do setup. Como elas representam um pequeno volume de informações, ele é bem pequeno em capacidade. Assim como a memória RAM principal, ele é volátil, de forma que as configurações são perdidas quando a alimentação elétrica é cortada. Por isso, toda placa-mãe inclui uma bateria, que mantém as configurações quando o micro é desligado. A mesma bateria alimenta também o relógio de tempo real (real time clock), que, apesar do nome pomposo, é um relógio digital comum, que é o 265
  • 266. responsável por manter atualizada a hora do sistema, mesmo quando o micro é desligado. Se você prestou atenção nos três parágrafos anteriores, deve estar se perguntando por que as configurações do Setup não são armazenadas diretamente na memória Flash, em vez de usar o CMOS, que é volátil. Isso seria perfeitamente possível do ponto de vista técnico, mas a idéia de usar memória volátil para guardar as configurações é justamente permitir que você possa zerar as configurações do Setup (removendo a bateria, ou mudando a posição do jumper) em casos onde o micro deixar de inicializar por causa de alguma configuração incorreta. Um caso clássico é tentar fazer um overclock muito agressivo e o processador passar a travar logo no início do boot, sem que você tenha chance de entrar no setup e desfazer a alteração. Atualmente basta zerar o setup para que tudo volte ao normal, mas, se as configurações fossem armazenadas na memória Flash, a coisa seria mais complicada. Para zerar o CMOS, você precisa apenas cortar o fornecimento de energia para ele. Existem duas formas de fazer isso. A primeira é (com o micro desligado) remover a bateria da placa-mãe e usar uma moeda para fechar um curto entre os dois contatos da bateria durante 15 segundos. Isso garante que qualquer carga remanescente seja eliminada e o CMOS seja realmente apagado. A segunda é usar o jumper "Clear CMOS", que fica sempre posicionado próximo à bateria. Ele possui duas posições possíveis, uma para uso normal e outra para apagar o CMOS ("discharge", ou "clear CMOS"). Basta mudá-lo de posição durante 15 segundos e depois recolocá-lo na posição original. Uma dica é que muitas placas vêm de fábrica com o jumper na posição "discharge", para evitar que a carga da bateria seja consumida enquanto a placa fica em estoque. Ao montar o micro, você precisa se lembrar de verificar e, caso necessário, mudar a posição do jumper, caso contrário a placa não funciona, ou exibe uma mensagem de erro durante o boot e não salva as configurações do Setup. 266
  • 267. Jumper Clear CMOS Como todo software, o BIOS possui bugs, muitos por sinal. De tempos em tempos, os fabricantes disponibilizam versões atualizadas, corrigindo problemas, adicionando compatibilidade com novos processadores (e outros componentes) e, em alguns casos, adicionando novas opções de configuração no Setup. É muito comum que você precise atualizar o BIOS da placa para que ela funcione em conjunto com novos processadores, de fabricação mais recente que a placa-mãe. Atualizar o BIOS consiste em dar boot através de um disquete ou CD-ROM, contendo o software que faz a gravação, indicar a localização do arquivo com a nova imagem e deixar que ele regrave a memória Flash com o novo código. O primeiro passo é visitar a área de suporte ou downloads do site do fabricante e procurar por atualizações para a sua placa-mãe. Se você usa Windows, aproveite para verificar se não estão disponíveis novas versões dos drivers, que também podem corrigir problemas e adicionar novos recursos. Por exemplo, uma Asus K8N4-E SE, que testei certa vez, tinha um problema estranho com a placa de rede, que parava de funcionar aleatoriamente depois de algumas horas de uso contínuo, que foi solucionado com a atualização do BIOS da versão 0106 para a 0110. Para baixar o arquivo, acessei a área de download do site da Asus (http://support.asus.com/download/) e, no menu de busca por atualizações, selecionei as opções "Motherboard > Socket 754 > K8N4-E SE > BIOS", chegando ao arquivo: 267
  • 268. Muitos fabricantes ainda disponibilizam disquetes de boot, contendo uma versão reduzida do FreeDOS ou MS-DOS, mas muitos já passaram a disponibilizar CDs de boot (basta gravar a imagem .iso usando o Nero, K3B ou outro programa de gravação e dar boot), o que elimina a necessidade de ter que instalar um drive de disquetes na máquina só para poder atualizar o BIOS. Uma idéia nova, que foi inaugurada pela Asus e vem sendo adotada por cada vez mais fabricantes, é incluir o utilitário de atualização diretamente no próprio BIOS. Nesse caso, você só precisa pressionar uma combinação de teclas durante o boot e indicar a localização do arquivo de atualização. Na maioria das placas, ele precisa ser gravado num disquete ou CD-ROM (você precisa queimar um CD, colocando o arquivo no diretório raiz), mas algumas já suportam também o uso de pendrives e cartões de memória instalados com a ajuda de um adaptador USB. Na maioria dos casos, você pode acessar o utilitário de atualização pressionando ALT+F2 durante a contagem de memória. Em muitas placas, a opção também fica disponível através do Setup. Nas placas da Asus, por exemplo, ela fica dentro do menu "Tools". Dentro do programa, basta indicar o arquivo a ser gravado. Eles geralmente possuem em torno de 512 KB e utilizam a extensão ".BIN" ou ".ROM": 268
  • 269. Atualização de BIOS Atualizar o BIOS é sempre um procedimento potencialmente perigoso, já que sem ele a placa não funciona. Na grande maioria dos casos, o programa também oferece a opção de salvar um backup do BIOS atual antes de fazer a atualização. Esse é um passo importante, pois se algo sair errado, ou você tentar gravar uma atualização para um modelo de placa diferente, ainda restará a opção de reverter o upgrade, regravando o backup da versão antiga. A maioria das placas atuais incorpora sistemas de proteção, que protegem áreas essenciais do BIOS, de forma que, mesmo que acabe a energia no meio da atualização, ou você tente gravar o arquivo errado, a placa ainda preservará as funções necessárias para que você consiga reabrir o programa de gravação e terminar o serviço. Em alguns casos, a placa chega a vir com um "BIOS de emergência", um chip extra, com uma cópia do BIOS original, que você pode instalar na placa em caso de problemas. Placas antigas não possuem essas camadas de proteção, de forma que um upgrade malsucedido podia realmente inutilizar a placa. Nesses casos, a solução era remover o chip e levá-lo a alguém que tivesse um gravador de EEPROM. Depois de regravado, o chip era reinstalado na placa e tudo voltava ao normal. Ou seja, mesmo nesses casos, a placa não era realmente danificada, ficava apenas "fora de serviço". Um truque muito usado era utilizar uma placa-mãe igual, ou pelo menos de modelo similar, para regravar o BIOS da placa danificada. Nesses casos, você dava boot com o disquete ou CD de atualização (na placa boa), removia o chip com o BIOS e instalava no lugar o chip da placa danificada (com o micro ligado), dando prosseguimento ao processo de regravação. Dessa forma, você usava a placa "boa" para regravar o BIOS da placa "ruim". Naturalmente, a 269
  • 270. troca precisava ser feita com todo o cuidado, já que um curto nos contatos podia inutilizar a placa-mãe. Concluindo, existem também programas de gravação para Windows, que são incluídos nos CDs de drivers de muitas placas. Eles são mais fáceis de usar, mas fazer a atualização através deles é considerado menos seguro, já que, dentro do Windows e com outros programas e serviços rodando, a possibilidade de algo inesperado acontecer é maior. Hoje em dia, a maioria dos dispositivos incluindo o HD, drive óptico, placa wireless e placa de vídeo possuem um software de inicialização, similar ao BIOS da placa-mãe. Ele pode ser gravado diretamente no dispositivo, em um chip de memória Flash, ou mesmo em algum tipo de memória ROM, ou ser incorporado ao driver. Essa segunda solução vem sendo cada vez mais adotada pelos fabricantes, pois permite eliminar o chip de memória, reduzindo o custo. É por isso que, muitas vezes (sobretudo ao tentar ativar sua placa wireless ou scanner no Linux), você precisa baixar, além do driver ou módulo necessário, também os arquivos que compõem o firmware da placa. Formatos O formato AT foi introduzido junto com os micros 286, onde a placa-mãe media nada menos que 36 x 32 cm. Placas tão grandes acabam sendo caras de se produzir, de forma que pouco depois, em 1986, foi introduzido o formato Baby- AT, em que a placa mede apenas 24 x 33 cm. O formato Baby-AT teve uma sobrevida surpreendente. Além de ser utilizado nas placas para micros 286, 386, 486 e Pentium, ele também foi utilizado nas placas Super 7, usadas nos micros K6-2 e K6-3, que foram produzidas até o final de 2002. A principal característica das placas Baby-AT é que, com exceção do teclado, todos os conectores são presos no gabinete e ligados à placa-mãe através de cabos flat, o que tornava a montagem dos micros um pouco mais trabalhosa e contribuía para o amontoamento de cabos dentro do gabinete, prejudicando a ventilação. Elas também utilizavam, tipicamente, conectores DIN para o teclado, em vez dos conectores mini-DIN usados atualmente. Para ligar um teclado atual, você precisaria usar um adaptador. 270
  • 271. Amontoado de cabos flat num micro com placa Baby-AT Existiram também placas Baby-AT de tamanho reduzido, com 24 x 24 ou mesmo 22 x 22 cm, geralmente chamadas de micro-AT ou 2/3-Baby. Esse formato foi extremamente popular nas placas soquete 7. Em seguida temos o formato ATX, que marca o início da era atual. O ATX foi desenvolvido pela Intel e introduzido juntamente com os primeiros micros Pentium II. O formato ATX trouxe um conjunto de modificações importantes. A mais visível delas é o painel traseiro, que concentra os conectores do teclado, mouse, porta serial, portas USB e também os conectores do vídeo, som e rede onboard. Painel ATX Junto com o formato ATX, foi introduzido um novo padrão de fontes de alimentação, em que a fonte passou a fornecer também a tensão de 3.3V, 271
  • 272. utilizada por diversos componentes e não mais apenas os 12V e 5V das fontes AT. O formato do conector foi alterado e as fontes ATX incorporaram contatos adicionais, que permitem que a fonte seja ligada e desligada via software. Todas essas modificações tornaram os antigos gabinetes AT obsoletos. Inicialmente, os gabinetes ATX eram bem mais caros, mas conforme o formato se popularizou, os preços foram caindo, até chegar ao patamar atual. Uma curiosidade é que o padrão ATX original previa o uso de um design de pressão positiva, em que o exaustor da fonte soprava o ar para dentro do gabinete e não para fora, como nos micros atuais. A idéia era reduzir o acúmulo de poeira dentro do gabinete, já que o ar sairia (em vez de entrar) pelas aberturas do gabinete. O problema era que esse design prejudicava a ventilação, já que o ar era aquecido pelos circuitos da fonte e então soprado sobre os demais componentes. O sistema funcionou bem em conjunto com os primeiros processadores Pentium II, que trabalhavam a freqüências relativamente baixas e geravam pouco calor, mas passou a causar problemas de superaquecimento conforme o clock dos processadores foi aumentando. Nos gabinetes atuais, a fonte sopra o ar para fora e existe espaço para adicionar três exaustores adicionais. Um atrás, logo abaixo da fonte de alimentação (que também deve soprar o ar para fora), um na parte frontal do gabinete e outro na lateral (sobre o processador), que devem soprar o ar para dentro. Gabinete ATX Na maioria dos gabinetes novos é utilizado um tubo plástico na abertura sobre o processador, que canaliza o ar externo até o cooler do processador, fazendo 272
  • 273. com que o ar seja "puxado" para dentro do gabinete. Esse design melhora a circulação de ar, sem a necessidade de instalar um cooler adicional. Existem três tamanhos de placas ATX. As placas ATX tradicionais, também chamadas de Full ATX medem 30.5 x 24.4 cm. Este formato é geralmente reservado às placas mais caras, que trazem 6 ou 7 slots de expansão. Em seguida temos o formato Mini ATX, onde a placa é mais "fina", medindo apenas 28.4 x 20.8 cm. Finalmente, temos o Micro ATX, o formato mais comum, usado nas placas de baixo custo, onde a placa mede apenas 24.4 x 24.4 cm. Os três formatos são intercompatíveis, de forma que você pode perfeitamente instalar uma placa Micro ATX em um gabinete Full ATX. A grande maioria dos gabinetes suporta o uso de qualquer um dos três formatos de placas, mas os gabinetes mais compactos geralmente oferecem uma ventilação ruim. Todos os tamanhos especificados são medidas máximas, que asseguram que as placas funcionem em qualquer gabinete. Nada impede que os fabricantes desenvolvam placas menores (o que é muito comum), desde que a furação da placa continue compatível. É muito comum ver placas Micro ATX com apenas 20.8, ou mesmo 19.8 cm de largura. Produzir placas menores permite reduzir os custos de produção das placas mais simples. Existe ainda o formato Flex ATX, um formato miniaturizado, onde a placa mede apenas 22.9 x 19.1 cm. Este formato foi introduzido pela Intel em 1999, para o desenvolvimento de PCs compactos e de baixo custo. Existem ainda os formatos de placas miniaturizadas, originalmente introduzidos pela VIA. O mais popular deles é o mini-ITX, atualmente também usado em placas de outros fabricantes, incluindo até mesmo a Intel. As placas Mini-ITX medem apenas 17x17 cm, o que as torna realmente muito pequenas se comparadas a uma placa mini-ATX típica. Elas são muito procuradas por quem quer montar um servidor doméstico ou um media-center. Esta da foto é uma Albatron KI690, uma placa soquete AM2, baseada no chipset AMD 690G. Como você pode notar, o tamanho reduzido obrigou os projetistas a fazerem um conjunto de concessões. Ela utiliza módulos de memória SODIMM de notebook, que são mais compactos e inclui um único slot PCI: 273
  • 274. Placa mini-ITX Além do mini-ITX, a VIA fabrica dois formatos ainda mais miniaturizados, chamados de nano-ITX e pico-ITX. Estas placas utilizam processadores VIA C7 de baixo consumo e são extremamente econômicas do ponto de vista do consumo elétrico. As placas pico-ITX (o menor dos dois formatos) medem apenas 10 x 7.2 cm! Apesar disso elas são extremamente incomuns, pois são caras e (devido ao uso dos processadores C7) o desempenho é ruim. 274
  • 275. Placa Pico-ITX Em 2003 a Intel tentou introduzir um novo formato, o BTX. Nele, tanto a placa- mãe quanto o gabinete são maiores e o fluxo de ar dentro do gabinete é otimizado, de forma a melhorar a ventilação sobre o processador. Um módulo de retenção preso ao gabinete melhorava a fixação da placa-mãe e permitia o uso de dissipadores maiores e mais pesados. Na época, a Intel estava empenhada em lançar versões mais rápidas do Pentium 4, de forma que o padrão BTX foi desenvolvido tendo em mente processadores beberrões, que consumissem acima de 150 watts e utilizassem coolers gigantescos. Com o lançamento da plataforma Core e a ênfase em processadores eficientes, de baixo consumo, a plataforma BTX foi silenciosamente abandonada. Barramentos Os barramentos são utilizados para interligar os diferentes componentes da placa-mãe e também permitir o uso de placas de expansão. Assim como os demais componentes, os barramentos evoluíram de forma expressiva durante as últimas décadas, passando do ISA e das portas seriais, aos slots PCI Express e portas USB 2.0, que utilizamos atualmente. Não poderia ser diferente, pois o uso de um barramento lento cria um gargalo, que limita o desempenho dos componentes ligados a ele. Uma placa Gigabit Ethernet é capaz de transmitir dados a 1000 megabits, o que equivale a 125 MB/s. A grande maioria das placas Gigabit Ethernet atuais são ligadas no barramento PCI Express, que é capaz de alimentar a placa com um volume de dados mais do que suficiente. 275
  • 276. Imagine agora que um fabricante resolvesse produzir placas Gigabit Ethernet em versão ISA, destinadas a micros antigos. Não existe nenhuma restrição técnica que realmente impeça o desenvolvimento de uma placa gigabit em versão ISA. O problema é que a placa ficaria limitada à velocidade oferecida pelo barramento e não seria capaz de operar a mais do que uma fração do seu desempenho real. Na melhor das hipóteses, ela transmitiria dados a pouco mais de 5 MB/s, o que representa apenas 4% do seu desempenho nominal. Infelizmente, novos barramentos são quase sempre incompatíveis com os antigos. É por isso que de tempos em tempos acabamos sendo obrigados a descartar alguma placa antiga, para a qual ainda teríamos utilidade, ao trocar de placa-mãe. Foi assim com as placas de som e modems ISA e, em breve, acontecerá também com nossas placas de rede, placas de captura e outros periféricos PCI. É o preço a se pagar pela evolução da tecnologia. ISA O ISA foi o primeiro barramento de expansão utilizado em micros PC. Existiram duas versões: os slots de 8 bits, que foram utilizados pelos primeiros PCs e os slots de 16 bits, introduzidos a partir dos micros 286. Embora fossem processadores de 16 bits, os 8088 comunicavam-se com os periféricos externos utilizando um barramento de 8 bits, daí o padrão ISA original também ser um barramento de 8 bits. Inicialmente, o barramento ISA operava a apenas 4.77 MHz, a freqüência de clock do PC original, mas logo foi introduzido o PC XT, onde tanto o processador quanto o barramento ISA operavam a 8.33 MHz. Com a introdução dos micros 286, o barramento ISA foi atualizado, tornando-se o barramento de 16 bits que conhecemos. Na época, uma das prioridades foi preservar a compatibilidade com as placas antigas, de 8 bits, justamente por isso os pinos adicionais foram incluídos na forma de uma extensão para os já existentes. Como você pode ver na foto, o slot ISA é dividido em duas partes. A primeira, maior, contém os pinos usados pelas placas de 8 bits, enquanto a segunda contém a extensão que adiciona os pinos extra: 276
  • 277. Slots ISA Uma coisa que chama a atenção nos slots ISA é o grande número de contatos, totalizando nada menos que 98. Por serem slots de 16 bits, temos apenas 16 trilhas de dados, as demais são usadas para endereçamento, alimentação elétrica, sinal de clock, refresh e assim por diante. Este esquema mostra a função de cada um dos pinos em um slot ISA. Como você pode ver, não é exatamente uma implementação "simples e elegante", mas enfim, funcionava e era o que estava disponível na época: Cada um destes pinos podia ser controlado individualmente, via software e muitas placas não utilizavam todos os pinos do conector, por isso era comum que periféricos mais simples, como placas de som e modems viessem com 277
  • 278. alguns dos contatos "faltando". Outra curiosidade é que, justamente por serem fáceis de programar, as controladoras ISA foram as preferidas por programadores que trabalham com automatização e robótica durante muito tempo. Quando as placas-mãe com slots ISA começaram a desaparecer do mercado, alguns chegaram estocá-las :). Apesar de toda a complexidade, o barramento ISA é incrivelmente lento. Além de operar a apenas 8.33 MHz, são necessários tempos de espera entre uma transferência e outra, de forma que, na prática, o barramento funciona a apenas metade da freqüência nominal. Dessa forma, chegamos a uma taxa de transmissão teórica de 8.33 MB/s (no ISA de 16 bits). Como existe um grande overhead causado pelo protocolo usado, na prática acaba sendo possível obter pouco mais de 5 MB/s de taxa de transferência real. Periféricos "rápidos", como placas de vídeo, placas de rede e interfaces IDE migraram rapidamente para barramentos mais rápidos conforme eles foram sendo introduzidos. Mas, o ISA continuou sendo suficiente para periféricos lentos, como modems, placas de som e alguns outros dispositivos. Isso acabou fazendo com que o ISA tivesse uma sobrevida assustadora. Por volta do final de 2003 ainda era possível encontrar placas-mãe novas, destinadas a processadores Pentium III e K6-2, que ainda ostentavam um ou dois slots ISA. Muitas delas continuam em uso até os dias de hoje. Com relação à parte prática, uma das principais características das placas ISA era a presença de jumpers, que permitiam definir os endereços de IRQ, DMA e I/O usados pela placa. Em um PC com vários periféricos, os valores precisam ser ajustados com cuidado, já que duas placas configuradas para utilizar o mesmo endereço entravam em conflito, fazendo com que ambas não funcionassem corretamente. Mais tarde, surgiu o padrão ISA plug-and-play, onde a configuração de endereços é feita pelo BIOS durante o boot. Ele verifica quais endereços estão 278
  • 279. ocupados por outros dispositivos e tenta atribuir os endereços livres aos novos periféricos instalados, evitando conflitos. Com a introdução das placas ISA plug-and-play, as placas antigas, configuradas via jumper passaram a ser chamadas de placas legacy ISA. É relativamente incomum encontrar alguma em uso hoje em dia, mesmo ao trabalhar com micros antigos. Os mais comuns são modems, já que os antigos modems ISA trabalham via hardware e por isso oferecem vantagens sobre os softmodems atuais. Como costumo dizer, os modems (discados) são possivelmente a única classe de periféricos que regrediu de 10 anos pra cá. MCA, EISA e VLB Com o surgimento dos processadores 386, que trabalhavam usando palavras binárias de 32 bits, tornou-se necessária a criação de um barramento mais rápido que o ISA para o uso de periféricos como placas de vídeo e HDs, que logo passaram a ter seu desempenho severamente limitado por ele. A primeira resposta veio por parte da IBM, que desenvolveu o barramento MCA. Ele era bastante avançado para a época: além de ser um barramento de 32 bits, ele operava a 10 MHz, o que resultava numa taxa de transferência teórica de 32 MB/s. Ele também foi o primeiro barramento a suportar plug-and- play (oito anos antes do lançamento do Windows 95) e a suportar bus mastering, o que permitia que o HD e outros periféricos transferissem dados diretamente para a memória RAM (ao carregar um programa, por exemplo), deixando o processador livre para executar outras tarefas. Isso tornava o sistema bem mais responsível em relação às máquinas equipadas com placas ISA. O sistema de plug-and-play do MCA funcionava com o uso de dois disquetes. O "reference disk" continha um programa de configuração, que alterava a distribuição dos endereços e outras configurações do BIOS e era fornecido junto com o micro. Ao comprar qualquer periférico MCA, você recebia um "option disk", que era carregado com a ajuda do primeiro disquete, configurando a placa. Uma vez feita, a configuração se tornava permanente e você não precisava mais se preocupar. Embora rudimentar, este sistema já seguia a mesma lógica da instalação de drivers, que temos nos dias de hoje. O grande problema é que o MCA era um padrão proprietário, de forma que tanto outros fabricantes de PCs quanto fabricantes de periféricos precisariam licenciar a tecnologia e pagar royalties para produzir produtos compatíveis. A IBM tentou usar o barramento como uma arma estratégica para recuperar o terreno perdido para outros fabricantes. Surgiu então a linha IBM PS/2, uma família de micros 386 que, além do MCA, incorporava várias outras inovações importantes. O problema é que os demais fabricantes não gostaram da idéia e a IBM acabou isolada, tendo que arcar sozinha com o desenvolvimento e a produção das placas de expansão. Embora possuíssem diversas vantagens, o fato dos IBM PS/2 possuírem apenas slots MCA acabou se tornando mais um problema do que uma vantagem, já que isso os tornava incompatíveis com as 279
  • 280. placas ISA, que eram mais baratas e populares. No final, o MCA acabou se revelando um grande fracasso. Inicialmente, os demais fabricantes continuaram produzindo micros 386 e 486 utilizando apenas periféricos ISA, o que resultava em limitações óbvias, sobretudo com relação ao desempenho do HD e vídeo, o que os tornava praticamente inutilizáveis para edição de imagens e vídeo, por exemplo, onde os Macs dominavam. Por utilizarem o mesmo barramento dos micros 286 (também chamados de PC-AT), eles eram chamados de "AT 386" ou "AT 486". O "AT" nesse caso indica uma limitação e não um recurso extra. :) Não demorou para que a Compaq desenvolvesse o EISA e abrisse as especificações para os demais fabricantes, criando uma entidade sem fins lucrativos para impulsionar seu desenvolvimento. O EISA é um barramento peculiar. As dimensões são as mesmas de um slot ISA de 16 bits, porém o slot é mais alto e possui duas linhas de contatos. A linha superior mantém a mesma pinagem de um slot ISA de 16 bits, de forma a manter a compatibilidade com todos os periféricos, enquanto a linha inferior inclui 90 novos contatos, utilizados pelas placas de 32 bits. As placas ISA atingiam apenas os contatos superficiais do conector, enquanto as placas EISA utilizavam todos os contatos. Embora o uso de tantos contatos esteja longe de ser uma solução elegante, é preciso admitir que o EISA foi uma solução engenhosa para o problema da compatibilidade: Aqui temos os contatos de uma placa de vídeo EISA, que mostra a organização na prática: 280
  • 281. Os slots EISA eram tipicamente marrons, por isso lembram um pouco um slot AGP, embora bem maiores: Slot EISA Assim como o ISA, o barramento EISA operava a 8.33 MHz. Entretanto, a transferência de 32 bits por ciclo e a eliminação dos tempos de espera entre um ciclo e outro faziam com que ele fosse até 4 vezes mais rápido. O EISA acabou tendo uma vida curta, pois em 1993 surgiu o VLB (VESA Local Bus), outro padrão aberto de barramento de 32 bits, que conseguia ser muito mais rápido, trabalhando a uma freqüência nominal de 33 MHz e oferecendo taxas de transferência teóricas de até 133 MB/s. Inicialmente o VLB (ou VESA, como é chamado por muitos) surgiu como barramento próprio para a conexão da placa de vídeo. Nesta época, o Windows 3.11 e os aplicativos gráficos já eram populares, de forma que existia uma grande demanda por placas de vídeo mais rápidas. O "rápido" que menciono aqui é a simples capacidade de atualizar a tela em tempo real enquanto edita uma imagem no Photoshop, não tem nada a ver com aceleração 3D ou exibição de vídeo em alta resolução, como temos hoje em dia :). Além de serem muito lentas, as placas de vídeo ISA eram limitadas à exibição de apenas 256 cores. Graças à boa velocidade, o VLB acabou tornando-se o padrão também para outros periféricos, como controladoras IDE e SCSI. Novamente, existiu a preocupação de manter compatibilidade com as placas ISA, de forma que os slots VLB são na verdade uma expansão, onde temos um slot ISA tradicional, seguido por um segundo conector, que inclui os pinos adicionais: 281
  • 282. Slots VLB Isso rendeu o apelido de "Very Long Bus" (barramento muito comprido ;) e trouxe uma série de problemas de mal contato, já que se a placa-mãe não estivesse muito bem presa ao gabinete, a pressão necessária para encaixar as placas faziam com que a placa envergasse, comprometendo o encaixe. A grande pressão necessária acabava danificando os contatos com o tempo, o que, combinada com a oxidação natural, acabava fazendo com que muitas placas realmente deixassem de funcionar depois de removidas e reinstaladas algumas vezes. O VLB é um barramento local, onde os contatos são ligados diretamente aos pinos do processador. Esse design simples barateava a produção das placas- mãe, mas fazia com que a utilização do processador fosse relativamente alta e não fosse possível utilizar mais do que 3 placas VLB no mesmo micro. O VLB se tornou rapidamente o padrão de barramento para placas para micros 486, mas acabou desaparecendo com a introdução do barramento PCI. Uma curiosidade é que as primeiras placas para micros Pentium (a primeira geração, que oferecia suporte apenas aos Pentium de 60 e 75 MHz) chegaram a incluir slots VLB, utilizando uma versão adaptada do barramento. PCI Embora fosse relativamente rápido, o VLB estava longe de ser perfeito. Em 1992 foi introduzido o barramento PCI, que manteve a mesma freqüência de operação, mas incorporou suporte nativo a plug-and-play e bus mastering, além de romper os laços de legado com o ISA, o que simplificou muito a pinagem do barramento. O PCI opera nativamente a 33 MHz, o que resulta em uma taxa de transmissão teórica de 133 MB/s. Entretanto, assim como em outros barramentos, a freqüência do PCI está vinculada à freqüência de operação da placa-mãe, de forma que, ao fazer overclock (ou underclock) a freqüência do PCI acaba também sendo alterada. Em uma placa-mãe soquete 7 antiga, que opera a 66 MHz, o PCI opera à metade da freqüência da placa-mãe. Ao fazer overclock para 75 ou 83 MHz, o PCI e todas as placas conectadas a ele passam a operar a respectivamente 37.5 MHz e 41.5 MHz. Isto acabava resultando em um ganho expressivo de 282
  • 283. desempenho, já que, além do processador, temos ganhos de desempenho também em outros componentes. Conforme a freqüência das placas foi subindo, passaram a ser utilizados divisores cada vez maiores, de forma a manter o PCI operando à sua freqüência original. Em uma placa-mãe operando a 133 MHz, a freqüência é dividida por 4 e, em uma de 200 MHz, é dividida por 6. Como você pode notar, o barramento PCI tem se tornado cada vez mais lento com relação ao processador e outros componentes, de forma que com o passar do tempo os periféricos mais rápidos migraram para outros barramentos, como o AGP e o PCI-Express. Ou seja, a história se repete, com o PCI lentamente se tornando obsoleto, assim como o ISA há uma década atrás. Slots PCI e slot AGP Uma das principais vantagens do PCI sobre os barramentos anteriores é o suporte a Bus Mastering. Tanto o EISA quanto o VLB ofereciam um sistema de Bus Mastering rudimentar, mas o recurso acabou não sendo muito utilizado por um conjunto de fatores, incluindo as dificuldades no desenvolvimento dos drivers. Apenas com o PCI foi criado um padrão realmente confiável, que foi adotado em massa pelos fabricantes. O Bus Mastering é um sistema avançado de acesso direto à memória, que permite que HDs, placas de vídeo e outros periféricos leiam e gravem dados diretamente na memória RAM, deixando o processador livre. Um dos melhores exemplos é quando o sistema está ocupado inicializando vários programas simultaneamente. O HD precisa transferir grandes quantidades de arquivos e bibliotecas para a memória, a placa de vídeo precisa exibir as telas de progresso e atualizar a tela, enquanto o processador fica ocupado processando as configurações e outras informações necessárias ao carregamento dos programas. Graças ao Bus Mastering, um micro atual ainda continua respondendo aos movimentos do mouse e às teclas digitadas no teclado, os downloads e transferências de arquivos através da rede não são interrompidos e assim por diante, muito diferente dos micros antigos que 283
  • 284. literalmente "paravam" durante transferências de arquivos e carregamento dos programas. Complementando, temos a questão do plug-and-play. Atualmente, estamos acostumados a instalar o dispositivo, instalar os drivers e ver tudo funcionar, mas antigamente as coisas não eram assim tão simples, de forma que o plug- and-play foi tema de grande destaque. Tudo começa durante a inicialização do micro. O BIOS envia um sinal de requisição para todos os periféricos instalados no micro. Um periférico PnP é capaz de responder ao chamado, permitindo ao BIOS reconhecer os periféricos PnP instalados. O passo seguinte é criar uma tabela com todas as interrupções disponíveis e atribuir cada uma a um dispositivo. O sistema operacional entra em cena logo em seguida, lendo as informações disponibilizadas pelo BIOS e inicializando os periféricos de acordo. As informações sobre a configuração atual da distribuição dos recursos entre os periféricos são gravadas em uma área do CMOS chamada de ESCD. Tanto o BIOS (durante o POST) quanto o sistema operacional (durante a inicialização) lêem essa lista e, caso não haja nenhuma mudança no hardware instalado, mantêm suas configurações. Isso permite que o sistema operacional (desde que seja compatível com o PnP) possa alterar as configurações caso necessário. No Windows 95/98, o próprio usuário pode alterar livremente as configurações do sistema através do gerenciador de dispositivos, encontrado no ícone sistema, dentro do painel de controle. Na maioria das placas-mãe, você encontra a opção "Reset ESCD" ou "Reset Configuration Data" que, quando ativada, força o BIOS a atualizar os dados da tabela, descartando as informações anteriores. Em muitos casos, isso soluciona problemas relacionados à detecção de periféricos, como, por exemplo, ao substituir a placa de som e perceber que a nova não foi detectada pelo sistema. Nos micros atuais, os conflitos de endereços são uma ocorrência relativamente rara. Na maioria dos casos, problemas de detecção de periféricos, sobretudo no Linux, estão mais relacionados a problemas no ACPI, à falta de drivers ou à falta de suporte por parte dos drivers existentes. O ACPI é o responsável não apenas pelo suporte a economia de energia (incluindo o ajuste dinâmico da freqüência do processador), mas também pela inicialização de vários periféricos. É comum, por exemplo, que a placa wireless não seja detectada, ou que você não consiga ativar o transmissor usando os botões até que instale o driver ou utilitário fornecido pelo fabricante. No Acer 5043 (e outros modelos similares), por exemplo, você só consegue ativar o transmissor da placa wireless depois de instalar o Acer Launch Manager. Em placas antigas, que ainda possuem slots ISA, existe um complicador adicional, já que placas legacy ISA (as configuradas via jumper) não são detectadas pelo BIOS e por isso não entram na tabela de endereços, o que pode fazer com que os endereços usados por elas sejam atribuídos a outras placas, causando conflitos, como nos velhos tempos. 284
  • 285. Para evitar esse problema, é preciso reservar manualmente os endereços de IRQ e DMA ocupados por periféricos ISA de legado através da sessão "PNP/PCI Setup" do Setup. Se, por exemplo, você tiver uma placa de som não PnP, que esteja configurada para utilizar o IRQ 5 e os canais de DMA 1 e 5, você deverá reservar os três canais, para que o BIOS não os atribua a nenhum outro periférico. O Windows (desde o 95) inclui algumas rotinas que permitem identificar estes periféricos antigos de maneira indireta, configurando-os e salvando as configurações no ESCD. A verificação é feita durante a instalação e através do utilitário "Adicionar novo Hardware". Apesar de não ser infalível, esse recurso permite diminuir bastante os conflitos gerados por periféricos antigos. PC Card (PCMCIA) O padrão PCMCIA surgiu em 1990 como um padrão para a expansão de memória em notebooks. A idéia era permitir a instalação de memória RAM adicional sem precisar abrir o notebook e instalar novos módulos o que, na maioria dos modelos da época, era bem mais complicado do que hoje em dia. Em 1991 foi lançado o padrão 2.0, que previa a conexão de outros periféricos, como modems, placas de rede, placas de som, adaptadores de cartões e assim por diante. Ironicamente, o padrão PCMCIA foi rapidamente adotado pelos principais fabricantes, tornando-se o barramento de expansão mais usado nos notebooks, mas nunca chegou a ser realmente utilizado para atualização de memória, como originalmente proposto. :) A partir da versão 2.0, o padrão também mudou de nome, passando a se chamar oficialmente "PC Card". Apesar disso, o nome "PCMCIA" acabou pegando e, embora não seja mais o nome oficial do padrão, é usado por muita gente. Tecnicamente, "PCMCIA" é o nome da associação de fabricantes, enquanto "PC Card" é o nome do barramento, mas, na prática, os dois acabam sendo usados como sinônimos. Existem duas versões do barramento PC Card. O padrão original era baseado em uma versão "modernizada" do barramento ISA, que operava a 10 MHz (sem tempos de espera), transmitindo 16 bits por ciclo, resultando em um barramento de 20 MB/s. Em 1995 foi lançada uma versão atualizada, baseada no barramento PCI, que continua em uso até os dias de hoje. O novo padrão preservou a compatibilidade com as placas antigas, de forma que você pode continuar utilizando modems e placas de rede PC Card antigas, mesmo em um notebook atual. :) Naturalmente, o oposto não é verdadeiro, de forma que as placas de 32 bits não funcionam nos notebooks antigos, embora o encaixe seja o mesmo. É fácil diferenciar os dois tipos, pois as placas de 32 bits possuem uma decoração dourada no encaixe. Aqui temos duas placas de 16 bits (um modem e uma placa wireless) e uma placa de rede de 32 bits no centro, que podemos diferenciar pela presença do detalhe dourado: 285
  • 286. Placas PC Card de 16 bits e placa de 32 bits (no centro) A maioria dos notebooks fabricados até 2002 possui dois slots PC Card, mas, a partir daí, a grande maioria dos fabricantes passou a oferecer um único slot, de forma a cortar custos. Como os notebooks passaram a vir "completos", com rede, som, modem e placa wireless e cada vez mais periféricos passaram a utilizar as portas USB, as placas PC Card se tornaram realmente um item relativamente raro, dando uma certa razão aos fabricantes. Uma curiosidade é que alguns notebooks, sobretudo alguns modelos da HP, trazem dois encaixes PC Card, mas apenas um deles é utilizável. O slot superior não possui os contatos e é parcialmente bloqueado, de forma que você não pode utilizá-lo para instalar uma segunda placa. O motivo do espaço reservado é preservar a compatibilidade com as placas PC Card tipo 3, um padrão de placas com o dobro da espessura, que ocupam o espaço de dois slots. Este padrão foi desenvolvido para permitir a criação de HDs PC Card (com discos de 1.8") e outros periféricos maiores, que não caibam dentro de uma placa tradicional, tipo 2. Existiu ainda um padrão de placas mais finas (tipo 1), que foi desenvolvido para o uso dos cartões de expansão de memória, mas que também nunca foi muito utilizado. O PC Card é um barramento plug-and-play, de forma que você pode conectar e desconectar as placas com o micro ligado. Elas são detectadas automaticamente pelo sistema, da mesma forma que os periféricos USB. Ao usar o Windows, você precisa apenas fornecer os drivers, como de praxe. No caso do Linux os drivers para placas compatíveis são, em sua maioria, incorporados diretamente ao Kernel. Existem ainda adaptadores, que permitem instalar uma placa PC Card em um slot PCI, permitindo sua instalação em um desktop. Durante uma certa época, estes adaptadores foram usados por muitas placas wireless, já que, como a 286
  • 287. demanda por placas PCI era pequena, muitos fabricantes preferiam fabricar apenas placas PC Card e transformá-las em placas PCI vendendo-as em conjunto com o adaptador. Com a popularização e o barateamento das placas wireless PCI, estes adaptadores saíram de moda: Adaptador PC Card > PCI Atualmente, os slots e as placas PC Card estão sendo lentamente substituídos pelos Express Card, assim como as placas PCI estão sendo substituídas pelas PCI Express. No caso dos notebooks, as mudanças tendem a ser mais rápidas, de forma que os slots PC Card podem desaparecer dos modelos novos mais rápido do que se espera. AMR e CNR A grande maioria dos chipsets atuais incluem interfaces de rede e áudio onboard. Muitos incluem também um modem integrado. Ao contrário da placa de rede, que trabalha utilizando sinais digitais, tanto a placa de som quanto o modem utilizam saídas analógicas, o que significa que além dos controladores são necessários os componentes necessários para a conversão digital/analógico e analógico/digital. Muitos fabricantes consideram mais simples separar os componentes analógicos em uma placa externa, o que ajuda a eliminar problemas de interferência e permite que eles sejam alterados ou mesmo removidos sem precisar mexer no resto da placa. Usar placas PCI ou PCI Express completas seria muito dispendioso, de forma que acabaram sendo desenvolvidos os slots AMR (Audio Modem Raiser) e 287
  • 288. CNR (Communications and Networking Riser), que são barramentos mais simples e baratos, designados especificamente para a tarefa. Os slots AMR e CNR são encontrados principalmente nas placas da PC-Chips, ECS e Phitronics, usados para o modem fornecido junto com a placa. A PC- Chips é uma subsidiária da ECS e a Phitronics é a marca usada pelas placas fabricadas no Brasil, de forma que as placas das três marcas são muito semelhantes e compartilham os mesmos componentes básicos. Como você pode ver, o "modem" CNR é bem simples, contendo apenas o relay, alguns varistores e os dois chips (HSP e DAA) que fazem a interface com a linha telefônica. Os modelos AMR são muito similares, mudando apenas a pinagem do encaixe: Modem e slot CNR Embora menos comum, os modems AMR ou CNR podem ser encontrados também em algumas placas de outros fabricantes que oferecem modem onboard, como algumas placas da AsRock. Também existem placas de som CNR, fornecidas junto com algumas placas atuais. Normalmente, elas são usadas em placas que oferecem áudio de 6 canais e/ou saídas digitais, já que é difícil integrar todos os conectores e os demais componentes necessários na própria placa-mãe. Estas placas costumam ser bem mais complexas e, devido à similaridade do encaixe, são às vezes confundidas com placas PCI Express: 288
  • 289. Placa de som CNR Note que as placas AMR e CNR são atreladas à placa-mãe, já que são apenas um complemento para os componentes integrados na placa. Não espere que o modem ou a placa de som CNR fornecida com uma placa-mãe funcione em outra. Coincidências acontecem, mas nem sempre. :) Um outro padrão similar é o ACR. Ele é um padrão aberto, desenvolvido por uma associação de fabricantes (incluindo a AMD, VIA, nVidia, Motorola e outros), que oferecia a vantagem de permitir o uso de outros dispositivos, além de placas de som e modems. O ACR utiliza o mesmo encaixe dos slots PCI, mas ele é invertido e colocado numa posição diferente para evitar confusão. O ACR foi utilizado em placas de diversos fabricantes, entre eles alguns modelos da Asus, Leadtek, MSI e Chaintech, mas apenas durante um curto espaço de tempo, entre o final de 2002 e início de 2003, desaparecendo em seguida. Alguns dizem que o ACR é um padrão proprietário da Asus, mas essa informação é incorreta. É bastante improvável que você venha a ter em mãos uma placa com o ACR, de forma que o cito aqui apenas como curiosidade. Slot ACR e slots PCI 289
  • 290. AGP Embora seja mais recente que o PCI e tenha sido largamente utilizado, o AGP é atualmente um barramento em vias de extinção, devido à popularização do PCI-Express. Desde o final de 2006, placas novas com slots AGP são um item raro, com exceção de algumas placas da PC-Chips, ECS e Phitronics. A idéia central do AGP é ser um barramento rápido, feito sob medida para o uso das placas 3D de alto desempenho. A versão original do AGP foi finalizada em 1996, desenvolvida com base nas especificações do PCI 2.1. Ela operava a 66 MHz, permitindo uma taxa de transferência teórica de 266 MB/s. Na época, as placas 3D ainda eram bastante primitivas, de forma que ainda não existia uma demanda tão grande por um barramento mais rápido. Por causa disso, o AGP demorou um pouco para se popularizar. O primeiro chipset com suporte a ele foi o Intel i440LX, lançado no final de 1997, e a adoção ocorreu de forma gradual durante 1998 e 1999. O padrão AGP inicial não chegou a ser muito usado, pois em 1998 surgiu o padrão AGP 2X, que mantém a freqüência de 66 MHz, mas introduz o uso de duas transferências por ciclo (assim como nas memórias DDR), dobrando a taxa de transferência. Em seguida foi introduzido o AGP 4X e o 8X, que realizam, respectivamente, 4 e 8 transferências por ciclo, atingindo taxas de transferência teóricas de 1066 e 2133 MB/s. O desempenho de uma placa 3D é fortemente atrelado à velocidade de acesso à memória. Mais de 95% das informações que compõem uma cena 3D de um game atual são texturas e efeitos, que são aplicados sobre os polígonos. As texturas são imagens 2D, de resoluções variadas que são "moldadas" sobre objetos, paredes e outros objetos 3D, de forma a criar um aspecto mais parecido com uma cena real. A velocidade do barramento AGP é importante quando o processador precisa transferir grandes volumes de texturas e outros tipos de dados para a memória da placa de vídeo, quando a memória da placa se esgota e ela precisa utilizar parte da memória principal como complemento e também no caso de placas de vídeo onboard, que não possuem memória dedicada e, justamente por isso, precisam fazer todo o trabalho usando um trecho reservado da memória principal. Naturalmente, tudo isso também pode ser feito através do barramento PCI. O problema é que a baixa velocidade faz com que a queda no desempenho seja cada vez maior, conforme cresce o desempenho da placa de vídeo. Durante muito tempo, fabricantes como a nVidia e a ATI continuaram oferecendo suas placas também em versão PCI, mas a partir de um certo ponto, a diferença de desempenho entre as duas versões passou a ser 290
  • 291. tamanha que, por mais que ainda existisse uma certa demanda, as placas PCI foram sumariamente descontinuadas. Outra vantagem do AGP é que o barramento é reservado unicamente à placa de vídeo, enquanto os 133 MB/s do barramento PCI são compartilhados por todas as placas PCI instaladas. Note que existe uma diferença entre barramento e slot. Uma placa de vídeo onboard é apenas um chip instalado na placa-mãe, ou mesmo um componente integrado diretamente ao chipset e não uma "placa" propriamente dita. Mesmo assim, ela pode ser ligada ao barramento AGP, utilizando uma conexão interna. É muito comum ainda que a placa-mãe inclua um chipset de vídeo onboard e, ao mesmo tempo, um slot AGP, que permite instalar uma placa offboard. Neste caso, entretanto, a placa onboard é desativada ao instalar uma placa offboard, já que o AGP não pode ser compartilhado pelas duas placas. Assim como no caso do barramento PCI, a freqüência do barramento AGP está atrelada à freqüência de operação da placa-mãe, de forma que, ao fazer overclock aumentando a freqüência do FSB, a freqüência do barramento AGP sobe na mesma proporção, o que, a partir de um certo ponto pode causar problemas de estabilidade. Entretanto, aumentar a freqüência do AGP não tem uma relação direta com o desempenho da placa de vídeo, pois as placas atuais utilizam um circuito de clock próprio e por isso não são influenciadas por mudanças na freqüência do barramento. Aumentando a freqüência do AGP, melhoramos apenas o fluxo de dados entre a placa de vídeo, memória e processador, o que tem pouco efeito nas placas atuais, com slots AGP 4X ou 8X. Além da questão da velocidade, existe também a questão da tensão utilizada. O padrão AGP 1.0 previa placas AGP 1X e 2X, que utilizam tensão de 3.3V. O padrão AGP 2.0, finalizado em 1998, introduziu o AGP 4X e a tensão de 1.5V (utilizada pelas placas atuais), quebrando a compatibilidade com o padrão antigo. Placas de vídeo que utilizam sinalização de 3.3V (como a nVidia TNT2, à esquerda na foto a seguir) possuem o chanfro do encaixe posicionado ao lado esquerdo, enquanto nas placas que utilizam 1.5V, ele é posicionado à direita. A maioria das placas AGP fabricadas de 2003 em diante são "universais" e podem ser utilizadas tanto nas placas-mãe antigas, com slots de 3.3V, quanto nas placas com slots de 1.5V. Elas possuem os dois chanfros (como a ATI Radeon, à direita na foto), o que permite que sejam encaixadas em qualquer slot: 291
  • 292. Placa AGP de 3.3V e placa AGP universal A mesma distinção existe no caso das placas-mãe. Placas antigas, que utilizam slots de 3.3V possuem o chanfro à esquerda, enquanto as placas com slots de 1.5V utilizam o chanfro posicionado à direita, como nestes dois exemplos: Placa com slot AGP de 3.3V e placa com slot de 1.5V Existem ainda placas com slots AGP universais, em que o slot não possui chanfro algum e por isso permite a instalação de qualquer placa. Nesse caso a placa-mãe é capaz de detectar a tensão utilizada pela placa e fornecer a tensão adequada. Elas são mais raras, pois a necessidade de instalar tanto os circuitos reguladores para 1.5V quanto para 3.3V, encarece a produção: 292
  • 293. Slot AGP universal Existe ainda o padrão AGP 3.0, utilizado pelas placas AGP 8X (e parte das 4X), que prevê o uso de sinalização de 0.8V. Nesse caso, entretanto, a transição foi feita de forma transparente, sem que fosse quebrada a compatibilidade com as placas antigas. Ao ser instalada em uma placa-mãe com slot AGP 2.0 (2X ou 4X, 1.5V) a placa de vídeo funcionará normalmente, utilizando sinalização de 1.5V e o modo de transferência mais rápido, entre os suportados pela placa- mãe. Caso a placa de vídeo utilize um conector AGP universal, com os dois chanfros, significa que ela pode (pelo menos em teoria), ser instalada mesmo em uma placa-mãe antiga, com um slot de 3.3V. Usei o termo "em teoria", pois existem muitos casos de incompatibilidades entre placas de vídeo AGP de fabricação mais recente e placas-mãe antigas (e vice-versa), mesmo em casos em que os encaixes são compatíveis. Além dos problemas relacionados a deficiências nos drivers e incompatibilidade por parte do BIOS, existem problemas relacionados à alimentação elétrica, onde a placa de vídeo não indica corretamente qual é a tensão utilizada (fazendo com que a placa-mãe utilize 1.5V para uma placa que trabalhe com 3.3V, por exemplo) ou que a placa-mãe não seja capaz de alimentar a placa de vídeo com energia suficiente. Esse último caso é o mais comum, já que as placas AGP mais recentes consomem muito mais energia que as antigas. O padrão AGP 3.0 inclui como pré-requisito que a placa-mãe seja capaz de fornecer 41 watts de energia para a placa de vídeo. O padrão AGP 2.0 fala em 25 watts, enquanto muitas placas antigas fornecem ainda menos. Com a corrida armamentista, entre a nVidia e a ATI, o clock e, conseqüentemente o consumo elétrico das placas de vídeo cresceu de forma exponencial. Já se foi o tempo em que a placa de vídeo utilizava um simples dissipador passivo e consumia menos de 10 watts. Muitas das placas atuais superam a marca dos 293
  • 294. 100 watts de consumo e algumas chegam a ocupar o espaço equivalente a dois slots da placa-mãe devido ao tamanho do cooler, como no caso desta ATI X850 AGP: Pensando nessas placas mais parrudas, foi criado o padrão AGP Pro, que consiste no uso de 48 contatos adicionais, utilizados para reforçar o fornecimento elétrico do slot. O padrão AGP Pro50 prevê o fornecimento de 50 watts, enquanto o AGP Pro110 eleva a marca para 110 watts. Slot AGP Pro Graças aos pinos adicionais os slots AGP Pro são bem maiores que um slot AGP tradicional. As placas de vídeo AGP Pro também são incompatíveis com os slots AGP tradicionais (justamente devido à diferença no fornecimento elétrico) e o uso de slots AGP Pro encarece o custo das placas-mãe, já que os fabricantes precisam adicionar trilhas e reguladores de tensão adicionais. Devido à combinação desses fatores, o padrão AGP Pro nunca chegou a se popularizar. Os fabricantes de placas de vídeo hesitavam em adotar o novo padrão enquanto não houvesse um volume significativo de placas-mãe compatíveis no mercado, enquanto os fabricantes de placas-mãe resolveram 294
  • 295. esperar até que existisse um volume significativo de placas de vídeo AGP Pro. Ou seja, o tradicional problema do ovo e da galinha. Com o impasse, os fabricantes de placas de vídeo decidiram adotar uma solução mais simples, onde os reguladores de tensão necessários são incluídos na placa de vídeo e ela passa a obter a energia adicional diretamente da fonte de alimentação, através de um conector molex padrão, do mesmo tipo utilizado pelo HD. Conector de força auxiliar (à direita) Com o advento das placas PCI Express, foi desenvolvido inclusive um novo conector de energia específico para a placa de vídeo, com 6 pinos. A capacidade de fornecimento do slot (no PCI Express) também foi ampliada, o que faz com que um número menor de placas de vídeo precisem do conector de energia externo. Um slot PCI Express 16X pode fornecer até 70 watts, quase 75% mais que um slot AGP 8X. Como é caro incluir simultaneamente o barramento PCI Express e o AGP na mesma placa-mãe, os slots AGP desapareceram das placas novas assim que o PCI Express se tornou popular. A principal exceção ficou por parte da ECS/PC-Chips, que encontrou uma forma "criativa" de incluir um conector AGP em placas com slot PCI-Express, criando o AGP Express (ou AGPro), que aparece na foto da estranha placa que combina o slot AGP com um PCI Express que usei a pouco. :) O AGP surgiu como uma evolução do PCI. Apesar do aumento na freqüência, ele mantém a mesma sinalização básica, de forma que, apesar da grande diferença de velocidade, os dois barramentos são semelhantes. O slot AGP Express nada mais é do que um slot AGP conectado ao barramento PCI, que combina a alimentação elétrica de dois slots PCI (e os reguladores de tensão apropriados) para fornecer a quantidade necessária de eletricidade à placa AGP. Naturalmente, esta solução implica em uma grande perda de performance, já que a placa de vídeo passa a dispor dos reles 133 MB/s (compartilhados) oferecidos pelo barramento PCI, em vez dos 2133 MB/s do AGP 8X, tendo seu 295
  • 296. desempenho drasticamente reduzido. Além disso, essa quase gambiarra cria problemas de compatibilidade com diversas placas AGP, fazendo que muitas combinações simplesmente não funcionem e os problemas de instabilidade sejam comuns. Outra solução híbrida é o AGI, que pode ser encontrado em algumas placas da ASRock, como a 939Dual-SATA2. No AGI é utilizado um bridge, ou seja, um chip conversor de sinais para ligar um slot AGP ao barramento PCI-Express. Essa solução também está longe de ser 100% compatível, mas garante um desempenho muito próximo do obtido ao usar um slot AGP 8X "de verdade". Concluindo, existiu também o "Ultra-AGPII", uma solução desenvolvida pela SiS para uso de placas de vídeo onboard. No Ultra-AGPII, temos um barramento interno de 3.2 GB/s, interligando o chipset de vídeo e a memória principal. Como disse, o desempenho dos chipsets de vídeo onboard é pesadamente limitado pela velocidade de acesso à memória, de forma que ampliá-lo resulta sempre em algum ganho de desempenho. No caso da SiS, entretanto, o próprio chipset gráfico onboard era muito fraco, de forma que a melhora no barramento não chegou a fazer uma diferença tão grande assim. O Ultra-AGPII pode ser encontrado apenas em placas com chipset SiS e é exclusivo para o uso do vídeo onboard. Ao utilizar uma placa AGP offboard, a comunicação passa a ser feita através do barramento AGP 8X tradicional. 296
  • 297. PCI Express Ao longo da história da plataforma PC, tivemos uma longa lista de barramentos, começando com o ISA de 8 bits, usado nos primeiros PCs, passando pelo ISA de 16 bits, MCA, EISA, e VLB, até finalmente chegar no barramento PCI, que sobrevive até os dias de hoje. O PCI é um barramento de 32 bits, que opera a 33 MHz, resultando em uma banda total de 133 MB/s, compartilhada entre todos os periféricos ligados a ele. O PCI trouxe recursos inovadores (para a época), como o suporte a plug-and-play e bus mastering. Comparado com os barramentos antigos, o PCI é bastante rápido. O problema é que ele surgiu no começo da era Pentium, quando os processadores ainda trabalhavam a 100 MHz. Hoje em dia temos processadores na casa dos 3 GHz e ele continua sendo usado, com poucas melhorias. Por ser compartilhado entre todos os dispositivos ligados a ele, o barramento PCI pode ser rapidamente saturado, com alguns dispositivos rápidos disputando toda a banda disponível. O barramento se torna então um gargalo, que limita o desempenho global do PC. A fase mais negra da história do barramento PCI foi durante a época das placas soquete 7 (processadores Pentium, Pentium MMX, K6 e 6x86), quando o barramento PCI era o responsável por praticamente toda a comunicação entre os componentes do micro, incluindo todos os periféricos, a comunicação entre a ponte norte e ponte sul do chipset, as interfaces IDE, etc. Até mesmo o antigo barramento ISA era ligado ao PCI através do PCI-to-ISA bridge (ponte PCI-ISA), um controlador usado nos chipsets da época. Isso fazia com que o barramento ficasse incrivelmente saturado, limitando severamente o desempenho do micro. Eram comuns situações onde o desempenho do HD era limitado ao rodar games 3D, pois a placa de vídeo saturava o barramento, não deixando espaço suficiente para os demais componentes. A história começou a mudar com o aparecimento do barramento AGP. Ele desafogou o PCI, permitindo que a placa de vídeo tivesse seu próprio barramento rápido de comunicação com o chipset. O AGP matou dois coelhos com uma cajadada só, pois permitiu o aparecimento de placas 3D absurdamente mais rápidas e desafogou a comunicação entre os demais componentes. Rapidamente todas as placas de vídeo passaram a utilizá-lo, com os fabricantes oferecendo versões PCI apenas dos modelos mais simples. O passo seguinte foi a criação de barramentos dedicados pra a comunicação entre os diversos componentes do chipset (como o DMI, usado em chipsets Intel, e o HyperTransport), fazendo com que as interfaces IDE ou SATA e outros componentes também ganhassem seu canal exclusivo. O PCI passou então a ser exclusividade das próprias placas PCI. 297
  • 298. O problema é que, mesmo desafogado, o PCI é muito lento para diversas aplicações. É lento demais para ser utilizado por placas de rede Gigabit Ethernet (embora seja suficiente na teoria, na prática a história é um pouco diferente, devido ao compartilhamento da banda), por placas SCSI modernas, ou mesmo por placas RAID e controladoras eSATA. Além disso, os slots PCI utilizam um número muito grande de trilhas na placa-mãe, o que é dispendioso para os fabricantes. Existiram tentativas de atualização do PCI, como o PCI de 64 bits, o PCI de 66 MHz e o PCI-X, que além de ser um barramento de 64 bits, trabalha a 133 MHz, resultando num barramento de 1024 MB/s. Em termos de velocidade, o PCI-X supriria as necessidades dos periféricos atuais, o problema é que, devido ao grande número de contatos e ao tamanho físico dos slots, ele acaba sendo um barramento muito dispendioso e imprático, que ficou relegado aos servidores topo de linha. Aqui temos três slots PCI-X, ao lado de slots PCI "normais" numa workstation da HP: Slots PCI-X, em comparação com slots PCI comuns O PCI Express, ou PCIe, é um barramento serial, que conserva pouco em comum com os barramentos anteriores. Graças a isso, ele acabou se tornando o sucessor não apenas do PCI, mas também do AGP. 298
  • 299. Como o PCI Express funciona Uma das características fundamentais do PCI Express é que ele é um barramento ponto a ponto, onde cada periférico possui um canal exclusivo de comunicação com o chipset. No PCI tradicional, o barramento é compartilhado por todos os periféricos ligados a ele, o que pode criar gargalos, como no caso das placas soquete 7. Alguns puristas argumentam que o PCI Express não é um barramento no sentido estrito da palavra, já que o termo "barramento" surgiu para descrever um canal de comunicação compartilhado por vários dispositivos ou periféricos. Mas, sou da opinião de que esse tipo de preciosismo deve ser evitado. Os termos técnicos evoluem e são adaptados, assim como a tecnologia. Em toda a documentação é usado o termo "PCI Express bus", referindo-se ao PCI Express (e também ao USB, Firewire e outros) como "bus", ou seja, "barramento". A designação já foi adotada oficialmente. O PCI Express é também um barramento serial e não um barramento paralelo, como o PCI. Antigamente, os circuitos eletrônicos eram muito lentos, por isso a solução para criar barramentos mais rápidos era adicionar mais trilhas e transmitir vários bits de cada vez. Exemplos de barramentos paralelos são as portas paralelas, usadas pelas impressoras antigas, as portas IDE e também o próprio barramento PCI. Com o avanço da tecnologia, os projetistas começaram a encontrar dificuldades em criar barramentos paralelos mais rápidos, pois o grande número de trilhas operando a altas freqüências criava ruído eletromagnético e problemas de sincronismo. A solução foi passar a investir em barramentos seriais, onde são usados apenas um ou dois pares de trilhas. Com menos trilhas, o problema do ruído e interferência é eliminado e os dados podem ser transmitidos na freqüência permitida pelos circuitos, sem problemas de sincronismo. Atualmente, acaba fazendo mais sentido usar um circuito controlador muito rápido, transmitindo um bit por vez, do que tentar criar um barramento complicado, que transmite 16 ou 32 bits por ciclo. Enquanto os fabricantes enfrentaram dificuldades para manter o sincronismo dos sinais do PCI-X a apenas 133 MHz, os transmissores do barramento PCI Express podem operar a 2.5 GHz sem maiores problemas. Exemplos de barramentos seriais, são o USB, o Serial ATA e o PCI Express. A diferença de desempenho entre estes "barramentos de nova geração" em relação aos barramentos antigos é brutal: uma porta paralela operando em modo EPP transmite a apenas 8 megabits por segundo, enquanto uma porta USB 2.0 atinge 480 megabits. Uma porta IDE ATA133 transmite a 133 MB/s, enquanto o SATA 600 atinge 600 MB/s. O PCI oferece apenas 133 MB/s, compartilhados por todos os dispositivos, enquanto um slot PCI Express 16x atinge incríveis 4 GB/s. 299
  • 300. Existem 4 tipos de slots PCI Express, que vão do 1x ao 16x. O número indica quantas linhas de dados são utilizadas pelo slot e, conseqüentemente, a banda disponível. Cada linha PCI Express utiliza 4 pinos de dados (dois para enviar e dois para receber), que são capazes de transmitir a 250 MB/s em ambas as direções. Por causa dessa característica, é comum que os fabricantes divulguem que o PCI Express transmite a 500 MB/s, o que é irreal, já que isso só ocorreria em situações em que grandes quantidades de dados precisassem ser transmitidos simultaneamente em ambas as direções. Temos então 250 MB/s de banda nos slots 1x, 1 GB/s nos slots 4x, 2 GB/s nos slots 8x e incríveis 4 GB/s nos slots 16x. O padrão original também previa o uso de slots 2x, mas eles nunca chegaram a ser implementados. Na prática, os slots 8x também são muito raros, de forma que você verá apenas slots 1x, 4x e 16x nas placas atuais. O PCI Express utiliza um sistema de codificação chamado 8b/10b, onde são incluídos dois bits adicionais para cada byte de dados transmitidos. Estes bits adicionais permitiram eliminar a necessidade do uso de pinos adicionais para enviar o sinal de sincronismo, o que simplificou bastante o design e melhorou a confiabilidade. É por causa dessa característica que os 2.5 gigabits transmitidos pelos transmissores equivalem a apenas 250 MB/s de dados. Dentro do chipset Normalmente, temos um grande número de linhas PCI Express disponíveis na ponte norte do chipset, onde são tipicamente ligados um, ou dois slots 16x, e mais algumas linhas na ponte sul, onde são ligados os slots mais lentos, 1x e 4x. Este esquema mostra a comunicação entre componentes em uma placa-mãe baseada no chipset D975X, da Intel: 300
  • 301. Nos chipsets Intel, a ponte norte é chamada de "MCH" (memory controller hub) e a ponte sul de "ICH" (I/O controller hub). O MCH inclui o controlador de acesso à memória, o vídeo onboard e 16 linhas PCI Express, que podem ser usadas para criar um único slot 16x ou (no caso das placas que suportam duas placas de vídeo em SLI) dois slots 8x. Ligando o MCH ao ICH, temos um barramento rápido, chamado DMI (direct media interface), que oferece um barramento de 2 GB/s (nos chipsets para processadores AMD, o DMI é substituído pelo barramento HyperTransport). O ICH inclui todos os demais componentes, incluindo as portas USB, os controladores de áudio, portas SATA, slots PCI e mais 6 linhas PCI Express, que permitem adicionar qualquer combinação de slots 1x e 4x. Note que uma das linhas é utilizada pelo chipset de rede onboard, quando presente. Nas placas para processadores AMD de 64 bits, a configuração é um pouco diferente, já que o controlador de memória é incluído diretamente no processador e é usado um barramento HyperTransport para interligar o processador, a ponte norte e a ponte sul do chipset, mas a disposição dos demais componentes é similar. 301
  • 302. As linhas de dados e os periféricos Uma das principais características do PCI Express é que existe uma grande flexibilidade com relação ao uso das linhas de dados. Como vimos, cada linha fornece uma banda de 250 MB/s (em cada direção) e é possível combinar até 16 linhas num único slot. Também existe a possibilidade de criar slots "capados", onde temos um slot 16x com apenas 8 linhas de dados, ou um slot 4x, com apenas uma linha, por exemplo. Como nestes casos muda apenas o uso das linhas de dados, e não as conexões elétricas, os slots continuam sendo perfeitamente compatíveis com todo tipo de placas; apenas o canal de dados passa a ser mais lento. O chipset também é capaz de alocar as linhas disponíveis de acordo com o uso. Por exemplo, em um chipset com apenas 16 linhas disponíveis, os dois slots 16x da placa-mãe passam a trabalhar com apenas 8 linhas de dados cada um ao usar duas placas 3D em SLI. Entretanto, ao usar apenas uma placa 3D, na mesma placa-mãe, o único slot usado fica com todas as 16 linhas, e passa a trabalhar como um slot 16x "real". Os slots são também compatíveis com placas dos padrões mais lentos. É possível instalar placas PCI Express 1x, 4x ou 8x em slots 16x e também placas 1x em slots 4x, embora, naturalmente, o inverso não seja possível. Graças a toda essa flexibilidade, temos alguns casos interessantes, como o desta Intel D975BX da foto a seguir. Ela possui três slots PCI Express 16x (um deles com 16 linhas de dados e o outro com apenas 8 linhas), dois slots PCI legacy e nenhum slot PCIe 1x ou 4x: 302
  • 303. Embora não suporte o uso de duas placas nVidia em SLI (recurso suportado apenas nas placas com chipset nVidia), os dois slots 16x podem ser usados para instalar duas placas ATI em modo cross-fire, enquanto o terceiro slot permite a instalação de qualquer tipo de placa PCI Express (1x, 4x, 8x ou 16x). Apesar de ser eletricamente um slot 16x, este terceiro slot possui apenas 4 linhas de dados. O número de linhas disponíveis varia de acordo com o chipset. O nVidia nForce 590, por exemplo, possui um total de 48 linhas, permitindo o uso de dois slots 16x (ambos operando com 16 linhas cada, sem compartilhamento), um terceiro slot 16x, com 8 linhas de dados e mais 8 linhas avulsas, para o uso de slots 1x, 4x ou periféricos onboard. Você pode perguntar qual é a necessidade de ter dois slots 16x "reais", se a maioria das placas 3D não é capaz de saturar sequer um slot com 8 linhas. Bem, a verdade é que, com o desenvolvimento insano das placas 3D, existe uma combinação que é capaz, sim, de utilizar dois slots 16x em sua plenitude. Ela responde pelo nome de quad-SLI. Temos aqui duas placas GeForce 7950GX2, ligadas em SLI. Cada uma destas placas é composta por uma combinação de duas placas, que compartilham o mesmo slot PCI Express 16x. Temos então um total de 4 placas, instaladas em dois slots, onde, na verdade, cada uma dispõe de apenas 8 linhas. Se tivéssemos 2 slots 16x "capados", cada um com 8 linhas, teríamos apenas 4 linhas para cada placa, o que limitaria seu desempenho. Quad-SLI, com duas placas GeForce 7950GX2 Esta é uma controladora com duas portas eSATA (que permite a conexão de HDs SATA externos), que utiliza um slot 1x. Este é o tipo de placa de expansão que não poderia utilizar um slot PCI sem ter seu desempenho limitado, já que cada uma das portas eSATA transmite a 150 ou 300 MB/s, de acordo com o padrão usado: 303
  • 304. Aqui temos uma placa de captura, também utilizando um slot 1x: Naturalmente, o PCI Express não vai substituir o PCI do dia para a noite. Vale lembrar que, embora completamente obsoleto, o ISA ainda era encontrado em placas novas até o final de 2003! Embora os fabricantes tenham realmente a intenção de substituir o PCI o mais rápido possível, eliminando mais uma carga de legado que encarece os equipamentos, é certo que o PCI e o PCI Express ainda conviverão por vários anos. O mesmo não se pode dizer do AGP, que por ser dispendioso e ter sido completamente subjugado pelos slots PCI Express 16x, já caiu em desuso, sobrevivendo apenas na forma dos slots AGP Express, encontrados nas placas híbridas da ECS, PC-Chips e no AGI, usado em algumas AsRock. 304
  • 305. Express Mini e ExpressCard Existem ainda dois padrões de barramentos PCI Express destinados a notebooks: o Express Mini e o ExpressCard, que substituem, respectivamente, as placas mini-PCI e as placas PC Card. O mini-PCI é uma espécie de slot PCI miniaturizado, muito usado em notebooks para a instalação da placa wireless (embora, em tese, possa ser usado para a conexão de qualquer dispositivo). O Express Mini é justamente uma adaptação do PCI Express para cumprir a mesma função, que oferece um desempenho melhor. Aqui temos uma placa wireless no formato Express Mini, instalada em um notebook HP: Placa Express Mini (à direita) Embora pouco usado na prática, o padrão também prevê a criação de slots Express Mini ligados no barramento USB (ao invés do barramento PCI Express). Isso permite que os fabricantes adaptem placas wireless e outros periféricos USB para uso interno, em notebooks. Para quem usa, não muda muita coisa, com exceção dos drivers usados. Um pequeno bônus (para os fabricantes) é que as dimensões reduzidas das placas tornam possível a instalação de duas placas Express Mini em aproximadamente o mesmo espaço ocupado por uma única placa mini-PCI. Em seguida temos o ExpressCard, que visa substituir o barramento PC Card. Embora o encaixe usado seja o mesmo, o padrão prevê dois formatos de placas de expansão, com 34 e com 54 mm de comprimento (destinado a 305
  • 306. placas mais complexas). Ambos os formatos são menores que uma placa PC Card: Placa PC Card (à esquerda) e placas ExpressCard A migração para o Express Mini já está acontecendo. Praticamente todos os notebooks anunciados em 2007 já o utilizam. O ExpressCard, por outro lado, ainda está patinando, pois os notebooks atuais possuem um único slot PC Card e os fabricantes relutam em substituí-lo diretamente por um slot ExpressCard, jogando fora a compatibilidade com todas as placas PC Card disponíveis. De qualquer forma, as placas Express Card já estão se tornando comuns, de forma que a substituição em larga escala ocorrerá mais cedo ou mais tarde. Temos aqui uma placa Gigabit Ethernet Express Card: 306
  • 307. Vale lembrar que o padrão PC Card atual (CardBus) já é uma evolução do padrão original, que era usado nos notebooks antigos. O primeiro padrão era ligado ao barramento ISA (e por isso era bastante lento, permitindo apenas a conexão de modems, placas de som e placas de rede Ethernet 10/10) e utilizava tensão de 5V, enquanto o padrão atual é ligado no barramento PCI e utiliza tensão de 3.3V. Os slots de 32 bits são compatíveis com as placas antigas, mas o inverso não é verdadeiro. Usar slots ExpressCard no lugar dos slots PC Card representa uma pequena economia para os fabricantes, pois elimina a necessidade de incluir um controlador CardBus no chipset. Os slots ExpressCard são ligados diretamente a uma das linhas PCI Express disponíveis, sem intermediários. Eventualmente devem surgir no mercado adaptadores externos para ligar placas PCMCIA em slots Express Card e, possivelmente, também baias com slots ExpressCard para uso em desktops, permitindo que os mesmos periféricos sejam compartilhados entre o desktop e o notebook, assim como existem adaptadores PC Card > PCI. Entretanto, essas placas adaptadoras nunca foram populares, já que sai quase sempre mais barato comprar diretamente versões PCI ou PCI Express dos periféricos, ao invés de comprar uma placa para notebook, mais o adaptador. Até o momento, nada me faz acreditar que com o ExpressCard possa ser diferente. Uma aplicação "revolucionária" para os ExpressCard, divulgada pela Asus, é o XG Station, que permite conectar uma placa 3D PCI Express ao slot Express Card do notebook. O desempenho do vídeo sempre foi um problema em notebooks, já que as placas 3D mais rápidas são volumosas, consomem muita energia e geram muito calor, tornando seu uso impraticável em notebooks. As versões "mobile" são mais lentas e na maioria dos casos usam memória compartilhada, fazendo com que os gamers fiquem amarrados a seus desktops. A idéia do XG Station é mudar esse cenário, permitindo que você conecte qualquer placa ao seu notebook, usando também um monitor externo. Naturalmente, essa solução não faz sentido do ponto de vista do custo (se comparado a usar um desktop), mas pode agradar a quem usa o notebook para trabalho e quer ter um desempenho 3D melhor ao usá-lo em casa para jogar. 307
  • 308. Asus XG Station A principal limitação é que o slot ExpressCard utiliza apenas uma linha PCI Express (250 MB/s), o que é pouco menos que a banda oferecida por um slot AGP 1x. Esta pesada limitação com relação ao barramento de comunicação penaliza o desempenho da placa, fazendo com que fique abaixo do que seria obtido ao utilizá-la num desktop. Apesar disso, o desempenho ainda é bem superior ao da maioria das soluções mobile. PCI Express 2.0 Embora tenha se tornado popular apenas em 2006, o PCI Express existe desde 2002. Neste meio tempo, já foi desenvolvida uma atualização para o padrão, o PCI Express 2.0, finalizado em janeiro de 2007. A boa notícia é que o PCI Express 2.0 é completamente compatível com o padrão antigo, apenas mais rápido. Ele dobra a velocidade do PCI Express, oferecendo 500 MB/s por linha, em cada direção. Isto significa que um slot 16x 308
  • 309. passa a oferecer incríveis 8 GB/s, o que seria equivalente a um hipotético AGP 32x. Placas PCI Express 1.0 poderão ser usadas diretamente em slots PCIe 2.0 e mesmo placas 2.0 funcionarão em slots 1.0, embora com uma possível redução de desempenho devido ao barramento mais lento. A princípio, o ganho de desempenho é apenas incremental, já que as placas de vídeo atuais são bem atendidas pelos slots 16x e a maioria dos demais periféricos trabalha com folga em um simples slot 1x. Entretanto, a introdução do PCIe 2.0 pavimenta o caminho para periféricos futuros e também oferece alguns ganhos incrementais mesmo no presente. Por exemplo, lembra-se do XG Station da Asus? Ligado a um slot ExpressCard 2.0, ele disporia do dobro da banda, o que reduziria a perda de desempenho da placa 3D. Outra questão é que com o PCIe 2.0, os fabricantes poderão produzir chipsets usando menos linhas PCIe (já que cada linha terá o dobro da banda), o que pode reduzir o custo das placas-mãe. O primeiro chipset a oferecer suporte ao PCI Express 2.0 é o Intel X38, um chipset de alto desempenho, destinado a placas soquete 775, sucessor do 975X. USB O USB é um velho conhecido. Simplesmente o barramento externo mais usado atualmente. O que torna o USB tão popular é a sua flexibilidade; além de ser usado para a conexão de todo o tipo de dispositivos, ele fornece uma pequena quantidade de energia, permitindo que os conectores USB sejam usados também por carregadores, luzes, ventiladores, aquecedores de xícaras de café, etc. Se duvida, veja esses dois exemplos: 309
  • 310. No USB 1.x, as portas transmitem a apenas 12 megabits, o que é pouco para HDs, pendrives, drives de CD, placas wireless e outros periféricos rápidos. Mas, no USB 2.0, o padrão atual, a velocidade foi ampliada para 480 megabits (ou 60 MB/s), suficiente para a maioria dos pendrives e HDs externos. Existem quatro tipos de conectores USB, o USB tipo A, que é o mais comum, usado por pendrives e topo tipo de dispositivo conectado ao PC, o USB tipo B, que é o conector "quadrado" usado em impressoras e outros periféricos, além do USB mini 5P e o USB mini 4P, dois formatos menores, que são utilizados por câmeras, mp3players, palmtops e outros gadgets. Os quatro tipos utilizam a mesma pinagem, o único diferencial é mesmo o formato físico. Existem ainda alguns formatos de conectores proprietários, geralmente versões levemente modificadas de um destes quatro formatos. Por serem intercompatíveis, é relativamente fácil encontrar adaptadores diversos para permitir encaixar cabos com conectores de formatos diferentes: Existem ainda adaptadores USB para portas seriais, portas paralelas, rede (com um conector RJ45) e até mesmo para saídas VGA, mas eles incluem circuitos adicionais e dependem da instalação de drivers para funcionar. 310
  • 311. Adaptador de vídeo USB O USB é um barramento serial, por isso os conectores possuem apenas 4 contatos, sendo dois para a transmissão dos dados (um para enviar, outro para receber) e os outros dois para a transmissão de eletricidade. Os dois pinos para a transmissão de dados são os dois mais centrais, enquanto os para energia são os dois externos. Olhando um conector USB com os contatos virados para baixo, o pino da direita é o positivo, enquanto o da esquerda é o neutro. Dentro do cabo, o fio vermelho é o positivo, o preto é o neutro, enquanto o verde e o branco são os usados para transmissão de dados: Essa simplicidade explica a existência de tantas bugigangas que podem ser ligadas às portas USB. Você pode descartar os pinos de dados e usar a eletricidade oferecida pelo conector para alimentar qualquer dispositivo que consuma até 2.5 watts de energia (os 2.5 watts correspondem ao padrão oficial, mas a maioria dos fabricantes de placas optam por oferecer valores maiores para manter uma boa margem de tolerância). Pode ser desde um carregador para celular, até um ventilador em miniatura. O inverso também é possível, ou seja, um conector USB fêmea, ligado a uma bateria, que sirva como fonte de energia para seu iPod, palmtop, ou outro 311
  • 312. dispositivo carregado através da porta USB. A maioria dos projetos envolve usar uma fonte de energia qualquer, que forneça 5V ou mais, e um resistor para reduzir a tensão ao valor apropriado. Você pode encontrar vários projetos no: http://home.speedfactory.net/tcashin/ipodbattery.htm Este é o meu "carregador de emergência", que uso como carregador e bateria externa para o meu Treo. Ele utiliza 4 pilhas recarregáveis como fonte de energia e um diodo, que evita o refluxo, ou seja, evita que a bateria do Treo acabe recarregando as pilhas quando elas é que ficam com pouca carga. As pilhas recarregáveis trabalham com uma tensão nominal de 1.2v, mas quando completamente carregadas, oferecem em torno de 1.4v, suficiente para carregar dispositivos USB: Com uma variedade tão grande de periféricos USB, as 4 portas traseiras da placa-mãe acabam nunca sendo suficientes. Os fabricantes passaram então a incorporar portas USB adicionais através de headers disponíveis na placa-mãe. Os headers podem ser ligados às portas frontais do gabinete, ou a conectores adicionais instalados na parte traseira. O maior problema é que os conectores frontais do gabinete geralmente utilizam conectores separados para cada um dos fios, de forma que você precisa se orientar usando o diagrama no manual da placa para conectá-los corretamente. O fio vermelho é o +5V, o preto é o GND, o verde é o USB+ (ou D+) e o branco o USB- (ou D-): 312
  • 313. Ligar os pinos incorretamente pode causar um curto e danificar periféricos USB, ou o próprio controlador da placa-mãe. Para evitar esse tipo de catástrofe, a maioria das placas inclui circuitos que desligam a alimentação em caso de problemas, de forma que a porta simplesmente não funciona até que você conecte os fios na ordem correta. Mas, de qualquer forma, é melhor não dar chance para o azar. Temos ainda a possibilidade de usar hubs USB para conectar vários dispositivos à mesma porta. Em teoria, cada porta USB permite a conexão de até 127 dispositivos, de forma que você pode até mesmo ligar um hub USB no outro. O maior problema é que tanto a banda, quanto a energia fornecida pela porta são compartilhadas entre todos os periféricos ligados ao hub, de forma que dispositivos de mais alto consumo, como mouses ópticos e HDs externos (do tipo que usa a energia da porta USB, ao invés de uma fonte própria) podem não funcionar, dependendo de quais outros dispositivos estejam ligados ao hub. A solução nesse caso é comprar um hub com fonte externa (também chamados de powered hub). Eles possuem uma fonte própria de energia, por isso não utilizam a energia fornecida pela porta e suportam a conexão de 313
  • 314. vários periféricos "gulosos" simultaneamente. Usar um powered hub também reduz o stress sobre a fonte de alimentação e circuitos reguladores de tensão da placa-mãe, além de oferecer um seguro contra queima de portas e outros problemas derivados da conexão de dispositivos USB defeituosos (antes o HUB do que a placa-mãe inteira). Hub USB com alimentação própria No USB, os 12 ou 480 megabits de banda não são compartilhados entre as portas. Cada par de portas (ligadas a um controlador dedicado na placa mãe) equivale a um barramento próprio, independente dos demais. O compartilhamento ocorre apenas quando as duas portas dentro do par são usadas simultaneamente, ou quando vários dispositivos são plugados na mesma porta, através de um hub. Algumas combinações podem ser um pouco problemáticas, já que temos tanto dispositivos que transmitem grandes volumes de dados (um HD externo, por exemplo) quanto dispositivos que transmitem um volume pequeno, mas precisam de urgência, como o teclado e o mouse. Você não gostaria que o mouse ficasse com as respostas lentas ao salvar um grande arquivo no HD externo, por exemplo. Prevendo isso, o USB suporta três modos de operação distintos, chamados de Interrupt (interrupção), Bulk (grande volume) e Isochronous (isocrônico). O modo de interrupção é um modo de alta prioridade, destinado a teclados, mouses e outros dispositivos de entrada. O controlador reserva 10% da banda disponível para eles, mantendo sempre um canal descongestionado. O modo isocrônico é destinado a dispositivos que precisam transmitir dados via streaming, como, por exemplo, caixas de som e headsets USB. Eles 314
  • 315. transmitem um volume relativamente pequeno de dados, mas também precisam de uma certa prioridade. Finalmente, temos as transferências em modo bulk, onde temos grandes pacotes de dados, transmitidos com baixa prioridade (como no caso do HD externo). Como os canais para os outros dois modos são reservados primeiro, as grandes transferências podem ser feitas utilizando a banda disponível, sem atrapalhar os outros dispositivos. Essa política de uso de banda é similar à utilizada em redes, onde os dados são transmitidos na forma de frames ou pacotes. Isso permite que dispositivos USB 1.1 sejam conectados em portas USB 2.0 sem reduzir a velocidade para outros dispositivos conectados na mesma porta. O controlador simplesmente disponibiliza 12 megabits para o dispositivo USB 1.1 e continua disponibilizando o restante da banda para os demais dispositivos. Outra característica interessante do USB é a capacidade de enumerar e reconhecer novos dispositivos, coisa que não existia na época das portas seriais. Detectar um mouse ou um modem serial é um pesadelo para qualquer programador. Não existe forma simples de saber o que está plugado na porta serial, ou mesmo descobrir SE existe algum dispositivo lá. A única forma é apelar para técnicas indiretas, enviando dados através da porta e tentando deduzir quem está do outro lado a partir das respostas. É por isso que algumas distribuições Linux antigas pediam que você movimentasse seu mouse serial num certo ponto da instalação, para que ele pudesse ser detectado. No USB as coisas funcionam de forma muito mais eficiente. O controlador percebe quando um dispositivo é conectado e envia um pacote de controle, que o dispositivo responde enviando uma série de informações, incluindo sua classe, velocidade, fabricante, string de identificação e assim por diante. Além de permitirem que o controlador reserve corretamente os recursos usados pelo dispositivo, essas informações são enviadas ao sistema operacional. Isso permite que o dispositivo seja ativado e o programa ou o aviso correspondente seja mostrado na tela. Veja o que aparece no log de uma distribuição Linux atual quando plugo meu joystick USB: usb 1-3: new low speed USB device using ohci_hcd and address 3 usb 1-3: configuration #1 chosen from 1 choice input: Logitech WingMan Precision USB as /class/input/input2 input: USB HID v1.10 Joystick [Logitech WingMan Precision USB] on usb-0000:00:02.0-3 As informações permitem também programar ações para quando determinados dispositivos são plugados no Linux, através do udev, o daemon responsável por detectar mudanças no hardware e a conexão de novos dispositivos. É possível executar automaticamente um script de backup quando o HD externo é plugado, ou abrir um determinado game quando você pluga o joystick. O 315
  • 316. mais interessante é que as ações podem ser relacionadas com o código de identificação do dispositivo (que é único), de forma que o backup seja feito apenas ao plugar um HD específico, evitando que seus dados sejam copiados por engano quando um amigo plugar um pendrive, por exemplo. Falar sobre as regras do udev sai do escopo deste tópico, mas você pode aprender mais sobre elas no meu livro Linux Ferramentas Técnicas 2ª edição, ou através dos tutoriais disponíveis no Guia do Hardware.NET. Firewire (IEEE 1394) O Firewire surgiu em 1995 (pouco antes do USB), como um concorrente do barramento SCSI. Inicialmente ele foi desenvolvido pela Apple e depois submetido ao IEEE, quando passou a se chamar IEEE 1394. Embora seja mais popularmente usado, o nome "Firewire" é uma marca registrada pelo Apple, por isso você não vai encontrar referência a ele em produtos ou documentação de outros fabricantes. Outro nome comercial para o padrão é o "i.Link", usado pela Sony. O Firewire é um barramento serial, muito similar ao USB em vários aspectos. A versão inicial do Firewire já operava a 400 megabits (ou 50 MB/s), enquanto o USB 1.1 operava a apenas 12 megabits. Apesar disso, o USB utilizava transmissores e circuitos mais baratos e era livre de pagamento de royalties, o que acabou fazendo com que ele se popularizasse rapidamente. Na época, a indústria procurava um barramento de baixo custo para substituir as portas seriais e paralelas e, como de praxe, acabou ganhando a solução mais barata. Atualmente o Firewire enfrenta também a concorrência do eSATA, a versão externa do SATA, que permite a conexão de HDs e drives ópticos externos, o que o deixa em posição pouco confortável. Assim como o USB, o Firewire é um barramento plug-and-play e suporta a conexão de vários periféricos na mesma por porta, utilizando uma topologia acíclica, onde um periférico é diretamente conectado ao outro e todos se enxergam mutuamente, sem necessidade de uso de hubs ou centralizadores. Você poderia, por exemplo, conectar um HD externo (com duas portas Firewire) ao PC e conectar uma filmadora ao HD e o PC enxergaria ambos. Veja um exemplo: 316
  • 317. O conector Firewire tradicional utiliza 6 pinos, sendo que 2 são usados para alimentação elétrica (como no USB) e existe também uma versão miniaturizada (sem os pinos de alimentação) que possui apenas 4 pinos e é muito comum em notebooks. Uma porta Firewire de 6 pinos é capaz de fornecer até 45 watts de energia, quase 10 vezes mais que no USB. Inicialmente, o concorrente do Firewire não era o USB, mas sim o barramento SCSI, que na época também era usado para a conexão de scanners e outros dispositivos externos. Embora fosse um pouco mais lento (até 160 MB/s no SCSI, contra 50 MB/s no Firewire), o Firewire era um barramento mais simples e muito mais flexível, permitindo a conexão de todo tipo de dispositivos de armazenamento, impressoras, scanners, dispositivos de áudio e vídeo e até mesmo a comunicação direta entre PCs, funcionando como uma interface de rede. Apesar disso, com o surgimento do USB, o Firewire acabou restrito a alguns nichos. O principal deles é a transferência de vídeos a partir de uma filmadora digital. Desde o final da década de 1990 as câmeras migraram das fitas analógicas para o padrão DV (digital video), onde o vídeo é gravado diretamente em formato digital (numa fita mini-DV, HD ou mesmo memória flash, como em alguns modelos recentes) e depois transferido para o micro através de uma porta Firewire para que seja editado e finalizado. 317
  • 318. Embora seja um item de série nos Macs (as primeiras versões do iPod existiam apenas em versão Firewire), poucos chipsets para PC possuem controladores firewire integrados, fazendo com que os fabricantes de placas-mãe sejam obrigados a utilizar um controlador avulso. Como isso encarece a placa, as portas firewire são oferecidas apenas nos modelos mais caros, ou voltados para o mercado gráfico. Naturalmente, existem também controladoras firewire externas, na forma de placas PCI ou PCI Express, mas elas também representam um custo adicional. Com a popularização das filmadoras digitais, os fabricantes passaram a incluir também portas USB nos aparelhos, eliminando o problema: Filmadora digital com portas Firewire e USB Atualmente estamos assistindo a uma lenta migração para o Firewire 800 (IEEE 1394B), um novo padrão, lançado em 2003, que dobra a taxa de transmissão, atingindo 800 megabits e utiliza um novo conector, com 9 pinos. Ele foi desenvolvido de forma que os cabos e periféricos antigos continuam sendo inteiramente compatíveis (usando o cabo apropriado, com um conector de 9 pinos em uma ponta e um de 6 ou 4 pinos na outra), embora não se beneficiem do aumento na velocidade. 318
  • 319. Uma observação é que, devido a uma combinação de implementação e drivers, o suporte a USB 2.0 nos Macs G5, PowerBook e outros da safra baseada em chips PowerPC é deficiente, fazendo com que as transferências feitas através das portas USB 2.0 acabem sendo mais lentas do que através das portas Firewire 400. De qualquer forma, apesar da polêmica em torno do USB 2.0 versus Firewire 400, o Firewire 800 é indiscutivelmente mais rápido. WUSB O WUSB (Wireless USB) é uma versão sem fios do USB, que utiliza o sistema UWB para a transmissão de dados a curtas distâncias, utilizando sinais de baixa potência. Em teoria, o WUSB suporta taxas de transmissão de até 480 megabits a distâncias de até 3 metros e 110 megabits a até 10 metros. Como o sinal utiliza uma potência muito baixa, o WUSB é adequado para interligar aparelhos dentro do mesmo ambiente (a mesma sala ou escritório, por exemplo), sem que existam obstáculos importantes entre eles. O objetivo é que o WUSB seja uma opção ao uso do USB em todo tipo de periféricos, incluindo mouses, joysticks, impressoras, scanners, câmeras digitais, mp3players e até mesmo HDs externos. As taxas de 480 e 110 megabits divulgadas são as taxas de transmissão "brutas", que não incluem as perdas causadas pelo protocolo de transmissão, correção de erros, atenuação do sinal e assim por diante. As taxas obtidas na prática, sobretudo a distâncias maiores do que 3 ou 4 metros são muito inferiores, de forma que, em termos de velocidade, o WUSB não se compara diretamente ao USB 2.0. Apesar disso ele ganha na questão da praticidade e "cool factor", já que permite que você baixe as fotos da câmera, ou copie músicas para o mp3player sem precisar primeiro conectá-los ao PC. Existe ainda a possibilidade de ligar diretamente um dispositivo ao outro, permitindo que a câmera imprima fotos na impressora, ou o mp3players toque músicas armazenadas em um HD externo, por exemplo. Assim como no USB, é possível interligar até 127 dispositivos. Além de dispositivos com transmissores WUSB nativos, existem dois tipos de adaptadores. O primeiro é um transmissor que permite que PCs sem transmissores se comuniquem com dispositivos WUSB. Ele é parecido com um pendrive ou adaptador bluetooth, que você pluga em uma porta USB disponível e se chama WHA. O segundo é uma espécie de "hub" (chamado de WDA), destinado a ligar dispositivos USB ao PC com o transmissor. Você poderia ligar sua impressora USB no WDA e assim acessá-la a partir do seu PC com um transmissor WUSB. 319
  • 320. Existe ainda a possibilidade de juntar um WHA e um WDA, criando uma espécie de hub USB sem fios. Até que as placas-mãe, notebooks e outros dispositivos com transmissores WUSB tornem-se populares, essa é provavelmente a única classe de produtos wireless USB que você verá à venda. Um exemplo é o Belkin Cable-Free USB, um dos primeiros produtos da nova safra: Ele inclui um WDA com 4 portas e um WHA para ligar no PC. Uma vez instalado, ele cria um link wireless com o hub, fazendo com que qualquer dispositivo conectado nele fique acessível a partir do seu micro. Não é o tipo da coisa que você mataria para ter, mas abre algumas possibilidades interessantes. Você não precisa mais deixar a sua impressora e scanner USB ao lado do micro, por exemplo, pode colocá-los em qualquer lugar do ambiente. Este gráfico, fornecido pela Belkin, mostra o desempenho esperado para as diferentes classes de dispositivos WUSB: 320
  • 321. No topo, estão os 480 megabits "brutos", que nunca são atingidos em situações reais, devido a uma série de fatores. No segundo nível estão as controladoras USB 2.0 cabeadas, que atingem taxas reais em torno de 270 a 320 megabits. O restante é perdido devido ao protocolo de sinalização usado, que garante que os dados sejam transmitidos de forma confiável, mas em troca fica com seu quinhão da taxa de transmissão. :) Na terceira camada está o desempenho atingido pelos dispositivos WUSB em condições ideais (curtas distâncias, sem obstáculos e sem interferências), onde temos três possibilidades. Ao conectar dois dispositivos com transmissores nativos, é possível atingir taxas reais de até 200 megabits. Se a distância for maior que um ou dois metros, a taxa de transmissão cai sensivelmente, mas se mantêm em um valor razoável. Ao conectar um PC com um adaptador (WHA) a um dispositivo com suporte nativo, ou um PC com um transmissor nativo a um dispositivo ligado a um WDA, a taxa cai para a faixa dos 80 a 120 megabits. Finalmente, ao usar simultaneamente um WHA e um WDA (como no caso Belkin Cable-Free USB) temos overhead dos dois lados e a taxa de transmissão cai mais ainda, chegando à faixa dos 30 a 45 megabits. Assim como no caso do Bluetooth, o WUSB utiliza um sistema de associação e autenticação para garantir a segurança. Cada vez que instalar um novo dispositivo, você precisará associá-lo a seu notebook ou desktop, para só então poder usá-lo. Sem isso, qualquer um poderia acessar seus arquivos e fotos enquanto estivesse em locais públicos, o que não seria muito desejável. :) 321
  • 322. Este screenshot, fornecido pelo USB-IF (a associação sem fins lucrativos destinada a clarificar e divulgar o padrão) mostra como o sistema funciona na parte de software. Um gerenciador gráfico, similar ao usado para gerenciar redes Wi-Fi, mostra os dispositivos WUSB disponíveis e o nível de sinal de cada um: Ao contrário do que pode parecer à primeira vista, o WUSB não se destina a concorrer com as redes wireless, já que ele só funciona a distâncias muito curtas. Você poderia compartilhar a conexão com a web entre dois notebooks, ou entre um PC e um palmtop usando o WUSB, mas não seria o tipo de solução que você utilizaria na sua rede doméstica, por exemplo. O concorrente mais direto seria o Bluetooth, que também é um padrão para interligar dispositivos a curtas distâncias e cumpre muitas das funções a que o WUSB se destina (ele permite transferir dados entre dispositivos e pode ser usado por teclados e mouses, por exemplo). A vantagem do WUSB sobre o padrão Bluetooth atual é que, além de brutalmente mais rápido, os transmissores consomem menos energia. Com base nisto, é possível que o WUSB substitua o Bluetooth em diversas aplicações. O maior problema é o WUSB é um padrão muito novo, cuja adoção ainda está indefinida. Para que ele se popularize, é necessário que o custo dos transmissores caia para uma faixa igual ou inferior ao que os transmissores Bluetooth custam hoje em dia, o que só acontece quando eles passam a ser produzidos em grande quantidade. Existe ainda a questão da aceitação do público: será que um volume suficiente de usuários aceitará pagar mais caro por dispositivos WUSB, ou será que continuarão preferindo usar cabos? Além da diferença de custo (um cabo USB será sempre mais barato que um par de transmissores e os demais circuitos relacionados) o USB cabeado 322
  • 323. oferece a vantagem de fornecer energia, o que permite que diversos modelos de mp3players e outros dispositivos sejam carregados através da porta USB, sem falar nas gavetas para HDs de 2.5", que acionam o HD utilizando a própria energia fornecida pela porta, sem precisar de fonte. Para eles, não faz sentido migrar para o WUSB, já que ele não resolve o problema da alimentação elétrica. No caso do Bluetooth, tivemos uma demora de quase 8 anos entre o anúncio do padrão (em 1998) e a sua popularização (que começou pra valer apenas em 2006). O padrão inicial do WUSB foi anunciado em maio de 2005, mas os primeiros produtos chegaram ao mercado apenas a partir do final de 2006, ainda custando US$ 200 ou mais e sendo produzidos em quantidades muito limitadas. Endereços de IRQ e DMA Os endereços de IRQ são interrupções de hardware, canais que os dispositivos podem utilizar para chamar a atenção do processador. Na maioria das situações, o sistema operacional simplesmente chaveia entre os aplicativos ativos, permitindo que ele utilize o processador durante um determinado espaço de tempo e passe a bola para o seguinte. Como o processador trabalha a uma freqüência de clock muito alta, o chaveamento é feito de forma muito rápida, dando a impressão de que todos realmente estão sendo executados ao mesmo tempo No caso dos processadores dual-core, temos na realidade dois processadores, de forma que dois threads podem ser processados simultaneamente, mas o princípio continua o mesmo, já que em um PC típico temos um número sempre muito maior de aplicativos ativos. Muitas operações, entretanto, não podem esperar. O exemplo mais típico são os caracteres digitados no teclado e os movimentos do mouse (que precisam ser interpretados rapidamente pelo sistema, mesmo enquanto o PC está executando tarefas pesadas), mas existem muitas outras operações que precisam de atenção semelhante, incluindo as transferências de dados recebidos através da placa de rede, operações de leitura e escrita nos HDs e assim por diante. A placa de rede, por exemplo, não pode ficar simplesmente esperando que chegue a sua vez dentro do sistema multitarefa, pois isso retardaria a transmissão dos pacotes, aumentando o ping e reduzindo a taxa de transmissão da rede. É neste ponto que entram os endereços de IRQ. Ao ser avisado através de qualquer um desses canais, o processador imediatamente pára qualquer coisa que esteja fazendo e dá atenção ao dispositivo, voltando ao trabalho logo depois. Cada endereço é uma espécie de campainha, que pode ser tocada a qualquer momento. Se não fossem pelos endereços de IRQ, o processador não seria capaz de ler as teclas digitadas no teclado ou os clicks do mouse, a 323
  • 324. transmissão de dados através da rede pararia toda vez que você abrisse qualquer programa e assim por diante. Em PCs antigos, os endereços de IRQ não podiam ser compartilhados entre os dispositivos, o que freqüentemente causava problemas, já que existem apenas 16 endereços de IRQ disponíveis. Sempre que os endereços de IRQ se esgotavam (pela instalação de muitos periféricos) ou dois dispositivos eram configurados para utilizar o mesmo endereço, tínhamos os famosos conflitos, que faziam com que ambos os dispositivos deixassem de funcionar corretamente. Atualmente, os conflitos relacionados aos endereços de IRQ são muito raros, pois as placas atuais suportam diversos sistemas de compartilhamento e atribuição automática de endereços. No caso das placas PCI, por exemplo, o controlador PCI passa a centralizar as requisições enviadas por todas as placas instaladas, de forma que todas possam utilizar um único endereço. Isto é possível porque as placas passam a enviar as requisições para o controlador e apenas ele entra em contato direto com o processador. De qualquer forma, é importante entender como o sistema funciona, de forma que você possa solucionar conflitos que eventualmente apareçam, além de aprender a se virar ao dar manutenção em PCs antigos. Para variar, tudo começa com o PC original, aquele lançado em 1981. Ele tinha apenas 8 endereços de IRQ, numerados de 0 a 7. Isso acontecia porque ele ainda era baseado no processador 8088, que apesar de ser internamente um processador de 16 bits, utilizava um barramento de apenas 8 bits para comunicar-se com os periféricos. Com isto, tinha apenas 8 IRQs. Os 8 endereços disponíveis ficavam geralmente configurados da seguinte forma: IRQ 0 - Sinal de clock da placa-mãe IRQ 1 - Teclado IRQ 2 - Livre IRQ 3 - COM 2 IRQ 4 - COM 1 IRQ 5 - Disco Rígido IRQ 6 - Drive de disquetes IRQ 7 - Porta paralela O número do endereço de IRQ indica também a sua prioridade, começando do 0 que é o que tem a prioridade mais alta. Não é à toa que o IRQ 0 é ocupado pelo sinal de clock da placa-mãe, pois é ele quem sincroniza o trabalho de todos os componentes, inclusive do processador. Logo depois vem o teclado, que ocupa o IRQ 1. Veja que o teclado é o dispositivo com um nível de prioridade mais alto, para evitar que as teclas digitadas se percam. Isso pode parecer desnecessário, já que um processador atual processa bilhões de operações por segundo e dificilmente alguém digita mais do que 300 ou talvez 350 caracteres por minuto, mas, na época do XT, as coisas não eram assim tão rápidas. 324
  • 325. Em seguida temos os demais periféricos, como as portas seriais e o drive de disquetes. O IRQ 2 ficava livre para a instalação de um periférico qualquer. Na verdade, na maioria das vezes o IRQ 5 também ficava livre, pois os HDs não eram algo muito comum naquela época. A partir do 286, houve uma evolução nesse esquema, pois finalmente os PCs passaram a ter 16 endereços de IRQ, numerados de 0 a 15, como nos dias de hoje. Como quase todas as evoluções na família PC, foi preciso manter compatibilidade com o padrão anterior, para que as placas para XT pudessem funcionar nos PCs 286 em diante. Assim, resolveram manter o controlador de IRQs original para que tudo continuasse funcionando da mesma maneira que antes e simplesmente adicionar um segundo controlador para obter os 8 novos endereços. Este segundo controlador passou a ser ligado no IRQ 2 que, como vimos, costumava ficar livre. Todos os pedidos de interrupção dos periféricos ligados aos endereços entre 8 e 15, controlados pelo segundo controlador, passam primeiro pelo IRQ 2, para só depois chegar ao processador. Isto é chamado de cascateamento de IRQs: Dá para notar duas coisas neste esquema. Em primeiro lugar que o IRQ 2 não pode mais ser utilizado por nenhum periférico. Caso fosse instalado um modem ISA, por exemplo, configurado através dos jumpers para utilizar o IRQ 2, ele seria remapeado para o IRQ 9. Ou seja, na prática, não temos 16 endereços de IRQ, mas apenas 15. Em segundo lugar, como o segundo controlador está ligado ao IRQ 2, todas as placas que utilizarem os endereços de 8 a 15, terão prioridade sobre as que usarem os IRQs de 3 a 7, pois, do ponto de vista do processador, estão ligadas ao IRQ 2, que é por onde todos os pedidos chegam a ele. Este seria um exemplo de configuração comum de endereços em um PC da era Pentium baseado em uma placa-mãe soquete 7: IRQ 0 - Sinal de clock da placa-mãe (fixo) IRQ 1 - Teclado (fixo) IRQ 2 - Cascateador de IRQs (fixo) IRQ 3 - Porta serial 2 IRQ 4 - Porta serial 1 IRQ 5 - Livre IRQ 6 - Drive de disquetes 325
  • 326. IRQ 7 - Porta paralela (impressora) IRQ 8 - Relógio do CMOS (fixo) IRQ 9 - Placa de vídeo IRQ 10 - Livre IRQ 11 - Controlador USB IRQ 12 - Porta PS/2 IRQ 13 - Coprocessador aritmético (fixo) IRQ 14 - IDE Primária IRQ 15 - IDE Secundária Veja que com apenas a placa de vídeo e os dispositivos da placa-mãe, já sobravam apenas dois endereços de IRQ disponíveis. Ao adicionar uma placa de som e um modem, todos os endereços estariam ocupados, não dando mais margem de expansão para uma placa de rede ou uma placa SCSI por exemplo. A solução seria desabilitar dispositivos que não estivessem sendo usados como, por exemplo, a segunda porta serial, a porta PS/2 e o controlador USB (naquela época os dispositivos USB ainda eram novidade e as portas raramente eram usadas). Mas, de qualquer forma, se você continuasse instalando mais e mais periféricos, logo chegaria o ponto em que não teria mais o que desabilitar. Esse problema começou a tornar-se cada vez mais evidente, à medida que mais e mais periféricos passaram a ser utilizados por padrão. Os únicos periféricos "de fábrica" em um 286 eram o monitor e o teclado, todo o restante era opcional. Em um PC atual temos um número muito maior de dispositivos, a começar pelos componentes onboard. Felizmente, pensaram nesse problema quando desenvolveram o barramento PCI, incluindo o recurso de PCI Steering, que permite que dois ou mais periféricos PCI compartilhem o mesmo endereço de IRQ. Nesse caso, o controlador PCI passa a atuar como uma ponte entre os periféricos e o processador. Ele recebe todos os pedidos de interrupção, os encaminha para o processador e, ao receber as respostas, novamente os encaminha para os dispositivos corretos. Como o controlador é o único diretamente conectado ao processador é possível ocupar apenas um endereço de IRQ. Do lado do software, o PCI Steering passou a ser suportado a partir do Windows 95 OSR/2, além de ser suportado (por parte do Kernel) praticamente desde as primeiras versões do Linux. Nem todos os dispositivos PCI suportam trabalhar dessa forma, mas a grande maioria funciona sem problemas. No Windows, você pode verificar a distribuição dos endereços dentro do Painel de Controle > Sistema > Hardware > Gerenciador de Dispositivos. Na janela principal, clique no Exibir > Recursos por tipo. No screenshot a seguir, temos um PC antigo, rodando o Windows 2000, onde as duas placas de rede e a placa de som estão compartilhando o IRQ 9: 326
  • 327. Além do barramento PCI, outros barramentos usados atualmente permitem compartilhar um único IRQ entre vários periféricos. O USB é um bom exemplo. O controlador ocupa um único IRQ, que é compartilhado entre todas as portas USB e todos os dispositivos conectados a elas. Mesmo que a placa-mãe tenha 6 portas USB e você utilize todas, terá ocupado apenas um endereço. Se você utilizasse apenas periféricos USB (mouse, impressora, scanner, etc.), poderia desabilitar todas as portas de legado da placa-mãe (as duas portas seriais, a porta paralela e a porta PS/2), o que liberaria 4 endereços de IRQ. No caso de placas-mãe com duas interfaces IDE, cada uma ocupa dois endereços (por padrão o 14 e o 15). Mas, caso você não pretenda usar a IDE secundária, sempre existe a possibilidade de desabilitá-la no Setup. Todas essas opções aparecem na sessão "Integrated Peripherals". Com todas essas facilidades, ficava fácil ter um sistema com vários IRQs livres, como no exemplo abaixo: IRQ 0 - Sinal de clock da placa-mãe (fixo) IRQ 1 - Teclado (fixo) IRQ 2 - Cascateador de IRQs (fixo) IRQ 3 - Livre (serial 2 desativada) IRQ 4 - Modem IRQ 5 - Livre IRQ 6 - Drive de disquetes IRQ 7 - Livre (porta paralela desativada) IRQ 8 - Relógio do CMOS (fixo) IRQ 9 - Placa de som, placa de rede (1), placa de rede (2) IRQ 10 - Placa de vídeo IRQ 11 - Controlador USB (Mouse, impressora e scanner) IRQ 12 - Livre (porta PS/2 desativada) IRQ 13 - Coprocessador aritmético IRQ 14 - IDE Primária IRQ 15 - Livre (IDE Secundária desativada) 327
  • 328. Ter 5 endereços de IRQ livres, mesmo utilizando todos estes dispositivos, não soa nada mal. Na verdade, a escassez de endereços de IRQ é um problema muito menor hoje em dia do que já foi no passado. Antigamente, era preciso configurar manualmente o endereço a ser usado por cada placa e não havia como compartilhar um IRQ entre dois periféricos como temos hoje. Um jumper no lugar errado era o suficiente para o modem (ou a placa de som) entrar em conflito com alguém e parar de funcionar. Hoje em dia, todas as placas de expansão são PCI, PC Card, PCI Express ou Express Card, o que naturalmente significa que são plug-and-play. Basta espetá-las para que o BIOS atribua automaticamente um endereço. Desta forma, você terá conflitos apenas caso realmente todos os IRQs estejam ocupados. Mas nem tudo está resolvido. Apesar dos conflitos ao se usar apenas placas PCI ou PCI Express serem raríssimos, ainda estão em uso alguns PCs antigos com placas ISA. É aí que as coisas podem complicar um pouco. Existem dois tipos de placas ISA: as ISA Plug-and-Play e as placas de legado (Legacy ISA). As primeiras, que começaram a aparecer ainda na época do 486, têm seus endereços configurados automaticamente pelo BIOS, mas não são capazes de compartilhar IRQs como as placas PCI. O sistema de plug-and-play utilizado nelas funciona de forma limitada, de forma que elas ainda podem entrar em conflito com periféricos PCI, mesmo que existam alguns endereços livres. Nesse caso, você pode alterar manualmente o endereço a ser usado pela placa ISA através do gerenciador de dispositivos do Windows, basta clicar sobre o ícone do dispositivo, acessar as propriedades e abrir a guia de recursos. Já nas placas Legacy ISA, é preciso configurar os endereços de IRQ manualmente, através de jumpers, ou então usando um software que acompanha a placa (o que é muito comum em placas de rede ISA). Uma vez configurada para usar um endereço, a placa irá entrar em conflito com qualquer dispositivo que tente usá-lo. Para complicar, o BIOS não enxerga as placas de legado, de forma que existe a possibilidade de que ele atribua o mesmo endereço para algum dispositivo plug-and-play, gerando um conflito. Para evitar esse problema, é preciso reservar manualmente os endereços de IRQ e DMA ocupados por periféricos ISA de legado através da sessão "PNP/PCI Setup" do CMOS Setup. É o tipo de coisa com a qual você não precisa se preocupar em um PC atual (que não possuem sequer slots ISA), mas que era uma necessidade a duas gerações atrás. Caso o PC tivesse instalado um modem ISA, configurado para utilizar o IRQ 7, por exemplo, você precisava marcá-lo com a opção "Legacy ISA" no Setup. Na foto a seguir temos a sessão "PnP/PCI" do Setup de uma placa-mãe com BIOS Award. Veja que cada endereço de IRQ pode ser configurado separadamente: 328
  • 329. A opção default é não reservar os endereços, deixando-os livres para o uso de qualquer dispositivo PnP. Para reservar um endereço, basta alterar a opção. Lembre-se de reservar apenas os endereços necessários, pois ao reservar um endereço ele deixa de estar disponível para as placas plug-and-play. Existe mais um ponto interessante sobre as placas ISA, que é o fato de existirem tanto placas ISA de 8 bits quanto placas de 16 bits. É fácil diferenciá- las, pois as placas de 8 bits utilizam apenas a primeira parte do encaixe. As placas de 8 bits utilizam exatamente o mesmo barramento que era usado no XT, o que significa que elas enxergam apenas os IRQs de 0 a 7. Esse é o caso de muitos modems ISA, por exemplo. Neste caso não existe muito segredo, caso todos os seus IRQs de 0 a 7 já estejam ocupados, o jeito será mudar o endereço de um dos dispositivos, dando lugar ao modem. Você pode simplesmente reservar no Setup o endereço que esteja sendo usado por uma placa plug-and-play que esteja instalada, assim da próxima vez que iniciar o micro, o BIOS se encarrega de dar outro endereço para ela, deixando o modem em paz. Em casos em que o BIOS não detecte um dispositivo recém-instalado ou em que ele insista em assinar o mesmo endereço para duas placas que não suportam o PCI Steering, causando um conflito, existe a opção de limpar o ESCD (usando a opção "Force Update ESCD" ou "Reset Configuration data" do Setup), o que faz com que o BIOS precise reconfigurar os endereços de todas as placas, a partir do zero. 329
  • 330. APIC A partir das placas soquete 7, os dois controladores de interrupções foram substituídos por um controlador aprimorado, batizado de APIC (Advanced Programmable Interrupt Controller). O APIC preserva a compatibilidade com os dois controladores antigos, o que permite que placas de legado e sistemas operacionais antigos continuem funcionando normalmente. Originalmente, ele foi desenvolvido para melhorar a eficiência de sistemas com dois ou mais processadores, mas ele traz benefícios mesmo em máquinas com apenas um. Para que o APIC possa ser ativado, é necessário que exista suporte por parte do processador (todos os processadores a partir do Pentium 1 o suportam), por parte da placa-mãe (o suporte foi introduzido a partir das placas soquete 7, de forma que todas as placas atuais o suportam) e também por parte do sistema operacional. Na família Windows, o suporte foi introduzido a partir do Windows 2000, enquanto no Linux ele existe desde a série 2.4 do Kernel. O APIC pode ser desativado através da opção "APIC Function" (ou similar) do Setup, mas é importante mantê-lo ativado em qualquer PC atual (sobretudo ao usar as versões atuais do Windows), pois ele acrescenta 8 novos endereços de IRQ, do 16 ao 23, além de melhorar sensivelmente o sistema de atribuição automática de endereços. Em teoria, é possível desenvolver controladores APIC com mais endereços, ou mesmo combinar vários controladores na mesma placa, de forma a aumentar o número de endereços disponíveis. Com isso, os fabricantes ganham margem para expansões futuras, que eventualmente se tornem necessárias. Aqui temos um screenshot do gerenciador de dispositivos, mostrando a distribuição dos endereços em um PC atual, com o Windows XP SP2 instalado: 330
  • 331. Veja que além de distribuir os dispositivos instalados entre os agora 24 endereços disponíveis, o sistema permite que alguns endereços sejam compartilhados por vários dispositivos. Graças à expansão do número de endereços, o PC continua com vários endereços livres, apesar da adição das controladoras USB, placa wireless, leitor de cartões e outros dispositivos que não eram comumente usados em PCs antigos. Embora qualquer distribuição Linux atual ofereça suporte ao APIC, é comum que problemas na implementação dos fabricantes (que freqüentemente possuem bugs ou adicionam recursos fora da especificação) causem problemas na detecção de alguns dispositivos, sobretudo de periféricos onboard, como a placa de som ou a placa de rede. Nesses casos, é possível desativar o APIC utilizando a opção "noapic", especificada na tela de boot, ou adicionada na linha com opções para o Kernel dentro do arquivo "/boot/grub/menu.lst" ou "/etc/lilo.conf". 331
  • 332. DMA e I/O Além dos endereços de IRQ, temos também os canais de DMA e os endereços de I/O. Os canais de DMA são utilizados apenas por dispositivos de legado (placas ISA, portas paralelas e drives de disquete) para transferir dados diretamente para a memória RAM, reduzindo dessa forma a utilização do processador. Existem 8 canais de DMA, numerados de 0 a 7. Os canais de 0 a 3 são herança do PC original e trabalham a 8 bits, assim como o barramento externo no processador 8080. Os canais de 4 a 7 foram introduzidos com o 286 e, acompanhando o barramento de dados do processador, são canais de 16 bits. Os canais de DMA são relacionados ao barramento ISA e, justamente por isso, nunca foram introduzidos canais de 32 bits. Em vez disso, o barramento PCI (seguido pelos demais barramentos modernos) trouxe o Bus Mastering, um sistema muito mais eficiente e rápido. Tipicamente, o canal DMA 2 era reservado para a controladora do drive de disquetes, o 3 para a porta paralela (quando configurada para operar em modo ECP), enquanto uma placa de som ISA utilizava os endereços 1 e 5. Justamente por serem muito lentos, os canais de DMA caíram em desuso desde a década de 1990 e continuaram sendo utilizados apenas por periféricos de legado, como drives de disquete, placas de som ISA e portas paralelas padrão ECP. Conforme esses periféricos foram caindo em desuso, os canais de DMA simplesmente deixaram de ser usados, embora permaneçam disponíveis mesmo nos PCs atuais. Finalmente, temos os endereços de I/O (também chamados "endereços de ES", por causa da tradução do Windows). Diferentemente dos endereços de IRQ, eles não são interrupções, mas sim endereços utilizados para a comunicação entre os dispositivos. Cada dispositivo precisa de um endereço próprio, mas, ao contrário dos endereços de IRQ, existe uma abundância de endereços de I/O disponíveis, de forma que eles raramente são um problema. No total, existem 65.536 endereços de I/O e, na maioria dos casos, cada dispositivo utiliza apenas um, de forma que 99% dos endereços permanecem disponíveis. Temos aqui um exemplo da distribuição dos endereços DMA e de I/O em um PC atual. Como ele não possui nenhum dispositivo ISA, nem possui uma porta paralela ou a porta para o drive de disquetes, o único canal de DMA em uso é o canal 4, utilizado pela própria controladora. Já no caso dos endereços de I/O, temos uma longa lista, incluindo praticamente todos os periféricos, além de uma grande quantidade de controladores incluídos na placa-mãe: 332
  • 333. Capítulo 4: Memórias A memória RAM é um componente essencial não apenas nos PCs, mas em qualquer tipo de computador. Por mais que exista espaço de armazenamento disponível, na forma de um HD ou memória flash, é sempre necessária uma certa quantidade de memória RAM e, naturalmente, quanto mais melhor. Graças ao uso da memória swap, é possível rodar a maioria dos sistemas operacionais modernos com quantidades relativamente pequenas de memória. No caso do Linux, é possível inicializar uma instalação enxuta (em modo texto, com pouca coisa além do Kernel e o interpretador de comandos) com apenas 4 MB de memória. O problema é que com pouca memória o sistema fica extremamente lento, como qualquer um que já tentou usar o Windows XP ou uma distribuição Linux recente, com o Gnome ou KDE em um PC com menos de 128 MB de memória pode dizer. :) A sigla "RAM" vem de "Random Access Memory", ou "memória de acesso aleatório", indicando a principal característica da memória RAM, que é o fato de permitir o acesso direto a qualquer um dos endereços disponíveis e de forma bastante rápida. Ao carregar um programa, ele é lido no HD (ou outra mídia de armazenamento) e é transferido para a memória RAM, para só então ser executado pelo processador. A memória RAM oferece tempos de acesso brutalmente mais 333
  • 334. baixos que o HD e trabalha com taxas de transferência muito mais altas, mas possui a desvantagem de perder os dados armazenados quando o micro é desligado, daí a necessidade de salvar os arquivos periodicamente. É também por causa disso que o processo de boot é refeito cada vez que você liga o micro. Durante o boot, o sistema operacional, drivers, bibliotecas e aplicativos são novamente copiados para a memória, junto com suas configurações e preferências. A única forma de evitar repetir o demorado processo de boot é manter a memória RAM ativa, ou salvar seu conteúdo no HD, recuperando-o no próximo boot. Essas são as estratégias usadas pelas opções de suspender e hibernar, disponíveis tanto no Windows quanto em várias distribuições Linux. Ao suspender, a maioria dos componentes do sistema são desligados, incluindo o HD, a placa de vídeo e a maior parte dos componentes da placa- mãe. Mesmo o processador entra em um estágio de baixo consumo, onde a maior parte dos componentes internos são desativados e o clock é reduzido. Praticamente, os únicos componentes que continuam realmente ativos são os módulos de memória. Graças a isso o PC acaba consumindo (geralmente) menos de 20 watts de energia e pode voltar ao estágio original muito rapidamente. Ao hibernar, o conteúdo da memória RAM é copiado para uma área reservada do HD e o micro é desligado. Ao ligar novamente, o conteúdo da memória é restaurado e temos o sistema de volta, sem precisar passar pelo processo normal de boot. O problema da hibernação é que a restauração demora muito mais tempo, já que é necessário ler 512 MB, 1 GB ou mesmo 4 GB de dados (equivalentes à quantidade de memória RAM instalada) a partir do HD, o que muitas vezes demora mais do que um boot completo. :) Além dos diferentes tipos de memória RAM, existem também outras tecnologias de memórias de acesso aleatório, como as SRAM e mais recentemente as MRAM. Temos ainda as onipresentes memórias Flash (que veremos em detalhes mais adiante), que concorrem com os HDs como mídia de armazenamento. O tipo mais comum de memória RAM, aquela que compramos na forma de módulos e instalamos na placa-mãe, é chamada de DRAM, ou "dynamic RAM". Como vimos no capítulo 1, a memória DRAM passou a ser usada apenas a partir do final da década de 70, substituindo os chips de memória SRAM, que eram muito mais caros. Com o passar do tempo, as memória DRAM viraram o padrão, de forma que geralmente dizemos apenas "memória RAM" e não "memória DRAM". Num chip de memória DRAM, cada bit é formado pelo conjunto de um transístor e um capacitor. O transístor controla a passagem da corrente elétrica, enquanto o capacitor a armazena por um curto período. Quando o capacitor contém um impulso elétrico, temos um bit 1 e quando ele está descarregado, temos um bit 0. 334
  • 335. Quando falo em "capacitor", tenha em mente que não estamos falando em nada similar aos capacitores eletrolíticos da placa-mãe. Os "capacitores" usados nos chips de memória são extremamente pequenos e simples, basicamente dois pequenos blocos de metal ligados ao transístor, que conservam o impulso elétrico por apenas uma fração de segundo. Para evitar a perda dos dados, a placa-mãe inclui um circuito de refresh, que é responsável por regravar o conteúdo da memória várias vezes por segundo (a cada 64 milessegundos ou menos), algo similar ao que temos num monitor CRT, onde o canhão de elétrons do monitor precisa atualizar a imagem várias vezes por segundo para evitar que as células de fósforo percam seu brilho. O processo de refresh atrapalha duplamente, pois consome energia (que acaba sendo transformada em calor, contribuindo para o aquecimento do micro) e torna o acesso à memória mais lento. Apesar disso, não existe muito o que fazer, pois a única solução seria passar a usar memória SRAM, que é absurdamente mais cara. A principal diferença é que na memória SRAM cada célula é formada por 4 ou 6 transístores, em vez de apenas um. Dois deles controlam a leitura e gravação de dados, enquanto os demais formam a célula que armazena o impulso elétrico (a célula continua armazenando um único bit). As memórias SRAM são muito mais rápidas e não precisam de refresh, o que faz com que também consumam pouca energia. Além de ser usada como memória cache, a memória SRAM é muito usada em palmtops e celulares, onde o consumo elétrico é uma questão crítica. Seria perfeitamente possível construir um PC que usasse memória SRAM como memória principal, mas o custo seria proibitivo. Foi por causa do custo que as memórias DRAM passaram a ser utilizadas em primeiro lugar. Mesmo utilizando um único transístor por bit, os módulos de memória RAM são formados por um número assustador deles, muito mais que os processadores e outros componentes. Um módulo de memória de 1 GB, por exemplo, é formado geralmente por 8 chips de 1 gigabit cada um (8 gigabits = 1 gigabyte). Cada chip possui então mais de 1 bilhão de transístores e capacitores e o módulo inteiro acumula mais de 8 bilhões de conjuntos. Apesar dessa brutal quantidade de transistores, os chips de memória são relativamente simples de se produzir, já que basta repetir a mesma estrutura indefinidamente. É muito diferente de um processador, que além de ser muito mais complexo, precisa ser capaz de operar a freqüências muito mais altas. Com a evolução nas técnicas de fabricação, os módulos de memória foram ficando cada vez mais baratos com o passar das décadas. Na época dos micros 486, chegava-se a pagar 40 dólares por megabyte de memória, valor que hoje em dia compra um módulo de 512 MB (ou até mais). O problema é que os requisitos dos sistemas operacionais e aplicativos também aumentaram, quase que na mesma proporção. Enquanto o MS-DOS rodava bem com 2 ou 4 MB de memória, o Windows 95 já precisava de pelo menos 16 MB. O Windows XP (assim como a maioria das distribuições Linux atuais) não 335
  • 336. roda bem com menos de 256 MB, enquanto no Vista o ideal é usar 1 GB ou mais. Na maioria das situações, ter uma quantidade suficiente de memória RAM instalada é mais importante que o desempenho do processador, pois sem memória RAM suficiente o sistema passa a utilizar memória swap, que é absurdamente mais lenta. Enquanto uma seqüência de 4 leituras em um módulo de memória DDR2-800 demora cerca de 35 bilionésimos de segundo, um acesso a um setor qualquer do HD demora pelo menos 10 milésimos. A taxa de transferência nominal do mesmo módulo de memória é de 6.4 GB/s, enquanto mesmo um HD rápido, de 7200 RPM tem dificuldades para superar a marca de 60 MB/s, mesmo lendo setores seqüenciais. Ou seja, a memória RAM possui nesse caso um tempo de acesso quase 300.000 vezes menor e uma taxa de transferência contínua mais de 100 vezes maior que o HD. Se lembrarmos que a memória RAM já é muito mais lenta que o processador (justamente por isso temos os caches L1 e L2), fica fácil perceber o quanto o uso de memória swap por falta de memória RAM física pode prejudicar o desempenho do sistema. É fácil monitorar o uso de swap. No Windows XP ou Vista basta pressionar Ctrl+Alt+Del e acessar o gerenciador de tarefas, enquanto no Linux você pode usar o comando "free" ou um aplicativo de gerenciamento, como o ksysguard. No caso do Windows Vista é possível usar um pendrive como memória adicional, através do ReadyBoost. Neste caso entretanto, o pendrive é usado como uma extensão da memória swap e não como um substituto da memória RAM. Como o pendrive oferece tempos de acesso muito mais baixos, ele acaba sendo mais eficiente que o HD nessa tarefa, muito embora a taxa de leitura seja geralmente mais baixa. Esse recurso pode ajudar em micros com pouca memória RAM e também reduzir o tempo de carregamento dos programas. É uma opção para casos em que você já tem o pendrive e procura um uso para ele, mas não espere milagres. Em se tratando de memória, não existe o que inventar: ou você procura um sistema operacional e programas mais leves, ou compra mais memória. Não dá para ficar em cima do muro. ;) Como disse há pouco, embora seja brutalmente mais rápida que o HD e outros periféricos, a memória RAM continua sendo muito mais lenta que o processador. O uso de caches diminui a perda de desempenho, reduzindo o número de acessos à memória; mas, quando o processador não encontra a informação que procura nos caches, precisa recorrer a um doloroso acesso à memória principal, que pode demorar o equivalente a mais de 100 ciclos do processador. Para reduzir a diferença (ou pelo menos tentar impedir que ela aumente ainda mais), os fabricantes de memória passaram a desenvolver um conjunto de novas tecnologias, a fim de otimizar o acesso aos dados. Acompanhando 336
  • 337. essas mudanças, tivemos também alterações físicas no formato dos módulos, de forma que podemos classificar os módulos de memória de duas formas: * Quanto à tecnologia usada (EDO, SDRAM, DDR, DDR2, etc.) * Quanto ao formato usado (SIMM, DIMM, etc.) Vamos a uma explicação mais detalhada: Formatos Nos micros XT, 286 e nos primeiros 386, ainda não eram utilizados módulos de memória. Em vez disso, os chips de memória eram instalados diretamente na placa-mãe, encaixados individualmente em colunas de soquetes (ou soldados), onde cada coluna formava um banco de memória. Esse era um sistema antiquado, que trazia várias desvantagens, por dificultar upgrades de memória ou a substituição de módulos com defeito. Imagine você, fazendo um upgrade de memória numa placa como esta: Não é só você que não achou muito atraente a idéia de ficar catando chips de memória um a um. Foi questão de tempo até que alguém aparecesse com uma alternativa mais prática, capaz de tornar a instalação fácil até mesmo para usuários inexperientes. Os módulos de memória são pequenas placas de circuito onde os chips DIP são soldados, facilitando o manuseio e a instalação. Os primeiros módulos de memória criados são chamados de módulos SIMM, sigla que significa "Single In Line Memory Module", justamente porque existe uma única via de contatos, com 30 vias. Apesar de existirem contatos também na parte de trás do módulo, eles servem apenas como uma extensão dos contatos frontais, de forma a aumentar a área de contato com o soquete. 337
  • 338. Examinando o módulo, você verá um pequeno orifício em cada contato, que serve justamente para unificar os dois lados. Módulo SIMM de 30 vias Os módulos de 30 vias possuíam sempre 8 ou 9 chips de memória. Cada chip fornecia um único bit de dados em cada transferência, de forma que 8 deles formavam um módulo capaz de transferir 8 bits por ciclo. No caso dos módulos com 9 chips, o último era destinado a armazenar os bits de paridade, que melhoravam a confiabilidade, permitindo identificar erros. Hoje em dia os módulos de memória são mais confiáveis, de forma que a paridade não é mais usada. No lugar dela, temos o ECC, um sistema mais avançado, usado em módulos de memória destinados a servidores. Os módulos de 30 vias foram utilizados em micros 386 e 486 e foram fabricados em várias capacidades. Os mais comuns foram os módulos de 1 MB, mas era possível encontrar também módulos de 512 KB, 2 MB e 4 MB. Existiram também módulos de 8 e 16 MB, mas eles eram muito raros devido ao custo. Os processadores 386 e 486 utilizavam um barramento de 32 bits para o acesso à memória, o que tornava necessário combinar 4 módulos de 30 vias para formar um banco de memória. Os 4 módulos eram então acessados pelo processador como se fossem um só. Era preciso usar os módulos em quartetos: 4 módulos ou 8 módulos, mas nunca um número quebrado. A exceção ficava por conta dos micros equipados com processadores 386SX, onde são necessários apenas 2 módulos, já que o 386SX acessa a memória usando palavras de 16 bits: 338
  • 339. Apesar de serem muito mais práticos do que manipular diretamente os chips DIP, os módulos SIMM de 30 vias ainda eram bastante inconvenientes, já que era preciso usar 4 módulos idênticos para formar cada banco de memória. Eles foram desenvolvidos pensando mais na questão da simplicidade e economia de custos do que na praticidade. Para solucionar o problema, os fabricantes criaram um novo tipo de módulo de memória SIMM, de 32 bits, que possui 72 vias. Os módulos de 72 vias substituíram rapidamente os antigos nas placas para 486 e se tornaram o padrão nos micros Pentium, sendo em seguida substituídos pelos módulos de 168 vias. Módulo SIMM de 72 vias Em vez de quatro módulos, é preciso apenas um módulo SIMM de 72 vias para formar cada banco de memória nos micros 486. Como o Pentium acessa a memória usando palavras de 64 bits, são necessários 2 módulos em cada banco. É por isso que nos micros Pentium 1 precisamos sempre usar os módulos de memória em pares: O acesso de 64 bits à memória foi introduzido para permitir que o processador conseguisse acessar grandes quantidades de dados mais rapidamente. O processador é tão mais rápido que a memória RAM, que depois de esperar vários ciclos para poder acessá-la, o melhor a fazer é pegar a maior quantidade de dados possível e guardar tudo no cache. Naturalmente os dados serão processados em blocos de 32 bits, mas a poupança ajuda bastante. Dentro de um banco, todos os módulos são acessados ao mesmo tempo, como se fossem um só, por isso era sempre recomendável usar dois módulos iguais. Ao usar quatro módulos, o importante era que cada par fosse composto por dois módulos iguais. Não existia problema em usar dois pares de módulos diferentes, como ao usar dois de 16 MB e mais dois de 8 MB para totalizar 48 MB, por exemplo. 339
  • 340. Uma curiosidade é que algumas placas-mãe para Pentium podem trabalhar com apenas um módulo de 72 vias. Nesse caso, a placa engana o processador, fazendo dois acessos de 32 bits consecutivos, entregando os dados de uma só vez para o processador. Apesar de funcionar, esse esquema reduz bastante a velocidade do micro, pois a taxa de transferência ao ler dados a partir da memória é efetivamente reduzida à metade. Finalmente, temos os módulos DIMM, usados atualmente. Ao contrário dos módulos SIMM de 30 e 72 vias, os módulos DIMM possuem contatos em ambos os lados do módulo, o que justifica seu nome, "Double In Line Memory Module" ou "módulo de memória com dupla linha de contato". Todos os módulos DIMM são módulos de 64 bits, o que eliminou a necessidade de usar 2 ou 4 módulos para formar um banco de memória. Muitas placas-mãe oferecem a opção de usar dois módulos (acessados simultaneamente) para melhorar a velocidade de acesso. Esse recurso é chamado de dual-channel e melhora consideravelmente o desempenho, sobretudo nas placas-mãe com vídeo onboard, onde a placa de vídeo disputa o acesso à memória RAM com o processador principal. De qualquer forma, mesmo nas placas dual-channel, usar os módulos em pares é opcional; você pode perfeitamente usar um único módulo, mas neste caso o suporte a dual- channel fica desativado. Existem três formatos de memória DIMM. Os mais antigos são os módulos de memória SDR, de 168 vias, que eram utilizados há até poucos anos. Em seguida, temos os módulos de memória DDR, que possuem 184 contatos e os módulos DDR2, que possuem 240. Apesar do maior número de contatos, os módulos DDR e DDR2 são exatamente do mesmo tamanho que os módulos SDR de 168 vias, por isso foram introduzidas mudanças na posição dos chanfros de encaixe, de forma que você não consiga encaixar os módulos em placas incompatíveis. Os módulos SDR possuem dois chanfros, enquanto os DDR possuem apenas um chanfro, que ainda por cima é colocado em uma posição diferente: Módulo DIMM SDR (em cima) e módulo DDR Os módulos DDR2 também utilizam um único chanfro, mas ele está posicionado mais próximo do canto do módulo que o usado nos módulos DDR, 340
  • 341. de forma que é novamente impossível encaixar um módulo DDR2 numa placa antiga: Módulo DIMM DDR2 Isso é necessário, pois além das mudanças na forma de acesso, os módulos DDR2 utilizam tensão de 1.8V, enquanto os módulos DDR usam 2.5V. Se fosse possível instalar um módulo DDR2 em uma placa antiga, a maior tensão queimaria o módulo rapidamente. Outra diferença é que os chips DDR2 utilizam o encapsulamento BGA (Ball Grid Array), no lugar do encapsulamento TSOP (Thin Small-Outline Package), usado nos chips SDR e DDR. A grande diferença é que no BGA os pontos de solda são posicionados diretamente na parte inferior dos chips, em vez de serem usadas as "perninhas" laterais. Isso reduz a distância que o sinal elétrico precisa percorrer, além de reduzir o nível de interferências, permitindo que os módulos sejam capazes de operar a freqüências mais altas. Esta imagem ilustrativa da Micron mostra bem como os chips se parecem: Chips BGA de memória Mais recentemente surgiram no mercado alguns módulos de memória DDR que também utilizam chips BGA, mas eles são menos comuns. Como os módulos DDR2 trabalham a freqüências mais altas, o uso de dissipadores se tornou mais comum. Eles não são realmente necessários, mas a melhor dissipação do calor permite que o módulo trabalhe a freqüências mais 341
  • 342. altas, por isso eles se tornaram norma nos módulos DDR2 de alto desempenho e, principalmente, nos módulos "premium", destinados a overclock. Alguns fabricantes chegam a utilizar heat-pipes ou a oferecer coolers ativos, que podem ser instalados sobre os módulos. Módulos DDR2 com dissipadores Outra característica que torna os módulos DDR2 diferentes é a presença de um terminador resistivo dentro de cada chip de memória. O terminador é necessário para "fechar o circuito", evitando que os sinais elétricos retornem na forma de interferência ao chegarem ao final do barramento. Nos módulos DDR os terminadores são instalados na placa-mãe, o que torna a terminação menos eficiente. Como os módulos DDR2 operam a freqüências muito mais altas, a presença do terminador dentro dos próprios chips se tornou uma necessidade, já que torna o sinal mais estável e livre de ruídos. Existem também os módulos SODIMM (Small Outline DIMM), destinados a notebooks. Eles são basicamente versões miniaturizadas dos módulos destinados a desktops, que utilizam os mesmos tipos de chips de memória. Os módulos SODIMM SDR possuem 144 pinos, enquanto os módulos DDR e DDR2 possuem 200 pinos. Nos módulos SDR o chanfro fica próximo ao centro do módulo, enquanto nos DDR e DDR2 ele fica à esquerda. Assim como nos módulos para desktops, existe uma pequena diferença no posicionamento do chanfro entre os módulos DDR e DDR2, que impede o encaixe incorreto, já que ambos são incompatíveis. 342
  • 343. Módulo SODIMM DDR2 Tecnologias utilizadas Um chip de memória é um exército de clones, formado por um brutal número de células idênticas, organizadas na forma de linhas e colunas, de forma similar a uma planilha eletrônica. O chip de memória em si serve apenas para armazenar dados, não realiza nenhum tipo de processamento. Por isso, é utilizado um componente adicional, o controlador de memória, que pode ser incluído tanto no chipset da placa-mãe quanto dentro do próprio processador, como no caso dos processadores derivados do Athlon 64. Para acessar um determinado endereço de memória, o controlador primeiro gera o valor RAS (Row Address Strobe), ou o número da linha da qual o endereço faz parte, gerando em seguida o valor CAS (Column Address Strobe), que corresponde à coluna. Quando o RAS é enviado, toda a linha é ativada simultaneamente; depois de um pequeno tempo de espera, o CAS é enviado, fechando o circuito e fazendo com que os dados do endereço selecionado sejam lidos ou gravados: 343
  • 344. Não existe um caminho de volta, ligando cada endereço de volta ao controlador de memória. Em vez disso, é usado um barramento comum, compartilhado por todos os endereços do módulo. O controlador de memória sabe que os dados que está recebendo são os armazenados no endereço X, pois ele se "lembra" que acabou de acessá-lo. Antigamente (na época dos módulos de 30 vias), cada chip de memória se comportava exatamente dessa forma, lendo um bit de cada vez. Apesar disso, o processador lia 32 bits de dados a cada ciclo, de forma que eram usados 4 módulos, com 8 chips cada um. Do ponto de vista do processador, não existia divisão, os chips eram acessados como se fossem um só. O processador não via 32 endereços separados, em 32 chips diferentes, mas sim um único endereço, contendo 32 bits. Nos módulos DIMM atuais são geralmente usados 8 chips de 8 bits cada um, formando os 64 bits fornecidos ao processador. Existem ainda módulos com 16 chips de 4 bits cada, ou ainda, módulos com 4 chips de 16 bits (comuns em notebooks). Do ponto de vista do processador, não faz diferença, desde que somados os chips totalizem 64 bits. Imagine que o controlador de memória envia seqüências com 4, 8 ou 16 pares de endereços RAS e CAS e recebe de volta o mesmo número de pacotes de 64 bits. Mesmo em casos em que o processador precisa de apenas alguns poucos bytes, contendo uma instrução ou bloco de dados, ele precisa ler todo o bloco de 64 bits adjacente, mesmo que seja para descartar os demais. No caso das placas dual-channel, continuamos tendo acessos de 64 bits, a única diferença é que agora a placa-mãe é capaz de acessar dois endereços diferentes (cada um em um módulo de memória) a cada ciclo de clock, ao invés de apenas um. Isso permite transferir o dobro de dados por ciclo, fazendo com que o processador precise esperar menos tempo ao transferir grandes quantidades de dados. 344
  • 345. Na verdade, nos PCs atuais, praticamente qualquer dispositivo pode acessar a memória diretamente através do barramento PCI, AGP, PCI Express e até mesmo a partir das portas SATA, IDE e USB. Naturalmente, todos os acessos são coordenados pelo processador, mas como a memória é uma só, temos situações onde o processador precisa esperar para acessar a memória, porque ela está sendo acessada por outro dispositivo. Existem várias formas de melhorar o desempenho da memória RAM. A primeira é aumentar o número de bits lidos por ciclo, tornando o barramento mais largo, como o aumento de 32 para 64 bits introduzida pelo Pentium 1, que continua até os dias de hoje. O problema em usar um barramento mais largo é que o maior número de trilhas necessárias, tanto na placa-mãe quanto nos próprios módulos de memória, aumentam a complexidade e o custo de produção. A segunda é acessar dois ou mais módulos de memória simultaneamente, como nas placas dual-channel. O problema é que nesse caso precisamos de dois módulos, além de circuitos e trilhas adicionais na placa-mãe. A terceira é criar módulos de memória mais rápidos, como no caso das memórias DDR e DDR2. Essa questão da velocidade pode ser dividida em dois quesitos complementares: o número de ciclos por segundo e a latência, que é o tempo que a primeira operação numa série de operações de leitura ou escrita demora para ser concluída. O tempo de latência poderia ser comparado ao tempo de acesso de um HD, enquanto o número de ciclos poderia ser comparado ao clock do processador. É aqui que entram as diferentes tecnologias de memórias que foram introduzidas ao longo das últimas décadas, começando pelas memórias regulares, usadas nos XTs e 286, que evoluíram para as memórias FPM, usadas em PCs 386 e 486, em seguida para as memórias EDO, usadas nos últimos micros 486s e nos Pentium. Estas três primeiras tecnologias foram então substituídas pelas memórias SDRAM, seguidas pelas memórias DDR e DDR2 usadas atualmente. Memórias Regulares As memórias regulares são o tipo mais primitivo de memória RAM. Nelas, o acesso é feito da forma tradicional, enviando o endereço RAS, depois o CAS e aguardando a leitura dos dados para cada ciclo de leitura. Isso funcionava bem nos micros XT e 286, onde o clock do processador era muito baixo, de forma que a memória RAM era capaz de funcionar de forma sincronizada com ele. Em um 286 de 8 MHz, eram usados chips com tempo de acesso de 125 ns (nanossegundos) e em um de 12 MHz eram usados chips de 83 ns. O problema era que a partir daí as memórias da época atingiram seu limite e passou a ser necessário fazer com que a memória trabalhasse de forma assíncrona, onde o processador trabalha a uma freqüência mais alta que a memória RAM. 345
  • 346. A partir do 386, a diferença passou a ser muito grande, de forma que as placas-mãe passaram a trazer chips de memória cache, dando início à corrida que conhecemos. Memórias FPM A primeira melhora significativa na arquitetura das memórias veio com o FPM (Fast-Page Mode, ou "modo de paginação rápida"). A idéia é que, ao ler um bloco de instruções ou arquivo gravado na memória, os dados estão quase sempre gravados seqüencialmente. Não seria preciso então enviar o endereço RAS e CAS para cada bit a ser lido, mas simplesmente enviar o endereço RAS (linha) uma vez e em seguida enviar uma seqüência de até 4 endereços CAS (coluna), realizando uma série rápida de 4 leituras. O primeiro ciclo de leitura continua tomando o mesmo tempo, mas as 3 leituras seguintes passam a ser bem mais rápidas. Graças a essa pequena otimização, as memórias FPM conseguem ser até 30% mais rápidas que as memórias regulares, sem grandes alterações nos chips de memória ou na técnica de fabricação. O burst (sequência de acessos rápidos) de 4 leituras pode ser prolongado para 8, ou até mesmo 16 leituras consecutivas, desde que lendo dados gravados em endereços adjacentes, da mesma linha. As memórias FPM foram utilizadas em micros 386, 486 e nos primeiros micros Pentium, na forma de módulos SIMM de 30 ou 72 vias, com tempos de acesso de 80, 70 ou 60 ns, sendo as de 70 ns as mais comuns. Instaladas em uma placa-mãe soquete 7, que trabalhe com bus de 66 MHz, os intervalos de espera de memórias FPM podem ser de até 6-3-3-3, o que significa que o processador terá de esperar cinco ciclos da placa-mãe para a memória efetuar a primeira leitura de dados e somente mais 3 ciclos para cada leitura subseqüente. Os tempos de espera das memórias podiam ser configurados no setup, através da opção "Memory Timing" ou similar, onde ficavam disponíveis opções como "slow", "normal" e "fast", que substituem os valores numéricos. No caso das placas para 486, que operavam a clocks mais baixos (30, 33 ou 40 MHz), os tempos de espera podiam ser configurados com valores mais baixos, como 4-3-3-3 ou 3-2-2-2, já que, com menos ciclos por segundo, é natural que os tempos de resposta dos módulos correspondam a um número menor de ciclos da placa-mãe. Memórias EDO As memórias EDO (Extended Data Output) foram introduzidas a partir de 1994 e trouxeram mais uma melhoria significativa no modo de acesso a dados. Nas memórias FPM, uma leitura não pode ser iniciada antes que a anterior termine, mesmo dentro do burst de 4 leituras dentro da mesma linha. O controlador 346
  • 347. precisa esperar que os dados referentes à leitura anterior cheguem, antes de poder ativar endereço CAS seguinte. Nas memórias EDO, o controlador faz a leitura enviando o endereço RAS, como de costume, e depois enviando os 4 endereços CAS numa freqüência predefinida, sem precisar esperar que o acesso anterior termine. Os sinais chegam às células de memória na seqüência em que foram enviados e, depois de um pequeno espaço de tempo, o controlador recebe de volta as 4 leituras. O resultado acaba sendo exatamente o mesmo, mas passa a ser feito de forma mais rápida. Usadas em uma placa soquete 7, operando a 66 MHz, as memórias EDO são capazes de trabalhar com tempos de acesso de apenas 6- 2-2-2, ou mesmo 5-2-2-2 (nos módulos de 60 ns). Nos bursts de 8 ou mais leituras, o ganho acaba sendo ainda maior, com o módulo FPM realizando a leitura dos 8 endereços em 27 ciclos (6-3-3-3-3-3-3-3) e o EDO em 20 (6-2-2-2- 2-2-2-2). Veja que o ganho é maior em leituras de vários endereços consecutivos, por isso alguns aplicativos se beneficiam mais do que outros. Os módulos de memória EDO foram produzidos em versões com tempos de acesso de 70, 60 e 50 ns, com predominância dos módulos de 60 ns. Eles foram usados predominantemente na forma de módulos de 72 vias, usados nos micros 486 e Pentium fabricados a partir de 1995. Existiram ainda alguns módulos DIMM de 168 vias com memória EDO. Eles foram bastante raros, pois foram logo substituídos pelos módulos de memória SDRAM. As melhorias na arquitetura das memórias EDO tornaram-nas incompatíveis com placas-mãe equipadas com chipsets mais antigos. Basicamente, apenas as placas para processadores Pentium e algumas placas-mãe para 486 com slots PCI (as mais recentes) aceitam trabalhar com memórias EDO. Existem também placas para 486 "tolerantes" que funcionam com memórias EDO, apesar de não serem capazes de tirar proveito do modo de acesso mais rápido, e finalmente, as placas incompatíveis, que nem chegam a inicializar caso sejam instaladas memórias EDO. Todos os módulos de 30 vias são de memórias FPM, enquanto (com exceção de alguns módulos antigos) todos os de 168 vias são de memórias SDRAM. A confusão existe apenas nos módulos de 72 vias, que podem ser tanto de memórias EDO quanto de memórias FPM. Para saber quem é quem, basta verificar o tempo de acesso. Todo módulo de memória traz seus dados estampados nos chips, na forma de alguns códigos; o tempo de acesso é indicado no final da primeira linha. Se ela terminar com -7, -70, ou apenas 7, ou 70, o módulo possui tempo de acesso de 70 ns. Se por outro lado a primeira linha terminar com -6, -60, 6 ou 60 o módulo é de 60 ns. Como quase todos os módulos de 70 ns são de memórias FPM, e quase todos os módulos de memórias EDO são de 60 ns, você pode usar esse método para determinar com 95% de certeza o tipo de memória usada: 347
  • 348. 348
  • 349. Memórias SDRAM Tanto as memórias FPM quanto as memórias EDO são assíncronas, o que significa que elas trabalham em seu próprio ritmo, independentemente dos ciclos da placa-mãe. Isso explica porque memórias FPM que foram projetadas para funcionar em placas para processadores 386 ou 486 funcionam sem problemas em placas soquete 7, que trabalham a 66 MHz. Na verdade, a memória continua trabalhando na mesma velocidade, o que muda são os tempos de espera que passam a ser mais altos. Assim, em vez de responder a cada 2 ciclos da placa-mãe, elas podem passar a responder a cada 3 ou 4 ciclos, por exemplo. As memórias SDRAM (Synchronous Dynamic RAM) por sua vez, são capazes de trabalhar sincronizadas com os ciclos da placa-mãe, sem tempos de espera. Isso significa que a temporização das memórias SDRAM é sempre de uma leitura por ciclo. Independentemente da freqüência de barramento utilizada, os tempos de acesso serão sempre de 6-1-1-1, ou mesmo 5-1-1-1. Veja que o primeiro acesso continua tomando vários ciclos, pois nele é necessário realizar o acesso padrão, ativando a linha (RAS) e depois a coluna (CAS). Apenas a partir do segundo acesso é que as otimizações entram em ação e a memória consegue realizar uma leitura por ciclo, até o final da leitura. O burst de leitura pode ser de 2, 4 ou 8 endereços e existe também o modo "full page" (disponível apenas nos módulos SDRAM), onde o controlador pode especificar um número qualquer de endereços a serem lidos seqüencialmente, até um máximo de 512. Ou seja, em situações ideais, pode ser possível realizar a leitura de 256 setores em 260 ciclos! :). Só para efeito de comparação, se fossem usadas memórias regulares, com tempos de acesso similares, a mesma tarefa tomaria pelo menos 1280 ciclos. Outra característica que ajuda as memórias SDRAM a serem mais rápidas que as EDO e FPM é a divisão dos módulos de memória em vários bancos. Um módulo DIMM pode ser formado por 2, 4, ou mesmo 8 bancos de memória, cada um englobando parte dos endereços disponíveis. Apenas um dos bancos pode ser acessado de cada vez, mas o controlador de memória pode aproveitar o tempo de ociosidade para fazer algumas operações nos demais, como executar os ciclos de refresh e também a pré-carga dos bancos que serão acessados em seguida. Nos módulos EDO e FPM, todas essas operações precisam ser feitas entre os ciclos de leitura, o que toma tempo e reduz a freqüência das operações de leitura. A partir da memória SDRAM, tornou-se desnecessário falar em tempos de acesso, já que a memória trabalha de forma sincronizada em relação aos ciclos da placa-mãe. As memórias passaram então a ser rotuladas de acordo com a freqüência em que são capazes de operar. No caso das memórias SDRAM temos as memórias PC-66, PC-100 e PC-133, no caso das DDR temos as PC- 200, PC-266, PC-333, PC-400 (e assim por diante), enquanto nas DDR2 temos as PC-533, PC-666, PC-800, PC-933, PC-1066 e PC-1200. 349
  • 350. Um módulo de memória PC-133 deve ser capaz de operar a 133 MHz, fornecendo 133 milhões de leituras (teóricas) por segundo. Entretanto, essa velocidade é atingida apenas quando o módulo realiza um burst de várias leituras. O primeiro acesso continua levando 5, 6 ou mesmo 7 ciclos da placa- mãe, como nas memórias antigas. Ou seja, o fato de ser um módulo PC-100 não indica que o módulo possui um tempo de acesso de 10 ns ou menos (nem mesmo os módulos DDR2 atuais atingem essa marca). Pelo contrário, a maioria dos módulos PC-100 trabalhavam com tempos de acesso de 40 ns. Mas, graças a todas as otimizações que vimos, as leituras podiam ser paralelizadas, de forma que no final o módulo suporta bursts de leitura onde, depois de um lento ciclo inicial, o módulo consegue realmente entregar 64 bits de dados a cada 10 ns. Independentemente da freqüência de operação, temos também os módulos CL2 e CL3, onde o "CL" é abreviação de "CAS latency", ou seja, o tempo de latência relacionado ao envio do valor CAS, durante o primeiro acesso de cada burst. Em módulos CL2, o envio do valor CAS toma 2 ciclos, enquanto nos CL3 toma 3 ciclos. A eles, somamos um ciclo inicial e mais dois ciclos relacionados ao envio do valor RAS, totalizando 5 (nos módulos CL2) ou 6 (nos CL3) ciclos para o acesso inicial. A diferença acaba sendo pequena, pois os acessos seguintes demoram sempre apenas um ciclo. Um módulo CL2 realizaria um burst de 8 leituras em 12 ciclos (5-1-1-1-1-1-1-1), enquanto o CL3 demoraria 13 ciclos (6-1-1-1-1-1-1-1). Ou seja, embora os módulos CL2 sejam celebrados e sejam alvo de um grande esforço de marketing por parte dos fabricantes, a diferença de performance é realmente muito pequena para justificar pagar mais caro num módulo CL2. Apesar disso, os módulos CL2 trabalham com tempos de acesso um pouco mais baixos e por isso suportam melhor o uso de freqüências mais altas que o especificado, dando mais margem para overclock. Veja que das memórias regulares, até as SDRAM, foi possível multiplicar a velocidade das memórias sem fazer alterações fundamentais nas células, que continuam seguindo o mesmo projeto básico, com um transístor e um capacitor para cada bit armazenado. Desde a década de 80, as reduções nos tempos de acesso foram apenas incrementais, acompanhando as melhorias nas técnicas de fabricação. O que realmente evoluiu com o passar do tempo foram os circuitos em torno dos módulos, que otimizaram o processo de leitura, extraindo mais e mais performance. Chegamos então às memórias DDR, DDR2 e DDR3 usadas atualmente, que levam este processo crescente de otimização a um novo nível. 350
  • 351. Memórias DDR Apesar das otimizações, os módulos de memória SDRAM continuam realizando apenas uma transferência por ciclo, da forma mais simples possível. Depois de decorrido o longo ciclo inicial, as células de memória entregam uma leitura de dados por ciclo, que passa pelos buffers de saída e é despachada através do barramento de dados. Todos os componentes trabalham na mesma freqüência: As memórias DDR implementam um novo truque, que as torna capazes de realizarem duas transferências por ciclo e serem quase duas vezes mais rápidas que as memórias SDRAM, mesmo mantendo a mesma freqüência de operação e a mesma tecnologia básica. Vem daí o termo "DDR", que significa "Double Data Rate", ou duplo fluxo de dados. Com o lançamento das memórias DDR, as SDRAM passaram a ser chamadas de "SDR", ou "Single Data Rate". Os chips de memória DDR incluem circuitos adicionais, que permitem gerar comandos de acesso e receber os dados referentes às leituras duas vezes por ciclo de clock, executando uma operação no início do ciclo e outra no final. Como são utilizadas as mesmas trilhas para realizar ambas as transferências, não foi necessário fazer grandes modificações nem nos módulos, nem nas placas-mãe. Apesar disso, as células de memória propriamente ditas continuam operando na mesma freqüência. Em um módulo DDR-266, por exemplo, elas operam a apenas 133 MHz, da mesma forma que num módulo PC-133. O pulo do gato é fazer com que cada um dos dois comandos de leitura (ou gravação) sejam enviados para um endereço diferente, na mesma linha. As duas leituras são enviadas através do barramento de dados na forma de duas transferências separadas, uma realizada no início e a outra no final do ciclo de clock: 351
  • 352. O maior problema é que o ciclo inicial continua demorando o mesmo tempo que nas memórias SDRAM, de forma que o ganho aparece apenas em leituras de vários setores consecutivos e a taxa de transferência nunca chega realmente a dobrar, variando bastante de acordo com o tipo de aplicativo usado. A temporização para um burst de 8 leituras, usando memórias DDR, seria 5-½- ½-½-½-½-½-½ (8.5 ciclos) ao invés de 5-1-1-1-1-1-1-1 (12 ciclos) como num módulo SDR. A diferença é menor em bursts menores, de apenas duas ou quatro leituras. Apesar disso, as memórias DDR acabaram sendo um excelente negócio, pois tornaram possível obter ganhos perceptíveis de performance sem um aumento considerável no custo. Justamente por isso elas se popularizaram rapidamente, substituindo as memórias SDRAM num espaço de menos de um ano. Os módulos DDR podem ser vendidos tanto segundo sua freqüência de operação quanto segundo sua taxa de transferência. DDR-200 (100 MHz) = PC1600 DDR-266 (133 MHz) = PC2100 DDR-333 (166 MHz) = PC2700 DDR-400 (200 MHz) = PC3200 DDR-466 (233 MHz) = PC3700 DDR-500 (250 MHz) = PC4000 Assim como no caso dos módulos SDRAM, existem módulos de memória DDR CL2 e CL3, sendo que nos CL2 o tempo do acesso inicial é reduzido em um ciclo, resultando em um pequeno ganho de desempenho. Como as DDR realizam duas operações por ciclo, surgiram também os módulos CL2.5, que ficam no meio do caminho. As especificações dos módulos indicam a freqüência máxima para a qual seu funcionamento foi comprovado. Nada impede que você use o módulo a uma freqüência mais baixa que o especificado; você pode usar um módulo DDR-400 em uma placa-mãe configurada para trabalhar a 133 MHz, por exemplo, mas nesse caso não existe ganho de desempenho com relação a um módulo DDR- 352
  • 353. 266, com exceção de pequenas diferenças relacionadas ao valor CAS ou à temporização dos dois módulos. Quase sempre, é possível também usar o módulo a freqüências um pouco mais altas que o especificado, fazendo overclock. O módulo DDR-400 poderia funcionar então a 215 MHz, por exemplo. Fazer overclock sem aumentar a tensão da memória não traz perigo para os módulos (mesmo a longo prazo), porém você também não tem garantia de estabilidade. Normalmente os módulos CL2 ou CL2.5 suportam melhor os overclocks, já que o controlador tem mais margem para aumentar a temporização dos módulos para compensar o aumento na freqüência. Ao misturar dois módulos de especificações diferentes, é necessário nivelar por baixo, usando a freqüência suportada pelo módulo mais lento. Justamente por isso, nem sempre é conveniente aproveitar os módulos antigos ao fazer upgrade, pois você acaba sub-utilizando o novo módulo. Em casos onde você tem, por exemplo, um módulo de 128 MB de memória DDR-266, vale mais a pena vender o módulo antigo e comprar um módulo DDR-400 ou DDR-466 de 512 MB ou mais, do que usar o antigo em conjunto com um módulo novo. Verifique apenas se a placa-mãe permite ajustar a freqüência de forma assíncrona, sem aumentar junto a freqüência do FSB (de forma que você possa usar a freqüência correta para o módulo, sem com isso alterar a freqüência dos demais componentes). Continuando, quase todos os módulos de memória SDRAM ou DDR possuem um chip de identificação chamado de "SPD" (Serial Presence Detect), que armazena os códigos de identificação do módulo, detalhes sobre a freqüência, tempos de acesso, CAS latency e outras especificações. Estas informações são exibidas por programas de identificação, como o CPU-Z e o Sandra. No Linux, você pode ler as informações gravadas no chip usando o script "decode- dimms.pl" (você pode encontrá-lo usando o comando "locate"), que faz parte do pacote "lm-sensors". Ele retorna uma longa lista de informações sobre cada um dos módulos instalados na máquina, como neste exemplo: Memory Serial Presence Detect Decoder By Philip Edelbrock, Christian Zuckschwerdt, Burkart Lingner, Jean Delvare and others Version 2.10.1 Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0050 Guessing DIMM is in bank 1 ---=== SPD EEPROM Information ===--- EEPROM Checksum of bytes 0-62 OK (0x8C) # of bytes written to SDRAM EEPROM 128 Total number of bytes in EEPROM 256 Fundamental Memory type DDR SDRAM SPD Revision 0.0 353
  • 354. ---=== Memory Characteristics ===--- Maximum module speed 400MHz (PC3200) Size 512 MB tCL-tRCD-tRP-tRAS 3-3-3-8 Supported CAS Latencies 3, 2.5, 2 Supported CS Latencies 0 Supported WE Latencies 1 Minimum Cycle Time (CAS 3) 5 ns Maximum Access Time (CAS 3) 0.65 ns Minimum Cycle Time (CAS 2.5) 6 ns Maximum Access Time (CAS 2.5) 0.7 ns Minimum Cycle Time (CAS 2) 7.5 ns Maximum Access Time (CAS 2) 0.75 ns ---=== Manufacturing Information ===--- Manufacturer Kingston Manufacturing Location Code 0x04 Part Number K Manufacturing Date 0x001E Assembly Serial Number 0x6B376D48 Pelas informações, podemos ver que se trata de um módulo DDR-400 (PC3200) de 512 MB da Kingston. Veja que o módulo suporta o uso de CAS 3, 2.5 ou 2, mas em seguida é especificado que o tempo mínimo de acesso usando CAS 3 são 5 ns e usando CAS 2 são 7.5 ns. Ou seja, o módulo só é capaz de usar CAS 2 em freqüências mais baixas. Ao operar a 200 MHz, sua freqüência nominal, ele passa automaticamente a usar CAS 3. Apesar das especificações serem um pouco confusas, elas indicam que na verdade tenho em mãos um módulo CL3. O SPD é um pequeno chip de memória EEPROM, com apenas 128 ou 256 bytes, que pode ser localizado facilmente no módulo: 354
  • 355. Graças a ele, a placa-mãe pode utilizar automaticamente as configurações recomendadas para o módulo, facilitando a configuração. Mas, você pode desativar a configuração automática (By SPD) e especificar sua própria configuração através do Setup. A maioria das placas atuais permitem que a memória opere de forma assíncrona com o clock da placa-mãe, permitindo que a placa-mãe opere a 166 MHz, enquanto a memória opera a 200 ou 233 MHz, por exemplo. Ao usar um módulo antigo, também é possível fazer o contrário, mantendo a placa-mãe a 200 MHz, mas configurando a memória para operar a 133 MHz, por exemplo: 355
  • 356. Muitas placas vão além, permitindo que você ajuste manualmente o valor CAS da memória. Isso pode ser útil ao fazer overclock, pois um módulo DDR-400, pode não conseguir trabalhar estavelmente a 233 MHz (por exemplo), mantendo o CAS em 2 tempos, mas pode funcionar perfeitamente se o tempo for aumentado para 3 tempos. O inverso também é possível. Um módulo DDR- 400 CAS3 poderia vir a trabalhar estavelmente com CAS 2 se a freqüência fosse reduzida para 166 MHz, por exemplo, oferecendo uma boa flexibilidade para quando você tem tempo disponível e quer chegar ao melhor desempenho possível. Algumas placas vão ainda mais longe, oferecendo conjuntos completos de ajustes, como neste segundo screenshot: 356
  • 357. Brincar com a freqüência e tempos de acesso da memória não oferece riscos para o equipamento. No máximo você pode precisar limpar o setup, para que o micro volte a inicializar depois de tentar usar uma configuração não suportada pelos módulos. O maior risco está em aumentar a tensão usada pelos módulos (Memory Voltage). É comprovado que pequenos aumentos na tensão aumentam a possibilidade dos módulos trabalharem estavelmente a freqüências mais altas, sobretudo nos módulos DDR2, que dissipam mais calor. O problema é que isso também pode abreviar a vida útil dos módulos, por isso nem sempre é uma boa idéia. Aumentos de até 5 a 6% estão dentro do limite de tolerância dos circuitos e não oferecem grandes riscos. Você pode usar 2.65v num módulo DDR ou 1.9v num módulo DDR2, mas a partir daí existe prejuízo para a vida útil. Aumentos a partir de 20% podem realmente queimar os módulos em poucas horas, por isso as opções normalmente não ficam disponíveis. Memórias DDR2 Seguindo a tendência inaugurada pelas memórias DDR, as DDR2 novamente duplicam a taxa de transferência, realizando agora 4 operações por ciclo. Novamente, as células de memória continuam trabalhando na mesma freqüência anterior e o acesso inicial continua demorando aproximadamente o mesmo tempo. Entretanto, as demais operações dentro do burst passam a ser realizadas em apenas um quarto de ciclo de clock. Usando memórias DDR2, um burst de 8 leituras demoraria apenas 6.75 ciclos de clock (5-¼-¼-¼-¼-¼-¼- ¼), contra 8.5 ciclos nas DDR e 12 nas SDR. Como você pode ver, a diferença é maior em aplicativos que precisam manipular grandes blocos de dados e menor em aplicativos que lêem 357
  • 358. pequenos blocos de dados espalhados. Em nenhuma situação prática a transferência chega realmente a dobrar. Dizer que as "DDR2 são duas vezes mais rápidas" é apenas uma figura de linguagem. :) Em 2005, quando os primeiros módulos DDR2-533 chegaram ao mercado, eles rapidamente ganharam a fama de "lentos", pois eram comparados a módulos DDR-400 ou DDR-466, que já estavam entrincheirados. Embora um módulo DDR2 ganhe de um DDR da mesma freqüência em todos os quesitos (um DDR2-800 contra um DDR-400, por exemplo), o mesmo não acontece se comparamos módulos de freqüências diferentes. Um DDR2-533 opera a apenas 133 MHz, por isso acaba realmente perdendo para um DDR-400 (200 MHz) na maioria das aplicações, pois a ganho de realizar 4 operações por ciclo acaba não sendo suficiente para compensar a diferença na freqüência de operação das células de memória. Vale lembrar que um módulo DDR2-533 trabalha com tempos de latência similares a um módulo DDR-266. Realizar bursts de leituras rápidas pode não ser a forma mais perfeita de criar memórias mais rápidas (por causa do lento ciclo inicial), mas é sem dúvida a mais simples e barata. A freqüência de operação das memórias aumenta de forma gradual, conforme são melhoradas as técnicas de produção. Realizar mais leituras por ciclo de clock é a única forma simples de melhorar a taxa de transferência dos módulos. Assim como no caso dos processadores, não é possível criar um processador capaz de operar ao dobro do clock de uma hora para a outra, mas é possível criar um processador dual-core, por exemplo. No caso das memórias é mais simples, pois você pode ler vários endereços simultaneamente (ou quase), fazendo apenas mudanças nos circuitos controladores. Dependendo da fonte, você pode ler tanto que as memórias DDR2 operam ao dobro da freqüência que as DDR quanto que elas realizam quatro transferências por ciclo em vez de duas. Nenhuma das duas explicações estão erradas, mas ambas são incompletas. Como disse, as células de memória continuam trabalhando na mesma freqüência das memórias SDR e DDR, mas os buffers de entrada e saída, responsáveis por ler os dados, passaram a operar ao dobro da freqüência. É justamente esta freqüência que é "vista" pelo restante do sistema, de forma que a maioria dos programas de diagnóstico mostra a freqüência dobrada usada pelos circuitos de entrada e não a freqüência real das células de memória. Devido a esta ambigüidade, não é errado dizer que os módulos DDR2 operam ao dobro da freqüência dos DDR (os buffers e outros circuitos de apoio realmente operam), nem que são realizadas 4 leituras por ciclo (já que as células de memória continuam operando à mesma freqüência). Ao realizar uma leitura, o controlador de memória gera quatro sinais distintos, que ativam a leitura de quatro endereços adjacentes (4-bit prefetch). As quatro leituras são feitas simultaneamente e os dados são entregues ao buffer, que se encarrega de despachá-los através do barramento principal. 358
  • 359. Presumindo que o módulo DDR2 do exemplo operasse a 100 MHz, teríamos as células de memória ainda operando na mesma freqüência, mas agora entregando 4 leituras de setores seqüenciais por ciclo. Os buffers e o barramento de dados operam agora a 200 MHz, de forma que as 4 leituras podem ser enviadas em 2 ciclos, com duas transferências por ciclo. Os dois ciclos do barramento são realizados no mesmo espaço de tempo que apenas um ciclo das células de memória: Como vimos, as células de memória podem ser grosseiramente comparadas a uma planilha eletrônica, com inúmeras linhas e colunas. Não existe uma grande dificuldade em ler vários endereços diferentes simultaneamente, desde que o fabricante consiga desenvolver os circuitos de controle necessários. Graças a isso, o desenvolvimento das memórias tem sido focado em realizar mais leituras pro ciclo, combinada com aumentos graduais nas freqüências de operação. Quando as memórias DIMM surgiram, ainda na época do Pentium II, os módulos mais rápidos operavam a 100 MHz (os famosos módulos PC-100). Atualmente temos chips de memória de até 300 MHz que, combinados com as 4 leituras por ciclo, resultam em módulos com transferência teórica de até 9.6 GB/s: DDR2-533 (133 MHz) = PC2-4200 DDR2-667 (166 MHz) = PC2-5300 DDR2-800 (200 MHz) = PC2-6400 DDR2-933 (233 MHz) = PC2-7500 DDR2-1066 (266 MHz) = PC2-8500 DDR2-1200 (300 MHz) = PC2-9600 O CAS latency dos módulos DDR2 é medido em termos de ciclos do circuito controlador, por isso são normalmente o dobro do que nos módulos DDR. É como em "duas unidades" ou "quatro metades", no final dá no mesmo ;). Um módulo DDR2-800 com CAS latency 4 possui o mesmo tempo de acesso que um DDR-400 com CAS latency 2. Normalmente, as especificações das memórias DDR2 incluem não apenas o CAS latency (tCL), mas também o RAS to CAS delay (tRCD), Row Precharge Time (tRP) e RAS Activate to Charge (tRAS). Estes mesmos valores podem ser encontrados nas especificações de módulos DDR e SDR, mas com as 359
  • 360. memórias DDR2 os fabricantes passaram a divulgá-los de forma mais aberta, usando qualquer redução nos valores para diferenciar seus módulos dos concorrentes. Temos então módulos DDR2-800 "4-4-4-12" ou "5-5-5-15", por exemplo. O primeiro número é o CAS latency, que já conhecemos. O seguinte é o RAS to CAS delay, que é o tempo que o controlador precisa esperar entre o envio do endereço RAS e o CAS. Para realizar uma leitura, o controlador envia o sinal RAS, espera o tempo referente ao RAS to CAS delay, envia o sinal CAS, aguarda o número de ciclos referente a ele e então finalmente tem a leitura. Em um módulo DDR2 4-4-4-12, tanto o tCL quanto o tRCD demoram 4 ciclos, de forma que o acesso inicial demoraria um total de 8 ciclos. Em um módulo 5-5-5- 15, o tempo subiria para 10 ciclos. É importante lembrar (mais uma vez ;) que aqui estamos falando de ciclos dos circuitos de acesso, que trabalham ao dobro da freqüência. Os 8 ciclos de um módulo DDR2 equivalem ao mesmo espaço de tempo consumido por 4 ciclos de um módulo DDR ou SDR. Junto com o ciclo inicial, o controlador pode realizar um burst de mais 7 leituras (totalizando 8). Cada uma destas leituras adicionais consome o equivalente a meio ciclo do controlador (ou a um quarto de ciclo das células de memória). Caso ele precise de mais dados dentro da mesma linha, ele repete o envio do sinal CAS e realiza um novo burst de leituras. Note que o controlador só precisa enviar o sinal RAS ao mudar a linha ativa, de forma que o tRCD só entra na conta no primeiro acesso. Para os seguintes, temos apenas o tempo referente ao tCL. Caso o controlador precise realizar 24 leituras (dentro da mesma linha), num módulo DDR2 4-4-4-12, teríamos 11.5 ciclos (8+3.5) para as 8 primeiras leituras e mais 15 ciclos (4+3.5+4+3.5) para as 16 leituras subseqüentes. É por causa dessa peculiaridade que os módulos DDR e DDR2 não possuem mais o "full-page mode" suportado pelas memórias SDRAM; ele deixou de ser necessário. O Row Precharge Time (tRP) entra em ação quando o controlador precisa alternar entre diferentes linhas. Cada linha inclui 512 endereços de memória, o equivalente a 4 KB de dados. As linhas são divididas em 4 ou 8 páginas, de forma que um módulo DDR2 de 1 GB teria 8 páginas de 32.768 linhas, ou 4 páginas de 65.536 linhas. Com tantas linhas e páginas diferentes, não é difícil imaginar que o chaveamento entre elas é muito freqüente. Quando falo em linhas e páginas, tenha em mente que essa é apenas a forma como o controlador de memória "enxerga" o módulo. Fisicamente, mesmo os bits de uma mesma linha estão espalhados pelos vários chips do módulo. Antes de poder acessar uma determinada linha, o controlador de memória precisa carregá-la (precharge). Isso consiste em recarregar os capacitores dentro das células de memória, facilitando a leitura dos dados. O Row Precharge Time (tRP) é justamente o tempo necessário para fazer o carregamento, necessário antes de chavear para outra linha, seja no mesmo banco, seja num banco diferente. 360
  • 361. Sendo assim, mesmo que seja necessário ler um único setor, a leitura demorará (em um módulo 4-4-4-12) 4 ciclos para o tRP, 4 ciclos para o tRCD, 4 ciclos para o tCL, totalizando 12 ciclos. Estes 12 ciclos são justamente o tempo referente ao RAS Activate to Charge (tRAS), que é o tempo mínimo para realizar uma leitura completa. O tRAS é sempre proporcional aos três primeiros valores, pois é justamente a soma dos três. É por isso que ele sempre é mais alto em módulos com CAS latency mais alto. É possível reduzir o tRAS utilizando um recurso chamado Additive Latency, onde o comando para iniciar o precharge do banco seguinte pode ser enviado antes que a leitura atual termine. Isso faz com que o tempo total da leitura seguinte seja reduzido em 1 ou até mesmo 2 ciclos. Esse é o caso dos módulos 5-4-4-11 ou 4-4-4-11, por exemplo. Em outros casos é necessário um ciclo adicional para fechar o banco, que aumenta o tRAS em vez de diminuir. De qualquer forma, o tRAS é dos quatro o parâmetro que menos influi no desempenho, pois só faz alguma diferença real quando o sistema precisa realizar séries de acessos rápidos, a linhas diferentes. Bem, esta última parte exigiu uma explicação mais complexa que o habitual. Como você pode ver, os tempos de acesso dos módulos DDR2 é um pouco mais complexo do que pode parecer à primeira vista. Entretanto, o mais importante dos 4 valores continua sendo o primeiro (o bom e velho CAS latency, ou tCL), já que o tRCD e o tRP são quase sempre iguais a ele e o tRAS é a soma dos três. Ou seja, se o CAS latency é mais baixo, automaticamente os demais valores também são. Memórias DDR3 O lançamento das memórias DDR2 teve um impacto diferente para a Intel e a AMD. Para a Intel, a migração para as memórias DDR2 foi mais simples, já que o controlador de memória é incluído no chipset, de forma que aderir a uma nova tecnologia demanda apenas modificações nos chipsets e placas. A Intel oferece suporte a memórias DDR2 em seus chipsets desde o i915P, lançado em 2004. Inicialmente, os chipsets ofereciam tanto suporte a memórias DDR quanto DDR2, de forma que ficava a cargo do fabricante escolher qual padrão utilizar. Existem inclusive placas híbridas, que suportam ambos os padrões, como a ECS 915P-A, que possuem dois slots de cada tipo, permitindo que você escolha qual padrão utilizar. A partir de um certo ponto, entretanto, as memórias DDR2 caíram de preço e quase todas as placas soquete 775 passaram a vir com suporte exclusivo a memórias DDR2. Para a AMD, a mudança foi mais tortuosa, já que o Athlon 64 e derivados utilizam um controlador de memória embutido diretamente no processador, desenvolvido de forma a minimizar os tempos de acesso. Por um lado isto é bom, pois oferece um ganho real de desempenho, mas por outro é ruim, pois qualquer mudança no tipo de memória usado demanda mudanças no processador e no soquete usado. Foi justamente isso que aconteceu quando a AMD decidiu fazer a migração das memórias DDR para as DDR2. Além das mudanças internas no processador e controlador de memória, 361
  • 362. o soquete 754 foi substituído pelo soquete 939 e em seguida pelo AM2, quebrando a compatibilidade com as placas antigas. Com a adoção por parte da AMD, a procura (e conseqüentemente a produção) das memórias DDR2 aumentou bastante, fazendo com que os preços passassem a cair rapidamente. A partir do final de 2006, os preços dos módulos de memória DDR2 (nos EUA) caíram a ponto de passarem a ser mais baratos que os módulos DDR regulares. Como sempre, as mudanças chegam ao Brasil com alguns meses de atraso, mas a partir do início de 2007 as memórias DDR2 passaram a ser encontradas por preços inferiores às DDR por aqui também. Como sempre, módulos de alto desempenho (como os Corsair Dominator) chegam a custar até duas vezes mais caro, mas em se tratando de memórias genéricas, os preços caíram muito. Outra questão importante é a popularização de módulos DDR2-1066 e também de módulos de baixa latência, com temporização de 4-4-3-11, ou mesmo 3-3-3- 9. Ao contrário da geração inicial de módulos DDR2, que ofereciam mais banda, mas em compensação trabalhavam com tempos de acesso muito mais altos, esta segunda geração de módulos DDR2 é indiscutivelmente mais rápida. O ganho prático em utilizar memórias DDR2 não é muito grande, pois o barramento com a memória é apenas um dos fatores que determina o desempenho do PC. Mas, a partir do momento em que os módulos DDR2 passam a ser mais baratos, qualquer ganho, por menor que seja, é muito bem- vindo. Enquanto ainda estávamos nos acostumando com as memórias DDR2, a Intel apertou o passo e incluiu o suporte ao padrão seguinte no chipset P35, lançado oficialmente em junho de 2007. Como sugere a lógica, as memórias DDR3 realizam 8 acessos por ciclo, contra os 4 acessos por ciclo das memórias DDR2. Assim como na tecnologia anterior, os acessos são realizados a endereços subjacentes, de forma que não existe necessidade de aumentar a freqüência "real" das células de memória. Inicialmente, os módulos DDR3 foram lançados em versão DDR3-1066 (133 MHz x 8) e DDR3-1333 (166 MHz x 8), seguidos pelo padrão DDR3-1600 (200 MHz x 8). Os três padrões são também chamados de (respectivamente) PC3- 8500, PC3-10667 e PC3-12800, nesse caso dando ênfase à taxa de transferência teórica. Apesar do aumento no número de transferências por ciclo, os buffers de dados continuam trabalhando a apenas o dobro da freqüência das células de memória. Ou seja, a freqüência interna (das células de memória) de um módulo DDR3-1600 é de 200 MHz e a freqüência externa (dos buffers de dados) é de 400 MHz. As células de memória realizam 8 transferências por ciclo de clock (em vez de 4, como nas DDR2) e os buffers de dados (que operam ao dobro da freqüência) realizam 4 transferências por ciclo de clock, em vez de apenas duas, como nos módulos DDR2. 362
  • 363. Com isso, chegamos à freqüência de 1600 MHz divulgada, que, como pode ver, é obtida através do aumento do número de transferências realizadas por ciclo e não através do aumento do clock "real" das células de memória ou dos buffers de dados. Se as mudanças parassem por aí, os módulos DDR3 não ofereceriam ganhos muito grandes na prática, pois o tempo de latência inicial continuaria sendo o mesmo que nos módulos DDR2 (já que não houve mudança na freqüência das células de memória). Se um módulo DDR3 operasse com tempos de acesso 10-10-10-30, os ganhos seriam pequenos em relação a um DDR2 5-5-5-15, já que só haveria ganho nos acessos subseqüentes. Para evitar isso, os módulos DDR3 incluem um sistema integrado de calibragem do sinal, que melhora de forma considerável a estabilidade dos sinais, possibilitando o uso de tempos de latência mais baixos, sem que a estabilidade seja comprometida. Os módulos DDR3 utilizam também 8 bancos em vez de 4, o que ajuda a reduzir o tempo de latência em módulos de grande capacidade. Elas também trouxeram uma nova redução na tensão usada, que caiu para apenas 1.5V, ao invés dos 1.8V usados pelas memórias DDR2. A redução na tensão faz com que o consumo elétrico dos módulos caia proporcionalmente, o que os torna mais atrativos para os fabricantes de notebooks. Somadas todas essas melhorias, os tempos de acesso "reais" dos módulos foram sensivelmente reduzidos. Em vez de de trabalharem com tempos de acesso 10-10-10-30, a geração inicial de módulos DDR3 é capaz de trabalhar com temporização 9-9-9-24, ou mesmo 7-7-7-15. Apesar disso, muitos módulos de alto desempenho podem precisar de tensões mais altas, como 1.6V ou mesmo 1.7V para trabalharem na freqüência máxima. Assim como no caso dos módulos DDR2, os fabricantes podem ajustar a tensão de operação de acordo com as necessidades do projeto e você pode também utilizar tensões mais altas por conta própria ao fazer overclock. Os módulos DDR3 utilizam os mesmos 240 contatos dos módulos DDR2 e mantém o mesmo formato. A única diferença visível (fora etiquetas e códigos de identificação) é a mudança na posição do chanfro, que passou a ser posicionado mais próximo do canto do módulo. O chanfro serve justamente para impedir que módulos de diferentes tecnologias sejam encaixados em placas incompatíveis. 363
  • 364. Módulo DDR3 As memórias DDR2 demoraram quase 3 anos para se popularizarem desde a introdução do chipset i915P, em 2004. As memórias DDR3 devem passar por um caminho similar, com os módulos inicialmente custando muito mais caro e caindo ao mesmo nível de preço dos módulos DDR2 apenas por volta de 2009. Não existe nada de fundamentalmente diferente nos módulos DDR3 que os torne mais caros de se produzir, o preço é determinado basicamente pelo volume de produção. Assim como no caso das memórias DDR2, a maior taxa de transferência oferecida pelas memórias DDR3 resulta em um ganho relativamente pequeno no desempenho global do sistema, de apenas 1 a 3% na maioria dos aplicativos, por isso não vale a pena pagar muito mais caro por módulos DDR3 ao comprar. Enquanto eles estiverem substancialmente mais caros, continue comprando (e indicando) placas com suporte a módulos DDR2. Na culinária, quem é apressado come cru. No mundo da informática os efeitos colaterais são ainda piores, já que quem é apressado paga mais caro. :) Até o momento, o uso de memórias DDR3 está limitado à plataforma Intel, com os chipsets P35, G33, G35 e X38. No caso da AMD, a adoção ainda está indefinida, já que o suporte às memórias DDR3 depende de uma nova mudança no controlador de memória integrado e (possivelmente) também no soquete usado pelos processadores. Além disso, a história mostra que a Intel é quase sempre a primeira a adotar e popularizar novas tecnologias (como as memórias DDR2 e o PCI-Express), enquanto a AMD geralmente prefere esperar até que elas estejam maduras e o custo tenha caído. Identificando módulos de memória defeituosos Apesar da complexidade, não é muito comum um processador vir com defeito de fábrica, geralmente eles são testados antes do encapsulamento e os que não funcionam são simplesmente descartados. O problema mais comum com relação a eles são os casos de superaquecimento, que podem ser resolvidos com a limpeza do cooler ou uma ventilação adequada. Mas, não podemos dizer o mesmo dos módulos de memória, onde os defeitos são muito mais comuns e infelizmente mais difíceis de detectar. Um agravante é que existem muitos fabricantes diferentes de memórias, todos trabalhando com margens muito baixas. Como a maior parte dos usuários e integradores 364
  • 365. compra mais pelo preço, acaba levando pra casa módulos genéricos que muitas vezes não são adequadamente testados em fábrica. A placa-mãe também pode ser responsável por vários erros, já que ela é a encarregada de transportar os dados dos módulos de memória até o processador. Se a placa-mãe corromper os dados pelo caminho você terá travamentos e outros sintomas semelhantes aos causados por um módulo de memória com defeito. Esses erros são cruéis, pois são muitas vezes difíceis de perceber. Eles muitas vezes são confundidos com problemas do sistema operacional. Seja qual for a causa, erros de memória podem causar muita dor de cabeça, então a melhor forma de lidar com o problema é rodar um teste completo sempre que você montar um PC ou instalar um novo módulo de memória. Existem inúmeros programas desse tipo, um dos melhores é o Memtest86, disponível no: http://www.memtest86.com/ A grande vantagem do memtest86 sobre outros testes de memória é que além de pequeno, gratuito e de código aberto, ele é quase automático. Você precisa apenas gravar um CD ou disquete e dar boot para que o teste seja iniciado automaticamente. Ele fica num loop eterno, repetindo os testes e indicando os erros que encontrar até que você se sinta satisfeito. Existem duas opções de download. O mais prático é baixar uma imagem ISO, que pode ser usada para fazer um CD bootável. O arquivo tem apenas 64 kb compactado e 1.6 MB depois de descompactado. No site você vai encontrar também os programas para gerar o disquete de boot no Windows e Linux. Tanto faz usar o CD ou o disquete, o programa é exatamente o mesmo. É necessário dar boot diretamente no Memtest para que ele possa testar realmente toda a memória do sistema. Se ele rodasse como um programa sobre o Linux ou Windows, não teria como acessar áreas utilizadas pelo sistema e programas, e o teste não seria confiável. O Memtest86 realiza um total de 9 testes. Os 5 primeiros são relativamente rápidos, mas os 4 testes finais são muito mais rigorosos, capazes de encontrar erros não detectados pelos testes iniciais, mas em compensação muito demorados. Os 8 testes são executados automaticamente, mas o nono (veja detalhes a seguir) precisa ser ativado manualmente, já que é muito demorado. O ideal é deixar o teste correndo em loop durante a madrugada e olhar os resultados no outro dia de manhã. Se, por acaso, a tabela inicial do Memtest86 informar incorretamente a quantidade de memória, acesse a opção "3" (memory sizing) e a opção "3" (probe). Isso fará com que o Memtest86 detecte a memória, desprezando as informações do BIOS. Na tela principal, pressione a tecla 5 para ter um sumário com todos os erros encontrados em cada teste: 365
  • 366. Basicamente é isto, não existe muita configuração a fazer. A alma do negócio é ter paciência e deixar ele fazer seu trabalho, se possível por tempo suficiente para realizar o teste longo. O tempo necessário varia de acordo com o desempenho e principalmente com a quantidade de memória instalada. Dobrar a quantidade de memória dobra o tempo do teste. Usar um processador mais rápido tem pouca influência, pois o gargalo é a velocidade de acesso à memória, não o processamento. O Memtest86 já vem pré-instalado em muitas distribuições, aparecendo como uma opção de boot no menu de boot. Você pode utilizar também o CD de uma versão recente do Knoppix ou do Kurumin, utilizando a opção "memtest" na tela de boot. Vamos entender o que faz cada um dos testes: Teste 0 (Address test, walking ones, no cache): Simplesmente testa o acesso a todos os endereços da memória, algo semelhante com o que o BIOS faz na contagem de memória durante o boot. Ele é o teste mais rápido e serve basicamente para checar a quantidade de memória disponível. Teste 1 (Address test, own address): Este teste é semelhante ao 0, mas adota uma estratégia diferente, checando endereços e não apenas realizando uma contagem rápida. Isso permite detectar problemas de endereçamento no módulo. Outra diferença é que este teste é feito sem utilizar os caches do processador, para evitar que ele mascare defeitos nos módulos. 366
  • 367. Teste 2 (Moving inversions, ones&zeros): Escreve bits 1 e depois bits 0 em todos os endereços da memória. Este algoritmo também utiliza os caches L1 e L2 do processador. É um teste rápido que identifica os erros mais grosseiros, onde algumas células do módulo estão realmente queimadas. Teste 3 (Moving inversions, 8 bit pat): É aqui que os testes para detectar erros mais complexos começam. O terceiro teste escreve seqüências de dados de 8 bits, repetindo o teste 20 vezes com seqüências diferentes. Teste 4 (Moving inversions, random pattern): Este teste é similar ao teste número 3, mas dessa vez usando uma seqüência randômica de acessos, que é repetida um total de 60 vezes. Parece um grande exagero, já que este teste é destinado a identificar os mesmos erros que o teste 3, mas é justamente essa "insistência" e uso de diversas seqüências diferentes de operações que torna o memtest tão confiável na detecção de erros, capaz de detectar erros raros ou transitórios, que não aparecem em outros testes. Teste 5 (Block move, 64 moves): É um pouco mais rigoroso que o teste 4. Continua movendo dados de um endereço para outro da memória, mas agora são movidos blocos de 4 megabits de cada vez. Este teste é repetido 64 vezes. Teste 6 (Moving inversions, 32 bit pat): Os dados gravados em cada bit de memória são lidos e movidos para o endereço adjacente. É mais ou menos uma combinação dos três testes anteriores, pois testa o endereçamento, leitura e escrita de dados. A operação é repetida 32 vezes no total, para testar todas as combinações possíveis. Este teste detecta um tipo de erro muito comum que é a "contaminação" de endereços. Isso ocorre quando, por um defeito de fabricação, o isolamento elétrico entre duas ou mais células de memória fica muito fino, permitindo que os elétrons saltem de um para o outro. Isso faz com que ao gravar um dos bits o outro também seja gravado com o mesmo valor. Esse tipo de problema pode ser bastante intermitente, acontecendo apenas quando o segundo bit estiver com um valor zero, ou apenas esporadicamente, daí a necessidade de tantas repetições. Teste 7 (Random number sequence): Para eliminar qualquer dúvida, são agora escritas seqüências de números randômicos, preenchendo todos os endereços da memória. Os números são conferidos em pequenos blocos e o teste é repetido diversas vezes. Teste 8 (Modulo 20, ones&zeros): Este teste é basicamente uma repetição do teste 7, mas agora utilizando um algoritmo diferente, chamado "Modulo-X", que elimina a possibilidade de qualquer defeito ter passado despercebido pelos testes anteriores por ter sido mascarado pelos caches L1 e L2 ou mesmo pelos registradores do processador. Note que tanto o teste 7 quanto o 8 são bastante demorados e servem apenas para detectar erros extremamente raros, eliminando qualquer 367
  • 368. dúvida sobre a saúde dos módulos. Eles foram criados realmente como um exercício de perfeccionismo. Teste 9 (Bit fade test, 90 min, 2 patterns): Este é um teste final, que permite detectar erros raros relacionados com os circuitos de refresh, ou soft-erros causados por fatores diversos, que alterem os dados armazenados. No teste, todos os endereços são preenchidos usando uma seqüência de valores pre-definidos. O programa aguarda 90 minutos e verifica os dados gravados, anteriormente. Esses dados são produzidos usando seqüências matemáticas, de forma que o programa só precisa repetir as mesmas operações na hora de verificar, sem precisar guardar uma cópia de tudo que gravou em algum lugar. Em seguida, a mesma seqüência é gravada novamente, mas desta vez com os dígitos invertidos (o que era 1 vira 0 e o que era 0 vira 1). O programa aguarda mais 90 minutos e checa novamente. Este teste demora mais de três horas, por isso não é executado automaticamente junto com os outros 8. Pense nele como um último refúgio para os paranóicos. Para executá-lo, pressione "C", depois "1" (Test Selection) e em seguida "3" (Select Test). Na opção "Test Number [1-9]" pressione "9" e em seguida "0" (Continue). Ao detectar um erro, a primeira providência é trocar o módulo de memória e refazer o teste. Em alguns casos o problema pode não ser no módulo, mas sim na placa-mãe. Em alguns casos mais raros pode ser até mesmo que tanto o módulo quanto a placa estejam bons, e o problema seja apenas algum tipo de incompatibilidade entre eles. Eu observei isso na Tyan Tiger MPX que testei em 2001. A placa só ficou completamente estável com o terceiro módulo de memória que testei, sendo que os dois primeiros não tinham defeitos e passaram no teste do memtest86 depois de instalados em outros micros. Um dos motivos era que essa placa utiliza um valor CAS de 2.5 ciclos (valor fixo), uma configuração incomum para a época. Assim como ela, muitas outras placas utilizam configurações incomuns, que podem causar incompatibilidades com memórias de algumas marcas. Jamais jogue fora um módulo com erros antes de testá-lo em outra placa-mãe diferente, pois ele pode estar bom. Experimente também baixar a freqüência de operação da memória, ou do FSB para testar o módulo em freqüências mais baixas que as nominais. Muitas vezes um módulo danificado por estática ou por variações nas tensões fornecidas pela fonte pode deixar de funcionar estavelmente na freqüência máxima, mas continuar suportando freqüências mais baixas. Outra dica é limpar cuidadosamente o módulo, removendo a poeira acumulada e limpando os contatos usando uma borracha de vinil (as borrachas de escola, do tipo que não esfarela). Na falta de uma, você também pode usar uma nota de real (com exceção das de R$ 10, que são de plástico) em bom estado. O papel moeda é abrasivo e realmente limpa os contatos na medida certa. 368
  • 369. Aqui temos um módulo de 512 MB danificado por estática, flagrado pelo teste. Veja que foram identificados diversos endereços defeituosos. A lista mostra apenas os primeiros erros, mas pressionando a tecla "C" e depois "4" (error summary), é possível ver o número total. Nesse caso, o módulo tinha nada menos do que 222 endereços defeituosos. Além de identificar os erros, o memtest mostra a partir de qual MB do módulo eles começam. Pelo screenshot, você pode ser que eles começam a partir do 433° MB: No caso de módulos em que os erros aparecem logo nos primeiros endereços, não existe o que fazer, pois eles farão com que o sistema trave logo no início do boot. Módulos onde os defeitos se concentram no final (como esse do exemplo) ainda podem ser usados para testes, pois o sistema acessa sempre a memória a partir do começo, deixando os últimos endereços do módulo por último. Enquanto você estiver rodando aplicativos leves e o sistema não acessar os endereços defeituosos do módulo, tudo funciona normalmente. No Linux é possível orientar o sistema a utilizar apenas o começo do módulo, ignorando os endereços a partir da onde começam os erros. Isso é feito passando a opção "mem=384M" (onde o "384" é a quantidade de memória que deve ser usada) para o Kernel na tela de boot. Isso varia um pouco de distribuição para distribuição. No Knoppix você digitaria "knoppix mem=384M" na tela de boot, no Kurumin seria "kurumin mem=384M". No Ubuntu é preciso pressionar a tecla "F6" e em seguida adicionar o "mem=384M" (sem mexer nas demais opções da linha): 369
  • 370. No caso do Windows XP, é possível usar a opção "/maxmem=". Adicione a linha no arquivo "boot.ini", especificando a quantidade de memória que deve ser utilizada (em MB), como em "/maxmem=384". Esta alteração pode ser feita também através do msconfig, através da aba "Boot.ini > Opções Avançadas". Depois de concluído o boot, você pode confirmar usando o comando "free", que reporta o uso de memória. Você verá que independentemente da capacidade real do módulo, o sistema usa a memória apenas até o MB especificado na opção. Essa dica permite aproveitar a parte "boa" do módulo em algum micro usado para aplicações leves, ao invés de ter que jogá-lo fora. Não se esqueça de etiquetar os módulos defeituosos (ou o micro onde eles forem instalados), indicando a partir de qual MB foram identificados endereços defeituosos. Assim você evita de ter de executar o teste novamente cada vez que precisar reinstalar o sistema, ou instalar os módulos em outro micro. Além do memtest86 e outros softwares, também existem testadores de memória dedicados, que executam uma seqüência de testes automatizados, que além de detectar defeitos, identificam as características do módulo, como a freqüência suportada, CAS latency e assim por diante. Estes testadores são caros e, para ser sincero, o teste não é tão confiável quanto a seqüência do memtest. A vantagem é que eles permitem testar um grande número de módulos em pouco tempo, de forma prática, por isso podem ser interessantes para distribuidores e lojas. Duas das maiores empresas nesse segmento são a http://www.memorytest.com/ e a http://www.simmtester.com/, onde você pode se informar sobre os preços e os modelos disponíveis. 370
  • 371. Testador de memória Limites no endereçamento da memória Assim como no caso dos HDs, existiram diversos limites com relação ao endereçamento da memória RAM durante a história dos micros PCs, causados por limitações do sistema operacional, limitações do chipset e limitações dos processadores. Mesmo os processadores e sistemas operacionais de 64 bits possuem limites com relação à quantidade máxima de memória que pode ser endereçada, embora muito mais elevados. As versões originais do Athlon 64 são capazes de endereçar até 1 terabyte de memória RAM (independentemente da placa-mãe usada) e este limite pode ser expandido no futuro. O grande problema são os processadores e os sistemas operacionais de 32 bits. Tudo começou com o limite de 640 KB de memória do processador 8088, usado nos primeiros PCs. Na verdade, o 8088 utilizava um total de 20 bits para o endereçamento da memória, divididos em 16 bits "nativos", que permitiam endereçar páginas de 64 KB e mais 4 bits adicionais, que permitiam endereçar 16 páginas, totalizando 1 MB. Por decisão da equipe de desenvolvimento, apenas os primeiros 640 KB (chamados de memória convencional) ficavam disponíveis para uso do sistema operacional e aplicativos. Os 384 KB restantes (chamados de memória extendida) eram usados para endereçar a memória presente em outros dispositivos, como o BIOS da placa-mãe e a memória da placa de vídeo. Na época dos primeiros PCs, a memória RAM era muito cara, de forma que não era comum o uso de mais do que 256 KB, mas, mesmo que fosse utilizado 1 MB completo, apenas os primeiros 640 KB ficariam disponíveis. Os 384 KB adicionais podiam ser utilizados para fazer cache do BIOS e da memória da placa de vídeo (o que melhorava o desempenho), mas não para uso geral. Para manter compatibilidade com os aplicativos antigos, mesmo os processadores atuais são capazes de operar em modo real, onde simulam o funcionamento de um 8088, acessando apenas os primeiros 640 KB de 371
  • 372. memória. É dentro deste limite que rodam o MS-DOS e aplicativos antigos. Quando o Windows, Linux ou qualquer sistema operacional é carregado, o processador passa para o modo protegido, onde é capaz de acessar toda a memória disponível. Desde o 386, todos os processadores utilizam 32 bits para o endereçamento da memória, o que permite endereçar até 4 GB. Esse limite é chamado de VAS (Virtual Address Space) e indica justamente o total de memória que o sistema é capaz de endereçar, incluindo não apenas a memória RAM, mas também a memória da placa de vídeo e outros dispositivos. O problema reside justamente aí. Imagine que você resolvesse montar um PC topo de linha, usando 4 GB de memória RAM e duas placas de vídeo GeForce 7950 GX2 em SLI. A 7950 GX2 possui nada menos do que 1 GB de memória RAM, de forma que duas placas totalizam 2 GB. Como a memória das placas de vídeo consomem espaço do Virtual Address Space, o sistema seria capaz de acessar apenas os primeiros 2 GB da memória (um pouco menos na prática, já que mais alguns blocos serão reservados a outros dispositivos), de forma que usar 4 GB acabam sendo um desperdício de dinheiro. Isso ocorre não apenas ao utilizar um processador de 32 bits, mas também ao utilizar um processador de 64 bits em conjunto com um sistema operacional de 32 bits, incluindo o Windows XP e as versões de 32 bits do Vista. De uma forma geral, não é recomendável utilizar mais do que 3 GB ao utilizar um sistema operacional de 32 bits, pois é justamente a área entre os 3 e 4 GB do Virtual Address Space que são utilizadas pelo processador para endereçar a memória de dispositivos diversos. Assim como dois corpos não podem ocupar o mesmo espaço ao mesmo tempo, dois dispositivos não podem compartilhar a mesma área de endereços, o que faz com que porções da memória RAM que invadam áreas reservadas a outros dispositivos simplesmente não sejam vistas pelo sistema. Você pode verificar as áreas de memória reservadas através do gerenciador de dispositivos do Windows, usando a opção Exibir > Recursos por tipo > Memória: 372
  • 373. Os endereços fornecidos aqui estão em hexa, mas você pode usar a própria calculadora do Windows para convertê-los em números decimais. No caso, por exemplo, tenho a placa de vídeo utilizando os endereços C8000000 a CFFFFFFF, que correspondem aos bytes de 3.355.443.200 a 3.489.660.927 e uma série de dispositivos a partir do "Recursos da placa-mãe" que ocupam praticamente todos os endereços do byte 3.758.096.384 ao 4.294.967.295 (que corresponde justamente ao final da área de 4 GB endereçada pelo sistema). Se instalasse uma placa 3D offboard, com 256 MB, ela ocuparia os bytes de 3.221.225.472 a 3.489.660.927, que correspondem justamente aos 256 MB da placa. Se você se contentar em utilizar uma placa de vídeo low-end, pode ficar com até 3.5 GB de endereços disponíveis, dependendo do sistema operacional usado. No caso das versões de 32 bits do Vista, por exemplo, o limite máximo (segundo o http://support.microsoft.com/kb/929605) é de 3.12 GB. Ou seja, na maioria dos casos, não vale a pena pagar por mais 4 GB de memória, já que apenas uma pequena parte do último GB seria utilizada. Melhor se contentar com 3 GB. Mesmo ao utilizar um processador de 64 bits, combinado com um sistema operacional de 64 bits, um grande volume de endereços entre os 3 e 4 GB de memória continuam reservados, de forma a manter compatibilidade com os programas de 32 bits, fazendo com que, novamente, pelo menos 512 MB entre os 3 e 4 GB da memória não sejam usados. A vantagem nesse caso é que você pode instalar mais de 4 GB de memória. Com 8 GB, por exemplo, você ficaria com de 7 a 7.5 GB utilizáveis. 373
  • 374. Algumas placas de 64 bits oferecem a opção "Memory Hole Remapping" (ou similar) no setup. Ao ativar esta opção, as áreas de memória reservadas aos dispositivos é movida para uma área mais alta do Virtual Address Space (que nos processadores de 64 bits é muito maior), liberando a maior parte da memória antes inacessível por causa deles. Outras placas suportam o Memory Hoisting (da palavra "hoist", que significa levantar ou suspender), um recurso que segue outro princípio, deixando os endereços dos dispositivos onde estão e remapeando os trechos de memória subscritos por eles para áreas mais altas do espectro de endereços, permitindo que o sistema tenha acesso a elas. Uma observação é que estas duas opções causam muitos problemas de compatibilidade com aplicativos, por isso você só deve utilizá-las caso realmente faça questão de ter acesso à toda a memória instalada. Além das limitações relacionadas ao Virtual Address Space, existem outros limites de memória, impostos pelo chipset ou por limitações do sistema operacional usado. A maioria dos chipsets antigos, para placas soquete 7, por exemplo, eram capazes de endereçar apenas 128 ou 256 MB de memória RAM. O chipset Intel i815, usado em uma grande parte das placas para processadores Pentium III e Celeron era capaz de endereçar apenas 512 MB, enquanto o 915GL (para o Pentium 4) era capaz de endereçar 2 GB. Até pouco tempo atrás, o suporte a 4 GB ou mais de memória estava restrito a alguns chipsets destinados a servidores. O Windows 95/98/SE é capaz de endereçar até 512 MB de memória RAM. Programas como o cacheman permitem utilizar estas versões antigas do Windows em PCs com mais de 512 MB de RAM, mas o desempenho acaba sendo pior do que com apenas 512. O Windows XP e as versões de 32 bits do Vista são capazes de endereçar 4 GB, de forma que o limite fica por conta do Virtual Address Space. O maior problema são as versões "populares" do Windows, onde o limite é artificialmente reduzido, de forma a restringir o uso do sistema aos PCs de baixo custo. O XP Starter possui um limite de 256 MB, enquanto o Vista Starter está limitado a 1 GB. Nas versões de 64 bits do Vista, os limites são estendidos, mas ainda existem limitações. O Vista Home Basic está limitado a 8 GB, o Home Premium a 16 GB e as demais versões (Business, Enterprise e Ultimate) a 128 GB. A memória swap não entra na conta, pois ela é acessada através de um componente especializado incluído no processador, chamado de MMU (Memory Management Unit) que permite justamente que dados armazenados na memória RAM física sejam movidos para a memória swap (que é na verdade um arquivo ou partição no HD), conforme necessário. Graças ao MMU é possível complementar os 3 ou 3.5 GB de memória RAM física com uma quantidade indefinida de memória swap, limitada apenas ao 374
  • 375. máximo suportado pelo sistema operacional. A principal questão é que o uso da memória swap é muito limitado em um PC atual, já que ela é muito lenta. Uma dúvida comum é com relação ao uso do PAE (Physical Address Extension), uma extensão para processadores de 32 bits, presente desde o Pentium Pro, que adiciona 4 bits adicionais ao endereçamento da memória, permitindo que o processador seja capaz de acessar até 16 páginas de 4 GB cada, totalizando 64 GB. Cada programa continua restrito a um máximo de 4 GB, mas o sistema pode alocar diferentes páginas para aplicativos diferentes, utilizando assim toda a memória disponível. O PAE é muito usado em servidores, embora esteja sendo rapidamente substituído pelo uso de processadores e sistemas operacionais de 64 bits. Ele é suportado pelo Windows Server 2003 e pelo Windows 2000, onde pode ser ativado através da opção "/PAE" no arquivo boot.ini, mas não é uma solução viável para quem precisa usar mais do que 4 GB de memória em um desktop, devido a uma série de problemas relacionados a drivers. O PAE apresenta endereços de 64 bits aos drivers, o que torna necessário que eles sejam modificados para utilizar o sistema. Como o uso do PAE sempre foi limitado a servidores, muitos dispositivos não possuem drivers compatíveis e nem sempre é fácil encontrar os disponíveis. Existem ainda problemas de compatibilidade com diversos aplicativos. Atualmente, é muito mais simples migrar para as versões de 64 bits do Vista (ou mesmo para o XP de 64 bits) do que passar a utilizar o PAE, de forma que é melhor não perder tempo com ele no caso dos desktops. Outro problema fundamental do PAE é a questão do desempenho. O processador continua sendo capaz de acessar apenas 4 GB de memória por vez e precisa chavear continuamente entre as páginas disponíveis. Além de demorar um certo tempo, cada chaveamento faz com que os dados armazenados nos caches precisem ser completamente substituídos, o que prejudica de forma perceptível o desempenho. Ou seja, tentar usar o PAE em um desktop para acessar mais memória e assim melhorar o desempenho é simplesmente contra produtivo. :) Uma observação importante é que todas as versões do Windows XP, a partir do SP2 tem o PAE desativado, justamente para evitar problemas de compatibilidade. Nele, a opção "/PAE" no boot.ini simplesmente não faz nada. No caso do Linux, o modo de acesso à memória é escolhido durante a compilação do Kernel. Ao utilizar um processador de 32 bits, o Linux oferece suporte nativo a até 4 GB de memória usando o modo normal de operação do processador e a até 64 GB usando o PAE. Ou seja, ele simplesmente acompanha o suporte disponível no hardware, sem nenhuma limitação adicional. Para melhorar o desempenho do sistema em máquinas antigas, que utilizam 1 GB de memória ou menos, existe uma terceira opção, onde o Kernel endereça apenas 1 GB de memória, sendo que 896 MB ficam disponíveis para os aplicativos e o restante é reservado para uso do Kernel. Neste modo de 375
  • 376. operação, o comando "free" vai reportar que existem apenas 896 MB de memória disponível, mesmo que você possua 1 GB ou mais. É possível escolher entre as três opções ao compilar o Kernel, na opção "Processor Type and Features > High Memory Support". Até por volta de 2005, muitas distribuições vinham com o suporte a apenas 1 GB ativado por padrão, mas atualmente a grande maioria utiliza a opção "4 GB". É possível mudar a opção ao recompilar o Kernel manualmente. A desvantagem de ativar o suporte a 4 GB é que o sistema ficará um pouco mais lento em micros com menos de 1 GB de memória (justamente por isso existe a primeira opção). O suporte a 64 GB só pode ser ativado caso você esteja usando um processador com suporte ao PAE, além de uma placa-mãe compatível. Naturalmente, tudo isso se aplica apenas ao usar uma distribuição com um Kernel compilado para processadores de 32 bits. Ao usar uma versão de 64 bits, o Kernel acessa toda a memória disponível, limitado apenas ao volume de memória suportado pelo chipset ou processador. Voltando ao mundo Windows, existe mais uma limitação importante, que é o limite de 2 GB por aplicativo. Os 3, 3.12 ou 3.5 GB de memória que um sistema de 32 bits é capaz de endereçar é repartida entre todos os programas abertos, mas no caso do Windows, cada programa sozinho não pode usar mais do que 2 GB. Isso acontece por que, assim como o sistema operacional, os programas de 32 bits endereçam a memória utilizando endereços de 32 bits e por isso são capazes de endereçar 4 GB de memória. No Windows, metade da faixa de endereços de cada programa é reservada para uso do kernel, sobretudo para a comunicação entre o sistema operacional e o aplicativo. Com isso, cada aplicativo fica com apenas metade da sua área de endereços disponível, o que limita seu uso de memória a 2 GB. Isso vem se tornando uma limitação importante em alguns games e aplicativos pesados, que podem exceder este limite nos momentos de maior atividade. Pior, além de não acessarem toda a memória disponível, os aplicativos de 32 bits freqüentemente travam sem aviso ao romper a barreira dos 2 GB, exibindo alguma mensagem de erro genérica. Este limite está profundamente enraizado no sistema, de forma que é quase impossível que ele venha a ser removido em futuras versões. Ele afeta tanto quem utiliza as versões de 32 bits do Windows (com mais de 2 GB de memória RAM instalada), quanto quem roda programas de 32 bits sobre as versões de 64 bits do Windows (neste caso o limite se aplica apenas aos aplicativos de 32 bits, naturalmente). Uma forma de amenizar o problema, caso você esteja enfrentando problemas de travamento em algum game pesado, por exemplo, é modificar a divisão de endereços entre o aplicativo e o kernel. 376
  • 377. No Windows XP é possível reservar 3 GB para os aplicativos através da opção "/3gb" no arquivo boot.ini. Entretanto, usá-la causa problemas de estabilidade em um número muito grande de programas, por isso ela não é necessariamente uma boa idéia. Além disso, apenas programas que explicitamente indicam que são capazes de acessar mais de 2 GB são autorizados pelo sistema a utilizar os endereços adicionais, o que reduz brutalmente o número de programas que são realmente capazes de se beneficiar do uso da opção. No caso do Vista, é possível ajustar os valores de forma mais flexível através da opção "IncreaseUserVa" do BCDedit. Através dele você pode reservar, por exemplo, 2.2 ou 2.4 GB para os aplicativos. Usando valores mais baixos que os 3 GB do XP, você evita a maior parte dos problemas de estabilidade. De uma forma geral, funciona bem com a alocação de até 2.6 GB para os aplicativos. A partir daí você corre o risco de ver telas azuis. Como você pode ver, o uso das opções permite apenas minimizar o problema. A única forma de se livrar dele completamente é rodar um sistema de 64 bits e usar apenas aplicativos de 64 bits sobre ele. Memória Flash Diferentemente da memória RAM e também das SRAM, a memória Flash permite armazenar dados por longos períodos, sem precisar de alimentação elétrica. Graças a isso, a memória Flash se tornou rapidamente a tecnologia dominante em cartões de memória, pendrives, HDs de estado sólido (SSDs), memória de armazenamento em câmeras, celulares e palmtops e assim por diante. Se a memória Flash não existisse, todas essas áreas estariam muito atrasadas em relação ao que temos hoje. Os celulares e os palmtops provavelmente ainda utilizariam memória SRAM para armazenar os dados e seriam por isso mais caros e perderiam os dados quando a bateria fosse removida. Os pendrives simplesmente não existiriam e os cartões de memória estariam estagnados nos cartões CompactFlash, utilizando microdrives ou pequenas quantidades de memória SRAM alimentada por uma pequena bateria. Formatos mais compactos, como os cartões SD e miniSD simplesmente não existiriam. Existem dois tipos de memória Flash. A primeira tecnologia de memória Flash a se popularizar foi o tipo NOR, que chegou ao mercado em 1988. Os chips de memória Flash NOR possuem uma interface de endereços similar à da memória RAM. Graças a isso, eles rapidamente passaram a ser usados para armazenar o BIOS da placa-mãe e firmwares em dispositivos diversos, que antes eram armazenados em chips de memória ROM ou EEPROM. Nos primeiros PCs, por exemplo, o BIOS da placa-mãe era gravado em um chip de memória ROM e por isso não era atualizável, a menos que o chip fosse fisicamente substituído. O problema com as memórias NOR é que elas são muito caras e, embora as leituras sejam rápidas, o tempo de gravação das células é muito alto. Em um 377
  • 378. chip de memória NOR típico, as operações de gravação demoram cerca de 750 nanosegundos, ou seja, teríamos pouco mais de 1300 operações de gravação por segundo! No caso do BIOS da placa-mãe, isso não é um grande problema, pois você só precisa atualizá-lo esporadicamente. Mas, imagine um palmtop que tentasse utilizar apenas memória NOR com memória de trabalho... O sistema rodaria tão lentamente que a idéia acabaria sendo abandonada mais cedo ou mais tarde. :) Apesar disso, a memória Flash do tipo NOR é bastante usada até hoje em palmtops, celulares e diversos tipos de dispositivos, para armazenar o sistema operacional (nesse caso chamado de firmware), que é carregado durante o boot, sem ser alterado. A vantagem nesse caso é o XiP (execute in place), onde o sistema pode rodar diretamente a partir do chip de memória, sem precisar ser primeiro copiado para a memória RAM. O chip de memória NOR é complementado por uma pequena quantidade de memória SRAM ou DRAM, que é usada como memória de trabalho. Em muitos casos, a memória é usada também para armazenar dados e configurações que, justamente por isso, podem ser perdidos quando a carga da bateria se esgota completamente. As memórias Flash NOR chegaram a ser utilizadas nos primeiros cartões de memória PCMCIA e CompactFlash, mas elas desapareceram desse ramo quando foram introduzidas as memórias NAND, que são de longe o tipo mais usado atualmente. Nelas, cada célula é composta por dois transístores, com uma fina camada de óxido de silício precisamente posicionada entre os dois, que armazena cargas negativas. Isso cria uma espécie de armadilha de elétrons, que permite manter os dados por longos períodos de tempo, sem que seja necessário manter a alimentação elétrica (como nas memórias SRAM), ou muito menos fazer um refresh periódico (como na memória DRAM). Isso simplifica muito o design dos cartões, pendrives e outros dispositivos, pois eles precisam incluir apenas os chips de memória Flash NAND, um chip controlador e as trilhas necessárias. Nada de baterias, circuitos de refresh ou qualquer coisa do gênero. Aqui temos um diagrama da Intel que mostra uma célula de memória Flash NAND: 378
  • 379. Pelo diagrama você pode notar que embora mais complexa que uma célula de memória RAM (onde temos apenas um transístor e um capacitor), a célula de memória Flash ocupa pouco espaço, pois o segundo transístor é posicionado sobre o primeiro. Graças ao tamanho reduzido das células, cada chip de memória Flash NAND armazena uma quantidade muito maior de dados, o que faz com que o preço por megabyte seja muito mais baixo. Além de mais baratas que as NOR, as memórias NAND também são muito mais rápidas na hora de gravar dados. A principal limitação é que elas são endereçadas usando páginas de 2 KB e acessadas através de um barramento serial. Ou seja, do ponto de vista do sistema, um cartão de memória Flash NAND está mais para um HD do que para uma unidade de memória. Você pode usá-lo para guardar dados, mas na hora que o sistema precisa rodar um programa, precisa primeiro copiá-lo para a memória RAM, da mesma forma que faria ao usar um HD. De alguns anos para cá, os palmtops e smartphones passaram a cada vez mais utilizar memória Flash NAND como área de armazenamento de dados e programas, substituindo a memória SRAM. Isso se tornou possível graças a um conjunto de truques feitos via software, onde o sistema utiliza uma quantidade menor de memória SRAM como área de trabalho e vai lendo e os arquivos na memória Flash conforme eles são necessários. Esse esquema é muito similar ao que temos num PC, onde os arquivos são salvos no HD, porém processados usando a memória RAM. Um dos primeiros aparelhos a aderir a esse sistema foi o Treo 650, lançado em 2004. Atualmente ele é utilizado na grande maioria dos modelos, pois, além de cortar custos, melhora a confiabilidade do aparelho, já que os dados não são mais perdidos ao remover a bateria. 379
  • 380. O grande boom da memória Flash aconteceu entre 2004 e 2005, quando uma combinação de dois fatores fez com que os preços por MB caíssem rapidamente. O primeiro foi o brutal aumento na produção e a concorrência entre os fabricantes, que empurraram os preços para baixo. Além de gigantes como a Samsung e a Toshiba, até mesmo a Intel e a AMD investiram pesadamente na fabricação de memória Flash. O segundo foi a introdução da tecnologia MLC (Mult-Level Cell), onde cada célula passa a armazenar dois ou mais bits em vez de apenas um. Isso é possível graças ao uso de tensões intermediárias. Com 4 tensões diferentes, a célula pode armazenar 2 bits, com 8 pode armazenar 3 bits e assim por diante. O MLC foi implantado de forma mais ou menos simultânea pelos diversos fabricantes e permitiu reduzir drasticamente o custo por megabyte, quase que de uma hora para a outra. Outra tecnologia similar é o MBC (Multi-Bit Cell), desenvolvido pela Infineon. Os chips "tradicionais", que armazenam um único bit por célula passaram a ser chamados de "SLC" (single-bit cell) e ainda são produzidos com o objetivo de atender o mercado de cartões de alto desempenho (sobretudo os cartões CF destinados ao mercado profissional). Embora muito mais caros, eles oferecem um melhor desempenho e são mais duráveis. Outra tecnologia usada pelos fabricantes para cortar custos e ao mesmo tempo permitir a criação de chips de maior densidade é o "Die-Stacking", onde dois ou mais chips são "empilhados", conectados entre si e selados dentro de um único encapsulamento, que possui o mesmo formato e contatos que um chip tradicional. Como uma boa parte do custo de um chip de memória Flash corresponde justamente ao processo de encapsulamento, o uso do Die- Stacking permite mais uma redução substancial do custo. 380
  • 381. Como de praxe, a popularização das memórias Flash deu início a uma guerra entre diversos formatos de cartões, alguns abertos e outros proprietários. CompactFlash: Excluindo os jurássicos cartões de memória PCMCIA, o primeiro formato de cartão foi o CompactFlash (CF), onde é utilizada uma interface muito similar à interface IDE usada pelos HDs, com nada menos que 50 pinos. Aqui temos um cartão CF aberto: De um dos lados temos o chip controlador e um dos chips de memória e no outro temos espaço para mais dois chips, totalizando até 3 chips de alta capacidade. Graças a esse design, os cartões CF oferecem boas taxas de transferência, mas em compensação são caros e volumosos, o que explica a decadência do formato. Os cartões CompactFlash ainda são produzidos e sobrevivem em alguns nichos. Eles são usados por algumas câmeras da Canon, voltadas para o segmento profissional (onde a boa taxa de transferência dos cartões CF presta bons serviços) e em diversos tipos de sistemas embarcados. Devido à similaridade entre os dois barramentos, existem adaptadores que permitem instalar cartões CF numa porta IDE, substituindo o HD. SmartMedia: Em 1995 a Toshiba lançou o formato SmartMedia (SM), um formato muito mais simples, onde o chip de memória é acessado diretamente, sem o uso de um chip controlador. O chip de memória é encapsulado dentro de um cartucho plástico, com apenas 0.76 mm de espessura e os contatos externos são ligados diretamente a ele. Nesta foto você pode ver um cartão SmartMedia em comparação com um cartão MMC e um Memory Stick: 381
  • 382. Apesar de finos, os cartões SM eram relativamente grandes, o que levou os fabricantes a abandonarem o formato. Surgiram então os formatos xD, MMC, SD e Memory Stick. Surpreendentemente, os leitores de cartões USB passaram a oferecer suporte para todos os formatos simultaneamente. Isso foi possível graças ao desenvolvimento de chips controladores "tudo em um", capazes de converter cada um dos protocolos nos comandos suportados pelo padrão USB. Existem também os leitores incluídos nos notebooks, que lêem cartões SD e Memory Stick. Do ponto de vista do sistema operacional, eles são diferentes dos leitores USB, pois são ligados ao barramento PCI (ou PCI Express) ao invés de usarem o barramento USB e a maioria das funções são executadas via software (como em um softmodem), graças ao driver instalado. Cartões xD: O próximo da lista é o xD, um formato proprietário, usado em câmeras da Olympus e da Fujifilm. Eles são relativamente rápidos se comparados com os SmartMedia e com os cartões MMC, mas são bem mais lentos que os cartões SD usados atualmente. Existiram duas atualizações para o formato: o "xD M" (que permitiu o desenvolvimento de cartões com mais de 512 MB) e o "xD H" (que melhorou a velocidade de transferência). Apesar disso, ambos acabaram sendo pouco usados, devido à concorrência dos cartões SD. Assim como nos cartões SM, os contatos são ligados diretamente no chip de memória, sem o uso de um chip controlador. Isso em teoria baratearia os cartões, mas devido à pequena demanda (e conseqüentemente aos baixos volumes de produção), os cartões xD são atualmente bem mais caros. Isso acaba prejudicando a competitividade das câmeras dos dois fabricantes, que perdem mercado por insistirem no padrão. 382
  • 383. Cartões MMC: O MMC é um padrão "quase aberto", onde é necessário pagar uma taxa inicial para obter as especificações e mais um valor anual à MMC Association, além de seguir um conjunto de restrições. Os cartões MMC possuem exatamente as mesmas dimensões dos cartões SD atuais e são compatíveis com a maior parte das câmeras e outros dispositivos, além de utilizarem o mesmo encaixe que eles nos adaptadores. As únicas diferenças visíveis são que os cartões MMC são um pouco mais finos (1.4 mm, contra 2.1 mm dos SD) e possuem apenas 7 pinos, enquanto os SD possuem dois pinos extras, totalizando 9. O maior problema é que os cartões MMC são lentos, pois utilizam um antiquado barramento serial para a transferência de dados, que transfere um bit por vez a uma freqüência máxima de 20 MHz. Em teoria, os cartões MMC poderiam transferir a até 2.5 MB/s, mas a maioria dos cartões ficam muito longe dessa marca. Os cartões mais antigos utilizam um modo de transferência ainda mais lento, limitado a 400 KB/s. Como não existe praticamente nenhuma diferença de custo entre produzir um cartão MMC ou SD, os fabricantes migraram rapidamente para o padrão mais rápido, fazendo com que o MMC entrasse em desuso. Mais recentemente foram lançados os padrões RS-MMC, MMC Plus e SecureMMC, versões atualizadas do padrão MMC, que visam reconquistar seu lugar no mercado. Chegamos então aos dois padrões que sobreviveram à guerra: o SD, que é o padrão "parcialmente aberto", apoiado pela grande maioria dos fabricantes e o Memory Stick, o padrão proprietário da Sony. Memory Stick: Embora tenha conseguido atingir uma sobrevida surpreendente, o Memory Stick ficou restrito aos produtos da Sony e por isso seu futuro é incerto. Além do padrão original, existem também os formatos Memory Stick Duo, Pro, Pro Duo, Micro e Pro-HG. Tanto o padrão original quanto o Memory Stick Duo estão limitados a 128 MB, por isso ficaram rapidamente obsoletos e são usados apenas por dispositivos antigos, fabricados até o início de 2003. A principal diferença entre os dois formatos é o tamanho reduzido dos cartões Memory Stick Duo, que são um pouco menores que os cartões SD. 383
  • 384. Em seguida temos os cartões Memory Stick Pro e Memory Stick Pro Duo (ambos lançados em 2003), que substituem diretamente os dois padrões anteriores. Além do melhor desempenho, eles trouxeram um padrão atualizado de endereçamento, que permite o desenvolvimento de cartões de até 32 GB. Aqui temos uma foto mostrando os 4 formatos: O Memory Stick Micro (ou M2) é um formato miniaturizado, desenvolvido para uso em celulares (mais especificamente nos Sony Ericsson), que mede apenas 1.5 x 1.2 cm. Os cartões normalmente são vendidos em conjunto com um adaptador, que permite usá-los em qualquer dispositivo ou leitor que use cartões Memory Stick Pro Memory Stick Micro Concluindo, temos o Memory Stick Pro-HG, que utiliza um novo barramento de dados, que transmite 8 bits por ciclos a uma freqüência de 60 MHz, o que permite uma taxa de transferência de até 60 MB/s (contra 20 MB/s dos padrões anteriores). Embora na prática a taxa de transferência dependa mais dos chips de memória Flash usados, o barramento mais rápido coloca os cartões Pro-HG em vantagem em relação aos cartões SD, já que eles estão limitados a um máximo de 20 MB/s pelo barramento usado. Cartões SD: Finalmente, temos os cartões SD (Secure Digital), que acabaram se tornando o formato dominante. Como o nome sugere, os cartões SD oferecem um sistema de proteção de conteúdo (o CPRM), que é implementado diretamente no chip controlador. Ele se destina a atender o lobby das gravadoras, oferecendo uma forma de "proteger" arquivos de áudio e outros 384
  • 385. tipos de conteúdo contra cópias não autorizadas. Os cartões Memory Stick implementam um sistema similar (o Magic Gate), mas felizmente ambos são pouco usados. Existem três formatos de cartões SD. Além do formato padrão, temos os cartões miniSD e microSD, versões miniaturizadas, que são eletricamente compatíveis com o padrão original e podem ser encaixados num slot para cartões SD regulares usando um adaptador simples. Os cartões SD suportam 3 modos de transferência. O 4 bits mode é o modo "padrão", onde o cartão transfere 4 bits por ciclo, a uma freqüência de até 50 MHz, resultando em taxas de transferência de até 25 MB/s (desde que os chips de memória usados acompanhem, naturalmente). O segundo é o 1 bit mode, onde é transferido um único bit por ciclo, a uma freqüência de no máximo 20 MHz. Este modo é usado para manter compatibilidade com os cartões MMC. É graças a ele que você pode usar cartões MMC em câmeras e leitores para cartões SD e vice-versa. Finalmente, existe o modo SPI (ainda mais lento), que é utilizado por algumas câmeras antigas e também em diversos tipos de dispositivos embarcados. É por causa dos três modos de operação que um mesmo cartão SD pode ser acessado a velocidades bem diferentes de acordo com o dispositivo onde ele é usado. Muitas câmeras antigas que permitem acessar o conteúdo do cartão quando ligadas a uma porta USB transferem a velocidades muito baixas, muitas vezes inferiores a 300 KB/s. O driver "sdhci" (no Linux), que dá suporte aos leitores de cartões incluídos em notebooks, por exemplo, é (pelo menos até o Kernel 2.6.21) limitado ao modo SPI, por isso é bastante lento em relação ao driver Windows, que é capaz de utilizar o modo 4 bits. Ou seja, o leitor do seu notebook funciona, mas a uma velocidade muito baixa e com uma grande utilização do processador. Leitor de cartões SD suportado no Linux através do módulo sdhci O modo SPI é o preferido pelos desenvolvedores de sistemas embarcados e drivers open-source, pois ele é muito simples e por isso pode ser emulado via software, sem a necessidade de usar um controlador adicional. No modo SPI 4 são usados 4 pinos do cartão: um para enviar o sinal de clock, outro para 385
  • 386. enviar comandos, o terceiro para selecionar qual chip dentro do cartão será acessado e o último para transferir dados, um bit de cada vez. Desde que você possa controlar o uso dos 4 pinos, é fácil escrever uma função ou driver para acessar o cartão. O modo SPI é o mais lento, mas é suficiente para muitas aplicações. Imagine o caso de um sensor de temperatura que usa o cartão apenas para armazenar um log das variações, gravando alguns poucos bits por vez, por exemplo. Controladores: Com exceção dos antigos cartões SmartMedia e xD, que vimos há pouco, todos os cartões de memória Flash incluem um chip controlador, que é encarregado do gerenciamento dos endereços e todas as operações de leitura e gravação, além de executarem funções de manutenção diversas. Os cartões atuais utilizam o sistema "wear levelling" para ampliar a vida útil das células. As células de memória Flash NAND suportam de 100.000 a 1.000.000 de operações de leitura ou gravação, de acordo com a qualidade dos chips. Pode parecer bastante a princípio, mas a maioria dos sistemas de arquivos (especialmente FAT e EXT) realizam atualizações freqüentes na tabela de endereçamento da partição. Se nada fosse feito a respeito, as gravações sucessivas iriam rapidamente inutilizar as células responsáveis pelo armazenamento da tabela, inutilizando o cartão. Graças ao wear levelling é feito uma espécie de "rodízio" dos endereços mais acessados entre as células do cartão, evitando a fadiga de alguns endereços isolados. Outra função é remapear os endereços defeituosos, onde um setor de uma área reservada passa a ser usado em seu lugar. Isto é muito similar ao sistema utilizado nos HDs modernos, onde a controladora também é capaz de remapear os badblocks automaticamente. Você pode então se perguntar como o controlador faz para descobrir os endereços defeituosos. A resposta é que, além dos dados e dos setores da área reservada, a memória armazena também alguns bytes adicionais (tipicamente 64 bytes adicionais para cada bloco de 2048 bytes), usados para guardar códigos ECC. Estes códigos permitem não apenas identificar, mas também corrigir erros simples nos dados gravados. Como o controlador não tem como descobrir exatamente em qual célula ocorreu o erro, normalmente todo o bloco de 2048 bytes é remapeado. Grande parte dos cartões de memória Flash já saem de fábrica com alguns setores defeituosos remapeados (assim como os HDs). Isso permite que os fabricantes aproveitem módulos que de outra forma precisariam ser descartados, reduzindo o custo de forma considerável. Até certo ponto, o controlador também é responsável pelas taxas de transferência suportadas pelo cartão, já que é ele quem determina os modos de acesso e as freqüências de clock suportadas. Mesmo que os chips de memória sejam suficientemente rápidos, a taxa de transferência máxima pode ser limitada pelo controlador. Por exemplo, muitos cartões microSD utilizam 386
  • 387. controladores limitados a 20 MHz, que são capazes de transferir a, no máximo, 10 MB/s, enquanto muitos dos novos já utilizam controladores capazes de operar a 50 MHz, como nos cartões SD regulares. A velocidade dos cartões é comparada pelos fabricantes à velocidade dos drives de CD-ROM. Um cartão "133x" é um cartão que usa um controlador capaz de transferir a 20 MB/s, um "155x" é um cartão capaz de transferir a 25 MB/s e assim por diante. As taxas reais são normalmente mais baixas (sobretudo nas operações de gravação), pois ficam limitadas também à velocidade dos chips, por isso não leve o índice muito a sério, ele é apenas uma ferramenta de marketing. De qualquer forma, é conveniente evitar cartões que não fazem menção à velocidade de transferência, pois eles normalmente são limitados a 33x ou menos. Note que os cartões SDHC adotam um índice diferente, como veremos a seguir. miniSD e microSD: Embora pequenos em relação aos cartões CompactFlash e SmartMedia, os cartões SD ainda são grandes demais para algumas aplicações, sobretudo para uso em celulares e nas câmeras mais compactas. Para solucionar o problema foram criados dois formatos miniaturizados, o miniSD e o microSD, que são menores e mais finos. O miniSD mede 2.15 x 2.0 cm, com apenas 1.4 mm de espessura. Embora os cartões ainda sejam um pouco mais caros que os SD padrão, o formato está ganhando popularidade rapidamente, usado no Nokia N800 e no E62, por exemplo. De uma forma geral, todos os aparelhos onde o cartão é instalado internamente (embaixo da bateria, por exemplo) estão passando a utilizá-lo. O microSD é um formato ainda menor, concorrente do M2, destinado a celulares, MP3 players e outros dispositivos onde as dimensões reduzidas e o baixo consumo são importantes. Ele mede apenas 1.5 x 1.1 cm, com apenas 1 mm de espessura. Na maioria dos casos, o cartão acompanha um adaptador SD. Como os dois padrões são compatíveis eletricamente, o adaptador é apenas um dispositivo passivo, muito barato de se produzir: 387
  • 388. Você pode se perguntar como é possível que os cartões microSD sejam tão compactos, já que qualquer cartão SD precisa de pelo menos dois chips (o chip de memória e o controlador) e num cartão microSD mal temos espaço para um. A resposta está no die-stacking, tecnologia que comentei há pouco. Num cartão microSD temos um ou mais chips de memória e o próprio controlador "empilhados", formando um único encapsulamento. Ele é instalado pelo fabricante numa placa de circuito que contém os contatos externos e em seguida selado dentro da cobertura externa. O mesmo se aplica aos cartões Memory Stick Micro, que possuem dimensões similares. Não existe como desmontar um microSD e, mesmo que você quebre um no meio, não vai conseguir diferenciar os chips, pois eles são produzidos usando wafers muito finos (até 0.025 mm de espessura nos mais recentes) e juntados de forma muito precisa. Os primeiros cartões microSD de 4 GB foram produzidos usando nada menos do que 8 chips de 512 MB empilhados. É provável que no futuro seja possível utilizar um número ainda maior. SD Duo: Este não é um padrão oficial, mas sim o nome "mercadológico" para cartões SD que podem ser ligados diretamente em uma porta USB, assumindo também a função de pendrive. Este padrão foi originalmente criado pela Sandisk e depois copiado por outros fabricantes. Eles possuem uma dobradiça ou protetor removível, que esconde um conector USB: O pulo do gato aqui é utilizar um único chip (similar ao usado nos cartões miniSD e microSD), que além da memória Flash inclui um controlador "dual", que além de ser um controlador SD, incorpora também as funções de controlador USB. Graças a isso, o fabricante pode colocar os contatos normais do cartão SD de um lado, e os contatos da porta USB do outro, criando um design muito engenhoso. Estes cartões acabam sendo o "supra-sumo" da portabilidade, pois você tem ao mesmo tempo um cartão SD e um pendrive, daí o "Duo". SDHC: Inicialmente, o padrão de cartões SD previa o desenvolvimento de cartões de até 2 GB, formatados por padrão em FAT16. Você pode reformatar o cartão em outros sistemas de arquivos, mas nesse caso a maior parte das câmeras e outros dispositivos deixam de conseguir acessá-lo, embora você ainda consiga acessar o cartão normalmente se conectá-lo a um PC usando um adaptador USB. 388
  • 389. Quando o limite de 2 GB foi atingido, os fabricantes passaram a criar extensões para permitir a criação de cartões de 4 GB, usando hacks para modificar o sistema de endereçamento e passando a usar o sistema FAT32 (no lugar do FAT16) na formatação. Estes cartões de 4 GB "não-padronizados" são compatíveis com a maioria dos dispositivos antigos, mas você pode enfrentar problemas diversos de compatibilidade, já que eles não seguem o padrão. Para colocar ordem na casa, foi criado o padrão SDHC (Secure Digital High Capacity), onde a tabela de endereçamento foi expandida e passou a ser oficialmente usado o sistema de arquivos FAT32. Todos os cartões que seguem o novo padrão carregam o logotipo "SDHC" (que permite diferenciá-los dos cartões de 4 GB "não-oficiais") e trazem um número de classe, que indica a taxa de transferência mínima em operações de escrita. Os cartões "Class 2" gravam a 2 MB/s, os "Class 4" a 4 MB/s, os "Class 6" a 6 MB/s e assim por diante. O mesmo se aplica também aos cartões miniSD e microSD. Note que a numeração não diz nada sobre a velocidade de leitura, mas ela tende a ser proporcionalmente maior. Veja um exemplo de cartão com o logotipo: 389
  • 390. Outras tecnologias Concluindo, temos aqui mais algumas tecnologias de memória que merecem ser citadas: Memórias BEDO: As memórias BEDO (Burst EDO) foram desenvolvidas no final da era Pentium 1 para concorrer com as memórias EDO. Elas utilizam uma espécie de pipeline para permitir acessos mais rápidos que as EDO. Em um Bus de 66 MHz, as memórias BEDO são capazes de funcionar com temporização de 5-1-1-1, quase 30% mais rápido que as memórias EDO convencionais. No papel as memórias BEDO eram interessantes, mas elas nunca foram usadas em grande escala. A tecnologia era propriedade da Micron, que ansiava por cobrar royalties dos demais fabricantes, caso a tecnologia fosse adotada em grande escala. Os fabricantes de memória trabalham com margens de lucro incrivelmente apertadas, de forma que a palavra "royalties" gera calafrios. Ao invés de caírem na armadilha da Micron, eles se apressaram em adotar as memórias SDRAM, que além de serem um padrão aberto, eram tecnicamente superiores. Memórias Rambus (RDRAM): Assim como as memórias BEDO, as RDRAM são um tipo proprietário de memória, que acabou não ganhando popularidade. Os módulos de memórias Rambus são chamados de "Rambus Inline Memory Modules" ou RIMMs. Os módulos RIMM são bem semelhantes aos módulos DIMM, mas em geral eles vêm com uma proteção de metal sobre os chips de memória, que também serve para facilitar a dissipação de calor, já que os módulos RIMM aquecem bastante devido à alta freqüência de operação. Uma particularidade era a necessidade de instalar módulos terminadores em todos os slots não populados da placa-mãe, para reduzir o nível de ruído eletromagnético. Na foto a seguir, por exemplo, temos uma placa com um único módulo RIMM instalado. Os outros dois são terminadores: 390
  • 391. Em 1996 a Intel fechou um acordo com a Rambus Inc., uma então pequena empresa que desenvolvia um tipo de memória otimizada para sistemas que precisam de um largo barramento de dados com a memória. As memórias Rambus foram utilizadas no Nintendo 64 e no Playstation 2, e o plano era que elas fossem adotadas em larga escala nos PCs, com a ajuda da Intel. A Rambus Inc. receberia royalties dos fabricantes e a Intel ficaria com parte do bolo, na forma de incentivos e descontos. A Intel introduziu o suporte às memórias Rambus a partir do chipset i820, ainda na época do Pentium III, e continuou tentando empurrar a tecnologia com o chipset i850, usado na primeira geração de placas para Pentium 4. O problema era que o chipset i850 suportava somente memórias Rambus, sem opção de usar memórias SDRAM ou DDR (que eram novidade na época). Na época do lançamento do Pentium 4, um módulo RIMM de 64 MB custava US$ 99, enquanto um módulo de memória PC-133 da mesma capacidade custava apenas US$ 45. Isto significava gastar US$ 216 (ao comprar 256 MB) a mais, só de memória, sem contar a diferença de preço do processador Pentium 4 e da placa-mãe, que na época ainda eram consideravelmente mais caros. As memórias Rambus utilizam um barramento de dados de apenas 16 bits de largura, em oposição aos 64 bits utilizados pelos módulos de memória SDRAM, suportando em compensação freqüências de barramento de até 400 MHz com duas transferências por ciclo (como o AGP 2x), o que na prática equivale a uma freqüência de 800 MHz. Essa organização lembra um pouco o barramento PCI Express, onde o uso de menos trilhas de dados permitem a operação a freqüências mais altas. Trabalhando a 400 MHz com duas transferências por ciclo, sua velocidade máxima, as memórias Rambus permitem uma banda total de 1.6 gigabytes por segundo. O i850 era capaz de acessar dois módulos simultaneamente, proporcionando um barramento total de 3.2 GB/s. Essa é uma marca respeitável, comparável à de um módulo DDR-400, porém atingida em 2001. 391
  • 392. O grande problema era que apesar da boa taxa de transferência, os módulos trabalhavam com tempos de latência muito altos. Isso prejudicava muito o desempenho, fazendo com que um Pentium III espetado numa placa-mãe i820 com um módulo RIMM acabasse sendo mais lento na maioria das aplicações que um PC simular equipado com memórias SDRAM PC-133. Mesmo em conjunto com o Pentium 4, que incluía uma série de otimizações (incluindo o uso de módulos RIMM em pares), as memórias Rambus falhavam em oferecer algum ganho tangível de performance em relação às memórias DDR. Pouca gente comprou as versões iniciais do Pentium 4 e, quem se arriscou, acabou com um abacaxi nas mãos. Isto obrigou a Intel a modificar a plataforma, passando a utilizar memórias DDR padrão. A demora gerou um vácuo, que permitiu que a AMD aumentasse consideravelmente sua participação no mercado, já que contava com o Athlon Thunderbird, um processador mais barato e mais eficiente. No final, as memórias DDR (seguidas pelas DDR2) ganharam a briga, tornando-se o padrão de memória dominante. Mais uma vez a indústria rejeitou um padrão proprietário de memória, em favor de um padrão aberto. Registered DIMM: Os módulos de memória que usamos nos micros domésticos são chamados de unbuffered. Eles usam um layout simples e eficiente, onde o controlador de memória tem acesso direto aos chips de memória, garantindo tempos de latência mais baixos. Essa simplicidade tem um custo, que é uma limitação no número de chips por módulo e também no número de módulos que podem ser instalados na mesma placa-mãe. Salvo raras exceções, os módulos unbuffered possuem no máximo 16 chips de memória e é possível projetar placas-mãe com suporte para até 4 módulos. Isso não é um problema nos desktops, onde normalmente não precisamos de mais do que 2 ou 4 GB de RAM, mas é uma grave limitação nos servidores, onde é comum o uso de mais memória. Os módulos registered incluem chips adicionais (registradores) que funcionam como uma interface adicional entre o controlador e os chips. Eles permitem que o controlador suporte um número maior de módulos de memória e também que sejam usados módulos com mais chips, permitindo a instalação de quantidades muito maiores de memória. Muitas placas para servidores incluem 8 slots de memória, e existem módulos registered com 32 ou até mesmo 48 chips (sem contar os chips adicionais no caso dos módulos com ECC). É fácil reconhecer os módulos registered, devido à presença dos chips adicionais: 392
  • 393. A desvantagem é que o uso dos registradores retarda a transmissão dos sinais, aumentando a latência e conseqüentemente reduzindo o desempenho dos módulos. A maioria das placas com suporte a módulos registered não suporta módulos unbuffered, de forma que seu uso não é uma opção. Também não é possível usar módulos registered, muito menos misturá-los com módulos unbuffered nas placas para desktop que não os suportam. Os suporte a módulos registered está disponível apenas em placas-mãe destinadas a servidores e workstations, onde a possibilidade de usar mais memória supera as desvantagens. É possível encontrar tanto módulos de memória SDRAM quanto módulos DDR e DDR2 em versão registered. Por utilizarem componentes adicionais e serem produzidos em pequena quantidade, eles normalmente custam o dobro do preço dos módulos unbuffered, de forma que você só deve considerar seu uso quando realmente necessário. MRAM: As memórias MRAM (Magnetoresistive RAM) utilizam células magnéticas para armazenar dados, ao invés de células que armazenam eletricidade, como nas memórias DRAM, SRAM ou Flash. O layout básico lembra um pouco um módulo de memória DRAM, onde temos um transístor para cada bit de dados. A grande diferença é que, no lugar de um capacitor, é usada uma célula magnética, que pode ser gravada e lida usando eletricidade e conserva seus dados por longos períodos (assim como nos HDs) sem precisar de refresh ou alimentação elétrica. As memórias MRAM são quase tão rápidas quanto as memórias SRAM, consomem menos energia e suportam um número quase ilimitado de ciclos de leitura e gravação, ao contrário das memórias Flash. Elas são uma espécie de "Santo Graal" da informática, uma tecnologia que, se fosse suficientemente barata, poderia vir a substituir, com vantagens, a maioria dos demais tipos de memórias. O problema é que as memórias MRAM são difíceis de fabricar e até o momento nenhum fabricante foi capaz de produzir chips com densidades similares à memória RAM ou Flash. Embora se fale nas memórias MRAM desde a década de 90, os primeiros chips disponíveis comercialmente foram produzidos apenas em 2006 (pela Freescale). 393
  • 394. O ponto positivo é que os chips trabalhavam com tempo de acesso de apenas 35 ms, tanto para leitura quanto para gravação, o que bate de longe os chips de memória Flash e rivaliza com os chips de memória SRAM usados em palmtops e no cache de HDs, oferecendo a vantagem de não perderem os dados armazenados e não precisarem de alimentação elétrica. O problema é que armazenavam apenas 4 megabits (512 KB) e custavam US$ 25 cada. Chip de memória MRAM Estes chips foram produzidos em pequena escala, usando técnicas obsoletas de produção, por isso o preço e a densidade atingida tendem a melhorar conforme a tecnologia avance e os chips passem a ser produzidos em maior escala. Diversas empresas, entre elas a IBM e a Samsung, têm investido no desenvolvimento de memórias MRAM, por isso devemos ter progressos nos próximos anos. De início, o concorrente das memórias MRAM são justamente os chips de memória SRAM, que são o tipo mais rápido e caro de memória em uso atualmente. As aplicações são óbvias: HDs com caches que não perdem os dados quando o micro é desligado no botão, além de palmtops e celulares menores e com uma maior autonomia de energia. A longo prazo, pode ser que as memórias MRAM passem a ser usadas em PCs, substituindo a memória RAM. Um PC que utilizasse memórias MRAM como memória principal poderia manter o estado anterior depois de desligado, sem precisar de um novo processo de boot. Não haveria mais problema de perda de dados por causa de desligamentos incorretos, pois ao ligar o PC novamente, tudo estaria como antes. 394
  • 395. A partir daí, quem sabe, novas técnicas de produção permitam que passem a concorrer com as memórias Flash, mas por enquanto, isso ainda é exercício de futurologia. A menos que alguma grande revolução aconteça, as memórias MRAM devem demorar pelo menos mais 4 ou 5 anos para se tornarem competitivas com as memórias SRAM e pelo menos uma década para começarem a substituir as memórias DRAM em alguns nichos. Paridade e ECC: Por melhor que seja a qualidade, todos os tipos de memória são passíveis de erros, que podem ser causados por inúmeros fatores, desde variações na tensão da tomada que não são completamente absorvidos pela fonte de alimentação, estática, diversos tipos de interferências eletromagnéticas e, por incrível que possa parecer, até mesmo raios cósmicos, que num PC doméstico causam um soft-error em média a cada poucos meses: http://www-1.ibm.com/servers/eserver/pseries/campaigns/chipkill.pdf Ao contrário dos "hard-errors", que são danos físicos nos módulos de memória, causados por eletricidade estática ou outros tipos de descargas, os soft-erros são erros momentâneos, onde um ou alguns poucos bits são alterados, sem que os chips de memória sejam danificados. Eles podem causar os mais diversos efeitos colaterais, como travamentos de programas, pequenos danos em arquivos salvos e assim por diante. Num desktop eles não costumam ser catastróficos, mas podem causar efeitos sérios em sistemas que manipulam informações sensíveis, como no caso dos bancos, por exemplo, onde um soft-error poderia mudar o saldo da sua conta bancária. ;) Para aumentar o grau de confiabilidade dos sistemas, foram criados métodos de diagnóstico e correção de erros. Tudo começou com os sistemas de paridade, usados em muitos módulos de 30 e 72 vias. A paridade é um método mais antigo, que somente é capaz de identificar alterações nos dados depositados nas memórias, sem condições de fazer qualquer tipo de correção. A paridade consiste na adição de mais um bit para cada byte de memória, que passa a ter 9 bits, tendo o último a função de diagnosticar alterações nos dados. A operação de checagem dos dados na paridade é bem simples: são contados o número de bits "1" de cada byte. Se o número for par, o bit de paridade assume o valor "1" e caso seja ímpar, o 9º bit assume o valor "0". Quando requisitados pelo processador, os dados são checados pelo circuito de paridade que verifica se o número de bits "1" corresponde ao depositado no 9º bit. Caso seja constatada alteração nos dados, ele envia ao processador uma mensagem de erro. Claro que esse método não é 100% eficaz, pois não é capaz de detectar a alteração de um número de bits que mantenha a paridade. Caso, por exemplo, dois bits zero retornassem alterados para bits um, o circuito 395
  • 396. de paridade não notaria a alteração nos dados. Felizmente, a possibilidade da alteração de dois ou mais bits ao mesmo tempo é remota. Exemplo de Byte de Número de Bits "1" no Bit de paridade dados Byte 00000000 0 1 10110011 5 0 00100100 2 1 11111111 8 1 O uso da paridade não torna o computador mais lento, pois os circuitos responsáveis pela checagem dos dados são independentes do restante do sistema. Seu único efeito colateral é o encarecimento dos módulos de memória, que em vez de 8 ou 16 chips, passam a ter 9 ou 18, tornando-se pelo menos 12% mais caros. Além do aumento no custo, o grande problema da paridade é que ela apenas permite identificar erros, mas sem corrigi-los. Isso acaba fazendo com que ela tenha pouca utilidade, pois ao receber um erro suas únicas opções são ignorá- lo, ou parar tudo e reiniciar o micro. Conforme os módulos de memória foram tornando-se mais confiáveis, os módulos com paridade entraram em desuso. Em seguida temos o ECC, o sistema atual, que permite não apenas identificar, mas também corrigir erros simples. O ECC acaba sendo a solução perfeita, pois permite que um servidor continue funcionando, sem interrupções e de forma confiável, mesmo com um grande número de soft-errors, causados por fatores diversos. O número de bits necessários para implementar o ECC decresce conforme aumenta a largura do barramento usado pelo módulo. Em um módulo de 32 bits (como os antigos módulos de 72 vias), são necessários 7 bits adicionais para cada 32 bits de memória, mas nos módulos DIMM de 64 bits atuais, são necessários apenas 8 bits para cada 64 bits de memória, ou seja, o mesmo que seria necessário para usar paridade. Os módulos DIMM com ECC são fáceis de identificar, pois eles possuem 5, 9 ou 18 chips, em vez de 4, 8 ou 16. O uso de ECC é mais comum em módulos registered, que são específicos para servidores, mas também é possível encontrar alguns módulos unbuffered com ECC: 396
  • 397. Módulo com ECC (note que o módulo possui 9 chips) Identificando módulos de memória: Como vimos, todos os chips de memória trazem estampado um número de identificação. Este número pode ser utilizado para descobrir detalhes sobre o módulo, quem o produziu, qual é seu tempo de acesso, qual é freqüência máxima suportada, etc. Os fabricantes disponibilizam tabelas com as especificações de seus produtos, mas existe um site que concentra a maioria das informações disponíveis, funcionando como um mecanismo de busca. Esse site, o IC Master, disponível no endereço http://www.icmaster.com, é extremamente útil, pois permite identificar não apenas módulos de memória, mas também outros tipos de circuitos integrados apenas com base no número de identificação. O serviço é gratuito, você precisará apenas se cadastrar. Capítulo 5: HDs e armazenamento Sem dúvida, o disco rígido foi um dos componentes que mais evoluiu na história da informática. O primeiro disco rígido (o IBM 350) foi construído em 1956 e era formado por um conjunto de nada menos que 50 discos de 24 polegadas de diâmetro, com uma capacidade total de 4.36 MB (5 milhões de caracteres, com 7 bits cada um), algo espantoso para a época. Comparado com os discos atuais, este pioneiro custava uma verdadeira fortuna: 35 mil dólares. Porém, apesar de inicialmente serem extremamente caros, os discos rígidos foram tornando-se populares nos sistemas corporativos, pois forneciam um meio rápido de armazenamento de dados. Foram produzidas cerca de 1000 unidades do 350 entre 1956 e 1961, quando a produção foi descontinuada em favor de versões mais modernas. Esta foto rara, cortesia do museu digital da IBM dá uma idéia das suas dimensões: 397
  • 398. Como você pode ver, o IBM 350 não era exatamente um "disco rígido" dentro da concepção que temos hoje em dia. O gabinete tinha 1.70 metros de altura e quase o mesmo de comprimento e pesava quase uma tonelada. Na época ele era chamado de "unidade de disco" (termo ainda usado hoje em dia por alguns) e podia ser acoplado a diversos computadores produzidos pela IBM. O termo "disco rígido" só surgiu duas décadas depois, junto com os modelos mais compactos. De lá pra cá, tivemos uma evolução notável. Hoje em dia os HDs já ultrapassaram a marca de 1 TB, utilizam gravação perpendicular e interfaces SATA 300. São brutalmente mais rápidos que os modelos antigos e também mais baratos. Mesmo com o barateamento da memória Flash, os HDs ainda continuam imbatíveis na hora de armazenar grandes quantidades de dados. Como um HD funciona Dentro do disco rígido, os dados são gravados em discos magnéticos, chamados de platters. O nome "disco rígido" vem justamente do fato de os discos internos serem extremamente rígidos. Os platters são compostos de duas camadas. A primeira é chamada de substrato, e nada mais é do que um disco metálico, feito de ligas de alumínio. Mais recentemente, alguns fabricantes passaram a utilizar também vidro, que oferece algumas vantagens, como a maior dureza, embora também seja mais difícil de se trabalhar. Os primeiros HDs com discos de vidro foram os IBM Deskstar 75GXP, lançados em 2001. Independentemente do material usado, o disco precisa ser completamente plano. Como os discos giram a grandes velocidades e as cabeças de leitura trabalham extremamente próximas da superfície magnética, qualquer variação 398
  • 399. seria fatal. Para atingir a perfeição necessária, o disco é polido em uma sala limpa, até que se torne perfeitamente plano. Vem então a parte final, que é a colocação da superfície magnética nos dois lados do disco. Como a camada magnética tem apenas alguns microns de espessura, ela é recoberta por uma fina camada protetora, que oferece alguma proteção contra pequenos impactos. Os discos são montados em um eixo também feito de alumínio, que deve ser sólido o suficiente para evitar qualquer vibração dos discos, mesmo a altas rotações. Este é mais um componente que passa por um processo de polimento, já que os discos devem ficar perfeitamente presos e alinhados. No caso de HDs com vários discos, eles são separados usando espaçadores, novamente feitos de ligas de alumínio. Finalmente, temos o motor de rotação, responsável por manter uma rotação constante. O motor é um dos maiores responsáveis pela durabilidade do disco rígido, pois uma grande parte das falhas graves provém justamente do motor. Os HDs mais antigos utilizavam motores de 3.600 rotações por minuto, enquanto que atualmente são utilizados motores de 5.400, 7.200 ou 10.000 RPM. Nos HDs de notebook ainda são comuns motores de 4.200 RPM, mas os de 5.400 RPM já são maioria. Embora não seja o único, a velocidade de rotação é sem dúvida o fator que influencia mais diretamente no desempenho. Para ler e gravar dados no disco, são usadas cabeças de leitura eletromagnéticas (heads) que são presas a um braço móvel (arm), o que permite seu acesso a todo o disco. O braço de leitura é uma peça triangular, também feita de ligas de alumínio, para que seja ao mesmo tempo leve e resistente. O mecanismo que movimenta o braço de leitura é chamado de actuator. Nos primeiros discos rígidos, eram usados motores de passo para movimentar os braços e cabeças de leitura. Eles são o mesmo tipo de motor usado nos drives de disquete, onde ao receber um impulso elétrico o motor move o braço por uma curta distância, correspondente ao comprimento de uma trilha. O problema é que eles eram muito suscetíveis a problemas de desalinhamento e não permitiam densidades de gravação muito altas. Os discos contemporâneos (qualquer coisa acima de 80 MB) utilizam um mecanismo bem mais sofisticado para essa tarefa, composto por um dispositivo que atua através de atração e repulsão eletromagnética, sistema chamado de voice coil. Basicamente temos um eletroímã na base do braço móvel, que permite que a placa controladora o movimente variando rapidamente a potência e a polaridade do ímã. Apesar de parecer suspeito à primeira vista, esse sistema é muito mais rápido, preciso e confiável que os motores de passo. Para você ter uma idéia, os HDs do início da década de 80, com motores de passo, utilizavam apenas 300 ou 400 trilhas por polegada, enquanto um Seagate ST3750640AS (de 750 GB) atual utiliza nada menos do que 145.000. 399
  • 400. Aqui temos um diagrama mostrando os principais componentes do HD: Para que o HD possa posicionar a cabeça de leitura sobre a área exata referente à trilha que vai ser lida, existem sinais de feedback gravados na superfícies do disco, que orientam o posicionamento da cabeça de leitura. Eles são sinais magnéticos especiais, gravados durante a fabricação dos discos (a famosa formatação física), que são protegidos através de instruções de bloqueio incluídas no firmware do HD contra alteração posterior. Esses sinais eliminam os problemas de desalinhamento que existiam nos primeiros HDs. Ao ler um arquivo, a controladora posiciona a cabeça de leitura sobre a trilha onde está o primeiro setor referente a ele e espera que o disco gire até o setor correto. Este tempo inicial, necessário para iniciar a leitura, é chamado de tempo de acesso, e mesmo os HDs atuais de 7.200 RPM fica em torno de 12 milésimos de segundo, o que é uma eternidade em se tratando de tempo computacional. O HD é relativamente rápido ao ler setores seqüenciais, mas ao ler vários pequenos arquivos espalhados pelo HD, o desempenho pode cair assustadoramente. É por isso que existem programas desfragmentadores, que procuram reorganizar a ordem dos arquivos, de forma que eles sejam gravados em setores contínuos. Outro dado interessante é a maneira como as cabeças de leitura lêem os dados, sem tocar na camada magnética. Se você tiver a oportunidade de ver 400
  • 401. um disco rígido aberto, verá que, com os discos parados, as cabeças de leitura são pressionadas levemente em direção ao disco, tocando-o com uma certa pressão. Aqui temos o braço de leitura de um HD, depois de removido. Veja que mesmo sem o disco magnético entre elas, as duas cabeças de leitura pressionam-se mutuamente: Apesar disso, quando os discos giram à alta rotação, forma-se uma espécie de colchão de ar, que repele a cabeça de leitura, fazendo com que ela fique sempre a alguns nanômetros de distância dos discos. É o mesmo princípio utilizado na asa de um avião; a principal diferença neste caso é que a cabeça de leitura é fixa, enquanto os discos é que se movem, mas, de qualquer forma, o efeito é o mesmo. Como veremos a seguir, os HDs não são fechados hermeticamente, muito menos a vácuo, pois é necessário ar para criar o efeito. Esta foto mostra a cabeça de leitura "flutuando" sobre o disco em movimento. A distância é tão curta que mesmo ao vivo você tem a impressão de que a cabeça está raspando no disco, embora na realidade não esteja. Como a cabeça de leitura se movimenta rapidamente durante a operação do disco, é muito difícil tirar fotos. Para conseguir tirar esta, precisei "trapacear", desmontando o actuator e suavemente movendo a cabeça da área de descanso para o meio do disco. :) 401
  • 402. Os discos magnéticos são montados diretamente sobre o eixo do motor de rotação, sem o uso de correias ou qualquer coisa do gênero. É justamente este design simples que permite que os discos girem a uma velocidade tão grande. Embora mais potente e muito mais durável, o motor de rotação usado nos HDs é similar aos usados nos coolers. Nos HDs antigos, eram usados motores sleeve bearing, o sistema mais simples e menos durável, que foi usado nos HDs de 3600 RPM. Em seguida, foram adotados motores ball-bearing, onde são usados rolamentos para aumentar a precisão e a durabilidade. Nos HDs modernos, é utilizado o sistema fluid-dynamic bearing, onde os rolamentos são substituídos por um fluído especial, que elimina o atrito, reduzindo o ruído e o nível de vibração. Aqui temos o mesmo HD da foto anterior completamente desmontado, mostrando o interior do motor de rotação: 402
  • 403. Assim como a maioria dos modelos de baixa capacidade, este HD utiliza um único disco, mas a maioria dos modelos utiliza dois, três ou quatro, que são montados usando espaçadores. O HD possui duas cabeças de leitura para cada disco (uma para cada face), de forma que um HD com 4 discos utilizaria 8 cabeças de leitura, presas ao mesmo braço móvel. Embora usar mais discos permita construir HDs de maior capacidade, não é comum que os fabricantes utilizem mais de 4, pois a partir daí torna-se muito difícil (e caro) produzir componentes com a precisão necessária para manter todos os discos alinhados. Antigamente, era comum que HDs de alta capacidade (e alto custo :), sobretudo os destinados a servidores, possuíssem 6, ou até mesmo 12 discos, mas eles saíram de moda a partir da década de 90, devido à baixa demanda. Desde então, os fabricantes padronizaram a produção em torno dos HDs com até 4 discos e quem precisa de mais capacidade compra vários e monta um sistema RAID. No caso dos servidores, é muito comum o uso de racks, com um grande número de HDs SAS ou SATA. Naturalmente, qualquer HD aberto fora de uma sala limpa acaba sendo impregnado por partículas de poeira e por isso condenado a apresentar badblocks e outros defeitos depois de alguns minutos de operação. Todo HD é montado e selado em um ambiente livre de partículas, as famosas salas limpas. Apesar disso, eles não são hermeticamente fechados. Em qualquer HD, você encontra um pequeno orifício para entrada de ar (geralmente escondido embaixo da placa lógica ou diretamente sob a tampa superior), que permite que pequenos volumes de ar entrem e saiam, mantendo a pressão interna do HD sempre igual à do ambiente. Esse orifício é sempre protegido por um filtro, que impede a entrada de partículas de poeira. 403
  • 404. Orifício de ventilação do HD Devido a isso, a pressão do ar tem uma certa influência sobre a operação do HD. Os HDs são normalmente projetados para funcionar a altitudes de até 3.000 metros acima do nível do mar. Em altitudes muito elevadas, a pressão do ar é menor, comprometendo a criação do colchão de ar. Para casos extremos (uso militar, por exemplo), existem HDs pressurizados, que podem trabalhar a qualquer altitude. Internamente, o HD possui um segundo filtro, que filtra continuamente o ar movimentado pelos discos. Ele tem a função de capturar as partículas que se desprendam dos componentes internos durante o uso, devido a desgaste ou choques diversos. Aqui temos uma foto de um, preso num dos cantos da parte interna do HD: 404
  • 405. Filtro interno Enquanto o HD está desligado, as cabeças de leitura ficam em uma posição de descanso. Elas só saem dessa posição quando os discos já estão girando à velocidade máxima. Para prevenir acidentes, as cabeças de leitura voltam à posição de descanso sempre que não estão sendo lidos dados, apesar dos discos continuarem girando. É justamente por isso que às vezes, ao sofrer um pico de tensão, ou o micro ser desligado enquanto o HD está sendo acessado, surgem setores defeituosos. Ao ser cortada a energia, os discos param de girar e é desfeito o colchão de ar, fazendo com que as cabeças de leitura possam vir a tocar os discos magnéticos. Para diminuir a ocorrência desse tipo de acidente, nos HDs modernos é utilizado um sistema que recolhe as cabeças de leitura automaticamente para a área de descanso quando a energia é cortada (tecnologia chamada de auto- parking). A área de descanso é também chamada de "landing zone" e engloba algumas das trilhas mais centrais do disco, uma área especialmente preparada para receber o impacto do "pouso" das cabeças de leitura. Uma das tecnologias mais populares é a LZT (Laser Zone Texture), uma tecnologia desenvolvida pela IBM, onde um laser é usado para produzir pequenas cavidades ao longo da zona de pouso, que reduzem o atrito com a cabeça de leitura: 405
  • 406. Outra técnica consiste em usar "rampas" feitas de material plástico, posicionadas na área externa dos discos, que suspendem as cabeças de leitura, evitando que elas toquem os discos mesmo quando eles param de girar. Esta tecnologia foi inicialmente usada em HDs de notebook, mas recentemente passou a ser usada também nos de 3.5" para desktops. Ela pode parecer simples, mas na verdade exige bastante tecnologia, devido à precisão necessária: Rampas de descanso para as cabeças de leitura Apesar de evitar danos físicos, o auto-parking nada pode fazer para evitar perda de dados ao desligar o micro incorretamente. Mesmo que todos os arquivos estejam salvos, ainda existem dados no cache de disco (criado pelo sistema operacional, usando parte de memória RAM) e também no cache do HD, que utiliza memória SDRAM (também volátil). Para acelerar as operações de gravação, todos os arquivos (sobretudo os pequenos) são salvos inicialmente nos caches e depois transferidos para os discos magnéticos em momentos de ociosidade. Quando o micro é desligado abruptamente, os dados em ambos os caches são perdidos, fazendo com que você sempre perca as últimas alterações, muitas vezes em arquivos que acreditava estarem salvos. 406
  • 407. Por causa de tudo isso, é sempre importante usar um nobreak em micros de trabalho. A longo prazo, os dados perdidos e possíveis danos ao equipamento por causa de quedas de energia acabam custando muito mais do que um nobreak popular. Mesmo assim, por melhores que sejam as condições de trabalho, o HD continua sendo um dispositivo baseado em componentes mecânicos, que têm uma vida útil muito mais curta que a de outros componentes do micro. De uma forma geral, os HDs para desktop funcionam de forma confiável por de dois a três anos (em um PC usado continuamente). Depois disso, é melhor substituir o HD por um novo e mover o antigo para outro micro secundário, onde ele não vá armazenar informações importantes, pois a possibilidade de defeitos começa a crescer exponencialmente. Fala-se muito sobre a vulnerabilidade dos HDs com relação a ímãs. Como os HDs armazenam os dados em discos magnéticos, colocar um ímã suficientemente forte próximo a ele pode apagar rapidamente todos os dados. Existem inclusive "desmagnetizadores", que são eletroímãs ligados na tomada, que você passa sobre os HDs e outros discos magnéticos, justamente com a intenção de apagar os dados rapidamente. Entretanto, se você abrir um HD condenado, vai encontrar dois ímãs surpreendentemente fortes instalados dentro do mecanismo que move a cabeça de leitura. Naturalmente, estes ímãs não danificam os dados armazenados (senão não estariam ali ;). O principal motivo disso é que eles estão instalados numa posição perpendicular aos discos magnéticos. Se você remover os ímãs e colocá-los sobre outro HD, vai ver que no outro dia uma boa parte dos dados terão sido perdidos. Se você (como todos nós) é do tipo que não consegue desmontar um micro sem deixar cair parafusos nos locais mais inacessíveis do gabinete, tem dificuldades em colocar os parafusos dos dois lados ao instalar o HD e ainda por cima nunca acha uma chave de fenda magnética para comprar, pode usar esses magnetos "roubados" do HD para transformar qualquer chave de fenda em uma chave magnética. Basta "encaixar" os ímãs nela quando quiser o efeito. Esses magnetos são feitos de uma liga contendo neodímio e, além de parafusos, permitem levantar objetos um pouco mais pesados, como martelos, por exemplo... ;) 407
  • 408. Naturalmente, você deve tomar cuidado de não passá-los sobre discos magnéticos, a menos que queira intencionalmente apagá-los. Se você deixar a chave em contato com os ímãs por um longo período, ela continuará magnetizada (por algum tempo) mesmo depois de retirá-los. Ao contrário da crença popular, chaves magnéticas não são perigosas para os HDs, pois os magnetos usados são muito fracos se comparados aos magnetos usados no mecanismo de leitura e no motor de rotação do HD. Os próprios discos magnéticos são relativamente resistentes a forças magnéticas externas, de forma que ímãs de baixa potência não oferecem grande perigo. A placa controladora A placa lógica, ou placa controladora, é a parte "pensante" do HD. Com exceção dela, o HD é um dispositivo relativamente simples, composto por uma série de dispositivos mecânicos. É a controladora que faz a interface com a placa-mãe, controla a rotação do motor e o movimento das cabeças de leitura, de forma que elas leiam os setores corretos, faz a verificação das leituras, de forma a identificar erros (e se possível corrigi-los, usando os bits de ECC disponíveis em cada setor), atualiza e usa sempre que possível os dados armazenados no cache de disco (já que acessá-lo é muito mais rápido do que fazer uma leitura nas mídias magnéticas) e assim por diante. Aqui temos a placa lógica de um HD Samsung HD080HJ: 408
  • 409. Veja que a placa possui apenas três chips. O maior, no canto superior, é um Samsung K4S641632H-UC60. Você pode notar que ele é muito semelhante a um chip de memória, e na verdade é :). Ele é um chip de memória SDRAM de 8 MB, que armazena o cache de disco. Até pouco tempo atrás, os HDs utilizavam chips de memória SRAM, mas os fabricantes passaram a utilizar, cada vez mais, chips de memória SDRAM convencional para reduzir o custo de produção. Na prática não muda muita coisa, pois apesar de mais lenta, a memória SDRAM oferece desempenho suficiente para a tarefa. Assim como no caso dos processadores, o cache é um componente importante para o desempenho do HD. Ele armazena os dados acessados, diminuindo bastante o número de leituras. Dados armazenados no cache podem ser transferidos quase que instantaneamente, usando toda a velocidade permitida pela interface SATA ou IDE, enquanto um acesso a dados gravados nos discos magnéticos demoraria muito mais tempo. Continuando, temos o controlador principal, um chip Marvell 88i6525, que é quem executa todo o processamento. Este chip é na verdade um SOC (System On a Chip), formado por um conjunto de vários chips menores, que são combinados dentro do mesmo wafer de silício. Por exemplo, este HD é um modelo SATA. A controladora da placa-mãe se comunica com ele utilizando comandos padronizados, que são comuns a 409
  • 410. qualquer HD SATA. É por isso que você não precisa instalar um driver especial para cada modelo de HD, precisa apenas de um driver padrão, que sabe se comunicar com qualquer HD. Internamente, os comandos SATA são processados e convertidos nos comandos que irão mover a cabeça de leitura, fazer girar os discos até o ponto correto e assim por diante. O sistema operacional não gerencia diretamente o cache de disco, quem faz isso é a própria controladora, que se esforça para usá-lo da forma mais eficiente possível. Naturalmente, tudo isso exige processamento, daí a complexidade interna do chip controlador. Apesar de pequena, a placa controladora de um disco atual é muito mais sofisticada do que um micro antigo inteiro (um 286 por exemplo). Elas possuem mais poder de processamento e até mesmo mais memória, na forma do cache. Os HDs atuais usam de 8 a 32 MB de cache de disco, mais memória do que era usada em micros 386 e 486 e, ainda por cima, muito mais rápida! :) Uma curiosidade é que muitos HDs antigos utilizavam um processador Intel 186 como controlador de discos. O 186 é, como você pode imaginar, o "elo perdido" entre o 8088 usado no PC XT e o 286. Ele é um chip que acabou não sendo usado nos micros PCs, mas fez um grande sucesso como microcontrolador para funções diversas. Concluindo, temos um terceiro chip, escondido na parte inferior esquerda da foto. Ele é um Hitachi HA13645, um chip especializado, que controla o movimento das cabeças de leitura e também a rotação do motor. O chip principal envia comandos a ele, dizendo que quer acessar o setor X, ou que o motor deve entrar em modo de economia de energia, por exemplo, e ele os transforma nos impulsos elétricos apropriados. Essas funções mudam de um modelo de HD para o outro, por isso os fabricantes preferem usar um chip de uso geral como o Marvell 88i6525 como controlador principal, mudando apenas o controlador auxiliar, que é um chip menor e mais barato. A placa controladora é um componente "externo" do HD, que pode ser rapidamente substituído caso necessário. Grande parte (talvez até a maioria) dos casos onde o HD "queima" devido a problemas na rede elétrica, ou defeitos diversos, podem ser solucionados através da troca da placa controladora, permitindo recuperar os dados sem ter que recorrer aos caros serviços de uma empresa especializada. O grande problema é justamente onde encontrar outra placa. Os fabricantes vendem placas avulsas em pequenas quantidades para empresas de recuperação, mas o fornecimento é muito restrito. Para técnicos autônomos e pequenas empresas, a única solução é usar placas doadas por outros HDs. Se o HD for um modelo recente, você pode simplesmente comprar outro, pegar a placa emprestada para fazer a recuperação dos dados e depois devolvê-la ao dono. Mas, no caso de HDs mais antigos, a única forma é procurar nos sites de leilão e fóruns em busca de uma placa usada. Existe um verdadeiro mercado paralelo de venda de placas avulsas, já que existem muitos casos de HDs inutilizados por problemas na mídia magnética, onde a placa ainda é utilizável. 410
  • 411. É comum que os fabricantes utilizem a mesma placa lógica e os mesmos discos magnéticos em vários HDs da mesma família, variando apenas o número de discos usados. Assim, o modelo de 500 GB pode ter 4 discos, enquanto o modelo de 250 GB possui apenas dois, por exemplo. Nesses casos, é normal que a placa controladora de um funcione no outro. Remover a placa é simples, basta usar uma chave torx para remover os parafusos e desencaixar a placa com cuidado. Na maioria dos HDs atuais, a placa é apenas encaixada sobre os contatos, mas em outros ela é ligada através de um cabo flat, que precisa ser desconectado com cuidado. Mais uma curiosidade é que os primeiros PCs utilizavam HDs com interfaces MFM ou RLL. Eles utilizavam controladoras externas, instaladas em um slot ISA e ligadas ao HD por dois cabos de dados. Esse arranjo era muito ineficiente, pois a distância tornava a comunicação muito suscetível a interferências e corrupção de dados. Esses HDs possuíam várias peculiaridades com relação aos atuais, como a possibilidade de fazer uma "formatação física", onde as trilhas de dados eram realmente regravadas, o que permitia recuperar HDs com problemas de alinhamento. Esses HDs jurássicos foram usados nos micros XT e 286 e sobreviveram até os primeiros micros 386, quando foram finalmente substituídos pelos HDs IDE (que por sua vez foram substituídos pelos HDs SATA que usamos atualmente), onde a controladora é parte integrante do HD. Hoje em dia, a "formatação física" sobrevive apenas como um vício de linguagem. Muitos dizem que "fizeram uma formatação física" ao reparticionar o HD ou ao usar um programa que apaga os dados gravados (como o "zero- fill", ou o "dd" do Linux), embora uma coisa não tenha nada a ver com a outra. 411
  • 412. Os discos A capacidade de um HD é determinada por basicamente dois fatores: a tecnologia utilizada, que determina sua densidade e o diâmetro dos discos, que determina a área útil de gravação. A densidade de gravação dos HDs tem aumentado de forma surpreendente, com a introdução de sucessivas novas técnicas de fabricação. Para você ter uma idéia, no IBM 350 os discos eram simplesmente pintados usando uma tinta especial contendo limalha de ferro, um processo bastante primitivo. Com o passar do tempo, passou a ser usado o processo de eletroplating, que é semelhante à eletrólise usada para banhar bijuterias à ouro. Esta técnica não permite uma superfície muito uniforme e justamente por isso só funciona em discos de baixa densidade. Ela foi usada até o final da década de 80. A técnica usada atualmente (chamada de sputtering) é muito mais precisa. Nela a superfície magnética é construída depositando grãos microscópicos de forma incrivelmente uniforme. Quanto menores os grãos, mais fina e sensível é a superfície, permitindo densidades de gravação mais altas. A densidade de gravação de um HD é medida em gigabits por polegada quadrada. Os HDs fabricados na segunda metade de 2006, por exemplo, utilizavam em sua maioria discos com densidade de 100 gigabits (ou 12.5 GB) por polegada quadrada. Neles, cada bit é armazenado em uma área magnética com aproximadamente 200x50 nanômetros (uma área pouco maior que a de um transístor nos processadores fabricados numa técnica de 0.09 micron) e é composta por apenas algumas centenas de grãos magnéticos. Estes grãos medem apenas alguns nanômetros e são compostos por ligas de cobalto, cromo, platina, boro e outros materiais raros, muito longe da limalha de ferro utilizada pelos pioneiros. Considerando que os discos giram a 7200 RPM e a cabeça de leitura lê os dados a mais de 50 MB/s (quando lendo setores seqüenciais), atingir densidades como as atuais é simplesmente impressionante. Este esquema mostra como funciona o processo de escrita e gravação em um HD: 412
  • 413. Como você pode ver, a cabeça é composta por dois dispositivos separados, um para gravação e outro para leitura. O dispositivo de gravação é similar a um eletroímã, onde é usada eletricidade para criar o campo magnético usado para realizar a gravação. Nos primeiros HDs, tínhamos um filamento de cobre enrolado sobre um corpo de ferro. Nos HDs atuais, os materiais usados são diferentes, mas o princípio de funcionamento continua o mesmo. O dispositivo de leitura, por sua vez, faz o processo oposto. Quando ele passa sobre os bits gravados, capta o campo magnético emitido por eles, através de um processo de indução (nos HDs antigos) ou resistência (nos atuais), resultando em uma fraca corrente, que é posteriormente amplificada. O dispositivo de leitura é protegido por um escudo eletromagnético, que faz com que ele capte apenas o campo magnético do bit que está sendo lido, e não dos seguintes. Você pode notar que não existe isolamento entre os dispositivos de leitura e gravação. Isso acontece porque apenas um deles é usado de cada vez. Note que essa divisão existe apenas nos HDs modernos, que utilizam cabeças de leitura/gravação MR ou GMR. Nos antigos, que ainda utilizavam cabeças de leitura de ferrite, o mesmo dispositivo fazia a leitura e a gravação. O grande problema é que, assim como em outras áreas da informática, a tecnologia avançou até o ponto em que se começou a atingir os limites físicos da matéria. Em um HD, a área referente a cada bit armazenado funciona como um minúsculo ímã, que tem sua orientação magnética alterada pela cabeça de leitura. Quando ela é orientada em um sentido temos um bit 1 e no sentido oposto temos um bit 0. A área da superfície utilizada para a gravação de cada bit é chamada de "magnetic element", ou elemento magnético. A partir de um certo ponto, a área de gravação torna-se tão pequena que a orientação magnética dos bits pode ser alterada de forma aleatória pela própria energia térmica presente no ambiente (fenômeno chamado de superparamagnetismo), o que faz com que a mídia deixe de ser confiável. 413
  • 414. A tecnologia usada nos HDs fabricados até a primeira metade de 2007 é chamada de gravação longitudinal (longitudinal recording), onde a orientação magnética dos bits é gravada na horizontal, de forma paralela à mídia. O problema é que a partir dos 100 gigabits por polegada quadrada, tornou-se muito difícil aumentar a densidade de gravação, o que acelerou a migração para o sistema de gravação perpendicular (perpendicular recording), onde a orientação magnética passa a ser feita na vertical, aumentando muito a densidade dos discos. Estima-se que, utilizando gravação longitudinal, seria possível atingir densidades de no máximo 200 gigabits por polegada, enquanto que utilizando gravação perpendicular seja possível atingir até 10 vezes mais. Isso significa que os fabricantes ainda terão margem para produzir HDs de até 10 terabytes antes de esgotar as possibilidades oferecidas pela nova tecnologia. Na gravação perpendicular, a mídia de gravação é composta de duas camadas. Inicialmente temos uma camada de cromo, que serve como um indutor, permitindo que o sinal magnético gerado pelo dispositivo de gravação "atravesse" a superfície magnética, criando um impulso mais forte e, ao mesmo tempo, como uma espécie de isolante entre a superfície de gravação e as camadas inferiores do disco. Ele poderia (até certo ponto) ser comparado à camada extra usada nos processadores fabricados com tecnologia SOI (silicon on insulator), onde uma camada isolante é criada entre os transístores e o wafer de silício, reduzindo a perda de elétrons e, conseqüentemente, o consumo elétrico do processador. Sobre a camada de cromo, são depositados os grãos magnéticos. A diferença é que agora eles são depositados de forma que a orientação magnética seja vertical, e não horizontal. A cabeça de leitura e gravação também é modificada, de forma a serem capazes de lidar com a nova orientação: Embora pareça uma modificação simples, o uso da gravação perpendicular em HDs é uma conquista técnica notável. Em termos comparativos, seria como se a NASA conseguisse enviar uma missão tripulada até Marte. 414
  • 415. O processo de gravação perpendicular foi adotado rapidamente por todos os principais fabricantes. O primeiro foi a Fujitsu, que lançou um HD de 1.8" com gravação perpendicular ainda em 2005. A próxima foi a Seagate que, em abril de 2006, anunciou o Barracuda 7200.10, um disco de 3.5" com 750 GB. Em agosto de 2006 a Fujitsu anunciou um HD de 2.5" com 160 GB, e em Janeiro de 2007 a Hitachi anunciou o Deskstar 7K1000, um HD de 3.5" com 1 TB, que utiliza um design incomum, com 5 platters em vez dos 4 comumente usados. Em seguida, temos a questão do diâmetro dos discos. Como vimos, os primeiros HDs eram gigantescos, e utilizavam discos de até 24 polegadas de diâmetro. Com o passar das décadas, os discos foram encolhendo, até chegar ao que temos hoje. Mas, como tudo na vida, existem receitas ideais para o tamanho dos discos magnéticos, de acordo com a área onde eles serão utilizados. O problema em produzir discos muito compactos é que a superfície de gravação fica exponencialmente menor, permitindo gravar um volume menor de dados. Apesar disso, os demais componentes continuam custando quase o mesmo (ou até mais, dependendo da escala de miniaturização necessária). Isso faz com que o custo por megabyte cresça, conforme o tamanho físico do HD diminui. Um exemplo prático disso é a diferença no custo por megabyte entre os HDs de 2.5" para notebooks e os modelos de 3.5" para desktops. A partir de um certo nível de miniaturização, o custo por megabyte se torna mais alto que o dos cartões de memória Flash, e os HDs deixam de ser viáveis. O melhor exemplo é o HD de 0.85" apresentado pela Toshiba em 2005, que tinha como objetivo atender o mercado de palmtops e smartphones. Ele era tão pequeno que podia ser produzido no formato de um cartão SD e possuía um consumo elétrico baixíssimo: O problema é que ele seria lançado em versões de apenas 2 e 4 GB, com preços a partir de US$ 150. Com a rápida queda no custo da memória Flash, logo surgiram cartões de 2 e 4 GB que custavam menos, de forma que o mini- HD acabou não encontrando seu lugar no mercado e foi descontinuado silenciosamente. 415
  • 416. O interessante é que o oposto também é verdadeiro. HDs com discos muito grandes também acabam sendo inviáveis, pois são mais lentos e mais passíveis de problemas que HDs baseados em discos menores. Isso se deve a vários fatores. O primeiro é a questão da rotação, já que discos maiores são mais pesados e demandam um maior esforço do motor de rotação, consumindo mais energia e gerando mais calor e mais barulho. Discos maiores também acabam sendo menos rígidos, o que impede que sejam girados a velocidades muito altas e tornam todo o equipamento mais sensível a impactos. Dobrar o diâmetro dos discos faz com que a rigidez proporcional seja reduzida em até 75%. O segundo é a dificuldade de produção. Com o avanço da tecnologia, a mídia de gravação precisa ser cada vez mais fina e uniforme. Quanto maiores os discos, mais difícil é recobrir toda a superfície sem o surgimento de um grande número de pontos defeituosos. Como se não bastasse, temos o terceiro motivo, que é o maior tempo de acesso, já que com uma superfície maior as cabeças de leitura demoram muito mais tempo para localizar os dados (justamente devido à maior distância a ser percorrida). Se combinarmos isso com a velocidade mais baixa de rotação, acabamos tendo uma redução muito grande no desempenho. Isso explica porque os HDs com discos de 5.25" usados nos primeiros PCs foram rapidamente substituídos pelos de 3.5". O pico evolutivo dos HDs de 5.25" foram os Quantum Bigfoot, produzidos até 1999, em capacidades de até 18 GB. Embora eles armazenassem um maior volume de dados por platter, a velocidade de rotação era bem mais baixa (apenas 3600 RPM), os tempos de acesso eram maiores e, ainda por cima, a durabilidade era menor. Os HDs de 3.5" e de 2.5" atuais parecem ser o melhor balanço entre os dois extremos. Os HDs de 3.5" oferecem um melhor desempenho, mais capacidade de armazenamento e um custo por megabyte mais baixo (combinação ideal para um desktop), enquanto os HDs de 2.5" são mais compactos, mais silenciosos, consomem menos energia e são mais resistentes a impactos, características fundamentais no caso dos notebooks. Temos ainda os HDs de 1.8" (mais finos e do tamanho de um cartão PCMCIA), que são usados em notebooks ultra-portáteis, além de mp3players e alguns dispositivos de armazenamento portátil. Uma quarta categoria são os microdrives, que utilizam discos de 1" (pequenos o suficiente para serem produzidos no formato de cartões CompactFlash) e podem ser utilizados em palmtops e mp3players. Eles foram utilizados no Palm Life Drive (4 GB) e também no iPod Nano (4 e 8 GB), mas acabaram perdendo seu espaço para os cartões de memória Flash. A Hitachi chegou a anunciar o desenvolvimento de microdrives de 20 GB, utilizando tecnologia de gravação perpendicular, mas a produção em série acabou sendo cancelada, pois o preço de venda seria mais alto que o da mesma quantidade de memória Flash. 416
  • 417. Para organizar o processo de gravação e leitura dos dados, a superfície dos discos é dividida em trilhas e setores. As trilhas são círculos concêntricos, que começam no final do disco e vão se tornando menores conforme se aproximam do centro. É diferente de um CD-ROM ou DVD, onde temos uma espiral contínua. Cada trilha recebe um número de endereçamento, que permite sua localização. A trilha mais externa recebe o número 0 e as seguintes recebem os números 1, 2, 3, e assim por diante. Para facilitar ainda mais o acesso aos dados, as trilhas se dividem em setores, que são pequenos trechos de 512 bytes cada um, onde são armazenados os dados. Além das trilhas e setores, temos também as faces de disco. Como vimos, os HDs atuais possuem de 1 a 4 discos. Como são utilizadas ambas as faces de cada disco, temos um total de 2 a 8 faces e o mesmo número de cabeças de leitura. Como todas as cabeças de leitura estão presas no mesmo braço móvel, elas não possuem movimento independente. Para acessar informações armazenadas na trilha 199.982 da face de disco 3, por exemplo, a controladora do disco ativa a cabeça de leitura responsável pelo disco 3 e, a seguir, ordena ao braço de leitura que se dirija à trilha correspondente. Não é possível que uma cabeça de leitura esteja na trilha 199.982 ao mesmo tempo que outra esteja na trilha 555.631 de outro disco, por exemplo. Já que todas as cabeças de leitura sempre estarão na mesma trilha de seus respectivos discos, deixamos de chamá-las de trilhas e passamos a usar o termo "cilindro". Um cilindro nada mais é do que o conjunto de trilhas com o mesmo número nos vários discos. Por exemplo, o cilindro 1 é formado pela trilha 1 de cada face de disco, o cilindro 2 é formado pela trilha 2 de cada face, e assim por diante. Esta antiga ilustração da Quantum mostra como funciona esta divisão: 417
  • 418. A trilha mais externa do disco possui mais que o dobro de diâmetro da trilha mais interna e, conseqüentemente, possui capacidade para armazenar um volume muito maior de dados. Porém, nos primeiros discos rígidos, assim como nos disquetes, todas as trilhas do disco, independentemente de seu diâmetro, possuíam o mesmo número de setores, fazendo com que nas trilhas mais externas, os setores ocupassem um espaço muito maior do que os setores das trilhas mais internas. Tínhamos então um grande espaço desperdiçado, pois era preciso nivelar por baixo, fazendo com que todas as trilhas possuíssem o mesmo número de setores permitido pelas trilhas mais internas, acabando por desperdiçar enormes quantidades de espaço nas primeiras trilhas do disco. Atualmente, os HDs utilizam o Zoned bit Recording (ZBR), que permite variar a quantidade de setores por trilha, de acordo com o diâmetro da trilha a ser dividida, permitindo uma organização mais racional do espaço em disco e, conseqüentemente, uma maior densidade de gravação. O HD pode ter então 1584 setores por trilha na área mais externa dos discos e apenas 740 na área mais interna, por exemplo. Como os discos giram sempre na mesma velocidade, isso causa um pequeno efeito colateral, que é uma considerável variação no desempenho de acordo com a área do disco que está sendo lida, proporcional ao número de setores por trilha. Trocando em miúdos, o desempenho ao ler as trilhas mais externas acaba sendo mais que o dobro do obtido ao ler as mais internas. É por isso que em geral se recomenda colocar a partição com a instalação do sistema, ou com a partição swap no início do disco (que corresponde às trilhas mais externas) para obter o melhor desempenho. Usando um programa de benchmark que permita realizar uma leitura seqüencial de toda a superfície do HD, como o HD Tach, você obterá sempre 418
  • 419. um gráfico similar a este, onde a taxa de leitura começa num nível alto (trilhas externas) e vai decaindo até atingir o ponto mais baixo no final do teste (ao ler o conteúdo das trilhas mais internas): Um dos principais motivos do desempenho dos HDs não ter crescido na mesma proporção da capacidade ao longo das últimas décadas é que a densidade das trilhas aumentou numa escala muito maior que a dos setores dentro destas. Ou seja, as trilhas foram ficando mais "finas", mas o número de setores por trilha passou a aumentar em escala incremental. Aumentar o número de trilhas permite aumentar a área de armazenamento, mas é o número de setores por trilha, combinado com a velocidade de rotação do HD que determina a performance. Um antigo Maxtor 7040A, de 40 MB, por exemplo, possuía uma taxa de leitura média em torno de 700 KB/s, o que permitia ler todo o conteúdo do disco em cerca de um minuto. Um Seagate Barracuda 7200.10 atual, de 750 GB, é bem mais rápido, com uma taxa média de leitura de 64 MB/s, mas, apesar disso, como a capacidade é brutalmente maior, ler todos os dados do disco demoraria pelo menos 3:15 horas! No futuro, esta tendência deve se manter, pois é muito mais simples para os fabricantes produzir cabeças de leitura e sistemas de codificação capazes de lidarem com trilhas mais finas, do que espremer mais dados dentro de cada trilha, já que elementos magnéticos mais curtos correspondem a um sinal magnético mais fraco e mais difícil de ser captado pela cabeça de leitura. Como um agravante, temos o problema do superparamagnetismo, que vimos há pouco. 419
  • 420. Correção de erros e badblocks Concluindo, temos a questão da detecção e correção de erros, que faz parte do processo de leitura e gravação. Por melhor que seja sua qualidade, nenhuma mídia magnética é 100% confiável (como pode confirmar quem já teve o desprazer de trabalhar com disquetes ;). Pequenas falhas na superfície da mídia podem levar a erros de leitura, sobretudo quando ela possui uma densidade de gravação de mais de 100 gigabits por polegada quadrada e gira a 7.200 RPM ou mais, como nos HDs atuais. Isso não significa que o seu HD vá pifar amanhã, mas que são comuns erros na leitura de um setor ou outro. Obviamente, como todos os nossos dados importantes são guardados no disco rígido, a possibilidade de erros na leitura de "um setor ou outro" não seria aceitável, principalmente no caso de máquinas destinadas a operações críticas. Imagine se, nesse "setor ou outro" do servidor de um grande banco, estivessem gravados os dados referentes à conta bancária de um cliente importante, por exemplo. De modo a tornar os HDs uma forma de armazenamento confiável, os fabricantes utilizam sistemas de ECC para detectar e corrigir erros de leitura eventualmente encontrados. O ECC é o mesmo sistema utilizado em módulos de memória destinados a servidores e também em CD-ROMs, onde são usados nada menos do que 276 bytes de códigos de correção de erros para cada setor de 2048 bytes. Em um HD, cada setor armazena, além dos 512 bytes de dados, mais algumas dezenas de bytes contendo os códigos ECC. A criação dos bytes de ECC, assim como sua utilização posterior é feita pela placa lógica, um processo automático que é feito de forma completamente transparente ao sistema operacional. Quando um setor é lido pela cabeça de leitura, juntamente com os dados são lidos alguns dos códigos ECC, que visam apenas verificar se os dados que estão sendo lidos são os mesmos que foram gravados, uma técnica que lembra o sistema de paridade antigamente usado na memória RAM. Caso seja verificado um erro, são usados os demais códigos para tentar corrigir o problema. Na grande maioria dos casos, esta primeira tentativa é suficiente. Estes erros transitórios, que são corrigidos com a ajuda dos códigos ECC são chamados de "soft errors" e não causam nenhum efeito colateral além de um delay de alguns milissegundos na leitura. Caso não seja possível corrigir o erro usando o ECC, a controladora faz uma nova tentativa de leitura do setor, pois é grande a possibilidade do erro ter sido causado por alguma interferência ou instabilidade momentânea. Caso o erro persista, ela fará várias tentativas sucessivas, reduzindo a velocidade de rotação dos discos e comparando o resultado de várias leituras, de forma a tentar recuperar os dados gravados no setor. Esse processo gera aquele ruído 420
  • 421. característico de HD sendo "mastigado" e quase sempre indica o aparecimento de um badblock. Por serem defeitos físicos na mídia magnética, não existe muito o que fazer com relação a eles. O jeito é marcar os badblocks, de forma que eles não sejam mais usados. Os HDs atuais são capazes de marcar automaticamente os setores defeituosos. A própria controladora faz isso, independentemente do sistema operacional. Existe uma área reservada no início do disco chamada "defect map" (mapa de defeitos) com alguns milhares de setores que ficam reservados para alocação posterior. Sempre que a controladora do HD encontra um erro ao ler ou gravar num determinado setor, ela remapeia o setor defeituoso, substituindo-o pelo endereço de um setor "bom", dentro do defect map. Como a alocação é feita pela própria controladora, o HD continua parecendo intacto para o sistema operacional. De fato, é normal que os HDs já venham de fábrica com alguns setores remapeados, causados por pequenas imperfeições na superfície da mídia. Como eles não são visíveis para o sistema operacional, nem causam problemas no uso normal, acabam passando despercebidos. Naturalmente, o defect map é uma área limitada, que corresponde normalmente a uma única trilha. Caso o HD possua algum problema crônico, eventualmente os endereços se esgotarão e os badblocks realmente passarão a se tornar visíveis. Deste ponto em diante, entram em cena utilitários como o scandisk (no Windows) e o badblocks (no Linux), que permitem realizar um exame de superfície, marcando os setores defeituosos encontrados. Estes setores não são marcados no defect map, mas sim em uma área reservada da partição. Um grande número de setores defeituosos são indício de problemas graves, como envelhecimento da mídia, defeitos no mecanismo de leitura ou mesmo contaminação do HD por partículas provenientes do ambiente. O ideal nesses casos é fazer backup de todos os dados e substituir o HD o mais rápido possível. Entretanto, mesmo para estes HDs condenados, às vezes existe uma solução. É comum a maioria dos setores aparecerem mais ou menos agrupados, englobando uma área relativamente pequena do disco. Se houver muitos badblocks em áreas próximas, você pode reparticionar o disco, isolando a área com problemas. Se, por exemplo, você percebesse que a maioria dos defeitos se encontra nos últimos 20% do disco, bastaria abrir o particionador, deletar a partição atual e criar uma nova, englobando apenas 80% do disco. Neste caso, você perderia uma boa parte da área útil, mas pelo menos teria a possibilidade de continuar usando a parte "boa" do HD (em algum micro usado para tarefas secundárias, sem dados importantes), até que ele desse seus derradeiros suspiros. 421
  • 422. Desempenho O desempenho do HD é determinado basicamente pela densidade dos discos, velocidade de rotação e, em menor grau, pelo tamanho do cache de leitura e suporte ao NCQ. Por ser um componente mecânico, não existe muito o que os fabricantes possam fazer para melhorar o desempenho de forma considerável sem mexer nesses fatores. Outra questão é que o mercado de HDs é um ramo incrivelmente competitivo, de forma que tecnologias revolucionárias, como, por exemplo, a técnica de gravação perpendicular, são rapidamente adotadas por todos os fabricantes, já que os que não são capazes de acompanhar a evolução tecnológica simplesmente não conseguem se manter no mercado. Em se tratando de HDs "normais", destinados ao mercado de consumo, dois HDs produzidos na mesma época, com a mesma velocidade de rotação e a mesma quantidade de cache, tendem a possuir um desempenho muito parecido. Na hora da compra você deve se preocupar mais em não levar para casa HDs antigos, baseados em tecnologias obsoletas que por algum motivo tenham ficado parados no estoque dos distribuidores. Um HD de 120 GB produzido em 2007 muito provavelmente possuirá um único platter e será mais rápido que um HD produzido um ano atrás, com a mesma capacidade, mas que utilize dois platters, mesmo que ambos sejam de 7200 RPM e sejam vendidos por mais ou menos o mesmo preço. Existem ainda casos de HDs "premium", que utilizam tecnologias recentemente introduzidas ou mudanças radicais no design e dessa forma conseguem ficar um passo à frente em termos de desempenho. Eles naturalmente ficam no topo das tabelas comparativas, mas em geral não são uma boa opção de compra fora de nichos muito específicos, pois sempre possuem um custo por megabyte muito mais alto. Um bom exemplo são os Maxtor Atlas 15K II, uma série de HDs SCSI que até 2006 estavam entre os mais rápidos do mercado, em detrimento da capacidade de armazenamento. Como você pode ver na foto a seguir, embora o Atlas 15K II fosse um HD de 3.5", internamente ele utilizava discos de 2.5", similares aos usados em notebooks. O menor diâmetro dos discos reduz a capacidade de armazenamento, mas permitiu que os discos girassem a 15.000 RPM. O menor diâmetro também permitiu reduzir o tempo de acesso (já que a distância a ser percorrida pelas cabeças de leitura era menor) o que, combinado com outras melhorias, resultou num HD Ultra 320 SCSI com tempo de acesso de apenas 5.5 ms e taxa de leitura seqüencial (nas trilhas externas) de 98 MB/s: 422
  • 423. Atlas 15K II: um HD de 3.5", com discos de 2.5" O problema é que, além de caro, a capacidade de armazenamento era pequena, mesmo para os padrões da época. O modelo com 1 platter armazenava apenas 37 GB, enquanto o modelo com 4 armazenava 147 GB. Ou seja, você pagaria até US$ 1.000 para ter uma capacidade equivalente à de um HD low-end. De uma forma geral, o melhor em termos de custo-benefício é comprar HDs de geração atual, escolhendo entre os modelos de baixo custo e substituir o HD a cada 18 ou 24 meses, se possível revendendo o antigo (por algum motivo os HDs costumam ser um item valorizado no mercado de componentes usados, talvez porque todo mundo sempre precisa de mais espaço ;). Dessa forma, você vai conseguir sempre manter o seu equipamento relativamente atualizado, gastando pouco. Acaba sendo muito melhor do que gastar o dobro, tentando comprar "o melhor HD", que vai estar desatualizado da mesma forma daqui a dois anos. Tenha em mente que a vida útil de qualquer equipamento é limitada, então só vale a pena gastar mais se o ganho de desempenho realmente for lhe trazer um retorno tangível ao longo desse período. Em um servidor, o investimento em HDs topo de linha pode compensar em muitos casos, já que um melhor desempenho equivale a mais requisições e, conseqüentemente, mais clientes atendidos. A perda acumulada de algumas visitas diárias, ao longo de alguns anos, poderia corresponder a um prejuízo equivalente a várias vezes o valor investido nos HDs, por exemplo. Mas, tenha em mente que o perfil de uso de disco em um servidor é bem diferente do uso em um desktop típico, sem contar que, dada a sua importância, pequenos ganhos de desempenho podem realmente compensar pequenas extravagâncias, o que não é o caso de um desktop típico. 423
  • 424. Por mais que você mantenha vários programas abertos e realize muitas operações ao mesmo tempo, não vai conseguir chegar nem perto do que acontece num servidor web, por exemplo, que precisa responder a um grande volume de requisições simultâneas a cada segundo. Num servidor típico, são realizadas um enorme número de pequenas leituras, que são usadas para montar as páginas ou arquivos que serão enviados aos clientes. Um fórum com um grande número de mensagens pode facilmente resultar em um banco de dados de 10 ou mesmo 20 GB, contendo uma infinidade de pequenas mensagens de texto e ter 1000 ou 2000 visitantes simultâneos em determinados períodos. Para cada página a ser exibida, o servidor precisa ler várias entradas dentro do banco de dados (o tópico propriamente dito, informações sobre os usuários e assim por diante). Mesmo com o uso de caches, não é difícil imaginar que tantas requisições simultâneas levam o desempenho dos HDs ao limite. Nesse cenário, qualquer redução no tempo de acesso representa um grande ganho de desempenho. Em um desktop, o HD acaba sendo mais relacionado ao tempo de boot e carregamento dos programas, por isso a taxa de transferência acaba sendo o item mais importante. A única operação que se aproxima um pouco do que acontece nos servidores é o uso intensivo de swap, onde o HD também precisa realizar um grande número de pequenas leituras. Entretanto, nesses casos o problema não seria o HD, mas sim a falta de memória RAM. O único swap bom é o swap que não é feito. :) Em casos onde você realmente faz questão do melhor desempenho, normalmente faz mais sentido usar 2 ou 4 HDs medianos em RAID 0 do que comprar um único HD topo de linha. Considere também a compra de mais memória RAM (já que mais memória significa menor uso de swap e mais cache de disco) e também o uso o ReadyBoost do Vista em conjunto com um Pendrive de 2 GB ou mais (o ganho de desempenho ao usar o ReadyBoost não é tão grande assim, mas como os pendrives são atualmente bastante baratos, o custo-benefício acaba compensando). Para a maioria das tarefas, o ganho de desempenho é maior do que o uso de um HD mais rápido. Existem ainda casos onde o desempenho simplesmente não é um fator importante, como por exemplo no caso de HDs secundários, usados apenas para guardar arquivos ou fazer backup, onde você acessa os dados apenas esporadicamente. Nesses casos, o melhor negócio é simplesmente procurar os HDs com o menor custo por megabyte, dentro da capacidade de que você precisa e escolher um baseado na reputação do fabricante. Em casos como este, um HD mais lento, de 5400 RPM, pode ser até desejável, já que eles consomem menos energia e geram menos calor que os de 7200 RPM. De qualquer forma, é importante entender os fatores que determinam o desempenho dos HDs, de forma a não ser enganado pelas frases floridas usadas pelos fabricantes e não fazer feio nas rodas de amigos. :) 424
  • 425. Tempo de Busca (Seek Time) Ao comparar dois HDs fabricados na mesma época, que utilizam a mesma velocidade de rotação e possuem uma capacidade e número de discos similar (o que indica que possuem mais ou menos a mesma densidade), o tempo de busca é provavelmente o único fator que pode diferir de forma significativa entre os dois. O tempo de busca indica o tempo que a cabeça de leitura demora para ir de uma trilha à outra do disco, ou seja, indica a performance do actuator usado no HD. O tempo de busca é importante, pois ele é o fator que mais influencia no tempo de acesso e conseqüentemente na performance geral do HD. Existem três índices diferentes para o cálculo do tempo de busca: Full Stroke, Track-to-Track e Average. O primeiro (Full Stroke) indica o tempo que a cabeça de leitura demora para se deslocar da primeira até a última trilha do HD, o que normalmente demora entre 15 e 20 milissegundos. Como é o maior dos três, este valor não costuma ser divulgado muito abertamente pelos fabricantes. O Track-to-Track é justamente o oposto; o tempo que a cabeça demora para mudar de uma trilha para a seguinte. Como a distância a ser percorrida é muito pequena, ele costuma ser muito baixo, inferior a 1 milissegundo. Como ele é o valor mais baixo dos três, muitos fabricantes divulgam o valor do Track-to- Track nas especificações, omitindo os outros dois. Finalmente, temos o Average (valor médio), que é justamente um meio termo entre os dois. Ele indica o tempo médio que a cabeça demora para se locomover até um setor aleatório do HD. Ao pesquisar nas especificações, procure justamente se informar sobre o valor Average, já que ele é o mais indicativo dos três. Aqui temos as especificações de um Samsung HD300LJ, um HD de 300 GB e 7.200 RPM, que era um modelo de médio custo no início de 2007: Track to Track: 0.8 ms Average: 8.9 ms Full Stroke: 18 ms Aqui temos as de um Western Digital Raptor X, um "topo de linha" de 10.000 RPM, que utiliza platters de 2.5". O menor diâmetro dos discos faz com que ele tenha apenas 150 GB de capacidade (2 discos), mas em troca permitiu obter tempos de acesso bem mais baixos: Read Seek Time: 4.6 ms 425
  • 426. Write Seek Time: 5.2 ms (average) Track-To-Track Seek Time: 0.4 ms (average) Full Stroke Seek: 10.2 ms (average) Veja que as descrições usadas pela Samsung e pela Western Digital são ligeiramente diferentes. Tanto o "Average" da Samsung quanto o "Read Seek Time" da WD referem-se ao tempo de busca médio para operações de leitura. A WD incluiu também o Write Seek Time, que é o tempo de busca para operações de gravação, que é sempre um pouco mais alto e por isso nem sempre divulgado nas especificações. Como você pode ver, esses são dois exemplos extremos. O Raptor possui tempos de busca quase 50% menores, mas em compensação é mais caro e possui menos da metade da capacidade do Samsung. Você acaba pagando muito mais caro pela maior desempenho. Tempo de Latência (Latency Time) Dentro do disco rígido, os discos magnéticos giram continuamente. Por isso, dificilmente os setores a serem lidos estarão sob a cabeça de leitura/gravação no exato momento de executar a operação. No pior dos casos, pode ser necessária uma volta completa do disco até o setor desejado passar novamente sob a cabeça de leitura. O tempo de latência é tão importante quanto o tempo de busca. Felizmente, ele é fácil de ser calculado, bastando dividir 60 pela velocidade de rotação do HD em RPM (rotações por minuto), e multiplicar o resultado por 1000. Teremos então o tempo de latência em milissegundos. Um HD de 5400 RPM, por exemplo, terá um tempo de latência de 11.11 milissegundos (o tempo de uma rotação), já que 60 ÷ 5200 x 1000 = 11.11. Geralmente é usado o tempo médio de latência, que corresponde à metade de uma rotação do disco (assumindo que os setores desejados estarão, em média, a meio caminho da cabeça de leitura). Um HD de 5400 RPM teria um tempo de latência médio de 5.55 ms, um de 7.200 RPM de 4.15 ms e um de 10.000 RPM de apenas 3 ms. Muitos fabricantes publicam o tempo de latência médio nas especificações ao invés do tempo de busca ou o tempo de acesso (já que ele é menor), o que acaba confundindo os desavisados. 426
  • 427. Tempo de Acesso (Access Time) O tempo de acesso é a combinação do tempo de busca e do tempo de latência, o tempo médio necessário para realizar um acesso a um setor aleatório do HD. Assim que o comando é processado, a cabeça de leitura é movida para a trilha especificada (tempo de busca) e aguarda até que a rotação dos discos a faça passar pelo setor especificado (tempo de latência). Aos dois, somamos também o settle time (o tempo que a cabeça de leitura demora para estabilizar depois de movimentada) e o command overhead time, que é o tempo que a placa controladora demora para processar o comando e iniciar ambas as operações. Estes dois valores são bem menos significantes (somam algo em torno de 0.5 ms), por isso nem sempre são divulgados pelos fabricantes, embora também entrem na conta. Os fabricantes calculam o tempo de latência dos HDs de formas diferentes, tornando difícil uma comparação direta. O ideal é que você mesmo calcule o tempo de acesso médio com base nas informações anteriores. Para isso, basta somar o tempo de busca médio (Average) e o tempo de latência, calculado com base na velocidade de rotação dos discos. Como é muito difícil encontrar o settle time e o command overhead time nas especificações, você pode adicionar 0.5 ms, que é um valor aproximado. O Samsung HD300LJ tem tempo de busca de 8.9 ms e latência de 4.15 ms. Adicionando os 0.5 ms temos um total de 14.55 ms. Um Seagate ST3200822A (um modelo IDE, de 200 GB) tem tempo de busca de 8.5 ms. Como ele também é um modelo de 7.200 RPM, a latência também é de 4.15 ms, o que (incluindo os 0.5 ms) daria um total de 14.15 ms. O Raptor X tem apenas 4.6 ms de tempo de busca e, por ser um HD de 10.000 RPM, tem latência de 3 ms. Somando os 0.5 ms, teríamos um total de 9.1 ms. Veja que a diferença entre o HD300LJ ST3200822A é muito pequena. O Raptor consegue ser 35% mais rápido, mas em compensação é muito mais caro, como vimos. Apesar de importante, o tempo de acesso é um fator que não deve ser superestimado. Ele afeta o desempenho do HD quando é lida uma grande quantidade de arquivos pequenos, espalhados pelo HD, mas não afeta muito a taxa de transferência seqüencial, que é o que você vê ao carregar um programa pesado ou copiar uma grande quantidade de arquivos, por exemplo. 427
  • 428. Head Switch Time Um disco rígido é composto internamente por (na grande maioria dos casos) de 1 a 4 discos, sendo que cada disco possui duas faces e temos uma cabeça de leitura para cada face. Mesmo possuindo várias cabeças de leitura, apenas uma delas pode ser usada de cada vez, de forma que a controladora precisa constantemente chavear entre elas durante a leitura ou gravação dos dados. Você poderia perguntar por que os dados não são organizados de forma que a controladora pudesse ler e gravar usando todas as cabeças simultaneamente, com cada uma armazenando parte dos arquivos, como em uma espécie de "RAID interno". O problema aqui é que é tecnicamente impossível manter as trilhas dos diferentes discos perfeitamente alinhadas entre si. Quando a controladora chaveia de uma cabeça de leitura para a outra, é necessário executar o procedimento normal de posicionamento, onde ela verifica as marcações servo dos discos e o braço de leitura move-se para a posição apropriada. Devido a isso, o chaveamento acaba demorando um pouco mais do que poderíamos pensar inicialmente. Ele é apenas um pouco menor que o tempo de busca Track-to-Track e quase sempre proporcional a ele. Embora o Head Switch Time não seja um fator tão significativo quanto o tempo de acesso, ele acaba sendo um fator importante para a taxa de leitura seqüencial do HD, já que a controladora lê um cilindro por vez, chaveando entre todas as cabeças antes de ir para o próximo. Taxa de Transferência Interna (Internal Transfer Rate) A taxa de transferência interna é a velocidade "real" do HD ao ler arquivos gravados em setores seqüenciais. Se tivéssemos à mão todas as especificações do HD, incluindo o número de setores por trilha, seria simples calcular a taxa de leitura real do HD. Em um HD que tivesse 1584 setores por trilha na área mais externa dos discos e 740 na área mais interna, com 2 patters, rotação de 7200 RPM, tempo de busca Track-to-Track de 0.8 ms e Head Switch Time de 0.6 ms, por exemplo, teríamos o seguinte: Cada trilha externa possui 1584 setores, cada um com 512 bytes, de forma que temos 792 KB por trilha. Os discos giram a 7200 RPM, de forma que temos 120 rotações por segundo. Dividindo um segundo por 120 rotações, temos 8.33 milissegundos para cada rotação completa do disco, que corresponde à leitura de cada trilha. 428
  • 429. Como o disco tem 2 platters, temos um total de 4 trilhas por cilindro. Para ler cada cilindro, a cabeça de leitura precisa realizar 3 chaveamentos entre as cabeças (0.6 ms cada) e em seguida precisa mover o braço de leitura para o cilindro seguinte, o que demora mais 0.8 ms. Somando tudo, a leitura de cada cilindro demora aproximadamente 36 ms, o que significa que temos a leitura de 27.7 cilindros por segundo. Cada cilindro é composto por 4 trilhas, o que corresponde a 3.093 MB. Se o HD consegue ler 27.7 deles por segundo, significaria que o nosso HD hipotético teria uma taxa de transferência interna (nas trilhas externas) de aproximadamente 85.9 MB/s. Nas trilhas internas a densidade cai para apenas 1.44 MB por cilindro (já que cada trilha possui apenas 740 setores), de forma que a taxa de leitura cai para apenas 40.1 MB/s. Ao ler pequenos arquivos, temos a interferência do cache de disco, mas ao ler uma grande quantidade de arquivos, ele deixa de ser eficaz (já que armazena apenas uma pequena quantidade de dados), de forma que a taxa real de transferência cai para os valores da taxa de transferência interna, variando entre 85.9 MB/s e 40.1 MB/s, de acordo com a parte do disco que estivesse sendo lida. Quando houver referências à "Internal Transfer Rate" ou "Buffer to Disc" nas especificações de um HD, pode ter certeza de tratar-se da velocidade "máxima", atingida quando são lidos setores seqüenciais nas bordas do disco. Tenha em mente que no centro do disco você obterá um pouco menos da metade do número divulgado. No caso dos HDs de notebook, ou de HDs que utilizam platters de 2.5" (como o Raptor), a diferença entre a taxa de leitura nas trilhas internas e externas é menor, numa relação de aproximadamente 2/3 em vez de 1/2. O grande problema é que os fabricantes raramente divulgam o número de setores por trilha, nem o Head Switch Time dos HDs, de forma que acaba sendo impossível calcular diretamente a taxa de transferência interna com base nas especificações. Normalmente, você encontrará apenas o número de setores por trilhas visto pelo BIOS (64), que não tem nenhuma relação com o número real. Resta então usar o método empírico, realizando um teste longo de leitura, como o teste realizado pelo HD Tach, onde são lidos grandes volumes de dados, começando pela borda e prosseguindo até o centro dos discos. O cache pode ajudar o início da leitura, mas os dados armazenados logo se esgotam, deixando apenas a taxa real. Um bom lugar para pesquisar sobre as taxas de leitura (e outros índices) de diversos modelos é a tabela do Storage Review, disponível no: http://www.storagereview.com/comparison.html. 429
  • 430. Outra tabela recomendada é a disponível no TomsHardware: http://www23.tomshardware.com/storage.html. Outra curiosidade é que é comum que os fabricantes produzam alguns modelos de HDs onde não são utilizadas todas as trilhas dos discos, de forma a criar HDs com capacidades definidas, que se adaptem a determinados nichos do mercado. Imagine, por exemplo, que o fabricante X está produzindo todos os seus discos usando platters de 200 GB. Isso significaria que ele teria modelos de 200, 400, 600 e 800 GB, de acordo com o número de platters usados. Imagine agora que o fabricante Y, que ainda usa uma técnica anterior de produção, lança um HD de 160 GB, que é mais barato que o de 200 GB do fabricante X e por isso começa a roubar mercado dele. Ao invés de reduzir o custo do HD de 200 GB e perder dinheiro na venda de todos os HDs, o fabricante X pode criar um HD de 160 GB fazendo uma simples alteração no firmware do HD de 200 GB, que faça a controladora deixar de usar as trilhas mais externas do disco. Ele pode agora vender estes HDs de "160 GB" a um preço mais baixo, sem ter que mexer no preço do restante da linha. Por incrível que possa parecer, isto é bastante comum. NCQ A grande maioria dos HDs SATA atuais suporta o NCQ, onde a controladora utiliza o tempo ocioso, entre uma leitura e outra, para estudar e reorganizar a ordem das leituras seguintes, de forma que elas possam ser executadas na ordem em que seja necessário o menor movimento possível dos discos. É como no caso de um ônibus, que precisa fazer um itinerário passando por diversos pontos da cidade. Com o NCQ o motorista tem autonomia para fazer alterações na rota, de acordo com as condições do trânsito, escolhendo a rota mais rápida. Esta ilustração fornecida pela nVidia mostra como o sistema funciona. O HD à esquerda não possui suporte a NCQ, de forma que, ao realizar 4 leituras a setores aleatórios do disco ele precisa realizá-las em ordem, fazendo com que sejam necessários um número maior de rotações do disco, À direita, o HD com NCQ usa um atalho para realizar a mesma seqüência de leitura em menos tempo, lendo os setores fora de ordem: 430
  • 431. HD sem NCQ (à esquerda) e com NCQ Na prática, o NCQ pode melhorar a taxa de transferência do HD em até 10% em situações específicas, onde são lidos diversos arquivos pequenos espalhados pelo HD, como durante o carregamento do sistema operacional, ou de um programa pesado, mas faz pouca diferença quando você está transferindo grandes arquivos. De qualquer forma, ele é uma otimização implementada via software, que não aumenta o custo de produção dos discos e não tem contra indicações. 431
  • 432. Cache (Buffer) Embora não seja tão importante para o desempenho quanto geralmente se pensa, o cache permite à controladora executar um conjunto de operações úteis para melhorar o desempenho. Geralmente ao ler um arquivo, serão lidos vários setores seqüenciais. A forma mais rápida de fazer isso é, naturalmente, fazer com que a cabeça de leitura leia de uma vez todos os setores da trilha, passe para a trilha seguinte, passe para a terceira e assim por diante. Isso permite obter o melhor desempenho possível. O problema é que na prática não é assim que funciona. O sistema pede o primeiro setor do arquivo e só solicita o próximo depois de recebê-lo e certificar-se de que não existem erros. Se não houvesse nenhum tipo de buffer, a cabeça de leitura do HD acabaria tendo que passar várias vezes sobre a mesma trilha, lendo um setor a cada passagem, já que não daria tempo de ler os setores seqüencialmente depois de todo tempo perdido antes de cada novo pedido. Graças ao cache, este problema é resolvido, pois a cada passagem a cabeça de leitura lê todos os setores próximos, independentemente de terem sido solicitados ou não. Após fazer sua verificação de rotina, o sistema solicitará o próximo setor, que por já estar carregado no cache será fornecido em tempo recorde. Nos HDs atuais, o cache pode ser usado também nas operações de escrita. Imagine, por exemplo, que a controladora está ocupada lendo um arquivo longo e o sistema solicita que ela atualize um pequeno arquivo de log. Em vez de precisar parar o que está fazendo, a controladora pode armazenar a operação no cache e executá-la mais adiante, em um momento de ociosidade. Nos HDs SATA com NCQ, a controladora possui liberdade para reorganizar as operações, realizando-as de forma que sejam concluídas mais rápido. A controladora passa então a armazenar os dados no cache, de forma que, depois de concluídas as operações, possa organizar os dados e entregá-los na ordem correta para o sistema. O espaço excedente é usado para armazenar os últimos arquivos acessados, de forma que eles possam ser fornecidos rapidamente caso sejam requisitados novamente. A principal vantagem de usar um cache maior seria justamente ter mais espaço para arquivos. A questão é que o sistema operacional também mantém um cache de leitura e gravação utilizando a memória RAM que, por ser maior que o cache do HD, acaba sendo mais eficiente e também mais rápido, já que o cache do HD tem sua velocidade de transferência limitada à velocidade da interface IDE ou SATA, enquanto o cache feito pelo sistema operacional está limitado apenas à velocidade de acesso da própria memória RAM. 432
  • 433. Esse é o principal motivo de um HD com mais cache não ser tão mais rápido quanto se pensa. Enquanto dobrar o tamanho do cache L2 de um processador aumenta seu desempenho em até 10%, aumentar o cache de um HD de 16 para 32 MB, por exemplo, acaba aumentando seu desempenho real em menos de 1% na maioria das aplicações. Uma pequena quantidade de cache é importante por causa de todos os recursos que vimos, mas a partir de um certo ponto, o tamanho do cache acaba fazendo pouca diferença. No final das contas, a melhor forma de melhorar o desempenho do HD é comprando mais memória :). No caso do Windows XP, verifique a configuração do cache de disco no Painel de Controle > Sistema > Avançado > Configurações > Avançado > Uso de memória, mudando de "Uso dos programas" para "Cache do sistema". No caso do Windows 98/ME a configuração fica no Painel de Controle > Sistema > Performance, onde a opção "Servidor de rede" é a que reserva mais memória para o cache. No caso do Linux, o cache é gerenciado de forma automática pelo sistema, usando a memória disponível, de forma que não é necessária nenhuma configuração adicional. Atualmente muito se fala nos HDs híbridos, onde é utilizado um cache maior, feito de memória Flash. A principal vantagem neste caso é que os dados armazenados no cache são preservados mesmo ao desligar o micro, permitindo que sejam usados no boot seguinte. Muitos arquivos carregados durante o boot (sobretudo arquivos pequenos) podem então ficar permanentemente armazenados no cache, tornando mais rápido o boot e o carregamento dos programas mais usados. Veremos mais detalhes sobre os HDs híbridos e outras tecnologias similares mais adiante. 433
  • 434. MTBF e service life Duas informações que constam nas especificações dos HD e que são freqüentemente mal entendidas são o MTBF e o service life, que se destinam a dar uma idéia estimada da confiabilidade do HD. MTBF significa "Mean Time Between Failures" ou "tempo médio entre falhas". A maioria dos HDs de baixo custo, destinados ao mercado doméstico, possuem MTBF de 300.000 ou 600.000 horas, enquanto os modelos high-end, ou destinados a servidores, normalmente ostentam um MTBF de 1.200.000 horas. Complementando temos o "service life" ou "component design life", que normalmente é de 5 anos. Como era de se esperar, o service life indica o tempo de vida "recomendado" pelo fabricante. Como o HD é composto por componentes mecânicos, um certo desgaste é acumulado durante o uso, culminando na falha do HD. Um service life de 5 anos indica que o HD é projetado para durar 5 anos e que a grande maioria das unidades deve realmente resistir ao tempo especificado. O MTBF, por sua vez, não é uma indicação do tempo de vida do HD, mas sim indica a percentagem de chance do HD apresentar defeito antes do final do service life. Se o service life é de 5 anos e o MTFB é de 600.000 horas, significa que existe uma possibilidade de 1.4% do seu HD apresentar defeito antes disso. Parece complicado, mas na verdade não é tanto :). A idéia é que se você tivesse um datacenter com 1.000 HDs iguais, um deles pifaria em média a cada 600.000 horas somadas (somando os 1.000 HDs), ou seja a cada 25 dias, ao longo dos primeiros 5 anos de uso. Depois isso, você pode esperar que a taxa de mortalidade seja cada vez maior nos anos seguintes, embora um pequeno número dos HDs possa resistir a 10 anos de uso ou mais. Outra forma de explicar seria que, se você substituísse seu HD por outro igual a cada 5 anos, aposentando os antigos, seriam necessárias (em média) 600.000 horas, ou seja, 68.4 anos para que você perdesse os dados por causa de falha em um dos HDs. Ou seja, tudo gira em torno de possibilidades. Se você for "sortudo", mesmo um HD com MTBF de 1.200.000 horas pode pifar no primeiro mês de uso, da mesma forma que o HD de 200 reais do vizinho pode resistir durante 10 anos e ainda voltar a funcionar depois de removido o pó acumulado ;). O MTBF apenas serve como um indicativo da possibilidade de qualquer um dos dois extremos ocorrer. Outra questão interessante é sobre como o MTBF é calculado, já que obviamente o fabricante não tem como realizar um teste de 5 anos antes de colocar um novo HD no mercado. Normalmente o número é calculado com base nos materiais e tecnologia usados na fabricação, simulações, dados estatísticos sobre outros modelos similares lançados anteriormente e, em geral, 434
  • 435. também um teste piloto de curta duração, usando algumas dezenas de unidades. Complementando, temos também o "Start/Stop Cycles", ou seja, o número de ciclos de desligamento que o drive é projetado para suportar. Quando o HD é ligado, o motor de rotação precisa realizar um esforço maior que o habitual para acelerar os discos, o que acentua o desgaste. Nos HDs antigos, onde ainda não são utilizadas rampas para estacionar as cabeças de leitura, existe também o desgaste causado pelo atrito das cabeças ao tocar a landing zone a cada desligamento. Contam não apenas o número de vezes em que o micro é desligado, mas também o número de vezes que o HD entra em modo de economia de energia. Os HDs atuais normalmente são projetados para suportarem 50.000 ciclos, de forma que este normalmente não é um problema dentro do uso normal. Tenha apenas o cuidado de não configurar o tempo de desligamento do HD com valores muito agressivos, como de 1 em 1 minuto por exemplo. Se o HD precisar acelerar 30 vezes por hora, pode ter certeza de que isso poderá levar a uma falha prematura mais cedo ou mais tarde. :) Como sempre, estamos falando sobre probabilidade e não sobre dados infalíveis. Um exemplo histórico são os IBM Deskstar 75GX que, devido a um conjunto de problemas de projeto, possuíam uma taxa de mortalidade assustadoramente alta, embora possuíssem um MTBF de 500.000 horas. O caso foi tão grave que acabou dando origem a uma ação coletiva por parte dos usuários afetados, que levou a um recall dos drives. Pouco depois a IBM decidiu sair do ramo de produção de HDs, vendendo toda a divisão para a Hitachi. Como de praxe, a única forma de se proteger contra falhas é fazer backups regulares. Existe ainda a opção de utilizar um sistema RAID 1, onde temos dois HDs e o segundo armazena uma cópia atualizada do conteúdo do primeiro. O RAID não substitui o backup, mas evita que seu servidor ou máquina de trabalho fique fora do ar enquanto você restaura os dados. As interfaces Assim como outros componentes, as interfaces usadas como meio de conexão para os HDs passaram por um longo caminho evolutivo. As placas-mãe usadas nos primeiros PCs sequer possuíam interfaces de disco embutidas. Naquela época, as interfaces IDE ainda não existiam, de forma que novas interfaces eram vendidas junto com os HDs e instaladas em slots ISA disponíveis. A primeira interface foi criada pela Seagate, para uso em conjunto com o ST-506, um HD de 5 MB. Em seguida foi lançado o ST-412, de 10 MB. As duas interfaces são chamadas respectivamente de MFM e RLL devido ao método de codificação usado. Além da Seagate, estes HDs e interfaces foram produzidos também por outros fabricantes, como a Quantum e a Maxtor. 435
  • 436. Em 1985 a Quantum lançou um produto bastante peculiar, o "Plus HardCard", que era um HD RLL de 20 MB onde tanto o HD quanto a controladora eram integrados a uma única placa ISA, e o "HD" era instalado diretamente no slot, sem ocupar uma das baias do gabinete. Como você pode imaginar, estes HDs eram um tanto quanto problemáticos, pois a placa era presa por um único parafuso, o que causava problemas de vibração excessiva e barulho. Mesmo assim, o Plus HardCard foi um produto relativamente popular na época: O padrão seguinte foi o ESDI (Enhanced Small Device Interface), criado por um consórcio de diversos fabricantes, incluindo a Maxtor. As interfaces ESDI ainda eram instaladas em slots ISA, mas trabalhavam a uma velocidade muito maior que as MFM e RLL, oferecendo um barramento teórico de 3 MB/s. É bem pouco para os padrões atuais, mas os HDs da época trabalhavam com taxas de transferências muito mais baixas, de forma que a velocidade acabava sendo mais do que satisfatória. IDE Tanto as interfaces MFM e RLL quanto a ESDI possuem uma característica em comum, que é o fato de a controladora fazer parte da interface (e não do próprio HD, como temos hoje em dia). Naturalmente, integrar a controladora ao HD oferece diversas vantagens, pois elimina os problemas de sincronismo causados pelo uso de cabos longos e simplifica todo o design. Não demorou para que os fabricantes percebessem isso. Surgiu então o padrão IDE, abreviação de "Integrated Drive Eletronics" (que indica justamente o uso da controladora integrada), desenvolvido pela Quantum e a Western Digital. Os primeiros HDs e interfaces IDE chegaram ao mercado em 1986, mas inicialmente não existia um padrão bem definido, o que fez com que os primeiros anos fossem marcados por problemas de compatibilidade entre os produtos dos diferentes fabricantes. Em 1990 o padrão foi ratificado pelo ANSI, dando origem ao padrão ATA. Como o nome "IDE" já estava mais difundido, muita gente continuou usando o termo "IDE", e outros passaram a usar "IDE/ATA" ou simplesmente "ATA", fazendo com que os dois termos acabassem virando sinônimos. 436
  • 437. As primeiras placas IDE traziam apenas uma ou duas portas IDE e eram instaladas em um slot ISA de 16 bits. Mas, logo os fabricantes passaram a integrar também outros conectores, dando origem às placas "super-ide", que eram usadas na grande maioria dos micros 386 e 486. As placas mais comuns incluíam uma porta IDE, uma porta FDD (para o drive de disquete), duas portas seriais e uma paralela, além do conector do joystick: Placa super-ide, usada em micros 386 e 486 Como você pode ver, estas placas eram configuradas através de um conjunto de jumpers, já que na época ainda não existia plug-and-play. Os jumpers permitiam configurar os endereços de IRQ, DMA e I/O usados, além de desativar os componentes individualmente. Se você precisasse de duas portas paralelas, por exemplo, utilizaria duas placas e configuraria uma delas para usar o IRQ 5 e endereço de I/O 378 e a outra para usar o IRQ 7 e o endereço de I/O 278. A partir de um certo ponto, os fabricantes passaram a integrar os controladores diretamente no chipset da placa-mãe, dando origem às placas com conectores integrados que conhecemos. A exceção ficou por conta do conector do joystick, que passou a ser integrado nas placas de som. Uma curiosidade é que o conector inclui também os pinos usados por dispositivos MIDI (como teclados musicais), que também são ligados no conector do joystick, através de um adaptador: 437
  • 438. Inicialmente, as interfaces IDE suportavam apenas a conexão de HDs. Devido a isso, os primeiros drives de CD utilizavam interfaces proprietárias, incorporadas à placa de som, ou mesmo controladoras SCSI. Na época eram comuns os "kits multimídia", que incluíam o CD-ROM, placa de som, caixinhas e microfone. Para solucionar o problema, foi desenvolvido o protocolo ATAPI (AT Attachment Packet Interface) que tornou-se rapidamente o padrão, riscando as interfaces proprietárias do mapa. É graças a ele que você pode comprar um drive de CD ou DVD e instalá-lo diretamente em uma das portas IDE, sem ter que comprar junto uma placa de som do mesmo fabricante. :) Na placa-mãe você encontra duas portas IDE (primária e secundária). Mesmo com a popularização das interfaces SATA, as portas IDE ainda continuam sendo incluídas nas placas recentes (muitas placas passaram a trazer apenas uma porta IDE, mas deve demorar mais um pouco até que elas desapareçam completamente). Cada uma das portas permite instalar dois drives, de forma que podemos instalar um total de 4 HDs ou CD-ROMs na mesma placa: 438
  • 439. Existem casos de placas-mãe com 4 portas IDE (permitindo usar até 8 drives) e também controladoras IDE PCI, que incluem duas portas adicionais, que podem ser usadas em casos onde você precise usar mais do que 4 drives IDE no mesmo micro. Para diferenciar os dois drives instalados na mesma porta, é usado um jumper, que permite configurar cada drive como master (mestre) ou slave. Dois drives instalados na mesma porta compartilham o barramento oferecido por ela, o que acaba sempre causando uma pequena perda de desempenho. Por isso, quando são usados apenas dois drives (um HD e um CD-ROM, por exemplo), é preferível instalar cada um em uma das portas, deixando ambos jumpeados como master. Ao adicionar um terceiro, você poderia escolher entre instalar na primeira ou segunda porta IDE, mas, de qualquer forma, precisaria configurá-lo como slave, mudando a posição do jumper. Instalar cada drive em uma porta separada ajuda principalmente quando você precisa copiar grandes quantidades de dados de um HD para outro, ou gravar DVDs, já que cada drive possui seu canal exclusivo com o chipset. No Windows, os drives são simplesmente identificados de forma seqüencial. O HD instalado como master da IDE primária apareceria no Windows Explorer como "C:" e o CD-ROM, instalado na IDE secundária como "D:", por exemplo. Se você adicionasse um segundo HD, instalado como slave da primeira IDE, ele passaria a ser o "D:" e o CD-ROM o "E:". No Linux, os drives recebem endereços fixos, de acordo com a posição em que forem instados: Master = /dev/hda IDE primária Slave = /dev/hdb Master = /dev/hdc IDE secundária Slave = /dev/hdd O cabo IDE possui três encaixes, onde um é ligado na placa-mãe e os outros dois são ligados cada um em um dos dois dispositivos. Mesmo que você tenha apenas um dispositivo IDE, você deverá ligá-lo no conector da ponta, nunca no conector do meio. O motivo para isto, é que, ligando no conector do meio, o cabo ficará sem terminação, fazendo com que os dados venham até o final do cabo e retornem na forma de interferência, prejudicando a transmissão. Como de praxe, as interfaces IDE/ATA passaram por um longo caminho evolutivo. As interfaces antigas, usadas em micros 386/486 e nos primeiros micros Pentium, suportam (de acordo com seu nível de atualização), cinco modos de operação, que vão do PIO mode 0, ao PIO mode 4: 439
  • 440. Modo de Operação Taxa de transferência PIO mode 0 3.3 MB/s PIO mode 1 5.2 MB/s PIO mode 2 8.3 MB/s PIO mode 3 11.1 MB/s PIO mode 4 16.6 MB/s As mais recentes suportam também o Multiword DMA, que é um modo de acesso direto, onde o HD ou CD-ROM pode transferir dados diretamente para a memória, sem que o processador precise se envolver diretamente na transferência. O uso do DMA melhora bastante o desempenho e a responsividade do sistema, evitando que o micro "pare" enquanto um programa pesado está sendo carregado, ou durante a gravação de um CD, por exemplo. Apesar disso, o Multiword DMA não chegou a ser muito usado, pois não era diretamente suportado pelo Windows 95 e os drivers desenvolvidos pelos fabricantes freqüentemente apresentavam problemas de estabilidade. Para piorar, muitos drives de CD e HDs antigos não funcionavam quando o DMA era ativado. A solução veio com o padrão ATA-4, ratificado em 1998. Ele nada mais é do que o padrão Ultra ATA/33 (o nome mais popularmente usado) que é usado em placas para micros Pentium II e K6-2 fabricadas até 2000. Nele, a taxa de transferência máxima é de 33 MB/s e é suportado o modo UDMA 33, que permite transferências diretas para a memória também a 33 MB/s. É graças a ele que você pode assistir a filmes em alta resolução e DVDs no seu PC sem falhas Você pode fazer uma experiência, desativando temporariamente o suporte a UDMA para o seu DVD-ROM para ver o que acontece. No Linux, use o comando "hdparm -d0 /dev/dvd" (como root). No Windows, acesse o gerenciador de dispositivos, acesse as propriedades do drive e desmarque a opção referente ao DMA. Tente agora assistir a um DVD. Você vai perceber que tanto o vídeo quanto o som ficam cheios de falhas, tornando a experiência bastante desagradável. Isso acontece porque, com o UDMA desativado, o processador precisa periodicamente parar o processamento do vídeo para ler mais dados no DVD. Quanto mais rápido o processador, mais curtas são as falhas, mas elas persistem mesmo em um processador de 2 ou 3 GHz. Para reverter, use o comando "hdparm -d1 /dev/dvd" ou marque novamente a opção do DMA, no caso do Windows. Depois que o problema do DMA foi finalmente resolvido, os fabricantes se concentraram em aumentar a velocidade das portas. Surgiram então os padrões ATA-5 (Ultra ATA/66), ATA-6 (Ultra ATA/100) e ATA-7 (Ultra ATA/133), que é o usado atualmente. Eles suportam (respectivamente), os modos UDMA 66, UDMA 100 e UDMA 133, além de manterem compatibilidade 440
  • 441. com os padrões anteriores: Modo de Operação Taxa de transferência ATA-4 (Ultra ATA/33, UDMA 33) 33 MB/s ATA-5 (Ultra ATA/66, UDMA 66) 66 MB/s ATA-6 (Ultra ATA/100, UDMA 100) 100 MB/s ATA-7 (Ultra ATA/133, UDMA 133) 133 MB/s As portas ATA/133 usadas nas placas atuais são uma necessidade, por dois motivos. O primeiro é que os HDs atuais já superam a marca dos 70 ou 80 MB/s de taxa de transferência ao ler setores contínuos, e a interface precisa ser substancialmente mais rápida que o HD para absorver também as transferências feitas a partir do cache, que são bem mais rápidas. O segundo motivo é que só a partir das interfaces ATA/100 foi introduzido o suporte a HDs IDE com mais de 137 GB (decimais) de capacidade, como veremos em detalhes a seguir. Para que os modos mais rápidos sejam utilizados, é necessário que exista também suporte por parte do HD e que o driver correto esteja instalado. No caso do HD, não existe muito com o que se preocupar, pois os fabricantes são os primeiros a adotar novos modos de operação, de forma a diferenciar seus produtos. Se você tem em mãos um HD antigo, que só suporta UDMA 33, por exemplo, pode ter certeza de que a taxa de transferência oferecida por ele é baixa, o que torna desnecessário o uso de uma interface mais rápida em primeiro lugar. Ao contrário dos HDs, os drivers de CD e DVD ficaram estagnados no UDMA 33, pois como eles trabalham com taxas de transferência muito mais baixas, os padrões mais rápidos também não trazem vantagens. É possível que alguns fabricantes eventualmente passem a lançar drives "ATA/133", usando a interface mais rápida como ferramenta de marketing, mas isso não faria diferença alguma no desempenho. Como de praxe, devo insistir na idéia de que a velocidade da interface determina apenas o fluxo de dados que ela pode transportar e não a velocidade real do dispositivo ligado a ela. Um CD-ROM de 52x lerá as mídias a no máximo 7.8 MB/s, independentemente da velocidade da interface. Funciona como numa auto-estrada: se houver apenas duas pistas para um grande fluxo de carros, haverá muitos congestionamentos, que acabarão com a duplicação da pista. Porém, a mesma melhora não será sentida caso sejam construídas mais faixas. Continuando, junto com as interfaces Ultra ATA/66, veio a obrigatoriedade do uso de cabos IDE de 80 vias, substituindo os antigos cabos de 40 vias. Eles são fáceis de distinguir dos antigos, pois os fios usados no cabo são muito mais finos, já que agora temos o dobro deles no mesmo espaço: 441
  • 442. Cabo IDE de 80 vias (à esquerda) e cabo de 40 vias A adição dos 40 finos adicionais é uma história interessante, pois eles não se destinam a transportar dados. Tanto os conectores quanto os encaixes nos drives continuam tendo apenas 40 pinos, mantendo o mesmo formato dos cabos anteriores. Os 40 cabos adicionais são intercalados com os cabos de dados e servem como neutros, reduzindo o nível de interferência entre eles. Este "upgrade" acabou sendo necessário, pois os cabos IDE de 40 vias foram introduzidos em 1986, projetados para transmitir dados a apenas 3.3 MB/s! Os cabos de 80 vias são obrigatórios para o uso do UDMA 66 em diante. A placa-mãe é capaz de identificar o uso do cabo de 80 vias graças ao pino 34, que é ligado de forma diferente. Ao usar um cabo antigo, de 40 vias, a placa baixa a taxa de transmissão da interface, passando a utilizar o modo UDMA 33. Veja que no caso dos CD-ROMs e DVDs, ainda é comum o uso dos cabos de 40 vias, simplesmente porque, como vimos, eles ainda utilizam o modo UDMA 33. Entretanto, se você precisar instalar um HD junto com o drive óptico, é interessante substituir o cabo por um de 80 vias, caso contrário o desempenho do HD ficará prejudicado. Outra exigência trazida pelos novos padrões é o uso de cabos com no máximo 45 centímetros de comprimento, já que acima disso o nível de interferência e atenuação dos sinais passa a prejudicar a transmissão dos dados. O padrão ATA original (o de 1990) permitia o uso de cabos de até 90 centímetros (!) que não são mais utilizáveis hoje em dia, nem mesmo para a conexão do drive de CD/DVD. Mais uma mudança introduzida pelos cabos de 80 vias é o uso de cores para diferenciar os três conectores do cabo. O conector azul deve ser ligado na placa-mãe, o conector preto é ligado no drive configurado com master da interface, enquanto o conector do meio (cinza) é usado para a conexão do segundo drive, caso presente. 442
  • 443. Os cabos de 80 vias também suportam o uso do sistema cabe select (nos de 40 vias o suporte era opcional), onde a posição dos drives (master/slave) é determinada pelo conector do cabo ao qual eles estão ligados, eliminando a possibilidade de conflitos, já que instalar dois drives configurados como master na mesma interface normalmente faz com que ambos deixem de ser identificados no Setup. Para usar o cable select é preciso colocar os jumpers dos dois drives na posição "CS". Consulte o diagrama presente no topo ou na lateral do drive para ver a posição correta: Diagrama da posição dos jumpers em um HD Maxtor Os HDs IDE de 2.5", para notebooks, utilizam um conector IDE miniaturizado, que possui 44 pinos (em vez de 40). Os 4 pinos adicionais transportam energia elétrica, substituindo o conector da fonte usado nos HDs para desktop. Existem ainda adaptadores que permitem instalar drives de 2.5" em desktops. Eles podem ser usados tanto em casos em que você precisar recuperar dados de um notebook com defeito quanto quando quiser usar um HD de notebook no seu desktop para torná-lo mais silencioso. Estes adaptadores ao muito simples e baratos de fabricar, embora o preço no varejo varie muito, já que eles são um item relativamente raro: 443
  • 444. Adaptador IDE 2.5" > 3.5" SATA As interfaces IDE foram originalmente desenvolvidas para utilizar o barramento ISA, usado nos micros 286. Assim como no barramento ISA, são transmitidos 16 bits por vez e utilizado um grande número de pinos. Como é necessário manter a compatibilidade com os dispositivos antigos, não existe muita margem para mudanças dentro do padrão, de forma que, mesmo com a introdução do barramento PCI e do PCI Express, as interfaces IDE continuam funcionando fundamentalmente da mesma forma. Mesmo quando foram introduzidas as interfaces ATA/66, a única grande mudança foi a introdução dos cabos de 80 vias, desenvolvidos de forma a permitir taxas de transmissão maiores, sem contudo mudar o sistema de sinalização, nem os conectores. A partir de um certo ponto, ficou claro que o padrão IDE/ATA estava chegando ao seu limite e que mudanças mais profundas só poderiam ser feitas com a introdução de um novo padrão. Surgiu então o SATA (Serial ATA). Assim como o PCI Express, o SATA é um barramento serial, onde é transmitido um único bit por vez em cada sentido. Isso elimina os problemas de sincronização e interferência encontrados nas interfaces paralelas, permitindo que sejam usadas freqüências mais altas. Graças a isso, o cabo SATA é bastante fino, contendo apenas 7 pinos, onde 4 são usados para transmissão de dados (já que você precisa de 2 fios para fechar cada um dos dois circuitos) e 3 são neutros, que ajudam a minimizar as interferências. 444
  • 445. Conectores do cabo SATA Os cabos SATA são bem mais práticos que os cabos IDE e não prejudicam o fluxo de ar dentro do gabinete. Os cabos podem ter até um metro de comprimento e cada porta SATA suporta um único dispositivo, ao contrário do padrão master/slave do IDE/ATA. Por causa disso, é comum que as placas- mãe ofereçam 4 portas SATA (ou mais), com apenas as placas de mais baixo custo incluindo apenas duas. No final, o ganho de desempenho permitido pela maior freqüência de transmissão acaba superando a perda por transmitir um único bit por vez (em vez de 16), fazendo com que, além de mais simples e barato, o padrão SATA seja mais rápido. Existem três padrões de controladoras SATA, o SATA 150 (também chamado de SATA 1.5 Gbit/s ou SATA 1500), o SATA 300 (SATA 3.0 Gbit/s ou SATA 3000) e também o padrão SATA 600 (ou SATA 6.0 Gbit/s), que ainda está em desenvolvimento. Como o SATA utiliza dois canais separados, um para enviar e outro para receber dados, temos 150 ou 300 MB/s em cada sentido, e não 133 MB/s compartilhados, como no caso das interfaces ATA/133. Os nomes SATA 300 e SATA 3000 indicam, respectivamente, a taxa de transferência, em MB/s e a taxa "bruta", em megabits. O SATA utiliza o sistema de codificação 8B/10B, o mesmo utilizado pelo barramento PCI Express, onde são adicionados 2 bits adicionais de sinalização para cada 8 bits de dados. Estes bits adicionais substituem os sinais de sincronismo utilizados nas interfaces IDE/ATA, simplificando bastante o design e melhorando a confiabilidade do barramento. Dessa forma, a controladora transmite 3000 megabits, que, devido à codificação, correspondem a apenas 300 megabytes. Ou seja, não é um arredondamento. :) As controladoras SATA 300 são popularmente chamadas de "SATA II" de forma que os dois termos acabaram virando sinônimos. Mas, originalmente, "SATA II" era o nome da associação de fabricantes que trabalhou no desenvolvimento dos padrões SATA (entre eles o SATA 300) e não o nome de 445
  • 446. um padrão específico. Da mesma forma, o padrão de 600 MB/s chama-se SATA 600, e não "SATA III" ou "SATA IV". Mesmo os próprios fabricantes de HDs não costumam usar o termo "SATA II", já que ele é tecnicamente incorreto. Outra curiosidade é que muitas placas-mãe antigas, equipadas com controladoras SATA 150 (como as baseadas no chipset VIA VT8237 e também nas primeiras revisões dos chipsets SiS 760 e SiS 964), apresentam problemas de compatibilidade com HDs SATA 300. Por causa disso, a maioria dos HDs atuais oferecem a opção de usar um "modo de compatibilidade" (ativado através de um jumper), onde o HD passa a se comportar como um dispositivo SATA 150, de forma a garantir a compatibilidade. Veja as instruções impressas na etiqueta de um HD da Samsung: Inicialmente, os HDs e as placas-mãe com interfaces SATA eram mais caros, devido ao tradicional problema da escala de produção. Todo novo produto é inicialmente mais caro que a geração anterior simplesmente porque a produção é menor. A partir do momento em que ele passa a ser produzido em quantidade, o preço cai, até o ponto em que a geração anterior é descontinuada. A partir do momento em que os HDs SATA se popularizaram, o preço caiu em relação aos IDE. Atualmente os HDs IDE são produzidos em escala cada vez menor e por isso se tornaram mais caros e mais difíceis de encontrar do que os HDs SATA. No caso dos micros antigos, uma opção é instalar uma controladora SATA. As mais baratas, com duas portas e em versão PCI, já custam menos de 20 dólares no exterior e tendem a cair de preço também por aqui, tornando-se um item acessível, assim como as antigas controladoras USB em versão PCI, usadas na época dos micros Pentium 1 sem interfaces USB nativas. Note que o uso do barramento PCI limita a velocidade da controladora a 133 MB/s (um pouco menos na prática, já que o barramento PCI é compartilhado com outros dispositivos), mas isso não chega a ser um problema ao utilizar apenas um ou dois HDs. 446
  • 447. Controladora SATA com duas portas Existem ainda conversores (chamados de bridges), que permitem ligar um HD IDE diretamente a uma porta SATA. Eles podem vir a se tornar um item relativamente comum, já que as interfaces IDE estão progressivamente caindo em desuso e deixando de ser incluídas em placas novas. Bridge IDE > SATA, que permite instalar um HD IDE em uma porta SATA Com o lançamento do SATA, os HDs e as controladoras IDE/ATA passaram a ser chamadas de "PATA", abreviação de "Parallel ATA", ressaltando a diferença. SCSI As controladoras SCSI (pronuncia-se "iscâzi") são as tradicionais concorrentes das interfaces IDE. O primeiro padrão SCSI (SCSI 1) foi ratificado em 1986, na mesma época em que os primeiros HDs IDE chegaram ao mercado, e consistia em controladoras de 8 bits, que operavam a 5 MHz, oferecendo um barramento de dados de até 5 MB/s 447
  • 448. Em 1990, foi lançado o padrão Wide SCSI (SCSI 2). A freqüência continuou a mesma, mas as controladoras passaram a utilizar um barramento de 16 bits, o que dobrou a taxa de transmissão, que passou a ser de 10 MB/s. Em seguida surgiram os padrões Fast SCSI (8 bits) e Fast Wide SCSI (16 bits), que operavam a 10 MHz e ofereciam taxas de transferência de, respectivamente, 10 MB/s e 20 MB/s. A partir daí, surgiram os padrões Ultra SCSI (8 bits, 20 MHz = 20 MB/s), Wide Ultra SCSI (16 bits, 20 MHz = 40 MB/s), Ultra2 SCSI (8 bits, 40 MHz = 40 MB/s) e Wide Ultra2 SCSI (16 bits, 40 MHz = 80 MB/s). Veja que até a evolução foi bastante previsível, com um novo padrão simplesmente dobrando a freqüência e, conseqüentemente, a taxa de transferência do anterior. Nesse ponto o uso de controladoras de 8 bits foi abandonado e surgiram os padrões Ultra160 SCSI, onde a controladora opera a 40 MHz, com duas transferências por ciclo, resultando em um barramento de 160 MB/s e o Ultra 320 SCSI, que mantém as duas transferências por ciclo, mas aumenta a freqüência para 80 MHz, atingindo 320 MB/s. Controladora de 8 Bits Controladora de 16 Bits Modelo (Narrow SCSI) (Wide SCSI) SCSI 1 5 MB/s 10 MB/s Fast SCSI (SCSI-2) 10 MB/s 20 MB/s Ultra SCSI (SCSI-3) 20 MB/s 40 MB/s Ultra2 SCSI (SCSI-4) 40 MB/s 80 MB/s Ultra160 SCSI - 160 MB/s Ultra320 SCSI - 320 MB/s Além da diferença na velocidade, as antigas controladoras de 8 bits permitiam a conexão de apenas 7 dispositivos, enquanto as atuais, de 16 bits, permitem a conexão de até 15. Diferentemente do que temos em uma interface IDE, onde um dispositivo é jumpeado como master e outro como slave, no SCSI os dispositivos recebem números de identificação (IDs) que são números de 0 a 7 (nas controladoras de 8 bits) ou de 0 a 15 nas de 16 bits. Um dos IDs disponíveis é destinado à própria controladora, deixando 7 ou 15 endereços disponíveis para os dispositivos. O ID de cada dispositivo é configurado através de uma chave ou jumper, ou (nos mais atuais), via software. A regra básica é que dois dispositivos não podem utilizar o mesmo endereço, caso contrário você tem um conflito similar ao que acontece ao tentar instalar dois HDs jumpeados como master na mesma porta IDE. 448
  • 449. A maioria dos cabos SCSI possuem apenas 3 ou 4 conectores, mas existem realmente cabos com até 16 conectores, usados quando é realmente necessário instalar um grande número de dispositivos: Cabo SCSI para três dispositivos No barramento SCSI temos também o uso de terminadores, que efetivamente "fecham" o barramento, evitando que os sinais cheguem à ponta do cabo e retornem na forma de interferência. Na maioria dos casos, o terminador é encaixado no dispositivo, mas em alguns basta mudar a posição de uma chave. Também existem casos de cabos que trazem um terminador pré- instalado na ponta. Terminadores SCSI Note que estou usando o termo "dispositivos" e não "HDs", pois (embora raro hoje em dia) o padrão SCSI permite a conexão de diversos tipos de dispositivos, incluindo CD-ROMs, impressoras, scanners e unidades de fita. 449
  • 450. Os gravadores de CD SCSI foram populares nos anos 90, pois o barramento SCSI oferece transferências mais estáveis que as antigas portas ATA-2 e ATA- 3, usadas até então. Naquela época ainda não existia burn-free, de forma que qualquer interrupção no fluxo de dados causava a perda da mídia. Com o surgimento das interfaces IDE com suporte a UDMA, a briga se equilibrou e os gravadores de CD IDE invadiram o mercado. As impressoras e scanners SCSI também ganharam algumas batalhas, mas acabaram perdendo a guerra para os dispositivos USB. As unidades de fita já foram o meio mais popular para fazer backup de grandes quantidades de dados, utilizando as famosas fitas DAT. Como a fita precisa ser gravada e lida seqüencialmente, o mais comum é gerar um arquivo compactado em .tar.gz, .tar.bz2, ou mesmo em .rar, contendo todos os arquivos do backup e gravá-lo na fita, de forma seqüencial. Um arquivo muito grande pode ser dividido em vários volumes e gravado em fitas separadas. O grande problema é que é preciso ler e descompactar todo o arquivo para ter acesso aos dados. O problema com as unidades de fita é que, embora as fitas sejam relativamente baratas, as unidades de gravação são vendidas a preços salgados. Conforme os HDs foram crescendo em capacidade e caindo em custo, eles passaram a oferecer um custo por megabyte mais baixo, fazendo com que os sistemas RAID e servidores de backup se popularizassem roubando o mercado das unidades de fita. Um drive VXA-320 da Exabyte, por exemplo, custa (em Julho de 2007), US$ 1.250 e utiliza fitas de apenas 160 GB. É comum que os fabricantes dobrem a capacidade, dizendo que as fitas armazenam "320 GB comprimidos", mas a taxa de compressão varia de acordo com o tipo de dados. A velocidade de gravação também é relativamente baixa, em torno de 12 MB/s (cerca de 43 GB reais por hora), e cada fita custa US$ 80, o que dá um custo de US$ 0.50 por GB. Como hoje em dia um HD de 300 GB custa (no Brasil) menos de R$ 250, a unidade de fita simplesmente perde em todos os quesitos, incluindo confiabilidade e custo por megabyte. Ao invés de utilizar a unidade de fita, acaba sendo mais prático, rápido e barato fazer os backups usando HDs externos. 450
  • 451. VXA-320 da Exabyte, unidade de fita em versão SCSI Chegamos então na questão dos cabos. O SCSI permite tanto a conexão de dispositivos internos quanto de dispositivos externos, com o o uso de cabos e conectores diferentes para cada tipo. As controladoras de 8 bits utilizam cabos de 50 vias, enquanto que as 16 bits utilizam cabos de 68 vias. Este da foto é um HD Ultra320 SCSI, que utiliza o conector de 68 pinos: As controladoras SCSI são superiores às interfaces IDE em quase todos os quesitos, mas perdem no mais importante, que é a questão do custo. Como a história da informática repetidamente nos mostra, nem sempre o padrão mais rápido ou mais avançado prevalece. Quase sempre um padrão mais simples e barato, que consegue suprir as necessidades básicas da maior parte dos usuários, acaba prevalecendo sobre um padrão mais complexo e caro. 451
  • 452. De uma forma geral, o padrão IDE tornou-se o padrão nos desktops e também nos servidores e estações de trabalho de baixo custo, enquanto o SCSI tornou- se o padrão dominante nos servidores e workstations de alto desempenho. Em volume de vendas, os HDs SCSI perdem para os IDE e SATA numa proporção de mais de 30 para 1, mas ainda assim eles sempre representaram uma fatia considerável do lucro líquido dos fabricantes, já que representam a linha "premium", composta pelos HDs mais caros e de mais alto desempenho. Até pouco tempo, era comum que novas tecnologias fossem inicialmente usadas em HDs SCSI e passassem a ser usadas em HDs IDE depois de ficarem mais baratas. Isso acontecia justamente por causa do mercado de discos SCSI, que prioriza o desempenho muito mais do que o preço. Hoje em dia isso acontece com relação aos HDs SATA e SAS (veja a seguir). Além do custo dos HDs, existe também a questão da controladora. Algumas placas-mãe destinadas a servidores trazem controladoras SCSI integradas, mas na grande maioria dos casos é necessário comprar uma controladora separada. As controladoras Ultra160 e Ultra320 seriam subutilizadas caso instaladas em slots PCI regulares (já que o PCI é limitado a 133 MB/s), de forma que elas tradicionalmente utilizam slots PCI-X, encontrados apenas em placas para servidores. Isso significa que mesmo que você quisesse, não poderia instalar uma controladora Ultra320 em seu desktop. Apenas mais recentemente passaram a ser fabricadas controladoras PCI-Express. Controladora SCSI Ultra320 Como de praxe, vale lembrar que a velocidade da interface não corresponde diretamente à velocidade dos dispositivos a ela conectados. Os 320 MB/s do Ultra320 SCSI, por exemplo, são aproveitados apenas ao instalar um grande número de HDs em RAID. 452
  • 453. Existem muitas lendas com relação ao SCSI, que fazem com que muitos desavisados comprem interfaces e HDs obsoletos, achando que estão fazendo o melhor negócio do mundo. Um HD não é mais rápido simplesmente por utilizar uma interface SCSI. É bem verdade que os HDs mais rápidos, de 15.000 RPM, são lançados apenas em versão SCSI, mas como os HDs ficam rapidamente obsoletos e têm uma vida útil limitada, faz muito mais sentido comprar um HD SATA convencional, de 7.200 ou 10.000 RPM, do que levar pra casa um HD SCSI obsoleto, com 2 ou 3 anos de uso. SAS Com a introdução do Serial ATA, o barramento SCSI perdeu grande parte de seus atrativos, já que o SATA oferece uma grande parte das vantagens que antes eram atribuídas ao SCSI e, ao mesmo tempo, oferece um sistema de cabeamento mais simples. Para preencher a lacuna, surgiu o SAS (Serial Attached SCSI), um barramento serial, muito similar ao SATA em diversos aspectos, que adiciona várias possibilidades interessantes voltadas para o uso em servidores. Ele preserva o mesmo conjunto de comandos e é por isso compatível a nível de software. Não estou falando aqui do Windows e de programas como os que utilizamos em desktops, mas sim de aplicativos personalizados, complexos e caros, utilizados em grandes servidores. Assim como o SCSI conviveu com o padrão IDE por mais de duas décadas, o SAS está destinado a concorrer com o SATA, com cada um entrincheirado em seu respectivo nicho: o SATA nos micros domésticos e servidores de baixo custo e o SAS em servidores maiores e estações de trabalho. As versões iniciais do SAS suportavam taxas de transferência de 150 e 300 MB/s. Recentemente foi introduzido o padrão de 600 MB/s e passou a ser desenvolvido o padrão seguinte, de 1.2 GB/s. A evolução é similar à do padrão SATA (note que as velocidades são as mesmas), porém o SAS tende a ficar sempre um degrau acima. A maior velocidade é necessária, pois o SAS permite o uso de extensores (expanders), dispositivos que permitem ligar diversos discos SAS a uma única porta. Existem dois tipos de extensores SAS, chamados de "Edge Expanders" e "Fanout Expanders". Os Edge Expanders permitem ligar até 128 discos na mesma porta, enquanto os Fanout Expanders permitem conectar até 128 Edge Expanders (cada um com seus 128 discos!), chegando a um limite teórico de até 16.384 discos por porta SAS. Este recurso foi desenvolvido pensando sobretudo nos servidores de armazenamento. Com a popularização dos webmails e outros serviços, o armazenamento de grandes quantidades de dados tornou-se um problema. Não estamos falando aqui de alguns poucos gigabytes, mas sim de vários terabytes ou mesmo petabytes de dados. Imagine o caso do Gmail, por exemplo, onde temos vários milhões de usuários, cada um com mais de 2 GB de espaço disponível. 453
  • 454. Os extensores SAS normalmente possuem a forma de um gabinete 1U ou 2U, destinados a serem instalados nos mesmos hacks usados pelos próprios servidores. Em muitos, os discos são instalados em gavetas removíveis e podem ser trocados "a quente" (hotswap), com o servidor ligado. Isto permite substituir rapidamente HDs defeituosos, sem precisar desligar o servidor: Gabinete 1U com HDs SAS removíveis Nesses casos, seria utilizado um sistema RAID, onde parte do espaço e armazenamento é destinado a armazenar informações de redundância, que permitem restaurar o conteúdo de um HD defeituoso assim que ele é substituído, sem interrupção ou perda de dados. Ao contrário das controladoras RAID de baixo custo, encontradas nas placas-mãe para desktop, que executam suas funções via software, as controladoras SAS tipicamente executam todas as funções via hardware, facilitando a configuração (já que deixa de ser necessário instalar drivers adicionais) e oferecendo um maior desempenho e flexibilidade. Outra pequena vantagem é que o SAS permite o uso de cabos de até 6 metros, contra apenas 1 metro no SATA. A maior distância é necessária ao conectar um grande número de extensores, já que eles são grandes, e os últimos tendem a ficar fisicamente afastados do servidor. As controladoras SAS incluem normalmente 4 ou 8 portas e são instaladas num slot PCI-X, ou PCI Express. Nada impede também que você instale duas ou até mesmo três controladoras no mesmo servidor caso precise de mais portas. Algumas placas-mãe destinadas a servidores já estão vindo com controladoras SAS onboard, reduzindo o custo. 454
  • 455. Controladora SAS Assim como a maioria das controladoras SAS, esta controladora Adaptec da foto utiliza um único conector SFF 8484, em vez de 4 conectores separados. Ele simplifica um pouco a instalação, mas na prática não muda muita coisa, pois o conector dá origem aos 4 cabos separados da mesma forma: Conector SFF 8484 Um detalhe interessante é que o padrão SAS oferece compatibilidade retroativa com os HDs SATA, permitindo que você use HDs SATA convencionais como uma forma de cortar custos, sem ter que abrir mão da possibilidade de usar os extensores. A relação, entretanto, não é recíproca: embora o conector seja o mesmo, HDs SAS não são reconhecidos caso instalados numa porta SATA convencional, pois eles utilizam comandos específicos, que vão bem além do conjunto suportado pelas controladoras SATA. 455
  • 456. De qualquer forma, os HDs SAS são mais caros e não oferecem vantagens em termos de desempenho, de forma que você dificilmente iria querer utilizar um em seu desktop, de qualquer forma. O principal diferencial é que eles são certificados para operação contínua e possuem garantias maiores, geralmente de 5 anos. Conectores de um HD SAS A maior parte dos HDs de alto desempenho, com rotação de 15.000 RPM, que antes só existiam em versão SCSI, estão sendo lançados também em versão SAS. Nos próximos anos é de se esperar que o SAS substitua gradualmente o SCSI, assim como o SATA já substituiu o IDE quase que completamente nos micros novos. Não existe nada de fundamentalmente diferente que impeça que estes drives de alto desempenho sejam lançados também em versão SATA, o problema reside unicamente na questão da demanda. Por serem caros e possuírem capacidades reduzidas (devido ao uso de discos de 2.5"), os HDs de 15.000 RPM acabam não sendo muito adequados para o público doméstico. Você dificilmente pagaria R$ 1500 por um HD de 73 GB (como o Seagate Cheetah 15K.4), por mais rápido que ele fosse, quando pode comprar um HD SATA de 300 GB por menos de R$ 250. Essa brutal diferença de custo acaba sendo justificável apenas no mercado de servidores de alto desempenho e workstations, onde, literalmente, "tempo é dinheiro". As barreiras de 8 GB e 128 GB Ao longo da evolução dos micros PCs, existiram vários limites de capacidade dos HDs, causados por limitações nos endereços usados pelos BIOS e limitações por parte dos drivers e sistemas operacionais. Instalar um HD IDE de grande capacidade em um micro antigo pode ser bastante frustrante, com o BIOS da placa reconhecendo apenas os primeiros 504 MB ou os primeiros 7.88 GB do HD, e o sistema operacional se recusando a carregar depois de instalado. Estas limitações surgiram devido à falta de visão por parte dos projetistas que desenvolveram o padrão IDE e as instruções INT 13h do BIOS, as 456
  • 457. responsáveis pelo acesso ao HD. Elas foram originalmente desenvolvidas para serem usadas pelo PC AT (baseado no 286), mas acabaram sendo perpetuadas até os dias de hoje. Naquela época, HDs com mais de 504 MB pareciam uma realidade muito distante. Ao formatar o HD, ele é dividido em clusters, que são a menor parcela do disco endereçada pelo sistema de arquivos. Cada cluster pode ter de 512 bytes a 32 KB, de acordo com o sistema de arquivos e as opções usadas durante a formatação. Entretanto, num nível mais baixo, os setores do HD precisam ser endereçados diretamente. Cada setor possui apenas 512 bytes, de forma que é necessária uma grande quantidade de endereços para endereçá-los individualmente. O padrão IDE reserva 16 bits para o endereçamento dos cilindros (65,536 combinações), 4 bits para o endereçamento das cabeças de leitura (16 combinações) e 8 bits para os setores dentro de cada cilindro (256 combinações), o que permite endereçar um total de 256 milhões de setores. Como cada setor tem sempre 512 bytes, teríamos, a princípio, suporte a HDs de até 128 GB. Entretanto, o BIOS possui outras limitações para o acesso a discos (serviço chamado de INT 13h), reservando 10 bits para o endereçamento dos cilindros (1,024 combinações), 8 bits para as cabeças de leitura (256) e apenas 6 bits para os setores (63 combinações, pois o endereço 0 é reservado), o que permite endereçar 1.61 milhões de setores e conseqüentemente discos de até 7.88 GB. Como é preciso usar tanto a interface IDE quanto as instruções INT 13h do BIOS, acabamos por juntar os dois conjuntos de limitações. O padrão IDE reserva 16 bits para o endereçamento dos cilindros, porém o BIOS só utiliza 10. O BIOS por sua vez reserva 8 bits para o endereçamento das cabeças de leitura, porém só pode utilizar 4 por limitações da interface. A capacidade de endereçamento então acaba sendo nivelada por baixo, combinando as limitações de ambos os padrões, permitindo endereçar discos de no máximo 504 MB, limite para a maioria dos micros 486 ou inferiores. Este método de endereçamento é chamado de Normal ou CHS (cilindro, cabeça de leitura e setor). Veja a representação na tabela: 457
  • 458. Cabeça de Capacidade Limitações Cilindro Setor leitura máxima 16 bits 4 bits 8 bits Interface IDE 128 GB (65.536 (16 (256 combinações) combinações) combinações) 10 bits 8 bits 6 bits INT 13h 7.88 GB (BIOS) (1024 (256 (63 combinações) combinações) combinações) Combinação 10 bits 4 bits 6 bits 504 MB de ambos Essa configuração é apenas lógica, o modo como o BIOS enxerga o disco rígido não tem necessariamente relação com a organização real do HD. A placa lógica de um HD de 504 MB pode dizer que tem 16 cabeças leitura e 63 setores por cilindro de forma a utilizar todos os endereços disponibilizados pelo BIOS, mas internamente endereçar os setores de forma diferente. Na prática não faz muita diferença, desde que cada setor receba uma identificação única. Na época do 286, onde eram usados HDs de no máximo 20 ou 40 MB, este limite não incomodava ninguém; mas a partir do momento em que passamos a ter HDs de 800 MB ou mais, alguma coisa precisava ser feita. A primeira solução foi o Extended CHS ou modo Large. Este padrão continua com as mesmas limitações da interface IDE e do INT 13, mas usa um pequeno truque para burlar suas limitações. O BIOS possui mais endereços para as cabeças de leitura (256 contra 16), porém a interface IDE possui mais endereços para os cilindros (65.536 contra 1024). Usando o modo Large passamos a utilizar um tradutor, um pequeno software integrado ao BIOS, que se encarrega de converter os endereços. A conversão é feita usando um simples fator multiplicativo: a interface IDE permite mais endereços para o cilindro, mas ao mesmo tempo permite menos endereços para a cabeça de leitura, podemos então aplicar a tradução de endereços dividindo o número de endereços do cilindro e multiplicando os endereços para cabeças de leitura pelo mesmo número. Podem ser usados os números 2, 4, 8 e 16. Se, por exemplo, instalássemos um drive com uma geometria lógica de 3,068 cilindros, 16 cabeças e 63 setores, usando o fator 4, passaríamos a ter 3.086 / 4 = 767 cilindros, 16 x 4 = 64 cabeças e 63 setores. Com isso os valores ficariam dentro dos limites do BIOS e o HD poderia ser acessado sem problemas: 458
  • 459. Cabeças de Cilindros Setor Capacidade leitura Geometria lógica do 3,068 16 63 1.5 GB disco Geometria traduzida para 3,068 / 4 = 767 16 x 4 = 64 63 1.5 GB o BIOS Limites do 1024 256 63 7.88 GB BIOS O modo Large nunca foi muito utilizado, pois logo depois surgiu uma solução bem melhor para o problema, conhecida como modo LBA, contração de "Logical Block Addressing" ou endereçamento lógico de blocos. A idéia é a seguinte: o padrão IDE reserva 16 bits para o endereçamento do cilindro, 4 bits para o endereçamento da cabeça de leitura e mais 8 bits para o setor, totalizando 28 bits de endereçamento. O modo LBA abandona o endereçamento CHS, com endereços independentes para cilindros, cabeças e setores, passando a adotar um endereço único. Os setores passam então a receber endereços seqüenciais, 0, 1, 2, 3, 4 etc. assim como os clusters no sistema FAT. Os 28 bits de endereçamento permitem então 228 milhões de endereços, o que corresponde a HDs de até 128 GB (137 GB na notação decimal). Claro que para usar o LBA é preciso que o disco rígido suporte este modo de endereçamento. Felizmente, praticamente todos os HDs acima de 504 MB e todos os HDs atuais suportam o LBA. Na verdade, o modo Large só deve ser usado nos raríssimos casos de HDs com mais de 504 MB, que por ventura não suportem o LBA. Veja que para endereçar os 128 GB permitidos pelo LBA, é preciso abandonar o uso das instruções INT 13h, o que significa desenvolver novas instruções de acesso a disco para o BIOS. A primeira geração de placas-mãe a utilizar o modo LBA (fabricadas até 1999) ainda estavam presas às instruções INT 13h e por isso continuavam limitadas a HDs de 7.88 GB (8.4 GB decimais). Em muitas das placas fabricadas entre 1998 e 1999 é possível solucionar o problema através de um upgrade de BIOS. O maior problema no caso é encontrar os arquivos de atualização, já que os fabricantes não costumam dar suporte a placas tão antigas. As placas fabricadas a partir daí incluem as "INT 13h Extensions", ou seja, extensões para o conjunto original, que permitem bipassar as limitações e acessar HDs de até 128 GB, como previsto pelo padrão IDE. Naturalmente, não demorou para que este limite também se tornasse um problema. A solução definitiva veio em 2001, juntamente com a introdução das interfaces ATA/100 (ATA-6), onde foi incluída uma extensão para os endereços disponíveis. Passaram a ser usados 48 bits para o endereçamento, no lugar dos 28 anteriores, resultando em uma capacidade de endereçamento 459
  • 460. 1.048.576 vezes maior. A extensão foi rapidamente adotada pelos fabricantes, de forma que praticamente todas as placas fabricadas a partir do final de 2001 já são capazes de endereçar HDs IDE de grande capacidade normalmente. Para os casos de placas antigas que não possuam upgrades de BIOS disponíveis, existe um conjunto de soluções criativas que podem ser usadas. Normalmente, o valor dessas placas é muito baixo, de forma que normalmente você não vai querer perder muito tempo com elas. Mesmo assim, é interessante conhecer as possibilidades, mesmo que apenas para referência histórica. A primeira é instalar um DDO (Dynamic Drive Overlay), um software tradutor, instalado no primeiro setor do HD, que passa a ser carregado no início do boot, antes do carregamento do sistema operacional. O DDO bipassa as instruções do BIOS, permitindo superar suas limitações. A Ontrack comercializa o "Disk Go!", que funciona com HDs de qualquer fabricante. O problema é que ele é um programa comercial, enquanto as versões dos fabricantes são gratuitas. Usar um driver de Overlay traz várias desvantagens: eles não são compatíveis com muitos programas de diagnóstico e não permitem o uso dos drivers de Bus Mastering, o que prejudica a performance do HD e do sistema como um todo. Também temos problemas com muitos boot managers, dificultando a instalação de mais de um sistema operacional no mesmo HD. Uma segunda solução é simplesmente desativar as portas IDE da placa-mãe e passar a usar uma interface IDE externa. Elas permitem também instalar portas ATA/100 ou ATA/133 em placas que contam apenas com interfaces ATA/33, que limitam o desempenho dos HDs atuais. A grande maioria também oferece a possibilidade de usar RAID: 460
  • 461. Controladora IDE externa, em versão PCI Quando lançadas, estas placas eram relativamente caras, custando por volta de US$ 50 no exterior. Mas, como todo equipamento antigo, você pode achá- las hoje em dia por preços muito baixos nos sites de leilão. Note que estas limitações aplicam-se apenas a HDs IDE. Elas não existem no caso de HDs SCSI e SATA, que utilizam padrões diferentes de endereçamento. Mais uma limitação de capacidade, essa um pouco mais rara, é a limitação de 32 GB que atinge algumas placas-mãe com BIOS da Award, fabricadas entre 1998 e 1999. Essas placas possuem um bug na implementação do LBA, que limita os endereços a 65.535 cilindros, 16 cabeças e 63 setores, o que equivale a 31.5 GB (33.8 GB decimais). Como essas placas bugadas representaram um volume considerável das placas vendidas durante este período, muitos HDs IDE suportam a opção "Cap Limit", que é acionada ao colocar o jumper traseiro em uma posição especificada: 461
  • 462. Ao ativar a opção, a placa lógica reporta ao BIOS que o HD tem apenas 31.5 GB. Você perde o acesso ao restante da capacidade do disco, mas pelo menos ele passa a ser acessado. Concluindo, além das limitações por parte do BIOS, temos ainda algumas limitações adicionais por parte dos sistemas operacionais. O MS-DOS (todas as versões), além da primeira versão do Windows 95 e outros sistemas antigos ainda estão presos às instruções INT 13h originais, de forma que não são capazes de acessar HDs com mais de 7.88 GB, mesmo que por ventura sejam instalados numa placa atual. Como eles também suportam apenas FAT16, você precisa dividir o HD em 4 (ou mais) partições, de até 2 GB cada. O Windows 95 OS/2 inclui um driver ligeiramente atualizado, que permite o endereçamento de HDs com até 32 GB e também a possibilidade de usar partições formatadas em FAT32, removendo o limite de 2 GB por partição. A versão original do Windows XP não inclui suporte ao padrão LBA de 48 bits e por isso não é capaz de acessar HDs IDE com mais de 128 GB (137 GB decimais). Neste caso a limitação diz respeito ao sistema operacional e por isso ocorre mesmo ao usar uma placa-mãe recente. Este problema foi corrigido com o SP1, por isso basta atualizar o sistema, ou já instalar diretamente usando uma mídia de instalação com o SP2. No caso do Windows 2000, o problema foi corrigido a partir do SP3. No caso do Linux, não existem limitações com relação ao sistema operacional, que é capaz de endereçar o HD corretamente independentemente do BIOS. Apesar disso, você pode ter problemas para iniciar o sistema em placas antigas, com a limitação dos 7.88 GB, já que se o BIOS não reconhece corretamente o HD, não consegue iniciar o carregamento do sistema. A grande maioria das distribuições atuais utiliza o grub como gerenciador de boot. Se, ao instalar, você receber o famoso "erro 18" do grub durante o boot, significa que você está usando uma placa atingida pelo problema. Nesses casos, a solução é reparticionar o HD, de forma que o sistema seja instalado em uma partição de no máximo 7.88 GB, colocada logo no início do disco. Como a partição está dentro do limite visto pelo BIOS, o sistema é 462
  • 463. carregado normalmente e, dentro do Linux, o HD passa a ser acessado diretamente, bipassando as limitações do BIOS. O sistema passa então a ver o restante do disco normalmente e pode usar o restante do espaço para criar outras partições e guardar arquivos. O problema é apenas o boot. RAID Devido à sua natureza mecânica, o HD é um dos componentes mais lentos de qualquer PC. Embora o desempenho venha crescendo de forma incremental a cada nova geração, os ganhos não têm acompanhado o aumento na capacidade de armazenamento. Ler todos os dados armazenados num HD atual, de 1 TB, demora muito mais tempo do que num HD antigo, de 40 GB, por exemplo. Ao invés de criar HDs muito rápidos, ou com um número muito grande de discos (e conseqüentemente com uma maior capacidade), os fabricantes de HDs se especializaram em fabricar modelos padronizados, utilizando um único braço de leitura e de 1 a 4 platters, fabricados em grande quantidade e a um custo relativamente baixo. Para quem precisa de HDs mais rápidos, ou com uma capacidade muito maior, a melhor opção é montar um sistema RAID, onde é possível somar a capacidade e o desempenho de vários HDs, ou então sacrificar parte do espaço de armazenamento em troca de mais confiabilidade. O termo RAID significa "Redundant Array of Inexpensive Disks", indicando justamente o uso de HDs padronizados e baratos como "blocos de montagem" para a criação de sistemas que se comportam como um único disco, maior, mais rápido e/ou mais confiável do que suas peças individuais. Os modos de operação Um dos grandes atrativos do RAID é a possibilidade de escolher entre diferentes modos de operação, de acordo com a relação capacidade/desempenho/confiabilidade que você pretende atingir. As opções básicas são: RAID 0 (Striping): O RAID 0 é um "RAID pra inglês ver", onde o objetivo é unicamente melhorar o desempenho, sacrificando a confiabilidade. Ao usar o RAID 0, todos os HDs passam a ser acessados como se fossem um único drive. Ao serem gravados, os arquivos são fragmentados nos vários discos, permitindo que os fragmentos possam ser lidos e gravados simultaneamente, com cada HD realizando parte do trabalho. Usando RAID 0 a performance fica em um patamar próximo da velocidade de todos os HDs somada. Ao usar 4 HDs com uma taxa de transferência e 50 MB/s (em leituras seqüenciais) em RAID 0, você teria uma taxa de transferência total de quase 200 MB/s em muitas situações. 463
  • 464. Na verdade, a distribuição dos dados nos drives não é completamente uniforme. Os arquivos são divididos em fragmentos de tamanho configurável (opção "chunk size", ou "stripe size"). Se você está utilizando 3 HDs em RAID 0, utilizando fragmentos de 32 KB, por exemplo, ao gravar um arquivo de 80 KB teríamos fragmentos de 32 KB gravados nos dois primeiros HDs e os 16 KB finais seriam gravados no terceiro, sendo que os 16 KB que "sobraram" no terceiro HD ficariam como espaço desperdiçado. A configuração do stripe size, ou seja, do tamanho dos fragmentos, tem um efeito considerável sobre o desempenho. Se você usa predominantemente arquivos grandes, então um stripe size de 64 KB ou mais renderá os melhores resultados. Entretanto, no caso de um servidor que manipula um grande volume de arquivos pequenos, valores mais baixos acabam resultando em um melhor desempenho e menos espaço desperdiçado. Ao criar um array com 4 HDs de 500 GB em RAID 0, você teria um espaço total de armazenamento de 2 TB, onde toda a capacidade é dedicada ao armazenamento de dados, sem redundância: HD 1 HD 2 HD 3 HD 4 Dados Dados Dados Dados O problema é que cada HD armazena apenas fragmentos de cada arquivo e não arquivos completos. Por causa dessa peculiaridade, caso qualquer um dos HDs apresente defeito, você simplesmente perde todos os dados. O RAID 0 é possivelmente o mais usado em desktops e também em alguns servidores de alto desempenho. Ele é a melhor opção caso você queira o melhor desempenho possível e tenha como manter um backup atualizado dos dados gravados. Assim como em outros modos RAID, não é realmente obrigatório usar HDs idênticos, mas isso é fortemente aconselhável, pois tanto a capacidade quanto o desempenho ficam limitados à capacidade do HD mais lento. Ao utilizar um HD de 500 GB e outro de 300 GB em RAID 0, o sistema ignora os últimos 200 GB do HD maior, de forma que você acaba ficando com um total de 600 GB disponíveis. Os acessos também precisam ser sincronizados, de forma que ao utilizar um HD com taxa de transferência máxima de 50 MB/s, em conjunto com 30 MB/s, você acaba tendo um máximo de 60 MB/s. Ou seja, utilizar dois HDs diferentes é possível, mas geralmente não é um bom negócio. RAID 1 (Mirroring): Este modo permite usar dois HDs, sendo que o segundo armazenará uma imagem idêntica do primeiro. Na pratica, será como se você 464
  • 465. tivesse apenas um disco rígido instalado, mas caso o disco titular falhe por qualquer motivo, você terá uma cópia de segurança armazenada no segundo disco. Este é o modo ideal se você deseja aumentar a confiabilidade do sistema. Também é possível utilizar RAID 1 com quatro ou mais discos (desde que seja utilizado sempre um número par). Nesse caso, um dos discos de cada par é visto pelo sistema como um HD separado e o outro fica oculto, guardando a cópia atualizada do primeiro. Ao utilizar 4 HDs de 500 GB em RAID 1, por exemplo, o sistema enxergaria 2 HDs, de 500 GB cada um: HD 1 HD 2 HD 3 HD 4 Dados Cópia (mirror) Dados Cópia (mirror) Usar RAID 1 não proporciona qualquer ganho de desempenho. Pelo contrário, ele acaba causando uma pequena perda em comparação com usar um único drive, já que todas as alterações precisam ser duplicadas e realizadas em ambos os drives. Caso um dos HDs titulares falhe, o segundo entra em ação automaticamente, substituindo-o até que você possa substituir o drive. Uma dica é que, ao fazer RAID 1 utilizando discos IDE, procure colocar um em cada uma das duas interfaces IDE da placa, isto melhorará o desempenho. Outro ponto é que caso os dois discos estejam na mesma interface, como master e slave, você precisa reiniciar o micro caso o primeiro falhe. Usando um em cada interface, a controladora fará a troca automaticamente, sem necessidade de reset. Da próxima vez que inicializar o micro você receberá um aviso pedindo para substituir o HD defeituoso. Esse problema não afeta as controladoras SATA, já que nelas cada HD é ligado a uma porta separada, sem a divisão de master/slave como nos HDs IDE. É importante ressaltar que o RAID 1 é um sistema dedicado a aumentar a disponibilidade, evitando que você tenha que desligar seu micro de trabalho ou servidor para restaurar um backup quando o HD falha. Ele não substitui os backups, pois protege apenas contra falhas mecânicas do HD e não contra vírus e arquivos deletados acidentalmente. Assim que os arquivos são apagados no primeiro, a alteração é automaticamente replicada no segundo, fazendo com que ambas as cópias sejam perdidas. Também não existe proteção contra roubo, falhas causadas por raios (os dois HDs podem ser danificados simultaneamente) e assim por diante. 465
  • 466. Particularmente, não recomendo o uso de RAID 1 como proteção contra perda de dados fora dos servidores, pois ele acaba por criar um falso senso de segurança. O principal uso para o RAID 1, ou RAID 5, é aumentar a confiabilidade e o uptime de servidores de rede, já que o servidor continua funcionando como se nada tivesse acontecido, mesmo que um dos HDs pife. Mas, mesmo nos servidores, nada substituiu os backups. Ao invés de usar dois HDs em RAID 1, seus dados estarão mais seguros se você colocar o segundo HD numa gaveta USB e usá-lo para manter backups de todos os arquivos e dados pessoais. Deixe o HD desconectado do PC e, de preferência, guarde-o num local separado ou carregue-o com você. Na maioria das controladoras RAID SCSI e SAS é possível realizar a troca do HD defeituoso "a quente" (recurso chamado de "hot swap"), com o micro ligado, recurso não disponível nas controladoras RAID IDE e SATA. O suporte a hot swap não é tão importante nos PCs domésticos já que um reset não toma mais do que dois ou três minutos do seu tempo, mas, em um servidor de alta disponibilidade, este recurso é essencial para evitar uma pane na rede. RAID 10 (Mirror/Strip): Este modo pode ser usado apenas caso você tenha a partir de 4 discos rígidos e o módulo total seja um número par (6, 8, etc.). Neste modo, metade dos HDs serão usados em modo striping (RAID 0), enquanto a segunda metade armazena uma cópia dos dados dos primeiros, assegurando a segurança. Este modo é na verdade uma combinação do RAID 0 e RAID 1, daí o nome. O ponto fraco é que você sacrifica metade da capacidade total. Usando 4 HDs de 500 GB, por exemplo, você fica com apenas 1 TB de espaço disponível. RAID 5: Este modo é muito utilizado em servidores com um grande número de HDs. Ele utiliza um método bastante engenhoso para criar uma camada de redundância, sacrificando apenas uma fração do espaço total, ao invés de simplesmente usar metade dos HDs para armazenar cópias completas, como no caso do RAID 1. O RAID 5 usa um sistema de paridade para manter a integridade dos dados. Os arquivos são divididos em fragmentos de tamanho configurável e, para cada grupo de fragmentos, é gerado um fragmento adicional, contendo códigos de paridade. Note que, ao invés de reservar um HD inteiro para a tarefa, os códigos de correção são espalhados entre os discos. Dessa forma, é possível gravar dados simultaneamente em todos os HDs, melhorando o desempenho. O RAID 5 pode ser implementado com a partir de 3 discos. Independentemente da quantidade de discos usados, sempre temos sacrificado o espaço equivalente a um deles. Ou seja, quanto maior é a quantidade de discos usados no array, menor é a proporção de espaço desperdiçado. 466
  • 467. Em um sistema com 5 HDs de 500 GB, teríamos 2 TB de espaço disponível e 500 GB de espaço consumido pelos códigos de paridade. Usando 8 HDs teremos 3.5 TB para dados e os mesmos 500 GB para paridade, e assim por diante: HD 1 HD 2 HD 3 HD 4 HD 5 80% dados 80% dados 80% dados 80% dados 80% dados 20% paridade 20% paridade 20% paridade 20% paridade 20% paridade Graças à forma como os bits de paridade são dispostos, é possível recuperar os dados de qualquer um dos HDs que eventualmente falhe. Mais ainda, o sistema pode continuar funcionando normalmente, mesmo sem um dos HDs. A idéia por trás dessa aparente "mágica" é bastante simples. A paridade consiste em adicionar um bit adicional para cada grupo de bits. Ao usar 5 HDs, por exemplo, temos um bit extra para cada 4 bits de dados. Caso dentro destes 4 bits exista um número par de bits 1, então o bit de paridade é 0. Caso exista um número ímpar de bits 1, então o bit de paridade é 1: Bits Paridade 1 0 1 0 0 1 1 1 0 1 0 0 0 0 0 1 0 0 1 0 Veja que, graças ao bit de paridade, é possível saber apenas que, dentro do grupo de 4 bits existe um número par ou ímpar de bits 1. Isso é o suficiente para recuperar qualquer um dos 4 bits que seja perdido, desde que sejam respeitadas duas condições: a) Que apenas um bit de cada grupo seja perdido b) Que se saiba qual dos bits foi perdido No RAID 5 cada um dos bits dentro de cada grupo fica guardado em um dos HDs. Quando um deles é perdido, a controladora sabe exatamente quais bits foram perdidos e tem condições de recuperá-los usando uma verificação muito simples: 467
  • 468. Bits Paridade 1 ? 1 0 0 1 ? 1 0 1 0 ? 0 0 0 1 ? 0 1 0 Na primeira linha temos dois bits 1 e um bit 0. Se o bit de paridade é 0, significa que temos um número par de bits 1. Como já temos dois bits 1, então é claro que o bit que está faltando é um zero. Na segunda linha temos dois bits 1 e um bit 0. Como o bit de paridade é 1, significa que temos um número ímpar de bits 1. Como temos apenas dois, significa que o bit perdido é um bit 1. Como disse, a controladora pode manter o sistema funcionando mesmo sem um dos HDs, realizando estes cálculos em tempo real para obter os dados que estavam armazenados nele. Quando o HD é finalmente substituído, a controladora reescreve todos os dados (usando o mesmo processo) e o sistema volta ao estado original. Existe também a possibilidade de adicionar um ou mais discos sobressalentes num array. Esses HDs "extra" são chamados de hot-spares, ou simplesmente de "spare disks" e são utilizados automaticamente caso algum dos HDs titulares falhe, permitindo que o array seja restaurado imediatamente. Embora o uso de hot-spares não seja muito comum em configurações domésticas, eles são muito comuns em grandes arrays RAID 5 (ou RAID 6) usados em grandes servidores. RAID 6: O ponto fraco do RAID 5 é que ele suporta a falha de um único HD. Se por ventura um segundo HD falhar antes que o primeiro seja substituído, ou antes que a controladora tenha tempo de regravar os dados, você perde tudo, assim como acontece ao perder um dos HDs num array RAID 0. O uso de hot- spares minimiza a possibilidade de um desastre acontecer, mas não a elimina completamente, pois de qualquer forma o sistema fica vulnerável enquanto a controladora está regravando os dados no spare. O RAID 6 é um padrão relativamente novo, suportado por apenas algumas controladoras. Ele é semelhante ao RAID 5, porém usa o dobro de bits de paridade, garantindo a integridade dos dados caso até 2 dos HDs falhem ao mesmo tempo. Ao usar 7 HDs de 500 GB em RAID 6, por exemplo, teríamos 2.5 TB para dados mais 1 TB de códigos de paridade: 468
  • 469. HD 1 HD 2 HD 3 HD 4 HD 5 HD 6 HD 7 71% 71% 71% 71% 71% 71% 71% dados dados dados dados dados dados dados 29% 29% 29% 29% 29% 29% 29% paridade paridade paridade paridade paridade paridade paridade A percentagem de espaço sacrificado decai conforme são acrescentados mais discos, de forma que o uso do RAID 6 vai tornado-se progressivamente mais atrativo. No caso de um grande servidor, com 41 HDs, por exemplo, seria sacrificado o espaço equivalente a apenas dois discos, ou seja, menos de 5% do espaço total. Em troca, ganha-se proteção contra a possibilidade de um segundo HD falhar durante o processo de substituição e reconstrução dos dados do primeiro. Tanto no caso do RAID 5 quanto no RAID 6, o servidor continua funcionando normalmente durante todo o processo de substituição do disco, embora a performance decaia, sobretudo logo depois da substituição do drive defeituoso, quando o sistema precisa regravar os dados, lendo as informações armazenadas em todos os outros discos e fazendo os cálculos de paridade. JBOD: Este não é um modo RAID, mas também é bastante usado, sobretudo em servidores de arquivos. No JBOD (Just a Bunch Of Disks) os HDs disponíveis são simplesmente concatenados e passam a ser vistos pelo sistema como um único disco, com a capacidade de todos somada. Os arquivos são simplesmente espalhados pelos discos, com cada um armazenando parte dos arquivos (nesse caso arquivos completos, e não fragmentos como no caso do RAID 0). No JBOD não existe qualquer ganho de desempenho, nem de confiabilidade. Caso um dos HDs apresente defeito, os arquivos armazenados nele são perdidos, mas os arquivos armazenados nos demais continuam intactos. Na verdade, o único ganho é o de praticidade, com a possibilidade de usar vários discos para formar um único volume de grande capacidade, ao invés de ter que espalhar os arquivos e pastas entre os vários HDs. Ao contrário dos outros modos RAID, não existe nenhum problema em combinar HDs com capacidades e desempenho variados num sistema JBOD. Cada HD pode dar sua parcela de contribuição, independentemente de sua capacidade. As controladoras Existem três categorias de RAID. A primeira é a das controladoras que realizam todas as operações via hardware, o que inclui a maior parte das 469
  • 470. controladoras SCSI e SAS. Esse modo é o ideal tanto do ponto de vista do desempenho quanto do ponto de vista da compatibilidade e confiabilidade, já que a própria controladora executa todas as funções necessárias, de forma independente. O sistema operacional apenas acessa os dados, como se houvesse um único HD instalado. Como disse, estas controladoras RAID "de verdade" são quase que invariavelmente, SCSI ou SAS. Além de trabalharem via hardware, elas permitem o uso de um número maior de drives. Muitas permitem o uso de um ou mais módulos de memória (instalados na própria controladora) que funcionam como um cache adicional, ajudando a melhorar o desempenho do array. Outro recurso cada vez mais utilizado (sobretudo nas controladoras SAS) é o hot swap, onde você pode substituir os discos defeituosos com o sistema rodando. Os servidores com controladoras que suportam hot swap quase sempre utilizam baias removíveis, facilitando o acesso aos discos. Nas controladoras que trabalham via hardware, toda a configuração é feita através do BIOS da placa RAID, que pode ser acessado pressionando uma combinação de teclas durante o boot. O mais comum é pressionar Ctrl+C pouco antes do início do carregamento do sistema. Controladora RAID SCSI Naturalmente, estas controladoras são caras, sem falar no custo dos discos, por isso elas não são o tipo de equipamento que você compraria para instalar no seu desktop. Em seguida, temos o RAID via software, onde todas as funções são executadas diretamente pelo sistema operacional e os HDs são ligados diretamente às interfaces da placa-mãe. Neste caso, temos um trabalho adicional de configuração, mas em compensação não é preciso gastar com 470
  • 471. uma controladora dedicada. É possível criar arrays RAID via software tanto no Linux quanto no Windows 2000, XP, 2003 Server e Vista. No caso do Windows XP, a configuração de RAID via software é feita no Painel de Controle > Ferramentas Administrativas > Gerenciamento do Computador > Gerenciamento de discos. Clique com o botão direito sobre um dos HDs que farão parte do array e selecione a opção "Converter em disco dinâmico". Na tela seguinte, marque todos os HDs que serão usados. Depois de converter os HDs para discos dinâmicos, clique novamente com o botão direito sobre um deles e selecione a opção "Novo Volume". É aberto o assistente que permite criar o array RAID. As versões Home e Professional oferecem apenas as opções de criar arrays RAID 0 (distribuído) ou JBOD (estendido), mas no 2000 ou 2003 Server é possível criar também arrays RAID 1 (Espelhado) e RAID 5, nesse caso utilizando a partir de 3 HDs: O terceiro modo é o fake RAID utilizado pela maioria das controladoras baratas, incluídas nas placas-mãe para desktop. No fake RAID é utilizada uma combinação de funções adicionais no BIOS da placa e um driver que roda pelo sistema operacional. No final, tudo é processado via software, de forma que não existe ganho de desempenho em relação a utilizar RAID via software. Apenas a configuração é simplificada. 471
  • 472. Na maioria das placas-mãe, a configuração segue uma lógica simples. Você começa indicando quais drives farão parte do array através do setup. Em seguida, usa a tecla F10, Ctrl+C, Ctrl+F, ou outra tecla de atalho para acessar as opções de configuração do array RAID, onde você pode escolher que tipo de array será criado, o tamanho dos fragmentos e assim por diante. Na Asus K8N4-E, por exemplo, a opção para ativar o suporte a RAID e indicar quais drives serão usados está escondida na seção "Advanced > Onboard Device Configuration > NVRAID Configuration": A partir daí, o BIOS da controladora RAID passa a ser inicializado durante o boot e você pode acessar a configuração pressionando a tecla "F10" durante o boot. Dentro da configuração, adicione os drives que serão usados no array na coluna da direita e escolha entre usar RAID 1 (Mirroring) ou RAID 0 (Stripping) na opção superior. Você pode ainda ajustar o tamanho dos fragmentos, através da opção "Stripping Block": 472
  • 473. As controladoras fake RAID IDE suportam, via de regra, apenas os modos RAID 0, 1 e 10. Não é recomendável utilizar mais do que um HD por porta IDE, de forma que, numa controladora com duas portas, o ideal é utilizar apenas dois drives, escolhendo entre usar RAID 0 ou RAID 1. Algumas controladoras SATA oferecem a opção de usar RAID 5, nesse caso utilizando um mínimo de 3 drives. Também é possível criar um array RAID 5 via software no Linux (consulte o "software RAID howto", disponível no tldp.org), utilizando tanto HDs IDE quanto drives SATA ou SCSI. Assim como nas controladoras via hardware, as controladoras fake RAID possuem um BIOS próprio (na verdade uma extensão que faz parte do BIOS principal), que permite criar os arrays. Muitas vezes, está disponível também um utilitário acessível através do Windows. Como estas controladoras precisam de um driver adicional, você precisa copiar os arquivos do driver para um disquete e fornecê-lo durante a instalação (pressionando a tecla "F6" quando é exibida a mensagem "Pressione F6 se precisar instalar um driver SCSI ou RAID de TERCEIROS") ao instalar o Windows XP diretamente dentro do array RAID. No caso do Vista, os drivers podem ser carregados a partir de um pendrive. Tanto o XP SP2 quanto o Vista incluem drivers para diversas controladoras, mas naturalmente não para todas. Outro problema é que muitas controladoras fake RAID não possuem suporte no Linux e muitas não possuem sequer drivers para o Vista. Nesse caso, a solução é partir para o RAID via software. Depois de configurar o RAID, é interessante simular a falha de um dos discos para ter certeza de que o sistema reagirá como esperado. A melhor forma é 473
  • 474. simplesmente desligar o micro e desconectar um dos drives. Se você está usando RAID 1, 10 ou 5, o sistema deverá continuar funcionando de forma normal depois de novamente ligado, exibindo avisos durante o boot, ou incluindo entradas no log do sistema (ao utilizar RAID via software). Ao utilizar RAID 0 o sistema simplesmente deixará de dar boot, já que a falha de um dos drives implica na perda de todos os dados. Opções de armazenamento externo A popularização da memória Flash e das redes wireless trouxe algumas novidades interessantes em termos de armazenamento. Antigamente, a opção mais simples para quem queria um HD removível era comprar uma gaveta interna, que era instalada numa baia de CD-ROM e permitia remover o HD depois de desligar o micro. Embora fossem baratas, estas gavetas não eram muito práticas, já que você só podia remover o HD com o micro desligado. Em seguida vieram as gavetas USB, onde o HD externo é visto pelo sistema da mesma forma que um pendrive. Existem tanto gavetas para HDs de 3.5", que utilizam uma fonte externa, quanto gavetas para HDs de notebook, de 2.5" ou 1.8", que obtêm a alimentação necessária da própria porta USB (dependendo do consumo do HD usado é necessário usar um cabo extra, que usa energia de uma segunda porta USB). Graças a elas, você pode transportar algumas centenas de gigabytes com você, a um custo relativamente baixo. As gavetas internas são ligadas diretamente à porta IDE e ao conector molex da fonte. Elas funcionam apenas como uma espécie de ponte, sem incluir nenhum circuito inteligente. É justamente por isso que elas são tão baratas. No 474
  • 475. auge da sua popularidade, essas gavetas chegavam a custar menos de 6 dólares, se compradas em quantidade, no exterior. As gavetas USB são um pouco mais complexas, pois precisam incluir um controlador ATA/USB, que faz a conversão dos sinais, transformando as requisições no padrão usb-storage recebidas através das portas USB em comandos ATAPI que são entendidos pelo HD. Esta gaveta da foto a seguir, por exemplo, usa um chip GL811E (http://www.genesyslogic.com), um chip relativamente barato, que inclui todos os sub-componentes necessários. Além do chip, a placa inclui apenas alguns resistores e um cristal de quartzo: Existem também gavetas para HDs SATA, que seguem o mesmo projeto básico, normalmente mudando apenas o chip controlador (pode-se usar um chip GL811S, por exemplo). Graças a essa simplicidade, estas gavetas são relativamente baratas e por isso bastante populares. As gavetas para HDs de notebook utilizam a energia da própria porta USB, sem a necessidade de uma fonte externa. Cada porta USB pode fornecer apenas 2.5 watts de energia, de forma que as gavetas utilizam duas portas, sendo a segunda apenas para reforçar o fornecimento elétrico. Apesar disso, é comum que a gaveta funcione mesmo ligada a uma única porta. Existem dois motivos para isso: o primeiro é que os HDs de 4200 RPM modernos realmente não consomem muito mais de 2 watts (os de 5200 consomem um pouco mais) e o segundo é que muitas placas-mãe são capazes de fornecer bem mais de 2.5 watts em cada porta USB. Embora este seja o padrão, os fabricantes costumam trabalhar com uma boa margem de tolerância. No caso das gavetas para HDs de 3.5" é utilizada uma fonte externa, já que seriam necessárias 6 ou mais portas USB para conseguir alimentar um HD para desktop (sem falar nos circuitos necessários para converter os 5V 475
  • 476. fornecidos pelas portas USB nos 12V usados pelo motor de rotação do drive). Existem muitos relatos de problemas de estabilidade ao usar gavetas de 3.5" baratas, com o HD travando ou desligando durante a operação, muitas vezes causando corrupções diversas do sistema de arquivos. Dentro da minha experiência eles são normalmente causados por dois fatores. O primeiro são variações de tensão na rede elétrica, que causam o desligamento do circuito controlador, ou do próprio HD. Essas variações normalmente não são suficientes para fazer o micro reiniciar, por causa dos capacitores da fonte de alimentação, mas as gavetas são mais vulneráveis a eles. A solução nesse caso seria ligar a gaveta em um nobreak. O segundo é superaquecimento, que acontece principalmente nas gavetas mais baratas, que não utilizam coolers. Muitas delas são projetadas para trabalharem com HDs de 5400 RPM e por isso superaquecem e travam ao utilizar HDs de 7200 RPM, já que eles consomem mais energia e dissipam mais calor. A solução nesses casos é melhorar a ventilação (assim como você faria num PC), deixando a gaveta aberta, ou mesmo improvisando a instalação de um cooler sobre ela. Veja o que precisei fazer para que esta gaveta da foto funcionasse de forma confiável com um HD Maxtor de 7200 RPM: Naturalmente, esse tipo de improviso só é eventualmente necessário em produtos de baixa qualidade. Fabricantes responsáveis testam seus produtos sob várias condições de uso, ou pelo menos indicam claramente suas limitações nas especificações. Continuando, estamos vendo mais recentemente a popularização de HDs externos em miniatura, que seguem o mesmo princípio das gavetas, mas utilizam um HD de 1.8", não-removível, de forma a criar um conjunto mais mais compacto e leve que uma gaveta para HD de notebook. 476
  • 477. Em outra frente, temos as gavetas eSATA, um padrão de conector SATA externo, que mantém a mesma velocidade de transmissão. As placas mais recentes já estão vindo com conectores eSATA embutidos, mas também é possível utilizar uma controladora PCI Express, ou mesmo PCI. Na foto a seguir, temos a porta eSATA de uma Asus M2V, disponível no painel traseiro, ao lado das 4 portas USB: O eSATA está sendo usado por diversos modelos de gavetas para HD, substituindo ou servindo como opção ao USB. A vantagem é que você não corre o risco do desempenho do HD ser limitado pela interface, já que temos 150 MB/s no eSATA (ou 300 MB/s no SATA 300), contra os 60 MB/s (480 megabits) do USB 2.0. Obviamente, isso só faz alguma diferença quando o HD transmite dados guardados no cache, ou no caso dos HDs topo de linha, lendo dados seqüenciais. Na maioria dos casos, a gaveta possui também uma porta USB, que serve como segunda opção de interface, para casos em que você precisar conectar a gaveta em micros sem conectores eSATA. 477
  • 478. Gavetas de HD com interface eSATA Ao contrário do USB, o conector eSATA não transmite energia, de forma que ele só permite a conexão de HDs e outros dispositivos com fontes de alimentação (ou baterias). Não seria uma solução prática para pendrives, por exemplo. Prevendo essa limitação, alguns fabricantes estão desenvolvendo placas que incluem conectores de energia, como este adaptador da Addonics, que usa um conector mini-DIN, que fornece tensões de 5v e 12v, permitindo (com a ajuda de adaptadores incluídos no kit) conectar diretamente um HD SATA, sem a necessidade de uma gaveta ou fonte de alimentação. Existem outras soluções similares, oferecidas por outros fabricantes, mas por enquanto não existe nenhum padrão: Para quem pode gastar um pouco mais, existe a opção de comprar um NAS (Network Attached Storage) que pode ser acessado diretamente através da rede. Existem muitas opões de NAS, que vão desde sistemas baratos, que custam pouco mais que uma gaveta USB, até servidores de grande porte, que armazenam vários terabytes. Muitas vezes, eles são chamados de "network 478
  • 479. storage", ou simplesmente de "storage", termos que são mais descritivos para o público não técnico do que "NAS". Os modelos mais baratos comportam apenas um HD e são ligados diretamente no hub da rede. Alguns incluem também um transmissor wireless ou disponibilizam uma porta USB, que acaba sendo útil quando você está fora de casa e precisa apenas acessar alguns arquivos rapidamente no notebook. Este da foto é um Netgear SC101, que permite a instalação de dois HDs e inclui uma interface de rede 10/100. Ele não inclui um transmissor wireless, mas você pode obter a mesma funcionalidade ligando-o a um ponto de acesso externo. Em geral, os servidores NAS domésticos rodam uma versão compacta do kernel Linux (embora nem sempre divulgado pelos fabricantes), com um conjunto de drivers, que permitem acessar HDs formatados em diversos sistemas de arquivos e um servidor Samba, que compartilha os arquivos com a rede, como se fosse uma máquina Windows compartilhando pastas. Você pode configurar as pastas compartilhadas no NAS e permissões de acesso através de uma interface via navegador (similar à usada em modems ADSL e pontos de acesso) e mapear os compartilhamentos nos micros da rede para acessá-los. Em geral você tem também a opção de usar algum wizard fornecido pelo fabricante, que simplifica a configuração. Você pode muito bem criar um NAS usando algum PC antigo, rodando Linux. Bastaria instalar os HDs e configurar o servidor Samba para compartilhar as 479
  • 480. pastas desejadas com a rede. A vantagem de comprar um dispositivo dedicado é a praticidade, o baixo consumo elétrico e o "cool factor". Existem ainda algumas idéias interessantes para uso em conjunto com dispositivos móveis que podem ou não cair no gosto do público. Um dos melhores exemplos é o DAVE, desenvolvido pela Seagate. Ele é um HD externo, de 1.8", que possui uma bateria interna e pode ser acessado tanto via WiFi quanto via Bluetooth. Ele pesa apenas 70 gramas e é mais ou menos do tamanho de um celular. A idéia é que você possa levá-lo no bolso, pasta, bolsa ou mochila e acessar os arquivos no seu palmtop ou celular, via bluetooth, além de acessá-lo no notebook ou desktop através do transmissor WiFi. Na prática ele acaba sendo uma solução cara e pouco prática de usar, já que a taxa de transferência do Bluetooth é muito baixa e o alcance muito pequeno. De qualquer forma, ele é uma idéia interessante, que dá algumas pistas sobre o que podemos ver no futuro. Seagate DAVE (à direita) SSDs e HHDs Além da popularização dos pendrives e cartões, a queda no preço da memória Flash possibilitou o surgimento dos primeiros SSDs ou "Solid State Disks" (discos de estado sólido) de grande capacidade. Um SSD é um "HD" que utiliza chips de memória Flash no lugar de discos magnéticos. Eles são projetados para substituírem diretamente o HD, sendo conectados a uma porta SATA ou IDE. Embora as taxas de transferência (na maioria dos modelos) seja comparável à de um HD modesto, os SSDs oferecem tempos de acesso extremamente baixos, o que melhora o desempenho consideravelmente em uma grande gama de aplicativos e reduz bastante o tempo de boot. Os SSDs oferecem também a vantagem de consumirem muito menos eletricidade, serem mais resistentes mecanicamente (por não possuírem partes móveis), além de serem completamente silenciosos. 480
  • 481. Em compensação, eles possuem uma desvantagem fatal, que é a questão do custo. Em maio de 2007, um SSD de 32 GB da Ridata (um dos modelos mais acessíveis) custava US$ 475, isso se comprado em quantidade, diretamente do fabricante. Naturalmente, os preços devem cair com a passagem do tempo, mas isso será um processo gradual, acompanhando a queda no custo por megabyte da memória Flash. Devido à grande diferença de preço, os SSDs ficarão de início restritos aos notebooks ultraportáteis, onde suas vantagens são melhor aproveitadas. Conforme o custo da memória Flash for caindo, é possível que eles passem a concorrer com os discos magnéticos em outras áreas, mas isso ainda demorará algum tempo. SSD da Samsung com e sem a cobertura externa Um meio termo entre os SSDs e os HDs tradicionais são os HHDs (Hybrid Hard Drives, ou HDs híbridos), que são HDs tradicionais, que incorporam chips de memória Flash, usados como um buffer de dados. 481
  • 482. Todos os HDs atuais incluem uma pequena quantidade de memória SDRAM (ou SRAM), usada como cache de disco. O cache é bastante rápido, mas é limitado por dois fatores: é muito pequeno (16 MB na maioria dos HDs atuais) e perde os dados armazenados quando o micro é desligado. Em um HHD é usada uma quantidade generosa de memória Flash (512 MB ou mais em muitos modelos), que tem a função de armazenar dados freqüentemente acessados (como arquivos carregados durante o boot), de forma que eles continuem disponíveis depois de desligar o micro e possam ser usados no próximo boot, e também a de servir como um buffer de dados, permitindo que arquivos sejam salvos na memória Flash e copiados para os discos magnéticos quando for mais conveniente. Neste caso não existe problema de perda de dados armazenados no buffer ao desligar o micro no botão, pois os dados ficam retidos na memória Flash e são gravados nos discos magnéticos no boot seguinte. Além dos ganhos de desempenho, sobretudo a potencial redução no tempo de boot, o buffer permite que o HD fique mais tempo em modo de economia de energia, já que não é preciso "acordar" o HD ao salvar arquivos ou quando o sistema precisa atualizar arquivos de log, por exemplo, operações que podem ser realizadas no buffer. Isso acaba tornando a tecnologia bastante interessante para os notebooks, onde o HD chega a representar um quarto do consumo elétrico total. Naturalmente, a memória Flash é muito mais lenta que a memória RAM tipicamente usada no cache de disco e (em muitos casos) mais lenta até mesmo que os discos magnéticos em leitura ou gravação de arquivos seqüenciais. Ao salvar um arquivo grande (uma imagem de DVD, por exemplo), a gravação é feita diretamente nos discos magnéticos, sem passar pelo buffer. Temos também a tecnologia Robson, desenvolvida pela Intel, onde temos um buffer similar, instalado na placa-mãe. Os chips de memória Flash podem ser incorporados diretamente na placa, ou instalados através de uma placa de expansão (opção que fica a cargo do fabricante): Em ambos os casos, o buffer se comunica com o chipset através do barramento PCI Express e ele (chipset), com a ajuda de um driver instalado no sistema operacional, se encarrega de usar o buffer para cachear as operações 482
  • 483. do HD. O princípio de funcionamento e o resultado prático é o mesmo que usar um HHD, a única grande diferença é que o dinheiro vai para a Intel, ao invés de para o fabricante do HD ;). A tecnologia Robson foi introduzida no chipset i965GM e é usado em alguns notebooks baseados na plataforma Santa Rosa. Na geração inicial, o ganho de desempenho e de autonomia da bateria é muito pequeno, mas isso pode vir a melhorar nas revisões subsequentes. De qualquer forma, fica a cargo do fabricante usar o buffer ou não. ReadyBoost e ReadyDrive Tanto no caso dos HHDs quanto na tecnologia Robson, é necessário que exista suporte por parte do sistema operacional. Toda a idéia de usar memória Flash para acelerar o acesso ao HD foi inicialmente proposta pela própria Microsoft, de forma que o Vista já vem com suporte de fábrica, através do ReadyDrive. No caso do Linux, é de se esperar que tenhamos um driver incorporado ao Kernel assim que os dispositivos começarem a se tornar populares. A maior dúvida recai sobre o XP e as versões anteriores do Windows. Continuando, temos ainda o ReadyBoost, oferecido pelo Vista, onde um pendrive é usado para criar uma espécie de cache, acelerando o carregamento dos programas. O ReadyBoost é um recurso que parece simples, mas que se revela complexo e até contraditório depois de examinado um pouco mais minuciosamente. 483
  • 484. Desde que você utilize um pendrive de fabricação recente, de 1 GB ou mais, ligado a uma porta USB 2.0, você realmente perceberá alguma diferença no tempo de carregamento dos programas. Muitos jogos e aplicativos maiores podem chegar a carregar em metade do tempo, além da performance geral melhorar um pouco (principalmente em micros com apenas 512 MB de RAM). Mas, se você medir as taxas de transferência do pendrive e do HD, vai perceber que, quase sempre, o HD é mais rápido. Como pode então o pendrive melhorar o desempenho? A questão central é que o HD é rápido em leitura seqüencial, onde são lidos grandes blocos de dados, situados em setores adjacentes. Um HD moderno pode facilmente superar a marca de 60 MB/s, enquanto o pendrive fornecerá 15, 20, ou, quem sabe, 30 MB/s. Apesar disso, o HD possui um tempo de acesso muito alto e por isso pode oferecer taxas de transferências incrivelmente baixas (muitas vezes 2 MB/s ou menos) ao ler vários arquivos pequenos espalhados. Nesse quesito o pendrive leva uma grande vantagem. Para você ter uma idéia da diferença, um HD com tempo de acesso de 13 milissegundos seria capaz de realizar pouco mais de 60 leituras a setores aleatórios por segundo, enquanto mesmo um pendrive de velocidade modesta pode realizar facilmente mais de 4.000 leituras por segundo. Outra questão é que o pendrive e o HD são dois dispositivos distintos, ligados a barramentos separados, de forma que o sistema pode ler dados nos dois 484
  • 485. simultaneamente. O sistema aproveita então para copiar os arquivos pequenos, ou que estão gravados em setores distantes entre si do HD para o pendrive, além de usá-lo para armazenar parte da memória swap (exemplo de aplicação onde a baixa latência do pendrive oferece vantagens), fazendo com que o HD possa se concentrar em ler os arquivos maiores, função na qual é mais rápido. Como a memória Flash não é volátil, os dados continuam lá, prontos para serem usados nos boots subseqüentes, sem que precisem ser novamente transferidos a partir do HD. O principal problema com o ReadyBoost é que a memória Flash possui um limite de ciclos de leitura, de forma que o uso intenso pode fazer com que o pendrive apresente defeito depois de um ou dois anos de uso, sobretudo nos pendrives mais baratos, que utilizam chips de mais baixa qualidade. O risco de defeito prematuro devido ao esgotamento dos ciclos de leitura da memória Flash também existe nos HHDs. Neles, entretanto, o risco acaba sendo menor, pois os fabricantes se vêem obrigados a usar chips de melhor qualidade e a implementarem sistemas de proteção adicionais, incluindo um sistema de wear levelling (que consiste em "rotacionar" os dados, evitando que grande parte das leituras sejam concentradas em alguns poucos setores) e um sistema de correção de erros e marcação dos setores defeituosos, algo similar à marcação de badblocks nos discos magnéticos do HD. Com a popularização do Vista, os fabricantes de memória Flash passaram a lançar diversos tipos de pendrives otimizados para o ReadyBoost. Inicialmente eram modelos de alto desempenho, construídos usando chips e controladores capazes de sustentar taxas mais altas de transferência. Em seguida, passaram a ser lançados pendrives "dual-channel", onde dois chips de memória Flash são acessados simultaneamente, dobrando a taxa de leitura e gravação, de forma muito similar ao que obtemos ao usar dois HDs em RAID 0. Finalmente, surgiram pendrives de uso interno, novamente vendidos como modelos específicos para uso do ReadyBoost. Estes pendrives internos são instalados diretamente em um dos headers USB da placa-mãe, os mesmos conectores de 9 pinos onde você conecta as portas USB frontais do gabinete. A idéia é que eles fiquem instalados continuamente, mantendo o cache o ReadyBoost: 485
  • 486. Pendrive de uso interno, para uso com o ReadyBoost Cada header USB da placa-mãe oferece duas portas USB. Entretanto, as duas portas estão interligadas ao mesmo controlador, por isso compartilham os 480 megabits oferecidos por cada controlador USB 2.0. Fazendo com que o pendrive ocupe o espaço referentes às duas portas, o fabricante evita que a performance do pendrive seja subutilizada por qualquer gargalo causado pela conexão de outro dispositivo USB. Com exceção da mudança no conector, eles são pendrives normais, que podem ser usados tanto para o ReadyBoost quanto para guardar arquivos e fazer backups (ou ter o espaço dividido entre as duas aplicações). Caso a placa-mãe suporte boot através da porta USB, você pode até mesmo usá-los para instalar o sistema operacional (substituindo o HD) e assim obter um PC sem partes móveis. Naturalmente, você não conseguiria instalar o Vista em um pendrive com 2 ou 4 GB, mas é possível instalar Linux, ou mesmo fazer uma instalação enxuta do Windows XP. O gigabyte de 1 bilhão de bytes Nós, como seres humanos, estamos acostumados a pensar em valores segundo o padrão decimal, por isso temos muito mais facilidade em lidar com números múltiplos de 10. Os computadores, por outro lado, trabalham utilizando o sistema binário, ou seja, com potências do número 2. Um único bit permite duas combinações possíveis, dois bits permitem 4, oito bits permitem 256, 16 bits permitem 65.536 e assim por diante. Por causa dessa peculiaridade, um kilobyte não corresponde a 1000 bytes, mas sim a 1024, já que 1024 é a potência de 2 mais próxima de 1000. Um megabyte corresponde a 1024 kbytes, que por sua vez correspondem a 1048.576 bytes. 486
  • 487. Quando falamos em gigabytes e terabytes, as diferenças crescem, já que um gigabyte corresponde a 1.073.741.824 bytes e um terabyte corresponde a 1.099.511.627.776 bytes. Ou seja, um acréscimo de quase 10% em relação ao que teríamos utilizando o padrão decimal. Diversos dispositivos seguem essa notação binária, incluindo módulos de memória e CD-ROMs. Um módulo de memória de 1 GB possui exatamente 1.073.741.824 bytes, enquanto um CD-ROM de 650 MB é dividido em 333.000 setores de 2048 bytes cada um, totalizando 681.984.000 bytes, ou 650.39 MB. Esta notação segue o padrão do JEDEC para dispositivos de memória, onde o "mega" é o número 2 elevado à vigésima segunda potência e o "giga" é o número 2 elevado à trigésima potência. O ponto de discórdia são os fabricantes de HDs, que comodamente adotaram o padrão decimal para medir a capacidade dos seus produtos. A discordância começou muito antes do que se imagina, datando dos primeiros discos fabricados pela IBM. O IBM 350 não armazenava 5 megabytes, mas sim 5 milhões de caracteres, com 7 bits cada um. Concordando ou não, todos os fabricantes acabaram sendo obrigados a aderir à idéia, já que qualquer fabricante que preferisse seguir o padrão binário teria a capacidade de seus produtos "encolhida" em relação à concorrência. Querendo ou não, o anúncio de um HD de "1 terabyte" soa melhor do que o anúncio de um HD de "931 gigabytes binários". Graças a isso, um HD de 500 GB possui, na verdade, 500 bilhões de bytes, que correspondem a apenas 465.6 GB, divididos em pouco mais de 931 milhões de setores de 512 bytes cada um. Inicialmente, os programas de particionamento exibiam a capacidade dos HDs de forma correta, calculando o espaço em termos de potências binárias. O problema é que isso resultava numa diferença considerável entre o espaço exibido e o espaço declarado pelos fabricantes, o que gerava dúvidas e confusão entre os usuários, que ficavam sem saber por que o programa de particionamento dizia que seu HD de "120 GB" tinha apenas 111.7 GB. Depois de muita confusão e inclusive alguns processos na justiça por propaganda enganosa, os fabricantes de HDs acabaram ganhando a queda de braço e os programas de particionamento passaram a mostrar a capacidade utilizando potências de 10. Veja como o cfdisk (no Linux) reconhece um HD Samsung de 300 GB: 487
  • 488. Ou seja, ele reconhece corretamente a capacidade do drive em bytes, mas arredonda o número para "300.0 GB", muito embora 300.069.052.416 bytes correspondam na verdade a apenas 286.16 GB. Temos ainda o caso dos pendrives e cartões de memória, que ficam no meio do caminho. Por comodidade, os fabricantes também adotam a notação decimal, de forma que um pendrive de 1 GB é divulgado como tendo "1.000.000.000 de bytes, ou mais", enquanto a capacidade real tende a variar um pouco de fabricante para fabricante. Um pendrive de 1 GB da PQI que testei tinha 1.027.603.968 bytes, enquanto um cartão de 2 GB da Kingston tinha 2.002.255872 bytes. O caso dos pendrives e cartões é interessante, pois eles são originalmente compostos por chips de memória Flash que seguem o padrão binário. Ou seja, um pendrive composto por 2 chips de 8 gigabits possuiria realmente 2 GB "reais". Apesar disso, os fabricantes precisam reservar parte da capacidade dos chips para o mapeamento de blocos defeituosos e códigos de correção de erros, de forma que a capacidade utilizável acaba sendo sempre um pouco menor, além de variar de fabricante para fabricante, de acordo com o número de bits reservados. Na prática acabamos com dois padrões de medida conflitantes dentro do ramo da informática; o padrão decimal e o padrão binário, onde cada um é apoiado por um segmento. Em 2005 o IEEE acabou cedendo à pressão dos fabricantes de HDs e introduziu um novo conjunto de medidas para a designação de valores binários, incluindo o mebibyte, o gibibyte e o tebibyte. O "bi" em todos os prefixos é abreviação de "binary", indicando justamente que estamos falando de grandezas binárias. Ou seja, de uma hora para a outra, seu micro deixou de ter 1 gigabyte de memória e passou a ter 1 gibibyte, enquanto seu HD deixou de ter 465.6 GB e passou, por decreto, a ter 500 GB! 488
  • 489. Pelo novo padrão (IEEE 1541), um kilobyte deixa de ter 1024 bytes e passa a ter apenas 1000. Um "kibibyte" não é mais uma mordida no kibe, mas sim um conjunto de 1024 bytes, enquanto um "kibibit" passa a ser um conjunto de 1024 bits. Mudam também as abreviações, onde "Pib" deixa de ser "produto interno bruto" e passa ser abreviação de "pebibyte", ou seja, pouco mais que um quadrilhão de bits. :) Vamos então parar com as piadinhas e ir diretamente à tabela com o novo padrão e as novas abreviações: Padrão Decimal Padrão Binário kilobyte (KB) kilobit (Kb) kibibyte (KiB) kibibit (Kib) megabyte (MB) megabit (Mb) mebibyte (MiB) mebibit (Mib) gigabyte (GB) gigabit (Gb) gibibyte (GiB) gigibit (Gib) terabyte (TB) terabit (Tb) tebibyte (TiB) tebibit (Tib) petabyte (PB) petabit (Pb) pebibyte (PiB) pebibit (Pib) exabyte (EB) exabit (Eb) exbibyte (EiB) exbibit (Eib) zettabyte (ZB) zettabit (Zb) zebibyte (ZiB) zebibit (Zib) yottabyte (YB) yottabit (Yb) yobibyte (YiB) yobibit (Yib) Naturalmente, o novo padrão encontrou muitos opositores e a adoção vem caminhando a passos de tartaruga. Muitos autores optaram por ignorar o novo padrão e continuar utilizando a notação binária, usando o termo "decimal" para indicar o uso do padrão decimal quando isso puder dar origem à confusão. Posso então dizer que o padrão ATA-6 derrubou o limite de 128 GB para o endereçamento dos HDs, ou que ele derrubou o limite de 137 GB decimais. Para que o padrão do IEEE venha a realmente se tornar um "padrão" e não mais uma simples mudança das regras no meio do jogo, que vem a atender ao lobby dos fabricantes de HDs, seria necessário que toda a literatura técnica fosse alterada, mudando todas as referências a unidades de armazenamento e explicando por que apenas os HDs possuem "gigabytes", enquanto quase todos os demais componentes possuem "gibibytes". Drives de Disquetes Apesar dos drives de disquetes serem baseados nos mesmos princípios dos HDs, eles são muito mais simples, já que trabalham com densidades e taxas de leitura muito mais baixas. De certa forma, os drives de disquetes lembram um pouco os HDs de 5 a 10 MB usados no início da década de 80, com seus motores de passo e mídias pouco confiáveis. A mídia magnética de um disquete é composta de óxido de ferro, basicamente ferrugem. É aplicada uma fina camada desse material sobre um disco feito de plástico mylar, o mesmo utilizado nas antigas fitas K-7. 489
  • 490. Assim como nos discos rígidos, os disquetes são divididos em trilhas e setores. A diferença é que, enquanto um disco rígido atual possui mais de 100.000 trilhas, um disquete de 1.44 MB possui apenas 80 trilhas. O número de setores também é muito menor, apenas 18 setores por trilha num disquete de 1.44, muito longe dos 1200 ou 1500 setores por trilha dos HDs. Cada setor possui 512 bytes, o que dá um total 720 KB por face. Nos disquetes de 1.44 são usadas as duas faces do disco, chegando aos 1.44 MB nominais. Como nos disquetes não é utilizado o recurso de Zoned Bit Recording, todas as trilhas possuem o mesmo número de setores. Falando em trilhas, uma curiosidade sobre os discos flexíveis é que apenas uma pequena faixa do disco é usada para gravar dados. A densidade em um disquete de 1.44 é de 135 trilhas por polegada. Como temos apenas 80 trilhas, é aproveitada uma faixa de apenas 1.5 cm do disquete, que começa a partir da borda do disco. A velocidade de rotação nos drives de disquete também é muitas vezes menor que a dos discos rígidos. Enquanto nos HDs rotações de 7.200 RPM ou mais são norma, um drive de 1.44 trabalha com apenas 300 rotações por minuto, ou seja, apenas 5 rotações por segundo! Um dos motivos de ser utilizada uma velocidade de rotação tão baixa é a fragilidade da mídia magnética dos disquetes, que fatalmente seria danificada durante a leitura e gravação de dados caso fossem utilizadas velocidades mais altas. Enquanto nos discos rígidos é utilizado um sistema magnético para movimentar as cabeças de leitura (o sistema voice-coil), que permite uma movimentação extremamente rápida e precisa, os drives de disquete ainda utilizam motores de passo, assim como os primeiros HDs. Ao receber um impulso elétrico, o motor gera um movimento preciso que faz com que a cabeça de leitura percorra a distância correspondente a uma trilha. Como você pode ver na foto, a cabeça de leitura dentro do drive é ligada diretamente no eixo do motor e fica em contato direto com a mídia, ao invés de "flutuar" sobre ela como as cabeças de leitura dos HDs: 490
  • 491. Apesar do motor de passo funcionar relativamente bem, ele é muito lento, fazendo com que a cabeça de leitura demore cerca de 200 milissegundos para se movimentar de um canto ao outro do disquete. Como o motor demora mais 200 milissegundos para concluir uma rotação completa, teríamos um tempo de acesso médio (somando o tempo de movimento da cabeça de leitura até a metade do disco, com o tempo de metade de uma rotação) de também 200 milissegundos, o que é quase 18 vezes mais lento que o tempo de acesso num HD razoável. O mais impressionante sobre os drives de disquetes foi sua miraculosa sobrevida. Mesmo sem nenhuma inovação desde 1987 (quando os drives de 1.44 passaram a ser usados no IBM PS/2), os drives de disquetes ainda são usados em muitos micros novos ainda em 2007! Seja por necessidade de ler disquetes usados por colegas de trabalho, ou por puro masoquismo, até mesmo os donos de notebooks muitas vezes recorrem a drives de disquete USB. Ao longo dessas duas décadas, houve diversas tentativas de criar um padrão atualizado para discos magnéticos removíveis, quase todas fracassadas. Os únicos que atingiram uma certa popularidade foram os discos Zip, de 100 MB e os LS-120 (de 120 MB ;). No passado, os discos zip chegaram a ser vendidos em papelarias, mas como eles eram caros, acabavam encalhando. 491
  • 492. Zip drive paralelo Atualmente (2007) a Iomega fabrica o Rev, uma unidade que utiliza discos rígidos removíveis de 70 GB. Basicamente, cada cartucho é uma unidade completa, incluindo o disco magnético e cabeças de leitura, enquanto a leitora inclui a controladora, interface e outros componentes que num HD fariam parte da placa lógica. O maior problema é que os discos do Rev são muito caros. Mesmo nos EUA custam US$ 70 cada um (mais caro do que um HD SATA de 250 GB, que por lá custa menos de US$ 60) o que elimina qualquer possibilidade de popularização. Além de derrotarem seus "sucessores", os drives de disquetes sobreviveram à popularização dos gravadores de CD, à massificação do uso do e-mail e de outras formas de transferência de arquivos via web e, embora enfraquecidos, continuam resistindo até mesmo à popularização dos pendrives e cartões de memória. É possível que no início da próxima década ainda se veja pessoas procurando disquetes para comprar. Resta o consolo de que as coisas já foram piores... ;) 492
  • 493. Disquete de oito polegadas, antecessor dos disquetes de 5.25" Dentro do meio técnico, a principal utilidade dos drives de disquete é usar disquetes de boot diversos, que permitem tanto rodar ferramentas diversas de diagnóstico quanto iniciar a instalação do sistema em micros que não suportam boot através do CD-ROM. Apesar disso, a maioria dos programas de gravação de CD permitem criar CDs de boot usando o sistema de emulação de disquete, onde é criado um CD de boot, contendo o arquivo de imagem de um disquete. No K3B, por exemplo, você adiciona as imagens através da opção "Projeto > Editar Imagens de Boot". Outra ferramenta extremamente útil é o Ultimate Boot CD, uma imagem .ISO, pronta para gravar, disponível no: http://www.ultimatebootcd.com. Ele inclui um grande número de utilitários de diagnóstico pré-instalados e você pode personalizar o CD, gerando uma imagem contendo outros utilitários e também disquetes de boot, que ficam disponíveis para uso ao dar boot através do CD: 493
  • 494. Muitos utilitários de atualização de BIOS também exigem o uso de um disquete, mas isso vem diminuindo. Muitos fabricantes oferecem a opção de baixar um CD de boot e muitas placas oferecem utilitários de gravação dentro do próprio Setup, que são capazes de regravar o BIOS a partir de um arquivo salvo numa partição FAT do HD, ou mesmo num pendrive. Outro problema é a falta de drives para HDs SATA e controladoras RAID na versão original Windows XP, onde era necessário copiar os drivers da controladora SATA ou RAID (geralmente encontrados na pasta DriverDiskSATA, "DriversChipsetdrvdisk" ou DriverDiskRAID do CD- ROM de drivers da placa-mãe) para um disquete e pressionar a tecla "F6" durante a fase inicial da instalação, quando era exibida a mensagem "Pressione F6 se precisar instalar um driver SCSI ou RAID de TERCEIROS" e em seguida a tecla "E" para que o disquete fosse localizado. Sem isso o HD não era reconhecido e não era possível concluir a instalação. Felizmente, esse problema foi resolvido a partir do Windows XP SP2 que integrou os drivers necessários. Desde que você tenha uma mídia de instalação atualizada, não precisa mais do disquete durante a instalação. Capítulo 6: Sistemas de arquivos e recuperação de dados A forma como a controladora do HD vê os dados armazenados nos discos magnéticos pode ser bem diferente da forma como vê o sistema operacional. Enquanto a controladora enxerga as trilhas, setores e cilindros e se esforça para localizá-los nos discos magnéticos, usando as marcações servo, o sistema operacional enxerga apenas uma longa lista de endereços, chamados de clusters ou blocos. Quando ele precisa de um determinado arquivo, ele não se preocupa em tentar descobrir em qual trilha e setor ele está armazenado. 494
  • 495. Ele apenas envia o endereço do bloco que deve ser lido e a controladora se encarrega do restante. O fato da controladora "esconder" as informações sobre a organização interna dos discos, é o que faz com que os sistemas operacionais sejam compatíveis com todos os HDs do mercado, sem que seja necessário instalar drivers completos para cada um. Quando acontece de uma versão antiga do Windows, ou de alguma distribuição Linux não detectar seu HD durante a instalação, quase sempre o problema é causado pela falta de drivers para a interface IDE ou para a controladora SATA do chipset da placa-mãe, e não para o HD em si. A primeira versão do Windows XP, por exemplo, não oferecia suporte nativo à maioria das controladoras SATA, de forma que era preciso fornecer um disquete com drivers durante a instalação. Formatação física Originalmente, os discos magnéticos do HD são um terreno inexplorado, uma mata virgem sem qualquer organização. Para que os dados possam ser armazenados e lidos de forma organizada, é necessário que o HD seja previamente formatado. Em primeiro lugar, temos a formatação física, na qual os discos são divididos em trilhas, setores e cilindros e são gravadas as marcações servo, que permitem que a placa lógica posicione corretamente as cabeças de leitura. Nos HDs atuais, a formatação física é feita em fábrica, durante a fabricação dos discos. O processo envolve o uso de máquinas especiais e, apenas para garantir, restrições são adicionadas no firmware do drive, para que a placa lógica seja realmente impedida de fazer qualquer modificação nas áreas reservadas. Graças a isso, é impossível reformatar fisicamente um drive atual, independentemente do software usado. No caso dos drives "pré-ATA", como os antigos ST-506 e ST-412, a história era diferente. Eles precisavam ser periodicamente reformatados fisicamente através do setup, pois as mudanças de temperatura, a vibração causada pelo motor de rotação e as próprias operações de leitura e gravação acabavam por alterar a posição das trilhas na mídia magnética, causando desalinhamento e dificultando a leitura dos dados pela cabeça de leitura. Era necessária, então, uma nova formatação física, para que as trilhas, setores e cilindros, voltassem as suas posições iniciais. No caso dos discos atuais, esse processo não é mais necessário, pois as mídias são muito mais confiáveis e a placa controladora pode compensar eventuais desvios rapidamente, simplesmente calibrando o movimento do braço de leitura. 495
  • 496. Formatação lógica Em seguida, temos a formatação lógica, que adiciona as estruturas utilizadas pelo sistema operacional. Ao contrário da formatação física, ela é feita via software e pode ser refeita quantas vezes você quiser. O único problema é que, ao reformatar o HD, você perde o acesso aos dados armazenados, embora ainda seja possível recuperá-los usando as ferramentas apropriadas, como veremos mais adiante. Chegamos então ao sistema de arquivos, que pode ser definido como o conjunto de estruturas lógicas que permitem ao sistema operacional organizar e otimizar o acesso ao HD. Conforme cresce a capacidade dos discos e aumenta o volume de arquivos e acessos, esta tarefa torna-se mais e mais complicada, exigindo o uso de sistemas de arquivos cada vez mais complexos e robustos. Existem diversos sistemas de arquivos diferentes, que vão desde sistemas simples como o FAT16, que utilizamos em cartões de memória, até sistemas como o NTFS, EXT3 e ReiserFS, que incorporam recursos muito mais avançados. A formatação do HD é feita em duas etapas. A primeira é o particionamento, onde você define em quantas partições o HD será dividido e o tamanho de cada uma. Mesmo que você não pretenda instalar dois sistemas em dual boot, é sempre interessante dividir o HD em duas partições, uma menor, para o sistema operacional, e outra maior, englobando o restante do disco para armazenar seus arquivos. Com isso, você pode reinstalar o sistema quantas vezes precisar, sem o risco de perder junto todos os seus arquivos. Podemos ter um total de 4 partições primárias ou três partições primárias e mais uma partição estendida, que pode englobar até 255 partições lógicas. É justamente a partição lógica que permite dividir o HD em mais de 4 partições. Esta limitação das 4 partições primárias é uma limitação que existe desde o primeiro PC, lançado em 1981. Os projetistas que escreveram o BIOS para ele precisavam economizar memória e chegaram à conclusão que 2 bits (4 combinações) para o endereço das partições seriam suficientes, pois na época os HDs mais vendidos tinham apenas 5 MB e só existia um sistema operacional para PCs (o MS-DOS), de forma que era raro alguém precisar criar mais de uma partição. As coisas mudaram "um pouco" de lá pra cá, mas infelizmente a limitação continua até os dias de hoje. Para amenizar o problema, foi adicionada a possibilidade de criar partições lógicas. Em vez de criar 4 partições primárias e ficar sem endereços para criar novas partições, você cria uma "partição estendida", que é uma espécie de container, que permite criar mais partições. A partição estendida contém uma área extra de endereçamento, que permite endereçar as 255 partições lógicas. É possível criar até 4 partições estendidas, de forma que (em teoria) é possível dividir o HD em até 1020 partições. 496
  • 497. Digamos que você queira particionar um HD de 160 GB para instalar Windows e Linux em dual boot, deixando uma partição de 20 GB para o Windows, uma partição de 20 GB para o Linux, uma partição de 1 GB para swap (do Linux) e uma partição maior, englobando os 119 GB restantes para guardar seus arquivos. Como precisamos de 4 partições no total, seria possível criar diretamente 4 partições primárias, mas neste caso você ficaria sem endereços e perderia a possibilidade de criar novas partições mais tarde, caso resolvesse testar uma outra distribuição, por exemplo. Ao invés disso, você poderia começar criando a partição de 20 GB do Windows como primária (é sempre recomendável instalar o Windows na primeira partição do HD e em uma partição primária, devido às particularidades do sistema) e em seguida criar uma partição estendida, englobando todo o resto do espaço, criando as demais partições como partições lógicas dentro dela. Este é um screenshot do Gparted, que mostra um HD dividido em várias partições. Veja que a quarta partição está marcada como "extended", ou seja, como partição extendida. Ela não armazena dados, nem ocupa um espaço considerável no disco, mas permitiu que fossem criadas as partições de 5 a 7. Veja que existe também um trecho marcado como "não alocada", ou seja, espaço vago onde é possível criar mais uma partição: Exemplo de particionamento no Gparted 497
  • 498. Do ponto de vista do sistema operacional, cada partição é uma unidade separada, quase como se houvesse dois ou três discos rígidos instalados na máquina. Cada partição possui seu próprio diretório raiz e sua própria FAT. As informações sobre o número de partições, sua localização no disco e o espaço ocupado por cada uma são armazenadas na tabela de partição, que compartilha o primeiro setor do disco com o setor de boot. Você pode particionar o HD usando o próprio assistente mostrado durante a instalação do Windows XP ou Vista, usando um dos particionadores mostrados durante a instalação de várias distribuições Linux ou através de programas avulsos, como o Partition Magic (no Windows) ou o Gparted (no Linux), que você pode usar dando boot através de uma distribuição live-CD que o traga pré-instalado. Tanto o PartitionMagic quanto o Gparted são particionadores gráficos fáceis de usar. O espaço disponível é mostrado na forma de uma barra na parte superior da tela, que vai sendo dividida em retângulos menores, conforme você vai criando as partições. A cor de cada partição representa o sistema de arquivos usado e os espaços não particionados do disco aparecem em cinza. Além de criar e deletar partições, os dois programas também oferecem opções adicionais, como redimensionar partições (sem perder os dados), muito útil quando você já tem um sistema operacional instalado e precisa liberar espaço para instalar um segundo sistema em dual boot, por exemplo. Este é um screenshot do PartitionMagic. Veja que a interface é muito similar à do Gparted, que mostrei a pouco: PartitionMagic Em seguida, temos a formatação propriamente dita, onde as estruturas do sistema de arquivos são finalmente gravadas na partição. Na maioria dos casos, o próprio programa de particionamento se encarrega de formatar a partição usando o sistema de arquivos escolhido, mas, em outros, temos dois programas diferentes, como no caso do fdisk e do format, usados no Windows 98. 498
  • 499. No mundo Windows, temos apenas três sistemas de arquivos: FAT16, FAT32 e NTFS. O FAT16 é o mais antigo, usado desde os tempos do MS-DOS, enquanto o NTFS é o mais complexo e atual. Apesar disso, temos uma variedade muito grande de sistemas de arquivos diferentes no Linux (e outros sistemas Unix), que incluem o EXT2, EXT3, ReiserFS, XFS, JFS e muitos outros. Para quem usa apenas o Windows, estes sistemas podem parecer exóticos, mas eles são velhos conhecidos de quem trabalha com servidores, já que neles o Linux é o sistema mais popular. Vamos começar estudando as estruturas do sistema FAT. Por ser o sistema mais antigo ele é também o mais simples e mais fácil de entender. FAT16 e FAT32 O sistema FAT16 é uma espécie de "pau pra toda obra", já que é compatível com praticamente todos os sistemas operacionais e também dispositivos como câmeras, palmtops, celulares e mp3players. Ele é o sistema de arquivos usado por padrão nos cartões SD e também nos pendrives de até 2 GB. Só recentemente os cartões passaram a utilizar FAT32, com a introdução do padrão SDHC. No sistema FAT, o HD é dividido em clusters, que são a menor parcela do HD vista pelo sistema operacional. Cada cluster possui um endereço único, que permite ao sistema localizar os arquivos armazenados. Um grande arquivo pode ser dividido em vários clusters, mas não é possível que dois arquivos pequenos sejam gravados dentro do mesmo cluster. Cada cluster pode ser composto por de 1 a 64 setores (ou seja, de 512 bytes a 32 KB), de acordo com o tamanho da partição. A principal limitação é que, como o nome sugere, o FAT16 usa endereços de 16 bits para endereçar os clusters dentro da partição, permitindo um máximo de 65536 clusters, que não podem ser maiores que 32 KB. Isso resulta num limite de 2 GB para as partições criadas. No caso de HDs (e também pendrives ou cartões) maiores que 2 GB, é possível criar várias partições de 2 GB cada uma, até utilizar todo o espaço disponível. Esta pode ser uma solução no caso de dispositivos com 4 ou 5 GB, por exemplo, mas, naturalmente, não é uma opção realística no caso de um HD de 60 GB, por exemplo, onde seria necessário criar 30 partições! Numa partição de 2 GB, cada cluster possui 32 KB, o que acaba resultando num grande desperdício de espaço ao gravar uma grande quantidade de arquivos pequenos. Imagine que gravássemos 10.000 arquivos de texto, cada um com apenas 300 bytes. Como um cluster não pode conter mais do que um arquivo, cada arquivo iria ocupar um cluster inteiro, ou seja, 32 kbytes. No total, os 10.000 arquivos ocupariam um total de 10.000 clusters, ou seja, um total de 320 MB! O tamanho dos clusters em partições FAT16 varia de acordo com o tamanho da partição. Quanto maior o tamanho da partição, maior o tamanho dos 499
  • 500. clusters: Tamanho da Partição Tamanho dos Clusters usando FAT16 Entre 1 e 2 GB 32 KB Menor que 1 GB 16 KB Menor que 512 Mb 8 KB Menor que 256 Mb 4 KB Como em toda regra, existe uma exceção. O Windows NT permitia criar partições FAT de até 4 GB usando clusters de 64 KB, mas este foi um recurso pouco usado, devido ao desperdício de espaço. A versão original do Windows 95 suportava apenas o FAT16, obrigando quem possuía HDs maiores que 2 GB a dividi-los em duas ou mais partições e lidar com o desperdício de espaço causado pelos clusters de 32 KB. A solução foi a criação do sistema FAT32, que foi incorporado no Windows 95 OSR/2 e continuou sendo usado nas versões seguintes. A principal evolução foi o uso de endereços de 32 bits para o endereçamento dos clusters, o que possibilita a criação de partições muito maiores, de até 2 terabytes. Isso foi possível por que o Windows 95 era um sistema de 32 bits, ao contrário do MS-DOS e do Windows 3.1, que eram sistemas de 16 bits. A princípio, o uso de endereços de 32 bits permitiriam o uso de clusters de 4 KB mesmo em partições muito grandes mas, por questões de desempenho, ficou estabelecido que por default os clusters de 4 KB seriam usados apenas em partições de até 8 GB. Acima disto, o tamanho dos clusters varia de acordo com o tamanho da partição: Tamanho da partição Tamanho do cluster Menor do que 8 GB 4 KB De 8 GB a 16 GB 8 KB De 16 GB a 32 GB 16 KB Maior do que 32 GB 32 KB Usando clusters de 4 KB, os 10.000 arquivos do exemplo anterior ocupariam apenas 40 MB, uma economia considerável. De fato, ao converter uma partição FAT16 para FAT32 é normal conseguir de 10 a 20% de redução no espaço ocupado, devido à redução do espaço desperdiçado. O Windows 98 inclui um conversor, que permite converter partições FAT16 para FAT32 sem perda de dados. Atualmente ele não possui muita utilidade, já que o FAT16 é raramente usado fora dos pendrives e cartões de memória mas, de qualquer forma, caso precise dele, o ícone está disponível no Iniciar > Ferramentas de Sistema. 500
  • 501. A grande limitação do sistema FAT32 está relacionada ao tamanho máximo dos arquivos. Mesmo usando uma grande partição, não é possível armazenar arquivos com mais de 4 GB, o que é um grande problema para quem trabalha com arquivos grandes, como vídeos em formato RAW (sem compressão). Não é possível sequer armazenar um ISO de DVD, já que a cópia ou transferência será sempre abortada depois de transferidos os primeiros 4 GB. Não existe qualquer sinal de que futuras versões do sistema de arquivos derrubarão esta limitação, já que a Microsoft vem recomendando o uso do NTFS desde a primeira versão do Windows XP, de forma que a melhor opção, para quem usa Windows, é seguir a recomendação e migrar para ele. Outra limitação é que o particionador usado durante a instalação do Windows XP se recusa a formatar partições FAT32 maiores do que 32 GB. Este é um limite do software e não do sistema de arquivos em si. A solução para criar partições FAT maiores é utilizar o PartitionMagic, Gparted ou outro particionador para criar a partição e em seguida apenas instalar o sistema na partição criada. Uma curiosidade é que, antes do FAT16, existiu o FAT12, um sistema ainda mais primitivo, utilizado em disquetes e também nas primeiras versões do MS- DOS. Nele, são usados endereços de apenas 12 bits para endereçar os clusters, permitindo um total de 4096 clusters de até 4 KB, o que permitia partições de até 16 MB. Em 1981, quando o IBM PC foi lançado, 16 MB parecia ser uma capacidade satisfatória, já que naquela época os discos rígidos tinham apenas 5 ou 10 MB. Claro que, em se tratando de informática, por maior que seja um limite, ele jamais será suficiente por muito tempo. Um excelente exemplo é a célebre frase "Por que alguém iria precisar de mais de 640 KB de memória RAM?" dita por Bill Gates em uma entrevista, no início da década de 80. Logo começaram a ser usados discos de 40, 80 ou 120 MB, obrigando a Microsoft a criar a FAT 16, e incluí-la na versão 4.0 do MS-DOS. Apesar de obsoleto, o FAT12 ainda continua vivo até os dias de hoje, fazendo compania para outro fantasma da informática: os disquetes. Por ser mais simples, o FAT12 é o sistema padrão para a formatação dos disquetes de 1.44, onde são usados clusters de apenas 512 bytes. Estruturas Lógicas Todos os vários sistemas de arquivos são constituídos de um conjunto de estruturas lógicas, que permitem ao sistema operacional organizar os dados gravados e acessá-los com a maior velocidade e confiabilidade possíveis. Tudo começa com o setor de boot, que é lido pelo BIOS da placa-mãe no início do boot, logo após a contagem de memória e outros procedimentos executados durante o POST. 501
  • 502. O setor de boot, também chamado de MBR ou trilha zero, contém dois componentes essenciais. O primeiro é um bootstrap, o software responsável por iniciar o carregamento do sistema operacional. Tipicamente, é utilizado um gerenciador de boot, como o NTLDR (usado pelo Windows XP) ou o Grub (usado pela maior parte das distribuições Linux). A função do gerenciador de boot é mostrar uma lista com os sistemas operacionais instalados no início do boot e carregar o sistema escolhido. O bootstrap ocupa os primeiros 446 bytes do MBR. Os 66 bytes restantes são usados para armazenar a tabela de partições, que guarda informações sobre onde cada partição começa e termina. Alguns vírus, além de acidentes em geral, podem danificar os dados armazenados na tabela de partição, fazendo com que pareça que o HD foi formatado. Mas, na maioria dos casos, os dados continuam lá, intactos, e podem ser recuperados. Depois que o disco rígido foi formatado e dividido em clusters, mais alguns setores são reservados para guardar a FAT ("file allocation table" ou "tabela de alocação de arquivos"). A função da FAT é servir como um índice, armazenando informações sobre cada cluster do disco. Através da FAT, o sistema sabe se uma determinada área do disco está ocupada ou livre e pode localizar qualquer arquivo armazenado. Cada vez que um novo arquivo é gravado ou apagado, o sistema operacional altera a FAT, mantendo-a sempre atualizada. A FAT é tão importante que, além da tabela principal, é armazenada também uma cópia de segurança, que é usada sempre que a tabela principal é danificada de alguma maneira. Todos os demais sistemas de arquivos utilizam algum tipo de índice, similar à FAT. Quando o HD é reformatado, este índice é apagado e substituído por uma tabela em branco. Apesar disso, os arquivos continuam gravados nas mesmas posições, embora inacessíveis. Enquanto eles não forem realmente sobrescritos por outros, é possível recuperá-los usando um programa de recuperação de dados, como veremos em detalhes mais adiante. Em seguida, temos o diretório raiz. Se fôssemos comparar um disco rígido, formatado em FAT16 ou FAT32 com um livro, as páginas seriam os clusters, a FAT serviria como as legendas e numeração das páginas, enquanto o diretório raiz seria o índice, com o nome de cada capítulo e a página onde ele começa. O diretório raiz ocupa mais alguns setores no disco, logo após os setores ocupados pela FAT. Cada arquivo ou diretório do disco rígido possui uma entrada no diretório raiz, com o nome do arquivo, a extensão, a data de quando foi criado ou quando foi feita a última modificação, o tamanho em bytes e o número do cluster onde o arquivo começa. Um arquivo pequeno pode ser armazenado em um único cluster, enquanto um arquivo grande é "quebrado" e armazenado ocupando vários clusters. Nesse caso, haverá no final de cada cluster uma marcação, indicando o próximo cluster ocupado pelo arquivo. No último cluster ocupado, temos um código que marca o fim do arquivo. 502
  • 503. Quando um arquivo é deletado, simplesmente é removida sua entrada no diretório raiz, fazendo com que os clusters ocupados por ele pareçam vagos para o sistema operacional. Ao gravar um novo arquivo no disco, o sistema simplesmente procura o primeiro setor livre, continuando a gravá-lo nos setores livres seguintes, mesmo que estejam muito distantes uns dos outros. Surge então o problema da fragmentação, que reduz consideravelmente a velocidade de acesso, já que dados espalhados significam mais movimentos da cabeça de leitura. Ao contrário de outros sistemas de arquivos mais modernos, o sistema FAT (tanto o FAT16 quanto o FAT32) não possui nenhum mecanismo que impeça, ou pelo menos diminua a fragmentação, daí a necessidade de rodar o defrag ou outro programa desfragmentador periodicamente. A função deles é mover os arquivos, de forma que eles fiquem gravados em clusters seqüenciais. 503
  • 504. Desfragmentação do HD (no Windows), usando o Diskeeper Uma curiosidade é que a fragmentação é um problema apenas nos HDs, já que eles trabalham com tempos de acesso muito altos. Nos cartões de memória, o tempo de acesso é comparativamente muito baixo, de forma que a fragmentação possui um impacto muito pequeno sobre a performance. Continuando, além do nome, cada arquivo recebe também uma extensão de até três caracteres, como "EXE", "DOC", etc. Através da extensão, o sistema operacional sabe que um determinado arquivo deve ser executado ou aberto usando o Word, por exemplo. A extensão não tem nenhuma influencia sobre o arquivo, apenas determina como ele será visto pelo sistema operacional. Se você abrir o Notepad, escrever um texto qualquer e salvá-lo como "carta.exe", por exemplo, conseguirá abrir e editar este arquivo sem problemas, mas se você chamar o arquivo clicando duas vezes sobre ele dentro do Windows Explorer, o sistema operacional verá a extensão "EXE" e tentará executar o arquivo, ao invés de tentar abri-lo usando o Notepad, como faria caso o arquivo tivesse a extensão "TXT". Inicialmente, as extensões de arquivo eram utilizadas apenas no Windows, enquanto o Linux e os sistemas Unix em geral se baseavam no conteúdo do 504
  • 505. arquivo. Mas, recentemente isso vem mudando, com o KDE e o Gnome utilizando associações de arquivos também baseadas nas extensões. Depois da extensão, existe mais um byte reservado para o atributo do arquivo, que pode ser "somente leitura", "oculto", "sistema", "volume label", "diretório" ou "arquivo". O atributo permite instruir o sistema operacional e demais aplicativos sobre como lidar com o arquivo. Os atributos suportados mudam de acordo com o sistema de arquivos. Como veremos adiante, o NTFS suporta um conjunto de atributos que não existem no sistema FAT. O mesmo pode ser dito em relação aos sistemas de arquivo usados no Linux. O atributo "somente leitura" indica que o arquivo não deve ser modificado ou deletado. Se você tentar deletar ou modificar um arquivo somente leitura pelo DOS, receberá a mensagem "Access Denied". Tentando apagar o arquivo através do Windows Explorer você receberá um aviso explicando que o arquivo é somente para leitura, perguntando se você tem certeza que deseja deletá-lo. O atributo "sistema" possui uma função parecida, indicando apenas que, além de ser oculto, o arquivo é utilizado pelo sistema operacional. Por padrão, o Windows XP não mostra arquivos marcados com o atributo "sistema", nem os arquivos ocultos. É necessário configurar o Windows Explorer para exibi-los, marcando a opção "Mostrar todos os arquivos" no menu Exibir/Opções. Outra opção é usar o comando "DIR /AH" através da linha de comando. Para nomear um disquete ou a uma partição de um disco rígido, usamos o atributo "volume label". O nome dado é armazenado em uma área reservada do diretório raiz. De todos os atributos, o mais importante é o atributo de "diretório", pois ele permite a existência de subpastas. As pastas, mesmo quando vazias, são vistas pelo sistema operacional como arquivos. Dentro desse arquivo ficam armazenadas informações sobre o nome da pasta, atributos como somente leitura, oculto, etc., a posição da pasta na árvore de diretórios (C:WindowsSystem, por exemplo) e informações sobre quais arquivos ou subpastas estão guardados dentro dela, assim como a localização destes arquivos no disco. Como o diretório raiz ocupa (no sistema FAT) um espaço equivalente a apenas 16 KB no disco rígido (32 setores), podemos ter apenas 512 entradas de arquivos ou diretórios. Cada sub-pasta funciona mais ou menos como um novo diretório raiz, permitindo que tenhamos mais arquivos no disco. Como uma pasta (que nada mais é do que um arquivo, marcado com o atributo especial) pode ocupar o espaço que quiser, não temos a limitação de 512 arquivos, como no diretório raiz. Qualquer arquivo com o atributo "diretório", passa a ser visto pelo sistema operacional como uma pasta, mas a tentativa de transformar um arquivo qualquer em pasta não daria certo pois, apesar de, em essência, as pastas também serem arquivos, elas possuem um formato específico. 505
  • 506. Uma curiosidade sobre as subpastas é que elas só passaram a ser suportadas a partir da versão 2.0 do DOS. Os usuários do DOS 1.0 tiveram que conviver durante algum tempo com um sistema que permitia armazenar arquivos apenas no diretório raiz, com a conseqüente limitação de 512 arquivos no HD. Finalizando, o atributo "arquivo" é usado com relação a arquivos que raramente são modificados, ou que são cópias de backup de outros arquivos. Muitos programas de backup verificam este atributo quando fazem um backup incremental (quando são salvos apenas os arquivos que foram alterados desde o último backup). Nesse caso, o programa de backup retira o atributo após salvar o arquivo. Ao ser alterado por algum outro programa, o arquivo novamente recebe o atributo, permitindo ao programa de backup saber quais arquivos foram modificados. Para alterar os atributos de um arquivo através do Windows Explorer, basta clicar sobre ele com o botão direito do mouse e abrir a janela de propriedades. Também é possível alterá-los via linha de comando, usando o comando ATTRIB. Concluindo, temos o VFAT (Virtual File Allocation Table), uma extensão incluída a partir do Windows 95 e suportado também no Linux e outros sistemas. Inicialmente, o sistema FAT possuía uma grave limitação quanto ao tamanho dos nomes de arquivos, que não podiam ter mais que 11 caracteres, sendo 8 para o nome do arquivo e mais 3 para a extensão, como em "formular.doc". O limite de apenas 8 caracteres era um grande inconveniente para os usuários do MS-DOS. O "Boletim da 8a reunião anual de diretoria", por exemplo, teria de ser gravado na forma de algo como "8reandir.doc". NTFS O NTFS é um sistema de arquivos mais antigo do que muitos acreditam. Ele começou a ser desenvolvido no início da década de 1990, quando o projeto do Windows NT dava os seus primeiros passos. Já que o grande problema do sistema FAT16 era o fato de serem usados apenas 16 bits para o endereçamento de cada cluster, permitindo apenas 65 mil clusters por partição, o NTFS incorporou desde o início a capacidade para endereçar os clusters usando endereços de 64 bits. A única limitação agora passa a ser o tamanho dos setores do HD. Como cada setor possui 512 bytes, o tamanho de cada cluster usando NTFS também poderá ser de 512 bytes, independentemente do tamanho da partição. É sem dúvida um grande avanço sobre os clusters de 32 KB e as partições de até 2 GB do sistema FAT16. Mas, existe um pequeno problema em endereçar partições muito grandes usando clusters de 512 bytes: o desempenho. Com um número muito grande de clusters, o processamento necessário para encontrar os dados desejados passa a ser muito grande, diminuindo a performance. 506
  • 507. Assim como na FAT 32, ficou estabelecido que o tamanho mínimo de clusters seria usado por default apenas em partições de um certo tamanho: Tamanho da partição Tamanho do cluster até 512 MB 512 bytes até 1 GB 1 KB até 2 GB 2 KB acima de 2 GB 4 KB Apesar do default ser usar clusters de 4 KB em qualquer partição maior do que 2 GB, você pode criar partições com clusters do tamanho que desejar, através do assistente para criação de partições do Windows 2000/XP, que pode ser encontrado em Painel de controle > Ferramentas Administrativas > Gerenciamento do computador > Armazenamento > Gerenciamento de disco. Do lado direito da tela será mostrado um mapa dos HDs instalados na máquina, basta clicar com o botão direito sobre uma área de espaço livre e em seguida em "criar partição": Continuando, mais uma vantagem do sistema NTFS é que os nomes de arquivos e pastas utilizam caracteres em Unicode, em vez de ACSII. O ASCII é o sistema onde cada caracter ocupa 1 byte de dados, mas são permitidas apenas letras, números e alguns caracteres especiais. No Unicode, cada caracter ocupa dois bytes, o que permite 65 mil combinações, o suficiente para 507
  • 508. armazenar caracteres de diversos idiomas. Isso permite que usuários do Japão, China, Taiwan e outros países que não utilizam o alfabeto ocidental, possam criar arquivos usando caracteres do seu próprio idioma, sem a necessidade de instalar drivers e programas adicionais. Outro ponto importante onde o NTFS é superior ao sistema FAT é na tolerância a falhas. No sistema FAT, sempre que o sistema trava ou é desligado enquanto estão sendo atualizados arquivos e diretórios no HD, existe uma possibilidade muito grande do sistema tornar-se inconsistente, com arquivos interligados, agrupamentos perdidos e outros problemas. Surge, então, a necessidade de rodar o scandisk depois de cada desligamento incorreto. No NTFS, o sistema mantém um log de todas as operações realizadas. Com isto, mesmo que o micro seja desligado bem no meio da atualização de um arquivo, o sistema poderá, durante o próximo boot, examinar este log e descobrir exatamente em que ponto a atualização parou, tendo a chance de automaticamente corrigir o problema. Além de reduzir a perda de tempo, a possibilidade de perda de dados é muito menor. Se você chegou a usar o Windows 95/98/ME, deve lembrar-se da "tela de boas vindas" do scandisk, que era executado após cada desligamento incorreto: O famigerado teste do scandisk :) Clusters contendo setores defeituosos também são marcados automaticamente, conforme são detectados, sem a necessidade de usar o scandisk ou qualquer outro utilitário. Nesse caso, a marcação é feita na tabela 508
  • 509. de endereçamento da partição, de forma que a lista de setores defeituosos é perdida ao reparticionar o HD. Antigamente, os HDs eram menos confiáveis e o aparecimento de setores defeituosos, um fenômeno muito mais comum, de forma que a maioria dos programas de formatação realizavam um teste de superfície durante a formatação da partição (como no caso do format usado no Windows 95/98, onde formatar uma partição podia demorar mais de uma hora). Atualmente, a maioria dos programas realiza uma formatação rápida, presumindo que o HD não possua setores defeituosos. Existiram diversas versões do NTFS, que acompanharam a evolução do Windows NT. A partir do Windows 2000, foi introduzido o NTFS 5, que trouxe diversos aperfeiçoamentos, incluindo o suporte ao Active Directory. Outro recurso interessante é a possibilidade de encriptar os dados gravados, de forma a impedir que sejam acessados por pessoas não autorizadas, mesmo caso o HD seja removido e instalado em outro micro. Este recurso de encriptação é interessante, por exemplo, para profissionais de campo, que levam dados secretos em seus laptops. É possível tanto criptografar o disco inteiro quanto pastas ou arquivos individuais. Também é possível compactar pastas e arquivos individuais, economizando espaço em disco. No Windows 95/98 era possível compactar partições usando o drvspace, mas só era possível compactar partições inteiras, o que normalmente acaba não sendo um bom negócio, pois diminuía bastante a velocidade do micro e aumentava a possibilidade de perda de dados. Naturalmente, a compactação também é diferente da feita por programas como o Winzip, já que os arquivos e pastas continuam acessíveis exatamente da mesma forma, com o sistema fazendo a compactação e descompactação do arquivo de forma transparente. Com a possibilidade de compactar pastas individuais, você pode comprimir apenas as pastas contendo um grande volume de arquivos que suportam um bom nível de compressão, deixando de lado pastas com fotos, músicas e arquivos de vídeo, arquivos que já estão comprimidos. Para compactar uma pasta, acesse o menu "Propriedades". Na seção "avançadas", marque a opção "Compactar arquivos para economizar espaço". A compactação de arquivos exige uma carga adicional de processamento, já que o sistema tem o trabalho de descompactar os arquivos antes de acessá- los. Antigamente, usar compactação reduzia muito o desempenho do sistema, já que os processadores eram mais lentos. Num micro atual, a redução é muito menos significativa e, em muitos casos, o uso da compactação pode até mesmo melhorar o desempenho, já que arquivos compactados ocupam menos espaço e, conseqüentemente, são lidos mais rapidamente pela cabeça de leitura. 509
  • 510. Estruturas lógicas do NTFS Assim como no sistema FAT, no NTFS são incluídas várias estruturas lógicas no HD. Apesar da idéia ser basicamente a mesma, estas estruturas são bem diferentes no NTFS. Em primeiro lugar, temos a MFT (Master File Table), que substitui a FAT, armazenando as localizações de todos os arquivos e diretórios, incluindo os arquivos referentes ao próprio sistema de arquivos. Mas, a forma como este mapeamento é feito difere um pouco do sistema FAT. Cada entrada de arquivo ou diretório no MFT possui 2 KB, nos quais são armazenados o nome do arquivo e seus atributos. Em geral, sobra uma pequena área, usada para armazenar dados, com cerca de 1500 bytes (pode ser maior ou menor, dependendo do espaço ocupado pelo nome e pelos atributos do arquivo) que é usada para guardar o início do arquivo. Caso o arquivo seja muito pequeno, ele poderá ser armazenado diretamente na entrada no MFT. Caso contrário, serão armazenados apenas os números dos clusters ocupados pelo arquivo. Em alguns casos, não é possível armazenar nem mesmo os atributos do arquivo no MFT. Nesse caso, os atributos serão gravados em clusters vagos do HD, e a MFT conterá apenas entradas que apontem para eles. Pode parecer estranho que um arquivo possa ter mais de 2 KB só de atributos, mas no NTFS os atributos do arquivo vão muito além dos atributos de arquivo, diretório, oculto, etc. que existem no sistema FAT. Os atributos do arquivo incluem seu nome, versão, nome MS-DOS (o nome simplificado com 8 caracteres e extensão), mas, principalmente incluem as permissões do arquivo, quais usuários do sistema poderão acessa-lo ou não e, ainda, um espaço reservado para auditoria, que permite armazenar informações sobre quais operações, relacionadas ao arquivo, devem ser gravadas para que seja possível realizar uma auditoria posteriormente, caso necessário. Em seguida, temos a questão das permissões de acesso, uma parte importante da configuração de um servidor, ou de qualquer máquina que vá ser utilizada por diversos usuários. Para configurar as permissões de acesso, abra a guia "Segurança" dentro das propriedades do arquivo. As configurações valem tanto para acessos locais quanto acessos através da rede. O Windows aplica as permissões de acesso de acordo com o usuário logado na máquina. Por default, todos têm acesso total à pasta. Você verá no campo "nome" o grupo "todos" e todas as permissões marcadas como "permitir". O grupo "todos" significa todos os usuários do sistema. Se você quiser um melhor controle, pode deletar o grupo "todos" e adicionar um a um os usuários que terão acesso à pasta. 510
  • 511. Depois de fazer isso, clique sobre o usuário para configurar as suas permissões, que aparecem na parte de baixo da janela. Você pode até mesmo configurar as permissões de modo que nem você mesmo possa acessar a pasta :). Nesse caso, você receberá uma mensagem de acesso negado até voltar e reconfigurar as permissões. A configuração das permissões pode ser a parte mais importante da implantação de uma rede baseada no Windows 2000, XP ou mesmo do antigo NT, ao mesmo tempo em que pode ser de longe a mais trabalhosa, dependendo do número de usuários e restrições que tiver de configurar. É possível, também, estabelecer quotas de disco, que limitam a quantidade de espaço que determinados usuários podem utilizar. Este recurso é muito utilizado em servidores web e em servidores de arquivo, mas pode ser útil também em situações mais corriqueiras, como quando você precisa limitar quanto espaço seu irmão menor pode usar, evitando que ele entupa o HD de downloads. ;) O NTFS inclui também recursos que reduzem de forma significativa a fragmentação do sistema de arquivos. Quando existe um volume considerável de espaço em disco, o sistema reserva até 15% do espaço da partição para armazenar o MFT e as entradas referentes aos atributos dos arquivos, de forma que todas as informações possam ser gravadas em setores contínuos. Os próprios arquivos são salvos de forma inteligente, com o sistema dando preferência a áreas onde ele pode ser gravado seqüencialmente, sem fragmentação. Apesar disso, com o passar dos meses, é normal que um certo nível de fragmentação ocorra, de forma que um desfragmentador vem a calhar. Tanto o Windows 2000 e XP quanto o Vista incluem um desfragmentador capaz de lidar 511
  • 512. com partições NTFS. Apesar de demorado, vale a pena usá-lo de vez em quando. Com relação ao desempenho, existe uma certa polêmica, já que, por ser mais complexo, o NTFS é realmente mais lento que o sistema FAT em micros muito antigos, ou quando são manipuladas pequenas quantidades de arquivos. Esse é um dos motivos dele ser utilizado apenas em micros PCs e não em câmeras e celulares, por exemplo, onde o processamento necessário seria proibitivo. Apesar disso, o NTFS é capaz de lidar eficientemente com volumes muito maiores de arquivos, de forma que a balança pende para o outro lado em cenários mais complexos, como na bagunça de arquivos, e-mails, fotos, músicas e arquivos temporários que é o HD de um PC atual. Por exemplo, o NTFS utiliza o conceito de balanced trees (árvores balanceadas ou B+ trees), onde as informações relacionadas a cada diretório são gravadas próximas umas das outras, ao invés de ficarem em uma tabela central, como no sistema FAT. A cabeça de leitura precisa percorrer uma distância maior para acessar as informações relacionadas a cada diretório, mas, em compensação, perde menos tempo lendo informações referentes aos arquivos dentro deste diretório, o que acaba compensando a perda inicial e até revertendo em ganho, que se torna mais e mais expressivo conforme cresce o volume de arquivos e pastas armazenados. Concluindo, temos o LFS (Log File Service), que é o principal responsável pela tolerância a falhas do sistema NTFS. Tolerância a falhas, neste caso, significa não perder dados ou estruturas do sistema de arquivos quando o sistema travar, ou houver qualquer outro imprevisto, ou que, pelo menos, o estrago seja o menor possível. Para isso, o sistema mantém um log com todas as alterações feitas no sistema de arquivos. Ao gravar um arquivo qualquer, por exemplo, será primeiro gravada uma entrada no log, com os detalhes sobre a operação, qual arquivo está sendo gravado, em que parte do disco, etc. ao terminar a gravação é gravada uma outra entrada, um OK confirmando que tudo deu certo. Caso o sistema seja desligado incorretamente durante a gravação, é possível verificar no próximo boot o que estava sendo feito e fazer as correções necessárias. Periodicamente, o sistema verifica todas as entradas do Log e caso esteja tudo em ordem, deleta o antigo log, para evitar que o arquivo ocupe muito espaço em disco. EXT3 O EXT3 é atualmente o sistema de arquivos mais utilizado no mundo Linux. Usado por padrão pela grande maioria das distribuições. Tudo começou com o sistema EXT (Extended File System), introduzido em 1992. Nos estágios primários de desenvolvimento, o Linux utilizava um sistema de arquivos bem mais antigo, o MinixFS (o Minix é um sistema Unix, que Linux Torvalds usou como base nos estágios primários do desenvolvimento do 512
  • 513. Linux). Entretanto, o MinixFS possuía pesadas limitações, mesmo para a época. Os endereços dos blocos de dados tinham apenas 16 bits, o que permitia criar partições de no máximo 64 MB. Além disso, o sistema não permitia nomes de arquivos com mais de 14 caracteres. Não é de se estranhar que, em pouco tempo o Linux ganhou seu sistema de arquivos próprio, o "Extended File System", ou simplesmente EXT, que ficou pronto em abril de 92 a tempo de ser incluído no Kernel 0.96c. Nesta primeira encarnação, o EXT permitia a criação de partições de até 2 GB e suportava nomes de arquivos com até 255 caracteres. Foi um grande avanço, mas o sistema ainda estava muito longe de ser perfeito. O desempenho era baixo e ele era tão sujeito à fragmentação de arquivos quanto o sistema FAT. Além disso, logo começaram a surgir HDs com mais de 2 GB, de forma que em 1993 surgiu a primeira grande atualização, na forma do EXT2. O EXT2 trouxe suporte a partições de até 32 TB, manteve o suporte a nomes de arquivos com até 255 caracteres, além de diversos outros recursos. O maior problema do EXT2 é que ele não inclui nenhum sistema de tolerância a falhas. Sempre que o sistema é desligado incorretamente, é necessário utilizar o fsck, um utilitário similar ao scandisk do Windows, que verifica todos os blocos do sistema de arquivos, procurando por inconsistências entre as estruturas e descrições e os dados efetivamente armazenados. O teste do fsck demora bastante (bem mais que o scandisk) e o tempo cresce proporcionalmente de acordo com o tamanho da partição. Em um HD atual, o teste pode, literalmente, demorar horas. Este problema foi corrigido com o EXT3, que foi introduzido em 1999. A principal característica do EXT3 é o uso do recurso de journaling, onde o sistema de arquivos mantém um journal (diário) das alterações realizadas, um recurso similar ao LFS usado no NTFS. Este "diário" armazena uma lista das alterações realizadas, permitindo que o sistema de arquivos seja reparado de forma muito rápida após o desligamento incorreto. O fsck continua sendo usado, mas agora ele joga de acordo com as novas regras, realizando o teste longo apenas quando realmente necessário. O EXT3 possui três modos de operação: No modo ordered (o default), o journal é atualizado no final de cada operação. Isto faz com que exista uma pequena perda de desempenho, já que a cabeça de leitura do HD precisa realizar duas operações de gravação, uma no arquivo que foi alterada e outra no journal (que também é um arquivo, embora especialmente formatado) ao invés de apenas uma. 513
  • 514. No modo writeback o journal armazena apenas informações referentes à estrutura do sistema de arquivos (metadata) e não em relação aos arquivos propriamente ditos, e é gravado de forma mais ocasional, aproveitando os momentos de inatividade. Este modo é o mais rápido, mas em compensação oferece uma segurança muito menor contra perda e corrompimento de arquivos causados pelos desligamentos incorretos. Finalmente, temos o modo journal, que é o mais seguro, porém mais lento. Nele, o journal armazena não apenas informações sobre as alterações, mas também uma cópia de segurança de todos os arquivos modificados, que ainda não foram gravados no disco. A cada alteração, o sistema grava uma cópia do arquivo (no journal), atualiza as informações referentes à estrutura do sistema de arquivos, grava o arquivo e atualiza novamente o journal, marcando a operação como concluída. Como disse, isso garante uma segurança muito grande contra perda de dados, mas em compensação reduz o desempenho drasticamente. Justamente por causa disso, este é o modo menos usado. Para usar o modo writeback ou o modo journal, você deve adicionar a opção "data=writeback", ou "data=journal" nas opções referentes à partição, dentro do arquivo "/etc/fstab". Desta forma, ao invés de usar "/dev/hda5 /mnt/hda5 ext3 defaults 0 2", por exemplo, você usaria "/dev/hda5 /mnt/hda5 ext3 data=writeback 0 2" O EXT3 (assim como o EXT2) utiliza endereços de 32 bits e blocos (análogos aos clusters usados no sistema FAT) de até 8 KB. Tanto o tamanho máximo da partição quanto o tamanho máximo dos arquivos são determinados pelo tamanho dos blocos, que pode ser escolhido durante a formatação: Tamanho dos Tamanho máximo da Tamanho máximo dos blocos partição arquivos 1 KB 2 TB 16 GB 2 KB 8 TB 256 GB 4 KB 16 TB 2 TB 8 KB 32 TB 2 TB Uma observação é que, em versões antigas do Kernel, o limite para o tamanho máximo de arquivos no EXT2 já foi de 2 GB e em seguida de 16 GB, mas ambas as limitações caíram a partir do Kernel 2.6, chegando à tabela atual. Por padrão, o tamanho do bloco é determinado automaticamente, de acordo com o tamanho da partição, mas é possível forçar o valor desejado usando o parâmetro "-b" do comando mkfs.ext3 (usado para formatar as partições EXT3 no Linux), como em "mkfs.ext3 -b 2048 /dev/hda1" (cria blocos de 2 KB) ou "mkfs.ext3 -b 4096 /dev/hda1" (para blocos de 4 KB). 514
  • 515. Assim como no caso do NTFS, usar clusters maiores resulta em mais espaço desperdiçado (sobretudo ao guardar uma grande quantidade de arquivos pequenos) mas, além do aumento no tamanho máximo dos arquivos e partições, resulta em um pequeno ganho de desempenho, já que reduz o processamento e o número de atualizações na estrutura do sistema de arquivos ao alterar os dados gravados. Embora o limite de 32 TB para as partições EXT3 não seja um problema hoje em dia, ele tende a se tornar um obstáculo conforme os HDs cresçam em capacidade, assim como os limites anteriores. Para evitar isso, o EXT4, legítimo sucessor do EXT3, incorporou o uso de endereços de 48 bits, o que permite endereçar um volume virtualmente ilimitado de blocos (só para referência, o EXT4 permite criar partições de até 1024 petabytes). O limite de 2 TB para os arquivos também foi removido, abrindo espaço para o armazenamento de bases de dados gigantes e outros tipos de arquivos que eventualmente venham a superar esta marca. Embora existam diversos outros sistemas de arquivos para o Linux, como o ReiserFS, XFS, JFS e assim por diante, o EXT3 continua sendo o sistema de arquivos mais utilizado, já que ele atende bem à maioria e é muito bem testado e por isso bastante estável. A tendência é que o EXT3 seja lentamente substituído pelo EXT4 e os demais sistemas continuem entrincheirados em seus respectivos nichos. Recuperação de dados Um dos problemas fundamentais dos HDs é que, por guardarem uma quantidade muito grande de informações, qualquer defeito tem um efeito potencialmente catastrófico. É muito diferente de riscar ou perder um CD-ROM, por exemplo, já que o CD armazena uma pequena quantidade de dados, geralmente cópias de dados que estão gravados em algum outro lugar. Os casos de perda de dados podem ser divididas em duas classes: falhas causadas por defeitos mecânicos, onde o HD realmente pára de funcionar, impedindo a leitura e os defeitos lógicos, onde os dados são apagados, ou ficam inacessíveis, mas o HD continua funcionando. Diferentemente dos demais componentes do micro, que são eletrônicos, o HD é composto de partes móveis, componentes mecânicos que se desgastam e possuem uma vida útil definida. É bem verdade que os HDs atuais são muito mais confiáveis do que os modelos que utilizávamos a dez ou vinte anos atrás, mas o índice de defeitos continua sendo relativamente grande. Componentes individuais do HD, como o braço de leitura e o motor de rotação podem ser substituídos e os próprios discos podem ser removidos e instalados em outro HD, de forma que os dados possam ser lidos. Entretanto, a "manutenção de HDs" possui três problemas que impedem que ela seja utilizada em larga escala. 515
  • 516. O primeiro é que você precisa de outro HD idêntico ao primeiro, de onde retirar peças. Ou seja, para recuperar um HD, você precisaria, quase sempre, inutilizar outro. O segundo é que o processo é bastante delicado, sobretudo ao manipular os discos e as cabeças de leitura, que são incrivelmente sensíveis, Além disso, temos o problema principal, que é a necessidade de realizar todo o processo dentro de uma sala limpa, já que a poeira presente no meio ambiente condena qualquer HD aberto fora de uma. Defeitos na placa lógica do HD podem ser resolvidos com a substituição dos componentes avariados ou (mais simples) com a substituição da placa lógica inteira por outra, retirada de um HD do mesmo modelo. Como a placa lógica é externa, é muito simples substituí-la e é perfeitamente possível encontrar outro HD idêntico à venda, pesquisando nos sites de leilão. Qualquer volume de dados importantes vale muito mais do que um HD usado. Entretanto, defeitos nos componentes internos do HD demandam os serviços de uma empresa especializada em recuperação de dados, que tenha uma sala limpa e a aparelharem necessária. Na grande maioria dos casos, abrir o HD em casa só vai servir para reduzir as chances de recuperação dos dados. S.M.A.R.T A boa notícia sobre os defeitos mecânicos é que, na maioria dos casos, eles são causados por desgaste cumulativo, de forma que, antes de parar definitivamente, o HD emite sinais que permitem perceber que algo está errado. Tudo geralmente começa com uma redução progressiva no desempenho, causada por desgaste do motor de rotação, desgaste do sistema que movimenta as cabeças de leitura, erros de leitura ou as três coisas combinadas. Outro sinal característico é um barulho de "click click" no início do boot (que com o tempo passa a se tornar mais e mais freqüente, até que o HD passa a não fazer outra coisa ao ser ligado), que indica problemas de posicionamento das cabeças de leitura, causados por envelhecimento da mídia ou danos cumulativos nas próprias cabeças. É normal que o HD emita um "click" ao ser ligado ou retornar do modo de economia de energia, mas clicks repetidos são sinal de problemas. Outros sinais, menos visíveis, são monitoradas pela própria placa lógica do HD, utilizando um sistema chamado S.M.A.R.T. O relatório é armazenado em uma área de memória não volátil do HD e guarda informações estatísticas armazenadas desde o primeiro boot. O S.M.A.R.T não tem como prever defeitos súbitos, como um chip estourado na placa lógica, por causa de um pico de tensão, mas ele faz um bom trabalho em alertar sobre o risco de defeitos mecânicos. Todos os HDs atuais oferecem suporte ao S.M.A.R.T. Você pode acompanhar o relatório através de programas como o HDTune (http://www.hdtune.com/) e o 516
  • 517. SmartExplorer (http://adenix.net/downloads.php), ambos freeware, ou o daemon smartmontools (http://smartmontools.sourceforge.net/), no Linux. Estes programas mostram uma série de atributos relacionados ao HD, como neste screenshot do HDTune: Em um HD saudável (mesmo em um HD que já tenha dois anos de uso ou mais), todos atributos devem receber o Status "ok", indicando que estão dentro da faixa de tolerância especificada pelo fabricante. Quando qualquer um dos atributos passa a apresentar a flag "failed", é hora de fazer backup dos dados e trocar de HD, já que a possibilidade de falha passa a ser muito grande. Se ainda não houver muitos sintomas aparentes, você pode até aproveitar o HD em algum micro sem muita importância (usado apenas para navegar, por exemplo), mas não o utilize mais para guardar dados importantes. Cada atributo possui quatro valores. O "Current" é o valor atual, enquanto o "Worst" é a pior medição já obtida (na maioria dos casos ambos são iguais, já que a maioria dos valores vai decaindo progressivamente), ambos indicados na forma de um valor decrescente. A coluna "Threshold", por sua vez, indica o limite mínimo, estabelecido pelo fabricante. A quarta coluna (Data) mostra a informação em valores absolutos (geralmente crescente). Por exemplo, no screenshot, o "Start/Stop Count" (que indica quantas vezes o HD foi ligado e desligado) está em "213" e o "Power On Hours 517
  • 518. Count" (quantas horas o HD já permaneceu ligado) está em "454", indicando que se trata de um HD semi-novo. A coluna "Data" da opção "Raw Read Error Rate" indica o número de erros de leitura, enquanto a "Reallocated Event Count" indica o número de badblocks remapeados. Qualquer aumento constante nos dois valores é uma indicação de envelhecimento da mídia ou (em casos mais extremos) danos às cabeças de leitura. As opções "Throughput Performance" (o desempenho bruto do HD) e "Seek Time Performance" (o tempo de acesso) são indicativos do desempenho relativo do HD (por isso ambas estão com o valor "100" na coluna Current do screenshot, indicando que as medições estão normais). Reduções nestes dois valores indicam desgaste do motor de rotação, ou do sistema de movimentação dos braços de leitura. Em ambos os casos, os valores vão mudando lentamente, permitindo que você acompanhe o desgaste do HD e possa planejar o próximo upgrade ou substituição muito antes dos alarmes começarem a disparar. Sai sempre muito mais barato fazer backup e trocar o HD quando ele começa a apresentar sinais do problemas do que ter que recorrer a uma empresa de recuperação depois que o desastre já aconteceu. Criando uma imagem binária Se, por outro lado, os dados foram apagados mas o HD continua funcionando perfeitamente, é quase sempre possível possível recuperar utilizando os softwares adequados. Desde que os arquivos deletados ainda não tenham sido sobrescritos por outros, você vai conseguiu recuperá-los em mais de 90% dos casos. O primeiro passo ao perceber que os arquivos foram deletados ou que o HD foi acidentalmente formatado é desligar o micro imediatamente, reduzindo as chances de que novos arquivos sejam gravados sobre os antigos. Quanto menos tempo o micro permanecer ligado, maior as chances de recuperar os dados. O próximo passo é fazer uma imagem binária do HD. Uma imagem binária é uma cópia bia a bit do HD, incluindo o conteúdo da trilha MBR, a tabela de partições e todos os dados. A imagem binária permite que o conteúdo do HD (incluindo os arquivos deletados) sejam restaurados posteriormente. Ela é um "seguro" que permite retornar ao estágio original depois de qualquer tentativa malfadada. Uma das ferramentas mais simples e mais eficazes para fazer isso é o "dd", um pequeno utilitário padrão do Linux, disponível em qualquer distribuição. Para usá-lo, instale um segundo HD, maior que o primeiro, onde será guardada a cópia. A imagem binária possui sempre exatamente o mesmo tamanho do HD, de forma que um HD de 80 GB, resultará em uma imagem de também 80 GB, mesmo que ele possua apenas 5 GB ocupados. A idéia da imagem binária 518
  • 519. é salvar não apenas os arquivos que o sistema "vê", mas sim todos os dados armazenados nos discos magnéticos, incluindo seus arquivos deletados. Em seguida, dê boot usando uma distribuição Linux live-CD com que tenha familiaridade, como o Kurumin, Ubuntu, Knoppix, Kanotix, Sidux ou outro. Depois de terminado o boot, abra uma janela de terminal e logue-se como root. Na maioria dos live-CDs, você pode fazer isso digitando simplesmente: $ sudo su Em outros, você encontrará um link para abrir um terminal como root em algum lugar do menu. Chame agora o "gparted", rodando o comando no terminal. Use-o para ver como o sistema detectou seus HDs e assim ter certeza de qual é o dispositivo referente ao HD de origem e qual é o do HD de destino. Por padrão, os HDs são detectados como: Master da IDE primária: /dev/hda Slave da IDE primária: /dev/hdb Master da IDE secundária: /dev/hdc Slave da IDE secundária: /dev/hdd Primeiro HD SATA: /dev/sda Segundo HD SATA: /dev/sdb Terceiro HD SATA: /dev/sdc Quarto HD SATA: /dev/sdd Dentro de cada HD, as partições primárias são numeradas de 1 a 4 e as estendidas de 5 em diante. A primeira partição do primeiro HD SATA, por exemplo, seria vista pelo sistema como "/dev/sda1". Depois de identificados os HDs, o primeiro passo é montar a partição do HD maior, onde será armazenada a imagem. Como disse, esta partição deve ter um volume de espaço livre equivalente ou superior ao tamanho do HD onde estão os dados a se recuperar. Se o HD destino é o "/dev/sdb" e você vai salvar a imagem na primeira partição primária, então os comandos para montá-la seriam: # mkdir /mnt/sdb1 # mount /dev/sdb1 /mnt/sdb1 Você deve montar apenas o HD destino. O HD de origem permanece desmontado, pois o sistema se limitará a fazer uma cópia de baixo nível, sem tentar entender os dados gravados. Para gerar a imagem do HD "/dev/sda", salvando-a no arquivo "sda.img", dentro da partição que acabamos de montar, o comando seria: # dd if=/dev/sda of=/mnt/sdb1/sda.img 519
  • 520. A cópia binária é sempre demorada. Se a transferência de dados entre os dois HDs ficar em média a 30 MB/s, por exemplo, a cópia de um HD de 80 GB demoraria pouco mais de 45 minutos. Infelizmente o dd não exibe um indicador de progresso, por isso o melhor a fazer é deixar o micro fazendo seu trabalho e ir se preocupar com outra coisa. Outra opção é fazer a cópia diretamente para o segundo HD. Esta segunda opção é até preferível, pois você pode fazer todo o processo de recuperação diretamente no segundo HD (com a cópia), sem sequer precisar se arriscar a mexer no HD original. O segundo HD não precisa ser idêntico ao primeiro, nem possuir exatamente a mesma capacidade. A única regra é que ele seja do mesmo tamanho ou maior que o primeiro. Neste caso, você indica diretamente os dois dispositivos no comando do dd, com ambos desmontados. Para criar uma cópia do /dev/sda, no /dev/sdb (apagando todo o conteúdo do disco de destino), o comando seria: # dd if=/dev/sda of=/dev/sdb Este mesmo comando pode ser usado para clonar HDs, em casos onde você precisa instalar o sistema em vários micros iguais. Existem formas mais rápidas de fazer isso, usando programas como o Partimage, mas o dd também funciona. Falarei um pouco sobre o Partimage no capítulo sobre notebooks, onde ensino a usá-lo para fazer imagens do sistema pré-instalado, para casos onde o note vem sem um CD de recuperação. 520
  • 521. Reparando partições Possivelmente, o tipo mais comum de "recuperação" de arquivos não implica em realmente recuperar arquivos deletados, mas simplesmente reaver arquivos depois de problemas no sistema operacional, que impeçam o boot. Antes de mais nada, comece verificando se os arquivos realmente foram perdidos, ou se ficaram simplesmente inacessíveis por causa da pane do sistema. Muitas vezes, partições aparentemente danificadas, que não são mais vistas através do Windows podem ser lidas perfeitamente ao dar boot usando uma distribuição Linux live-cd. Comece abrindo o gparted (como root, através do terminal), de forma a verificar se as partições do HD continuam presentes (se não estiverem, passe para o tópico seguinte). Se tudo estiver em ordem, o próximo passo é montar as partições via linha de comando, como em: # mkdir /mnt/sda1 # mount -o ro /dev/sda1 /mnt/sda1 # mkdir /mnt/sda2 # mount -o ro /dev/sda2 /mnt/sda2 Se as partições do HD foram montadas sem erros, significa que provavelmente a estrutura está intacta, bom sinal. É interessante usar a opção "-o ro", como no exemplo, para que as partições sejam montadas em modo somente-leitura, eliminando qualquer possibilidade de piorar as coisas caso elas estejam danificadas. Abra o Konqueror (ao utilizar uma distribuição baseada no KDE), ou o Nautilus (ao usar o Ubuntu ou outra baseada no Gnome). Faça isso usando o terminal aberto como root, para evitar qualquer problema relacionado às permissões de acesso. Para abrir o Konqueror, já mostrando o conteúdo da pasta onde foi montada a partição, use o comando: # konqueror /mnt/sda1 Para usar o Nautilus, o comando fica: # nautilus /mnt/sda1 Se todos os arquivos estiverem em ordem, você só precisa copiá-los para outro HD (ou um compartilhamento de rede) e o problema estará resolvido. Caso o problema seja justamente na montagem de partição, o próximo passo é reparar as estruturas lógicas do sistema de arquivos, de forma que a partição possa ser montada e os dados voltem a ficar acessíveis. Mais uma vez, tudo pode ser feito a partir do live-cd. 521
  • 522. Para partições formatadas em FAT16 ou FAT32, incluindo pendrives, cartões, câmeras e outros dispositivos, use o comando "fsck.vfat". Verificar partições formatadas em FAT regularmente é importante, pois este sistema de arquivos não possui um mecanismo confiável de detecção de erros. As partições e pendrives são montados mesmo que o sistema de arquivos esteja corrompido, fazendo com que os erros acabem se acentuando até o ponto em que os arquivos não possam ser lidos ou modificados, ou o sistema realmente não consegue montar a partição, dizendo que ela não está formatada ou outro erro similar. Comece fazendo o teste não destrutivo, que acessa o dispositivo em modo somente-leitura e apenas avisa dos erros que encontrar: # fsck.vfat /dev/hda1 De acordo com os erros que forem encontrados e a importância dos dados, você pode optar pela recuperação automática, que simplesmente corrige todos os erros, colocando arquivos corrompidos que puderam ser recuperados no diretório raiz, ou a recuperação manual, onde você pode verificar cada modificação. Para fazer a recuperação automática, use: # fsck.vfat -a /dev/hda1 Para a recuperação manual (bem mais longa e sujeita a erro humano), use: # fsck.vfat -r /dev/hda1 Para que ele faça um exame de superfície, marcando os setores defeituosos, use a opção "-at", como em: # fsck.vfat -at /dev/hda1 Erros em partições NTFS são mais incomuns, pois o sistema de arquivos inclui mais camadas de tolerância a falhas e o Windows realiza uma verificação a cada boot, executando o teste longo quando necessário. Apesar disso, em casos onde a partição acumule erros a ponto de não ser mais montada pelo Windows, você pode utilizar o "ntfsfix", um pequeno utilitário que corrige os problemas mais comuns. Para usá-lo, indique a partição NTFS a recuperar, como em: # ntfsfix /dev/sda1 Depois de executado, o ntfsfix marca a flag de verificação para a partição, o que força a verificação do sistema de arquivos no próximo boot do Windows. Normalmente ele consegue reparar a partição o suficiente para que ela volte a ser montada e o scandisk do Windows cuida do resto. Caso o ntfsfix não esteja disponível, abra o gerenciador de pacotes e procure pelo programa "ntfsprogs". A maioria das distribuições live-cd atuais utilizam o UnionFS, que permite instalar pequenos programas mesmo com o sistema rodando a partir do CD. 522
  • 523. Temos em seguida as partições Linux, onde são utilizados os sistemas de arquivos EXT3 (ou EXT2), ReiserFS e (mais raramente) XFS. Assim como no caso do Windows, danos nas estruturas lógicas das partições podem fazer com que o sistema não inicialize mais, ou mesmo fazer com que você não consiga mais montar a partição, mesmo ao dar boot através do live-CD. Nesse caso, um reparo manual é necessário. Para reparar uma partição EXT3, use o comando: # fsck.ext3 /dev/hda1 Ele vai começar a apontar os erros e perguntar se cada um deve ser corrigido. Normalmente você pode ir apenas respondendo "y" para tudo, mas caso existam dados realmente importantes na partição é melhor prestar mais atenção. Arquivos danificados ou fragmentos de arquivos que puderam ser recuperados vão para a pasta "lost+found" no diretório raiz da partição. Você pode também adicionar o parâmetro "-f", que força a verificação da partição mesmo que o sistema de arquivos pareça não ter problemas: # fsck.ext3 -f /dev/hda1 O fsck não é capaz de recuperar o sistema de arquivos em casos de problemas com o superbloco, o setor que contém informações essenciais, como o tipo, tamanho, status e informações sobre a estrutura do sistema de arquivos. Quando não encontra o superbloco, o fsck simplesmente falha miseravelmente, exibindo um "fatal error", sem maiores explicações. Sempre que a partição é criada, são criados vários superblocos alternativos, que servem justamente de backups para casos de problemas com o primeiro. Você pode ver a lista de endereços usando o comando "mkfs.ext3 -n partição", como em: # mkfs.ext3 -n /dev/hda1 Ao usar o comando, nunca esqueça de incluir o "-n". Caso contrário, ao invés de mostrar as informações, ele vai formatar a partição (estou falando sério). No final do relatório você encontra: Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736 Alternativamente, você pode usar também o comando "dumpe2fs /dev/hda1 | grep -i superblock", que devolve a mesma informação. Outra opção é usar o Testdisk (que veremos a seguir). Ele oferece uma opção para listar superblocos alternativos em partições EXT, que você acessa em "Advanced > Superblock". Para restaurar o superbloco, chame novamente o comando "fsck.ext3", adicionando a opção "-b", seguida do endereço do superbloco que será usado. Caso, eventualmente, o primeiro resulte em erro, experimente o segundo, e assim por diante: 523
  • 524. # fsck.ext3 -f -b 32768 /dev/hda2 Para partições EXT2, use o comando "fsck.ext2", que suporta os mesmos parâmetros. Em partições formatadas em ReiserFS, comece com o comando: # reiserfsck --check /dev/hda1 Ele exibe um aviso: Do you want to run this program?[N/Yes] (note need to type Yes if you do): Ou seja, você precisa digitar "Yes" para continuar. Caso apenas dê Enter, ele aborta a operação. Ele vai verificar toda a estrutura do sistema de arquivos e indicar os erros encontrados. O próximo passo é usar a opção "--fix-fixable": # reiserfsck --fix-fixable /dev/hda1 Este segundo comando efetivamente corrige todos os erros simples, que possam ser corrigidos sem colocar em risco as demais estruturas do sistema de arquivos. Em 90% dos casos isto é suficiente. Caso seja encontrado algum erro grave, ele vai abortar a operação. Estes erros mais graves podem ser corrigidos com o comando: # reiserfsck --rebuild-tree /dev/hda1 Este comando vai reconstruir do zero todas as estruturas do sistema de arquivos, vasculhando todos os arquivos armazenados. Essa operação pode demorar bastante, de acordo com o tamanho e quantidade de arquivos na partição. Nunca interrompa a reconstrução, caso contrário você não vai conseguir acessar nada dentro da partição, até que recomece e realmente conclua a operação. O "--rebuild-tree" vai corrigir qualquer tipo de erro no sistema de arquivos. Ele só não vai resolver o problema se realmente existir algum problema físico como, por exemplo, um grande número de setores defeituosos no HD. Finalmente, se você estiver usando uma partição formatada em XFS, comece com o: # xfs_check /dev/hda1 Ele vai indicar os problemas encontrados. Para realmente corrigi-los, rode o: # xfs_repair /dev/hda1 Assim como no caso do reiserfsck, todo o processo é automático. Ao contrário do EXT3, tanto o ReiserFS quanto o XFS são sistemas de arquivos muito complexos, por isso qualquer intervenção manual só aumentaria a possibilidade de destruir tudo. 524
  • 525. Recuperando a MBR e tabela de partições Ao comprar um novo HD, você precisa primeiro formatá-lo antes de poder instalar qualquer sistema operacional. Existem vários programas de particionamento, como o qtparted, gparted, cfdisk e outros. Os programas de particionamento salvam o particionamento na tabela de partição, gravada no início do HD. Esta tabela contém informações sobre o tipo, endereço de início e final de cada partição. Depois do particionamento, vem a formatação de cada partição, onde você pode escolher o sistema de arquivos que será usado em cada uma (NTFS, EXT3, FAT32, ReiserFS, etc.). Ao instalar o sistema operacional, é gravado mais um componente: o gerenciador de boot, responsável por carregar o sistema operacional durante o boot. Tanto o gerenciador de boot quanto a tabela de particionamento do HD são salvos no primeiro setor do HD (a famosa trilha MBR), que contém apenas 512 bytes. Destes, 446 bytes são reservados para o setor de boot, enquanto os outros 66 bytes guardam a tabela de partição. Ao trocar de sistema operacional, você geralmente subscreve a MBR com um novo gerenciador de boot, mas a tabela de particionamento só é modificada ao criar ou deletar partições. Caso, por qualquer motivo, os 66 bytes da tabela de particionamento sejam sobrescritos ou danificados, você perde acesso a todas as partições do HD. O HD fica parecendo vazio, como se tivesse sido completamente apagado. Para evitar isso, você pode fazer um backup da trilha MBR do HD. Assim, você pode recuperar tudo caso ocorra qualquer eventualidade. Para fazer o backup, dê boot usando um live-cd, logue-se como root e use o comando: # dd if=/dev/hda of=backup.mbr bs=512 count=1 O comando vai fazer uma cópia dos primeiros 512 bytes do "/dev/hda" no arquivo "backup.mbr" (salvo no diretório atual). Lembre-se de substituir o "hda" pelo dispositivo correto do HD, que você pode conferir usando o Gparted. Você pode salvar o arquivo num disquete ou pendrive, mandar para a sua conta do gmail, etc. Caso no futuro, depois da enésima reinstalação do Windows XP, vírus, falha de hardware ou de um comando errado a tabela de particões for pro espaço, você pode dar boot com o live-cd e regravar o backup com o comando: # dd if=backup.mbr of=/dev/hda Claro que, no mundo real, quase ninguém faz backup da tabela de partições, o que nos leva ao Testdisk, uma ferramenta "sem preço" para recuperar partições acidentalmente deletadas, ou restaurar tabelas de partições corrompidas. 525
  • 526. Lembre-se de que o Testdisk é capaz de recuperar partições apenas enquanto as informações não são subscritas. Se você acabou de apagar a sua partição de trabalho, é bem provável que consiga recuperá-la, mas se o HD já tiver sido reparticionado e formatado depois do acidente, as coisas ficam muito mais complicadas. Sempre que um acidente acontecer, pare tudo e volte a usar o HD só depois de recuperar os dados. O Testdisk permite recuperar desde partições isoladas (incluindo as extendidas), até toda a tabela de partições, caso o HD tenha sido zerado. Ele suporta todos os principais sistemas de arquivos, incluindo FAT32, NTFS, EXT2, EXT3, ReiserFS, XFS, LVM e Linux Raid. A página oficial é a http://www.cgsecurity.org/testdisk.html onde, além da versão Linux, você encontra versões para Windows, DOS e até para o Solaris. Todas utilizam a mesma interface, e possuem os mesmos recursos, de forma que você pode simplesmente escolher qual utilizar de acordo com a situação. Se você tiver uma máquina Windows disponível, pode instalar o HD com a tabela de partições danificada como HD secundário e rodar a versão Windows do Testdisk. Em outros casos, pode ser mais rápido dar boot usando um live- CD e rodar a versão Linux do Testdisk, usando a própria máquina onde o HD está instalado, sem precisar removê-lo. O Link de download do programa é o: http://www.cgsecurity.org/wiki/TestDisk_Download. Ao rodar sob o Linux, o programa pode ser chamado diretamente através do terminal, enquanto ao rodar sob o Windows, os executáveis abrem uma janela do DOS. Em ambos os casos, você pode executar o programa diretamente, depois de descompactar o arquivo. Não é necessário instalar. No caso da versão Windows, você só precisa descompactar o arquivo .zip e clicar sobre o "testdisk_win.exe": 526
  • 527. Ao baixar a versão Linux, você obtém um arquivo .tar.bz2, que precisa ser descompactado usando o comando "tar -jxvf", como em: $ tar -jxvf testdisk-6.6.linuxstatic.tar.bz2 Acesse agora a pasta "testdisk-x.x/linux" (onde o x-x é a versão baixada) e logue-se como root, usando o comando "su -" e execute o comando "./testdisk_static", como em: $ cd testdisk-*/linux $ su - # ./testdisk_static Além da versão "genérica", disponível para download, o Testdisk pode ser (na maioria dos casos) instalado através do gerenciador de pacotes. Nos derivados do Debian, você pode instalá-lo via apt-get: # apt-get install testdisk Neste caso, o comando para executá-lo depois de instalado é apenas "testdisk". Outra observação é que muitos live-CDs trazem o testdisk pré-instalado, incluindo o Kurumin (a partir da versão 6.0), versões recentes do Knoppix (http://www.knoppix.com/), PLD (http://www.pld-linux.org/) e Ultimate Boot CD (http://www.ultimatebootcd.com). Vamos a um exemplo prático de como recuperar duas partições deletadas "acidentalmente". Onde o cfdisk está mostrando "Free Space" existem, na verdade, as partições "/dev/hda2" e "/dev/hda3", que removi previamente: Ao ser aberto, o Testdisk começa detectando os HDs instalados, permitindo que você selecione em qual deles o teste deve ser realizado. 527
  • 528. Ele é multiplataforma, por isso ele pergunta sob qual plataforma está sendo executado na opção seguinte. A menos que você esteja usando um Mac, uma workstation Sun ou um Xbox, responda sempre "[Intel] Intel/PC partition" (a opção default). Esta opção indica que você está usando um micro PC. O "intel", no caso, indica a plataforma (Intel i386), não tem nada a ver com o fabricante do processador usado. Na tela inicial, selecione o HD que será analisado, acesse a opção "Analyse" e em seguida "Proceed", para iniciar a varredura do disco. O Testdisk verifica a tabela de partições atual e em seguida pesquisa em todos os setores onde podem existir informações sobre outras partições que não constam na tabela principal. Veja que, apenas com o teste rápido, ele já conseguiu localizar as duas partições que haviam sido deletadas: Pressionando a tecla "P" você pode ver os dados dentro da partição, para ter certeza que os arquivos estão lá. Nos raros casos onde ele localize a partição, mas identifique incorretamente o sistema de arquivos, use a opção "T" para indicar o correto. Depois de checar se o particionamento detectado está correto, pressione "Enter" mais uma vez e você chega à tela final, onde pode salvar as alterações, usando a opção "Write". Reinicie o micro e monte a partição para checar os dados. Caso a lista não exiba a partição que você está procurando, use a opção "Search" no lugar do Write. Isto ativa o teste mais longo, onde ele vasculha todos os setores do HD em busca de partições deletadas. Este segundo teste demora alguns minutos e, em um HD com bastante uso, pode retornar uma 528
  • 529. longa lista de partições que foram criadas e deletadas durante a vida útil do HD. Nesse caso, preste atenção para recuperar a partição correta. Todas as partições listadas aqui aparecem com o atributo "D", que significa que a partição foi deletada. Para recuperar uma partição, selecione-a usando as setas para cima/baixo e use a seta para a direita para mudar o atributo para "*" (se ela for uma partição primária e bootável, como o drive C: no Windows), "P" se ela for uma partição primária ou "L" se ela for uma partição lógica. Lembre- se de que, no Linux, as partições de 1 a 4 são primárias e de 5 em diante são extendidas. É possível também adicionar uma partição manualmente, caso você saiba os setores de início e final, mas isso raramente é necessário. 529
  • 530. Pressione "Enter" mais uma vez e ele mostra uma tela de confirmação, com a tabela de particionamento alterada que será salva no disco. Use o "Write" para salvar ou volte à tela inicial para começar novamente em caso de erros. Tenha em mente que o tamanho da partição é reportado de acordo com o número de setores de 512 bytes. Uma partição de 5 GB, por exemplo, tem pouco mais de 10 milhões de setores. Depois de recuperar qualquer partição, é importante checá-la usando o utilitário apropriado, para que qualquer problema dentro da estrutura do sistema de arquivos seja corrigido. Outro programa para recuperar a tabela de partições, desta vez comercial, é o PTDD (Partition Table Doctor), disponível no http://www.ptdd.com/. Ele é mais limitado que o Testdisk em diversos aspectos, e é capaz de recuperar apenas partições FAT, NTFS e EXT, enquanto o Testdisk oferece suporte a um conjunto mais completo de sistema de arquivos. O PTDD roda apenas sobre o Windows, de forma que você precisa sempre remover o HD a reparar e instalá- lo como slave na máquina Windows com o PTDD instalado. Apesar disso, ele é gráfico e por isso mais fácil de usar, o que o torna a escolha preferida de muitos. 530
  • 531. Partition Table Doctor Recuperando arquivos apagados O Testdisk pode salvar a sua pele quando partições do HD são apagadas devido à ação de vírus, erros diversos durante o reparticionamento do HD, etc. Entretanto, ele pouco pode fazer para recuperar dados deletados dentro das partições, o que demanda ferramentas específicas. Entram em cena então os programas de recuperação, que vasculham os discos magnéticos em busca de arquivos que foram apagados porém ainda não sobrescritos por outros. Usando o Easy Recovery Um dos programas mais antigos e respeitados é o Easy Recovery, desenvolvido pela Ontrack. Ele está disponível no: http://www.ontrack.com/software/. Assim como em outros programas de recuperação de dados, o trabalho do Easy Recovery se concentra em acessar diretamente os dados armazenados na partição, procurando diretamente por diretórios e arquivos, sem depender das estruturas do sistema de arquivos. Apesar disso, todo o trabalho pesado é feito por baixo dos panos, fazendo com que o programa tenha uma interface muito simples. Basicamente, você indica a partição, espera o final do teste, marca os arquivos que deseja recuperar e indica o destino e, no final, checa os arquivos recuperados. 531
  • 532. Dentro do programa, acesse a seção "Data Recovery". Dentro dela, a opção "Deleted Recovery" permite recuperar arquivos e pastas dentro de uma partição contendo outros arquivos, como em casos em que algumas pastas e arquivos específicos foram deletados, mas o restante dos arquivos continua presente; enquanto a "Format Recovery" recupera dados em partições que foram reformatadas ou em casos onde o sistema foi reinstalado. Usando essa opção, o programa ignora a estrutura atual e tenta remontar a estrutura da formatação anterior. Existe ainda a opção "Raw Recovery" que tenta recuperar dados remanescentes em casos onde o HD já foi reparticionado mais de uma vez e dados foram gravados por cima, subscrevendo os anteriores. Nesse caso a eficiência é limitada, mas é quase sempre possível recuperar alguns arquivos. Note que o EasyRecovery é eficiente ao recuperar dados apagados dentro de partições, mas ele não é capaz de recuperar a tabela de particionamento. Em casos em que as partições são apagadas ou a tabela é corrompida, o trabalho de recuperação seria feito em duas partes. Na primeira você utilizaria o Testdisk para recuperar as partições originais e (caso necessário), usaria em seguida o EasyRecovery para recuperar arquivos dentro delas. É relativamente incomum que as duas coisas aconteçam ao mesmo tempo (perder a tabela de particionamento e perder junto arquivos dentro das partições) por isso normalmente usamos ou um ou outro. Tela principal do EasyRecovery 532
  • 533. O passo seguinte é indicar a partição onde estão os arquivos a recuperar. Além de partições em HDs, você pode recuperar dados em pendrives, cartões de memória e outros tipos de mídia. A principal observação é que você precisa sempre de uma partição separada para onde copiar os arquivos recuperados. Todo o teste do Easy Recovery é feito de forma não destrutiva, sem alterar os arquivos dentro da partição, por isso ele não é capaz de restaurar os arquivos diretamente. Outra observação é que você nunca deve instalar o Easy Recovery nem usar uma instalação do Windows dentro da mesma partição onde estão os arquivos. Se os arquivos perdidos estão armazenados na mesma partição onde o Windows está instalado, o melhor a fazer é desligar o micro, remover o HD, instalá-lo como slave em outro PC e realizar o teste a partir dele. Se você pretende recuperar dados de forma rotineira, o ideal é já ter um PC preparado para isso. Seleção da partição Dentro da tela de seleção de partição, você tem a opção de ativar o "Complete Scan". Essa opção faz o teste demorar mais, mas oferece uma eficiência muito maior. É recomendável marcá-la sempre que você precisar recuperar mais do que um ou dois arquivos recentemente deletados. De acordo com o tamanho da partição, o teste pode demorar de alguns minutos a algumas horas, já que o programa precisa ler todos os dados gravados e aplicar os algoritmos que permitem identificar os arquivos. 533
  • 534. Concluído o teste, os arquivos localizados são marcados e você só precisa selecionar quais quer recuperar (ou simplesmente marcar tudo). Lembre-se de verificar o espaço disponível na partição de destino. No screenshot a seguir, estou recuperando um grande volume de arquivos propositalmente deletados em uma partição FAT32. Como os arquivos não tinham sido sobrescritos, todos os arquivos foram recuperados. Duas das pastas perderam a primeira letra do nome ("_IMP" ao invés de "GIMP" e "_LV" ao invés de "VLC") e alguns dos arquivos de imagem ficaram com pequenos defeitos nos primeiros kbytes. Com exceção de detalhes como estes, a recuperação de arquivos recentemente deletados é quase sempre perfeita. Na tela seguinte você indica a pasta onde salvar os arquivos. Existe também a opção de dar upload para um servidor FTP (você pode manter um servidor FTP local na sua rede, de forma que os arquivos sejam copiados na velocidade de transmissão da rede local) ou gerar um arquivo compactado em .zip, de forma a reduzir o espaço ocupado. 534
  • 535. O Easy Recovery inclui também algumas ferramentas para reparo de arquivos danificados (as opções "File Repair" e "Email Repair" do menu) que permitem reparar arquivos do Office, arquivos .zip e arquivos de e-mail do outlook corrompidos. Elas podem ser usadas de forma independente das opções de recuperação. O grande problema com o EasyRecovery é que ele é um programa caro, voltado para o uso profissional. A versão de demonstração, disponível para download executa a varredura e mostra os arquivos que podem ser recuperados, mas sem opção de recuperá-los. A versão completa (para uso pessoal) custa nada menos que US$ 499 e está limitada à recuperação de dados em 20 HDs, enquanto a versão para uso profissional custa US$ 1499 anuais. Existe ainda uma versão Lite, que custa apenas US$ 89, mas está limitada à recuperação de apenas 25 arquivos por sessão. Outra questão é que o Easy Recovery não é multiplataforma e se restringe a recuperar arquivos em partições formatadas em FAT16, FAT32 e NTFS. Isso impede que ele possa ser considerado sozinho como uma opção completa de recuperação de dados. 535
  • 536. Usando o Photorec Outro programa digno de nota, que vale a pena também ter no kit de ferramentas é o Photorec. Ele utiliza algoritmos de recuperação bem menos eficientes que o Easy Recovery, por isso não é indicado para recuperar grandes quantidades de arquivos. Em compensação, ele oferece três diferenciais: é gratuito (e de código aberto), oferece suporte a um número muito maior de sistemas de arquivos e é multiplataforma, rodando tanto no Windows quanto no Linux e outros sistemas. Embora esteja longe de ser perfeito, ele faz um bom trabalho em recuperar arquivos do Office, imagens, arquivos zip e outros formatos de arquivos comuns. O Photorec é mantido pelos mesmos desenvolvedores do Testdisk. Originalmente a idéia era recuperar fotos acidentalmente deletadas em câmeras e cartões de memória (daí o nome). Como praticamente todo mundo usa câmeras digitais hoje em dia, ele atende a uma demanda crescente, que é recuperar fotos e vídeos deletados acidentalmente na memória de uma forma rápida. Daí em diante, foi adicionado suporte a outros formatos de arquivos e a um número crescente de sistemas de arquivos, transformando o Photorec em uma ferramenta de recuperação de dados de uso geral. O Link de download é o mesmo do Testdisk: http://www.cgsecurity.org/wiki/TestDisk_Download. Assim como no caso do Testdisk, existem tanto versões Windows quanto Linux e o uso de ambas é muito similar. No caso da versão Windows, você só precisa descompactar o arquivo. zip e clicar sobre o "photorec_win.exe". No caso da versão Linux, descompacte o arquivo e acesse a pasta criada (da mesma forma que no Testdisk) e execute o comando "./photorec_static -d", seguido de uma pasta do HD, onde os arquivos recuperados serão armazenados, e o dispositivo referente à partição, pendrive, câmera ou cartão onde estão os arquivos deletados, como em: # ./photorec_static -d /home/joao/tmp /dev/sda1 Dispositivos USB de armazenamento são reconhecidos no Linux como "/dev/sda" e o "1" indica a partição dentro do cartão ou pendrive (quase sempre dispositivos de memória Flash são particionados usando uma única partição). Em máquinas com HD SATA, o HD assume a posição de "/dev/sda" e o dispositivo USB assume a próxima posição disponível: "/dev/sdb". Se você tiver dois HDs SATA, então o dispositivo USB passa a ser o "/dev/sdc" e assim por diante. Se você tiver o Gparted instalado, pode usá-lo para ver como cada dispositivo foi reconhecido pelo sistema. Ao abrir o Photorec, ele começa confirmando o dispositivo onde será feita a recuperação. Como ele não altera os dados dentro da partição, apenas verifica os dados gravados, procurando por arquivos deletados, não existe um grande perigo ao mandar ele procurar arquivos no lugar errado (na sua partição de trabalho por exemplo), mas é sempre bom conferir se você indicou o dispositivo 536
  • 537. correto antes de continuar, até para evitar perder tempo. Use a opção "Proceed" para continuar: No caso da versão Windows (onde você abre o programa sem especificar parâmetros), ele mostra um menu de seleção, contendo todas as partições disponíveis no sistema. Ele detecta as partições usando a nomenclatura do Linux (/dev/sda, /dev/sdb, etc.) mas você pode localizar a partição referente ao cartão ou câmera rapidamente, baseado no tamanho: 537
  • 538. Antes de continuar, ele confirma a partição onde será feita a recuperação. Esta opção só tem serventia caso o cartão ou pendrive esteja dividido em mais de uma partição. Na maioria dos casos você só precisa confirmar a partição pré- selecionada: A opção seguinte (a última) se refere ao sistema de arquivos em que a partição alvo está formatada. Se por acaso você estiver tentando recuperar fotos apagadas em uma partição Linux, formatada em EXT2, ou EXT3, você escolheria a opção "[ EXT2/EXT3 ]", mas em todos os outros casos, incluindo recuperação em cartões, pendrives, partições Windows e mesmo em partições Linux formatadas em outros sistemas de arquivos, você usa sempre a opção [ Other]: 538
  • 539. No caso da versão Windows, ele pergunta também onde deve salvar os arquivos recuperados, já que você não especifica a pasta ao abrir o programa. A grande limitação é que, por rodar através do Cygwin, ele enxerga a pasta onde está o executável do programa como diretório raiz, impedindo que você salve os arquivos recuperados fora dela. Mesmo que você indique o "c" como diretório destino, ele salvará na pasta "c" dentro do diretório. A melhor forma de burlar essa limitação é copiar a pasta com o programa para dentro do diretório onde quer salvar os arquivos e executá-lo a partir de lá. Depois de indicar a pasta, pressione "Y" para continuar: 539
  • 540. Nunca é demais lembrar que você sempre deve salvar os arquivos em uma unidade ou partição separada. Pode ser do pendrive para o HD ou do HD para um HD externo, não importa, desde que sejam duas unidades separadas. Jamais tente recuperar arquivos de uma partição salvando-os nela mesma. Agora vem a parte automática, onde ele vai ler cada setor da partição, em busca de fotos e vídeos deletados. Ele ignora a tabela de alocação e vai diretamente "na fonte", lendo os bits armazenados diretamente e procurando por blocos que pareçam ser arquivos. Ao terminar o teste, é só sair do programa e verificar os arquivos recuperados, que serão armazenados dentro da pasta indicada no comando inicial. Se você executá-lo como root (no Linux), vai precisar ajustar as permissões de acesso à pasta onde foram salvos os arquivos recuperados no final do processo, usando o comando "chown -R", seguido do usuário de sistema que você utiliza e a pasta onde os arquivos foram salvos, como em: # chown -R joao /home/joao/tmp A partir daí você pode acessar os arquivos normalmente, através do gerenciador de arquivos, sem precisar mais do terminal aberto como root. O maior problema é que o Photorec recupera apenas os arquivos propriamente ditos, sem conseguir recuperar a estrutura de pastas ou os nomes, fazendo com que, no final, você acabe com uma salada de arquivos. Se você precisa apenas recuperar alguns documentos específicos, isto não chega a ser um grande problema, pois você pode encontrá-los rapidamente pela extensão e pelo tamanho do arquivo. Mas, se você precisa recuperar uma 540
  • 541. série de pastas, com um grande volume de arquivos pequenos, ele já não é a melhor opção. Uma dica é que você pode selecionar manualmente os tipos de arquivos que ele deve procurar. Desmarcando as extensões que não interessam, você reduz o número de arquivos recuperados (e assim reduz o trabalho necessário para encontrar os que realmente precisa). Para isso, use a opção "[ File Opt ]" na tela de escolha da partição (a última antes de começar a busca): É recomendável que você desmarque a opção "txt", pois o Photorec tende a encontrar um grande número de arquivos de log e fragmentos de arquivos parcialmente deletados, que acabam gerando, muitas vezes, alguns milhares de pequenos arquivos .txt no final do processo. 541
  • 542. Outras opções Se você está procurando um programa gratuito e fácil de usar, na linha do Easy Recovery, a melhor opção é o PC Inspector File Recovery, que pode ser baixado no: http://www.pcinspector.de/. Ele possui limitações com relação à recuperação de pastas com estruturas complexas de subpastas e arquivos e também com relação à recuperação de arquivos fragmentados, além de estar limitado a apenas partições FAT e NTFS. Apesar disso, ele faz um bom trabalho (muito melhor que o do Photorec na recuperação dos nomes dos arquivos) e a interface é bastante simples. Ao abrir o programa, use a opção "Open Drive" para selecionar a partição onde estão os arquivos a recuperar. Na maioria dos casos ele não consegue mostrar o nome do volume, mas você pode se orientar pelas letras das unidades: 542
  • 543. Em seguida, use a opção "Find Lost Data" e deixe que ele execute a verificação. Os arquivos recuperados aparecem na pasta "Deleted" da árvore principal. Para recuperar, selecione os arquivos e use a opção "Save to". Assim como no Easy Recovery, não existe a opção de restaurar os arquivos diretamente; você precisa sempre salvar em uma partição separada. A pasta "Lost", que ele mostra por padrão depois do teste, inclui apenas fragmentos de arquivos não identificados. Raramente você encontrará qualquer coisa utilizável dentro dela. 543
  • 544. Mais um programa de recuperação digno de nota é o Data Recovery Wizard Professional. Ele também é capaz de lidar apenas com partições do Windows, mas oferece como ponto forte um bom suporte a arquivos comprimidos ou encriptados dentro de partições NTFS. Ele é um programa comercial, mas é muito mais barato que o Easy Recovery. Assim como no caso dele, está disponível uma versão demo que mostra os arquivos recuperáveis, mas não permite salvá-los. Você pode baixá-la no: http://www.easeus.com/datarecoverywizardpro/. Eliminando dados com segurança Como vimos, é quase sempre possível recuperar dados deletados de HDs previamente formatados. Isso cria um problema para quem precisa vender ou descartar HDs usados. Afinal, você não vai querer que seus arquivos pessoais, ou informações confidenciais da sua empresa sejam dadas "de brinde" junto com o HD passado adiante. Muitos órgãos governamentais e militares possuem políticas estritas quanto ao descarte de HDs. Em muitos casos um HD só pode ser descartado depois de passar por um software de eliminação de dados e, em outras, os HDs são realmente destruídos fisicamente, para eliminar qualquer possibilidade de recuperação. 544
  • 545. Destruir um HD é fácil. "Amacie" usando uma marreta de 20 kg, depois incinere. Se preferir, você pode usar o HD como alvo em um clube de tiro, ou destruir a superfície magnética dos discos com ácido. ;) Claro, nada disso é realmente necessário se você sabe o que está fazendo. Da mesma maneira que é possível recuperar dados usando as ferramentas corretas, também é possível apagá-los de forma que seja impossível recuperá- los. A maneira mais rudimentar seria simplesmente reescrever todos os dados. Uma boa opção neste caso é utilizar o comando dd, no Linux, o mesmo que utilizamos para fazer imagens de baixo nível do HD. Dê boot com a distribuição live-cd de sua preferência e use o comando abaixo, logado como root: # dd if=/dev/zero of=/dev/hda (onde o /dev/hda é o dispositivo referente ao HD) Aqui, todos os dados do HD são sobrescritos com bits zero e já não poderiam mais ser recuperados por via normais. Entretanto, grandes empresas de recuperação, como a Seagate, Ontrack, etc. possuem aparelhos capazes de ler a carga residual das mídias. Como todo o HD passa a armazenar bits zero, um resquício de carga positiva sob a superfície indicaria que lá estava antes armazenado um bit um. Seria um processo caro e demorado, mas ainda assim seria possível recuperar grande parte dos dados. Uma forma mais segura seria encher o HD com bits aleatórios, modificando o comando para ler as informações de entrada a partir do "/dev/urandom", outro dispositivo virtual, que fornece bits aleatórios, criados com base em interrupções, operações realizadas e outras variáveis geradas pela atividade da máquina: # dd if=/dev/urandom of=/dev/hda Aqui, a recuperação fica muito mais complicada. Mas, em teoria, ainda seria possível recuperar alguns trechos dos arquivos usando os processos adequados. A Ontrack e alguns fabricantes oferecem serviços de recuperação neste nível a preços exorbitantes (bem além do custo de uma simples recuperação, que já é cara). Para realmente eliminar qualquer possibilidade de recuperação, você poderia executar o comando várias vezes. A cada passada a chance de recuperar qualquer coisa fica exponencialmente menor. Em vez de fazer isso manualmente, você pode usar o "shred", um pequeno utilitário encontrado na maioria das distribuições. Você pode usá-lo também a partir de um CD de boot do Kurumin. Um exemplo bem efetivo de uso seria: # shred -n 5 -vz /dev/hda 545
  • 546. Usado com estas opções, o shred vai encher o HD com bits aleatórios, repetindo a operação 5 vezes (-n 5). Como o processo é demorado, usamos a opção "-v" (verbose) para que ele exiba um indicador de progresso, concluindo com o "z", que faz com que, depois de concluído o processo, ele encha o HD com zeros, para despistar e esconder o fato de que você fez o apagamento. Copiando dados de mídias defeituosas É difícil copiar arquivos a partir de um HD com badblocks, ou um CD-ROM riscado, por meios normais. Os programas fazem a cópia apenas até o ponto em que encontram o primeiro erro de leitura. Mesmo que exista apenas um setor defeituoso no meio do arquivo, você quase nunca conseguirá copiar o arquivo inteiro, apenas a metade inicial. Existe um utilitário eficiente para fazer cópias a partir de mídias ruins, o dd_rescue. Ele faz a cópia das partes boas, ignorando os setores defeituosos. Funciona bem para recuperar arquivos de texto, imagens, vídeos, músicas, qualquer tipo de arquivo que possa ser aberto mesmo que estejam faltando alguns pedaços. O dd_rescue é mais um pequeno utilitário que pode ser executado a partir de uma distribuição Linux live-CD. Se você está usando o Kurumin, Knoppix, Ubuntu, ou outra distribuição baseada no Debian, pode instalá-lo diretamente, via apt-get (logado como root): # apt-get update # apt-get install ddrescue Para usá-lo, indique a localização da partição ou CD-ROM que será copiado e um arquivo de destino. Ao copiar uma partição, você sempre precisa copiar o arquivo para dentro de uma partição diferente. A partição ou CD-ROM de origem deve sempre estar desmontada. Para copiar um CD-ROM: # dd_rescue /dev/cdrom /mnt/hda6/cdrom.img (onde /mnt/hda6/cdrom.img é o arquivo onde os dados serão salvos) Para copiar uma partição: # dd_rescue /dev/hda1 /mnt/hda6/hda1.img Para acessar os arquivos dentro da imagem, você deve montá-la usando a opção "-o loop" do mount, que monta um arquivo como se fosse um dispositivo, indicando a pasta onde os arquivos ficarão acessíveis, como em: # mount -o loop /mnt/hda6/cdrom.img /mnt/imgcdrom ou: # mount -o loop /mnt/hda6/hda1.img /mnt/imghda1 Você verá todos os arquivos dentro da pasta e poderá acessar o que foi possível ler. 546
  • 547. Um problema do dd_rescue é que ele lê cada setor defeituoso várias vezes, de forma a tentar obter os dados a qualquer custo. Por um lado, isto é positivo, pois ele realmente acaba conseguindo recuperar vários setores que falham na primeira leitura, mas por outro lado, faz com que o processo de recuperação fique extremamente lento em mídias com muitos setores defeituosos. Isto é especialmente problemático ao recuperar dados em HDs, pois se o teste demora muito, a possibilidade do drive dar seu último suspiro durante a recuperação, levando consigo os dados restantes, é muito maior. Uma solução é usar o "dd_rhelp", um programa que trabalha em conjunto com o dd_rescue, otimizando seu comportamento. Ao usar o dd_rhelp, o processo de recuperação é dividido em duas etapas. Na primeira, ele recupera os dados, pulando os setores defeituosos. Quando a recuperação está completa, ele carrega a lista dos setores que falharam na primeira leitura e aí sim, passa ao comportamento padrão, lendo cada setor várias vezes. A diferença é que, no caso, você já está com os dados seguros. Você pode baixar o dd_rhelp no http://www.kalysto.org/utilities/dd_rhelp/download/index.en.html ou http://freshmeat.net/projects/dd_rhelp/. No site, está disponível apenas o pacote com o código fonte, mas ele é relativamente simples de compilar. Descompacte o arquivo, acesse a pasta que será criada e use os comandos: # ./configure # make Isto vai criar o executável dentro da pasta atual. Ao usá-lo, a sintaxe é a mesma do dd_rescue: # ./dd_rhelp /dev/cdrom /mnt/hda6/cdrom.img 547
  • 548. Capítulo 7: Chipsets e placas Nos primeiros PCs, os chips controladores da placa-mãe ficavam espalhados em diversos pontos da placa. Não é preciso dizer que este design não era muito eficiente, já que mais componentes significam mais custos. Com o avanço da tecnologia, os circuitos passaram a ser integrados em alguns poucos chips. Isso trouxe duas grandes vantagens: a primeira é que, estando mais próximos, os componentes podem se comunicar a uma velocidade maior, permitindo que a placa-mãe seja capaz de operar a freqüências mais altas. As segunda é a questão do custo, já que produzir dois chips (mesmo que mais complexos) sai mais barato do que produzir vinte. Muitas vezes, temos a impressão de que novas tecnologias (sobretudo componentes miniaturizados) são mais caras, mas, na maior parte dos casos, o que acontece é justamente o contrário. Produzir chips utilizando uma técnica de 45 nanometros é mais barato do que produzir utilizando uma técnica antiga, de 90 ou 180 nanometros, pois transístores menores permitem produzir mais chips por wafer, o que reduz o custo unitário. Usando uma técnica de 180 nanometros (0.18 micron), temos transístores 16 vezes maiores que ao utilizar uma técnica de 45 nanometros. Isso significa que, utilizando aproximadamente o mesmo volume de matéria-prima e mão de obra, é possível produzir quase que 16 vezes mais chips. É bem verdade que migrar para novas tecnologias implica um grande custo inicial, já que a maior parte do maquinário precisa ser substituído. Os fabricantes aproveitam o impulso consumista do público mais entusiasta para vender as primeiras unidades muito mais caro (o que cria a impressão de que a nova tecnologia é mais cara), mas, uma vez que os custos iniciais são amortizados, os produtos da nova geração acabam custando o mesmo, ou menos que os anteriores, mesmo incluindo mais funções. Assim como os demais componentes, os chipsets evoluíram e incorporaram mais funções. Nos micros 386, até mesmo as interfaces IDE e portas seriais eram adicionadas através de placas de expansão, enquanto a maioria das placas atuais incluem, além das interfaces básicas, também interfaces vídeo, som e rede onboard, ou seja, oferecem a um custo muito baixo funções que antes precisavam ser adicionadas através de placas extras. A grande maioria dos chipsets segue o projeto tradicional, onde as funções são divididas em dois chips, chamados de porte norte (north bridge) e ponte sul (south bridge). Nos últimos anos essa designação anda um pouco fora de moda, com os fabricantes adotando nomes pomposos, mas ainda pode ser utilizada como uma definição genérica. A ponte norte é o chip mais complexo, que fica fisicamente mais próximo do processador. Ele incorpora os barramentos "rápidos" e as funções mais complexas, incluindo o controlador de memória, as linhas do barramento PCI Express, ou o barramento AGP, além do chipset de vídeo onboard, quando 548
  • 549. presente. As placas para processadores AMD de 64 bits não possuem o controlador de memória, já que ele foi movido para dentro do processador. Nas placas atuais, a ponte norte do chipset é sempre coberta por um dissipador metálico, já que o chip responde pela maior parte do consumo elétrico e, conseqüentemente, da dissipação de calor da placa-mãe. Em alguns casos, os fabricantes chegam a utilizar coolers ou até mesmo heat-pipes para refrigerá-lo: Ponte norte do chipset (com o dissipador removido) A ponte sul é invariavelmente um chip menor e mais simples que o primeiro. Nas placas atuais ela incorpora os barramentos mais lentos, como o barramento PCI, portas USB, SATA e IDE, controladores de som e rede e também o controlador Super I/O, que agrupa portas "de legado", como as portas seriais e paralelas, porta para o drive de disquete e portas do teclado e mouse (PS/2). 549
  • 550. Ponte sul É comum que os fabricantes adicionem funções adicionais ou substituam componentes disponíveis na ponte sul, incluindo controladores externos. Com isso, podem ser adicionadas portas SATA ou IDE adicionais, o controlador de áudio pode ser substituído por outro de melhor qualidade ou com mais recursos, uma segunda placa de rede onboard pode ser adicionada e assim por diante. Entretanto, com pouquíssimas exceções, as funções da ponte norte do chipset não podem ser alteradas. Não é possível adicionar suporte a mais linhas PCI Express ou aumentar a quantidade de memória RAM suportada (por exemplo) adicionando um chip externo. Estas características são definidas ao escolher o chipset no qual a placa será baseada. Embora incorpore mais funções (em número) as tarefas executadas pela ponte sul são muito mais simples e os barramentos ligados a ela utilizam menos trilhas de dados. Normalmente os fabricantes utilizam as tecnologias de produção mais recente para produzir a ponte norte, passando a produzir a ponte sul utilizando máquinas ou fábricas mais antigas. No caso de um fabricante que produz de tudo, como a Intel ou a AMD, é normal que existam três divisões. Novas técnicas de produção são usadas para produzir processadores, a geração anterior passa a produzir chipsets e chips de memória, enquanto uma terceira continua na ativa, produzindo chips menos importantes e controladores diversos. Isso faz com que o preço dos equipamentos seja mais bem amortizado. No final, o maquinário obsoleto (a quarta divisão) ainda acaba sendo vendido para fabricantes menores, de forma que nada seja desperdiçado. :) Por exemplo, o chip MCH (ponte norte) do chipset P35, lançado pela Intel em julho de 2007, é ainda produzido em uma técnica de 0.09 micron, a mesma utilizada na produção do Pentium 4 com core Prescott, cuja produção foi 550
  • 551. encerrada mais de um ano antes. O chip ICH9 (ponte sul), por sua vez, é ainda produzido utilizando uma técnica de 0.13 micron, a mesma usada no Pentium 4 com core Northwood e no Pentium III com core Tualatin. A diferença na técnica de produção é justificável pela diferença de complexidade entre os dois chips. Enquanto o MCH do P35 possui 45 milhões de transístores (mais que um Pentium 4 Willamette, que possui apenas 42 milhões), o ICH9 possui apenas 4.6 milhões, quase 10 vezes menos. Nos antigos chipsets para placas soquete 7 e slot 1, como o Intel i440BX e o VIA Apollo Pro, a ligação entre a ponte norte e ponte sul do chipset era feita através do barramento PCI. Isso criava um grande gargalo, já que ele também era utilizado pelas portas IDE e quase todos os demais periféricos. Nessas placas, até mesmo o barramento ISA era ligado no sobrecarregado barramento PCI, através de um chip conversor, o PCI-to-ISA bridge. Nas placas atuais, a ligação é feita através de algum barramento rápido (muitas vezes proprietário) que permite que a troca de informações seja feita sem gargalos. Não existe uma padronização para a comunicação entre os dois chips, de forma que (com poucas exceções) os fabricantes de placas-mãe não podem utilizar a ponte norte de um chipset em conjunto com a ponte sul de outro, mesmo que ele seja mais barato ou ofereça mais recursos. O chipset é de longe o componente mais importante da placa-mãe. Excluindo o chipset, a placa-mãe não passa de um emaranhado de trilhas, conectores, reguladores de tensão e controladores diversos. Placas que utilizam o mesmo chipset tendem a ser muito semelhantes em recursos, mesmo quando fabricadas por fabricantes diferentes. Devido a diferenças no barramento e outras funções, o chipset é sempre atrelado a uma família de processadores específica. Não é possível desenvolver uma placa-mãe com um chipset AMD que seja também compatível com processadores Intel, por exemplo. Como o chipset é também o componente mais caro da placa-mãe, ele também é um indicador da qualidade geral da placa, já que placas com chipsets baratos, sobretudo as com os modelos mais simples da SiS e VIA tendem a ser "baratas" também em outros aspectos. Por outro lado, é raro que um fabricante utilize um chipset mais caro, da Intel ou nVidia, em uma placa de segunda linha. Vamos então a um resumo dos principais chipsets utilizados dos micros Pentium até os dias de hoje: Chipsets para placas soquete 7 Até por volta de 1994, o mercado de chipsets era controlado por diversas empresas concorrentes, entre elas a VLSI, a UMC, a Symphony e a OPTI, que concorriam entre si fabricando chipsets para micros 386 e 486. A Intel chegou a desenvolver um chipset para 386 (o 82350) e três chipsets para 486 (o 420TX, 551
  • 552. 420EX e 420ZX), mas foi com o chipset 430LX, e seus sucessores, que ela conseguiu ganhar o mercado. O fato de desenvolver simultaneamente tanto processadores quanto chipsets acaba sendo uma grande vantagem competitiva, pois, além de aumentar o volume de vendas, garante que novos processadores sejam lançados simultaneamente com os novos chipsets projetados para suportá-los. A Intel também desenvolve e vende placas-mãe, embora a produção seja terceirizada para outros fabricantes, como a Foxconn. Desde a primeira geração do Athlon, a AMD também desenvolve chipsets e placas de referência. Mas, ao contrário da Intel, nunca teve uma presença forte no setor. Os chipsets da AMD serviam mais como uma referência para outros fabricantes interessados em desenvolver chipsets para a plataforma. Isso mudou com a aquisição da ATI, que, ao se fundir com a AMD, já era a número 3 no ramo de chipsets, perdendo apenas para a Intel e a nVidia. Voltando à história, o 430LX dava suporte à primeira geração de processadores Pentium, as versões de 60 e 66 MHz. Ele suportava apenas memórias FPM, até um máximo de 192 MB. Em 1995 surgiu o 430FX (Triton), um chipset de baixo custo, que acabou sendo bastante popular. Ele trouxe algumas melhorias importantes, como o suporte a memórias EDO e cache L2 Pipeline Burst, que é fundamentalmente o mesmo tipo de cache utilizado até hoje. Nele, as requisições são enviadas em seqüências rápidas (daí o "Burst" no nome), sem que o controlador precise esperar a resposta para a requisição anterior. Graças a isso, o cache pode operar com temporizações muito mais baixas. O 430FX foi seguido pelo 430MX (uma versão de baixo consumo, destinada a notebooks) e pelo 430HX, um chipset destinado a micros de alto desempenho e estações de trabalho, que suportava até 512 MB de memória, com direito a um espectro cacheável também de 512 MB e suporte a temporizações mais baixas para a memória, o que resultava em um certo ganho de desempenho. Por ser um chipset caro, o 430HX foi relativamente pouco usado. Ele foi sucedido pelo 430VX e pelo 430TX, dois chipsets de baixo custo, que foram usados na grande maioria das placas soquete 7 com chipsets Intel vendidas aqui no Brasil. Eles trouxeram várias modificações importantes com relação ao 430FX, como a temporização independente para dispositivos ligados à mesma interface IDE (o que permite instalar um HD com suporte a UDMA, na mesma porta que um drive de CD-ROM antigo, que suporta apenas PIO 4, por exemplo, sem que o modo de operação do HD fosse degradado) e o concurrent PCI, onde vários periféricos podem transmitir dados simultaneamente através do barramento PCI, dividindo a banda disponível. O 430VX oferecia suporte a 128 MB de memória RAM e o 430TX a até 256 MB. Entretanto, ambos eram capazes de cachear apenas os primeiros 64 MB 552
  • 553. da memória, o que acabava fazendo com que este fosse o máximo recomendável. Esta questão do espectro cacheável foi um problema curioso, que afetou muitos usuários na época. Como nas placas soquete 7 o cache L2 faz parte da placa-mãe (e não do processador, como atualmente), era responsabilidade do chipset manter o cache atualizado. Para cachear toda a memória RAM, era necessário que ele incluísse a quantidade necessária de memória TAG RAM, utilizada para gerar o índice dos dados armazenados no cache. Como este era um item caro, a Intel optou por incluir uma quantidade reduzida no 430VX e no 430TX, fazendo com que o cache só conseguisse enxergar os primeiros 64 MB. Para complicar, a memória era acessada a partir do final pelo Windows 95/98, de forma que, ao utilizar 96 MB ou mais, o sistema utilizava primeiro a parte não cacheada, para só depois passar a utilizar a parte atendida pelo cache. Sem o cache, a velocidade de acesso à memória despencava, fazendo com que o desempenho do sistema caísse em até 40%, ou seja, ao rodar aplicativos leves, instalar mais memória acabava reduzindo o desempenho ao invés de aumentá-lo. O 430VX e 430TX incluíam também controladores USB e suporte a memórias SDRAM, mas nenhum dos dois recursos foi muito utilizado. O USB era uma novidade na época e praticamente não existiam periféricos compatíveis. Como a demanda era muito baixa, os fabricantes deixavam de incluir os conectores USB nas placas, fazendo com que o recurso acabasse não sendo usado. No caso das memórias SDRAM, os dois chipsets eram capazes de acessar apenas 2 MB de memória por chip, o que permitia usar módulos de no máximo 32 MB, com 16 chips. Ao instalar um módulo de maior capacidade, a placa acessava apenas os primeiros 16 ou 32 MB, de acordo com o número de chips usados no módulo. O 430TX foi também o primeiro chipset a oferecer interfaces IDE ATA/33, com direito ao modo UDMA 33. Desde que você usasse o Windows 95 ou mais recente, com os drivers corretamente instalados, o uso do UDMA resultava em um ganho de desempenho considerável, pois além da maior taxa de transferência, o micro não ficava mais "parado" durante o carregamento de programas e cópias de arquivos. Pouco depois, surgiram os chipsets VX-Pro (da VIA) e TX-Pro (da Ali), que rapidamente se tornaram os mais usados nas placas de baixo custo, sobretudo nas placas "VX-Pro" e "TX-Pro" da PC-Chips, que eram famosas pelos problemas de instabilidade. Apesar dos nomes, estes chipsets não tinham nenhuma relação com os chipsets da Intel, mas realmente incorporavam recursos mais avançados. O VX-Pro oferecia interfaces UDMA 33, enquanto o TX-Pro oferecia suporte a até 1 GB de memória RAM, com espectro cacheável de 512 MB e suporte oficial para as freqüências de 75 e 83 MHz, muito utilizadas para fazer overclock. 553
  • 554. Esta é uma VX-Pro da PC-Chips, fabricada em 1997. Ela é uma placa AT, com 4 slots PCI e 3 slots ISA. Veja que além dos 4 soquetes para módulos de memória de 72 vias, ela oferece suporte a dois módulos de memória DIMM. As especificações falam no suporte a módulos DIMM de até 64 MB, mas na prática a compatibilidade é limitada: Placa VX-Pro, da PC-Chips Muitas placas da época utilizavam chips "falsos" de memória cache, chips plásticos ocos, que eram facilmente identificáveis por trazerem a palavra "Write Back" decalcada em destaque. Note que write back é um tipo rápido de memória cache, capaz de cachear tanto operações de leitura quanto operações de escrita, mas, graças a este golpe, o termo ganhou outro significado: Chips ocos de memória cache 554
  • 555. Outro chipset bastante usado na época foi o SiS 5591, que foi o primeiro chipset a incluir um chipset de vídeo integrado. O desempenho não era bom, pois na época não existia AGP, de forma que o desempenho de acesso à memória era ruim e o vídeo saturava o barramento PCI, reduzindo o desempenho global do equipamento. Apesar disso, o SiS5591 era muito barato, o que garantiu sua popularidade. Com a concorrência de tantos fabricantes, a Intel optou por se concentrar no desenvolvimento dos chipsets para os processadores Pentium II, abandonando a plataforma soquete 7. Apesar disso, a VIA, a SiS e a Ali continuaram desenvolvendo chipsets aprimorados, incorporando suporte a AGP, bus de 100 MHz e outras melhorias. As placas baseadas neles (apelidadas de placas super 7) foram extremamente populares durante a época do K6-2, chegando a superar as placas para Pentium II e Pentium III em volume de vendas. O primeiro chipset super 7 foi o Ali Aladdin V, que chegou a ser bastante popular, devido a seus bons recursos e bom desempenho. Além de suportar o bus de 100 MHz utilizado pelos processadores K6-2 e Cyrix MII, ele oferecia suporte a até 1 GB de memória RAM, sem limite no espectro cacheável e suporte ao uso de até 1 MB de cache L2. Uma observação é que, embora suportem 1 GB de memória ou mais, a maioria das placas super 7 suporta módulos de memória SDRAM de no máximo 256 MB (com 16 chips), o que dificulta qualquer upgrade hoje em dia, já que você precisaria encontrar módulos antigos. O próximo da lista foi o VIA MVP3, que, apesar de ser originalmente um chipset destinado a notebooks, acabou sendo usado em muitas placas para micros desktop. Além de suportar Bus de 66 ou 100 MHz, o VP3 permite que a memória RAM seja acessada numa freqüência diferente do FSB. Usando este recurso, podemos usar o barramento de 100 MHz permitido pelo chipset, mantendo, porém, a memória RAM trabalhando a apenas 66 MHz. O uso deste recurso permitia o uso de memórias EDO ou SDRAM comuns, em vez de memórias PC100, com a possibilidade de aproveitar as memórias do micro antigo, no caso de um upgrade. A perda de performance gerada pela diminuição da velocidade de acesso às memórias, não chegava a causar um grande impacto sobre o desempenho global do sistema, pois o cache L2 encontrado na placa-mãe continuava trabalhando a 100 MHz. Este recurso é similar às opções de ajustar a freqüência da memória de forma independente da freqüência do FSB, disponíveis nas placas atuais. O MVP3 suportava o uso de até 1 GB de memória RAM, mas era capaz de cachear apenas 256 MB. Embora fosse muito raro o uso de mais do que 512 KB de cache L2 nas placas da época, o MVP3 oferecia suporte a até 2 MB. Outro recurso interessante é que a arquitetura do MVP3 permitia que a ponte norte do chipset fosse usada em conjunto com a ponte sul do VIA Apollo Pro 133, um chipset para Pentium III, muito mais avançado. Isso permitiu que os fabricantes adicionassem suporte ao UDMA 66 e outros recursos ao MVP3, pagando apenas um pouco mais pelo chipset. 555
  • 556. Mais um chipset popular na época foi o SiS 530, que, além do suporte a AGP, portas IDE com UDMA 33 e bus de 100 MHz, oferecia suporte a até 1.5 GB de memória RAM, embora, assim como no MVP4, apenas os primeiros 256 MB fossem atendidos pelo cache. Mesmo depois de lançados o Athlon e o Duron, os processadores K6-2 e K6-3 continuaram sendo uma opção para micros de baixo custo durante muito tempo. Pensando neste último suspiro da plataforma soquete 7, a VIA lançou o MVP4, uma versão aperfeiçoada do MVP3. A principal vantagem do MVP4 sobre o seu antecessor é o fato de já vir com um chipset de vídeo Trident Blade 3D embutido no próprio chipset. Como em outras soluções com vídeo integrado, é reservada uma certa parte da memória principal para o uso da placa de vídeo. No caso do MVP4 é possível reservar até 8 MB, opção definida através do Setup. O Trident Blade é um chipset 3D primitivo, que concorria em desempenho com o nVidia Riva 128 (antecessor do Riva TnT), oferecendo um desempenho bastante modesto, mesmo para a época. Ao contrário dos chipsets que o sucederam, o MVP4 não suportava o uso de placas AGP externas, já que o barramento era utilizado pelo vídeo integrado. Devido a isso, ele acabou relegado às placas mais baratas (e de baixa qualidade), já no finalzinho da era K6-2. Na época, a PC-Chips chegou a colocar no mercado placas soquete 7 sem cache L2, uma economia que causava uma grande queda no desempenho. Boa parte da má fama dos micros K6-2 se deve a estas placas de terceira linha. Chipsets para o Pentium II e Pentium III Com a integração do cache L2 ao processador, foi resolvido o problema do espectro cacheável, que afetava a maior parte das placas soquete 7. Todos os processadores Pentium III, Athlon, Duron e todos os processadores atuais são capazes de cachear toda a memória disponível. A única exceção fica por conta dos primeiros processadores Pentium II, das séries SL264, SL265, SL268, SL269, SL28K, SL28L, SL28R, SL2MZ, SL2HA, SL2HC, SL2HD, SL2HE, SL2HF, SL2QA, SL2QB, SL2QC, SL2KA, SL2QF e SL2K9 e dos primeiros Celerons (as versões de até 333 MHz), que eram capazes de cachear até 512 MB de memória. Na época esta foi considerada uma limitação importante, mas atualmente não faz mais tanta diferença, já que, de qualquer forma, não é comum usar mais do que 512 MB em micros tão antigos. 556
  • 557. Chipsets da Intel As primeiras placas para Pentium II foram baseadas no chipset i440FX, o mesmo chipset utilizado nas placas para Pentium Pro. Ele possuía muitas limitações, incluindo a falta de suporte a AGP e a memórias SDRAM, de forma que foi pouco usado. O primeiro chipset "de verdade" para o Pentium II foi o i440LX. Ele incorporou suporte a AGP e memórias SDRAM, mas ainda incluía interfaces ATA/33 e trabalhava a apenas 66 MHz. As placas baseadas nele suportam apenas a primeira safra de processadores Pentium II e Celeron, que ainda utilizavam bus de 66 MHz. Assim como na maioria dos chipsets da época, ele podia trabalhar a 75 MHz ou 83 MHz, freqüências que, embora não fossem utilizadas por nenhum processador Intel, podiam ser usadas para fazer overclock. O i440LX foi sucedido pelo i440BX, que se tornou rapidamente um dos chipsets mais usados. Além do suporte a AGP 2x, ele introduziu o suporte ao bus de 100 MHz, utilizado pelos processadores Pentium II Deschutes de 350, 400, 450, 500 MHz, assim como as versões do Pentium III que utilizam barramento de 100 MHz. Muitas placas baseadas no BX são capazes de trabalhar a 133 MHz (em overclock), o que permite rodar as versões do Pentium III que utilizam barramento de 133 MHz. O problema em utilizar os 133 "não-oficiais" do BX é que apesar do chipset se manter estável, os demais periféricos do micro podem vir a apresentar falhas. Nos chipsets que oficialmente suportam bus de 133 MHz, temos a freqüência do barramento PCI dividida por 4 e a do AGP dividida por 2, chegando aos 33 e 66 MHz ideais. Porém, no caso do BX a freqüência era dividida por apenas 3 e 1.5, o que dá 33 e 66 MHz com bus de 100 MHz, porém 44 e 89 MHz com bus de 133. Isso faz com que todos os demais periféricos do micro, como placas de vídeo, HDs, etc. sejam obrigados a trabalhar mais rápido. Quem mais sofre com isso são as placas de vídeo AGP. De fato, muitas não funcionam estavelmente a 89 MHz. As placas-mãe que oferecem os 133 MHz não-oficiais do BX são popularmente chamadas de "BX133". Um bom exemplo de placa desta safra é a Abit BX133- RAID, lançada no início do ano 2000. Ela é uma placa soquete 370, que conta com um slot AGP 2X, 5 slots PCI, 1 slot ISA, 2 portas USB e 4 portas IDE, sendo que duas eram as portas ATA/33, oferecidas pelo i440BX e as duas portas adicionais eram ligadas a um controlador ATA/66, com suporte a RAID. Esta configuração permitia que você utilizasse até quatro HDs em RAID 0, RAID 1 ou RAID 10 e ainda ficasse com duas portas IDE vagas para ligar o CD-ROM e outros periféricos. Esta configuração era comum em outras placas da época: 557
  • 558. Abit BX133-RAID A maior limitação do i440BX (assim como do LX) é que, pelo menos oficialmente, o chipset suporta apenas 512 MB de memória RAM (2 módulos de 256 MB). Apesar disso, diversos fabricantes ofereceram placas com 3 soquetes de memória, que permitiam o uso de até 768 MB. Pensando no mercado de servidores e estações de trabalho, a Intel lançou o i440GX, um chipset mais caro, que suportava até 2 GB de memória e até 4 processadores Pentium II Xeon em SMP. Existiu ainda o i440ZX, uma versão de baixo custo do i440BX, que foi pouco usada. Os dois são praticamente idênticos, incluindo a limitação de 512 MB de memória. A principal diferença é que o ZX suportava o uso de apenas dois módulos de memória. O principal concorrente do BX, GX e ZX foi o VIA Apollo Pro, lançado em 1997. Os recursos básicos eram o suporte a bus de 100 MHz, AGP 2x, USB e interfaces ATA/33, com UDMA 33. Também existia a opção manter a memória RAM a 66 MHz mesmo com bus de 100, permitindo usar módulos PC-66 antigos, recurso que não era encontrado em nenhum chipset Intel). Assim como o BX, o Apollo Pro suporta os 133 MHz não-oficiais, de forma que as placas baseadas nele podiam ser usadas em conjunto com as versões do Pentium III que operavam a 133 MHz (algumas placas precisavam de um upgrade de BIOS para reconhecer o processador corretamente). Chegamos então ao início da era moderna, com os chipsets Intel i810, i810E, i815, i815E e i820, que são baseados na arquitetura hub. Ela trouxe uma série de melhorias em relação aos chipsets antigos, que ainda eram baseados no barramento PCI. 558
  • 559. A primeira é a introdução de um barramento rápido ligando a ponte norte e ponte sul do chipset, o AHA. Embora seja um barramento de 8 bits e opere a apenas 66 MHz, ele realiza 4 transferências por ciclo, o que resulta em 266 MB/s de banda. Os chipsets anteriores ainda utilizavam o PCI como meio de comunicação, o que saturava o barramento, reduzindo a performance de outros componentes. Na arquitetura hub, a ponte norte do chipset passa a ser chamada de "Memory Controller Hub" ou MCH e a ponte sul passa a se chamar "I/O Controller Hub", ou ICH. Embora continue sendo um chip separado, o BIOS passa a ser considerado parte do chipset e recebe o nome de "Firmware Hub", passando a armazenar também o BIOS da placa de vídeo onboard. Esta designação continua sendo usada pela Intel até os dias de hoje. Apesar da nova terminologia, as funções dos chips continuam fundamentalmente as mesmas. O MCH inclui o controlador de memória, o barramento AGP e o vídeo integrado, enquanto o ICH inclui o barramento PCI, portas IDE e USB, som, rede e outros periféricos integrados e também o chip super I/O, que inclui as portas seriais, paralelas, teclado, mouse e outras interfaces de legado. A partir do i810 foi eliminada a ponte PCI-ISA, removendo o suporte nativo ao barramento ISA. Os fabricantes ainda tinham a opção de adicionar um chip externo, mas, como isso representava um custo adicional, a grande maioria aproveitou a deixa para eliminar de vez os slots ISA. Eles ainda sobreviveram durante algum tempo na última safra de placas super 7, que utilizavam chipsets VIA ou SiS, até que desapareceram definitivamente. O chipset de vídeo integrado é o i752, descendente do i740, uma tentativa fracassada da Intel de entrar no ramo de placas 3D. Embora o i740 fosse fraco demais para concorrer com as placas da nVidia e ATI, seu design simples acabou se revelando uma boa opção de vídeo onboard, tanto que a Intel continua desenvolvendo versões atualizadas até os dias de hoje. Como em outras opções de vídeo onboard, o i752 utiliza memória compartilhada. Para melhorar o desempenho, existia a opção de instalar uma placa com 4 MB de memória de vídeo dedicada no slot AGP, mas, como era vendida separadamente, ela nunca foi um acessório comum. Quem queria mais desempenho 3D acabava comprando logo uma placa offboard completa. A principal limitação do i810 é que ele não oferecia suporte a slots AGP, já que o barramento era utilizado pelo chipset de vídeo onboard. Além disso, ele era capaz de operar a apenas 100 MHz, por isso foi rapidamente substituído pelo i810E (que era capaz de trabalhar a 133 MHz) e em seguida pelo i815, que trouxe de volta a possibilidade de utilizar uma placa AGP externa (através de um slot AGP 4x), neste caso desabilitando o vídeo onboard. Pouco depois foi lançado o i815E, que incluía uma versão melhorada do chip ICH, com suporte a interfaces ATA/100 e 4 portas USB (ao invés de apenas duas, como nos anteriores). Chegou a ser lançada ainda uma versão sem vídeo integrado, o i815EP, que era comum em placas de alto desempenho, 559
  • 560. onde o vídeo onboard seria desativado e substituído por uma placa AGP offboard de qualquer forma. Na foto a seguir temos uma Asus CUSL2 (lançada no final de 2000), uma das placas mais populares entre as baseadas no i815E. Ela inclui 6 slots PCI (o sexto slot é mais fino, devido à questão do espaço, mas isso não afeta suas funções), dois slots CNR, 4 portas USB (onde duas ficam disponíveis no painel traseiro e as outras duas eram ligadas a um cabo externo), além de vídeo onboard, cortesia do chipset: Asus CUSL2 A CUSL2 foi uma das poucas placas que chegou a incorporar um slot AGP Pro, durante a fase em que a adoção do padrão ainda estava indefinida. Embora ela possua 3 soquetes, não existia a possibilidade de instalar 768 MB de memória, como nas placas baseadas no BX. Assim como em outras placas baseadas no i815, você podia instalar dois módulos de 256 MB, três módulos de 128 MB ou um módulo de 256 MB e dois de 128 MB. Ao instalar três módulos de 256 MB, a placa simplesmente não dava boot. A principal limitação do i815 era o suporte a apenas 512 MB de memória, limitação que se tornava cada vez mais evidente. Apesar disso, ele acabou sendo um chipset de grande sucesso, usado desde em placas de baixo custo, até em placas mais caras, destinadas ao público entusiasta. Ele foi seguido pelo i820, um chipset fracassado, onde a Intel fez sua primeira tentativa de empurrar as caras memórias Rambus. Em tese, o i820 seria um chipset destinado a máquinas de alto desempenho. Ele não trazia o vídeo integrado (presumindo que o usuário estaria mais interessado em utilizar uma placa offboard) e abandonava a compatibilidade com os Celerons que 560
  • 561. utilizavam bus de 66 MHz. O maior problema é que ele era nativamente compatível apenas com as memórias Rambus. Para utilizar memórias SDRAM era necessário incluir um chip adicional, o MTH (Memory Translator Hub), um bridge (ponte) que fazia a conversão dos sinais. O problema era que ao utilizar o MTH o desempenho de acesso à memória caía, fazendo com que as placas baseadas no i820 acabassem sendo mais caras e mais lentas que as baseadas no i815. Estas placas acabaram tendo um triste fim, pois poucos meses depois do lançamento foi descoberto um bug no chip MTH, que causava instabilidade e corrupção dos dados gravados na memória, um problema perigoso, considerando que os micros baseados no i820 eram predominantemente destinados a estações de trabalho e outras aplicações "sérias". A Intel acabou sendo obrigada a descontinuar o i820 e fazer um recall de todas as placas vendidas, substituindo-as por placas i820 sem o MTH, acompanhadas de um módulo de 128 MB de memória Rambus, o que representou um prejuízo de mais de 250 milhões. A saga continuou com o i840, um chipset destinado a estações de trabalho que utilizava dois canais separados de acesso à memória (similar às placas dual- channel atuais), onde eram acessados dois RIMM simultaneamente, o que resultava num barramento teórico de 3.2 GB/s. Ao contrário do que seria de se esperar, o barramento mais largo de acesso à memória não resultava num ganho considerável de desempenho, pois apesar do barramento mais largo, o tempo de latência dos módulos de memória Rambus era maior, o que acabava equilibrando as coisas. Por ser um chipset caro, o i840 foi utilizado apenas num pequeno número de placas. Além de gastar mais com a placa-mãe, era necessário pagar 3, ou até 4 vezes mais caro pelos módulos de memória Rambus, tudo isso em troca de um ganho marginal de desempenho. Chipsets da VIA Com o recall do i820 e o fracasso de vendas do i840, a Intel acabou ficando numa posição muito vulnerável, já que o único chipset "utilizável" continuava sendo o antigo i815, com a pesada limitação dos 512 MB. Isso abriu espaço para o crescimento da VIA, que oferecia os chipsets Apollo Pro 133 e 133A. Como o nome sugere, o Apollo Pro 133 oferecia suporte oficial aos processadores Pentium III com bus de 133 MHz. Ele ganhou também suporte a até 1.5 GB de memória RAM (contra 1 GB do antigo VIA Apollo Pro). Note que com relação ao volume de memória RAM suportada, os chipsets da VIA para placas slot 1 e soquete 370 estavam sempre bem à frente dos Intel, o que fazia com que eles fossem preferidos por muitos. Comparado ao i815, ele oferecia vários recursos interessantes, como a possibilidade de ajustar a freqüência da memória RAM de forma independente do FSB. Isso permitia que a memória trabalhasse a 133, mesmo ao utilizar um 561
  • 562. processador antigo, ou mesmo que fossem aproveitados módulos PC-66 de um upgrade anterior, mesmo ao usar um processador com FSB de 100 MHz. Este recurso era configurado através das opções "FSB + 33MHz" e "FSB – 33MHz" encontradas no Setup das placas baseadas no Apollo 133. Esta é uma Soyo 6BA133, uma placa mini-ATX bastante popular na época, baseada no Apollo Pro 133. Ela possui 5 slots PCI, dois slots ISA e um slot AGP 2X, sem nenhum periférico onboard. O quinto slot PCI tem o espaço compartilhado com o primeiro ISA, de forma de você pode utilizar apenas um dos dois. Embora seja uma placa slot 1, esta placa permite o uso de processadores Celeron e Pentium III Coppermine soquete 370 usando um adaptador. Com um BIOS atualizado, ela suporta toda a família Pentium III: Soyo 6VBA133, baseada no VIA Apollo Pro 133 Considerando que ela suporta até 1.5 GB de memória SDRAM (3 módulos de 512 MB), um micro baseado nela poderia prestar bons serviços mesmo nos dias de hoje. O principal desafio seria encontrar alguma placa 3D relativamente atual que fosse compatível com o antiquado slot AGP 2X e pudesse funcionar dentro das limitações de alimentação elétrica da placa. Na época, era comum utilizar um Celeron 600 em overclock para 900 MHz (feito aumentando a freqüência do FSB de 66 para 100 MHz através do setup). Por ser baseado no core Coppermine, o Celeron 600 suportava overclocks muito grandes, por isso era bastante popular entre o público entusiasta. Assim como outras placas da Soyo e Abit fabricadas na época, a 6VBA133 possuía problemas de durabilidade relacionados aos capacitores eletrolíticos, de forma que é relativamente raro encontrar uma que ainda funcione hoje em 562
  • 563. dia. Esta placa da foto, por exemplo, apresentou problemas e foi consertada com a substituição dos capacitores. Voltando ao tema principal, as únicas diferenças entre o Apollo Pro 133 e o 133A diziam respeito ao slot AGP e à quantidade de memória suportada. O Apollo Pro 133 "normal" traz uma porta AGP 2X, enquanto o 133A traz uma porta AGP 4x e, enquanto o Apollo 133 suporta 1.5 GB de memória, o Apollo 133 suporta 4 GB completos. Ambos oferecem duas controladoras USB, totalizando 4 portas, assim como no i815E. Embora seja mais rápido que o i820+MTH, o Apollo Pro 133A perdia por uma pequena margem para o i815 em velocidade de acesso à memória e também com relação ao desempenho do barramento AGP. Assim como o i440BX, ele ainda utilizava o barramento PCI como meio de comunicação entre a ponte norte e ponte sul, ao invés de implementar um barramento dedicado, como os chipsets Intel da série 800, o que causava mais uma pequena perda de desempenho em relação aos micros baseados no i815. Entretanto, como vimos, ele oferecia suporte a um volume brutalmente maior de memória RAM, o que era uma grande vantagem. Ele também oferecia a ponte PCI-ISA, de forma que muitas placas baseadas nele traziam um ou dois slots ISA, o que era visto como uma vantagem por muitos, já que permitia aproveitar modems e placas de som antigos. Completando, ele era um chipset mais barato e oferecia mais opções de overclock, o que fez com que fosse bastante popular. Existiu ainda uma versão do Apollo Pro 133 com vídeo integrado, o VIA Apollo Pro PM133, que trazia um chipset de vídeo ProSavage integrado. Embora oferecesse um slot AGP 4x (como o 133A), ele oferecia suporte a apenas 1.5 GB de memória RAM (como o Apollo Pro 133 antigo). A placa da foto a seguir é uma Asus P3V4X, uma placa baseada no VIA Apollo Pro 133A lançada no final de 1999, que foi também bastante popular na época. Ela inclui um slot AGP 4x universal, 6 slots PCI e um único slot ISA, que dividia a baia do gabinete com o último slot PCI: 563
  • 564. Asus P3V4X, baseada no Apollo Pro 133A O VIA Apollo Pro 133 era um concorrente direto do i440BX, justamente por isso ele perdia para o i815 em diversos quesitos, já que tecnicamente ele estava uma geração à frente. Aproveitando o vácuo deixado pelo fiasco do i820, a VIA lançou em seguida o Apollo Pro 266, introduzindo o suporte a memórias DDR. Hoje em dia, parece óbvio que a Intel fez uma grande burrada apoiando as memórias Rambus, enquanto a VIA fez a coisa certa apostando nas memórias DDR. Mas, na época ainda não estava claro qual dos dois padrões prevaleceria, de forma que cada um dois dois fabricantes fez sua aposta. O erro da Intel foi não ter criado um "plano B" para o caso da aposta inicial dar errado. A partir do Apollo Pro 266 a VIA passou a utilizar o V-Link, um barramento dedicado de 266 MB/s para interligar a porte norte e sul do chipset, eliminando o uso do barramento PCI. O V-Link é estranhamente similar ao AHA usado pela Intel nos chipsets da série 800: ambos são barramentos de 8 bits, que operam a 66 MHz, realizando 4 transferências por ciclo. Ao contrário dos processadores atuais, o Pentium III ainda não era capaz de extrair muito benefício das memórias DDR, já que o processador ainda operava a baixas freqüências de clock e possuía um IPC (o número de instruções processadas por ciclo) também relativamente baixo. A migração para as memórias DDR e a adoção do V-Link melhorou o desempenho do Apollo Pro 266 em relação ao 133, mas ele ainda perdia para o i815 (por uma pequena margem) na maioria das aplicações. De qualquer forma, ele acabou se revelando uma plataforma muito mais desejável, já que oferecia suporte a até 4 GB de RAM. 564
  • 565. Chipsets da SiS Outro chipset muito popular foi o SiS 630, utilizado sobretudo nas placas mais baratas. Ele não era exatamente o que podemos chamar de "produto de alta qualidade", mas era barato e além do vídeo onboard (SiS 305), ele incluía som e rede onboard e suporte a modems AMR, o que o tornava uma solução interessante para as placas "tudo onboard". A versão original do SiS 630, assim como o 630E, incluía portas IDE ATA/66, mas as versões posteriores (630ET, 630S e 630ST) incorporaram interfaces ATA/100. Todas as versões suportam AGP 4x, utilizado tanto pelo chipset de vídeo onboard quanto por uma placa AGP offboard. Uma curiosidade é que o SiS 630 era uma solução single chip, onde a ponte norte e ponte sul do chipset eram integradas num único encapsulamento, ligadas internamente através do barramento PCI. Este design barateia a produção do chipset, mas dificulta a produção de placas com 7 slots, já que a posição central do chipset faz com que as trilhas se tornem muito longas. Em parte devido a isso e em parte devido a ele ser destinado a placas de baixo custo, quase todas as placas baseadas no SiS 630 ofereciam apenas 3 ou 4 slots, sendo 1 AGP e 3 PCI, ou mesmo 3 PCI e 1 AMR, sem o AGP. Mais adiante, a SiS atualizou o projeto, incluindo suporte a memórias DDR. Surgiu então o SiS 635, que continuou sendo usado em um grande volume de placas de baixo custo, até o final da era Pentium III. Tanto o SiS 630 quanto o SiS 635 ofereciam suporte a até 3 GB de memória (3 módulos de até 1 GB), mas na prática o máximo utilizável era 2 GB, pois ou as placas traziam apenas 2 slots de memória, ou não funcionavam estavelmente quando eram usados 3 módulos simultaneamente. Muitas das placas, sobretudo modelos da PC-Chips, possuíam 4 slots de memória, onde 2 deles permitiam o uso de memórias DDR e os outros 2 de módulos de memória SDRAM antigos (você escolhia qual tipo utilizar, mas não podia misturar módulos SDR e DDR). Esta possibilidade era oferecida pelo chipset, que oferecia suporte a ambos os tipos de memória. Existia ainda a possibilidade (para o fabricante) de incluir até 32 MB de memória de vídeo dedicada, o que melhorava o desempenho do vídeo e evitava o uso de memória compartilhada. Algumas placas chegaram realmente a utilizar esta possibilidade, como a ECS 635-M (que trazia 16 MB). Chipsets para o Pentium 4 (soquete 423 e soquete 478) Era uma vez um chipset chamado i440BX, um chipset originalmente destinado aos processadores Pentium II com bus de 100 MHz, mas que se revelou tão robusto que continuou sendo utilizado em vários modelos de placas-mãe para Pentium III, incluindo os modelos de 133 MHz. Algumas placas, como as Abit BX6 e BH6 baseadas no i440BX, fizeram história pelo seu desempenho e pelas possibilidades de overclock. 565
  • 566. Depois do i440BX a Intel lançou a série 800, que trouxe uma nova arquitetura e o uso do AHA, um barramento rápido utilizado para interligar a ponte norte e ponte sul do chipset, evitando o uso do já saturado barramento PCI. Tivemos o i810, o i815 e o i815E, destinados aos processadores Pentium III; o malfadado i820, a primeira tentativa de lançar um chipset com suporte à memória Rambus e o i840, destinado a máquinas de alto desempenho. Depois surgiram os chipsets para o Pentium 4. As versões iniciais do Pentium 4 utilizavam o soquete 423, que foi rapidamente substituído pelo soquete 478, introduzido com o lançamento do Pentium 4 com core Northwood. Apesar de diferentes fisicamente, os dois soquetes são muito similares eletricamente, de forma que compartilham a mesma linha de chipsets, composta pelos modelos atualizados da série Intel 800, além de chipsets da SiS, VIA, ATI e Ali. Chipsets da Intel O primeiro chipset Intel para o Pentium 4 foi o i850, que no início encontrou uma grande resistência devido ao custo dos módulos de memória Rambus. Ele foi sucedido pelo i845 e pelo i845E, uma dupla de chipsets de baixo custo que utilizam, respectivamente, memórias SDRAM comuns e memórias DDR. O i845 teve uma grande sobrevida, resistindo (em suas diversas encarnações) até 2003, quando foi substituído pelas diferentes versões do i865 e pelo i875, que encerrou a era das placas soquete 478, dando lugar aos chipsets da série Intel 900, utilizados pelas placas soquete 775. Todos os chipsets da série 800 utilizam a mesma divisão básica. A ponte norte do chipset é o "Memory Controller Hub", ou simplesmente MCH, que inclui o controlador de acesso à memória RAM, o chipset de vídeo integrado e o barramento de comunicação com o processador. A Intel utiliza uma arquitetura semimodular no MCH, o que permite adicionar ou retirar componentes sem necessidade de fazer grandes modificações em outras partes do chip. É possível, por exemplo, lançar uma versão DDR do chipset simplesmente substituindo o controlador de memória, ou lançar uma versão sem vídeo integrado simplesmente retirando (ou desativando) o bloco responsável. Nas versões com vídeo onboard, o MCH incorpora o chipset de vídeo e passa a ser chamado de "GMCH". A ponte sul é o "I/O Controller Hub" ou ICH, que inclui os controladores do barramento PCI, portas USB, IDE, seriais, paralela, etc., além do chipset de som onboard. Graças à padronização da arquitetura, os chips MCH e ICH de diferentes gerações são intercompatíveis, permitindo que os dois projetos sejam atualizados de forma separada, conforme necessário. Nos chipsets para Pentium III tínhamos também o "Firmware Hub" ou FWH, um chip de memória Flash de 4 MB, que armazena tanto o BIOS principal quanto o BIOS do vídeo integrado. Ele deixou de ser usado nos chipsets para Pentium 4, onde voltou a ser usado o design tradicional, onde o chipset é composto pelos dois chips principais e o chip do BIOS armazena apenas o BIOS propriamente dito. 566
  • 567. Do ponto de vista técnico, o i850 era uma opção interessante, pois utilizava simultaneamente dois módulos RIMM, oferecendo (a 800 MHz) um barramento teórico de 3.2 GB/s. As placas baseadas nele possuem sempre 4 slots de memória e é preciso utilizar os módulos RIMM em pares, sempre instalando terminadores nos slots de memória não usados: Mesmo considerando que os módulos de memória Rambus possuem um tempo de latência mais alto, ainda sobra um ganho respeitável. Isso fez com que o i850E fosse o chipset mais rápido dentro da safra inicial, freqüentemente superando i845 por uma margem de quase 10%. Apesar disso, ele obteve uma baixa aceitação devido ao custo dos módulos RIMM e acabou sendo descontinuado, em favor dos chipsets com suporte a memórias DDR. A Intel errou grosseiramente ao tentar impor esta arquitetura como padrão, oferecendo durante vários meses apenas o i850. Isso literalmente "congelou" a adoção inicial do Pentium 4, até que foi lançado o i845, que, junto com os chipsets da SiS e VIA, finalmente trouxe suporte às memórias DDR. Em 2002 foi lançado o i850E, que adicionou o suporte ao barramento de 533 MHz (4x 133 MHz) utilizado pela segunda safra de processadores. Com exceção desse detalhe, o i850 e o i850E eram idênticos, oferecendo suporte a 2 GB de memória e suporte a AGP 4x. Ambos utilizavam o chip ICH2 como ponte sul, que incluía duas interfaces ATA-100, mas ainda sem suporte a SATA ou USB 2.0. Continuando, temos o i845, que, apesar do nome, foi lançado apenas em setembro de 2001, dez meses depois do i850. O número inferior no nome serve mais para indicar a "posição hierárquica" do i845, como um chipset de baixo custo. A versão inicial do i845 utilizava módulos de memória SDRAM PC-133, o que fazia com que seu desempenho fosse inferior ao do i850. Apesar disso, o baixo custo dos módulos de memória acabou fazendo com que ele fosse mais popular que o irmão mais velho. Em maio de 2002 foi lançado o i845E, que trouxe o suporte a memórias DDR e aos processadores com bus de 533 MHz (4x 133), o que equilibrou a balança. A maioria das placas baseadas no i845E também suportam o uso de módulos de memória DDR 333 (166 MHz). Neste caso o barramento com a memória 567
  • 568. operava de forma assíncrona, com o FSB a 133 MHz, realizando 4 transferências por ciclo. Assim como o i850 e o i850E, ambos oferecem suporte a até 2 GB de memória e AGP 4x, mas diferem no chip ICH usado. Enquanto o i845 ainda utiliza o ICH2, o mesmo utilizado no i850, o i845E passou a utilizar o ICH4, que inclui suporte a USB 2.0 (6 portas) e também uma interface de rede embutida. Na foto a seguir temos uma ECS P4IBAD, uma placa de médio custo baseada no i845E, lançada no início de 2002. Ela oferecia um slot AGP 4x (sem vídeo onboard) e suportava dois módulos DDR-200 ou DDR-266 de até 1 GB cada um. Veja que além das duas portas IDE ATA/100, ela possuía os pontos de contatos para duas portas IDE adicionais. Isso acontecia por que ECS fabricava também uma versão da placa com uma controladora RAID embutida, onde os contatos vagos eram usados para a instalação do chip controlador e das duas portas adicionais: ECS P4IBAD, baseada no i845E Pouco depois, em julho de 2002, foi lançado o i845G, que trouxe como novidade a volta do chipset de vídeo integrado, uma atualização do i752, utilizado nos chipsets i810 e i815, batizado de "Intel Extreme Graphics". Apesar do nome, ele era uma solução bastante modesta, desenvolvido com o objetivo de ser simples e barato de se produzir e não de ser um campeão de desempenho. Todos os chipsets de vídeo integrado lançados pela Intel desde então seguem esta linha básica: são soluções de baixo custo destinadas a oferecer recursos básicos de aceleração 3D para usuários domésticos e 568
  • 569. empresas, deixando que o público entusiasta, que procura uma solução de ponta, substitua o vídeo onboard por uma placa 3D offboard. Tanto a nVidia quanto a ATI se aproveitaram desta característica para lançar chipsets de vídeo integrado mais poderosos e com isso ganhar uma vantagem competitiva, sobretudo nos notebooks, onde, na grande maioria dos casos, não é possível atualizar o vídeo. Voltando ao i845G, o "Intel Extreme Graphics" era um chipset de vídeo bastante simples, com apenas um pipeline de renderização (operando a 200 MHz), sem suporte a T&L ou suporte a pipelines programáveis. Só para efeito de comparação, uma simples GeForce 2 MX possui dois pipelines, além de contar com memória de vídeo dedicada. Para tentar reduzir a diferença, a Intel implementou uma série de otimizações. Em primeiro lugar vem a capacidade de processar até 4 texturas por vez, o que diminui o número de aplicações e conseqüentemente o número de leituras necessárias para montar cada quadro. Em seguida temos o IMMT (Intelligent Memory Manager Technology) que divide a imagem em pequenos blocos, atualizados separadamente. Isso permite utilizar o pequeno cache incluído no chipset de vídeo de forma mais eficiente, permitindo que ele armazene a maior parte dos triângulos e das cores de cada bloco ao invés de uma pequena parcela da imagem total. Isso é coordenado por um segundo mecanismo batizado de ZRT (Zone Rendering Technology), que organiza os dados de cada bloco de modo que eles "caibam" dentro do cache. Este trabalho envolve também o descarte de dados desnecessários. Com isso, o chipset de vídeo consegue manter 29 FPS no Quake III Arena (a 1024x768 e 32 bits de cor) e 12 FPS no Unreal Tournament 2003 (FlyBy), também a 1024x768 e com 32 bits de cor. Ou seja, ele permitia rodar a maior parte dos games da época em resoluções mais baixas, mas ficava devendo ao rodar games mais pesados ou ao utilizar resoluções mais altas. O vídeo onboard sofreu outra pequena atualização com o i845GV (lançado em outubro de 2002), onde a freqüência de operação do vídeo passou a ser de 266 MHz. Ele trouxe também o suporte a memórias DDR 333, o que trouxe mais um ganho de desempenho incremental. A grande deficiência é que ele era um chipset destinado a placas de baixo custo e por isso (assim como o antigo i810) não oferecia a possibilidade de utilizar uma placa de vídeo AGP offboard. Junto com ele foi lançado o i845PE, uma variação destinada a placas de alto desempenho, que vinha sem o vídeo integrado, mas em compensação oferecia um slot AGP 4x para o uso de uma placa offboard. Na prática, os dois chipsets eram idênticos e um ou outro recurso era desabilitado em fábrica, permitindo que a Intel os vendesse com preços diferentes para dois segmentos diferentes do mercado. Este é o diagrama de blocos do i845GE, publicado pela Intel. O "Digital Video Out" refere-se à saída DVI oferecida pelo chipset de vídeo onboard, que acabou não sendo muito utilizada na época, já que o DVI ainda era um padrão 569
  • 570. muito recente e existiam poucos monitores compatíveis. A maior parte das placas-mãe incluía apenas o conector VGA padrão, deixando os contatos referentes à saída DVI desconectados. A série i845 foi substituída pela família i865, lançada em maio de 2003. A principal novidade foi a inclusão de um segundo controlador de memória, que, trabalhando de forma conjunta com o primeiro, adicionou o suporte a dual- channel, permitindo que dois módulos DDR sejam acessados simultaneamente. O Pentium 4 foi desenvolvido originalmente para trabalhar com memórias Rambus, manipulando grandes volumes de dados. Devido à organização das unidades de execução, instruções SSE2 e o design dos caches, o Pentium 4 se beneficiava de um barramento mais largo de acesso à memória mais do que os processadores da família Athlon, por isso o lançamento do i865 foi bastante festejado. O novo controlador de memória trouxe como "efeito colateral" o suporte a até 4 GB de memória, outro recurso digno de nota. Na época, micros com mais do que 2 GB de memória ainda não eram tão comuns, mas, atualmente, com o barateamento dos módulos de memória e o lançamento do Vista, o uso de 4 GB já está se tornando algo relativamente comum nos micros de alto desempenho. 570
  • 571. Foi incluído ainda o suporte a AGP 8x e uma interface de rede gigabit, ligada diretamente ao chip MCH, através do barramento CSA, uma cópia do barramento AHA utilizado para interligar a ponte norte e sul do chipset. Com o barramento exclusivo, a interface gigabit possuía um barramento exclusivo de 266 MB/s, rápido o suficiente para que a placa pudesse operar em modo full- duplex, onde a placa envia e recebe dados simultaneamente, resultando em transferências de até 2 gigabits (1 gigabit em cada direção). Na verdade a interface de rede não foi diretamente integrada ao chipset, mas o chip era vendido como parte do pacote: Placas Gigabit Ethernet em versão PCI têm seu desempenho severamente limitado e não são capazes de se beneficiar das transferências em modo full- duplex, já que o gargalo acaba sendo o barramento PCI. Atualmente, a solução é comprar uma placa PCI Express (já que mesmo um slot 1x oferece banda suficiente para que a placa utilize todo o seu potencial), mas, na época, o PCI Express ainda estava em desenvolvimento, de forma que a solução da Intel era bastante atrativa. Continuando, os chipsets da série i865 passaram a utilizar também o chip ICH5, que trouxe como principal novidade a inclusão de duas interfaces SATA- 150 (além de manter as duas interfaces ATA-100) e o suporte a 8 portas USB 2.0. Percebendo a tendência dos fabricantes de placas a incluírem controladoras RAID nas placas de alto desempenho, a Intel disponibilizou também o chip ICH5R, que incluía uma controladora SATA RAID, tornando desnecessário o uso de uma controladora externa. Existiram no total 4 variações do i865, todas lançadas simultaneamente. A versão mais básica era o i865P, que suportava apenas memórias DDR-266 e 333 e não possuía vídeo onboard. Em seguida, temos o i865PE, que inclui o suporte a memórias DDR-400, o i865G, que traz o chipset de vídeo onboard 571
  • 572. (mantendo o slot AGP externo) e o i865GV, uma versão de baixo custo do i865G, onde o slot AGP era desabilitado. Em abril de 2004 foi lançado o i848P, um chipset de baixo custo, que ficou no meio do caminho entre os antigos chipsets da série i845 e os da série i865. Apesar de incluir suporte a AGP 8x e utilizar o chip ICH5, com o conseqüente suporte a interfaces SATA, ele não suporta dual-channel e não inclui a rede gigabit onboard. Ele suporta também até 2 GB de memória DDR-266, 333 ou 400 e não inclui o chipset de vídeo integrado. Concluindo a série 800, temos o i875P (Canterwood). Ele é muito similar ao i865PE, suportando dois módulos DDR-400 em dual-channel, oferecendo suporte a AGP 8x e utilizando o chip ICH5 como ponte sul (com opção de utilizar o ICH5R, que incluía duas interfaces SATA e suporte a RAID). Por ser um chipset de alto custo, destinado a placas de alto desempenho, as placas baseadas nele foram relativamente raras aqui no Brasil. O i875P oferecia também suporte ao Hyper Treading, introduzido com o lançamento do Pentium 4 com core Prescott. Como um bônus, ele oferecia suporte a módulos de memória com ECC (populares em estações de trabalho e servidores, devido à maior garantia contra corrompimento de dados causados por defeitos nos módulos de memória) e oferecia o "Turbo mode", recurso que melhorava sutilmente os tempos de acesso à memória, resultando em um pequeno ganho de desempenho. Um detalhe é que o i875P acabou sendo finalizado e lançado um mês antes do i865PE, que seria seu antecessor. :) 572
  • 573. Chipsets da SiS Como de praxe, a linha de chipsets da Intel sofreu a concorrência dos chipsets de outros fabricantes, que aproveitaram o maior custo e as limitações nos chipsets da Intel (como a demora em adicionar suporte ao AGP 8x e as versões "castradas" do i845 e i865, onde o barramento AGP era desabilitado) para ganhar terreno. Além da SiS, VIA e Ali, tivemos a participação também da ATI, que, antes da fusão com a AMD, havia conseguido conquistar um bom espaço, sobretudo nos notebooks. Entre os chipsets da SiS, o primeiro foi o SiS 645, um chipset destinado à primeira geração de processadores Pentium 4, soquete 423 e 478, que incluía suporte a 3 GB de memória RAM, AGP 4x e oferecia duas portas ATA-100, som e rede integrados através do chip SiS 961, usado como ponte sul. Pouco depois, foi anunciado o SiS 650, que incluía um chipset de vídeo SiS 315 onboard e o SiS 651, que incluía suporte a memórias DDR-333, bus de 533 MHz, Hyper-Threading, USB 2.0 e interfaces ATA-133. Os três chipsets ofereciam suporte tanto a memórias SDRAM quanto memórias DDR, mas a grande maioria dos fabricantes de placas optaram por utilizar as DDR devido ao ganho de desempenho. O SiS 651 foi um chipset bastante popular entre as placas de baixo custo produzidas em 2003 e 2004. Um exemplo de placa baseada nele é a Asus P4SP-MX, uma placa soquete 478 micro-ATX, que incluía um slot AGP 4x e 3 slots PCI, além de vídeo, som e rede onboard. Embora o chipset suportasse o uso de até 3 GB de memória, a placa possuía apenas 2 slots, o que limitava o uso a um máximo de 2 GB (2 módulos de 1 GB cada): Asus P4SP-MX, baseada no SiS 651 573
  • 574. Ao contrário dos chipsets SiS para o Pentium III e anteriores, onde ainda era utilizado o barramento PCI, os chipsets SiS para o Pentium 4 utilizam o MuTIOL, um barramento dedicado, para interligar as pontes norte e sul do chipset. Ele é um barramento de 16 bits, que opera a 133 MHz, com duas transferências por ciclo, oferecendo um barramento de dados de 533 MB/s. A geração seguinte inclui os chipsets SiS 648, SiS 655 e SiS 661GX, que incluem o suporte a AGP 8x e passaram a utilizar o SiS 964 como ponte sul, chip que inclui suporte a SATA (duas portas) e RAID. Eles incluem também uma versão atualizada do MuTIOL, onde foi dobrada a taxa de transmissão. O SiS 655 oferece suporte a dual-channel (assim como os chipsets da série i865 da Intel), mas não oferece vídeo onboard, enquanto o 661GX inclui um chipset de vídeo SiS Mirage, uma versão atualizada do SiS 315. A SiS chegou a lançar também um chipset com suporte a memórias Rambus, o SiS R658, que foi pouco usado. Em seguida temos os chipsets da linha FX, que incluem suporte ao bus de 800 MHz, utilizado pelo Prescott, e a memórias DDR-400. A linha inclui o SiS 648FX, SiS 655FX e o SiS 661FX, versões atualizadas dos chipsets anteriores. O 648FX é a versão mais simples, sem vídeo onboard e sem suporte a dual- channel, o 655FX é a versão destinada a placas de alto desempenho, com suporte a dual-channel e a RAID, através do chip SiS 964 (usado como ponte sul), enquanto o 661FX é a versão com vídeo onboard (e sem dual-channel). Como de praxe, o 661FX acabou sendo o mais vendido dos três, sendo utilizado sobretudo em placas micro ATX, com vídeo, som e rede onboard. Na maioria dos casos ele era utilizado em conjunto com o SiS 964L, uma versão econômica do SiS 964, que não incluía o suporte a SATA. De uma forma geral, o desempenho destes chipsets da SiS era inferior aos da linha 8xx da Intel. O 661FX concorria com o 845PE, que também era um chipset de baixo custo, mas perdia por uma boa margem em diversos aplicativos devido a deficiências nos drivers. O vídeo onboard utilizado possuía um desempenho ruim e não possuía suporte 3D no Linux e problemas adicionais eram adicionados pelos fabricantes de placas. Como os chipsets da SiS eram os mais baratos, eles acabavam sendo utilizados nos projetos de placas mais baratas, somando as deficiências dos chipsets e drivers com as deficiências nos projetos e componentes utilizados nas placas. No final, a economia só valia a pena em casos onde realmente não havia outra opção. Chipsets da VIA A VIA se envolveu em uma batalha jurídica com a Intel até abril de 2003 em torno da licença sobre o barramento utilizado pelo Pentium 4, necessária para a produção de chipsets. Desde o Pentium II, todos os fabricantes de chipsets pagam royalties à Intel por cada chipset vendido. Em outras palavras, além de lucrar com a venda dos processadores e as vendas de seus próprios chipsets, a Intel lucra também com as vendas de chipsets dos concorrentes. 574
  • 575. A VIA contestou o pagamento da licença, mas no final acabou cedendo, já que a pendenga judicial assustava os fabricantes de placas, que deixavam de comprar chipsets da VIA com medo de serem processados pela Intel. Entre 2002 e 2003 a VIA chegou a vender placas sob sua própria marca, como uma forma de tentar preservar sua participação no mercado (embora sem muito sucesso). O primeiro chipset VIA para o Pentium 4 foi o VIA Apollo P4X266, que suportava memórias DDR-200 e DDR-266 (além de memórias SDRAM), até 4 GB de memória, AGP 4x e era compatível com a geração inicial de processadores Pentium 4 e Celerons com bus de 400 MHz. Nos anos seguintes, o P4X266 recebeu diversas atualizações. A primeira foi o P4X266A, que trouxe melhorias no acesso à memória, seguida pelo P4M266, que incorporou um chipset de vídeo ProSavage e finalmente o P4X266E que trouxe suporte à segunda geração de processadores, que utilizavam bus de 533, além de passar a utilizar o chip VT8235 como ponte sul, que incluía suporte a USB 2.0 e ATA-133. A segunda geração é composta pelos chipsets Apollo P4X400, P4X400A e P4X533. Como o nome sugere, os dois primeiros suportavam bus de 400 MHz, enquanto o P4X533 é a versão atualizada, com suporte a bus de 533 MHz. Eles utilizam uma versão atualizada do barramento V-Link (que interliga a ponte norte e sul do chipset), que passou a trabalhar a 533 MB/s, além de passarem a suportar memórias DDR-333 e AGP 8x. Tanto o P4X400 quanto o P4X400A utilizam o VT8235 como ponte sul (o mesmo chip utilizado pelo P4X266E), enquanto o P4X533 utiliza o VT8237, que inclui duas interfaces SATA 150, com direito a RAID. Em seguida, temos os chipsets PT800 e PM800, que incluem suporte aos processadores Pentium 4 com core Prescott e a memórias DDR-400. Ambos utilizam o VT8237 como ponte sul e incluem o suporte a AGP 8x e outros recursos. A principal diferença entre os dois é que o P4M800 inclui um chipset de vídeo VIA Unicrome Pro (sucessor do ProSavage) integrado e por isso é mais comum em placas de baixo custo. Chipsets da ULi Embora menos comuns, temos também os chipsets da ULi (Antiga Ali), usados exclusivamente em placas de baixo custo. O primeiro chipset da linha foi o Aladdin-P4, um chipset destinado à safra inicial de processadores Pentium 4, que suportava apenas as versões com bus de 400 MHz. Ele foi rapidamente substituído pelos chipsets Ali M1681, Ali M1683 e M1685, que constituem a safra mais atual. O M1681 é a versão mais antiga, que oferece suporte aos processadores com bus de 400 e 533 MHz, memórias DDR-400, até um máximo de 3 GB de memória e AGP 8x. O M1683 inclui suporte aos processadores com bus de 800 575
  • 576. MHz e passou a suportar até 4 GB de memória, enquanto o M1685 inclui suporte a memórias DDR2 e PCI Express. Os três chipsets utilizam um barramento HyperTransport como meio de ligação entre a ponte norte e ponte sul do chipset, sendo que o M1681 e o M1683 utilizam um link de 400 MB/s, enquanto o M1685 utiliza um link de 800 MB/s. Existe uma certa polêmica com relação ao real ganho de utilizar barramentos mais rápidos para interligar a ponte norte e sul do chipset. É comprovado que utilizar um barramento rápido qualquer (seja o Intel AHA, V-Link, MuTIOL, A- Link ou HyperTransport) oferece ganhos substanciais com relação a utilizar o barramento PCI, como era feito nos chipsets antigos, pelo simples fato do barramento PCI ser realmente lento demais para acumular todas as transferências de dados das portas IDE e SATA, rede, som e todos os demais componentes onboard, além de toda a comunicação interna do chipset. Somando as taxas máximas de transferência das duas interfaces IDE, duas interfaces SATA e todos os demais periféricos integrados, que (com exceção da rede gigabit utilizada nos chipsets Intel da série i865) são todos integrados à ponte sul do chipset, você obteria algum valor elevado, próximo da marca de 1 GB/s. Entretanto, não existe situação prática onde todas as interfaces sejam utilizadas simultaneamente. Para isso, seria necessário que você tivesse instalados 8 HDs topo de linha (4 IDE e 4 SATA) e escrevesse algum tipo de programa de benchmark que utilizasse todos os HDs, rede e som simultaneamente. Na prática, é raro que a soma do barramento utilizado pelos componentes integrados à ponte sul do chipset ultrapasse a marca dos 200 MB/s em um dado momento. Os fabricantes atualizam o barramento de interligação entre os dois chips conforme novas tecnologias ficam disponíveis e, na medida do possível, tentam utilizar isso como ferramenta de marketing, mas, na prática, migrar de um barramento HyperTransport de 800 MB/s para um de 1600 MB/s, por exemplo, não traz nenhum ganho significativo de desempenho nessa situação específica, já que o excesso de banda simplesmente não é utilizado. Chipsets da ATI Antes da aquisição pela AMD, a ATI lançou duas famílias de chipsets para o Pentium 4 (todos com vídeo integrado), que se tornaram populares sobretudo nos notebooks de baixo custo. A primeira família é composta pelos chipsets Radeon 9000/PRO e 9100/PRO, que oferecem suporte a bus de 400, 533 e 800 MHz, suporte a DDR-400 e AGP 8x, além de trazerem integrado um chipset de vídeo Radeon 9200. A linha seguinte é composta pelos chipsets Radeon Xpress 200 RS400 e Xpress 200 RS410, que incluem suporte a memórias DDR2 (sem abandonar o suporte às DDR convencionais), trazem um chipset de vídeo Radeon X300 e passaram a utilizar um barramento HyperTransport de 800 MB/s para interligar as pontes norte e sul do chipset, substituindo o barramento A-Link (de 266 MB/s) utilizado nos chipsets da série 9000. 576
  • 577. Tanto o RS400 quanto o RS410 não incluem suporte a AGP, que foi substituído pelo barramento PCI Express. O RS400 é uma solução de baixo custo, que não permite o uso de placas 3D PCI Express offboard, enquanto o RS410 oferece a possibilidade de usar um slot PCI Express 16x. De uma forma geral, os chipsets da ATI para o Pentium 4 foram bons produtos, superiores em alguns aspectos às soluções da SiS e VIA. Entretanto, depois que a ATI foi adquirida pela AMD, a licença de uso do barramento foi revogada pela Intel e toda a linha de chipsets para processadores Pentium 4 e Core foi abandonada. É improvável que a ATI (agora AMD/ATI) volte a produzir chipsets para processadores Intel, de forma que cito-os aqui mais pela sua importância histórica. Chipsets para o Athlon, Duron e Sempron (soquete A) Por trás de todo grande processador existe sempre um grande chipset. De pouco adianta um processador rápido espetado em uma placa-mãe instável, ou que careça de recursos básicos. Até o K6-3, a AMD não precisava se preocupar em criar uma plataforma para seus processadores, pois eles simplesmente utilizavam as mesmas placas usadas pelos processadores Intel. Uma das boas coisas desta época é que você podia simplesmente escolher o processador mais rápido ou mais barato, sem se preocupar com os prós e contras das placas para ele. Com o Pentium II, a Intel mudou as regras do jogo, passando a utilizar um barramento proprietário, o GTL+. Outros fabricantes, interessados em desenvolver processadores ou chipset compatíveis precisavam pagar royalties à Intel e jogar conforme as regras definidas por eles. Como resposta, a AMD adotou o uso do barramento EV6 a partir do Athlon, o que causou o "racha" da plataforma PC. Além das mudanças introduzidas juntamente com novas famílias de processadores, passamos a ter placas para processadores Intel e placas para processadores AMD. O barramento EV6 realiza duas transferências por ciclo de forma que, ao operar a 100 MHz, temos uma freqüência efetiva de 200 MHz, contra as 4 transferências por ciclo do barramento utilizado pelo Pentium 4. Apesar dessa desvantagem inicial, o EV6 oferece a vantagem de ser um barramento dedicado, onde cada processador possui uma ligação própria com o chipset. Além de ajudar nas placas com dois processadores em SMP, esta característica passou a fazer diferença com o lançamento dos processadores dual-core. Chipsets da AMD O problema em possuir uma plataforma própria é que, além de desenvolver os processadores, se torna necessário coordenar o desenvolvimento da plataforma, incentivando outros fabricantes a desenvolver chipsets, fabricar placas e assim por diante. 577
  • 578. A AMD iniciou então o desenvolvimento de uma linha de chipsets, além de desenvolver um conjunto de placas de referência, projetos de placas-mãe que podem ser usados pelos fabricantes interessados. O principal objetivo não era realmente entrar para o ramo de chipsets, que na época estava fora das pretensões da AMD, mas sim estimular os demais fabricantes a desenvolverem produtos para a plataforma, quebrando a hegemonia da Intel. O primeiro foi o AMD 750 (Irongate), o primeiro chipset para o Athlon. Ele era um projeto clássico, composto pelos chips AMD 751 (a ponte norte) e AMD 756 (a ponte sul), que eram interligados através do barramento PCI, assim como no Intel 440BX. O chipset suportava interfaces IDE ATA-66, AGP 2x e utilizava memórias SDRAM. A falta de suporte a AGP 4x, além de alguns problemas de estabilidade, tornaram o AMD 750 uma alternativa um tanto quanto inadequada. Como disse, a idéia do AMD 750 não era ser uma plataforma definitiva, mas sim servir como um ponto de partida. A primeira variação usada pelos fabricantes de placas-mãe foi combinar a porte norte do AMD 750 com a Ponte sul do VIA Apollo 133, criando uma espécie de solução híbrida, que combinou os recursos do AMD 750 com o suporte a até 4 portas USB e a slots AMR. Exemplos de placas que adotaram esta solução mista são a Asus K7M e a FIC SD11. A K7M foi um caso bastante curioso. Apesar de ser fabricada pela Asus, ela era vendida em uma caixa branca, sem nenhuma menção à marca no manual ou no CD de drivers. Até hoje não é possível encontrar qualquer referência a ela no site da Asus. Existem várias possíveis explicações para a história, que vão desde receio de represálias por parte da Intel, até medo de associar à marca a uma plataforma ainda incipiente. De qualquer forma, a K7M foi uma boa placa dentro das limitações do chipset. Ela era uma placa full-ATX típica, com 1 slot AGP, 5 slots PCI, um slot ISA (compartilhado com o último PCI), além de som onboard e um slot AMR para a conexão de um modem, ambos cortesia do chip VIA 686A, usado como ponte sul: Asus K7M, a placa "clandestina" da Asus, baseada no AMD 750 578
  • 579. Ao contrário do que tivemos com o Pentium III e Celeron, onde era possível utilizar um adaptador de 20 reais para instalar um processador soquete 370 em uma placa slot 1, não chegaram a ser fabricados adaptadores que permitissem instalar processadores soquete A em placas slot A (embora fossem tecnicamente possíveis), o que abreviou a vida útil das placas slot A, limitando seu uso à primeira leva de processadores Athlon. O próximo da lista foi o AMD 760, que trouxe o suporte ao barramento EV6 266, que nada mais é do que uma versão atualizada do barramento original, capaz de operar a 133 MHz (mantendo as duas transferências por ciclo), além do suporte a memórias DDR. Ele incluiu também o suporte a AGP 4x e interfaces ATA-100. Inicialmente, existiam planos para lançar um terceiro chipset, o AMD 770, que traria suporte a multiprocessamento e seria utilizado pelo AMD Mustang, uma versão do Athlon destinada a servidores, com mais cache L2. A promessa acabou não se materializando e no lugar do 770 foi lançado o AMD 760MP, uma versão atualizada do 760, que trazia suporte a multiprocessamento. O próprio Mustang acabou engavetado, dando lugar ao Athlon MP, uma versão do Athlon Palomino com suporte a SMP. O 760MP fez um relativo sucesso, sendo utilizado em diversas placas destinadas a servidores e workstations, incluindo a Tyan Tiger MPX. Um problema na controladora USB que passou despercebido até que o chipset já estivesse em produção fez com que toda a safra inicial de placas fossem vendidas em conjunto com uma placa USB externa, com as portas USB onboard desativadas no setup. Chipsets da VIA Mantendo sua tradição de chipsets alternativos, a VIA entrou no mercado de chipsets para o Athlon com o KX133, lançado em janeiro de 2000, quase 6 meses após o lançamento do Athlon e do AMD 750. O termo "alternativo" neste caso é apenas força do hábito, já que o KX133 (e seus sucessores) acabou se tornando o chipset dominante para a plataforma, substituindo rapidamente o AMD 750 e o 760. Apenas o AMD 760MP foi capaz de esboçar reação, mantendo sua posição entre as placas com suporte a SMP durante algum tempo. Em termos de recursos, o KX133 era bem semelhante ao VIA Apollo 133 (para Pentium III), inclusive ambos os chipsets utilizam a mesma ponte sul, o chip VT82C686A (ou simplesmente 686A), e utilizam o barramento PCI como barramento de comunicação. O KX133 inclui suporte a AGP 4x, assim como o AMD 760, mas em compensação ainda não inclui suporte a memórias DDR, ficando limitado às memórias SDRAM PC-133, que na época ainda eram mais baratas. Ele suporta 4 módulos, até um máximo de 2 GB. Assim como no Apollo 133, o KX133 permitia que a freqüência da memória fosse ajustada de forma assíncrona com a freqüência do FSB, o que permitia manter as memórias operando a 133 MHz, mesmo ao utilizar as versões do Athlon com bus de 200 MHz (100 MHz com duas transferências por ciclo). 579
  • 580. Combinadas com mais algumas otimizações, essa característica fazia com que o KX133 fosse sensivelmente mais rápido que o AMD 750, chegando a competir com o AMD 760 (que já utilizava memórias DDR) em diversas aplicações. Por utilizar o mesmo chip 686A como ponte sul, o KX133 não trouxe nenhuma novidade com relação aos demais barramentos. Ele continuou oferecendo 4 portas USB, interfaces ATA-66, som onboard (e a possibilidade de adicionar um modem, através de uma placa AMR), além de conservar o suporte a slots ISA. Comparado com os chipsets para processadores Intel da época, o KX133 era um chipset mediano. Assim como em outros chipsets VIA, seu trunfo era o baixo custo. A ponte sul integrava vários componentes, controlador de I/O, ponte ISA/PCI e monitor de hardware, componentes que nos chipsets Intel precisavam ser adquiridos separadamente pelo fabricante da placa-mãe, aumentando a diferença no custo de produção das placas. Note que, apesar de suportar 133 MHz para a memória, o KX133 oferecia suporte apenas aos processadores com bus de 200 MHz e, mesmo em overclock, não era capaz de superar os 112 a 115 MHz de FSB. Em seguida, a VIA lançou o KT133, uma versão adaptada do KX133 destinada ao Athlon Thunderbird e ao Duron, já utilizando o soquete A. Com exceção desse detalhe, o KT133 não é diferente do KX133, mantendo o suporte apenas aos processadores com bus de 200 MHz. Isso foi resolvido apenas com o lançamento do KT133A, que trouxe suporte às versões do Thunderbird que utilizam bus de 266 MHz (ou 133 MHz com duas transferências por ciclo, como preferir :). Ambos suportam também o chip 686B como ponte sul, que incorporou interfaces ATA-100. Temos aqui o diagrama de blocos do KT133, que se aplica também ao KT133A. Veja que ele utiliza um design bastante simples, com toda a comunicação sendo feita através do barramento PCI: Diagrama de blocos do KT133 580
  • 581. Com o lançamento do Duron, a plataforma soquete A ganhou um processador de baixo custo, o que levou a VIA a lançar o KM133, mais uma versão do KT133, que incorporava agora um chipset de vídeo ProSavage, mantendo todas as demais características, como o suporte a AGP e o uso de memórias SDRAM. Como de praxe, o desempenho do vídeo onboard em aplicativos 3D estava longe de ser espetacular, oferecendo cerca de 70% do desempenho de uma nVidia TnT2 M64, que era uma das placas offboard mais simples disponíveis na época. Só para efeito de proporção, a série TnT2 foi a terceira série de placas da nVidia, anterior às primeiras GeForce. A TnT2 M64 era uma versão de baixo custo, que operava a um clock mais baixo e possuía um barramento com a memória de apenas 64 bits (em vez de 128). O ProSavage era o tipo de chipset de vídeo que você usaria para jogar o Quake III, a 640x480 e com parte dos efeitos visuais desativados. Em janeiro de 2001 a VIA lançou seu primeiro chipset com suporte a memórias DDR, o KT266. O principal motivo da demora é que, ao contrário do Pentium 4, o Athlon é um processador mais adaptado para trabalhar com um barramento de dados mais estreito, de forma que o ganho de desempenho ao migrar para as memórias DDR era relativamente pequeno, pouco superior a 10%. A VIA simplesmente esperou que os preços dos módulos DDR caíssem até que a diferença em relação aos SDR fosse pequena. O KT266 mantém o suporte a memórias SDR, o que permitiu o surgimento de algumas placas híbridas, com suporte a ambos os padrões. Assim como o Apollo Pro266, o chipset para processadores Pentium III lançado poucos meses antes, o KT266 abandona o uso do barramento PCI para a interligação entre a ponte norte e sul do chipset e passa a utilizar o barramento V-Link. Com isso ele abandonou a compatibilidade com os chips 686A e 686B e passou a utilizar o chip VT82331 como ponte sul. Com exceção da pequena melhora no desempenho geral trazido pelo uso do V-Link, os recursos do VT82331 e do 686B são muito similares. Ambos oferecem duas interfaces ATA-100, 6 portas USB 1.1 e som onboard. A principal diferença é que ele passou a integrar também um chipset de rede VIA Rhine. Muitas das primeiras placas baseadas no KT266 possuíam problemas relacionados ao BIOS, o que prejudicava de forma considerável o desempenho, fazendo com que elas acabassem sendo mais lentas que as baseadas no KT133. Atualizações de BIOS foram rapidamente disponibilizadas pelos fabricantes, corrigindo o problema. Combinando o uso de memórias DDR e otimizações adicionais feitas no controlador de memória, um Athlon espetado em uma placa baseada no KT266 é de 10 a 15% mais rápido que um espetado em uma placa da geração anterior, com memórias SDR. Em agosto de 2001, a VIA lançou uma atualização do KT266, o KT266A, que além de resolver de vez os problemas de performance relacionados a versões de BIOS e erros de implementação por parte dos fabricantes de placas, trouxe algumas melhorias incrementais no controlador de memória, que resultaram em mais um pequeno ganho. Como não existiram outras mudanças arquiteturais, a principal vantagem em comprar uma placa baseada no KT266A 581
  • 582. era a garantia de não precisar ficar se debatendo com atualizações de BIOS para normalizar o desempenho da placa. Antes de ser aposentada, a série KT266 recebeu mais duas atualizações. A primeira foi o KM266, uma versão do KT266A que incluía um chipset de vídeo onboard ProSavage8. A segunda foi o KT333, que incluiu suporte a bus de 333 MHz (166 MHz x 2) e suporte oficial a memórias DDR-333, sem, entretanto, trazer novos recursos ou novas opções de ponte sul. Na foto a seguir temos uma Gigabyte GA-7VRXP, um exemplo de placa baseada no KT333. Ao contrário da maioria das placas baseadas no KM266, que eram placas micro-ATX, que priorizavam o uso dos componentes onboard ou mesmo mini-ATX, ela é uma placa full-ATX que inclui um slot AGP universal 4x e 5 slots PCI. Ela possui um total de 4 portas IDE, onde as duas portas adicionais são cortesia do chip Promise PDC20276, um controlador RAID. As portas USB 1.1 incluídas na ponte sul do chipset foram desativadas e substituídas por um chip VIA 6202, mais um controlador adicional, que adiciona suporte a 8 portas USB 2.0. Embora o KT333 ofereça suporte a 4 GB de RAM, existe suporte a módulos de até 1 GB. A GA-7VRXP oferece suporte a até 3 módulos, de forma que o máximo suportado por ela são 3 GB, o que, de qualquer forma, era uma marca muito boa para a época: Gigabyte GA-7VRXP, baseada no KT333 Continuando a saga, temos os chipsets VIA KT400 e KM400. O KT400 é um projeto sensivelmente melhorado em relação ao KT333, incluindo suporte a AGP 8x, ATA-133 e USB 2.0. Como o nome sugere, ele oferece suporte oficial 582
  • 583. a memórias DDR-400, onde o barramento com a memória opera de forma assíncrona, mantendo o FSB a 333 MHz. Ele utiliza também a segunda versão do V-Link, operando agora a 533 MB/s, como barramento de comunicação entre a ponte norte e ponte sul do chipset. O KM400, por sua vez, é uma versão do KT400 com vídeo onboard, cortesia do chipset VIA UniChrome, desenvolvido em parceria com a S3. Como em outras versões, o KT400 foi tipicamente utilizado nas placas full-ATX ou mini- ATX, destinadas a PCs offboard, enquanto o KM400 era mais utilizado em placas micro-ATX, destinadas a PCs de baixo custo. O KT400 e o KM400 sofreram uma forte concorrência por parte do nVidia nForce2 que, embora um pouco mais caro, era mais rápido que o KT400 (graças ao suporte a dual-channel) e oferecia a opção de utilizar o nForce2 IGP, uma versão com um chipset de vídeo Geforce4 MX integrado, muito mais poderoso que o VIA UniChrome do KM400. Para completar, o nForce oferecia drivers mais maduros e melhor suporte no Linux. A combinação destas características fez com que ele passasse a rapidamente roubar mercado da VIA. A VIA respondeu com o KT400A, uma versão revisada do KT400, que trouxe um controlador de memória redesenhado, que incluía um novo mecanismo de prefetch (responsável por adiantar o carregamento de dados nos módulos de memória, aproveitando os ciclos livres) e um aumento dos buffers de dados disponíveis no chipset. Estes buffers armazenam dados carregados pelo mecanismo de prefetch, que possuem uma grande possibilidade de serem requisitados em seguida. O princípio é similar ao de um cache L3, mas o funcionamento é diferente, já que o buffer é gerenciado pelo controlador de memória e o processador não tem ciência dele. A VIA usou a marca "FastStream64" para divulgar as melhorias. Basicamente, o KT400A levou ao limite o desempenho que era possível obter utilizando um único módulo DDR400, reduzindo a diferença em relação ao nForce2 com dual-channel. Como um extra, o KT400A passou a oferecer suporte ao chip VT8237R como ponte sul. Ele incorporava 4 interfaces SATA, com suporte a RAID 0 e 1. Como opção de baixo custo, os fabricantes podiam utilizar o VT8235CE, que vinha com apenas 6 portas USB (em vez de 8) e sem as interfaces SATA. Hoje em dia parece burrice economizar alguns dólares em troca da falta de suporte a SATA, mas em março de 2003 o cenário era um pouco diferente do atual, de forma que os fabricantes se dividiram entre as duas opções. Junto com o KT400A, foi lançado o KM400A, que incluía o chipset de vídeo onboard. Antes que a plataforma soquete A fosse aposentada, em favor do soquete 754 e dos processadores com as extensões de 64 bits, a VIA lançou dois últimos chipsets, o KT600 e o KT880. A série KM acabou ficando estagnada no KM400A, sem novas atualizações. O KT600 é uma versão atualizada do KT400A, que inclui suporte aos processadores com bus de 400 MHz. Note que o suporte a memórias DDR-400 583
  • 584. já existia desde o KT400A, mas nele a memória funcionava de forma assíncrona. A maioria das placas baseadas no KT600 utilizava o chip VT8237 ou o VT8237R (o VT8237R oferece suporte a RAID, enquanto o VT8237 não) como ponte sul, mas chegaram a ser lançados alguns modelos de baixo custo, com o VT8235CE, que, como vimos, não trazia interfaces SATA. Finalmente, temos o KT880, que trouxe como novidade a adição de um segundo controlador de memória, que possibilitou o suporte a dual-channel e o suporte a até 8 GB de RAM. Combinado com o uso do FastStream64 (o conjunto de otimizações incluídas no KT400A), o KT880 se tornou um concorrente feroz do nForce2, disputando o nicho das placas de alto desempenho. Apesar disso, ele acabou tendo uma vida útil relativamente curta, já que chegou ao mercado no final da era soquete A. Chipsets da SiS Em junho de 2000 a AMD lançou a primeira versão do Duron. Na época ele era quase uma pechincha, pois oferecia cerca de 90% do desempenho de um Athlon Thunderbird do mesmo clock por quase um terço do preço e ainda por cima suportava overclocks generosos, com a versão de 600 MHz suportando trabalhar a 800 MHz ou mais. O maior obstáculo à popularização do Duron nos primeiros meses não era a performance do processador, mas sim a carência de chipsets com vídeo onboard. O Celeron contava com as placas baseadas no i815, mas o Duron precisava ser combinado com placas full-ATX ou mini-ATX baseadas no VIA KT133, que, combinadas com uma placa 3D offboard, resultavam em PCs muito mais caros que os Celerons. Esta carência foi suprida por três chipsets. O VIA KM133 (que já vimos), o Ali MAGIK1 e o SiS 730S, que marcou a entrada da SiS no ramo das placas soquete A. Ele era uma solução single-chip, onde a ponte norte e a ponte sul foram combinadas em um único chip, com a comunicação interna ainda feita através do barramento PCI. Ele utilizava um chip SiS 300 como vídeo integrado. Apesar dos problemas relacionados aos drivers, o desempenho era mediano (para a época), similar ao i752 usado no chipset i815, destinado ao Celeron e levemente inferior ao ProSavage, utilizado no VIA KM133. O SiS 730S foi usado exclusivamente em placas de baixo custo, sempre no formato micro-ATX e contando tipicamente com um slot AGP e três slots PCI. O desempenho do controlador de memória era sensivelmente inferior ao do VIA KM133, de forma que o desempenho geral das placas era cerca de 5% inferior, mas, em compensação, as interfaces IDE do SiS 730S eram mais rápidas e o chipset de vídeo incluía suporte a iDCT e motion compensation, o que reduzia a utilização do processador ao assistir filmes em Divx e DVDs. Este era um diferencial importante para quem tinha um Duron de baixo clock e queria manter um filme rodando em segundo plano enquanto navegava ou trabalhava. 584
  • 585. Completando as especificações, o SIS 730S oferecia suporte a até 1.5 GB de memória (ainda SDRAM, sem suporte a DDR), AGP 4x, 6 portas USB 1.1, interfaces ATA-100, som e rede onboard, além da com a opção de usar um modem AMR. Ele oferecia suporte a bus de 133 MHz, mas o chipset não trabalhava de forma inteiramente estável acima de 100 MHz, de forma que ele era mais adequado aos Durons. Na foto a seguir temos uma PC-Chips M810LR, um triste exemplo de placa de baixo custo, baseada no SiS 730S, que acabou se tornando extremamente popular no Brasil devido ao baixo custo. Ela incluía as portas de expansão típicas em uma placa micro-ATX da época, incluindo o slot AGP, dois slots PCI, o slot AMR utilizado pelo modem, dois slots de memória, duas portas IDE, além do vídeo, som e rede onboard. Entre os diversos problemas da placa estão a falta de estabilidade geral, deficiências no sistema de alimentação elétrica do slot AGP, o que impedia o uso de placas AGP mais parrudas (já que o slot AGP não era capaz de fornecer a energia necessária), problemas de durabilidade causados pela baixa qualidade dos capacitores, deficiência nos reguladores de tensão do processador, baixo desempenho, problemas diversos relacionados ao BIOS e drivers e dificuldade de encontrar e baixar atualizações para eles, ou seja, assim como outras placas da PC-Chips, a única qualidade da M810LR era mesmo o preço. PC-Chips M810LR, baseada no SiS 730S Poucos meses depois foi lançado o SiS 735, onde o vídeo onboard foi substituído por um controlador de memória adicional, que adicionou o suporte a memórias DDR, possibilitando o desenvolvimento de placas com suporte a módulos dos dois padrões (embora não fosse possível misturar módulos dos 585
  • 586. dois tipos). Ele manteve todos os demais recursos básicos, incluindo o design baseado em um único chip e o uso do barramento PCI para toda a comunicação interna, mas o uso de memórias DDR tornava as placas baseadas nele consideravelmente mais rápidas. Ao contrário do 730S, o 735 acabou não se tornando uma solução tão popular, já que a falta do vídeo onboard dificultava seu uso em PCs de baixo custo. Ele acabou sendo substituído pelo SiS 740, uma atualização da linha anterior (com vídeo onboard), que voltou a ser baseado em dois chips separados, interligados pelo barramento MuTIOL, de 533 MB/s. O SiS 740 mantém o suporte a até 1.5 GB de memória DDR-400, bus de 266 MHz (133 MHz x 2) e mantém o chipset de vídeo SiS 300 utilizado no 730S. Os fabricantes tinham a opção de utilizar o chip SiS961 ou o SiS962 como ponte sul. Ambos incluíam som e rede onboard, mas o 961 oferecia interfaces ATA- 100 e 6 portas USB 1.1, enquanto o 962 incluía interfaces ATA-133 e USB 2.0. O 740 foi sucedido pelo SiS 745, que trouxe um novo controlador de memória, com suporte a memórias DDR-333 e a até 3 GB de memória (3 módulos de 1 GB), mas, em compensação, abandonou o suporte às memórias SDRAM, em uma época em que a migração SDR > DDR já estava em estágio avançado e os módulos de memória baseados nas duas tecnologias já custavam aproximadamente o mesmo. Apesar do aumento na freqüência da memória, ele oferecia suporte oficial apenas aos processadores com bus de 266 MHz. Assim como em muitos dos chipsets da VIA, a memória operava de forma assíncrona, de forma que o sistema se beneficiava do barramento mais rápido com a memória, mesmo sem um aumento correspondente na freqüência do processador. Ao contrário do SiS 740, o SiS 745 voltou a utilizar um design single-chip, mas sem o uso de vídeo onboard. Na verdade, os dois chipsets são descendentes de linhagens separadas: o 745 é uma evolução do 735, enquanto o 740 é uma evolução do 730S. Ele utilizava o chip SiS963 como ponte sul (integrado ao chip principal), que mantinha os recursos do SiS962, acrescentando o suporte a firewire. Ele mantinha também o suporte a AGP 4x, disponível nos antecessores. Embora o número de identificação seja mais baixo, o SiS 741 foi lançado alguns meses depois do 745. Ele era uma atualização direta do 740 (baseado em dois chips), incluindo agora um chip SiS Mirage como vídeo onboard, uma solução mais rápida que o antigo SiS 300, embora padecesse dos mesmos problemas de estabilidade relacionados aos drivers. Ele oferecia suporte a toda a linha de processadores soquete A, incluindo os processadores que utilizavam bus de 333 e 400 MHz, além de manter o suporte a módulos DDR-400 e a 3 GB de memória RAM. O barramento AGP foi atualizado, com suporte ao padrão 8x, e o chipset passou a utilizar o chip SiS964L como ponte sul, que incluía suporte a ATA-133, 8 portas USB 2.0, além de som e rede onboard, e suporte a modem AMR. Existia ainda a opção de utilizar o chip SiS964, que incluía duas interfaces SATA e suporte a RAID. 586
  • 587. O 741 recebeu também uma versão de baixo custo, o SiS 741GX, que era destinado a PCs baratos, baseados no Sempron. A limitação em relação ao 741 era que ele suportava apenas os processadores com bus de 333 MHz e módulos DDR-333. Na verdade, o 741GX foi utilizado para vender os chips da série 741 que (devido a imperfeições surgidas durante a fabricação) não eram capazes de trabalhar estavelmente a 400 MHz, uma manobra similar à utilizada pela Intel em diversos dos processadores e chipsets. Chipsets da nVidia A nVidia começou sua carreira de fabricante de chipsets produzindo chipsets para o Athlon soquete A. Só a partir da série nForce 4 é que passaram a produzir também chipsets para processadores Intel. O principal motivo é que no caso da Intel é necessário obter a licença do barramento e pagar royalties sobre cada chipset vendido, enquanto que a AMD costumava ser muito mais liberal, fornecendo as especificações para os fabricantes, de forma a incentivar a produção de chipsets para o Athlon e, assim, fortalecer a plataforma. O nForce nasceu como um chipset para a versão inicial do XBox. Depois de lançado o console, a nVidia aproveitou a expertise acumulada para desenvolver a versão inicial do nForce, destinada agora a micros PC. Ele foi o primeiro chipset para micros PC a utilizar o sistema dual-channel (chamado pela nVidia de "twin-bank") em conjunto com memórias DDR. A idéia central era utilizar o acesso simultâneo a dois módulos de memória DDR-266 para criar um barramento de 4.2 GB/s, capaz de alimentar simultaneamente o processador e um chipset de vídeo GeForce2 integrado ao chipset. Ou seja, além de oferecer um desempenho de primeira linha, o nForce traria uma placa de vídeo "de verdade" integrada à ponte norte do chipset, que poderia ser substituída por uma placa offboard mais parruda, caso desejado. A ponte norte do nForce é chamada de IGP (Integrated Graphics Processor) e a ponte sul de MCP (Media and Communications Processor). Ambos são interligados por um barramento Hyper Transport de 800 MB/s. Entre as otimizações incluídas no MCP estava o DASP (Dynamic Adaptive Speculative Pre-Processor), um sistema de prefetch que faz com que o controlador de memória adiante o carregamento de dados que possuem grande probabilidade de serem requisitados pelo processador em seguida. O ganho não é tão grande quanto pode parecer à primeira vista, mas neste caso qualquer melhora era bem-vinda. O DASP é similar ao "FastStream64", que seria utilizado pela VIA a partir do KT400A, porém desenvolvido antes. Integrada ao IGP estava uma GeForce2 MX, operando a 175 MHz e compartilhando o barramento de 4.2 GB/s oferecido pelos dois módulos de memória com o processador (o volume de memória compartilhada era ajustado através do setup, como de praxe). Embora o nForce oferecesse um slot AGP 4x para a conexão de uma placa de vídeo externa, a comunicação entre o vídeo onboard e o restante do chipset era feita através de um barramento AGP 6x interno, de forma a agilizar o acesso à memória. Este AGP "6x" não foi um 587
  • 588. padrão estabelecido, mas sim um tweak desenvolvido pela nVidia para uso no nForce. Não era obrigatório utilizar dois módulos de memória, assim como não é obrigatório na grande maioria dos demais chipsets com suporte a dual-channel, mas ao utilizar um único módulo o barramento com a memória era reduzido à metade (assim como nos chipsets dual-channel atuais), fazendo com que o chipset perdesse boa parte do seu sex-appeal. A ponte sul, representada pelo chip MCP, oferecia duas interfaces ATA-100, 6 portas USB 1.1, além de som, rede e também um modem onboard (que precisa ser complementado por uma placa externa, com os circuitos analógicos), que podia ou não ser aproveitado pelo fabricante da placa-mãe. O chipset de som onboard era o mesmo utilizado no XBox, capaz de reproduzir 256 vozes de áudio em 2D e até 64 vozes em 3D (com o EAX) e o de rede oferecia o StreanThru, um conjunto de otimizações que melhorava os tempos de resposta da rede, de forma a ajudar nos games multiplayer. Na foto a seguir temos uma Leadtek K7n420DA, um exemplo de placa soquete A, baseada no nForce original. Você pode notar que a placa possui 3 slots de memória, um número ímpar. Ao popular os três, o primeiro módulo era utilizado pelo primeiro controlador de memória, enquanto os outros dois seriam usados pelo segundo. A memória compartilhada com a placa de vídeo era distribuída apenas entre o primeiro e segundo módulo, de forma que o número ímpar acabava não fazendo muita diferença. Era permitido inclusive misturar módulos de capacidades diferentes. O slot PCI invertido à esquerda é um slot ACR, que era utilizado pela placa riser do modem onboard. O uso do ACR acabou não pegando, de forma que o slot foi removido a partir da segunda geração de placas. Leadtek K7n420DA, baseada no nForce original 588
  • 589. Embora não tenha sido o "salvador da pátria" que muitos esperavam, o nForce se revelou realmente mais rápido que o VIA KT266 e o SiS 735, que eram seus concorrentes diretos (em 2001). Graças ao uso do dual-channel, o vídeo onboard oferecia um desempenho similar ao de uma placa offboard low-end, bastante superior às outras opções de vídeo onboard. O maior problema era que o chipset (e conseqüentemente as placas baseadas nele) era caro, o que limitou as vendas. Existiram três versões do nForce. O nForce 420 era a versão "completa" com suporte ao twin-bank e vídeo integrado. O nForce 415 era uma versão sem vídeo integrado, um pouco mais barata e destinada a quem pretendia utilizar uma placa offboard, enquanto o nForce 220 era a versão mais lenta, com vídeo integrado, mas sem suporte ao twin-bank. Em julho de 2002 a nVidia lançou o nForce2, que acabou ganhando nada menos do que 6 versões diferentes, mantendo-se em serviço ao longo de mais de 2 anos. O nForce 3 seria lançado apenas em 2004, já como um chipset para o Athlon 64. As duas versões originais eram chamadas de nForce2 IGP e nForce2 SPP (a versão mais simples). Ambos compartilhavam o mesmo projeto básico, com duas exceções importantes. O nForce2 SPP não vinha com o vídeo integrado e não suportava processadores com bus de 333 MHz, enquanto o IGP vinha com o conjunto completo. O chipset de vídeo usado no nForce2 IGP foi atualizado para uma GeForce4 MX, operando agora a 250 MHz. Foi introduzido também o suporte a memórias DDR-400, o que aumentou o barramento teórico ao usar dois módulos para 6.3 GB/s, acompanhando a evolução do chipset de vídeo e dos próprios processadores. O barramento AGP 4x/6x da versão anterior foi atualizado para o padrão 8x, usado tanto pelo vídeo integrado quanto por uma placa offboard. Acompanhado de dois módulos DDR-400, o vídeo onboard do nForce2 era capaz de superar uma GeForce4 MX 420, um feito inédito para uma placa onboard. Com relação ao chip MCP, usado como ponte sul, existiram duas versões. O MCP-T é a versão mais parruda, com interfaces ATA-133, 6 portas USB 2.0, duas placas de rede 10/100 (destinadas a quem pretendia compartilhar a conexão ou usar o PC como roteador), firewire e o nVidia APU, o mesmo chipset de áudio usado no nForce original. A versão mais simples era chamada simplesmente de "MCP" e contava com um chipset de áudio mais simples, padrão AC97. Ela vinha também sem a segunda interface de rede e sem suporte a firewire. Por ser mais barata, esta foi a versão usada na maior parte das placas. Além do suporte a DDR-400, o nForce2 trouxe uma versão aprimorada do DASP, o sistema de prefetch incluído no chipset, que resultou em mais um pequeno ganho de desempenho. Um efeito colateral curioso é que com o aumento da taxa de transferência oferecido pelos módulos DDR-400, deixou de existir um ganho considerável em utilizar dois módulos, a menos que você 589
  • 590. utilizasse o vídeo onboard, que se encarregava de consumir o excesso de banda, ou seja, ao utilizar uma placa-mãe baseada no nForce2 SPP (a versão sem vídeo onboard) fazia pouca diferença usar dois módulos de memória ou apenas um. Em seguida foram lançados o nForce2 400 e o nForce2 Ultra 400, que trouxeram suporte a processadores com bus de 400 MHz. A grande diferença entre os dois é que o nForce2 400 vinha com o suporte a dual-channel desabilitado, enquanto o Ultra 400 era a versão completa. Finalizando a série, foram lançados o nForce2 Ultra 400R e o nForce2 Ultra 400 Gb. Estas duas versões são, na verdade, a combinação da ponte norte do Ultra 400 com versões aprimoradas do chip MCP (ponte sul). O Ultra 400R vinha com suporte a SATA e RAID (mantendo os recursos anteriores), enquanto o Ultra 400 Gb adicionava também uma interface de rede Gigabit Ethernet. Por estranho que possa parecer, todas estas 4 versões do nForce2 400 são baseadas no SPP, ou seja, a versão sem vídeo onboard do nForce. Embora o desempenho do vídeo onboard do nForce2 IGP chamasse a atenção em relação a outros chipsets de vídeo onboard, o desempenho ainda era considerado fraco pelos entusiastas, que preferiam investir em uma placa de vídeo offboard. O nForce2 IGP era um chipset relativamente caro, de forma que os chipsets com vídeo onboard da SiS e VIA continuaram dominando o ramo de placas de baixo custo, enquanto nas placas mais caras o nForce2 SPP, seguido pelas diferentes versões do Ultra 400, competiam com o VIA KT400A e sucessores. No final das contas, o nForce2 IGP acabou não encontrando o seu espaço e a nVidia passou a concentrar os esforços em desenvolver chipsets de alto desempenho, sem vídeo onboard, aprimorando os demais componentes do chipset e adicionando diferenciais, como o suporte a SLI. Foi nessas condições que sugiram os chips nForce 3 e em seguida os nForce 4, nForce 500 e nForce 600, que passaram a ser produzidos também em versão para processadores Intel. Chipsets para placas soquete 775 A partir de 2004, a Intel migrou rapidamente todos os processadores de alto desempenho para o soquete 775, transformando as placas soquete 478 em uma plataforma de baixo custo, destinada sobretudo aos Celerons. O principal problema com a plataforma 478 é que ela é um beco sem saída em termos de upgrade, já que não é possível atualizar para um Core 2 Duo. Apesar disso, as placas soquete 478 se tornaram tão baratas que continuaram representando a maior parte das vendas no Brasil ao longo de 2005 e 2006. Além das placas, o Celeron D (baseado no core Prescott) teve seu preço drasticamente reduzido após o lançamento do Core 2 Duo, tornando-se mais barato que os Semprons equivalentes. 590
  • 591. As primeiras placas soquete 775 chegaram ao mercado na primeira metade de 2004, o que representa uma demora sem precedentes com relação à popularização de uma nova plataforma para processadores Intel. O principal motivo é que os uso do soquete 775 realmente encarece as placas e apresenta vantagens reais apenas no caso de processadores que operam com bus de 1066 MHz ou mais, o que não é o caso dos Celerons. O principal motivo da Intel ter permitido que a plataforma soquete 478 tivesse uma sobrevida tão grande era conservar uma plataforma de baixo custo, que pudesse conter o avanço dos processadores AMD. De qualquer forma, com a popularização dos processadores baseados na arquitetura Core, as placas soquete 478 chegaram ao fim da linha, abrindo espaço para suas sucessoras, baseadas nos chipsets Intel da série 9xx, juntamente com os concorrentes da nVidia, SiS e VIA. Além de introduzirem o suporte aos processadores que utilizam o soquete 775, os chipsets da série Intel 9xx trouxeram outra mudança radical, que foi a morte do barramento AGP, que deu espaço ao barramento PCI Express. Embora nem todos os chipsets da série 9xx ofereçam slots PCIe 16x para a conexão de placas 3D offboard, nenhum deles oferece suporte a slots AGP. Uma observação importante é que nem todas as placas soquete 775 são compatíveis com os processadores Core 2 Duo. Toda a leva inicial de placas, produzidas em 2004 e 2005 e também muitas das placas produzidas no início de 2006 não são diretamente compatíveis com os processadores baseados no core Conroe. Parte dessas placas utilizam componentes e um regulador de tensão compatíveis e precisam apenas de um upgrade de BIOS para suportar os processadores da nova plataforma. Mas, muitas utilizam reguladores de tensão incompatíveis e por isso não podem ser atualizadas. Para elas, o Pentium D é o limite. Isso acontece porque o Core 2 Duo exige uma placa com um regulador de tensão compatível com a especificação VRM 11, que foi finalizada apenas em 2006. Mesmo que a placa utilize um chipset compatível e um BIOS atualizado, a questão do regulador de tensão torna-se um obstáculo intransponível. A lista de placas incompatíveis inclui muitas placas baseadas nos chipsets i915, i925, i945, i955 e até mesmo nos chipsets i975X, nForce 4 SLI, SiS 661FX e outros, ou seja, inclui até mesmo placas baseadas em chipsets mais caros. 591
  • 592. Chipsets da Intel Voltando aos chipsets, a leva inicial da série 9xx da Intel é composta pelos chipsets da série 915 (a linha de baixo custo, usada na maior parte das placas) e pela linha 925X, destinada às placas de alto desempenho. Todos compartilham as mesmas opções de ponte sul, representadas pelos chips ICH6 e ICH6R. Uma das novidades em relação aos ICH anteriores é uma versão atualizada do chipset de áudio integrado, que ganhou o suporte a streams de 24 bits e até 192kHz de definição. Ambos oferecem 4 portas RAID e 1 porta IDE, mas o ICH6R inclui suporte a RAID. A série 915 é a mais segmentada, composta por nada menos de 5 chipsets (915P, 915PL, 915G, 915GV e 915GL). O 915P é um chipset dual-channel, que oferece suporte a 4 GB de memória RAM, bus de 800 MHz, PCI Express 16x e vem sem vídeo onboard. O 915PL é uma versão de baixo custo, que vem com um dos controladores de memória desativados, de forma que, além de não oferecer suporte a dual-channel, passa a suportar apenas 2 GB de memória. Outra diferença é que o 915P oferece suporte tanto a memórias DDR-400 quanto a memórias DDR2-533 (a escolha do tipo de memória a suportar recai sobre o fabricante da placa), enquanto o 915PL oferece suporte apenas a memórias DDR-400. O uso de memórias DDR2-533 não é exatamente uma vantagem em relação às DDR-400, pois, apesar de realizarem 4 transferências por ciclo, os módulos DDR2-533 operam a apenas 133 MHz, enquanto os DDR-400 operam a 200 MHz, realizando duas transferências por ciclo. Isso faz com que, embora levem uma pequena vantagem em transferências seqüenciais, os módulos DDR2-533 trabalham com tempos de latência mais altos, fazendo com que, na prática, acabem sendo mais lentos em muitas situações. Módulos de memória DDR2 oferecem ganhos substanciais de desempenho em relação aos DDR quando são comparados módulos da mesma freqüência. Um módulo DDR2-800 (200 MHz) é mais rápido que um DDR-400 (também de 200 MHz) em qualquer tarefa, já que os tempos de latência de ambos (se medidos em milissegundos) são similares e o módulo DDR2 leva vantagem por ser mais rápido em transferências sequenciais. Mas, se compararmos módulos de freqüências diferentes, a história muda. Um exemplo de placa baseada no 915P é a ECS 915P-A, que temos na foto a seguir. Ela é uma placa curiosa, pois ao mesmo tempo em que tenta se posicionar como uma placa de alto desempenho, oferecendo um slot PCI Express 16x e dispensando o vídeo onboard, ela oferece camadas de compatibilidade normalmente encontradas apenas em placas de baixo custo. A primeira delas é o fato de oferecer a opção de utilizar módulos DDR-400 ou DDR2-533, oferecendo dois slots para cada tipo de memória. O problema é que você não pode misturar módulos dos dois tipos, de forma que acaba com apenas 2 slots utilizáveis. Como o 915P suporta módulos de até 1 GB, você 592
  • 593. acaba limitado a um máximo de 2 GB, seja qual for o tipo de memória escolhido. A segunda é a presença do slot AGP-Express, uma gambiarra feita para permitir o uso de uma placa AGP, onde a alimentação elétrica de dois slots PCI é combinada para criar um slot AGP. Como este slot "AGP" é ligado ao barramento PCI, a performance de qualquer placa AGP ligada a ele é brutalmente reduzida, já que fica limitada ao barramento compartilhado de 133 MB/s oferecido pelo PCI. O chipset de rede Intel, que faz parte do pacote do chipset 915P, foi substituído por um chip Realtek RTL8110S, ligado ao barramento PCI Express. Como em outras placas atuais, a ECS 915P-A possui 4 portas SATA, mas apenas uma interface IDE. A idéia é que você utilize HDs SATA, reservando a porta IDE para a conexão do drive de CD/DVD. Concluindo, a placa possui também dois slots PCI Express 1x e dois slots PCI: ECS 915P-A, baseada no chipset 915P Em seguida temos os chipsets 915G, 915GV e 915GL. Os três possuem suporte a dual-channel e incluem um chipset de vídeo GMA 900 (Extreme Graphics 3) integrado. O 915G é a versão "completa", que inclui os links PCI Express necessários para criar o slot 16x e oferece suporte a memórias DDR2. O 915GV carece do slot PCI Express 16x (ele é destinado a placas de baixo custo, onde o vídeo integrado não seria substituído por uma placa offboard), enquanto o 915GL abandona também a compatibilidade com memórias DDR2. 593
  • 594. Existiu ainda o 910GL, um chipset de baixo custo (pouco usado), destinado a placas para o Celeron D. Ele utiliza um chipset de vídeo GMA 900, não oferece o slot PCI Express 16x e ainda por cima suporta apenas o bus de 533 MHz utilizado pelo Celeron D, abandonando a compatibilidade com os processadores Pentium D e Pentium 4 com core Prescott. Devido a este conjunto de desvantagens ele acabou sendo virtualmente ignorado pelos fabricantes de placas, que preferiam utilizar os chipsets da SiS e VIA nas placas de baixo custo. A família 925X é composta por apenas dois chipsets, o 925X e o 925XE, ambos lançados em 2004. Eles são chipsets mais caros, destinados a substituir o 875P. Diferentemente dos chipsets da série 915, que suportavam tanto memórias DDR quanto DDR2, o 925X e o 925XE suportam apenas memórias DDR2, o que tornou a adoção de ambos um pouco mais lenta. Ambos oferecem slots PCI Express 16X e não possuem vídeo onboard. A diferença é que o 925X oferece suporte apenas a processadores com bus de 800 MHz, enquanto o 925XE é uma versão atualizada, que oferece suporte a bus de 1066 MHz. A seguir temos o diagrama de blocos do 925X. O chip MCH inclui 16 linhas PCI Express, usadas pelo slot PCIe 16x e os dois controladores DDR2, responsáveis pelo suporte a dual-channel. Interligando a ponte norte e ponte sul, temos um barramento DMI, que oferece uma banda de 2 GB/s. Ele é necessário, pois além de incluir as portas Serial- ATA, barramento PCI, portas USB e outros dispositivos integrados, o chip ICH disponibiliza 4 linhas PCI Express adicionais, que são utilizadas pelos slots PCI Express 1x. Opcionalmente, uma das linhas pode ser utilizada para conectar um chipset de rede gigabit externo, como no caso da ECS 915P-A: 594
  • 595. Diagrama de blocos do i925X Os chipsets i915 e i925X possuem uma curiosa "proteção contra overclock" adicionada intencionalmente pela Intel. Ao tentar aumentar a freqüência de operação da placa em mais de 10% o mecanismo entra em ação e a placa simplesmente reinicia sem aviso. A idéia original seria convencer o usuário de que ele tentou realizar um overclock excessivo e assim convencê-lo a se conformar em ficar dentro da margem de 10%. Este foi apenas mais um exemplo de "castração voluntária" de produtos por parte da Intel. Apesar disso, a Asus e Abit, seguidas pelos demais fabricantes, rapidamente encontraram formas de burlar o sistema de proteção, utilizando uma série de truques para oferecer placas soquete 775 capazes de trabalhar de forma estável a freqüências bem acima do especificado, permitindo ajustar de forma independente a freqüência de barramentos sensíveis (como o PCI Express). Atualmente, praticamente todas as placas do mercado incorporam estes mecanismos, de forma que a trava incluída nos chipsets acabou se tornando apenas uma história curiosa. Em 2005 foi lançada a família 945, composta pelos chipsets 945G, 945P e 945PL, que incluem suporte aos processadores Pentium D dual core lançados na mesma época. Assim como os chipsets da série 925, os três oferecem suporte exclusivo a memórias DDR2, com direito a dual-channel e suporte a até 4 GB de memória e slots PCI Express 16x. O 945G incorpora um chipset de vídeo onboard, o GMA 950 (versão levemente atualizada do GMA 900 usado na série 915) enquanto tanto o 945P quanto o 945PL são destinados a placas sem vídeo onboard. Assim como outros chipsets cujos nomes terminam com a letra "L", o 945PL é uma versão de 595
  • 596. baixo custo, que oferece suporte a apenas 2 módulos de memória (embora conserve o suporte a dual-channel), até um máximo de 2 GB. Os três chipsets são compatíveis com o ICH7, que adiciona suporte a portas SATA 300 e aumenta o número de linhas PCI Express de 4 para 6. Existe ainda a opção de utilizar o chip ICH7R, que inclui suporte a RAID. Pouco depois, chegaram ao mercado os chipsets 955X e 975X. Ambos oferecem suporte a bus de 1066 MHz e a processadores dual-core. O suporte a dual-channel e a memórias DDR2 foi mantido e o máximo de memória suportado foi ampliado para 8 GB (4 módulos de até 2 GB cada). Um recurso interessante oferecido por eles (e pelos demais chipsets Intel dual-channel daí em diante) é o Intel FlexMemory, que permite o uso do dual-channel mesmo ao utilizar dois módulos de capacidades diferentes. A principal diferença entre os dois reside na configuração das linhas PCI Express disponíveis no chip MCH. O 955X suporta um único slot PCI Express 16x, enquanto o 975X oferece a opção de utilizar dois slots PCI Express 16x (ao utilizar ambos simultaneamente, cada um fica com 8 linhas de dados), o que permite o desenvolvimento de placas-mãe com suporte a duas placas de vídeo ATI em modo CrossFire. Inicialmente, era possível utilizar também placas nVidia em modo SLI, mas esta possibilidade foi logo removida pela própria nVidia, que incluiu proteções nos drivers para que o SLI funcionasse apenas em placas-mãe baseadas em seus chipsets. Com a fusão da ATI e AMD, criou-se uma situação estranha, onde a Intel dá suporte ao CrossFire, que seria o padrão do "concorrente", enquanto a nVidia ficou isolada, permitindo que o SLI seja utilizado apenas em conjunto com seus próprios chipsets. Com a aproximação entre a Intel e a nVidia, é possível que esta situação mude na próxima geração de chipsets, embora por enquanto isso seja apenas especulação. Em 2006 foram lançados os chipsets G965, P965 e Q965, destinados aos processadores Core 2 Duo. Os três chipsets oferecem suporte a bus de 1066 MHz e suportam até 8 GB de memória DDR2-800. A principal diferença entre os três diz respeito ao chipset de vídeo usado. O G965 é a versão "completa", que inclui um chipset de vídeo GMA X3000, um projeto completamente remodelado, que oferece suporte a shaders (com processamento via hardware), com unidades programáveis e suporte ao DirectX 10. O Q965 inclui o GMA 3000 (sem o "X"), uma versão de baixo custo do X3000, que utiliza uma arquitetura mais simples (similar à do GMA 950, sem as unidades programáveis), enquanto o P965 é a versão sem vídeo onboard. Em junho de 2007 a Intel lançou o chipset P35 (Bearlake), representante da nova geração de chipsets para placas soquete 755, que inclui suporte a memórias DDR3. Assim como no i915P, ele mantém suporte ao padrão anterior, de forma que os fabricantes podem escolher entre criar placas com suporte a memórias DDR2, DDR3, ou mesmo placas híbridas, que suportem ambos os padrões. Entretanto, o suporte a memórias DDR regulares foi 596
  • 597. removido, já que não faria sentido arcar com os custos de oferecer suporte aos 3 padrões simultaneamente. O P35 é o primeiro chipset a oferecer suporte oficial ao bus de 1333 MHz. Ele passa a utilizar o chip ICH9 como ponte sul e inclui também um controlador de memória sensivelmente aprimorado, que oferece uma melhora de 6 a 20% no desempenho de acesso à memória, mesmo ao utilizar módulos de memória DDR2 convencionais. O chip ICH9 oferece 6 portas SATA 300 (com suporte a NCQ), 12 portas USB, áudio HDA e suporte ao Turbo Memory (tecnologia Robson), que permite que o fabricante inclua uma pequena quantidade de memória flash na placa-mãe para ser usada como cache adicional para o HD. Existe ainda a possibilidade de usar o ICH9R (mais caro), que oferece suporte a RAID 0, 1, 5 e 10. Intel P35 Uma observação importante é que a partir do P35 a Intel deixou de oferecer suporte oficial aos processadores baseados na arquitetura NetBurst, ou seja, a todos os Pentium 4, Pentium D e Celeron D, de forma a pressionar os fabricantes a realizarem a transição para os processadores baseados na plataforma Core o mais rápido possível. A incompatibilidade é causada por mudanças nas especificações do regulador de tensão e não por mudanças no barramento do processador, de forma que é possível que alguns fabricantes decidam desenvolver placas de baixo custo baseadas nos chipsets Intel 3x que ofereçam suporte aos processadores soquete 775 antigos, embora isso seja improvável, já que os fabricantes geralmente preferem seguir os padrões especificados pela Intel, para evitar potenciais problemas de compatibilidade. Continuando, o P35 inclui 22 linhas PCI Express, o que ainda não permite o uso de dois slots PCI Express 16x simultaneamente. Como em chipsets anteriores, os fabricantes podem criar placas com dois slots PCIe 16x para o uso de duas placas ATI em modo CrossFire (ainda sem suporte a placas nVidia em modo SLI), mas ao usar duas placas, ambos passam a operar a 8x, ou então o primeiro continua operando a 16x, enquanto o segundo opera a 8x ou 4x. 597
  • 598. O uso de dois slots PCIe 16X "reais" torna-se possível a partir do Intel X38, um chipset de alto desempenho, sucessor direto do 975X. Ele é o primeiro chipset a oferecer suporte a PCI Express 2.0, onde a taxa de transferência é dobrada, atingindo um total de 5 gigabits em cada direção, por linha, além de incluir suporte oficial a módulos DDR3-1333 (o P35 oferece suporte oficial apenas aos módulos DDR3-1066). Durante a fase de desenvolvimento do X38, a Intel demonstrou o uso de placas de referência com placas nVidia em SLI, utilizando drivers modificados, desenvolvidos sem a participação da nVidia. Isso demonstra que a Intel pretende oferecer o suporte a SLI em algum ponto, mesmo sem o aval da concorrente. Mas, só o tempo poderá dizer se o suporte a SLI no X38 realmente se tornará realidade, ou se foi apenas um blefe. Temos ainda os chipsets G33 e G35, que são as versões de baixo custo dentro da família, sucessores dos chipsets 945G e G965. Eles também incluem suporte a bus de 1333 MHz e a módulos DDR3, mas não oferecem suporte a PCI Express 2.0, que é, por enquanto, uma exclusividade do X38. A principal diferença entre eles e o P35 é a presença do chipset de vídeo integrado. O G33 inclui o chipset Intel GMA3100, enquanto o G53 inclui o GMA3500, uma versão bastante aperfeiçoada, que oferece suporte a DirectX 10. Um exemplo de placa baseada na nova linha de chipsets é a Asus P5K3 Deluxe, lançada em junho de 2007: Asus P5K3 Deluxe, baseada no Intel P35 Esta é uma placa soquete 775, baseada no P35, com suporte a toda a linha Core 2, incluindo os Core 2 Quad e Core 2 Extreme, além dos processadores Pentium 4, Pentium D e Celeron soquete 775. Ela oferece suporte apenas a módulos DDR3, com suporte a até 4 módulos de 2 GB em dual-channel. 598
  • 599. Apesar de ela incluir dois slots PCIe 16x, apenas o primeiro (em azul) é um slot PCIe 16x real. Embora seja eletricamente compatível com as placas 16x, o segundo slot inclui apenas 4 linhas, o que prejudica levemente o desempenho ao utilizar duas placas. A placa inclui também 2 slots PCIe 1x e três slots PCI. O slot usado para a conexão da placa wireless é também ligado a uma linha PCI Express, mas o formato e a posição são diferentes, para evitar que a placa wireless seja usada em conjunto com placas de outros fabricantes. Embora o P35 não inclua interfaces IDE, a P5K3 inclui uma porta ATA-133, ligada a um controlador externo da JMicron. Este mesmo controlador inclui também duas interfaces eSATA disponíveis no painel traseiro (bem no centro, abaixo da porta firewire e entre as portas USB). Elas são complementadas pelas 6 portas SATA 300 (com suporte a RAID 0, 1, 5 e 10) disponibilizadas pelo chip ICH9R, usado como ponte sul. Esta é uma placa dual gigabit, que inclui duas placas de rede. A configuração é interessante, pois as duas interfaces são providas por chipset separados (um Marvell 88E8056 e um Realtek RTL8187), onde o chip Marvell (responsável pela primeira interface) é ligado a uma linha PCI Express, enquanto o chip Realtek (responsável pela segunda) é ligado ao barramento PCI. Ao contrário do que pode parecer, o chipset P35 não gera tanto calor assim quando operando à freqüência normal, tanto que você encontra outras placas baseadas nele com exaustores muito mais modestos. O principal objetivo dos hot-pipes e dos dissipadores de cobre é permitir que a placa trabalhe estavelmente a freqüências muito mais altas que as especificadas, atraindo a atenção do público interessado em overclocks mais extremos. Devido à preocupação com o baixo consumo elétrico, os processadores Core 2 Duo suportam overclocks surpreendentes, de forma que mesmo placas de baixo custo incluem um conjunto relativamente completo de opções. Na foto a seguir temos o setup de uma Gigabyte GA-P35-DS3R, configurada para trabalhar com FSB de 505 MHz (2020 MHz de freqüência efetiva, já que temos 4 transferências por ciclo). Apesar de ser uma placa baseada no P35, ela utiliza memórias DDR2, por isso o multiplicador da memória (System Memory Multiplier) está em 2.00, o que resulta em uma freqüência de 1010 MHz: 599
  • 600. Como você pode notar, tanto a tensão do processador (CPU Voltage Control) quanto a tensão da memória (DDR2 OverVoltage Control) foram ajustados com valores muito mais altos que o normal. O processador está trabalhando com 1.425v, ao invés de 1.312v, e a memória está trabalhando a 2.4v (com o acréscimo dos 0.6v), ao invés de 1.8v, que seria o valor normal. Com esta configuração, foi possível obter nada menos do que 3.535 GHz usando um Core 2 Extreme X6800: Utilizando um processador mais barato, como o Core 2 Duo E6300, que opera a 1.86 GHz, com bus de 266 MHz (1.066 GHz levando em conta as 4 transferências por ciclo) e multiplicador travado em 7x, seria possível obter facilmente 2.8 GHz, ajustando o FSB para 400 MHz e utilizando memórias DDR2-800 (mantendo o multiplicador da memória em 2.00). 600
  • 601. Chipsets da nVidia Em seguida temos os chipsets dos demais fabricantes. O destaque fica por conta dos chipsets da nVidia. A notícia de que a nVidia passaria a fabricar chipsets para processadores Intel não foi exatamente bem recebida pela própria, enquanto que a tentativa da Intel de licenciar o padrão SLI para uso em seus chipsets foi negada pela nVidia. Apesar disso, depois da fusão entre a AMD e a ATI, a nVidia tem se aproximado cada vez mais da Intel, em uma relação de amor e ódio. Inicialmente, a nVidia era apenas um fabricante de placas 3D. Com o lançamento do nForce, passaram a fabricar também chipsets, mas inicialmente apenas para processadores AMD. A partir do nForce 4, todas as versões do nForce passaram a ser produzidas em duas versões, uma para processadores Intel e outra para processadores AMD. As duas versões são sempre diferentes, devido à mudança no barramento utilizado e à necessidade de incluir o controlador de memória na versão para processadores Intel. Nos processadores AMD de 64 bits, o controlador de memória é incluído diretamente no processador, o que simplifica muito o design do chipset. O principal diferencial dos chipsets da nVidia em relação aos Intel e dos demais fabricantes é o suporte a SLI, que, pelo menos até 2007, é um monopólio da nVidia. Os chipsets Intel suportam apenas o CrossFire, enquanto os VIA e SiS não suportam nenhum dos dois padrões. Tudo começou com o nForce4 SLI Intel Edition, lançado em maio de 2005. Ele era um chipset destinado ao público entusiasta, que incluía 4 portas SATA 300 (com suporte a RAID), suporte a memórias DDR2 em dual-channel, rede gigabit e suporte a bus de 1066 MHz, um conjunto de recursos bastante avançado para a época. Ao contrário da versão para processadores AMD, ele seguia a divisão clássica em ponte norte (chamada pela nVidia de SPP) e ponte sul (MCP), onde os dois chips eram interligados através de um link HyperTransport. O SPP incluía um total de 20 linhas PCI Express, o que permitia a criação de placas com dois slots x16 (com 8 linhas de dados cada), para a conexão das duas placas de vídeo em SLI e a criação de mais três slots PCIe 1x para a conexão de outros periféricos. Aqui temos o diagrama de blocos do chipset. Veja que, ao contrário da maioria dos chipsets, todas as linhas PCI Express são concentradas no SPP, incluindo as três linhas reservadas para os slots 1x: 601
  • 602. Diagrama de blocos do nForce4 SLI Intel Edition Diferente dos chipsets Intel, onde a interface de rede gigabit é fornecida na forma de um chip externo (o que faz com que muitos fabricantes optem por substituí-lo por um chip mais barato, como os da Realtek e Marvell), nos chipsets da nVidia a interface de rede é integrada ao MCP e ligada diretamente ao barramento HyperTransport. Como em outros chipsets da nVidia, ele incluía também o ActiveArmor, um aplicativo de firewall que trabalha em conjunto com o driver e um sistema de inspeção de pacotes incluído no próprio chipset de rede. Em teoria, ele é um pouco mais seguro que firewalls for Windows, que trabalham apenas na camada de software (Norton, ZoneAlarm e outros). Apesar disso, ele não é usado no Linux, pois o sistema já inclui um firewall próprio, o IPtables. O nForce4 foi posteriormente atualizado, dando origem ao nForce4 SLI X16, versão que incluía nada menos que 40 linhas PCI Express, permitindo a criação de dois slots PCI Express 16x "reais", ao invés de dois slots com 8 linhas cada, como na versão anterior. Mas, apesar de interessante do ponto de vista técnico, o uso de 16 linhas para cada placa em vez de 8 não resultava em ganhos significativos de desempenho, já que (ao contrário de muitas placas atuais) as placas 3D da época não chegavam a saturar o barramento, mesmo a 8x. Apesar de ser superior aos chipsets i915 e i925, que eram seus concorrentes diretos, o nForce4 acabou sendo usado em um número relativamente pequeno de placas, pois era um chipset caro e novo no mercado. No início de 2006 a nVidia atualizou a linha, lançando o 570 SLI. Pouco depois, em julho de 2006, lançou o 590 SLI, que acabou sendo vendido em quantidades limitadas. 602
  • 603. O 570 SLI é a versão "mainstream", que, assim como o nForce4 SLI, inclui 20 linhas PCI Express, que permitem o uso de um único slot 16x e mais 4 slots 1x, ou 2 slots 8x para instalação de duas placas em SLI e mais 3 slots 1x. No caso das placas com dois slots, o chaveamento passou a ser feito automaticamente, via software, de forma que ao instalar uma única placa 3D, o BIOS da placa- mãe reserva as 16 linhas para ela e, ao instalar duas, cada uma fica com 8 linhas. O 570 SLI mantém o suporte a memórias DDR2 em dual-channel, às 4 interfaces SATA 300, suporte a RAID e à interface Gigabit Ethernet. O 590 SLI, por sua vez, é uma versão sensivelmente aprimorada, que inclui nada menos que 48 linhas PCI Express. Ele permite a criação de placas com três slots para a conexão de placas de vídeo (dois deles com 16 linhas e o terceiro com 8 linhas), onde os dois primeiros permitem a conexão de duas placas em SLI e o terceiro permite a conexão de uma physics accelerator (uma placa ainda bastante incomum, que executa cálculos avançados relacionados à composição das cenas, permitindo melhorar o realismo dos games) ou de uma placa de vídeo terciária, para o uso de monitores adicionais (é possível usar até 6 monitores, 2 em cada placa!). Sobram ainda mais 8 linhas, que podem ser usadas por slots 1x ou 4x. Configuração com 3 placas de vídeo (duas em SLI) e seis monitores O 590 SLI inclui ainda 6 interfaces SATA 300 com suporte a RAID e duas placas de rede gigabit, completando o conjunto. Além de usar as duas interfaces de rede para compartilhar a conexão, existe ainda a possibilidade de combinar as duas interfaces, criando uma única interface lógica de 2 gigabits usando o DualNet, mais um software fornecido como parte do coquetel de drivers e utilitários. Neste caso, você usa dois cabos de rede e duas portas no switch, mas as duas placas se comportam como se fossem uma, compartilhando o mesmo endereço IP. No Linux você utilizaria o módulo "bonding" do Kernel para obter o mesmo efeito (neste caso usando placas de qualquer fabricante). Este truque de unir duas placas de rede é muito usado em servidores de arquivos, de forma a aumentar a banda de rede do servidor. Como o 590 SLI é um chipset muito caro, destinado a PCs de alto desempenho, o suporte às interfaces IDE não é mais uma prioridade, por isso 603
  • 604. uma das interfaces foi sacrificada, restando apenas uma, destinada à conexão do drive óptico. Toda a série nForce inclui um chipset de som onboard. O nForce4 SLI utiliza um chipset padrão AC97, enquanto o nForce5 e o nForce6 utilizam o Azalia, um chipset HDA de alta definição. Finalmente, temos a série nForce 600, lançada no final de 2006. Ela é composta pelos chipsets 650i Ultra, 650i SLI e 680i SLI. Todos os chipsets desta série suportam oficialmente bus de 1333 MHz e memórias DDR2-800, mas se diferenciam pela quantidade de linhas PCI Express, suporte a SLI, número de portas SATA e a presença de uma ou duas interfaces de rede. Note que os chipsets da série nForce são destinados ao público entusiasta e por isso suportam grandes overclocks. Nada impede que você faça overclock, aumentando a freqüência do FSB para 1333 mesmo em um nForce 590. Os próprios fabricantes de placas costumam se adiantar, incluindo suporte a novos padrões de memória que não são oficialmente suportados pelo chipset. Não é incomum ver placas com o nForce 590 que suportam memórias DDR2- 800 ou até mesmo DDR2-1066; basta que o fabricante disponibilize a configuração dos multiplicadores no Setup. O suporte oficial por parte do chipset é apenas uma garantia de estabilidade. Ajuste da freqüência da memória através do setup O 650i Ultra é a versão mais simples, que não inclui suporte a SLI. Ele inclui 18 linhas PCI Express, que permitem adicionar um slot 16x e mais dois slots 1x. Apesar de parecer pouco, esta é justamente a configuração mais comum entre os fabricantes de placas, que preferem incluir apenas dois slots PCIe 1x, reservando o restante do espaço disponível para slots PCI. O 650i Ultra inclui ainda as 4 portas SATA 300 com suporte a RAID e rede gigabit. 604
  • 605. Em seguida temos o 650i SLI, que é idêntico ao 650i Ultra, incluindo inclusive o mesmo número de linhas PCI Express. A única diferença entre os dois é que, como o nome sugere, o 650i SLI suporta o uso de dois slots e duas placas SLI em modo 8x. Para cortar custos, a nVidia optou por utilizar o chip MCP51 como ponte sul, uma versão mais antiga que o MCP utilizado no 590 SLI. Apesar de mais antigo, ele traz como vantagem a presença de duas interfaces IDE (junto com as 4 portas SATA), no lugar de apenas uma. Isso acaba tornando o 650i SLI uma opção mais interessante para quem pretende continuar utilizando HDs IDE de upgrades anteriores. Muitas das placas baseadas no 650i SLI incluem rotinas automatizadas no BIOS para dividir as linhas PCI Express entre os dois slots, de acordo com a presença ou não de uma segunda placa, mas muitas voltaram a utilizar o SLI Selector, um componente usado desde o nForce4 SLI, onde uma placa seletora presente entre os dois slots PCIe é usada para indicar se a placa deve operar em modo dual x8 (com duas placas em SLI) ou x16, com apenas uma placa 3D instalada: SLI Selector Algumas placas, como a ECS NF650iSLIT-A, não possuem a placa seletora nem as rotinas do BIOS. Elas simplesmente trabalham em modo dual x8 o tempo todo, o que prejudica o desempenho ao utilizar uma única placa. O 650i SLI é seguido pelo 680i SLI, que é a versão mais parruda, com suporte a SLI em modo 16x e mais um terceiro slot, operando em modo 8x (assim como no 590 SLI). Como um bonus, ele inclui 6 portas SATA e duas interfaces de rede. Esta é também a versão mais cara. Na época de lançamento, apenas o chipset custava (para os fabricantes de placas) nada menos que US$ 120, o que fez com que toda a safra inicial de placas custasse (nos EUA) acima de 300 dólares, ultrapassando facilmente a faixa dos 1000 reais aqui no Brasil. Para você ter uma idéia, a maioria dos chipsets da Intel custa, para os fabricantes, entre 40 e 60 dólares, enquanto os chipsets mais baratos da SiS chegam a custar menos de US$ 25. 605
  • 606. Esta é uma Asus P5N32-E SLI, um exemplo de placa baseada no 680i SLI. Veja que ela possui três slots PCIe 16x, sendo que o terceiro possui apenas 8 linhas. As placas PCI Express 1x e 4x são perfeitamente compatíveis com os slots 16x, de forma que ele pode ser usado para a conexão de placas PCIe em geral. A placa inclui apenas um slot PCIe 1x (o slot branco próximo do hot-pipe, que se parece com um slot PCIe 1x invertido é para a conexão do riser do áudio onboard). Asus P5N32-E SLI, baseada no nForce 680i SLI Assim como outras placas de alto desempenho atuais, ela utiliza um par de dissipadores e hot-pipes, que refrigeram tanto o chipset quanto os reguladores de tensão, utilizando o fluxo de ar gerado pelo cooler do processador. Muitos fabricantes estão passando a adotar o uso de exaustores, mas a idéia tem seus opositores, já que exaustores acumulam sujeira, passam a fazer barulho e eventualmente param de girar depois de alguns anos de uso, fazendo com que a placa passe a precisar de uma limpeza periódica. Chipsets da SiS Em seguida, temos os chipsets da SiS. Ela oferece os chipsets SiS 649, SiS 649FX, SiS 656, SiS 656FX e SiS 661FX, que são atualizações da linha anterior, destinada às placas soquete 478. O SiS 661FX é o carro chefe, usado em diversos modelos de placas de baixo custo. Ele vem com vídeo onboard SiS Mirage e suporta até 3 GB de RAM (DDR2). Ele ainda utiliza um slot AGP 8x, sem PCI Express, o que, ao invés de 606
  • 607. atrapalhar, acabou aumentando a sobrevida do chip, já que todos os outros fabricantes migraram rapidamente para o PCI Express, criando uma demanda considerável por placas de baixo custo com slots AGP. O 661FX é o mesmo chipset que vimos no tópico anterior, Ele foi apenas atualizado para suportar processadores soquete 775. Os chipsets SiS 649, SiS 649FX, SiS 656 e SiS 656FX são as versões sem vídeo onboard e com suporte a um slot PCI Express 16X. Os dois da série 649 suportam até 2 GB de RAM (single channel), enquanto os 656 suportam 4 GB, com dual channel. Os FX (649FX e 656FX) suportam bus de 1066 MHz, enquanto os outros dois suportam apenas 800 MHz. Os chipsets da linha (649FX, 656FX e 661FX) suportam bus de 1066 MHz, enquanto os demais suportam apenas 800 MHz. Além do suporte a PCI Express, estes 4 chipsets utilizam os chips SiS965 e SiS966 (o fabricante da placa escolhe qual usar) como ponte sul, enquanto o 661FX (que apesar da numeração é mais antigo que eles) utiliza o SiS964. Os dois novos chips incluem 4 interfaces SATA, além de suporte a RAID e interface Gigabit Ethernet (opcionais). Ao contrário dos chipsets intel, eles mantêm o suporte nativo a portas IDE, o que representa uma pequena economia de custos para os fabricantes de placas, que não precisam usar um controlador adicional. Mais recentemente, a SiS lançou o SiS 671FX, uma versão atualizada do 661FX, que inclui suporte a bus de 1066 MHz, duas interfaces SATA 300 (com suporte a RAID 0 e 1), uma atualização no vídeo integrado (passou a ser usado o chipset SiS Mirage 3) e um chipset de rede gigabit. Ele inclui também suporte a módulos DDR2 de 2 GB (o 661FX suportava módulos de 1 GB), até um máximo de 4 GB. O AGP foi também substituído por um total de 20 linhas PCI Express: 16 na ponte norte, que permitem a criação de um slot 16x e mais 4 na ponte sul, usadas para a conexão do chipset de rede e por até 3 slots 1x. Um exemplo de placa de baixo custo baseada no 671FX é a Asus P5S-MX SE. Por ser uma placa micro-ATX, ela inclui apenas 4 slots, sendo um slot PCIe 16x, 2 slots PCI e apenas 1 slot PCIe 1x. Como outras placas baseadas no chipset, ela inclui apenas dois encaixes para módulos de memória e suporta apenas módulos DDR2. O suporte a módulos de 2 GB incluído no chipset vem a calhar, pois ele permite que sejam usados dois módulos de 2 GB, totalizando 4 GB mesmo com apenas dois módulos. Além do kit tudo-onboard (vídeo, som, rede, etc.), ela inclui as duas portas SATA e uma porta IDE. Veja que a bendita porta para o drive de disquetes continua presente (ao lado do segundo slot PCI), sobrevivendo à passagem do tempo: 607
  • 608. Asus P5S-MX SE, baseada no SiS 671FX Chipsets da VIA Devido aos problemas legais com relação ao uso do barramento do Pentium 4, a VIA perdeu uma boa parte da participação que tinha dentro do mercado de placas para processadores Intel. Ela vem lentamente se recuperando agora que a questão legal está bem resolvida, embora ainda enfrente sérias dificuldades. Os primeiros chipsets da VIA para placas soquete 775 foram uma versão adaptada do VIA P4M800 e o VIA P4M800 Pro. Estes dois chipsets foram logo substituídos, pois não oferecem suporte a memórias DDR2 nem a PCI Express. Surgiram então os chipsets VIA PT890, VIA P4M890 e VIA P4M900, que representam a safra mais atual. A principal diferença entre eles e os antecessores é o suporte ao barramento PCI Express. Eles utilizam também memórias DDR2, até um máximo de 4 GB (com módulos de até 2 GB) e oferecem suporte aos processadores Core 2 Duo com bus de 1066 MHz. Tanto o P4M890 quanto o VIA P4M900 incluem vídeo onboard. A principal diferença entre eles é que o P4M890 inclui um chipset VIA UniChrome Pro, enquanto o P4M900 inclui um chipset VIA Chrome 9, uma versão sensivelmente aperfeiçoada. Como de praxe, o PT890 é a versão "stand- alone", destinada a placas sem vídeo onboard. Um dos problemas com estes três chipsets é que eles carecem de um controlador de memória dual-channel. Para piorar, eles suportam apenas memórias DDR2-400 e DDR2-533 (você pode perfeitamente usar um módulo DDR2-800 ou mais rápido, mas ele ficaria restrito às freqüências suportadas pelo chipset). O PT890 se destaca um pouco por oferecer suporte a memórias DDR2-667, mas ainda sem suporte aos padrões mais rápidos. 608
  • 609. O fraco controlador de memória penaliza o desempenho do micro duplamente; primeiro pelo fato de não suportar o uso de freqüências mais altas e segundo por não suportar o uso de dual-channel, o que faz com que as placas baseadas nos dois chipsets sejam perceptivelmente mais lentas do que as baseadas em chipsets nForce 5xx, suas principais concorrentes. Aqui temos o diagrama de blocos do PT890: Pelo diagrama, você pode notar que o chipset oferece suporte tanto a memórias DDR quanto DDR2, de forma que também existiram algumas placas baseadas nele com suporte a ambos os padrões. A ponte sul, representada pelo chip VIA VT8237A inclui duas portas ATA/133 e duas portas SATA 150, com suporte a RAID 0 e 1. É muito comum que os fabricantes incluam um controlador SATA externo, de forma a oferecerem duas portas SATA 300 adicionais. O chipset de rede 10/100 incluído no chipset é também freqüentemente substituído por um controlador gigabit externo. 609
  • 610. Na Asus P5VD2-X, por exemplo, é usado um controlador JMicron JMB363. Uma das portas é posicionada próxima ao painel traseiro e a segunda foi transformada em uma porta external SATA, presente no painel ATX: O controlador JMicron e a terceira porta SATA A porta external SATA presente no painel traseiro O maior problema com este design é que temos dois pares de portas RAID separadas, sem integração entre si. Ambas as controladoras oferecem suporte a RAID, mas apenas dentro de cada par, ou seja, você pode criar um array entre dois HDs instalados nas duas portas frontais, ou entre o HD instalado na terceira porta e a porta external SATA. Não é possível criar um array com mais de dois discos (a não ser via software, usando os utilitários incluídos no Linux ou Windows). A VIA lançou também um chipset de "transição" entre o AGP e o PCI Express, o VIA PT880 Ultra. Ele oferece como vantagens o uso de um controlador de memória com suporte a dual-channel e suporte simultâneo ao barramento PCI Express e ao AGP. Ele mantém também o suporte simultâneo a memórias DDR e DDR2, o que permitiu o desenvolvimento de placas "curinga", que 610
  • 611. ofereciam suporte simultâneo aos dois padrões de barramento de vídeo e de memória. Um exemplo de placa baseada nele é a Asus P5VDC-X. Além de oferecer simultaneamente um slot AGP 8x e o PCI Express x16, ela também oferecia suporte simultâneo a memórias DDR e DDR2 (dois slots para cada tipo): Asus P5VDC-X O maior problema com o PT880 Ultra é que ele era um chipset caro e por isso as placas baseadas nele são bastante raras. No lugar da P5VDC-X você normalmente vai encontrar a P5VDC-MX, que apesar do nome similar, é uma placa completamente diferente, baseada no chipset VIA P4M800 Pro. Chipsets para o Athlon 64 Um dos destaques da arquitetura de 64 bits da AMD é o uso de um controlador de memória integrado, que passou a fazer parte do próprio núcleo do processador. Apesar de aumentar a complexidade e o custo de produção dos processadores, o controlador de memória aumenta de forma perceptível o desempenho, reduzindo os tempos de acesso e contribuindo para melhorar a eficiência dos caches. Como o desempenho do controlador de memória é sempre o principal diferencial entre os chipsets dos diferentes fabricantes, os chipsets para o Athlon 64 acabam ficando muito próximos no quesito desempenho. Isso fez com que os fabricantes passassem a tentar diferenciar seus produtos com base nas interfaces, recursos gerais e preço, além de investirem no desenvolvimento de recursos exclusivos, como o SLI, no caso dos chipsets da nVidia, e o CrossFire, no caso dos ATI. 611
  • 612. Outra questão importante é que como o suporte à memória não depende mais do chipset, mas sim do controlador de memória incluído no processador, os fabricantes podem agora lançar versões de seus chipsets tanto para placas soquete 754 e 939 quanto em placas AM2 e superiores, fazendo apenas pequenas atualizações no barramento HyperTransport. Como disse anteriormente, o controlador de memória integrado complicou o projeto do processador, mas por outro lado tornou a vida dos fabricantes de chipsets muito mais simples. Tudo começou com o AMD 8000, o chipset de referência da AMD, que acabou sendo pouco utilizado na prática. Ele é composto pelos chips AMD 8151 (que faz o papel de ponte norte) e o chip 8111 (ponte sul), ambos conectados por um barramento HyperTransport de 8 bits. O chip 8151 era chamado pela AMD de "AGP Graphics Tunnel". pois com a remoção do controlador de memória, as únicas funções dele eram conectar o processador ao barramento AGP 8x e ao chip 8111, que concentrava as demais interfaces. Os recursos do chip 8111 também são relativamente modestos. Ele oferece suporte a 6 portas USB 2.0, duas portas IDE ATA-133, suporte a PCI-X, além de rede e som onboard. O suporte a PCI-X fez com que o AMD 8000 fosse relativamente popular em servidores baseados nas primeiras versões do Opteron e também em estações de trabalho, sobrevivendo até perto do final de 2003. Já nos desktops, ele é virtualmente desconhecido, já que os chipsets da nVidia, VIA, SiS e ATI roubaram a cena. Chipsets da nVidia O primeiro chipset da nVidia para o Athlon 64 foi o nForce3, que é de certa forma um sucessor das diversas versões do nForce2 usados nas placas soquete A. Ele existiu nas versões 150 (a original), 250, Pro250, 250Gb e 250Gb Ultra. Estas 5 versões são ainda baseadas no uso do barramento AGP, sem suporte a PCI Express. Todas oferecem suporte a 6 portas USB 2.0 (três controladoras independentes, cada uma com duas portas), duas interfaces ATA-133 (com suporte a RAID 0, 1 e 10), rede e som onboard, mas se diferenciam nos detalhes. Ao contrário dos demais, o nForce3 150 utilizava um barramento HyperTransport operando a 600 MHz (multiplicador de 3x em vez de 4x), abaixo da especificação da AMD, que previa o uso de um barramento de 800 MHz nas placas soquete 754. Embora esta omissão tenha sido bastante comentada na época do lançamento, não causou nenhuma redução real no desempenho do chipset, já que o conjunto relativamente modesto de recursos do nForce3 150 não chegava a saturar nem mesmo o link de 600 MHz, que oferecia um total de 6 GB/s de taxa de transferência entre o processador e o chipset. O principal consumidor era o barramento AGP 8x, que, como bem sabemos, transmite a até 2133 MB/s. Existiu ainda o nForce3 150 Pro, cujo único diferencial era oferecer suporte ao Opteron. 612
  • 613. O nForce3 250 trouxe como diferencial a inclusão de 4 portas SATA (também com suporte a RAID), além de uma atualização do barramento HyperTransport, que passou a trabalhar a 800 MHz. Ele substituiu rapidamente o 150 e foi bastante comum em placas soquete 754 de baixo custo, já que era o chipset mais barato dentro da família. Em seguida temos o nForce3 250Gb, que, como o nome sugere, incorporava uma interface de rede Gigabit Ethernet, com suporte ao Active Armor, o sistema de firewall via hardware desenvolvido pela nVidia. Ele foi seguido pelo 250Gb Pro, que oferecia também suporte ao Opteron e aos primeiros modelos do Athlon 64 FX, que ainda utilizavam o soquete 940 e memórias registered. O nForce3 250Gb Ultra é apenas uma evolução natural do 250Gb, que oferece um barramento HyperTransport de 1.0 GHz, adequado para uso em placas soquete 939. Em tese, o nForce 3 250Gb também poderia ser utilizado em placas soquete 939, mas o barramento HyperTransport de 800 MHz geraria a mesma publicidade negativa que vitimou o nForce3 150. Existiu ainda o nForce 3 Pro250, que oferecia suporte ao Opteron. Para reduzir o custo de produção, a nVidia optou por utilizar um design single- chip no nForce3. Um efeito colateral é que o corte de componentes deixou de fora o vídeo onboard GeForce 4 e o chipset de som onboard de alta qualidade utilizado nas primeiras versões do nForce. No lugar dele, foi utilizado o mesmo chipset AC'97 de baixo custo utilizado nas versões recentes do nForce2. Como o suporte a dual-channel, DASP e outros recursos relacionados ao controlador de memória também foram removidos (já que o acesso à memória passou a ser feito diretamente pelo processador), o nForce3 perdeu todos os seus antigos diferenciais em relação aos concorrentes. A nVidia se concentrou então em incluir opções relacionadas a overclock e tweaks diversos, transformando o nForce3 e seus sucessores nos chipsets preferidos para quem queria explorar os limites do processador. Um recurso digno de nota é o "AGP/PCI Lock", ativado através de uma opção no Setup, que permite travar a freqüência do barramento AGP e PCI e assim ajustar livremente a freqüência do FSB, sem colocar em risco a estabilidade dos demais componentes. Reduzindo o multiplicador do barramento HyperTransport, era possível aumentar o "FSB" (no caso o clock de referência do processador) de 200 para 250 MHz ou mais sem grandes problemas. Como o multiplicador de todos os processadores Athlon 64 e X2 é destravado para baixo, era possível aumentar o FSB livremente e procurar a melhor combinação de freqüência e multiplicador ao fazer overclock. O AGP/PCI Lock tornou-se funcional a partir das placas baseadas no nForce3 250. Ele na verdade estava disponível também no nForce3 150, mas problemas de implementação fizeram com que não funcionasse corretamente na maioria das placas produzidas. A seguir temos uma Epox 9nda3+, baseada no nForce3 250Gb Ultra. Você pode notar que o chipset fica entre os slots PCI e AGP, enquanto o processador é posicionado bem ao lado dos slots de memória, reduzindo o 613
  • 614. comprimento das trilhas que ligam o controlador de memória integrado e os módulos de memória. O processador é então ligado ao chipset através das poucas trilhas responsáveis pelo barramento HyperTransport e as trilhas para os demais componentes partem dele. Por ser uma placa soquete 939, ela suporta dual- channel, mas o recurso é, mais uma vez, oferecido pelo controlador de memória incluído no processador e não pelo chipset: Epox 9nda3+, baseada no nForce3 250Gb Ultra No final de 2004 foi lançado o nForce4, que mais tarde seria também adaptado para uso em conjunto com o Pentium 4. As versões do nForce4 para processadores AMD incluem o nForce4 original, nForce4 Ultra, nForce4 SLI e o nForce4 SLI x16, que, ao contrário da versão para processadores Intel, mantêm o design single-chip utilizado no nForce 3. A principal inovação presente no nForce4 foi a adoção do PCI Express em substituição do AGP. A versão inicial do nForce 4 incluía 20 linhas PCI Express, permitindo o uso de um slot x16, acompanhado de até 4 slots x1 (embora a maioria das placas utilizasse apenas dois ou três slots). Estavam disponíveis ainda 10 portas USB, duas interfaces ATA-133 e 4 portas SATA (com suporte a RAID 0, 1 ou 10), som onboard AC'97 e o chipset de rede Gigabit Ethernet. Alguns softwares úteis incluídos no pacote eram o nVidia RAID Morphing, que permitia alterar a configuração do array RAID rapidamente, e o nTune, que permitia ajustar freqüências, multiplicadores e outras configurações 614
  • 615. relacionadas a overclock através do Windows, sem precisar reiniciar e ir até o Setup. Hoje em dia este é um recurso comum, mas na época foi um diferencial. nTune Como de praxe, a versão "básica" do nForce 4 foi seguida por diversas versões aprimoradas. O nForce4 Ultra inclui suporte ao ActiveArmor, interfaces SATA- 300, além de um barramento HyperTransport de 1.0 GHz. A versão original do nForce4 utilizava um link de 800 MHz (multiplicador 4x), que foi atualizado para o padrão de 1 GHz apenas a partir da terceira revisão do chipset (A3). O nForce4 Ultra seria o mínimo que você deve considerar utilizar em um PC atual, devido ao suporte a SATA-300. O suporte a SLI foi introduzido a partir do nForce4 SLI, que oferecia a possibilidade de dividir as linhas PCI Express, transformando o slot x16 em dois slots 16x com 8 linhas de dados cada. O suporte a SLI acabou se tornando o grande diferencial dos chipsets nVidia, de forma que o nForce4 SLI foi rapidamente aperfeiçoado, dando origem ao nForce4 SLI x16, que oferece 38 linhas PCI Express (a versão para processadores Intel possuía 40), permitindo criar dois slots 16x "reais", com 16 linhas PCI Express cada um. Devido ao brutal volume de transístores introduzidos pelas 18 linhas PCI Express adicionais, o nForce4 SLI x16 voltou a ser dividido em dois chips, assim como a versão para processadores Intel. Para não perder o filão de placas com vídeo onboard, a nVidia lançou também os chips nForce410 e nForce430. Eles são versões simplificadas do nForce4, sem as linhas PCI Express, destinados a serem usados como ponte sul. Eles são combinados com os chips GeForce 6100 ou GeForce 6150 (que incluem tanto as linhas PCI Express, quanto um chipset de vídeo onboard), que fazem o papel de ponte norte. 615
  • 616. Tanto o GeForce 6100 quanto o 6150 incluem um chipset de vídeo da série GeForce 6, que, embora bastante simplificados em relação às versões offboard, possuem um desempenho respeitável dentro do ramo de chipsets de vídeo onboard. Ambos possuem duas unidades de processamento de pixels, duas unidades de pixel shader, duas unidades de processamento de texturas e uma unidade de vertex shader. A diferença é que o 6100 opera a 425 MHz, enquanto o 6150 opera a 475 MHz e oferece suporte a DVI. Ambos utilizam memória compartilhada e por isso apresentam um ganho considerável de desempenho quando utilizados dois módulos de memória em dual-channel, sobretudo quando utilizados em uma placa AM2, com suporte a módulos DDR2. O nForce410 é um chip relativamente modesto, com duas interfaces ATA-133, 4 portas SATA (com suporte a RAID 0 e 1), som HDA AC'97 (chip Azalia), rede 10/100 e 8 portas USB 2.0. O nForce430 inclui rede Gigabit Ethernet e suporte a RAID 5 (utilizando tanto HDs instalados nas portas IDE quanto nas SATA). Esta é uma Gigabyte K8N51GMF-9, um exemplo de placa soquete 939 de baixo custo, baseada na combinação do nForce430 e do GeForce 6100. Com a remoção das linhas PCI Express, o nForce430 (posicionado entre os slots IDE e as portas SATA) se tornou um chip bastante simples, produzido usando a técnica de 0.14 micron. O 6100, por sua vez, é mais complexo. Mesmo sendo produzido usando a técnica de 0.09 micron, ele gera bastante calor e por isso conta com um dissipador um pouco mais avantajado. Como de praxe, o vídeo onboard pode ser substituído por uma placa offboard, encaixada no slot PCIe x16. Estão disponíveis também mais dois slots PCI tradicionais e um slot PCIe x1: 616
  • 617. Gigabyte K8N51GMF-9 A partir do nForce4, a nVidia passou a fabricar versões de seus chipsets para processadores AMD e Intel. Embora a linha Intel seja composta por chips um pouco mais complexos, que incluem o controlador de memória e o suporte ao barramento utilizado pelo processador (no lugar de um simples link HyperTransport, como no caso da linha AMD), a nVidia conseguiu criar uma linha semi-unificada de chipsets, com relativamente poucas diferenças de recursos entre os modelos para as duas plataformas. Todos os principais recursos podem ser encontrados tanto de um lado quanto do outro. Por possuírem mais componentes internos, os chipsets para processadores Intel são sempre divididos em ponte norte e ponte sul (SPP e MCP), enquanto os AMD são em sua maioria soluções single-chip. A linha para processadores AMD é composta pelos chipsets nForce 520, nForce 550, nForce 570 Ultra, nForce 570 SLI, nForce 590 SLI, além do nForce 680a SLI (destinado à plataforma Quad FX). Enquanto os nForce 3 e 4 eram destinados às placas soquete 754 e 939, todos os chipsets a partir do 520 são destinados a placas AM2. Tecnicamente, nada impediria o desenvolvimento de placas soquete 939 usando os chipsets da série 500, mas isso não é comum. O nForce 520 é o chipset "value", destinado a PCs de baixo custo. Embora ofereça 20 linhas PCI express, ele não oferece suporte a SLI, limitando-se a um único slot x16. Ele também não inclui o chipset de rede gigabit (substituído por um chipset de rede 10/100 regular), inclui apenas 4 portas SATA e não oferece suporte a RAID 5, disponível nos outros modelos. Todos os chipsets a 617
  • 618. partir do 520 incluem apenas uma interface IDE, em vez de duas, como nos anteriores. O nForce 550 é uma versão levemente aprimorada do 520, que inclui a interface de rede Gigabit Ethernet e oferece a possibilidade de usar até 4 slots PCI Express x1 em complemento ao slot x16 (contra apenas 3 do 520). Na prática este recurso é pouco usado, já que os fabricantes costumam utilizar apenas 2 ou 3 slots x1, reservando algum espaço para slots PCI de legado, mas esta foi a forma que a nVidia encontrou para diferenciar os dois :). As placas baseadas no 550 oferecem quase sempre mais opções de overclock, já que os fabricantes precisam diferenciá-las das placas de baixo custo. O nForce 570 Ultra adiciona duas portas SATA adicionais (totalizando 6), suporte a RAID 5 e também a segunda placa Gigabit Ethernet. A partir daí temos os chipsets com suporte a SLI. O nForce 570 SLI inclui 28 linhas PCI Express, o que permite utilizar duas placas em modo x8, enquanto o nForce 590 SLI inclui 46 linhas, permitindo o uso de duas placas em modo x16. Ao contrário do 520, 550 e do 570, que são single-chip, o 590 SLI segue a divisão tradicional, dividido entre os chips SPP e MCP. Um recurso inicialmente disponível no 590 SLI era o LinkBoost, um sistema automatizado de overclock que aumentava a freqüência do barramento PCI Express e do HyperTransport em 25% caso uma ou duas placas nVidia compatíveis (como a GeForce 7900 GTX) com o recurso estivessem instaladas. O aumento na freqüência permitia eliminar qualquer possível gargalo relacionado ao barramento ao utilizar duas placas em SLI ou Quad SLI. Basicamente, era um overclock garantido pelo fabricante e que era aplicado apenas aos dois slots PCIe x16, sem afetar os demais componentes do micro. Apesar disso, ele acabou sendo removido das revisões mais recentes do chipset, pois não trazia nenhum ganho tangível de desempenho e gerou algumas queixas relacionadas à estabilidade. As opções de overclock ficam disponíveis no setup, mas não mais usadas automaticamente. Na foto a seguir temos uma Foxconn C51-XEM2AA, um exemplo de placa baseada no nForce 590 SLI. Além das duas placas gigabit e das demais interfaces, suporte a SLI, e outros recursos, o principal atrativo desta placa e de outras do mesmo nível é a grande variedade de opções de overclock e a boa tolerância ao uso de freqüências extremas para o barramento PCI Express e para o link Hyper Transport. Ela oferece um conjunto completo de ajustes dos tempos de espera dos módulos de memória (incluindo os ajustes de tCL, tRAS, tRP, tRCD, tRPD, tRC, CMD, tWR, tRWT, tWTR, tREF, tRRD, drive strength e outros), ajuste da tensão do processador (de 0.3750v a 1.85v, em incrementos de 0.0125v), dos módulos de memória (de 1.825v a 2.5v, em incrementos de 0.025v), ajuste da freqüência do barramento PCI Express (de 100 a 200 MHz), ajuste da freqüência, multiplicador e também tensão do barramento HyperTransport, entre outras opções: 618
  • 619. Foxconn C51-XEM2AA, baseada no nForce 590 SLI Chipsets da VIA O primeiro chipset da VIA para a plataforma AMD64 foi o VIA K8T800, que foi concorrente direto do nForce3 150. Um dos diferenciais mais enfatizados é que o K8T800 implementava um barramento HyperTransport "completo", de 800 MHz, entre o processador e o chipset, enquanto o nForce3 150 utilizava um link de 600 MHz e ainda por cima assimétrico, com 16 bits de downlink e apenas 8 bits de uplink. Embora esta característica represente uma diferença de desempenho muito pequena na prática, acabou fazendo com que o chipset da VIA fosse considerado superior tecnicamente. O K8T800 segue o design tradicional, baseado em dois chips. A ponte norte é um chip relativamente simples, que contém o barramento HyperTransport, que o liga ao processador e à interface AGP 8x. Ao invés de utilizar um segundo barramento HyperTransport para interligar a ponte norte e a ponte sul, a VIA optou por utilizar um barramento V-Link de 533 MB/s. Os recursos do chip VT8237R, usado como ponte sul, incluem duas portas ATA-133, 8 portas USB 2.0, som (AC'97) e rede (10/100) onboard e duas portas SATA, com suporte a RAID 0 e 1. Um detalhe técnico interessante sobre o VT8237R é que ele podia ser expandido através de chips adicionais, com opções para duas portas SATA adicionais (que adicionavam a possibilidade de usar RAID 10), suporte a slots PCI-X (um recurso bastante requisitado no caso das placas para o Opteron), placa de som 7.1 e também uma interface Gigabit Ethernet. A opção de utilizar ou não estes recursos adicionais recaía sobre o fabricante da placa, o que fazia com que eles nem sempre fossem usados, ou fossem substituídos por controladores mais baratos, oferecidos por outros fabricantes. 619
  • 620. Quando a nVidia lançou a série nForce3 250, a VIA respondeu com o K8T800 Pro, uma versão melhorada do K8T800, que atualizou o barramento HyperTransport para um link de 1.0 GHz e adicionou o recurso AGP/PCI lock, o mesmo recurso utilizado pela nVidia no nForce3, que permitia travar a freqüência do barramento AGP e PCI ao fazer overclock, o que permitia atingir freqüências mais altas, sem risco de afetar a estabilidade dos demais componentes. O barramento V-Link entre os dois chips foi também atualizado para a versão de 1.0 GHz, embora as interfaces disponíveis no chip VT8237R não tenham sofrido mudanças. Como de praxe, foi lançada também uma versão do K8T800 Pro com vídeo onboard, o K8M800. Ele incluía um chipset de vídeo VIA UniChrome Pro, o mesmo controlador utilizado nos chipsets P4M890 e KM800. Com o final da era AGP, a VIA lançou o K8T890, que inclui um total de 20 linhas PCI-Express, suficientes para criar um slot x16 e mais 4 slots x1, destinados a placas de expansão diversas. Tanto o barramento HyperTransport de 1.0 GHz quanto o uso do V-Link como meio de interligação entre a ponte norte e a ponte sul foram mantidos, mas o antigo chip VT8237R foi substituído pelo VT8251, uma versão sensivelmente aprimorada. Além de manter as interfaces ATA-133, o VT8251 trouxe o suporte a 4 interfaces SATA, com suporte a RAID 0, 1 e 10, sem a necessidade da adição do chip extra e um chip de áudio com suporte ao padrão HDA. Ele inclui também duas linhas PCI Express extras, que podem ser utilizadas para criar dois slots x1 adicionais, ou conectar dispositivos diversos, adicionados pelo fabricante da placa. Apesar das melhorias, ele vem com a mesma interface de rede 10/100 do VT8237R, que pode ser substituída pela interface gigabit através do uso do chip adicional. O chip VT8251 é compatível também com o K8T800 Pro e chegou a ser utilizado em conjunto com ele durante algum tempo, oferecendo uma combinação atualizada para fabricantes interessados em fabricarem placas com suporte a AGP. Existiram ainda casos de placas baseadas no K8T890 que utilizavam o chip antigo, devido a atrasos na fabricação do VT8251. Mais recentemente, a VIA passou a oferecer também o chip VT8237A, que pode ser usado tanto em conjunto com o K8T890 quanto com os chipsets da linha Intel. O VT8237A mantém as duas portas ATA-133, o chipset de áudio VIA Vinyl, rede 10/100 e 8 portas USB. A principal diferença entre ele e o VT8251 é que ele possui apenas duas portas SATA (com suporte a RAID 0 e 1), em vez de 4. Apesar disso, muitos fabricantes de placas combinam o VT8237A, com controladores SATA e chipsets de rede externos, produzindo placas com 4 portas SATA e rede gigabit. 620
  • 621. Diagrama de blocos do VIA K8T890 Com o lançamento do K8T890, o K8M foi também atualizado, dando origem ao K8M890, que vem com um chipset de vídeo Chrome9 integrado. Pouco depois foi lançado também o K8T900, que mantém as mesmas características básicas do K8M890 (incluindo o uso do chip VT8251 como ponte sul), mas vem sem vídeo onboard e, em troca, adiciona a possibilidade de criar placas com dois slots PCI Express x16 (com 8 linhas de dados cada um), permitindo o uso de duas placas de vídeo simultaneamente. Na época em que foi lançado, não existia nenhuma trava nos drivers da nVidia que impedissem o uso de duas placas em SLI em chipsets de outros fabricantes, de forma que utilizando uma certa versão dos drivers (um beta do ForceWare 71.24, caso esteja curioso), era possível utilizar duas placas em SLI no K8T900. Mas, ao perceber a brecha, a nVidia rapidamente retirou a versão do driver de circulação e implantou travas de software nas versões futuras, eliminando a possibilidade. 621
  • 622. O K8T900 também não oferece suporte ao CrossFire. Ao invés disso a VIA criou o "MultiChrome", onde é possível combinar duas placas baseadas no S3 Chrome S27 (a S3 é atualmente uma subsidiária da VIA), placas de vídeo bastante incomuns e com um desempenho fraco, inferior ao de uma GeForce 6600 GT. O mérito do MultiChrome é a meta de se tornar um padrão aberto, que possa ser usado em placas de outros fabricantes. Apesar disso, ele tem poucas chances de dar certo, pois ao excluir a nVidia e ATI (que já possuem seus próprios padrões) e a Intel (com quem a VIA mantém uma relação pouco amistosa), sobram poucos possíveis aliados. Atualmente a VIA faz de tudo, fabricando chipsets, placas, processadores e placas de vídeo. O problema é que a VIA é uma empresa muito pequena para conseguir ser competitiva simultaneamente em todos estes mercados e a pouca popularidade das placas S3 S27 é apenas mais um sintoma disso. Placa de vídeo S3 S27 Como a possibilidade de você encontrar duas placas S3 a um preço condizente com o desempenho é pequena, o segundo slot acaba sendo útil apenas caso você queira utilizar duas placas de vídeo para criar uma configuração com vários monitores. Enquanto escrevo (outubro de 2007), existem rumores cada vez mais fortes de que a VIA está prestes a deixar de produzir chipsets para processadores Intel e AMD e passar a se dedicar apenas a chipsets para seus processadores C7 (usados nas placas da linha EPIA e em alguns modelos de notebooks), por isso não se surpreenda se a notícia vier a se confirmar nos meses seguintes. Chipsets da SiS Antes de iniciar a série 760, que foi a mais conhecida entre seus chipsets para o Athlon 64, a SiS lançou três chipsets sem vídeo onboard, que competiam diretamente com o VIA K8T800 e o nForce3. O SiS 755 oferecia suporte a AGP 8x, além de incluir um barramento HyperTransport de 800 MHz, assim como o K8T800. Ligando a ponte norte ao 622
  • 623. chip SiS964, foi utilizado um barramento MuTIOL 1G, que também não criava gargalos. A ponte sul incluía duas interfaces ATA-133, duas portas SATA com suporte a RAID 0 e 1, 8 portas USB 2.0, rede 10/100 e áudio AC'97. Seguindo a evolução natural, o 755 foi sucedido pelo SiS 755FX, que incluía suporte ao barramento HyperTransport de 1.0 GHz utilizado nas placas soquete 939, além de trazer suporte ao chip SiS965 (usado como ponte sul), que incluía 4 portas SATA (incluindo suporte a RAID 0, 1 e agora também a RAID 10), rede gigabit e duas linhas PCI Express, que permitiam complementar os slots AGP e PCI com dois slot PCIe x1. O SiS 756 foi o primeiro chipset SiS a substituir o barramento AGP pelo PCIe, oferecendo um total de 18 linhas, que permitiam criar o slot x16 e mais dois slots x1. Ele continuou utilizando o chip SiS965 como opção default de ponte sul, mas os fabricantes tinham a opção de substituí-lo pelo chip SiS965L, uma versão de baixo custo, que incluía apenas duas portas SATA, em vez de 4. Em seguida chegamos à linha de chipsets com vídeo onboard, que incluem os chipsets SiS 760, 760GX, 761, 761GX e 761GL. Apesar da numeração superior, o SiS 760 e o SiS 760GX ainda são baseados no barramento AGP, ao contrário do 756, que já suportava PCI Express. O uso do AGP fazia sentido, pois tanto o 760 quanto o 760GX eram destinados a micros de baixo custo, onde o uso de placas AGP, muitas vezes aproveitadas de upgrades anteriores, ainda era mais comum. O SiS 760 utilizava o chipset de vídeo SiS Mirage 2, que incluía suporte ao uso de dois módulos de memória em dual-channel, enquanto o SiS 760GX utilizava o Mirage 1, que utiliza uma interface single-channel para a comunicação com a memória compartilhada. Além do fraco desempenho, o Mirage 1 ainda é baseado no DirectX 7, enquanto mesmo o Chrome9 incluído no K8T890 oferece suporte ao DirectX 9. Ambos podiam ser usados tanto em conjunto com o chip SiS964 quanto com o SiS966, que incluía 4 linhas PCI-Express, 4 portas SATA (com suporte a RAID 0, 1 e 10), 10 portas USB, áudio HDA 7.1 e rede gigabit. O chipset seguinte é o SiS 761, uma versão aprimorada do 760, que inclui um chipset de vídeo SiS Mirage 3 e utiliza o chip SiS966 como ponte sul, incluindo as 4 portas SATA, 10 portas USB e rede gigabit. Foram lançadas também duas versões de baixo custo do 761: SiS 761GL e SiS 761GX. O 761GX é a versão mais completa, que inclui um barramento HyperTransport de 1.0 GHz e as linhas PCI Express necessárias para permitir o uso do slot PCIe x16, usado para a conexão de uma placa de vídeo offboard. O 761GL, por sua vez, é uma versão muito simplificada, que não inclui o slot PCIe x16 e utiliza um barramento HyperTransport de 800 MHz para a comunicação com o processador. Ambos utilizam o antiquado Mirage 1 como chipset de vídeo, que mostra até que ponto chegou a economia de recursos. Eles são compatíveis tanto com o 623
  • 624. SiS966 quanto com os antigos SiS965 e SiS965L como ponte sul, de forma que o fabricante da placa pode escolher qual usar. Na foto a seguir temos uma PC-Chips A31G, um exemplo de placa de baixo custo baseada no SiS 761GX. O principal alvo desta placa são os PCs de extremo baixo custo, por isso ela ainda utiliza o soquete 754, visando manter a compatibilidade com as versões iniciais do Sempron. Ela utiliza o chip SiS965L (a versão mais barata) como ponte sul e por isso inclui apenas duas portas SATA e rede 10/100. Ao contrário da maioria das placas atuais, ela ainda conserva a porta paralela e uma porta serial, visando manter a compatibilidade com impressoras e outros periféricos antigos. Os slot PCIe x1 foram substituídos pelo slot AMR (usado pela placa riser do modem onboard) e o slot AGP-Express, que visa manter compatibilidade com as placas AGP antigas, às custas de problemas de compatibilidade e ao gargalo de desempenho causado pelo uso do barramento PCI. Caso você não pretenda usar uma placa de vídeo PCI Express, é possível utilizar o slot x16 para a conexão de qualquer placa PCIe (seja x1, x4 ou x16). Devido às muitas limitações, fraco desempenho do vídeo onboard e aos problemas de compatibilidade no Linux, este é um exemplo de placa atraente apenas para quem realmente não pode pagar por coisa melhor: PC-Chips A31G, baseada no SiS 761GX (com o dissipador do chipset removido) 624
  • 625. Chipsets da ULi A ULi fabricou três chipsets de baixo custo, usados sobretudo em placas soquete 754 e soquete 939. Atualmente (final de 2007) eles ainda são fabricados em pequenas quantidades, mas tendem a ser descontinuados em breve, acompanhando a substituição das duas plataformas pelas placas AM2 e AM2+. O primeiro é o ULi M1687, um chipset antiquado, muito similar ao AMD-8151 em recursos. Ele inclui suporte a AGP 8x, duas interfaces ATA-133 (sem suporte a SATA ou RAID), 6 portas USB, som AC'97 e rede 10/100 onboard. Embora fosse um chipset barato, ele foi pouco usado, devido às muitas limitações. O segundo é o ULi M1689 é um design single-chip, que inclui também 2 portas SATA (sem suporte a RAID) e 8 portas USB, mantendo o suporte a AGP 8x e os mesmos chipsets de som e rede onboard do M1687. O terceiro chipset e de longe o mais popular dentro da linha é o ULi M1695. Este chipset é bastante famoso por ser um dos poucos a oferecer simultaneamente um slot PCI Express x16 e um slot AGP nativo, que realmente opera à sua freqüência normal. Nesse ponto ele é similar ao VIA PT880 Ultra (que também oferece suporte simultâneo a AGP e PCI Express), mas com o mérito de ser consideravelmente mais barato. Este diagrama mostra como o barramento AGP foi implementado. O chipset é ligado ao processador através de um barramento HyperTransport (de 1.0 GHz, como de praxe) e um segundo barramento HT é utilizado para interligar a ponte norte e a ponte sul. Como você pode ver no diagrama, a ponte norte fica com as linhas PCI Express, enquanto a ponte sul (o chip M1567) inclui o barramento AGP e as demais interfaces. Um detalhe técnico interessante é que o chip M1567 é um descendente direto do chipset M1689, lançado anteriormente. A flexibilidade oferecida pelo barramento HyperTransport permitiu que ele fosse rapidamente adaptado para abandonar seu posto de chipset principal e assumir o papel de ponte sul do M1695: 625
  • 626. Diagrama de blocos do ULi M1695 Os demais recursos do chipset são modestos, incluindo as duas interfaces ATA-133, duas portas SATA-150 (agora com suporte a RAID 0 e 1), 8 portas USB, além de rede (10/100) e som onboard. Apesar disso, o desempenho do M1695 é sensivelmente superior ao dos concorrentes diretos da SiS, chegando a competir com o nForce4 em alguns quesitos. Esta combinação acaba tornando-o uma opção mais interessante que os SiS 761GX e 761GL dentro do ramo de chipsets de baixo custo. Outro recurso digno de nota é o "Triple Graphics", que permite combinar placas de vídeo PCI Express, AGP e PCI ao configurar um sistema com vários monitores, usando simultaneamente placas conectadas aos três barramentos. Basicamente, este sistema permite que você aproveite todas as placas de vídeo antigas que tiver à disposição, independentemente do barramento utilizado por cada uma. Assim como o VIA K8T900, o M1695 suporta também o uso de dois slots PCI Express x16 (com 8 linhas cada um). Tecnicamente, esta configuração permite usar duas placas em SLI, mas neste ponto esbarra-se na relutância da nVidia em licenciar a tecnologia para outros fabricantes e incluir o suporte a placas de terceiros nos drivers. A ULi chegou a distribuir versões modificadas do ForceWare 71.24, a última versão do driver da nVidia que não inclui a trava contra o uso do SLI em placas de outros fabricantes, mas ela só permite utilizar placas antigas, como as GeForce 6800. Entretanto, o lançamento de chipsets da ULi com suporte a SLI 626
  • 627. não pode ser inteiramente descartado, pois ela foi adquirida pela nVidia no final de 2005 e é atualmente uma subsidiária dela. Uma das placas baseadas no ULi M1695 mais conhecidas é a ASRock 939Dual-SATA2. A ASRock é uma divisão da Asus. O objetivo da empresa é "to deliver creative, considerate, and cost effective products to the PC market", o que, em bom português, significa que são especializados em produzir placas de baixo custo, que a Asus prefere vender sob uma marca separada. Como toda placa soquete 939, ela oferece suporte a dual-channel, cortesia do controlador de memória incluído no processador. Além das duas portas SATA- 150 incluídas no chipset, ela inclui uma porta SATA-300 (destacada das outras duas por utilizar um conector vermelho), controlada por um chip JMicron avulso. É daí que surge o "Dual-SATA2" usado no nome. Ela mantém também a carga de legado completa, incluindo as duas interfaces IDE, porta paralela, porta serial e porta do drive de disquetes. Note que ela não inclui vídeo onboard nem o modem AMR presente nas placas da ECS, PC-Chips e Phitronics, o que dificulta seu uso em micros de baixo custo. Esta ASRock é uma espécie de placa de baixo custo para entusiastas, que querem usar uma placa de vídeo offboard e querem mais opções de overclock do que as oferecidas em outras placas baratas, sem precisar gastar muito. ASRock 939Dual-SATA2, baseada no ULi M1695 627
  • 628. Além da combinação do slot PCI Express x16, do slot AGP 8x (real), ela inclui três slots PCI e um slot PCIe x1, completados por um estranho slot amarelo, similar a um slot AGP, mas em posição diferente. Este slot é chamado de "Future CPU Port" e permite o uso de uma placa de expansão, que permite instalar um processador AM2 e módulos de memória DDR2, aproveitando o restante da placa-mãe. Ele é uma idéia bastante engenhosa, pois a placa de expansão é ligada diretamente ao barramento HyperTransport, o que permite que ela "substitua" o soquete e os slots de memória presentes na placa-mãe, oferecendo a possibilidade de usar um processador AM2 sem perda de desempenho. Ao instalar a placa de expansão, você precisa mudar a posição dos vários jumpers entre o slot amarelo e o soquete do processador. Estes jumpers roteiam as trilhas referentes ao barramento HyperTransport, junto com as trilhas de alimentação elétrica, desativando o soquete onboard e ativando a placa. A "CPU EZ Upgrade" podia ser comprada, no início de 2007, por cerca de US$ 50 nas lojas online, um preço bem mais baixo que o da maioria das placas AM2, mas quase equivalente ao preço da própria ASRock 939Dual-SATA2. No Brasil ela é difícil de encontrar, mas não deixa de ser uma opção de upgrade a se tomar nota: Placa de expansão AM2 da ASRock Os maiores problemas da CPU EZ Upgrade são que ela funciona apenas nas placas da própria ASRock (com o slot de expansão) e o fato dela ser relativamente cara para um adaptador. Para fazer o upgrade, você precisa comprar também o processador AM2 e os módulos de memória DDR2, de forma que, na ponta do lápis, a economia em relação a comprar uma placa AM2 "de verdade" acaba sendo pequena. Em geral, vale mais à pena comprar de uma vez uma placa-mãe AM2 nova e vender o conjunto de placa, processador e módulos de memória antigos como 628
  • 629. usados para recuperar parte do investimento do que fazer o upgrade usando a placa de expansão. Um ponto a ter em mente é que as placas-mãe que utilizam capacitores eletrolíticos possuem uma vida útil limitada, por isso upgrades como este, que permitem utilizar a mesma placa indefinidamente, em troca de uma pequena economia em relação a uma placa nova, não são exatamente uma boa idéia. Capítulo 8: Montagem, manutenção e dicas Hoje em dia, graças ao programa do PC popular e outras formas de incentivos, PCs de marcas nacionais passaram a ser vendidos até mesmo em supermercados, com preços relativamente baixos e boas condições de pagamento. O maior problema é que junto com o preço baixo, temos uma qualidade que muitas vezes deixa a desejar, de forma que o mercado para PCs montados, com configurações melhores continua existindo, talvez maior do que nunca. Além disso, a maior quantidade de micros vendidos, grande parte deles modelos com componentes de baixa qualidade, acabam aumentando as oportunidades de trabalho para técnicos de manutenção. Outra questão é que, qualquer micreiro que se preze não compra PCs montados; compra as peças e monta ele mesmo. :) Coloquei este capítulo de montagem como um dos últimos do livro para que possamos nos concentrar na escolha dos componentes e na montagem propriamente dita, sem precisar ficar revisando conceitos básicos. A idéia é que este capítulo seja interessante não apenas para quem está começando, mas que também inclua informações úteis para os mais experientes. As formas mais comuns de destruir um PC Se pensarmos na quantidade de componentes individuais contidos em um PC atual, incluindo as inúmeras trilhas e os contatos que os interligam e todas as diferenças de sinalização e diferentes tensões utilizadas pelos diferentes componentes, o mais surpreendente é que o computador possa realmente funcionar, e não que surjam problemas diversos de vez em quando. Ainda assim, existem diversas formas "simples" de destruir um PC acidentalmente, curtos lampejos de descuido ou falta de sorte que podem acabar custando muito caro. Naturalmente, ninguém quer ser o próximo premiado, por isso, antes de falar sobre montagem de micros, vamos a um resumo dos acidentes mais comuns. Fonte de alimentação A maior fonte de perigos para qualquer PC é a fonte de alimentação. Ela é a responsável por converter os 110 ou 220 volts da rede elétrica para os 12V, 5V 629
  • 630. e 3.3V fornecidos nas diferentes saídas, além de filtrar a corrente e atenuar picos de tensão. Por ser um dos componentes de mais baixa tecnologia, existe um enorme número de empresas que fabricam fontes de alimentação, com grandes variações na qualidade e no preço. Problemas relacionados à fonte de alimentação são especialmente perigosos, pois podem danificar outros componentes. Toda fonte possui uma determinada capacidade de fornecimento, medida em watts. Fontes antigas fornecem 250 ou 300 watts, enquanto as atuais são capazes de fornecer 350, 450, 600 ou até mesmo 1000 watts. A capacidade anunciada é quase sempre a soma das capacidades nas três saídas, de forma que uma fonte de 350 watts pode ser capaz de fornecer apenas 150 watts na saída de 12V, por exemplo. Temos aqui o exemplo de uma fonte de 450 watts, que, segundo o informado pelo adesivo, é capaz de fornecer 32 amperes na saída de 3.3V, 35 amperes na de 5V e mais 14 amperes na de 12V: Para descobrir a capacidade em watts, basta multiplicar a tensão pela amperagem. Fazendo isso, descobrimos que as capacidades reais da fonte são 105.6 watts na saída de 3.3V, 175 watts na de 5V e 168 watts na de 12V. Os 450 watts prometidos são apenas um arredondamento da soma das capacidades das três saídas. O que acontece quando a capacidade de fornecimento da fonte é excedido, ao instalar duas placas 3D de ponta em SLI, por exemplo? Se você tiver sorte, a fonte simplesmente vai desligar sozinha depois de algum tempo de uso, talvez causando a perda de alguns arquivos, mas sem danos ao equipamento. Porém, se você não for tão sortudo, os resultados podem ser mais imprevisíveis. A fonte pode literalmente explodir quando sobrecarregada, levando junto a placa-mãe, memórias, HD, processador e até mesmo seu caro par de placas 3D. 630
  • 631. O primeiro cuidado ao montar o micro é dimensionar corretamente a capacidade da fonte. Os números anunciados pelo fabricante nem sempre correspondem à realidade (sobretudo nas fontes mais baratas), por isso é importante sempre trabalhar com um bom nível de tolerância. Tenha em mente que a capacidade da fonte pode decair com a passagem do tempo, devido ao desgaste de seus componentes, por isso quanto maior a margem de tolerância, melhor. Antigamente (até a época do Pentium II), os processadores puxavam toda a corrente que utilizavam da saída de 5V (no caso dos 486 e Pentium) ou 3.3V (no caso do Pentium II e K6-2). Conforme processadores mais rápidos eram lançados, isso começou a se tornar um grande problema, já que a maior parte do fornecimento da fonte é destinada à saída de 12V e não à de 3.3V. Para solucionar o problema, a partir do Pentium III FC-PGA o processador passou a consumir corrente da saída de 12V (a placa-mãe se encarrega de reduzir a tensão antes de fornecê-la ao processador), assim como as placas de vídeo offboard que utilizam conectores extra de energia, HDs, exaustores e drives ópticos. Atualmente, apenas componentes da placa-mãe, pentes de memória e placas de expansão diversas utilizam a saída de 3.3V, fazendo que ela seja um problema menor. Muitos componentes utilizam simultaneamente duas saídas, como os HDs, que utilizam a saída de 5V para alimentar os circuitos da placa lógica e 12V para o motor que faz girar os discos. A própria placa-mãe utiliza a saída de 5V para alimentar diversos componentes. Você pode fazer uma conta rápida, somando o consumo dos componentes que utilizam a saída de 12V. Um HD de 7200 RPM consome de 15 a 20 watts, cada gravador de CD ou DVD consome 25 (enquanto está gravando), cada exaustor (incluindo o do cooler do processador) consome até 10 watts, um processador dual-core em full load pode consumir até 90 watts, enquanto uma placa 3D topo de linha pode consumir de 70 a 120 watts. Se você tem um micro com dois HDs, dois gravadores de DVD, um processador dual-core e duas placas 3D em SLI, o consumo (apenas na saída de 12V) pode facilmente exceder os 350 watts. Como disse, a capacidade da fonte é dividida entre as saídas, de forma que, para obter 350 watts na saída de 12 volts e mais uma boa margem de tolerância, você precisaria de uma fonte de 700 watts ou mais. Usar uma fonte barata nesta configuração seria extremamente perigoso. Se possível, prefira sempre comprar a fonte separada do gabinete, investindo alguns reais a mais em uma fonte de melhor qualidade. Fontes boas custam o dobro ou o triplo do preço, mas muitas vezes acabam se pagando com uma maior durabilidade, sobrevivendo a vários upgrades. Você pode monitorar as tensões de saída da fonte através do setup e também através de utilitários de monitoramento. Quase sempre os fabricantes incluem algum no conjunto de utilitários incluído no CD de drivers. No Linux você pode utilizar o LMsensors e uma interface para ele, como o Ksensors: 631
  • 632. Monitorando as tensões e temperaturas no Linux usando o KSensors Ao montar um novo micro, procure simular uma situação de estresse (como rodar um benchmark, simular a gravação de um DVD e rodar um game 3D, tudo ao mesmo tempo) que exija o máximo de todos os componentes e acompanhe as variações no fornecimento da fonte. Assim como em outros componentes, a maioria dos problemas de fornecimento se manifesta apenas quando a fonte é mais exigida. Ser capaz de manter um fornecimento estável e tensões corretas, não é uma garantia de que a fonte realmente esteja 100%, mas já permite descartar 90% dos problemas graves. Variações de até 5%, para mais ou para menos, são perfeitamente normais, mas variações acima disso (sobretudo variações para mais) podem danificar componentes sensíveis. Normalmente, as primeiras vítimas são os capacitores e circuitos de alimentação da placa-mãe, que são responsáveis por reduzir as tensões da fonte aos valores utilizados pelos diferentes componentes, seguidos pelos pentes de memória e pelo HD. A grande maioria dos casos de placas- mãe com capacitores estufados e outros danos relacionados são causados justamente por fontes defeituosas. Pessoalmente, sempre que recebo um micro com problemas de hardware relacionados aos pentes de memória, HD ou placa-mãe, opto por substituir a fonte junto com os outros componentes necessários, pois a possibilidade da própria fonte ter causado os danos é muito grande. Sem substituir a fonte, você pode cair em problemas recorrentes, como substituir um pente de memória danificado e, depois de algumas semanas ou meses, o micro voltar a apresentar o mesmíssimo problema, obrigando-o a gastar duas vezes. Se, depois de testes adicionais, você descobrir que o problema não era na fonte, pode usá-la em outro micro (de preferência algum micro mais antigo, com componentes de menor valor). Caso você desconfie de sobretensão nas saídas da fonte, é possível também testá-la usando um multímetro, sem precisar arriscar danificar um micro. As fontes ATX possuem um circuito que faz com que a fonte seja ligada e desligada pela placa-mãe, ao invés de usar uma chave liga-desliga, como as antigas fontes AT. O conector de uma fonte ATX possui 20 (ou 24) fios, sendo que o fio verde é o responsável por ligar a fonte. Quando é fechado um circuito entre o fio verde e o fio preto ao lado, a fonte liga e, quando o circuito é aberto, ela desliga automaticamente. Em PCs baseados no padrão ATX, o botão liga/desliga do gabinete é ligado na placa-mãe e ela se encarrega de ligar e desligar a fonte. É graças a isso que os micros atuais podem ser desligados através do sistema operacional, ao 632
  • 633. contrário dos antigos. Se você olhar o conector na horizontal, com o pino de encaixe virado para baixo, o fio verde é o quarto da linha de baixo, contando da direita para a esquerda. As fontes recentes utilizam conectores de 24 pinos, onde os 4 pinos adicionais estão posicionados à esquerda e não alteram a posição dos demais. Use um pedaço de fio com as duas pontas descascadas (dobrado em U) para fechar um circuito entre o fio verde e o fio preto ao lado (o quinto da direita para a esquerda). Como estamos lidando com eletricidade, é sempre importante tomar muito cuidado. Se você causar um curto, a fonte pode literalmente explodir na sua cara (estou falando sério). Ao fechar o circuito, a fonte liga e, ao retirar o fio, ela desliga imediatamente; por isso é preciso manter o fio posicionado durante todo o teste: Programe o multímetro para medir tensão contínua (identificada no multímetro pelo símbolo V—) em uma escala de 20v, como na foto a seguir. Se você desconfiar de problemas na fonte, pode começar com a escala de 200v, só pra garantir, já que uma tensão mais alta que a escala pode danificar o multímetro: 633
  • 634. Todos os fios da mesma cor são ligados em paralelo, por isso não existe necessidade de testar cada um dos vermelhos, depois cada um dos amarelos, etc. basta testar um de cada. Os fios vermelhos fornecem 5V, os amarelos fornecem 12V e os laranjas são os responsáveis pela tensão de 3.3V. Os fios pretos são todos neutros, usados para fechar circuitos com os demais. Para medir a tensão de cada uma das saídas, você conecta o pólo negativo (preto) do multímetro a um dos fios pretos e conecta o pólo positivo (vermelho) a fios de cada uma das três cores, sempre tomando muito cuidado. Como disse, variações de até 5% são perfeitamente normais e, além disso, as fontes costumam sempre fornecer uma tensão um pouco maior quando estão sem carga, por isso não se assuste se o multímetro mostrar 12.6V, 5.25V e 3.45V (respectivamente), por exemplo. 634
  • 635. Medindo as tensões da fonte usando um multímetro Para tornar a medição mais apurada, é interessante adicionar alguma carga na fonte, ligando um HD velho, por exemplo. Basta conectá-lo em um dos conectores molex da fonte antes de fazer as medições. Algumas fontes podem fornecer tensões muito mais altas que o normal quando completamente sem carga, gerando falsos positivos. Aqui temos um esquema com a pinagem do conector de fonte ATX, para consulta. Note que a fonte fornece também tensões de -5V e -12V, mas elas não são usadas pelas placas modernas, de forma que você não precisa se dar ao trabalho de testá-las: 635
  • 636. O ponto fraco deste teste do multímetro é que ele mostra as tensões da fonte sem (ou com pouca) carga, quando a maioria dos problemas só aparece quando a fonte está sob stress, em situações reais de uso. De qualquer forma, testar com o multímetro é uma boa forma de testar fontes já sob suspeita, evitando ter que fazer o teste usando mais um micro inocente. Uma única fonte defeituosa não compromete a integridade do fabricante, afinal problemas diversos podem ocorrer durante o uso. Entretanto, se você perceber irregularidades nas tensões fornecidas ou defeitos prematuros em mais de uma fonte de um mesmo modelo ou lote, troque rapidamente de fornecedor. Finalmente, a dica mais óbvia e justamente por isso muitas vezes esquecida: verifique a posição da chave 110/220 antes de ligar. Quase todas as fontes vêm com a chave na posição 220 de fábrica, por isso é necessário mudar para 110 antes de ligar o micro. Antes de ligar qualquer micro em uma tomada 220, cheque novamente e mude a chave. A menos que você tenha muito azar, ligar uma fonte chaveada para 220 em uma tomada 110 vai apenas fazer com que o micro não ligue, mas o contrário é quase sempre fatal. Cooler Outro erro comum é tentar ligar o micro "só pra testar" antes de instalar o cooler. Isso até podia ser feito na época dos micros 486, que dissipavam pouco calor e podiam funcionar por algum tempo sem o cooler, mas em um processador atual isso pode ser desastroso. Como eles dissipam 60, 80 ou até mesmo 90 watts de calor, o processador aquece rápido demais se ligado sem o cooler e queima antes mesmo que o diodo térmico (responsável por desligar o processador quando é atingida uma temperatura limite) tenha chance de fazer seu trabalho. O processo é muito rápido: três ou quatro segundos depois de ligar o micro sem o cooler, você ouve o estalo e o seu processador passa a ser história. Os processadores mais vulneráveis são os antigos Athlons, Durons e Semprons de 32 bits, que não possuíam o heat-spreader metálico usado nos Athlon 64 e Semprons atuais. Os processadores Intel possuem um circuito de desligamento, que faz bem o seu trabalho, geralmente evitando a queima do processador, mas ainda assim é bom não abusar da sorte. 636
  • 637. Este é um quadro de um vídeo antigo do Toms Hardware, que mostra um Athlon Palomino torrado depois de passar alguns segundos funcionando sem o cooler: O estampido instantâneo só se aplica quando você realmente liga o micro sem instalar o cooler, ou quando ele fica mal encaixado, sem fazer contato com o die do processador. Quando o cooler está corretamente instalado, mas você só se esquece de ligá-lo na alimentação, o processo é mais lento, já que o calor é absorvido pelo metal do cooler, fazendo com que o processo de aquecimento seja mais gradual e o processador trave ou desligue durante o processo, sem realmente queimar. De qualquer forma, é sempre importante verificar tudo antes de ligar o micro. Se houver a mínima chance de algo dar errado, pode ter certeza de que vai dar ;). Não se esqueça também da pasta térmica, que é essencial para a boa dissipação térmica e conseqüentemente para a vida útil do processador. Outro problema relativamente comum nos processadores sem o heat-spreader é o processador ser danificado durante a colocação do cooler. Sem a proteção metálica, o que fica em contato com o cooler é o próprio wafer de silício do processador, que é bastante frágil. Ao instalar o cooler em qualquer processador Athlon, Duron, Sempron, Pentium III ou Celeron sem o protetor, redobre os cuidados. Aplique pressão apenas sobre a presilha de encaixe, nunca se apóie ou exerça força diretamente sobre o cooler. Finalmente, temos um problema mais óbvio, mas que também acontece com freqüência, que é encaixar o cooler na direção oposta à saliência do soquete, fazendo com que ele fique "na diagonal", sem fazer contato com a superfície do processador: 637
  • 638. Ligar o micro com o cooler instalado desta maneira equivale a ligá-lo sem o cooler. Smoke Test Ao montar um micro, o primeiro boot é sempre um momento de tensão, já que uma fonte com problemas de fábrica, ou algum componente mal encaixado pode causar um pequeno desastre. No meio técnico, ligar o micro pela primeira vez é chamado de "smoke test", ou teste da fumaça, em homenagem ao que pode acontecer caso as coisas dêem errado ;). Hoje em dia, a possibilidade de problemas graves acontecerem por causa de problemas de montagem é relativamente pequena, pois os conectores são todos projetados de forma que uma coisa não encaixe no lugar da outra. Desde que você não deixe nenhuma placa mal encaixada (com os contatos na diagonal, fechando um curto), não ligue um micro com a chave da fonte no 110 em uma tomada 220, nem tente instalar placas com o micro ligado, não existe realmente muita coisa que possa acontecer. O principal problema é a questão dos encaixes, que é o grande martírio dos distraídos. Na maioria dos casos, tentar ligar o micro com uma placa ou um pente de memória mal encaixado vai apenas fazer com que o boot pare com uma das seqüências de bips do BIOS, sem maiores conseqüências, mas é melhor não contar com a sorte. Algumas combinações podem realmente causar tragédias, sobretudo nas placas AGP ou PCI Express. 638
  • 639. Placa AGP mal encaixada: um desastre em potencial Antes de ligar, verifique se tudo está corretamente encaixado. Ao usar gabinetes baratos, cheque duplamente, pois irregularidades no gabinete podem deixar as placas fora de posição. Não é incomum que a placa seja empurrada conforme você aperta o parafuso de fixação, por exemplo. Embora a possibilidade de queimar todo o micro por causa de uma placa mal encaixada ou uma fonte que venha com defeito de fábrica seja relativamente pequena, a lei de murphy existe para nos lembrar que os problemas mais calamitosos podem aparecer onde menos se espera (tem gente que morre escorregando no banheiro...), por isso, cuidado nunca é demais. Afinal, montando micros você está mexendo com componentes que podem muitas vezes custar mais do que um mês de salário. Ao montar micros, o ideal é sempre fazer o teste da fumaça depois de ligar apenas os componentes essenciais (placa-mãe, processador, cooler, memória, teclado e monitor). Se você estiver usando uma placa 3D cara, faça o primeiro teste usando alguma placa de vídeo barata que tiver em mãos. Fazendo isso, se algo calamitoso acontecer, você perde apenas parte dos componentes. Você pode montar a placa-mãe sobre a própria caixa e o plástico antiestático e usar uma chave Philips para ligar a placa, fechando o contato entre os dois 639
  • 640. polos do conector "Power SW" do painel para os botões do gabinete na placa- mãe: Se o primeiro boot ocorrer bem, acesse o setup e cheque as tensões da fonte. Aproveite e dê também uma revisada nas configurações, principalmente as relacionadas com o clock e as tensões utilizadas pelo processador. Ao terminar, desligue o micro e vá instalando os demais componentes, um de cada vez, sempre tomando o cuidado de desligar o micro e desconectar a fonte da tomada antes de cada mudança. Fazendo isso, fica também muito mais fácil detectar problemas. Afinal, se o micro estava funcionando, mas depois de instalar uma placa de captura de vídeo (por exemplo), o monitor fica preto e você passa a ouvir bips de erro, significa que o problema está muito provavelmente relacionado a ela. Se você já tivesse montado todo o micro, teria que começar a testar cada um dos componentes até descobrir o que está errado. Estática A eletricidade estática é um risco constante que paira sobre os profissionais de informática. Embora os riscos reais não sejam tão grandes quanto os manuais podem nos levar a crer, a possibilidade de danos a componentes sensíveis realmente existe. Um dos grande problemas é a falta de informações sobre o tema. Cada técnico parece ter uma opinião diferente e informações folclóricas são propagadas junto com as reais. 640
  • 641. As cargas eletrostáticas surgem naturalmente, principalmente devido a atrito com materiais isolantes (carpete, cabelo, lã, fibra de vidro, etc.). A eletricidade se acumula justamente porque você está isolado do solo (por causa do tênis ou carpete, por exemplo) e ela não tem para onde fluir. Quando você toca em algum objeto metálico, o diferencial elétrico faz com que a eletricidade flua de forma violenta na direção com potencial mais baixo. Dependendo do volume de eletricidade acumulada, a energia pode percorrer até mesmo através de uma camada fina de material isolante ou ar. É por isso que usar luvas de borracha não impedem completamente que você danifique componentes com estática. O plástico anti-estático usado em embalagens de eletrônicos tem uma estrutura um pouco diferente do plástico usado em sacolas plásticas comuns, daí o seu nome. Um exemplo clássico são as nuvens de chuva, que estão separadas do solo por alguns quilômetros de ar. Apesar disso, quando eletricidade suficiente se acumula, surge o raio, uma descarga poderosa o suficiente para vencer a distância. Em ambientes secos, você pode criar um raio em miniatura esfregando uma peça de lã por algum tempo e depois aproximando o dedo de algum objeto metálico, como uma maçaneta. Quando ele estiver bem próximo, você vê uma faísca rápida, que é justamente a descarga eletrostática fluindo do seu corpo para o metal, vencendo a camada de ar que os separa. Nosso corpo é capaz de acumular cargas de milhares de volts. A amperagem é muito baixa, por isso não é suficiente para causar danos a nós ou outras pessoas, mas é mais do que suficiente para causar descargas capazes de danificar circuitos eletrônicos. Como disse, as descargas ocorrem justamente por causa do diferencial elétrico entre o seu corpo e os componentes, de forma que para eliminar o problema com descargas eletrostáticas, basta igualar o potencial elétrico de ambos. Existem no mercado as famosas pulseiras anti-estáticas, que possuem um fio de aterramento destinado a eliminar cargas acumuladas no seu corpo. Elas são baratas, geralmente menos de 20 reais, de forma que é sempre bom ter uma. Ao contrário do que muitos acreditam, o fio da pulseira não precisa necessariamente ser ligado a um fio terra, ela também oferece uma boa proteção se ligada ao gabinete do micro ou a alguma peça metálica da carcaça do notebook onde você vai trabalhar. O objetivo é simplesmente fazer com que o seu corpo e os demais componentes do micro fiquem como mesmo potencial elétrico, eliminando a possibilidade de ocorrerem descargas. Se preferir, você pode primeiro tocar uma grade metálica (não pintada) antes de conectar a pulseira e começar a trabalhar, mas isso não é realmente necessário. 641
  • 642. Pulseira antiestática Se você faz parte dos 99% que não usam a pulseira, vamos à segunda linha de prevenção. Ela consiste em não trabalhar sobre pisos de carpete ou usando roupas de lã e sempre tocar uma grade ou outro objeto de metal ligado ao solo antes de abrir o micro, além de tocar o gabinete constantemente enquanto estiver trabalhando. Também não vale ficar esfregando as mãos no cabelo, pois ele tem uma tendência a acumular cargas positivas maior do que a própria lã. Se as tomadas tiverem aterramento, uma boa coisa a fazer antes de começar a trabalhar é tocar o gabinete com a fonte ainda ligada na tomada. O fio de aterramento é ligado ao corpo da fonte, que por sua vez é parafusada ao gabinete (é por isso que micros ligados em tomadas não-aterradas muitas vezes dão choque). Ao tocar no gabinete, a carga é transferida para ele e o excesso flui através do terra da tomada. Depois disso, você pode desconectar o gabinete da tomada e trabalhar normalmente. Se, por outro lado, as tomadas não são aterradas, não adianta muito fazer isso. O melhor é tocar em uma grade metálica, desligar o gabinete da tomada e cruzar os dedos. Além de todos os cuidados, soma-se a recomendação de sempre trabalhar manuseando os componentes pela borda, evitando ao máximo tocar os chips e contatos metálicos: 642
  • 643. Componentes defeituosos É relativamente comum que peças venham com problemas, seja por defeito de fabricação, seja por danos causados pelo transporte ou manuseio. Em muitos casos a peça simplesmente não funciona, enquanto em outros apresenta problemas de estabilidade ou erros diversos. Não confie que um componente está bom simplesmente porque você acabou de tirá-lo da caixa; sempre procure verificar e testar tudo. Pentes de memória, por exemplo, podem ser facilmente danificados por eletricidade estática quando manuseados. Como um pente é composto por 8 ou 16 chips e cada um possui vários milhões de transístores, o dano costuma ser localizado, afetando apenas um conjunto de células adjacentes. Ao usar o pente, o sistema pode funcionar de forma normal (sobretudo se a área danificada estiver próxima dos últimos endereços lógicos do módulo), porém, quando o sistema operacional ou os programas acessarem a área danificada, você verá erros ou travamentos. Um programa de teste de memória, como o memtest, testa individualmente cada uma das células, indicando até mesmo problemas que aparecem apenas em determinadas situações. Os pentes de memória podem ser danificados também por picos de tensão (que a fonte de alimentação e os circuitos da 643
  • 644. placa-mãe não sejam capazes de atenuar completamente) ou ainda por causa de problemas na fonte ou nos circuitos de alimentação da placa-mãe. Normalmente, os pentes de memória são os primeiros componentes a apresentar problemas em micros sem aterramento, ligados em uma rede elétrica precária ou com problemas na fonte de alimentação. No caso dos HDs, temos o aparecimento de badblocks, que podem ser causados por impactos enquanto os discos estão girando (como no caso clássico do usuário batendo na mesa quando um programa trava), por problemas diversos na rede elétrica ou fonte (assim como no caso dos pentes de memória) ou ainda pelo envelhecimento natural da mídia, que começa a se manifestar após alguns anos de uso. Todo HD moderno possui uma área "extra" chamada de defect map. Ela é usada automaticamente pela placa controladora sempre que setores do disco apresentam erros de leitura. Os setores defeituosos são "remapeados", ou seja, a controladora deixa de usar o setor defeituoso e passa a usar um dos setores da área reservada. Só quando estes setores extra se acabam é que programas de diagnóstico como o scandisk ou o badblocks (no Linux) começam a indicar setores defeituosos no HD, ou seja, a presença de alguns poucos setores defeituosos geralmente indica a presença de um problema mais grave, pois antes deles já vieram muitos outros. Em alguns casos, o problema se estabiliza e o HD pode ser usado por meses sem o aparecimento de novos badblocks, mas em outros o problema pode ser crônico. Em micros de trabalho, o ideal é substituir o HD por outro e transferir o HD com badblocks para um micro usado para tarefas menos importantes. Dispositivos USB Com o aparecimento de todo tipo de carregadores, luzes e gadgets em geral, as portas USB passaram a ser outra fonte de problemas e acidentes. Embora o USB seja um barramento plug-and-play, portas ou periféricos queimados são bem mais comuns do que nas antigas portas seriais e paralelas. O grande problema é que o USB oferece alimentação elétrica aos componentes. A especificação prevê o fornecimento de 0.5 ampere a 5 volts (o que corresponde a 2.5 watts), mas, para manter uma boa margem de tolerância, os fabricantes oferecem muitas vezes portas capazes de fornecer 1 ampere (ou mais, em alguns casos). É por isso que você muitas vezes consegue que uma gaveta para HDs de notebook, projetada para usar o fornecimento elétrico de duas portas USB, funcione perfeitamente com apenas uma. Tanta energia favorece o aparecimento de problemas. Um periférico USB mal projetado, ou um circuito ou conector defeituoso, que provoque um curto ao ser encaixado, pode causar uma pequena tragédia, queimando a porta USB ou até mesmo causando danos adicionais na placa-mãe. Normalmente, isso é acompanhado por um travamento do sistema, que leva embora trabalhos não salvos. 644
  • 645. Com o barateamento dos pendrives, cartões e leitores e a entrada no mercado de toda sorte de periféricos de baixa qualidade, eles também estão se tornando uma fonte comum de problemas, por isso é sempre bom ser precavido e testar qualquer novo periférico USB em um micro antigo, antes de espetá-lo no seu notebook ou micro de trabalho. Softwares Não é comum que softwares causem problemas de hardware, mas não é impossível de acontecer. Um caso famoso foi o instalador do Mandrake 9.2 (http://www.newsforge.com/article.pl?sid=03/10/27/0218209), que acidentalmente usava uma instrução que apagava o firmware de um certo modelo de gravador da LG, inutilizando o equipamento até que o firmware fosse regravado. O vírus Chernobyl (http://www.cert.org/incident_notes/IN-99-03.html), que causou pânico entre 1999 e 2000, apagava o BIOS da placa-mãe, usando funções reservadas aos programas de atualização, novamente inutilizando o equipamento até que o BIOS fosse regravado. As assistências que contavam com gravadores de EPROM foram bastante requisitadas nesta época. Como os componentes modernos possuem cada vez mais firmwares atualizáveis via software, a possibilidade do aparecimento de programas ou vírus que danifiquem (seja acidentalmente ou intencionalmente) o componente, apagando ou danificando o firmware, é cada vez maior. Também é possível (pelo menos em teoria) que um software cause danos forçando a leitura repetitiva de alguns poucos setores de um pendrive ou cartão de memória, até que as células sejam danificadas, por exemplo. Como a velocidade de rotação dos coolers e até mesmo a freqüência de operação da placa-mãe e diferentes barramentos podem ser controladas via software na grande maioria das placas modernas, também não é impossível que um software consiga causar danos ou travamentos ao forçar um overclock excessivo ou causar superaquecimento, reduzindo a velocidade de rotação dos coolers. Enfim, embora seja extremamente raro, não é impossível que danos de hardware sejam causados via software, de forma que esta possibilidade também não deve ser descartada completamente. Conectores de força Embora seja um assunto básico, existem atualmente tantos conectores de força diferentes que é sempre bom dar uma revisada, até para que você conheça os nomes e um pouco sobre a história de cada um. Na foto a seguir temos o conector berg, usado pelo drive de disquetes, e o conector molex, que usamos para o HD e outros dispositivos. Ambos possuem 4 fios (12V, 5V e dois neutros). A grande diferença entre os dois é mesmo o tamanho e a forma de encaixe. O molex é o conector mais usado em qualquer PC atual. Além de ser usado pelos HDs, drives ópticos e outros periféricos, ele 645
  • 646. é usado como fonte de energia auxiliar em algumas placas 3D AGP. O conector berg, por sua vez, está caindo em desuso, junto com os drives de disquete; normalmente as fontes incluem apenas um: Conector berg (à esquerda) e conector molex O conector molex tem um formato semitriangular, que impede que ele seja encaixado invertido. Entretanto, o conector pode ser muito duro de encaixar ou retirar, o que acaba causando acidentes. Imagine que você está segurando o HD com uma mão e tentando puxar o conector com a outra; como está muito duro, você faz força e, quando o conector finalmente se solta, você acaba sem querer batendo o HD em cima da mesa :-O. Nesses casos, o melhor é deixar o HD fixo no gabinete (ou outro local firme) e puxar o conector com cuidado, com a ajuda de um alicate, caso necessário. O problema com o conector berg e os drives de disquetes é que geralmente não existe nada que impeça que você o encaixe de forma invertida. A boa notícia é que isso não queima o drive, apenas faz com que ele não funcione. Ele simplesmente fica com a luz de leitura acesa continuamente, até que você desvire o cabo de força, similar ao que acontece ao ligar o drive com o cabo de dados invertido. Em seguida temos um conector de força SATA, de 15 pinos, que substituiu o molex nos HDs e nos outros periféricos SATA. Veja que o conector da direita é alimentado por 5 fios, em vez de 4, como no molex. O quinto fio disponibiliza a tensão de 3.3V, que não é oferecida pelo molex. Além disso, o conector SATA é mais fino e o encaixe é mais suave. Como as fontes oferecem apenas um, dois ou mesmo nenhum conector de força SATA, existem adaptadores molex > SATA, geralmente fornecidos junto com os drives. O problema destes adaptadores é que eles não incluem o fio de 3.3V, 646
  • 647. por isso estão condenados a entrar em desuso conforme apareçam drives projetados para usar a tensão: Conector SATA (à direita) e cabo adaptador molex > SATA Muitos HDs SATA possuem tanto o conector de força SATA quanto um conector molex, permitindo que você use um ou outro de acordo com a conveniência. Nesses casos, não existe nenhum prejuízo para o drive em usar o conector molex no lugar do conector SATA. Em seguida temos o conector ATX, que alimenta a placa-mãe. Existem duas versões: a original, com 20 pinos, que utilizamos desde o Pentium II e a versão atualizada (chamada de ATX24 ou ATX v2), com 24 pinos, que utilizamos nas placas atuais. O conector ATX de 24 pinos nada mais é do que o antigo conector de 20 pinos acrescido de mais 4 à esquerda. Nada muda na posição ou no encaixe dos anteriores, de forma que as fontes geralmente usam conectores de 24 pinos destacáveis, onde você pode remover o conector com os 4 pinos adicionais quando precisar usar a fonte em conjunto com uma placa antiga: 647
  • 648. Você pode perguntar qual a necessidade de adicionar 4 novos pinos ao conector, se eles transportam as mesmas tensões de 12V e 5V já presentes nos anteriores. O principal motivo não tem a ver com a pinagem em si, mas simplesmente com a capacidade de fornecimento da fonte. As fontes antigas possuem geralmente 300 ou 350 watts, que são insuficientes para muitos micros atuais. Para evitar acidentes, os fabricantes decidiram introduzir o novo conector, de forma a dificultar o uso das fontes antigas. De qualquer forma, existem no mercado adaptadores que transformam um conector ATX de 20 pinos em um ATX24 ou convertem um conector molex nos 4 pinos adicionais. Em seguida temos o P4, um conector auxiliar, com 4 pinos, destinado a fornecer energia extra para o processador. Ele sempre está disponível bem ao lado do soquete do processador, alimentando diretamente os reguladores de tensão que fornecem energia para ele. Isso evita que toda a eletricidade consumida pelo processador tenha que ser transportada desde o conector ATX, através de trilhas na placa-mãe. O conector P4 é composto de 2 fios amarelos (12V) e 2 pretos (neutro). Na maioria das placas-mãe com o conector, ele é obrigatório; a placa simplesmente não liga se ele estiver desconectado. Em algumas placas antigas, existem dois encaixes, de forma que você pode escolher entre usar o conector P4 ou um conector molex (de forma a manter a compatibilidade com fontes antigas) e, finalmente, existem algumas placas antigas, onde o conector P4 está disponível, mas a placa pode funcionar com ele desconectado, dependendo do consumo do processador usado. Na foto a seguir temos o conector P4, ao lado do conector de 3 pinos usado pelo cooler. 648
  • 649. Conector P4 (à esquerda) ao lado do conector de energia do cooler Note que, embora seja possível encaixar o conector destacável de 4 pinos do conector ATX no encaixe para o conector P4, fazer isso danificaria a placa- mãe, pois ambos possuem pinagens diferentes. Não tente fazer isso: Kabum! :) O conector P4 possui ainda uma versão com 8 pinos, usada por algumas placas. Apesar do aumento no número de pinos, o conector continua usando apenas fios de 12V e GND. Poucas fontes oferecem esta saída de 8 pinos, 649
  • 650. mas existem adaptadores que convertem um conector P4 de 4 pinos em um de 8. Conector P4 (à direita) e a versão com 8 pinos Embora um slot PCI Express 16x seja capaz de fornecer até 75 watts de energia para a placa de vídeo, muitas placas topo de linha vão muito além desta marca, exigindo o uso de um conector auxiliar. Na época das placas AGP, era normalmente utilizado um conector molex, mas as placas PCI Express ganharam um conector de 6 pinos próprio para a tarefa. Sem o conector encaixado, a placa pode trabalhar em modo de funcionalidade reduzida, operando a uma freqüência mais baixa ou com recursos desabilitados, ou simplesmente se recusar a funcionar, impedindo o boot. Conector de força auxiliar em uma placa 3D PCI Express Fontes de 700 watts ou mais possuem, normalmente, dois conectores PCIe de 6 pinos, prevendo o uso de duas placas em SLI ou Crossfire, mas fontes mais baratas podem ter apenas um ou nenhum. Nesses casos, é possível usar um 650
  • 651. adaptador, ligado a um conector molex. Lembre-se de calcular a capacidade da fonte ao tentar usar uma fonte barata qualquer em conjunto com placas 3D mais gulosas, sobretudo ao usar duas em SLI! Uma fonte operando além do limite, pode realmente explodir, danificando suas placas. Se você não tem dinheiro para comprar uma fonte de 700 watts ou mais, não deve pensar em comprar placas 3D de ponta em primeiro lugar. Adaptador molex > PCI Express Concluindo, as antigas fontes AT forneciam energia para a placa-mãe através de dois conectores de 6 pinos, chamados de P8 e P9. Os dois conectores devem ser ser encaixados com os fios pretos no centro, pois ao inverter você pode queimar a placa-mãe. Um dos fatores que impulsionaram o desenvolvimento do padrão ATX, foi justamente o grande número de acidentes de montagem causados por eles: Conectores de força em uma placa-mãe antiga, padrão AT 651
  • 652. Dicas de compra Antigamente existia a polêmica entre os "PCs onboard" e os "PCs offboard", mas atualmente praticamente todas as placas trazem som e rede onboard. Isso acontece por que tanto as placas de som quanto as de rede atingiram um "pico evolutivo" há alguns anos, onde deixou de existir uma grande diferença "prática" de performance e qualidade entre as placas que justificasse gastar mais por uma placa offboard na maioria dos casos. Uma placa de rede offboard da 3Com ou Intel pode oferecer pequenos ganhos de desempenho, um certo ganho de estabilidade do sinal ou uma utilização do processador um pouco mais baixa durante as transferências se comparada a um chipset Realtek onboard, mas se formos comparar a rede onboard com uma placa de rede offboard barata, como uma Encore 10/100 baseada no chip VIA Rhine 6105, por exemplo, é bem provável que a placa onboard seja superior, principalmente se considerarmos que a maioria das placas-mãe atuais trazem rede gigabit, com o chipset de rede ligado diretamente ao barramento PCI-Express, evitando assim o gargalo do barramento PCI. Algo similar acontece no caso do som onboard. Desde as Sound Blaster 16 ISA as placas de som atingiram um nível de qualidade sonora a partir do qual a maioria das pessoas não consegue perceber diferenças consideráveis de uma placa para a outra. As placas evoluíram em muitos sentidos, naturalmente, incorporando suporte a múltiplos fluxos de áudio, suporte a taxas de amostragem mais altas, recursos 3D e assim por diante, mas a característica básica, que é a qualidade do som ao ouvir música não mudou muito desde então. Ela depende mais da qualidade dos circuitos analógicos e dos conectores (além da qualidade dos fones ou das caixas de som, obviamente) usados do que do chipset propriamente dito. Atualmente podemos classificar a maioria dos chipsets de som onboard em duas categorias: As placas que seguem o antigo padrão AC'97 a as placas compatíveis com o padrão Intel HDA (High Definition Audio), que oferecem suporte a oito canais de áudio independentes com 32 bits de definição e taxa de amostragem de 192 kHz, contra 6 canais (20 bits, 48 kHz) do AC'97. Assim como no caso das placas de rede, existem placas de som offboard de alta qualidade, destinadas ao público entusiasta e ao uso profissional. Elas oferecem uma variedade maior de saídas e uma qualidade geral melhor, mas a maioria das pessoas não percebe diferença na qualidade do som e acaba não utilizando os recursos adicionais. É por isso que as tradicionais placas de som da Creative, incluindo as Audigy e as X-Fi, não são nem de longe tão populares quanto antigamente. Naturalmente, o mesmo não se aplica na questão das placas 3D, onde as offboard ainda reinam absolutas. De uma forma geral, as placas de vídeo onboard possuem duas limitações crônicas. A primeira é o fato do chipset de vídeo ser integrado à ponte norte do chipset, o que traz limitações no volume de transístores e também na freqüência de operação. Isso limita os projetos de vídeo onboard a soluções simplificadas, 652
  • 653. que não têm como concorrer diretamente nem mesmo com as placas offboard low-end. Mesmo uma GeForce 6200 TC, que é a placa mais lenta e barata dentro da linha GeForce 6, é de duas a seis vezes mais rápida do que uma Intel GMA 950 onboard (variando de acordo com a aplicação). Uma GeForce 8800 GTX atual é mais de 10 vezes mais rápida do que uma 6200 TC (até 20 vezes mais rápida em algumas situações), de forma que por aí você você pode ter uma idéia das proporções. A segunda limitação é a questão da memória. Placas 3D offboard utilizam memória dedicada, enquanto as placas onboard precisam compartilhar a memória principal com o processador e os demais periféricos do micro. Com a popularização dos módulos DDR2 (e DDR3) e de placas com dual- channel, o barramento com a memória foi ampliado sensivelmente, o que beneficiou as placas onboard. A questão é que as placas offboard evoluíram na mesma proporção, se mantendo muito à frente. Uma GeForce 8800 Ultra possui um barramento de 103.7 GB/s com a memória, enquanto dois módulos DDR2 PC2-6400 em dual-channel oferecem um barramento teórico de 12.8 GB/s (quase 10 vezes menos, e com tempos de latência mais altos), que precisam ser compartilhados entre a placa de vídeo onboard, o processador e os demais periféricos. A principal questão é que nem todo mundo usa o PC para jogos e mesmo entre os que usam, muitos rodam títulos antigos ou se contentam em jogar com resoluções mais baixas e com efeitos desativados. É impressionante o volume de pessoas que ainda jogam Counter Strike e Diablo 2 em pleno ano de 2007. :) Isso cria situações curiosas. O maior fabricante de chipsets de vídeo 3D (em volume) é a Intel, que não fabrica uma única placa offboard desde 1998. Apenas vendendo chipsets com diferentes versões do chipset Intel GMA onboard, eles vendem um número maior de chipsets 3D do que a nVidia e a ATI juntas. Uma solução para o desenvolvimento de placas com vídeo onboard de alto desempenho seria integrar chipsets de vídeo e chips de memória dedicada, solução que poderia oferecer o mesmo desempenho de uma placa offboard baseada no mesmo chipset de vídeo. A questão principal neste caso seria o custo. Mais de 80% do custo de produção de uma placa 3D correspondem justamente ao chipset 3D e os chips de memória. Integrá-los diretamente na placa-mãe ofereceria alguma economia de custos relacionada ao aproveitamento de espaço no PCB e compartilhamento de alguns dos circuitos de regulagem de tensão, mas na prática a economia seria pequena demais para justificar a perda da possibilidade de atualizar a placa de vídeo. Isso fez com que a velha fórmula de usar um chipset de vídeo low-end integrado ao chipset, utilizando memória compartilhada, prevalecesse. De certa forma, isso é bom, pois você pode comprar uma placa-mãe com vídeo onboard pagando pouca coisa a mais e instalar uma placa offboard apenas se precisar. 653
  • 654. Uma questão interessante é que as placas sem vídeo onboard custam freqüentemente mais caro do que os modelos com. Isso acontece por que as placas sem vídeo onboard são tipicamente placas full-ATX ou mini-ATX, com 6 ou 7 slots, destinadas ao público entusiasta, enquanto as placas com vídeo onboard são tipicamente modelos micro-ATX, com menos slots de expansão, destinadas ao mercado de placas de baixo custo. Concluindo, temos também a questão dos modems. Embora os modems estejam caindo em desuso, quase todos os chipsets VIA, SiS e nVidia ainda trazem um controlador de modem integrado. Entretanto, ficam faltando os componentes analógicos, que podem ser instalados através de um riser AMR ou CNR. A maioria dos fabricantes não inclui mais estes slots, já que eles tomam o lugar de um slot PCI ou PCI Express e atualmente, apenas algumas placas da PC- Chips, ECS e Phitronics trazem o "kit completo", com tanto o slot AMR quanto o riser. Como a qualidade dos modems PCI decaiu bastante na última década, com os antigos hardmodems dando lugar a softmodems cada vez mais baratos, muitas vezes o modem onboard oferece uma qualidade até superior. Processador Uma questão interessante sobre os processadores é que os preços são definidos de forma a maximizar os lucros do fabricante dentro de cada categoria de preço e não de acordo com a performance relativa. Em muitos casos, modelos de baixo custo podem ser vendidos com prejuízo, com o objetivo de ganhar volume, ou simplesmente evitar que o concorrente ganhe espaço, enquanto os processadores mais rápidos de cada família são vendidos a preços astronômicos, de forma a maximizar os lucros entre o público que quer o melhor desempenho a qualquer custo. Outra variável importante é a questão do overclock. O processador A pode operar a 2.0 GHz, enquanto o processador B opera a 2.66 GHz. Naturalmente o processador B é mais caro, mas ambos compartilham a mesma arquitetura, de forma que a freqüência que ambos podem atingir na prática é muito similar. Você pode então economizar comprando o processador A e fazer overclock para 2.66 GHz ou mais, obtendo o desempenho do processador B por uma fração do custo. Investindo a diferença em uma placa-mãe e cooler melhores, mais memória e assim por diante, você acaba com um PC de configuração superior gastando o mesmo. Para quem faz overclock, quase sempre a melhor opção em termos de custo- benefício é comprar o processador mais lento dentro da família e aumentar a freqüência até o máximo que ele suportar mantendo a estabilidade. Em alguns casos, o segundo modelo (o de 2.2 GHz em vez do de 2.0 GHz, por exemplo) pode custar apenas um pouco a mais e suportar freqüências um pouco superiores, ou permitir que você obtenha a mesma freqüência utilizando um FSB mais baixo na placa-mãe (e com isso uma maior estabilidade), de forma que ele pode passar a ser a melhor opção. 654
  • 655. O processo de litografia usado na fabricação dos processadores faz com que dois processadores nunca sejam exatamente iguais. Pequenas diferenças no foco das máscaras fazem com que alguns processadores fiquem mais "perfeitos" que os outros, o que faz com que alguns suportem overclocks maiores. Mesmo comparando dois processadores da mesma série e produzidos na mesma época (ou até mesmo dois processadores que compartilharam o mesmo wafer), você perceberá que sempre um deles é capaz de atingir freqüências um pouco superiores ao outro. Um bom overclock também depende um pouco da sorte. Nos primeiros degraus da tabela, os preços crescem de forma mais ou menos proporcional. Entretanto, a partir de um certo ponto a subida se intensifica e você passa a pagar uma diferença cada vez maior por cada degrau a mais de desempenho. Se o processador B custa 50% a mais que o processador A, em troca de um aumento de apenas 10% na freqüência, é muito difícil justificar a compra, por mais que você precise de um PC mais rápido. Um erro comum que as pessoas cometem ao montar o micro é gastar mais para montar "um micro que dure". Isso é uma ilusão, pois qualquer PC que você monte hoje vai estar desatualizado daqui a dois anos. O melhor a fazer é escolher componentes que atendam às suas necessidades mais imediatas, escolhendo componentes que ofereçam possibilidades de upgrade, gastando menos e assim já se preparando para as próximas atualizações. Aqui temos uma tabela com os preços dos processadores Intel, em julho de 2007, que podemos usar como exemplo. Os preços aqui no Brasil variam muito de acordo com a loja, por isso estou usando a tabela com os preços oficiais, nos EUA. A idéia é apenas mostrar as proporções, não oferecer um guia de preços: Celeron 420 (1.6 GHz) $50 Celeron D 352 (3.2 GHz) $57 Celeron 430 (1.8 GHz) $59 Celeron 440 (2.0 GHz) $70 Pentium E2140 (1.6 GHz) $89 Pentium E2160 (1.8 GHz) $96 Core 2 Duo E4300 (1.8 GHz) $117 Core 2 Duo E4400 (1.8 GHz) $139 Core 2 Duo E6300 (1.86 GHz) $164 Pentium D 945 (3.4 GHz) $185 Core 2 Duo E6400 (2.13 GHz) $186 Core 2 Duo E6600 (2.4 GHz) $223 Core 2 Duo E6700 (2.66 GHz) $318 Core 2 Quad Q6600 (2.4 GHz) $480 Core 2 Extreme QX6700 (2.66 GHz) $968 Core 2 Extreme X6800 (2.93 GHz) $975 Olhando a tabela, você poderia se sentir tentado a comprar um Celeron D 352 ou um Pentium D 945, mas isso não seria uma boa idéia, pois o desempenho deles é inferior ao do Celeron 430 e do Core 2 Duo E6400, que custam na mesma faixa de preço. Eles seriam apenas uma opção de upgrade para quem 655
  • 656. possui uma placa-mãe soquete 775 antiga, que não é compatível com os processadores da plataforma Core. Imagine que você se decidiu por um Core 2 Duo E6600, por exemplo. Ele ainda não está na "zona vermelha", onde os preços começam a subir de forma desproporcional, mas também não é um processador barato. Se você puder se contentar com um processador apenas um pouco mais lento, você poderia comprar um Celeron 430 que custa menos de um terço do preço e fazer um overclock modesto para 2.39 GHz (usando bus de 266 MHz ao invés dos 200 MHz padrão), ou mesmo ir mais longe (já que ele pode trabalhar estavelmente a 2.8 GHz ou mais com a ajuda de um bom cooler). Se você faz questão de um processador dual-core, poderia comprar um Pentium E2140 e fazer overclock para 2.4 GHz (usando bus de 300 MHz). Em ambos os casos, você terá um desempenho um pouco inferior ao do E6600 (o Celeron é single-core e o Pentium E tem menos cache), mas em compensação vai gastar muito menos. Depois de um ano, os preços tendem a cair em pelo menos 30%, de forma que, mesmo que você optasse por atualizar o processador, acabaria gastando menos do que pagaria inicialmente apenas pelo E6600. O Celeron ou Pentium E usado poderia ser vendido e assim ajudar a financiar o próximo upgrade. O processador é um bom componente onde economizar, pois ele pode ser substituído facilmente. O mesmo não se aplica à placa-mãe, que é o componente "base" do PC. Se você vai montar um micro de baixo custo, o melhor é comprar o processador mais barato dentro da arquitetura atual (como o Celeron 420, no caso da plataforma Core) e investir a diferença na placa- mãe. Se sobrar um pouco de dinheiro, também compensa investir um pouco mais no cooler. A placa-mãe é o componente mais importante, pois vai ser o que você vai aproveitar ao longo de mais upgrades. O cooler é também um bom lugar para investir alguns trocados, pois um bom cooler permite que você obtenha overclocks maiores, o que ajuda a amenizar a falta de desempenho do processador. O overclock sempre reduz a vida útil do processador, mas isso não é um problema se você tiver planos de trocá-lo depois de um ano, por exemplo. A memória RAM também influencia diretamente o desempenho do micro, pelo simples fato de que sem memória RAM suficiente o sistema passa a usar memória swap. Por outro lado, a memória é um componente facilmente atualizável, por isso você pode optar por usar um único módulo de 1 GB, por exemplo e deixar para comprar o segundo (para completar 2 GB e ativar o dual-channel) quando tiver dinheiro ou precisar de mais memória. É sempre recomendável usar dois módulos idênticos em dual-channel, mas isso não é uma regra. Dois módulos diferentes podem funcionar perfeitamente, desde que você deixe a placa-mãe ajustar a temporização automaticamente ou ajuste os tempos de forma que correspondam aos do módulo mais lento. Se você está montando um micro para jogos, então a placa 3D passa a ser o item mais importante, seguido do processador, memória e HD. Na maioria dos 656
  • 657. jogos, o desempenho da placa 3D torna-se um gargalo muito antes do desempenho do processador, de forma que é preferível comprar uma placa 3D mediana e um processador low-end do que o contrário. Ao usar uma placa 3D offboard, dê uma olhada nas placas-mãe sem vídeo onboard. Elas podem custar o mesmo ou até um pouco mais caro que os modelos populares com vídeo, mas com certeza você leva outros recursos em troca do vídeo onboard que não vai usar. As placas baseadas nos chipsets nForce costumam ser boas opções. Existe uma pequena diferença de preço entre os processadores boxed (ou retail) e os OEM (tray). Antigamente, se especulava sobre diferença de qualidade entre os dois tipos, já que os boxed são destinados à venda direta ao consumidor, enquanto os OEM são destinados a integradores, mas atualmente isso não existe. A vantagem dos boxed (fora a caixa, que você vai jogar no lixo depois de abrir) é que eles vêm com o cooler, o que pode justificar a diferença de preço. Entretanto, o cooler é sempre um modelo simples, apenas bom o suficiente para refrigerar o processador à freqüência nominal. Se você pretende fazer overclock, prefira comprar um processador OEM e um cooler de melhor qualidade. Memória Os módulos de memória podem ser divididos em três categorias: módulos "genéricos", sem marca, módulos de marcas conhecidas, como Kingston, Micron, Corsair, Samsung, etc. e módulos "premium", que oferecem tempos de acesso mais baixos, suportam freqüências de clock mais elevadas e/ou possuem dissipadores avantajados, que facilitam o overclock. De uma forma geral, a diferença de preço entre os módulos genéricos e os módulos das marcas conhecidas é muito pequena, inferior a 10% na grande maioria dos casos, por isso acaba valendo mais à pena evitar os genéricos. Não que eles sejam necessariamente ruins. Em muitos casos, são usados os mesmos chips usados em módulos de marcas conhecidas, muitas vezes com a mesma qualidade de fabricação e acabamento. O mercado de fabricação de módulos de memória é incrivelmente concorrido, de forma que os fabricantes que produzem produtos inferiores, ou que possuem margens de defeitos acima da média, acabam não sobrevivendo muito tempo. A principal questão é que comprando módulos genéricos a possibilidade de dar o azar de comprar um módulo ruim é maior, já que estamos falando de fabricantes que trabalham com margens de lucro incrivelmente apertadas e se engalfinham por qualquer centavo a menos no preço de venda. Fabricantes conhecidos trabalham com preços um pouco acima da média e por isso podem se dar ao luxo de ter melhores sistemas de controle de qualidade e oferecerem garantias maiores. Os módulos "premium", por sua vez, raramente são uma boa opção de compra, pois a diferença de preço é muito grande, podendo chegar a 100% ou mais em 657
  • 658. relação a módulos genéricos da mesma capacidade e o pequeno ganho de desempenho não compensa o investimento. Módulos premium são compostos por chips escolhidos durante a fase inicial de testes, antes que eles sejam soldados aos módulos. Assim como nos processadores, alguns chips de memória são capazes de operar a freqüências mais altas que outros. Isso acontece devido a pequenas diferenças no foco das lentes de litografia. Combinando estes módulos escolhidos a dedo com um controle de qualidade mais rigoroso e dissipadores mais eficientes fazem com que estes módulos realmente se destaquem. O grande problema é que os fabricantes aproveitam o hype e o limitado volume de produção para os venderem a preços muitos mais altos. Comprar módulos premium é como comprar roupas de grife. A qualidade normalmente é um pouco superior, mas a grande diferença de preço não compensa. OCZ Reaper, um exemplo de módulo "premium" Talvez você se sinta melhor tendo um par de módulos Corsair Dominator ou OCZ Reaper dentro do gabinete e talvez até possa mostrá-los aos amigos, mas se a idéia é melhorar a boa e velha relação custo benefício, então você aproveitaria melhor seu dinheiro investindo em uma placa 3D melhor, em processador um pouco mais rápido, ou em uma placa-mãe com mais recursos. Em seguida temos a questão da freqüência e tempos de acesso. Em casos em que o vendedor é bem informado, ele mesmo pode lhe fornecer as informações, caso contrário você acaba sendo obrigado a pesquisar pelo código de identificação decalcado no módulo ou pelo código de identificação do 658
  • 659. fabricante. Nos módulos da Kingston, por exemplo, você encontra um código como "KVR533D2N4/512" na etiqueta de identificação do módulo: Uma pesquisa rápida no http://kingston.com mostra o significado do código: A sigla "KVR" indica a linha de produtos da qual o módulo faz parte, neste caso a "ValueRAM", a linha de módulos de baixo custo da Kingston. Em seguida temos a freqüência de operação suportada pelo módulo. No caso do módulo da foto, temos um "533", que indica que ele é um módulo DDR2-533. Depois do "D2N", que indica que é um módulo DDR2, sem ECC, temos o número que indica o tempo de latência, que no módulo da foto é de 4 tempos. A letra "K" (quando presente) indica que o módulo faz parte de um kit, com duas ou quatro peças, destinado a uso em uma placa dual-channel, enquanto os últimos dígitos indicam a capacidade do módulos, como em "512", "1G", "2G" ou "4G". 659
  • 660. Ao comprar, você deve, naturalmente, dar preferência aos módulos com freqüência de operação mais alta e tempos de latência mais baixos, desde que isso não implique em um aumento significativo de preço. Infelizmente, nos módulos de baixo custo as duas coisas andam juntas, de forma que os módulos com freqüências mais altas possuem quase sempre tempos de latência também mais altos, já que é mais fácil aumentar a freqüência de operação do módulo do que reduzir o tempo "real" de acesso, representado pelo tempo de latência. A partir dos módulos DDR2, o tempo de acesso tem um impacto mais direto sobre o desempenho do que a freqüência de operação. Isso acontece não apenas porque tempos de acesso mais baixos permitem que o processador inicie as leituras em menos ciclos de clock, mas também por que eles tem uma influência direta sobre a taxa de transferência efetiva do módulo. Em um módulo com CAS 5 e RAS to CAS delay 5, por exemplo, um acesso a um endereço qualquer do módulo demoraria um total de 10 ciclos. Após este ciclo inicial, o controlador pode realizar um burst de mais 7 leituras (8 no total), onde cada uma demora apenas mais meio ciclo. No final os 8 acessos demorariam 13.5 ciclos, 10 dos quais são referentes ao acesso inicial. Em um módulo com CAS e RAS to CAS delay de 4 tempos, o ciclo inicial demoraria apenas 8 ciclos, o que permitiria realizar as 8 leituras em apenas 11.5 ciclos. HDs Assim como no caso dos processadores, o custo dos HDs cresce conforme aumenta a capacidade e o desempenho. Em geral, as lojas possuem algum modelo de baixa capacidade (destinado a quem simplesmente quer um HD o mais barato possível, sem ligar para a capacidade ou o desempenho) apenas um pouco mais barato que o seguinte, uma série de HDs com capacidades e preços mais ou menos proporcionais e, em seguida, um ou dois modelos de grande capacidade, que custam muito mais caro. Nos dois extremos, você pode encontrar um HD de 40 GB de alguma série antiga por R$ 120 e um de 1 TB por R$ 1800 (por exemplo), duas opções obviamente ruins. Dentro da faixa intermediária, você poderia encontrar um HD de 160 GB por R$ 200, um de 250 GB por R$ 300 e 400 GB por R$ 460, onde o custo por megabyte é parecido e a escolha depende mais dos detalhes de cada modelo e do volume de dados que você precisa armazenar. Uma dica geral é que normalmente é mais vantajoso comprar um HD que atenda com uma certa folga as suas necessidades imediatas e deixar para comprar um segundo HD daqui a um ano ou dois, quando precisar de mais espaço do que tentar comprar o maior HD possível. Acontece que o preço por megabyte dos HDs costuma cair pela metade a cada 12 ou 18 meses, de forma que você pode comprar (por exemplo) um HD de 250 GB hoje e um HD de 750 GB daqui a um ano pagando menos do que pagaria inicialmente por um único HD de 750 GB. Se você só vai precisar de 750 GB de espaço daqui a um ano, não existe por que pagar por eles agora. Deixe os preços caírem. Lembre-se de que o tempo está a seu favor. 660
  • 661. Em seguida temos a questão do desempenho. No capítulo sobre HDs estudamos os principais quesitos que determinam o desempenho dos HDs. Também não é difícil encontrar benchmarks comparando o desempenho de diversos modelos em diversas aplicações. Um HD mais rápido ajuda sobretudo no carregamento de programas pesados e arquivos grandes e também reduz o tempo de carregamento dos jogos mais atuais, que carregam um grande volume de dados e texturas. O tempo de boot também está diretamente relacionado ao desempenho do HD, mas nesse caso o tempo de acesso acaba sendo mais decisivo do que a taxa de leitura sequencial, já que durante o carregamento do sistema são lidos um grande número de arquivos pequenos. A principal questão sobre o desempenho do HD é que ele nem sempre é tão importante quanto se imagina. Aumentar a quantidade de memória RAM instalada, permitindo que o sistema faça mais cache de disco e reduza o volume de memória virtual usada tem, quase sempre, um impacto mais positivo sobre o desempenho do que simplesmente usar um HD mais rápido, sobretudo ao usar um sistema operacional gastador, como o Vista, ou rodar aplicativos pesados. Atualmente, a grande maioria dos HDs destinados ao mercado doméstico são modelos de 7200 RPM. Inicialmente eles eram mais barulhentos, consumiam mais energia e trabalhavam com temperaturas de operação muito mais altas que os de 5400 RPM, o que trazia até mesmo problemas relacionados à durabilidade. Entretanto, com a maturação da tecnologia os HDs de 7200 RPM atuais são muitas vezes mais silenciosos do que os modelos de 5400 RPM e três ou quatro anos atrás. A durabilidade também melhorou, a ponto da Samsung passar a oferecer 3 anos de garantia e a Seagate oferecer 5 anos (nos EUA). Este da foto, por exemplo, é um Samsung SpinPoint T166, um modelo de 500 GB e 7200 RPM, com interface SATA/300. Ele possui 16 MB de buffer, suporte a NCQ, tempo de busca de 8.9 ms e consumo de 7.1 watts quando ocioso e 11.3 watts durante as operações de gravação: 661
  • 662. Seu concorrente direto seria o Seagate Barracuda 7200.10, que também é um modelo de 500 GB, com 3 platters, 7200 RPM, interface SATA/300, suporte NCQ e 16 MB de buffer. As especificações mencionam um tempo de busca de 11 ms, consideravelmente mais alto que o do SpinPoint T166, mas nos benchmarks os dois ficam virtualmente empatados, o que mostra que as especificações não contam a história completa. Uma implementação mais eficiente do NCQ pode compensar um tempo de busca mais alto, por exemplo. Em julho de 2007, o Barracuda 7200.10 custa US$ 119 nos EUA e o Samsung custa US$ 109, quase 10% mais barato. Entretanto, a Seagate oferece 5 anos de garantia, contra 3 anos da Samsung, o que acaba equilibrando as coisas. No Brasil, o tempo de garantia pode variar por uma série de fatores. Em primeiro lugar, podem existir diferenças na política do fabricante de acordo com o país, baseado em fatores diversos. Em seguida temos a questão da procedência. Os HDs vendidos legalmente, com a garantia do fabricante, sempre possuem pelo menos um ano de garantia (na maioria dos casos 2 anos ou mais). O problema é que muitas lojas vendem HDs que entram no país de forma irregular, que não podem ser trocados facilmente. Neste caso a própria loja precisa arcar com o prejuízo dos HDs trocados dentro da garantia e naturalmente vai oferecer uma garantia menor, de apenas 3 ou 6 meses, por exemplo. Outro problema aqui no Brasil é que os preços variam muito de acordo com o fornecedor e você nem sempre encontra o modelo que procura. Muitas vezes você acaba tendo que comprar o modelo B porque o fornecedor não tinha o modelo A, ou o estava vendendo por um preço mais alto. 662
  • 663. Finalmente, temos a questão dos HDs refurbished (remanufaturados) que são um problema mais grave. Assim como no caso de notebooks, palmtops, celulares, placas-mãe e outros dispositivos, os fabricantes de HDs são capazes de recuperar grande parte dos HDs trocados dentro do período de garantia. Estes HDs recuperados são vendidos novamente a um preço mais baixo, já que são basicamente componentes defeituosos, muitas vezes já com algum tempo de uso, que foram reparados e agora estão sendo vendidos novamente. Grande parte dos produtos de informática vendidos no Brasil vem de um pequeno país que faz fronteira com o estado do Paraná, o que não é segredo para ninguém. Lojas sediadas lá, como a master10.com e a navenet.com divulgam as listas de preço nos sites, o que, mesmo que você não pretenda fazer compras no país vizinho, é um material de pesquisa interessante. Os HDs e outros periféricos remanufaturados são marcados nas listas de preços com a sigla "REF" ou simplesmente com a letra "R", como neste exemplo: É interessante consultar as listas de vez em quando, ver as marcas e os modelos com maior oferta de modelos refurbished e evitá-los na hora da compra. Em primeiro lugar, o fato de um determinado produto ter uma grande oferta de unidades remanufaturadas não é um bom sinal, já que significa que estão dando defeito e sendo substituídos em grande quantidade. Em segundo lugar, grande parte dos produtos vendidos no Brasil são provenientes justamente destas lojas, de forma que se elas estão vendendo unidades remanufaturadas de um determinado modelo (e mais barato), significa que são justamente elas que estarão em breve à venda em muitas lojas, com a diferença de que raramente vão lhe avisar de que se trata de uma unidade remanufaturada. Em muitos casos é possível reconhecer HDs remanufaturados verificando os valores do SMART (como vimos no capítulo sobre HDs), já que eles terão contagens mais altas de setores remapeados, erros de leitura, horas de uso e 663
  • 664. ciclos de inicialização. Entretanto, isso nem sempre se aplica, pois muitas vezes os dados do SMART são zerados durante o processo de recuperação. Normalmente os fabricantes incluem indicativos nos HDs remanufaturados. A Seagate utiliza uma etiqueta de identificação específica, onde a borda é verde e é incluída a frase "Certified Repaired HDD" bem abaixo do logo da empresa: Temos em seguida a questão do RAID. A maioria das placas atuais oferece suporte a RAID nas portas SATA, de forma que você acaba não precisando gastar nada a mais do que o próprio custo dos HDs. Você pode melhorar o desempenho adicionando um segundo HD e criando um sistema RAID 0. O problema é que com isso você reduz a confiabilidade geral, já que a falha de um dos dois HDs faz com que todos os dados sejam perdidos. Se você não armazena um grande volume de dados, usa o micro só pra jogos, por exemplo, a idéia pode ser interessante, já que nesse caso o desempenho é mais importante que a confiabilidade. O problema é que nesse caso você provavelmente também não vai precisar de muito espaço de armazenamento, de forma que comprar um segundo HD acaba sendo um desperdício. Comprar dois HDs antigos, de baixa capacidade, também não é uma opção tão boa, pois o desempenho "por cabeça" será muito inferior ao de um HD atual, de forma que mesmo juntos, os dois poderão oferecer um desempenho similar, ou até mesmo inferior. Outro segredo sobre o RAID 0 é que embora a taxa de transferência melhore, já que os dados são espalhados pelos dois HDs e lidos simultaneamente, o tempo de acesso piora, pois além do tempo necessário para realizar a leitura nos dois HDs, temos mais um pequeno tempo perdido pela controladora, que precisa juntar os fragmentos, antes de entregar o arquivo. Isso faz com que o ganho, na prática, varie muito de acordo com os aplicativos usados, sendo maior em aplicativos que privilegiam a taxa de transferência e menor em aplicativos que manipulam arquivos pequenos e dependem predominantemente do tempo de acesso. Quem trabalha com edição de vídeos e imagens geralmente precisa de muito espaço de armazenamento e um melhor desempenho de acesso a disco também é muito bem vindo. Entretanto, a questão da confiabilidade também é importante, de forma que o RAID 0 não seria uma boa opção. Existe a possibilidade de criar um sistema RAID 10, onde adicionamos mais dois discos que armazenam uma cópia completa dos dados. O problema é que neste caso precisamos de 4 discos em vez de dois, o que dobra o custo. Como pode ver, o 664
  • 665. RAID pode ser interessante em algumas áreas, sobretudo quando você já tem os HDs, mas ele não é uma solução para todos os problemas. PCs de baixo consumo Além de toda a questão ecológica, montar PCs mais econômicos do ponto de vista do consumo elétrico pode significar uma boa economia na conta de luz, já que a diferença entre ter um PC gastador, que consuma na faixa dos 300 watts e outro mais econômico, que consuma na faixa dos 100 watts, pode chegar a mais de 1000 reais por ano, considerando que ambos fiquem ligados 12 horas por dia. Isso significa que em dois anos você economizaria mais do que o suficiente para montar outro micro completo. Antigamente, era comum que os processadores mais baratos, fossem também os mais econômicos, já que eram basicamente versões de baixo clock dos modelos mais rápidos. Entretanto, com o aumento no número de PCs, aumentos no custo da eletricidade e outros fatores, a questão do consumo se tornou um fator importante, de forma que os fabricantes passaram a enfatizar a "eficiência", ou seja, a relação entre o consumo e o desempenho do processador, ao invés do desempenho puro e simples, como antigamente. Isso fez com que tanto a AMD quanto a Intel lançassem séries de baixo consumo. No caso dos AMD temos a série "Energy Efficient" (composta de modelos mais econômicos, porém mais caros) e no caso da Intel temos os processadores mobile e o recém-lançado Core 2 Duo com steeping L2. Nas posições mais baixas das tabelas de preços, temos os processadores Pentium D e Celeron D, baseados na arquitetura do Pentium 4, que são processadores incrivelmente ineficientes. Você pode achar que está fazendo um bom negócio comprando um Pentium D 925, por exemplo, mas na verdade está levando gato por lebre, pois o desempenho é inferior ao de um Pentium E2160 (que já é baseado na plataforma Core) e o consumo elétrico brutalmente mais alto, o que faz com que você acabe gastando muito mais na conta de luz. A Intel sabe disso e por isso está vendendo estes processadores a preço de banana, se apressando em encerrar a produção e vender o resto dos estoques o mais rápido possível. É sempre complicado recomendar modelos específicos de processadores, já que as melhores opções variam de acordo com os modelos disponíveis e os preços. Mas, se você fosse comprar um processador em setembro de 2007, as melhores opções seriam o Pentium E2140 (1.6 GHz, 1 MB, dual-core) e o E2160 (1.8 GHz, 1 MB, dual-core). Ambos são processadores dual-core relativamente baratos que são bastante econômicos, já que além do baixo clock oferecem suporte ao SpeedStep. Os Celerons 420, 430 e 440 são ainda mais baratos. Eles seriam uma boa opção para micros de baixo custo, já que são baratos, relativamente rápidos e suportam grandes overclocks. Entretanto, eles não são tão interessantes dentro da proposta de um PC de baixo consumo, pois (ao contrário dos 665
  • 666. Pentium E) eles não oferecem suporte ao SpeedStep, de forma que o processador opera sempre à freqüência máxima. O Celeron 440 (que opera a 2.0 GHz) consome cerca de 35 watts quando ocioso, o que em um PC de baixo consumo é bastante coisa. Do lado da AMD temos o Athlon 64 X2 Energy Efficient, que é baseado no core Brisbane, de 0.065 micron. Ele também é um pouco mais caro, mas consome menos que os X2 baseados no core Windsor, que ainda é produzido usando a técnica de 0.09 micron. Todos os processadores AMD baseados no Athlon 64 são bastante eficientes, devido ao uso do Cool'n'Quiet. Embora o consumo máximo do processador varie de acordo com o clock e a técnica de fabricação, o uso do Cool'n'Quiet faz com que o processador consuma menos de 10 watts quando ocioso. Os Athlon 64 X2 EE, baseados no core Brisbane estão entre os mais econômicos, consumindo apenas 6 watts quando ociosos. Isso faz com que eles levem uma certa vantagem contra os Core 2 Duo, pois neles o consumo do processador quando ocioso não cai abaixo dos 22 watts (para a maioria dos modelos) ou 12 watts (para os novos, baseados no steeping L2). Isso acontece por que (mesmo usando o SpeedStep) a freqüência de operação do Core 2 Duo nunca cai abaixo dos 1.6 GHz, por mais que o processador fique ocioso por longos períodos, enquanto o Cool'n'Quiet usa um sistema de gerenciamento mais agressivo, onde a freqüência do processador pode cair para até 1.0 GHz (ou 800 MHz nos processadores Mobile). Ao comprar um Sempron, o mais importante é evitar a todo o custo os 2800+ e 3000+, onde o suporte ao Cool'n'Quiet vem desativado. A pequena economia não justifica sequer o gasto adicional de energia elétrica. Os Semprons 3400+ e 3600+, baseados no core Manila são uma boa opção, pois são baratos e relativamente econômicos. O consumo do 3600+ quando em full-load beira os 60 watts, mas com o Cool'n'Quiet ativado, ele cai para pouco mais de 6 watts quando o processador está ocioso, ou seja, na maior parte do tempo. Em seguida temos a questão do monitor. Além de grandes e desajeitados, os monitores de CRT são grandes gastadores de energia. Um CRT de 17 polegadas atual consome na faixa dos 100 watts, enquanto modelos antigos podem chegar perto dos 150. Em comparação, a maioria dos monitores de LCD para desktops consome na faixa dos 30 a 35 watts, o que representa uma economia considerável. Em um PC que fica ligado 12 horas por dia, usar um LCD no lugar do CRT gera uma economia mensal de cerca de 24 kWh, o que equivale a uma redução de quase 10 reais na conta de luz. Parece pouco, mas ao longo de um ano dá quase 120 reais. Se levarmos em conta que um bom monitor pode ser usado por 3, 4 ou até 5 anos e que um LCD de 17" já custa pouco mais de 600 reais, 666
  • 667. comprar um CTR hoje em dia simplesmente não faz sentido, nem do ponto de vista do conforto, nem do custo. A questão da durabilidade menor dos monitores LCD é atualmente um mito. Antigamente as luzes de catodo frio usadas nos monitores de LCD possuíam uma vida útil estimada em 10.000 horas, o que equivale a pouco mais de um ano de uso contínuo. Entretanto, os monitores atuais utilizam lâmpadas com vida útil estimada em 50.000 horas, o que equivale a mais de 6 anos de uso contínuo. Outro possível ponto de falha é o inversor, mas nos LCD para desktops os defeitos relacionados a ele são relativamente raros. Por incrível que pareça, a fonte mais comum de defeitos nos monitores LCD para desktops é a fonte de alimentação, sobretudo nos modelos de baixa qualidade. Casos onde o monitor "queimou" são quase sempre causados por algum capacitor estufado, transformador queimado ou outro defeito do gênero na fonte. Felizmente, nesses casos o conserto é geralmente barato. Continuando, os HDs de 2.5" podem ser perfeitamente usados em desktops e são realmente uma forma de economizar energia, embora não tanto quanto poderíamos pensar à primeira vista. A maioria dos HDs de 7200 RPM atuais consome em torno de 12 watts quando girando na rotação máxima e algo entre 2 e 6 watts nos diferentes estágios de economia de energia. O Samsung SpinPoint T166 de 500 GB, por exemplo, consome 11.3 watts quando está lendo e gravando dados, 7.1 watts quando os discos estão girando mas o HD está ocioso e menos de 2 watts quando entra em modo de economia de energia, onde os discos param de girar e apenas alguns componentes da placa lógica continuam ativos. Os HDs de 2.5" naturalmente consomem menos, já que os discos são menores (e conseqüentemente exigem menos esforço por parte do motor de rotação) e todos os componentes são otimizados para consumir menos energia, já que isso é essencial em um notebook. Um Samsung HM160JI, de 160 GB e 5400 RPM, por exemplo, consome 2.6 watts quando lendo ou gravando dados e apenas 0.8 watts quando ocioso. Quando o HD entra em modo de economia de energia e os discos param de girar, o consumo passa a ser realmente insignificante, inferior a meio watt. Mesmo modelos de 2.5" "gastadores", como o Seagate Momentus 7200.1 de 100 GB (que gira a 7200 RPM) raramente ultrapassam a marca dos 4 watts. 667
  • 668. HD de 2.5" Os HDs de notebook são realmente econômicos do ponto de vista do consumo elétrico. Eles também são muito silenciosos e não exigem nenhum tipo de ventilação especial, já que esquentam muito pouco. É perfeitamente possível usar um HD de 2.5" em um desktop e isso vem se tornando cada vez mais comum, sobretudo entre os que montam micros usando gabinetes compactos. Existem diversos tipos de adaptadores no mercado, que vão desde o tradicional adaptador de 2.5" para 3.5", que permite instalar um HD IDE de notebook em uma porta IDE normal (o adaptador é geralmente vendido junto com os suportes necessários para instalar o HD em uma baia de 3.5"), quanto adaptadores para ligar o HD na porta USB, ligar um HD SATA em uma porta IDE ou um HD IDE em uma porta SATA, e até mesmo adaptadores "universais" que suportam diversas combinações diferentes de HDs e interfaces. O problema com os HDs de notebook é que o preço por megabyte é expressivamente mais alto que nos HDs de 3.5", já que a capacidade dos HDs é sempre muito mais baixa. Os HDs de 2.5" de mais baixa capacidade, de 60 ou 80 GB são relativamente acessíveis, mas os de 160 GB ou mais são muito mais caros, de forma que eles não são uma opção realística para quem precisa armazenar um grande volume de dados, já que seriam necessários vários HDs. Uma opção seria usar um HD de 2.5" de baixa capacidade para armazenar o sistema operacional, programas e arquivos de trabalho e usar um ou mais HDs de 3.5" de grande capacidade para armazenar arquivos grandes. Com isso, você poderia configurar o sistema para colocar os HDs de 3.5" em modo de espera quando não estiverem sendo usados (que neste caso será a maior parte do tempo) e deixar o HD de 2.5" ativo continuamente, fazendo a maior parte do trabalho. A economia na conta de luz por usar um HD de 2.5" não é muito expressiva, de forma que, na maior parte dos casos, o uso do HD de 2.5 não vai se pagar financeiramente. O uso pode valer à pena pelo "conjunto da obra", ou seja, 668
  • 669. pela combinação de consumo mais baixo, menos barulho, menos calor e maior resistência a impactos, mas não pela economia direta. Presumindo que o PC ficasse ligado 12 horas por dia e o HD ficasse ocioso (porém ativo) quase todo o tempo, então teríamos um consumo de cerca de 3.6 kWh mensais (considerando que o HD consumisse 7.5 watts quando ocioso e a fonte do micro trabalhasse com 75% de eficiência), enquanto um HD de notebook consumiria 0.5 kWh ou menos. Comparando diretamente os dois valores, a economia parece grande, já que o HD de notebook consome quase 8 vezes menos, mas esta redução equivale a uma redução mensal de menos de R$ 1.50 na conta de luz. Mesmo se levássemos em conta a economia ao longo de 3 anos (que seria a vida útil média de um HD), a economia não chegaria aos 50 reais. Temos ainda a questão dos SSDs, os "HDs" de estado sólido que utilizam memória Flash no lugar dos discos magnéticos. Eles fazem algum sentido no caso dos notebooks, onde qualquer redução no consumo é importante, mas usar um SSD em um desktop seria muito dispendioso e a economia em relação a um HD de 2.5" tradicional é muito pequena, inferior a dois watts. Os componentes da placa mãe não são consumidores muito vorazes de energia, pois tudo (incluindo o chipset) opera a uma freqüência muito baixa se comparada à do processador. Além disso, a diferença de consumo elétrico entre placas com chipsets de diferentes fabricantes não é grande o suficiente para que isso influa na decisão de compra (com exceção dos notebooks, onde qualquer redução pode fazer diferença, por causa da questão da autonomia das baterias). O conselho básico para montar um PC de baixo consumo (e baixo custo) é usar componentes onboard sempre que possível, já que eles quase sempre consomem menos, principalmente quando são integrados diretamente ao chipset. O principal ponto de economia é a placa de vídeo, já que mesmo uma placa de baixo custo atual (como uma GeForce 7200) pode facilmente consumir mais de 60 watts, o que é equivalente ao consumo de 5 HDs em RAID, lendo ou gravando dados a todo vapor. Outro ponto importante do ponto de vista do consumo são os circuitos de regulagem de tensão da placa mãe. Como bem sabemos, a placa recebe tensões de 12V, 5V e 3.3V da fonte e precisa gerar, a partir delas, as diferentes tensões usadas pelos componentes do micro. Como todo processo de conversão, isso resulta em uma certa perda, principalmente no fornecimento de energia para o processador. Placas com reguladores de tensão de 6 ou 8 fases são quase sempre capazes de manter um fornecimento elétrico mais estável em situações de stress, como ao fazer um overclock agressivo, porém o maior número de fases faz com que a placa desperdice mais energia nos momentos de baixa atividade. A diferença entre usar uma placa com um regulador de tensão de 8 fases e outra similar, com um regulador de tensão de 4 fases, pode chegar a mais de 6 watts enquanto o processador está ocioso. 669
  • 670. Ao montar um PC usando um processador de baixo consumo, as placas com reguladores de 3 ou 4 fases acabam sendo preferíveis, já que além de mais baratas, consomem menos energia. Como nesse caso o processador consome pouco, a questão do fornecimento acaba não sendo um grande problema. Em seguida temos a questão dos módulos de memória. Um módulo de memória DDR2-800 consome cerca de 4 watts de energia. Os módulos DDR3 utilizam uma tensão mais baixa (o que resulta em uma certa economia), mas em compensação operam a freqüências mais altas, o que acaba equilibrando a balança. Como quase todas as placas atuais oferecem suporte a dual-channel, usar dois módulos de memória, em vez de apenas um, resulta em um pequeno ganho de desempenho. Entretanto, do ponto de vista do consumo, usar um único módulo de memória, de maior capacidade, faz mais sentido. A economia de 4 watts gerada pelo uso de um único módulo, acaba resultando (dentro do cálculo de 12 horas de uso por dia) em uma redução de quase 1.5 kWh mensais. Não é muito significativo, mas já é quase o que você economizaria ao substituir o HD de 3.5" por um HD de notebook. Uma observação importante com relação aos módulos de memória é que dois módulos com 8 chips consomem apenas um pouco mais do que um único módulo de 16 chips fabricado utilizando a mesma técnica de produção. A economia em utilizar um único módulo é considerável apenas quando comparamos módulos produzidos com diferentes técnicas de fabricação, como ao comparar o consumo de um módulo de 16 chips e 2 GB, com o de dois módulos de 16 chips, com 1 GB cada um. Outra fonte de desperdício é (literalmente ;) a fonte de alimentação. Por melhor que seja a qualidade da fonte, ela sempre desperdiça parte da energia. A maioria das fontes de baixo custo trabalha com eficiência de 65 a 75% (nas fontes mas baratas a eficiência pode ser ainda menor), o que significa que de um quarto a um terço de toda a energia consumida pelo micro é, na verdade, desperdiçada pela fonte, a maior parte dela dissipada na forma de calor. 670
  • 671. Entre as fontes de boa qualidade, não é incomum encontrar projetos com 80% de eficiência. Algumas fontes realmente caras podem atingir 90%, mas a partir daí qualquer melhoria resulta em um grande aumento do custo. É importante enfatizar que nem sempre os números especificados pelo fabricante são inteiramente confiáveis. Por exemplo, se o fabricante escreve algo como "up to 75% efficiency", significa que a fonte provavelmente trabalha com 65% de eficiência na maior parte do tempo e atinge picos de 75% em situações ideais de funcionamento. O Anandtech (http://anandtech.com/casecoolingpsus/) tem publicado alguns reviews de fontes que vale a pena ler. Embora os modelos testados estejam um pouco longe da nossa realidade, eles servem como uma boa referência dos fatores a levar em conta ao comprar uma fonte. Outro endereço interessante é o http://www.80plus.com, uma organização mantida com incentivos governamentais que testa e certifica fontes de diversos fabricantes. Uma questão interessante é que as fontes atingem o nível máximo de eficiência sob uma certa percentagem da carga máxima, geralmente em torno dos 30 a 35%. Uma fonte de 750 watts, por exemplo, tem seu pico de eficiência em torno dos 250 watts, enquanto uma fonte de 450 watts tem seu pico em torno dos 150. Em um PC de baixo consumo, é importante dimensionar a capacidade da fonte para que ela possa trabalhar sempre próximo do nível máximo de eficiência. Se você montou um PC de baixo consumo, que consome apenas 75 watts, por exemplo, não faz sentido usar uma fonte de 750 watts, que com uma carga tão baixa vai trabalhar no nível mais baixo de eficiência. Além de ser um desperdício de dinheiro, ela seria um desperdício de energia. 671
  • 672. Nesse caso, faria mais sentido usar uma fonte menor, de 300 watts (ou até mesmo 250 watts) porém de qualidade. Calcule o consumo médio estimado de todos os componentes do PC, multiplique por 3 e você obtém uma boa estimativa da capacidade ideal de fonte para ele. É importante enfatizar que o monitor não entra na conta, pois ele obtém energia diretamente da tomada, sem passar pelos circuitos da fonte. Mesmo quando a fonte oferece a tomada para ligar o monitor, ela funciona como uma simples extensão. É interessante notar que os fabricantes de fonte estão notando este novo filão e passando a oferecer alguns modelos de fontes de baixa ou média capacidade (geralmente 250, 300 ou 450 watts), dando ênfase para a confiabilidade e o baixo nível de ruído. Um exemplo é a Huntkey Green Star (www.huntkey.com/eng) de 450 watts, uma fonte de "médio custo" (cerca de 170 reais), que oferece como atrativo uma eficiência de 85% (com 35% de carregamento), com mínimo de 70%, em full-load. Ao comprar qualquer fonte, recomendo que cheque as especificações. Procure pela eficiência mínima (com 100% de carga), que nunca deve ser inferior a 70%, e, se disponível, veja se existe alguma especificação de eficiência ideal, que, como vimos, é atingida quando a fonte trabalha com menos carga. Neste exemplo a especificação fala em 85% de eficiência, mas a seguir fala em 70% de eficiência mínima em full-load, o que indica que a eficiência em situações reais de uso fica entre os dois extremos, de acordo com o percentual de carga: Se não conseguir encontrar as especificações da fonte, ou se elas não falarem nada a respeito da eficiência, não compre, pois provavelmente se trata de uma fonte de baixa qualidade. Outra coisa que é importante enfatizar é que não existem boas fontes (e nem mesmo fontes medianas) abaixo da faixa dos 100 reais. A maioria das boas fontes custa a partir de 200 reais, com muitos modelos medianos custando a partir de 150. Fontes baratas (as famosas fontes de 50 reais) e as fontes que vem de brinde junto com os gabinetes são sempre modelos de baixa qualidade (e baixa eficiência), que além de representarem um risco para o equipamento, acabam custando mais caro a longo prazo, devido ao maior consumo elétrico. 672
  • 673. Mais uma vez, podemos comprovar isso com um cálculo simples: em um PC que consome 200 watts (sem contar o monitor), uma diferença de 15% na eficiência da fonte equivale a 30 watts de energia, por hora. Se o PC ficar ligado 12 horas por dia, teremos uma diferença mensal de 10.8 kWh, o que equivale a pouco mais de 5 reais na conta. Parece pouco, mas se multiplicarmos por 3 anos (a vida útil média de uma fonte de qualidade razoável) temos um total de mais de 180 reais. Existem no mercado dispositivos destinados a medir o consumo elétrico dos aparelhos, que podem ser instalados entre o PC e a tomada para medir seu consumo. Eles podem ser encontrados em casas especializadas em materiais elétricos, ou comprados online. Um dos mais baratos é o "kill a watt", que custa em média 35 dólares mais postagem, se comprado no exterior. Ele mostra a tensão, amperagem, consumo em watts, consumo em VA e também o consumo cumulativo em um determinado período: Ele é interessante para medir o consumo global do micro e fazer testes de consumo, analisando a redução ao reduzir o clock do processador, ativar recursos de gerenciamento de energia, verificar a economia real ao trocar a fonte ou outro componente, medir a perda causada pelo uso do nobreak e assim por diante. 673
  • 674. Ferramentas Para simplesmente montar um PC, você não precisa de muitas ferramentas. Na verdade, você pode se virar muito bem usando apenas uma chave de fenda. Entretanto, se você quiser trabalhar também com cabeamento de redes e manutenção de notebooks, vai precisar de um conjunto mais completo, contendo chaves torx e um alicate de crimpar cabos de rede. Além disso, é sempre bom ter um testador de cabos, um multímetro e também um passador de fios à mão, para eventualidades. Boas ferramentas podem durar a vida toda, por isso são uma boa coisa em que se investir. Elas também são um sinal de status, o que pode ajudar a criar uma boa impressão e transmitir confiança para o cliente, o que é importante para quem trabalha com manutenção. Mesmo no caso das chaves de fenda, existe uma grande diferença de qualidade entre as chaves baratas e as para uso profissional. A principal diferença é a dureza do aço usado. Chaves baratas são feitas de um aço mole, que espana facilmente e não se ajusta bem aos parafusos, acabando por espaná-los mais facilmente também. Chaves de qualidade utilizam pontas de um aço muito mais duro, que possuem formas mais perfeitas e se encaixam mais perfeitamente nos parafusos, permitindo que você use muito mais força antes de chegar ao ponto de espaná-los. Veja uma comparação entre a ponta de uma chave barata, já desgastada pelo uso e a ponta de uma chave de melhor qualidade. Você dificilmente conseguiria remover um parafuso bem apertado usando a chave da esquerda, enquanto a chave da direita conseguia removê-lo sem problemas: 674
  • 675. O aço é uma matéria-prima relativamente barata hoje em dia, tanto que já é usado até em pregos e parafusos. A diferença (e o custo) está no processo de forja, que determina a dureza e resistência do produto final e no acabamento, que determina a perfeição das formas. É justamente aí que reside a diferença entre um katana japonesa, capaz de cortar uma barra de ferro, e uma imitação barata, que você pode comprar na tabacaria da esquina ;). 675
  • 676. Um bom conjunto de chaves pode custar mais de 100 reais, mas é o tipo do investimento que você não se arrepende de fazer. Justamente por serem caros e atenderem a um público restrito, não é o tipo de ítem que você vai encontrar em supermercados ou na loja de ferragens da esquina. Se você não mora perto de nenhuma loja especializada, é mais fácil pesquisar e comprar pela web. Este conjunto da foto abaixo, por exemplo, foi comprado via web de uma loja da Inglaterra (pelo Ebay), por US$ 35: Montagem de micros Depois de desempacotar as peças, a primeira coisa a fazer é mudar a posição da chave de tensão da fonte de alimentação. Por segurança, todas as fontes vêm de fábrica com a posição no "220V", já que ligar a fonte chaveada para 220 em uma tomada de 110 não causa danos, bem diferente do que acontece ao fazer o contrário. O problema é que a lei de murphy faz com que você sempre esqueça de trocar a chave de posição, fazendo com que mais adiante o micro simplesmente não ligue e você fique sem saber o porquê. :) 676
  • 677. Apesar de muitas vezes não parecer, o gabinete é um componente bastante barato e fácil de fabricar. A matéria-prima básica são chapas de aço bastante finas, que são dobradas e prensadas até chegar à forma final. Este aço bruto é bastante barato e pouco resistente, ao contrário do aço temperado, usado em aplicações mais nobres. Os gabinetes mais baratos chegam a custar menos de 100 reais e quase metade deste valor é referente à fonte de alimentação que vem "de brinde". O maior problema com os gabinetes baratos é a presença de rebarbas, que agem como lâminas, cortando os dedos dos descuidados. A presença de rebarbas é sinônimo de gabinete de baixa qualidade, uma dica para evitar o fabricante na próxima compra, para não cometer o mesmo erro duas vezes. Além da questão do acabamento, existe uma tendência crescente de substituir o aço por alumínio nos modelos mais caros. Existem ainda gabinetes de materiais alternativos, voltados para quem gosta de casemod, feitos acrílico, resina, vidro ou até mesmo madeira. Além do material usado, acabamento e da questão estética de uma forma geral, os gabinetes se diferenciam pela presença de portas USB ou conectores de áudio frontais (ou outros acessórios) e pela questão da ventilação. De qualquer forma, a principal função do gabinete é servir como um suporte para os demais componentes. Você pode muito bem montar um micro dentro de um armário, de uma gaveta ou até mesmo dentro de uma caixa de pizza, mas sem uma fonte de alimentação com um mínimo de qualidade, você corre o risco de ver pentes de memória queimados, HDs com badblocks, capacitores estufados na placa-mãe e assim por diante em pouco tempo. De uma forma geral, as fontes que acompanham os gabinetes valem o que custam (muito pouco), por isso você deve procurar substituí-las por fontes melhores em qualquer micro com componentes mais caros, ou em micros de trabalho, que vão desempenhar um papel importante. Como (com exceção de alguns modelos high-end) todas as fontes utilizam o mesmo tamanho padrão, é muito fácil substituir a fonte por outra. 677
  • 678. Preparando o terreno Voltando à montagem, o próximo passo é tirar ambas as tampas do gabinete. Aproveite para remover também as tampas das baias dos drives de CD e DVD que for utilizar: Remova também a tampa do painel ATX, ao lado das aberturas dos exaustores. Cada placa-mãe utiliza uma combinação própria de conectores, de forma que o que vem com o gabinete é inútil, já que nunca combina com os conectores da placa-mãe. Por isso o substituímos pela tampa que acompanha a placa-mãe, feita sob medida para ela. A tampa do painel ATX é chamada em inglês de "I/O plate", embora o nome seja pouco usado por aqui. 678
  • 679. A parte interna do gabinete possui um padrão de furação, destinado aos suportes e parafusos que prendem a placa-mãe. Todos os parafusos necessários (foto a seguir) devem vir junto com o gabinete: Dependendo da marca e modelo do gabinete, podem ser usados pinos plásticos, como os da esquerda, encaixes como os da direita ou (mais comum) espaçadores metálicos como os do centro. Existem ainda suportes plásticos como os dois na parte inferior da foto, que podem ser usados como apoio, inseridos nos furos na placa-mãe que não possuam par no gabinete. Eles eram mais usados antigamente, na época dos gabinetes AT, mas é sempre bom ter alguns à mão. 679
  • 680. O conjunto com os parafusos e espaçadores é chamado de "kit de montagem" pelos fabricantes. Normalmente o gabinete vem também com o cabo de força, com exceção dos modelos sem fonte, onde o cabo vem junto com a fonte avulsa. As placas ATX possuem normalmente 6 furos para parafusos e mais dois ou três pontos de apoio adicionais, que podem ser usados pelos suportes plásticos. A posição deles, entretanto, varia de acordo com a distribuição dos componentes na placa, de forma que o gabinete inclui um número muito maior de furos. Com o tempo, você acaba aprendendo a descobrir quais usar "de olho", mas no início você acaba perdendo tempo comparando as furações da placa e do gabinete para ver onde colocar os suportes. Uma dica é que você pode usar uma folha de papel para achar mais facilmente as combinações entre a furação da placa-mãe e a do gabinete. Coloque a placa-mãe sobre o papel e use uma caneta para fazer pontos no papel, um para cada furo disponível. Depois, coloque o papel sobre a chapa do gabinete e vá colocando os parafusos de suporte e espaçadores onde os pontos coincidirem com a furação. Muito simples, mas bastante prático. :) 680
  • 681. É importante apertar os parafusos de suporte usando uma chave hexagonal, para que eles continuem no lugar depois de parafusar e desparafusar a placa- mãe. Se não forem bem apertados, os parafusos de suporte acabam saindo junto com os usados para prender a placa-mãe ao removê-la, o que não é muito agradável. 681
  • 682. Conectores do painel Antes de instalar a placa-mãe, você pode aproveitar para encaixar os conectores do painel frontal do gabinete e das portas USB frontais, que são muito mais fáceis de encaixar com a placa-mãe ainda sobre a mesa, do que com ela já instalada dentro do espaço apertado do gabinete, com pouca luz. Infelizmente, não existe muita padronização nos contatos do painel frontal, cada fabricante faz do seu jeito. Embora o mais comum seja que os pinos fiquem no canto inferior direito da placa, até mesmo a posição pode mudar de acordo com a placa. Em muitas ele fica mais para cima, quase no meio da placa. Nos gabinetes ATX, temos basicamente 5 conectores: Power SW (o botão liga/desliga), Reset SW (o botão de reset), Power LED (o led que indica que o micro está ligado), HD LED (o led que mostra a atividade do HD) e o speaker: 682
  • 683. Cada um dos contatos é formado por dois pinos, um positivo e um neutro. Nos conectores, o fio colorido corresponde ao positivo e o branco ao neutro. Nem os dois botões (power e reset) nem o speaker (que usa um conector de 4 pinos, embora apenas 2 sejam usados) possuem polaridade, de forma que podem ser ligados em qualquer sentido. Os LEDs por sua vez, precisam ser ligados na polaridade correta, caso contrário não acendem. Quase sempre, a própria placa traz uma indicação resumida decalcada, indicando inclusive as polaridades, mas em caso de dúvidas você pode dar uma olhada rápida no manual, que sempre traz um esquema mais visível: 683
  • 684. Em micros antigos, ainda na época dos gabinetes AT, existiam também os conectores Keylock (uma chave no gabinete que permitia travar o teclado), Turbo SW (o conector para o botão "turbo") e o Turbo LED (o LED correspondente). O botão "turbo" é uma história curiosa. Ele surgiu com o lançamento dos primeiros micros 286 e tinha a função de reduzir a freqüência de operação do processador, fazendo com que o micro ficasse com um desempenho similar ao de um XT (o micro operava à freqüência normal apenas enquanto o botão estivesse pressionado). Isso permitia rodar alguns jogos e outros programas que ficavam rápidos demais se executados no 286. Por algum motivo, o botão "turbo" continuou presente nos gabinetes AT até a época dos micros Pentium, embora não fosse mais usado. Outra curiosidade era o mostrador do clock, também usado na época dos micros Pentium 1. Ele tinha uma função puramente decorativa, mostrando a freqüência de operação do processador. O engraçado era que ele não tinha relação nenhuma com a freqüência real. Era simplesmente um painel digital, configurado através de jumpers, onde você podia colocar a freqüência que quisesse. Felizmente ele também saiu de moda e não é mais usado nos gabinetes atuais. 684
  • 685. O famigerado mostrador do clock, usado em gabinetes antigos Headers USB Em seguida, temos os conectores das portas USB frontais, também conectados diretamente na placa-mãe. Eles precisam ser encaixados com atenção, pois inverter os contatos das portas USB (colocando o pólo positivo de alimentação na posição do negativo de dados, por exemplo) vai fazer com que pendrives, mp3players e outros dispositivos eletrônicos conectados nas portas USB sejam queimados, um problema muito mais grave do que deixar parafusos soltos ou inverter a polaridade de um LED, por exemplo. Os conectores USB (ou headers USB) na placa-mãe são conectores de 9 pinos, facilmente reconhecíveis. Cada porta USB utiliza 4 pinos, dois para a alimentação e dois para dados, sendo que dentro de cada par, um é o positivo e o outro o negativo. O nono pino do conector serve apenas como orientação, indicando o lado referente aos dois fios pretos, referentes ao pólo neutro do par de alimentação: 685
  • 686. Cada header USB inclui duas portas. Uma placa-mãe com "12 portas USB" normalmente inclui 4 portas no painel traseiro e mais 4 headers para a conexão das portas frontais do gabinete. Alguns gabinetes possuem 4 portas frontais, mas a maioria inclui apenas duas. Existem ainda diversos tipos de suportes com portas adicionais, leitores de cartões e outras bugigangas instaladas na baia do drive de disquetes, em uma das baias dos drives ópticos ou em uma das aberturas traseiras. Assim como as portas frontais, eles também são ligados nos headers USB da placa-mãe. Dentro de cada header a ordem os fios é a seguinte: VCC (vermelho), DATA - (branco), DATA + (verde) e GND (preto), onde o GND fica sempre do lado do nono pino, que serve como guia. Ligue primeiro os pinos da porta 1, para não arriscar misturá-los com os da segunda porta. :) Fazendo isso com a atenção, não existe muito o que errar; o problema é que se você precisa montar vários micros, acaba tendo que fazer tudo rápido, o que abre espaço para erros. 686
  • 687. Instalação dos conectores das portas USB frontais do gabinete A partir de 2007, a Asus passou a fornecer "agrupadores" para os conectores do painel e das portas USB frontais junto com as placas. Eles são práticos, pois ao invés de ficar tentando enxergar as marcações na placa-mãe, você pode encaixar os conectores no suporte e depois encaixá-lo de uma vez na placa- mãe: 687
  • 688. 688
  • 689. Processador Antes de instalar a placa-mãe dentro do gabinete, você pode aproveitar também para instalar o processador, o cooler e os módulos de memória. Com exceção dos antigos Pentium II, Pentium III e Athlons em formato de cartucho, todos os processadores são ligados ao chipset e demais componentes da placa-mãe através de um grande número de pinos de contato. Como o encapsulamento do processador é quadrado, seria muito fácil inverter a posição de contato (como era possível nos 486), o que poderia inutilizar o processador quando o micro fosse ligado e a alimentação elétrica fornecida pela placa-mãe atingisse os pinos errados. Para evitar isso, todos os processadores atuais possuem uma distribuição de pinos que coincide com a do soquete em apenas uma posição. Você pode notar que existe uma seta no canto inferior esquerdo deste Athlon X2, que coincide com uma pequena seta no soquete: O encaixe do processador é genericamente chamado de "ZIF" (zero insertion force), nome que indica justamente que você não precisa fazer nenhuma pressão para encaixar o processador. A própria ação da gravidade é suficiente para encaixá-lo no soquete. O ideal é simplesmente segurar o processador alguns milímetros acima do soquete e simplesmente soltá-lo, deixando que a lei da gravidade faça seu trabalho. Isso evita que você entorte os pinos se estiver sonolento e tentar encaixar o processador no sentido errado. 689
  • 690. Danos aos pinos do processador são desesperadores, pois é muito difícil desentortar os pinos. Se alguns poucos pinos forem entortados, sobretudo pinos nos cantos, você pode tentar desentortá-los usando uma lâmina, tentando deixá-los alinhados com os outros da fileira. Em alguns casos, um alicate de precisão também pode ajudar. O trabalho nunca vai ficar perfeito, mas você tem a chance de deixar os pinos retos o suficiente para que eles entrem no soquete, mesmo que seja necessário aplicar um pouco de pressão. 690
  • 691. O Athlon X2 e o Phenom X4 serão possivelmente os últimos processadores Intel/AMD para micros PCs a utilizarem o formato tradicional, com pinos. Desde o Pentium 4 com Core Prescott a Intel adotou o formato LGA, onde os pinos são movidos do processador para o soquete. A AMD utiliza um sistema semelhante no soquete-F utilizado pelos Opterons, Athlon Quad FX e Phenom FX e a tendência é que ele substitua as placas AM2, AM2+ e AM3 nos próximos anos. A boa notícia é que no sistema LGA não existem mais pinos para serem entortados no processador, de forma que ele se torna um componente muito resistente mecanicamente. A má é que agora temos um grande número de pinos ainda mais frágeis no soquete da placa-mãe, o que demanda ainda mais cuidado ao instalar o processador. Diferentemente dos pinos dos processadores tradicionais, os pinos do soquete LGA são praticamente impossíveis de desentortar. Ao danificar um grande número deles, você simplesmente condena a placa-mãe. A melhor estratégia continua sendo suspender o processador apenas alguns milímetros acima dos pinos de contato e simplesmente soltá-lo, deixando o resto por conta da gravidade. Assim você minimiza a possibilidade de danificar os pinos. No caso dos processadores soquete 775, duas guias de um dos lados do soquete impedem que o processador seja encaixado na direção errada. Olhando com atenção, você verá também uma seta em baixo relevo no canto inferior esquerdo do soquete, que faz par com a seta decalcada em um dos cantos do processador. 691
  • 692. Outra mudança trazida pelo sistema LGA é que a pressão necessária para manter o processador no lugar é feita pelo próprio soquete, e não mais pelo cooler. Isso faz com que a força necessária para fechar a alavanca do soquete nas placas soquete 775 seja muito maior. 692
  • 693. Pasta térmica Com o processador instalado, o próximo passo é usar a boa e velha pasta térmica para melhorar a condutividade térmica com o cooler. Hoje em dia, existem diversos tipos de pasta térmica, que vão desde a tradicional pasta térmica banca, à base de óxido de zinco, que é bem barata e muitas vezes vendida em tubos de 50 gramas ou mais até diversos tipos de pasta térmica "premium" com diferentes compostos, vendidas em seringas ou vidros. Os próprios coolers muitas vezes acompanham envelopes de pasta térmica branca. Usar uma pasta "premium", baseada em algum composto metálico normalmente reduz a temperatura de operação do processador em dois ou até três graus em relação a usar alguma pasta branca genérica. A diferença é maior em overclocks mais extremos, onde a dissipação térmica do processador (e consequentemente a temperatura de funcionamento) é mais elevada. Se você já está gastando mais no cooler e na placa-mãe, pensando justamente em recuperar o investimento com um overclock agressivo, então gastar 20 reais em uma seringa de pasta Arctic Silver, para ganhar mais dois ou três graus faz sentido. Mas, ao montar um micro de baixo custo, onde você conta os trocados para conseguir colocar 512 MB de memória, vale mais a pena aproveitar a dose de pasta branca que veio de brinde com o cooler ou usar pasta branca genérica. O mais importante é não cair em modismos e deixar alguém te passar a perna tentando cobrar 40 ou 50 reais por um vidro de pasta térmica que não vai fazer milagres. 693
  • 694. Independentemente do tipo escolhido, a idéia básica é passar uma fina camada de pasta térmica cobrindo todo o dissipador do processador. Se você simplesmente esparramar um montinho de pasta sobre o processador, a pressão exercida pelo cooler vai se encarregar de espalhá-la cobrindo a maior parte do dissipador de qualquer forma, mas a aplicação nunca fica perfeita, de forma que se você tiver tempo para espalhar a pasta uniformemente, antes de instalar o cooler, o resultado será sempre um pouco melhor. Aplicar uma camada de pasta é especialmente importante nos processadores LGA, pois neles o cooler não exerce uma pressão tão forte sobre o processador. Evite colocar pasta demais, caso contrário ela vai "derramar" quando o cooler for instalado, fazendo uma meleca sobre o soquete. Processador com a pasta térmica aplicada Muitos coolers, sobretudo os coolers dos processadores boxed vêm com uma camada de pasta térmica (quase sempre cinza) pré-aplicada. O principal objetivo é a praticidade, já que elimina uma das etapas da instalação do cooler. Caso prefira utilizar sua própria pasta térmica, remova a camada pré-aplicada no cooler usando uma flanela e álcool isopropílico. Não use espátulas ou qualquer outro objeto metálico, pois você vai arranhar a base do cooler, o que também prejudica a dissipação de calor. O maior problema é que muitos coolers (em sua maioria fabricados entre 2001 e 2005) utilizavam uma camada de elastômero (um tipo de borracha, que podia ser rosa, cinza ou mesmo branca), no lugar da pasta térmica. Ele é um material que derrete se aquecido a temperaturas superiores a 60 graus, de forma que a pressão do cooler acaba moldando-o ao processador. 694
  • 695. O elastômero não é tão eficiente quanto a pasta térmica (mesmo se comparado à pasta branca comum) e tem a desvantagem de ser descartável, precisando ser substituído depois da primeira remoção do cooler. Ele era usado porque era barato e era considerado "bom o bastante" pelos integradores e não por ser realmente eficiente. É fácil reconhecer o elastômero, pois ele tem aspecto e consistência de chiclete. É sempre recomendável removê-lo e substituí-lo por pasta térmica antes de instalar o cooler. Ao se deparar com um cooler com a camada de elastômero ao dar manutenção, remova sempre toda a camada antiga antes de aplicar a pasta e reinstalar o cooler. Misturar os dois materiais acaba resultando em uma camada ainda mais ineficiente. 695
  • 696. Cooler Para manter o processador firme no lugar (evitando mal contatos nos pinos) e eliminar o excesso de pasta térmica o cooler precisa pressionar o processador com uma certa intensidade. Na maioria dos coolers antigos, você precisava da ajuda de uma chave de fenda para instalar e remover o cooler. A ponta era presa em um pequeno encaixe na presilha do cooler e você precisava de uma boa dose de força para encaixá-lo no soquete: Esse sistema levava a acidentes, pois com freqüência a chave de fenda escapava, muitas vezes destruindo trilhas e inutilizando a placa-mãe. Como a pressão era exercida sobre os pinos laterais do soquete, também às vezes acontecia de deles quebrarem. Para não ter que descartar a placa-mãe, você acabava sendo obrigado a fazer algum "chunxo" para prender ou colar o cooler no soquete. Para solucionar estes dois problemas, tanto a Intel quanto a AMD desenvolveram novos sistemas de encaixe. A AMD passou a usar uma "gaiola" plástica em torno do processador. Os pinos de encaixe ficam na gaiola, que é presa à placa por dois ou quatro parafusos e pode ser substituída em caso de quebra. O cooler é encaixado através de um sistema de alavanca, onde você encaixa a presilha dos dois lados e usa a alavanca presente no cooler para prendê-lo ao soquete: 696
  • 697. Nas placas soquete 775, a pressão necessária para manter o processador preso é exercida pelo encaixe metálico incluído no próprio soquete. A Intel se aproveitou disso para desenvolver um sistema de encaixe bastante engenhoso, onde o cooler exerce menos pressão sobre a placa-mãe e é preso por 4 presilhas. As presilhas utilizam um sistema de retenção peculiar. Girando o prendedor no sentido horário (o sentido oposto à seta em baixo relevo) você o deixa na 697
  • 698. posição de encaixe, pronto para ser instalado. Girando no sentido anti-horário, o prendedor de solta, permitindo que o cooler seja removido: Ao instalar o cooler, você só precisa deixar as presilhas na posição de instalação e pressioná-la em direção a placa. Ao contrário dos coolers para placas soquete 754, 939 e AM2, você pode encaixar o cooler em qualquer sentido. A forma correta de instalar o cooler é ir encaixando uma das presilhas 698
  • 699. de cada vez, fazendo um "X", onde você encaixa primeiro a presilha 1, depois a 3, depois a 2 e por último a 4. Como pode ver, é bem mais fácil instalar o cooler antes de instalar a placa-mãe dentro do gabinete: Outra forma de instalar o cooler seria pressionar as 4 presilhas de uma vez, usando as duas mãos, com a placa já instalada dentro do gabinete. Esta 699
  • 700. segunda opção faz com que seja exercida uma grande pressão sobre a placa- mãe, o que é sempre bom evitar. Com o cooler instalado, não se esqueça de instalar o conector de alimentação do cooler. As placas atuais oferecem pelo menos dois conectores de alimentação; uma para o cooler do processador e outro para a instalação de um exaustor frontal ou traseiro. Muitas placas oferecem 3 ou 4 conectores, facilitando a instalação de exaustores adicionais. Para remover o cooler, basta girar as presilhas no sentido anti-horário, destravando o mecanismo. É mais fácil fazer isso usando uma chave de fenda: Um problema que temos no Brasil é o uso dos famigerados (para não usar um adjetivo pior) adesivos de garantia, usados por muitos distribuidores. Antigamente, eles costumavam ser colados na parte inferior do processador, mas com o lançamento dos processadores soquete 939, AM2 e LGA 775, onde não existe espaço na parte inferior, muitos distribuidores e lojas passaram a colar adesivos sobre o spreader do processador, o que prejudica brutalmente o contato entre o processador e o cooler, causando problemas de superaquecimento. Como você pode ver na foto, os adesivos formam uma "cratera" de área sem contato com o cooler em torno deles. Para amenizar o problema, você acaba tendo que usar mais pasta térmica, o que também é ruim, já que para ser eficiente, a camada de pasta térmica deve ser o mais fina possível. Por serem feitos de material plástico, os próprios adesivos não conduzem bem o calor, agravando ainda mais o problema: 700
  • 701. Os famigerados adesivos de garantia, que prejudicam o contato com o cooler Na maioria dos casos, fornecedores com conhecimento de causa e preocupados com a qualidade não fazem esse tipo de coisa, até porque, é perfeitamente possível controlar as trocas dos processadores utilizando a numeração usada tanto pela Intel quanto pela AMD. Em casos em que o fornecedor for irredutível com relação ao uso dos adesivos, recomendo que procure outro. Com relação à alimentação, existem dois tipos de conectores para o cooler. Além do conector tradicional, com 3 pinos, existe o conector PWM, que possui 4 pinos. Ele foi introduzido pela Intel em 2004 e é usado na maioria das placas atuais (tanto para processadores Intel quanto AMD). O conector de 4 pinos é perfeitamente compatível com coolers que utilizam o conector antigo de 3 e você também pode conectar coolers que utilizam o conector de 4 pinos em placas com o conector de 3 pinos sem risco. A guia presente em um dos lados do conector impede que você encaixe o conector invertido ou ocupando os pinos errados, por isso não existe onde errar: 701
  • 702. No conector de 3 pinos, dois deles são responsáveis pela alimentação elétrica (+12V e GND), enquanto o terceiro é usado pela placa-mãe para monitorar a velocidade de rotação do cooler (speed sensor). O quarto pino permite que o BIOS da placa-mãe controle a velocidade de rotação do cooler (PWM pulse), baseado na temperatura do processador. Com isso o cooler não precisa ficar o tempo todo girando na rotação máxima, o que além de reduzir o nível de ruído do micro, ajuda a economizar energia. Ao conectar um cooler com o conector de 4 pinos em uma placa com o conector de 3, você perde o ajuste da rotação, de forma que o cooler simplesmente passa a girar continuamente na velocidade máxima, mas com exceção disso não existe problema algum. Além do cooler principal, temos a questão dos exaustores extra, que são um item cada vez mais importante nos PCs atuais. Alguns exaustores ainda utilizam conectores molex, como os utilizados pelo HD, mas a grande maioria dos de fabricação recente podem ser ligados aos conectores oferecidos pela placa-mãe. A vantagem de utilizá-los é que a placa-mãe pode monitorar as velocidades de rotação dos exaustores, permitindo que você as monitore via software. Esta placa da foto, por exemplo, possui 4 conectores, sendo que dois foram posicionados próximos às portas SATA: 702
  • 703. Memória Continuando, você pode aproveitar também para instalar os módulos de memória com a placa ainda fora do gabinete. O chanfro do conector impede que você encaixe um módulo DDR2 (ou DDR3) em uma placa que suporte apenas módulos DDR ou vice-versa, de forma que a principal dica é segurar sempre os módulos pelas bordas, evitando, assim, qualquer possibilidade de danificá-los com estática: Além da posição do chanfro, outra forma de verificar rapidamente qual o tipo de memória utilizado pela placa, é verificar a tensão, decalcada próximo ao chanfro. Módulos DDR utilizam 2.5V, módulos DDR2 utilizam 1.8V e módulos DDR3 utilizam 1.5V: 703
  • 704. Em placas com 4 slots de memória, o primeiro e o terceiro slots formam o canal A, enquanto o segundo e o quarto formam o canal B. Para usar dois módulos em dual-channel, você deve instalar o primeiro módulo no primeiro slot e o segundo módulo no segundo, populando simultaneamente ambos os canais. Em caso de dúvidas sobre a instalação em alguma placa específica, você pode confirmar a posição correta na seção "Memory" ou "System Memory" do manual. Outra observação é que não é obrigatório usar dois módulos em placas dual- channel. O uso de dois módulos é desejável do ponto de vista do desempenho, mas a placa funciona perfeitamente com apenas um. As exceções ficam por conta de algumas placas antigas para Pentium 4, que utilizavam módulos de memórias Rambus. Nelas era realmente obrigatório instalar módulos RIMM em pares e usar terminadores nos soquetes não- utilizados. Também é preciso usar módulos em pares em placas soquete 7 antigas, que utilizam módulos de 72 vias. 704
  • 705. Instalando a placa-mãe Depois de tudo isso, podemos finalmente instalar a placa dentro do gabinete, prendendo-a nos suportes usando parafusos. Na verdade, você pode instalar a placa logo no início da montagem, e encaixar o processador, o cooler, módulos de memória e os conectores do painel frontal com ela já dentro do gabinete. A questão é que é bem mais fácil instalar esses componentes com a placa "livre" sobre a bancada do que dentro do espaço apertado no gabinete. Uma chave magnética ajuda bastante na hora de posicionar os parafusos. Lembre-se de que você pode transformar qualquer chave de fenda em uma chave magnética usando um pequeno ímã de neodímio, como os encontrados dentro do mecanismo que movimenta a cabeça de leitura do HD. Cuide apenas para não largá-los sobre mídias magnéticas, como disquetes ou o próprio HD. Não se esqueça também de encaixar a tampa do painel ATX que acompanha a placa antes de instalá-la: O próximo passo é ligar os conectores de força na placa-mãe. Praticamente todas as placas atuais utilizam tanto o conector ATX de 24 pinos quanto o conector P4, de 4 pinos, que fornece energia adicional, reforçando o fornecimento elétrico para o processador e também para o slot PCI Express x16. Ao montar qualquer PC atual, você deve utilizar uma fonte de pelo menos 450 watts (com exceção de PCs de baixo consumo, que podem, em muitos casos, utilizar fontes de 250 ou 300 watts), que ofereça ambos os conectores: 705
  • 706. Lembre-se de que 90% das fontes vendidas no Brasil são produtos de baixa qualidade. Mesmo que a etiqueta diga que a fonte é capaz de fornecer 450 watts, é bem provável que ela, na verdade, ofereça apenas 350 watts ou menos, por isso é importante manter uma boa margem de segurança. Voltamos então à velha pergunta: o que fazer com fontes "genéricas" antigas, que oferecem apenas 300 ou 350 watts e ainda utilizam o conector ATX de 20 pinos? A resposta curta é que você não deve usá-las ao montar um PC novo, pois não vale a pena arriscar a saúde dos demais componentes para economizar os 50 ou 70 reais de uma fonte equivalente nova. A resposta longa é que a maioria das placas funciona usando um conector ATX de 20 pinos, desde que o conector P4 auxiliar esteja conectado. Entretanto, isto reduz o fornecimento elétrico da placa-mãe, o que pode causar problemas ao utilizar processadores e/ou placas 3D com um consumo elétrico mais elevado. Algumas placas possuem um conector molex ao lado do conector P4 auxiliar. Esta combinação era comum por volta de 2001 a 2002, quando as fontes com o conector extra ainda não eram comuns. Nesse caso, você pode escolher qual dos dois usar: 706
  • 707. HDs e DVD O próximo passo é instalar os drives. Alguns gabinetes são espaçosos o suficiente para que você instale os HDs antes mesmo de prender a placa-mãe, mas na maioria dos casos eles ficam parcialmente sobre a placa, de forma que você precisa deixar para instalá-los depois. Ao usar drives IDE, você precisa se preocupar também com a configuração de master/slave. No caso do drive óptico (vou adotar este termo daqui em diante, já que você pode usar tanto um drive de CD quanto de DVD), o jumper está disponível bem ao lado do conector IDE. Colocá-lo na posição central configura o drive como slave, enquanto colocá-lo à direita configura o drive como master. Para o HD, a configuração do jumper varia de acordo com o fabricante, mas você encontra o esquema de configuração na etiqueta de informação do drive. Quase sempre, o HD vem configurado de fábrica como master e ao retirar o jumper ele é configurado como slave. HDs SATA não utilizam jumpers de configuração de master/slave, pois cada porta permite a instalação de um único HD. Apesar disso, a maioria dos drives incluem um jumper que permite forçar o HD a operar em modo SATA/150 (evitando problemas de compatibilidade com algumas placas antigas). Em muitos HDs (como em diversos modelos da Seagate) ele vem ativado por padrão, fazendo com que o drive opere em modo SATA/150 por default. Ao usar uma placa equipada com portas SATA/300, não se esqueça de verificar a posição do jumper, para que a taxa de transferência da interface não seja artificialmente limitada. Jumpers em um HD IDE, HD SATA e drive de DVD IDE 707
  • 708. Ao instalar o HD e o drive óptico em portas separadas, você pode configurar ambos como master. Atualmente é cada vez mais comum que placas novas venham com apenas uma porta IDE, o que o obriga a instalar um como master e o outro como slave. É comum também que o drive óptico seja instalado como slave mesmo ao ficar sozinho na segunda porta, já deixando o caminho pronto para instalar um segundo HD como master futuramente. Ao usar dois (ou mais) HDs SATA, é importante que o HD de boot, onde você pretende instalar o sistema operacional, seja instalado na porta SATA 1. É possível mudar a configuração de boot através do setup, dando boot através dos outros HDs, mas o default é que o primeiro seja usado. A identificação de cada porta vem decalcada sobre a própria placa-mãe. Na foto temos "SATA1" e "SATA2" indicando as duas portas SATA e "SEC_IDE", indicando a porta IDE secundária. Ao lado dela estaria a "PRI_IDE", a porta primária: Nas placas e cabos atuais, é usada uma guia e um pino de controle, que impedem que você inverta a posição dos cabos IDE. Em placas e cabos antigos, por outro lado, é comum que estas proteções não estejam presentes. Nesses casos, procure um número "1" decalcado em um dos lados do conector. A posição do "1" deve coincidir com a tarja vermelha no cabo e, do lado do drive, a tarja vermelha fica sempre virada na direção do conector de força: 708
  • 709. Os cabos IDE possuem três conectores. Normalmente dois estão próximos e o terceiro mais afastado. O conector mais distante é o que deve ser ligado na placa-mãe, enquanto os dois mais próximos são destinados a serem encaixados nos drives. Ao instalar apenas um drive no cabo, você deve usar sempre as duas pontas do conector, deixando o conector do meio vago (nunca o contrário). Você deve utilizar sempre cabos de 80 vias em conjunto com os HDs IDE atuais, pois eles oferecem suporte aos modos ATA-66. ATA-100 e ATA-133. Os drives ópticos podem utilizar cabos comuns, de 40 vias, pois eles trabalham sempre em modo ATA-33. Você deve receber os cabos IDE e SATA juntamente com a placa-mãe. Normalmente o pacote inclui também o cabo do disquete (embora hoje em dia seja cada vez mais raro usá-lo) e também um adaptador para converter um conector molex da fonte no conector de força SATA. A maioria das fontes oferece apenas um único conector de força SATA, de forma que você acaba precisando do adaptador ao instalar um segundo HD. Em placas que não possuem portas IDE, o cabo é substituído por um segundo cabo SATA. 709
  • 710. "Kit" com cabos e manuais que acompanha a placa-mãe O drive óptico acompanha um segundo cabo IDE (quase sempre um cabo de 40 vias), permitindo que, ao usar um drive óptico e HD IDE, você os instale em portas separadas. Aqui temos os cabos IDE e SATA instalados. O cabo IDE preto está instalado na IDE primária e vai ser usado pelo HD, enquanto o cinza, instalado na IDE secundária, vai ser usado pelo drive óptico: 710
  • 711. Ao instalar dois ou mais HDs na mesma máquina, deixe sempre que possível um espaço de uma ou duas baias entre eles, o que ajuda bastante na questão da refrigeração: Assim como em outros componentes, a temperatura de funcionamento dos HDs tem um impacto direto sob a sua via útil. O ideal é que a temperatura de operação do HD não ultrapasse os 45 graus (você pode monitorá-la usando o programa de monitoramento incluído no CD de drivers da placa, ou usando o lm-sensors no Linux), mas, quanto mais baixa a temperatura de funcionamento, melhor. Caso tenha alguns trocados disponíveis, uma medida saudável é instalar um exaustor na entrada frontal do gabinete, puxando o ar para dentro. O fluxo de ar vai não apenas reduzir a temperatura de operação dos HDs (muitas vezes em 10 graus, ou mais) mas também dos demais componentes do micro, incluindo o processador. Para melhores resultados, o exaustor frontal deve ser combinado com outro na parte traseira, na abertura ao lado do processador, desta vez soprando o ar para fora. Para instalar o exaustor frontal, você precisa remover a frente do gabinete. Em muitos dos modelos atuais, ela é apenas encaixada, de forma que basta puxar com cuidado. Em outros ela é presa com parafusos, escondidos nas laterias. 711
  • 712. É sempre chato ficar colocando parafusos dos dois lados, tanto para os HDs quanto para o drive óptico, mas é importante que você resista à tentação de instalar os drives "nas coxas", sem usar todos os parafusos. A questão fundamental aqui é a vibração. Colocando parafusos apenas de um lado, ou colocando apenas um de cada lado, a movimentação da cabeça de leitura dos HDs e do drive óptico vai fazer com que o drive vibre dentro da baia, aumentando o nível de ruído do micro, sem falar de possíveis problemas relacionados ao desempenho ou mesmo à vida útil dos drives. 712
  • 713. O toque final é instalar o cabo de áudio do drive de CD, usado para tocar CDs de áudio. Hoje em dia ele não é mais tão usado, pois a maioria dos programas é capaz de reproduzir CDs obtendo as faixas digitalmente, a partir do próprio cabo de dados do drive (o mesmo processo usado para ripar CDs), mas é sempre bom ter o cabo instalado, já que você nunca sabe que programas o dono do micro vai utilizar. O cabo é fornecido junto com o drive e é encaixado na entrada "CD" da placa-mãe, um conector de 4 pinos. 713
  • 714. Finalizando a montagem Como disse há pouco, é importante instalar um exaustor na abertura traseira do micro, soprando o ar para fora. O exaustor dentro da fonte de alimentação também faz esse trabalho, mas a principal função dele é resfriar a própria fonte. O exaustor traseiro age mais diretamente, empurrando pra fora rapidamente o ar quente que já passou pelo cooler do processador. A maioria dos gabinetes atuais inclui um tubo (chamado de "túnel de vento" pelos fabricantes) que vai sobre o processador. O tubo canaliza o ar externo, fazendo com que o cooler do processador utilize o ar frio vindo de fora, ao invés de ficar simplesmente circulando o ar quente dentro do gabinete. Nesta configuração, o ar entra pelo tubo, refrigera o processador e sai pelo exaustor traseiro (e pela fonte), criando um sistema de circulação bastante eficiente. Se você instalar também o exaustor frontal, melhor ainda. É possível ainda substituir o túnel de vento por um exaustor adicional, encarregado de soprar o ar para dentro do gabinete. Muitos gabinetes permitem o uso de um exaustor de 120 milímetros (bem maiores que os tradicionais, de 80 milímetros). Nesse caso, a principal vantagem é que o fluxo de ar gerado pelo exaustor vai se encarregar também de refrigerar a placa de vídeo e outros componentes do micro. Alguns gabinetes, geralmente destinados ao uso de duas placas em SLI ou CrossFire, vão além, oferecendo espaço para instalar 4 exaustores de 80 milímetros na tampa, gerando um fluxo de ar realmente potente. 714
  • 715. Concluindo, falta apenas instalar a placa de vídeo e outras placas de expansão (como uma segunda placa de rede, modem ou uma placa de captura) e a montagem está completa. Alguns poucos gabinetes utilizam protetores independentes para as aberturas dos slots, mas na maioria é usada uma simples chapa cortada, onde você precisa remover as tampas dos slots que serão usados. Algumas sempre esbarram em capacitores da placa-mãe, por isso precisam ser removidas com mais cuidado. O aço cortado é praticamente uma lâmina, é bem fácil se cortar. 715
  • 716. Tanto os slots PCI Express x16 quanto os slots AGP utilizam um sistema de retenção para tornar o encaixe da placa de vídeo mais firme. Ao remover a placa, não se esqueça de puxar o pino do lado direto do slot, senão você acaba quebrando-o. Toda placa-mãe inclui pelo menos um jumper, responsável por limpar o CMOS (identificado na placa como "CLR_CMOS" ou "CLRTC"). Em muitas placas, ele 716
  • 717. vem de fábrica na posição discharge (com o jumper entre os pinos 2 e 3), para evitar que a bateria seja consumida enquanto a placa fica em estoque. A maioria das placas não dá boot enquanto o jumper estiver nesta posição, o que pode ser confundido com defeitos na placa. Antes de ligar o micro, certifique-se de que o jumper está na posição 1-2 (indicada no manual como "Normal" ou "Default"). 717
  • 718. Solucionando problemas Seguindo os cuidados que vimos ao longo dos tópicos anteriores, montar micros é relativamente simples. A grande maioria dos componentes pode ser encaixado apenas de um jeito e existem travas e chanfros nos encaixes que evitam muitas combinações de componentes incompatíveis, como encaixar um pente DDR em uma placa que só suporta módulos DDR2. Embora a qualidade geral dos componentes seja melhor hoje do que era em 2000 ou 2002, por exemplo, componentes com defeitos de fabricação ainda são uma ocorrência comum. Em inglês, eles são chamados de "DOA" (dead on arrival), ou seja, já são vendidos com defeito, devido a danos ocorridos durante o transporte, ou à falta de controle de qualidade por parte do fabricante. Embora possam ser trocados dentro da garantia, na maioria das vezes sem dificuldades, estes componentes defeituosos acabam causando dor de cabeça para quem monta micros, já que além do tempo necessário para diagnosticar o problema, você perde tempo para trocar a peça. Antes de mais nada, comece fazendo uma verificação geral, checando se os conectores da fonte estão bem encaixados na placa-mãe e se o conector P4 está instalado (a maioria das placas atuais não inicializa com ele desconectado), se a placa de vídeo e outros periféricos estão bem encaixados, se todos os cabos IDE e SATA estão em ordem e se os botões do gabinete estão ligados nos pinos corretos do painel da placa-mãe. Outra dica é que muitas placas atuais não inicializam se o cabo de energia do cooler estiver desligado, uma precaução contra danos ao processador causados por superaquecimento. Se você está usando um nobreak ou estabilizador, experimente também tentar ligar o micro sem ele. Não é incomum que estabilizadores de muito baixa qualidade, ou com defeito, forneçam uma corrente de saída tão instável que a fonte (por segurança) desative o sinal de "power good" para a placa-mãe. Sem o sinal a placa não inicializa, como se o micro estivesse desligado da tomada. Depois de excluir as possibilidades mais óbvias, o procedimento padrão para solucionar problemas é desconectar todos os dispositivos não-essenciais, deixando apenas a placa, processador (e cooler! :), um dos pentes de memória e (no caso das placas de vídeo onboard) também a placa de vídeo. Se o micro passar a completar o POST, você pode voltar a instalar os demais componentes, um a um, até achar o culpado. Muitas vezes você vai acabar descobrindo que o problema era simplesmente mal contato em algum dos encaixes. Experimente também mudar as placas de posição. É muito comum que uma placa não seja detectada ao ser plugada em um determinado slot, ou mesmo faça com que o micro simplesmente pare de inicializar, mas funcione perfeitamente em outro. Isso pode ocorrer por defeitos nos contatos do slots, oxidação (no caso de micros usados) ou simplesmente por mal contato ao instalar a placa no primeiro slot. 718
  • 719. Ao dar manutenção em micros antigos, é importante também limpar os contatos das placas e dos módulos de memória, já que a oxidação dos contatos é uma das principais causas de mal contato. A limpeza pode ser feita usando uma borracha de vinil ou, na falta de uma, usando uma cédula em bom estado que tiver no bolso. O papel moeda é abrasivo, por isso também funciona bem como limpador de contatos. Se, por outro lado, o micro não liga nem mesmo na "configuração mínima", comece verificando coisas básicas, como a chave 110/220 da fonte e a posição do jumper Clear CMOS. Experimente também limpar as configurações do Setup, removendo a bateria e mudando o jumper Clear CMOS de posição por 15 segundos. Outra opção para limpar as configurações do Setup é usar uma moeda ou chave de fenda para fechar um curto entre os dois polos da bateria, também por 15 segundos: A partir daí, o jeito é partir para a experimentação, trocando o módulo de memória, a fonte, placa de vídeo, processador e, por último, a própria placa- mãe, até descobrir o culpado. Embora estejam longe de serem um indicador preciso, os códigos de erro do BIOS, emitidos através do speaker podem dar pistas do que está errado em muitas situações. Os códigos de erro variam de acordo com o BIOS usado, mas estes são os códigos mais comuns, válidos para a maioria das placas: 1 bip curto: Este é o bip de confirmação emitido quando o POST é realizado com sucesso e nenhum erro é detectado. nenhum bip: Se os coolers giram, mas o micro não inicializa e nenhum bip é emitido (e você já verificou se o speaker está realmente 719
  • 720. conectado), temos muito provavelmente um problema grave na placa- mãe ou processador. Isto também acontece ao tentar ligar o micro sem o processador ou sem nenhum módulo de memória instalado. Se realmente nada funciona (os coolers não giram, nenhum sinal de vida) então provavelmente o problema está na fonte (ou no estabilizador, ou em qualquer outro ponto da instalação elétrica) ou mesmo no botão de força do gabinete (você pode tê-lo ligado nos pinos errados da placa- mãe, por exemplo). 2 bips: Este é uma espécie de "erro geral", similar a uma tela azul do Windows. O POST falhou por uma causa desconhecida. Aqui não existe muito o que fazer além de recorrer ao método de tentativa e erro até descobrir o que está errado. 1 bip longo e 1 bip curto: Problema na placa-mãe (erro genérico que apenas indica que algo está errado, sem oferecer detalhes). 1 bip longo e 2 bips curtos ou 1 bit longo e três curtos: Problemas na placa de vídeo (ou falta dela). É muito comum que a placa de vídeo esteja ok, porém mal encaixada ou com os contatos oxidados. Experimente remover a placa, limpar os contatos usando uma borracha de vinil ou uma cédula e instalá-la novamente. A maioria das placas continua o boot depois de emitir o erro, permitindo que você acesse o micro via rede, mas muitas realmente não inicializam até que você resolva o problema. 3 bips longos: Erro no teclado. Este erro é relativamente raro. Ele não é emitido quando o teclado não está instalado, mas sim quando ele está presente, mas o controlador está com algum defeito ou curto-circuito. 2 (ou mais) bips longos: Problema grave nos módulos de memória RAM. Este erro é gerado apenas quando o módulo de memória está instalado, mas é detectado um erro nos primeiros 64 KB, ou quando ele não passa pelo teste de contagem de memória do BIOS. É raro que um pente de memória realmente chegue a ficar danificado a ponto de causar este erro (danos nos módulos, causados por estática são geralmente mais discretos, afetando apenas uma pequena faixa de endereços dentro do módulo), o mais comum é que exista algum problema inesperado de compatibilidade entre ele e a placa-mãe. Antes de mais nada, teste o micro usando um módulo diferente (se possível de outro fabricante) e teste o módulo que causou o erro em outra placa diferente. É bem possível que ambos estejam bons. 5, 6 ou 7 bips curtos: O processador está encaixado, mas com algum dano grave. Em algumas placas este erro é emitido também quando o processador está superaquecendo (o cooler está mal encaixado ou não está instalado, por exemplo). 9 bips: Erro na gravação do BIOS, ou danos no chip de memória Flash onde ele está gravado. Também não é um erro comum, pois quando você tenta fazer um upgrade de BIOS e ele é malsucedido, a placa 720
  • 721. simplesmente deixa de funcionar, ou inicializa utilizando algum sistema de proteção incluído pelo fabricante. Erros físicos no chip de memória Flash são bastante raros. Vamos a uma pequena lista dos sintomas relacionados a defeitos em cada componente: Placa de vídeo: As placas 3D atuais são praticamente computadores completos, que possuem não apenas um processador (a GPU), mas também memória e circuitos de alimentação próprios. Muitas placas inclusive obtêm energia diretamente da fonte, através e um conector molex ou PCI Express de 6 pinos. Os problemas mais comuns com as placas de vídeo são defeitos causados pelo desgaste dos capacitores, assim como no caso da placa-mãe. O defeito começa se manifestando nos jogos mais pesados (quando o consumo elétrico da placa e conseqüentemente o stress sobre os capacitores é maior) e vai progredindo gradualmente até que a placa realmente pare de funcionar. Nesse caso, é possível que o PC simplesmente não funcione com a placa espetada, que a placa-mãe passe a emitir bips, como se não houvesse placa de vídeo, ou que o micro inicialize normalmente, mas nenhuma imagem seja exibida no monitor. Placas de vídeo também podem apresentar defeitos na memória. Se o defeito for na área reservada ao frame-buffer (mais raro), você notará corrupções na imagem, desde o início do boot. Se os defeitos forem no bloco principal, reservado ao processamento 3D, você notará texturas corrompidas e, em muitos casos, também travamentos durante os jogos. Assim como no caso do processador, podem existir casos de incompatibilidade entre placas de vídeo e placas-mãe específicas. Isso é relativamente raro nas placas PCI-Express que usamos atualmente, mas era comum ao tentar instalar placas AGP de fabricação recente em placas-mãe antigas, que não possuíam circuitos de alimentação dimensionados para suportá-las. HD: Defeitos no HD não impedem que a placa-mãe realize o POST. O PC começa o boot normalmente, mas, por não detectar, ou não conseguir inicializar o HD, para no início do carregamento do sistema operacional. Entretanto, encaixar o cabo IDE invertido (o que é possível ao usar cabos antigos, sem o chanfro de proteção) faz com que o micro realmente deixe de inicializar. Defeitos nos cabos flat causam corrupção nos dados, o que gera sintomas parecidos com o de um HD com badblocks. Quando se deparar com problemas de leitura e gravação em HDs IDE, experimente antes de mais nada trocar o cabo. Memória: Existem muitos casos de incompatibilidades entre determinadas marcas de memória e alguns modelos de placas-mãe. Quando o micro simplesmente não dá boot com um determinado módulo (mas funciona com outros), ou para de funcionar depois de instalar um módulo adicional, é bem provável que o módulo esteja bom e o problema seja simplesmente alguma incompatibilidade entre ele e a placa-mãe. 721
  • 722. Normalmente os fabricantes mantém listas de módulos testados, ou de fabricantes recomendados, mas elas não têm muita utilidade na prática, pois são sempre incompletas. O melhor é não se preocupar tanto com isso e escolher as memórias com base nas características técnicas, preço e reputação do fabricante e trocar os módulos dentro da garantia em casos onde eles não funcionem em conjunto com determinada placa-mãe. Outro tipo de defeito, mais comum, são endereços danificados no módulo. Eles podem ser causados por estática, picos de tensão, defeitos na fonte ou nos circuitos de alimentação na placa-mãe, ou mesmo desgaste prematuro causado pelo uso de tensões muito mais altas que o padrão (ao fazer overclock). Esse tipo de dano não impede que o micro complete o POST e inicialize o boot de forma normal. Entretanto, você vai se deparar com travamentos e comportamento anormal dos programas sempre que os endereços defeituosos forem usados pelo sistema. Pode ser que os defeitos estejam logo nos primeiros endereços e o sistema operacional trave durante o boot, ou pode ser que esteja no final e problemas sejam notados apenas ao rodar vários programas simultaneamente. A melhor forma de verificar o estado dos módulos é usar o Memtest, que vimos no capítulo de memória. É sempre importante deixar o teste correndo por algum tempo depois de montar um novo micro, pois ele detecta erros não apenas nos módulos de memória, mas também no controlador de memória, trilhas e caches do processador. O Memtest pode ser encontrado em diversas distribuições Linux, como o Kurumin, Knoppix e Ubuntu (basta usar a opção "memtest" ou "Memory Test" na tela de boot), faz parte dos utilitários incluídos no Ultimate Boot CD (http://www.ultimatebootcd.com) e também está disponível na forma de uma imagem .ISO no http://memtest86.com/. 722
  • 723. Processador: É bastante raro que processadores novos apresentem defeitos. O controle de qualidade por parte de fabricantes como a Intel e AMD é normalmente muito bom, de forma que as chances de um processador sair de fábrica com defeitos é pequena. Danos durante o transporte também são incomuns, já que o processador é um componente pequeno e bastante resistente fisicamente. Danos causados pelo manuseio, como pinos entortados, são também fáceis de perceber. De qualquer forma, um processador defeituoso, ou danificado por estática, pode fazer com que o micro simplesmente não inicie o boot (já que a placa- mãe precisa do processador para realizar o POST), o que é mais raro, ou que o micro funcione, mas apresente problemas de estabilidade diversos. Note que existem muitos casos de incompatibilidade entre placas-mãe antigas e processadores lançados recentemente. Não existe nenhuma garantia de que uma placa-mãe soquete 775, fabricada em 2005 será compatível com um Core 2 Duo, por exemplo. É comum que placas precisem de atualizações de BIOS para suportarem processadores lançados após sua fabricação e, em muitos casos, existem incompatibilidades relacionadas aos circuitos de alimentação ou ao chipset usado na placa. Nesses casos, o micro pode simplesmente não iniciar o boot, como se o processador estivesse queimado, quando na realidade é a placa-mãe que não está conseguindo inicializá-lo. Acúmulo de pó: Todo o processo de resfriamento do micro é baseado na circulação de ar (mesmo ao usar um watter cooler você precisa de pelo menos dois exaustores: um no radiador usado para refrigerar o fluído e outro na fonte de alimentação). Isso faz com que a poeira do ar se acumule nos exaustores, na parte interna da fonte e em outros componentes. A poeira acumulada 723
  • 724. prejudica a passagem do ar e a dissipação de calor, o que faz com que o micro passe a apresentar problemas de superaquecimento. Os sintomas clássicos são que o micro inicialize forma normal, mas trave após algum tempo ligado ou ao executar tarefas pesadas. Também é possível que a poeira feche contatos entre algumas trilhas, causando erros diversos. O PC pode passar a apresentar erros relacionados à corrupção de dados armazenados na memória, por exemplo, como se existisse um erro físico nos módulos. A solução é simplesmente fazer uma boa limpeza periódica, desmontando o micro completamente e usando ar comprimido ou um pincel para remover toda a sujeira. A fonte de alimentação também acumula muito pó, e também pode ser aberta e limpa. Entretanto, é importante tomar o cuidado de não encostar nos componentes, pois mesmo com a fonte desligada da tomada, os capacitores armazenam um volume considerável de energia. 724
  • 725. Ferramentas: o máximo de funções no mínimo espaço Um dos problemas clássicos de quem trabalha na área de manutenção é que rapidamente a notícia se espalha e você acaba recebendo pedidos desesperados de ajuda não apenas de clientes, mas também de amigos, familiares e vizinhos. Muitas vezes, por mais boa vontade que você tenha, acaba não tendo como resolver problemas na hora por falta das ferramentas adequadas. Afinal, cuidar de um PC tendo todas as suas ferramentas e softwares à mão é uma coisa, mas ter que "dar um jeito" usando uma faca de cortar margarina é outra completamente diferente. De algum tempo pra cá, um dos meus passatempos tem sido pesquisar ferramentas que combinem o máximo de utilidade no menor espaço, de forma que eu possa carregá-las dentro da carteira e tê-las sempre à mão. Este tópico é um apanhado geral sobre a evolução do meu "micro-kit" de ferramentas e os ítens que já passaram por ele, com dicas que você pode utilizar para compor o seu. Inicialmente, comecei com este conjunto aqui, contendo um pendrive, um punhado de parafusos, um jumper e um canivete suíço da Victorinox, que inclui uma chave Philips magnetizada, uma chave de fenda comum, lâmina, tesoura, pinça e caneta. Este modelo específico (Manager) é um pouco difícil de achar, mas você pode escolher outro modelo qualquer que ache interessante. Depois de algum tempo, desisti de carregar parafusos (já que você quase nunca precisa deles) e acabei substituindo o Manager por um modelo da 725
  • 726. Swiss+Tech, que consegue ser ainda mais compacto. Ele acabou se revelando a miniferramenta definitiva: Quando fechado, ele é um pouco maior que uma chave, de forma que você pode colocá-lo no seu molho de chaves e esquecer que ele existe até precisar. Ele inclui a boa e velha chave Philips, chave de fenda, faca, serra, abridor de garrafas e, se você reparar na "argola" superior, vai ver também uma pequena chave de fenda de precisão. Ele também é barato, custa apenas 10 dólares. Você provavelmente não vai encontrá-lo à venda aqui no Brasil, mas pode comprar pelo Ebay, ou em lojas como o http://www.knifecenter.com. No total, você vai gastar em torno de 35 reais, incluindo o envio. Você pode notar que ele não inclui uma pinça, que acaba sendo um acessório bastante útil, já que a lei de murphy diz que todo parafuso acaba caindo e indo aparar no canto mais inacessível do gabinete. Ela foi removida do "kit" em favor de um ímã de neodímio, que acabou se revelando a ferramenta ideal para pegar parafusos perdidos, com a vantagem de também transformar a chave de fenda em uma chave magnética: 726
  • 727. Estes ímãs são surpreendentemente potentes. Mesmo um pequeno, como o da foto, é suficiente para segurar um objeto de metal com mais de 100 gramas. Graças a isso, posso deixá-lo preso na própria chave, sem medo de ele cair. Na falta de um ímã específico, você pode usar um pedaço de um ímã de HD. Em seguida temos a questão do pendrive. Inicialmente usava um de 512 MB, mas a capacidade logo se revelou insuficiente. O passo seguinte foi este modelo da PQI de 2 GB, que é um dos mais compactos que consegui encontrar. Veja que incluí também um micro cabo cross (este você mesmo pode fazer), que acaba sendo útil na hora de transferir arquivos entre dois notebooks: 727
  • 728. Mas, pouco depois, acabei substituindo o pendrive por um SD Duo, que tem a vantagem de ser muito menor e servir tanto como um cartão SD normal (para uso em câmeras ou palmtops) quanto como pendrive, ligado diretamente na porta USB: Além de serem uma opção para quem quer um pendrive ultracompacto, eles acabam sendo bem práticos para quem tem um palm ou câmera, já que você pode retirar o cartão e ligá-lo direto no micro, sem precisar carregar cabos ou adaptadores. O maior problema destes cartões é o preço. Os modelos da 728
  • 729. Sandisk e da OCZ custam quase o dobro do valor de um cartão SD tradicional, da mesma capacidade. Este modelo da Adata da foto é uma opção mais barata, embora o desempenho não seja dos melhores. As taxas de transferência suportadas por ele são relativamente baixas (10.2 MB/s de leitura e 2.9 MB/s de escrita), o que limita seu uso em algumas áreas. Continuando, temos a questão dos softwares. Tanto usando um pendrive quanto usando o SD Duo, você pode instalar uma distribuição Linux, de forma a poder dar boot no sistema através da porta USB. Você pode ler mais detalhes sobre como fazer a instalação, usando o grub como gerenciador de boot neste tutorial disponível no site: http://www.guiadohardware.net/tutoriais/instalar-kurumin-pendrive/ Usando uma distribuição Linux, você pode recuperar arquivos de uma instalação danificada do Windows, recuperar partições acidentalmente deletadas ou corrompidas e, no caso do Kurumin 7 e outras distribuições que incluem o NTFS-3G, pode até mesmo alterar arquivos e configurações dentro da partição do Windows e remover vírus usando o Clamav. Você pode também usar o Gparted para redimensionar partições Dependendo do volume de arquivos que precisar salvar, você pode usar o próprio espaço livre do pendrive/cartão, usar um segundo HD, ou mesmo outra máquina, ligada em rede com a primeira. No caso da terceira opção, você pode usar o Samba, NFS, FTP, ou SSH para transferir os arquivos. O maior problema de usar um pendrive ou cartão como sistema de boot é que só as placas recentes suportam boot através da porta USB. Por isso, é sempre interessante ter à mão também um CD de boot, que fica como opção de emergência. 729
  • 730. Um CD convencional é grande demais para carregar na carteira, mas você poderia muito bem usar um mini-CD. Neste caso, você poderia usar o Kurumin Light, o Slax, ou mesmo uma distribuição mais especializada, como o Damn Small (http://www.damnsmalllinux.org/), o F.I.R.E. (http://biatchux.dmzs.com/) ou o Insert (http://www.inside-security.de/insert_en.html), de acordo com suas preferências e necessidades. A maioria das distribuições Live-CD inclui o Memtest (normalmente acessível através da opção "memtest" na tela de boot), que é outra ferramenta importante para se ter à mão. Lembre-se de que, no caso das distribuições que utilizam o UnionFS (como no caso do Kurumin Light), você pode instalar programas adicionais mesmo rodando a partir do CD, o que acaba sendo importante, já que você sempre acaba precisando de uma ferramenta ou outra que não vem pré-instalada no CD. É interessante carregar utilitários diversos e também programas como o Partition Magic, Testdisk e Photorec, além de uma cópia do Easy Recovery ou do PC Inspector para recuperar dados apagados acidentalmente. Hoje em dia, quase todo mundo carrega um celular, de forma que um smartphone acaba sendo a melhor forma de agregar funções adicionais. A principal vantagem que vejo não é sequer a questão das opções de agenda e outros aplicativos organizacionais, mas principalmente a questão do acesso a web via GPRS. Além de poder navegar, checar os e-mails, usar o MSN/ICQ, acessar máquinas remotas via SSH e se orientar usando o Google Maps (que recentemente passou a oferecer os mapas para as capitais brasileiras, além das imagens de satélite), você pode usar um cabo USB ou um transmissor bluetooth para compartilhar a conexão com o micro. Assinando um plano com uma quota de tráfego generosa, ou um plano ilimitado, você acaba tendo uma solução completa de acesso móvel, que pode se revelar muito útil quando você precisar resolver algum problema urgente, ou mesmo baixar algum software ou manual ou pesquisar a solução para algum problema de manutenção que encontrar quando estiver atendendo algum cliente. 730
  • 731. Filtros de linha, estabilizadores e nobreaks Quase tudo dentro de um PC é feito usando eletricidade. Ela é convertida em processamento, usada para gerar laseres, que lêem e gravam CDs e DVDs, transformada em pulsos magnéticos, usados para gravar dados nos platers do HD, convertida em sinais de rádio pela placa wireless ou em sinais analógicos pelo modem e pela placa de som, transformada em luz pelo monitor e assim por diante. A mesma eletricidade que mantém seu PC funcionando pode ser também o grande vilão que o fragiliza durante o uso normal e o destrói durante as tempestades. Chegamos então aos guardas da muralha, os filtros de linha, estabilizadores e nobreaks, responsáveis pela sua proteção. Vamos a eles ;). Filtros de linha Os filtros de linha são os dispositivos de proteção mais simples, geralmente baseados em um fusível e um ou mais MOVs ("metal-oxide varistors" ou, simplesmente, varistores, como são mais popularmente chamados), que oferecem alguma proteção, a um custo baixo. Vamos ver o que temos dentro de um "Filtron", um modelo popular da Clone: Bem, como você pode ver, ele inclui apenas um fusível e um MOV solitário entre o fase e o terra, além do LED que mostra quando ele está ligado. Ao usar uma tomada aterrada, este design serve como uma primeira linha de proteção contra raios, mas nada além disso. Todos os demais problemas com a corrente elétrica passam direto por ele. 731
  • 732. Outra característica preocupante é o uso de "lâminas" de latão para cada um dos três polos, ao invés de tomadas separadas, como as encontradas em produtos de melhor qualidade. Elas formam um conjunto muito frágil, o que abre margem para mal contato e até mesmo curto-circuitos em caso de defeitos de montagem ou más condições de manuseio. Todos os filtros de linha baratos, aqueles na faixa de 15 a 25 reais utilizam designs semelhantes, que oferecem pouca proteção. Alguns modelos um pouco melhores utilizam vários MOVs em série, o que aumenta o nível de proteção. A função dos MOVs é absorver picos de tensão e descargas elétricas, fornecendo uma corrente constante ao equipamento e transformando o excedente em calor. A idéia é que ao receber um raio ou outra descarga violenta, o fusível se queime rapidamente e os MOVs absorvam a tensão excedente, protegendo o equipamento. O problema com os MOVs é que eles queimam depois de absorverem alguns surtos de tensão e deixam de oferecer proteção, sem entretanto que a passagem de corrente seja interrompida. Filtros de linha "de verdade" oferecem um segundo LED de status, que se acende avisando que os MOVs não estão mais oferecendo proteção e é hora de trocar o filtro de linha. Você poderia muito bem desmontá-lo e substituir os MOVs usando um ferro de solda, mas a maioria acaba simplesmente usando o filtro danificado indefinidamente, ou substituindo-o por um novo. Existe um padrão de qualidade para filtros de linha, o UL 1449, que contém uma série de especificações mínimas para que o produto realmente seja capaz de proteger o equipamento contra os problemas mais comuns. O problema é que, para atender à norma, os filtros de linha precisam ir muito além de oferecer um fusível e uma coluna de MOVs, o que os torna bem mais caros que a maioria está disposta a pagar, sobretudo aqui no Brasil. Bons filtros de linha são geralmente anunciados pelos fabricantes como "surge protectors" (protetores contra surtos) e estão de acordo com a norma UL 1449 (se não houver referência a ele, ou outra norma similar, é por que se trata de um modelo mais simples). Eles normalmente custam de 50 a 200 dólares, por isso são muito incomuns aqui no Brasil. Você pode começar pesquisando no tripplite.com, belkin.com ou apc.com, na seção de "surge protectors": 732
  • 733. Os filtros de linha mais baratos servem mais como extensões do que como dispositivos de proteção. Eles podem no máximo ser usados como uma primeira linha de defesa, colocada entre a tomada e o nobreak ou estabilizador. Desta forma, você aumenta a chance deles sobreviverem a um raio ou desastre semelhante. Estabilizadores Os estabilizadores surgiram na década de 1940, como um paliativo para os problemas com a rede elétrica, que prejudicavam a operação de aparelhos sensíveis, como rádios e TVs valvuladas. A função do estabilizador é, como o nome sugere, "estabilizar" a corrente, compensando variações na rede elétrica. Embora tenham sido muito usados até a década de 1970, os estabilizadores já caíram em desuso na maior parte do mundo. A principal exceção acabou sendo o Brasil, onde eles continuam sendo massivamente produzidos até os dias de hoje. A principal função de um estabilizador é, como o nome sugere, "estabilizar" a corrente, absorvendo variações e entregando sempre 115V para o equipamento. Os três problemas mais comuns são os brownouts (sub-tensão), surtos (sobre- tensão) e spikes (descargas). Nos brownouts (também chamados de sags) a tensão cai durante um certo período, muitas vezes para 90V ou menos, o que pode ser causado tanto pela própria rede elétrica quanto pelo acionamento de um chuveiro ou outro aparelho elétrico que consuma muita energia. A maioria das fontes são capazes de funcionar com uma tensão um pouco mais baixa, mas isso 733
  • 734. aumenta a corrente (amperagem), fazendo com que a fonte aqueça mais que o normal. Os surtos são o problema mais comum, onde temos um aumento de até 100% na tensão, por um curto espaço de tempo. Os 110V da tomada se transformam em 150 ou 200V por algumas frações de segundo. Devido à sua curta duração, os surtos são relativamente benignos, mas o estabilizador tem a tarefa de eliminar o risco, filtrando o excesso de tensão. Finalmente, temos os spikes, que são descargas maciças, porém de curta duração. Eles surgem principalmente devido à ação de raios e queima de transformadores. Eles são especialmente perigosos, pois podem causar desde danos aos pentes de memória, HD e outros componentes sensíveis, até queimar completamente o equipamento. Infelizmente, quase todos os estabilizadores de 50 reais que temos no mercado nacional se enquadram nesta categoria, de forma que muitos simplesmente recomendam que o micro seja ligado diretamente na tomada (ou usando apenas um filtro de linha), sem estabilizador. Se a decisão for entre comprar um estabilizador de 50 reais de qualidade duvidosa e não comprar nenhum, então a melhor opção é economizar o seu dinheiro, afinal, "antes só do que mal acompanhado". Nesse caso use um filtro de linha, que oferece um nível mínimo de proteção, sem adicionar riscos. É interessante gastar também um pouco mais na fonte de alimentação, pois no final das contas é ela a grande responsável pela proteção do equipamento. Entre usar um estabilizador (mesmo que de boa qualidade) e usar um aterramento adequado, o aterramento ganha sempre. Entre usar um estabilizador de qualidade duvidosa e usar um filtro de linha comprovadamente eficiente, o filtro de linha também ganha. Existe ainda o "módulo isolador" da Microsol. Embora ele seja muitas vezes oferecido como um substituto ao fio terra, ele é na verdade um estabilizador que utiliza transformadores isolados (combinados com um disjuntor nos modelos mais caros). Ele oferece alguma proteção para PCs não aterrados e faz com que o gabinete do micro não dê choque, mas não substitui o aterramento. Ele é apenas um "quebra galho" para situações em que o aterramento é impossível ou inviável. Nobreaks (UPS) Existe uma certa polêmica com relação ao uso dos termos "nobreak" e "UPS" (uninterruptable power supply, fonte de energia ininterrupta). Ambos dizem respeito a um dispositivo capaz de manter o fornecimento de energia, por um certo período, em caso de queda da rede elétrica. O problema é que a grande maioria dos nobreaks no mercado são modelos offline ou line-interactive, onde existe uma interrupção de alguns poucos milésimos de segundo até que o inversor entre em ação e o fornecimento seja restaurado usando a carga das baterias. 734
  • 735. Devido a isso, muitos defendem o uso dos termos "short-break" (no lugar de "nobreak") ou "SPS" (standby power supply, ou fonte de energia de reserva) no lugar de UPS. Outros defendem ainda o uso do termo "BPS" (backup power supply) no lugar de ambos. Polêmicas à parte, o termo nobreak é mais comumente usado, por isso fico com ele. Você é livre para usar o termo que preferir. Existem vários tipos de nobreaks. Os mais comuns no mercado são os offline e os line-interactive. Existem alguns nobreaks online, geralmente modelos bem mais caros, destinados a uso industrial ou em data-centers, além dos line- boost. Entre os quatro tipos, os nobreaks online são os mais seguros. Neles, as baterias são carregadas de forma contínua e o inversor fica constantemente ligado, retirando energia das baterias e fornecendo aos equipamentos. Este layout faz com que os equipamentos fiquem realmente isolados da rede elétrica, com os circuitos de entrada e as baterias absorvendo todas as variações. O problema é que os nobreaks online são muito caros e, por isso, pouco comuns. Além da questão do preço, os nobreaks online possuem uma baixa eficiência energética, devido à dupla conversão realizada. A maioria dos modelos trabalham com 70 a 75% de eficiência, o que significa que para cada 300 watts consumidos pelos equipamentos, o nobreak desperdiça pelo menos mais 100 na forma de calor. Por causa disso, os nobreaks online são quase sempre relativamente grandes (os modelos de 2000 VA são geralmente do tamanho de um PC) e utilizam exaustores para dissipar o calor. Veja que devido ao grande aumento no consumo, o custo real de manter um nobreak online (incluído o gasto com eletricidade) acaba indo muito além do custo inicial do equipamento. Nobreaks online 735
  • 736. Em seguida temos os nobreaks offline (ou standby), que são a alternativa mais antiga e barata aos online. Neles, a corrente elétrica é filtrada por um conjunto de circuitos e entregue diretamente aos equipamentos, como faria um estabilizador. Paralelamente, temos as baterias e o inversor, que assume rapidamente em caso de queda na rede. O circuito responsável pelo chaveamento demora alguns milésimos de segundo (de 2 a 5 ms, na maioria dos modelos) para perceber a queda na rede e acionar o inversor, por isso existe uma breve interrupção no fornecimento aos equipamentos, que acaba passando desapercebida graças aos circuitos da fonte de alimentação. Os seguintes na lista são modelos line-interactive, que são uma evolução dos offline. Neles, o inversor também assume apenas quando existe falha na rede elétrica; a diferença é que o inversor fica ligado continuamente e um circuito de monitoramento se encarrega de monitorar a tensão e usar energia do inversor em caso de queda na tensão. Caso ocorra um brownout e a tensão caia em 10%, por exemplo, o circuito repõe os mesmos 10% usando energia do inversor, de forma que os aparelhos recebem sempre uma tensão de 115V. Os nobreaks line-interactive utilizam as baterias de uma forma muito mais ágil que os offline e são mais confiáveis. O problema é que eles também desperdiçam mais energia, já que o inversor precisa ficar continuamente acionado. Atualmente, existe uma quarta categoria, que são os nobreaks line-boost, que são uma versão popular dos line-interactive. Ao invés de manterem o inversor continuamente ativo, a postos para compensar variações na rede elétrica, eles utilizam um transformador auxiliar, que aumenta a tensão em um valor fixo (geralmente 12%) quando usado. Se a tensão cai de 110 para 95V, por exemplo, o transformador entra em cena, aumentando a tensão em 12%, atenuando a redução e fazendo com que os equipamentos recebam 106V. Caso a tensão caia abaixo de um certo limite, o inversor é acionado e passam a ser usadas as baterias. Muitos modelos utilizam transformadores com vários estágios (2, 3, ou até mesmo 4), oferecendo atenuações bem mais suaves. Modelo de nobreak com a tecnologia line-boost 736
  • 737. A tecnologia line-boost é muito mais barata que a line-interactive, por isso os fabricantes passaram a usá-la na maioria dos modelos. Embora eles também sejam chamados de "line-interactive", "interativo" ou até mesmo de "nobreak com regulação online" (note o uso da palavra "regulação", combinada com o termo "online" para dar a entender de que se trata de um nobreak online), eles são diferentes dos online ou line-interactive "de verdade". Atualmente, quase todos os modelos de nobreaks baratos, destinados ao mercado doméstico, são line-boost ou offline. O uso de microprocessadores e melhorias nos projetos fizeram com que eles se tornassem bem mais confiáveis que os modelos antigos, reduzindo muito a diferença na prática. O acionamento do inversor se tornou mais rápido (menos de 1 ms em muitos modelos) e o uso de capacitores e outros circuitos reduzem o tempo de queda na energia a quase zero. A eficiência também melhorou bastante. Muitos modelos atuais trabalham com 95% de eficiência (ou seja, para cada 300 watts de carga, o nobreak desperdiça apenas 15). Isso faz com que hoje em dia a escolha sobre qual nobreak comprar recaia mais sobre a marca, modelo e qualidade geral e não sobre a tecnologia usada. Outra característica importante é o formato de saída de onda do inversor. Quando o nobreak usa as baterias, o inversor precisa transformar a corrente contínua das baterias em corrente alternada. Basicamente, a corrente contínua é uma linha reta e constante, enquanto a corrente alternada é uma onda analógica que oscila 60 vezes por segundo (60 Hz). Os nobreaks mais baratos ou antigos utilizam inversores que geram ondas quadradas (procure referências a "square wave" nas especificações), onde a tensão varia de forma abrupta. Eles são um pouco perigosos, pois podem danificar aparelhos sensíveis ou até mesmo a própria fonte de alimentação do micro se as quedas de energia (e conseqüentemente o uso do inversor) forem freqüentes. Os modelos baratos mais recentes utilizam ondas senoidais por aproximação (nas especificações você encontrará termos como "pseudo-sine wave", "modified square wave", "near sine wave" ou "stepped sine wave"), que são um meio termo, onde as variações são feitas em intervalos maiores (evitando as variações súbitas das ondas quadradas), oferecendo algo mais próximo a uma onda analógica. Finalmente, temos os modelos mais caros, que geram ondas senoidais "puras" ("sine wave" ou "pure sine wave"), ou seja, virtualmente idênticas às fornecidas pela rede elétrica. Estes são naturalmente os melhores dentro do quesito. Note que não existe uma relação direta entre a tecnologia usada (offline, online, etc.) e o formato de onda usado pelo inversor. Entretanto, como os inversores que geram ondas senoidais são mais caros, eles acabam sendo usados apenas nos modelos premium, que naturalmente utilizam tecnologias melhores. Você nunca encontraria um nobreak online para uso industrial com um inversor barato gerando ondas quadradas. 737
  • 738. Uma observação é que você nunca deve usar um estabilizador entre o nobreak e o PC, pois os estabilizadores são feitos para receberem ondas senoidais. Ao receber as ondas quadradas geradas por um nobreak barato, o estabilizador vai aquecer e desperdiçar energia tentando retificar as ondas. Em casos mais extremos, ele pode até mesmo queimar e/ou danificar os equipamentos ligados a ele. Se isso for lhe fazer dormir mais tranquilo a noite, você pode usar o estabilizador em conjunto com o nobreak, desde que o estabilizador fique entre o nobreak e a tomada, e não o contrário. A principal desvantagem de fazer isso é que você aumenta o desperdício de energia, já que são somadas as perdas causadas pelo nobreak e as causadas pelo estabilizador, o que pode representar um aumento perceptível no consumo geral do equipamento. Além disso, antes de ligar o nobreak no estabilizador, é importante checar as capacidades de fornecimento. Se você tem um nobreak de 600 VA, o ideal é usar um estabilizador de 800 VA ou mais. Esta margem de segurança é importante por dois fatores: o primeiro é que a eficiência do nobreak gira em torno de 90 a 95%, o que significa que ao fornecer 600 VA para o micro, ele vai consumir 630 ou 660 VA no total. O segundo fator é que o nobreak precisa recarregar a bateria depois que ela é usada, o que aumenta seu consumo em mais 10% (ou mais). Se a capacidade do estabilizador for igual ou menor que a do nobreak, não o use em hipótese alguma. Devido a tudo isso, o uso de estabilizadores, módulos isoladores ou qualquer outro tipo de dispositivo "ativo" em conjunto com o nobreak não é recomendável. Se a idéia é proteger o nobreak, o correto é utilizar um bom filtro de linha, que é um dispositivo passivo. Mais uma vez, vale lembrar que "nada substituiu o aterramento"; ele é a proteção mais efetiva (e uma das mais baratas) contra as intempéries. Continuando, muitos modelos de nobreaks oferecem a possibilidade de usar um cabo de monitoramento, que pode ser tanto um cabo USB quanto um cabo serial (nos modelos mais antigos) ligado ao micro. Um software se encarrega de monitorar o status e a carga das baterias e pode ser programado para desligar o PC ou executar outras ações quando a carga das baterias está no fim. No Windows você pode usar as opções disponíveis na aba "UPS" do "Painel de Controle > Opções de energia" (ou usar algum software fornecido pelo fabricante), enquanto no Linux você utilizaria o "upsd" (o daemon genérico) ou o "apcupsd" (específico para nobreaks da APC). Eles estão disponíveis nas principais distribuições, precisam apenas ser configurados e ativados. Você pode ler mais sobre eles no http://www.networkupstools.org/compat/ e http://www.apcupsd.com/. Inversores Os inversores transformam a corrente contínua de 12V fornecida por uma bateria na tensão alternada de 115V, fornecida aos aparelhos. Como vimos, o inversor é um dos componentes do nobreak, mas também existem muitos 738
  • 739. modelos autônomos à venda no mercado, que podem ser ligados no acendedor de cigarros ou diretamente na bateria do carro. Eles são uma opção para quem quer usar o notebook ou outros aparelhos quando está viajando, ou durante temporadas em campings ou locais sem eletricidade. A maioria dos modelos oferece uma capacidade de 150 a 600 watts. Existem também alguns modelos baratos, destinados a alimentar um único notebook, que fornecem apenas 100 watts (ou menos), mas, em compensação, custam geralmente menos de 100 reais. Inversor que pode ser ligado no acendedor de cigarros do carro Combine o inversor com um notebook e um plano de acesso via GPRS (via celular) e você tem uma solução para se manter conectado em praticamente qualquer lugar ;). VA x watts Ao comprar um estabilizador ou um nobreak, a capacidade é sempre informada em VA (Volt-Ampere) e não em watts. Em teoria, um nobreak ou estabilizador de 600 VA seria capaz de suportar uma carga de 600 watts, mas na prática ele acaba mal conseguindo manter um PC que consome 400. Se você realmente ligasse um PC que consumisse 600 watts, ele desligaria (ou queimaria!) quase que instantaneamente. Essa diferença ocorre por que a capacidade em VA é igual ao fornecimento em watts apenas em situações onde são ligados dispositivos com carga 100% resistiva, como é o caso de lâmpadas e aquecedores. Sempre que são incluídos componentes indutivos ou capacitivos, como no caso dos PCs e aparelhos eletrônicos em geral, a capacidade em watts é calculada multiplicando a capacidade em VA pelo fator de potência da carga, sendo que a maioria das fontes de alimentação trabalha com fator de potência de 0.65 ou 0.7. Isso significa que um estabilizador de 600 VA suportaria, em teoria, um PC que consumisse 400 watts, utilizando uma fonte de alimentação com fator de potência de 0.66. Como é sempre bom trabalhar com uma boa margem de segurança, uma boa regra para calcular a capacidade "real" em watts é dividir a capacidade em VA por 2. Assim, um nobreak de 600 VA suportaria um PC com consumo total de 300 watts com uma boa margem. 739
  • 740. Proteção para a linha telefônica Se você acessa via modem ou ADSL, é importante comprar um nobreak ou estabilizador com proteção para a linha telefônica, já que a incidência de raios através da linha telefônica é bem maior do que através da rede elétrica. O principal motivo é que na rede elétrica temos os transformadores e disjuntores, que funcionam como uma barreira inicial, enquanto a linha telefônica é uma ligação direta entre o seu modem e a central, sem proteções adicionais pelo caminho. Uma observação é que qualquer filtro ou protetor para a linha telefônica causa uma pequena perda de sinal, devido ao uso de MOVs e outros componentes. Por isso é importante comprar produtos de boa qualidade, onde a perda é menor. Não acredite nos filtros de 5 reais ou em receitas folclóricas como dar nós no cabo; os circuitos protetores são caros, por isso apenas os estabilizadores e nobreaks de boa qualidade oferecem uma proteção real. Embora menos comum, também é possível que o equipamento seja danificado através da placa de rede, caso existam outros micros sem proteção na rede, ou caso o modem ADSL (ligado ao hub) esteja ligado diretamente na linha telefônica. Um raio que atinja outro equipamento pode continuar através do cabo de rede e a partir daí danificar o hub e os micros ligados a ele. A rede é um ponto vulnerável contra descargas elétricas, pois ao contrário da rede elétrica, a rede não possui aterramento. A única rota de escape são os próprios micros, daí o perigo. Autonomia Outra dúvida comum com relação aos nobreaks é a autonomia. Os fabricantes fazem uma grande confusão com relação a isso, publicando estimativas de consumo, do tipo "1 PC onboard + 1 monitor de 15" + impressora jato de tinta = autonomia de 20 minutos" (como vi nas especificações de um SMS Manager III), sem especificar a capacidade exata das baterias. Com exceção de modelos específicos, todos os nobreaks utilizam baterias de chumbo ácido compactas. Elas são muito similares às baterias usadas em carros, mas são menores e possuem uma capacidade reduzida. 740
  • 741. Bateria de nobreak (em proporção com um HD de 3.5") O mais comum é que sejam usadas baterias de 7.2 Ah (as de carro possuem 44, 48, ou mesmo 52 Ah). Os nobreaks menores, de 600 VA normalmente utilizam apenas uma, enquanto os maiores, de 1.3 VA utilizam duas. A capacidade das baterias pode variar de acordo com o modelo (você pode checar nas especificações), mas raramente são usadas mais de duas baterias internas. Ao invés disso, são oferecidos modelos com engates para baterias externas. Já que você pode dizer se o seu nobreak usa uma ou duas baterias simplesmente pelo tamanho, fica fácil calcular a autonomia. Os "7.2 Ah" de capacidade da bateria indicam que ela é capaz de fornecer uma carga de 1 ampere por 7.2 horas a 12 volts (que é a tensão nominal da bateria). O nobreak utiliza um inversor para transformar os 12V fornecidos pela bateria nos 115 volts que são fornecidos ao micro. Se temos 7.2 Ah a 12V, significa que temos 0.75 amperes hora a 115V. Isso significa que a bateria duraria 30 minutos caso seu micro consumisse 156 watts (o que seria próximo do consumo típico de um desktop com um processador e placa 3D razoáveis, gravador e monitor LCD), ou 20 minutos caso ele consumisse 234 watts (um micro similar, só que agora usando um monitor CRT de 17"). Na prática, a conta não é tão exata assim, pois existe alguma perda de energia nos circuitos do nobreak e na fonte de alimentação do micro, sem contar que ele interrompe o fornecimento antes que a bateria fique completamente descarregada. Levando tudo isso em consideração, seria conveniente reduzir 741
  • 742. nosso cálculo teórico em 20 a 25% para chegar a um número mais próximo da realidade. Temos em seguida a questão das baterias externas. Nada impede que você simplesmente substitua a bateria interna do seu nobreak por uma bateria de carro; o carregador incluído no nobreak vai demorar dias para carregar a bateria superdimensionada e o resultado não vai ser muito bonito esteticamente, mas funcionar, funciona. Uma bateria nova, de 44 Ah, lhe daria uma autonomia 6 vezes maior que a bateria padrão. O grande problema é que isso viola a garantia e, como disse, o carregador do nobreak demoraria muito para conseguir carregar a bateria de maior capacidade. Existe ainda a possibilidade de que o maior volume de uso abrevie a vida útil do inversor, inutilizando o nobreak antes da hora. Chegamos então aos modelos de nobreak com engates para baterias externas. A principal diferença é que eles incluem carregadores dimensionados para carregar as baterias externas em tempo hábil, além de serem muito mais práticos. Novamente, você tem a opção de comprar as baterias externas oferecidas pelo fabricante, ou usar baterias de carro comuns; basta comprar o cabo apropriado. Cabo de engate para bateria externa Em casos onde você realmente precisa de muita autonomia, é possível ainda usar duas ou mais baterias ligadas em paralelo. Neste caso você liga o pólo positivo da segunda bateria no pólo positivo da primeira, o negativo da segunda no negativo da primeira, o positivo da terceira no positivo da segunda e assim por diante. Ligando duas baterias de 12V e 44 Ah em paralelo, você tem como resultado uma bateria de 12V e 88 Ah. A principal recomendação é que você procure cabos apropriados, não tente improvisar usando fios comuns, que 742
  • 743. podem superaquecer ou simplesmente não serem capazes de suportar a amperagem necessária, fazendo com que o nobreak desligue o fornecimento por achar que a bateria está fraca. Vale lembrar que como a bateria trabalha com tensão de 12V, a amperagem transmitida através do cabo é bastante alta. Se o nobreak está fornecendo 300 watts de energia para os equipamentos, significa que o cabo da bateria está transportando uma corrente de quase 30 amperes, o que não é pouca coisa. Se você tiver a curiosidade de medir a tensão fornecida à bateria durante o carregamento (usando o multímetro), não se assuste se ver um valor de 13.6 ou 13.8V, esta é a tensão normal de carregamento. Embora a tensão nominal da bateria seja de 12 volts, ela oscila entre 9.4 e 13.6, de acordo com o nível de carga. Na maioria dos nobreaks, o alarme se intensifica quando a bateria atinge 10.5V e o inversor é desligado quando ela atinge 9.5V, evitando que a bateria seja completamente descarregada (o que abreviaria sua vida útil). Capítulo 9: Configuração do Setup, drivers e utilitários Quando você liga o micro, o primeiro software que é carregado é o BIOS da placa-mãe, que faz a contagem da memória RAM, realiza uma detecção rápida dos dispositivos instalados e, por fim, carrega o sistema operacional principal a partir do HD, CD-ROM, pendrive, disquete, rede ou outra mídia que estiver disponível. Este procedimento inicial é chamado de POST (Power-on self test). O POST tem duas funções básicas: detectar o hardware instalado (atribuindo endereços de IRQ, endereços de I/O e outros recursos) e verificar se os componentes básicos (processador, memória, placa de vídeo e circuitos de comunicação) estão funcionando como deveriam. Quando é encontrado algum erro grave, como blocos defeituosos logo nos primeiros endereços da memória RAM, defeitos no processador ou em componentes essenciais do chipset da placa-mãe, o BIOS emite o código de avisos sonoros referente ao problema e paralisa o boot. Além da função de "dar a partida", o BIOS oferece uma série de rotinas de acesso ao vídeo, HDs e outros periféricos, que podem ser usados pelo sistema operacional. Hoje em dia, tanto o Windows quanto o Linux acessam o hardware através de drivers especializados, mas na época do MS-DOS as rotinas do BIOS eram importantes. Chegamos então ao Setup, um programa de configuração para os parâmetros do BIOS. Nos primeiros PCs, o BIOS era um aplicativo separado, que precisava ser carregado através de um disquete de boot, mas a partir dos micros 386 ele passou a fazer parte do BIOS principal. As opções configuráveis através do Setup variam muito de acordo com o tipo de placa e a que público ela é destinada. Temos desde notebooks, com conjuntos incrivelmente limitados de opções, até placas destinadas a entusiastas, com mais de 20 opções só para ajustar os tempos de acesso da memória. 743
  • 744. Assim como todo software, tanto o BIOS quanto muitas vezes o próprio Setup possuem bugs, em muitos casos graves. É normal que qualquer fabricante respeitável disponibilize um conjunto de atualizações para o BIOS de uma placa popular. Em geral, a ausência de atualizações de BIOS disponíveis não é um sinal de que as placas não possuem problemas, mas simplesmente que o fabricante não se dá ao trabalho de corrigi-los. O BIOS é quase sempre escrito em assembly, muitas vezes com módulos escritos em C. Por ser um programa complexo, que possui diversas camadas de legado, acumuladas desde o PC original, o BIOS de uma placa-mãe típica é um software cada vez mais caro e difícil de se manter. Existe atualmente cada vez mais pressão em torno do desenvolvimento de um sistema mais elegante, que possa desempenhar as funções dos BIOS atuais de forma menos problemática e abrir espaço para a introdução de novos recursos. Uma tecnologia já em uso é o EFI (Extensible Firmware Interface), usada em placas-mãe para o Intel Itanium e também nos Macs com processadores Intel. O EFI utiliza uma arquitetura modular, bem mais limpa e eficiente, que permite o uso de módulos personalizados para os dispositivos de cada placa-mãe, mantendo (opcionalmente) compatibilidade com o sistema antigo. No caso dos Macs, esta camada de compatibilidade é desativada (de forma a dificultar a vida de quem pretende instalar Linux ou Windows em dual boot com o MacOS), mas, no caso de placas avulsas, o EFI viria com o modo de compatibilidade ativado, permitindo rodar qualquer sistema. Existe ainda um projeto para substituir o BIOS da placa-mãe por uma versão compacta do Kernel do Linux, que executa as mesmas funções, mas de uma forma mais confiável e flexível. Você pode obter mais informações sobre ele e sobre as placas suportadas no: http://www.linuxbios.org/. Continuando, depois de fazer seu trabalho, o BIOS carrega o sistema operacional, lendo o primeiro setor do disco rígido o "Master Boot Record" (MBR), também conhecido como trilha zero ou trilha MBR. No MBR vai o gerenciador de boot, um pequeno software encarregado de dar a partida no sistema operacional. O gerenciador de boot usado no Windows XP e no Vista é chamado de NTLDR, enquanto no Linux o mais usado é o Grub. Na verdade, no MBR mesmo vai apenas um bootstrap, um pequeno software que instrui o BIOS a carregar o executável do gerenciador de boot, armazenado em um ponto específico do HD. O MBR propriamente dito ocupa um único setor do HD (apenas 512 bytes), de modo que não é possível armazenar muita coisa diretamente nele. Como pode ver, o BIOS não se preocupa em detectar qual sistema operacional está instalado no HD, nem muito menos tentar ler o sistema de arquivos em que ele (o HD) está formatado. Tudo o que ele faz é ler o setor de boot do HD e deixar que o gerenciador de boot faça seu trabalho. Se isso não for possível, ele exibe a fatídica mensagem "No boot device available", ou similar, e espera que você resolva o problema. :) 744
  • 745. Na grande maioria dos casos, pressionamos a tecla "Del" durante o início do boot para acessar o Setup. Nos notebooks é usada normalmente a tecla "F2", mas (embora relativamente raro) existem casos onde a tecla de atalho é "Esc", "F1", "F8", "F10", "Ins" ou mesmo combinações de teclas, como "Ctrl+Esc", "Alt+Esc", "Ctrl+Alt+Esc", "Ctrl+Alt+Enter" ou "Ctrl+Alt+F2". Desde a década de 90, o mercado de desenvolvimento de BIOS é dividido entre a AMI (a mais usada atualmente), a Award e a Phoenix (usada predominantemente em notebooks). Como era de se esperar, cada um dos três utiliza uma interface um pouco diferente para o Setup, mas as opções propriamente ditas dependem mais do fabricantes da placa do que da marca do BIOS. Os notebooks são geralmente os mais pobres em opções, já que são configurações prontas, onde não se espera que você altere muitos componentes ou faça overclock. Esta é a interface mais tradicional, usada tanto em BIOS da Award quanto da AMI e até mesmo em alguns da Phoenix, onde as opções são divididas em menus. Você navega entre as opções usando as setas, Enter e Esc, e altera as opções dentro das seções pressionando Enter e escolhendo o valor desejado dentro de um submenu com as opções disponíveis: Durante a década de 1990, a AMI utilizou uma interface gráfica, onde você usava o mouse para navegar entre as opções. Apesar de ser considerada mais fácil por alguns, essa interface acabou não pegando e foi substituída pela interface baseada em abas utilizada atualmente. Nela, você usa as setas para a direita e esquerda para alternar entre as seções, as setas para cima e para baixo (além de Enter e Esc) para navegar entre as opções e acessar os submenus e altera as opções usando as teclas "+" e "-". 745
  • 746. Em ambas as interfaces, você pode salvar e sair usando a tecla F10, ou sair sem salvar pressionando Esc na tela principal. As configurações do Setup são salvas no CMOS, a área de memória volátil dentro do chip com o BIOS. É justamente isso que permite que as configurações sejam apagadas ao mudar a opção do jumper ou ao retirar a bateria, o que permite "destravar" a placa ao tentar um overclock mais extremo ou usar qualquer opção que faça o micro passar a travar durante o POST, sem que você tenha chance de acessar o Setup para restaurar a configuração anterior. A seção mais básica é a "Main" ou "Standard CMOS Setup", que permite ajustar o relógio do sistema e conferir a detecção dos HDs. Além de ser ajustado manualmente através do Setup, o relógio do sistema pode ser ajustado via software, o que é feito automaticamente pela maior parte dos programas que acertam o relógio do sistema via internet. De qualquer forma, é sempre importante acertar o relógio ao montar o micro, antes de instalar o sistema operacional. Existe também a opção "Legacy Diskette A", usada para indicar se um drive de disquetes está instalado. Use "1.44M, 3.5 in.", caso tenha um drive instalado, ou "Disabled", se não tiver nenhum. Apesar de poucos ainda utilizarem drives de disquetes (pelo menos em micros novos) eles ainda são necessários em muitos casos para carregar drivers da porta SATA ou RAID ao instalar o Windows XP. O problema foi resolvido apenas com o Vista, onde os drivers podem ser carregados também a partir de um CD-ROM ou pendrive. Discos e RAID Antigamente, a detecção dos HDs era feita através da opção "IDE HDD Auto Detection" presente no menu principal do Setup, mas em placas atuais a 746
  • 747. detecção dos HDs é feita automaticamente durante o POST e os HDs presentes aparecem dentro da seção Main: Seção Main do Setup, mostrando os drives instalados Acessando o submenu referente a cada um dos discos instalados, você tem algumas opções adicionais, como ajustar os modos de transferência (PIO Mode e DMA Mode), além de desativar o uso do SMART, LBA e transferências de 32 bits. Estas opções podem ser úteis para solução de problemas em algumas situações, mas em 99.9% dos casos você simplesmente mantém o SMART e o "32bit Data Transfer" ativados e as demais opções em "Auto". O BIOS detecta estas configurações automaticamente a partir de informações transmitidas pela controladora do HD ou drive óptico, por isso existe pouca margem para erros de detecção: 747
  • 748. Submenu com opções relacionadas ao HD, dentro da seção Main Como você pode ver, o modelo e os recursos suportados pelo HD são exibidos na parte superior da tela, o que é uma forma rápida de identificar o HD instalado, sem precisar primeiro instalar o sistema e rodar algum programa de diagnóstico. Uma busca rápida no Google pelo modelo (ST380011A no HD do micro mostrado no screenshot) permite encontrar as especificações completas do drive. Uma observação importante sobre as portas SATA e IDE da placa-mãe é que elas podem ser desativadas, ou configuradas para operar em modo RAID. Por padrão, as portas ficam ativadas e configuradas para operar em modo normal, de forma que você precisa alterar a configuração para ativar o uso do RAID. Se você pegar uma placa-mãe usada, onde os HDs misteriosamente não são detectados pela placa, verifique antes de mais nada se elas não estão desativadas. Se mesmo assim o HD não for detectado, experimente instalá-lo em outra porta. Como cada porta IDE ou SATA é controlada por um circuito separado dentro do chipset, é muito comum que uma das portas da placa se queime por motivos diversos, mas as demais continuem funcionando. As opções para desativar as interfaces SATA e IDE estão geralmente dentro da seção "Advanced", "Features Setup", "IDE Function Setup", "Integrated Peripherals" ou "Onboard Devices Configuration" do Setup. Como você pode ver, existe uma grande variação nos nomes usados para identificar as mesmas seções e opções em diferentes placas, por isso é mais importante entender o que as opções fazem e tentar localizá-las com base nas palavras-chave em placas diferentes, do que tentar decorar todas as variações possíveis. 748
  • 749. Voltando à ativação das interfaces, procure pelas opções "Onboard IDE", "Onboard PCI IDE Controller", "IDE Controller", "Onboard SATA-IDE", "Onboard SATA Controller" ou "Serial ATA Controller", que devem ser configuradas com o valor "Enabled" ou "Both" (que indica que ambas as postas IDE devem permanecer ativadas): Opções para ativar/desativar as portas IDE e SATA da placa-mãe A opção "SATA DMA Transfer" ativa o suporte a DMA para os HDs ligados às portas SATA. Desativar o DMA pode ser usado para tentar solucionar problemas relacionados à detecção dos HDs ou corrupção dos dados. Naturalmente, desativar esta opção causa uma grande redução no desempenho dos drives, por isso é algo que você só deve tentar em último caso. Em seguida temos a configuração do suporte a RAID. Na maioria das placas com chipsets SiS e VIA (com apenas duas portas SATA), a configuração do RAID para as portas SATA vai na mesma opção onde elas podem ser desativadas. Em algumas placas é usada a opção "Configure SATA as" e em outras a opção fica escondida dentro de um submenu da seção "Main" ou "Advanced". Para ativar o RAID, você usa a opção "RAID" ao invés de "SATA", "IDE" ou "Enabled", opções que fazem as portas SATA operarem em modo normal: 749
  • 750. Opções para ativar o RAID usando as portas SATA Em placas com quatro ou mais interfaces SATA que podem ser usadas em modo RAID, existe normalmente uma seção separada, onde você pode indicar quais das portas farão parte do array RAID e quais devem permanecer operando em modo normal. Isso permite que (em um micro com três HDs) você use dois dos drives para criar um array RAID 0, mas mantenha o terceiro drive fora do array para armazenar backups, por exemplo. Como de praxe, a localização das opções varia de acordo com a placa. Na maioria das placas Asus com chipsets nVidia, por exemplo, a configuração do RAID fica escondida dentro do menu Advanced > Onboard Device Configuration > NVRAID Configuration: 750
  • 751. Depois de ativar o RAID no Setup, você tem acesso a uma interface (separada) de configuração, onde você deve criar o array, adicionando os HDs que farão parte dele e escolher o modo de operação. Em algumas placas ela é acessada ao pressionar a tecla "Tab" ou "F10" durante o boot, em outras são usadas seqüências como "Ctrl+S", "Ctrl+J" ou "Ctrl+M": Utilitário de configuração do array RAID Dentro da interface, a opção "RAID Mode" é a mais importante. Use a opção "Mirroring" para criar um array RAID 1 (2 ou 4 HDs), "Striping" para RAID 0 (2, 3 ou 4 HDs), "Stripe Mirroring" para RAID 10 (4 HDs) ou "Spanning" para usar JBOD, onde os dados são simplesmente espalhados entre os HDs. A opção "Striping Block" ajusta o tamanho dos blocos ao usar RAID 0 ou 10. É importante enfatizar que todos os dados dos HDs são apagados ao criar um array RAID 0, por isso o ideal é que você faça isso logo depois de montar o micro. Ao criar um array RAID 1 os dados são normalmente apenas copiados 751
  • 752. do primeiro para o segundo HD, mas é sempre bom fazer backup para qualquer eventualidade. A vantagem de utilizar a controladora RAID da placa-mãe, ao invés de simplesmente criar um sistema de RAID via software usando as opções disponíveis no Windows ou Linux, é que você pode usar o array RAID diretamente para instalar o sistema. No caso do Windows XP, é preciso criar um disquete com os drivers da controladora e carregá-lo durante a instalação, pressionando a tecla "F6" quando é exibida a mensagem "Pressione F6 se precisar instalar um driver SCSI ou RAID de TERCEIROS". Procure por um executável chamado "Makedisk.exe" ou similar dentro da pasta "drvdisk", "SATA" ou "RAID" no CD de drivers da placa-mãe. O Windows XP SP2 inclui um conjunto bem mais atualizado de drivers e o Vista permite carregar os arquivos a partir de um pendrive, o que reduz a necessidade do disquete. Uma coisa que você deve ter em mente ao criar um array RAID 0 ou RAID 10 usando a controladora embutida na placa mãe é que nem sempre é possível transportar os discos para uma placa diferente (como ao fazer upgrade), sem precisar formatar os HDs e recriar o array. Normalmente, a migração ocorre sem maiores problemas ao instalar os HDs em outra placa com uma versão superior do mesmo controlador RAID, como ao migrar de uma placa mãe Intel baseada no chip ICH7 para uma recente, baseada no ICH9. Os problemas surgem ao tentar migrar para uma placa mãe com uma controladora diferente, como de uma placa com chipset Intel para outra com chipset nVidia. Nesse caso a migração raramente é possível, devido a diferenças na implementação usadas pelos fabricantes. Ao instalar os HDs em uma controladora incompatível, ela simplesmente não reconhecerá o array e não será capaz de acessar os dados. Mesmo em casos onde a migração é possível, é necessário usar uma mídia de instalação do Windows para fazer o reparo do sistema, instalando o driver da nova controladora, já que o Windows não tem como acessar os HDs em RAID sem eles. Outra observação com relação ao suporte a RAID é que muitas placas, sobretudo as baseadas em chipsets VIA ou SiS utilizam um controlador SATA/RAID externo, geralmente da Marvell ou JMicron, de forma a oferecer 4 ou 8 portas SATA, em vez de apenas 2 ou 4. Neste caso, o controlador possui um BIOS próprio, inicializado logo depois do BIOS principal e você precisa configurar ou um ou outro, de acordo com quais portas for utilizar para o RAID. Não se surpreenda ao receber uma mensagem do segundo controlador a cada boot, reclamando que não encontrou nenhum disco; isso é normal ao usar as portas referentes ao controlador embutido no chipset: 752
  • 753. Não se assuste. Em algumas placas é assim mesmo :) Em quase todas as placas que utilizam controladores extra, existe uma opção para desativá-los no setup. No caso da Asus M2V, por exemplo, que usa um controlador Marvell 88SE6121, está disponível a opção "Onboard Marvel6121 Controller" dentro da seção Onboard Devices Configuration, que permite desativar as duas portas SATA ligadas a ele. Como não é possível dar boot através de HDs ligados a estas duas portas, muita gente acaba não utilizando- as e prefere desativar o controlador no Setup para simplificar a configuração. Boot Uma das configurações mais básicas do Setup é a ordem de boot. Apesar do mais comum ser dar boot a partir do CD-ROM para instalar o sistema e a partir daí dar boot a partir do HD, existe também a possibilidade de dar boot a partir de pendrives, HDs externos e outras unidades de armazenamento removível e também dar boot através da rede. Na maioria das placas, as opções estão concentradas dentro da seção "Boot", mas em muitas você pode usar as opções "1st Boot Device", "2nd Boot Device", etc. dentro da seção "Advanced Setup". Definição da ordem de boot 753
  • 754. Muitos BIOS antigos tinham problemas com a ordem de boot. Eles simplesmente travavam caso não encontrassem um sistema de inicialização no primeiro dispositivo, sem tentar os demais. Os atuais são bem mais espertos e realmente procuram por setores de inicialização válidos, pulando os dispositivos que não estão presentes, ou que não contêm sistema operacional. Isso permite que você deixe o CD-ROM continuamente como dispositivo primário de boot, coloque o seu pendrive (ou outro dispositivo removível) como segundo e deixe o HD em terceiro, por exemplo. Dessa forma, quando você deixar uma distribuição Linux live-CD ou uma mídia de instalação do Windows no drive, o micro inicia o boot através dele, quando deixar seu pendrive (com uma instalação do Linux ou outro sistema) ele tentará inicializar através dele e, quando nenhum dos dois estiver disponível, é realizado um boot normal através do HD. Em casos onde você tenha mais de um HD instalado, você pode definir uma ordem "interna" de inicialização entre os HDs disponíveis. Isso é importante, pois permite definir se o BIOS deve inicializar a partir do HD SATA ou IDE, por exemplo. Em muitos casos, existem também seções separadas para o drive óptico (caso tenha mais de um) e para os dispositivos removíveis: Ordem "interna" de boot entre os HDs e pendrives USB instalados Dependendo da placa e também do BIOS usado, os pendrives podem ser detectados como HDs, ou como discos removíveis, mas na prática isso não faz muita diferença. O mesmo se aplica também aos HDs externos, instalados em gavetas USB. Como ambos são vistos pelo sistema como dispositivos USB mass-storage, não existe muita diferença. O suporte a boot através de pendrives é incipiente nas placas fabricadas até 2004/2005, por isso não é incomum que o boot via USB não funcione mesmo em placas de fabricação relativamente recente. 754
  • 755. Embora seja perfeitamente possível instalar o Windows XP em um pendrive de 2 GB ou mais (desde que você consiga carregar o disquete com os drives da porta USB, de forma que o instalador consiga enxergar o pendrive como uma unidade de armazenamento e permita usá-lo para a instalação do sistema), o mais comum é usar o pendrive para instalar uma distribuição Linux e, assim, ter um sistema portátil. A instalação do Linux em pendrives já sai do escopo deste livro, mas você pode ler detalhes sobre o assunto neste meu tutorial publicado no Guia do Hardware: http://www.guiadohardware.net/tutoriais/instalar-kurumin- pendrive/. Outra possibilidade, muito utilizada, é o boot via rede. Dois sistemas de boot remoto muito utilizados são o LTSP (com um servidor Linux) e o Citrix MetaFrame, onde é utilizado um servidor Windows. A idéia central é armazenar todos os dados e softwares em um servidor central e usar clientes sem HD, que carregam o sistema via rede. É possível utilizar tanto terminais "burros", que simplesmente abrem uma seção remota do servidor sem executar nenhum processamento local, e terminais "inteligentes", que carregam os softwares via rede e os executam localmente. O boot via rede é feito via PXE, um protocolo de boot remoto originalmente desenvolvido pela Intel. Inicialmente, o PC manda um pacote de broadcast pela rede, que é respondido por um servidor DHCP especialmente configurado. A partir das informações fornecidas pelo servidor, o cliente inicia o carregamento do sistema via TFTP (uma versão simplificada do FTP) e, a partir de um certo ponto, pode acessar um compartilhamento de rede do servidor com o restante do sistema e softwares. A princípio, você pode pensar que usar um único servidor para executar aplicativos para 10 ou 20 terminais vai tornar tudo muito lento, mas na prática o sistema funciona muito bem, devido ao compartilhamento de recursos. Nem todos os clientes vão rodar aplicativos pesados simultaneamente e o servidor pode carregar uma única instância de cada aplicativo usado, abrindo apenas novas seções para cada cliente. Um servidor com 1 GB de RAM e um processador razoável pode tranquilamente servir aplicativos básicos para 20 terminais. O Citrix é um aplicativo caro, reservado para uso em empresas, mas o LTSP é um sistema gratuito, muito usado para criar redes de terminais leves aproveitando micros antigos. Você pode ler mais sobre a configuração de servidores LTSP e boot remoto neste guia que publiquei no Guia do Hardware: http://www.guiadohardware.net/guias/17/. Algumas opções também relacionadas ao processo de boot são: Quick Boot: Esta opção (caso ativada) faz com que o BIOS deixe de executar parte do conjunto de testes do POST, sobretudo as checagens relacionadas à memória, reduzindo o tempo de boot. É seguro mantê-la ativada, pois os testes de memória realizados pelo boot não são confiáveis de qualquer forma. Em 99% dos casos, defeitos graves nos módulos de memória passam despercebidos pelo BIOS e são notados apenas durante o carregamento do sistema operacional, na forma de erros e travamentos. 755
  • 756. Em alguns casos muito raros, ativar esta opção pode fazer com que o BIOS não detecte toda a memória instalada, mas isso também é o tipo de coisa que você perceberia durante o uso do micro. Full Screen Logo: Muitas placas exigem um splash gráfico no início do boot no lugar das mensagens de texto tradicionais. Na maioria dos casos esta imagem pode ser personalizada (como no caso das placas da Asus, que incluem o Asus MyLogo). Esta opção diz apenas se a imagem deve ou não ser exibida no boot. HDD Sequence SCSI/IDE First: Esta opção, encontrada em muitas placas antigas, permite definir a ordem de boot em casos onde uma controladora SCSI está instalada, indicando se o BIOS deve procurar o sistema primeiro nos discos SCSI, ou nos IDE. Nas placas atuais, quando uma controladora SCSI está instalada, os discos simplesmente aparecem no menu de ordem de boot, junto com os HDs SATA e IDE instalados, de forma que esta opção tornou-se desnecessária. Overclock As opções relacionadas à freqüência de operação e tensão do processador e memória são tradicionalmente agrupadas dentro da seção "CPU PnP Setup", mas hoje em dia os fabricantes vêm cada vez mais optando por criar seções com nomes mercadológicos. Nas placas da Asus, por exemplo, elas são distribuídas dentre as seções "JumperFree Configuration" e "CPU Configuration", enquanto nas DFI é usada a seção "Genie BIOS Settings". Algumas opções importantes ao fazer overclock são: AI Overclocking: Esta é uma opção encontrada em placas da Asus. Ela oferece uma espécie de "overclock for dummies", onde você pode especificar uma percentagem de overclock (5%, 10%, etc.) e o BIOS ajusta a freqüência do processador, memória, HyperTransport e outras usando valores predefinidos. Para visualizar as opções e ajustá-las manualmente, você precisa configurá-la com o valor "Manual". CPU Clock (ou CPU Frequency): Esta é a opção mais básica ao fazer overclock, onde você ajusta a freqüência do FSB. Em praticamente todos os processadores atuais, o multiplicador do processador é travado, de forma que a única forma de fazer overclock é aumentar a freqüência do FSB. As freqüências mostradas aqui equivalem à freqüência "real" do FSB, sem considerar as duas ou quatro transferências por ciclo. Um Core 2 Duo que utiliza bus de "1066 MHz", por exemplo, utiliza na verdade 266 MHz com quatro transferências por ciclo. São justamente os 266 MHz (e não os 1066) que aparecem no Setup. O mesmo ocorre no caso dos processadores AMD. 756
  • 757. Ajuste da freqüência do FSB CPU Multiplier (ou Processor Frequency Multiplier): Permite ajustar o multiplicador do processador. Nos Athlon 64 e nos Core 2 Duo o multiplicador é destravado para baixo, por causa do gerenciamento de energia, de forma que é possível usar um FSB mais alto e reduzir em alguns pontos o multiplicador do processador. Isso permite obter pequenos ganhos no acesso à memória e na comunicação entre os componentes. Uma exceção importante são os processadores Pentium EE e Core 2 Duo Extreme, as séries destinadas a entusiastas, onde o multiplicador é destravado. CPU Vcore Voltage (Processor Voltage, Core Voltage ou CPU Voltage): Aqui você pode ajustar a tensão de operação do processador. Aumentar a tensão em 0.05V ou mesmo 0.1V facilita o overclock, permitindo que o processador trabalhe estavelmente a freqüências um pouco mais altas. O maior problema é que o aumento na tensão, combinado com o aumento da freqüência, faz com que o consumo e a dissipação térmica do processador aumentem de forma exponencial, trazendo a necessidade de um cooler mais eficiente e de um projeto mais caprichado de ventilação do gabinete. Em alguns casos, você pode preferir fazer o caminho contrário, reduzindo a freqüência de operação e também a tensão do processador de forma a reduzir o consumo e, assim, economizar na conta de luz. Isso pode ser interessante no caso de micros que ficam ligados continuamente executando apenas tarefas leves, como compartilhar a conexão ou gravar programas de TV. FSB Spread Spectrum (CPU Spread Spectrum ou PLL1 Spread Spectrum): Esta é uma opção obscura, sobre a qual você não vai encontrar muitas explicações nos manuais dos fabricantes. Ela se destina a reduzir o nível de interferência eletromagnética emitida pelo PC e, assim, permitir que ele atenda às normas das agências reguladoras. Com o Spread Spectrum a freqüência do FSB é alterada para cima e para baixo em pouco menos de 1% em intervalos definidos, o que "espalha" a interferência em uma faixa maior do espectro. Esta 757
  • 758. variação torna o PC um pouco menos estável ao fazer overclocks agressivos, onde o PC já está operando próximo do limite, de forma que muitos preferem deixá-la desativada. HyperTransport Frequency (ou HT Frequency): Em placas soquete 754, 939, AM2 ou AM3, a freqüência do barramento HyperTransport é um fator importante ao fazer overclock, já que ele é especialmente sensível a aumentos na freqüência. Em algumas placas, a freqüência é baseada em multiplicadores. Ao usar "5x", por exemplo, a freqüência do HyperTransport é obtida multiplicando por 5 a freqüência do FSB. Neste caso, ao aumentar a freqüência do FSB, você deve compensar reduzindo o multiplicador do HyperTransport. Em outras, a freqüência do HyperTransport é independente do FSB e pode ser ajustada usando valores absolutos, como "800 MHz" ou "1000 MHz". Aumentar a freqüência do HyperTransport tem um impacto muito pequeno (ou mesmo nulo) sobre o desempenho. O mais importante aqui é manter o HyperTransport trabalhando o mais próximo possível da freqüência nominal, de forma que ele não prejudique a estabilidade do sistema ao fazer overclock. PCI Express Clock (ou PCIE Clock): Assim como no caso do HyperTransport, o barramento PCI Express é bastante sensível a aumentos na freqüência. Como em um PC atual, quase todos os periféricos são ligados a ele; você pode ter os mais diversos problemas ao aumentar a freqüência em mais do que 10 ou 15%, desde os HDs ou outros periféricos deixarem de ser detectados, até o PC simplesmente deixar de dar boot, lhe obrigando a limpar o CMOS para restaurar as configurações default do Setup. Em placas antigas, a freqüência do PCI Express era atrelada à do FSB, o que limitava os overclocks à freqüência suportada por ele. Placas atuais permitem que a freqüência seja ajustada de forma independente, o que permite usar freqüências muito altas para o FSB, mantendo o PCI Express nos 100 MHz default. Aumentar a freqüência do PCI Express aumenta apenas a velocidade da comunicação entre os componentes, e não no clock dos componentes em si, o que acaba tendo um efeito muito pequeno sobre o desempenho. Assim como no caso do HyperTransport, o melhor é simplesmente mantê-lo operando na freqüência default. PCI Clock Synchronization Mode: Quando disponível, esta opção permite ajustar a freqüência do barramento PCI. Usando o valor "33.3 MHz" ela é fixada no valor default, enquanto que ao escolher "To CPU" ela flutua junto com a freqüência do FSB. Em micros antigos, na época das placas soquete 7 e nos primeiros micros Pentium II e Pentium III, toda a comunicação entre os componentes da placa- mãe era feita através do barramento PCI, fazendo com que aumentar a freqüência de operação tivesse um impacto muitas vezes perceptível sobre o desempenho. Atualmente o PCI é usado apenas por placas de expansão instaladas nos slots da placa, de forma que raramente ele chega a ser 758
  • 759. saturado. O melhor então é simplesmente mantê-lo operando na freqüência default, evitando problemas de estabilidade. AMD K8 Cool'n'Quiet (ou Cool N'Quiet): Esta opção permite desativar o Cool'n'Quiet (em placas para processadores AMD), desativando o sistema de gerenciamento de energia. Minha sugestão é que o mantenha ativado, principalmente ao fazer overclock, pois ele reduz bastante o consumo elétrico do processador e a freqüência é chaveada de forma muito rápida, de forma bastante transparente. Em casos onde o gerenciamento não está funcionando, mesmo depois de instalar os drivers ou ativar o powernowd (no Linux), verifique se esta opção não está desativada no setup. Memória Todos os módulos de memória atuais, sem exceção, possuem o chip ESPD, que armazena as configurações indicadas pelo fabricante, incluindo a freqüência do módulo e os tempos de acesso. Apesar disso, muitas placas- mãe (possivelmente a maioria) oferecem um conjunto bastante completo de opções relacionadas à memória. Por padrão, as configurações são detectadas automaticamente, a partir do SPD, mas você pode alterá-las manualmente de forma a ganhar alguns pontos percentuais de desempenho. É recomendável sempre executar o teste completo do memtest depois de alterar as opções relacionadas à memória, de forma a confirmar a estabilidade do micro. Ele é extremamente eficiente em detectar problemas transitórios, que aparecem apenas em determinadas circunstâncias. Ao fazer overclock da memória, ele pode indicar erros similares aos de um módulo com defeitos físicos (já que ele não tem com saber o que causou o erro, sabe apenas onde ele ocorreu), mas nesses casos basta voltar às configuração originais para que tudo se normalize. Vamos, então, às configurações: 759
  • 760. Opções relacionadas à memória Memclock Mode (Timing Mode): Por default, esta opção vem com o valor "SPD" ou "Auto", o que que faz com que o BIOS configure as opções relacionadas à memória utilizado os valores definidos pelo fabricante (gravados no chip SPD do módulo). Normalmente você precisa alterar a configuração para "Manual" para ter acesso às demais opções. Memclock Value (Memclock Index Value, DRAM Speed ou DRAM Frequency): Esta opção permite ajustar a freqüência de operação dos módulos de memória. Lembre-se de que as memórias DDR realizam duas transferências por ciclo, as DDR2 realizam 4 e as DDR3 realizam 8. Em algumas placas é mostrado o valor "real" (geralmente de 100 a 233 MHz), enquanto outras mostram o valor "composto", que vai até 466 (DDR), 933 (DDR2) ou 1866 MHz (DDR3), o que no final dá na mesma. Assim como no caso dos processadores, os módulos de memória suportam sempre trabalhar a freqüências um pouco superiores às especificadas, o que permite obter pequenos ganhos de desempenho, em troca de menos estabilidade. Ao contrário das placas antigas, onde a freqüência da memória era atrelada à do FSB, nas atuais você pode ajustar as duas coisas de forma independente. Na maioria, você pode especificar a freqüência da memória diretamente, enquanto em algumas você ajusta um multiplicador, que indica a freqüência da memória em relação ao FSB. Outra opção ao fazer overclock da memória é manter (ou até mesmo reduzir) a freqüência de operação, mas em compensação reduzir os tempos de acesso. Como vimos anteriormente, nos PCs atuais, com memórias DDR2 ou DDR3, reduções nos tempos de acesso resultam geralmente em ganhos de desempenhos maiores que aumentos na freqüência. 760
  • 761. Memory Voltage (ou DDR Voltage Control): Os módulos de memória DDR2 e DDR3 utilizam tensões de, respectivamente, 1.8V e 1.5V. Assim como no caso dos processadores, aumentar a tensão da memória faz com que o módulo seja capaz de suportar freqüências de operação ligeiramente maiores (ou tempos de acesso mais baixos). Muitos módulos DDR2 "premium" utilizam tensões de 1.9V, 2.0V ou mesmo 2.1V por padrão, justamente para permitir que o módulo suporte temporizações mais agressivas. Você pode obter pequenos ganhos de desempenho (mesmo usando módulos genéricos) ao fazer o mesmo. O problema é que aumentando a tensão você aumenta também a dissipação de calor dos módulos, o que, sem um dissipador apropriado, pode acabar tendo um efeito contrário. De uma forma geral, aumentos de até 0.2V na tensão podem ser considerados seguros, mas aumentos maiores podem reduzir a vida útil do módulo. CAS Latency (CL ou TCL): O CAS Latency é a principal configuração relacionada ao tempo de acesso da memória. Ele determina o número de ciclos necessários para iniciar um burst de leituras. Os antigos módulos SDRAM trabalhavam com CAS Latency de 2 ou 3 ciclos, enquanto os módulos DDR2 atuais trabalham quase sempre com 4 tempos ou mais. Isso não significa que os módulos estejam regredindo, muito pelo contrário. Os 4 ciclos do módulo DDR2 equivalem a um único ciclo de um módulo SDRAM (já que o controlador opera ao dobro da freqüência e realiza duas transferências por ciclo, fazendo com que cada ciclo demore apenas um quarto do tempo). Alguns módulos DDR2 de alta qualidade chegam a trabalhar com apenas dois tempos, mas eles são mais caros e relativamente raros. O CAS Latency é informado nas especificações do módulo. Em alguns casos, é possível baixá-lo em um tempo (de 5 para 4, por exemplo), mantendo a estabilidade, mas isso não é uma regra. TRCD, TRP e TRAS: Estas três opções permitem ajustar os demais tempos de acesso. Vimos uma explicação sobre os tempos de acesso no capítulo sobre memórias. Vamos, então, a uma rápida revisão: O valor do TRCD (RAS to CAS delay) indica o tempo que o controlador espera entre o envio dos endereços RAS e CAS a cada leitura. O controlador envia o sinal RAS, espera o tempo referente ao valor do TRCD, envia o sinal CAS, aguarda o número de ciclos referente a ele e, então, finalmente obtém a leitura. Em um módulo DDR2 4-4-4-12, tanto o tCL quanto o tRCD demoram 4 ciclos, de forma que o acesso inicial demoraria um total de 8 ciclos. Em um módulo 5- 5-5-15, o tempo subiria para 10 ciclos. O TRCD não é tão importante quanto o CAS Latency, pois é usado apenas ao alterar a linha ativa. O TRP (Row Precharge Time) é mais um tempo de espera adicionado quando o controlador precisa mudar a linha ativa. Antes acessar uma linha de endereços, o controlador precisa carregá-la (precharge). O Row Precharge Time (tRP) indica justamente o tempo necessário para fazer o carregamento. Para realizar uma leitura em um módulo 4-4-4-12, o controlador precisa esperar 4 ciclos para o TRP, 4 ciclos para o tRCD, 4 ciclos para o tCL, totalizando 12 761
  • 762. ciclos. Ao fazer vários acessos consecutivos à mesma linha, são perdidos 12 ciclos no primeiro acesso, mas apenas os 4 referentes ao TCL nos acessos subsequentes. Sendo um pouco repetitivo, o tempo referente ao TCL é perdido em cada burst de 4 leituras, enquanto os outros dois são perdidos apenas ao mudar a linha ativa, daí darmos mais ênfase ao TCL do que aos outros. O TRAS (RAS Activate to Charge) indica o tempo necessário para realizar a leitura completa, que corresponde geralmente à soma dos três. O TRAS é o último número que aparece nas especificações do módulo. Em um módulo 4-4- 4-12, o "12" corresponde ao TRAS. Usei o termo "geralmente" porque existem casos de módulos nos quais o TRAS não é a soma dos três. Muitos módulos suportam um recurso chamado "Additive Latency", que permite que o comando para iniciar o precharge do banco seguinte seja enviado antes que a leitura termine. Isso faz com que o tempo total da leitura seguinte seja reduzido em 1 ou até mesmo 2 ciclos. Este é o caso dos módulos 5-4-4-11 ou 4-4-4-11, por exemplo. Em alguns módulos de baixo custo, é necessário um ciclo adicional para fechar o banco, que aumenta o tRAS ao invés de diminui-lo. É o caso dos módulos 5-5-5-16 ou 6-6- 6-19, por exemplo. Uma coisa curiosa sobre o TRAS é que usar um valor mais baixo que o suportado pelo módulo acaba reduzindo o desempenho ao invés de aumentá- lo, pois ele faz com que a página seja fechada antes que o burst de leituras seja concluído. Com isso o controlador precisa realizar um número maior de leituras, reduzindo drasticamente a taxa de transferência. Não é exibida nenhuma mensagem de erro, nem surgem problemas de estabilidade: o micro simplesmente fica mais lento. É importante rodar algum programa de benchmark (os testes do Everest ou do Sandra servem bem) depois de alterar as opções, de forma a detectar eventuais quedas no desempenho e também medir os ganhos em caso de sucesso. TRC, TRRD, TRFC, TWR, TWTR, TRTW e TWCL: Muitas placas oferecem um conjunto mais completo de opções, abrangendo também as temporizações mais exotéricas. Em muitas delas você precisa ativar a opção "Extended Memory Settings" (ou similar) para ter acesso a elas. Todas estas opções são secundárias e não afetam tanto o desempenho quanto as anteriores. Elas são apenas uma "última fronteira" para quem é perfeccionista e quer extrair até a última gota de desempenho. O volume e a ordem das opções variam de acordo com a placa, por isso procurei organizar a explicação de forma que ela seja útil no maior número possível de placas diferentes: O TRC (Row Cycle Time) é o tempo necessário para um ciclo completo de acesso a uma linha qualquer do módulo. Como de praxe, valores mais baixos resultam em um pequeno ganho no desempenho de acesso à memória, mas usar um valor muito baixo acaba resultando em corrupção dos dados ou perda de desempenho, já que o controlador não tem tempo de terminar a leitura. 762
  • 763. O TRRD (Row to Row Delay) indica o número de ciclos necessários para ativar a linha seguinte, no caso de leituras que envolvam dados armazenados em linhas diferentes. Esta opção é, de certa forma, similar ao Row Precharge Time. A diferença entre os dois é que o Row Precharge Time indica o tempo necessário para carregar as células da linha seguinte, enquanto o TRRD é um tempo de espera adicional que o controlador aguarda depois que a linha já está carregada. O TRFC (Row Refresh Cycle Time) indica a duração dos ciclos de refresh do módulo. Novamente, reduzir o valor resulta em um ganho muito pequeno de desempenho, pois o refresh é feito apenas algumas dezenas de vezes por segundo. Usar um refresh muito curto pode causar problemas de estabilidade, sobretudo com o módulo operando a altas freqüências, por isso, usar valores mais baixos acaba servindo mais para reduzir o percentual de overclock do que para melhorar o desempenho. O TWR (Write Recovery Time) é uma "pausa" incluída durante cada operação em uma seqüência de operações de escrita. Como elas são mais raras que as operações de leitura, ele acaba tendo um efeito pequeno sobre o desempenho. Outra opção similar é o TWTR (Write to Read Delay), uma pausa feita quando o controlador termina as operações de escrita e precisa iniciar uma série de operações de leitura. Em alguns casos, aumentar o valor padrão do TWR e do TWTR em um tempo pode ajudar a estabilizar o módulo ao usar ajustes mais agressivos nas outras opções, mas não espere nenhum ganho perceptível de desempenho ao reduzir os valores. O TRTW (Read to Write Delay) é similar ao TWTR, mas se aplica em situações onde o controlador executou uma série de operações de leitura e precisa agora iniciar uma série de operações de escrita. Finalmente, temos o TWCL (Write CAS Latency), que conclui nossa exaustiva explicação. Ele é o primo pobre do CAS Latency (TCL), que é aplicado às operações de escrita, em vez das de leitura. Embora menos importante que o TCL, ele tem um efeito maior sobre o desempenho do que as demais opções secundárias. CPC (ou 1T/2T Memory Timing): O CPC (Command Per Clock) é um tempo de espera adicional aplicado quando o controlador de memória alterna entre endereços em diferentes chips do módulo. Ao ativar um chip, o controlador precisa esperar um ou dois ciclos para que ele seja ativado, para só então enviar os comandos de leitura. Esta opção está presente apenas em algumas placas e pode ser ajustada com o valor "1T" e "2T". Módulos single-sided, ou seja, os módulos de mais baixa capacidade, onde os chips ocupam apenas um dos lados, podem geralmente trabalhar com apenas 1 tempo, enquanto os módulos com chips dos dois lados freqüentemente precisam de 2 tempos. Usar a opção 1T naturalmente resulta em um melhor desempenho, mas em muitos casos usar a opção 2T faz com que o módulo seja capaz de operar a freqüências mais altas, o que pode compensar a perda. DRAM ECC Enable: Quando presente, esta opção indica se o micro tem módulos de memória com ECC. O ECC consiste em um bit adicional para cada 763
  • 764. byte de dados, que é usado para verificar e corrigir os dados armazenados. Os chips de memória com ECC possuem 9 ou 18 chips ao invés de 8 ou 16 e são usados quase que exclusivamente em servidores e estações de trabalho, onde o pequeno ganho de confiabilidade compensa o gasto adicional. Naturalmente, esta opção deve ser ativada apenas ao usar módulos com ECC. Memory Hole Remapping, Memory Hoisting (ou DRAM Over 4G Remapping): Como vimos no capítulo sobre memórias, ao usar 4 GB de memória ou mais, um grande trecho de memória entre os 3 e 4 GB é perdido, devido às faixas de endereços usadas pelos dispositivos. Ao usar um sistema operacional de 32 bits, esta faixa de memória é perdida e não existe nada o que você possa fazer. O melhor é se contentar em usar apenas 3 GB. Ao combinar um sistema operacional de 64 bits com um processador equipado com as extensões AMD64 ou EM64, você ganha a possibilidade de usar mais do que 4 GB de memória, mas a faixa entre os 3 e 4 GB continua sendo perdida, de forma a manter compatibilidade com os programas de 32 bits. Estas opções, disponíveis na maioria das placas recentes, fazem com que a área de endereços reservada para uso dos dispositivos seja movida para uma área mais alta do Virtual Address Space, liberando a maior parte da memória perdida. As duas seguem princípios diferentes, mas o resultado prático é o mesmo. Você encontra uma ou outra, de acordo com a placa usada. Uma observação é que esta opção só deve ser ativada ao usar um sistema operacional de 64 bits e ao usar 4 GB ou mais de memória. Ela pode causar problemas de compatibilidade diversos, sobretudo com jogos e aplicativos 3D, por isso verifique a estabilidade do micro ao ativá-la. Componentes integrados Com exceção do processador e da memória, as placas tudo-onboard atuais são praticamente PCs completos. Em alguns casos, até o processador vem pré-instalado ou soldado à placa, de forma que você só precisa instalar a placa dentro do gabinete, instalar o HD e espetar um pente de memória para ter um PC completo. De uma forma geral, não existe muita diferença em colocar um mesmo chipset de rede em uma placa PCI, instalá-lo diretamente à placa-mãe ou integrá-lo diretamente ao chipset. O circuito continua sendo o mesmo e, se não forem feitas modificações no projeto, a qualidade e o desempenho também. A vantagem é que a integração torna o conjunto bem mais barato, o que abriu as portas para o surgimento de PCs de baixo custo, como os que temos hoje. Os componentes integrados à placa-mãe podem ser desativados através da seção "Onboard Device Configuration", "Features Setup" ou "Integrated Peripherals". Algumas das opções que incluo neste tópico estão espalhadas por outras seções, como a "PCI / Plug and Play Setup" ou "Advanced > Chipset", mas optei por combiná-las, pois estão relacionadas ao tema. 764
  • 765. Você pode desabilitar os componentes que não pretende utilizar, ou que pretende substituir, como no caso da placa de som ou rede, por exemplo. Isso facilita a parte de instalação dos drivers e a configuração do sistema. Embora os conflitos de IRQ sejam relativamente raros hoje em dia, devido às tecnologias que vimos no final do capítulo sobre placas-mãe, desativar alguns componentes da placa reduz a possibilidade de eles ocorrerem, o que é sempre desejável. De qualquer forma, é importante checar as opções, nem que seja apenas para verificar se todos os componentes que vai usar estão ativados. Opções para ativar/desativar os dispositivos integrados Primary Graphics Adapter: Um recurso muito utilizado nos PCs atuais é a possibilidade de usar dois ou mais monitores, o que é suportado desde o Windows 98. Você pode combinar duas ou mais placas de vídeo, cada uma com uma ou duas saídas, para instalar 2, 3, 4 ou mesmo 9 monitores no mesmo PC. Esta opção permite especificar qual das placas instaladas assumirá a função de vídeo primário. Normalmente você pode escolher entre "PCI" e "PCI Express" ou "AGP". Em geral, a placa de vídeo onboard não pode ser usada em conjunto com uma placa offboard AGP ou PCI-Express (ao instalar a placa offboard, a onboard é automaticamente desativada), mas existem exceções. Muitas placas atuais são capazes de repartir as linhas PCI Express entre o slot x16 e o vídeo onboard, permitindo usar ambos simultaneamente. Existem ainda os casos da PC-Chip, ECS e ASRock, que combinam slots PCI Express com um slot AGP ou AGP Express. Neste caso você tem ainda mais opções: 765
  • 766. Configuração da placa de vídeo primária Share Memory Size: Como era de se esperar, esta opção permite ajustar a quantidade de memória RAM compartilhada com o vídeo onboard. Naturalmente, usar um valor baixo prejudica o desempenho da placa em jogos e aplicativos 3D (já que ela não terá memória suficiente para armazenar as texturas) mas, por outro lado, não altera o desempenho da placa em aplicativos 2D. Micros de baixo custo quase sempre combinam o vídeo onboard com pouca memória RAM. Parte da memória é compartilhada com o vídeo, deixando ainda menos para o sistema. Entre 2005 e 2006 foram vendidos muitos PCs com apenas 128 MB de RAM, onde 32 ou até mesmo 64 MB eram compartilhados com o vídeo onboard, deixando apenas 96 ou 64 MB para uso do sistema(!!!), um verdadeiro crime. Em casos de micros com 256 MB (ou menos), ou que serão usados apenas para navegar e rodar aplicativos de escritório, é interessante ajustar a opção com o valor mais baixo possível. Em muitas placas o mínimo permitido são 32 MB, mas outras permitem usar até 8 MB. Uma observação é que, em algumas placas, usar menos de 32 MB faz com que o boot trave durante a ativação do vídeo (pelo sistema operacional). Este problema está mais relacionado aos drivers do que ao hardware propriamente dito. Onboard LAN (Ethernet Device, Onboard Giga LAN, Onboard PCIEX GbE LAN, etc): Permite desativar a placa de rede onboard. Em situações normais, não existem muitos motivos para desativar a rede onboard, já que você pode perfeitamente ter duas placas de rede instaladas, mesmo que pretenda usar apenas uma. De qualquer forma, você pode precisar desativá-la em casos de conflitos ou queima. Onboard LAN Boot ROM: Esta opção permite desativar a ROM da placa de rede onboard, que contém o cliente PXE, usado para dar boot via rede. Ao desativar esta opção, o Setup deixa de oferecer a opção de boot via rede na configuração da ordem de boot. 766
  • 767. Audio Device (Audio Controller, AC97 Audio, HD Audio ou HD Audio Controller): Opção para desativar o som onboard, útil ao instalar uma placa offboard. Embora seja perfeitamente possível ter duas placas de som instaladas, isso torna a configuração um pouco mais trabalhosa, já que você precisa indicar qual placa usar na configuração do sistema. Se você não vai usar o som onboard, acaba sendo mais fácil desativá-lo de uma vez. Uma curiosidade é que headsets, caixas de som e webphones USB incluem um controlador de áudio e são vistos pelo sistema como placas de som completas, ao contrário dos headsets baratos, que são simplesmente ligados nas saídas da placa de som. Ao usar o Skype, ou outro cliente VoIP, você especifica qual dispositivo usar nas configurações. Game Port Address, Midi Port Address, Midi Port IRQ: Estas opções permitem alterar os endereços de IRQ e I/O utilizados pela porta do joystick e Midi da placa-mãe (que compartilham o mesmo conector). Estas opções existem apenas para casos onde você precisa instalar duas portas de joystick no mesmo micro (seja usando um adaptador avulso, ou uma segunda placa de som). Atualmente o mais comum é que sejam utilizados joysticks USB, de forma que estas opções, junto com o próprio conector de joystick da placa de som, estão caindo em desuso. Modem Device: Nas placas com modem onboard, esta opção permite desativá-lo, o que pode ser feito quando quiser usar um modem externo, ou se você acessa via banda larga e simplesmente não pretende utilizá-lo. É importante notar que o modem onboard é sempre dividido em duas partes: o circuito controlador integrado ao chipset e um riser contendo os circuitos analógicos, que é instalado em um slot AMR ou outro conector. Mesmo que o riser não esteja instalado o controlador do modem continua ativo, ocupando um endereço de IRQ e, em alguns casos, causando conflitos diversos com a placa de som, já que os dois geralmente compartilham o mesmo chip DSP. Desativando esta opção, você corta o problema pela raiz. Serial Port1 Address: Um número impressionantemente grande de placas recentes ainda oferece uma porta serial. Em muitos casos, ela não faz parte do painel ATX, como antigamente, mas fica disponível na forma de um conector interno. Esta da foto não é uma placa antiga, mas sim uma Asus M2V, uma placa comprada em plena segunda metade de 2007. À primeira vista o conector parece ser o header de um par de portas USB, mas o "COM1" denuncia sua função: 767
  • 768. Vaso ruim não quebra :) Se você conseguir um cabo serial, talvez roubado de um PC antigo, pode usar a porta para conectar seu velho Palm Pilot ou qualquer outro dispositivo que tenha guardado. Esta opção do Setup permite ajustar os endereços de IRQ e I/O usados por ela, ou desativá-la. Antigamente era muito comum precisar alterar o endereço da porta serial para evitar conflitos com um modem ISA, mas hoje em dia isso é raramente necessário. De qualquer forma, se você não vai usar a porta, é sempre prudente desativá-la para liberar o endereço de IRQ. Onboard IR Port: Muitas placas placas possuem um header para a instalação de um transmissor infravermelho externo, incluído no lugar da segunda porta serial. O transmissor não é um acessório caro, mas é incrivelmente incomum e difícil de encontrar, o que faz com que a maioria das pessoas que precisam de uma porta IR comprem um transmissor USB. É sempre interessante desativar esta opção, liberando mais um endereço de IRQ. Onboard Parallel Por Address, Parallel Port Mode, Parallel Port IRQ: Assim como a porta do drive de disquetes, a boa e velha porta paralela persiste nas placas novas, mantendo a compatibilidade com o grande contingente de impressoras e scanners paralelos ainda em uso. Como a grande maioria destes dispositivos antigos não possuem drivers para o Vista (em muitos casos nem para o XP), é bem provável que a maioria acabe sendo descartada por falta de drivers, antes do que por falta de suporte por parte das placas-mãe. Curiosamente, o suporte a impressoras antigas é atualmente bem mais completo no Linux do que no Vista, pois a maioria dos drivers são desenvolvidos de forma independente dos fabricantes e por isso continuam sendo atualizados mesmo depois que a impressora é descontinuada. Estas três opções permitem ajustar os endereços e o modo de operação da porta paralela. Embora muito incomum, é possível usar até três portas paralelas no mesmo PC, usando os endereços de I/O 378, 278 e 3BC e endereços de IRQ e DMA diferentes para cada uma. Mas, ao usar apenas uma, não existe motivo para alterar os endereços padrão. Existe ainda a questão do modo de operação, que pode ser configurado com os valores "Normal" (o mais lento), "EPP", "ECP" e "EPP+ECP". O modo ECP é o mais rápido e permite uma menor utilização do processador durante o uso 768
  • 769. da porta devido ao uso de um canal de DMA. Ao usar o ECP, você pode se deparar com alguns casos de incompatibilidades com impressoras e scanners antigos, que suportam apenas o padrão EPP. O modo "ECP+EPP" ativa uma camada de compatibilidade com o padrão anterior, que resolve o problema na grande maioria dos casos. Quando disponível, ele é a opção recomendável. Onboard USB Function (USB Ports Enable): Esta opção permite desativar as portas USB da placa-mãe, o que naturalmente não é recomendável hoje em dia, já que o USB é o barramento mais usado para a conexão de periféricos externos. Esta opção surgiu junto com as primeiras placas soquete 7 baseadas no chipset 430VX. O 430VX incluía um controlador USB integrado, mas na época o USB era um padrão muito novo e era muito raro que as portas fossem utilizadas. Desativá-las era, então, uma forma de liberar um endereço de IRQ. Legacy USB Support (USB Function for DOS): Esta opção ativa uma camada de compatibilidade, que permite o uso de mouses e teclados USB em programas MS-DOS. Em algumas placas, é necessário manter esta opção ativada para que o teclado USB possa ser usado para configurar o setup. Mantê-la ativada também permite solucionar problemas de detecção do mouse e do teclado USB em versões antigas do Windows e também no Linux. Por outro lado, esta opção é famosa por causar problemas no Windows 98/SE/ME, onde o sistema freqüentemente travava durante o boot quando a opção estava ativada, procurando um teclado USB que não existia. De uma forma geral, é preferível deixar esta opção desativada e ativar apenas em casos onde precise dela. USB 2.0 Controller Mode: Esta opção, presente em algumas placas com portas USB 2.0, pode ser configurada com os valores "HiSpeed" e "FullSpeed". Alguém poderia achar que o valor "FullSpeed" é algum tipo de acelerador, mas é justamente o contrário. O modo "HiSpeed" é o padrão de 480 megabits usado pelo USB 2.0, enquanto o "FullSpeed" é o modo de 12 megabits, utilizado no padrão original. Como você pode imaginar, configurar esta opção com o valor "FullSpeed" simplesmente rebaixa a velocidade das portas USB para os 12 megabits do padrão 1.x. A única utilidade desta opção é servir como uma forma radical de solucionar os raros problemas de compatibilidade com periféricos USB antigos. PS/2 Mouse Support (PS/2 Mouse Function Control): Esta opção permite desativar a porta PS/2 da placa-mãe. Ela é mais uma opção herdada da época das placas soquete 7, onde a porta PS/2 nem sempre era usada (já que os mouses seriais eram os mais comuns e muitas placas sequer acompanhavam o cabo necessário). A porta PS/2 consome um endereço de IRQ (o IRQ 12), por isso alguns preferem desativá-la ao usar um mouse USB. Onboard Floppy Controller, Boot UP Floppy Seek, Swap Floppy Drive: Estas são três opções relacionadas à porta do drive de disquetes, ainda presente mesmo nas placas de fabricação recente. A primeira permite desativá-la completamente, liberando o endereço de IRQ usado por ela. A 769
  • 770. segunda tem o efeito oposto; faz com que o BIOS procure por um drive de disquete durante o boot, o que retarda o boot em alguns segundos. Ela é uma opção obsoleta para solucionar problemas com a detecção do drive. A última permite trocar a posição dos drives (o A: vira B: e o B: vira A:) caso existam dois drives instalados. É outra opção obsoleta. Outras opções Microcode Updation: Todos os processadores atuais possuem uma área de memória volátil que armazena uma cópia do conjunto de instruções utilizado pelo processador, chamado de microcode. Esta área de memória é acessível pelo BIOS, o que permite a instalação de "patches", que corrijam bugs nas instruções do processador. Este sistema foi desenvolvido para evitar casos como o famoso bug do processador aritmético, que afetou as primeiras famílias do Pentium 1 e obrigou a Intel a substituir um grande número de processadores. Quando um bug é descoberto, fabricantes como a Intel e AMD distribuem patches que são incorporados pelos fabricantes de placas e repassados aos usuários na forma de upgrades de BIOS. Depois de atualizado, o BIOS da placa passa a carregar o microcode atualizado a cada boot, substituindo a versão problemática incluída no processador. Como disse, a versão atualizada é gravada em uma área de memória volátil no processador, por isso não existe qualquer possibilidade de alteração ou dano no processador. Ao desligar o micro, tudo volta a ser como era. Estas atualizações são mais comuns do que se pensa. Em Junho de 2007, a Intel lançou uma atualização "crítica" para as versões iniciais do Core 2 Duo (http://www.theinquirer.net/default.aspx?article=40567), que corrige um problema relacionado ao TLB. Existem diversos outros casos similares, tanto por parte da Intel quanto da AMD, por isso é importante manter esta opção ativa. AGP Aperture Size: Esta opção é usada apenas em placas-mãe com slot AGP. Ela permite especificar o volume máximo de memória RAM que a placa de vídeo poderá utilizar para o armazenamento de texturas. A placa recorre à memória RAM principal sempre que a memória de vídeo se esgota, utilizando-a como uma espécie de "memória swap", que permite armazenar os dados necessários, às custas de uma redução no desempenho. Placas de vídeo antigas, que possuíam apenas 16 ou 32 MB de memória, utilizavam a memória principal com freqüência, mas logo os fabricantes passaram a vender placas com 128 MB ou mais, de forma a evitar a perda de desempenho causada por ela. Isso faz com que esta opção seja muito menos importante do que pode parecer à primeira vista. Uma curiosidade é que ajustar o valor do AGP Aperture com um valor abaixo de 32 MB pode causar travamentos em conjunto com algumas placas, onde o driver de vídeo é projetado para sempre trabalhar com um certo valor mínimo de memória disponível através do barramento AGP. Isso, entretanto, não é 770
  • 771. uma regra e pode ser classificado mais como um bug dos drivers de vídeo do que como uma característica do hardware. AGP mode: Esta é outra opção encontrada apenas em placas com slot AGP. Ela permite ajustar o modo de operação do AGP, de forma a resolver eventuais problemas de compatibilidade com placas de vídeo antigas. Através dela, o slot AGP pode ser configurado para operar em modo 4X, ou mesmo 2X. Infelizmente ela só serve para reduzir o modo de operação e não aumentá-lo. :) Allocate IRQ to PCI VGA: Esta é uma opção antiga, que ainda continua disponível nas placas atuais para fins de compatibilidade. Qualquer placa de vídeo PCI com aceleração 3D precisa de um endereço de IRQ, usado para a comunicação com o processador. Esta opção ativa a alocação do endereço, o que é necessário ao usar qualquer placa de vídeo PCI minimamente atual. Esta opção é, entretanto, indiferente ao usar uma placa PCI Express, AGP ou o vídeo onboard, pois, mesmo que a opção esteja ativa, o sistema percebe que não existe uma placa de vídeo PCI instalada e não aloca o endereço. VGA Palette Snooping: Esta é mais uma opção de compatibilidade que ainda pode ser encontrada em algumas placas atuais. Esta opção é necessária para o funcionamento de placas de captura ISA (muito antigas), como a Sig Reel Magic e a C&T PC-TV, onde a placa de captura precisava de acesso à paleta de cores usada pela placa de vídeo principal para gerar as imagens corretamente. Mais tarde, este mesmo recurso foi utilizado por algumas placas decodificadoras MPEG, como as vendidas em conjunto com os primeiros drivers de DVD, de forma a reduzir a carga sobre o processador principal e, assim, permitir que DVDs fossem assistidos mesmo em micros Pentium 1, sem processamento suficiente. A questão é que esta opção prejudica o desempenho do vídeo em algumas situações e é utilizada apenas por um pequeno número de placas obsoletas, que não são mais utilizadas hoje em dia, por isso é importante sempre mantê- la desativada quando disponível. Turbo Frequency: Esta é uma opção encontrada em algumas placas antigas, que permite aumentar o clock da placa-mãe em 2,5% ou 3% (varia de acordo com o modelo da placa), oferecendo uma espécie de overclock leve. Ela é uma espécie de antecessora da opção AI Overclocking encontrada atualmente nas placas Asus. Cache Timing (Cache Read Cycle): Esta é mais uma opção das antigas, encontrada apenas em placas soquete 7, onde os chips de cache L2 ainda eram soldados à placa-mãe. Ela era usada para indicar a temporização do cache, como 3-2-2-2 ou 2-1-1-1. A temporização variava de acordo com a freqüência de FSB usada. Os módulos podiam suportar 2-1-1-1 a 66 MHz, mas apenas 3-2-2-2 a 100 MHz, por exemplo. Force Update ESCD: O ESCD é a área do CMOS que armazena a configuração dos endereços de IRQ, I/O e DMA dos periféricos instalados. Ativar esta opção força um "refresh" do ESCD, o que força uma nova atribuição de endereços a todos os periféricos, tanto por parte do BIOS quanto do sistema 771
  • 772. operacional. Isso muitas vezes resolve problemas relacionados a conflitos e periféricos não detectados corretamente. Após o ESCD ser apagado, esta opção voltará automaticamente para o valor disabled. Plug and Play OS (Boot With PnP OS): Sistemas operacionais antigos, como o Windows NT4, OS/2 e Windows 3.1 não são compatíveis com o padrão plug- and-play, ou possuem uma compatibilidade limitada. Ao usar algum deles, você deve manter esta opção desativada, o que faz com que o BIOS atribua os endereços de IRQ usados pelos periféricos, ao invés de deixar esta tarefa a cargo do sistema operacional. Ao usar qualquer sistema atual, é recomendável manter esta opção ativada, caso contrário podem ocorrer problemas na detecção de alguns periféricos (principalmente no caso do Windows 2000). Em alguns casos, desativar a opção pode solucionar problemas de detecção da placa de rede, som ou outros periféricos no Linux, mas isso é mais exceção do que regra. Maximum Payload Size: Esta opção ajusta o tamanho máximo dos pacotes de dados (TLP, ou "Transaction Layer Packet") utilizados pelo barramento PCI Express. O valor "4096" (geralmente o default) garante o melhor desempenho, mas usar valores mais baixos permite obter pequenos ganhos nos tempos de latência, que podem ser úteis em algumas aplicações. Em geral, placas que se beneficiam de pacotes menores já são pré-configuradas para utilizar valores fixos, subscrevendo a configuração do BIOS. Isso faz com que, na prática, essa opção acabe tendo pouca influência. PCI Latency Timer: O barramento PCI é um barramento compartilhado, onde apenas um dispositivo pode transmitir dados por vez. Esta opção determina o tempo máximo (em ciclos) que um dispositivo PCI pode usar o barramento antes de passar a vez para o seguinte. Em placas antigas, onde o PCI é usado como barramento geral de comunicação e é conseqüentemente muito saturado, ajustar esta opção com valores um pouco mais altos, como 64 ou mesmo 128, resultava em um pequeno ganho de desempenho, mas em PCs atuais, onde o PCI é um barramento secundário, esta opção tem um impacto quase nulo. Na dúvida, use o valor "32". IRQ-X Assigned To: Esta é, na verdade, uma longa lista de opções, que vai do IRQ 3 até o IRQ 15. Para cada um, você pode usar o valor "PCI Device" (No/ICU, em algumas placas) ou "Reserved" (Legacy/ISA em placas antigas): 772
  • 773. Como os valores sugerem, esta opção permite reservar endereços de IRQ para o uso de placas Legacy ISA, ou algumas placas PCI antigas, que utilizam um endereço de IRQ fixo. Por não serem compatíveis com o padrão plug-and-play, estas placas não são vistas pelo BIOS, que sem a indicação manual dos endereços usados por elas, pode atribuir os endereços a outros dispositivos, causando conflitos. Esta opção era importante em PCs antigos, onde o uso de modems e placas de rede ISA era comum, mas atualmente ela é apenas mais uma opção de legado. A principal observação é que os endereços reservados aqui ficam indisponíveis para uso do sistema. Se você sair reservando endereços a esmo, pode chegar a uma situação onde periféricos deixam de funcionar por falta de endereços disponíveis. CPU Internal cache, CPU External cache: Algumas placas oferecem a opção de desativar os caches L1 e L2 do processador. Esta opção surgiu na época dos 486, quando nem todas as placas-mãe traziam cache L2. Elas podem ser usadas também em casos de defeitos nos caches, para permitir que o micro pudesse ser usado, mesmo que com um baixo desempenho (em processadores com cache externo, como o Pentium II, os chips de cache podem ser danificados por estática durante o manuseio, assim como no caso dos chips de cache externo usados em placas antigas). Naturalmente, desativar os caches reduz o desempenho de forma brutal; é o tipo de coisa que você só faz se realmente não tiver outra opção. Power On By PS/2 Keyboard: Esta opção está relacionada com o recurso de ligar o PC pressionando o botão on/off do teclado, que faz parte do conjunto de três teclas ao lado do Enter. Para que ela funcione, é necessário ativar esta opção e também alterar a opção do jumper "Keyboard Power" da placa-mãe (quase sempre posicionado ao lado do conector do teclado), deixando-o na posição 2-3. Geralmente está presente também a opção "Power On By PS/2 Mouse", que permite ligar o PC pressionando um dos botões do mouse. 773
  • 774. Algumas placas incluem a opção "Power On Function" que tem a mesma função, mas permite que você escolha uma combinação de teclas (como Ctrl+F1), ao invés de escolher apenas entre "Enabled" e "Disabled". Boot Sector Virus Protection (Virus Warning, Anti-Virus): Esta opção é geralmente encontrada apenas em placas antigas. Ela permite ativar uma proteção rudimentar contra a instalação de vírus no setor de boot do HD. Muitos vírus se instalam no setor de boot de forma a serem carregados automaticamente durante o boot, antes mesmo do sistema operacional. O BIOS não impede a gravação, mas exibe um aviso chato a cada boot quando uma possível infecção é detectada. O grande problema é que o aviso é exibido não apenas quando vírus são encontrados na MBR, mas também quando qualquer sistema não conhecido pelo BIOS é instalado. Isso causa o aparecimento de falsos positivos ao instalar diversas distribuições Linux e em alguns casos até mesmo versões recentes do próprio Windows. No final ela acaba fazendo mais mal do que bem e por isso é recomendável mantê-la desativada. Restore on AC Power Loss: Ativar esta opção faz com que o PC seja religado automaticamente assim que a energia retornar, após uma queda de luz. Em um servidor, ou qualquer PC que fique ligado continuamente, é importante mantê- la ativada, para que a máquina fique o menor tempo possível fora do ar por falta de energia e volte automaticamente, sem que alguém precise apertar manualmente o botão. Mas, em um desktop, o comportamento esperado é geralmente que o PC permaneça desligado, por isso muita gente prefere manter a opção desativada. Uma observação importante é que em locais onde a rede elétrica é instável, é comum que a energia vá e volte repetidamente. Nesses casos é importante manter a opção desativada, para prevenir dados ao equipamento. ACPI Function (ACPI Support): O ACPI controla recursos relacionados com o gerenciamento de energia e suporte a funções especiais, incluindo a maior parte das funções de economia de energia, sensores de temperatura, ajuste de rotação dos coolers, botões especiais (para ativar a antena da placa wireless, por exemplo) e assim por diante. Ele é essencial para o bom funcionamento do PC, sobretudo em notebooks, por isso nunca deve ser desativado, salvo em casos muito específicos. Existem muitos casos de incompatibilidades com o ACPI no Linux, sobretudo em placas com chipsets SiS e VIA. Eles causam efeitos diversos, que vão desde problemas na detecção de alguns componentes, até um travamento completo durante o boot. A primeira medida nesses casos é testar uma distribuição com um Kernel atual, já que a compatibilidade é melhorada continuamente. Se o problema persistir, você pode experimentar desativar o ACPI. Ao invés de desativar diretamente na opção do Setup, você pode desativá-lo adicionando o parâmetro "acpi=off" na linha de opções exibida na tela de boot (ao dar boot através do CD). Ela é uma opção que é passada diretamente ao Kernel, 774
  • 775. fazendo com que ele ignore as funções do ACPI, mesmo que a opção esteja ativada no Setup. Com isso o ACPI é desativado apenas no Linux, sem afetar o Windows ou outros sistemas operacionais instalados. ACPI APIC Support: O APIC é um subsistema do ACPI que controla a atribuição de endereços de IRQ para os periféricos. Ele faz com que os endereços sejam atribuídos de forma dinâmica (evitando o aparecimento de conflitos) e permite que os endereços de IRQ sejam compartilhados quando necessários. Ele também é um recurso importante, que você nunca deve desativar em situações normais. Assim como no caso do ACPI, existem casos de problemas de compatibilidade no Linux. Você pode desativar o suporte ao APIC apenas no Linux, sem precisar desativá-lo no Setup, usando a opção "noapic" na tela de boot. Start Easy Flash: Este é um utilitário para atualização do BIOS encontrado no Setup de placas da Asus. Ele permite que você atualize o BIOS diretamente através do Setup, simplesmente indicando o arquivo de atualização. O arquivo deve estar salvo no diretório-raiz em uma partição primária do primeiro HD, formatada em FAT16 ou FAT32, ou em um disquete. Versões futuras do utilitário tendem a suportar outras mídias. Internal Pointing Device: Esta opção é encontrada em notebooks. Ela permite desativar o touchpad ou trackpoint integrado (algumas pessoas preferem desativá-lo e usar um mouse USB). Note que isso também pode ser feito através do sistema operacional. Boot Display Device: Outra opção encontrada em notebooks. Ela pode ser ajustada com o valor "LCD", "CRT" ou "CRT+LCD" (Both). O valor LCD faz com que seja usada a tela integrada, o que é o default. As outras duas opções permitem ativar a saída de vídeo ao utilizar um projetor ou monitor externo. Start Battery Calibration: A maioria dos notebooks inclui utilitários para calibrar a bateria, disponíveis através do Setup. Ao acessar a opção, o utilitário primeiro carrega a bateria completamente e depois pede que você desconecte a fonte e deixe o notebook ligado até a carga acabar. Com isso, ele atualiza os valores mínimos e máximos de carga, que tendem a ficar desatualizados depois de algumas recargas parciais. Isso faz com que o indicador de carga da bateria (no sistema operacional) volte a mostrar os valores corretos e toda a carga da bateria volte a ser usada. HDD Smart Monitoring: Esta opção faz com que o BIOS monitore as informações geradas pelo SMART e exiba um aviso "Smart Failure Predicted on" durante o boot caso alguma das leituras caia abaixo do valor mínimo. Como de praxe, é importante lembrar que erros relacionados ao SMART não significam que o HD vá parar de funcionar nos próximos dias, mas que a partir daquele ponto existe uma grande possibilidade de falha. Delay Prior to Thermal: Esta é uma opção interessante, que se aplica apenas aos processadores derivados do Pentium 4. Estes processadores utilizam um sistema de proteção térmica (TCC) que reduz a freqüência de operação do processador quando ele atinge uma temperatura limite, evitando que o 775
  • 776. processador superaqueça. Ele é importante nestes processadores, pois sem ele o processador pode aquecer até o nível crítico, onde o diodo térmico entra em ação, desligando o sistema. Esta opção permite especificar um delay na ativação do TCC, fazendo com que ele entre em ação apenas após o término do boot, evitando que o micro fique lento, devido à redução da freqüência durante o carregamento do sistema. Se o seu micro demora 2 minutos para concluir o boot, por exemplo, você pode ajustar a opção para 4 minutos. Q-Fan Controller: Esta opção é encontrada na seção "Power" de muitas placas. Ela permite ativar o ajuste da velocidade de rotação do cooler do processador, de acordo com a temperatura. Este recurso só funciona ao usar um cooler PWM, que possui o conector de 4 pinos. Com o Q-Fan ativo, a velocidade de rotação do cooler do processador pode cair para 800 RPM ou menos nos momentos de baixa atividade. Isso acaba fazendo com que programas monitores de hardware (muitas vezes o próprio BIOS) disparem o alarme de baixa rotação do cooler. Nesse caso, desative o alarme ou reconfigure o programa, indicando a velocidade de rotação mais baixa. No caso do BIOS, isso é feito através da opção "CPU Fan Speed warning". Normalmente, a opção "Q-Fan Controller" é acompanhada pelas opções "Start Up Temperature" e "Full Speed Temperature", que permitem (respectivamente) ajustar a temperatura mínima, onde o cooler é ativado (em velocidade reduzida) e a temperatura máxima, a partir da qual o cooler gira na rotação máxima. Drivers e utilitários Como este é um livro sobre "hardware", optei por deixar de fora explicações sobre a instalação e configuração das diferentes versões do Windows, já que este é um tema já bem conhecido da maioria. Mas, um tema que vale a pena abordar, mesmo que de passagem, é a questão dos drivers, que estão tão intimamente ligados ao hardware que podem, de certa forma, ser considerados parte dele. Este tópico é uma explicação geral sobre os drivers no Windows, enquanto o seguinte fala sobre o suporte a hardware no Linux, traçando um paralelo entre as diferenças dos dois sistemas. O driver funciona como uma ponte entre o sistema operacional e o hardware, permitindo que o sistema tenha acesso a todos os recursos oferecidos por ele. A qualidade do driver influencia diretamente a performance, estabilidade e também o volume de recursos disponíveis. Duas placas com recursos similares podem oferecer um desempenho radicalmente diferente devido a diferenças nos drivers usados. Drivers problemáticos também estão entre os principais causadores de travamentos, telas azuis e erros em geral, que, em alguns casos, resultam em sintomas muito similares aos causados por problemas no hardware. 776
  • 777. Em muitos casos, os drivers incluem também o firmware da placa, que é carregado, a cada boot, em uma área volátil de memória no dispositivo. Isto abre ainda mais espaço para problemas relacionados aos drivers, além de dificultar o suporte no Linux e outros sistema operacionais (já que, além do driver, é necessário ter em mãos o arquivo do firmware), mas oferece duas vantagens do ponto de vista do fabricante. A primeira é a questão da economia, já que deixa de ser necessário incluir um chip de memória ROM ou Flash na placa. A segunda é que correções podem ser feitas com a atualização dos drivers (e, conseqüentemente, do firmware), o que permite que o fabricante apresse o desenvolvimento do projeto, já que a maior parte dos erros e bugs pode ser corrigida posteriormente, com uma atualização dos drivers. No mundo Windows, os drivers são desenvolvidos pelos próprios fabricantes. O sistema inclui uma biblioteca de drivers, atualizada próximo à data de lançamento do sistema, mas, com o passar do tempo, ela fica rapidamente desatualizada. Isso faz com que, ao ser instalado, o sistema detecte o hardware da máquina apenas parcialmente e/ou utilize drivers desatualizados para os dispositivos. A solução é instalar os drivers fornecidos pelo fabricante, como qualquer um que já reinstalou o Windows mais do que um punhado de vezes já está acostumado a fazer :). Os drivers podem ser fornecidos na forma de um conjunto de arquivos, onde você acessa o utilitário para a instalação de novo hardware do Windows e indica o arquivo ".inf" dentro da pasta, ou na forma de um executável, que se encarrega de automatizar o processo de instalação. Se você tem em mãos os CDs de instalação da placa-mãe e outros periféricos, o processo é simples, caso contrário você precisa perder algum tempo procurando drivers na web. Outro passo recomendável é verificar a disponibilidade de versões atualizadas dos drivers, sobretudo para dispositivos mais complexos, como a placa 3D e a placa wireless. Drivers atualizados trazem sempre correções importantes e muitas vezes também ganhos de desempenho. Placa-mãe Como atualmente a maior parte dos dispositivos do micro são componentes onboard na placa-mãe, os fabricantes de placas acabaram tornando-se a principal fonte de drivers. Na maioria dos casos, você acaba precisando apenas dos drivers da placa-mãe e dos drivers da placa 3D (caso esteja usando uma placa offboard). Aqui estão os links dos principais fabricantes. Alguns dos links são longos, pois procurei incluir os links diretos para baixar os drivers. Se você trabalha com manutenção, é interessante deixar estes links no bookmark do navegador, pois você acaba precisando deles com freqüência: Asus: http://support.asus.com/download/download.aspx?SLanguage=pt- br 777
  • 778. ECS: http://www.ecs.com.tw/ECSWebSite/Downloads/Category_Download.as px PC-Chips: http://www.pcchips.com.tw/PCCWebSite/Downloads/Category_Downloa d.aspx ASRock: http://www.asrock.com/support/download.asp Intel: http://downloadcenter.intel.com/ Abit: http://www.uabit.com/ MSI: http://global.msi.com.tw/index.php?func=downloadindex Gigabyte: http://www.gigabyte.com.tw/Support/Motherboard/MainPage.aspx Foxconn: http://www.foxconnchannel.com/support/downloads.aspx DFI: http://us.dfi.com.tw/ EpoX: http://www.epox.com.tw/eng/support.php AOpen: http://global.aopen.com/products_download.aspx Phitronics: http://www.phitronics.com.br Cipset Em casos em que não for possível obter os drivers diretamente do fabricante da placa-mãe (o site da PC-Chips, por exemplo, é famoso pela lentidão, erros e links quebrados), uma segunda opção é utilizar os drivers oferecidos pelo fabricante do chipset: Intel: http://downloadcenter.intel.com/ (na seção Download Center/Chipsets) nVidia: http://www.nvidia.com/content/drivers/ (na seção Plataform /nForce Drivers) AMD/ATI: http://ati.amd.com/support/driver-pt.html (na seção Integrated/Motherboard) VIA: http://www.viaarena.com/default.aspx?PageID=2 SIS: http://www.sis.com/download/ ULi: http://www.nvidia.com/page/uli_drivers.html 778
  • 779. Como a maior parte dos componentes onboard são integrados diretamente no chipset, os drivers "genéricos" do chipset permitem ativar a maior parte dos recursos da placa. Em muitos casos você vai ter problemas com o som (veja mais detalhes a seguir), com a placa de rede ou com controladores SATA ou IDE, caso o fabricante da placa tenha optado por utilizar chips externos. Nesses casos, o próximo passo é procurar por drivers nos sites dos fabricantes dos chips, como a Realtek, Marvel ou JMicron. Placa 3D Atualmente não existe muita dificuldade em encontrar drivers para a placa 3D, pois ao utilizar vídeo onboard você pode obter os drivers diretamente no site do fabricante da placa-mãe (uma segunda opção é o fabricante do chipset) e, ao usar uma placa offboard, você tem basicamente duas opções: nVidia ou AMD/ATI. Em ambos os casos, os pacotes com os drivers de vídeo incluem um conjunto de utilitários agrupados na forma de um painel de controle. No caso da nVidia temos o nVidia Control Panel e o nTune e no caso da AMD/ATI temos o Catalyst Control Center, que justificam o brutal tamanho dos downloads. Catalyst Control Center 779
  • 780. Os links para baixar os drivers de vídeo são os mesmos dos chipsets (http://www.nvidia.com/content/drivers/ e http://ati.amd.com/support/driver- pt.html), basta indicar o chipset da placa 3D. Estão também disponíveis drivers para Linux, veja mais detalhes a seguir. Para um fabricante como a nVidia e a ATI, incluir recursos no painel é sempre um dilema. Por um lado, precisam incluir um bom volume de recursos, para não ficar atrás da concorrência, mas por outro não podem incluir recursos muito exóticos ou avançados, já que precisam oferecer suporte aos aplicativos e um conjunto maior de recursos significam mais chamadas de suporte. A ATI segue a cartilha mais à risca, oferecendo um conjunto mais básico de opções no Catalyst, organizadas de uma forma intuitiva, enquanto a nVidia vai um pouco além, oferecendo um conjunto mais completo de opções no NVIDIA Control Panel, mas, em compensação, organizadas de forma mais caótica. De qualquer forma, ambos ficam devendo em alguns quesitos, sobretudo com relação a opções avançadas de overclock. Chegamos, então, aos utilitários independentes, que preenchem a lacuna: ATI Tray Tools: Apesar de ter pouco mais de 1 MB, o ATI Tray Tools oferece um número assombroso de opções, incluindo todo tipo de tweak. Como de praxe, o maior número de opções significa também uma curva mais acentuada de aprendizado, de forma que ele não é muito indicado para iniciantes. Ele não seria o tipo de utilitário que você deixaria pré-instalado no micro de clientes, por exemplo, mas sim uma ferramenta que você utilizaria para extrair o máximo da placa no seu micro de casa. Um dos destaques é o grande número de opções de overclock, incluindo o ajuste da freqüência da GPU e da memória, ajuste das tensões e opções 780
  • 781. diversas de monitoramento. Ele está disponível no: http://www.guru3d.com/article/atitraytools/189. RivaTuner: O RivaTuner é o equivalente ao ATI Tray Tools para placas nVidia. Embora a necessidade de um utilitário externo seja menor nas placas nVidia, já que o nVidia Control Painel é mais completo, ele oferece um bom conjunto de opções, com destaque para as ferramentas de overclock. A principal observação é que ele não oferece opções de ajuste de tensão, o que limita um pouco as possibilidades de overclock, mas evita configurações que possam causar danos permanentes à placa. Nas versões recentes, ele oferece também suporte às placas ATI, embora o principal foco do projeto sejam mesmo as placas nVidia. A página oficial é a: http://www.guru3d.com/index.php?page=rivatuner ATITool: Ao contrário do que o nome sugere, o ATITool oferece suporte tanto às placas da ATI quanto da nVidia. Ele começou como um utilitário ATI-only, mas atualmente oferece suporte às duas famílias de placas de forma similarmente competente. O ATITool não é muito forte em opções gerais, mas ele oferece um conjunto bastante completo de opções de overclock, incluindo a configuração de "profiles", que podem ser acionados através de combinações de teclas. Isso permite que você defina, por exemplo, um perfil moderado para uso geral e um perfil mais agressivo de overclock para usar esporadicamente. Um destaque é a presença de um teste de imagem, onde um modelo 3D, baseado no uso intensivo de shaders e de texturas, é reproduzido continuamente, permitindo que você detecte rapidamente problemas de corrupção na geração das imagens causados pelo overclock. Apesar de não parecer, o teste usa os recursos da placa de forma bastante agressiva. O ATITool pode ser baixado no: http://www.techpowerup.com/atitool/. nHancer: O principal foco do nHancer é o gerenciamento de profiles, oferecendo uma opção mais prática de ajustes que a oferecida pelo nVidia 781
  • 782. Control Panel, principalmente para quem usa duas placas em SLI. Ele pode ser baixado no: http://www.nhancer.com/. Overclock: Como pode ver, a maior parte dos utilitários relacionados ao tweak de placas de vídeo tem justamente ênfase nas opções de overclock. O overclock em placas de vídeo é uma prática quase tão comum quanto o overclock em processadores. As regras são basicamente as mesmas, ou seja, placas mais baratas, onde a GPU trabalha a freqüências mais baixas suportam geralmente overclocks maiores e, quanto melhor a ventilação, maior é o overclock que é possível obter. No caso das placas de vídeo, existe também a possibilidade de fazer overclock da memória, o que é especialmente efetivo no caso das placas mais baratas, que utilizam barramentos com a memória de apenas 128 ou mesmo 64 bits e/ou utilizam chips de memória mais lentos. A competição acirrada entre os fabricantes faz com que as placas de vídeo trabalhem muito mais próximo das freqüências limite da GPU e da memória. É muito raro encontrar uma placa de vídeo que suporte um overclock de 50% no clock da GPU, por exemplo. Na maioria das placas de vídeo, um overclock de 10% para a GPU e 5 ou 6% para a memória, sem problemas de estabilidade, já é considerado satisfatório, já que, no outro extremo, existem casos de placas que apresentam instabilidade com overclocks de menos de 3%. Como de praxe, overclocks mais agressivos podem reduzir bastante a vida útil da placa de vídeo, já que o maior consumo e a maior temperatura de operação aumentam o stress sobre os componentes, sobretudo ao aumentar também as tensões de operação. É muito raro que a GPU ou os módulos de memória cheguem a ser danificados, o grande problema são os capacitores e demais circuitos de alimentação da placa, que podem falhar prematuramente, inutilizando o equipamento. É possível substituir capacitores e outros componentes em placas de vídeo (assim como em placas-mãe), mas o processo exige bastante habilidade. Essa combinação de fatores torna o overclock em placas de vídeo uma tarefa um tanto quanto inglória, já que o risco é maior e a recompensa menor. A principal vantagem é que você pode fazer e desfazer o overclock de forma muito prática usando o ATITool e os demais programas que citei. Ativando o overclock apenas ao rodar os jogos mais pesados, você minimiza os riscos. Som, modem e outros Um detalhe importante com relação às placas de som onboard é que elas são, na verdade, formadas por dois componentes distintos. O primeiro é o chipset de áudio propriamente dito, que é quase sempre incorporado diretamente ao chipset. Embora ele possa ser desativado e substituído por um chipset externo, esta não é uma solução popular entre os fabricantes de placas, já que aumenta os custos de produção. O segundo componente é o codec, o chip responsável por transformar o sinal digital enviado pelo chipset de áudio no sinal analógico, que é enviado às caixas de som. 782
  • 783. Os dois componentes são independentes, de forma que o fabricante da placa- mãe pode combinar um chipset da VIA com um codec da Realtek, por exemplo, de forma a cortar custos. O problema é que o uso de um codec diferente exige adaptações nos drivers, o que causa problemas de compatibilidade entre os drivers "oficiais", oferecidos pelo fabricante do chipset, e as placas que utilizam codecs de outros fabricantes. O codec é um chip relativamente pequeno, quase sempre instalado na beirada da placa, próximo aos conectores de áudio do painel ATX. Na foto a seguir temos um codec da Realtek, usado em uma Asus M2V, baseada no chipset VIA K8T890: Codec de áudio da Realtek, usado em uma placa-mãe com chipset VIA Por causa disso, é sempre preferível usar os drivers de áudio oferecidos pelo fabricante da placa-mãe, deixando para usar os drivers genéricos do chipset apenas em último caso. Em casos onde o chipset de áudio incluído no chipset é combinado com um codec externo de outro fabricante, normalmente você encontrará os drivers no site do fabricante do codec e não no site do fabricante do chipset. Atualmente, a Realtek é a maior fabricante de codecs "alternativos", assim como de chipsets para placas de rede de baixo custo, por isso você acaba usando bastante os drivers disponíveis no realtek.com.tw. Entre os fabricantes de placas de som offboard, praticamente os únicos que sobreviveram foram a Creative e a C-Media, que atuam respectivamente, no mercado de placas high- end e de extremo baixo custo. Todo o resto do espaço é ocupado pelas placas onboard. Os links são: Realtek: http://www.realtek.com.tw/downloads/ Creative: http://us.creative.com/support/downloads/ C-Media: http://www.cmedia.com.tw/?q=en/driver 783
  • 784. Atualmente, as conexões via ADSL e cabo estão cada vez mais baratas e populares. Para quem mora em locais afastados, existe também a opção de acessar através de um plano de dados, usando a rede celular, através de serviços como o Tim Web e o Vivo Zap. Com o barateamento das conexões de banda larga, o acesso via modem deixou de ser vantajoso, mas, mesmo assim, eles continuam sendo usados por um volume expressivo de usuários, que acessam esporadicamente ou moram em locais sem outras opções de acesso. No caso dos modems onboard, temos quase sempre a combinação de um controlador incluído no próprio chipset (quase todos os chipsets VIA e SIS incluem controladores de modem até hoje, muito embora eles nem sempre sejam usados pelos fabricantes de placas) e de uma placa riser AMR ou CNR, que contém os circuitos analógicos. Nesses casos você pode utilizar tanto os drivers da placa-mãe quanto os drivers do chipset. Os modems PCI podem ser fabricados por uma infinidade de pequenos fabricantes, mas o que importa mesmo é o chipset usado: Intel: http://www.intel.com/design/modems/support/drivers.htm Conexant e Smartlink: http://www.conexant.com/support/ Motorola: http://www.motorola.com/softmodem/driver.htm Lucent/Agere: http://www.lsi.com/cm/DownloadSearch.do (Networking > Modem Chipsets) Para outros dispositivos, principalmente no caso de periféricos antigos, onde o fabricante já não existe mais, a melhor opção é usar um programa como o Everest ou o Sandra para identificar o chipset usado e a partir daí pesquisar no Google. Outra opção são os sites de drivers, que se propõem a oferecer uma lista categorizada, com links para drivers dos mais diversos fabricantes. Um dos problemas é que muitos dos sites de drivers passaram a ser serviços pagos e alguns incluem spywares ou adwares nos arquivos, por isso é importante ter cuidado ao baixá-los. Alguns links que poderia citar (embora não coloque a mão no fogo por nenhum deles) são: http://www.driversplanet.com/ http://www.driverzone.com/ http://driverscollection.com/ http://drivers.softpedia.com/ http://www.boadica.com.br/iniciodrivers.asp (nacional) http://www.driverguide.com/ (pago) http://www.windrivers.com/ (pago) Utilitários e benchmark Para localizar os drivers necessários, o primeiro passo é identificar os componentes da máquina. Uma das dicas mais manjadas é localizar dispositivos detectados, porém não ativados no gerenciador de dispositivos do Windows. Eles aparecem com o ícone de interrogação e pela identificação você normalmente obtém informações suficientes para localizar o driver. Entretanto, existem utilitários que oferecem informações mais completas, como 784
  • 785. o Everest e o Sandra. Outro campo importante são os programas de benchmark, que você pode utilizar para identificar gargalos de desempenho e também medir o ganho obtido depois de um upgrade. Vamos a alguns links: Everest: O Everest é uma das suítes mais completas, incluindo módulos para a identificação do hardware da máquina (indicando inclusive links para baixar os drivers), geração de relatórios, módulos de diagnóstico e um conjunto bastante completo de benchmarks. Ele é um aplicativo comercial, desenvolvido por uma equipe que inclui os desenvolvedores do antigo AIDA32, que até ser descontinuado foi um dos programas de diagnóstico e geração de relatórios mais usado. O Everest existe em duas versões. A versão corporate é destinada ao uso empresarial, com recursos interessantes para quem precisa monitorar uma rede com vários micros, identificando problemas, instalando atualizações de drivers e assim por diante. A versão ultimate, por sua vez, é a versão destinada a uso em desktops, que você usa na maior parte do tempo. Ambas as versões são pagas, mas você pode baixar o trial de 30 dias, que apesar de não incluir todas as funções, é suficiente para testar, medir o desempenho, identificar o hardware e atualizar os drivers de um novo micro. Ele também não é um software caro; a versão Ultimate custa US$ 29. Baixe no: http://www.lavalys.com/products.php. Um dos módulos de benchmark do Everest 785
  • 786. Sandra: O Sandra é o principal concorrente do Everest. Por ser muito mais antigo, ele é bastante conhecido e possui muitos usuários fiéis. O Sandra também oferece um conjunto bastante completo de ferramentas de identificação e testes de hardware, além de incluir um conjunto de benchmarks. A principal vantagem é que ele possui uma versão Lite, que pode ser usada sem limitações (as versões pagas custam a parte de US$ 39). Ele está disponível no: http://www.sisoftware.net/. O teste de desempenho em operações de ponto flutuante do Sandra CPU-Z: Exibe informações detalhadas sobre o processador (incluindo o stepping e a tensão), placa-mãe (incluindo o fabricante, o chipset e a versão do BIOS) e também sobre os módulos de memória (incluindo as temporizações suportadas e o fabricante dos chips). Ele é um freeware que pode ser baixado no: http://www.cpuid.com/cpuz.php. PC Wizard: Complementa o CPU-Z, fornecendo informações completas sobre os demais componentes do micro, incluindo diversos dispositivos da placa-mãe (detalhes sobre o chipset, sensores, suporte ACPI, etc.), detalhes sobre os dispositivos instalados em cada barramento e muitas outras informações. Ele inclui também um pequeno conjunto de benchmarks. Ele também é um freeware, desenvolvido pela mesma equipe do CPU-Z. Você pode baixá-lo no: http://www.cpuid.com/pcwizard.php. HD Tach: O HD Tach é um dos programas mais usados para benchmark de HDs e ao mesmo tempo um dos mais acessíveis. Você pode baixá-lo no: http://www.simplisoftware.com/. 786
  • 787. Ele testa o desempenho do HD utilizando funções de baixo nível, bipassando diversas das camadas de software utilizadas pelo Windows. Isso garante leituras bastante precisas do desempenho do HD, evitando contaminações causadas por problemas de desempenho causadas pelos drivers, por exemplo. A versão gratuita realiza todos os testes de leitura, incluindo leitura não- sequencial e a taxa de utilização do processador. A única limitação é que ela não realiza os testes de gravação. PCMark e 3DMark: Estes são dois dos mais tradicionais benchmarks. O PCMark engloba uma série de testes que simulam tarefas tipicamente executadas dentro de programas de escritório, medindo o desempenho global do micro em aplicativos 2D. Os resultados são mais influenciados pelo desempenho geral do processador, desempenho dos caches e pelo desempenho da memória. O 3DMark, como o nome sugere, é desenvolvido de forma a medir o desempenho do micro em aplicativos 3D, sobretudo em jogos que utilizam o DirectX. O resultado leva em conta principalmente o desempenho da placa 3D, embora o desempenho do processador também seja importante até certo ponto. Ambos possuem uma versão "Basic", que é gratuita porém tem a funcionalidade limitada, e a versão completa, que custa US$ 19. Eles podem ser baixados no: http://www.futuremark.com/products/ Com relação aos notebooks, alguns utilitários úteis são: Dead Pixel Buddy: Este é um pequeno utilitário que ajuda a localizar dead pixels na tela. Sempre que possível, rode o teste antes de comprar o note, já que na maioria dos casos a garantia não prevê troca em caso de apenas um ou dois dead pixels na tela. Ele está disponível no: http://www.laptopshowcase.co.uk/downloads.php?id=1. Notebook Hardware Control: Permite ajustar o clock e as tensões utilizadas pelo processador e outras opções relacionadas ao gerenciamento de energia, com o objetivo de prolongar a autonomia das baterias. Os ajustes podem ser desfeitos rapidamente, de forma que você pode deixar para usá-lo apenas em situações onde a autonomia for mais importante que o desempenho. A versão básica é gratuita e pode ser baixada no: http://www.pbus-167.com/nhc/nhc.htm. Outro programa similar (embora mais limitado) é o RMClock, disponível no: http://cpu.rightmark.org/products/rmclock.shtml. Battery Eater Pro: Este é um teste de autonomia da bateria, onde o software simula uma situação de uso intenso, com todas as opções de gerenciamento de energia desativadas. Ele pode ser baixado no: http://batteryeater.com/. 787
  • 788. Suporte a hardware no Linux A principal diferença entre Windows e Linux com relação a drivers e suporte a dispositivos é que no Windows os drivers são desenvolvidos pelos fabricantes e precisam ser instalados manualmente, após a instalação do sistema, enquanto no Linux os drivers são incorporados diretamente ao Kernel e por isso vêm pré-instalados no sistema. Naturalmente, o Windows também inclui uma biblioteca de drivers, com suporte a um grande número de dispositivos, mas a biblioteca fica rapidamente desatualizada, já que a vida útil do sistema é muito grande. Ao instalar o Vista em um PC montado com componentes disponíveis na mesma época do lançamento (do sistema), praticamente todo o hardware será ativado durante a instalação, mas ao fazer o mesmo com o XP, que foi lançado em 2001, você precisará instalar praticamente tudo posteriormente. Podemos dividir os drivers de dispositivo para o Linux em dois grupos. O primeiro é o dos drivers de código aberto, que podem tanto ser desenvolvidos pelos próprios fabricantes quanto por voluntários em cantos remotos do mundo. Estes drivers open-source são incluídos diretamente no Kernel, o que faz com que sejam incluídos diretamente nas distribuições e você não precise se preocupar muito com eles. O segundo grupo é o dos drivers proprietários (como os drivers para placas de vídeo da nVidia e da ATI), que na maioria dos casos precisam ser instalados manualmente. Os componentes suportados são detectados durante a instalação do sistema e os módulos necessários são carregados, fazendo com que o dispositivo funcione sem precisar de configuração adicional. Muitas distribuições incluem inclusive scripts ou utilitários que se oferecem para fazer a instalação de drivers proprietários. O maior problema é justamente quando o sistema de detecção não funciona tão bem quanto deveria, ou quando o sistema não possui os drivers para o dispositivo em questão e você precisa baixar e instalar os drivers manualmente. Nesse ponto, a maioria das pessoas simplesmente desiste ou passa a testar outras distribuições até encontrar alguma que consiga detectar os componentes que precisa, ao invés de tentar resolver o problema inicial. Embora solucionar problemas no Linux possa ser um processo complexo, neste tópico vou tentar dar algumas dicas gerais de por onde começar. Em primeiro lugar, o suporte a dispositivos no Linux é feito através de "módulos" incluídos no Kernel, arquivos que ficam dentro da pasta "/lib/modules/versão_do_kernel_usada/": 788
  • 789. Estes módulos são a coisa mais parecida com um "driver" dentro da concepção que temos no Windows. Para ativar o suporte a um certo dispositivo, você precisa apenas carregar o módulo referente a ele. Veja que os módulos ficam organizados em pastas: a pasta "kernel/drivers/net/" contém drivers para placas de rede, a pasta "kernel/drivers/usb/" agrupa os que dão suporte dispositivos USB e assim por diante. Até o Kernel 2.4, os módulos de Kernel utilizavam a extensão ".o", que é uma extensão genérica para objetos em C. A partir do Kernel 2.6, passou a ser usada a extensão ".ko" (kernel object), que é mais específica. Quase sempre, os módulos possuem nomes que dão uma idéia do dispositivo a que oferecem suporte. O "8139too.ko" dá suporte às placas de rede com o chipset Realtek 8139, o "sis900.ko" dá suporte às placas com chipset SiS 900, enquanto o "e100.ko" ativa as placas de rede com chipset Intel E100, por exemplo. Os módulos podem ser carregados e descarregados a qualquer momento usando os comandos "modprobe" e "modprobe -r"; não apenas na inicialização do sistema. Algumas distribuições oferecem a opção de carregar módulos adicionais durante a instalação, justamente pensando nos raros casos onde você precisa de um determinado módulo para ativar a placa SCSI onde está instalado o HD para poder prosseguir com a instalação, por exemplo. Os módulos são gerados durante a compilação do Kernel. Você não precisa se preocupar com isso se não quiser, pois as distribuições quase sempre incluem versões bem completas do Kernel por padrão. Mas, de qualquer forma, existe sempre a possibilidade de recompilar o Kernel, mexendo nas opções e ativando ou desativando os módulos que quiser. 789
  • 790. As distribuições atuais são bem competentes com relação à detecção do hardware da máquina, mas sempre existem casos onde a detecção de hardware falha. Se existe um driver disponível e o problema foi apenas na detecção do dispositivo, o suporte a ele pode ser ativado carregando o módulo referente a ele, como em: # modprobe ipw2200 (como root) Aqui carregamos o módulo que dá suporte a placa IPW2200, usadas em notebooks Intel Centrino. Os módulos são inteligentes, eles detectam se o dispositivo a que dão suporte está realmente presente, caso contrário incluem uma mensagem de erro no log do sistema e não fazem nada. Com poucas exceções, você pode testar o carregamento de quantos módulos quiser, sem causar problemas ao funcionamento do sistema. Em alguns casos, pode ser necessário especificar opções diversas ao carregar o módulo, como no caso das placas de captura de vídeo que são ativadas através do módulo "bttv". Se você tem uma PixelView PlayTV Pro, por exemplo, precisa carregar o módulo incluindo os parâmetros "card=37 tuner=2". Na maioria dos casos, o módulo já vai estar carregado (devido ao sistema de detecção de hardware da distribuição), mas com os parâmetros incorretos. Nesse caso, você precisaria primeiro descarregar o módulo (usando o comando "modprobe -r"), para depois carregá-lo novamente usando o modprobe, como em: # /sbin/modprobe -r bttv # /sbin/modprobe -r tuner # /sbin/modprobe bttv card=37 tuner=2 Originalmente, a modificação seria perdida ao reiniciar a máquina. Para não precisar ficar executando os comandos novamente a cada boot, você adicionaria os comandos (apenas os comandos, sem o "#", que indica que eles devem ser executados como root) em um dos arquivos de inicialização do sistema. Os mais próprios para isso são os arquivos "/etc/rc.local" ou "/etc/rc.d/rc.local". Verifique qual dos dois está disponível, abra-o em um editor de texto puro, como o kedit, kwrite, gedit ou mcedit e adicione os comandos no final do arquivo, antes da linha "exit 0" (caso presente). Naturalmente, pouca gente sabe os nomes e parâmetros dos módulos de cor. Ao se deparar com problemas de detecção, o caminho é sempre pesquisar pelo modelo da placa ou pelo chipset usado. Quase sempre você vai encontrar dicas de como ativá-la em algum wiki ou fórum. Em muitos casos é só questão de ativar o módulo apropriado, mas em outros você precisa instalar algum driver proprietário ou experimental manualmente. 790
  • 791. Drivers proprietários Os drivers proprietários são uma categoria à parte. Eles não são incluídos diretamente na maior parte das distribuições, seja por restrições com relação à redistribuição do arquivo (em muitos casos a EULA não permite a redistribuição do driver, de forma que ele precisa ser baixado manualmente no site do fabricante) ou seja por dúvidas com relação à estabilidade e segurança, já que o código-fonte do driver não está disponível e por isso não pode ser auditado em busca de erros. É aqui que entram os drivers para softmodems, algumas placas wireless e também os drivers para placas 3D da nVidia e da ATI, que citei anteriormente. Instalar um desses drivers envolve duas tarefas: baixar o pacote com o código- fonte, ou um instalador e em seguida instalá-lo, carregando o módulo criado e fazendo outras configurações necessárias. Ao instalar o driver para modems com chipset Lucent, por exemplo, é criado um dispositivo "/dev/ttyLT0", por onde o modem é acessado. Para facilitar esta tarefa, geralmente os drivers vêm com algum tipo de instalador, geralmente um script simples de modo texto que cuida disso para você. Os módulos são parte integrante do Kernel, por isso os módulos compilados para uma determinada distribuição não funcionam em outra, a menos que, por uma grande coincidência, as duas utilizem exatamente a mesma versão do Kernel. Isso é bastante improvável, já que o Kernel do Linux é atualizado quase que diariamente. Se você usar uma distribuição popular, como o Mandriva, Fedora, SuSE, etc., é possível que você encontre um driver pré-compilado para download (que pode ser encontrado com a ajuda do Google ;). Neste caso, você só vai precisar instalar um pacote RPM ou executar um arquivo de instalação. Em outras situações, você encontrará apenas um arquivo genérico ainda não compilado, contendo um instalador que se encarrega de compilar um módulo sob medida para o Kernel em uso. Como ele não tem como adivinhar qual distribuição ou Kernel você está utilizando, é necessário ter instalados dois pacotes que acompanham qualquer distribuição: kernel-source e kernel-headers. No Mandriva, por exemplo, você pode instalá-los usando os comandos: # urpmi kernel-source # urpmi kernel-headers Naturalmente, para que ele possa compilar qualquer coisa, você precisará também de um compilador, o gcc, que também acompanha as distribuições. Você pode instalá-lo marcando a categoria de pacotes de desenvolvimento (development) durante a instalação do sistema. No caso do Ubuntu e de outras distribuições da família do Debian, instale o pacote "build-essential" (que contém os compiladores básicos) e o pacote "linux-headers-2.6.x-x" (onde o 2.6.x-x é a versão do Kernel em uso), que contém os headers, ou seja, as partes do código-fonte necessárias para 791
  • 792. compilar módulos. Você pode usar o comando "uname -a" para descobrir qual versão do Kernel está instalada, como em: # uname -a Linux server 2.6.18-4 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux Em seguida, instale os pacotes usando o apt-get, como em: # apt-get install build-essential # apt-get install linux-headers-2.6.18-4 No caso do Ubuntu, você pode precisar criar manualmente o link "/usr/src/linux", apontando para a pasta referente à versão instalada. Para isso, acesse a pasta "/usr/src" e rode o comando "sudo ln -sf linux-headers-2.6.*-* linux", como em: # cd /usr/src # sudo ln -sf linux-headers-2.6.18-4 linux Com os compiladores e os headers do Kernel instalados, você vai conseguir instalar qualquer driver sem maiores problemas, basta seguir as instruções disponíveis na página de download ou no arquivo INSTALL ou README dentro do pacote. Ao baixar, procure por uma versão atualizada do driver, que seja compatível com a versão do Kernel em uso. É muito comum que drivers pouco usados sejam atualizados esporadicamente e não funcionem em versões recentes do Kernel. Nesse caso existe pouco a fazer senão esperar o lançamento de uma versão atualizada. Vamos a um exemplo de instalação com o driver "gspca", que adiciona suporte a um grande número de webcams, incluindo muitos dos modelos incorporados à tela dos notebooks. Ele pode ser baixado no: http://mxhaard.free.fr/download.html. Na página de download, você encontra um aviso: for kernel up from 2.6.11 : gspcav1-20070508.tar.gz for kernel below 2.6.11: spca5xx version 0.60.00-1: spca5xx- v4l1goodbye.tar.gz Como no exemplo estamos usando o Kernel versão 2.6.18-4, baixaríamos o primeiro arquivo. Para instalá-lo, você descompacta o arquivo e, dentro da pasta criada (como root), executa os comandos: # make # make install Na maioria dos pacotes, você precisaria usar primeiro o comando "./configure", mas no caso do gspca ele não é necessário. Como os comandos de instalação podem sofrer pequenas variações de um pacote para o outro, é sempre importante dar uma olhada rápida nas instruções de instalação. 792
  • 793. Com o módulo instalado, o próximo passo é carregá-lo. Se a webcam estiver entre os modelos suportados, ela passará a ser vista pelos programas de mensagem (como o kopete) e por programas de visualização de imagem que oferecem suporte a câmeras. # modprobe gspca Para que ele seja carregado automaticamente durante o boot, adicione o comando no final do arquivo "/etc/rc.local" ou "/etc/rc.d/rc.local". Existe também um arquivo específico para incluir módulos que devem ser carregados durante o boot, que é o "/etc/modules". Ao usá-lo, você deve incluir apenas o nome do módulo (sem o "modprobe") no final do arquivo. Outro exemplo de driver muito comum é o driver 3D para placas nVidia, disponível no: http://www.nvidia.com/object/unix.html. O pacote disponível para download contém um instalador, que automatiza o processo de instalação e permite que o mesmo pacote possa ser instalado em qualquer distribuição. Existem três versões do driver. A mais recente oferece suporte às GeForce 6100 em diante, excluindo o suporte às placas antigas. Existem ainda duas versões "legacy", destinadas às placas anteriores. A versão 96xx oferece suporte às GeForce 2, GeForce 3 e GeForce 4, incluindo as GeForce 2 MX e GeForce 4 MX e as GeForce 2 onboard, enquanto a versão 71xx oferece suporte às placas realmente antigas, a partir das TnT. Em qualquer um dos três casos, o processo de instalação é o mesmo. Comece marcando a permissão de execução para o arquivo, o que pode ser feito através das propriedades do arquivo, ou via terminal, usando o comando "chmod +x", como em: $ chmod +x NVIDIA-Linux-x86-100.14.11-pkg1.run Por precaução, o instalador exige que você o execute em modo texto puro, já que o instalador não tem como substituir os módulos antigos caso eles estejam em uso. Dependendo da distribuição usada, o comando para fechar o ambiente gráfico pode ser "/etc/init.d/kdm stop", "/etc/init.d/gdm stop", "service dm stop", "telinit 3" ou "init 3". Depois de executar o comando apropriado (sempre como root), você cai em um terminal de texto puro. Logue-se como root (no Ubuntu você pode se logar com o seu login de usuário e usar o comando "sudo su" para virar root), acesse a pasta onde foi baixado o arquivo (usando o comando "cd") e execute-o, usando o comando "./" seguido do nome do arquivo, como em: # ./NVIDIA-Linux-x86-100.14.11-pkg1.run A maior parte da instalação consiste em simplesmente copiar alguns arquivos e bibliotecas. Mas, existe um componente que precisa ser gerado sob medida para o seu sistema, que é o módulo para o Kernel, que permite que o driver tenha acesso de baixo nível ao hardware. 793
  • 794. O instalador já traz vários módulos pré-compilados para várias distribuições, incluindo Mandriva, SuSe, Fedora e outras. Ao usar uma delas, ele simplesmente vai instalar o que já tem, sem fazer mais perguntas. Caso contrário, ele verificará se existe algum módulo disponível no FTP da nVidia e em seguida tentará compilar um módulo sob medida, o que é feito automaticamente depois de uma tela de confirmação: No final ele pergunta se deve editar o arquivo de configuração do X automaticamente. Responda "yes" para que ele faça as alterações automaticamente e reinicie o modo gráfico. Este era um passo que precisava ser feito manualmente em versões antigas do driver. Para as placas wireless que não possuem drivers nativos, existe a opção de carregar o driver do Windows XP através do Ndiswrapper. Infelizmente ele funciona apenas com drivers de rede, por isso não é uma solução para quem precisa de drivers para um softmodem ou outro dispositivo. Ele já vem pré- instalado na maioria das distribuições atuais. Caso não esteja, procure pelos pacotes "ndiswrapper-utils" e "ndiswrapper-modules" no gerenciador de pacotes. Para usar o Ndiswrapper, você precisa ter em mãos o driver da placa para Windows XP, que pode ser encontrado no CD de instalação ou no site do fabricante. Comece descompactando o arquivo do driver, caso necessário. Os drivers distribuídos na forma de arquivos .exe são, na verdade, arquivos compactados no formato cab, que contém um instalador. Eles podem ser descompactados no Linux usando o comando "cabextract" (que faz parte do pacote do mesmo nome), como em: $ cabextract sp32158.exe Para carregar o driver, use o comando "ndiswrapper -i" (como root), seguido do caminho completo para o arquivo ".inf", como em: # ndiswrapper -i /mnt/hda6/Driver/WinXP/GPLUS.inf Com o driver carregado, ative o módulo com o comando: # modprobe ndiswrapper Se tudo estiver ok, o led da placa acenderá, indicando que ela está ativa. A partir daí, falta apenas configurar a rede da forma normal. Caso você esteja tendo problemas para se conectar em redes com encriptação WPA, verifique se o pacote "wpa_supplicant" está instalado. Muitas distribuições incluem wizards ou utilitários gráficos para facilitar a configuração do Ndiswrapper, como no ndisgtk, mas estes passos manuais 794
  • 795. podem ser usados quando tudo mais falhar. Aqui está uma lista de outros drivers de que você pode precisar. Eles vem pré-instalados em muitas distribuições, mas sempre existem casos em que você precisa instalá-los manualmente: Placas 3D com chipset ATI: http://www.ati.com (na seção "Drivers & Software > Linux Display Drivers"). Placas wireless com chipsets ACX100 e ACX111: http://rhlx01.fht-esslingen.de/~andi/acx100/ Placas wireless com chipset Atheros: http://madwifi.sourceforge.net/ Placas wireless com chipset ADM8122 (ADMteck): http://aluminum.sourmilk.net/adm8211/ Notebooks com placas wireless Intel IPW2100 ou IPW2200: http://ipw2200.sourceforge.net/ ou http://ipw2100.sourceforge.net/ (além do driver, é necessário baixar o arquivo compactado na seção "firmware", que deve ser descompactado dentro da pasta "/lib/firmware". Muitas distribuições incluem o driver, mas não o firmware, que também é necessário para a placa funcionar) Placas wireless com chipset Ralink rt2400, rt2500 ou rt61: http://prdownloads.sourceforge.net/rt2400/ Placas wireless com chipset Realtek rtl8180: http://rtl8180-sa2400.sourceforge.net/ Modems PC-Tel onboard e AMR (incluindo os das placas M810, M812, e outros modelos da PC-Chips/ECS, além de vários notebooks) e modems PCI com chipset PC-Tel recentes, como os LG-Netodragon: http://www.smlink.com/ (Support > Drivers Download > Linux Drivers) ou http://linmodems.technion.ac.il/packages/smartlink/ Modems com chipset PC-Tel em versão PCI, que não são atendidos pelo driver da Smartlink: http://linmodems.technion.ac.il/pctel-linux/welcome.html Modems com chipset Intel 537 (Tigerjet) e Intel 537ep (Ambient): http://linmodems.technion.ac.il/packages/Intel/537/ Modems Lucent e Agere (este driver funciona apenas com os modelos antigos): http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/ Modem ADSL Speedtouch USB (incluindo o Speedtouch 330): http://sourceforge.net/projects/speedtouch/ Diversas placas de TV só funcionam caso o módulo seja carregado usando as opções adequadas, como no exemplo da PlayTV Pro, que usei há pouco. Você pode ver um resumo dos chipsets suportados no Linux e os parâmetros 795
  • 796. utilizados pelos diferentes modelos de placas no: http://tvtime.sourceforge.net/cards.html. Opções de boot Outra dica importante com relação à solução de problemas de detecção de hardware no Linux são as opções de boot. Devido a bugs e a questões mal resolvidas com relação ao ACPI, ao roteamento de endereços (APIC) e outros recursos, é comum que surjam problemas de compatibilidade entre alguns modelos de placas-mãe e distribuições Linux baseadas em versões específicas do Kernel, que fazem com que o sistema não consiga detectar alguns dos periféricos instalados (como a placa wireless ou a placa de som, por exemplo) ou mesmo trave completamente durante o boot. A solução, na maioria dos casos, é desativar os recursos problemáticos através de opções de boot, passadas diretamente para o Kernel do sistema. Por exemplo, muitos notebooks da Acer, como os 5043 e os 5050, possuem problemas relacionados ao roteamento de IRQs que causam diversos problemas no Linux, entre eles a não detecção da placa wireless e problemas diversos relacionados ao som e ao uso dos recursos 3D da placa de vídeo. Estes problemas intermitentes podem ser solucionados usando as opções "irqpoll noapic pci=biosirq". Ao dar boot através do CD ou DVD, procure pela opção para inserir opções para o Kernel na tela de boot. Em muitas distribuições você só precisa digitar as opções diretamente, mas em outras você precisa pressionar uma tecla de atalho, como no caso do Ubuntu, onde você precisa pressionar a tecla F6. Adicione as opções no final da linha, sem alterar as demais opções: Fazendo isso, as opções continuarão sendo usadas após a instalação do sistema. Você pode também adicionar as opções com o sistema já instalado 796
  • 797. editando como root o arquivo "/boot/grub/menu.lst", que contém as opções relacionadas ao gerenciador de boot. Nesse caso, adicione as opções no final da linha com as opções relacionadas ao Kernel (reinicie para que entrem em vigor), como em: kernel /boot/vmlinuz-2.6.20-15-generic ro irqpool noapic pci=biosirq O conjunto de opções a usar varia de acordo com a placa ou o notebook problemático, mas as opções mais usadas são: acpi=off: Esta opção desativa o ACPI, corrigindo problemas diversos de boot em muitas máquinas. Evite usá-la em notebooks, pois ela desativa o medidor de bateria e outros recursos importantes. noapic: O APIC é usado para atribuir endereços de IRQ, evitando conflitos entre os dispositivos. Entretanto, muitos micros usam BIOS bugados que atribuem os endereços incorretamente, fazendo com que a placa de som ou placa de rede (por exemplo) não seja detectada pelo sistema. Usar esta opção soluciona o problema em muitas situações. Note que, em muitos casos, a melhor forma de corrigir de forma definitiva este tipo de problema é fazer uma atualização de BIOS da placa-mãe, já que uma versão corrigida pode solucionar o problema direto na fonte. pci=biosirq: Esta é mais uma opção que resolve problemas de detecção da placa de rede ou som em algumas máquinas. Ela faz com que o sistema siga a configuração de endereços definida pelo BIOS, ao invés de usar o procedimento normal de detecção. pnpbios=off: Desativa o suporte a plug-and-play por parte do BIOS da placa- mãe, deixando que o Kernel se encarregue da detecção de todos os componentes. Esta é mais uma opção que resolve problemas de compatibilidade em algumas placas. irqpoll: Esta opção modifica a forma como o sistema detecta os dispositivos da máquina, corrigindo uma série de problemas em micros e notebooks recentes. Ela é necessária para o wireless funcionar em diversos notebooks Acer com placas Broadcom, resolve problemas relacionados com a placa de som ou com placa de rede em diversas configurações e soluciona um problema relacionado à detecção de HDs SATA em placas baseadas no chipset K8T890 (como a Asus A8V-E), entre outras. Esta opção causa poucos efeitos colaterais, de forma que você pode usá-la (inclusive combinada com outras opções) sempre que perceber que algo está errado. all-generic-ide: Esta opção soluciona problemas de compatibilidade com as controladoras IDE ou SATA de algumas placas-mãe, sobretudo nas placas com o infame chipset SiS 761GX/965L (ao usar um HD SATA), como a PC-Chips K8 A31G. Esta opção deve ser usada em casos onde o sistema não consegue detectar os HDs do micro (o que além de impedir que você acesse os arquivos, impossibilita a instalação). Ao usar a opção de boot, o sistema utiliza um modo de acesso genérico para os HDs, o que resolve o problema em 90% dos casos, embora cause uma certa redução no desempenho do HD. 797
  • 798. Capítulo 10: Vídeo e placas 3D As placas de vídeo passaram por duas grandes evoluções desde os primeiros PCs. As primeiras placas de vídeo, ligadas ao barramento ISA, eram dispositivos burros, que trabalhavam atualizando a tela com relação a um bitmap armazenado na memória de vídeo, o frame buffer. Este design é muito simples, mas também ineficiente, pois o processador principal executa todo o trabalho. O passo seguinte foram as placas de vídeo com aceleração 2D, que incluem recursos relacionados ao desenho das janelas, renderização do texto, decodificação de determinados formatos de vídeo e outros recursos, que reduzem a carga sobre o processador principal e tornam a atualização do vídeo muito mais rápida e transparente. Finalmente, as placas de vídeo ganharam recursos 3D, o que nos remete à era atual. Gráficos 3D são gerados de uma forma fundamentalmente diferente de uma imagem bidimensional (como uma janela do navegador ou do editor de textos, por exemplo). Imagens bidimensionais são apenas um conjunto de pixels, bitmaps que depois de montados podem ser enviados diretamente ao monitor, sem necessidade de processamento adicional. Imagens 3D, por sua vez, são formadas por polígonos, texturas e outros componentes, que são armazenados na forma de cálculos, comandos e coordenadas na memória da placa de vídeo. Para ser exibida no monitor, a imagem precisa ser renderizada, processo no qual as informações são interpretadas pela placa 3D e transformadas em uma imagem bidimensional, que pode então ser exibida no monitor. Gráficos 3D permitem criar imagens muito mais elaboradas e animações muito mais realísticas. O problema é que eles exigem muito poder de processamento. É possível usar o processador principal para renderizar imagens 3D e, de fato, muitos jogos antigos rodavam mesmo sem uma placa 3D instalada, usando renderização via software. O problema é que o processador principal é otimizado para processar instruções sequenciais, o que faz com que ele tenha um desempenho muito ruim ao assumir a tarefa, na maioria dos casos inferior até mesmo ao uma placa 3D onboard. Os processadores gráficos incluídos nas aceleradoras 3D são otimizados para o processamento de polígonos, shaders, aplicação de texturas, efeitos de luz e assim por diante, oferecendo um desempenho brutalmente melhor. Isso permite que o processador se encarregue de executar o aplicativo e cuide das etapas que exigem processamento, deixando a parte pesada da renderização da imagem e a aplicação das imagens para a placa 3D. Hoje em dia, mesmo as placas onboard mais simples oferecem recursos 3D e muitas placas offboard são monstros, que possuem muitas vezes mais poder de processamento e mais memória (e também custam mais) que o resto do PC. O chipset G80 usado nas GeForce 8800 GTS, GTX e Ultra, por exemplo, possui 681 milhões de transístores (mais do que um Core 2 Quad, baseado no 798
  • 799. core Kentsfield) e muitas placas de vídeo já utilizam 1 GB completo de memória RAM. Além da questão do custo, isso traz à tona também a questão do consumo elétrico e do aquecimento. Quase todas as placas 3D de alto desempenho atuais ocupam o espaço de dois slots no gabinete (devido ao tamanho do dissipador) e utilizam um blower que sopra o ar quente diretamente para fora do gabinete: GeForce 8800 GTX A diferença principal entre um exaustor e um blower é que o exaustor empurra o ar para baixo, enquanto o blower o espalha na horizontal. Essa peculiaridade permite que o cooler seja mais fino, o que é muito importante no caso de uma placa de vídeo. Uma placa como a GeForce 8800 GTX consome quase 150 watts em full load, o que faz com que a placa utilize não apenas um, mas dois conectores de força PCI-Express, de forma a obter toda a energia necessária. O alto consumo gera uma série de gastos adicionais (além do custo da placa em si), incluindo uma fonte de melhor qualidade e o gasto mensal com eletricidade. Em um PC que fica ligado 12 horas por dia, uma placa 3D que consome 150 watts representa um gasto anual de quase 360 reais. O outro lado da moeda são as placas 3D onboard, sobretudo as versões mobile. A GeForce Go 6150, por exemplo, tem um TDP de apenas 5.6 watts e um consumo médio inferior a 3 watts. Placas mais simples, como as GMA 900 799
  • 800. usadas nos chipsets Intel Mobile antigos podem consumir abaixo da marca de 1 watt ao rodar aplicativos leves. Naturalmente, o desempenho destas placas não se compara com o de placas offboard mais parrudas, mas mostra que placas 3D não precisam necessariamente ser gastadoras. Tudo depende da arquitetura e do desempenho que se pretende obter. Chipsets de vídeo puramente 2D estão hoje em dia restritos a dispositivos muito mais simples, como palmtops e celulares, e mesmo nesses últimos nichos já enfrentam concorrência de chipsets 3D de baixo consumo. Utilizando o AIGLX (no Linux), ou o Aero do Vista, você pode utilizar parte do poder de processamento da placa 3D até mesmo para renderizar o ambiente de trabalho, o que permite a aplicação de diversos efeitos possíveis apenas em um ambiente 3D. É provável que essa tendência continue no futuro, com cada vez mais interfaces adotando o uso de um ambiente 3D. Naturalmente, existe uma brutal diferença de recursos, desempenho e preço entre as diferentes opções de placas 3D. Temos desde chipsets de vídeo onboard, que adicionam muito pouco ao custo da placa mãe, até placas high- end que custam mais de 500 dólares. Por isso é importante saber escolher com cuidado. FPS, V-Sync e tearing Existem basicamente três motivos para investir em uma placa 3D mais rápida: FPS, qualidade de imagem e compatibilidade. O aumento no frame-rate (FPS) é possivelmente o aspecto mais enfatizado, já que melhora a jogabilidade e torna a movimentação mais fluída. O FPS é determinado diretamente pela resolução e pelas configurações usadas. Quanto mais trabalho a placa precisa executar a cada frame, menos frames ela consegue renderizar por segundo, e vice-versa. É possível rodar jogos atuais em placas relativamente modestas, mas você fica limitado a resoluções mais baixas e precisa se conformar em manter a maior parte dos efeitos visuais desativados. O FPS pode ser também limitado pelo desempenho do processador (afinal, é ele quem executa a maior parte do processamento referente ao jogo ou ao aplicativo), mas em situações normais a placa 3D torna-se um gargalo muito antes do processador. Em geral, o processador limita o FPS apenas ao usar uma placa 3D desproporcionalmente rápida em relação a ele (como ao combinar uma placa 3D high-end com um processador antigo), ou ao jogar usando resoluções muito baixas (o que reduz o trabalho da placa 3D para renderizar cada frame). Isso nos leva ao segundo motivo, que é a qualidade da imagem. Usando uma placa mais rápida, você pode se dar ao luxo de sacrificar parte dos quadros para usar resoluções mais altas, ativar o uso de antialiasing, recursos de sombra, Anisotropic Filtering e outros recursos, que melhoram de forma expressiva a qualidade visual. 800
  • 801. O FPS "prático" é limitado pela taxa de atualização do monitor. A maioria dos monitores de LCD atuais trabalha com 60 Hz de taxa de atualização, o que permite a exibição de um máximo de 60 quadros por segundo. Em situações onde a placa 3D é capaz de gerar um número maior de quadros por segundo, os quadros adicionais acabam sendo simplesmente descartados. Monitores CRT oferecem taxas de atualização um pouco mais altas, indo geralmente até 85 Hz com resolução de 1024x768 nos monitores de 17". Muitas pessoas associam a maior taxa de atualização com uma melhor jogabilidade, mas na verdade ela acaba fazendo pouca diferença. O principal motivo de os monitores CRT trabalharem com taxas de atualização mais altas é que elas são necessárias para evitar o aparecimento de flicker. Diferenças de jogabilidade ao utilizar um monitor de CRT e um LCD estão mais relacionadas ao tempo de resposta, que era consideravelmente mais alto nos monitores LCD antigos. Este limite "físico" para a exibição dos quadros, representado pela taxa de atualização do monitor faz com que não faça muito sentido gastar mais com uma placa para jogar com um FPS muito acima de 60 quadros, simplesmente porque os quadros excedentes não serão exibidos. O principal motivo de algumas pessoas gastarem mais de mil reais em uma placa 3D de ponta não é o desejo de jogar a 200 quadros por segundo, mas sim de poder jogar a 60 FPS com todos os efeitos ativados. O problema com relação ao FPS é que ele não é um valor fixo. Ele varia de forma considerável de acordo com a cena, caindo bastante nas cenas mais movimentadas, que são justamente quando você mais precisa. Isso faz com que muitos prefiram reduzir os efeitos (ou comprar uma placa ainda mais rápida), de forma a obter 100 FPS ou mais e assim jogar com uma boa margem de segurança, de forma que o valor não caia muito abaixo dos 60 FPS mesmo nas cenas mais pesadas. Em condições normais, o olho humano não é capaz de diferenciar muito mais do que 25 quadros por segundo, que é a taxa utilizada nos filmes. É justamente por isso que os novos formatos de vídeo sempre priorizam o aumento na resolução e não no número de quadros por segundo. A questão é que você tende a ficar muito alerta ao jogar, sobretudo no caso dos jogos de primeira pessoa, o que faz com que o cérebro consiga captar mais informações e assim diferenciar entre um número maior de quadros. Para um jogador ocasional, um FPS de 30 quadros pode ser mais do que satisfatório, mesmo levando em conta que a taxa caia para 20 ou mesmo 18 FPS nas cenas mais movimentadas. Por outro lado, um gamer mais hardcore dificilmente ficará satisfeito com menos de 60 FPS e talvez seja até capaz de perceber a queda para 40 ou 35 FPS na cenas mais intensas. Uma forma de tornar a exibição dos quadros mais fluída é ativar o V-Sync, opção que sincroniza a atualização dos quadros com o refresh do monitor. A idéia é que o monitor exiba um novo quadro a cada atualização, sem pular ou repetir quadros. Ao usar refresh de 60 Hz para o monitor, o sistema tenta exibir 801
  • 802. sempre 60 quadros, ao usar 75 Hz tenta exibir 75 quadros e assim por diante, o que seria o ideal. Naturalmente, o sistema só será capaz de exibir 60 FPS caso a placa de vídeo seja capaz de renderizar um novo quadro a cada 0.1666 segundo. Em situações onde a placa passa a demorar mais do que isso para renderizar cada quadro, a imagem passa a ser atualizada a cada dois quadros (30 FPS) ou mesmo a cada 3 quadros (20 FPS). A vantagem é que a atualização é sempre mais ou menos constante, sem "pulos", mas a desvantagem é que os quadros ficam alguns milissegundos parados no buffer da placa de vídeo, esperando a próxima atualização do monitor. Com o V-Sync desativado, os novos frames são exibidos o mais rápido possível. Se um novo frame fica pronto enquanto o monitor ainda está renderizando a primeira metade do anterior, o monitor finaliza a atualização da tela exibindo o novo frame. Isso causa um fenômeno curioso, que faz com que a tela exiba a metade superior do primeiro frame e a metade inferior do frame seguinte, efeito que é chamado de tearing. Muitos não percebem o tearing e preferem jogar com o V-Sync desativado, de forma a obter o melhor FPS possível, mas muitos ficam bastante incomodados com ele e preferem o "conforto" de jogar com o V-Sync ativado. Nesse caso a questão é bastante subjetiva e depende basicamente do gosto pessoal. Uma dica: ao ativar o V-Sync, procure ativar também o Triple Buffering, ele faz com que a placa de vídeo passe a utilizar três frame-buffers em vez de dois. Funciona assim: o primeiro buffer contém o frame completo que está sendo exibido no monitor, enquanto o segundo contém o frame seguinte, no qual a GPU da placa de vídeo ainda está trabalhando. Sempre que a placa de vídeo não consegue finalizar o quadro seguinte antes que o tempo da atualização da tela se esgote, o sistema repete o quadro anterior e a placa precisa esperar mais 0.1666 segundo (a 60 Hz), para poder trabalhar no quadro seguinte, já que não pode fazer nada com os dois buffers cheios. Ao ativar o Triple Buffering, a placa passa a dispor de um terceiro buffer, o que permite que ela inicie o processamento de um novo quadro em situações em que o segundo buffer já está cheio. Isso ajuda a absorver melhor a variação de processamento necessário entre os quadros e faz com que a placa perca a atualização de um número muito menor de quadros. Continuando, mesmo que você seja um jogador realmente modesto, que não faz questão nem de um alto FPS, nem de uma boa qualidade de imagem, existe a questão da compatibilidade, que seria o terceiro motivo. Se você utiliza uma placa antiga, com suporte apenas a Shader Model 2.0, você não conseguirá rodar jogos que exigem suporte a Shader Model 3.0, por exemplo. Não é possível rodar jogos que exigem suporte a Vertex Shader via hardware em placas que não oferecem o recurso, como as GMA900 (onboard) e assim por diante. A única solução nesses casos é atualizar a placa. 802
  • 803. Recursos Em um PC para jogos, a placa 3D é o componente mais importante. Como placas 3D de bom desempenho não são um item barato, você acaba gastando bem mais na placa 3D do que no processador. Em muitos casos, a placa pode ser mais cara que todo o resto do micro, por isso é importante saber investir o seu dinheiro. Vamos começar com um resumo das principais características das placas atuais: Clock da GPU Assim como no caso dos processadores, aumentar o clock da GPU resulta em um ganho proporcional no poder bruto de processamento da placa, já que mais vértices, pixels, texturas e efeitos podem ser processados do mesmo espaço de tempo. Entretanto (assim como nos processadores) o desempenho de diferentes placas pode ser brutalmente diferente, mesmo que elas operem à mesma freqüência, devido a diferenças na arquitetura (sobretudo no número de unidades de processamento e no barramento com a memória). Por exemplo, o chipset GMA 950 (onboard) usado em placas com chipset Intel, que é o low-end entre os chipsets low-end opera a 400 MHz, enquanto a GPU da GeForce 8800 GTS, que está próxima do topo da pirâmide, opera a 500 MHz, apenas 100 MHz a mais. Este é um exemplo extremo de como o desempenho de duas placas de clock similar pode ser brutalmente diferente. Nas placas recentes, é comum que alguns componentes internos operem a uma freqüência maior que o restante da GPU, de forma a melhorar o desempenho. Na GeForce 8800 GTS do exemplo anterior, as unidades de processamento operam a 1.2 GHz, mais do dobro do restante da GPU. Isso torna ainda mais difícil comparar diretamente o desempenho de duas placas diferentes. O clock da GPU pode ser ajustado via software (assim como o clock da memória), usando utilitários como o ATI Tray Tools, o RivaTuner ou o ATITool. Em muitos casos, os próprios fabricantes podem alterar o clock do chipset, de forma que suas placas sejam um pouco mais rápidas que concorrentes baseadas no mesmo chipset. O maior problema é que as placas de vídeo normalmente trabalham muito próximo do limite, de forma que você raramente obtém overclocks de 20% ou mais, como é comum nos processadores. Em muitas placas, um overclock de 5% já é suficiente para desestabilizar o equipamento. Ao contrário dos processadores, as GPUs são baseadas em unidades de processamento com poucos estágios de pipeline e são pesadamente limitadas ao desempenho da memória (embora as GPUs mais recentes incluam pequenas quantidades de cache, ele não funciona de forma tão efetiva quanto em um processador, devido à natureza dos dados processados), por isso acabam operando a freqüências muito mais baixas, mesmo quando produzidas usando uma técnica similar de fabricação (comparado aos processadores). 803
  • 804. Fill rate Toda imagem 3D começa como um enorme conjunto de políginos, coordenadas e comandos, gerado pelo processador principal e armazenado na memória. A função básica da placa de vídeo é transformar estes dados na imagem 2D que será mostrada no monitor, processo chamado de renderização. No caso dos jogos, as informações na memória são atualizadas em tempo real (ou quase :) pelo processador, conforme o código do jogo é processado e a placa de vídeo se encarrega de tirar "screenshots" periódicos, que são exibidos no monitor. Por estranho que possa parecer, o trabalho necessário para renderizar as cenas em tempo hábil é muito maior do que o próprio trabalho de executar o jogo e armazenar as informações na memória, daí a necessidade de usar uma placa 3D. O fill rate indica a capacidade bruta da placa de vídeo em renderizar pixels. Em placas antigas, o fill rate é a especificação mais importante da placa, mas nas atuais existem diversos outros fatores, como o processamento de shaders, de texturas e o suporte a recursos diversos. Existem dois tipos de fill rate, o "pixel fill rate" e o "texel fill rate". O primeiro indica o processamento de pixels (medido em megapixels por segundo), enquanto o segundo indica a capacidade da placa em aplicar texturas (medida em megatexels por segundo). O pixel fill rate é especialmente importante ao ativar o suporte a antialiasing, enquanto que um bom texel fill rate permite rodar os jogos usando texturas maiores e efeitos relacionados a elas (como o Anisotropic Filtering), que resultam em uma melhor qualidade de imagem. O fill rate pode ser calculado com base no número de unidades de processamento e o clock da GPU. O processamento dos pixels é dividido em duas etapas. A primeira é executada pelos pixel pipelines, que geram a imagem "bruta" a partir dos polígonos. Os pixels são então enviados aos ROPs (Raster Operations Pipelines, ou Render Output Pipelines) que combinam a imagem com as texturas (geradas pelas unidades de processamento de texturas), aplicam efeitos adicionais e geram a imagem final, que é mostrada no monitor. A GeForce 7900 GTX, por exemplo, possui 16 ROPs, 24 pixel pipelines, 24 unidades de processamento de texturas e opera a 650 MHz. Isso resulta em um fill rate de 10400 megapixels e 15600 megatexels. Você pode notar que ela possui mais pixel pipelines e mais unidades de processamento de texturas do que ROPS, ao contrário de placas mais antigas (como as GeForce 6), que possuem a mesma quantidade de cada tipo. Isso visa melhorar o desempenho da placa ao usar recursos como o Antialiasing e o Anisotropic Filtering, sem contanto aumentar exageradamente a complexidade do projeto adicionando mais ROPs. Como de praxe, o fill rate é determinado pela combinação do clock da GPU e do número de unidades de processamento. A GeForce 8800 GTS, por exemplo opera a uma frequência mais baixa que a 7900 GTX (apenas 500 MHz) mas 804
  • 805. possui, em compensação, 48 unidades de processamento de texturas, o que resulta em um fill rate de 24000 megatexels, mais de 50% maior. Antigamente, as placas possuíam o mesmo fill rate para pixels e texels, mas as atuais possuem, via de regra, uma capacidade de processamento de texturas muito maior. Isso acontece porque nos jogos atuais o uso de texturas é muito mais intenso, inclusive com o uso de texturas sobrepostas. Isso faz com que a placa acabe processando um volume muito maior de texturas do que de pixels, fazendo com que o texture fill rate torne-se, quase sempre, um gargalo muito antes do pixel fill rate. É por isso que o pixel fill rate sequer é mencionado nas especificações de muitas placas atuais. Só para efeito de comparação, a Voodoo 1, lançada em 1996, possui um fill rate de apenas 50 megatexels, enquanto a Riva TNT2, lançada em 1999, tem um fill rate de 250 megatexels. A TNT2 tem um fill rate cinco vezes maior do que a Voodoo, mas quase 100 vezes menor que a GeForce 8800 GTS. Como você pode ver, as placas 3D evoluíram (proporcionalmente) bem mais rápido do que os processadores do final da década de 1990 pra cá. Unidades de vertex shader Os shaders são programas incluídos nos jogos recentes, que executam operações específicas dentro das imagens, criando efeitos diversos. Eles oferecem uma flexibilidade muito grande aos desenvolvedores e por isso passaram a ser usados exaustivamente nos jogos atuais, a ponto de eles simplesmente não rodarem em placas antigas, sem suporte ao recurso. Os shaders são úteis sobretudo em situações onde é necessário mover um grande número de polígonos, adicionar um grande número de detalhes ou mudar a forma de objetos, efeitos que não ficariam satisfatórios simplesmente utilizando texturas, ou seriam complexos demais para serem criados diretamente, da forma tradicional. Um caso clássico é o cabelo dos personagens, onde só é possível obter um resultado realístico desenhando cada fio separadamente e fazendo com que eles se movam de forma mais ou menos independente, acompanhando os movimentos do personagem. Outros usos comuns são efeitos de explosões, grama (não o desenho das folhas propriamente ditas, mas sobretudo a movimentação), folhas de árvores e outros efeitos e detalhes diversos em objetos. Os shaders fazem um trabalho muito bom em todas essas áreas, consumindo relativamente pouco poder de processamento e oferecendo animações realísticas. Existem dois tipos de shaders: os vertex shaders e os pixel shaders. Os vertex shaders trabalham na estrutura dos objetos 3D que compõe a imagem, adicionando efeitos e criando animações, como no caso da grama ou dos cabelos, (que citei anteriormente), por exemplo. Eles são processados em unidades independentes da placa, as vertex shader units (ou vertex processors). Como de praxe, o desempenho é determinado pelo o número de unidades e pela freqüência de operação destas. O problema é que a arquitetura e conseqüentemente o desempenho das unidades varia 805
  • 806. muito de uma GPU para outra. É possível comparar diretamente o desempenho de placas da mesma família (baseadas na mesma arquitetura) com base nas especificações, mas o desempenho de placas diferentes só pode ser medido "na prática", através de benchmarks ou uso em situações reais. Unidades de pixel shader Continuando, o segundo tipo de shaders são os pixel shaders, que complementam o trabalho iniciado pelos vertex shaders. Os pixel shaders atuam na etapa de renderização da imagem, analisando a estrutura dos objetos, as fontes de luz, cores e outras variáveis e usando estas informações para criar efeitos de luz e sombra, realce de cores, reflexos e outros efeitos bastante realísticos. Esta é considerada a parte mais importante do trabalho, já que determina a qualidade das imagens que serão finalmente mostradas no monitor e é também a parte que consome mais processamento. Os pixel shaders são executados em unidades separadas, as pixel shader units (ou pixels processors). Nas placas atuais, o desempenho em processamento de pixel shaders é mais importante que o processamento de vertex shaders, simplesmente porque eles são muito mais pesados, de forma que as unidades de processamento de pixels tornam-se um gargalo muito antes das de vértices. Devido a isso, é normal que as placas possuam um número muito maior de unidades de pixel shader que de vertex shader. Unidades de shader unificadas O uso de unidades separadas para o processamento de vertex shaders e pixel shaders faz com que o desempenho da placa nunca seja ideal, já que o carregamento sobre ambos os tipos varia de acordo com a situação e também de acordo com o tipo de efeitos usados pelo game. Isso faz com que sempre ou as unidades de vertex shader, ou as de pixel shader sejam subutilizadas, criando um gargalo. Visando reduzir o problema, os fabricantes optam freqüentemente por utilizar um número maior de unidades de pixel shader (a GeForce 7800 possui 24 unidades de pixel shader, para apenas 8 unidades de vertex shader, por exemplo), mas esta também está longe de ser uma solução ideal. Nas placas mais modernas, os dois tipos de processadores são substituídos por unidades unificadas, que podem ser programas para executar processamento de pixels ou de vértices, conforme a demanda. Basicamente, cada uma destas unidades age como um pequeno processador de cálculos de ponto flutuante independente, que pode ser programado para executar praticamente qualquer tipo de operação. Embora o uso de unidades de shader unificadas não seja exatamente um pré- requisito para o suporte ao DirectX 10, tanto a nVidia quanto a ATI e a Intel (com o GMA X3000) aparentemente chegaram à conclusão de que o uso de unidades unificadas seja a forma mais simples de oferecer suporte aos novos recursos e efeitos trazidos pela API do DirectX 10, de forma que as duas coisas acabaram relacionadas. 806
  • 807. Texture Mapping Units (TMUs) As unidades de processamento de texturas trabalham em conjunto com as unidades de processamento de shaders, carregando texturas utilizadas na cena. Embora o trabalho das TMUs seja muito mais simples do que o das unidades de pixel shader, elas podem ser um limitante em algumas situações, sobretudo ao ativar o uso do Anisotropic Filtering, que resulta em um grande número de operações relacionadas ao carregamento de texturas. O desempenho das unidades de texturas também é muito dependente do barramento com a memória, de forma que placas low-end, com chips de memória mais lentos e/ou um barramento mais estreito acabam sendo penalizadas, mesmo que o chipset usado seja o mesmo. Nesses casos a melhor opção é evitar o uso do Anisotropic Filtering e de outros efeitos que utilizem um grande volume de texturas. É comum também que os fabricantes desenvolvam versões reduzidas de seus chipsets principais, com um volume menor de unidades de processamento, que são destinadas às placas de baixo custo. O RV610, usado nas Radeon HD 2400, por exemplo, possui apenas 4 unidades de processamento de texturas, contra as 16 do R600, a versão "completa", usada na Radeon HD 2900 XT. Estes chipsets reduzidos são mais baratos de se produzir, o que, combinado com a redução no barramento com a memória (o que significa menos trilhas na placa) e outras economias, permite produzir placas bastante baratas, embora também mais lentas. Raster Operation units (ROPs) Os ROPs entram em ação no final do processo de renderização. Eles são responsáveis pela aplicação de filtros adicionais, dos algoritmos de antialiasing, cálculo de profundidade (Z-buffer) e outras operações. Muitas placas utilizam arquiteturas balanceadas, onde estão disponíveis o mesmo número de unidades de processamento de texturas (os TMUs), de processamento de pixel shaders e ROPs (um exemplo é a Radeon 9700, que possui 8 unidades de cada tipo), mas cada vez mais placas estão adotando o uso de arquiteturas mais flexíveis, de forma a melhor distribuir o uso dos recursos internos. O número de ROPs disponíveis na placa não é um indicador direto de performance, pois o volume de processamento executado por cada unidade varia muito de acordo com a arquitetura da placa. Os ROPs são mais exigidos (em relação aos demais componentes da placa) ao utilizar as opções mais pesadas de antialiasing e ao ativar o uso de mais filtros e efeitos diversos. No caso de placas com um número menor de ROPS (como as GeForce 6600, que possuem apenas quatro unidades, ou as GeForce 6200, que possuem apenas duas), a melhor forma de evitar que os ROPS tornem-se um gargalo é reduzir ou desativar o uso de antialiasing. 807
  • 808. Tipo de memória O barramento com a memória é ainda mais importante para a placa de vídeo do que é para o processador principal. Este é um dos fatores que dificulta o desenvolvimento de placas 3D onboard de alto desempenho, já que por mais poderoso que fosse o chipset gráfico, o desempenho seria seriamente penalizado pelo lento barramento com a memória compartilhada. Não existe nenhuma diferença fundamental no tipo de memória RAM utilizado nas placas de vídeo. Elas podem utilizar os mesmos chips de memória DDR, DDR2 ou DDR3 utilizados nos módulos de memória principais (muitas placas de baixo e médio custo realmente utilizam, de forma a reduzir os custos de produção), mas os fabricantes de placas 3D geralmente optam por utilizar memórias GDDR2, GDDR3 ou GDDR4, tipos de memória especialmente otimizados para placas de vídeo, que são capazes de operar a freqüências mais elevadas. Chips de memória GDDR4 Existe uma certa confusão com relação às memórias GDDR, pois os padrões são desenvolvidos de forma independente e não são diretamente relacionados aos padrões de memórias DDR. As memórias GDDR3 não são equivalentes às memórias DDR3, como poderia parecer à primeira vista. Elas realizam quatro transferências por ciclo de clock, assim como as memórias DDR2 e compartilham de outras características, como o uso do terminador resistivo interno, mas oferecem (em relação às memórias DDR2) a vantagem de consumirem menos energia, dissiparem menos calor e serem capazes de operar a freqüências mais altas. As memórias GDDR4, por sua vez, são bastante similares às memórias DDR3 (muito embora os dois padrões não estejam diretamente relacionados). Elas trabalham com tensão nominal de 1.5V (o que reduz o consumo elétrico), suportam o uso de até 8 bancos de memória e realizam 8 transferências por ciclo de clock, assim como as memórias DDR3. Para evitar que o aumento no número de transferências por ciclo resultasse em um aumento muito grande na latência da memória, o padrão GDDR4 inclui diversas otimizações, incluindo o 808
  • 809. DBI (Data Bus Inversion) e o Multi-Preamble, que permitem reduzir os tempos de espera dos chips. Assim como no caso das memórias DDR2 e DDR3, o aumento no número de transferências por ciclo de clock aumenta a freqüência efetiva dos chips de memória, mas não reduz a latência do ciclo inicial, que continua sendo demorado. Apesar disso, os padrões GDDR permitem que os fabricantes desenvolvam chips de memória com tempos de latência muito mais baixos, o que reduz o problema. São justamente os tempos de latência mais baixos oferecidos pelas memórias GDDR3 e GDDR4 que fazem com que os fabricantes optem por utilizá-los no lugar das memórias DDR2 sempre que possível, mesmo nas placas de baixo custo. Como de praxe, os fabricantes quase sempre divulgam a freqüência efetiva da memória (que é obtida multiplicando a freqüência real pelo número de transferências realizadas por ciclo) nas especificações, no lugar da freqüência real. A Radeon X1800 XL, por exemplo, utiliza memórias GDDR3 com freqüência efetiva de 1.0 GHz, enquanto a Radeon X1950 XTX utiliza memórias GDDR4, que atingem uma freqüência efetiva de 2.0 GHz. A principal vantagem das memórias GDDR4 é justamente que a tecnologia tem potencial para atingir freqüências efetivas de operação muito mais altas, extraindo mais desempenho das células de memória, de forma similar ao que temos nos desktops, onde as memórias DDR2 estão sendo lentamente substituídas pelas DDR3. Freqüência da memória e largura do barramento Existem basicamente 3 formas de um fabricante de placas 3D aumentar o barramento com a memória da placa 3D. A primeira (mais óbvia) é utilizar uma nova arquitetura de memória, migrando, por exemplo, das memórias GDDR3 para as GDDR4. Desde que os custos permitam e a GPU usada seja compatível com o tipo de memória escolhido, esta é também a forma mais simples, já que basta fazer pequenas alterações no projeto. A segunda é utilizar chips de memória que operam a freqüências mais elevadas. Ao utilizar memórias GDDR3 com freqüência efetiva de 1.5 GHz, por exemplo, o fabricante aumenta em quase 50% o desempenho de acesso à memória em relação ao que teria ao usar memórias GDDR3 de 1.0 GHz. O problema em utilizar memórias mais rápidas é que elas são mais caras e consomem mais energia. A terceira é aumentar o número de trilhas de dados, ampliando o barramento com a memória de 256 bits para 512 bits, por exemplo. Dobrando o número de trilhas, dobra-se a taxa de transferência, sem nenhum efeito colateral do ponto de vista do desempenho. O problema é que usar mais trilhas torna a produção da placa muito mais cara e torna necessário usar também o dobro do número de chips de memória. Como as três coisas envolvem aumento de custos, os fabricantes procuram encontrar o melhor balanço entre custo e desempenho dentro de cada faixa de preço. Placas de baixo custo utilizam tipicamente barramentos de 64 ou 128 809
  • 810. bits e chips de memória de freqüência mais baixa, enquanto placas mais caras utilizam barramentos de 256, 384 ou mesmo 512 bits, populados por chips mais rápidos, o que acaba resultando em um ganho exponencial. A GeForce 8500 GT, por exemplo, utiliza chips de memória DDR2 comuns, que operam a 800 MHz e são ligados à GPU através de um barramento de 128 bits, o que resulta em um barramento de 12.8 GB/s. A GeForce 8800 GTX, por sua vez, utiliza chips de memória GDDR3, que operam a uma freqüência efetiva de 1.8 GHz e são ligados à GPU através de um barramento de 384 bits, o que oferece um barramento de impressionantes 86.4 GB/s. DirectX e OpenGL Antigamente (na época do MS-DOS), os jogos acessavam diretamente os recursos da placa de vídeo. Isso obrigava os desenvolvedores a criarem rotinas separadas para o uso de cada tipo de placa disponível, o que dificultava o desenvolvimento e limitava os recursos que podiam ser utilizados. E olhe que ainda estamos falando de jogos 2D simples, como, por exemplo, o antigo Warcraft 2. Criar jogos 3D manipulando diretamente os recursos do hardware seria inviável, devido à complexidade do trabalho. Surgiram então APIs para a criação de gráficos 3D, que facilitam o trabalho do desenvolvedor, oferecendo um conjunto de comandos e recursos padronizados, que podem ser usados em qualquer placa 3D compatível. Passa então a ser responsabilidade do fabricante tornar sua placa compatível com as APIs existentes e disponibilizar drivers. A primeira API 3D proeminente foi o Glide, que era suportado apenas pelas antigas placas da linha Voodoo, da 3dfx. É possível rodar jogos antigos, que utilizam o Glide em placas da nVidia ou da ATI utilizando programas conversores, os glide-wrappers, que são integrados aos drivers. Eles eram importantes no final da década de 1990, mas são irrelevantes hoje em dia, já que o uso do Glide foi a muito abandonado. Atualmente, temos a predominância de duas APIs: o Direct 3D (que faz parte do DirectX) e o OpenGL. A grande vantagem do OpenGL é que ele é um padrão aberto e multiplataforma, o que permite que os jogos sejam portados para o Linux e outras plataformas sem uma grande dificuldade. Um exemplo são os jogos da ID Software, que possuem todos versão Linux. Neles, a instalação é feita usando os mesmos CDs da versão Windows, você precisa apenas baixar o executável do game para Linux, disponível para download. É possível também rodar jogos DirectX no Linux, através do Cedega (disponível no http://transgaming.com) ou do Wine, mas neste caso a compatibilidade é limitada e existe sempre uma pequena perda de desempenho. O OpenGL é muito usado também em aplicativos profissionais. Existem inclusive linhas de placas 3D destinadas a uso profissional, como as nVidia Quadro, que oferecem otimizações diversas e drivers OpenGL certificados. 810
  • 811. O Direct3D, por sua vez, é a API mais usada em jogos. O Direct3D faz parte do DirectX, que é, na verdade, um conjunto de APIs, cada uma com uma função específica relacionada a multimídia. O Direct3D é a API específica para a geração de gráficos 3D. Como tudo na informática, o DirectX foi evoluindo e incorporando novas funções desde sua introdução, no final de 1995. Com o passar do tempo, os desenvolvedores de jogos passaram a incluir suporte às novas versões e a lentamente abandonar o suporte às versões antigas. Como as novas versões do DirectX exigem, quase sempre, modificações não apenas nos softwares, mas também nas placas 3D, a versão do DirectX suportada pela placa tornou- se uma especificação importante, já que está diretamente relacionada com a compatibilidade da placa com os jogos atuais. O DirectX 9 é suportado pelas placas nVidia da série GeForce FX, GeForce 6 e GeForce 7 e pelas placas ATI baseadas nos chipsets das famílias R300, R400 e R500, enquanto o DirectX 10 é suportado pelas placas da série GeForce 8 e pelas baseadas no chipset ATI R600 (e derivados). As placas onboard com chipset Intel GMA X3000 também suportam o DiretX10, embora o desempenho seja fraco. Atualmente (final de 2007) a adoção do DirectX 10 ainda está engatinhando e todos os jogos que já utilizam a nova API conservam a compatibilidade com o DirectX 9, de forma a manter a compatibilidade com as placas antigas. De qualquer forma, a adoção tende a crescer nos próximos anos. Existem muitos casos de jogos recentes que mantém compatibilidade com o DirectX 8, ou até mesmo com o DirectX 7. Isso é feito inserindo diferentes blocos de código dentro do aplicativo, que são utilizados de acordo com a versão disponível. Isso permite que o game rode mesmo em placas antigas (limitado ao desempenho da placa, naturalmente), mas sempre existem grandes diferenças de qualidade de imagem entre as diferentes versões do DirectX usadas. Para complicar um pouco mais, existe ainda a questão das versões do Shader Model (a API responsável pelo uso dos shaders), outro fator relacionado à qualidade de imagem e à compatibilidade das placas. O DirectX 9.0 (lançado em 2002) inclui suporte ao Shader Model 2.0, o DirectX 9.0c (lançado em 2004) ao Shader Model 3.0, enquanto o DirectX 10 (lançado no início de 2007, juntamente com o Vista) oferece suporte ao Shader Model 4.0. Cada nova versão oferece mais recursos de programação, que possibilitam a criação de efeitos mais complexos (o que melhora a qualidade visual dos jogos), mas é necessário que exista compatibilidade por parte da placa de vídeo. O grande problema do DirectX 10 é que ele é uma API quase que completamente nova, profundamente amarrada ao Windows Vista. Criar uma versão para o Windows XP não seria apenas contra os interesses comerciais da Microsoft (que deseja que os usuários migrem para o Vista o mais rápido possível), mas também muito difícil tecnicamente, de forma que é bastante improvável que isso venha a acontecer. 811
  • 812. O Vista, por sua vez, é um sistema operacional muito mais complexo e mais pesado (sobretudo na questão do uso de memória), o que faz com que os jogos quase sempre rodem com um FPS mais baixo. Como o DirectX 10 implementa novos efeitos, a placa precisa realizar mais processamento para renderizar cada frame, o que resulta em uma redução ainda maior no FPS. No final das contas, você acaba precisando de um hardware muito mais poderoso para rodar os mesmos jogos em modo DirectX 10, sobre o Vista (com uma qualidade visual um pouco melhor), do que para rodá-los em modo DirectX 9.0c sobre o XP, o que tem retardado a adoção do DirectX 10. Antialiasing e Anisotropic Filtering Antes de ser renderizada, a imagem 3D é uma espécie de desenho vetorial, que pode ser exibido em qualquer resolução, sem perda de qualidade. O problema é que o monitor possui uma resolução definida, de forma que a placa de vídeo precisa renderizar a imagem de acordo com a limitação de resolução do monitor, muitas vezes descartando detalhes das imagens. A partir do ponto em que a placa de vídeo tem potência suficiente para renderizar os frames a uma resolução superior à do monitor, você pode ativar o uso de um algoritmo de antialiasing, o que permite aplicar parte dos ciclos ociosos em melhorar a qualidade das imagens exibidas. Os algoritmos de antialiasing são chamados genericamente de "FSAA" (Full- Screen Antialiasing). A idéia básica é suavizar as imagens (sobretudo os contornos), reduzindo a granulação e tornando a imagem mais "lisa", de forma que ela aparente uma resolução maior que a real: Temos aqui um exemplo de aplicação do antialiasing. Nos dois screenshots temos exatamente a mesma cena, mas você pode perceber que a da direita ficou com os contornos mais suaves e uma qualidade geral muito melhor: 812
  • 813. 813
  • 814. A primeira geração foi o SSAA (SuperSampling Antialiasing), suportado desde as primeiras versões das placas nVidia GeForce e ATI Radeon. A idéia por trás do SSAA é bastante simples: renderizar imagens 2, 4 ou 8 vezes maiores do que a resolução do monitor e em seguida reduzí-las até a resolução que será exibida, aplicando um algoritmo de antialiasing. Com isso os detalhes são suavizados e a imagem preserva a maior parte dos detalhes da imagem inicial. O grande problema é que usar o SSAA causa uma grande redução no desempenho da placa de vídeo, já que ela passa a essencialmente renderizar as imagens em uma resolução muito mais alta. Ao usar o valor "4X", a placa passa a renderizar imagens 4 vezes maiores que a resolução do monitor (1600x1200 ao usar 800x600, por exemplo), o que reduz o FPS a aproximadamente um quarto do valor original (com exceção de casos em que o gargalo seja o processador, e não a placa de vídeo). Isso faz com que o SSAA seja utilizável apenas ao usar uma placa muito parruda, ou ao rodar jogos mais antigos. A segunda geração é o MSAA, suportado a partir das GeForce 3. No MSAA o cálculo de antialiasing é feito de forma muito mais inteligente, com a placa aplicando processamento apenas em pontos da imagem onde eles podem resultar em ganho de qualidade. Por exemplo, se dentro de um polígono existem 4 pixels idênticos, eles são processados como se fossem apenas um e o mesmo valor de cor é aplicado aos quatro. No SSAA eles seriam processados como 4 pixels separados, o que consumiria 4 vezes mais processamento. Com a aplicação de sucessivas melhorias no algoritmo do MSAA, tanto por parte da nVidia, quanto por parte da ATI, chegamos ao ponto atual, onde as placas são capazes de aplicar o algoritmo de Antialiasing com uma perda de desempenho relativamente pequena, se comparada ao que tínhamos na época do SSAA. O Anisotropic Filtering, por sua vez, é uma técnica usada para melhorar a qualidade das texturas quando aplicadas sobre objetos de formato irregular (como, por exemplo, a textura aplicada sobre o piso, em jogos de primeira pessoa), evitando que a qualidade e a nitidez da textura variem de acordo com a proximidade. Veja um exemplo: Anisotropic Filtering Ativado 814
  • 815. Anisotropic Filtering Desativado Tudo começou com o Bilinear Filtering, efeito usado em jogos antigos, onde a mesma textura é usada em toda a extensão do objeto, utilizando um simples algoritmo de zoom. O Bilinear Filtering é bastante leve, mas resulta em uma qualidade visual ruim, pois faz com que a parte mais próxima fique pixerizada. Em seguida veio o Trilinear Filtering, que utiliza diferentes versões da mesma textura (com diferentes tamanhos) para obter transições mais suaves. Dessa forma, uma versão maior da mesma textura pode ser utilizada na parte mais próxima e uma versão reduzida pode ser utilizada na parte mais distante, amenizando o problema. Naturalmente, o uso do Trilinear Filtering consome mais recursos da placa, sobretudo mais memória, mas a diferença não é tão grande assim. O Anisotropic Filtering segue o mesmo princípio, mas utiliza um número muito maior de versões da mesma textura, combinado com algoritmos adicionais. Quando ativado, você pode configurar o Anisotropic Filtering com valores de 2x (duas vezes mais versões de cada textura do que no Trilinear Filtering) a 16x (16 vezes mais). Cada aumento no valor corresponde a um pequeno ganho de qualidade, mas a partir de 8x a diferença torna-se muito pequena. Ativar o Anisotropic Filtering faz com que a placa passe a armazenar um volume muito maior de texturas, o que aumenta tanto o volume de memória de vídeo usada, quanto o volume de dados transferidos. Isso faz com que ele tenha um impacto maior sobre o desempenho em placas de baixo custo, que possuem pouca memória e utilizam barramentos de 64 ou 128 bits, do que em placas mais parrudas, que possuem mais memória e utilizam barramentos de 256 bits ou mais. SLI As primeiras placas a suportarem o uso do SLI (nesse caso ainda o antigo "Scan Line Interleave") foram as placas Voodoo 2 (ainda em versão PCI) da 3dfx, que utilizavam um sistema primitivo, onde as duas placas eram alimentadas com os mesmos dados e uma delas renderizava as linhas pares e a outra as linhas ímpares de cada frame. Um cabo pass-thru interligava as duas placas, através do próprio conector VGA, permitindo que a imagem final fosse gerada e enviada ao monitor. 815
  • 816. A 3dfx acabou indo à falência no final do ano 2000 e a propriedade intelectual relacionada a seus produtos foi adquirida pela nVidia. Isso permitiu que o SLI ressurgisse como uma tecnologia para interligar duas placas nVidia, dividindo o processamento e assim aumentando o desempenho. Para usar o SLI, é necessário utilizar uma placa mãe com chipset nVidia, equipada com dois slots PCI Express x16. Inicialmente, o SLI era suportado também por placas-mãe com chipsets de outros fabricantes, mas logo a nVidia decidiu incluir travas nos drivers, de forma que ele fosse usado apenas em conjunto com seus próprios chipsets. Existe a possibilidade de a Intel ou outros fabricantes licenciarem a tecnologia no futuro, mas isso já é exercício de futurologia. Entre as placas que suportam SLI estão diversas versões das GeForce 6800, 7300, 7600, 7800, 7900 e 7950, além das 8500, 8600 e 8800. No SLI, ao invés de um cabo pass-thru, as duas placas são ligadas digitalmente através de um bridge: Bridge SLI interligando duas placas nVidia Toda a comunicação entre as duas placas é feita diretamente e apenas a primeira placa é ligada ao monitor. A segunda fica fazendo seu trabalho silenciosamente, recebendo tarefas a processar e devolvendo quadros já renderizados. A exceção fica por conta das GeForce 6600, 6600 LE, 7100 GS e outras placas low-end, que podem trabalhar em SLI sem o uso do bridge. Como essas placas usam pouca banda, toda a comunicação pode ser feita diretamente através do barramento PCI Express. No caso das GeForce 8800 GTX (e outras placas que serão lançadas no futuro), temos o inverso, com o uso de dois bridges ao invés de um, de forma a ampliar o barramento de comunicação entre as duas placas: 816
  • 817. Bridge SLI duplo da GeForce 8800 GTX Nas Voodoo 2, SLI era a abreviação de "Scan-Line Interleave", mas nas nVidia o significado mudou para "Scalable Link Interface", indicando as mudanças no funcionamento do sistema. O trabalho de renderização pode ser dividido entre as duas placas de duas formas distintas. A primeira, chamada de SFR (Split Frame Rendering) consiste em dividir a cena em duas partes, onde a primeira placa fica com a parte superior e a segunda com a inferior. A divisão é baseada na carga de processamento necessária e é ajustada de forma dinâmica pelo driver, por isso não é necessariamente meio a meio. Você pode ver uma indicação visual da divisão, atualizada em tempo real, ativando a opção "Show GPU load balancing" na configuração do driver. As duas barras verticais indicam o nível de carregamento de cada uma das duas placas e a linha horizontal indica o ponto da imagem onde está sendo feita a divisão. A segunda é o AFR (Alternate Frame Rendering), onde cada placa processa um frame completo, de forma alternada. Por ser mais simples, esta é a opção que acaba sendo usada por padrão na maioria dos jogos. Ao usar a opção de visualização em conjunto com o AFR, a linha horizontal fica exatamente no meio da tela e apenas as barras que indicam o carregamento das duas placas se movem: 817
  • 818. Nas versões atuais do driver está disponível o "Alternate Frame Rendering 2", uma versão otimizada do algoritmo, que oferece um melhor desempenho em vários aplicativos e jogos. Existe ainda a opção "SLI Antialiasing" (onde a segunda placa é usada apenas para auxiliar na aplicação do algoritmo de antialiasing) e a "Single-GPU Rendering", que permite desativar o SLI em casos de jogos que apresentem problemas de compatibilidade diversos ou simplesmente rodem mais rápido com o SLI desativado (que é o caso de muito títulos antigos, não otimizados). Sob vários pontos de vista, usar duas placas em SLI é similar a usar um processador dual-core. Embora títulos otimizados ofereçam um grande ganho de desempenho, muitas vezes próximo do dobro, a maioria apresenta ganhos menores, de apenas 50 a 70%, e muitos jogos antigos apresentam ganhos muito menores, ou até mesmo uma pequena perda. Isso faz com que o uso do SLI acabe ficando restrito a quem realmente quer o melhor desempenho possível e está disposto a pagar caro por isso. Salvo raras exceções, não vale muito à pena tentar usar duas placas antigas com o objetivo de atingir o desempenho de uma placa mais atual, pois, mesmo combinadas, elas acabarão oferecendo um desempenho inferior ao da placa de geração superior e custando mais caro. Por exemplo, uma única GeForce 7800 GTX supera facilmente duas GeForce 6800 Ultra em SLI (com a vantagem de consumir menos energia) e o mesmo acontece ao comparar uma única GeForce 8800 GTX com duas 7900 GTX (ou duas 8600 GTS) em SLI. A menos que você conseguisse comprar as duas 6800 Ultra ou as duas 7900 GTX a um preço muito baixo (o que é improvável), a 7800 GTX ou a 8800 GTX em carreira solo seriam uma opção muito melhor. 818
  • 819. É importante também colocar na conta o custo da placa mãe (já que as placas com suporte a SLI são quase sempre modelos mais caros, destinados a entusiastas) e também o gasto adicional com a fonte de alimentação (já que você precisará de uma fonte de maior capacidade). Continuando, para que o SLI seja ativado em cada game é necessário o uso de um profile, que inclui as configurações necessárias. Sem o profile, o game roda sem tirar proveito do SLI. O driver da nVidia incorpora um conjunto de profiles com as melhores configurações para um número relativamente grande de títulos (a lista está disponível no SliZone: http://www.slizone.com/object/slizone2_game.html). Eles são aplicados automaticamente ao rodar títulos oficialmente suportados. Para os demais, você deve criar um profile manualmente, especificando o modo SLI desejado: Não é obrigatório utilizar duas placas idênticas para ativar o SLI. Embora não seja uma solução exatamente livre de falhas, é possível usar duas placas de fabricantes diferentes, desde que elas sejam baseadas no mesmo chipset. Você poderia utilizar uma GeForce 8800 GTX em conjunto com uma 8800 GTS, por exemplo, já que ambas são baseadas no mesmo chipset, o G80. Em muitos casos, você pode encontrar incompatibilidades diversas ao usar placas de diferentes fabricantes, mas em outros tudo funciona como esperado. O problema em utilizar duas placas diferentes em SLI é que o driver precisa "nivelar por baixo", reduzindo o clock da placa mais rápida e desativando a memória adicional, de forma que as duas placas ofereçam o mesmo volume de processamento e de memória de vídeo. 819
  • 820. O SLI também não está limitado apenas a duas placas de vídeo. Tecnicamente, é possível interligar 4 ou mais placas, como é o caso do Quad- SLI, onde temos dois pares de placas, sendo que cada par é interligado através de um barramento interno e os dois pares são ligados através do bridge. É possível que futuramente surja a possibilidade de usar 8 placas, mas seria uma solução muito dispendiosa. No caso das GeForce 8800 GTX, que possuem dois conectores SLI, é possível também interligar três placas (desde que você utilize uma placa-mãe com 3 slots PCI Express x16, naturalmente), embora esta seja uma configuração relativamente incomum. CrossFire O CrossFire é a resposta da ATI ao SLI. Embora as duas tecnologias não sejam relacionadas e o funcionamento interno seja diferente, a necessidade acabou fazendo com que as soluções adotadas pelos dois fabricantes fossem bastante similares. Veja a questão dos algoritmos usados para dividir a carga entre as duas placas, por exemplo. No SLI são utilizados os modos SFR (onde a cena é dividida em dois pedaços) e AFR (onde os frames são processados pelas duas placas de forma intercalada). No CrossFire temos os modos AFR (que funciona da mesma forma que no SLI), o modo "Scissor", onde a cena é dividida, de forma muito similar ao SFR e o SuperTiling (onde a imagem é dividida em quadrados de 32x32 pixels, o que oferece um melhor desempenho que o modo Scissor em muitos jogos), que é o único modo realmente diferente. Com relação à configuração, o CrossFire oferece a vantagem de não utilizar profiles. Você simplesmente ativa o modo multi-VPU na configuração do driver e a segunda placa passa a ser usada em todos os jogos que rodar. A desvantagem dessa abordagem é que a falta de testes individuais para cada game (como faz a nVidia ao elaborar os profiles) acaba levando ao aparecimento de mais problemas de compatibilidade. Na leva inicial de placas, lançadas a partir de 2005, incluindo as Radeon x800, x850, x1800 e x1900, usar o modo CrossFire era mais complicado, pois não bastava simplesmente comprar duas placas baseadas no mesmo chipset. A placa "master" precisava ser uma placa "CrossFire Edition", uma variação com o conector especial, que podia ser combinada com uma placa convencional da mesma série. Naturalmente, as placas CrossFire Edition eram mais caras e muito mais difíceis de encontrar, sobretudo aqui no Brasil, o que tornava o uso do CrossFire inviável financeiramente. A partir das RADEON X1950 Pro e X1650 XT, a ATI introduziu uma solução mais elegante, onde as duas placas trocam informações através de um par de bridges, muito similar ao usado nas placas da nVidia. Temos aqui duas fotos, mostrando o sistema antigo, com o cabo Y (à esquerda) e o sistema novo, utilizando os bridges: 820
  • 821. A principal vantagem do CrossFire em relação ao SLI é que ele é suportado também por algumas placas-mãe com chipset Intel, além das próprias placas com chipset ATI. Entretanto, com a aquisição da ATI por parte da AMD, não se sabe até quando isso vai durar, já que, do ponto de vista da Intel, o CrossFire passou a ser o padrão da concorrente. TurboCache e HyperMemory O TurboCache é uma tecnologia desenvolvida pela nVidia, que permite que a placa de vídeo utilize parte da memória RAM do sistema como extensão da memória de vídeo. Isso permite criar placas de baixo custo, com uma pequena quantidade de memória dedicada (128, 64, 32, ou mesmo 16 MB), onde a placa de vídeo utiliza memória compartilhada para completar 128, 256 ou até mesmo 512 MB de memória. Ele funciona de forma diferente do AGP GART, o recurso de acesso à memória oferecido pelo barramento AGP, pois permite que a memória principal seja efetivamente usada como uma extensão da memória de vídeo, armazenando qualquer tipo de informações e não apenas texturas. Outra vantagem é que um slot PCI Express x16 oferece muito mais banda do que um slot AGP, o que agiliza as transferências, reduzindo a perda de desempenho por utilizar memória compartilhada. É possível encontrar o TurboCache em diversas placas PCI Express, incluindo as GeForce 6200, GeForce 7100, GeForce 7200, GeForce 7300, GeForce 7400, GeForce 8400GS e diversos chipsets da série GeForce Go, destinados a notebooks. Não é comum encontrá-lo em placas mais caras, simplesmente porque seu uso não faz sentido em placas com mais memória. Apesar do nome "Turbo Cache", ele não é um recurso destinado a melhorar o desempenho da placa (em relação a uma placa com mais memória dedicada), mas simplesmente possibilitar o desenvolvimento de placas de baixo custo, que sejam mais rápidas do que placas onboard (onde é usada apenas memória compartilhada). A pequena quantidade de memória dedicada é usada como uma espécie de "cache" para a memória compartilhada, daí o nome. 821
  • 822. A ATI utiliza o HyperMemory, uma tecnologia muito similar, que também se baseia no uso de uma pequena quantidade de memória de vídeo dedicada, combinada com uma quantidade maior de memória compartilhada. Ele é encontrado nas placas da série HM e também em algumas placas de baixo custo, da série LE, além de nos modelos mais básicos da Mobility Radeon, destinada a notebooks. Você pode classificar as placas com o TurboCache ou o HyperMemory como uma classe intermediária entre as placas onboard e as placas mais caras, com mais memória dedicada. A principal armadilha é que os fabricantes muitas vezes vendem as placas (ou os notebooks baseados nas versões mobile das mesmas) anunciando a quantidade de memória total, incluindo tanto a memória dedicada quanto a memória compartilhada. Uma determinada placa pode ser anunciada como tendo "512 MB" de memória, quando na verdade tem apenas 64 MB e pode utilizar mais 448 MB de memória compartilhada. Um exemplo de placa que utiliza o TurboCache é a GeForce 6200 TC, lançada em 2005. Ela é uma placa bastante modesta, baseada no chipset NV44, uma versão reduzida do NV43 usada nas GeForce 6600. A placa pode vir com 16, 32, 64 ou 128 MB de memória DDR (1) dedicada, operando à 550 ou 700 MHz e ligada à GPU através de um barramento de 32 ou 64 bits. Esse arranjo resulta em um barramento com a memória de vídeo de 2.2 GB/s (550 MHz, 32 bits) a 5.6 GB/s (700 MHz, 64 bits), que é, em muitos casos, mais estreito que o barramento com a memória principal (que pode ser de até 4 GB/s, já que o acesso é feito através do barramento PCI Express). Nesses casos, a principal vantagem da memória onboard passa a ser o tempo de latência mais baixo. A placa pode utilizar 128 ou 256 MB de memória compartilhada, de acordo com o modelo e a versão dos drivers usados. GeForce 6200 TC, com 64 MB e suporte ao TurboCache 822
  • 823. Chipsets 3D O principal componente da placa 3D é a GPU, como bem sabemos. Apesar disso, é muito comum o uso do termo "chipset" no lugar de "GPU". O principal motivo é que o termo "chipset" é mais genérico, indicando o conjunto de componentes que são comuns às placas de vídeo da mesma família, incluindo não apenas a GPU, mas também outros chips que façam parte do projeto. É muito comum que diferentes placas, sem falar das inúmeras variações produzidas pelos diferentes fabricantes, sejam produzidas utilizando o mesmo chipset. Tanto a GeForce 8400 GS quanto a GeForce 8500 GT, por exemplo, são baseadas no chipset G86. Apesar disso, o desempenho das duas placas é bem diferente, pois a 8400 utiliza um barramento com a memória de apenas 64 bits, enquanto a 8500 utiliza um barramento de 128 bits. Tanto a nVidia quanto a ATI costumam lançar novas arquiteturas a cada 12 ou 18 meses, com o lançamento de modificações e versões atualizadas dos chipsets entre os releases principais. Como de praxe, existem casos de atrasos e até mesmo de lançamentos antecipados para responder a um produto do concorrente, mas a meta é normalmente essa. No caso da nVidia tivemos o NV40, lançado em 2004, o G70, lançado em 2005 e o G80, lançado no final de 2006. Estes três chips deram origem a um grande número de subversões, gerando toda a linha de placas nVidia que temos visto nos últimos anos. Uma curiosidade é que as linhas de placas são, quase sempre, construídas "de cima para baixo", com as placas mais rápidas sendo lançadas primeiro e os modelos de baixo custo sendo lançados nos meses seguintes. Por exemplo, a GeForce 7800 GTX (o modelo high-end) foi lançada em junho de 2005, enquanto a GeForce 7200 GS (um dos modelos mais baratos dentro da série) foi lançada apenas em abril de 2007, quase dois anos depois. Isso é feito de forma a maximizar os lucros dos fabricantes, já que eles trabalham com margens de lucro muito maiores nas placas mais caras. Outro fator que é importante enfatizar é que tanto a nVidia quanto a ATI não produzem um grande volume de placas. Eles simplesmente desenvolvem os chipsets e placas de referência e terceirizam a maior parte da produção para outros fabricantes. As freqüências de operação para as GPUs e as memórias das placas que cito aqui são simplesmente as especificações de referência, que podem ser alteradas livremente pelos fabricantes das placas. É muito comum encontrar placas de baixo custo, que utilizam módulos de memória mais lentos, ou mesmo a GPU operando a uma freqüência inferior (de forma a reduzir a dissipação de calor e assim possibilitar o uso de um cooler mais barato) e também placas "diferenciadas", que utilizam módulos de memória mais rápidos e GPUs overclocadas de forma a oferecer um desempenho superior ao das concorrentes. 823
  • 824. NV40 O NV40 é o chipset usado na série GeForce 6, lançado em abril de 2004. Ele é composto por 220 milhões de transístores, utiliza um barramento de 256 bits com a memória e é produzido usando uma técnica de 0.13 micron. Internamente, ele é composto por 16 unidades de processamento de pixels (que resultam em um fill rate de 6400 megatexels a 400 MHz), 16 unidades de pixel shader, 16 unidades de processamento de texturas e 6 unidades de vertex shader. As primeiras placas baseadas no NV40 ainda usavam o barramento AGP, mas logo foi feita a migração para o PCI Express, através do uso de um bridge AGP>PCIe (chamado pela nVidia de HSI, ou "High Speed Interconnect"), incluído nos chipsets do NV42 em diante. O uso do bridge resulta em uma pequena redução de desempenho em relação às placas AGP, devido à conversão dos sinais, embora a diferença na prática seja muito pequena. Note que isso afeta apenas as placas GeForce 6, já que a partir da geração seguinte a nVidia passou a desenvolver chips com suporte nativo ao barramento PCI Express. O NV40 original foi usado nas placas GeForce 6800 (256 MB, GPU a 325 MHz, memória a 700 MHz), GeForce 6800 GT (256 MB, GPU a 350 MHz e memória a 1.0 GHz) e GeForce 6800 Ultra (256 MB, GPU a 400 MHz e memória a 1.1 GHz), todas em versão AGP. A GeForce 6800 original utilizava memórias DDR convencionais, mas a GT e a Ultra utilizavam memórias GDDR3, o que acentuou a diferença de desempenho. Estes três modelos custavam (na época de lançamento) entre 449 e 599 dólares, seguindo a estratégia de lançar os modelos mais rápidos dentro da série primeiro, de forma a vender o máximo de unidades a preços altos e só então lançar os modelos de baixo custo. O chipset NV40 e os chips de memória em uma GeForce 6800 Ultra 824
  • 825. Ao longo da segunda metade de 2004 e o ano de 2005, o NV 40 deu origem a 5 variações: NV41, NV42, NV43, NV44 e NV45. Todas elas suportam o Shader Model 3.0 e são compatíveis com o DirectX 9.0c. Isso faz com que, embora o desempenho seja bem diferente, elas estejam apenas um degrau abaixo das GeForce 8 atuais (que suportam o Shader Model 4 e o DirectX 10) em termos de compatibilidade. Até que os títulos que utilizam exclusivamente o DirectX 10 tornem-se norma (o que ainda deve demorar algum tempo), as placas da série GeForce 6 ainda continuarão prestando bons serviços. O NV41 é uma versão de baixo custo do NV40, que possui um número menor de unidades de processamento. Ele inclui 12 unidades de processamento de pixels, 12 unidades de pixel shader, 12 unidades de processamento de texturas e 5 unidades de vertex shader, contra 16/16/16/6 do NV40. O NV42, por sua vez, é uma versão do NV41 fabricada usando uma técnica de 0.11 micron, que inclui também suporte ao barramento PCI Express, através da inclusão do bridge HSI. Embora o desempenho da GPU não seja diferente do NV41, as placas baseadas no NV42 são capazes de operar a freqüências um pouco mais altas em overclock, devido ao uso da nova técnica de fabricação. Estes dois chipsets foram usados nas placas GeForce 6800 XT (256 MB, GPU a 325 MHz e memória a 700 MHz), GeForce 6800 GTO (256 MB, GPU a 350 MHz e memória a 900 MHz) e GeForce 6800 GS (256 MB, GPU a 425 MHz e memória a 1.0 GHz). Estas placas existiriam tanto em versão AGP quanto PCI Express (as PCI Express utilizam o NV42) e, com exceção da 6800 XT (que utiliza memórias DDR convencionais), também utilizavam memórias GDDR3. Continuando, temos o NV43, que é basicamente um "meio NV40", com todas as principais especificações reduzidas à metade. Ele possui apenas 8 unidades de processamento de pixels, 8 unidades de pixel shader, 8 unidades de processamento de texturas e 3 unidades de vertex shader, alimentadas por um barramento de 128 bits com a memória. Naturalmente, a "poda" resultou em uma grande redução no desempenho, mas a idéia era essa mesma, já que o NV43 foi criado para ser um chipset de baixo custo. Em seguida temos o NV44, uma versão ainda mais reduzida, usada em placas de baixo custo, como as GeForce 6200. O NV44 possui apenas 77 milhões de transístores (pouco mais de um terço do NV40) e é equipado com 4 unidades de processamento de pixels, 4 de texturas, 4 de pixel shader e 3 unidades de vertex shader (o único quesito em que ele não perde para o NV43). O barramento com a memória também foi reduzido à metade, para apenas 64 bits. O NV43 e o NV44 foram usados nas placas da série GeForce 6 de baixo e médio custo, incluindo as GeForce 6200, 6200 TC, 6500, 6600, 6600 LE e 6600 GT. As GeForce 6200 TC são as versões mais simples, baseadas no NV44. Elas são placas de extremo baixo custo, baseadas no uso do TurboCache, onde a GPU opera a 350 MHz e são usados apenas 16, 32, 64 ou 128 MB de memória DDR dedicada, acessada através de um barramento de 32 ou 64 bits. Graças 825
  • 826. ao TurboCache, a placa pode utilizar memória compartilhada como complemento para a pouca memória dedicada, mas o desempenho é ruim. Embora sejam muito lentas se comparado às 6800, elas foram placas bastante populares, devido ao baixo custo. Usando uma 6200 TC com 32 MB você pode jogar Half Life 2 (a 800x600) a 55 FPS (em média), ou o Battlefield 2 (a 1024x760) a 40 FPS. Desde que você mantenha o Antialiasing, o Anisotropic Filtering e outros efeitos desativados, a maioria dos títulos antigos rodam sem maiores problemas, mas, naturalmente, o FPS nos títulos mais atuais é muito baixo. As GeForce 6200 (sem o "TC") são versões com mais memória dedicada. Elas são também baseadas no NV44 (ou em uma versão castrada do NV43, onde parte das unidades de processamento são desativadas, de forma que ele fique com o mesmo número de unidades do NV44) e incluem 128 ou 256 MB de memória DDR ou DDR2 dedicada, acessada através de um barramento de 64 bits ou 128 bits (de acordo com o modelo da placa). A freqüência da GPU e da memória também varia de acordo com a série, podendo ser de 300 ou 350 MHz para a GPU e 400, 500 ou 533 MHz para a memória. Toda essa variação dentro da série GeForce 6200 é justificável por esta ser a série de baixo custo, onde a prioridade é cortar custos e não oferecer um bom desempenho. Além das variações "oficiais" dentro da série existem variações introduzidas pelos fabricantes, que em muitos casos aumentam a freqüência da GPU, ou utilizam módulos de memória mais rápidos como uma forma de diferenciar suas placas em relação às concorrentes. É por isso que reviews com comparações de placas de diferentes fabricantes, baseadas no mesmo chipset, são tão comuns. As coisas melhoram a partir das GeForce 6600, que são baseadas na versão "completa" do NV43. A série inclui a GeForce 6600 (128 ou 256 MB, GPU a 300 MHz e memória DDR a 500 MHz), GeForce 6600 DDR2 (256 MB, GPU a 350 MHz e memória DDR2 a 800 MHz) e GeForce 6600 GT (128 MB ou 256 MB, GPU a 500 MHz e memória GDDR3 a 1.0 GHz). A GeForce 6600 original ainda usava memórias DDR, daí a baixa freqüência efetiva dos módulos, o que limitava bastante o desempenho da placa. A 6600 GT, por sua vez, já utiliza memórias GDDR3, que oferecem uma freqüência efetiva duas vezes maior e tempos de acesso mais baixos. 826
  • 827. GeForce 6600 GT Existiram ainda as GeForce 6500 (128 ou 256 MB, GPU a 350 ou 450 MHz e memória a 550 ou 700 MHz) e 6600 LE (128 ou 256 MB, GPU a 300 MHz e memória a 500 MHz), versões de baixo custo baseadas em uma versão castrada do NV43, com apenas 4 unidades de processamento de pixels, pixel shader e texturas, em vez de 8. A redução faz com que a queda de desempenho em relação às GeForce 6600 seja maior do que a diferença de clock sugere. A 6600 LE é especialmente lenta, quase no nível das 6200, devido ao baixo clock da GPU e da memória. Por estranho que possa parecer, o NV44 foi usado também na GeForce 7100 GS, a placa mais barata dentro da série GeForce 7. Nela o NV44 opera a 350 MHz, com a memória (DDR) a 667 MHz, o que resulta em um desempenho pouca coisa superior ao de uma 6600 LE. Finalmente, temos o NV45. Ao contrário do que a lógica sugere, ele não é uma versão simplificada do NV44, mas sim uma versão atualizada do NV40, que utiliza o barramento PCI Express, graças à inclusão do bridge HSI. Ele foi utilizado nas versões PCI Express da GeForce 6800 GT e 6800 Ultra e também na GeForce 6800 Ultra Extreme (256 MB, GPU a 450 MHz e memória a 1.2 GHz), que foi a placa mais rápida dentro da família GeForce 6. G70 O G70 é o chip usado nas placas da série GeForce 7800. A arquitetura interna é similar à do NV40 e, assim como ele, o G70 é compatível com o DirectX 9.0c e o Shader Model 3.0. A grande diferença entre os dois é que o G70 possui quase 50% mais poder bruto de processamento por ciclo de clock, com 24 unidades de pixel shader, 24 unidades de processamento de texturas e 8 unidades de vertex shader, formando um chip com 302 milhões de transístores. Outra vantagem sobre o NV40 é que ele é fabricado em uma técnica de 0.11 micron, o que permite o uso de freqüências um pouco mais altas, além de reduzir o consumo elétrico do chip. O G70 é também o primeiro chipset da 827
  • 828. nVidia a utilizar o barramento PCI Express nativamente, sem o uso do bridge HSI usado nas placas da geração anterior. Também existem placas da série GeForce 7 em versão AGP, mas neste caso utilizando um bridge PCI Express > AGP, que reduz sutilmente o desempenho da placa, similarmente ao que ocorre nas versões PCI Express das placas da série GeForce6. Para não aumentar demasiadamente o custo de produção das placas, a nVidia optou por manter o barramento de 256 bits com a memória usado no NV40, aumentando a taxa de transferência apenas através do uso de chips de memória mais rápidos. Isso limitou um pouco o desempenho das placas baseadas no G70, impedindo que o chipset manifestasse todo o seu potencial em diversas situações. Uma característica do G70 é o uso de um número menor de ROPs do que de unidades de texturas e unidades de pixel shader. Em vez de utilizar o mesmo número, como no NV40 e derivados, o G70 possui apenas 16 ROPs, o que significa uma proporção de 2 para 3 em relação às demais unidades, que são 24. A idéia por trás da redução é que nem todos os pipelines trabalham com 100% de carregamento todo o tempo, já que processam diferentes partes da imagem. Um novo componente, o fragment crossbar, faz com que os dados gerados pelos pipelines sejam enviados a qualquer um dos ROPs disponíveis. Isso faz com que o número menor de ROPs absorva melhor a variação de uso dos pipelines, permitindo que o poder de processamento disponível seja melhor aproveitado. Este diagrama da nVidia ilustra o conceito: 828
  • 829. Naturalmente, um ROP para cada pipeline ofereceria um desempenho um pouco melhor em diversas situações, mas em compensação exigiria o uso de mais transístores, o que encareceria o chip. A idéia é que a arquitetura 24/16 do G70 oferece um desempenho superior ao que seria possível obter com uma arquitetura 20/20, onde teríamos menos pipelines e os ROPs adicionais acabariam sendo subutilizados. Esta idéia de utilizar uma arquitetura flexível, no lugar de unidades fixas tem sido usada em uma escala cada vez maior nas GPUs atuais. O G70 foi utilizado na GeForce 7800 GT (256 MB, GPU a 400 MHz e memória a 1.0 GHz), GeForce 7800 GTX (256 MB, GPU a 430 MHz e memória a 1.2 GHz) e na GeForce 7800 GTX 512 (512 MB, GPU a 550 MHz e memória a 1.7 GHz), sendo que as três eram equipadas com memórias GDDR3 e utilizavam o barramento PCI Express. Pouco depois (fevereiro de 2006), foi lançada também uma versão AGP, a GeForce 7800 GS (256 MB, GPU a 375 MHz e memória a 1.2 GHz). É importante notar que apenas a 7800 GTX e a 7800 GTX 512 são baseadas na versão "completa" do G70. A 7800 GT é baseada em uma versão castrada, com apenas 20 das unidades de pixel shader, 20 unidades de processamento de texturas e 7 das unidades de vertex shader ativas, enquanto a 7800 GS usa uma versão ainda mais limitada, com apenas 16 unidades de pixel shader, 16 unidades de texturas, 8 ROPs e 6 das unidades de vertex shader. O uso da versão simplificada do G70, combinado com o clock mais baixo da GPU e o uso do bridge, fazem com que a 7800 GS seja consideravelmente mais lenta do que a 7800 GT. Como de praxe, as versões originais da 7800 foram seguidas por versões mais simples, baseadas em versões reduzidas do chip NV70 e em seguida também por versões mais rápidas, baseadas no G71. O G73 é uma versão reduzida do G70, que (assim como o NV43 em relação ao NV40) teve todas as características reduzidas à metade. Ele possui apenas 12 unidades de pixel shader, 8 ROPs e usa um barramento com a memória de apenas 128 bits. A única exceção fica por conta das unidades de vertex shader, que são 5 (em vez de 4). Com a redução, o chip passou a ter apenas 170 milhões de transístores, o que, combinado com uma técnica de produção de 0.09 micron, tornou o chip muito mais barato de se produzir, possibilitando o surgimento da classe de placas intermediárias dentro da família GeForce 7. A versão original do G73 é usada na GeForce 7600 GS (256 MB, GPU a 400 ou 560 MHz e memória DDR2 a 800 MHz) e na GeForce 7600 GT (256 MB, GPU a 560 GHz e memória GDDR3 a 1.4 GHz). Temos também a GeForce 7300 GT (256 MB, GPU a 350, 400 ou 500 MHz e memória DDR2 a 667 ou 800 MHz), que é baseada em uma versão castrada, com 8 unidades de pixel shader, 8 ROPs e 4 unidades de vertex shader. O seguinte na escala de redução é o G72, um chip drasticamente reduzido, que conserva apenas 4 unidades de pixel shader, 3 unidades de vertex shader e utiliza um barramento com a memória de apenas 64 bits. Ele é utilizado nas GeForce 7200 e 7300, placas de baixo custo e sucessoras diretas das 6200, 829
  • 830. que combinam o fraco desempenho do G72 e o limitado barramento com a memória com o uso de chips de memória mais baratos e mais lentos. O G72 "completo" é usado nas GeForce 7300 LE (128 ou 256 MB, GPU a 450 MHz e memória DDR a 667 MHz) e na GeForce 7300 GS (128 MB ou 256 MB, GPU a 550 MHz e memória DDR2 a 810 MHz). Por estranho que possa parecer, existe ainda uma versão castrada do chip, ainda mais fraca, com apenas 2 unidades de pixel shader, 2 unidades de texturas, 2 unidades de vertex shader e 2 ROPs. Ela é usada na GeForce 7200 GS (64, 128 ou 256 MB, GPU a 450 MHz e memória DDR a 667 ou DDR2 a 800 MHz) e na 7300 SE (128 MB ou 256 MB, GPU a 450 MHz e memória DDR a 667 MHz). Existiram ainda alguns raros modelos das 7200 e 7300 com 512 MB, mas estas versões são mais caras e acabam se revelando uma opção muito ruim, pois o estreito barramento com a memória impede que os 512 MB sejam utilizados efetivamente. Vale lembrar que estas 4 placas utilizam um barramento com a memória de apenas 64 bits, que acentua a baixa freqüência de operação dos módulos. A 7300 LE, por exemplo, dispõe de um barramento com a memória de apenas 5.3 GB/s, cerca de 7 vezes menos que a 7800 GTX, que dispõe de um barramento de 38.4 GB/s. Por compartilharem da mesma arquitetura do G70 original, mesmo as GeForce 7200 são capazes de rodar todos os jogos baseados no DirectX 9.0c. O maior problema é que a brutal redução nas unidades de processamento lhe obrigam a desativar o Antialiasing e o Anisotropic Filtering e a jogar em resoluções mais baixas. Desde que você saiba ajustar as configurações apropriadamente, o game vai rodar basicamente da mesma forma, mas a qualidade visual será muito inferior. Concluindo, temos o G71, que deixei por último. Ele é uma versão aperfeiçoada do G70, produzido usando uma técnica de 0.09 micron. Ele foi usado na GeForce 7900 GS (256 MB, GPU a 450 MHz e memória a 1.32 GHz), GeForce 7900 GT (256 MB, GPU a 450 MHz e memória a 1.32 GHz), GeForce 7900 GTO (512 MB, GPU a 650 MHz, memória a 1.32 GHz), GeForce 7900 GTX (512 MB, GPU a 650 MHz e memória a 1.6 GHz), GeForce 7950 GT (256 MB ou 512 MB, GPU a 550 MHz e memória a 1.4 GHz) e também na GeForce 7950 GX2 (2x512 MB, duas GPUs a 500 MHz e memória a 1.2 GHz), que é o resultado da combinação de duas placas, ligadas internamente em SLI (e possível ainda lugar duas 7950 GX2 em SLI, criando uma configuração Quad- SLI, com um total de 4 placas). 830
  • 831. GeForce 7950 GX2 Você pode ter achado estranho que a 7900 GS e a 7900 GT utilizem as mesmas freqüências tanto para a GPU quanto para a memória. A diferença entre as duas é que a GeForce 7900 GS é baseada em uma versão castrada do G71 que, assim como o G70 usado na 7800 GT, possui apenas 20 das unidades de pixel shader e 7 das unidades de vertex shader ativas, enquanto a 7900 GS é baseada na versão completa do chip. Naturalmente, todas estas placas utilizam memórias GDDR3. Dentro da série GeForce 7, apenas as placas de mais baixo custo, incluindo as 7200, 7300 e a 7600 GS utilizam memórias DDR ou DDR2 convencionais. G80 O G70 não inclui nenhuma grande novidade em relação ao NV40. Ele é mais rápido, por incluir mais unidades de processamento e ser capaz de operar a freqüências um pouco mais altas, mas a arquitetura é basicamente a mesma. O G80, por sua vez, é baseado em uma arquitetura bem diferente, com o uso de unidades shader unificadas, chamadas de "stream processors", que são basicamente unidades de ponto flutuante programáveis, que podem ser usados como unidades de pixel shader, unidades vertex shader ou ainda desempenhar outras funções, de acordo com a demanda. O G80 é também compatível com o 831
  • 832. DirectX 10 (o G70 é compatível com o 9.0c) e com o Shader Model 4.0, o que representa uma garantia de compatibilidade com os jogos lançados no futuro. A vantagem de utilizar os stream processors no lugar das unidades shader dedicadas é que eles podem absorver melhor a variação na demanda por processamento de pixel shaders ou de vertex shaders por parte do aplicativo, sem gargalos. A desvantagem é que os stream processors são um pouco menos eficientes do que unidades dedicadas, por isso o G80 inclui um número muito maior deles. Enquanto o G70 inclui 24 unidades de pixel shader e 8 unidades de vertex shader (32 no total), o G80 utiliza um conjunto de 8 clusters, com 16 unidades unificadas cada um, totalizando 128 stream processors. Dentro das unidades, as ALUs (os circuitos responsáveis pelo processamento das instruções) operam a uma freqüência maior que o restante do chip (o dobro ou mais), o que representa uma melhoria importante. Com isso, a GPU da 8800 GTX, por exemplo, trabalha a 575 MHz, mas as unidades de processamento trabalham a 1.35 GHz, o que resulta em um aumento expressivo no volume de dados processados. Na prática, é incorreto dizer que o G80 possui "128 unidades de shader unificadas", já que cada cluster se comporta como uma única unidade. Tecnicamente, o G80 possui apenas 8 unidades shader unificadas, embora elas sejam muito maiores e executem muito mais processamento do que as mais numerosas unidades dedicadas do G70. Isso explica o fato do G80 possuir apenas 6 ROPs (contra os 16 do G70). Embora em menor número, os ROPs do G80 são muito mais "largos", executando muito mais processamento por ciclo de clock do que os do G70. O chip inclui ainda pequenas porções de cache dentro de cada cluster e também dentro dos ROPs, que armazenam tanto instruções quanto texturas que estão sendo processadas. Os caches possuem uma função muito similar aos caches usados nos processadores, embora a eficiência seja mais limitada, devido ao tipo de processamento executado pela placa de vídeo. 832
  • 833. Diagrama de blocos do G80 Naturalmente, um número tão grande de unidades de processamento resultaram em um chip bastante complexo (e caro de produzir), com nada menos do que 686 milhões de transístores. O aumento nas unidades de processamento foi acompanhado por um aumento também no barramento com a memória, que passou a ser de 384 bits (dividido em 6 canais independentes, de 64 bits cada). O G80 original é usado na GeForce 8800 GTX (768 MB, GPU a 575 MHz - com as unidades de processamento a 1.35 GHz - e memória GDDR3 a 1.8 GHz) e na GeForce 8800 Ultra (768 MB, GPU a 612 MHz - com as unidades de processamento a 1.5 GHz - e memória GDDR3 a 2.16 GHz). A 8800 GTS (320 ou 640 MB, GPU a 500 MHz - com as unidades de processamento a 1.2 GHz - e memória GDDR3 a 1.6 GHz) é baseada em uma versão castrada do chip, com duas das unidades shader unificadas desativadas e um barramento com a memória de apenas 320 bits. Como de praxe, o G80 foi seguido por duas versões de baixo custo, o G84 e o G86. O G84 é uma versão reduzida do G80. Ele é produzido usando a mesma técnica de 80 nanômetros, mas possui apenas 2 unidades shader unificadas (ou seja, 32 stream processors), o que resulta (a 675 MHz) em um fill rate de 10800 megatexels. Como de praxe, o barramento com a memória também foi reduzido, para apenas 128 bits. O G84 é usado na GeForce 8600 GT (256 MB, GPU a 540 MHz - com as unidades de processamento a 1.18 GHz - e memória GDDR3 a 1.4 GHz) e na GeForce 8600 GTS (256 MB, GPU a 675 MHz - com as unidades de processamento a 1.45 GHz - e memória GDDR3 a 2.0 GHz). 833
  • 834. Embora o barramento com a memória seja mais estreito, o uso de chips GDDR3 de 2.0 GHz faz com que a 8600 GTS disponha de um barramento de respeitáveis 32 GB/s. Embora possuam apenas um quarto do poder de processamento bruto das GeForce 8800 GTX, as GeForce 8600 GT e GTS são de longe mais populares, já que são placas mais baratas. Do ponto de vista do desempenho, elas não se comparam com as 8800, mas também não são de todo ruins. A 8600 GTS consegue superar a 7800 GTX por uma pequena margem na maioria dos jogos, com a vantagem de oferecer suporte ao DirectX 10. Temos ainda o G86, usado nas placas mais baratas dentro da família, que conserva apenas uma única unidade shader unificada (um oitavo do original, com 16 stream processors) e utiliza um barramento com a memória de 128 bits ou 64 bits, de acordo com a placa onde é usado. O chip G86 e os módulos de memória em uma GeForce 8400 GS (com o cooler removido) Ele é usado na GeForce 8500 GT (256 MB ou 512 MB, GPU a 450 MHz - com a unidade de processamento a 900 MHz - e memória DDR2 a 800 MHz) e na GeForce 8400 GS (256 MB, GPU a 450 MHz - com a unidade de processamento a 900 MHz - e memória DDR2 a 800 MHz). A grande diferença entre as duas é que a 8500 GT utiliza um barramento com a memória de 128 bits, enquanto a 8400 GS usa um barramento de 64 bits, o que reduz o desempenho, mas em troca também torna a placa mais barata de se produzir. De uma forma geral, a 8500 GT compete com a 7300 GT em desempenho, ou seja, não espere muito. Ela é uma placa destinada a quem quer gastar o mínimo possível e não a quem espera um desempenho satisfatório nos jogos atuais. R520 O R520 é o chipset usado nas placas ATI Radeon da série X1000. Ele oferece suporte ao DirectX 9.0c e ao Shader Model 3.0 e concorre diretamente com o G70 da nVidia com relação ao desempenho. Ele é o sucessor dos chipsets 834
  • 835. X300 e X420, usados nas placas ATI Radeon anteriores, incluindo as Radeon 9000 e as X800. O R520 original possui 16 unidades de processamento de texturas, 16 unidades de pixel shader, 16 ROPs e 8 unidades de vertex shader, alimentadas por um barramento de 256 bits com a memória. Ao contrário da nVidia, que utilizava o bridge HSI nas versões do NV40 destinadas às placas PCI Express, o que causava uma pequena redução no desempenho, a ATI optou por produzir versões separadas do R520 (e derivados) em versão PCI Express e AGP. Acessando o barramento de forma direta, as placas em versão PCI Express realmente eram um pouco mais rápidas que as AGP. Uma característica de todos os chips da série é que não são mais usados "pipelines", como em placas mais antigas (onde as unidades de processamento são projetadas em fila, de forma que as tarefas sejam processadas sequencialmente). No R520 as unidades de pixel shader e de processamento de texturas são independentes, controladas por um circuito que divide os trabalhos a processar, tentando aproveitar o processamento das unidades da forma mais eficiente possível. Isso melhora um pouco a eficiência do chipset em relação aos projetos antigos, a um custo relativamente pequeno em termos de aumento no número de transístores (e conseqüentemente no custo de fabricação). O R520 foi utilizado nas placas Radeon X1800 GTO (256 MB, GPU a 500 MHz e memória GDDR3 a 1.0 GHz), Radeon X1800 XL (256 MB, GPU a 500 MHz e memória GDDR3 a 1.4 GHz) e na Radeon X1800 XT (256 ou 512 MB, GPU a 625 MHz e memória GDDR3 a 1.5 GHz). A X1800 GTO original utilizava uma versão castrada do R520, com apenas 12 unidades de texturas, 12 unidades de pixel shader e 12 ROPs ativos, mas ela foi logo substituída por uma versão atualizada (a X1800 GTO Rev.2), que vem com o R520 completo. Assim como no caso da nVidia, a ATI utiliza a mesma família de chipsets em diversas placas diferentes, que vão desde modelos de baixo custo e chipsets integrados, até placas de alto desempenho. A receita é basicamente a mesma: desenvolver diferentes versões do mesmo chipset, adicionando, removendo ou desativando componentes internos, de forma a produzir as várias combinações de custo e desempenho desejadas. O RV515 é a versão mais simples. Ele possui apenas um quarto das unidades de processamento do R520, contando com 4 unidades de texturas, 4 unidades de pixel shader, 4 ROPs e 2 unidades de vertex shader. Apesar da redução de 4 para 1 das unidades de processamento, o R515 conserva um barramento com a memória de 128 bits, o que ajuda a manter o desempenho das placas em níveis aceitáveis, apesar dos lentos módulos SDRAM e GDDR2 usados. Ele foi usado na Radeon X1300 (128 ou 256 MB, GPU a 450 MHz e memória SDRAM a 250 MHz), Radeon X1300 Pro (256 MB, GPU a 600 MHz e memória GDDR2 a 800 MHz) e na Radeon X1550 (256 MB, GPU a 550 MHz e memória GDDR2 a 800 MHz), os modelos mais lentos e baratos dentro da série. 835
  • 836. O seguinte é o RV530, um chip intermediário, que possui 12 unidades de pixel shader, 4 unidades de texturas, 4 ROPs e 5 unidades de vertex shader. O reforço nas unidades de processamento de shaders faz com que as placas baseadas no RV530 sejam muito mais rápidas do que as baseadas no R515 nos jogos mais atuais, que utilizam shaders de forma extensiva. Ele é usado na Radeon X1300 XT (128, 256 ou 512 MB, GPU a 500 MHz e memória GDDR2 a 800 MHz), Radeon X1600 Pro (128, 256 ou 512 MB, GPU a 500 MHz e memória GDDR2 a 800 MHz), Radeon X1600 XT (256 MB, GPU a 590 MHz e memória GDDR3 a 1380 MHz) e na Radeon X1650 Pro (256 ou 512 MB, GPU a 600 MHz e memória GDDR2 a 700 MHz). As placas baseadas no RV530 oferecem um bom desempenho, considerando que são placas relativamente baratas. A X1600 XT, por exemplo, era vendida na mesma faixa de preço da GeForce 6600 GT, mas era capaz de superar a 6800 GT (consideravelmente mais cara) em diversas situações. O problema com as placas da ATI, de forma geral, é que o desempenho ideal é atingido apenas em jogos que utilizam o Direct 3D. O desempenho em jogos que utilizam o OpenGL, e, sobretudo, o desempenho no Linux (utilizando os drivers proprietários da ATI) é severamente penalizado, o que acaba se revelando um ponto fraco importante. Radeon X1650 Pro (com o cooler removido) Apesar de possuir uma numeração inferior, a X1300 XT é bem mais poderosa que a X1550, já que as duas placas utilizam quase a mesma freqüência de operação e a 1300 XT é baseada no R530. Esse tipo de variação é muito comum também nas placas da nVidia, onde as placas mais simples dentro de uma nova linha são quase sempre muito mais lentas que as placas de médio e alto desempenho da família anterior (como no caso das GeForce 7200 e da 8400 GS, que perdem para, respectivamente, as GeForce 6800 e 7900 por uma grande margem), por isso é sempre importante checar as especificações. 836
  • 837. Dentro da nomenclatura adotada pela ATI, temos, em ordem hierárquica, as versões "LE" e "SE" (séries de baixo custo), GT, RX e GTO (placas intermediárias) e, finalmente as XL, XT e XTX, que são as placas high-end. A categoria "Pro" era originalmente usada em relação às placas mais caras, mas a partir das Radeon X1000 passou a ser usado em séries de baixo custo, ou intermediárias, abaixo das GTO, XL, XT e XTX. Dois exemplos são a X1300 Pro, que é, dentro da série, superior apenas à X1300 regular e a x1950 Pro, que ganha apenas da x1950 GT. Continuando, outra versão intermediária é o RV560, que possui 24 unidades de pixel shader, 8 unidades de texturas, 8 ROPs e 8 unidades de vertex shader, mas conserva o barramento de 128 bits com a memória do RV530. Ele é usado na Radeon X1650 XT (256 MB, GPU a 575 MHz e memória GDDR3 a 1.4 GHz). O seguinte é o RV570, que possui 36 unidades de pixel shader, 12 unidades de texturas, 12 ROPs e 8 unidades de vertex shader. Ao contrário do RV560, ele utiliza um barramento de 256 bits, necessário para evitar que a comunicação com a memória se tornasse um gargalo. Ele foi utilizado na Radeon X1950 GT (256 ou 512 MB, GPU a 500 MHz e memória GDDR3 a 1.2 GHz) e na Radeon X1950 Pro (256 ou 512 MB, GPU a 575 MHz e memória GDDR3 a 1.38 GHz). Estas duas placas concorriam diretamente com as GeForce 7900 da nVidia, tanto que, durante toda a primeira metade de 2006, a X1950 Pro e a 7900 GS custavam (preço de tabela, nos EUA), exatamente o mesmo: US$ 199, enquanto a X1650 Pro custava US$ 149 e as X1300 custavam abaixo de US$ 99. Concluindo, temos também o R580, uma versão expandida do R520, que mantém as 16 unidades de texturas, os 16 ROPs e as 8 unidades de vertex shader, mas traz o triplo de unidades de pixel shader, num total de 48, mantendo o barramento de 256 bits com a memória. Esta proporção de 3 unidades de pixel shader para cada unidade de texturas não ajuda muito no desempenho da placa em jogos antigos, mas é uma melhora bem vinda ao rodar títulos mais atuais. O F.E.A.R, por exemplo, utiliza até 7 operações aritméticas (executadas pelas unidades de pixel shader) para cada operação envolvendo texturas, enquanto o Splinter Cell: Chaos Theory a proporção é ainda maior, com 8 operações aritméticas para cada operação envolvendo texturas. Do ponto de vista da longevidade do chip, a decisão de usar 48 unidades de pixel shader foi acertada. O R580 foi usado em um grande número de placas da série X1900, entre elas a Radeon X1900 XT (256 ou 512 MB, GPU a 625 MHz e memória GDDR3 a 1.45 GHz), Radeon X1900 XTX (512 MB, GPU a 650 MHz e memória GDDR3 a 1.55 GHz), Radeon X1950 XT (256 ou 512 MB, GPU a 625 MHz e memória GDDR3 a 1.8 GHz) e a Radeon X1950 XTX (512 MB, GPU a 650 MHz e memória GDDR3 a 2.0 GHz). Estas eram as placas topo de linha da ATI que, na época do lançamento, eram vendidas (no EUA) na faixa dos 500 dólares. Uma opção um pouco mais barata é a Radeon X1900 GT (256 MB, GPU a 575 MHz e memória GDDR3 a 1.2 GHz), baseada em uma versão castrada do 837
  • 838. R580, com apenas 36 unidades de pixel shader, 12 unidades de texturas, 12 ROPs e 8 unidades de vertex shader. R600 O R600 é o concorrente direto do G80. Ele adota uma arquitetura baseada em shaders unificados e oferece suporte ao DirectX 10 e ao Shader Model 4.0. Internamente, o chip é composto por 320 stream processors, agrupados em 64 clusters (com 5 unidades cada um) e utiliza um barramento com a memória de generosos 512 bits. À primeira vista, pode parecer que o R600 é muito mais poderoso que o G80, já que ele possui apenas 128 stream processors e utiliza um barramento de apenas 384 bits com a memória. Mas, a arquitetura interna dos dois chips é bastante diferente, de forma que a comparação não é tão simples. Em primeiro lugar, os stream processors usados no R600 são muito mais simples do que os usados no G80 (justamente por isso foi possível incluir um número tão grande deles). Dentro de cada cluster, temos 4 stream processors capazes de processar apenas instruções simples e uma única unidade capaz de processar instruções complexas, diferente da arquitetura usada pela nVidia, onde todos os stream processors podem processar tanto instruções simples quanto instruções complexas. Isso faz com que o desempenho dos dois chips varie muito de acordo com o tipo de instruções predominantemente usadas em cada situação. Outra questão importante é que as unidades de processamento do G80 trabalham ao dobro ou mais do clock da GPU, enquanto que no R600 eles operam na mesma freqüência do restante do chip. A grande diferença na freqüência de operação acaba revertendo a vantagem que o R600 teria com relação ao processamento bruto e fazendo com que, na maioria das aplicações, o G80 seja mais rápido (considerando duas placas com a GPU operando à mesma freqüência e com o mesmo tipo de memórias). Apesar disso, a ATI conseguiu equilibrar as coisas fazendo com que o R600 atingisse freqüências mais altas e reduzindo os preços. O R600 original é utilizado na Radeon HD 2900 XT, onde a GPU opera a 743 MHz e utiliza 512 ou 1024 MB de memória GDDR3 a 1.65 GHz, ou GDDR4 a 2.0 GHz. Embora a 2900 XT perca para uma GeForce 8800 Ultra, ela compete bem contra a 8800 GTS, que na época do lançamento custava na mesma faixa de preço que ela. Apesar disso, pode ser que futuras versões do chip, ou mesmo atualizações de drivers mudem a situação radicalmente. Não é incomum que novas versões dos drivers, com otimizações e correções para problemas detectados após o lançamento melhorem o desempenho de uma nova placa em 20% ou mais. É o tipo de coisa que não se pode prever. 838
  • 839. Radeon HD 2900 XT Como esperado, o R600 foi seguido por duas versões de baixo custo. O RV630 é uma versão reduzida, com 120 stream processors e um barramento com a memória de apenas 128 bits. Ele é usado na Radeon HD 2600 Pro (256 MB, GPU a 550 MHz e memória GDDR3 a 1.4 GHz) e na Radeon HD 2600 XT (512 MB, GPU a 800 MHz e memória GDDR4 a 2.2 GHz). Embora o desempenho seja bem inferior ao da 2900 XT, como seria de se esperar, a 2600 Pro oferece como vantagens o fato de ser relativamente barata (em outubro de 2007 ela custava apenas US$ 99, nos EUA) e possuir um consumo elétrico baixo, de pouco mais de 45 watts, cortesia do baixo clock da GPU e da técnica de fabricação de 0.065 micron usada no RV630. Radeon HD 2600 Pro Temos ainda o RV610, a versão mais simples, que conserva apenas 40 dos stream processors e utiliza um barramento com a memória de apenas 64 bits. Ele é usado na Radeon HD 2400 Pro (256 MB, GPU a 525 MHz e memória DDR2 a 800 MHz) e na Radeon HD 2400 XT (256 MB, GPU a 700 MHz e 839
  • 840. memória GDDR3 a 1.0 ou 1.6 GHz). A 2400 Pro é uma placa de baixo custo (apenas US$ 50, nos EUA), que possui inclusive alguns modelos com cooler passivo. Embora o desempenho seja muito ruim (bem menos da metade do da 2600 Pro), ela acabou se tornando popular devido ao preço. Por serem baseadas na arquitetura do R600, as 2400 são compatíveis com o DirectX 10, mas este não é um fator que deve ser levado em conta nesse caso, pois o desempenho é fraco demais para que você possa se beneficiar das melhorias visuais. No final das contas, você vai acabar jogando a baixas resoluções e com parte dos recursos visuais desativados, seja rodando títulos que usam o DirectX 9, ou o DirectX 10. Manutenção Assim como no caso das placas-mãe, a maior parte dos defeitos em placas de vídeo estão relacionados a capacitores ou outros componentes do circuito regulador de tensão. Você pode notar que as placas de vídeo que dão mais defeitos são justamente os modelos com consumo mais alto (e placas usadas por longos períodos em overclock), onde estes componentes são mais exigidos, e não placas baratas, que operam a baixas freqüências e utilizam dissipadores passivos. O sintoma mais comum é que a placa torne-se menos estável com o tempo, devido à deterioração dos capacitores, travando com cada vez mais freqüência até que o dono resolva substituí-la, ou que a placa simplesmente pare de funcionar definitivamente, fazendo com que o micro deixe de inicializar o vídeo durante o boot. Capacitores e regulador de tensão em uma Radeon HD 2600 XT A instabilidade é causada, sobretudo, pela perda de eficiência dos capacitores, principalmente em placas que ainda utilizam capacitores eletrolíticos. É possível substituir capacitores em placas de vídeo (assim como no caso de placas-mãe) e, em muitos casos, o conserto realmente vale a pena, pois muitas placas de vídeo atuais custam muito mais caro que uma simples placa-mãe. 840
  • 841. Outra opção no caso de placas instáveis é fazer um underclock, ou seja, baixar a freqüência de operação da GPU, de forma a reduzir o consumo elétrico da placa e assim permitir que ela funcione dentro de uma margem maior de tolerância. Afinal, é preferível uma placa mais lenta do que uma que trava a todo instante. Chipsets de vídeo integrados Falar sobre o desempenho dos chipsets de vídeo onboard é em grande parte irrelevante, pois o desempenho é invariavelmente fraco, de forma que quem usa o PC para jogos, acaba comprando uma placa 3D offboard mais cedo ou mais tarde. Acaba não fazendo muito sentido comparar o desempenho de um Mirage 3 com o de um Chrome9 (por exemplo) se ambos são inadequados para rodar qualquer game atual. A maioria dos usuários que se contenta em usar o vídeo onboard usa o PC predominantemente para navegação, aplicativos de escritório, vídeo e áudio ou outras aplicações 2D. Eles estão mais preocupados com a qualidade de imagem, as resoluções e taxas de atualização suportadas e os recursos de aceleração de vídeo em 2D, incluindo a decodificação de formatos de vídeo via hardware. Apesar disso, as placas onboard constituem uma base instalada grande demais para ser ignorada. Vou aproveitar para dar uma pincelada no assunto e deixar para falar mais um pouco no capítulo sobre notebooks. Neles, o desempenho do vídeo onboard é mais importante do que nos desktops, simplesmente porque você não tem como instalar uma placa 3D offboard facilmente. Por incrível que pareça, a Intel é a maior fabricante de chipsets de vídeo (em número), muito embora não fabrique uma única placa offboard. O forte da Intel são os chipsets de vídeo onboard, integrados na maior parte de seus chipsets. Depois do chipset i752 e do "Extreme Graphics", duas soluções bastante fracas usadas nos chipsets da série 800, foram lançadas as séries GMA e X3x00, usadas atualmente. A primeira geração é o chip GMA 900, incluído nos chipsets Intel 910G, 915G e 915GX. O GMA 900 opera a 333 MHz e utiliza até 128 MB de memória compartilhada, alocada dinamicamente de acordo com a utilização do vídeo. A segunda geração é o GMA 950, uma versão levemente atualizada, encontrada no chipset Intel 945G. Ele opera a 400 MHz e utiliza até 256 MB de memória compartilhada, também alocada dinamicamente. Como você não tem controle direto sobre a quantidade de memória alocada para o vídeo (não é possível ajustar o valor através do Setup), é importante usar pelo menos 512 MB de memória em micros baseados no GMA 950. Uma curiosidade é que no Linux a memória reservada para a placa de vídeo aparece no relatório gerado pelo comando "free", como se fosse memória alocada para uso do Kernel. Se você comentar as linhas Load "dri" e Load "glx" dentro do arquivo "/etc/X11/xorg.conf" (o que desativa a aceleração 3D para o vídeo) e reiniciar o modo gráfico, vai perceber que a memória consumida pelo 841
  • 842. sistema cai em 40 MB, ou mais, em qualquer micro com vídeo onboard Intel, já que o chipset de vídeo deixa de reservar memória para os recursos 3D. Continuando, tanto o GMA 900 quanto o 950 possuem 4 pixel pipelines (cada um composto por uma unidade de processamento de texturas e um ROP), o que resulta em um fill rate de 1333 megapixels (ou megatexels, já que neste caso a proporção é de 1 para 1) para o GMA 900 e 1600 megapixels para o GMA 950. À primeira vista, os valores parecem comparáveis com os da GeForce 6500, que (com a GPU a 350 MHz) possui um fill rate de 1400 megapixels. O problema é que, além do baixo desempenho da memória compartilhada, os chipsets da série GMA não possuem suporte a processamento de shaders via hardware (contam apenas com processamento de pixel shaders via software, emulado pelo driver de vídeo), o que reduz bastante a capacidade gráfica dos chips e impede que eles rodem jogos recentes, que exigem suporte a vertex shader por parte da placa de vídeo, como o Battlefield 2142, CoD 2, Elder Scrolls Oblivion e Ghost Recon. Nesses títulos, não é só questão de reduzir a resolução ou os efeitos. Se você possui uma placa com um chipset GMA 900 ou 950, realmente não existe muito o que fazer, além de instalar uma placa offboard. Com relação aos recursos 2D, ambos os chipsets são equipados com um RAMDAC que trabalha a 400 MHz, o que permite que utilizem até 2048x1536 de resolução, com 75 Hz de refresh. Ambos oferecem suporte a DVI, mas na grande maioria dos casos as placas incluem apenas o conector VGA tradicional, deixando o recurso sem uso (é possível adicionar a saída DVI através de uma placa de expansão ligada ao slot PCI Express, mas ela é muito incomum, já que representa um custo adicional). O GMA 950 é compatível com o Aero do Vista, mas o 900 não, devido a deficiências nos drivers. Mais recentemente foi lançado o GMA X3000, que é integrado ao chipset Intel G965. Ele é um projeto radicalmente diferente dos anteriores, baseado no uso de unidades programáveis, que, assim como os stream processors do G80, podem trabalhar como unidades de pixel shader, vertex shader ou como aceleradores de vídeo, de acordo com a demanda. 842
  • 843. Ponte norte do chipset G965, contendo o X3000 onboard (com o dissipador removido) O X3000 possui 8 unidades programáveis, opera a 667 MHz e é capaz de usar até 384 MB de memória compartilhada (que, assim como nos anteriores, é alocada dinamicamente). A maior freqüência de operação, combinada com o suporte a vertex shaders e a pixel shaders via hardware, tornam X3000 uma solução mais respeitável, que oferece suporte ao DirectX 10 e é capaz de rodar a maioria das jogos recentes, embora com baixo FPS. Naturalmente, as 8 unidades programáveis do X3000 são muito mais simples que as 8 unidades usadas no G80 e oferecem um desempenho brutalmente inferior, mas dentro do que se pode esperar de um chipset onboard, o X3000 é um projeto bastante avançado. Graças ao processamento de shaders via hardware, o X3000 oferece um desempenho bem superior ao GMA 950 na maioria dos jogos. Entretanto, para adicionar as unidades programáveis, a Intel precisou remover dois dos pixel pipelines, o que reduz o fill rate por ciclo do X3000 à metade. Mesmo operando a 667 MHz, o X3000 possui um fill rate teórico de apenas 1333 megapixels, o que faz com que o GMA950 seja mais rápido em alguns jogos, embora o projeto do X3000 seja bastante superior no geral. Vale lembrar que o X3000 é incluído apenas no chipset G965. O Q965 (assim como o Q963) inclui o GMA 3000 (sem o "X"), uma versão simplificada que, apesar do nome, utiliza uma arquitetura muito similar à do GMA 950, sem as unidades programáveis e o suporte a shaders via hardware. A nVidia, por sua vez, possui os chipsets GeForce 6100 e GeForce 6150, destinados às placas AM2. O vídeo integrado é uma versão reduzida do chipset NV44, usado nas placas GeForce 6200 offboard, que além da redução no número de unidades de processamento, tem o desempenho limitado pelo 843
  • 844. uso de memória compartilhada. Ele é a base da base da pirâmide dentro da linha de chipsets 3D da nVidia. O 6100 opera a 425 MHz, enquanto o 6150 opera a 475 MHz, mas ambos compartilham da mesma arquitetura, com 2 pixel pipelines (cada um composto por uma unidade de pixel shader, uma unidade de texturas e um ROP), uma única unidade vertex shader e a possibilidade de usar até 256 MB de memória compartilhada. Apesar do suporte a shaders ajudar em vários jogos, eles oferecem um fill rate relativamente baixo, de apenas 850 megatexels (a 425 MHz) ou 950 megatexels (a 475 MHz) ou que faz com que percam para o GMA X3000 por uma boa margem (o que é normal, considerando que o X3000 é um projeto mais recente). Só para efeito de comparação, o 6150 consegue manter uma média de 15 FPS no Half Life, a 1024x768, enquanto o X3000 mantém 20 FPS. No Unreal 2004 (também a 1024x768) o 6150 mantém 44 FPS, enquanto o X3000 fica um pouco a frente, com 47 FPS. É difícil fazer uma comparação direta entre as duas famílias, já que o GeForce 6100/6150 é usado em placas para processadores AMD, enquanto o X3000 é encontrado apenas em chipsets para processadores Intel, mas nestes dois exemplos o desempenho do processador tem pouco efeito, já que o grande gargalo é mesmo o desempenho do vídeo onboard. O RAMDAC do GeForce 6150 opera a uma freqüência um pouco mais baixa, 300 MHz, o que limita a resolução suportada pelo chipset a 1920x1440 (com 75Hz), criando uma possível limitação para quem utiliza monitores maiores. Outro problema é que as placas-mãe baseadas nos chipsets GeForce 6100 e 6150 são relativamente caras, o que as torna pouco atraentes do ponto de vista do custo-benefício. Ao invés de pagar mais caro por uma placa com o 6100/6150, valeria mais à pena comprar uma placa equivalente, sem vídeo onboard, e instalar uma placa offboard barata, da série GeForce 6 ou GeForce 7, já que mesmo uma 6200 TC oferece um desempenho superior ao de uma 6150 onboard. Levando isso em consideração, as placas com o 6100/6150 acabam servindo mais como uma opção para quem procura uma placa com vídeo onboard com um baixo consumo elétrico, que conserve um nível mínimo de desempenho do que uma opção realística para quem está montando um micro para jogos. Continuando, temos os chipsets de vídeo da SiS, que incluem o Mirage (usado nos chipsets SiS 661FX, 661GX e 741GX), Mirage 1 (chipsets SiS 662 e 761GX), Mirage 2 (SiS 760) e Mirage 3 (SiS 671 e 771), descendentes diretos do SiS315, um chipset lançado em 2001, que chegou a ser utilizado em algumas placas offboard. Eles são chipsets bastante simples, sem suporte a processamento de shaders via hardware (o Mirage 3 suporta o Shader Model 2.0, mas o processamento é feito via software, assim como no GMA 900) e um fill rate bastante baixo devido à baixa freqüência de operação (o Mirage 3 opera a 250 MHz e os demais a 200 MHz). O Mirage 3 oferece suporte ao DirectX 9, o que permite rodar alguns 844
  • 845. jogos relativamente atuais, mas o desempenho é muito baixo, menos da metade do GMA 950. Concluindo, temos a VIA, que produz os chipsets UniChrome Pro (usado nos chipsets VIA P4M890, K8M800 e outros) e Chrome 9 (usado no P4M900 e no K8M890). O UniChrome Pro é uma versão levemente atualizada do antigo ProSavage, um chipset de vídeo usado desde o Apollo Pro PM 133. O desempenho 3D é muito fraco (no nível das antigas placas nVidia TnT, antecessoras da GeForce original), de forma que ele não pode ser considerado propriamente um chipset de vídeo 3D, pelo menos não dentro da concepção atual. Com relação ao desempenho, ele é simplesmente o pior chipset 3D ainda em produção, tanto que a VIA evita citar o desempenho 3D no material publicitário, se limitando a dizer que ele oferece um desempenho 2D satisfatório. O Chrome 9 é um chipset atualizado, que ganhou suporte a shaders e ao DirectX 9. O principal objetivo é oferecer suporte ao Aero do Vista, de forma que o desempenho em jogos 3D continua sendo muito fraco, mesmo se comparado aos chipsets Intel da série GMA. Para ter uma idéia, o fill rate do Chrome 9 é de apenas 500 megapixels e a simplicidade do projeto faz com que o desempenho relativo seja ainda pior. Tanto os chipsets da série Mirage, quanto o Chrome 9 são soluções bastante fracas. Se você procura um desempenho 3D minimamente aceitável, eles são opções a evitar, a menos que você pretenda desativar o vídeo onboard e usar uma placa offboard. Conectores: VGA x DVI Em 1987 a IBM lançou o padrão de vídeo VGA, que permitia o uso de 640x480 com 256 cores. Com o passar dos anos, surgiram os padrões SVGA (800x600), XGA (1024x768), SXGA (1280x1024) e assim por diante, usados pelos monitores atuais. Apesar disso, o mesmo conector VGA analógico (Mini D-Sub) de 15 pinos continua sendo utilizado até hoje. O grande problema é que os monitores CRT estão sendo rapidamente substituídos pelos monitores LCD, que são digitais por natureza. Para manter compatibilidade com as placas antigas, eles incluem conversores analógico/digital, que além de encarecerem os monitores, reduzem a qualidade da imagem. Para resolver o problema, foi criado o padrão DVI (Digital Visual Interface), que permite que o sinal seja transmitido de forma digital da placa de vídeo até o monitor, eliminando a necessidade de fazer a conversão digital > analógico > digital, que causa degradação da imagem. Existem diversos sub-padrões dentro do DVI. As placas atuais utilizam conectores DVI-I, que mantém a compatibilidade com os monitores antigos, oferecendo simultaneamente o sinal digital e o analógico. Isso permite que você conecte um monitor analógico em uma placa de vídeo com saída DVI-I utilizando um adaptador simples. Ele é normalmente fornecido junto com 845
  • 846. placas de vídeo que trazem apenas saídas DVI, como a maioria dos modelos da nVidia e da ATI: O conector DVI utiliza 29 pinos. Destes, os pinos 8, C1, C2, C3, C4 e C5 são usados para transmitir o sinal analógico usado pelos monitores antigos, enquanto os demais transmitem o sinal digital, como você pode ver no diagrama: O DVI suporta o uso de conexões single-link e dual-link. Cada link de dados é formado por três canais independentes (um para cada cor), de 8 bits e 165 MHz. Assim como no SATA e no PCI Express, para cada 8 bits de dados, são enviados 2 bits adicionais de sincronismo, de forma que cada link DVI oferece um total de 4.95 gigabits de banda. Uma conexão dual-link dobra este valor, oferecendo uma banda total de 9.9 gigabits. Uma conexão single-link suporta o uso de até 1600x1200 (com 60 Hz de atualização), enquanto uma conexão dual-link suporta o uso de 2048x1536 (com 75 Hz) ou 2560x1600 (com 60 Hz, que é a taxa de atualização usada pela maioria dos monitores LCD). Como estamos falando de um link digital, existe uma grande flexibilidade. É possível atingir resoluções mais altas reduzindo o refresh rate, por exemplo, mas isso não é muito comum, já que causa perda da fluidez da imagem e, de qualquer forma, ainda não existe muita demanda por monitores com resoluções acima de 2048x1536. Os cabos single-link possuem duas colunas de pinos a menos, mas são fisicamente compatíveis com os conectores dual-link: 846
  • 847. Conector DVI dual-link (à esquerda) e conector single-link Você pode ligar um monitor single-link em uma placa com conectores dual-link sem problema algum. O inverso (uma placa single-link com um monitor dual- link) também funciona, mas neste caso você fica limitado a 1920x1080, independentemente da resolução suportada pelo do monitor. Uma observação é que muitas placas de vídeo baratas utilizam conectores dual-link, mas na verdade operam apenas em modo single-link. Se você pretender usar um monitor de alta resolução, cheque sempre as especificações da placa. Embora pareça exagero, muitos monitores de LCD de 30" já suportam o padrão WQXGA (2560x1600) nativamente, como o Apple 30IN cinema, o HP LP3065 e o Dell 3007WFP. Com a queda nos preços dos monitores LCD, não se surpreenda se daqui a poucos anos estes displays monstruosos passarem a ser um item popular nos micros desktop. :) Dell 3007WFP de 30", com resolução de 2560x1600 Além do DVI-I, existem também os conectores DVI-D, que carregam apenas o sinal digital, abandonando a possibilidade de usar o adaptador para conectar um monitor antigo. A única diferença visível entre os dois é que o DVI-D não possui os pinos C1, C2, C3 e C4. As placas com conectores DVI-D são relativamente raras, já que o DVDI-I combina o melhor dos dois mundos, mas o DVI-D pode virar a mesa no futuro, conforme a compatibilidade com monitores antigos for lentamente deixando de ser uma preocupação. Adotar o DVI-D permite que os fabricantes de placas de vídeo removam o conversor digital/analógico, o que reduz em alguns dólares o custo de produção. 847
  • 848. Conector DVI-D É possível ainda ligar uma placa de vídeo com saída DVI a uma HDTV que utilize um conector HDMI. Tanto o DVI quanto o HDMI utilizam o mesmo padrão de sinalização, de forma que é necessário apenas comprar um cabo simples. A limitação neste caso é que a saída DVI não inclui os pinos destinados ao som, de forma que você precisa usar um cabo de áudio separado. Cabo DVI > HDMI Outro termo associado ao DVI é o HDCP (High-Bandwidth Digital Content Protection), uma tecnologia menos nobre, que se destina a "proteger" a indústria cinematográfica dos ladrões de conteúdo (consumidores), provendo uma forma de proteger e encriptar filmes e seriados. Ele é utilizado tanto no HD DVD quanto no Blu-ray. O que diferencia o HDCP de sistemas anteriores de encriptação, como o CSS usado no DVD, é o fato dele ser bem mais intrusivo, demandando a combinação de um sistema operacional, um software de reprodução, uma placa de vídeo e um monitor compatíveis com o padrão, caso contrário o sinal de alta-resolução é bloqueado e a qualidade é degradada a um nível similar ao do DVD. Concluindo, muitas placas incluem ainda um conector S-Video, que permite usar uma TV como monitor. A qualidade não é muito boa, já que a placa degrada a imagem para o sinal de 640x480 com 60 Hz (interlaçado ainda por cima) suportado pela TV, mas ainda assim o conector é utilizado por muita gente na hora de assistir filmes e jogar, já que, apesar da baixa qualidade de imagem, a TV é geralmente bem maior do que o monitor. Muitas placas 848
  • 849. incluem as três saídas, como esta antiga ATI R9500, permitindo que você escolha qual usar: Monitores: LCD x CRT x Plasma x OLED Por absurdo que possa parecer, a maioria dos computadores das décadas de 60 e 70 não utilizavam monitores, mas sim impressoras de margarida (antecessoras das impressoras matriciais) como dispositivos de saída. Neles, você digitava os comandos no teclado e precisava esperar os resultados serem lentamente impressos em um rolo de papel. Estes terminais contendo o teclado e a impressora eram chamados de teletipos e, tipicamente, vários deles eram ligados a um único mainframe. Os monitores passaram a ser usados em larga escala apenas a partir do final da década de 70, mas, assim como outros dispositivos, tiveram uma evolução notável. Atualmente, temos em uso basicamente 4 tecnologias de monitores: CRT, LCD, Plasma e OLED. Os monitores CRT utilizam um princípio bastante simples, fundamentalmente a mesma tecnologia usada nas TVs desde a década de 1930. Um canhão de elétrons bombardeia as células de fósforo que recobrem a tela, fazendo com que elas se iluminem em diferentes intensidades (de acordo com a intensidade da descarga recebida), formando a imagem: 849
  • 850. O conector VGA transporta os sinais analógicos referentes às três cores primárias (azul, verde e vermelho), além dos sinais de sincronismo horizontal e vertical. Como o nome sugere, estes dois últimos são responsáveis pelo movimento do canhão de elétrons do monitor, que varre toda a tela continuamente, atualizando cada pixel com os sinais referentes às três cores. Variando rapidamente as tensões fornecidas, a placa de vídeo consegue que cada um dos três pontos que compõe cada pixel brilhem numa intensidade diferente, formando a imagem. Quando é necessário obter um pixel branco, são usadas as tensões máximas para os três pixels, por exemplo. Aqui temos a imagem de um monitor CRT ampliada de forma a mostrar os pontos individuais: 850
  • 851. As células de fósforo se apagam muito rapidamente, por isso a imagem precisa ser atualizada várias vezes por segundo, processo chamado de refresh. A taxa de atualização da imagem é uma configuração importante nos monitores CRT, pois uma baixa taxa de atualização faz com que o intervalo entre as atualizações seja muito longo, fazendo com que as células passem a piscar, perdendo a luminosidade durante o intervalo da atualização e sendo reacendidas na atualização seguinte. Este fenômeno é chamado de flicker e torna bastante desconfortável usar o monitor por longos períodos, podendo, a longo prazo, até mesmo causar danos à visão. Devido à própria natureza dos monitores CRT, não é possível eliminar o flicker completamente, mas é possível reduzí-lo a níveis toleráveis usando taxas de atualização de 75 Hz ou mais. Reduzir o brilho do monitor também ajuda, pois a luminosidade mais baixa faz com que as células de fósforo demorem mais tempo para perderem o brilho (já que a intensidade é menor). A taxa máxima de atualização suportada pelo monitor varia de acordo com a resolução. No monitor, a imagem é atualizada linha a linha, de cima para baixo. Temos então a freqüência horizontal, uma das especificações mais importantes em um monitor CRT, que indica a quantidade "bruta" de linhas que o monitor pode atualizar por segundo. O LG 710E, por exemplo, é um monitor de 17" que trabalha com uma freqüência horizontal de 71 kHz (71 mil linhas por segundo). Em teoria, isso permitiria que ele trabalhasse com refresh de até 69 Hz ao utilizar resolução de 1280x1024 (onde temos 1024 linhas horizontais) ou até 92 Hz ao usar 1024x768. Na prática, entretanto, os valores são mais baixos devido ao tempo perdido pelo monitor ao final de cada atualização da tela (retraço vertical), quando precisa reposicionar o canhão de elétrons no topo da tela para iniciar a atualização seguinte. Isso faz com que, no final, o monitor seja capaz de trabalhar com resolução de 1024x768 a 85 Hz ou 1280x1024 a 60 Hz (essa última pouco recomendável por causa do flicker). Em seguida temos os monitores LCD que, embora tenham ficado restritos a nichos durante as décadas de 1980 e 1990, estão rapidamente roubando a cena e substituindo os monitores CRT. Uma tela de LCD é uma espécie de chip. A técnica de fabricação de um processador e de uma tela de LCD são similares, a principal diferença é que o processador é feito sobre um wafer de silício, enquanto que uma tela de LCD é feita sobre uma placa de vidro, utilizando camadas de silício amorfo depositadas sobre ela. Em uma tela de matiz ativa, temos um transístor para cada ponto da tela (cada pixel é formado por três pontos) e um pequeno sulco, onde é depositado o cristal líquido. Os cristais líquidos são substâncias que tem sua estrutura molecular alterada quando recebem corrente elétrica. Em seu estado normal, o cristal líquido é transparente, mas ao receber uma carga elétrica torna-se opaco, impedindo a passagem da luz. A função de cada transístor é controlar o estado do ponto correspondente, aplicando a tensão correta para cada tonalidade: 851
  • 852. Os LCDs mais simples, como os usados em relógios e palmtops com tela monocromática, utilizam uma camada refletora, instalada na parte traseira, que simplesmente reflete a luz ambiente. Existem casos de LCDs coloridos que utilizam o mesmo princípio (como o usado no Game Boy Advance). Essas telas são chamadas de transflexivas e apresentam como problema fundamental o fato de só poderem ser usadas em ambientes bem iluminados e contra a luz. Os LCDs usados em PCs e notebooks são transmissivos, ou seja, a tela utiliza um sistema de iluminação que permite que seja usada em qualquer ambiente. A desvantagem é o fato da tela ser mais complexa e o sistema de iluminação torná-la mais propensa a falhas (muitas telas são descartadas por defeito nas lâmpadas de catodo frio ou no inversor, muito embora o LCD continue intacto), além de consumir mais energia. Mas, este é um caso em que os ganhos compensam as perdas, já que ninguém iria querer um notebook que só pudesse ser usado contra a luz. Temos aqui uma tela de LCD desmontada. Veja que ela é apenas parcialmente transparente. É graças à iluminação que você pode ver a imagem claramente: Existem duas tecnologias de iluminação de telas LCD. A mais comum consiste no uso de lâmpadas de catodo frio, um tipo de lâmpada florescente, ultra compacta e de baixo consumo. Alguns notebooks ultra portáteis, como o Sony Vaio TX2 utilizam LEDs para a iluminação da tela, uma tecnologia que permite produzir telas mais finas, econômicas e duráveis, porém mais caras. 852
  • 853. Além do baixo consumo elétrico, outra vantagem do uso de LEDs é que a iluminação da tela é mais uniforme do que nos monitores de LCD com lâmpadas de catodo frio, pois os LEDs são distribuídos de forma relativamente uniforme, em contraste com a lâmpada de catodo frio, que fica em uma das extremidades da tela. Existe também um pequeno ganho na nitidez das cores, pois os LEDs usados emitem luz quase que perfeitamente branca, ao contrário das lâmpadas de catodo frio, que tendem ao azul. Como os monitores de LCD estão substituindo rapidamente os CRT, é sempre interessante fazer algumas comparações. Uma das principais vantagens dos monitores LCD é a questão da geometria. Nos monitores CRT a imagem é criada por um conjunto de três feixes de elétrons, um para cada cor primária, que iluminam as células de fósforo da tela, produzindo a imagem. Os feixes são movidos usando eletroímãs, o que torna os monitores CRT bastante sensíveis a interferência eletromagnética, já que qualquer fonte significativa interfere com o posicionamento dos feixes, distorcendo a imagem em maior ou menor grau. Você pode distorcer a imagem da tela colocando caixas de som muito próximo ao monitor (sobretudo caixas de som não blindadas) ou qualquer outra fonte significativa de interferência. Experimente, por exemplo, colocar um telefone celular (durante uma conversação) bem ao lado do monitor. Ele vai produzir um colapso temporário na imagem :). Os LCDs, por outro lado, são praticamente imunes a qualquer tipo de interferência do ambiente. Outra questão é que nos CRTs o posicionamento dos pixels na tela nunca é perfeito, pois o feixe de elétrons nunca atinge precisamente as células de fósforo referentes a cada pixel. Entretanto, como as células de fósforo são muito pequenas, a distorção acaba não sendo visível a olho nu. Nos LCDs, por outro lado, cada pixel corresponde precisamente a um conjunto de três pontos, de forma que a geometria é sempre perfeita. A desvantagem é que o LCD só oferece uma boa qualidade de imagem quando trabalha em sua resolução nativa. Você pode usar resoluções mais baixas (800x600 em um LCD de 15", ou 1024x768 em um de 19", que trabalham nativamente a, respectivamente, 1024x768 e 1280x1024, por exemplo), mas a qualidade da imagem é prejudicada, já que o sistema precisa interpolar a imagem via software, usando mais de um pixel da tela para exibir cada ponto da imagem. Os CRTs, por outro lado, podem trabalhar com diversas resoluções diferentes, sem perdas perceptíveis. Tradicionalmente, os LCDs são inferiores aos CRTs com relação à fidelidade de cores e principalmente com relação ao contraste, já que um monitor LCD trabalha bloqueando a luz branca gerada pelas lâmpadas de catodo frio usadas na iluminação, enquanto os CRTs trabalham produzindo luz diretamente. Este é, entretanto, um quesito onde os monitores LCD evoluíram muito. Embora os monitores mais baratos continuem oferecendo uma imagem lavada, que não atende bem ao público profissional, já existem monitores LCD (um pouco mais caros) com uma qualidade de imagem muito similar à dos melhores monitores CRT. 853
  • 854. Finalmente, temos a questão da área útil da tela. Se você colocar um CRT e um LCD de 17 polegadas lado a lado, você vai notar que a área útil no LCD é muito maior. Isso acontece porque a tela de um LCD de 17" tem realmente 17 polegadas de medida diagonal, enquanto no CRT pouco mais de uma polegada da tela é de área não-útil, que corresponde às bordas da tela, cobertas pela carcaça plástica. Devido a isso, um CRT de 17" tem cerca de 16 polegadas de área visível (você encontra a medida exata nas especificações do monitor). Muitos tem como hábito ajustar a imagem de forma a não utilizar as extremidades da tela (onde a distorção causada pela angulação da tela é maior), o que corresponde a mais uma pequena perda. Somando as duas coisas, chegamos a casos em que temos menos de 15 polegadas de área realmente utilizada em um monitor CRT de 17". De qualquer forma, grande parte da discussão em torno dos pontos positivos e negativos dos monitores LCD e CRT está ultrapassada, pois os monitores LCD já venceram a guerra. Os preços caíram a ponto de os monitores LCD mais baratos já custarem menos (pelo menos do ponto de vista dos fabricantes) do que monitores CRT equivalentes. Como o custo de produção dos monitores CRT já atingiu o ponto mais baixo há vários anos, enquanto o custo dos LCDs continua caindo sucessivamente (conforme novas técnicas de produção são introduzidas) a diferença tende a se acentuar. Alguns fabricantes ainda sobrevivem produzindo monitores CRT de baixo custo, para uso em PCs populares, mas eles tendem a desaparecer nos próximos anos. A pergunta hoje em dia é: "qual marca ou modelo de LCD é melhor?" e não mais: "devo comprar um CRT ou um LCD?". Em seguida temos as telas de Plasma, que trabalham sob um princípio bem diferente. Pequenas quantidades de gás neon e xenon são depositadas em pequenas câmaras seladas, entre duas placas de vidro. Cada câmara contém dois eletrodos (um deles protegido por uma camada isolante) e também uma camada de fósforo (similar ao fósforo usado nos monitores CRT). Quando uma certa tensão é aplicada, o gás é ionizado e se transforma em plasma, passando a emitir luz ultra-violeta que, por sua vez, ativa a camada de fósforo, fazendo com que ela passe a emitir luz. Cada pixel é composto por três câmaras individuais, cada uma utilizando uma camada de fósforo de uma das três cores primárias. As telas de plasma oferecem uma luminosidade muito boa e um bom nível de contraste. O maior problema é que as células contendo gás são relativamente grandes, por isso não é possível produzir monitores com uma densidade muito alta. Este é o principal motivo das telas de plasma serem sempre muito grandes (geralmente de 40 polegadas ou mais) e possuírem uma resolução relativamente baixa, se considerado o tamanho. Outra desvantagem é o consumo elétrico, que supera até mesmo o dos CRTs, sem falar na questão do custo. Essa combinação de fatores faz com que as telas de plasma sejam mais adequadas a TVs do que a monitores destinados a micros desktop, embora a presença de conectores HDMI, DVI ou VGA permitam que elas sejam usadas como telas de apresentação ou mesmo como monitores. 854
  • 855. Finalmente, temos as telas baseadas na tecnologia OLED (Organic Light- Emitting Diode), que são baseadas no uso de polímeros contendo substâncias orgânicas que brilham ao receber um impulso elétrico. Cada ponto da tela é composto com uma pequena quantidade do material, que depois de receber os filamentos e outros componentes necessários, se comporta como um pequeno LED, emitindo luz. A principal diferença entre os OLEDs e os LEDs convencionais é que os OLEDs são compostos líquidos, que podem ser "impressos" sobre diversos tipos de superfície, usando técnicas relativamente simples, enquanto os LEDs convencionais são dispositivos eletrônicos, que precisam ser construídos e encapsulados individualmente. O princípio de funcionamento das telas OLED é exatamente o oposto das de LCD, já que enquanto no OLED os pontos da tela emitem luz ao receberem uma carga elétrica, no LCD os pontos obstruem a passagem da luz emitida pelo sistema de iluminação. A principal vantagem do OLED é que as telas tendem a ser mais compactas e econômicas, já que não precisam de iluminação adicional. A desvantagem é que esta ainda é uma tecnologia nova, que ainda tem um bom caminho a percorrer. A principal dificuldade é encontrar compostos que sejam duráveis e possam ser produzidos a custos competitivos. As primeiras telas possuíam vida útil de 2.000 horas ou menos, mas as atuais já possuem uma vida útil média de 5.000 horas ou mais. Com a evolução da tecnologia, a vida útil dos compostos tende a crescer, possivelmente até o ponto em que as telas OLED concorram com os monitores LCD em durabilidade. Embora (em 2007) ainda não existam monitores ou telas de TV OLED produzidas em escala comercial (apenas protótipos), telas menores já são usadas em um grande volume de celulares, players de áudio e outros dispositivos compactos. O principal motivo é que a tela nesses dispositivos é usada por curtos períodos de tempo, o que faz com que a questão da durabilidade não seja um quesito tão importante quanto em uma tela de notebook, por exemplo. Na maioria dos casos, a tela OLED é instalada no meio de duas placas de vidro, lembrando o design de uma tela de LCD. Apesar disso, não é usado o tradicional backlight: toda a luz é emitida diretamente pela tela, o que simplifica o design. As vantagens são o menor consumo elétrico (o que ajuda na autonomia das baterias) e o melhor ângulo de visão (a tela pode realmente ser vista de qualquer ângulo, sem distorção das cores). Esta foto mostra a tela OLED usada em um MP4. Veja que a imagem continua perfeita, apesar do ângulo da foto: 855
  • 856. O "Santo Graal" para os fabricantes de monitores seria o desenvolvimento de telas flexíveis, onde os pixels, formados por OLEDs, juntamente com os transístores e filamentos necessários possam ser "impressos" diretamente sobre uma superfície plástica, utilizando impressoras de jato de tinta modificadas. Isso permitiria o desenvolvimento de telas baratas, que poderiam ser enroladas e usadas em todo tipo de dispositivos. Naturalmente, ainda estamos longe disso, mas pode ser que a tecnologia eventualmente evolua a ponto de realmente substituir os monitores LCD. Características dos Monitores LCD Hoje em dia, todos os monitores de LCD são de matiz ativa (TFT), mas houve um tempo que quase todos os notebooks utilizavam telas de matiz passiva. A diferença fundamental entre as duas tecnologias é que um LCD de matiz ativa possui um conjunto de três transístores para cada pixel (um para cada uma das três cores primárias), enquanto os monitores de matiz passiva utilizam apenas um par de transístores para cada linha e para cada coluna (um de cada lado da tela). Uma tela de matiz ativa com resolução de 1024x768 possui nada menos do que 2.359.296 transístores, enquanto uma tela de matiz passiva com a mesma resolução possui apenas 3584 (2048 transístores para as linhas verticais e mais 1536 para as linhas horizontais). Esse arranjo simples fazia com que os monitores de matiz passiva fossem mais baratos e consumissem um pouco menos de energia, mas em compensação a qualidade da imagem era muito ruim, pois não era possível controlar a cor de diferentes pixels dentro da mesma linha (ou coluna) de forma muito precisa, o que tornava a imagem borrada e com baixa definição de cor. A atualização também era muito lenta 856
  • 857. (até 200 ms em muitos monitores antigos), o que tornava inviável usar a tela para jogar ou assistir vídeos. Conforme as técnicas de produção evoluíram, a diferença de preço entre as telas de matiz passiva e as de matiz ativa foi caindo, até o ponto em que as telas de matiz passiva foram substituídas quase que completamente. Atualmente, telas de LCD de matiz passiva são usadas apenas em alguns celulares, players de áudio e pequenos dispositivos em geral e, mesmo neste último nicho, elas vem perdendo espaço para as telas de matiz ativa e telas OLED. Entre os monitores de matiz passiva, eram comuns o uso das tecnologias CSTN (super-twist nematic), DSTN (double-layer super-twist nematic) e HPA (high-performance addressing), esta última a mais avançada das três. Nas telas de matiz ativa predomina a tecnologia TFT (Thin-Film Transistor), a ponto de as telas de matiz ativa serem genericamente chamadas de "telas TFT". Na verdade, o TFT nada mais é do que a técnica de fabricação utilizada para construir os transístores sobre o substrato de vidro do monitor. Através de um processo de deposição, é criada uma fina camada de silício amorfo sobre o substrato de vidro. Esta camada de silício não é muito transparente, por isso é usado um processo de litografia para criar a estrutura do transístor e um banho químico para remover o excesso, deixando apenas as partes ocupadas pelo transístor. Assim como no caso dos processadores, o processo é repetido várias vezes (pelo menos 5), utilizando máscaras de litografia diferentes, de forma a criar as diversas camadas que formam os transístores. Estes dois diagramas (cortesia da AU Optronics Corp.) mostram o processo de litografia aplicado sobre uma das camadas de silício amorfo e um transístor pronto, depois de passar sucessivamente por várias repetições do processo de deposição da camada de silício, litografia e banho químico: 857
  • 858. Uma das características mais enfatizadas nos monitores de LCD é o tempo de resposta, que indica o tempo necessário para que os pixels da tela mudem de cor e a tela seja atualizada. Em monitores de matiz ativa antigos, o tempo de resposta era normalmente de 40 ms ou mais, o que corresponde a menos de 25 atualizações por segundo. Eles eram aceitáveis para uso em aplicativos de escritório, mas ao assistir filmes ou jogar você percebia os fantasmas causados pela demora na atualização da tela. Muitos monitores atuais, entretanto, trabalham com tempos de resposta de 8 ms ou menos, o que elimina o problema. Para ter uma idéia, em um monitor de CRT que utiliza refresh de 75 Hz, a imagem é atualizada "apenas" a cada 13.33 ms. O tempo de resposta divulgado pelos fabricantes leva em conta o tempo necessário para um pixel mudar do preto para o branco e para o preto novamente (mais precisamente, de 90% de obstrução de luz, para 10% e depois para 90% novamente). Entretanto, as transições entre diferentes tonalidades de cor (cinza 40% para cinza 50%, por exemplo) demoram mais 858
  • 859. tempo, pois a variação na tensão aplicada é muito pequena, o que faz com que a célula demore mais para responder. É por isso que a maior parte dos monitores LCD ainda não são capazes de superar os antigos monitores CRT em tempo de resposta, muito embora estejam cada vez mais próximos. Uma das técnicas utilizadas nos monitores atuais para reduzir o problema é o "Response Time Compensation" (também chamado de "Overdrive") que consiste em utilizar uma tensão maior do que a necessária para ativar a mudança de estado das células de cristal líquido. A tensão mais alta é aplicada durante um curto espaço de tempo, forçando a célula a iniciar rapidamente a mudança de estado e em seguida rapidamente reduzida, de forma que a mudança pare exatamente na tonalidade desejada. Nas versões mais atuais da tecnologia o mesmo princípio é aplicado também na hora de reduzir a tensão das células, de forma que o pixel permita a passagem da luz. A tensão é reduzida subitamente e em seguida nivelada no nível referente ao tom desejado. Em seguida temos a questão do ângulo de visão, um quesito em que os monitores LCD vem melhorando bastante. Monitores de matiz passiva antigos possuíam um ângulo de visão muito restrito, onde você percebia alterações nas cores ao olhar a tela a partir de um ângulo de apenas 50 ou 60 graus. Em 1995 surgiu a tecnologia IPS (In-Plane Switching), desenvolvida pela Hitachi, que permite alinhar horizontalmente as moléculas de cristal líquido dentro de cada célula, de forma a permitir um maior ângulo de visão na horizontal. Mais tarde, a Fujitsu desenvolveu a tecnologia MVA (Multi-Domain Vertical Alignment), que funciona de forma ligeiramente diferente, mas tem o mesmo efeito. Ambas as tecnologias são atualmente licenciadas para outros fabricantes, que por sua vez desenvolvem melhorias diversas. Atualmente, muitos fabricantes prometem ângulos de visão de 170, ou até mesmo 180 graus (180 graus é o máximo possível para qualquer tipo de tela plana, já que a partir daí você passa a ver a lateral e o fundo do monitor e não a tela propriamente dita), mas as especificações não contam a história completa. O primeiro truque é que o ângulo de visão especificado é calculado com base em um contraste de 10:1 (ou mesmo 5:1, de acordo com o fabricante), um contraste muito baixo, considerando que qualquer monitor LCD atual trabalha com um contraste de 400:1 ou mais. Ou seja, ao olhar a tela no ângulo prometido, você vê a imagem, mas já com uma perda significativa de nitidez. O segundo é que o ângulo de visão é tão bom apenas na horizontal. Ao olhar o monitor em um ângulo vertical, a imagem perde definição muito mais rápido. Um dos efeitos colaterais de alinhar as moléculas do cristal líquido na horizontal, é justamente uma redução no ângulo de visão vertical. Isso explica porque telas que precisam ser visualizáveis a partir de qualquer ângulo (como as usadas nos tablets) normalmente possuem ângulos de visão mais restritos, mas em compensação válidos tanto na horizontal quanto na vertical. 859
  • 860. Resoluções: Com a popularização dos monitores widescreen, passamos a ter algumas opções adicionais de resolução além dos tradicionais 800x600, 1024x768 e 1280x1024. Os notebooks da série Vaio TX, por exemplo, usam telas wide de 11.1" com resolução de 1368x768, um "super-wide" que acaba sendo um formato bom para assistir DVDs, pois faz com que o filme ocupe toda a área útil da tela, embora não seja tão confortável para ler textos e rodar aplicativos de escritório. A resolução é geralmente proporcional ao tamanho da tela. O grande problema em produzir telas pequenas com suporte a altas resoluções não é tanto técnico, mas sim mercadológico. Resoluções muito altas tornam o conteúdo da tela menos legível, o que afasta compradores em potencial. O próprio Vaio TX, por exemplo, possui uma tecla de atalho com uma função de "zoom", que permite reduzir a resolução da tela para 1064x600. Por não ser a resolução nativa do LCD, a qualidade da imagem fica longe do ideal, mas mesmo assim muitos usuários realmente utilizam o recurso em muitas situações. As resoluções mais usadas são: QVGA: 320x240 (usada em palmtops) VGA: 640x480 SVGA: 800x600 XGA: 1024x768 WXGA: 1280x800 WXGA+: 1440x900 SXGA: 1280x1024 SXGA+: 1400x1050 UXGA: 1600x1200 WSXGA: 1680x1050 WUXGA: 1920x1200 WQXGA: 2560x1600 Existem ainda dois padrões WXGA "alternativos", com resolução de 1280x768 e 1368x768 inventados pela Sony e usados em alguns de seus notebooks. Outra variante que está se tornando popular é o XGA de 800x480, comum em tablets e UMPCs. Existe ainda a questão do tipo de acabamento usado na tela: fosco ou glossy. Tradicionalmente, as telas de LCD utilizam um acabamento não-reflexivo, fosco, que torna o uso da tela mais confortável em ambientes muito iluminados, ou sob luz solar, mas em troca prejudica um pouco o contraste e a fidelidade das cores. As telas com acabamento glossy, por sua vez, utilizam um acabamento reflexivo, que torna as cores mais vivas e melhora o contraste da tela, mas é, em compensação, mais frágil (tornando riscos e arranhões uma ocorrência comum) e faz com que a tela se comporte como um espelho, refletindo muito mais a luz do ambiente. O acabamento glossy recebe diferentes nomes de acordo com o fabricante. A Acer, por exemplo, chama o revestimento de "CrystalBrite", enquanto a Sony chama de "XBrite". 860
  • 861. Reflexão em uma tela XBrite: quase um espelho As telas com acabamento glossy tornaram-se norma nos notebooks com tela wide, destinados ao público geral, mas as telas foscas ainda sobrevivem em notebooks destinados ao público "business", como muitos modelos da Lenovo e da HP. Finalmente, temos a questão dos dead pixels e stuck pixels, também bastante enfatizada. Embora uma tela TFT possua um número muito menor de transístores do que um processador, a fabricação é igualmente difícil, pois o silício amorfo utilizado na tela possui uma qualidade muito inferior ao wafer de silício usado na fabricação do processador. Defeitos de fabricação nos transístores das telas de LCD são uma ocorrência relativamente comum. Eles não inutilizam a tela, mas causam o aparecimento de pontos defeituosos, onde um dos transístores (responsável por uma das três cores primárias) não funciona corretamente, ficando sempre ativo ou sempre inativo. Com apenas duas das cores primárias ativas, ou uma delas permanentemente acesa, o pixel passa a exibir cores diferentes das dos demais, ficando vermelho enquanto os demais estão pretos, por exemplo. Veja um exemplo: 861
  • 862. Stuck pixel próximo ao canto da tela Nesta foto usei um fundo preto na tela pra destacar o pixel defeituoso, que fica vermelho enquanto os outros estão pretos. O que acontece nesse caso é que o transistor responsável pela cor vermelha dentro do pixel não funciona, de forma que o ponto fica sempre aberto à passagem de luz. Para que o pixel exiba a cor preta, os três transístores devem mandar energia para as moléculas de cristal líquido, de forma que elas impeçam a passagem da luz. Se um dos três transístores fica sempre desligado, a cor primária referente a ele fica sempre ativa. Se o defeito for no transístor responsável pela cor vermelha, então o pixel acabará ficando sempre vermelho sob um fundo preto. Se o contrário ocorrer, e o transistor ficar sempre ligado (fazendo com que o cristal líquido impeça a passagem de luz) então o pixel exibirá uma cor alterada sob um fundo branco, mas se comportará de forma normal sob um fundo preto. Pixels que ficam permanentemente apagados são chamados de "dead pixels", enquanto os que ficam permanentemente acesos, exibindo um ponto vermelho, verde ou azul sob um fundo escuro são chamados de "stuck pixels" (pixels emperrados). A existência de apenas um ou dois dead pixels ou stuck pixels no monitor pode ser bastante desagradável, já que uma vez que você percebe o pixel defeituoso, tende a prestar cada vez mais atenção e a ficar cada vez mais incomodado com ele. Normalmente, as políticas de troca dos fabricantes prevêem a troca da tela apenas quando um certo número de dead pixels é excedido, ou em casos onde eles estão próximos ao centro da tela, por isso é sempre melhor verificar a existência de pixels defeituosos antes de comprar o monitor ou o notebook. Um programa que ajuda nesse caso é o Dead Pixel Buddy, disponível no http://www.laptopshowcase.co.uk/downloads.php?id=1. 862
  • 863. Com o avanço das técnicas de fabricação, os dead pixels estão se tornando uma ocorrência cada vez mais rara, mas eles são ainda são encontrados em muitos monitores novos, sobretudo de marcas mais baratas, que muitas vezes são usadas como "segunda linha", vendendo telas que não passaram pelo controle de qualidade de algum fabricante maior. Monitores USB? Existem dois tipos de "monitores USB". Os primeiros são os bem conhecidos monitores com hubs USB embutidos, onde temos um monitor LCD ou CRT normal, que incorpora um hub USB, geralmente passivo. O hub USB neste caso é apenas um acessório, incorporado ao monitor apenas como uma forma de diferenciar o produto. O segundo tipo são os monitores USB "reais", onde a porta USB é realmente usada como interface para a transmissão da imagem, substituindo o conector da porta DVI ou VGA. Neste caso, um chip decodificador, incluído no próprio monitor, faz o papel de placa de vídeo, recebendo as informações referentes à imagem e exibindo-as na tela. O primeiro monitor baseado na nova tecnologia é o Samsung 940UX, lançado em Junho de 2007: Samsung 940UX À primeira vista, ele parece um monitor LCD de 19" tradicional. Além do conector USB tipo B, ele inclui as tradicionais entradas DVI e VGA, além de possuir um hub USB embutido, com duas portas. Alguém que não soubesse do que se trata, poderia muito bem achar que ele é um monitor LCD com um hub USB embutido e usá-lo durante anos sem saber de sua verdadeira identidade. 863
  • 864. Conectores traseiros do 940UX (USB, DVI e VGA) Apesar de apenas duas portas estarem disponíveis, o hub USB incluído no monitor possui na verdade 4 portas. Uma delas é ligada ao chip decodificador e outra é ligada a um chip de memória Flash, que contém o driver do monitor. Ao plugar o monitor na porta USB, o chip de memória Flash é detectado como uma unidade de armazenamento removível, como se fosse um pendrive. Dentro dele você encontra o executável com o driver do monitor (for Windows). Só depois de instalar o driver, o sistema passa a reconhecer o monitor e você pode começar a usá-lo. Como o funcionamento do monitor depende do trabalho do driver, ele só funciona dentro das versões suportadas do Windows, de forma que você não pode usá-lo para visualizar as informações do Setup ou qualquer aviso exibido durante o carregamento do sistema. Ele também não funciona no Linux, ou qualquer versão do Windows anterior ao XP (por falta de drivers), de forma que é muito inconveniente usa-lo como monitor primário. Outro problema é que o decodificador incluído no monitor não oferece suporte 3D (nem mesmo um 3D rudimentar, como o encontrado nas placas onboard), de forma que você também não pode utilizá-lo na grande maioria dos jogos. A idéia principal por trás do 940UX é que ele seja usado como monitor secundário. Ou seja, a conexão através da porta USB não foi desenvolvida para que você utilizasse o monitor como display primário, mas sim para facilitar sua instalação como segundo monitor. Mesmo que você comprasse dois 940UX, você ligaria o primeiro na saída DVI ou VGA da placa de vídeo e apenas o segundo é que seria ligado na porta USB. É possível ainda conectar dois ou mais monitores no mesmo micro, criando configurações com 3 ou mais monitores, como este sistema de demonstração apresentado pela Samsung na Cebit 2007: 864
  • 865. Configuração com três monitores USB A tecnologia de conexão de monitores através da porta USB não é uma tecnologia proprietária da Samsung, mas sim uma solução desenvolvida por outra empresa, a DisplayLink (http://displaylink.com), que também está disponível para outros fabricantes. Tanto o USB quanto o DVI são links digitais. Não existe nada de fundamentalmente diferente entre os dois barramentos que impeça o uso de uma porta USB como interface com o monitor. Seria perfeitamente possível ligar um monitor diretamente à porta USB e fazer com que o sistema fizesse o processamento da imagem via software, dispensando assim o uso de uma placa de vídeo. O maior problema é que as portas USB são muito mais lentas. Uma porta DVI single-link oferece um barramento de 4.95 gigabits, suficiente para transportar imagens a 1600x1200 (com 60 Hz de atualização), enquanto uma porta USB 2.0 oferece apenas 480 megabits, que seriam suficientes apenas para exibir imagens a 640x480 e ainda assim com baixas taxas de atualização. Para resolver o problema, a DisplayLink desenvolveu um sistema de compressão sem perdas, que demanda relativamente pouco processamento. Um software de compressão incluído no driver do monitor se encarrega de comprimir a imagem que será enviada através da porta USB e o chip decodificador incluído no monitor faz o papel inverso, descomprimindo o sinal e gerando um sinal DVI, que é então enviado ao controlador da tela para exibição. O maior problema é que o sistema depende do trabalho de compressão executado pelo driver, de forma que o uso do monitor através da porta USB consome um volume considerável de processamento. Podemos fazer uma analogia com os softmodems, onde todo o processamento é executado via software, taxando o processador principal. 865
  • 866. A tecnologia desenvolvida pela DisplayLink não é nada que não possa ser reproduzido por outros fabricantes. Tecnologias de compressão de imagem são bem conhecidas e são exaustivamente usadas em softwares de acesso remoto, como o VNC, o NX e o RDP (o protocolo usado pelo Windows Terminal Services). Por isso, não se surpreenda se no futuro mais e mais monitores passem a oferecer a opção de conexão através da porta USB. Outra possibilidade interessante, que já está sendo explorada pela DisplayLink é o uso de conexões de rede e também de conexões sem fio, tanto em monitores quanto em projetores, obtida através da combinação do chip decodificador com uma interface de rede também incluída no monitor. Em um desktop, usar um monitor wireless não faz sentido, pois a degradação na velocidade de atualização da imagem e os potenciais problemas não compensam o ganho em termos de praticidade, mas esta é uma possibilidade interessante para quem tem um notebook, já que (depois de configurado) o monitor poderia ser acionado automaticamente quando você colocasse o notebook próximo a ele, sem dúvida mais prático do que ter que conectar o cabo, usar as teclas de atalho para ativar a saída de vídeo e depois ainda ter que ajustar a resolução, como hoje em dia. A mesma tecnologia pode ser usada em projetores e gadgets diversos. Não é difícil de imaginar pequenos monitores portáteis, com tela touch-screen, que possam ser usados ao mesmo tempo como monitores secundários e como "controle-remoto" do PC. Na verdade eles já existem, embora ainda pouco populares. Um exemplo é o Viewsonic Airsync V210, lançado em 2006. Ele é uma espécie de tablet, com uma tela de 800x600 e um processador ARM de 400 MHz. Assim como o 940UX, ele depende da instalação de um driver, que faz com que o sistema passe a detectá-lo como um segundo monitor, e também de um software de gerenciamento, responsável pelas demais funções. Viewsonic Airsync V210 866
  • 867. Assim como em outros produtos-conceito, o Airsync V210 era bastante caro (nada menos que US$ 995, nos EUA, na época de lançamento) e tinha uma utilidade limitada. É provável que as próximas safras de produtos tenham preços mais competitivos, embora os monitores wireless ainda devam permanecer como produtos de nicho por muito tempo. Atualmente, é preciso incluir praticamente um computador inteiro dentro do monitor para oferecer a possibilidade de conectá-lo através da porta USB. A solução da DisplayLink se baseia no uso de uma placa de referência batizada de "Kestrel" que inclui, além do chip decodificador, 16 MB de memória DDR, o chip de memória Flash e o controlador USB, além de um conjunto de circuitos de apoio: Placa de referência da DisplayLink Se a conexão for através de um link wireless, a coisa se complica ainda mais, já que torna-se necessário incluir também a interface de rede, o transmissor e a antena. Com tecnologia atual, é difícil colocar tudo isso dentro de um único chip, de forma que é preciso construir uma placa com vários chips separados, o que torna a solução bastante custosa. Apesar disso, o preço tende a cair conforme os fabricantes desenvolvam soluções mais integradas. Não podemos nos esquecer que você pode usar um segundo PC ou notebook como "monitor wireless" utilizando um software de acesso remoto, como o próprio Terminal Services do Windows, VNC ou o NX Server (leia meu tutorial sobre ele no http://guiadohardware.net/tutoriais/nx-server/) ou usá-lo como monitor secundário usando o Synergy, soluções via software que estão disponíveis para uso do público técnico desde já: 867
  • 868. Configuração com dois monitores usando o Synergy Usando o Synergy, o foco do mouse (e também do teclado) passa para o segundo micro quando você arrasta o ponteiro para um dos cantos da tela, de forma similar ao que temos ao utilizar dois monitores. O conteúdo da área de transferência também é sincronizado, de forma que você pode copiar links e blocos de texto. A configuração do Synergy sai um pouco do escopo do livro, mas você pode ler mais sobre ele no: http://www.guiadohardware.net/artigos/kvm-synergy/. Capítulo 11: Notebooks Antigamente, ter um notebook era um luxo reservado apenas aos que realmente precisavam de portabilidade e podiam gastar o triplo ou o quádruplo do valor que pagariam por um desktop de configuração equivalente. Felizmente, este tempo já passou e hoje em dia os notebooks mais populares custam apenas um pouco mais do que um desktop equivalente, com monitor de LCD e nobreak. Em alguns casos, promoções e condições de parcelamento podem fazer com que o note chegue até a custar mais barato. Outra área em que houve avanço foi a questão do desempenho. Antigamente, notebook era sinônimo de desempenho inferior. Os modelos antigos utilizavam HDs muito lentos, processadores de baixo clock, menos memória e antiquados monitores LCD de matiz passiva, que arruinavam o desempenho e tornavam o equipamento praticamente inutilizável para jogos e multimídia. Embora os notebooks atuais ainda continuem perdendo em certas áreas, como no caso do desempenho do HD e da placa de vídeo, na maioria dos demais quesitos as coisas já estão equilibradas. Você pode comprar um notebook com 2 GB ou mais de RAM, com um processador dual core, com gravador de DVD, com uma placa 3D razoável ou até mesmo com uma tela de 17", depende apenas de quanto você está disposto a gastar. Os notebooks também ficam atrás na questão do upgrade, já que (com exceção de modelos específicos) você não tem como instalar mais de um HD 868
  • 869. ou espetar mais do que dois pentes de memória. Atualizar o processador também é complicado, pois usar um modelo de maior clock (e maior dissipação térmica) exigiria também a substituição do cooler, o que é raramente possível num notebook. Em geral, você fica restrito a adicionar mais memória ou substituir o HD por um de maior capacidade. A partir daí a única forma de upgrade acaba sendo usar periféricos externos, ligados às portas USB ou firewire. Apesar disso, a portabilidade e o "cool factor" dos notebooks acabam superando suas desvantagens e fazendo com que cada vez mais gente acabe optando por um. Segundo o IDC, as vendas de notebooks devem superar as de desktops (em número de unidades) em 2011, uma tendência que deve ser percebida também aqui no Brasil. Com a crescente redução na diferença de preço, não é difícil de imaginar que no futuro os notebooks se tornem padrão, com os desktops cada vez mais restritos a nichos específicos, como no caso dos gamers mais inveterados e nas estações de trabalho. Muitos acham que a popularização dos notebooks vai reduzir o campo de trabalho para os técnicos de manutenção, mas eu vejo justamente o cenário oposto. Notebooks precisam de tanta manutenção quanto os desktops (ou até mais, já que acidentes e quedas são comuns), o que vai na verdade aumentar a oferta de trabalho. A questão fundamental é que serão exigidos profissionais com mais conhecimento técnico, que sejam capazes não apenas de identificar os defeitos e substituir as peças necessárias, mas também de obter as peças de reposição a um preço aceitável. Se um técnico pode solucionar um problema na tela trocando todo o LCD e um segundo pode corrigir o mesmo problema trocando apenas o FL Inverter, sem dúvida o segundo teria como cobrar um preço muito mais competitivo pelo conserto. Estes dois últimos capítulos do livro são dedicados aos notebooks. Vou começar com uma explicação teórica sobre as diferenças entre os componentes dos desktops e notebooks, incluindo os processadores, chipsets, aceleradoras 3D e baterias. No capítulo seguinte entraremos na parte "prática", mostrando como desmontar, indicando os defeitos mais comuns e incluindo explicações sobre as particularidades de mais alguns dos componentes internos. Categorias Como tudo na informática, os portáteis podem ser divididos em categorias, que definem as combinações de tamanho e recursos mais usadas pelos fabricantes. Antigamente, era comum que os portáteis fossem classificados em três categorias: laptops, notebooks e subnotebooks. Os laptops eram os modelos maiores, basicamente qualquer computador portátil o suficiente para que você pudesse colocá-lo no colo ("laptop" significa, literalmente, "no colo" ou "sobre o colo") e usá-lo com relativo conforto. O notebook seria um aparelho menor, 869
  • 870. aproximadamente do tamanho de um caderno universitário (os IBM Thinkpad antigos são um bom exemplo), enquanto os subnotebooks eram os portáteis ainda mais compactos, que frequentemente sacrificavam o drive óptico e utilizavam processadores de baixo consumo para atingir o objetivo. Um exemplo de subnotebook é o Toshiba Libretto, que foi relativamente popular durante a década de 1990. A configuração era fraca, mesmo se comparado com outros portáteis da época, mas em compensação ele era pouco maior que uma fita VHS e pesava apenas 850 gramas. O modelo mais rápido da safra inicial foi o Libretto 70, lançado em 1997. Ele era baseado em uma versão de baixo consumo do Pentium MMX, que operava a 120 MHz e suportava o uso de até 32 MB de RAM. Uma das maiores limitações era a tela, de 640x480: Toshiba Libretto 70CT A partir de um certo ponto, entretanto, cada vez mais fabricantes passaram a chamar seus portáteis de "notebooks", independentemente do tamanho. Com isso a designação tradicional deixou de fazer sentido, de forma que hoje em dia podemos dizer que os termos "laptop" e "notebook" tornaram-se sinônimos. No lugar da classificação tradicional, os fabricantes passaram a usar os termos "Desktop replacement" (substituto para o desktop), "Thin-and-light" (leve e fino) e "Ultraportable" (ultraportátil). 870
  • 871. Os desktop replacement são notebooks maiores, com tela de 15" ou mais (alguns chegam a usar telas de 21"!), desenvolvidos com o objetivo de serem confortáveis de usar sobre uma mesa e serem relativamente poderosos, sem tanta preocupação com a portabilidade ou com a autonomia das baterias. Os thin-and-light já são modelos menores, com telas de 14" ou menos, desenvolvidos com o objetivo de serem mais portáteis. Em geral, os thin-and- light preservam um teclado de dimensões normais e continuam sendo confortáveis de usar, apesar da tela um pouco menor. O menor espaço interno limita um pouco a seleção de processadores, mas isto não chega a ser ruim, pois deixa de fora processadores muito gastadores como os mobile Pentium 4 e mobile Athlon 64. Finalmente, temos os ultraportáteis, modelos com tela de 12" ou menos, que pesam menos de 1.7 kg. Para atingir esta marca, eles utilizam processadores de baixo consumo (e, conseqüentemente, de baixa freqüência), teclados de dimensões reduzidas, drives ópticos miniaturizados (mais caros e difíceis de substituir em caso de defeito) ou drives externos e, em muitos casos, HDs de 1.8" ou drives de estado sólido, de memória Flash. A questão do peso não é necessariamente uma regra. Por exemplo, a Lenovo classifica o A100, como um ultraportátil por causa da tela de 12", muito embora ele pese exatos 2 kg e tenha 3 centímetros de espessura, mais do que a maioria dos ultraportáteis, que ficam entre os 2 e 2.5 cm. Ele fica no limite entre o que seria considerado um thin-and-light e um ultraportátil: Lenovo A100 871
  • 872. Na foto a seguir temos uma comparação entre um Acer 5043WLMI e um Sony Vaio GN-TX670P. O 5043WLMI está no limite entre a classificação de desktop replacement e thin-and-light (ele possui uma tela de 15.4", mas é relativamente leve, pesando 2.85 kg). O GN-TX670P, por sua vez, é indiscutivelmente um ultraportátil, com tela de 11.1" e apenas 1.26 kg. Ele utiliza um processador Pentium M ULV de 1.2 GHz e um HD de 1.8", da Fujitsu: Acer 5043WLI e Sony Vaio GN-TX670P Muitos fabricantes ainda usam o termo "subnotebook" para aparelhos ainda menores, com menos de 1.2 kg, mas atualmente a designação está caindo em desuso, cedendo espaço para os termos "UMPC" e "MID" (veja a seguir) que são as novas categorias de pesos leves. Outro termo conhecido é o "desknote", que tem duplo sentido. Atualmente, o uso mais comum é em relação aos notebooks maiores, no lugar do termo "desktop replacement". Nesta conotação, um desknote é um notebook grande, pouco portável, feito para ser usado sobre a mesa. Outro uso é em relação aos "desknotes" fabricados pela PC-Chips/ECS entre 2001 e 2005, uma classe de portáteis de baixo custo, sem bateria, que aproveitavam componentes usados em micros de mesa. A idéia era até boa, afinal, removendo a bateria, utilizando processadores de baixo custo e aproveitando projetos de placas-mãe para micros desktop, seria possível produzir notebooks relativamente baratos. Na prática, entretanto, acabou não dando muito certo, pois a pequena redução de preço acabava não sendo suficiente para compensar a perda de portabilidade. Os desknotes eram famosos também pela baixa qualidade e pelo uso de processadores de baixo desempenho, como os C3 e os Crusoe, vendidos sob a marca "GigaPro". 872
  • 873. Existiram também modelos baseados no Celeron P6 e no Athlon (as séries A901, A927 e A929), mas eles esquentavam bastante, resultando em problemas de estabilidade. Outra categoria é a dos tablet-PCs, onde o uso de uma tela touch-screen permite que você use o notebook como uma espécie de bloco de anotações, navegando entre as funções usando uma stylus e utilizando um teclado onscreen ou um sistema de reconhecimento de escrita para a entrada de informações. A maioria dos modelos atuais são "conversíveis", ou seja, notebooks normais, onde você pode girar a tela touch-screen, fazendo com que ela se feche sobre o teclado. Desta forma, é possível usá-lo tanto como um notebook normal, como um tablet, de acordo com a situação: 873
  • 874. Somados aos recursos de reconhecimento de escrita e anotações, a solução acaba se tornando relativamente prática. O problema é que o baixo volume de produção faz com que os tablets tornem-se mais caros que um notebook "normal", de configuração equivalente, o que acaba fazendo com que eles fiquem restritos a nichos muito específicos. Mais uma observação é que nas especificações de notebooks é comum que o peso seja informado em libras (pounds) ao invés de quilogramas, já que este é o padrão mais usado nos EUA. Neste caso é só fazer as contas. Uma libra internacional equivale a 454 gramas (453.59237g se quiser o número exato), de forma que um "6 pounds notebook" é um notebook que pesa aproximadamente 2.7 kg. 874
  • 875. UMPCs e MIDs Conforme a tecnologia foi avançando, os computadores deixaram de ser mastodontes do tamanho de armários para se tornarem desktops e depois notebooks. Temos ainda os celulares e palmtops, que desempenham uma função complementar, servindo como dispositivos de comunicação e gerenciamento pessoal. Os UMPCs e MIDs se enquadram entre as duas categorias. Eles são mais portáteis que os notebooks, mas são muito mais poderosos que os palmtops e são equipados com processadores x86, o que garante a compatibilidade com os aplicativos destinados a micros PC. Originalmente, a plataforma UMPC era um projeto desenvolvido por um conjunto de fabricantes, com destaque para a Intel e Microsoft. O interesse de ambos era óbvio: a Intel pretendia vender mais processadores e chipsets e a Microsoft queria vender mais cópias do Vista. A idéia era boa: criar uma plataforma de PCs ultra-compactos, menores, mais leves e com uma maior autonomia que os notebooks, equipados com processadores dual-core, aceleração 3D, wireless e, opcionalmente, também a opção de se conectar à web via GPRS, EVDO ou outra tecnologia de rede celular. Com um UMPC, você teria um PC que poderia levar com você o tempo todo, carregando seus aplicativos e arquivos, o que permitiria que você se conectasse à web ou assistisse vídeos em qualquer lugar. Dentro da idéia inicial, até o final de 2006 teríamos UMPCs a preços acessíveis, criando um nicho intermediário entre os notebooks e os smartphones. Quem realmente precisasse de um PC completo, poderia comprar um notebook, enquanto quem quisesse apenas ter um PC portátil, para rodar tarefas leves, poderia usar um UMPC. Embora a maioria dos protótipos de UMPC não tivesse teclados embutidos, você poderia utilizar um teclado e mouse USB ou Bluetooth, aproveitando para plugar também um monitor externo enquanto estivesse em casa ou no escritório e utilizar o teclado onscreen no restante do tempo. Apesar disso, o plano não deu muito certo. Os poucos modelos disponíveis inicialmente eram muito caros e as vendas ínfimas, tornando a plataforma mais um objeto de curiosidade, do que uma alternativa real. Um dos UMPCs mais bem sucedidos até a primeira metade de 2007 (pelo menos do ponto de vista técnico) foi o Sony VGN-UX1XN. Ele é um dos poucos modelos com potência suficiente para rodar o Vista: 875
  • 876. Ele é baseado em um processador Intel Core Solo, de 1.33 GHz, com 1 GB de memória DDR2 e vídeo Intel GMA 950 integrado. A tela tem apenas 4.5 polegadas, mas mesmo assim usa resolução de 1024x600. Ao invés de utilizar um HD, ele utiliza um SDD, com 32 GB de memória Flash, o que permitiu reduzir o peso e o consumo elétrico, além de tornar o aparelho mais resistente a impactos. Além da tela touch-screen e da câmera de 1.3 mp integrada, ele inclui um joystick no canto superior direto (que pode ser usado para funções diversas de navegação), diversas teclas de atalho e um teclado embutido. Além de navegar utilizando redes wireless próximas, você pode se conectar utilizando um celular com Bluetooth, desde que, naturalmente, tenha um plano de dados com uma quota generosa de tráfego. Medindo apenas 15 x 9.5 x 3.5cm e pesando apenas 500 gramas, ele se encaixa muito bem no conceito proposto inicialmente. Embora não seja um topo de linha, ele possui uma configuração poderosa o suficiente para rodar todo tipo de aplicativos e as limitações com relação ao tamanho da tela e do teclado podem ser supridas através do uso de um monitor, teclado e mouse externos, ataxados à dock-station que acompanha o aparelho. Com um destes, você não precisaria mais sequer carregar o notebook. O problema todo se resume a uma única palavra: preço. O VGN-UX1XN custava, em maio de 2007, nada menos que 2000 euros, uma verdadeira 876
  • 877. bolada. Caso ele chegasse a ser vendido no Brasil, não custaria menos de 10.000 reais, dinheiro suficiente para comprar 5 notebooks low-end. O mesmo problema afetou todos os outros UMPCs lançados. Ou eles eram muito caros (a maioria dos modelos custava a partir de US$ 1.600), ou possuíam uma configuração muito fraca, ou ainda ambas as coisas combinadas, o que fez com que, sem exceção, todos tivessem vendas medíocres. A realidade mostrou que construir um UMPC com um processador dual-core, capaz de rodar o Vista (ou mesmo o XP) por US$ 500 era uma idéia um pouco à frente de seu tempo. Para piorar, temos ainda a questão dos softwares e da ergonomia. Os UMPCs da safra inicial eram baseados no Windows XP ou no Vista e rodavam os mesmos aplicativos que você usaria em uma PC de mesa. O problema é que as pequenas dimensões da tela e ausência de um teclado e mouse "de verdade" tornam o conjunto bastante desconfortável de usar. Apesar disso, a Intel não desistiu de criar uma nova plataforma que se encaixe entre o notebook e o smartphone e seja capaz de reforçar suas vendas. Este slide exibido durante o IDF de 2007 dá uma pista do que vem pela frente: Como você pode ver, o UMPC foi retirado da lista e substituído pelo "Handtop" (ou MID), uma nova plataforma, que pode vir a fazer sucesso ao longo dos próximos anos, conquistando o espaço que os UMPCs não conseguiram. MID é a abreviação de "Mobile Internet Device". A idéia central é oferecer um dispositivo portátil, baseado em um processador x86 que possa rodar um navegador, leitor de e-mail e comunicadores diversos. A principal diferença entre um MID e um UMPC é que o MID é baseado em um processador muito mais simples, possui menos memória e utiliza alguns poucos GB de memória Flash no lugar do HD. A configuração mais fraca visa permitir o desenvolvimento de dispositivos mais baratos e ao mesmo tempo mais leves que os UMPCs. Não existe um formato rígido a seguir. Os fabricantes podem criar produtos seguindo o conceito de "tablet", usado nos UMPCs, com uma tela touch-screen e um teclado retrátil (ou um teclado onscreen), ou então criar "mini-notebooks", com teclados completos e mouses touch-pad, porém mais leves que um notebook tradicional. 877
  • 878. Os MIDs serão inicialmente baseados nos processadores A100 e A110, versões de baixo consumo do Pentium M (com core Dothan), que trabalham a respectivamente 600 e 800 MHz. Embora baratos de se produzir, eles ainda consomem em torno de 3 watts, o que ainda passa longe da meta de 0.5 watts exibida no slide. O plano é deixar os fabricantes brincarem com esta solução provisória, produzindo modelos conceito que sejam capazes de atrair a atenção do público e deixar as coisas começarem a acontecer de verdade a partir de 2008, com o lançamento da plataforma Menlow. Ela será baseada em processador x86 de baixo consumo, produzido com base na mesma técnica de produção de 45 nanômetros Hi-k, que será utilizada na produção do Penryn. Este novo processador, batizado de Silverthorne, terá um desempenho similar ao de um Celeron M atual, mas terá um consumo brutalmente mais baixo, além de um custo de produção reduzido. Complementando o Silverthorne, teremos o Poulsbo, um chipset que incluirá técnicas agressivas de gerenciamento de energia e um grande número de periféricos integrados, novamente com o objetivo de reduzir os custos de produção e consumo elétrico. Ao invés de repetir o mesmo erro que cometeu nos UMPCs, tentando utilizar versões adaptadas de processadores da sua linha desktop, a Intel optou por desenvolver do zero o projeto do Silverthorne e do Poulsbo, o que permitiu reduzir brutalmente o número de transístores. É este conjunto otimizado que deve atingir a prometida marca de 0.5 watts de consumo para o processador. Ao que tudo indica, o Silverthorne será um processador de 32 bits, com um conjunto de instruções muito similar ao do Pentium M e o conseqüente suporte a um máximo de 4 GB de memória RAM. Em outras palavras, ele será uma espécie de versão modernizada do Pentium M, com um consumo elétrico muito baixo, mas sem grandes novidades na questão do processamento. O plano é que os MIDs utilizem telas com 4.5 ou 6 polegadas, utilizando resoluções de 800x480 ou 1024x600, pesem em torno de 300 gramas e custem na faixa dos 500 dólares. A bateria duraria pelo menos 4 horas e, para atingir ambos os objetivos, o HD seria substituído por uma certa quantidade de memória Flash, que armazenaria o sistema operacional, aplicativos e arquivos salvos. 878
  • 879. Protótipo de MID, rodando uma distribuição Linux customizada Os UMPCs também tinham como meta serem vendidos abaixo da faixa dos 500 dólares, mas na prática acabaram custando pelo menos o triplo disto. Desta vez, entretanto, a meta parece ser pelo menos um pouco mais realística, já que estamos falando de uma plataforma muito mais simples. Outra característica que chama a atenção é que os MIDs não rodarão o Windows XP ou alguma versão simplificada do Vista, mas sim um sistema Linux customizado, com uma série de aplicativos adaptados ou desenvolvidos especialmente para a nova plataforma, como demonstra este outro slide exibido durante o IDF: 879
  • 880. Os principais motivos divulgados são a redução do custo (já que mesmo uma cópia OEM do Windows custa pelo menos 50 dólares para os fabricantes, o que representa mais de 10% do custo final planejado) e o simples fato da Microsoft não ter uma versão do Windows adequada para a nova plataforma, já que o Vista é pesado demais para a configuração modesta dos MIDs e o XP não oferece os recursos de personalização necessários. Pode ser que a Microsoft resolva investir em uma versão "Mobile" do Vista, de forma a tentar reaver o terreno perdido, mas ela demoraria para ficar pronta e não resolveria o problema do custo. Possivelmente, o primeiro projeto ambicioso de MID dentro do modelo proposto pela Intel é o Asus Eee, um projeto derivado do Intel ClassMate, porém destinado ao uso geral e não apenas dentro do ramo educacional. Além de ser bastante compacto e portátil, ele chama a atenção pelo preço, com a versão mais simples custando apenas US$ 249 (no EUA). O Eee é baseado em uma versão de baixo consumo do Celeron M, baseada no core Dothan (ele ainda não é baseado no Menlow, embora possa vir a ser utilizado nas próximas versões). O processador opera a 900 MHz e faz par com um chipset Intel 910GM e 512 MB de RAM (DDR2). 880
  • 881. Asus Eee Para cortar custos e reduzir o tamanho do aparelho, optaram por utilizar uma tela de apenas 7", com resolução de 800x480. Assim como no caso dos processadores, o preço das telas de LCD é diretamente relacionado ao tamanho. Isso faz com que a tela de 7 polegadas do Eee custe quase um oitavo do preço de uma tela de 19", como as usadas em monitores para desktops. Se calcularmos que hoje já é possível comprar um LCD de 19" (ou EUA) por menos de US$ 300, vemos que a tela usada no Eee pode ser muito barata se produzida em quantidade. O Eee inclui também uma placa wireless, placa de rede, modem, som e portas USB como qualquer notebook. Ele usa uma bateria de quatro células (a maioria dos notes usa baterias de 6 células), mas devido ao baixo consumo geral, ela dura cerca de 3 horas. O HD foi substituído por uma unidade de estado sólido de 2, 4, 8 ou 16 GB (de acordo com o modelo). A memória Flash caiu muito de preço nos últimos meses (já temos pendrives de 2 GB por menos de 70 reais, mesmo aqui no Brasil) de forma que, apesar da redução na capacidade, usar 8 ou mesmo 16 GB de memória Flash já é mais barato do que usar um HD. Como era de se esperar, o Eee roda uma distribuição Linux otimizada para o aparelho (baseada no Xandros). A proposta é que ele seja fácil de usar, com foco no público geral, que quer um aparelho portátil para acessar a web e rodar aplicativos leves. Ao contrário de um palmtop, que utiliza um processador ARM e um sistema operacional próprio, o Eee é um PC, de forma que nada impede 881
  • 882. que a distribuição Linux pré-instalada seja substituída por outra distribuição, ou até mesmo por alguma versão do Windows, desde que você consiga instalar o sistema através de um pendrive ou CD-ROM USB e seja capaz de configurar o sistema e otimizá-lo para rodar dentro das limitações do aparelho. Fabricantes A primeira questão a ter em mente com relação aos notebooks é que existe um número relativamente pequeno de fabricantes, como a Quanta (http://www.quantatw.com), Compal (http://www.compal.com) e a Clevo (http://www.clevo.com.tw), que embora não vendam notebooks sob sua marca, desenvolvem e fabricam equipamentos para inúmeros outros fabricantes que os vendem sob sua marca, tais como a HP, Dell, etc. Estes fabricantes são chamados genericamente de "Contract manufacturer" (CM). O mesmo acontece com os integradores nacionais, como a Positivo e Amazon. Com exceção de algumas das etapas finais da montagem, empacotamento e venda, praticamente tudo é terceirizado. A grande maioria destes modelos populares são na verdade fabricados pela Compal, Clevo ou a ECS. A Toshiba já foi uma das maiores fabricantes de notebooks, mas atualmente terceiriza a maior parte da produção para a Compal. Outro caso interessante é o da IBM, que vendeu sua divisão de notebooks para a Lenovo. Temos em seguida o time de fabricantes que vendem equipamentos sob sua própria marca, como a Asus, a ECS e a Acer. A Asus por exemplo, fabrica desde os Apple Mac Book até algumas séries do Playstation 3, enquanto a Acer fabrica alguns dos notebooks da Dell e de diversos outros integradores espalhados pelo mundo. O fato de fabricar ou terceirizar acaba influindo pouco no preço final dos produtos, pois devido à concorrência, os fabricantes trabalham com margens muito apertadas de lucro. Se a Acer e a HP resolvessem produzir um notebook com a mesma configuração, onde a Acer o fabrica diretamente e a HP o terceiriza para a Quanta (por exemplo), o custo inicial acabaria sendo praticamente o mesmo. As diferenças de preço são geralmente introduzidas mais adiante no processo, quando são incluídos os gastos com distribuição, marketing, substituição de aparelhos na garantia e a margem de lucro de cada fabricante. Quem consegue ser mais eficiente na combinação de todas estas etapas, acaba levando a melhor. Em seguida, temos a questão da variação de preço entre diferentes modelos do mesmo fabricante. Enquanto os modelos mais básicos são vendidos no exterior por 600 dólares ou menos, modelos apenas um pouco mais parrudos podem custar o dobro ou o triplo deste valor. Mesmo aqui no Brasil temos esta variação. O que ocorre neste caso é que os fabricantes trabalham com margens de lucro maiores nos lançamentos, aproveitando-se do público que quer "o melhor" e está disposto a pagar caro por isto, e margens progressivamente menores nos modelos mais baratos, chegando a vender os modelos antigos com prejuízo, para se livrar dos estoques. Muita gente acha que os fabricantes nunca 882
  • 883. vendem equipamentos com prejuízo, mas devido à rápida evolução dos componentes, isso é extremamente comum. Ou seja, do ponto de vista do custo-benefício, os notebooks mais baratos são geralmente melhores, pois são "subsidiados" pelos lucros obtidos nos modelos mais caros. Finalmente, temos a "terceira linha", representada pelos equipamentos remanufaturados (refurbished). Estes são equipamentos que deram defeito, foram trocados dentro do período de garantia e estão sendo vendidos novamente depois de consertados. Embora sejam mais baratos, os remanufaturados nem sempre são uma boa opção, pois além de serem equipamentos já com algum uso (muitas vezes com riscos e outros detalhes), são invariavelmente vendidos com uma garantia menor. Preste atenção na hora de comprar. Processadores Ao longo de livro, comentei sobre os HDs de 2.5" e 1.8" usados em notebooks, assim como sobre os módulos de memória SODIMM. Dois outros componentes que são consideravelmente diferentes nos portáteis são os processadores e as aceleradoras 3D. Você pode perfeitamente comprar um notebook com um processador dual-core ou até mesmo com duas aceleradoras 3D em SLI, mas naturalmente ele será equipado com componentes de baixo consumo, diferentes dos que seriam usados em um desktop. Antigamente, o mercado de micros portáteis era muito menor, de forma que os fabricantes não tinham o hábito de investir muito no desenvolvimento de processadores para portáteis. Até pouco tempo atrás, os processadores mobile eram quase sempre versões de baixo consumo dos mesmos processadores destinados a desktops, apenas operando a freqüências um pouco mais baixas e incluindo algum sistema rudimentar de gerenciamento de energia. Uma das primeiras empresas a tentar produzir processadores de baixo consumo, destinado especificamente a notebooks e outros equipamentos portáteis foi a Transmeta, que citei brevemente no capítulo sobre processadores. Ela produziu duas linhas de processadores, o Crusoe e o Efficeon. Ambos eram incrivelmente eficientes, mas ofereciam um baixo desempenho e o preço não era competitivo com relação aos concorrentes diretos da Intel e da AMD. A Transmeta conseguiu ganhar algumas batalhas entre 2002 e 2005, mas acabou naufragando com o lançamento do Pentium M e do Turion, processadores que conseguem combinar um bom desempenho com um sistema eficiente de gerenciamento de energia, além de ter sofrido com a concorrência direta do VIA C3 (veja mais detalhes a seguir), também desenvolvido para ser um processador de baixo consumo. Antigamente, os processadores AMD não eram exatamente uma boa opção para portáteis, pois a AMD não possuía um sistema eficiente de gerenciamento de energia. Antes do Turion, os processadores "Mobile" da AMD eram basicamente versões de baixo consumo dos chips para desktops, fazendo com que o aquecimento e o consumo elétrico ficassem longe do ideal. 883
  • 884. A Intel também cometeu suas gafes, com os Pentium 4 Mobile e os modelos equivalentes do Celeron Mobile, ambos baseados na arquitetura NetBurst. Um Mobile Pentium 4 de 3.06 GHz (baseado no core Northwood), por exemplo, possui um TDP de absurdos 70 watts, o que resultava em notebooks volumosos, pesados e com pouca autonomia de baterias. Para completar, além de todas as desvantagens, o Mobile Pentium 4 de 3.06 GHz baseado no core Northwood perde em processamento para um simples Turion MT-34, lançado menos de dois anos depois. A situação mudou com o lançamento do Banias, a primeira geração do Pentium M. Ele foi um processador desenvolvido sob medida para o uso em notebooks e acabou se revelando tão eficiente que acabou dando origem ao Core 2 Duo. A AMD respondeu lançando as versões Mobile do Athlon 64 e do Sempron e em seguida lançando o Turion e o Turion X2, também processadores bastante eficientes. Vamos então aos detalhes. Pentium M Se você está lendo o livro sequencialmente, o Banias é um velho conhecido, já que comentei sobre ele no capítulo 2 ao introduzir os processadores baseados na plataforma Core. A moral da história é que o Banias é um descendente indireto do Pentium III Tualatin, em vez de ser uma versão de baixo consumo do Pentium 4. Sob diversos pontos de vista, ele era um processador mobile desenvolvido especificamente para ser usado em portáteis, ao invés de ser um processador para desktops adaptado para uso em notebooks. Apesar do baixo consumo, o Banias se revelou relativamente poderoso. Um Pentium M de 1.6 GHz baseado no core Banias supera facilmente um Pentium 4 de 2.4 GHz na maior parte dos aplicativos. Com a decadência da plataforma NetBurst, o Banias foi sucessivamente atualizado, dando origem à plataforma Core. O Banias foi originalmente lançado em versões de 1.3 a 1.7 GHz, todas com TDP de 24.5 watts e 1 MB de cache L2. Mais tarde foram lançadas também versões de baixo consumo, de 900 MHz a 1.2 GHz. Ele introduziu o suporte ao macro-fusion, que permite que pares de determinadas instruções seja combinados e processados como se fossem uma única instrução. O macro- fusion é responsável por um grande ganho de eficiência em relação aos processadores anteriores e continua sendo utilizado em todos os processadores da família Core. A segunda geração do Pentium M é baseada no core Dothan, sucessor do Banias. A primeira diferença entre eles é que o Banias ainda era produzido usando uma técnica de 0.13 micron, enquanto o Dothan inaugurou o uso da técnica de 0.09 micron. A redução possibilitou o aumento no cache, que passou a ser de 2 MB, além de reduzir o consumo do processador que, apesar do aumento na freqüência de operação, caiu de 24.5W para apenas 21W. O Dothan trouxe também melhorias no circuito de branch-prediction, que é basicamente o mesmo usado no Conroe, a primeira versão do Core 2 Duo. 884
  • 885. Pentium M com core Dothan Com o lançamento da plataforma Sonoma, a segunda geração da plataforma Centrino, o Pentium M com core Dothan recebeu mais um upgrade, passando a utilizar memórias DDR2 e bus de 533 MHz. Estas melhorias, entretanto, são relacionadas ao controlador de memória incluído no chipset e não ao processador em si. Todos os processadores Pentium M e Core oferecem suporte ao SpeedStep III (o SpeedStep original era usado nos processadores baseados na arquitetura P6 e o SpeedStep II era usado pelos processadores Mobile Pentium 4), que permite que a freqüência e tensão usadas pelo processador sejam ajustadas dinamicamente, de acordo com a carga de processamento. O ajuste é feito em "degraus" (steps, daí o nome). Em um Pentium M de 1.73 GHz, com core Dothan, por exemplo, os "degraus" disponíveis são 1.73 GHz, 1.33 GHz, 1.06 GHz e 800 MHz (a freqüência mínima) e a tensão pode oscilar entre 0.988 e 1.356V. A freqüência é alterada através do ajuste do multiplicador, justamente por isso existe um número tão pequeno de estágios. A freqüência mínima de 800 MHz é compartilhada por todos os processadores com bus de 533 MHz, enquanto os modelos com bus de 400 MHz podem reduzir a freqüência para até 600 MHz. A Intel poderia adicionar degraus adicionais, permitindo que o processador operasse a 400 MHz, por exemplo, mas optaram por utilizar os 600 e 800 MHz como mínimo para manter um desempenho razoável mesmo quando o processador está em modo de baixo consumo. 885
  • 886. No Linux, o SpeedStep é suportado diretamente pelo Kernel e o ajuste da freqüência é feito pelo daemon "powernowd", o mesmo que dá suporte ao Cool'n'Quiet e ao PowerNow dos processadores AMD. Na grande maioria das distribuições atuais, o suporte é ativado automaticamente. No Windows XP e no Vista, o suporte também vem incluído no sistema e o ajuste pode ser feito através do Painel de Controle. O maior problema são as versões antigas do Windows, onde o driver para ativar o SpeedStep precisa ser obtido junto ao fabricante do notebook, já que a Intel não disponibiliza drivers genéricos. No screenshot a seguir temos uma medição de consumo feita em um Asus M5200, baseado no Pentium M com core Dothan de 1.73 GHz. Ao executar tarefas pesadas, com o processador operando na freqüência máxima, com o HD sendo acessado, o transmissor wireless ativado e o brilho da tela no máximo, o consumo do notebook chega a atingir os 36 watts. Ao executar tarefas leves, por outro lado, com o processador operando na freqüência mínima (800 MHz), o transmissor da placa wireless desativado e o brilho da tela reduzido em 6 níveis, o consumo do notebook chega a se aproximar da marca dos 10 watts. No screenshot ele está consumindo 10.879W: Continuando, o Dothan foi lançado em versões de até 2.26 GHz, mas estas últimas trabalhavam com um TDP muito mais elevado, de 27 watts. Como a Intel calcula seu TDP com base em uma estimativa de 75% da dissipação máxima do processador, é seguro dizer que um Dothan de 2.26 pode dissipar até 36 watts (durante curtos espaços de tempo) em determinadas aplicações. A partir do Dothan, a Intel passou a vender os processadores sob um sistema de numeração, similar ao usado nos processadores para desktop. A lista de processadores baseados no core Dothan inclui o Pentium M 710 (1.4 GHz, 2 MB, 21W, 400 MHz), 715 (1.5 GHz, 2 MB, 21W, 400 MHz), 725 (1.6 GHz, 2 MB, 21W, 400 MHz), 730 (1.6 GHz, 2 MB, 27W, 533 MHz), 735 (1.7 GHz, 2 MB, 21W, 400 MHz), 740 (1.73 GHz, 2 MB, 27W, 533 MHz), 745 (1.8 GHz, 2 MB, 21W, 400 MHz), 750 (1.86 GHz, 2 MB, 27W, 533 MHz), 755 (2.0 GHz, 2 MB, 21W, 400 MHz), 760 (2.0 GHz, 2 MB, 27W, 533 MHz), 765 (2.1 GHz, 2 MB, 21W, 400 MHz), 770 (2.13 GHz, 2 MB, 27W, 533 MHz) e 780 (2.26 GHz, 2 MB, 27W, 533 MHz). 886
  • 887. Todos estes modelos utilizam o soquete 479 e não oferecem suporte às instruções SSE3 (apenas ao SSE2), que, ironicamente, são suportadas pelo AMD Turion, que seria seu concorrente direto. Tanto o Banias quanto o Dothan podem ser considerados processadores transitórios, que ficam no meio do caminho entre a antiga arquitetura P6, do Pentium III e os processadores da plataforma Core. O Banias foi rapidamente descontinuado depois do lançamento do Dothan, de forma que acabou sendo usado em um número relativamente pequeno de processadores, fabricados entre 2003 e 2004. O Dothan por sua vez acabou sendo uma plataforma muito utilizada, pois além de ser usado na grande maioria dos processadores Pentium M, ele foi usado no Celeron M e é a base para os processadores de baixo consumo, da série ULV. Soquetes As versões iniciais do Pentium M utilizam o soquete 479 (mFCPGA), que é basicamente uma versão miniaturizada do soquete 478 usado pelos processadores Pentium 4 para desktops. Na época, a Asus chegou a lançar um adaptador que permitia instalar um Pentium M em uma placa soquete 478 para desktop, de forma a montar um PC de baixo consumo. Apesar do nome, o soquete 479 possui na realidade apenas 478 pinos, pois um dos contatos não é usado. O soquete 479 é utilizado pelos Pentium M com core Banias e Dothan e também pelos modelos correspondentes do Celeron. Em 2006 surgiu o soquete M (FCPGA6), usado pelos processadores da família Core Duo e também pelos Core 2 Duo T5x00 e T7x00, baseados no core Meron. Soquete M. Note que no lugar da alavanca de retenção, é usada uma trava em forma de parafuso 887
  • 888. Apesar de ser fisicamente muito similar ao soquete 479, o soquete M faz par com um regulador de tensão atualizado, com suporte às características elétricas dos processadores Core Duo. Ele marcou também a transição para os processadores com bus de 667 MHz. Embora não existisse nenhum grande empecilho técnico com relação à compatibilidade com os processadores soquete 479, a Intel optou por alterar a posição de um dos pinos do soquete, de forma a tornar os dois encaixes incompatíveis. Em maio de 2007 foi lançada mais uma atualização, na forma do soquete P, cujo lançamento coincidiu com a migração para o bus de 800 MHz, utilizado pelos processadores Core 2 Duo mobile atuais. Atualmente (2007) existem versões do Core 2 Duo tanto para o soquete M (com bus de 667 MHz) quanto para o soquete P (bus de 800 MHz), mas as versões soquete M devem ser descontinuadas em breve. Apesar do soquete P também possuir 478 pinos, assim como os anteriores, novamente a Intel optou por torná-lo incompatível com os processadores anteriores, mudando a posição de um dos pinos. Como os upgrades de processador em notebooks não são comuns, acaba sendo mais fácil para eles mudarem o soquete a cada modificação nos processadores e nos circuitos de alimentação, de forma a impedir o uso dos novos processadores em placas antigas, potencialmente incompatíveis. Core Duo e Core 2 Duo O Yonah, lançado em 2006, foi um projeto ambicioso e o primeiro processador mobile dual-core desenvolvido pela Intel. A partir do Yonah, a Intel abandonou o uso da marca "Pentium M" e passou a usar as marcas "Core Solo" e "Core Duo", para (respectivamente) as versões single-core e dual-core do processador. O Core 2 Duo para desktops se chama "Core 2 Duo" justamente por ser a segunda versão da plataforma iniciada com o Yonah. O uso de dois núcleos é mais problemático em um processador mobile do que em um processador desktop devido à questão do consumo. Dois núcleos dissipam mais calor do que apenas um e consomem o dobro de energia. Apesar disso, o TDP dos Core Duo é de 31 watts, contra os 27 watts dos Pentium M single-core baseados no Dothan, um aumento de apenas 4 watts. Isso ocorre por dois motivos. O primeiro é que o Yonah é produzido usando a técnica de 0.065 micron, o que faz com que, mesmo com dois núcleos, ele ocupe uma área de apenas 90 mm², contra 84 mm² do Dothan e tenha um consumo elétrico apenas um pouco mais alto. O segundo é que o Yonah inclui uma versão aprimorada do SpeedStep, que é capaz de ajustar a freqüência de operação dos dois núcleos de forma independente. Isso faz com que o segundo núcleo passe a maior parte do tempo operando na freqüência mínima, enquanto o primeiro tem sua freqüência ajustada de acordo com a demanda. Em situações onde os dois núcleos sejam muito exigidos 888
  • 889. durante longos períodos e o processador aqueça de forma exagerada, o SpeedStep pode também reduzir a freqüência de um dos núcleos "na marra", reduzindo assim a dissipação até que a temperatura do processador volte a níveis seguros. Além de ser um processador dual-core, o Yonah incorporou o suporte a SSE3, o que melhorou o desempenho em diversas aplicações. Entretanto, a latência do cache L2 aumentou de 10 para 14 ciclos, o que prejudica o desempenho em diversas áreas, sobretudo em aplicativos de produtividade, que usam predominantemente processamento de números inteiros. Isso faz com que um Core Solo baseado no Yonah realmente perca para um Dothan do mesmo clock em algumas aplicações, embora ganhe em outras devido ao suporte ao SSE3. O cache L2 de 2 MB é compartilhado entre os dois núcleos, essencialmente o mesmo sistema utilizado no Core 2 Duo. Isso permite que o espaço utilizado por cada núcleo seja ajustado dinamicamente, conforme o uso. Temos aqui uma foto de divulgação da Intel que mostra os componentes internos do processador: Uma curiosidade é que os processadores "Core Solo" na verdade não constituem uma linha separada. Eles são simplesmente versões do Yonah com um dos núcleos desativados, o que os transforma em processadores single- core com 2 MB de cache, muito similares ao Pentium M com core Dothan. Mesmo os Celerons baseados no "Yonah-1024" começam a vida como processadores dual-core e são sucessivamente castrados, até que reste apenas um dos núcleos, com metade do cache e sem suporte ao SpeedStep. 889
  • 890. Por motivos diversos, a Intel acredita ser mais vantajoso manter uma linha unificada de produção e castrar os processadores conforme a aplicação (aproveitando assim processadores defeituosos que de outra forma precisariam ser descartados) do que manter linhas separadas para os processadores single-core, dual-core e para os Celerons. O Yonah foi usado nos Core Duo T2050 (1.6 GHz, 2 MB, 31W, 533 MHz), T2250 (1.73 GHz, 2 MB, 31W, 533 MHz), T2300 (1.66 GHz, 2 MB, 31W, 667 MHz), T2350 (1.86 GHz, 2 MB, 31W, 533 MHz), T2400 (1.83 GHz, 2 MB, 31W, 667 MHz), T2450 (2.0 GHz, 2 MB, 31W, 533 MHz), T2500 (2.0 GHz, 2 MB, 31W, 667 MHz), T2600 (2.16 GHz, 2 MB, 31W, 667 MHz) e T2700 (2.33 GHz, 2 MB, 31W, 667 MHz). Temos ainda três modelos de baixo consumo, o Core Duo LV L2300 (1.5 GHz, 2 MB, 15W, 667 MHz), LV L2400 (1.66 GHz, 2 MB, 15W, 667 MHz) e o LV L2500 (1.83 GHz, 2 MB, 15W, 667 MHz). Como pode ver, eles possuem um TDP de apenas 15 watts, inferior até mesmo que o dos Celerons baseados no Dothan-1024. O Yonah foi utilizado também nos Core Solo T1200 (1.5 GHz, 2 MB, 27W, 667 MHz), T1300 (1.66 GHz, 2 MB, 27W, 667 MHz), T1350 (1.86 GHz, 2 MB, 27W, 533 MHz), T1400 (1.86 GHz, 2 MB, 27W, 667 MHz), T1500 (2.0 GHz, 2 MB, 27W, 667 MHz) e T1600 (2.16 GHz, 2 MB, 27W, 667 MHz). Todos os processadores baseados no Yonah utilizam o soquete M e são por isso incompatíveis com as placas anteriores. É importante enfatizar que tanto os processadores baseados no core Dothan quanto no Yonah não possuem suporte a instruções de 64 bits (o EM64 está disponível apenas nos Core 2 Duo e superiores). Este é um dos pontos em que os processadores Intel desta safra inicial perdem para os processadores da AMD. Core Duo baseado no core Yonah (à esquerda) e Pentium M com core Dothan 890
  • 891. Em seguida temos o Meron, que é a versão mobile do Core 2 Duo. Se comparado com o Yonah, ele inclui diversas melhorias, com destaque para o cache de 4 MB, adição de um decodificador adicional de instruções simples (o Meron possui três, contra dois do Yonah), reforço nas unidades de processamento de instruções SSE, aumento do comprimento do buffer do circuito ordenador de instruções e melhorias no circuito de branch prediction. Combinadas, estas melhorias justificam o brutal aumento no número de transístores, que saltou de 151 milhões no Yonah para nada menos do que 291 milhões no Meron, distribuídos sob uma área de 144 mm². Quase tão importante quanto as melhorias relacionadas ao desempenho é o suporte a instruções de 64 bits, incluído apenas a partir do Meron. Nenhum dos processadores baseados no Banias, Dothan ou Yonah oferece suporte ao EM64, o que acaba sendo uma limitação grave. A questão é que o Meron não é diferente do Conroe, usado nos Core 2 Duo para desktops. Naturalmente ele possui otimizações relacionadas à redução do consumo elétrico, mas a arquitetura dos dois é idêntica. Comparando dois processadores do mesmo clock, o Meron consegue ser de 10 a 20% mais rápido que o Yonah em quase todos os aplicativos. Apesar do brutal aumento no número de transístores, o Meron também não consome consideravelmente mais energia que um Yonah do mesmo clock, de forma que realmente não existem pontos negativos no Core 2 Duo em relação ao Core Duo. Apesar das melhorias, a Intel optou por não fazer nenhum grande esforço de marketing com relação a ele. Notebooks vendidos sob a marca "Centrino Duo" podem tanto ser baseados no Core Duo baseado no Yonah quanto no Core 2 Duo baseado no Meron, sem distinção. É inclusive possível substituir um Yonah soquete M, por um Meron (também soquete M) diretamente, na maioria dos casos precisando apenas de um upgrade de BIOS. O preço dos processadores também não mudou, de forma que durante muito tempo, era possível encontrar processadores baseados nas duas arquiteturas pelo mesmo preço. A lista de processadores baseados no Meron inclui o Core 2 Duo T5200 (1.6 GHz, 2 MB, 34W, 533 MHz), T5500 (1.66 GHz, 2 MB, 34W, 667 MHz), T5600 (1.83 GHz, 2 MB, 34W, 667 MHz), T7200 (2.0 GHz, 4 MB, 34W, 667 MHz), T7300 (2.0 GHz, 4 MB, 35W, 800 MHz), T7400 (2.16 GHz, 4 MB, 34W, 667 MHz), T7500 (2.2 GHz, 4 MB, 35W, 800 MHz), T7600 (2.33 GHz, 4 MB, 34W, 667 MHz) e T7700 (2.4 GHz, 4 MB, 35W, 800 MHz). Existe também o Meron-2M, uma versão reduzida do Meron, com apenas 2 MB de cache, em vez de 4 MB. Ele é diferente dos T5200, T5500 e T5600, modelos baseados no Meron que possuem apenas 2 MB do cache (com os outros 2 MB desativados), pois ele é realmente um processador diferente, com menos cache, e não um Meron regular com metade do cache desativado. O Meron-2M é usado no Core 2 Duo T5250 (1.5 GHz, 2 MB, 34W, 667 MHz), T5300 (1.73 GHz, 2 MB, 34W, 533 MHz), T5450 (1.66 GHz, 2 MB, 34W, 667 MHz), T5470 (1.6 GHz, 2 MB, 34W, 800 MHz), T5500 (1.66 GHz, 2 MB, 34W, 891
  • 892. 667 MHz), T5600 (1.83 GHz, 2 MB, 34W, 667 MHz) e T7100 (1.8 GHz, 2 MB, 35W, 800 MHz). Os Core 2 Duo baseados no Meron e Meron-2M são produzidos tanto em formato soquete M quanto soquete P. Isso permite que eles sejam usados tanto em placas novas quanto como substitutos diretos para os Core Duo baseados no Yonah em projetos já existentes. Core 2 Duo T5600, baseado no Meron-2M Celeron M O Celeron M é possivelmente o processador mobile da Intel mais vendido, usado em uma infinidade de notebooks de baixo custo. Embora todo o marketing seja concentrado em torno da plataforma Centrino, os notebooks baseados no Celeron acabam sendo vendidos em maior número, já que são mais baratos. 892
  • 893. Celeron M 350, baseado no core Dothan-1024 Como de praxe, o Celeron M possui metade do cache do Pentium M. No caso do Celeron com core Dothan, por exemplo, temos 1 MB contra 2 MB do Pentium M. Isto não chega a ser uma desvantagem tão grande, já que reduz o desempenho em apenas 10%, em média. A principal fraqueza do Celeron M reside na falta de gerenciamento avançado de energia. Ao contrário do Pentium M, ele trabalha sempre na freqüência máxima, sem a opção de usar o speedstep, o que significa mais consumo e uma menor autonomia das baterias, sobretudo ao rodar aplicativos leves, situação onde a diferença de consumo entre o Celeron e outros processadores (com suporte a sistemas de gerenciamento de energia) é maior. Muitos aplicativos que permitem ajustar a freqüência do processador oferecem a opção de reduzir o clock do Celeron, assim como em outros processadores, como é o caso do cpufreq, no Linux. Você pode forçar a redução de clock usando o comando "cpufreq-set", como em: # cpufreq-set -f 175000 (que força o processador a trabalhar a 175 MHz) O comando é executado sem erros e usando o comando "cpufreq-info" ele realmente informa que o processador está trabalhando a 175 MHz. Entretanto, esta informação é irreal. Na verdade o que acontece é que o processador continua funcionando na frequência máxima, porém inclui ciclos de espera entre os ciclos usados para processar instruções. Ou seja, no Celeron M, o que o comando faz é simplesmente limitar artificialmente o desempenho do processador, sem com isto reduzir de forma substancial o consumo. Ao forçar uma frequência baixa, como no exemplo, o notebook vai ficar extremamente lento, mas vai continuar esquentando quase que da mesma maneira e a carga da bateria durando praticamente o mesmo tempo. 893
  • 894. Você pode comprovar isso verificando o consumo do notebook com o processador na frequência normal e com a frequência reduzida. Para isso, desligue o note da tomada (para que seja usada a carga das baterias) e use o comando: # cat /proc/acpi/battery/BAT0/status Naturalmente, o consumo e a dissipação térmica do processador oscilam de acordo com o uso. O TDP do Celeron com core Dothan é de 21 watts, o que é um número aproximado, divulgado pela Intel para toda a plataforma, independentemente do clock. Na prática, o consumo do Celeron M de 1.5 GHz fica entre 12 e 15 watts, de acordo com a tarefa. Em comparação, um Pentium M, quando ocioso, chega a consumir próximo de 6 watts, embora o consumo de ambos em aplicações pesadas seja similar. O Celeron M é usado quase que exclusivamente em notebooks de baixo custo, concorrendo com o Sempron e os modelos single-core do Turion. De uma forma geral, o Celeron M perde para um Turion, ou mesmo para um Sempron do mesmo clock em praticamente todos os quesitos, incluindo desempenho e o consumo elétrico, já que, embora o Sempron e o Turion trabalhem com um TDP um pouco mais alto, eles operam em modo de baixo consumo na maior parte do tempo (graças ao PowerNow), enquanto o Celeron opera na freqüência máxima o tempo todo. Tenha em mente que o consumo do Celeron M aumenta juntamente com a freqüência de operação, resultando em um notebook mais quente (e/ou mais barulhento) e com uma menor autonomia de baterias, diferente de outros processadores mobile, onde o notebook esquenta mais apenas quando é realmente mais exigido. Um notebook com um Celeron M de 2.0 GHz só é realmente mais vantajoso que um notebook com um de 1.6 GHz (por exemplo) se você realmente vai utilizar a maior potência do processador. A única defesa para os notebooks baseados no Celeron seria o fato da maioria ser baseada em chipsets Intel, que oferecem uma qualidade satisfatória e uma boa compatibilidade geral, sobretudo para quem usa Linux. Muitos notebooks baseados em processadores AMD utilizam chipsets da VIA e SiS, que são mais problemáticos. O chipset é tão importante quanto o processador, sobretudo em um notebook onde você não tem a possibilidade de substituir a placa mãe, como faria em um desktop. Isso faz com que, em muitos casos, um notebook baseado no Celeron possa ser uma melhor opção de compra, devido ao "conjunto da obra", embora o processador seja fraco. As primeiras versões do Celeron eram baseadas no "Banias-512" que, como o nome sugere, é uma versão do Pentium M com core Banias com metade do cache L2. Esta série inicial engloba o Celeron M 310 (1.2 GHz, 512 KB, 24.5W), 320 (1.3 GHz, 512 KB, 24.5W), 330 (1.4 GHz, 512 KB, 24.5W) e 340 (1.5 GHz, 512 KB, 24.5W). A série seguinte é baseada no "Dothan-1024", novamente uma versão do Pentium M com metade do cache. Ela inclui o Celeron M 350 (1.3 GHz, 1 MB, 894
  • 895. 21W), 360 (1.4 GHz, 1 MB, 21W), 360J (1.4 GHz, 1 MB, 21W), 370 (1.5 GHz, 1 MB, 21W), 380 (1.6 GHZ, 1 MB, 21W) e 390 (1.7 GHz, 1 MB, 21W). Todos estes modelos utilizam placas soquete 479 e suportam apenas instruções MMX, SSE e SSE2, sem suporte a SSE3. Os modelos 360J, 370, 380, 390 suportam XD bit (o recurso de segurança, que protege áreas de memória, dificultando a ação dos vírus). Todos os modelos utilizam também bus de 400 MHz. Em seguida temos os modelos mais atuais, baseados no Yonah e no Meron. Ao contrário do Pentium M, os Celerons baseados em ambas as séries são single-core e possuem apenas 1 MB de cache L2. Os núcleos são chamados respectivamente de "Yonah-1024" e "Meron-1024". Até o momento (outubro de 2007) não existem Celerons dual-core, nem notícias sobre um possível lançamento. Mesmo que a Intel decidisse lançar versões de baixo custo do Meron dual-core, possivelmente venderia os processadores sob a marca "Pentium", assim como no caso do Pentium E para desktops (baseados no Allendale) e não sob a marca "Celeron". Voltando ao que interessa, a série baseada no Yonah-1024 inclui o Celeron M 410 (1.46 GHz, 1 MB, 27W), 420 (1.6 GHz, 1 MB, 27W), 430 (1.73 GHz, 1 MB, 27W), 440 (1.86 GHz, 1 MB, 27W) e 450 (2.0 GHz, 1 MB, 27W). A série baseada no Meron-1024 inclui o Celeron M 520 (1.6 GHz, 1 MB, 30W) e 530 (1.73 GHz, 1 MB, 30W). Existe ainda a série baseada no "Meron-L", uma versão de baixo consumo do Meron-1024 que inclui o Celeron 520 (1.6 GHz, 1 MB, 26W), 540 (1.86 GHz, 1 MB, 30W) e 550 (2.0 GHz, 1 MB, 30W). O Celeron 520 baseado no Meron-L diferencia-se do 520 baseado no Meron-1024 apenas pelo TDP, que é um pouco mais baixo. As demais características dos dois processadores são idênticas. Todos estes modelos utilizam o soquete M e bus de 533 MHz. A exceção fica por conta do Celeron M 540, que utiliza o soquete P. Todos eles oferecem suporte também ao SSE3 e ao XD bit. Processadores ULV A Intel possui ainda uma linha de processadores de baixo consumo, destinada a notebooks ultra-portáteis, tablets e UMPCs, composta pelos processadores da série ULV (Ultra low voltage). Enquanto um Celeron M 440 tem um TDP 27 watts, muitos dos processadores da série ULV trabalham dentro de um TDP de apenas 5 watts! A redução no consumo é obtida através da combinação de freqüências de operação mais baixas e o uso de tensões reduzidas, resultando em um efeito cascata, que reduz dramaticamente o consumo do processador. Os processadores UVL possuem suas limitações, já que oferecem um fraco desempenho e (com exceção dos Celerons) estão longe de serem processadores baratos. Apesar disso, eles são utilizados em alguns notebooks ultraportáteis (não necessariamente modelos baratos), além de UMPCs de outros dispositivos compactos. 895
  • 896. Um exemplo de notebook baseado em um processador ULV é o Vaio VGN- TX670P. Ele é um ultraportátil com uma tela wide de 11.1", que pesa apenas 1.26 kg (incluindo a bateria). Entre outros recursos, ele oferece a possibilidade de ficar continuamente conectado à web através de uma interface WAN, que é um transmissor de celular GSM incluído diretamente no notebook, que permite acessar a web via EDGE ou GPRS, utilizando um plano de dados. Vaio VGN-TX670P Ele é equipado com um Pentium M 753 ULV de 1.2 GHz, que usa tensão de apenas 0.924V e está entre os modelos com TDP de 5 watts. Além de aumentar brutalmente a autonomia das baterias, isso ajuda bastante na questão do aquecimento. Embora seja muito compacto e silencioso (você precisa literalmente colar o ouvido no note pra ouvir o ruído do cooler), a temperatura do processador fica, na maior parte do tempo entre 51 e 53 graus. Além do processador de baixo consumo, ele utiliza LEDs na iluminação da tela, no lugar de lâmpadas de catodo frio, e utiliza um HD de 1.8" em vez de um HD tradicional de 2.5". Graças à combinação dos componentes de baixo consumo e um sistema bastante agressivo de gerenciamento de energia, este notebook é incrivelmente econômico. Reduzindo um pouco o brilho da tela, desligando o transmissor wireless e ativando o gerenciamento de energia para o processador, o consumo elétrico total do notebook oscila entre apenas 8 e 9 watts. Só para efeito de comparação, um monitor de LCD de 15", para desktops consome sozinho cerca de 35 watts, 4 vezes mais do que o notebook inteiro. 896
  • 897. "present rate: 8623 mW": pouco mais de 8 watts de consumo total, incluindo a tela Os primeiros Pentium M ULV eram ainda baseados no Banias, mas devido à baixa freqüência de operação, tensão reduzida e outras melhorias, trabalhavam dentro de um TDP de apenas 7 watts. Um ano depois, foram lançados os Pentium M ULV baseados no core Dothan, onde o TDP foi reduzido para apenas 5 watts. Os dois primeiros modelos baseados no Banias operavam a, respectivamente, 900 MHz e 1.0 GHz e ainda não eram vendidos sob o sistema de numeração. O terceiro modelo foi o Pentium M ULV 713, que operava a 1.1 GHz. A lista dos Pentium M ULV baseados no core Dothan inclui os modelos 723 (1.0 GHz, 2 MB, 5W, 400 MHz), 733 (1.1 GHz, 2 MB, 5W, 400 MHz), 753 (1.2 GHz, 2 MB, 5W, 400 MHz) e 773 (1.3 GHz, 2 MB, 5W, 400 MHz). Existiram também 2 modelos ULV do Celeron M baseados no "Dothan-512", o Celeron ULV 353 (900 MHz, 512 KB, 5W, 400 MHz) e o ULV 373 (1.0 GHz, 512 KB, 5W, 400 MHz). Entre os ULV baseados no Yonah temos o Core Solo U1300 (1.06 GHz, 2 MB, 5.5W, 533 MHz), U1400 (1.2 GHz, 2 MB, 5.5W, 533 MHz) e U1500 (1.33 GHz, 2 MB, 5.5W, 533 MHz) o Core Duo U2400 (1.06 GHz, 2 MB, 9W, 533 MHz) e U2500 (1.2 GHz, 2 MB, 9W, 533 MHz), além o Celeron M 423 (1.06 GHz, 1 MB, 5.5W, 533 MHz) e 443 (1.2 GHz, 1 MB, 5.5W, 533 MHz). Existem ainda dois processadores ULV baseados no Meron-2M (a versão do Meron com apenas 2 MB de cache L2), o Core 2 Duo ULV U7500 (1.06 GHz, 2 MB, 10W, 533 MHz) e o U7600 (1.2 GHz, 2 MB, 10W, 533 MHz). 897
  • 898. A plataforma Centrino Sem dúvida, vender um pacote com processador, chipset e placa wireless é muito mais lucrativo do que vender apenas o processador. Controlar o desenvolvimento dos três componentes facilita também o desenvolvimento de sistemas mais eficientes de gerenciamento de energia e otimizações em geral. A idéia por trás de todo o marketing em torno da marca "Centrino" é convencer os compradores de que os notebooks com o selo são uma escolha segura. A partir do momento em que os compradores passam a preferir notebooks baseados na plataforma, a Intel pode trabalhar com margens de lucro maiores e assim maximizar os lucros, ao mesmo tempo em que mantém o controle sobre toda a plataforma. Processador, placa wireless e chipset: O "kit" Centrino Fabricantes, como a nVidia, Broadcom, Ralink, Atheros, VIA, SiS, Realtek e outros vendem chipsets e placas wireless a preços mais competitivos que a Intel. Em muitos casos os produtos alternativos são inclusive claramente superiores, como no caso das soluções de vídeo onboard da nVidia e ATI, que superam em muito os chipsets de vídeo da série GMA900 utilizados nos chipsets Intel. Apesar disso, o marketing em torno da marca Centrino faz com que os fabricantes prefiram utilizar os chipsets e placas wireless da Intel, relegando os produtos de outros fabricantes aos modelos de baixo custo ou a configurações específicas. A única brecha importante para o uso de componentes "não-Intel" em notebooks Centrino é no caso de chipsets de vídeo alternativos. Embora os chipsets Intel mais usados sejam os chipsets da linha "GM", que incluem vídeo onboard, estão disponíveis também os chipsets da linha "PM", que são idênticos, mas não incluem o chipset de vídeo. Eles permitem que os fabricantes de notebooks incluam chips ou placas MXM ou AXION da nVidia ou ATI sem com isso abandonar o uso da marca "Centrino". Entre os notebooks mais caros, é comum o uso de placas nVidia offboard no lugar do fraco vídeo Intel onboard. 898
  • 899. A primeira encarnação da plataforma Centrino foi lançada em 2003 e responde pelo codenome Carmel. Ela consiste na combinação de um Pentium M com core Banias ou Dothan, um chipset i855 e uma placa wireless Intel 2100 ou 2200. O chipset Intel 855 oferece suporte apenas a memórias DDR e as placas wireless Intel PRO/Wireless 2100 ainda utilizam o padrão 802.11b (11 megabits), sem suporte ao 802.11g, o que hoje em dia são duas pesadas limitações. A questão da placa wireless foi solucionada em 2004, com o lançamento da Intel PRO/Wireless 2200, que pode operar tanto em modo b quanto g. Quase todos os notebooks Centrino produzidos a partir do segundo trimestre de 2004 já são equipados com a placa wireless atualizada. Em 2005 foi lançada a segunda geração, sob o codenome Sonoma. Nessa época, o Banias já havia sido descontinuado, de forma que passou a ser usado exclusivamente o Pentium M com core Dothan. O limitado 855 foi substituído pelo Intel 915, que trouxe o suporte a memórias DDR2, SATA, slots Express Card, áudio HDA e bus de 533 MHz. O uso de memórias DDR2 ajuda a reduzir o consumo elétrico, já que os módulos utilizam uma tensão mais baixa. Existe também um pequeno ganho com relação à compatibilidade com módulos de diferentes fabricantes, já que os módulos DDR2 possuem um terminador resistivo dentro de cada chip, o que garante uma melhor qualidade de sinal e reduz o número de casos de incompatibilidade, sobretudo ao utilizar dois módulos diferentes. A partir do Intel 915, todos os chipsets mobile da Intel oferecem suporte a dual- channel (com exceção dos chipsets da linha "GMS", como o 915GMS, que são uma linha de baixo custo, com um controlador single-channel). Apesar disso, a maior parte dos notebooks não vem com o recurso ativado, simplesmente porque o uso de dual-channel exige o uso de dois módulos de memória, o que aumenta os custos. Nada impede, entretanto, que você instale um segundo módulo de memória, ativando assim o dual-channel. Com relação à placa wireless, os notebooks baseados na plataforma Sonoma podem utilizar tanto a PRO/Wireless 2200 (BG) quanto a 2915ABG, que, como o nome sugere, oferece como diferencial o suporte também ao padrão 802.11a. 899
  • 900. Placa wireless Intel 2915ABG mini-PCI instalada A terceira geração é a plataforma Napa, lançada em 2006. Ela consiste no uso de um processador Core Solo, Core Duo ou Core 2 Duo em versão soquete M, combinado com o chipset Intel 945 (que inclui suporte a bus de 667 MHz) e uma placa wireless Intel 3945ABG ou 4965AGN. A 3945ABG é uma versão atualizada da 2915ABG, que mantém o suporte aos padrão a, b e g, enquanto a 4965AGN (a mesma utilizada no Santa Rosa) é uma placa "draft-n", com suporte a uma versão prévia no padrão 802.11n, que oferece uma taxa de transmissão teórica de 300 megabits e um alcance até duas vezes maior que uma placa 802.11g equipada com um transmissor de potência similar. É fácil diferenciar as placas 4965AGN das antigas, pois além de serem produzidas exclusivamente no formato Express Mini, abandonando o formato mini-PCI, elas possuem três conectores de antena, em vez de apenas dois: 900
  • 901. Placa wireless 4965AGN, no formato Express Mini Os notebooks baseados no Napa, equipados com processadores Core Solo ainda são vendidos sob a marca "Centrino", enquanto os baseados em processadores Core Duo ou Core 2 Duo passaram a utilizar a marca "Centrino Duo". Não existem notebooks "Centrino Duo" baseados na plataforma Sonoma, já que ela não prevê o uso de processadores dual-core. Temos ainda a plataforma Santa Rosa, lançada em 2007. Ela prevê o uso de um processador Core 2 Duo soquete P (bus de 800 MHz), combinado com um chipset Intel 965 e uma placa wireless Intel 4965AGN. O sistema de gerenciamento de energia foi atualizado, de forma a (além de ajustar a freqüência do processador) permitir a redução da freqüência do FSB de 800 para 400 MHz nos momentos de baixa atividade, ajudando a compensar o aumento de consumo trazido pelo uso do bus de 800 MHz (recurso batizado de "Dynamic Front Side Bus Switching"). A redução da freqüência do FSB resulta em uma economia relativamente pequena, de menos de 1 watt. Entretanto, muitos notebooks ultra-compactos baseados na plataforma Centrino chegam a consumir apenas 12 watts ou menos (incluindo a tela) quando o processador está operando na freqüência mais baixa, de forma que qualquer nova redução acaba tendo um impacto significativo. Outro recurso divulgado ao extremo pela Intel é o "Turbo Memory" (tecnologia Robson), onde é utilizado um módulo de memória Flash ligado ao barramento PCI Express em conjunto com o ReadyDrive do Vista, de forma a melhorar o desempenho do acesso ao HD e aumentar a autonomia da bateria. É importante ressaltar que a economia de energia trazida pelo Turbo Memory é apenas incremental, pois os HDs de 2.5" e 5400 RPM atuais são bastante econômicos, consumindo em torno de 3 watts ou menos. Além disso, o HD não fica todo o tempo girando, o que reduz o consumo prático a níveis bem mais baixos. O Turbo Memory evita um certo número de acessos ao HD, mas em troca os próprios chips de memória Flash e a linha PCI Express a que eles estão ligados consomem uma certa quantidade de energia, o que reduz o ganho na prática. Não espere mais do que 2 ou 4% de ganho de autonomia de bateria em um notebook com o Turbo Memory em relação a outro de configuração similar sem o recurso. O ganho é tão pequeno que fica até 901
  • 902. mesmo difícil de medir, pois a diferença nos resultados fica muitas vezes dentro da variação normal de um teste para outro. O Turbo Memory é desejável se for um "brinde", incluído em uma certa configuração sem um aumento considerável no custo. Não aceite pagar mais caro por um notebook equipado com ele, pois o ganho realmente não compensa qualquer aumento expressivo no preço. É esperada uma atualização da plataforma Santa Rosa para 2008, com a inclusão de processadores baseados no Penryn. Eles incluirão suporte ao EDAT (Enhanced Dynamic Acceleration Technology), onde o processador pode desativar o segundo núcleo e usar a redução no consumo para fazer um overclock temporário do núcleo ativo, melhorando assim o desempenho em aplicativos single threaded, que não são capazes de se beneficiar de um processador dual-core. Mobile Athlon 64 Os primeiros processadores mobile da AMD foram o K6-2+ (uma versão do K6- 2 com 128 KB de cache L2 on-die) e o K6-3+ (uma versão de baixo consumo do K6-3, com 256 KB de cache L2), que concorriam com os processadores Mobile Pentium II e Mobile Pentium III da Intel. Em 2001 lançaram o "Mobile Athlon 4", uma versão do Athlon Palomino com suporte ao PowerNow, o sistema de gerenciamento de energia que é usado (com modificações) até os processadores atuais. Ele foi seguido pela linha Mobile Athlon XP, composta por versões de baixo consumo do Thoroughbred e do Barton. Chegamos então à era atual. :) Os primeiros processadores mobile baseados no Athlon 64 foram os Mobile Athlon 64, que nada mais eram do que versões adaptadas dos processadores para desktop. Por questões relacionadas ao custo e ao consumo elétrico, a AMD optou por utilizar o soquete 754 em toda a leva inicial de processadores mobile, adotando o uso de um barramento dual-channel com a memória apenas a partir do Turion X2. A série mobile utiliza um encapsulamento ligeiramente diferente dos processadores soquete 754 para desktops, sem o spreader metálico sobre o die do processador. Isso visa reduzir o peso e o espaço ocupado pelo processador, facilitando o uso em notebooks: 902
  • 903. Mobile Athlon 64 O soquete, por sua vez, não é diferente do soquete 754 usado em placas para micros desktop. Existiram casos de notebooks baseados em versões desktop do Athlon 64, mas eles foram poucos, pois não existia uma grande diferença de preço entre as versões desktop e mobile dos processadores. Soquete 754 usado pelos processadores mobile: o mesmo das placas para desktop As primeiras séries eram baseadas no core ClawHammer, de 0.13 micron. Com exceção do encapsulamento, eles não tinham nada de diferente dos 903
  • 904. processadores para desktop (não podiam ser considerados processadores "mobile" dentro do conceito tradicional) e trabalhavam dentro de um TDP de absurdos 81.5 watts. É importante enfatizar que a Intel e a AMD calculam o TDP de forma diferente. Nos processadores Intel, o TDP corresponde a 75% da dissipação máxima do processador, enquanto nos AMD ele corresponde a 100% da dissipação máxima. Isso causa uma certa discrepância ao comparar diretamente o consumo de processadores dos dois fabricantes baseado apenas nas especificações, já que o consumo real dos processadores Intel é quase sempre um pouco mais alto do que o TDP sugere. Na prática, o consumo dos Mobile Athlon 64 baseados no ClawHammer ficava em torno de 40 a 60 watts em aplicativos pesados, com apenas os modelos de clock mais elevado se aproximando dos 81.5 watts divulgados. Eles contavam também com uma versão atualizada do PowerNow (agora uma versão mobile do Cool'n'Quiet, com melhorias em relação ao PowerNow usado nos processadores anteriores), que mantém o consumo a níveis mais toleráveis durante os momentos de baixa atividade. A principal diferença entre os dois sistemas é que no PowerNow a freqüência do processador pode ser reduzida para até 800 MHz, enquanto no Cool'n'Quiet a freqüência mínima é de 1.0 GHz. Apesar disso, os mobile Athlon 64 baseados no ClawHammer eram muito gastadores e foram relativamente pouco usados. Os modelos do Athlon 64 baseados no core ClawHammer incluem o 2700+ (1.6 GHz, 512 KB, 81.5W), 2800+ (1.6 GHz, 1 MB, 81.5W), 3000+ (1.8 GHz, 1 MB, 81.5W), 3200+ (2.0 GHz, 1 MB, 81.5W), 3400+ (2.2 GHz, 1 MB, 81.5W) e 3700+ (2.4 GHz, 1 MB, 81.5W). A primeira tentativa da AMD em produzir um processador realmente "mobile" baseado no Athlon 64 foi o core Oakville. Embora ele nada mais fosse do que Athlon 64 com core Winchester (0.09 micron) disfarçado, a AMD foi capaz de manter os processadores baseados no Oakville trabalhando dentro de um TDP de 35 watts, utilizando uma tensão um pouco mais baixa (1.35V), desativando o segundo controlador de memória e utilizando freqüências de clock um pouco mais baixas. O Oakville foi usado em apenas três versões: 2700+ (1.6 GHz, 512 KB, 35W), 2800+ (1.8 GHz, 512 KB, 35W) e 3000+ (2.0 GHz, 512 KB, 35W). O seguinte foi o Newark, que era baseado no core Venice e graças a isso oferecia suporte às instruções SSE3. Ele foi vendido em versões de até 2.6 GHz (4000+), com um TDP de 62 watts, o que é, novamente, muito para um notebook. Os modelos incluem o 3000+ (1.8 GHz, 1 MB, 62W), 3200+ (2.0 GHz, 1 MB, 62W), 3400+ (2.2 GHz, 1 MB, 62W), 3700+ (2.4 GHz, 1 MB, 62W) e 4000+ (2.6 GHz, 1 MB, 62W). 904
  • 905. Mobile Sempron Como de praxe, foi lançada também uma linha de baixo custo, vendida sob a marca "Sempron". O Mobile Sempron diferencia-se do Mobile Athlon 64 por possuir menos cache L2 (apenas 128 ou 256 KB, de acordo com o modelo) e vir com o suporte a instruções de 64 bits desativado. Por ser um processador barato, ele foi usado em um número muito grande de notebooks de baixo custo, sobretudo nos modelos mais baratos da Acer, vendidos aqui no Brasil entre 2004 e 2006. As primeiras versões do Mobile Sempron utilizavam o core Dublin, derivado do ClawHammer e ainda fabricado em uma técnica de 0.13 micron. Ele foi usado nas versões de 1.6 e 1.8 GHz, mas elas foram logo descontinuadas. As versões mais populares foram as baseadas no core Georgetown, que é na verdade uma versão com menos cache do core Oakville (0.09 micron), usado no Mobile Athlon 64. Ele foi usado nos Mobile Sempron 2600+ (1.6 GHz, 128 KB, 62W), 2800+ (1.6 GHz, 256 KB, 62W), 3000+ (1.8 GHz, 128 KB, 62W), 3100+ (1.8 GHz, 256 KB, 62W) e 3300+ (2.0 GHz, 128 KB, 62W). Mais tarde, foram lançados modelos baseados no core Albany, uma versão castrada do core Newark usado no Mobile Athlon 64. Ele trouxe compatibilidade com as instruções SSE3, mas a AMD aproveitou o ganho para esticar os valores do índice de desempenho. O Albany foi usado no 3000+ (1.8 GHz, 128 KB, 62W), 3100+ (1.8 GHz, 256 KB, 62W), 3300+ (2.0 GHz, 128 KB, 62W), 3400+ (2.0 GHz, 256 KB, 62W) e 3600+ (2.2 GHz, 128 KB, 62W). Estes processadores da safra inicial não são muito aconselháveis, pois o desempenho é muito inferior ao dos Turions e o consumo elétrico é bastante elevado. O TDP de 62 watts é na verdade atingido apenas pelo 3300+ (Georgetown) e pelo 3600+ (Albany), quando operando em full load. Os outros modelos consomem ligeiramente menos e o uso do PowerNow mantém o processador operando a 800 MHz enquanto o processador está ocioso, reduzindo o consumo de forma substancial. Mesmo assim, o notebook esquenta bastante ao rodar programas pesados e a autonomia das baterias não é das melhores. Existiram ainda duas séries de baixo consumo do Mobile Sempron, baseadas no core Sonora e no core Roma. Apesar de ainda serem baseados na técnica de 0.09 micron, eles utilizam uma tensão mais baixa (1.25V no Sonora e 1.2V no Roma, contra os 1.4V do Georgetown), operam a freqüências um pouco mais baixas e incorporam um conjunto de pequenas melhorias que reduzem o consumo. Graças a tudo isso eles são capazes de trabalhar dentro de um TDP de 25 watts. 905
  • 906. Com exceção da pequena diferença na tensão usada, a única grande diferença entre o Sonora e o Roma é o fato do Roma oferecer suporte ao SSE3 e o Sonora não. O core Sonora foi usado em modelos 2600+ (1.6 GHz, 128 KB, 25W), 2800+ (1.6 GHz, 256 KB, 25W), 3000+ (1.8 GHz, 128 KB, 25W) e 3100+ (1.8 GHz, 256 KB, 25W). O Roma, por sua vez, foi usado em modelos 2800+ (1.6 GHz, 256 KB, 25W), 3000+ (1.8 GHz, 128 KB, 25W), 3100+ (1.8 GHz, 256 KB, 25W), 3300+ (2.0 GHz, 128 KB, 25W) e 3400+ (2.0 GHz, 256 KB, 25W). Note que, apesar de não existir distinção entre o índice de desempenho usado nos processadores das duas linhas, os Roma são um pouco mais rápidos, graças ao suporte a SSE3. Você pode descobrir rapidamente se um notebook usa uma das versões de baixo consumo através do CPU-Z. Se ele for identificado como Sonora ou Roma, ou se utilizar tensão de 1.25V ou 1.2V, então trata-se de um modelo de baixo consumo. Outra observação é que, assim como no Sempron para desktops, o índice de desempenho do Mobile Sempron é calculado com relação ao desempenho do Celeron D, por isso não deve ser levado muito a sério, nem comparado diretamente com o índice de desempenho do Mobile Athlon 64, que é calculado de forma diferente. Você pode se perguntar o por que da AMD especificar o mesmo TDP para todos os modelos dentro de cada série, se apenas os com clock mais elevado atingem efetivamente o valor especificado (e mesmo assim, nem sempre). Por que eles não especificam um TDP mais baixo para os processadores mais lentos? O principal motivo é facilitar a vida dos fabricantes. O TDP serve como uma indicação geral do tipo de refrigeração que um determinado processador necessita, de forma que o fabricante possa desenvolver um projeto adequado. Se um determinado modelo de notebook usa um cooler e reguladores de tensão adequados para um processador de 62 watts, por exemplo, significa que o fabricante pode usar qualquer processador com o core Albany, por exemplo, variando o modelo de acordo com a configuração desejada, sem precisar mexer em outros componentes do projeto. Isso permite que um mesmo modelo de notebook seja vendido em diversas configurações diferentes, com diferentes combinações de processador, memória, HD e placa wireless, como é cada vez mais comum hoje em dia. O TDP do processador é também uma dica de que processadores você pode usar em caso de upgrade. Salvo limitações por parte do BIOS, você pode utilizar qualquer processador que utilize o mesmo soquete, opere dentro das tensões suportadas e utilize um TDP igual ou inferior ao processador original. Você poderia substituir um Sempron 3000+ baseado no core Albany (1.8 GHz, 62W) por um Albany 3600+ (2.2 GHz, 62W), ou por um um Sonora 3400+ (2.0 GHz, 25W), por exemplo. 906
  • 907. Concluindo, existem também alguns Mobile Sempron que utilizam o soquete S1. Eles são baseados no core Keene que, ao contrário dos anteriores, inclui suporte à instruções de 64 bits, além de usar mais cache L2. Os Semprons baseados no Keene são todos modelos de baixo consumo, com TDP de apenas 25 watts. A lista dos modelos inclui o 3200+ (1.6 GHz, 512 KB, 25W), 3400+ (1.8 GHz, 256 KB, 25W), 3500+ (1.8 GHz, 512 KB, 25W) e 3600+ (2.0 GHz, 256 KB, 25W). Existiu ainda uma versão "fanless" (que pode trabalhar usando apenas um dissipador simples, sem uso de exaustor), o Sempron 2100+, que operava a 1.0 GHz e trabalhava dentro de um TDP de apenas 9W. Ele era destinado a ultraportáteis, UMPCs e tablets, concorrendo com os processadores da linha ULV da Intel. Turion 64 Apesar dos processadores Pentium M, baseados no core Dothan, e os Core Duo, baseados no core Yonah não serem capazes de operar a freqüências muito altas se comparados aos processadores para desktop, eles ofereciam um desempenho por ciclo de clock muito bom, o que permitia que competissem com processadores para desktop, baseados na arquitetura NetBurst, que operavam a freqüências muito mais elevadas, mesmo mantendo um consumo elétrico relativamente baixo. A arquitetura equilibrada, combinada com o esforço de marketing da Intel em torno da marca Centrino fizeram com que eles fossem um sucesso de vendas nos notebooks de médio e alto custo. Apesar disso, os notebooks baseados na plataforma Centrino sempre foram mais caros e o processador Intel para notebooks de baixo custo era o Celeron M, um chip muito menos competitivo, devido ao baixo clock, menos cache e à ausência do suporte ao SpeedStep. A resposta da AMD veio na forma do Turion 64, uma versão mobile do Athlon 64 soquete 754, que operava a freqüências mais baixas e incluía o PowerNow. Além de ser relativamente barato, o Turion oferecia um desempenho muito bom, chegando a superar o Pentium M baseado no core Dothan em diversas aplicações, e era relativamente econômico em termos de consumo elétrico. Levando em conta apenas a questão do processador, o Turion era competitivo com o Pentium M e era uma escolha muito melhor que o Celeron M. A questão é que um notebook é um conjunto, onde o resultado não depende apenas das características do processador, mas sim da combinação de todos os componentes. A Intel possuía uma plataforma mais sólida, já que desenvolvia seus próprios chipsets e placas wireless, enquanto os notebooks baseados no Turion utilizavam chipsets da ATI, VIA ou SiS, criando plataformas mais problemáticas. Isso fazia com que os Turion acabasse sendo usado predominantemente nos notebooks de baixo custo, o que não era necessariamente ruim, pois permitia que você comprasse notebooks relativamente potentes, baseados nas 907
  • 908. diferentes versões do Turion a preços substancialmente mais baixos que os baseados na plataforma Centrino. Turion 64 e Pentium M com core Dothan O Turion 64 também surgiu como uma derivação do Athlon 64 com core Venice (assim como o Mobile Athlon 64 com core Newark), mas desta vez a AMD tomou cuidados adicionais. Para reduzir o consumo elétrico, a AMD adotou o uso de transístores de chaveamento mais lento, que reduzem a freqüência máxima de operação do processador, mas em troca oferecem um consumo elétrico muito mais baixo. Como um processador mobile como o Turion nunca opera a freqüências muito elevadas, devido à questão do consumo e dissipação térmica, a troca acabou fazendo sentido. Foi incluído ainda um estágio adicional no sistema de gerenciamento de energia (o C3), que colocou o Turion um passo à frente dos Athlon 64 para desktops na questão do gerenciamento de energia. Os Turions da série MT trabalham dentro de um TDP de 25 watts, enquanto os ML são um pouco mais gastadores e adotam um TDP de 35 watts. Existem ainda versões com 512 KB e 1 MB de cache L2, mas todas as versões utilizam um controlador de memória single-channel (justamente por isso é utilizado o soquete 754), uma restrição adicionada para reduzir o consumo. Assim como os processadores soquete 754 para desktop, eles suportam apenas módulos DDR (sem suporte a DDR2) o que, combinado com o acesso single-channel, estrangula o barramento com a memória, prejudicando o desempenho do processador em diversas aplicações. A diferença no consumo é justificada pelo tipo de transístores e pelas otimizações utilizados em cada série. Apesar disso, não existe diferença de 908
  • 909. desempenho entre um MT e um ML de mesmo clock (e com a mesma quantidade de cache). Esta versão inicial do Turion 64 foi chamada de Lancaster e, assim como o Venice, era produzida usando a técnica de 0.09 micron e oferecia suporte a SSE3 e instruções de 64 bits, além do suporte ao PowerNow. O core Lancaster foi usado no MT-28 (1.6 GHz, 512 KB, 25W), MT-30 (1.6 GHz, 1 MB, 25W), MT-32 (1.8 GHz, 512 KB, 25W), MT-34 (1.8 GHz, 1 MB, 25W), MT-37 (2.0 GHz, 1 MB, 25W), MT-40 (2.2 GHz, 1 MB, 25W), ML-28 (1.6 GHz, 512 KB, 35W), ML-30 (1.6 GHz, 1 MB, 35W), ML-32 (1.8 GHz, 512 KB, 35W), ML-34 (1.8 GHz, 1 MB, 35W), ML-37 (2.0 GHz, 1 MB, 35W), ML-40 (2.2 GHz, 1 MB, 35W), ML-42 (2.4 GHz, 512 KB, 35W) e ML-44 (2.4 GHz, 1 MB, 35W). Mais adiante foi lançado o core Richmond, que utiliza o soquete S1, o mesmo utilizado pelo Turion X2. Ele tem a função de ser um processador de transição, permitindo que os fabricantes possam construir notebooks baseados em placas S1, sem necessariamente migrar para o Turion X2, que é mais caro. O Richmond foi vendido em apenas duas versões: MK-36 (2.0 GHz, 512 KB, 31W) e MK-38 (2.2 GHz, 512 KB, 31W). Um dos principais pontos fortes do Turion é o sistema de gerenciamento de energia. Tanto o PowerNow, usado nos processadores mobile, quanto o Cool'n'Quiet, usado nos processadores para desktop, trabalham dentro do mesmo princípio, ajustando o multiplicador (e conseqüentemente a freqüência) do processador, juntamente com a tensão, conforme mais ou menos poder de processamento é exigido. Cada "degrau" corresponde a uma redução de 1x no multiplicador o que (no caso do Turion) corresponde a uma redução de 200 MHz na freqüência do processador. A freqüência é reduzida sequencialmente até atingir 1.6 GHz, ponto no qual o processador entra no estágio mais baixo, onde passa a operar a apenas 800 MHz (independentemente do modelo). Juntamente com a freqüência, a tensão também é reduzida, já que o processador é projetado para funcionar estavelmente usando tensões mais baixas, desde que operando a freqüências também mais baixas. Quando mais processamento é exigido, a tensão volta ao valor inicial, seguida do aumento correspondente na freqüência. Um Turion ML-40, por exemplo, opera a 2.2 GHz e tem um TDP de 35 watts, mas consome este valor apenas quando está operando na freqüência máxima. Conforme o PowerNow reduz a freqüência de operação do processador, o consumo cai para 29 watts (2.0 GHz), 24.5 watts (1.8 GHz), 20 watts (1.6 GHz) e, finalmente, 7.9 watts (800 MHz). Como a mesma freqüência de 800 MHz é usada como estágio final em todos os Turions, independentemente da freqüência original, todos os modelos acabam consumindo apenas 7.9 watts quando ociosos. 909
  • 910. Para ter uma idéia da diferença que isso representa no consumo global da máquina, fiz um teste rápido usando um Acer 5050, que usa um Turion MK-36, que possui um TDP de 31 watts. Rodando o equivalente Linux do teste do Super PI, o processador chaveia para a freqüência máxima e o notebook consome 41.8 watts (medidos usando o comando "cat /proc/acpi/battery/BAT1/state"). Com o sistema ocioso, o processador passa a operar a 800 MHz e o consumo global cai para apenas 18.3 watts (incluindo a tela e a placa wireless), uma redução de mais de 50%. Como o teste taxa apenas o processador principal, sem um efeito significativo sobre os demais componentes, é seguro dizer que quase toda a economia de 23.5 watts pode ser creditada à ação do PowerNow. Desativando o transmissor da placa wireless e reduzindo o brilho da tela, é possível ficar abaixo da marca dos 15 watts, o que é menos do que o consumido por muitos notebooks baseados na plataforma Centrino. Outra observação é que no Turion o controlador de memória é incluído no processador, enquanto nos processadores Intel ele faz parte do chipset. O controlador de memória corresponde a um consumo de pouco menos de 1 watt, que não entra na conta do TDP feita pela Intel. Embora os Turions possam consumir mais quando operando em full-load, eles acabam consumindo menos que um Pentium M equivalente em tarefas leves, o que acaba levando a situações paradoxais, onde a autonomia de baterias do notebook baseado no Turion é menor que a de um notebook equivalente baseado em um Pentium M ao rodar benchmarks e tarefas intensivas, mas acaba sendo maior em situações reais de uso, onde o processador acaba operando na freqüência mínima na maior parte do tempo. Turion X2 O próximo passo da AMD foi o lançamento do Turion X2, com o objetivo de competir com o Core 2 Duo baseado no core Merom. O Turion X2 é, essencialmente, uma versão de baixo consumo do Athlon X2, que preserva as mesmas características básicas, como o uso do Crossbar Switch, o controlador de memória DDR2 dual-channel (compartilhado entre os dois núcleos) e o uso do barramento HyperTransport. Naturalmente, o fato de ser um processador mobile torna necessário o uso de um gerenciamento mais agressivo de energia. Entra em cena então uma versão atualizada do PowerNow, com suporte a um sistema de gerenciamento independente de cada núcleo. O nível de utilização de cada núcleo é continuamente monitorado e os níveis apropriados de economia de energia são aplicados. Isso permite que um dos núcleos continue operacional, enquanto o outro "hiberna", em um dos estágios de baixo consumo. O primeiro nível é o ajuste de freqüência e tensão de operação do processador, essencialmente o mesmo sistema já usado nos processadores anteriores. A 910
  • 911. freqüência de operação é reduzida para 800 MHz e a tensão para 1.075V (ou menos, de acordo com a revisão do processador). O próximo nível é o estágio C1 (Halt) onde o núcleo é essencialmente desativado, mas os caches e registradores continuam ativos. A partir daí, existem mais três estágios adicionais (C2, C3 e C4), onde mais componentes internos são desativados, reduzindo o consumo, mas aumentando o tempo de reativação. No estágio C1 o consumo do processador cai para apenas 4.5 watts e no estágio C4 para apenas 0.085 watts. Apesar de ser um processador dual-core, o sistema de gerenciamento faz com que o consumo acabe sendo similar, ou pouca coisa superior ao dos Turions single-core, muito embora o desempenho seja superior. Com os dois núcleos operando à 800 MHz, o Turion X2 (de 0.09 micron) consome 10 watts, o que dá apenas 5 watts por núcleo, menos que os 7 watts do Turion single-core. O principal motivo da redução é o uso de uma versão aprimorada do SOI (silicon on insulator), a técnica que permite adicionar uma fina camada de material isolante entre os transístores do processador e o waffer, reduzindo a perda de elétrons e conseqüentemente o consumo do processador. O SOI é utilizado também em outros processadores AMD produzidos usando a técnica de 0.09 micron em diante, mas neste caso é utilizada uma revisão anterior, menos eficiente que a usada no Turion X2. O Turion X2 adotou o uso do soquete S1, uma versão mobile do soquete AM2, onde também são utilizados módulos de memória DDR2, com suporte a dual- channel. Como nem todos os fabricantes utilizam dois módulos de memória (sobretudo nos modelos de baixo custo), você nota um certo ganho de desempenho ao instalar um segundo módulo, não apenas pelo aumento no volume de memória instalada, mas também pela ativação do dual-channel. Um dos destaques do soquete S1 é o número reduzido de pinos. Ele possui apenas 638 pinos, contra 940 pinos do soquete AM2 para desktops (menos até mesmo que o soquete 754, que é single-channel). O número reduzido de pinos ajudou a reduzir o tamanho do encapsulamento do processador, que passou a ser um pouco menor que o dos processadores soquete 754. O soquete S1 tem uma aparência muito similar ao soquete M usado pelos processadores Intel: 911
  • 912. Turion X2 instalado no soquete S1 O soquete S1 não é uma exclusividade do Turion X2. Ele é utilizado também pelo Turion single-core com core Richmond e também pelo Mobile Sempron baseado no core Keene. Uma forma muito simples de verificar se o seu notebook utiliza um destes processadores (e não um dos modelos antigos, soquete 754) é verificar o tipo de memória usada. Todos os notebooks soquete 754 utilizam memórias DDR, enquanto os soquete S1 utilizam memórias DDR2. Na ilustração a seguir temos um Core Duo baseado no Yonah, um Core 2 Duo baseado no Meron e um Turion X2. Note que apesar de possuir menos cache, o die do Turion X2 é maior, pois ele é ainda produzido usando uma técnica de 0.09 micron. Core Duo (à esquerda), Core 2 Duo e o Turion X2 912
  • 913. Do ponto de vista do upgrade, as memórias DDR2 são muito mais desejáveis, não apenas pela questão do desempenho, mas porque (assim como nos desktops) os módulos SODIMM DDR2 já são mais baratos que os módulos DDR. Outra questão é que usando módulos DDR2 você vai, muito provavelmente, poder aproveitar os mesmos módulos ao trocar de notebook, enquanto as DDR são um beco sem saída. Voltando ao processador, a safra inicial, lançada em 2006, inclui os Turions baseados nos cores Taylor e Trinidad. Ambos são fabricados utilizando a mesma técnica de fabricação de 0.09 micron, com SOI e o uso de transístores de baixo consumo usados nos Turions single-core da série ML. Eles incluem suporte a SS3, instruções de 64 bits, NX Bit e suporte ao AMD-V, a única diferença é que o Taylor inclui apenas 256 KB de cache L2 por núcleo, enquanto o Trinidad (usado na maior parte dos modelos) inclui 512 KB por núcleo. A lista de modelos é composta pelo Turion X2 TL-50 (1.6 GHz, 2x 256 KB, 31W), TL-52 (1.6 GHz, 2x 512 KB, 31W), TL-56 (1.8 GHz, 2x 512 KB, 33W), TL-60 (2.0 GHz, 2x 512 KB, 35W) e TL-64 (2.2 GHz, 2x 512 KB, 35W). Em 2007 foi lançado o Turion X2 baseado no core Tyler, produzido usando a nova técnica de 0.065 micron, usada também no Athlon X2 Brisbane e outros processadores recentes. Ele é usado nos modelos TL-56 (1.8 GHz, 2x 512 KB, 31W), TL-58 (1.9 GHz, 2x 512 KB, 31W), TL-60 (2.0 GHz, 2x 512 KB, 31W), TL-64 (2.2 GHz, 2x 512 KB, 35W) e TL-66 (2.3 GHz, 2x 512 KB, 35W). Você pode notar que não existe diferenciação entre os modelos baseados no Tyler e no Trinidad. Com exceção do TL-56 e do TL-60 (que possuem um TDP ligeiramente inferior), até mesmo o TDP dos processadores baseados nos dois cores é o mesmo. Na verdade, o Tyler é mais econômico que o Trinidad (embora a diferença não seja tão grande), o que a AMD passou a fazer foi simplesmente passar a usar uma margem mais folgada para cálculo do TDP. Lembre-se de que o TDP é simplesmente um teto de consumo que não deve ser excedido pelo processador. O fabricante pode usar o mesmo TDP para vários processadores, muito embora o consumo real de alguns deles seja mais baixo. Via C3 e C7 Além dos processadores da Intel e da AMD, temos também os processadores fabricados pela VIA, que ocupa um distante terceiro lugar. A linha atual é representada pelos processadores VIA C7, usados nas placas mini-ITX, nano- ITX e pico-ITX fabricadas pela VIA e também em alguns notebooks. Ao invés de tentar competir diretamente com a Intel e a AMD, a VIA se especializou no desenvolvimento de processadores de baixo consumo e baixo custo. É improvável que o C7 venha a concorrer diretamente com os Core 2 Duo e os Phenom nos desktops, mas ele tem uma chance de se tornar popular nos notebooks, UMPCs e dispositivos portáteis em geral. O C7 é descendente direto dos processadores Cyrix 6x86, que foram relativamente populares aqui no Brasil entre 1997 e 1999. Eles eram 913
  • 914. compatíveis com placas soquete 7 e eram uma opção de upgrade de baixo custo. A Cyrix foi comprada pela VIA em 1999 e o projeto do 6x86 recebeu várias melhorias, dando origem ao VIA C3, lançado em 2001. O C3 foi bastante utilizado nos desknotes da PC-Chips/ECS (com destaque para o A900), o que acabou rendendo uma fama muito ruim ao processador. O C3 de 666 MHz era apelidado de "GigaPro", o que apesar de ser apenas um nome comercial, dava a entender que ele oferecia um desempenho similar ao de um Pentium III ou Athlon de 1.0 GHz, que eram seus concorrentes diretos. A questão é que o C3 possuía um desempenho por ciclo de clock consideravelmente mais lento e a baixa freqüência de operação não ajudava. Do ponto de vista do desempenho o C3 era um fracasso, mas ele oferecia com vantagem o fato de ser um chip bastante econômico do ponto de vista do consumo e relativamente barato. Embora mais rápidos, os desknotes baseados em processadores Athlon 4 eram bem maiores e mais caros. O core Samuel, usado no C3 original foi sucessivamente aperfeiçoado, dando origem ao Samuel II, Erza, Nehemiah e finalmente ao Esther, usado no C7. Embora tenha recebido diversas melhorias, o Esther continua sendo um processador muito simples, que conta com duas unidades de execução de inteiros (que utiliza um pipeline de 16 estágios) e uma única unidade de execução para instruções de ponto flutuante. Ele possui 128 KB de cache L1 e mais 128 KB de cache L2, o que também é pouco se comparado com outros processadores atuais. Um atenuante é que ele é compatível com as instruções SSE, SSE2 e SSE3 e inclui o VIA PadLock, um sistema de encriptação via hardware que melhora o desempenho do processador no processamento de alguns algoritmos de encriptação. Aqui temos uma foto de divulgação da VIA que mostra os componentes internos do processador: VIA C7 com core Esther 914
  • 915. Do ponto de vista do desempenho, é muito difícil defender o C7, já que o desempenho por ciclo de clock não é muito melhor do que o dos antigos K6-3, com destaque para o fraco desempenho em ponto flutuante. Entretanto, o C7 possui algumas características interessantes do ponto de vista do consumo elétrico e da produção. Em primeiro lugar, o chip é muito menor e mais simples que os Pentium M e Turions, que seriam seus concorrentes diretos. Mesmo produzido usando uma antiquada técnica de 0.09 micron, o C7 ocupa uma área de apenas 32 mm², o que é quase um terço de um Pentium M com core Dothan (que ocupa 88 mm²), por exemplo. A segunda vantagem é o consumo elétrico. Um C7 de 2.0 GHz em full-load consome cerca de 20 watts, o que não é muito impressionante para os padrões atuais, já que um Core Duo LV-2400 (1.66 GHz) tem um TDP de apenas 15 watts e é consideravelmente mais rápido que ele. Entretanto, o C7 oferece um sistema de gerenciamento de energia bastante agressivo (o LongHaul), que reduz drasticamente a tensão e freqüência de operação do processador enquanto ele está ocioso, fazendo com que o consumo caia para meros 0.1 watts. Entre os dois extremos, existem diversas fases intermediárias, onde o desempenho e consumo são ajustados de acordo com a demanda. Assim como no Cool'n'Quiet usado nos processadores AMD, o chaveamento é feito de forma muito rápida, de forma que o sistema continua respondendo bem. Existe ainda a linha ULV, que engloba modelos de baixo consumo (com clock de até 1.5 GHz), que podem ser refrigerados usando um dissipador passivo. O C7-M ULV de 1.5GHz, por exemplo, consome apenas 7.5 watts em full-load, enquanto os modelos mais lentos chegam a superar a barreira dos 5 watts. Isso torna o C7 um processador competitivo para aplicações que não exijam muito poder de processamento, onde o processador possa operar a freqüências baixas na maior parte do tempo. A VIA tem se esforçado para popularizar o uso do C7 em notebooks, tablets e UMPCs, e existem planos de futuramente passar a utilizá-lo também em celulares, que poderiam (dentro das limitações da tela, armazenamento e sistema operacional usado) rodar aplicativos x86. Um exemplo de projeto e notebook ultraportátil baseado no C7 é o VIA NanoBook, anunciado em maio de 2007. Ele é um ultraportátil com tela de 7", que utiliza um C7 de 1.2 GHz (com um simples cooler passivo), pesa apenas 850 gramas e funciona por até 5 horas usando uma bateria de 3 células: 915
  • 916. VIA NanoBook, baseado no C7 Esther O C7 utiliza um barramento próprio, baseado no soquete 479 do Pentium M, porém com um formato e sinalização diferentes (ele utiliza o barramento VIA V4 no lugar do barramento AGTL+ utilizado nos processadores Intel). Para cortar custos e permitir o desenvolvimento de placas mais compactas, a VIA utiliza o encapsulamento NanoBGA2, que mede apenas 3 x 3 cm e é diretamente soldado à placa. Este é um dos motivos que faz com que o C7 seja destinado exclusivamente ao uso em notebooks e placas com o processador pré-instalado, além de impedir qualquer tipo de upgrade do processador. 916
  • 917. VIA C7 com o encapsulamento NanoBGA2 (à esquerda) e o C3 O core Esther foi lançado em 2004, época em que a AMD ainda fabricava processadores soquete A e a Intel ainda produzia processadores baseados na arquitetura NetBurst. De lá para cá, os processadores evoluíram muito, fazendo com que o C7 ficasse cada vez mais defasado com relação aos concorrentes. A VIA tem trabalhado em um novo core, batizado de Isaiah, cujo lançamento está planejado para o início de 2008. Ainda existem poucas informações sobre ele, mas sabe-se que ele será produzido usando uma técnica de 0.065 micron e receberá reforços nas unidades de execução e outros componentes internos, de forma a oferecer um melhor desempenho por ciclo de clock. Tudo indica que o Isaiah será um processador de 64 bits, compatível com o conjunto de instruções AMD64. A VIA tem falado em um aumento de até 100% no desempenho por ciclo de clock, o que não é difícil de imaginar, considerando que o Esther é muito fraco na questão do desempenho. O cache L2 do processador também será ampliado, de 128 KB para 1 MB, o que também deve ter um impacto considerável sobre o desempenho. Com os reforços, é provável que o Isaiah consiga oferecer um desempenho próximo ao de um Turion ou Celeron do mesmo clock. O principal problema é que o aumento na complexidade do processador sacrificará a principal vantagem dos processadores VIA atuais, que é o baixo consumo elétrico. Por utilizar um barramento próprio, o Isaiah será (pelo menos a princípio) compatível apenas com os chipsets fabricados pela própria VIA, o que reduz mais um pouco as chances de sucesso do chip. É sempre complicado tentar fazer previsões baseadas em informações incompletas, mas arriscaria dizer que o Isaiah não será muito mais do que mais uma opção de processador de baixo custo, que concorrerá com o Turion nos notebooks mais baratos e conquistará alguma participação nos desktops, através das placas nano-ITX e pico-ITX fabricadas pela VIA. 917
  • 918. AMD Geode Outro processador de baixo consumo que merece uma citação é o Geode, fabricado pela AMD. Além de ser usado em thin-clients e outros dispositivos, ele é o processador usado nas primeiras versões do OLPC (o laptop de 100 dólares). O Geode opera a freqüências muitos baixas e oferece pouco poder de processamento, mas em compensação é bastante econômico e barato. Na verdade, existem duas versões diferentes do Geode, uma baseada no projeto do antigo Cyrix Media GX (a AMD comprou os direitos sobre o projeto em 2003) e uma versão atualizada, baseada no Athlon. As versões baseadas no Media GX incluem as séries GX e LX, enquanto as baseadas no Athlon fazem parte da série NX. As três são ainda produzidas utilizando uma antiquada técnica de 0.13 micron (em pleno ano de 2007!), o que tira parte da competitividade dos chips. A série GX é a mais simples, composta por modelos de 333, 366 e 400 MHz, que consomem, respectivamente, 0.9, 1.0 e 1.1 watts, mesmo sem utilizar nenhum sistema sofisticado de gerenciamento de energia. Embora o desempenho seja muito fraco (o GX de 333 MHz perde para um K6-2 de 300 MHz por uma boa margem), eles estão entre os processadores x86 mais econômicos. Em seguida temos a série LX, que inclui modelos de 433, 500 e 667 MHz, que consomem (respectivamente) 1.3, 1.6 e 2.6 watts e incluem 128 KB de cache L1 e 128 KB de cache L2. Finalmente, temos o Geode NX, desenvolvido com base no projeto da versão mobile do Athlon XP. Eles possuem 128 KB de cache L1 e 256 KB de cache L2 e são consideravelmente mais rápidos que as duas séries iniciais, embora o consumo elétrico também seja mais alto (a versão de 1.0 GHz consome 6 watts, enquanto a versão de 1.4 GHz consome 14 watts), o que inviabiliza seu uso em muitas aplicações. Se comparado com o consumo dos processadores para desktop, os 14 watts consumidos pelo Geode NX de 1.4 GHz podem parecer pouco, mas se compararmos com outros processadores de baixo consumo, o valor é bastante alto. Para efeito de comparação, o Celeron M 353 ULV (baseado no core Dothan), que opera a 900 MHz, consome apenas 5 watts. O menor consumo elétrico é o principal motivo do Geode LX ter sido escolhido para uso na versão original do OLPC, no lugar do Geode NX. Esta é uma foto da placa-mãe do OLPC, que inclui o processador Geode LX, acompanhado por um chipset AMD CS5536, 4 chips de memória RAM (à esquerda) e um chip solitário de memória Flash (à direita), usado como unidade de armazenamento. 918
  • 919. Placa-mãe do OLPC, baseada no Geode LX Chipsets 3D Incluir uma aceleradora 3D de alto desempenho em um notebook é um desafio muito maior do que fazê-lo em um desktop, simplesmente porque o notebook precisa ser muito mais compacto e consumir muito menos energia. Um chipset 3D de alto desempenho precisa de um grande volume de unidades de processamento, operando a uma freqüência relativamente alta, combinado com uma grande quantidade de memória, ligada à GPU através de um barramento generoso. O problema é que quanto mais transístores, mais unidades de processamento, mais chips de memória e mais trilhas na placa, mais energia é consumida pela aceleradora, o que compromete a questão da portabilidade. Produzir uma aceleradora 3D "mobile" representa um desafio similar ao de produzir um processador mobile. Até certo ponto, é possível obter ganhos aprimorando a técnica de fabricação (migrando da técnica de 0.09 micron para a de 0.065 micron, por exemplo) e fazendo otimizações no projeto, mas, a partir de um certo ponto, é necessário realmente "cortar na carne", reduzindo o clock de operação, reduzindo a tensão usada pela GPU, simplificando o projeto e adotando outras medidas que reduzem o consumo às custas do desempenho. Justamente por isso, a maior parte dos notebooks utiliza alguma opção de vídeo onboard com memória compartilhada, que invariavelmente oferecem um desempenho entre "fraco" e "regular". Não significa que não existam notebooks com "placas offboard", mas apenas que eles são muito mais raros e caros. 919
  • 920. Vamos então a uma análise rápida das opções de aceleradoras 3D para notebooks, incluindo tanto as opções de vídeo onboard quanto offboard. Assim como no caso dos desktops, a Intel é a maior produtora de chipsets de vídeo para notebooks, mesmo sem produzir uma única placa offboard. Os chipsets Intel são bastante populares e a grande maioria dos notebooks baseados em chipsets Intel utilizam o chipset de vídeo integrado. Em segundo lugar vem a AMD/ATI, que também produz um grande número de chipsets com vídeo integrado (além de um bom volume de aceleradoras dedicadas) que são usados em um enorme volume de notebooks baseados em processadores AMD. Até pouco tempo atrás, antes de ser comprada pela AMD, a ATI também produzia um grande volume de chipsets para processadores Intel. Em terceiro temos a nVidia, com (no final de 2007) pouco mais de 20% do volume de placas vendidas. A nVidia também vende chipsets com vídeo integrado, mas seu carro chefe são as placas de vídeo dedicadas. Chipsets onboard A Intel inclui chipsets de vídeo da série GMA e X3xxx na maioria dos chipsets, incluindo, naturalmente, as versões mobile. Os chips são fundamentalmente os mesmos usados nos chipsets para desktops, mas operam a freqüências de operação mais baixas e possuem otimizações relacionadas com o consumo elétrico. A versão mobile do GMA 900 opera a apenas 200 MHz (contra os 333 MHz da versão para desktops) e é usado nos chipsets Intel 910GML, 915GM e 915GMS. O GMA 950 opera a 250 MHz (contra 400 MHz da versão para desktops) e é usado no chipset Intel 945GM. Em ambos os casos, a memória de vídeo é alocada dinamicamente (até 128 MB para o GMA 900 e até 224 MB para o 950), o que torna recomendável ter pelo menos 512 MB de memória instalada. Estes dois chipsets são otimizados para consumirem pouca energia e serem baratos de produzir, não para serem opções de alto desempenho. Com exceção das soluções da SiS e da VIA, o GMA 900 e o GMA 950 mobile são os aceleradores 3D mais fracos que você vai encontrar atualmente. O objetivo é simplesmente oferecer um bom desempenho em 2D, de forma a atender a quem usa predominantemente aplicativos de produtividade e oferecer um nível mínimo de desempenho 3D, suficiente para rogar algum game antigo esporadicamente. Mais recentemente foi lançado o GMA X3100, a versão mobile do GMA X3000, que é integrado ao chipset Intel 965GM (usado em notebooks baseados na plataforma Santa Rosa). Ele possui as mesmas características do X3000, incluindo as 8 unidades programáveis e a possibilidade de usar até 384 MB de memória compartilhada (o que torna recomendável ter 1 GB de memória instalada), mas opera a apenas 500 MHz (contra 667 MHz do X3000). Apesar da redução no clock, o X3100 oferece um desempenho respeitável se comparado com os outros chipsets onboard. 920
  • 921. Continuando, temos os chipsets da nVidia. Embora faça mais sucesso com os chipsets de vídeo offboard, a nVidia também oferece um chipset mobile com vídeo integrado, que é a combinação do chipset nForce Go 430, com um chipset GeForce Go 6100 ou GeForce Go 6150. Nestes dois casos, não temos exatamente um chipset de vídeo integrado, mas sim uma solução "semi- dedicada", onde temos um chipset de vídeo dedicado, mas que que utiliza memória compartilhada para cortar custos: O desempenho 3D do Go 6100 e do Go 6150 não é diferente. As diferenças entre os dois chipsets residem nos recursos de economia de energia (o GO 6100 trabalha dentro de um TDP de 7.5 watts, enquanto o Go 6150 é mais econômico, trabalhando dentro de um TDP de apenas 5.6 watts) e na distribuição das linhas PCI Express. A arquitetura é a mesma dos GeForce 6100 e 6150 para desktops, com 2 pixel pipelines (incluindo uma unidade de pixel shader cada um) e 1 unidade vertex shader. Ao contrário da Intel, que optou por reduzir a freqüência de operação dos chipsets da linha mobile, a nVidia foi capaz de manter o clock de 425 MHz usado no GeForce 6100 para desktops em ambos os chips. Isso mudou um pouco a relação de desempenho dos dois chips em relação ao que temos nas versões para desktop, fazendo com que eles tenham um desempenho muito mais próximo do oferecido pelo X3100 do que no caso do 6100/6150 para desktops. Eles são capazes de superar os chipsets Intel GMA 900 e 950 e também os ATI Xpress 200M com tranquilidade, mas ainda perdem para o Intel GMA X3100 e também para os ATI Xpress 1100 e 1150 por uma pequena margem. Um amenizante é que eles contam com suporte ao nVidia PureVideo, um sistema de decodificação de vídeo via hardware que reduz o uso do processador (e conseqüentemente o consumo) ao assistir vídeos codificados em diversos formatos, incluindo o formato H.264 usado nos HD-DVDs. A ATI, por sua vez, oferece os chipsets Radeon Xpress 200M, Radeon Xpress 1100 e Radeon Xpress 1150, disponíveis tanto em versão para processadores AMD quanto para processadores Intel. Naturalmente, com a aquisição da ATI pela AMD, o desenvolvimento dos chipsets para processadores Intel foi 921
  • 922. suspenso, mas existe um número muito grande de notebooks em uso baseados neles. Acer 5043WLMI (com o Xpress 200M), rodando o Rome Total War As diferenças entre os chipsets para processadores Intel e AMD se restringem à interface com o processador e à presença ou não do controlador de memória. Nos três casos, o chipset de vídeo integrado é o mesmo, uma versão reduzida do Mobility Radeon X300, ligada ao barramento PCI Express. O Mobility Radeon X300 possui originalmente 4 pixel pipelines (incluindo 4 unidades de pixel shader) e 2 unidades de vertex shader. Ele opera a 350 MHz e utiliza 64 MB de memória dedicada, operando a 300 MHz. Apesar de ser um chipset relativamente simples, se comparado a chipsets recentes, como o R600 e o G80, ele suporta o DirectX 9 e o Shader Model 2.0, de forma que é capaz de rodar a maioria dos jogos atuais, embora com baixo FPS. A versão simplificada do X300 integrada ao Xpress 200M, Xpress 1100 e Xpress 1150 possui apenas 2 pixel pipelines (ou seja, possui apenas metade da força bruta do X300) e utiliza memória compartilhada. O único quesito em que o desempenho do chip não foi reduzido é com relação ao processamento de vertex shaders, já que foram mantidas as mesmas duas unidades. Nos chipsets Xpress 200M e Xpress 1100 o chipset de vídeo opera a 300 MHz e pode utilizar até 128 MB de memória compartilhada. O Xpress 1150 vai um pouco adiante, com o chipset de vídeo operando a 400 MHz e utilizando até 256 MB de memória compartilhada. Outra diferença é que o Xpress 200M é um chipset mais antigo, que ainda utiliza memória DDR, enquanto o Xpress 1100 e 922
  • 923. o Xpress 1150 utilizam memórias DDR2, o que praticamente dobra a banda disponível para o chipset de vídeo, melhorando o desempenho. Assim como no caso dos chipsets Intel, uma das grandes preocupações é o consumo elétrico. O consumo médio do 200M (incluindo o chipset de vídeo) é de apenas 2 watts, enquanto o Xpress 1150 vai além, consumindo pouco mais de 1 watt. Isso é possível devido ao sistema de gerenciamento de energia, que desativa ou reduz o clock dos componentes ociosos. Ao rodar um game 3D, onde o chipset de vídeo seja obrigado a trabalhar a toda, o consumo sobe para até 8 watts no caso do 200M e até 9 watts no caso do Xpress 1150, um consumo modesto se comparado ao das placas para desktop, que chegam a consumir mais de 150 watts. Fazendo um "ranking" de performance 3D destas opções de vídeo integrado, teríamos os GMA 900 e GMA 950 na lanterna, seguidos (nessa ordem) pelo Radeon Xpress 200M, GeForce Go6100/6150, Radeon Xpress 1100 e 1150 e, finalmente, o GMA X3100. Apesar das diferenças na arquitetura, o Xpress 200M e o GeForce Go6100/6150 oferecem um desempenho muito parecido, enquanto o Xpress X1150 consegue superá-los com uma margem de cerca de 30%. O GMA X3100 é o chipset mais recente da lista, por isso é natural que ele acabe sendo o mais rápido, com suas 8 unidades programáveis. A principal questão é que a Intel geralmente demora 3 anos ou mais para lançar versões sensivelmente atualizadas de seus chipsets de vídeo, de forma que daqui a dois anos o X3100 tende a voltar a ficar na lanterna, conforme os outros fabricantes forem lançando chipsets atualizados. Uma observação importante é que é comum existirem variações dentro no mesmo modelo de notebook, com mudanças não apenas no processador, memória e HD, mas também no chipset usado. O Acer Aspire 5043WLMI, por exemplo, existe em versões com o Radeon Xpress 200M, com o com SiS Mirage II (uma solução pobre, que sequer possui suporte 3D no Linux) e também com o Mobility Radeon X1300, um chipset de vídeo dedicado. É importante prestar atenção nas especificações, sobretudo ao comprar em lojas online, pois na maioria dos casos não existem diferenças externas entre variações do mesmo modelo. Chipsets dedicados e placas offboard Em inglês, o termo usado para indicar que um componente não é integrado é "discrete". Ele tem um significado oposto do da palavra "discreto", é um falso cognato. Um "discrete controller" é um controlador independente, que não está integrado ao chipset, ou outro chip maior. A melhor tradução seria "dedicado". Um exemplo é o encapsulamento utilizado na Mobility Radeon X1600, onde além da GPU, temos quatro chips de memória de vídeo dedicada. Este conjunto forma uma solução muito similar a uma placa 3D offboard, a única limitação é que o encapsulamento é diretamente soldado à placa mãe, o que impede qualquer tipo de upgrade: 923
  • 924. Mobility Radeon X1600 com os chips de memória instalados sobre o encapsulamento Assim como no caso dos desktops, é perfeitamente possível comprar um notebook com uma aceleradora 3D dedicada, ou até mesmo um notebook com uma placa "offboard". Quando falo em "dedicado" entenda que se trata de uma solução com um chipset de vídeo dedicado, mas ainda integrado à placa-mãe, diferente de uma placa "offboard", que é realmente uma placa separada, que pode até mesmo ser atualizada. Como de praxe, as placas 3D para notebooks utilizam formatos miniaturizados, diferentes das placas para micros desktop, muito embora também sejam conectadas ao barramento PCI Express. A nVidia desenvolveu o formato MXM (Mobile PCI Express Module), que permite a criação de placas de vídeo compactas, contendo a GPU e memória dedicada, que são instaladas através de uma versão miniaturizada do slot PCI Express x16. A placa MXM não inclui o conversor DAC nem as saídas de vídeo, que são movidas para a placa-mãe do notebook: 924
  • 925. Instalação de uma placa de vídeo MXM Este formato é utilizado pelas placas da série GeForce Go e GeForce 8M, que são atualmente as opções mais poderosas de aceleradoras 3D para notebooks, oferecendo inclusive a opção de usar duas placas em SLI, possibilidade realmente explorada em alguns desktop replacement de alto desempenho: Duas placas MXM em SLI, com os coolers instalados 925
  • 926. O principal atrativo das placas MXM é a possibilidade de atualizar a placa de vídeo, assim como fazemos nos desktops. Entretanto, esta possibilidade acaba não sendo tão explorada quanto poderia ser, pois, além dos problemas relacionados à diferença de consumo elétrico entre diferentes placas, as placas MXM de alto desempenho precisam de coolers elaborados, que por questão de espaço, são personalizados para cada família de notebooks. Para complicar, existem 4 padrões diferentes de placas MXM, o MXM-I (7.0x6.8cm, 230 pinos), MXM-II (7.3x7.8cm, 230 pinos), MXM-III (8.2x10cm, 230 pinos) e o MXM-HE (8.2x10cm 232 pinos), onde as placas são construídas em um dos quatro formatos de acordo com o espaço necessário e a dissipação térmica da GPU, sendo que o formato MXM-I é usado pelas placas mais simples e o MXM-HE pelas mais parrudas. Notebooks com slots MXM-HE podem acomodar placas dos outros padrões (com exceção de casos de incompatibilidades diversas, causadas por problemas por parte do BIOS ou deficiências no sistema de alimentação), mas notebooks menores, equipados com slots MXM-I ficam restritos apenas a placas MXM-I. Como os próprios fabricantes produzem as placas MXM (a nVidia apenas fornece os chipsets) existem ainda casos de placas fora do padrão, que não podem ser utilizadas em outros modelos. Com isso, você acaba ficando restrito a algumas poucas opções de placas, para as quais o sistema de refrigeração é dimensionado. Você não pode substituir diretamente uma GeForce Go 7300 em um ultraportátil por uma GeForce Go 7950 GTX, por exemplo. Um bom lugar para se informar sobre casos onde o upgrade é possível é o http://mxm-upgrade.com/. Apesar de ter sido originalmente desenvolvido pela nVidia, o MXM é um padrão aberto, que pode ser usado por outros fabricantes. Entretanto, o MXM ainda está longe de se tornar o padrão, pois temos também o padrão da ATI, o AXIOM (Advanced Express I/O Module). Embora também seja baseado no barramento PCI Express, o AXIOM utiliza um encaixe bem diferente (e, naturalmente, incompatível com o MXM) onde os contatos ficam na parte inferior da placa: 926
  • 927. Conector de uma placa AXION Embora cada um dos dois fabricantes defenda seu padrão, fabricantes independentes podem muito bem produzir placas MXM com chipsets ATI e de fato isso acontece, embora de forma esparsa. A Dell utiliza um formato proprietário em muitos de seus notebooks, similar ao AXION, mas usado tanto para placas com chipset ATI quanto nVidia. Em alguns casos, é até mesmo possível trocar uma placa ATI por outra nVidia, ou vice-versa. Placa MXM com chipset ATI ao lado de uma MXM com chipset nVidia ATI Voltando aos chipsets, a linha de chipsets da ATI começa com a série Mobility Radeon X1K (ou X1000), composta por chips dedicados, que podem ser combinados com um certo volume de memória de vídeo dedicada, também instalada na placa mãe, ou simplesmente utilizar memória RAM compartilhada, assim como os chipsets de vídeo onboard. Eles ficam longe de serem soluções de alto desempenho, mas consomem pouca energia, são baratos (a ponto de 927
  • 928. serem integrados em muitos notebooks de baixo custo da Acer e de outros fabricantes) e já são consideravelmente mais rápidos que os chipsets de vídeo onboard. Os chipsets da série X1K são versões reduzidas do chipset R520 para desktops. Eles oferecem suporte ao DirectX 9.0c e ao Shader Model 3.0, além de oferecerem suporte a FSAA, HDR, Anisotropic Filtering e outros recursos. Naturalmente, você vai precisar desabilitar o FSAA e o Anisotropic Filtering na grande maioria dos jogos, de forma a melhorar o FPS, por isso não espere muito. As versões mais simples são os chipsets Mobility Radeon X1300, X1350, X1400 e X1450. Eles são baseados no chip RV515 (uma versão reduzida do R520), o mesmo utilizado nas placas Radeon X1300 e X1550 para desktops. A principal diferença entre as versões mobile e as versões para desktop do RV515 são as otimizações relacionadas ao consumo elétrico e o encapsulamento usado, já que o chip é destinado a ser instalado diretamente na placa-mãe, ao invés de ser usado em uma placa offboard. Mobility Radeon X1300 O RV515 é composto por 4 unidades de pixel shader, 4 unidades de texturas, 4 ROPs e 2 unidades de vertex shader, o que o torna quase 2 vezes mais poderoso que um Xpress 1150 do mesmo clock. O X1300 opera a 400 MHz, enquanto o X1350, X1400 e o X1450 operam a 433 MHz. Os 4 chips podem utilizar até 128 MB de memória DDR, DDR2 ou GDDR3 dedicada, acessada através de um barramento de 128 bits. Eles também suportam o HyperMemory, que permite o uso de até 256 MB de memória compartilhada. A principal questão é que o fabricante do notebook é quem escolhe qual o tipo de memória utilizar e em qual quantidade, já que os chips são soldados à placa-mãe. Isso faz com que exista uma grande variação de desempenho entre os notebooks de diferentes marcas, já que temos desde notebooks com 128 MB de memória GDDR3 dedicada, até notebooks sem memória dedicada alguma, onde o chipset de vídeo utiliza apenas memória compartilhada, através do HyperMemory. A freqüência de operação dos 928
  • 929. chipsets também pode ser alterada pelos fabricantes, o que acentua as diferenças. Uma das vantagens destes 4 chipsets (assim como os sucessores) sobre o Xpress X1000 e o Xpress X1150 é o suporte ao AVIVO, recurso que permite que o chipset de vídeo decodifique vídeos nos formatos H.264, VC-1, WMV9 e MPEG-2 via hardware, sem taxar o processador principal. Como a placa de vídeo executa a tarefa de forma mais eficiente e consumindo menos energia, isso acaba resultando em uma autonomia de baterias um pouco maior ao assistir DVDs ou vídeos nos formatos suportados. Com relação ao formato H.264 (que é o algoritmo mais pesado dos 4), os chipsets X1300 a X1450 suportam decodificação via hardware de vídeos com resolução de até 480 linhas (resolução usada no DVD), o X1600 suporta até 720 linhas e o X1800 em diante suporta vídeos em alta resolução, com até 1080 linhas. Você pode assistir (ou pelo menos tentar assistir) um vídeo com 1080 linhas em um notebook com um chipset X1300, mas neste caso toda a decodificação passa a ser feita pelo processador principal, o que resulta em um maior consumo elétrico e um desempenho inferior. Em seguida temos o Mobility Radeon X1600, que, apesar da numeração superior, foi lançado um pouco antes, em dezembro de 2005. Ele é baseado no chip RV530, que possui 12 unidades de pixel shader, 4 unidades de texturas, 4 ROPs e 5 unidades de vertex shader. Ele opera a 445 ou 470 MHz (a freqüência é definida pelo fabricante do notebook), utiliza 128 ou 256 MB de memória GDDR3 dedicada, operando a 700 MHz (existem notebooks que utilizam chips mais rápidos de até 936 MHz) ligada à GPU através de um barramento de 128 bits. Isso resulta em um desempenho respeitável (para um chipset Mobile), superior ao de uma GeForce Go 6600 e próximo ao de uma GeForce Go 6800 equipada com módulos de memória de baixa frequência. O uso de um barramento de apenas 128 bits com a memória acabou se revelando uma vantagem do ponto de vista da fabricação, já que ele permite que o chipset de vídeo seja servido por apenas 4 chips de memória. Isso permite que os fabricantes instalem os chips de memória diretamente sobre o encapsulamento do chipset de vídeo, sem necessidade de usar um módulo AXION, reduzindo os custos de forma considerável. Existe também o Mobility Radeon X1700, uma variação do X1600 produzida usando a técnica Strained silicon, que reduz um pouco o consumo elétrico. A freqüência "stock" do X1700 é de 470 MHz, mas o chip possui uma margem de overclock um pouco maior, o que faz com que existam notebooks onde o X1700 opere a freqüências mais altas. Em seguida temos os chipsets Mobility Radeon X1800, X1800 XT e X1900, chipsets mais caros, que possuem um consumo e dissipação térmica muito maior, e por isso são geralmente usados apenas em notebooks desktop replacement. Ao contrário do X1600 e do X1700, que podem ter os chips de memória montados no mesmo encapsulamento do chipset, os três são usados apenas na forma de placas AXION ou MXM. 929
  • 930. Mobility Radeon x1800, no formato MXM O X1800 possui 12 unidades de pixel shader, 12 unidades de texturas, 12 ROPs e 8 unidades de vertex shader. O chipset opera a 450 MHz e utiliza 256 MB de memória GDDR3, operando a 1.0 GHz e ligada ao chipset através de um barramento de 256 bits. O X1800 XT possui as mesmas 8 unidades de vertex shader, mas é consideravelmente mais rápido, já que possui 16 unidades de pixel shader, 16 unidades de texturas, 16 ROPs e opera a 550 MHz, com a memória (os mesmos 256 MB de memória GDDR3, com barramento de 256 bits) operando a 1.3 GHz. O X1900 é o mais poderoso da série, com 36 unidades de pixel shader, mas apesar disso é um chipset bastante raro, pois é muito caro e o consumo elétrico é muito elevado. Em maio de 2007 foram lançados os chipsets Mobility Radeon HD 2400, HD 2400 XT, HD 2600 e HD 2600 XT que, ao contrário dos chipsets da série X1000, são baseados na arquitetura do R600, com o uso de unidades shader unificadas e suporte ao DirectX 10. Eles oferecem também suporte ao AVIVO HD que se diferencia do AVIVO usado nas placas da série X1000 por oferecer suporte a discos nos formatos HD-DVD e Blu-Ray. Isso é um pouco mais complicado do que parece, pois além da questão da decodificação do vídeo, existe a necessidade de incluir o suporte ao HDCP (o sistema de criptografia usado), o que aumenta os custos. O Mobility Radeon HD 2400 e o HD 2400 XT são baseados na versão mobile do chip RV610. Assim como as placas Radeon HD 2400 para micros desktop, elas possuem apenas 40 stream processors e utilizam um barramento com a memória de apenas 64 bits, o que as torna muito mais fracas que as X1800. Isso é justificável pelo fato de eles serem chipsets de baixo custo, destinados a substituírem os chipsets X1300 a X1450. O HD 2400 opera a 450 MHz, com a memória a 1.0 GHz, enquanto o HD 2400 XT opera a 600 MHz, com a memória a 1.4 GHz As HD 2600 e HD 2600 XT, por sua vez, são baseadas no chipset RV630 e possuem o triplo de poder bruto de processamento, com 120 stream processors. O HD 2600 opera a 500 MHz, com a memória a 1.2 GHz, enquanto o HD 2600 XT opera a 700 MHz, com a memória a 1.5 GHz. 930
  • 931. nVidia Em seguida temos os chipsets da nVidia, cuja linha de chipsets mobile inclui versões de baixo consumo dos chipsets G70 e G80, usadas nas placas GeForce das séries 7 e 8. A nVidia não vende tantos chipsets de vídeo mobile quanto a ATI (em número), mas em compensação é bastante forte no ramo de placas offboard, que embora representem uma parcela pequena das vendas, acabam sendo o ramo mais lucrativo. Ao contrário dos GeForce Go 6100 e Go 6150, que são chipsets onboard, todos estes chipsets são destinados a serem usados em placas MXM. As placas mais simples são as GeForce Go 7300 e Go 7400, que são baseadas no chipset G72M, a versão mobile do G72, que possui 4 unidades de pixel shader, 4 unidades de texturas, 2 ROPs e 3 unidades de vertex shader. Ambas utilizam 128 MB (ou, em casos raros, 256 MB) de memória GDDR3 dedicada e podem utilizar mais 256 MB de memória compartilhada usando o TurboCache. A diferença entre eles é que o Go 7300 opera a 350 MHz (com a memória a 700 MHz), enquanto o Go 7400 opera a 450 MHz (com a memória a 900 MHz), oferecendo um desempenho muito similar ao de uma GeForce 7300 LE para desktops. Elas são seguidas pelas placas GeForce Go 7600, Go 7600 GT e Go 7700, que são baseadas no chipset G73M. O Go 7600 é a versão mais simples, baseada em uma versão castrada do chipset, que conta com apenas 8 unidades de pixel shader, 8 unidades de texturas, 8 ROPs e 5 unidades de vertex shader. Ele opera a 450 MHz, com 256 MB de memória GDDR3 (a 800 MHz). Tanto o Go 7600 GT quanto o Go 7700 são baseados na versão "completa" do G73M, com 12 unidades de pixel shader, 12 unidades de texturas, 8 ROPs e 5 unidades de vertex shader. O Go 7600 GT opera a 500 MHz, com 256 MB de memória GDDR3 (a 1.2 GHz) e o 7700 (que apesar da numeração superior, é mais lento), opera a 450 MHz, com a memória (também 256 MB de memória GDDR3) a 1.0 GHz. Além de possuírem mais unidades de processamento, as Go 7600 e Go 7700 utilizam um barramento de 128 bits com a memória, enquanto as Go 7300 e Go 7400 utilizam um barramento de apenas 64 bits, o que acentua a diferença de desempenho. Em seguida temos as placas high-end dentro da família, que utilizam os chipsets G70M e G71M. Estes dois chipsets compartilham a mesma arquitetura, com 24 unidades de pixel shader, 24 unidades de texturas, 16 ROPs e 8 unidades de vertex shader. A diferença entre os dois é que o G70M (usado nas placas da série 7800) ainda é baseado em uma técnica de 0.11 micron, enquanto o G71M (usado nas séries 7900 e 7950) é fabricado usando a técnica de 0.09 micron, o que possibilita o uso de freqüências de operação mais altas, mantendo o consumo elétrico a um nível aceitável. Ambos os chipsets utilizam também um barramento de 256 bits com a memória, outro diferencial em relação às séries anteriores. 931
  • 932. A GeForce Go 7800 é a versão mais simples, baseada em uma versão castrada do G70M, com apenas 16 unidades de pixel shader, 16 unidades de texturas, 8 ROPs e 6 unidades de vertex shader. Nela o chipset de vídeo opera a 350 MHz, com 256 MB de memória GDDR3 operando a 1.1 GHz. A GeForce Go 7800 GTX é baseada na versão completa do chip, com 24 unidades de pixel shader, 24 unidades de texturas, 16 ROPs e 8 unidades de vertex shader e opera a 400 MHz (com a memória também a 1.1 GHz). O modelo seguinte é a GeForce Go 7900 GS que, apesar da numeração, é inferior à 7800 GTX. Ela é baseada em uma versão castrada do G71M, com 20 unidades de pixel shader, 20 unidades de texturas, 16 ROPs e 7 unidades de vertex shader, que opera a apenas 375 MHz, com a memória a 1.0 GHz. GeForce Go 7900 GS, no formato MXM Tanto a GeForce Go 7900 GTX quanto a Go 7950 GTX são baseadas na versão completa do G71M, com 24 unidades de pixel shader, 24 unidades de texturas, 16 ROPs e 8 unidades de vertex shader. A diferença entre elas é que na 7900 GTX a GPU trabalha a 500 MHz e a memória a 1.2 GHz, enquanto na 7950 GTX a GPU trabalha a 575 MHz e a memória a 1.4 GHz. Naturalmente, a 7950 dissipa um pouco mais calor que a 7900, mas apesar disso ambas trabalham dentro de um TDP de 45W. Outra diferença é que a Go 7900 GTX existe em versões com 256 e 512 MB, enquanto a Go 7950 GTX existe apenas em versão com 512 MB. Só para efeito de comparação, a Go 7900 GTX possui um fill rate de 12.000 megatexels e a Go 7950 GTX 13.800 megatexels. A GeForce 7900 GTX para desktops compartilha da mesma arquitetura, mas a GPU opera a uma freqüência mais alta, 650 MHz, o que resulta em um fill rate de 15.600 megatexels. Ou seja, embora possuam os mesmos recursos, as versões mobile são um pouco mais lentas devido ao clock mais baixo. Tecnicamente, seria possível desenvolver uma versão da Go 7900 GTX também operando a 650 MHz, mas o consumo elétrico seria proibitivo. 932
  • 933. Assim como as GeForce 7000 para desktops, as placas da série Go 7000 oferecem suporte ao DirectX 9.0c e ao Shader Model 3.0. Em maio de 2007 a nVidia lançou a série GeForce 8000M, composta por placas baseadas nas versões mobile dos chipsets G84 e G86, que utilizam a arquitetura de unidades unificadas e são compatíveis com o DirectX 10. Elas são compatíveis também com o PureVideo HD que, assim como o AVIVO HD (usado nas placas da série HD 2000, da ATI), que oferece suporte à exibição de filmes nos formatos HD- DVD e Blu-Ray, incluindo o suporte ao HDCP. A placa mais simples dentro da família é a GeForce 8400M G, baseada em uma versão castrada do mobile G86, que possui apenas 8 stream processors (só para efeito de comparação, a GeForce 8800 GTX para desktops possui 128, ou seja, 16 vezes mais), o que resulta em um desempenho 3D bastante fraco. Esta é mais uma solução para fabricantes interessados em desenvolver notebooks com suporte a HD-DVD e ao DirectX 10 (importante do ponto de vista do marketing) do que uma placa 3D propriamente dita. Mesmo com a GPU operando a 400 MHz e utilizando 256 MB de memória dedicada, o desempenho não é muito superior ao de uma Intel X3100 onboard. Em seguida temos as placas GeForce 8400M GS, 8400M GT e 8600M GS. As três utilizam 512 MB de memória GDDR3 dedicada e são baseadas na versão "completa" do mobile G86, com 16 stream processors. Como de praxe, elas se diferenciam pela freqüência de operação, com a 8400M GS operando a 400 MHz (com a memória a 1.2 GHz), a 8400M GT operando a 450 MHz (com a memória também a 1.2 GHz) e a 8600M GS operando a 600 MHz (com a memória a 1.4 GHz). Nos três casos, as unidades de processamento operam ao dobro da freqüência do restante da GPU, o que resulta em freqüências de (respectivamente) 800, 900 e 1.2 GHz. A 8400M GS utiliza um barramento de 64 bits com a memória, o que limita bastante o desempenho da GPU, enquanto a 8400M GT e a 8600M GS utilizam um barramento de 128 bits. Temos ainda as GeForce 8600M GT e a 8700M GT, que são baseadas na versão mobile do G84, com 32 stream processors. Ambas utilizam 512 MB de memória GDDR3, ligada à GPU através de um barramento de 128 bits. A 8600M GT opera a 475 MHz, com a memória a 1.4 GHz, enquanto a 8700M GT opera a 625 MHz, com a memória a 1.6 GHz. Em ambos os casos, as unidades de processamento operam ao dobro da frequência, o que resulta em 950 MHz e 1.25 GHz, respectivamente. Barebones Um barebone é um notebook personalizável, onde você compra apenas a carcaça, com a placa-mãe, tela, bateria, teclado e touchpad. Desta forma, você pode personalizar o equipamento, escolhendo o processador, módulos de memória, HD, drive óptico e, em alguns modelos, também a placa de vídeo (neste caso escolhendo entre um pequeno conjunto de modelos mobile). Dois exemplos de barebones são o Asus Z84JP e o MSI MS-1058. À primeira vista eles parecem notebooks normais, e realmente são. Um barebone nada mais é do que um notebook desenvolvido com o objetivo de permitir uma certa flexibilidade na escolha dos componentes, que é vendido "incompleto", 933
  • 934. permitindo que você escolha o que usar. Não é incomum que o fabricante ofereça também opções de notebooks "completos" baseados nos mesmos. Asus Z84JP e MSI MS-1058 934
  • 935. O Asus Z84JP é um desktop replacement, grande e equipado com uma tela de 17", enquanto o MSI MS-1058 é um thin-and-light, compacto e com tela de 12". Escolhi os dois como exemplo justamente devido às diferenças entre eles. O Z84JP usa uma placa mãe baseada no chipset Intel 945PM. Ao contrário do 945GM, este chipset não tem vídeo onboard, por isso o notebook inclui um slot mobile PCI Express interno, onde você pode instalar uma placa de vídeo MXM, da série GeForce Go, o que permite montar um notebook com um desempenho 3D respeitável, usando uma GeForce Go 7900 GTX com 512MB, por exemplo. O chipset suporta processadores Intel baseados no soquete M, incluindo os Core 2 Duo (Meron), Core Duo (Yonah) e Pentium M (Dothan) e a placa possui dois slots para módulos SODIMM de memória, de até 2 GB cada, o que permite instalar até 4 GB. O barebone já vem com um drive DVD-RW, leitor de cartões, som, rede e modem onboard, transmissor Bluetooth e uma webcam integrada na tela, mas (além do processador, memória e placa de vídeo), faltam o HD e a placa wireless. Não existem limitações com relação à escolha do HD, você pode escolher qualquer modelo SATA de 2.5", incluindo os modelos de 7200 RPM. Apesar da placa-mãe ser baseada em um chipset Intel, você pode utilizar uma placa wireless de qualquer fabricante. A única observação é que o barebone utiliza um slot Express Mini, o que deixa de fora as placas wireless no formato mini- PCI. O MS-1058 é numa plataforma bem diferente. Em primeiro lugar, ele é baseado no chipset ATI Radeon Xpress 1100 (composto pelos RS485M e SB460), que inclui um chipset de vídeo onboard relativamente poderoso (pelo menos se comparado com os chipsets de vídeo integrado da Intel), mas em compensação não suporta o uso de uma placa MXM externa. Ele suporta processadores AMD soquete S1, incluindo, naturalmente, todos os modelos do Turion X2 e oferece suporte a módulos SODIMM de até 1 GB, permitindo um máximo de 2 GB de memória instalada. Assim como no caso do Asus Z84JP, o MSI MS-1058 inclui um drive DVD-RW, som, rede, modem, leitor de cartões, Bluetooth e um slot Express Mini para a conexão da placa wireless, mas, ao invés de uma interface SATA, ele ainda utiliza a boa e velha porta IDE para a conexão do HD, o que limita um pouco as escolhas, pois mesmo entre os HDs de 2.5", os modelos IDE são cada vez mais raros. Em agosto de 2007, o Z84JP custava US$ 973 e o MS-1058 custava US$ 719. Os preços podem parecer baixos a princípio, mas lembre-se de que estes são os preços nos EUA. Para comprá-los aqui no Brasil você teria que pagar o envio e os impostos de importação, o que dobraria o valor. Somando o valor do barebone, com o valor individual dos componentes, você logo percebe que o custo excede bastante o da maioria dos notebooks de baixo e médio custo. Este é o primeiro segredo dos barebones: eles não são vantajosos quando você quer montar um notebook de baixo custo, mas sim em casos onde você quer uma configuração mais parruda ou incomum. 935
  • 936. O principal motivo desta discrepância é que notebooks de baixo custo tem seu custo amortizado pelo grande volume de produção e são parcialmente subsidiados pelos modelos mais caros da mesma linha. Os barebones são quase sempre produzidos em pequena quantidade e por isso (depois de somados os custos individuais dos componentes) acabam saindo mais caro. A situação muda um pouco, entretanto, quando você quer comprar um notebook high-end. Como os fabricantes trabalham com margens de lucro muito maiores nos modelos topo de linha (justamente o oposto do que temos nos modelos de baixo custo), comprar os componentes separadamente pode sair mais barato, além de que um barebone lhe oferecerá melhores possibilidades de upgrade. Por exemplo, imagine o caso de alguém que quer desesperadamente um notebook para games. Todos sabemos que as opções de vídeo integrado atendem apenas jogadores ocasionais, nenhum aficionado ficaria satisfeito jogando o F.E.A.R a 20 FPS, usando as configurações mínimas, em uma ATI X200M, por exemplo. Presumindo que dinheiro não seja problema, esta seria uma situação onde um barebone poderia prestar bons serviços. Veja o caso do Clevo M590KE, por exemplo. Ele inclui uma tela de 20.1", suporta o uso de dois HDs SATA de 2.5" em RAID e suporta o uso de duas placas GeForce Go em SLI, com a possibilidade de usar duas GeForce Go 7950 GTX com 512 MB cada, ou (no caso de um notebook destinado a uso profissional) duas Quadro FX Go 2500M. Com relação ao processador, você pode utilizar um Turion X2 TL-66 (2.3 GHz), combinado com até 2 GB de memória. Ou seja, utilizando este barebone como base, você poderia montar um laptop com uma configuração superior à de muitos desktops. Clevo M590KE 936
  • 937. Naturalmente, isso tem um preço em termos de portabilidade. O M590KE pesa quase 7 kg e a bateria de 12 células dura pouco mais de meia hora rodando jogos pesados com duas placas em SLI. O barebone em si custa US$ 2259 (em Agosto de 2007), mas você poderia gastar mais de US$ 4000 no total (preço dos EUA), já que cada GeForce Go 7950 GTX custa US$ 390 e ainda temos o custo do processador, memória, placa wireless e HDs. Naturalmente, um desktop com um desempenho similar sairia brutalmente mais barato, mas o preço ainda é baixo se comparado com o de outros laptops de configuração similar. O maior problema com relação aos barebones, é a dificuldade em comprar os componentes aqui no Brasil. Uma coisa é comprar um notebook montado dentro de uma determinada configuração ou faixa de preço, outra é conseguir encontrar modelos específicos de barebones, processadores mobile e placas MXM à venda. Você pode perfeitamente comprar tudo online, em lojas do exterior, mas os gastos com o transporte e impostos acabam elevando muito os valores. Drivers Infelizmente, cada vez mais fabricantes optam por não fornecer um CD de quick restore e muitas vezes nem mesmo um CD de drivers junto com os notebooks vendidos, uma pequena economia, que acaba representando dor de cabeça para quem compra. Nesses casos, para gerar o quick-restore, você deve usar o utilitário incluído no sistema e fornecer um DVD virgem. O maior problema é que ele inclui apenas uma imagem do sistema, sem uma pasta com os drivers. Ao instalar uma cópia limpa do Windows, você precisa baixar os drivers e utilitários necessários no site do fabricante. Em muitos casos, além dos drivers, você precisa também de um software de gerenciamento para ativar os botões controlados via software, como o "Launch Manager", que controla o botão do transmissor da placa wireless e outras funções em notebooks da Acer. Vamos então a uma lista dos principais fabricantes: Acer: http://support.acer-euro.com/drivers/downloads.html ou http://www.cpsy.com.br/. HP: http://welcome.hp.com/country/br/pt/support.html Lenovo e IBM: http://www.lenovo.com/support/br/ (a página inclui também manuais técnicos detalhados para a maioria dos modelos). Toshiba: http://support.toshiba.com/ Asus: http://support.asus.com/download/ Averatec: http://www.averatec.com/customercare/downloads.asp Dell: http://support.dell.com/support/downloads/ 937
  • 938. Compal: Embora a Compal venda um número muito pequeno de notebooks sob sua própria marca, ela é a verdadeira fabricante de uma grande parcela dos notebooks vendidos pela Amazon, Toshiba e outros. O Amazon L81 é na verdade um Compal EL81, o Amazon L71 é um Compal DL71 e assim por diante. Os drivers para notebooks fabricados pela Compal podem ser encontrados no: http://www.compal.com/asp/driver_dnd/. Clevo: A Clevo é a verdadeira fabricante da maior parte (senão todos) os notebooks da Positivo, entre outros integradores nacionais. O Positivo V41, por exemplo, é na verdade um Clevo M540S. Os drivers estão disponíveis no: http://www.clevo.com.tw/download/ Além de drivers, as páginas de download da Compal e Clevo incluem manuais e até mesmo guias de desmontagem (para alguns modelos). As fotos incluídas nos manuais também ajudam a identificar os modelos vendidos pelos integradores nacionais em caso de dúvidas. 938
  • 939. Foto do manual do Clevo M540S e foto de divulgação do Positivo V41. Nota alguma semelhança? Criando uma imagem de recuperação Com relação ao CD de recuperação, outra opção é fazer um backup da instalação original usando o Partimage. Ele é um utilitário incluído em muitas distribuições Linux live-CD, que permite criar imagens compactadas do conteúdo da partição e restaurá-las quando desejado. O Partimage é uma ferramenta extremamente útil, que permite tanto fazer backup das partições do HD (o que permite restaurar a instalação do sistema, exatamente como estava, em caso de qualquer eventualidade) quanto clonar instalações do sistema, de forma a replicar a instalação em várias máquinas. Se você já usou o Norton Ghost, vai notar que o Partimage oferece funções muito semelhantes, com a vantagem de ser gratuito e mais fácil de usar. Além de oferecer suporte a partições FAT e NTFS, ele é capaz de manipular partições formatadas nos mais diversos sistemas de arquivos, incluindo EXT3, ReiserFS, XFS e outros sistemas de arquivos usados no Linux. Ele pode ser usado tanto para fazer imagens de instalações do Windows quanto imagens de instalações do Linux ou outros sistemas operacionais. Os arquivos de imagem podem ser salvos no próprio HD (caso ele esteja dividido em duas partições), em um HD externo, em um compartilhamento de rede ou, até mesmo em um pendrive, dependendo do tamanho da imagem de sistema que você precisar salvar. Em geral, gerar a imagem usando o Partimage é bem mais rápido do que ficar gravando os CDs de recuperação usando o utilitário oferecido pelo fabricante, além de garantir uma flexibilidade maior. 939
  • 940. O Partimage vem pré-instalado no Kurumin, de forma que você pode dar boot no sistema através do CD, montar a partição ou compartilhamento de rede onde a imagem será salva e gerar a imagem através do próprio CD. Também é possível usar um CD do Ubuntu ou outra distribuição live-cd, desde que você instale manualmente o pacote "partimage", que contém o programa. Se você está procurando uma distribuição minimalista, pode usar o System Rescue-CD (que também contém o Partimage), disponível no: http://www.sysresccd.org/. Ele exige um pouco mais de familiaridade com o sistema, mas não deixa de ser uma boa opção. Ao fazer a imagem da partição, o Partimage verifica seu conteúdo e salva apenas os dados, aproveitando para comprimir tudo usando o sistema de compressão escolhido por você. Isso permite gerar arquivos relativamente pequenos. Se você tiver uma instalação do sistema que está ocupando 3 GB de uma partição com 20 GB, vai acabar (na maior parte dos casos) com um arquivo compactado de imagem de pouco mais de 1 GB. O Partimage também é capaz de quebrar a imagem em vários arquivos (você especifica o tamanho desejado), permitindo que os backups possam ser facilmente gravados em DVD ou múltiplos CDs. Você pode chamá-lo usando o comando "sudo partimage" ou simplesmente "partimage", neste caso como root. Assim como ao particionar o HD usando o gparted, você não tem como criar ou restaurar imagens de partições que estão montadas, por isso, é fortemente recomendável que você sempre rode o Partimage usando uma distribuição Linux live-CD já que, dessa forma, todas as partições do HD ficam disponíveis sem restrições. A primeira tela mostra as partições disponíveis no HD. Lembre-se de que, no Linux, as partições primárias são numeradas de 1 a 4 e as partições lógicas de 5 em diante, mesmo que você possua apenas uma ou duas partições primárias. É fácil identificar as partições dentro do Partimage, pois ele exibe o tamanho e o sistema de arquivos de cada partição: 940
  • 941. Aqui temos um HD picotado em várias partições. As duas em NTFS correspondem a uma instalação do Windows e uma partição de dados, a hda3 é uma instalação do Kurumin, a hda5 é uma instalação do Debian, enquanto o hda6 é mais uma partição dados, que vou usar para salvar as imagens. O HD tem também uma partição livre, não-formatada, e uma partição swap, mas elas não fazem diferença nesse caso. Naturalmente, o backup da partição precisa ser gravado em algum lugar. Você pode usar o espaço livre em uma outra partição disponível no HD (pode ser até uma partição Windows) ou fazer o backup via rede. Por enquanto, vamos fazer as coisas localmente. No menu com as partições, use as setas para escolher qual partição deseja salvar. Em seguida, use a tecla TAB para selecionar o campo "Image file to create/use" e digite o local onde deseja salvar a imagem. Eu poderia guardar o backup de qualquer uma das partições em qualquer outra (com exceção da partição swap), desde que houvesse espaço livre disponível. Poderia fazer um backup do Debian na partição do Windows ou um backup do Windows na partição do Kurumin (desde que houvesse espaço livre suficiente, naturalmente). Mas, no meu caso, usarei a partição hda6, que possui bastante espaço livre. 941
  • 942. Para gravar qualquer coisa em uma partição, você precisa primeiro montá-la dentro de alguma pasta. Para isso, usamos o comando "mount", incluindo o dispositivo da partição e a pasta onde ela será montada (sempre como root), como em: # mount -t /dev/hda6 /mnt/hda6 O comando mount "genérico" serve para todo tipo de partições, com exceção das partições NTFS do Windows. A única forma de montá-las em modo leitura e escrita é usar o NTFS-3g. Se quisesse salvar a imagem na partição hda2, formatada em NTFS, precisaria usar o comando abaixo para montá-la especificando os parâmetros do NTFS-3g (ele só funciona em distribuições que trazem o NTFS-3g instalado): # ntfs-3g -o umask=0,silent /dev/hda1 /mnt/hda1 Note que você deve montar apenas a partição de destino, onde a imagem será salva. A partição de origem deve sempre permanecer desmontada, pois o Partimage precisa de acesso de baixo nível aos dados dentro da partição. Neste exemplo, estou salvando uma imagem da partição hda3, do Kurumin, dentro do arquivo "kurumin.iso", na pasta /mnt/hda6, que, por sua vez, é o ponto de montagem da minha partição de dados. Para isso, uso a opção "Save partition into a new image file": 942
  • 943. Esta interface de texto pode parecer estranha para quem não está acostumado, mas as funções são simples: a tecla Tab permite navegar entre os campos, as setas alternam entre as opções e a barra de espaço permite marcar e desmarcar opções. Depois de terminar, pressione F5, para ir para a próxima tela, ou F6, para sair. Na tela seguinte você terá várias opções para a criação da imagem: As opções selecionadas por default são justamente as que você vai usar na maior parte do tempo. Por isso, você pode perfeitamente pressionar a tecla F5 mais uma vez para continuar. A compressão em Gzip é a mais rápida, mas existe também a opção de usar o Bzip2, um algoritmo muito mais pesado, que gera arquivos até 10% menores, mas em compensação faz com que o processo de geração da imagem dure 3 vezes mais. Ao dividir em vários volumes, o Partimage adicionará uma extensão ".000", ".001", ".002", etc. aos arquivos, como em um arquivo .rar dividido em vários volumes. Na hora de restaurar a imagem, você precisa apenas colocá-los todos no mesmo diretório e apontar para o arquivo .000. Pressionando F5 novamente, você vai para a tela de criação da imagem. Inicialmente ele pede uma descrição para a imagem, onde você pode adicionar um texto que será mostrado ao restaurá-la. O texto é opcional, apenas para 943
  • 944. seu próprio controle. Você pode simplesmente pressionar o "Ok" para continuar. Esta última confirmação inicia oficialmente a criação da imagem. Agora é só ir tomar um café e voltar depois de alguns minutos. O principal determinante na velocidade de geração da imagem é o desempenho do processador. No meu caso, estou fazendo uma imagem de uma partição com 2 GB ocupados, usando compressão em gzip em um Pentium M de 1.73 GHz e o processo todo demorou pouco menos de 5 minutos: O tamanho final da imagem varia de acordo com o tipo de arquivos dentro da partição. Se for uma partição de sistema, com um monte de executáveis de programas, então provavelmente o Partimage conseguirá reduzir o tamanho do arquivo a aproximadamente um terço do original. O backup da partição com 2 GB de dados do exemplo resultou em um arquivo de 671 MB. Mas, por outro lado, se a partição estiver cheia de arquivos em .mp3, filmes em divx, imagens em .jpg ou outros tipos de arquivos já compactados, o índice de compressão será mínimo. Na hora de restaurar uma imagem, o processo é basicamente o mesmo: montar a partição ou CD/DVD onde está o arquivo e apontar a partição que será regravada e a localização do arquivo de imagem na tela principal do Partimage. A diferença é que agora você deve marcar a opção "Restore 944
  • 945. partition from an image file". O nome do arquivo deve ser fornecido exatamente como aparece no gerenciador de arquivos, incluindo o ".000" que o Partimage adiciona ao usar a opção "Image split mode > Into files whose size is". O último passo é a gravação da imagem propriamente dita, bem mais rápido do que quando geramos a imagem, já que é mais fácil descompactar um arquivo do que gerar o arquivo compactado. Uma dica importante é que você também pode salvar as imagens em compartilhamentos de rede e também restaurá-las a partir deles. Isso pode ser muito prático quando você administra uma rede com várias máquinas, pois pode salvar backups de todas as instalações em um servidor central e restaurá-las diretamente via rede. Para restaurar um micro, você precisaria apenas dar boot com o live-CD, configurar a rede, montar o compartilhamento do servidor e usar o Partimage para restaurar o sistema a partir da imagem correspondente. Concluindo, o Partimage não oferece a opção de fazer uma cópia completa do HD, apenas de partições isoladas. Mas, é possível fazer isso se você utilizar um comando adicional, para copiar também a trilha MBR e a tabela de partição do HD. Com as duas coisas em mãos é possível realmente clonar um HD inteiro. Para isso, são necessários mais dois comandos. Acesse o diretório onde você está armazenando as imagens e execute: 945
  • 946. # dd if=/dev/hda of=hda.mbr count=1 bs=512 Este comando faz uma cópia do setor de boot do HD, aqueles primeiros 512 bytes de extrema importância, que incluem o gerenciador de boot e também a tabela de partição do HD, salvando-o no arquivo "hda.mbr". Ao restaurar esta cópia do MBR em um HD limpo, ele ficará particionado exatamente da mesma forma que o primeiro (porém sem os dados). Se depois disto você restaurar também as imagens das partições, ficará com uma cópia idêntica de todo o conteúdo do HD. O HD de destino não precisa necessariamente ser do mesmo tamanho que o primeiro; você pode usar um HD maior sem problemas. Neste caso, o excedente ficará vago e você poderá criar novas partições depois. Naturalmente, o HD de destino não pode ser menor que o original, caso contrário você vai ficar com um particionamento inválido e dados faltando, ou seja, uma receita para o desastre. Na hora de restaurar os backups, acesse a pasta onde está o arquivo e inverta o comando, para que o MBR seja restaurado: # dd if=hda.mbr of=/dev/hda Se você tem um HD dividido em duas partições ("hda1" e "hda2", por exemplo), é necessário fazer imagens das duas partições usando o Partimage e fazer o backup da MBR usando o comando do dd. Na hora de restaurar, comece restaurando o MBR, deixando para regravar as imagens das partições por último. Baterias Embora o Wi-Fi e o Bluetooth tenham transformado as redes em redes wireless, ainda temos o problema da transmissão de energia. Seu notebook pode ficar conectado à rede wireless da sua casa continuamente, mas você ainda precisa ligá-lo na tomada a cada duas ou três horas para recarregar as baterias. Existem tecnologias experimentais para a transmissão de energia sem o uso de fios a curtas distâncias, que podem vir a eliminar essa necessidade nos próximos anos. Uma delas, mais convencional, é baseada no uso de indução para carregar as baterias de dispositivos de baixo consumo, como celulares e palmtops. Um módulo receptor é instalado dentro do aparelho, permitindo que ele seja carregado simplesmente por ser deixado sobre uma base: 946
  • 947. Essa tecnologia é comercializada pela SplashPower (splashpower.com) e é relativamente barata, de forma que pode vir a ser utilizada em um certo número de aparelhos a partir dos próximos anos. Entretanto, a funcionalidade é limitada, já que o aparelho precisa ficar sobre a base por algumas horas para ser carregado o que, na prática, não é muito diferente de usar um cradle, como no caso dos Palms. A segunda tecnologia, mais esotérica, é baseada no uso de ressonância, utilizando o mesmo princípio que faz com que objetos vibrem ao receberem ondas em uma determinada freqüência. A idéia é utilizar duas bobinas de cobre, desenvolvidas para ressoarem à mesma freqüência. Dessa forma, é possível transmitir energia de uma bobina para a outra de forma relativamente eficiente, já que a energia é canalizada diretamente para a segunda bobina, ao invés de ser irradiada em todas as direções. Esta tecnologia foi demostrada em junho de 2007 por pesquisadores do MIT, que utilizaram duas bobinas para transmitir energia suficiente para acender uma lâmpada de 60 watts a uma distância de 2 metros (http://web.mit.edu/isn/newsandevents/wireless_power.html): 947
  • 948. Foto da equipe do MIT, entre as duas bobinas usadas no experimento Teoricamente, seria possível transmitir energia a distâncias de até 5 metros, o que seria suficiente para que um notebook pudesse ficar continuamente ligado e recarregar as baterias enquanto estivesse dentro da mesma sala que o carregador. O problema é que atualmente as bobinas ainda são muito grandes e pesadas e a eficiência é baixa. Na demonstração, foram utilizadas boninas com 60 centímetros de diâmetro e a eficiência da transmissão foi de apenas 40% (ou seja, o sistema consumia 150 watts para transmitir 60 watts para a lâmpada). Ainda existe um longo caminho a percorrer até que sejam desenvolvidas bobinas pequenas e leves o suficiente a ponto de poderem ser usadas em um notebook. De qualquer forma, estas duas tecnologias são destinadas a substituírem os carregadores e eliminar a necessidade do uso de fios e não substituir as baterias, cujo uso só tende a aumentar. Elas (as baterias :) são tão onipresentes que seria difícil imaginar como seria o mundo sem elas. Infelizmente, não existe nenhuma lei de Moore para baterias: elas não dobram de capacidade a cada 18 meses como os processadores. Os avanços na área das baterias são muito mais lentos e incrementais, de forma que qualquer nova tecnologia é comemorada. Vamos então às principais tecnologias: Ni-Cad As baterias Ni-Cad ficam no meio do caminho entre a alta densidade energética das baterias Li-ion e a ineficiência das baterias de chumbo ácido. Por serem relativamente baratas, elas foram utilizadas em todo tipo de notebooks e aparelhos portáteis em geral ao longo da década de 1990. A principal característica das baterias Ni-Cad é o temível efeito memória, que ocorre quando a bateria recebe uma seqüência de cargas parciais. A bateria passa a armazenar cada vez menos energia, até que é virtualmente inutilizada. Isso acontece porque as baterias Ni-Cad são compostas por cristais microscópicos, desenvolvidos para proporcionar uma maior área de contato. 948
  • 949. Depois de algumas cargas parciais, os cristais começam a se juntar, formando cristais maiores. Quanto maiores os cristais, menor é a área de contato e menos energia a bateria é capaz de armazenar. É possível quebrar os cristais "exercitando" a bateria, através de uma série de ciclos de carga e descarga completa. Alguns carregadores utilizam pulsos de recarga, onde a tensão aplicada varia em ciclos de menos de um segundo. Estes pulsos ajudam a quebrar os cristais, acelerando o processo de recondicionamento. Outra técnica é fazer uma deep discharge, ou seja, uma "descarga profunda", onde a tensão das células é reduzida a um valor muito abaixo do normal, processo seguido por uma recarga completa. Uma bateria Ni-Cad bem conservada e exercitada periodicamente pode proporcionar de 1000 a 1500 ciclos de carga e descarga, o que é muito mais do que uma bateria Li-ion atual suporta. Entretanto, devido ao efeito memória, a maioria das baterias acabam sendo descartadas muito antes. Um segundo problema é que o cádmio usado nas baterias é extremamente tóxico. Conforme as baterias Ni-Cad cresciam em popularidade, maiores eram os estragos ambientais, o que acelerou sua substituição pelas baterias Ni-MH e Li-ion. Ni-MH Desenvolvidas a partir da década de 1970 e aperfeiçoadas ao longo da década de 1980, as baterias Ni-MH são uma evolução direta das Ni-Cad. Elas também utilizam o níquel como matéria prima básica, mas o cádmio é substituído por uma liga de metais não tóxicos, amenizando a questão ambiental. Naturalmente, as Ni-MH também possuem seus méritos técnicos. Elas possuem uma densidade energética cerca de 40% superior à das baterias Ni- Cad; ou seja, um notebook que tem 1:30 horas de autonomia utilizando uma bateria Ni-Cad, teria mais de 2:00 horas caso fosse utilizada uma bateria Ni-MH de dimensões similares. Outra vantagem é que elas são menos suscetíveis ao efeito memória. Realizar um ciclo completo de carga e descarga é normalmente suficiente para reverter os danos causados por algumas recargas parciais. Por outro lado, as baterias Ni-MH são um pouco mais caras de se produzir e suportam bem menos ciclos de recarga. Enquanto uma bateria Ni-Cad suporta mais de 1000 ciclos, uma bateria Ni-NH já apresenta sinais de envelhecimento após menos de 300 ciclos completos, chegando ao final de sua vida útil depois de cerca de 400 ciclos. Neste ponto, não existe muito o que fazer a não ser trocar as células. Falando em células, um ponto que facilitou a migração das baterias Ni-Cad para as Ni-MH é que ambas utilizam células de 1.2V. Isso permitiu que as Ni- MH substituíssem diretamente as antecessoras, sendo produzidas nos mesmos formatos e utilizando os mesmos carregadores. 949
  • 950. Originalmente, as baterias Ni-MH também demoravam mais para carregar, até o dobro do tempo que as baterias Ni-Cad. Com o tempo, os fabricantes passaram a desenvolver carregadores rápidos "inteligentes", que interrompem a recarga quando a bateria atinge seu limite, evitando danos. Embora as Ni-Cad tenham entrado em desuso, sobrevivendo apenas em alguns nichos, as Ni-MH ainda são as mais utilizadas em pilhas recarregáveis, baterias para telefones sem fio e outras áreas "menos nobres". Nos notebooks, palmtops e celulares, elas foram quase que completamente substituídas pelas Li-ion e Li-poli, que são o próximo passo da cadeia evolutiva. Li-ion As baterias Li-ion são o padrão atual. Elas são de longe mais complexas e temperamentais que as Ni-Cad e Ni-MH, mas, em compensação, possuem uma densidade energética de duas a três vezes maior que as baterias Ni-MH (considerando duas baterias do mesmo peso), variando de acordo com a técnica de fabricação utilizada. Outra vantagem é que elas não possuem efeito memória. Pelo contrário, descarregar a bateria completamente antes de carregar acaba servindo apenas para desperdiçar um ciclo de carga/descarga, tendo um efeito oposto do esperado. As baterias Li-Ion são uma tecnologia relativamente recente. Os primeiros testes foram feitos na década de 70, utilizando o lítio na forma de metal, com resultados quase sempre catastróficos. O lítio é um material muito instável e por isso as baterias explodiam, destruindo os equipamentos e até ferindo os operadores. Durante a década de 80, as pesquisas se concentraram no uso de íons de lítio, uma forma bem mais estável. Em 1991 a Sony lançou as primeiras baterias comercias. Como disse, as baterias Li-Ion são bastante temperamentais. Em agosto de 2006 a Dell e a Apple anunciaram um mega-recall, substituindo 5.9 milhões de baterias com células de um lote defeituoso, fabricado pela Sony. Estas células foram acidentalmente produzidas com lítio impuro, contaminado com traços de outros metais. Esta foto, publicada pelo theinquirer.net, mostra um dos principais riscos associados: 950
  • 951. Apesar de não parecer, esta é uma foto real, tirada durante uma conferência, onde um notebook com uma bateria defeituosa literalmente pegou fogo. Naturalmente, a possibilidade de isto acontecer com você é quase tão grande quanto a de ganhar na loteria, mas ela realmente existe. As células de baterias li-ion são bastante instáveis. A maior surpresa é como elas podem funcionar bem na maior parte do tempo, e não as unidades que explodem. :) As células podem vazar ou explodir se aquecidas a temperaturas superiores a 60 graus, ou caso sejam carregadas além de seu limite energético. E, como a foto mostra, isto não é apenas mito. Outro problema é que as células oxidam rapidamente caso completamente descarregadas, o que demanda uma grande atenção. Não seria de se esperar que o pobre usuário soubesse de tudo isso e ficasse com o cronômetro na mão, calculando o tempo exato de recarga da bateria. Para tornar as baterias confiáveis, todas as baterias Li-Ion usadas comercialmente possuem algum tipo de circuito inteligente, que monitora a carga da bateria. Ele interrompe o carregamento quando a bateria atinge uma tensão limite e interrompe o fornecimento quando a bateria está quase descarregada, a fim de evitar o descarregamento completo. A obrigatoriedade do uso do chip é o principal motivo das pilhas recarregáveis ainda serem todas Ni-MH ou Ni-Cad: seria muito dispendioso incluir um chip em cada pilha (fora o fato das células Li-ion trabalharem a 3.6V). 951
  • 952. Bateria Li-ion de um IBM Thinkpad desmontada Em geral, o "circuito inteligente" não é tão inteligente assim, pois se limita a monitorar a tensão fornecida pela bateria. Para evitar explosões acidentais, os fabricantes precisam trabalhar dentro de uma margem de tolerância, de forma que normalmente é usada apenas 80 a 90% da capacidade real da bateria. Outra questão interessante, sobretudo nos notebooks, é que as baterias são compostas por de três a nove células independentes. O circuito não tem como monitorar a tensão individual de cada célula, mas apenas do conjunto. Isso faz com que, em situações onde as células fiquem fora de balanço, ou em casos onde uma das células apresenta algum defeito prematuro, o circuito passe a interromper o fornecimento de energia após pouco tempo de uso. Surgem então os numerosos casos onde uma bateria que originalmente durava 2 horas, passa a durar 15 minutos, por exemplo. Na maioria dos notebooks, o circuito da bateria trabalha em conjunto com o BIOS da placa-mãe, o que abre margem para erros diversos. É comum que, depois de várias cargas parciais, o monitor do BIOS fique fora de balanço e passe a calcular a capacidade da bateria de forma errônea. Ele passa a sempre fazer recargas parciais, o que faz a carga da bateria durar cada vez menos, muito embora as células continuem perfeitamente saudáveis. É por isso que muitos notebooks incluem utilitários para "calibrar" a bateria, disponíveis no setup. Eles realizam um ciclo de carga e descarga completo, atualizando as medições. Outro (mais um) problema é que as baterias Li-ion "envelhecem" rapidamente, mesmo que não sejam usadas, pois o lítio é um metal extremamente instável, que reage com outros elementos. As baterias da década de 1990 normalmente duravam menos de 3 anos, quer a bateria fosse utilizada ou não. Depois do primeiro ano acontecia uma queda de 5 a 20% na autonomia (dependendo das condições de armazenamento da bateria), no final do segundo ano a bateria segurava apenas metade da carga e no final do terceiro não segurava mais carga alguma. As baterias suportavam em torno de apenas 300 ciclos de carga e descarga, de forma que uma bateria muito exigida chegava a durar apenas alguns meses. 952
  • 953. Com melhorias nas ligas e processos de fabricação utilizados, a durabilidade das baterias aumentou. Não é incomum que uma bateria Li-ion atual, conservada adequadamente, dure 4 ou 5 anos e suporte 500 ciclos de recarga ou mais. Apesar disso, os problemas fundamentais continuam. As baterias Li-ion se deterioram mais rapidamente quando completamente carregadas ou quando descarregadas, por isso o ideal é deixar a bateria com de 40 a 50% de carga quando for deixá-la sem uso. O calor acelera o processo, por isso, quanto mais frio o ambiente, melhor. Segundo o batteryuniversity, uma bateria completamente carregada, guardada numa estufa, a 60°C, pode perder mais de 40% de sua capacidade de armazenamento energético depois de apenas 3 meses, enquanto uma bateria conservada a 0°C, com 40% da carga, perderia apenas 2% depois de um ano. Evite descarregar a bateria completamente quando isso não é necessário. O melhor é simplesmente usar e carregar a bateria seguindo seu ciclo de uso. Outra dica é que a durabilidade da bateria é menor quando frequentemente submetida a descargas rápidas, por isso gravar DVDs no notebook usando a carga das baterias não é uma boa idéia :). A cada 20 ou 30 recargas, é interessante realizar um ciclo completo de carga e descarga, a fim de "calibrar" as medições do chip e do monitor do BIOS. A princípio, retirar a bateria de um notebook que fica ligado na tomada na maior parte do tempo seria uma boa idéia para aumentar sua (da bateria) vida útil. O problema é que a maioria dos notebooks usam a bateria como escape para picos de tensão provenientes da rede elétrica. Removendo a bateria, esta proteção é perdida, o que pode abreviar a vida útil do equipamento. Ao contrário das baterias Ni-Cad, que podem ser recuperadas de diversas maneiras caso vitimadas pelo efeito memória, não existe muito o que fazer com relação às baterias Li-Ion. A única forma de ressuscitar uma bateria que chegou ao final de sua vida útil seria abrir e trocar as células, o que é complicado (já as baterias são seladas e é difícil adquirir as células separadamente) e perigoso, pois o lítio dentro das células reage com o ar e as células podem explodir (lembra da foto? ;) caso a polaridade seja invertida. De qualquer forma, esta página inclui dicas de como desmontar uma bateria e substituir as células: http://www.electronics-lab.com/articles/Li_Ion_reconstruct/index_1.html Tentar recuperar uma bateria Li-ion através de uma descarga completa (como nas baterias Ni-Cad), é inútil. Só serviria para oxidar as células, acabando de vez com a bateria. Graças ao chip, as células de uma bateria Li-Ion nunca se descarregam completamente, pois o fornecimento é cortado quando a bateria ainda conserva de 10 a 20% da carga (de acordo com os parâmetros definidos pelo fabricante). 953
  • 954. Li-poly Ainda dentro da família do lítio, temos as baterias Li-poly, que são baterias "secas", que utilizam um tipo de filme plástico como eletrólito, em vez de utilizar líquido. Isto simplifica o design da bateria, o que permite produzir células ultra- finas, com até 1 mm de espessura. Exemplo de bateria Li-poly ultra-fina A principal limitação é que o polímero não é bom condutor, fazendo com que a bateria seja incapaz de fornecer grandes cargas, como as necessárias para disparar o flash de uma câmera digital, por exemplo. Com o tempo, surgiram baterias Li-poly "híbridas", que utilizam um tipo de gel como eletrólito, eliminando a limitação mas mantendo a espessura reduzida. Embora ainda caras, estas baterias vem ganhando espaço nos celulares e palmtops, pois são consideradas mais seguras que as baterias Li-ion tradicionais: 954
  • 955. Células de combustível As células de combustível produzem energia a partir da reação do hidrogênio com o oxigênio do ar, gerando apenas água, eletricidade e calor como subprodutos. A tecnologia de célula de combustível mais promissora para uso em portáteis é a DMFC (Direct Methanol Fuel Cell), onde é utilizado metanol (um tipo de álcool combustível, produzido a partir do gás natural). O metanol é, neste caso, utilizado como um meio de armazenamento do hidrogênio, o que permite a construção de células muito mais compactas do que seria se fosse utilizado hidrogênio pressurizado. Ao invés de queimar o combustível, como faria um motor de combustão, a célula de combustível combina o hidrogênio do metanol com oxigênio do ar, um processo bem mais seguro. Desde 2003, a NEC, IBM, Toshiba e outros fabricantes vêm demonstrando diversos protótipos de células de combustível destinadas a notebooks e palmtops. Na maioria dos casos, as células de combustível são utilizadas como uma bateria secundária, utilizada apenas quando a bateria interna se esgota. Em um protótipo demonstrado pela IBM em 2003, uma carga de 130 ml com uma mistura de metanol e água era capaz de gerar 72 watts-hora de energia, suficientes para manter um Thinkpad ligado por 8 horas. Entretanto, os cartuchos de metanol eram relativamente caros e a célula de combustível pesava tanto quanto o próprio Thinkpad: Este protótipo demonstrado pela Antig em Janeiro de 2006 já é bem mais compacto, desenvolvido para ser encaixado na baia do CD-ROM. A idéia é que ele pudesse ser utilizado como bateria complementar, instalado apenas quando necessário: 955
  • 956. Em 2005, a Toshiba anunciou o desenvolvimento de uma célula DMFC em miniatura, que poderia ser usada em palmtops e outros aparelhos portáteis. Segundo o divulgado, ela poderia manter um mp3player ligado por 20 horas (autonomia similar ao que obtemos usando uma pilha AAA), usando uma carga de 2 ml de uma solução de metanol diluído em água: Esta célula produz apenas 0.1 watt de energia, a uma tensão de 0.65v, por isso é utilizável apenas em aparelhos muito pequenos. As células para notebook precisam produzir 200 vezes mais energia, por isso são tão grandes. Existem dois tipos de células de combustível. As menores (como este modelo da Toshiba) trabalham de forma "passiva", onde o combustível flui de forma natural dentro da célula. As para notebooks utilizam um sistema "ativo", onde uma bomba força o metanol e o ar dentro da célula e um exaustor resfria a 956
  • 957. célula, evitando que ela superaqueça. As células ativas produzem muito mais energia, mas em compensação são muito maiores. De qualquer forma, o principal atrativo das células de combustível é a boa autonomia, combinada com a rapidez da recarga. Ao invés de precisar ligar o aparelho no carregador, basta encher o reservatório periodicamente, de forma que, levando metanol suficiente, você poderia manter o notebook ligado continuamente por semanas em algum local remoto, sem eletricidade. A vida útil das células atuais é estimada em 3.000 horas de uso, mas ela tente a aumentar nas próximas gerações. Recarga de um mp3player com célula de combustível Apesar disso, o futuro das células de combustível nos portáteis ainda é incerto. Atualmente, elas são muito mais caras que as baterias, o que elimina qualquer vantagem relacionada ao custo. Elas também são grandes, de forma que é mais simples utilizar uma bateria de maior capacidade quando o problema é aumentar a autonomia. De 2005 para cá, diversos fabricantes tem anunciado baterias Li-ion de carga ultra-rápida, que podem ser recarregadas em até 1 minuto (como num protótipo demonstrado pela Toshiba em 2005: http://www.dpreview.com/news/0503/05032903tosh1minbatt.asp). Esta nova geração de baterias elimina outro atrativo das células de combustível, que é a rapidez da recarga. Naturalmente, as células de combustível também não param de evoluir, com células mais eficientes, baratas e compactas. Estima-se que em 2010 já existirão células baratas o suficiente para começar a competir com as baterias Li-ion. Embora seja impossível prever quem será o vencedor, a briga promete. 957
  • 958. Calculando a capacidade e autonomia Mais um tema interessante relacionado às baterias é como calcular a autonomia do seu notebook, baseado na bateria usada. Por exemplo, veja o caso de um Acer 2423WXCi: Ele usa uma bateria Li-ion de 6 células, que fornece 4000 mAh a 11.1V. A tensão nominal das células Li-ion é 3.6V, mas isso varia sutilmente de acordo com a tecnologia usada. Para chegar aos 11.1V, foram utilizadas células de 3.7V, onde temos as células distribuídas em duas séries de 3 células ligadas em série: 958
  • 959. Se temos 4000 mAh (miliAmperes-hora) a 11.1V, significa que a bateria fornece um total de aproximadamente 44.4 watts-hora de energia. Isso significa que a bateria dura cerca de 2 horas caso o notebook consuma 22 watts (o que é mais ou menos a média deste modelo ao assistir a um Divx, sem usar o CD-ROM nem a placa wireless), 1 hora e 20 minutos caso consuma 33 watts (o que está próximo do máximo observado ao assistir um DVD com o brilho da tela no máximo) ou quase 3 horas caso o consumo fique em torno de 15 watts (algo que você atinge ao usar o note apenas para tarefas leves e deixando o brilho da tela no mínimo). No Linux, você pode ver as especificações técnicas da bateria usando o comando: $ cat /proc/acpi/battery/BAT0/info 959
  • 960. Por aqui você sabe que o notebook usa uma bateria Li-Ion e que a bateria está começando a apresentar sinais de deterioração, pois na última carga (last full capacity) atingiu apenas 3803 mAh. Quando a bateria começa a ficar viciada, a carga máxima atingida vai ficando cada vez mais abaixo da máxima, acompanhada por uma redução proporcional da autonomia. Através dessas informações você tem como verificar a saúde da bateria sem precisar ficar carregando e descarregando para cronometrar o tempo de autonomia. Para ver a carga atual da bateria (sem depender do ícone do lado do relógio) e o consumo atual do note, use o comando: $ cat /proc/acpi/battery/BAT0/status ou: $ cat /proc/acpi/battery/BAT0/state Este comando deve ser executado com o note desligado da tomada, para que o sistema possa medir o consumo da bateria. Este screenshot mostra o comando executado num Asus M5, que utiliza uma bateria de 3 células. O campo "present rate" indica o consumo atual (no caso 14.27 watts-hora) e o campo "remaining capacity" mostra a energia restante (19.4 watts-hora, suficientes para pouco mais de 1 hora e 15 minutos de autonomia). 960
  • 961. Note que a tensão informada no campo "present voltage" (12094 mV) é bem maior que a tensão nominal da bateria, que é de apenas 11.1V (ou 11100 mV). Isto é perfeitamente normal, pois a tensão fornecida pela bateria varia de acordo com a carga. Uma bateria de 11.1V oscila entre mais de 12V quando completamente carregada e 10.8V ou menos quando descarregada. Reguladores de tensão incluídos no notebook ajustam a tensão, fornecendo as tensões corretas aos componentes internos. Outra observação é que em alguns modelos, como na maioria dos HP, o consumo é informado em micro-amperes e não em micro-watts, tornando o cálculo um pouco mais complicado, já que você precisa multiplicar pela tensão da bateria. Se o comando "cat /proc/acpi/battery/BAT0/status" informa que um HP NX6110 está consumindo 2000 micro-amperes e ele utiliza uma bateria de 11.1V, significa que ele está consumindo 22220 mili-watts (2000 x 11.1), ou seja, 22.2 watts. Se ele utiliza uma bateria de 4400 mAh, significa que, mantendo esta média de consumo, a bateria duraria exatamente duas horas. 961
  • 962. Capítulo 12: Manutenção de notebooks Os notebooks estão se tornando um item cada vez mais popular, muitas vezes substituindo o desktop. Apesar disso, um dos principais problemas com relação aos notebooks continua sendo a manutenção. Antigamente, existia o mito de que, apesar de mais caros, os notebooks eram construídos com componentes de melhor qualidade e que, por isso, raramente davam problemas. Isso pode ter sido verdade no passado, mas, hoje em dia, com modelos cada vez mais baratos e fabricantes trabalhando com margens cada vez mais estreitas, os notebooks apresentam tantos problemas de hardware quanto os desktops, ou talvez até mais. Caímos então no alto custo da manutenção. Uma simples limpeza pode custar mais de 350 reais em uma autorizada. Uma troca de tela custa quase metade do valor de um equipamento novo e assim por diante. Muita gente acaba vendendo notebooks com telas apagadas ou problemas de travamento a preço de banana, quando o problema é, na verdade, simples de resolver. De certa forma, o hardware de um notebook é muito similar ao de um desktop. O notebook usa barramento PCI Express (ou AGP), usa memória DDR/DDR2/DDR3 e possui até slots PCI (na forma do encaixe mini-PCI, usado normalmente para a placa wireless e do slot PC-Card). A grande diferença é que no notebook quase tudo é miniaturizado, o que leva ao uso de componentes mais compactos e que consomem menos energia. Ao contrário dos desktops, as telas LCD dos notebooks não utilizam o conversor analógico-digital. Elas são digitais por natureza, o que economiza componentes e reduz o consumo. Os módulos de memória também são miniaturizados. Antigamente, os módulos de memória para notebook eram muito caros, com alguns fabricantes cobrando preços extorsivos pelos upgrades, mas atualmente os preços estão muito mais próximos dos módulos tradicionais. Módulo SODIMM Na maioria dos notebooks, é fácil substituir o HD ou instalar mais um módulo de memória. Em alguns modelos, o compartimento do cooler também está bem acessível, o que facilita a limpeza (aquele problema clássico do notebook começar a travar ou desligar depois de um ano de uso, é quase sempre causado justamente pelo acúmulo de sujeira). 962
  • 963. Vou aproveitar este final de livro para falar um pouco sobre manutenção de notebooks, abordando desmontagem, substituição de peças, upgrades e resolução de problemas diversos. Desmontagem e dicas Para começar, vamos a um exemplo de desmontagem usando um Toshiba A70, um modelo que geralmente precisa de bastante manutenção: Cada notebook possui um procedimento de desmontagem ligeiramente diferente, mas os passos básicos podem ser resumidos ao seguinte: 1- Remova a bateria e abra os compartimentos do HD e memória e/ou da placa wireless. 2- Remova o HD, drive de CD/DVD e a placa wireless, sem se esquecer de desconectar os cabos da antena, que é integrada à tela. Tome muito cuidado com os conectores, cabos, flats, etc. pois eles são fáceis de quebrar e muito difíceis de substituir. 963
  • 964. 3- Remova todos os parafusos da parte inferior da carcaça. Quase sempre existem alguns escondidos no compartimento da bateria, HD, memória ou placa wireless. Em alguns casos, o drive óptico (ou o HD) é preso por um parafuso escondido sob o teclado. 4- Todo notebook possui um protetor removível entre a tela e o teclado, algumas vezes bem duro de desencaixar. Depois de removê-lo, você pode retirar o teclado, o que vai lhe dar acesso à placa-mãe e a outros parafusos. 5- Remova a tela com cuidado, depois de desconectar todos os cabos e remover os parafusos que a prendem à carcaça. 6- Desconecte o flat do touchpad, os cabos dos speakers e remova a parte superior da carcaça, tomando cuidado para não deixar dentes no plástico. 7- Remova o restante dos parafusos e outras placas visíveis e retire a placa-mãe. Em alguns casos o cooler e o processador estão bem acessíveis e podem ser removidos logo no início da desmontagem, mas em outros você só tem acesso a eles depois de remover a placa-mãe. Uma dica é que procure tirar sempre algumas fotos durante a desmontagem do note. Como são sempre muitos passos, é muito comum que você se esqueça da posição de alguns dos parafusos, ou da ordem de instalação de alguns componentes ou cabos na hora de remontá-lo. As fotos ajudam bastante nesses casos. Desmontando um Toshiba A70 Vamos então à desmontagem do A70. Ele usa um processador Pentium 4 de 3.06 GHz, por isso é bem pesado e utiliza dois exaustores: 964
  • 965. O primeiro passo é virar o note e remover os protetores do compartimento da placa wireless, do HD e a bateria. O protetor do HD inclui um encaixe plástico além dos dois parafusos, por isso é um pouco duro de remover: O próximo passo é remover o HD. Ele é preso pelos mesmos dois parafusos que prendem o protetor. É só puxar com cuidado: 965
  • 966. A placa wireless é instalada no slot mini-PCI e presa por duas presilhas, similares às do módulo de memória. Tome cuidado ao desconectar os fios da antena, pois os conectores são bastante frágeis. Aproveite para remover o módulo de memória, caso instalado. Este notebook vem com 256 MB soldados à placa-mãe, por isso possui um único soquete vago para upgrade de memória. Muitos modelos possuem dois. 966
  • 967. Remova em seguida o drive de DVD, que é preso pelo parafuso ao lado da etiqueta de identificação. Em quase todos os notebooks temos algo similar, com o drive preso por um único parafuso na parte inferior e, por isso, fácil de remover: Com exceção dos drives "slim", usados em alguns notebooks ultracompactos, os drives para notebooks são padronizados, permitindo que você substitua um drive com problemas ou instale um gravador de DVDs muito facilmente. Aqui temos o drive do Toshiba A70, junto com o drive do HP NX6110. Veja que o conector e a espessura dos dois são idênticos, a única coisa que muda é a presilha de metal que prende o drive à carcaça, presa a ele por dois parafusos. Basta trocar as presilhas e um drive pode ser usado no outro note sem problema algum. A principal observação é que alguns notebooks antigos, com leitores de CD, não se dão muito bem com gravadores de CD e DVD, pois estes consomem mais energia. 967
  • 968. Chegamos então à parte mais chata, que é remover todos os demais parafusos da parte inferior. São 16 parafusos no total, fora os 4 que já removemos. Lembre-se de que é comum as lojas cobrirem alguns dos parafusos com as etiquetas de garantia, justamente para dificultar a desmontagem. É comum que todo notebook possua um ou dois parafusos "escondidos", ou em locais de difícil acesso, por isso é importante dar sempre uma última olhada mais cuidadosa. No caso do A70 temos dois parafusos dentro do compartimento da bateria e este aqui, dentro do compartimento do HD, que fica especialmente camuflado: 968
  • 969. Depois de terminar, vire o notebook. Agora vem o maior "segredo" da desmontagem de notes em geral: para remover o teclado e continuar com o desmantelamento, você deve remover o protetor que fica entre a tela e o teclado. Em alguns notebooks, ele fica preso por parafusos na parte inferior (no HP NX6110, por exemplo, existem dois parafusos embaixo da bateria). Ele é preso por um conjunto de encaixes, por isso é bem duro de remover. É preciso usar um pouco de força, mas, ao mesmo tempo, ter muito cuidado para não quebrar ou danificar o acabamento. Neste modelo, o jeito mais fácil de removê-lo é usar uma chave de fenda para desencaixar a parte sobre a base do monitor, primeiro um lado, depois o outro, e depois puxar os dois simultaneamente: 969
  • 970. Remova agora os dois parafusos que prendem o teclado. Existe também uma trava no meio, que precisa ser solta usando a chave de fenda: O teclado é conectado à placa-mãe através de um cabo flat. Afrouxe os dois lados da trava para desconectá-lo. Nunca puxe o teclado de uma vez ao desmontar qualquer notebook, pois você pode arrebentar o flat (o que vai lhe 970
  • 971. obrigar a comprar outro teclado ou passar algumas horas tentando reparar o flat partido) ou, pior, danificar o conector na placa-mãe: O teclado é outro componente que é personalizado pelos fabricantes. Além do layout das teclas, varia o tamanho e espaçamento entre elas, o que altera o tamanho físico do teclado de acordo com as dimensões do note. É normal que os fabricantes utilizem o mesmo modelo de teclado em diversos modelos de notes e até que o mesmo modelo de teclado seja utilizado por mais de um fabricante, mas não isso não é regra. Continuando, é hora de remover a tela. Puxe o cabo da antena wireless com cuidado (ele passa para o outro lado, através de uma abertura na carcaça), desconecte o cabo do LCD (ele possui um terra que é preso à carcaça por um parafuso) e depois remova os parafusos que prendem a tela. São quatro no total, dois na parte traseira, ao lado do conector da fonte e da entrada do modem, e mais dois na parte metálica da base: 971
  • 972. Aqui temos o Toshiba sem a tela. Já vi gente usando o note assim, ligado a um monitor externo, depois de quebrar a tela e desistir de trocá-la por causa do preço ;). Em casos em que o LCD realmente quebra ou trinca, não existe outra saída senão realmente trocar a tela, o que muitas vezes sai mais da metade do valor 972
  • 973. do note. Entretanto, casos em que a tela está intacta e apenas a iluminação não funciona são quase sempre sanáveis. Veremos mais detalhes a seguir. Continuando, a cobertura é presa por seis parafusos (dois na parte prateada e mais quatro na parte preta da carcaça). Além de removê-los, você deve desconectar o flat do touchpad e os dois conectores dos speakers: Em seguida vem a parte mais delicada, que é remover a cobertura, tendo o cuidado de não quebrar as travas plásticas, nem danificar o acabamento. Uma das formas mais práticas é usar uma chave de fenda bem fina para começar a soltar pela parte próxima ao encaixe da tela e depois usar um cartão magnético, ou uma paleta de violão para soltar o restante. Não use a chave de fenda, senão você vai deixar a carcaça cheia de dentes e arranhados. Se a cobertura estiver presa em algum ponto, é provável que você tenha esquecido de remover algum dos parafusos nas etapas anteriores: 973
  • 974. Chegamos agora à parte final, que é remover a placa-mãe. Comece tirando os quatro parafusos hexagonais dos conectores do vídeo e da porta paralela: Remova agora o protetor do soquete PCMCIA (dummy card) e os dois parafusos pretos que prendem a placa-mãe à carcaça: 974
  • 975. A placa é presa também pelo slot PCMCIA, pelo potenciômetro que ajusta o áudio e as saídas de som. É preciso desencaixar com cuidado, usando a chave de fenda: Levante a placa e puxe-a com cuidado. Neste notebook o cooler do processador é preso à própria placa, na face inferior: 975
  • 976. Depois de remover a placa, retire os quatro parafusos prateados que prendem os exaustores do cooler: Vire a placa com cuidado, desconecte os dois cabos de força e remova os exaustores. O A70 usa um cooler duplo, com um dissipador sobre o 976
  • 977. processador e um dissipador auxiliar, ligado ao primeiro através de um hot- pipe. Muita gente acha que o segundo exaustor é para o chipset de vídeo ATI, mas na verdade este modelo utiliza um chipset ATI 9100 IGP, de baixo consumo (e baixo desempenho :), que não precisa de refrigeração adicional. O cooler gigantesco é mesmo apenas para o processador: Neste notebook o cooler é preso diretamente à placa-mãe e a única forma de ter acesso a ele é fazendo uma desmontagem completa do notebook. O engenheiro que inventou este design devia estar com dor de barriga, ou com raiva do mundo, pois o cooler está na pior posição possível do ponto de vista da manutenção. Com o tempo, o cooler acumula poeira, o que prejudica a eficiência do sistema de ventilação, fazendo com que o processador superaqueça. Neste modelo, ao atingir uma temperatura limite, o notebook simplesmente desliga sozinho, levando embora qualquer trabalho não-salvo. 977
  • 978. Em qualquer notebook, é recomendável limpar o cooler preventivamente a cada 6 meses ou um ano, de acordo com o volume de uso. Quanto maior é a dissipação térmica do processador, maior precisa ser a rotação do cooler, acentuando o problema. Os notebooks baseados em processadores Pentium 4 ou Athlon são os que precisam de limpezas mais freqüentes. O acúmulo de sujeira é de longe o motivo mais comum de problemas relacionados a travamentos e desligamentos espontâneos e as autorizadas chegam a cobrar R$ 350 por uma limpeza. Este A70 foi limpo há pouco mais de 4 meses e, mesmo assim, veja que a poeira já encobriu quase que completamente a abertura do cooler: 978
  • 979. Na hora de limpar, você pode usar um jato de ar comprimido (o ideal) ou, na falta deste, usar um pincel. Aproveite também para trocar a pasta térmica do processador a cada limpeza. Aqui temos a placa-mãe depois de terminada a desmontagem: 979
  • 980. Na maioria dos notebooks, é possível fazer upgrade do processador, substituindo-o por outro processador da mesma família, com clock ligeiramente maior. Entretanto, isso nem sempre é recomendável, pois um processador mais rápido também consumirá mais energia, sobrecarregando os circuitos de alimentação e gerando superaquecimento. Mas, existem casos em que o upgrade pode ser feito sem maiores problemas, como ao substituir um Celeron- M por um Pentium-M do mesmo clock, ou ao substituir o processador por outro baseado em uma arquitetura mais recente, que apesar do aumento do clock, tenha uma dissipação térmica similar. Nesse caso, verifique a compatibilidade da placa-mãe. Uma dica na hora de remontar o notebook é que neste modelo as entradas para os parafusos possuem uma legenda. As com o "F3" são para os parafusos menores e as com o "F8" são pra os grandes. Nem todos os fabricantes utilizam estas legendas, mas, quando presentes, elas facilitam um pouco: 980
  • 981. Desmontando o HP 6110NX Vamos agora a um segundo exemplo, desmontando um HP 6110NX. A construção deste notebook é quase idêntica à do 6105, 6115 e do 6125 (e outros da série 61xx), mudando apenas o processador, a placa-mãe e alguns outros componentes internos, mas sem mudanças no processo de desmontagem: Você perceberá que apesar de todas as diferenças técnicas e nos componentes usados, a lógica da desmontagem é mais ou menos a mesma da do Toshiba A70. Vou aproveitar para incluir mais algumas dicas gerais, que se aplicam também a outros modelos. Comece virando o notebook, removendo a bateria, os protetores dos slots PCMCIA e abrindo o compartimento da memória e placa wireless. O conector que você vê próximo ao módulo de memória é usado pela bateria adicional, que é um dos atrativos deste modelo. Ela é usada pelo sistema antes da bateria principal, aumentando bastante a autonomia. Muitos modelos mais antigos possuem encaixes similares, porém utilizados pela docking station: 981
  • 982. Continuando com a desmontagem, abra agora o compartimento do HD, remova o parafuso que prende o HD à carcaça e remova o HD com cuidado, puxando a fita para a esquerda: Assim como o CD-ROM, o HD é um componente padronizado, que pode ser facilmente substituído. Cada modelo de notebook utiliza uma baia um pouco 982
  • 983. diferente, por isso o HD é instalado dentro de um suporte metálico e inclui um conector destacável. Ao substituir o HD, você só precisa desmontar o conjunto: Além dos HDs de 2.5" slim, que são os mais comuns, existem HDs de 1.8", usados em alguns notebooks ultraportáteis e HDs de 2.5" regulares, utilizados em notebooks antigos, que possuem o dobro da espessura e por isso não podem ser usados nos modelos atuais. O conector IDE dos HDs de 2.5" inclui quatro pinos extras, que fornecem alimentação elétrica ao drive, por isso não existe um conector molex separado, como no caso dos HDs de 3.5" para desktops. Outra diferença é que os HDs IDE de 2.5" utilizam apenas tensão de 5V, ao contrário dos HDs de 3.5", que recebem também 12V (usada pelo motor de rotação). O motivo é que os discos usados nos HDs de 2.5" são muito mais leves e por isso o motor de rotação pode trabalhar com uma tensão mais baixa, o que ajuda a reduzir o consumo elétrico do drive. Nos HDs SATA temos uma organização similar, onde o cabo de dados e os pinos de energia formam um único conector: 983
  • 984. Conector para o HD SATA no notebook e os contatos do drive As portas SATA usadas em notebooks não são diferentes das usadas em micros desktop. É possível inclusive ligar um HD SATA de 3.5" em um notebook usando o cabo apropriado. O maior problema é que o conector do notebook não fornece a tensão de 12V usada pelos drives de 3.5" (e nem é capaz de fornecer a quantidade de energia utilizada por eles) de forma que, além do cabo SATA macho/fêmea, você precisaria ligar o HD de 3.5" ao conector de força de uma fonte ATX externa, ou seja, é possível, mas não seria uma solução muito elegante. Continuando com a desmontagem, depois do HD, remova agora a placa wireless e o módulo de memória (caso esteja instalado), tomando cuidado ao desconectar os fios da antena. Como de praxe, tome o cuidado de sempre manusear as placas pelas bordas, nunca encostando nos chips ou contatos, a menos que esteja usando uma pulseira antiestática: 984
  • 985. Remova agora os dois parafusos dentro do compartimento da bateria, que prendem o protetor do teclado: Para remover estes dois parafusos, você vai precisar de uma chave torx. Na verdade, você vai precisar de um kit com chaves torx de vários tamanhos para desmontar diversos notebooks, impressoras e outros eletrônicos, por isso, se ainda não tem um, é hora de atualizar seu kit de ferramentas. 985
  • 986. A vantagem das chaves torx é que elas oferecem um encaixe muito mais preciso do que as chaves de fenda, evitando que o parafuso seja espanado, ou que a chave escorregue ao apertar um parafuso em algum local delicado, danificando a placa. Outra questão é que, por serem menos comuns, o uso desestimula a desmontagem por leigos, por isso os fabricantes geralmente gostam delas. A boa e velha chave torx Remova também os dois parafusos escondidos dentro do compartimento do módulo de memória. Eles prendem o teclado e o drive de DVD: 986
  • 987. Precisamos agora remover o protetor do teclado. Existem duas formas de fazer isso neste modelo. A primeira é usar uma chave de fenda bem fina para desencaixar pelos cantos, tomando bastante cuidado para não deixar dentes no plástico: A segunda forma, um pouco mais exótica, é deixar o notebook de lado e usar uma chave de fenda para pressionar através dos encaixes dos dois parafusos 987
  • 988. dentro do compartimento da bateria, que acabamos de remover. Tome cuidado para não fazer muita força e acabar derrubando o notebook: Com o protetor fora do caminho, chegou a hora de remover o teclado. Além dos dois parafusos dentro do compartimento da memória, ele é preso por mais um, na frente da tecla F4: 988
  • 989. Ao remover o teclado, tome muito cuidado com o cabo flat. Note que ele fica na mesma posição do flat do A70. Esta é a posição padrão: Em seguida, remova o exaustor do cooler, que é preso por dois parafusos simples. Veja que, por usar um processador de baixo consumo (um Celeron-M, baseado no core Dothan), o NX6110 usa um cooler mais "normal", muito menor e mais leve que o usado no Toshiba A70. Como de praxe, o exaustor é dividido em dois blocos, ligados por um hot pipe, uma barra de cobre, contendo uma pequena quantidade de um fluído vaporizável, que se encarrega de mover o calor do bloco sobre o processador (mais quente) para o bloco "frio", refrigerado pelo exaustor. Este design permite montar o cooler na horizontal, o que é essencial no caso de um notebook. O chipset é refrigerado passivamente por outro pequeno dissipador, também de cobre, mas sem ligação com o exaustor principal: 989
  • 990. Desmontando até este ponto, você tem acesso à saída de ar do dissipador e pode aproveitar para fazer uma manutenção preventiva, removendo a sujeira acumulada. Veja também que existe um segundo slot de memória escondido (ao invés dos chips serem soldados diretamente à placa-mãe, como no A70), permitindo que o módulo original seja substituído em caso de upgrade: 990
  • 991. O próximo passo é remover a tela. Comece desconectando com cuidado o cabo principal, puxando a fita. Aproveite para puxar os fios da antena. Eles são presos por uma pequena presilha metálica na placa-mãe, que você pode abrir com cuidado usando uma chave de fenda ou pinça bem pequena: Uma curiosidade é que neste modelo a tela representa mais de 50% do peso total do note (descontando a bateria). Se a HP utilizasse uma tela mais moderna, o note poderia ser bem mais leve :). A tela é presa por um total de 6 parafusos. Dois sobre as dobradiças metálicas e mais quatro no painel traseiro: 991
  • 992. O drive de DVD é preso por um dos dois parafusos que prendem o teclado. Você pode tanto removê-lo logo no início da desmontagem quanto deixar para fazer isso depois de remover a tela. No caso deste modelo, tanto faz: Temos agora acesso às entranhas do note. Uma vantagem deste modelo é que você não precisa abrir a carcaça para ter acesso aos componentes internos. 992
  • 993. Neste ponto você pode remover o dissipador e o próprio processador ou substituir a bateria da placa-mãe: Continuando, remova todos os demais parafusos da carcaça. Temos mais um na parte superior, próximo ao teclado e mais 13 na parte inferior. Desencaixe também os conectores da bateria do CMOS e do touchpad, ambos situados bem ao lado do conector usado pelo flat do teclado. Depois de remover todos os parafusos, desencaixe a parte superior da carcaça, procurando os encaixes com cuidado. Ao contrário do A70, os encaixes são bem duros, por isso o cartão magnético não será de muita ajuda. O jeito é usar a chave de fenda no vinco entre as duas partes para ir soltando os encaixes um a um. Existem dois encaixes, um na área do drive de DVD e outro ao lado do conector do modem, que são especialmente duros. Cuidado para não quebrá-los. 993
  • 994. Temos aqui uma foto com o note aberto. Veja que a placa-mãe se ajusta precisamente ao espaço livre entre o compartimento da bateria, drive de DVD, HD e slot PC-Card. Este nível de personalização torna quase impossível o surgimento de placas e gabinetes padrão, como temos nos desktops: Nesta última foto, você pode notar que a bateria do CMOS foi removida. Na maioria dos modelos, incluindo este HP, a bateria é ligada à placa-mãe através 994
  • 995. de um conector de dois pinos. Assim como nos desktops, a bateria do CMOS precisa ser trocada depois de dois ou três anos. Na maioria dos casos, uma bateria descarregada simplesmente faz com que o note passe a perder as configurações do Setup, mas alguns modelos da série Thinkpad passam a exibir um código de erro e não inicializam enquanto a bateria não é substituída. Mesmo que não consiga encontrar outra bateria de reposição, você pode remover os dois pólos do conector e soldá-los a outra bateria de lítio de 3V. Existem ainda casos onde a bateria é soldada à placa-mãe (como na foto abaixo à direita), neste caso você precisa substituí-la com cuidado usando o ferro de solda: Assim como em diversos outros modelos, os conectores de áudio fazem parte de uma daughter-board, que é ligada à placa-mãe através de dois cabos. O segundo é usado apenas em alguns modelos, que incluem saídas adicionais. Neste modelo ele vem desconectado: 995
  • 996. Continuando, desconecte os dois cabos da placa de áudio e o cabo do speaker: Remova os 4 parafusos que prendem o speaker à carcaça e remova-o. A posição dos speakers varia muito de um modelo para outro, de acordo com o design adotado pelo fabricante. Eles podem ser instalados na base da tela 996
  • 997. (como no Toshiba A10), dos dois lados do touchpad ou mesmo na parte inferior (como no Asus M5200). A placa-mãe é presa por um último parafuso, escondido ao lado do conector do modem. É importante enfatizá-lo, pois ele fica bem no canto, em uma parte da placa que pode facilmente se quebrar caso você tente removê-la sem primeiro tirar o parafuso, o que inutilizaria o equipamento. Aproveite para remover também o exaustor do cooler: 997
  • 998. É necessário remover também os dois parafusos hexagonais do conector VGA, que também prendem a placa: Outra pegadinha é que os dois fios da placa MDC são presos ao conector do modem. Você deve desconectar o cabo no lado conectado à placa MDC, ou simplesmente remover a placa MDC de uma vez: 998
  • 999. O MDC (Mobile Daughter Card ou Modem Daughter Card) é um slot de expansão similar ao slot AMR encontrado nas placas para desktop. Ele é usado por modems e transmissores bluetooth (nos notebooks atuais, ambos são combinados em uma única placa MDC), permitindo que os componentes analógicos (que precisam ser certificados pelos órgãos de telecomunicação) sejam separados do restante da placa-mãe. Para os fabricantes, é possível integrar todos os componentes diretamente à placa-mãe, eliminando a necessidade de usar a placa MDC, mas isso abre brecha para problemas no processo de certificação atrasarem todo o projeto. Como disse, nos notebooks atuais a placa MDC combina o modem e o transmissor bluetooth. Embora difíceis de encontrar, estas placas MDC "dual" podem ser usadas para atualizar notebooks sem bluetooth, sem necessidade de usar um transmissor USB externo. Uma observação é que é necessário haver suporte por parte do BIOS, caso contrário a placa pode se recusar a funcionar com a nova placa, exibindo uma mensagem de "Invalid Daughter Card". Normalmente, a própria placa inclui uma pequena antena para o transmissor bluetooth, embora em alguns modelos seja usada uma antena separada. As placas que combinam modem e bluetooth são também chamadas de BMDC (Bluetooth and Modem Daughter Card) e o slot na placa-mãe neste caso se chama CDC. Continuando, temos aqui a placa-mãe em carreira solo, já sem o dissipador do processador: 999
  • 1000. As placas para notebook são feitas sob medida para o uso em conjunto com a carcaça, um dos fatores que permitem que os notebooks sejam tão compactos. O problema é que isso impede que a placa-mãe seja substituída por outra, como em um desktop. Em caso de danos não reparáveis à placa-mãe, a única solução é substituí-la por outra exatamente igual. É possível comprar placas de reposição, mas assim como no caso das telas, o preço é muitas vezes proibitivo. A solução mais comum acaba sendo procurar por uma placa de segunda mão, retirada de outro notebook do mesmo modelo (ou similar, onde a placa seja compatível) que foi inutilizado por outros problemas. Para remover o processador, basta girar o parafuso de segurança. Esta placa- mãe aceita também processadores Pentium-M com core Dothan, de até 1.6 GHz. Eles oferecem a vantagem de oferecerem suporte ao SpeedStep, que reduz bastante o consumo do processador em relação ao Celeron, aumentando a autonomia da bateria. Embora não seja tão comum ver processadores mobile à venda, caso consiga um por um bom preço, seria um bom upgrade. 1000
  • 1001. Desmontando a tela Depois dos problemas diversos gerados por acúmulo de sujeira e (possivelmente) por problemas relacionados ao HD ou ao drive óptico, as telas de LCD são os componentes que mais dão problemas nos notebooks. É possível comprar telas de reposição diretamente com os fabricantes, mas o preço é quase sempre proibitivo. Nos sites de leilão, é possível encontrar algumas telas usadas, geralmente retiradas de notebooks com defeitos diversos e vendidas separadamente. As telas usadas são uma opção mais palatável em termos de custo, mas é difícil encontrar o modelo exato, e você nunca sabe qual é a real condição do equipamento antes de tê-lo em mãos. Trocar uma tela é um procedimento relativamente simples. Você precisa fazer apenas uma desmontagem parcial do notebook, removendo uma e instalando a outra. Mas, trocar a tela inteira é quase sempre um desperdício, com exceção, claro, de situações onde o notebook cai e o LCD realmente se quebra. Por enquanto, a grande maioria dos LCDs utilizam as boas e velhas lâmpadas de catodo frio, embora os com LEDs estejam lentamente se popularizando. É importante não confundir estas telas de LCD que usam LEDs para iluminação com telas OLED, que são uma tecnologia completamente diferente. Assim como as lâmpadas florescentes domésticas, as lâmpadas de catodo frio trabalham com uma tensão altíssima (geralmente 1300 volts), necessária para transformar os gases dentro da lâmpada no plasma que gera a luz. Nas lâmpadas florescentes é usado um reator para gerar a tensão necessária, enquanto em um notebook é usado o FL inverter, um tipo de reator 1001
  • 1002. ultracompacto, que transforma os 5 volts fornecidos pela placa-mãe nos 1300 volts ou mais usados pelas lâmpadas de catodo frio. Para economizar energia e também para cortar custos, é normalmente usada uma única lâmpada, instalada na parte superior da tela. Em alguns notebooks, são usadas duas lâmpadas, mas eles são bastante raros. A luz gerada pela lâmpada é espalhada por toda a tela graças a uma tela difusora, que fica atrás do LCD. Na verdade, nenhum LCD tem uma iluminação completamente uniforme, mas os atuais conseguem ser "bons o bastante" para que você não note nenhuma variação visível. A tela de LCD em si é extremamente durável. Normalmente o LCD precisa ser trocado apenas quando é trincado ou quebrado. As lâmpadas de catodo frio possuem uma vida útil estimada em entre 10 mil horas (nos notebooks mais antigos) e 30 mil horas (nos notebooks atuais) de uso contínuo, o que, excetuando defeitos de fabricação, seriam suficientes para quase 4 anos de uso contínuo. Temos ainda o FL inverter, cuja vida útil é quase sempre menor que a da lâmpada, e a placa de circuito contendo o controlador da tela. O FL inverter é justamente o responsável pela maior parte dos defeitos. O defeito mais comum é a tela simplesmente "apagar" devido a falhas no sistema de iluminação. Olhando para a tela sob luz forte, você percebe que ela está funcionando, mas sem a iluminação não é possível ver com clareza. Os problemas de tela apagada são quase sempre causados pelo FL Inverter. O FL Inverter raramente "queima", ele apenas perde eficiência com o uso, passando a fornecer uma tensão um pouco mais baixa que o normal. Com as 1002
  • 1003. lâmpadas de catodo frio é "tudo ou nada", se a tensão fornecida for apenas um pouco abaixo da normal, elas simplesmente não acendem. Mesmo ao reduzir a luminosidade da tela (o que é feito reduzindo a luminosidade das luzes), é reduzida apenas a amperagem, e não a tensão. Revisando: a amperagem determina a quantidade de energia que é fornecida, enquanto a tensão determina a vazão. Fazendo uma analogia com um rio, a tensão seria a largura do rio, enquanto a amperagem seria a vazão de água. É possível tanto ter uma tensão muito alta e uma amperagem muito baixa (como na saída do FL Inverter) quanto uma amperagem incrivelmente alta e uma tensão muito baixa, como no caso de um processador Pentium 4. Continuando, embora muito mais raro, existem casos em que as próprias lâmpadas queimam. O sintoma é o mesmo do da falha do FL-inverter, ou seja, a tela simplesmente se apaga. Entretanto, a queima da lâmpada é muito mais rara que os defeitos no FL inverter, de forma que ele é sempre o primeiro suspeito. Em geral, apenas cerca de 5% dos defeitos de tela apagada são causados por queima das lâmpadas. O maior culpado é mesmo o FL Inverter. Outro defeito comum, que é geralmente também causado pelo FL Inverter, é o backlight continuar funcionando, mas com um nível progressivamente menor de brilho. Nesse caso, o inverter continua funcionando com a tensão normal, mas passa a fornecer uma amperagem cada vez mais baixa. Este problema é menos grave do que a tela simplesmente deixar de acender, mas também pode ser corrigido com a troca do inverter. As lâmpadas de catodo frio também perdem luminosidade durante sua vida útil, mas a redução no brilho é muito menor, raramente perceptível. Existe também uma pequena possibilidade do problema ser com a placa controladora, dentro da tela, ou com o próprio chipset de vídeo ou outro componente na placa-mãe, o que pode causar sintomas diversos, desde a falta de uma das três cores primárias (deixando a tela com as cores alteradas) até distorções diversas na imagem. O primeiro passo para consertar a maioria dos defeitos é desmontar a tela. Na maioria dos casos, é possível desmontar a tela diretamente, sem precisar removê-la da carcaça do note. Mas, é muito mais fácil e recomendável trabalhar na tela depois de removê-la: 1003
  • 1004. Toda tela de notebook é desmontável, porém nem sempre isso é muito simples, pois temos sempre uma combinação de parafusos, encaixes e partes coladas. A primeira coisa a fazer é encontrar e remover os parafusos. Eles são sempre escondidos embaixo das borrachinhas de apoio ou de adesivos. Comece localizando e removendo cada com a ajuda de uma chave de fenda pequena, ou usando um estilete; sempre com muito cuidado: 1004
  • 1005. Na hora de remontar o monitor, use um pequeno pingo de cola branca em cada uma das borrachinhas. Isso ajuda a colá-las novamente. Existem também "kits" com borrachinhas avulsas para substituição, assim como no caso das esponjas para impressoras, mas eles são muito difíceis de encontrar. Neste monitor da HP, por exemplo, temos um total de 12 parafusos: 4 na parte inferior, 4 na parte superior e mais 2 em cada lateral: 1005
  • 1006. Este esquema, de um dos manuais da IBM, mostra as posições dos parafusos na tela de um Thinkpad T40. Veja que a posição dos parafusos é similar à da tela do HP: Depois de remover todos os parafusos, use um cartão magnético ou uma paleta de violão para desencaixar a parte frontal do bezel (a cobertura plástica). Evite usar a chave de fenda, pois ela pode escorregar e fazer um risco medonho na tela. Normalmente, além dos encaixes, os fabricantes usam cola ou algum tipo de adesivo, o que torna alguns pontos bem duros de descolar. 1006
  • 1007. O FL Inverter é uma plaquinha localizada na base da tela. Como ele é um componente que trabalha com alta tensão, ele vem sempre protegido por uma capa plástica e o alerta de praxe, avisando sobre o risco de choques. Removendo a proteção você tem acesso à placa de circuito: 1007
  • 1008. Em alguns casos, o FL inverter possui um potenciômetro (similar ao encontrado no laser dos drivers de CD-ROM), que permite ajustar a tensão de entrada do inversor. Quando presente, ele pode ser usado como uma solução emergencial enquanto espera a chegada do item de reposição. Girando o potenciômetro no sentido horário você aumenta a potência e para o sentido anti-horário diminui. Quase sempre, em casos em que o inversor não está queimado, você pode estender a vida útil do FL inverter aumentando um pouco a tensão de entrada. Gire o potenciômetro cerca 10 graus no sentido horário (ou seja, 1/36 de uma volta completa, bem pouco). Em seguida, remonte a tela e faça o teste: 1008
  • 1009. Se a tela voltar a apagar depois de algumas semanas de uso, você pode repetir o procedimento mais uma vez. Se ela falhar novamente depois de algum tempo, é hora de realmente trocar o FL inverter. O potenciômetro é extremamente sensível, por isso você deve sempre ajustá-lo em pequenos incrementos. Se você quiser um exemplo "marcante" do que acontece ao aumentar muito a tensão de entrada do FL Inverter, pegue um drive de CD condenado, desmonte e procure pelo trimpot, um parafusinho parecido com o regulador de tensão do FL Inverter, instalado próximo à lente do laser. Dê uma ou duas voltar completas, em sentido horário, e monte novamente o drive. Ao ligar o micro e colocar um CD qualquer no drive, você vai ouvir um "vuuuummmm", seguido por um estalo e um leve cheiro de queimado. Desmonte novamente o drive e você verá vários componentes queimados próximos ao laser. O drive foi inutilizado de vez. É mais ou menos isso que acontece ao aumentar demais a saída do FL inverter em um notebook. Você pode queimar as lâmpadas, queimar de vez o próprio FL inverter ou mesmo sobrecarregar os circuitos de alimentação na placa-mãe, possivelmente inutilizando o equipamento. Como disse, ao ajustar o FL inverter, todo o cuidado é pouco. Continuando, em casos em que o problema é com as lâmpadas, ou com o LCD em si, prossiga a desmontagem, removendo os parafusos que prendem a tela à carcaça: 1009
  • 1010. Uma dica é que em casos de telas quebradas, sai muito mais barato comprar um LCD de segunda mão (trocando apenas o LCD e aproveitando a carcaça) do que comprar a tela completa. Em geral, cada fabricante trabalha com alguns poucos modelos de telas diferentes, mudando apenas a carcaça de um modelo para o outro. Muitas vezes, o mesmo modelo de LCD é usado em notebooks de três ou quatro marcas diferentes. Se a tela for do mesmo tamanho e usar o mesmo conector, é quase certo que ela pode ser usada. Você pode também importar uma tela de reposição através do http://www.screentekinc.com ou outro dos links que cito mais adiante. Em muitos casos é possível identificar a tela de reposição através do modelo do note, mas o ideal é desmontar a tela e procurar pelo part number. No caso desta tela da HP, o LCD é preso à carcaça por seis parafusos, quatro na base e mais dois na parte superior. Depois de remover a tela, você precisa retirar mais quatro parafusos, que prendem as dobradiças: 1010
  • 1011. As antenas da placa wireless fazem parte da carcaça, e não da tela em si, por isso você não precisa se preocupar com elas ao substituir a tela. Apenas tome cuidado com os fios, pois eles são bastante frágeis. Aqui temos a tela desmontada, esperando para ser substituída. Em alguns casos a tela de reposição virá com outro cabo de vídeo, mas na maioria dos casos, você precisa aproveitar o mesmo cabo. Basta desencaixá-lo com 1011
  • 1012. cuidado, removendo os adesivos. As telas de reposição incluem o conjunto completo, incluindo as lâmpadas. Da tela antiga, você aproveita apenas a carcaça, o FL inverter e o cabo de vídeo: A proteção de alumínio que muitas vezes envolve a tela serve como refletor, para evitar qualquer perda de luz e, ao mesmo tempo, como uma proteção para a tela enquanto está fora da carcaça. Neste modelo ele é colado pelas bordas e por isso dá um bom trabalho removê-lo. É preciso usar um estilete para ir descolando cuidadosamente: 1012
  • 1013. Aqui temos a placa lógica da tela. A parte branca faz parte o difusor, responsável por espalhar a luz gerada pelas lâmpadas de catodo frio. Note que do lado direito temos a etiqueta com a identificação do fabricante e o part number, útil ao procurar uma tela de reposição: Note que o cabo flat e os fios do conector da placa-mãe são bastante frágeis, por isso inspiram cuidado redobrado. 1013
  • 1014. Localizando defeitos Diferentemente de um desktop, onde você pode solucionar problemas simplesmente na base da tentativa e erro, trocando peças até descobrir qual é o culpado, nos notebooks isso nem sempre é possível, já que a maior parte dos componentes são diretamente integrados à placa-mãe e você dificilmente terá um LCD ou outra fonte de alimentação compatível (por exemplo) para testar. Na maior parte dos casos, você precisa identificar o problema e certificar-se de que o componente X precisa mesmo ser substituído, para só então encomendar a peça de reposição e poder fazer o conserto. Um erro de diagnóstico pode sair muito caro, levando-o à compra de uma nova placa-mãe quando o defeito era em um dos cabos flat, por exemplo. Vamos então a um guia rápido de como localizar defeitos ao dar manutenção em notebooks e, assim, descobrir qual componente precisa ser reparado ou substituído. Não liga Se o notebook simplesmente não dá nenhum sinal de vida, a primeira coisa a se verificar é a fonte de alimentação. Não confie que a fonte está funcionando só porque o led está aceso, use um multímetro para medir a tensão de saída da fonte, ajustando-o para medir a tensão em uma escala de 20V. Compare a medição do multímetro com os valores informados na etiqueta da fonte. A fonte deve fornecer a tensão de saída especificada na etiqueta, com uma margem de tolerância de 5% para mais ou para menos: 1014
  • 1015. Além da possibilidade da fonte ter queimado devido a alguma intempérie, também é comum que fontes de baixa qualidade apresentem capacitores estufados e outros defeitos após alguns meses de uso. A fonte pode então passar a oferecer uma tensão cada vez mais baixa, até que o notebook simplesmente não ligue e não inicie a carga da bateria. Na maioria dos casos, a solução mais barata é reparar a fonte. As fontes usadas em notebooks não são diferentes das usadas em monitores de LCD e outros periféricos, por isso um técnico especializado em manutenção de fontes pode resolver a maioria dos defeitos sem muita dificuldade. Ao optar por trocar a fonte, você pode tanto procurar outra fonte idêntica, do mesmo fabricante, ou comprar um fonte "curinga", onde são fornecidos diversos encaixes, de forma que a fonte possa ser usada em conjunto com um grande número de modelos: Essas fontes são muito comuns no Ebay (cheque a categoria "Computers & Networking > Desktop & Laptop Accessories > Adapters, Chargers for Laptops"), embora a qualidade nem sempre seja das melhores. Em qualquer um dos casos, não se esqueça de verificar a tensão de saída (novamente usando o multímetro) antes de ligar a nova fonte no note. Se a fonte está fornecendo a tensão correta, a próxima possibilidade é que as soldas do encaixe para o conector da fonte na placa-mãe do note estejam quebradas. Este defeito é muito comum nos Toshiba M35X, A65, A70, A75 e outros modelos, onde o conector é diretamente soldado na placa-mãe e fica preso apenas pelas soldas, sem um bom suporte na carcaça. Embora isso exija uma certa dose de habilidade manual, é sempre possível desmontar o note, remover a placa-mãe e refazer as soldas do conector. Assim como nos desktops, problemas de mal contato e oxidação são muito comuns. Experimente sempre desconectar o HD, o drive óptico, a placa wireless e outros componentes não-essenciais e limpar os contatos dos módulos de memória. Se o notebook tiver dois slots de memória, experimente instalar o módulo no segundo slot. Se tiver dois módulos, experimente ligá-lo 1015
  • 1016. com apenas um e assim por diante. Outra observação é que alguns notebooks (sobretudo modelos antigos) não ligam se a bateria não estiver instalada. Instabilidade Ainda mais comuns do que os casos em que o notebook simplesmente "morre" são os casos de instabilidade, onde o notebook trava, apresenta erros diversos ou simplesmente desliga sozinho de tempos em tempos, ou nos momentos de maior atividade. Assim como em um desktop, problemas de estabilidade podem ser causados pelos mais diversos fatores, incluindo problemas de software, problemas de superaquecimento causado pelo acúmulo de pó nos dissipadores, defeitos nos módulos de memória, entre outras possibilidades, por isso é quase sempre necessário fazer uma checagem geral, verificando diversas possibilidades até finalmente conseguir descobrir a fonte do problema. A primeira coisa a fazer é dar boot com uma distribuição Linux live-cd com que você tenha familiaridade. Use o sistema por algum tempo, execute algumas tarefas pesadas (como compactar e descompactar grandes quantidades de arquivos, por exemplo) e monitore as respostas do sistema. Se os problemas de estabilidade se manifestam apenas no Windows, muito provavelmente o problema se restringe aos softwares e drivers instalados e pode ser resolvido com uma simples reinstalação do sistema. Se os problemas continuam mesmo depois de descartar o fator software, o próximo passo é fazer um teste completo da memória usando o memtest, já que a memória passa a ser a próxima suspeita. O mais comum é que o note possua dois slots de memória, um externo, acessível através das tampas inferiores, e outro interno, acessível depois de remover o teclado (como no HP6110). Nesses casos, você só precisa identificar qual dos módulos apresentou o defeito e substituí-lo. Se o defeito for nos últimos endereços, é possível também usar as dicas que vimos no capítulo sobre memória para limitar a quantidade de memória usada pelo sistema e, assim, evitar o uso da parte onde estão as células defeituosas. Como a grande maioria dos notebooks utilizam memória compartilhada para o vídeo, defeitos na memória podem causar também o aparecimento de falhas na imagem, incluindo o aparecimento de linhas horizontais ou verticais. Se o defeito se restringir à área de memória utilizada pelo chipset de vídeo (normalmente os primeiros endereços do módulo), o sistema pode funcionar de forma perfeitamente estável (com os problemas se restringindo ao vídeo), por isso é importante sempre checar a memória antes de colocar a culpa no LCD ou na controladora de vídeo. Em casos em que os chips referentes ao módulo interno vêm soldados à placa- mãe do notebook, a situação fica mais complicada, já que você não tem como substituir os chips de memória diretamente: 1016
  • 1017. A solução "correta" nesse caso seria substituir a placa-mãe. Algumas autorizadas possuem câmaras de vapor e são capazes de substituir os módulos, mas não é o tipo de coisa que você pode fazer usando um ferro de solda. Se o reparo não for possível e você chegar ao ponto de decidir descartar a placa, uma última solução desesperada que você pode tentar é remover os chips de memória (com muito cuidado, para evitar danificar outros componentes) e passar a usar um módulo instalado no slot de expansão. Se não houver nenhuma trava relacionada ao software, o BIOS vai detectar a remoção da memória integrada e passará a usar o módulo instalado no slot. Se o notebook funciona de forma aparentemente normal por algum tempo, mas trava, reinicia ou desliga ao executar tarefas pesadas, muito provavelmente temos um problema de superaquecimento. A solução neste caso é remover o cooler do processador, fazer uma boa limpeza e substituir a pasta térmica do processador. Em alguns notes o cooler fica bem acessível através das tampas inferiores, mas em outros é preciso desmontar o note para chegar até ele. Uma opção rápida para desobstruir o exaustor sem precisar desmontar o notebook é usar um jato de ar comprimido na saída de ar. O problema neste caso é que você apenas espalha a sujeira dentro do note, ao invés de removê- la. Isso faz com que o fluxo de ar gerado pelo cooler acabe movendo o pó novamente para a saída do cooler, fazendo com que o problema de superaquecimento reapareça mais rápido do que demoraria se você tivesse feito uma limpeza completa. Além do acúmulo de sujeira nos dissipadores, é comum a entrada de pó dentro do próprio motor de rotação do cooler, o que causa o aparecimento de um ruído irritante e faz com que o exaustor gire cada vez mais devagar (ou até pare completamente). A solução nesse caso é desmontar o exaustor e fazer uma boa limpeza interna. Na maioria dos coolers para notebook, o motor e a hélice são presos ao corpo principal apenas pelo conjunto de ímãs, de forma que basta puxar. Em alguns casos as duas partes são presas por uma presilha, escondida sob uma etiqueta. Limpe bem as partes internas do motor, usando um cotonete embebido em álcool isopropílico e coloque um pouco (pouco!) de pó de grafite antes de fechar. Ele funciona como um lubrificante seco, que faz seu papel sem o risco 1017
  • 1018. de ressecar ou se misturar à sujeira com o tempo. O pó de grafite é usado para desemperrar fechaduras e pode ser encontrado facilmente em lojas de ferragens ou lojas de 1.99. HD e DVD Assim como nos desktops, os HDs de notebook também apresentam defeitos mecânicos e muitas vezes precisam ser substituídos. Por sorte, os HDs são um componente padronizado, de forma que você pode substituir o drive em caso de defeito ou ao fazer upgrade sem muitas dificuldades. A principal cuidado ao comprar é verificar se o HD usa interface IDE ou SATA. Em casos de perda de dados, os procedimentos de recuperação são os mesmos de um desktop. Você pode remover o HD do notebook e plugá-lo em outro micro usando uma gaveta USB ou um adaptador para instalá-lo diretamente nas portas IDE ou SATA do desktop. É possível encontrar tanto adaptadores para drives de 2.5" IDE (velhos conhecidos de quem trabalha com manutenção) quanto adaptadores para os novos drives de 2.5" SATA. Por serem relativamente raros, estes adaptadores podem custar muitas vezes R$ 50 ou mais em lojas do Brasil, mas são muito baratos se comprados no Ebay. Outra opção é dar boot no próprio notebook, usando uma distribuição Linux live-CD, e copiar os dados para um compartilhamento de rede, ou um HD externo. Isso permite acessar os dados e fazer a recuperação muito mais facilmente, sem precisar abrir o note e sem precisar de um segundo micro. Carregando um CD de boot e um HD externo (ou pelo menos um pendrive), você poderia recuperar os dados diretamente no local, sem precisar de ferramentas extras. Em casos em que os dados foram apagados e você precisa usar um programa de recuperação, como o Easy Recovery ou o PC Inspector para recuperá-los, um opção é fazer uma imagem do HD usando o dd (como vimos no tópico de recuperação de dados do capítulo sobre HDs) a partir do próprio live-CD (salvando a imagem em um HD externo), restaurar a imagem em outro HD, instalado em um desktop (obtendo, assim, um clone do HD original) e rodar o programa de recuperação no HD clonado. Dessa forma, você não corre o risco de piorar as coisas manipulando os dados salvos no HD original. Assim como no caso dos HDs, os drives ópticos são padronizados e podem ser substituídos, inclusive usando um drive removido de outro notebook. Em muitos casos, os problemas de leitura podem ser causados pelo acúmulo de sujeira na lente ou no mecanismo de leitura do drive. Nesse caso, uma boa limpeza e lubrificação pode resolver. 1018
  • 1019. Defeitos na tela Defeitos na tela são possivelmente os mais comuns. Como vimos, problemas de "tela apagada" são quase sempre relacionados ao FL inverter e podem ser reparados com a substituição deste. Os casos de defeitos relacionados às lâmpadas de catodo frio são mais raros, mas a possibilidade nunca deve ser descartada, sobretudo em notebooks com mais tempo de uso. As lâmpadas de catodo frio são um componente do LCD, mas podem ser substituídas separadamente, caso você encontre peças de reposição. É preciso extremo cuidado ao substituí-las, pois elas são bastante frágeis (imagine uma lâmpada fluorescente comprida e muito fina). Lâmpada de catodo frio testada fora do LCD Em notebooks que utilizam LEDs para a iluminação da tela, os problemas são muito mais raros, já que eles não utilizam o FL inverter (os LEDs utilizam tensão de 5V ou 3.3V, fornecida diretamente pelos circuitos reguladores da placa-mãe) e são utilizados um número muito grande de LEDs, de forma que a queima de um ou alguns deles não causa uma perda considerável de luminosidade. Em alguns casos mais raros, o problema pode ser com os circuitos de alimentação na placa-mãe (causado por capacitores estufados, por exemplo). Esses defeitos são relativamente raros nos notebooks atuais, pois os fabricantes têm adotado o uso de capacitores de estado sólido, que são muito mais duráveis que os capacitores eletrolíticos, como você pode ver na foto a seguir: 1019
  • 1020. Cada pixel do LCD é formado por um conjunto de três transístores, um para cada cor. Quando alguns dos transístores passam a queimar, seja qual for o motivo, a tela passa a apresentar um número crescente de bad-pixels. Eles são relativamente benignos, já que não impedem o uso da tela, apenas têm um aspecto visual desagradável. O aparecimento de bad-pixels causados pelo "envelhecimento" da tela era comum em notebooks antigos, mas as telas atuais possuem uma qualidade de fabricação muito superior e por isso eles se tornaram um problema mais raro. Em um notebook atual, se a tela não vem com bad-pixels de fábrica, é muito difícil que eles apareçam posteriormente. Um problema mais grave é a corrupção da tela, causada por defeitos na placa controladora. Nesse caso, o LCD pode apresentar desde linhas horizontais ou verticais ou defeitos de atualização em imagens em movimento, até um borrão completo em vez da imagem: Você pode diferenciar os defeitos no LCD de defeitos causados pela memória ou defeitos no controlador de vídeo (que faz parte da placa-mãe) usando um monitor externo. Na maioria dos notebooks, você precisa pressionar uma 1020
  • 1021. combinação de teclas, como Fn+F4, Fn+F5, Fn+F7 ou Fn+F8, para ativar o monitor externo. Se a imagem aparece corrompida no LCD, mas fica perfeita no monitor externo, então o problema é ou nos cabos ou no próprio LCD. Esse tipo de defeito é causado por defeitos na placa controladora incluída na tela, e não pelo LCD em si. Em muitos casos a controladora é presa à tela por um cabo flat e pode ser substituída, mas em muitos ela é soldada, de forma que só é possível trocá-la em conjunto com o LCD. Também não é comum encontrar apenas a controladora à venda, de forma que você acaba tendo que substituir todo o LCD. LCD desmontado, mostrando a placa controladora Nem sempre vale a pena substituir o LCD em caso de defeito, pois nos notebooks mais baratos, a tela custa mais de metade do valor de um note novo. Em muitos casos vale mais à pena comprar outro note e passar a usar o antigo como desktop (usando um monitor, teclado e mouse externos), ou desmontá-lo e vender as peças. Se, por outro lado, a imagem aparece corrompida tanto no LCD quanto no monitor externo, então o problema está em outro lugar e não adianta perder tempo trocando o LCD. Se o problema estiver na memória, você pode solucioná-lo usando as dicas anteriores. Se, por outro lado, o defeito for no controlador de vídeo, a situação fica mais complicada, já que ele é integrado à placa-mãe ou ao próprio chipset, lhe obrigando a trocar toda a placa. Muitos notebooks utilizam placas de vídeo dedicadas. Além das placas MXM e AXION, existem ainda formatos proprietários, usados em modelos específicos, como nesta placa com chipset ATI usada em um Acer Aspire 1350: 1021
  • 1022. Placa proprietária usada em um Acer Aspire 1350 (à esquerda) e uma placa alternativa para o mesmo modelo, baseada em um chipset diferente Nesses casos, não apenas o chipset de vídeo, mas também a memória fazem parte de um módulo separado, que pode ser substituído em caso de problemas. Os módulos MXM e AXION são relativamente bem padronizados, de forma que você pode encontrar placas de reposição em lojas online diversas e nos sites de leilão, mas os módulos proprietários são componentes incomuns, que geralmente são vendidos apenas pelo próprio fabricante. Uma observação é que em alguns notebooks determinadas configurações de resolução e refresh podem fazer a tela ficar fora de sincronismo, assim como em um monitor para micros de mesa. Se o LCD exibe corretamente a tela do setup, mas a imagem fica embaralhada depois do carregamento do sistema, muito provavelmente é este o caso. Lembre-se também de que a regra do mal contato também vale para notebooks. Antes de descartar qualquer componente, experimente sempre limpar os contatos, desencaixar e re- encaixar os conectores e assim por diante. 1022
  • 1023. Modem e placa wireless Assim como nos desktops, os modems discados incluídos nos notebooks podem se queimar ao receber uma descarga através da linha telefônica. O único motivo disso ser menos comum nos notebooks é que eles não costumam ficar o tempo todo ligados na linha telefônica como é o caso de muitos desktops. Na maioria dos notebooks, o modem acaba nem sendo usado. De qualquer forma, em caso de queima do modem, quase sempre o dano se restringe à placa MDC, que contém os componentes analógicos do modem. Você pode substituir a placa por outra retirada de um note similar. Placa MDC com os componentes analógicos do modem Ao contrário do modem, é muito raro que a placa wireless apresente qualquer defeito, já que ela não é vulnerável a descargas externas como ele. A possibilidade da placa wireless se queimar ou apresentar defeito não é maior do que a do chipset da placa-mãe, por exemplo. A maioria dos "defeitos" relacionados à placa wireless são relacionados a problemas de configuração. Por exemplo, na maioria dos notebooks, o botão que ativa e desativa o transmissor da placa wireless é controlado através de funções do ACPI, o que faz com que ele só funcione depois de instalar o driver ou o utilitário correspondente do fabricante. Na maioria dos notebooks da Acer, por exemplo, você precisa instalar (além do driver) o "Launch Manager", caso contrário você não consegue ativar o transmissor da placa Wireless no Windows. No Linux essa função é desempenhada por um módulo de Kernel que, nas distribuições recentes, vem pré-instalado no sistema. O processo manual seria carregar o módulo 1023
  • 1024. "acer_acpi", usando o comando "modprobe acer_acpi" e em seguida ativar o transmissor usando o comando "echo "enabled : 1" > /proc/acpi/acer/wireless". Esse é o tipo de coisa que pode ser feita automaticamente pelo sistema durante a fase de detecção do hardware e muitas distribuições realmente o fazem de forma automática. Placa wireless ExpressCard (à direita), instalada em um notebook HP Além da questão dos drivers, temos os problemas normais relacionados à conexão com a rede wireless. O sinal pode estar sendo atenuado por paredes, lajes ou interferências presentes no ambiente (como aparelhos de microondas); ou o ponto de acesso pode ter sido configurado para não divulgar o ESSID, o que faz com que a rede não apareça no utilitário de conexão, até que você tente se conectar a ela manualmente, especificando o nome da rede. Outra questão comum é que pontos de acesso 802.11g ou 802.11n podem ser configurados para não aceitar a conexão de placas de padrões anteriores, deixando de fora notebooks com placas 802.11b, por exemplo. Nesse caso não existe muito o que fazer além de mudar a configuração do ponto de acesso ou atualizar a placa do notebook. Além da possibilidade de instalar uma placa PC-Card ou ExpressCard, é perfeitamente possível atualizar a placa Mini-PCI ou Express Mini do notebook caso desejado. Ambos são barramentos padronizados, de forma que do ponto de vista do hardware a alteração é perfeitamente normal. Apesar disso, existem casos de incompatibilidades entre novas placas e o BIOS. Nesse caso você recebe uma mensagem "Unsupported Card Detected" (ou similar) ao ligar o note e precisa ir atrás de uma atualização de BIOS ou de outra placa que seja compatível com o BIOS original. 1024
  • 1025. Comprando peças de reposição no exterior Trocar o FL Inverter é uma tarefa simples, basta remover qualquer parafuso que o prenda à carcaça e soltar os dois conectores. O maior problema é como encontrar o substituto. O mesmo se aplica a telas, fontes de alimentação, cabos flat, teclados, baterias e outras peças de reposição. O FL inverter, por exemplo, é uma peça relativamente barata, que custa de US$ 60 a US$ 120, dependendo do modelo. Aqui no Brasil, os preços variam muito, de acordo com onde pesquisar. É possível também encontrar alguns com bons preços nos sites de leilão. Se você tem um cartão de crédito internacional, a melhor opção é comprar diretamente no exterior. Pesquisando pelo part number (que quase sempre vem decalcado no componente ou impresso em um adesivo) ou pelo modelo do note, você encontra diversas lojas que vendem peças de reposição. Alguns exemplos são: http://www.screentekinc.com (página em português: http://www.screentekinc.com/telas-lcd.shtml) http://www.sparepartswarehouse.com/ http://www.impactcomputers.com http://www.laptoprepairco.com http://www.crucial.com (para módulos de memória difíceis de encontrar) Outra opção é pesquisar no Ebay, onde você também encontra componentes usados a preços mais baixos: http://ebay.com. Ao pesquisar no Ebay, faça uma busca por "inverter" e a marca do notebook e procure por algum compatível com o modelo entre os anúncios. Não especifique diretamente o modelo, pois assim você reduz muito o número de resultados. Nem todo mundo especifica diretamente o modelo exato no título. Na parte superior da lista, clique no link "Shipping to USA" e mude para "Brazil - BRA" no menu. Assim você pode ver diretamente os vendedores que oferecem a opção de envio para o Brasil, sem precisar ficar abrindo cada um dos anúncios. Em muitos casos, o vendedor pode não ter especificado o envio para o Brasil, mas aceitar enviar caso contactado diretamente. Outros especificam diretamente que enviam apenas para os EUA ou outros locais específicos. 1025
  • 1026. Comprar peças no exterior usando o cartão de crédito é relativamente simples. Também é interessante ter uma conta no PayPal, o sistema de pagamento usado no Ebay, que é aceito por um grande número de lojas. Ele permite que você faça o pagamento sem precisar fornecer o número do cartão e possui alguns sistemas de proteção contra fraudes. Com relação ao envio, você pode optar pelo envio via correios (USPS), Fedex ou outro sistema de envio expresso, como o UPS (note que UPS é diferente de USPS). Ao chegar no Brasil, o pacote passa pela receita, que vai decidir se os impostos se aplicam de acordo com o valor e o tipo de componente. Por estranho que possa parecer, os impostos são calculados com base no valor total da compra, incluindo os produtos e o frete. Além dos 60% de impostos, você paga também uma taxa de ICMS (a alíquota varia de acordo com o estado; em São Paulo, por exemplo, é de 21%) e mais uma "taxa aduaneira", de pouco mais de 20 reais. As opções de envio expresso internacional da UPS e da Fedex são muito caras, você acaba pagando 40 dólares ou mais mesmo para itens pequenos. Como além do custo do envio você vai pagar também impostos sobre ele, você acaba pagando, na prática, quase o dobro desse valor. A melhor opção de envio para itens pequenos é o "USPS First Class Mail International", uma modalidade de envio prioritário oferecida pelos correios dos EUA. Nesta modalidade, um pacote vindo dos EUA demora de 7 a 10 dias corridos para chegar. Outra opção é o "USPS Priority Mail International", que é um pouco mais rápido, chegando, muitas vezes, em 5 dias. Pacotes vindos de outros países costumam demorar, em média, duas semanas, principalmente os vindos de países da ásia. Normalmente os vendedores cobram uma taxa única de "Shipping and Handling" (envio e manuseio), que inclui o custo do envio e qualquer outra taxa que ele queira cobrar. É por isso que alguns podem cobrar 6 dólares e outros 1026
  • 1027. 20 pela mesma modalidade de envio. No mercado americano isso é considerado normal. Existe a velha questão da isenção de compras de 50 dólares. Esta regra se aplica apenas para envios de pessoa física para pessoa física, para fins pessoais. Se algum amigo dos EUA lhe mandar um mouse de presente, colocando dentro uma carta lhe dando os parabéns e o valor do mouse, somado com o custo do envio, não ultrapassar os 50 dólares, muito provavelmente o pacote será enquadrado na regra e você não pagará impostos. Mas, compras em geral não se enquadram nela. A exceção fica por conta dos livros, que são isentos na maior parte dos países do mundo. Compras em que o envio é feito de forma eletrônica, como no caso de um software ou um e-book, também são isentas. No caso dos serviços de entrega expressa (UPS, Fedex, etc.) é comum que a empresa pague as taxas de importação diretamente, para acelerar a liberação do pacote na alfândega e o entregador lhe apresente o comprovante e lhe cobre o valor ao entregar. Em alguns casos, o pagamento é feito através de um boleto entregue junto com o pacote. Uma observação é que optando pelo envio via UPS ou Fedex você paga impostos praticamente sempre, mesmo no caso de presentes, pois o valor do envio sozinho já dá quase os 50 dólares permitidos. Você pode chegar então a casos extremos onde paga US$ 45 de envio, mais R$ 80 de impostos por um item de US$ 6. No caso dos pacotes enviados pelo correio (USPS ou similar), você recebe um aviso dos correios avisando da chegada do pacote, do endereço da agência (dos correios) onde ele está disponível e também dos valores a pagar. Você paga os impostos na própria agência, ao retirar o pacote. A principal vantagem é que o envio neste caso é muito mais barato, então você acaba pagando impostos praticamente apenas sobre o valor da mercadoria propriamente dita. Pacotes que são considerados isentos são entregues diretamente, como qualquer outra correspondência. Em muitos casos você verá uma fita escrito "aberto pela aduana do Brasil", indicando justamente que o pacote foi aberto e o conteúdo conferido. O valor da mercadoria é informado na "Custons Declaration", uma etiqueta padrão colada na parte externa do envelope. No caso de compras feitas em lojas, vale o valor da nota fiscal. Em casos onde o valor declarado é mais baixo que o real (o velho truque de declarar um valor menor para pagar menos imposto, ou para que o pacote se enquadre na regra dos 50 dólares), os impostos podem ser calculados usando uma tabela interna. Lojas e empresas de informática pagam os mesmos impostos ao trazer produtos do exterior. Geralmente economizam no frete, por comprar vários itens de cada vez, mas é só. Como qualquer empresa saudável precisa vender produtos com lucro, os preços acabam sendo quase sempre mais altos do que você pagaria ao comprar diretamente, incluindo todos os impostos. É muito 1027
  • 1028. comum que um FL inverter de US$ 50 seja vendido por R$ 300 ou uma bateria de US$ 60 seja vendida por R$ 400, por exemplo. Comprar no exterior geralmente não é vantajoso ao comprar produtos comuns, como um processador ou um módulo de memória, por exemplo, ou no caso de itens pesados, como gabinetes e monitores, onde o custo do envio é muito alto. Mas, no caso de itens raros, como peças de reposição para notebooks, baterias, cabos, adaptadores incomuns, etc. é muito mais prático e barato pesquisar diretamente e comprar no exterior. Recomendo fortemente que você pelo menos faça um teste, comprando algum item barato ou um livro. Apêndice: Um resumo sobre redes e o protocolo TCP/IP Como este é um livro sobre Hardware, optei por não incluir muitas informações sobre a configuração de redes, já que o assunto é abordado no livro Redes e Servidores Linux. Apesar disso, abordei algumas noções básicas na introdução e aproveitei para incluir algumas informações mais técnicas neste apêndice, um "bônus", que serve como um resumo sobre as camadas da rede (o famoso modelo OSI), a estrutura dos pacotes e também sobre o protocolo TCP/IP. Vamos lá :). Podemos dizer que a função de qualquer rede é simplesmente transportar informações de um ponto a outro. Pode ser entre dois micros ligados através de um simples cabo cross-over, ou pode ser entre dois servidores situados em dois continentes diferentes. Do ponto de vista do sistema operacional e dos aplicativos, não faz muita diferença. No nível mais baixo, temos os cabos de rede, que são enquadrados no primeiro nível do modelo OSI (camada física) e se destinam unicamente a transportar os impulsos elétricos de um micro a outro. Ao utilizar uma rede wireless ou cabos de fibra óptica, os sinais são transmitidos (respectivamente) na forma de sinais de rádio ou luz, mas a função básica (transportar dados de um ponto a outro) continua a mesma, independentemente da mídia utilizada. Em seguida temos os switches ou hub-switches que utilizamos para interligar os micros da rede local. Na verdade, o termo "hub-switch" foi inventado pelos fabricantes para diferenciar os switchs mais baratos, que carecem de funções mais avançadas dos switchs "de verdade", que possuem mais portas e incluem interfaces de administração elaboradas. O termo "switch" está mais relacionado ao modo de funcionamento do aparelho e não ao seu custo ou suas funções. Um switch é capaz de encaminhar os frames Ethernet para o destinatário correto, fechando "circuitos" entre as duas portas envolvidas, enquanto um hub antigo simplesmente repete os sinais recebidos em todas as portas. 1028
  • 1029. Switch e cabos de rede Assim como as placas de rede, os switchs trabalham no nível 2 do modelo OSI (link de dados), enviando frames Ethernet e endereçando os outros dispositivos da rede usando endereços MAC ao invés de endereços IP. Só para efeito de comparação, os hubs "burros" trabalham no nível 1, assim como os cabos de rede. Eles são meros dispositivos de transmissão, que não realizam processamento. Os frames Ethernet são "envelopes" para os pacotes TCP/IP. O aplicativo (um navegador, um servidor web, ou qualquer outro aplicativo transmitindo dados pela rede) envia os dados ao sistema operacional, que divide o fluxo em pacotes TCP/IP e os envia à placa de rede. As placas de rede (que não entendem o protocolo TCP/IP) tratam os pacotes como um fluxo de dados qualquer e adicionam mais uma camada de endereçamento, desta vez baseada nos endereços MAC dos dispositivos da rede, gerando o frame Ethernet que é finalmente transmitido. Ao chegar do outro lado, o "envelope" é removido e o pacote TCP/IP é entregue. O uso dos frames adiciona alguns bytes adicionais a cada pacote transmitido, reduzindo sutilmente o desempenho da rede. Veja o diagrama de um frame Ethernet: A transmissão de cada frame começa com o envio de 8 bytes contendo um preâmbulo e uma sequência de inicialização. Ele serve para avisar outros micros da rede de que uma transmissão está prestes a começar. Estes 8 bytes iniciais não fazem parte do frame e são descartados pelas placas de rede depois de recebidos, por isso não aparecem no relatório mostrado por sniffers de rede, como o wireshark. 1029
  • 1030. O pacote TCP/IP está contido dentro do campo de dados, que pode incluir até 1500 bytes por frame. Junto com os dados é transmitido o cabeçalho do frame (14 bytes no total), que inclui o endereço MAC de destino, endereço MAC de origem e um campo para o tipo de dados e mais 4 bytes finais, que contém códigos de CRC, usados (pelas placas de rede) para verificar a integridade do frame recebido. Caso o frame chegue incompleto ou corrompido, a placa de rede solicita a retransmissão. Dentro do pacote TCP/IP temos novos headers, que contém o endereço IP de origem, endereço IP de destino, porta de origem, porta de destino, códigos de verificações, número do pacote, campo para inclusão de opções e assim por diante. No total, temos 20 bytes para os headers do protocolo TCP e mais 20 bytes para os headers do protocolo IP, totalizando 40 bytes de headers por pacote. Desta forma, temos 1460 bytes de dados em um pacote de 1500 bytes e 536 bytes de dados em um pacote de 576 bytes, por exemplo: À primeira vista, pode parecer estranho que sejam incluídos headers separados para o TCP e o IP, mas a verdade é que os dois são complementares e por isso não podem ser dissociados. É por isso que usamos o termo "TCP/IP", como se os dois protocolos fossem uma coisa só. Os headers do protocolo IP incluem o endereço IP de origem e o endereço IP de destino, enquanto os headers do TCP incluem a porta de origem e de destino, por exemplo. Em resumo, podemos dizer que o IP se encarrega da entrega dos pacotes, enquanto o TCP se encarrega da verificação de erros, numeração de portas e tudo mais. Como disse, os pacotes podem ter até 1500 bytes no total, onde temos até 1460 bytes de dados e 40 bytes dos headers. Arquivos e outros tipos de informações são transmitidas na forma de sequências de vários pacotes. Um arquivo de 15 KB, por exemplo, seria dividido em um total de 11 pacotes; os 10 primeiros contendo 1460 bytes cada um e o último contendo os últimos 760 bytes. É graças aos códigos de verificação e numeração dos pacotes que arquivos grandes podem ser transmitidos de forma íntegra mesmo através de conexões via modem ou links wireless, onde diversos pacotes são corrompidos ou perdidos. Basta retransmitir os pacotes extraviados ou danificados quantas vezes for necessário. :) Embora os pacotes TCP/IP de 1500 bytes sejam os mais comuns, o tamanho pode variar de acordo com o meio de transmissão usado. No ADSL PPPoE (o ADSL com autenticação, usado na maioria das instalações atuais), por exemplo, são utilizados pacotes de 1492 bytes, enquanto que nas conexões discadas são geralmente utilizados pacotes de apenas 576 bytes. Existem ainda casos de pacotes maiores, utilizados em situações específicas. 1030
  • 1031. Dentro da rede local, temos (incluindo o preâmbulo do frame Ethernet) um total de 1526 bytes transmitidos para cada pacote TCP/IP de 1500 bytes. Em uma rede local, que trabalha a 100 ou 1000 megabits, isso não faz muita diferença, mas na internet isso seria um grande desperdício. Por isso, os roteadores se encarregam de eliminar estas informações desnecessárias, retransmitindo apenas os pacotes TCP/IP propriamente ditos. É por isso disso que não é possível criar regras de firewall baseadas em endereços MAC para pacotes vindos da Internet: os endereços MAC fazem parte das informações incluídas no frame Ethernet, que são descartadas pelos roteadores. Por trabalharem diretamente com endereços IP, os roteadores podem ser enquadrados na camada 3 do modelo OSI (camada de rede). Basicamente, são roteadores que cuidam de todo o trafego de dados na internet. Você pode utilizar um hub ou switch dentro da sua rede local, mas ao acessar a internet você sempre utiliza um roteador, seja um roteador Cisco de grande porte, seja um micro com duas placas de rede compartilhando a conexão, ou seja um roteador dentro da rede do provedor de acesso. Na internet, o mais comum é o uso de links de fibra óptica, mas os roteadores podem se interligados utilizando qualquer tipo de mídia. Backbones de fibra óptica interligando países da ásia 1031
  • 1032. Roteador Cisco com diversos links de fibra óptica O endereçamento IP é um tema importante, já que é ele que permite que o brutal número de redes e hosts que formam a internet sejam capazes de se comunicar entre si. Existem duas versões do protocolo IP: o IPV4 é a versão atual, que utilizamos na grande maioria das situações, enquanto o IPV6 é a versão atualizada, que prevê um número brutalmente maior de endereços e deve começar a se popularizar a partir de 2010 ou 2012, quando os endereços IPV4 começarem a se esgotar. No IPV4, os endereços IP são compostos por 4 blocos de 8 bits (32 bits no total), que são representados através de números de 0 a 255, como "200.156.23.43" ou "64.245.32.11". As faixas de endereços começadas com "10", com "192.168" ou com de "172.16" até "172.31" são reservadas para uso em redes locais e por isso não são usados na internet. Os roteadores que compõe a grande rede são configurados para ignorar estes pacotes, de forma que as inúmeras redes locais que utilizam endereços na faixa "192.168.0.x" (por exemplo) podem conviver pacificamente. No caso dos endereços válidos na internet as regras são mais estritas. A entidade responsável pelo registro e atribuição dos endereços é a ARIN (http://www.arin.net/). As operadoras, carriers e provedores de acesso pagam uma taxa anual, que varia de US$ 1.250 a US$ 18.000 (de acordo com o volume de endereços requisitados) e embutem o custo nos links revendidos aos clientes. Ao conectar via ADSL ou outra modalidade de acesso doméstico, você recebe um único IP válido. Ao alugar um servidor dedicado você recebe uma faixa com 5 ou mais endereços e, ao alugar um link empresarial você pode conseguir uma faixa de classe C inteira. Mas, de qualquer forma, os endereços são 1032
  • 1033. definidos "de cima para baixo", de acordo com o plano ou serviço contratado, de forma que você não pode escolher quais endereços utilizar. Embora aparentem ser uma coisa só, os endereços IP incluem duas informações. O endereço da rede e o endereço do host dentro dela. Em uma rede doméstica, por exemplo, você poderia utilizar os endereços "192.168.1.1", "192.168.1.2" e "192.168.1.3", onde o "192.168.1." é o endereço da rede (e por isso não muda) e o último número (1, 2 e 3) identifica os três micros que fazem parte dela. Os micros da rede local podem acessar a internet através de um roteador, que pode ser tanto um servidor com duas placas de rede, quando um modem ADSL ou outro dispositivo que ofereça a opção de compartilhar a conexão. Neste caso, o roteador passa a ser o gateway da rede e utiliza seu endereço IP válido para encaminhar as requisições feitas pelos micros da rede interna. Este recurso é chamado de NAT (Network Address Translation). Um dos micros da rede local, neste caso, poderia usar esta configuração de rede: Endereço IP: 192.168.1.2 Máscara: 255.255.255.0 Gateway: 192.168.1.1 (o servidor compartilhando a conexão) DNS: 200.169.126.15 (o DNS do provedor) O servidor, por sua vez, utilizaria uma configuração similar a esta: Placa de rede 1 (rede local): Endereço IP: 192.168.1.1 Máscara: 255.255.255.0 Placa de rede 2 (internet): Endereço IP: 200.213.34.21 Máscara: 255.255.255.0 Gateway: 200.213.34.1 (o gateway do provedor) DNS: 200.169.126.15 (o DNS do provedor) A configuração da segunda placa de rede seria obtida automaticamente, via DHCP, de forma que você só precisaria realmente se preocupar com a configuração da sua rede local. Normalmente, você primeiro configuraria a rede local, depois conectaria o servidor à internet e, depois de checar as duas coisas, ativaria o compartilhamento da conexão via NAT. É possível instalar mais placas de rede no roteador e dividir a rede em vários segmentos distintos, interligados através dele. Em uma empresa, poderíamos ter três segmentos diferentes, um para a rede cabeada e a maior parte dos micros, outro para a rede wireless e outro para os servidores, que ficariam isolados em uma sala trancada. O roteador nesse caso teria 4 placas de rede (um para cada um dos três segmentos e outra para a internet). A vantagem de dividir a rede desta maneira é que você poderia criar regras de firewall no roteador, especificando regras 1033
  • 1034. diferentes para cada segmento. Os micros conectados à rede wireless (menos segura), poderiam não ter acesso aos servidores, por exemplo. O firewall, ativo no roteador, poderia também ser configurado para proteger os micros das redes internas de ataques provindos da internet: Continuando, temos a configuração das máscaras de sub-rede, que servem para indicar em que ponto termina a identificação da rede e começa a identificação do host. No nosso exemplo, utilizaríamos a máscara "255.255.255.0", que indica que os três primeiros números (ou octetos) do endereço servem para identificar a rede e apenas o último indica o endereço do host dentro dela. Na internet, os endereços IP são divididos em três faixas, que se diferenciam pela máscara utilizada. Os endereços de classe A começam com números de 1 a 126 (como, por exemplo, "62.34.32.1") e utilizam máscara 255.0.0.0. Cada faixa de endereços classe A é composta de mais de 16 milhões de endereços, mas como existem apenas 126 delas, elas são reservadas para o uso de grandes empresas e órgãos governamentais. Em seguida temos os endereços de classe B, que abrangem os endereços iniciados com de 128 a 191. Eles utilizam máscara 255.255.0.0, o que permite a existência de um número muito maior de faixas, cada uma composta por 65 mil endereços. Finalmente temos o "terceiro mundo", que são as faixas de endereços classe C, que abrangem os endereços que começam com de 192 a 223. Elas são mais numerosas, pois utilizam máscara 255.255.255.0, mas em compensação cada faixa de classe C é composta por apenas 254 endereços. Com a escassez de endereços válidos, as faixas de classe C são praticamente as únicas que ainda podem ser obtidas hoje em dia. 1034
  • 1035. Existe ainda a possibilidade de utilizar máscaras complexas para dividir uma faixa de endereços de classe A, B ou C em faixas menores e independentes. Esta possibilidade é usada ao extremo pelas empresas de hospedagem, que dividem faixas de endereços de classe A ou B em diversas faixas menores, com apenas 4 ou 8 endereços, que são atribuídas aos servidores dedicados hospedados em seus data-centers. Ao usar a máscara 255.255.255.248, por exemplo, apenas 3 bits do endereço são reservados ao endereçamento dos hosts (convertendo 255.255.255.248 para binário, você teria 11111111.11111111.11111111.11111000), permitindo que a empresa de hospedagem divida uma faixa de endereços classe A (16 milhões de hosts) em 2.080.768 pequenas redes, uma para cada servidor dedicado que for locado. Três bits permitem 8 combinações, mas o primeiro e o último endereço são reservados ao endereço da rede e ao endereço de broadcast, fazendo com que apenas 6 endereços possam realmente ser utilizados. Destes, mais um é sacrificado, pois é atribuído ao gateway (sem o gateway o servidor não acessa a internet), de forma que no final apenas 5 endereços ficam realmente disponíveis. Ao locar um servidor dedicado, você precisa de uma faixa de endereços inteira para poder configurar o DNS reverso, um pré-requisito para que seus e-mails não sejam rotulados como spam por outros servidores. Ao registrar um domínio, você precisa fornecer os endereços de dois servidores DNS, que responderão por ele. Ao invés de ter dois servidores, você pode utilizar outro dos seus 5 endereços disponíveis para criar um alias (apelido) para a placa de rede do seu servidor dedicado e assim poder configurá-lo para responder simultaneamente como servidor DNS primário e secundário, eliminando a necessidade de utilizar dois servidores. Novamente, esta configuração é possível apenas caso o servidor possua uma faixa de endereços própria. No final, a configuração de rede de um servidor dedicado acaba sendo algo similar a isto: Endereço IP: 72.232.35.106 Máscara: 255.255.255.248 Gateway: 72.232.35.105 Endereço da rede: 72.232.35.104 Endereço de broadcast: 72.232.35.111 Alias da placa de rede (para o DNS secundário): 72.232.35.107 Endereços vagos: 72.232.35.108, 72.232.35.109 e 72.232.35.110 Como se não bastasse, é possível ainda instalar o VMware Server, Xen, ou outro sistema de virtualização e aproveitar estes três endereços vagos para criar três máquinas virtuais, cada uma com seu próprio endereço IP e configurada como se fosse um servidor separado. O princípio é o mesmo que ao rodar um segundo sistema operacional dentro do VMware Player no seu 1035
  • 1036. micro de trabalho, a única grande diferença é que neste caso toda a configuração é feita remotamente. Em seguida temos a questão do IPV6, que é uma fonte frequente de dúvidas. Ele é uma evolução do padrão de endereçamento atual onde, ao invés de endereços de 32 bits, são usados endereços de 128 bits. O número de endereços disponíveis no IPV6 é simplesmente absurdo; seria o número 340.282.366.920 seguido por mais 27 casas decimais. Tudo isso para prevenir a possibilidade de, em um futuro distante, ser necessária uma nova migração. Por serem muito mais longos, os endereços IPV6 são representados através de caracteres em hexa. No total temos 32 caracteres, organizados em oito quartetos e separados separados por dois pontos. No conjunto hexadecimal, cada caracter representa 4 bits (16 combinações). Devido a isso, temos, além dos números de 0 a 9, também os caracteres A, B, C, D, E e F, que representariam (respectivamente), os números 10, 11, 12, 13, 14 e 15. Um exemplo de endereço IPV6, válido na internet, seria "2001:bce4:5641:3412:341:45ae:fe32:65". Um atenuante para esta complexidade dos endereços IPV6 é que eles podem ser abreviados de diversas formas. Graças a isso, os endereços IPV6 podem acabar sendo incrivelmente compactos, como "::1" ou "fee::1". Em primeiro lugar, todos os zeros à esquerda dentro dos quartetos podem ser omitidos. Por exemplo, ao invés de escrever "0341", você pode escrever apenas "341"; ao invés de "0001" apenas "1" e, ao invés de "0000" apenas "0", sem que o significado seja alterado. É por isso que muitos quartetos dentro dos endereços IPV6 podem ter apenas 3, 2 ou mesmo um único dígito. Os demais são zeros à esquerda que foram omitidos. É muito comum que os endereços IPV6 incluam seqüências de números 0, já que atualmente poucos endereços são usados. Graças a isso, o endereço "2001:bce4:0:0:0:0:0:1" poderia ser abreviado para apenas "2001:bce4::1", omitimos todo o trecho central "0:0:0:0:0". Ao usar o endereço, o sistema sabe que entre o "2001:bce4:" e o ":1" existem apenas zeros e faz a conversão internamente, sem problema algum. 1036
  • 1037. O suporte a IPV6 está presente em todas as distribuições Linux atuais, assim como no Windows XP SP2 e no Vista. Uma vez que você entende como os endereços IPV6 são estruturados e que uma mesma interface de rede pode ter ao mesmo tempo um endereço IPV4 e um IPV6 (respondendo em ambos), não existe nada de exotérico em atribuir endereços IPV6 para os micros da sua rede e começar a testar o novo sistema. Assim como no IPV4, os endereços IPV6 são divididos em dois blocos. Os primeiros 64 bits (os 4 primeiros quartetos) identificam a rede, enquanto os últimos 64 bits identificam o host. No endereço "2001:bce4:0:0:0:0:0:1", por exemplo, temos a rede "2001:bce4:0:0" e o host "0:0:0:0:1" dentro dela. Ao configurar endereços dentro de uma mesma rede, existem duas opções. A primeira seria simplesmente usar endereços seqüenciais, como " 2001:bce4::1", " 2001:bce4::2", "2001:bce4::3" e assim por diante. Nada de errado com isso. A segunda seria seguir a sugestão do IEFT e usar os endereços MAC das placas de rede para atribuir os endereços dos hosts. É justamente isso que é feito ao utilizar a atribuição automática de endereços no IPV6. Digamos que o endereço da rede é "2001:bce4:0:0:" e o endereço MAC do micro é "00:16:F2:FE:34:E1". Como você pode ver, o endereço MAC contém apenas 12 dígitos hexa, enquanto no IPV6 a parte do host contém 16 dígitos. Está em estudo uma expansão dos endereços MAC das placas de rede, que passariam a ter 16 dígitos, mas, enquanto isso não é colocado em prática, usamos uma regra simples para converter os endereços de 12 dígitos atuais em endereços de 16 dígitos, adicionando um "ffff" entre o sexto e sétimo dígito do endereço. O endereço "00:16:F2:FE:34:E1", viraria então "0016:f2ff:fffe:34e1". Como viu, os 12 dígitos originais continuam os mesmos (apenas converti para minúsculas). São apenas adicionados os 4 dígitos no meio. Adicionando o endereço da rede, o endereço IPV6 completo deste micro seria "2001:bce4:0:0:0016:f2ff:fffe:34e1", o que poderia ser abreviado para apenas "2001:bce4::0016:f2ff:fffe:34e1". O IPV6 também oferece um recurso de compatibilidade com endereços IPV4, permitindo que você continue utilizando os mesmos endereços ao migrar para ele. Neste caso, você usaria o endereço "::FFFF:" seguido pelo endereço IPV4 usado atualmente, como em: ::FFFF:192.168.0.1 Por estranho que possa parecer, este é um endereço IPV6 completamente válido, que você pode usar para todos os fins. Outra mudança é que no IPV6 você pode atribuir diversos endereços para o mesmo micro. Isto também era possível no IPV4 utilizando-se alises para a placa de rede, mas no caso do IPV6, este passou a ser um recurso nativo. Graças a isso, o mesmo micro pode ser acessado tanto através do endereço "2001:bce4:5641:3412:341:45ae:fe32:65" (por exemplo), quanto pelo 1037
  • 1038. ::FFFF:192.168.0.1 (pelos micros da rede local), sem que você precise usar duas placas de rede. É possível também adicionar um endereço IPV6 a um micro já configurado com um endereço IPV4, na maioria dos casos sem nem mesmo precisar derrubar a rede. Neste caso, ele continua respondendo de forma normal no endereço IPV4 antigo, mas passa a responder também no endereço IPV6. Um dos objetivos do novo sistema é justamente manter compatibilidade com o antigo, já que muitos sistemas provavelmente nunca serão atualizados. Imagine, por exemplo, que uma migração em larga escala para o IPV6 está ocorrendo. A maior parte da internet já utiliza o novo sistema, mas seu provedor de acesso ainda oferece suporte apenas a endereços IPV4. Prevendo situações assim, o IPV6 oferece suporte ao tunelamento de pacotes IPV6 através de redes IPV4. Ao perceber que os pacotes IPV6 precisarão passar por uma rede IPV4, o roteador empacota os pacotes IPV6, colocando- os dentro de pacotes IPV4, de forma que eles sejam roteados normalmente através da rede IPV4. Do outro lado da conexão teríamos outro roteador IPV6, que se encarregaria de remover o cabeçalho IPV4 dos pacotes, obtendo novamente os pacotes IPV6 originais. Este sistema permite também que sistemas configurados com endereços IPV4, continuem acessando a internet normalmente, mesmo depois que a migração ocorrer. Imagine o caso de micros rodando o Windows 95/98, por exemplo, sistemas que provavelmente nunca serão atualizados. 1038