terça-feira, 28 de setembro de 2010

Resumo

Os processadores são chamados de cérebro do computador, pois os mesmos são responsáveis pelo controle das funções de cálculos e tomadas de decisões de um computador. Como todos os componentes do computador, o processador também seguiu a linha de se transformar e evoluir.
Para alguns teóricos os processadores surgiram com o famoso ENIAC, computador formado por válvulas, que eram o que existia de mais avançado na época, e que ocupava uma sala inteira, procurando então alternativas mais baratas, e que ocupassem menos espaços foi lançado o transistor, que revolucionou o processamento nos computadores, visto que eram mais econômicos, não possuíam partes móveis e duravam muito mais que as válvulas. E quando os descobriram que poderiam se colocar vários transistores sobre uma placa de silício, nasceu o processador em 1971, o 4004 da Intel, e daí veio evoluindo até os avançados e modernos core I7.

Introdução

Atualmente os veículos comerciais trazem uma série de propagandas sobre a nova linha de processadores da Intel, os core I3, I5 e I7, despertando nos consumidores a vontade de ter um computador com mais memória ram e com um processador mais avançado, mesmo sem saber seu real propósito no computador, tendo a simples ideia de aumento de velocidade. Mas, o que é um processador e para que ele serve?
O processador é o chamado cérebro do computador, visto que ele é o responsável por processar a maior parte das informações, controlando as funções da máquina e os processos de tomada de decisão. O transistor é 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, ou seja quanto mais transistores, maior a velocidade de processamentos que são executados por segundo. Hoje os processadores são cada vez menores e eficientes, mas, assim como os computadores, eles evoluíram
Em 1971, foi lançado o primeiro processador do mundo, o 4004 da Intel, desde então, foram os componentes dos computadores que mais evoluíram. E foi o dispositivo que evoluiu mais rápido em toda a história da humanidade. Portanto o transistor foi considerado a invenção do século.
Para Morimoto o grande segredo para esta evolução vertiginosa pode ser contado em uma única palavra: miniaturização. Foi justamente a miniaturização dos transístores que permitiu criar o circuito integrado, em seguida o microchip e continuar permitindo criar processadores com cada vez mais transístores e operando a frequências cada vez mais altas.
Para se ter uma ideia do quanto as técnicas de construção de processadores evoluíram, o 4004 possuía apenas 2.000 transístores, e operava a apenas 740 KHz, um Pentium 4 tem 35.000.000 de transístores e opera a até 1.5 GHz e nos atuais core como o core 2 quad, cada núcleo é composto por 731 milhões de transístores operando a 2.56 GHZ.

Arquitetura de Von Neumann


A composição do sistema a partir de três subsistemas básicos: CPU, memória principal e sistema de entrada e saída, são características da máquina Von Neumann.
A CPU (unidade central de processamento), por sua vez, tem três blocos principais: unidade de controle (UC), unidade lógico-aritmética (ULA) e registradores, incluindo-se aí um registrador contador de programa (PC) que indica a posição da instrução a executar.
As Características das máquinas Von Neumann consistem no conceito de programa armazenado, execução sequencial de instruções, existência de um caminho único entre memória e unidade de controle.
Durante sua operação, a execução de um programa é uma sequência de ciclos de máquina von Neumann, ou seja, buscam instrução (fetch), fazem a transferência dessa instrução da posição de memória apontada por PC para a CPU e executam-na, daí a unidade de controle decodifica a instrução e gerencia os passos para sua execução pela ULA.

Conceitos básicos: Clock e Hertz

Para sincronizar coisas dentro de um computador usa o sinal do clock. A figura abaixo é um exemplo desses sinais.



