como funciona v0 - ?· Processador$ Um’processador’eletrônicodigitalé’umcircuito’constituído’por’uma’…

  • Published on
    10-Nov-2018

  • View
    212

  • Download
    0

Embed Size (px)

Transcript

  • Verso 0.8 Captulo 2 Como funciona um computador eletrnico digital?

    Um computador um dispositivo que faz clculos, executa instrues definidas e resolve problemas. Por ser eletrnico, funciona com o deslocamento de eltrons em circuitos e, por ser digital, as correntes passam ou no passam, enquanto em um computador analgico, em contraposio ao digital, pode haver variao contnua de voltagem ou corrente. Atualmente os circuitos analgicos so restritos aos dispositivos de digitalizao, como cmaras digitais ou placas de som acopladas a microfones. A base do funcionamento de um computador o transstor, dispositivo com trs polos. No transistor, pode haver ou no passagem de corrente eltrica entre dois dos polos, o que determinado pela existncia de carga eltrica no terceiro polo. Existem variaes nos transstores, mas o fato de que eles podem agir em uma cadeia liga-desliga a propriedade que importante para a existncia de computadores eletrnicos digitais.

    Um transstor pode ser esquematizado conforme se mostra na figura 1:

    Figura 1. Esquema de um transistor (tipo NPN, h outros tipos). A corrente eltrica entre C (de coletor) e E (de emissor) ocorre se houver carga eltrica em B (de base). Os transistores so possveis graas existncia de materiais chamados semicondutores, que possuem a propriedade de transmitirem corrente eltrica ou no. Quimicamente so feitos de Silcio ou Germnio, misturados com quantidades muito pequenas de Arsnio ou Boro. Para enfatizar: se existe uma diferena de potencial (voltagem) entre C e E, a corrente entre esses terminais passar somente se houver carga eltrica em B.

    Por causa das propriedades dos transstores, eles podem ser usados como chaves liga-desliga, com a vantagem que eles no tm partes mveis, como os rels. Essa propriedade, alm de evitar o desgaste inerente existncia de partes mveis, possibilitas grande velocidades.

  • Processador Um processador eletrnico digital um circuito constitudo por uma

    srie de transstores que podem executar operaes lgicas e matemticas. Na figura 2 temos exemplos de trs circuitos lgicos simples: A porta AND, a porta OR e a porta NOT, que significam e, ou e no, respectivamente.

    Figura 2. Portas lgicas AND, OR e NOT. Acima, esto os circuitos eletrnicos (simplificados) das portas lgicas correspondentes. No meio, os smbolos dessas portas usados em circuitos de maior complexidade. Abaixo, esto as tabelas-verdade de cada uma das portas mostradas.

    A lgica dos componentes eletrnicos segue a chamada lgica

    booleana, que se refere ao matemtico e filsofo ingls George Boole (1815-1864), que lanou as bases desse sistema lgico. A lgica do computador pode no equivaler lgica que empregamos no dia a dia. Por exemplo, na porta lgica OR, se qualquer uma das duas chaves liga-desliga do circuito estiver ligada, a corrente passar, pois os transstores esto montados em paralelo. O mesmo ocorrer se ambas estiverem ligadas. Somente no haver corrente se as duas chaves estiverem desligadas. Na lgica do senso comum, o ou, s vezes significa outra situao. Por exemplo, o namorado pergunta para a namorada: Querida, passaremos o Rveillon desse ano na casa da sua me ou da minha?. Evidentemente, ao contrrio do que ocorreria no caso do circuito OR, no existe a possibilidade de se passar o Rveillon de um determinado ano em duas casas distintas, pois o Rveillon se refere passagem de um ano para outro, fenmeno que ocorre com uma durao infinitesimal, o que torna impossvel a presena em dois Rveillons distintos em um mesmo ano, mesmo se fosse em casas muito prximas. Felizmente, existe a possibilidade de se construir circuitos para situaes semelhantes. Nesse caso, empregaramos o circuito chamado XOR, que significa OU exclusivo. As nicas possibilidades aceitas seriam passar o Rveillon na casa da me da namorada ou passar o Rveillon na casa da me do namorado (figura 3).

  • Figura 3. Porta XOR (Ou exclusivo). Diagrama simplificado (que emprega diagramas de circuitos eletrnicos j mostrados anteriormente), smbolo e tabela verdade.

    Para evitar qualquer ambiguidade no emprego de operaes lgicas,

    por conta de uma possvel falta de equivalncia entre a lgica booleana e a lgica do senso comum, recomenda-se a consulta da tabela verdade das operaes. Isso especialmente importante quando existem operaes encadeadas que podem resultar em absurdos lgicos mas que so executados normalmente pelos computadores se forem mal programados. Para ilustrar esse aspecto, existe uma piada que circula nos meios NERDs mais ou menos assim: Uma mulher, casada com um cientista da computao, depois do trabalho de parto, quando o obstetra entrega a criana para o marido, pergunta: Meu bem, menino ou menina?. Ele imediatamente responde: Sim.

    Na figura 4 h um circuito que executa uma operao aritmtica, de soma, que bem mais complexa. Os circuitos apresentados fazem operaes em que entram dois bits e a sada de um bit (dois no caso da adio se considerarmos a informao binria vai um).

  • Figura 4. Esquema mostrando a maneira como uma soma executada eletronicamente, usando os smbolos correspondentes aos circuitos da figura 2. Na tabela verdade mostrada abaixo, considera-se a entrada vai um como estando sempre em 0.

    As operaes aqui esquematizadas na forma de circuitos eletrnicos servem, no entanto, somente para operaes de um bit ou de um par de bits. Um computador que processa somente um bit tem muito pouca utilidade. Para ser verdadeiramente prtico, um processador deve ser capaz de processar nmeros maiores de bits.

    Por exemplo, para fazer somas com nmeros de at 4 bits (de 0000 at 1111, que equivale, em decimal a 8+4+2+1 = 15), basta encadear 4 circuitos de soma como aquele mostrado na figura 4. Isso est mostrado na figura 5.

    Figura 5. Circuito que pode fazer soma de nmeros de at 4 bits. Cada caixa equivale a um circuito como aquele mostrado na figura 4. E A, E B, E V1 so Entrada A, Entrada B e Entrada Vai um. A sada vai 1 serve para se verificar se houve estouro na adio (que resultaria em um nmero maior que 15).

    Os primeiros microcomputadores comerciais lanados na dcada de 1980 possuam processadores que faziam operaes com 8 bits. Pouco mais tarde, foram produzidos processadores de 16 bits. Atualmente, embora haja muitos computadores que possuam processadores de 32 bits, a tendncia atual

  • que se estabilize em processadores de 64 bits, mas isso pode mudar com o tempo.

    Dentro de um processador, esto todos os circuitos necessrios para se fazer processamento, como aqueles que j vimos, os circuitos lgicos e de soma. Alm desses circuitos, h necessidade de outros, como para outras operaes lgicas, aritmticas e de controle de fluxo (instrues que poderiam ser traduzidas como Se encontrar essa situao, passe a fazer tal tarefa, ou execute tantas vezes esse conjunto de tarefas, ou execute as tarefas a seguir at que uma certa condio passe a ocorrer). Cada instruo corresponde a uma combinao de circuitos eletrnicos.

    A quantidade de transstores que podem ser includos em um nico circuito eletrnico tem crescido de forma acelerada. Nos fins da dcada de 1980 esse nmero passou de 1 milho de componentes, em 2010 ultrapassou a barreira de 1 bilho e continua crescendo. Entretanto esse nmero cresce agora mais pelo incremento do nmero de ncleos (processadores) do que pelo nmero de componentes eletrnicos. Um processador somente pode executar uma instruo por vez. Como os processadores atuais so muitssimo rpidos, eles executam instrues de muitas tarefas, alternando-as, mas dando a impresso que as est executando simultaneamente. No entanto, com processadores mltiplos (multicore, por exemplo), a simultaneidade de execuo de tarefas passa a ser real. Entretanto, para que os programas possam fazer uso de fato dessa crescente capacidade de processamento em paralelo, necessrio que os programas de computador sejam projetados de forma adequada para usar essa capacidade, ou seja, eles precisam ser paralelizados. Felizmente, na rea de Bioinformtica, j existem diversos programas paralelizados, ou seja, cujos cdigos levam em conta a presena de vrios processadores e tiram proveito da situao. Memria

    A memria de um computador eletrnico digital evidentemente tambm digital e pode armazenar temporria ou permanentemente a propriedade de transmitir ou no a corrente eltrica. Assim, da mesma forma que o processamento pode ser constitudo de um circuito com transstores, a memria tambm pode s-lo. Do ponto de vista prtico, existem dois tipos de memria: aquela que dura apenas enquanto existe corrente eltrica e aquela duradoura. Do ponto de vista do hardware, existem vrias maneiras de preservar um estado (deixa passar corrente/no deixa). As primeiras memrias eletrnicas datam da dcada de 1940 e eram constitudas por vlvulas eletrnicas. Atualmente as memrias so baseadas em transistores. A memria que acessada diretamente conhecida como memria RAM (random access memory). O random, embora signifique aleatrio, no implica que a memria seja sorteada ao acaso, mas que pode ser acessada diretamente sem ter que o sistema tenha que acessar as posies anteriores, por contraposio a uma memria em srie, que ocorre, por exemplo em fitas magnticas. Como analogia, podemos pensar em acionar um canal de TV com o seu controle remoto. O acionamento da tecla (, tecla favorita daqueles que, como eu, gostam de zapear) faz com que vejamos canais um em seguida ao outro, at acharmos o canal que desejamos. Isso equivalente ao acesso a uma memria em srie. Usando o teclado numrico do controle remoto da TV, entretanto, podemos

  • acionar o canal que desejamos diretamente, sem que tenhamos que passar pelos anteriores ou posteriores. A memria RAM tem tido um crescimento de capacidade exponencial, mas isso no significa que no haja limites. Um dos limites diz respeito ao nmero de bits de endereo disponvel no processador. Um processador com memria enderevel de 16 bits pode acessar 216 endereos diferentes (65.536). Com 32 bits, esse nmero vai a 232 = 4.294.967.296 endereos. Com 64 bits, podemos ter 1,819 endereos (~18 quintilhes).

    Cada memria tem, como caracterstica, um tempo que leva para ser acessada. A memria acessada mais rapidamente aquela dos registros internos do processador, mas so poucas e utilizadas por programadores. A seguir, existem os nveis de memria cache, que servem para armazenar temporariamente as informaes que foram lidas da memria RAM e levam de 5 a 20 ns para que o processador recupere as informaes nelas armazenadas. A memria RAM leva uns 70 ns. Um disco rgido muito rpido leva de 9 a 15 ms, umas 200 vezes mais lento que a memria RAM.

    Velocidade (Clock)

    A velocidade de um computador pode ser medida de vrias maneiras, sendo que a mais popular delas simplesmente a quantidade de ciclos por segundo que transita pelo processador. A corrente em um processador digital no flui continuamente, mas em pequenos pacotes(que no tm nada a ver com quanta, o plural de quantum, relevante em computao quntica, que no ser abordada nessa edio). Esses pacotes, ou pulsos de eletricidade, so gerados por um dispositivo eletrnico que usa a propriedade piezoeltrica de certos materiais, como os cristais de quartzo. Quando a corrente contnua passa por um cristal com certas caractersticas, a corrente passa a ter um formato quadrado. Atualmente, os computadores mais velozes no passam muito de 3 GHz, ou 3 bilhes de ciclos por segundo. Usando a tecnologia atual, existe um limite terico de 10 GHz por causa de limitaes de natureza fsica. Existe a prtica de overclock que a tentativa de aumentar a velocidade de um computador alterando o circuito que gera os pulsos. Como consequncia disso, h aumento da velocidade da mquina, mas h tambm aumento na produo de calor, o que pode arruinar os circuitos eletrnicos por superaquecimento ou at mesmo por derretimento. Assim, o overclock deve ser acompanhado de melhorias na refrigerao do sistema, havendo quem use refrigerao com lquidos ou at mesmo com nitrognio lquido!

    CPU ou UCP

    CPU a sigla para o termo em ingls Central Processing Unit, unidade central de processamento. Aqui no Brasil, CPU tem dois significados distintos. Os computadores de mesa tm sido organizados em mdulos, sendo que um dos mdulos abriga a fonte de alimentao/transformador de corrente, placa de circuito principal, alguns dispositivos de memria (RAM, EPROM com BIOS, etc.), processador, placas de interface (em srie e em paralelo), placas de vdeo. Esse mdulo, ao qual se conectam o teclado, mouse e monitor de vdeo, alm de outros perifricos, chamado de CPU. Outro emprego do termo CPU, mais universal, corresponde ao prprio processador.

    A figura 6 mostra a organizao dos elementos de um computador

  • Figura 7. Organizao dos elementos de um computador (arquitetura), vigente desde celulares at computadores centrais de bancos multinacionais. Sistema Operacional

    Podemos dizer que o sistema operacional um programa que gerencia a maneira como os demais programas do computador iro atuar, alm de direcionar a maneira como os dados sero organizados fisicamente nos dispositivos de memria. Embora a forma como toda informao armazenada sempre sob a forma de zeros e uns, o sistema operacional ser, entre outras tarefas, encarregado de fazer a correspondncia entre aquilo armazenado e o seu significado. A informao normalmente agrupada na unidade lgica que conhecida como arquivo. Um arquivo pode corresponder, por exemplo, a um texto simples, um documento, um conjunto de sequncias de nucleotdeos, um programa de computador, uma figura, um filme, uma estrutura tridimensional de uma macromolcula, etc.

    Os arquivos podem ser definidos portanto como um conjunto de zeros e uns que tm um determinado significado. Existem tipos de arquivo padronizados. H sistemas operacionais que exigem que os tipos de arquivos sejam explicitados. Por exemplo, se o nome de um determinado arquivo tarefa1.txt, os sistemas operacionais que descendem do sistema CP/M entendero que o arquivo trata-se de um texto por causa do sufixo .txt. Nesse caso, o programa que processar esse arquivo (ou o sistema operacional) ir agrupar o...