Processadores ARM

Bom pessoal, resolvi "tomar vergonha na cara" e fazer esta postagem que está a muito tempo prevista, mas nunca encontro tempo para fazê-la, a partir de agora você irá conhecer um pouco mais sobre os processadores ARM, suas caracteristicas, suas aplicações e vantagens.
Atualmente Qualquer dispositivo "inteligente", desde um relógio de pulso até um computador, precisa de um “cérebro eletrônico” que faça o processamento das informações e execute os programas do usuário, este “cérebro” é o que chamamos de processador.

Para quem não sabe, os processadores ARM estão entre nós há quase 3 décadas, foram introduzidos em 1983 e atualmente estão por toda parte, seja no seu iphone, no seu netbook (alguns possuem processadores ARM), ou no seu smartphone.
Diferentemente de processadores da Intel que são fabricados por apenas uma empresa, os processadores ARM são licenciados e produzidos por diversos fabricantes.
A ARM Ltd. é a responsável pelo desenvolvimento dos chips e detentora dos direitos sobre a arquitetura, ela não produz os processadores se limita apenas em licenciar os projetos.
Os fabricantes podem optar por diversos tipos de licença, incluindo opções que permitem modificar os chips e incluir componentes adicionais, como 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.
Nos computadores PCs e Macs, os processadores devem ser poderosos, os mais usados pertencem à chamada “família x86”, como os Intel Core 2 Duo e Atom (em Netbooks) seguidos de perto por modelos da rival AMD. Mas em aplicações mais simples, como em celulares ou refrigeradores inteligentes, os x86 não são adequado: esquentam muito, gastam muita energia e são volumosos, além de terem desempenho além do necessário. Nesses casos, um processador mais simples seria mais indicado, é ai que entram os processadores ARM, que são descomplicados para programar, possuem tamanho reduzido e consomem pouca energia.
Os processadores ARM podem ser divididos em duas grandes famílias. A primeira é a dos chips ARM7, ARM9 e ARM11, que são mais antigos (embora sejam ainda os mais usados) e a linha Cortex, que representa a geração mais atual.
Os chips ARM11 são os usados na maioria dos smartphones atuais (praticamente todos os aparelhos com o Symbian ou o Windows Mobile lançados entre 2007 e 2009), enquanto os ARM9 e ARM7 são comuns em aparelhos mais simples e em produtos eletrônicos diversos. Eles são processadores de 32 bits muito baratos e fáceis de programar, o que oferece uma flexibilidade muito grande.
A família Cortex por sua vez é composta for três arquiteturas distintas. Na base da pirâmide temos os Cortex A5, que são chips simples e de baixo consumo, destinados a substituírem os ARM9 e ARM11 e aplicações diversas. Em seguida temos os Cortex A8, que são chips mais poderosos, destinados a smartphones e outros dispositivos móveis e os Cortex A9, que são chips multicore de alto desempenho.
O chip mais promissor é o ARM Cortex A9 MPCore, 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, cujo consumo elétrico é severamente limitado pela bateria, pode parecer uma idéia 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.

O Cortex A8 é o chip mainstream dentro da família. Ele é um processador dual-issue (duas unidades de processamento), que processa instruções em ordem (assim como o Intel Atom) e inclui um cache L1 de 64 KB, dividido em dois blocos de 32 KB (dados e instruções). Ele inclui também um grande (do ponto de vista de um chip para sistemas embarcados) cache L2 de 256 KB, que pode ser expandido para até 1 MB de acordo com o nível de desempenho desejado pelo fabricante. Ele incorporou também um pipeline de 13 estágios (contra os 8 estágios do ARM11), o que possibilita o uso de frequências de operação muito mais altas. Os chips produzidos usando uma técnica de 65 nm (como os usados no iPhone 3GS e no Nokia N900) operam na casa dos 600 MHz, mas dispositivos maiores (como no caso dos smartbooks) e também chips produzidos usando técnicas mais avançadas podem vir a operar em frequências muito mais altas, de até 1.0 GHz.
O Cortex A5, que é o caçula da família. Como a numeração sugere, ele é um processador de baixo custo e baixo consumo, destinado a substituir os chips ARM9 e ARM11 nos dispositivos mais simples. Ele pode abrir as portas para a criação de smartphones de baixo custo ou de aparelhos com uma autonomia muito maior, além de ser uma opção ao uso do Cortex A8 e A9 em smartbooks e players de mídia low-end.
Do ponto de vista da arquitetura, ele é basicamente uma versão reduzida do Cortex A8, que mantém o mesmo conjunto de instruções, mas adota uma arquitetura mais simples, baseada em uma única unidade de processamento (single-issue), com um pipeline muito mais curto, de apenas 8 estágios. Essa mudança faz com que ele não seja capaz de atingir frequências de clock tão altas, mas em compensação seja muito menor e ofereça um consumo elétrico por ciclo muito mais baixo.
Muitos desenvolvedores de softwares estão correndo contra o tempo para adaptarem seus programas a essa nova arquitetura, sendo o Google a empresa que mais investe na nova tecnologia. Em contrapartida, a Microsoft anunciou recentemente que a nova versão do Windows não terá suporte a computadores equipados com processadores ARM.
Além disso não existe nenhuma versão do windows que ofereça suporte aos processadores ARM a não ser o Windows Mobile, cujo único ponto em comum com seu “irmão” para PCs é o nome. Todavia, há inúmeras versões de Unix e Linux para ele, entre elas o popular Ubuntu, o Android, o WebOS, sistema operacional do Palm Pre, e o iPhone OS.
O motivo do desinteresse da Microsoft pode ser explicado pelo kernel que o Windows usa. O kernel linux, usado no Linux e Google Chrome,apesar de ainda ser precário, já possuem suporte ao ARM. O Mac OS é muito semelhante ao Linux, por isso a implementação é relativamente simples. No caso do Windows, seria preciso um kernel inteiramente novo.
Hoje vocês poderam conhecer um pouco mais sobre processadores ARM, suas "familias", caracteristicas e aplicações, pretendo fazer mais postagens sobre os processadores ARM que possuem uma vasta area de aplicações e são muito comuns em nosso dia-a-dia.

Este texto foi compilado a partir de trechos retirados das matérias dos sites listados a seguir, para maiores informações visite-os.
- Entenda os processadores ARM;
- O avanço do ARM: Cortex A8 e Cortex A5;
- Termos técnicos GdH: ARM;
- Smartphones: Guia Prático - capítulo 2, Carlos E. Morimoto;
- Arquitetura ARM na wikipédia (em inglês);

0 comentários: