Capítulo 2: Entendendo a arquitetura

Com a evolução dos smartphones, os aparelhos passaram a incorporar mais e mais funções. O grande problema é que mais funções significam mais chips, e mais ciclos de processamento, o se traduz em um maior consumo elétrico. Como as baterias não evoluem na mesma velocidade que o apetite dos fabricantes (e dos compradores) por novos recursos, oferecer aparelhos compactos e com uma boa autonomia de baterias se tornou uma tarefa cada vez mais difícil.

Para entender melhor, é só ter em mente que um aparelho com uma bateria Li-Ion de 860 mAh dispõe de pouco mais de 3 watts/hora de energia (que corresponde ao que um notebook mediano consome em apenas 5 minutos) para realizar todas as suas funções até a próxima recarga. Entretanto, diferente do que temos nos notebooks, a autonomia dos smartphones precisa ser medida em dias, e não em horas. Por aí, você pode ter uma idéia do tamanho da dor de cabeça para os projetistas.

Para calcular o total de energia armazenada pela bateria, multiplique a tensão (em volts) pela amperagem (em mAh). Uma bateria de 850mAh e 3.7V, por exemplo, armazena um total de 3.219 milliwatts/hora, energia que corresponde ao que um dispositivo com consumo de 3,219 watts consumiria em uma hora.

Nos PCs, são usados processadores x86, como o Core 2 Duo e o Phenom. Eles são chips otimizados para o desempenho, que incluem um volume brutal de transístores, com grandes caches L2, unidades dedicadas de decodificação e agendamento de instruções, circuitos de branch-prediction e várias unidades de execução por núcleo. Para ter uma idéia, um Core 2 Duo E8200 baseado no core Penryn (que é um chip relativamente pequeno para os padrões atuais), possui nada menos do que 410 milhões de transístores e tem um consumo típico de 65 watts.

Um fabricante de smartphones que estivesse interessado em usá-lo, precisaria encontrar uma forma de colocar um cooler de 80 mm com dissipador de cobre e uma bateria de 6 células dentro do aparelho. Mesmo que conseguissem, ele provavelmente não venderia muito bem… 🙂

É por isso que ainda não existem smartphones baseados em processadores x86. Mesmo processadores de baixo consumo, como o Intel Atom, possuem um consumo elétrico elevado demais para um smartphone, o que faria com que a bateria durasse apenas uma ou duas horas.

As restrições com relação ao tamanho e ao consumo fizeram com que o hardware dos smartphones evoluísse em um caminho bem diferente dos PCs, com o uso de processadores de baixo consumo e chips altamente integrados.

A mudança mais notável é o uso de processadores ARM no lugar de chips x86. Os chips ARM são processadores RISC de 32 bits, que apresentam uma arquitetura extremamente otimizada, com poucos transístores e um consumo elétrico extremamente baixo.

Embora não sejam tão conhecidos, nem tão comentados, quanto o Nehalem 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, incluindo, naturalmente, seu smartphone.

Outro segredo é 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. Qualquer smartphone atual possui diversos destes controladores, que ficam desligados na maior parte do tempo e são acordados apenas quando possuem algum trabalho para fazer.

Temos aqui o diagrama de blocos de um OMAP2420 (fabricado pela Texas Instruments), um exemplo de “processador” destinado ao uso em smartphones, que é usado em diversos modelos da Nokia, como o N95 e o E90:

Assim como outros chips similares, ele é, na verdade, um SoC (system on a chip), ou seja, é a combinação de um processador central e diversos outros componentes em um único chip, incluindo um processador ARM11, um chip DSP, transmissores para as faixas de freqüência suportadas e interfaces para diversos outros componentes.

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 (diferente do que temos em um desktop, onde a placa 3D pode consumir 50 watts ou mais…), o desempenho é bastante limitado: apenas 2 megapixels. Para efeito de comparação, uma Voodoo 1 (aquela lançada pela 3DFX em 1996), tinha um fill-rate de 50 megapixels, ou seja, 25 vezes mais.

