domingo, 27 de julho de 2014

Processadores: mini-máquinas incríveis para fins fantásticos. (Parte 1)

     Responda rápido: quantos computadores você tem em casa? Se você respondeu um ou dois, olhe de novo ao seu redor. Cada máquina que tem por objetivo processar informações pode ser considerada um computador. Isto significa que seu celular, televisor de tela fina, roteador de internet e até mesmo uma simples calculadora podem, corretamente, ser considerados computadores. O que a maioria das pessoas não sabe é que estes equipamentos têm em comum um componente que os mainframes - supercomputadores - mais modernos têm também: o processador. O problema é que quando nós referimos a este importante e fascinante componente eletrônico pensamos logo naqueles que equipam nosso PC ou notebook.

     Na verdade, há processadores de diversos tipos, com diversas capacidades e com uma infinidade de aplicações. Isso quer dizer que até mesmo seu controle remoto da TV, por exemplo, precisa de um processador para fazer os cálculos necessários e enviar a informação adequada para o decodificador da TV. Claro que seria impossível incluir neste aparelho um i3, mas um processador Z80, que é pequeno, barato e que apresenta um baixo consumo de energia cumpre bem esse papel (este também é o processador que equipava o GameBoy). Outros processadores baratos e simples equipavam aparelhos que ficaram populares e fizeram parte do nosso dia-a-dia, como o S1, que equipava os aparelhos de mp3 genéricos, em forma de pen-drive. Outros processadores, se tornaram tão populares que seguem sendo usados até os dias atuais. É justamente o caso dos processadores Motorola 6800, que equiparam os primeiros Apple Macintosh e seguem sendo produzidos até hoje com as devidas modernizações. Este é o mesmo processador que fazia parte do wafer de silício que compunha o chip DragonBall que equipou os Palms, predecessores dos modernos Tablets. Hoje, cotamos com outros processadores de baixo custo e com bom desempenho, como os da família ARM, que equipam uma boa parcela dos Smartphones e, até mesmo, vídeo games, como o GameBoy Advanced. O importante é entender que cada um desses chips, com sua variedade de fabricantes, têm seu próprio conjunto de instruções que os possibilita realizar uma quantidade grande de tarefas, como é o caso dos chips Sigmatel STMP3510, que são capazes de sintonizar rádio FM, reproduzir arquivos em formato mp3, gerenciar o consumo e carga da bateria, entre outras tarefas (veja a foto).

Processador Sigma - SMTP3510 usado em mp3 e mp4 player genéricos

Como tudo começou.

     É correto afirmar que tudo isto só se fez possível com a invenção dos transistores. Dizemos isto porque o processador é, em si, um agrupamento de milhões de transistores que realizam milhões de cálculos por segundo. Toda está quantidade de componentes eletrônicos é impresso numa pastilha de silício (comumente chamada de wafer de silício) com condutores elétricos tão finos que chegam a medir apenas dois átomos de largura, estes interligam os transistores que, igual aos condutores elétricos, têm medidas igualmente impressionantes de tão pequenas. Um transistor atual - de um processador moderno - chega a medir impressionantes 45 nanômetros (uma célula humana pode variar entre 100 e 500 nanômetros).
Apesar de o primeiro protótipo do transistor ter aparecido em 1947, o primeiro processador comercial só apareceu em 1971. Este, se chamava 4004 e era produzido pela Intel. Apesar de ser bastante simples (seu barramento de dados era de apenas 4 bits e sua velocidade de 740 KHz, ou seja, apenas 740 mil siclos por segundo) este processador equipou a sonda espacial Pioneer 10, lançada em 1972 e que foi usada até 1998, ano em que a distância da Terra tornou impossível a captação de seu sinal. Além disso, este pequeno processador de apenas 2300 transistores (contra os cerca de 731.000.000 de um Core i7) foi também usado em calculadoras, onde causou uma revolução.



Processador Intel 4004, primeiro processador comercial do mundo

     Em 1974, a Intel lançou o processador 8080 e, pouco tempo depois, o 8088, que foi o processador usado nos primeiros PCs. O interessante é que os componentes da época não conseguiam alcançar a velocidade do barramento de dados do 8086, que era de 16 bits, então, a Intel, para resolver este problema, lançou o 8088, este, tinha um barramento que funcionava externamente a 8 bits - o que o tornava compatível com as placas da época -, mas internamente, o chip funcionava a 16 bits, o que o tornava extremamente rápido para os padrões existentes.


Processador Intel 8088 - Usado nos primeiros PCs


     O interessante é que este processador, embora ainda muito simples, já contava com 29.000 transistores e operava na frequência de 4,7 MHz, ou seja, tinha a capacidade realizar 4,7 milhões de siclos por segundo. Claro que se compararmos com os processadores atuais e o complexo processo de fabricação dos mesmos, estes chips que, sequer contavam com memória cache interna, parecem simples demais para os dispositivos atuais, no entanto, alguns destes primeiros chips foram produzidos por muitos anos e seu processo de fabricação artesanal serviu de base para os modernos processadores multinúcleos que equipam, desde smartphones, até potentes mainframes.
     Esta série de artigos falará ainda de processos de construção dos chips, bem como aplicabilidade nos mais diversos setores. Falaremos também sobre processamento monotarefa, multitarefa e distribuído (clusterização).