Figura: Sinal de clock.
O sinal de clock: é uma onda quadrada passando de “0” a “1” a uma taxa fixa. Nessa figura pode ver três ciclos de clock (“pulsos”) completos. O início de cada ciclo é quando o sinal de clock passa de “0” a “1”; o que é marcado com uma seta.  A unidade de medida do clock é o Hertz (Hz), que é o número de ciclos de clock por segundo. Um clock de 100 MHz significa que em um segundo existem 100 milhões de ciclos de clock.
Os ciclos de clock são utilizados para todas as medidas de tempo no computador. Por exemplo, para começar a transferência de dados, leva cinco ciclos de clock completo uma memória RAM com latência “5”. Para executar as instruções, o CPU necessita de um determinado número de ciclos de clock.       
O processador tem uma tabela que lista a quantidade de ciclos de clock que serão necessária para a execução de cada instrução. Portanto, para um processador com apenas uma unidade de execução, em duas instruções a serem executadas, sabendo que uma levará 7 ciclos de clock, ele automaticamente só começará a excução da próxima instrução no 8o pulso de clock. Para os processadores modernos é possível executar a segunda instrução paralelamente com a primeira, pois, possuem várias unidades de execução

Arquitetura externa de um processador - Os barramentos

Os barramentos são divididos em três grupos funcionais: dados, endereços e controle.
barramento de dados é utilizado pra transferir dados entre os módulos do sistema. Normalmente, este barramento contém 32 linhas (largura do barramento). Como cada linha consegue transmitir apenas um bit por vez, a quantidade de linhas determina quantos bits podem ser transferidos de uma vez. O desempenho do sistema sofre forte influência da largura do barramento de dados.
barramento de endereços é utilizado para designar a origem ou destino dos dados que estão sendo transferidos pelo barramento de dados. Um fato interessante é que a largura do barramento de endereços determina a capacidade máxima da memória. Normalmente, utilizamos as linhas de endereços também para endereçar as portas de módulos de E/S. Geralmente, os bits mais significativos identificam um componente específico do sistema e os bits menos significativos identificam uma porta de E/S ou uma posição de memória (endereço).
As linhas de controle são importantes, pois controlam o acesso e a utilização das linhas de dados e de endereços pelos componentes do sistema, uma vez que o barramento é compartilhado. Os sinais de controle podem ser destinados a emitir comandos e também informações de temporização (clock). Os sinais de comandos são enviados para especificar o tipo de operação que será executada (escrita e leitura na memória, escrita e leitura em porta de E/S, requisição e concessão do barramento, interrupção, etc.).

Arquitetura interna de um processador - ULA, UC e Registradores

A Unidade Lógica e Aritmética (ULA) é um dos núcleos de processamento do processador. A ULA processa os dados dos registradores para gerar outros dados que são resultados de uma operação. A ULA realiza operações aritméticas (soma, subtração, multiplicação, divisão) e operações lógicas (AND, OR, XOR, NOT, SHIFTS, ROTATES). A ULA trabalha com o dobro do clock interno do processador, aumentando o desempenho em cálculos usando números inteiros. Por exemplo, em um hipotético Pentium 4 de 800 MHz, a sua ULA trabalhará a 1,6 GHz.
A Unidade de Controle (UC) é um componente do processador responsável por gerar sinais elétricos que controlam outros componentes, como a ULA e os registradores. Os sinais são gerados com base na instrução que está sendo processada. A ULA recebe esses sinais para saber qual operação executar (soma, divisão, AND, OR...), quais registradores fornecerão dados de entrada para ULA e qual será o registrador que armazenará o resultado da operação. Seja a instrução de soma add al, cl de um processador hipotético; para executar esta instrução, a UC envia um sinal para a ULA indicando que ela deve realizar uma operação de soma. A UC também envia um sinal para os registradores al e cl, indicando que eles devem fornecer seus dados para a ULA somá-los. A UC gera outro sinal para indicar que o registrador al deve armazenar o resultado da soma gerado pela ULA.
O registrador é um dispositivo de armazenamento de dados existente dentro do processador. O tamanho do registrador é medido em bits, variando de 32 a 256 bits nos processadores atuais. O conjunto de todos os registradores forma uma memória interna do processador, de alta velocidade, mas de baixa capacidade se comparada com outras memórias (cache principal, disco rígido, CD). O registrador é a memória mais rápida da hierarquia de memória do computador; é possível ler e escrever rapidamente nele.

Lei de Moore

Segundo Morimoto, a "profecia" feita por Gordon Moore, um dos fundadores da Intel e presidente na época, feita durante a década de 70 de que a partir dali o poder de processamento dos processadores dobraria a cada 18 meses. A lei de Moore sobreviveu durante mais de duas décadas, mantendo-se precisa até os dias de hoje, e ainda não parece ter prazo de validade definido.