Apesar disso, nas mãos de desenvolvedores competentes, estes dois megapixels podem render muita coisa. Existe até mesmo uma versão do Quake 3 Arena para o S60 (http://koti.mbnet.fi/hinkka/), que é capaz de tirar proveito do acelerador gráfico:

Screenshots do Quake 3 Arena rodando em um N95

O segredo para produzir games 3D capazes de rodar de forma fluída, mesmo dentro de recursos tão limitados, é reduzir o uso de texturas e limitar o uso de efeitos de luz, que são os grandes responsáveis pelo indecente uso de recursos dos games para PC. A baixa resolução das telas dos smartphones também acaba sendo uma vantagem, já que resultam em um volume muito menor de pixels a serem renderizados.

Outro exemplo de chip com aceleração 3D é o Qualcomm MSM7200, que é usado em diversos aparelhos da HTC e da Toshiba, entre eles o HTC TyTN II e HTC Touch Dual. Ele é também baseado em um processador ARM11, mas inclui um conjunto diferente de componentes auxiliares.

O “kit” de componentes inclui um acelerador de vídeo, que se encarrega da decodificação de vídeos em diversos formatos (desafogando o processador principal e ajudando a reduzir o consumo), um acelerador 3D otimizado para jogos e aplicativos escritos em Java (um pouco diferente do acelerador usado no OMAP2420, embora a aplicação básica seja a mesma), um processador ARM9 auxiliar (para o processamento dos sinais da rede 3G), um módulo de segurança (que pode ser usado para encriptação e desencriptação de dados) e um chip Qualcomm gpsOne, que oferece um receptor GPS de 20 canais:

Toda essa integração é necessária para manter o consumo elétrico em níveis aceitáveis, assim como 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. O uso de um número menor de chips também é essencial para reduzir o tamanho e o peso dos aparelhos.

Novos recursos, como aceleradores gráficos e receptores de GPS, começam suas carreiras como chips separados, que aumentam o custo dos aparelhos e, conseqüentemente, fazem com que eles fiquem restritos apenas aos aparelhos mais caros. Entretanto, com o passar do tempo, fabricantes de chips como a Texas Instruments e a Qualcomm passam a oferecer soluções com os novos componentes integrados diretamente ao controlador principal, o que reduz os custos, abrindo as portas para o uso mesmo nos aparelhos mais simples. É a partir daí que eles se popularizam, como está acontecendo atualmente com os chips GPS.

Naturalmente, mais componentes trabalhando simultaneamente também significa um consumo elétrico mais alto. Um dos grandes problemas dos aparelhos da geração atual é a baixa autonomia de bateria ao utilizar uma rede 3G.

Na maioria dos aparelhos, a bateria não dura mais do que duas horas em situações onde o aparelho precisa transmitir dados continuamente, como ao usar o smartphone como modem e fazer download de um arquivo ISO, por exemplo. Em menor grau, isso se aplica também a aplicativos que transmitem um volume considerável de dados, como no caso de aplicativos VoIP (como o Fring), navegadores web e aplicativos que utilizam o GPS, como o Google Maps.

Esse problema da autonomia afeta todos os aparelhos 3G da safra atual. Independente do fabricante ou do modelo, praticamente nenhum consegue ultrapassar a marca das duas horas de transferência de dados contínua usando a rede 3G. Não se trata de um defeito de projeto ou de falta de otimizações, mas, simplesmente, o fato de que em uma rede 3G existe mais trabalho a fazer e mais bits a transmitir.

Novos projetos de controladores, otimizações de software e a migração para novas técnicas de fabricação irão reduzir o consumo incrementalmente ao longo dos próximos anos, mas o problema não será resolvido do dia para a noite. Pode ser que a bateria do seu smartphone agüente 3 ou 4 dias em modo stand-by, mas a carga continuará durando durante apenas duas ou três horas em situações em que o aparelho precise trabalhar a todo vapor.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X