Com a migração dos chips PowerPC para os x86 feita pela Apple em 2005, os chips x86 se tornaram onipresentes nos computadores pessoais. Você pode escolher entre um processador da Intel, da AMD ou mesmo da VIA, mas o legado de instruções vindas desde o 8086 continuará presente.
Apesar de serem os mais conhecidos, receberem o maior volume de investimentos e monopolizarem as atenções, os processadores x86 estão muito longe de serem os chips mais populares. Muito pelo contrário: em números absolutos os chips mais vendidos são os Z80, que são vendidos aos bilhões e usados em todo o tipo de aparelhos eletrônicos. Mesmo entre os chips de 32 e 64 bits os x86 ocupam um distante segundo lugar, perdendo para os chips RM.
Embora não sejam tão conhecidos, nem tão comentados, quanto o i7 ou o Atom, os processadores ARM são produzidos em volumes brutalmente maiores e usados em todo o tipo de dispositivos, de roteadores e modems ADSL a video-games, como o Nintendo DS. Praticamente qualquer eletrônico que você tenha em casa, que use um processador de 32 bits e não seja um PC, usa um ou mais processadores ARM.
Outro segredo para o grande número de funções, baixo consumo e baixo custo é a integração dos componentes, acompanhada pelo uso de controladores dedicados para diversas funções; diferente do que temos em um PC, onde quase tudo é feito pelo processador principal.
A vantagem de utilizar controladores dedicados é que eles executam suas funções diretamente via hardware, em vez de executarem um software destinado a executar a mesma função. Com isso, eles conseguem executar suas tarefas com menos transístores e menos ciclos de processamento, o que se traduz em um consumo elétrico mais baixo. Os diversos controladores ficam desligados na maior parte do tempo e são acordados apenas quando possuem algum trabalho para fazer.
Os chips ARM, não são produzidos por uma única empresa (como no caso dos processadores da Intel), mas sim licenciados e produzidos por diversos fabricantes. A ARM Ltd. (www.arm.com), que é a responsável pelo desenvolvimento dos chips e detentora dos direitos sobre a arquitetura, não produz os processadores, se limitando a licenciar os projetos a preços módicos para outros fabricantes, que podem optar por diversos tipos de licença, incluindo opções que permitem modificar os chips e incluir componentes adicionais. Este é o caso de fabricantes como a QualComm, a Texas Instruments e a Samsung, que desenvolvem soluções próprias, incluindo controladores auxiliares e modificações diversas.
Temos aqui o diagrama de blocos de um Texas Instruments OMAP242, um SoC (system on a chip) que combina um processador ARM e diversos outros controladores auxiliares em um único chip. Este modelo em particular é muito usado em smartphones, incluindo o N95:
Ele possui um acelerador de vídeo (2D), que ajuda na decodificação de diversos formatos de arquivos, processamento das imagens e vídeos capturados usando a câmera (e outras funções relacionadas) e, também, um acelerador 3D dedicado, que é acionado quando são executados jogos ou outros aplicativos que utilizam gráficos 3D.
Como o consumo elétrico precisa ser muito baixo, o desempenho é bastante limitado: apenas 2 megapixels. Apesar disso, nas mãos de desenvolvedores competentes, estes dois megapixels podem render muita coisa.
Toda essa integração é necessária para manter o consumo elétrico em níveis aceitáveis e reduzir o custo de fabricação, já que produzir um único chip, contendo vários componentes, sai mais barato do que produzir vários chips separados.
Os processadores ARM usados nos aparelhos atuais são, em sua maioria, chips ARM7, ARM9 e ARM11. Os chips ARM11 são as atuais estrelas, usados na maioria dos smartphones atuais, enquanto os ARM9 e ARM7 são comuns em aparelhos mais simples e em produtos eletrônicos diversos:
Os chips ARM11 oferecem um desempenho por ciclo ligeiramente superior (1.2 DMIPS por MHz, contra 1.1 DMIPS por MHz dos ARM9), mas a grande diferença (do ponto de vista do desempenho) entre as duas famílias reside no número de estágios de pipeline, usados no processamento das instruções. Os chips ARM9 utilizam um pipeline de 5 estágios, enquanto os ARM11 utilizam um pipeline de 8 estágios.
Similar ao que temos nos processadores para micros PC, o uso de mais estágios de pipeline permite que cada estágio execute um volume menor de processamento por ciclo (ou seja, que cada um execute um percentual menor do trabalho), o que permite que o processador opere a uma frequência mais elevada. Uma analogia simples seria comparar com uma linha de produção, imaginando que cada estágio de pipeline corresponde a um operário. Se o trabalho é dividido entre um número maior de operários, cada um passa a executar um número menor de passos e a esteira pode correr mais rápido, resultando em uma produção maior.
Isso explica porque os processadores baseados em chips ARM9 ficam restritos à casa dos 200 a 250 MHz (e são por isso usados em aparelhos mais antigos, ou mais baratos), enquanto os chips mais recentes, baseados em processadores ARM11 atingem frequências de 400 a 600 MHz.
Os chips ARM7, por sua vez, são processadores muito mais simples, que foram originalmente usados em dispositivos da década de 1990, como o Psion 5 e o Apple Newton, mas que, recentemente, ressurgiram como chips auxiliares, usados como parte do transmissor 3G. Por serem muito simples, eles desempenham essa tarefa de forma bastante eficiente, consumindo menos energia que outros chips (mais complexos) precisariam para executar a mesma carga de trabalho.
Atualmente estamos assistindo a uma migração para os chips baseados no ARM Cortex A8, que utiliza uma arquitetura mais complexa, mas, em compensação, oferece um desempenho por clock consideravelmente superior (de até 2 DMIPS por MHz) e é capaz de operar a até 1.0 GHz, mantendo um consumo elétrico aceitável. Ele é usado, por exemplo, no TI OMAP3430, o chip que equipa o Palm Pre.
Assim como nos PCs, o clock dos processadores móveis é, atualmente, limitado não pelo que os chips podem realmente oferecer, mas sim pelo consumo elétrico máximo sob o qual eles devem trabalhar. Do ponto de vista da arquitetura, não seria difícil produzir processadores ARM capazes de operar a 2 ou mesmo 3 GHz, o problema é que, operando a essas frequências, o consumo ficaria acima da casa dos 10 watts, e eles precisariam de dissipadores de cobre e coolers para funcionarem.
Devido a isso, a frequência máxima dos processadores móveis tem ficado na faixa dos 450 a 600 MHz, e isso não deve mudar muito a curto prazo. A cada nova geração, os fabricantes arriscam um processador com clock um pouco mais alto, mas os avanços são lentos e cautelosos.
A solução encontrada para produzir processadores mais rápidos, sem aumentar exageradamente o consumo, foi a mesma adotada nos processadores para desktop, ou seja, passar a desenvolver processadores com vários núcleos, em vez de aumentar a frequência.
Ao contrário do que pode parecer à primeira vista, um processador com um único núcleo, operando a 1 GHz, consome muito mais do que um processador com dois núcleos similares operando a 500 MHz, pois o clock maior aumenta o gate leakege (a energia perdida na forma de calor cada vez que um transístor muda de estado) e torna necessário aumentar a tensão (ou seja, a voltagem, em linguagem popular) do processador. Com um sistema de gerenciamento de energia bem desenvolvido, os núcleos adicionais consomem energia apenas quando estão sendo realmente usados, já que o sistema pode desligá-los quando não estão em uso.
O chip mais promissor é o ARM Cortex A9 MPCore (sucessor do Cortex A8), que é composto por 4 núcleos, cada um com um coprocessador aritmético independente e uma pequena quantidade de memória cache:
Colocar um processador com 4 núcleos em um smartphone ou outros aparelhos, cujo consumo elétrico é severamente limitado pela bateria, pode parecer uma ideia bastante estúpida à primeira vista, mas, na prática, não é tão ruim assim.
A principal questão é que, assim como outros processadores ARM, o A9 inclui um sistema de gerenciamento de energia bastante eficiente, que permite que o processador seja capaz de ativar e desativar os núcleos de acordo com a demanda.
A frequência de operação de cada um pode também ser ajustada conforme o volume de carga, de forma que, na prática, o consumo elétrico do processador pode ser ajustado de forma bastante eficiente, de acordo com o uso. Em um projeto bem desenvolvido, o processador ficaria com apenas um dos núcleos ativado na maior parte do tempo, com os outros sendo ativados apenas quando vários aplicativos fossem usados simultaneamente, ou em tarefas específicas, como em jogos capazes de tirar proveito dos vários núcleos.
A principal vantagem de um aparelho com vários núcleos, é a possibilidade de realizar mais do que uma tarefa sem que ele engasgue. Você poderia chavear para o navegador para verificar alguma coisa rápida, sem que o som do vídeo que estava assistindo (e que continua sendo processado em segundo plano) comece a engasgar enquanto o navegador monta as páginas, por exemplo.
Teoricamente, algumas tarefas poderiam ser executadas usando menos energia em um processador com vários núcleos, já que um processador com 4 núcleos operando a 150 MHz pode utilizar uma tensão mais baixa e, assim, consumir menos energia que um processador com apenas um núcleo operando a 600 MHz, por exemplo. Naturalmente, o inverso também pode ocorrer, já que bugs e softwares em loop podem fazer com que os 4 cores passem a operar na frequência máxima, acabando rapidamente com a carga da bateria. Todos estes fatores acentuam a necessidade de fazer um projeto bem feito.
Você deve estar imaginando onde entra a Intel nessa história. No passado, a Intel produzia a família XScale, baseada na plataforma ARM, com a qual desfrutou de um relativo sucesso, equipando diversos modelos de palmtops e alguns dos primeiros smartphones (como os aparelhos da linha Dell Axim e o Treo 650). Entretanto, em 2006 a Intel optou por vender a divisão para a Marvell, como parte de um projeto de reestruturação.
Do ponto de vista da Intel, fazia pouco sentido continuar investindo em chips ARM. O motivo não tem a ver com a viabilidade da plataforma, mas sim com o fato de chips ARM serem fabricados por diversos fabricantes, fazendo com que a competição seja acirrada e as margens de lucro muito baixas. Em vez de ser mais um fabricante de chips ARM, a Intel decidiu apostar nos chips x86, investindo em uma família de chips de baixo consumo que possa, eventualmente, ser usada em smartphones, concorrendo com os chips ARM.
Como você deve ter imaginado, o concorrente da Intel é o Atom, que utiliza uma arquitetura simplificada, que lembra um pouco a do antigo Pentium 1. Diferente de outros processadores atuais, o Atom possui apenas duas unidades de execução e processa as instruções em ordem, o que permitiu remover muitos dos componentes usados em outros processadores atuais, entre eles o circuito de branch prediction (responsável por reorganizar as instruções) e o scheduler, que armazena as instruções que serão processadas nos ciclos seguintes, de acordo com o determinado pelo circuito de branch prediction.
Naturalmente, essa arquitetura simples resulta em um desempenho por ciclo de clock inferior ao de outros processadores x86 atuais. A ideia da Intel não é necessariamente produzir um processador de alto desempenho, mas sim produzir um processador de baixo consumo, que apresente um desempenho suficiente para tarefas básicas, como navegar e rodar aplicativos leves.
A versão inicial do Atom, batizada de Menlow, é ainda destinada a netbooks e UMPCs, passando muito longe dos smartphones. Entretanto, a Intel está trabalhando em uma versão atualizada, batizada de Moorestown, com mais componentes integrados e um consumo elétrico mais baixo, que deve estar disponível a partir de 2010.
Se comparado com chips baseados no Cortex A8, como o OMAP3430, uma versão de baixo consumo do Moorestown perderia tanto em custo quanto com relação ao consumo elétrico. Se operasse à mesma frequência, ele poderia ganhar com relação à potência de processamento, mas por uma pequena margem. É provável que o Moorestown chegue a ser usado em alguns modelos de tablets ou até mesmo em alguns smartphones (o Android, por exemplo, pode ser portado para rodar sobre a plataforma sem muito esforço), mas eles, provavelmente, ainda serão aparelhos grandes e pesados, nos moldes do Nokia E90 e do HTC TyTN II.
Entretanto, a Intel já anunciou que está trabalhando em uma terceira geração da plataforma (que será fabricada em uma técnica de 0.032 micron e oferecerá um consumo elétrico mais baixo), com a qual ela pretende levar o Atom até os aparelhos mais compactos.
A ideia parece ser ganhar na base da força bruta, investindo pesadamente no desenvolvimento de versões cada vez mais otimizadas e fabricadas usando técnicas cada vez mais avançadas de produção, de forma a reduzir o consumo elétrico dos chips e integrar mais componentes a cada versão, até que eles, finalmente, passem a substituir os chips ARM em larga escala.
A grande aposta da Intel é que, por serem processadores x86, o Moorestown e os sucessores terão uma vantagem competitiva, já que permitirão rodar o Firefox e outros softwares completos sem necessidade de modificações nos binários. Naturalmente, eles têm também a desvantagem de não serem compatíveis com os softwares compilados para a plataforma ARM, o que torna o uso das instruções x86 uma faca de dois gumes.
Mesmo que fossem lançados aparelhos com potência suficiente para rodar distribuições Linux completas (ou mesmo alguma versão otimizada do Windows Vista), isso não seria necessariamente uma boa ideia, já que sistemas operacionais para desktop consomem muito processamento, o que, em um smartphone, significaria uma grande redução na autonomia. Sistemas baseados em Linux para smartphones, como o LiMo, ou o próprio Android, são baseados em versões fortemente modificadas e otimizadas do kernel, rodando uma interface leve e aplicativos otimizados, muito diferente da selva de componentes e serviços de uma distribuição Linux para desktops, como o Ubuntu.
Com relação à questão da eficiência, embora seja quase impossível produzir um chip x86 tão eficiente quanto um chip ARM (devido à necessidade de incluir no chip todos os componentes necessários para decodificar as instruções, de forma a manter compatibilidade com o conjunto de instruções x86), a Intel parece convencida que pode anular a diferença com o uso de técnicas mais avançadas de fabricação.
A Intel já domina a técnica de 0.045 mícron e já realiza testes com a geração seguinte, de 0.032 micron, enquanto fabricantes de chips ARM, como a Texas Instruments, ainda estão fazendo a migração dos 0.13 ou 0.09 para os 0.065 mícron. Considerando que um processador fabricado usando a técnica de 0.045 mícron tem um consumo elétrico até 50% inferior que outro similar fabricado usando a técnica de 0.065 mícron, pode realmente ser que a Intel ria por último, embora ainda tenha um longo caminho pela frente.
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário