Microprocessador: diferenças entre revisões
Conteúdo apagado Conteúdo adicionado
bot: revertidas edições de 194.65.225.155 ( modificação suspeita : -17), para a edição 23968466 de !Silent |
← texto trocado por 'Tcham' Etiqueta: Remoção considerável de conteúdo |
||
Linha 1: | Linha 1: | ||
Tcham |
|||
{{Sem-notas|data=março de 2010}} |
|||
{{Portal de eletrônica}} |
|||
O '''microprocessador''', popularmente chamado de processador, é um [[circuito integrado]] que realiza as funções de cálculo e tomada de decisão de um [[computador]]. Todos os [[computador]]es e equipamentos eletrônicos baseiam-se nele para executar suas funções. |
|||
[[Ficheiro:InternalIntegratedCircuit2.JPG|thumb|right|220px|Arquitetura interna de um microprocessador dedicado para processamento de imagens de ressonância magnética, a fotografia foi aumentada 600 vezes, sob luz ultravioleta para se enxergar os detalhes]] |
|||
[[Ficheiro:AMD INFERIOR.JPG|thumb|Vista inferior de um Athlon XP 1800+ núcleo Palomino, um microprocessador moderno.]] |
|||
O microprocessador moderno é um [[circuito integrado]] formado por uma camada chamada de [[mesa epitaxial]] de [[silício]], trabalhada de modo a formar um [[cristal]] de extrema pureza, laminada até uma espessura mínima com grande precisão, depois cuidadosamente mascarada por um processo fotográfico e dopada pela exposição a altas temperaturas em fornos que contêm misturas gasosas de impurezas. Este processo é repetido tantas vezes quanto necessário à formação da microarquitetura do componente. |
|||
Responsável pela execução das instruções num sistema, o microprocessador, escolhido entre os disponíveis no mercado, determina, em certa medida a capacidade de processamento do [[computador]] e também o conjunto primário de instruções que ele compreende. O [[sistema operativo]] é construído sobre este conjunto. |
|||
O próprio microprocessador subdivide-se em várias unidades, trabalhando em altas freqüências. A [[ULA]](''Unidade Lógica Aritmética''), unidade responsável pelos cálculos aritméticos e lógicos e os [[registrador]]es são parte integrante do microprocessador na família [[x86]], por exemplo. |
|||
Embora seja a essência do computador, o microprocessador diferente do [[microcontrolador]], está longe de ser um computador completo. Para que possa interagir com o utilizador precisa de: [[Memória (computador)|memória]], dispositivos de [[entrada/saída]], um [[clock]], [[controlador]]es e conversores de sinais, entre outros. Cada um desses circuitos de apoio interage de modo peculiar com os programas e, dessa forma, ajuda a moldar o funcionamento do computador. |
|||
== História == |
|||
[[Ficheiro:KL MME U808.jpg|thumb|right|220px|[[Intel 8008]], um dos primeiros microprocessadores comerciais.]] |
|||
O primeiro microprocessador comercial foi inventado pela [[Intel]] em 1971 para atender uma empresa japonesa que precisava de um circuito integrado especial.<ref>MANUEL MARTINS, J., Introdução ao Projecto com Sistemas Digitais e Microcontroladores</ref> A Intel projectou o 4004 que era um circuito integrado [[programável]] que trabalhava com registradores de 4 [[bit]]s, 46 instruções, clock de 740Khz e possuía cerca de 2300 transistores. Percebendo a utilidade desse invento a Intel prosseguiu com o desenvolvimento de novos microprocessadores: [[Intel 8008|8008]] (o primeiro de 8 bits) e a seguir o [[Intel 8080|8080]] e o microprocessador [[Intel 8085|8085]]. O 8080 foi um grande sucesso e tornou-se a base para os primeiros microcomputadores pessoais na década de 1970 graças ao [[sistema operacional]] [[CP/M]]. Da Intel saíram alguns funcionários que fundaram a [[Zilog]], que viria a lançar o microprocessador [[Z80]], com instruções compatíveis com o 8080 (embora muito mais poderoso que este) e também de grande sucesso. A [[Motorola]] possuía o [[68000]] e a MOS Technology o [[6502]]. Todos esses microprocessadores de 8 bits foram usados em muitos computadores pessoais ([[Bob Sinclair]], [[Apple]], [[TRS]], [[Commodore]], etc). <br /> |
|||
Em 1981 a [[IBM]] decidiu lançar-se no mercado de computadores pessoais e no seu [[IBM-PC]] utilizou um dos primeiros microprocessadores de 16 bits, o [[8088]] (derivado do seu irmão [[8086]] lançado em 1978) que viria a ser o avô dos computadores atuais. A Apple nos seus computadores [[Macintosh]] utilizava os processadores da Motorola, a família [[68000]] (de 32 bits). |
|||
Outros fabricantes também tinham os seus microprocessadores de 16 bits, a Zilog tinha o [[Z8000]], a [[Texas Instruments]] o [[TMS9900]], a National Semiconductor tinha o 16032,mas nenhum fabricante teve tanto sucesso como a Intel, que sucessivamente foi lançando melhoramentos na sua linha 80X86, tendo surgido assim (por ordem cronológica) o [[8086]], [[8088]], [[80186]], [[80188]], [[80286]], [[80386]], [[80486]], [[Pentium]], [[Pentium Pro]], [[Pentium MMX]], [[Pentium II]], [[Pentium III]], [[Pentium IV]], [[Pentium M]], [[Pentium D]] e Pentium Dual Core. Para o [[PC AT|IBM-AT]] foi utilizado o 80286, depois um grande salto com o 80386 que podia trabalhar com [[memória virtual]] e [[multitarefa]], o 80486 com [[coprocessador matemático]] embutido e finalmente a linha [[Pentium]], com [[pipeline]] de processamento.<br /> |
|||
Como grande concorrente da Intel, a [[AMD]] aparece inicialmente como fabricante de microprocessadores da linha [[x86]] alternativa mas a partir de um certo momento deixou de correr atrás da Intel e partiu para o desenvolvimento de sua própria linha de microprocessadores: K6, [[Athlon]], [[Duron]], [[Turion]], [[Sempron]], etc. |
|||
Paralelamente à disputa entre Intel e AMD, a IBM possuia a linha [[PowerPC]] utilizada principalmente pelos microcomputadores da Apple. |
|||
A evolução tecnológica envolvida é surpreendentemente grande, de microprocessadores que trabalhavam com [[clock]] de dezenas de kHz e que podiam processar alguns milhares de instruções por segundo, atingiu-se clocks na casa dos 7 GHz e poder de processamento de dezenas de bilhões de instruções por segundo. A complexidade também cresceu: de alguns milhares de transístores para centenas de milhões de transístores numa mesma pastilha. |
|||
O CPU tem como função principal unificar todo o sistema, controlar as funções realizadas por cada unidade funcional, e é também responsável pela execução de todos os programas do sistema, que deverão estar armazenados na memória principal. |
|||
== Componentes == |
|||
O processador é composto por alguns componentes, cada um tendo uma função específica no processamento dos programas. |
|||
=== Unidade lógica e aritmética === |
|||
{{Artigo principal|[[Unidade lógica e aritmética]]}} |
|||
A [[Unidade lógica e aritmética]] (ULA) é a responsável por executar efetivamente as instruções dos programas, como instruções lógicas, matemáticas, desvio, etc. |
|||
=== Unidade de controle === |
|||
{{Artigo principal|[[Unidade de controle]]}} |
|||
A [[Unidade de controle]] (UC) é responsável pela tarefa de controle das ações a serem realizadas pelo computador, comandando todos os outros componentes. |
|||
=== Registradores === |
|||
{{Artigo principal|[[Registrador (informática)|Registrador]]}} |
|||
Os [[Registrador (informática)|registradores]] são pequenas memórias velozes que armazenam comandos ou valores que são utilizados no controle e processamento de cada instrução. |
|||
Os registradores mais importantes são: |
|||
* Contador de Programa (PC) – Sinaliza para a próxima instrução a ser executada; |
|||
* Registrador de Instrução (IR) – Registra a execução da instrução; |
|||
=== Memory management unit === |
|||
{{Artigo principal|[[MMU|Memory management unit]]}} |
|||
A [[MMU]] (em inglês: Memory Management Unit) é um dispositivo de [[hardware]] que transforma endereços virtuais em endereços físicos e administra a memória principal do computador. |
|||
=== Unidade de ponto flutuante === |
|||
Nos processadores atuais são implementadas unidades de cálculo de números reais. Tais unidades são mais complexas que ULAs e trabalham com operandos maiores, com tamanhos típicos variando entre 64 e 128 bits. |
|||
== Frequência de operação == |
|||
O relógio do sistema ([[Clock]]) é um circuito oscilador a cristal ([[piezoeletricidade|efeito piezoelétrico]]) que tem a função de sincronizar e ditar a medida de tempo de transferência de dados no computador. Esta freqüência é medida em ciclos por segundo, ou [[Hertz]]. |
|||
A capacidade de processamento do processador não está relacionada exclusivamente à frequência do relógio, mas também a outros fatores como: largura dos barramentos, quantidade de [[memória cache]], arquitetura do processador, tecnologia de co-processamento, tecnologia de previsão de saltos (branch prediction), tecnologia de [[pipeline]], conjunto de instruções, etc. |
|||
O aumento da frequência de operação nominal do processador é denominado [[overclocking]]. |
|||
== Arquitetura == |
|||
Existem duas principais [[arquiteturas de processadores|arquiteturas]] usadas em processadores: |
|||
* A arquitetura de [[Von Newmann]]. Esta arquitetura caracteriza-se por apresentar um barramento externo compartilhado entre dados e endereços. Embora apresente baixo custo, esta arquitetura apresenta desempenho limitado pelo gargalo do barramento. |
|||
* A arquitetura de [[Harvard]]. Nesta arquitetura existem dois barramentos externos independentes (e normalmente também memórias independentes) para dados e endereços. Isto reduz de forma sensível o gargalo de barramento, que é uma das principais barreiras de desempenho, em detrimento do encarecimento do sistema como um todo. |
|||
== Modelos de computação == |
|||
Existem dois modelos de computação usados em processadores: |
|||
* [[CISC]] (em inglês: ''Complex Instruction Set Computing'', Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; possui um grande conjunto de instruções (tipicamente centenas) que são armazenadas em uma pequena memória não-volátil interna ao processador. Cada posição desta memória contém as microinstruções, ou seja, os passos a serem realizados para a execução de cada instrução. Quanto mais complexa a instrução, mais microinstruções ela possuirá e mais tempo levará para ser executada. Ao conjunto de todas as microinstruções contidas no processador denominamos [[microcódigo]]. Esta técnica de computação baseada em microcódigo é denominada [[microprogramação]]. |
|||
* [[RISC]] (em inglês: ''Reduced Instruction Set Computing'', Computador com um Conjunto Reduzido de Instruções) usada em processadores PowerPC (da Apple, Motorola e IBM) e SPARC (SUN); possui um conjunto pequeno de instruções (tipicamente algumas dezenas) implementadas diretamente em hardware. Nesta técnica não é necessário realizar a leitura em uma memória e, por isso, a execução das instruções é muito rápida (normalmente um ciclo de clock por instrução). Por outro lado, as instruções são muito simples e para a realização de certas tarefas são necessárias mais instruções que no modelo CISC. |
|||
== Exemplos de microprocessadores == |
|||
[[Ficheiro:Atmel atmega32 mikrokontrolleri.jpg|thumb|left|Uma microcontroladora, um exemplo de microprocessador.]] |
|||
[[Ficheiro:Sis 315 gpu.JPG|thumb|Uma GPU.]] |
|||
* Microprocessadores — São utilizados nos [[Computador pessoal|computadores pessoais]], onde são chamadas de [[Unidade Central de Processamento]] (''CPU''), ''workstations'' e ''[[mainframe]]s''. Podem ser programados para executar as mais variadas tarefas. |
|||
* [[DSP|Processadores Digitais de Sinal]] (''DSP'' do inglês ''Digital Signal Processor'') — são microprocessadores especializados em processamento digital de sinal usados para processar sinais de áudio, vídeo, etc., quer em tempo real quer em off-line. Estão presentes, por exemplo, em aparelhos de [[CD]], [[DVD]] e [[televisão digital|televisores digitais]]. Em geral, realizam sempre uma mesma tarefas simples. |
|||
* [[Microcontrolador]]es — Processadores relativamente flexíveis, de relativo baixo custo, que podem ser utilizados em projetos de pequeno tamanho. Podem trazer facilidades como [[ADC|conversores A/D]] embutidos, ou um conjunto de instruções próprias para comunicação digital através de algum protocolo específico. |
|||
* [[Unidade de processamento gráfico|GPU]] — (ou Unidade de Processamento Gráfico), é um microprocessador especializado em processar gráficos. São utilizadas em placas de vídeo para fazer computação gráfica. |
|||
== Propósito geral e dedicado == |
|||
Durante o processo de desenvolvimento do ''design'' de um processador, uma das características que se leva em conta é o uso que ele se destina. Processadores gráficos e controladoras por exemplo não tem o mesmo fim que um processador central. |
|||
Processadores de propósito geral podem executar qualquer tipo de ''software'', embora sua execução seja mais lenta que o mesmo sendo executado em um processador especializado. |
|||
Processadores dedicados são fabricados para executarem tarefas específicas, como criptografia, processamento vetorial e gráfico, sendo nesse caso bem mais rápidos do que processadores de propósito geral em tarefas equivalentes. |
|||
No caso do processamento gráfico, existem as [[GPU]]s, que são microprocessadores geralmente com memória dedicada e especialmente desenvolvidos para cálculos gráficos. |
|||
Nem sempre os processadores seguem definidamente esses dois modelos, sendo o motivo disso que muitos processadores modernos incorporam processadores especializados (co-processador), para cálculos de criptografia, processamento de vetores, etc. |
|||
== Processadores multinucleares == |
|||
{{Artigo principal|[[multinúcleo|Processadores multinucleares]]}} |
|||
Até poucos anos atrás usou-se microprocessadores para atividades domésticas ou de negócios com simples núcleo. Atualmente estão sendo utilizados microprocessadores de múltiplos núcleos para melhorar a capacidade de processamento. Espera-se que no futuro os Sistemas Operacionais domésticos sejam [[compilador|compilados]] para trabalhar com processadores de múltiplos núcleos corretamente, realizando assim inúmeras tarefas ao mesmo tempo (como já acontece com os supercomputadores). |
|||
== Sistemas multiprocessados == |
|||
{{Artigo principal|[[Multiprocessamento]]}} |
|||
Em muitos sistemas o uso de um só processador é insuficiente. A solução nesses casos é usar dois ou mais processadores em multi processamento, aumentando assim a quantidade de processadores disponíveis ao sistema operacional. |
|||
Sistemas multiprocessados podem ser de basicamente dois tipos: |
|||
* Multiprocessamento simétrico (SMP): os processadores compartilham a mesma memória, embora possam ter caches separadas. O sistema operacional deve estar preparado para trabalhar com coerência de caches e, principalmente, evitar condições de corrida na memória principal. |
|||
* Acesso não uniforme à memória (NUMA): a cada processador é associado um banco de memória. Nesse caso, o sistema operacional trata cada banco separadamente, pois cada banco tem um custo de acesso diferente, dependendo de qual o processador a que está associado e onde está sendo executado o processo que tenta acessar a memória. |
|||
== Capacidade de processamento == |
|||
A capacidade de processamento de um microprocessador é de certa forma difícil de medir, uma vez que esse desempenho pode se referir a quantidade máxima teória de instruções que podem ser executadas por segundo, que tipos de instruções são essas, tendo também a influência de sua arquitetura e de sua comunicação externa, mas num contexto geral a capacidade máxima teórica de processamento é medida em Flops (instruções de ponto flutuante), podendo essa ser de precisão simples, dupla, quádrupla, dependendo do contexto, e em MIPS (milhões de instruções por segundo), sendo essas operações com números inteiros. |
|||
Somente a capacidade máxima teórica de um microprocessador não define seu desempenho, somente dá uma noção da sua capacidade, uma vez que sua arquitetura, barramento com a memória entre outros também influenciam no seu desempenho final, sendo assim, sua capacidade de processamento é medida comparando a velocidade de execução de aplicativos reais, podendo assim, testar seu desempenho em atividades comuns. |
|||
== {{Ver também}} == |
|||
* [[Anexo:Lista de arquiteturas de processadores]] |
|||
== {{Ligações externas}} == |
|||
* [http://informatica.hsw.uol.com.br/microprocessadores.htm HowStuffWorks - Como funcionam os microprocessadores] |
|||
* [http://www.techpowerup.com/cpudb/ CPU Database (relação de processadores)] |
|||
{{ref-section}} |
|||
{{Bloco de navegação |
|||
|Computação}} |
|||
[[Categoria:Hardware]] |
|||
[[Categoria:Arquitetura de computadores]] |
|||
[[Categoria:Microprocessadores| ]] |
|||
[[af:Mikroverwerker]] |
|||
[[an:Microprocesador]] |
|||
[[ar:معالج دقيق]] |
|||
[[az:Mikroprosessor]] |
|||
[[be:Мікрапрацэсар]] |
|||
[[bg:Микропроцесор]] |
|||
[[bn:মাইক্রোপ্রসেসর]] |
|||
[[br:Mikroprosesor]] |
|||
[[ca:Microprocessador]] |
|||
[[da:Mikroprocessor]] |
|||
[[de:Mikroprozessor]] |
|||
[[el:Μικροεπεξεργαστής]] |
|||
[[en:Microprocessor]] |
|||
[[es:Microprocesador]] |
|||
[[et:Mikroprotsessor]] |
|||
[[eu:Mikroprozesadore]] |
|||
[[ext:Microprohessaol]] |
|||
[[fa:ریزپردازنده]] |
|||
[[fi:Mikroprosessori]] |
|||
[[fr:Microprocesseur]] |
|||
[[gl:Microprocesador]] |
|||
[[hi:माइक्रोप्रोसेसर]] |
|||
[[hr:Mikroprocesor]] |
|||
[[id:Mikroprosesor]] |
|||
[[is:Örgjörvi]] |
|||
[[it:Microprocessore]] |
|||
[[ja:マイクロプロセッサ]] |
|||
[[ka:მიკროპროცესორი]] |
|||
[[kk:Микропроцессор]] |
|||
[[kn:ಮೈಕ್ರೊಪ್ರೊಸೆಸರ್]] |
|||
[[ko:마이크로프로세서]] |
|||
[[ku:Mîkroprosesor]] |
|||
[[la:Processor]] |
|||
[[lt:Mikroprocesorius]] |
|||
[[mk:Микрообработувач]] |
|||
[[ml:മൈക്രോപ്രൊസസ്സർ]] |
|||
[[ms:Mikropemproses]] |
|||
[[nl:Microprocessor]] |
|||
[[no:Mikroprosessor]] |
|||
[[pl:Mikroprocesor]] |
|||
[[ro:Microprocesor]] |
|||
[[ru:Микропроцессор]] |
|||
[[scn:Micruprucissura]] |
|||
[[si:ක්ෂුද්ර සැකසුම් ඒකකය]] |
|||
[[simple:Microprocessor]] |
|||
[[sk:Mikroprocesor]] |
|||
[[sr:Микропроцесор]] |
|||
[[sv:Mikroprocessor]] |
|||
[[ta:நுண்செயலி]] |
|||
[[tg:Микропратсессор]] |
|||
[[th:ไมโครโพรเซสเซอร์]] |
|||
[[tr:Mikroişlemci]] |
|||
[[uk:Мікропроцесор]] |
|||
[[vi:Vi xử lý]] |
|||
[[zh:微处理器]] |
Revisão das 23h36min de 1 de abril de 2011
Tcham