Muitos acreditam que os processadores possam continuar dobrando de potência a cada 18 meses, ou até em menos tempo pelos próximos 50 ou 80 anos. Apesar do ciclo evolutivo dos transistores estar próximo do fim, eles ainda devem continuar evoluindo por pelo menos mais uma década, até os limites das técnicas de 0.02 mícron, onde cada gate terá o equivalente a apenas um átomo de ouro de largura. Atualmente estamos migrando dos 0.18 para os 0.13 mícrons, ainda restam pelo menos mais 5 gerações pela frente, as barreiras de 0.10, 0.07, 0.05, 0.03 e 0.02 mícron. Depois disso, ainda restará aos fabricantes otimizar suas arquiteturas e adicionar mais transístores. Esgotadas as possibilidades dos transístores, ainda restam os chips óticos, os nanotubos, os processadores quânticos e o que mais poderá surgir pela frente. A evolução dos computadores não deverá parar tão cedo.


O processador AMD Athlon K7

Atualmente se houve falar muito nos processadores da Intel, e pra quem não conhece é como se ela fosse a única fabricante de processadores do mercado. Porém essa não é a verdade existem mais fabricantes de processadores, como a Sun MicroSystem e a empresa americana, considerada a maior concorrente da Intel, que é a AMD (Advanced Micro Devices). Ela construiu seu primeiro processador para computadores domésticos em 1995, com o k-5, e daí seguiram-se as evoluções.
Houveram  poucas  mudanças na arquitetura dos processadores AMD desde o K6 ao K6-3. O K6-2 trouxe as instruções 3D-Now! Enquanto o K6-3 ganhou um cache L2 que trabalha na mesma frequência do processador e passou a utilizar o cache encontrado na placa mãe aproveitado na forma de um cache L3.
Não houveram muitas mudanças no núcleo do processador. Apenas adicionaram alguns “acessórios” ao K6, que o tornaram mais rápido. O lançamento de processadores trabalhando à frequências mais altas só foram possível devido a melhora nas técnicas de produção.
Os processadores da AMD, por muito tempo, apresentavam problema de desempenho em aplicativos gráficos. Desejava-se que apresentassem um processador capaz de produzirem um desempenho igual ou superior ao da Intel. Daí foi lançado, o K7 como era chamado até então ganhou o apelido de Athlon.



Athlon K7

O Athlon foi um projeto de processador completamente novo, ao contrário do Pentium III que utiliza a mesma arquitetura do Pentium II, apenas com as novas instruções SSE e um cache L2 mais rápido, no caso da versão Coppermine.
A fim de atingir todas as metas de desempenho, a AMD optou por abandonar a idéia de processador de baixo custo, como tínhamos no K6-x e optar por um projeto realmente “generoso” em termos de número de transístores e recursos. Apesar de tudo, a AMD conseguiu manter os preços de venda mais baixos que os processadores Intel, pois passou a trabalhar com margens de lucro mais estreitas.
Um processador é mais ou menos como uma fábrica. Desde que o projeto seja bem elaborado, quanto mais componentes forem adicionados e mais “operários” tivermos trabalhando, maior será a produção em cada ciclo de clock. É por isso que um Pentium de 100 MHz é muito mais rápido que um 486 também de 100 MHz, e é nisso que a AMD apostou suas fichas enquanto produzia seu novo processador.

Referências

Barramentos.  Aula 08. Prof. Msc Jean M. Laine. Disponível em: 
<http://regulus.pcs.usp.br/~jean/arquitetura/Aula%2008%20%20Barramentos.pdf> Acessado em: 08/09/2010

Barramentos. Clube do Hardware. Disponível em:<http://www.clubedohardware.com.br/pagina/barramentos> Acessado em: 07/09/2010

MORIMOTO, Carlos Eduardo. Guiadohardware.net. <http://www.guiadohardware.net/artigos/evolucao-processadores/ > Acessado em: 21/09/2010

________________________Guiadohardware.net.  <http://www.guiadohardware.net/termos/lei-de-moore> Acessado em: 21/09/2010

________________________Guiadohardware.net.   

Centro de Referência Virtual do Professor. Disponível em <crv@educacao.mg.gov.br> Acessado em 21/09/2010