Preview only show first 10 pages with watermark. For full document please download

Arquitetura De Computadores

Dados de arquitetura

   EMBED

  • Rating

  • Date

    December 2018
  • Size

    525.8KB
  • Views

    2,858
  • Categories


Share

Transcript

< Hardware > Arquitetura de Computadores: Retorna Sem Flash < UniverCidade > Os componentes básicos de um computador A função de um computador é processar dados. Para processá-los é preciso movê-los até a unidade central de processamento, armazenar resultados intermediários e finais em locais onde eles possam ser encontrados mais tarde e controlar estas funções de transporte, armazenamento e processamento. Portanto, tudo que um computador faz pode ser classificado como uma destas quatro ações elementares: processar, armazenar e mover dados ou controlar estas atividades. Por mais complexas que pareçam as ações executadas por um computador, elas nada mais são que combinações destas quatro funções básicas. A função de mover dados é executada através do fluxo da corrente elétrica ao longo de condutores que ligam os pontos de origem e destino e não depende de elementos ativos. As funções de controle são igualmente executadas através de pulsos de corrente, ou "sinais", propagados em condutores elétricos (estes pulsos são interpretados pelos componentes ativos, fazendo-os atuar ou não dependendo da presença ou ausência dos sinais). Portanto estas duas funções, transporte e controle, para serem executadas só dependem da existência de condutores elétricos (fios, cabos, filetes metálicos nas placas de circuito impresso, etc.) e não exigem o concurso de componentes ativos. Restam as funções de armazenar e processar dados. Processar dados consiste basicamente em tomar decisões lógicas do tipo "faça isso em função daquilo". Por exemplo: "compare dois valores e tome um curso de ação se o primeiro for maior, um curso diferente se ambos forem iguais ou ainda um terceiro curso se o primeiro for menor". Todo e qualquer processamento de dados, por mais complexo que seja, nada mais é que uma combinação de ações elementares baseadas neste tipo de tomada de decisões simples. O circuito eletrônico elementar capaz de tomar decisões é denominado "porta lógica" (logical gate), ou simplesmente "porta". Armazenar dados consiste em manter um dado em um certo local enquanto ele for necessário, de tal forma que ele possa ser recuperado quando o sistema precisar dele. O circuito lógico elementar capaz de armazenar um dado (expresso sob a forma do elemento mínimo de informação, o "bit", que pode exprimir apenas os valores numéricos "um" ou "zero" ou ainda os valores lógicos equivalentes, "verdadeiro" ou "falso") é a célula de memória – um dispositivo capaz de assumir um dentre dois estados possíveis e manter-se nesse estado até que alguma ação externa venha a alterá-lo (dispositivo "bi-estável"). Tendo isto em vista, pode-se concluir que todo computador digital, por mais complexo que seja, pode ser concebido como uma combinação de um número finito de apenas dois dispositivos básicos, portas lógicas e células de memória, interligados por condutores elétricos. Resta ver como é possível implementar estes dispositivos usando componentes eletrônicos. Sistema binário Os computadores utilizam internamente o sistema binário (sistema numérico posicional de base 2). A característica mais notável deste sistema numérico é a utilização exclusiva dos algarismos "1" e "0", os chamados "dígitos binários". Através do sistema binário, todas as quantidades e todos os valores de quaisquer variáveis poderão ser expressos usando uma combinação de um determinado número de dígitos binários, ou seja, usando apenas os algarismos "1" e "0". O uso do sistema binário pelos computadores decorre do fato dessas máquinas se basearem em circuitos elétricos ou eletrônicos. Isto porque a grande maioria dos componentes de circuitos elétricos podem assumir apenas um dentre dois estados. Por exemplo: interruptores podem estar fechados ou abertos, capacitores carregados ou descarregados, lâmpadas acesas ou apagadas, circuitos energizados ou desenergizados e assim por diante. Isto facilita extremente a representação de grandezas expressas no sistema binário usando estes componentes. Para entender a razão disto, imagine, por exemplo, que se deseje representar o número dez mediante um conjunto de lâmpadas, onde uma lâmpada acesa representa o algarismo "1" e uma lâmpada apagada o algarismo "0". No sistema binário, o número dez assume a forma "1010" (para entender o fenômeno basta saber que qualquer número pode ser expresso na base dois usando apenas os algarismos "1" e "0"; portanto, mesmo que você não saiba fazer a conversão de números do sistema decimal para o binário, acredite que "dez" em binário é "1010" e siga adiante; se desejar uma explicação mais detalhada, consulte a literatura técnica e informe-se sobre sistemas numéricos e conversão de bases). Portanto, para representar o número dez bastam quatro lâmpadas uma ao lado da outra, a da esquerda acesa, sua vizinha apagada, a seguinte acesa e a última da direita apagada, na configuração "1010". É claro que isto pode ser feito igualmente usando interruptores fechados e abertos, circuitos energizados e desenergizados ou capacitores carregados e descarregados (na verdade, alguns circuitos de memória usados nos computadores empregam capacitores microscópicos para armazenar valores binários). Todo dispositivo que possa assumir um dentre dois estados possíveis pode ser utilizado para representar quantidades expressas no sistema binário. O uso exclusivo dos algarismos "1" e "0" nos circuitos internos dos computadores pode levar a crer que eles apenas servem para resolver problemas muito específicos, cujas grandezas de entrada e saída assumam apenas dois valores e que portanto sua utilização há de ser extremamente limitada. Esta conclusão é falsa. Na verdade, toda e qualquer grandeza do mundo real, desde as cores e posições dos pontos que formam a imagem da Mona Lisa, os compassos, timbres e notas musicais que compõem a Aria da Quarta Corda, o conjunto de caracteres que consubstanciam a Divina Comédia até a sucessão ordenada de aminoácidos que formam o DNA dos seres vivos, em suma: toda e qualquer criação humana ou da natureza, seja ela qual for, pode ser codificada e representada (com maior ou menor precisão) sob a forma de um conjunto de números. E estes números podem ser expressos no sistema binário. É por isso que o computador é uma máquina tão versátil e se presta a atividades tão disparatadas como calcular, escrever, desenhar, reproduzir músicas ou vídeo. Com um computador é possível pintar e bordar. Para que um dado ou informação possa ser processado por um computador, basta que ele seja codificado de tal forma que possa ser "modelado" através de um conjunto de números. Estes números serão então expressos no sistema binário e processados pelo computador. O processo de conversão das grandezas do mundo real em quantidades expressas no sistema binário chama-se "digitalização" (por exemplo: o dispositivo denominado "escaner" nada mais é que um digitalizador de imagens, enquanto o processo de gravação de um CD de áudio é a digitalização de sons). Mas a digitalização é apenas o passo inicial: transformar as grandezas do mundo real em números e exprimi-las no sistema binário. O passo seguinte é escolher uma ferramenta para trabalhar com os valores assim expressos. Esta ferramenta é a lógica digital. Lógica digital Todo o raciocínio lógico é baseado na tomada de uma decisão a partir do cumprimento de determinadas condições. Inicialmente tem-se os dados de entrada e uma condição (ou uma combinação de condições). Aplica-se a condição aos dados de entrada para decidir quais são os dados de saída. Talvez o exemplo mais célebre e mais sucinto disto seja o conhecido apotegma de Descartes: "Penso, logo existo". A lógica digital não é diferente. Mas apresenta uma peculiaridade: trabalha apenas com variáveis cujos valores alternam exclusivamente entre dois estados e não admitem valores intermediários. Estes estados podem ser representados por "um" e "zero", "sim" e "não", "verdadeiro" e "falso" ou quaisquer outras grandezas cujo valor possa assumir apenas um dentre dois estados possíveis. Portanto, a lógica digital é a ferramenta ideal para trabalhar com grandezas cujos valores são expressos no sistema binário. Para entender a lógica digital usemos como exemplo o estatuto do Clube do Bolinha. Quem desejar informações mais detalhadas pode consultar a literatura especializada (recomenda-se a coleção de revistas em quadrinhos que tratam do assunto), porém isso dificilmente será necessário, uma vez que o referido estatuto é singelo e consiste de um único artigo, excludente: "Menina não entra". Esta é a condição. O dado de entrada é a situação do pretendente em relação à condição de ser menina. O dado de saída, ou seja, a decisão sobre o fato do pretendente poder ou não entrar no Clube, é obtido mediante a aplicação da condição ao dado de entrada. É menina? Sim ou não? A decisão é "sim" se o pretendente "não" for menina. E "não" se, "sim", for menina. Este é um exemplo da mais simples das condições, na qual há apenas um dado de entrada e o dado de saída é exatamente o oposto dele: um "sim" gera um "não" e um "não" gera um "sim". Esta condição é representada pela porta lógica NOT (o advérbio "não" em inglês). Agora vamos dar um passo adiante. Imaginemos que o Sr. Bolinha decidiu dar uma festa para os membros do clube, porém resolveu cobrar o ingresso para cobrir os custos do evento. Portanto, para entrar, além de ser membro, há que comprar um ingresso. Numa situação como essa a condição é mais complexa. Os dados de entrada agora são dois: a situação do pretendente em relação ao fato de ser membro do clube (sim ou não) e a posse do ingresso (sim ou não). Para que o dado de saída seja "sim", ou seja, para que o pretendente ingresse na festa, ele tem que cumprir AMBAS as condições. Não basta ser membro do clube ("sim" para a primeira condição) se não possui o ingresso ("não" para a segunda). Nem basta possuir o ingresso ("sim" para a segunda condição) se não é membro ("não" para a primeira). A decisão é tomada submetendo os dados de entrada à condição. Para uma decisão "sim" que garante a entrada na festa é preciso, ao mesmo tempo, "sim", ser membro do clube e, "sim", dispor do ingresso. Ou seja, a saída somente será "sim" se ambos os dados de entrada forem "sim". Esta condição é representada pela porta lógica AND (a conjunção aditiva "e" em inglês). Tomemos ainda outro exemplo. Imaginemos que os membros do clube tenham levado ao Presidente um reclamo: sendo eles membros, e sendo a festa no clube, por que razão tinham que pagar ingresso? O Sr. Bolinha considerou o pleito justo, mas alegou que ainda assim precisaria de recursos para cobrir os custos. Decidiu-se então abrir o evento à toda a comunidade e não apenas aos membros do clube, cobrando o ingresso apenas dos que não fossem membros. Então, para entrar, seria necessário ou ser membro do clube ou comprar um ingresso. Cumprida qualquer uma das duas condições, seja qual for, o pretendente poderia entrar, independentemente da outra. Examinemos a primeira condição. Comprou ingresso? Sim ou não? Se "sim", a primeira condição está cumprida e a decisão é "sim", o pretendente pode entrar. Mas imaginemos que, "não", ele não comprou o ingresso. Examinemos então a segunda condição. É membro do clube? Sim ou não? Se "sim", a segunda condição foi cumprida e "sim", ele pode entrar mesmo sem ingresso. Em um caso como este, para que o dado de saída seja "sim" basta que um dos dados de entrada seja "sim". Esta condição é representada pela porta lógica OR (a conjunção alternativa "ou" em inglês). Em um computador, todas as operações são feitas a partir de tomadas de decisões que, por mais complexas que sejam, nada mais são que combinações das três operações lógicas correspondentes às condições acima descritas: NOT, AND e OR. Para tomadas de decisões mais complexas, tudo o que é preciso é combinar estas operações. E para isto é necessário um conjunto de ferramentas capaz de manejar variáveis lógicas. Esse conjunto de ferramentas é a chamada "Álgebra Booleana". Álgebra booleana A álgebra booleana recebeu seu nome em homenagem ao matemático inglês George Boole, que a concebeu e publicou suas bases em 1854, em um trabalho intitulado "An Investigation of the Laws of Thought on Which to Found the Mathematical Theories of Logic and Probabilities". O trabalho, evidentemente, nada tinha a ver com computadores digitais, já que foi publicado quase um século antes que eles fossem inventados. Era meramente uma tratado sobre lógica, um dos muitos exemplos em que os matemáticos se adiantam ao tempo e criam com décadas de avanço as bases abstratas para uma tecnologia de ponta. Foi somente em 1938 que Claude Shannon, um pesquisador do MIT, se deu conta que a lógica booleana era a ferramenta ideal para analisar circuitos elétricos baseados em relés, os antecessores imediatos dos dos computadores eletrônicos digitais à válvula – que por sua vez originaram os modernos computadores que empregam a eletrônica do estado sólido. A álgebra booleana é semelhante à álgebra convencional que conhecemos no curso secundário, o ramo da matemática que estuda as relações entre grandezas examinando as leis que regulam as operações e processos formais independentemente dos valores das grandezas, representadas por "letras" ou símbolos abstratos. A particularidade da álgebra booleana é que ela estuda relações entre variáveis lógicas que podem assumir apenas um dentre dois estados opostos, "verdadeiro" ou "falso", não admitindo nenhum valor intermediário. Da mesma forma que a álgebra convencional, a álgebra booleana utiliza operações que são executadas com suas variáveis. A diferença é que estas operações somente podem agir sobre variáveis lógicas, portanto são operações lógicas. As razões pelas quais a álgebra booleana é a ferramenta ideal para analisar problemas de lógica digital tornam-se evidentes assim que se tomam conhecimento de suas operações. Da mesma forma que há apenas quatro operações fundamentais na aritmética, há apenas três operações fundamentais na álgebra booleana. Estas operações são AND, OR e NOT. Operação AND, cujo operador é representado por "." (sinal gráfico do "ponto"), pode ser aplicada a duas ou mais variáveis (que podem assumir apenas os valores "verdadeiro" ou "falso"). A operação AND aplicada às variáveis A e B é expressa por: A AND B = A.B A operação AND resulta "verdadeiro" se e apenas se os valores de ambas as variáveis A e B assumirem o valor "verdadeiro". Operação OR, cujo operador é "+" (sinal gráfico da adição) e que também pode ser aplicada a duas ou mais variáveis (que podem assumir apenas os valores "verdadeiro" ou "falso"). A operação OR aplicada às variáveis A e B é expressa por: A OR B = A+B A operação OR resulta "verdadeiro" se o valor de qualquer uma das variáveis A ou B assumir o valor "verdadeiro". A operação NOT (cujo operador pode ser uma barra horizontal sobre o símbolo da variável), é unária, ou seja, aplicável a uma única variável. Ela é expressa por: NOT A A operação NOT inverte o valor da variável. Ela resulta "verdadeiro" se a variável assume o valor "falso" e resulta "falso" se a variável assume o valor "verdadeiro". Destas três operações fundamentais podem ser derivadas mais três operações adicionais, as operações NAND, NOR e XOR (ou OR exclusivo). A operação NAND é obtida a partir da combinação das operações NOT e AND usando a relação: A NAND B = NOT (A AND B) A operação NAND resulta "falso" se e apenas se os valores de ambas as variáveis A e B assumirem o valor "verdadeiro". A operação NOR é obtida a partir da combinação das operações NOT e OR usando a relação: A NOR B = NOT (A OR B) A operação NOR resulta "verdadeiro" se e apenas se os valores de ambas as variáveis A e B assumirem o valor "falso". A operação, XOR ou "OR exclusivo" é um caso particular da função OR. Ela é expressa por: A XOR B A operação XOR resulta "verdadeiro" se e apenas se exclusivamente uma das variáveis A ou B assumir o valor "verdadeiro" (uma outra forma, talvez mais simples, de exprimir a mesma idéia é: a operação XOR resulta "verdadeiro" quando os valores da variáveis A e B forem diferentes entre si e resulta "falso" quando forem iguais). Uma forma mais simples de analisar (e de entender) as operações da lógica booleana é através da chamada "tabela verdade". Uma tabela verdade nada mais é que a lista de todos os possíveis resultados da operação, obtida através de todas as combinações possíveis dos valores dos operandos. Como os operandos somente podem assumir os valores "verdadeiro" e "falso", a confecção de uma tabela verdade é muito simples. Para exemplificar, vamos montar a tabela verdade da operação AND aplicada às variáveis A e B. Sabemos que para que o resultado de A AND B seja verdadeiro, AMBOS os operandos devem ser verdadeiros, ou seja: A Verdadeiro B Verdadeiro A AND B Verdadeiro Todas as demais combinações de valores das variáveis resultam "falso". Portanto: A Falso Falso Verdadeiro B Falso Verdadeiro Falso A AND B Falso Falso Falso Logo, a tabela verdade completa da função AND é: A Falso Falso Verdadeiro Verdadeiro B Falso Verdadeiro Falso Verdadeiro A AND B Falso Falso Falso Verdadeiro Para simplificar , representemos o valor " verdadeiro " por "um" e "falso" por "zero". A tabela verdade fica, então: A 0 0 1 1 B 0 1 0 1 A AND B 0 0 0 1 Raciocínio idêntico pode ser feito para as demais operações. O resultado pode ser visto na tabela abaixo, que exibe a tabela verdade de todas as operações lógicas: A B 0 0 0 1 1 0 1 1 NOT A 1 1 0 0 A AND B A NAND B 0 1 0 1 0 1 1 0 A OR B A NOR B A XOR B 0 1 0 1 0 1 1 0 1 1 0 0 Semelhantemente à álgebra convencional, também na álgebra booleana é possível combinar variáveis e operadores para gerar complexas expressões algébricas que podem ser avaliadas. O valor da expressão é obtido atribuindo-se valores às variáveis e efetuando-se as operações indicadas (como na álgebra convencional, na álgebra booleana os parênteses indicam a ordem de precedência de avaliação dos termos). Por exemplo, a expressão algébrica (da álgebra convencional): (A / B) +C vale 5 quando as variáveis assumem os valores A=9, B=3 e C=2. As expressões da álgebra booleana podem ser avaliadas de forma semelhante. A diferença básica é que suas operações são as operações lógicas previamente definidas e os valores a serem atribuídos (tanto à expressão quanto às variáveis) alternam somente entre "verdadeiro" (ou 1) e "falso" (ou 0). Tomemos como exemplo uma expressão simples, como: (A OR B) AND (NOT C) e vamos determinar o valor da expressão quando as variáveis valem: A=0 B=1 C=1 Para tanto, efetuemos inicialmente a avaliação do primeiro termo entre parênteses. Trata-se de uma operação OR executada entre duas variáveis cujos valores são A = 0 e B = 1. Um exame da tabela verdade das operações lógicas indica que 0 OR 1 = 1 Em seguida executa-se a operação NOT na variável C, e ainda conforme a mesma tabela: NOT 1 = 0 Finalmente executa-se a operação AND envolvendo os dois resultados parciais. 1 AND 0 = 0 Este é o valor da expressão para estes valores das variáveis. Considerando que na álgebra booleana as variáveis apenas podem assumir os valores 1 e 0, dada uma expressão é relativamente simples construir uma tabela listando os valores assumidos pela expressão para todas as combinações dos valores de suas variáveis. Esta tabela denomina-se tabela verdade da expressão. Para a expressão do exemplo acima, a tabela verdade seria: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 (A OR B) AND (NOT C) 0 0 1 0 1 0 1 0 As regras básicas da algebra booleana são simples. As operações são apenas seis (NOT, AND, OR, NAND, NOR E XOR). Os valores possíveis, tanto para as variáveis quanto para as expressões, são apenas dois (1 ou 0). No entanto, expressões obtidas combinando operações que envolvem um grande número de variáveis podem atingir um grau de complexidade notável. Não obstante, sua avaliação é sempre feita decompondo-se a expressão em operações elementares respeitando-se a ordem de precedência indicada pelos parênteses, avaliando as operações elementares e combinando-se seu resultado. A avaliação pode ser trabalhosa, mas não difícil. Assim como a álgebra convencional, a álgebra booleana também tem seus postulados (que independem de demonstração) e suas identidades (que podem ser derivadas dos anteriores). Os postulados definem a forma pela qual as expressões são interpretadas. Os principais postulados e identidades da álgebra booleana podem ser resumidos no quadro abaixo, arranjado em colunas para evidenciar a natureza complementar das operações OR e AND. Postulados básicos A.B= B.A A . (B + C) = (A . B) + (A . C) 1 .A= A A . NOT A = 0 Identidades derivadas 0 .A=0 A.A= A A . (B . C) = (A . B) . C NOT (A . B) = NOT A + NOT B A+ B=B+ A A + (B . C) = (A + B) . (A + C) 0 + A= A A + NOT A = 1 1 + A= 1 A+ A=A A + (B + C) = (A + B) + C NOT (A + B) = NOT A . NOT B Lei comutativa Lei distributiva Elemento idêntico Elemento inverso Lei associativa Teorema de DeMorgan Experimente: verifique os postulados e identidades atribuindo os mesmos valores às variáveis correspondentes das expressões de ambos os membros e compare os resultados. Repare que existe alguma analogia entre as operações AND e OR da álgebra booleana e as operações de multiplicação e adição da álgebra convencional. Mas neste caso, vale notar que esta analogia não se manifesta na lei distributiva expressa na coluna central. Em princípio, as bases da álgebra booleana são as acima resumidas. Apenas com estes conhecimentos e utilizando-se as relações expressas nos postulados, identidades e teoremas para simplificar expressões mais complexas, é possível determinar o valor de quaisquer expressões da álgebra booleana. Com os conhecimentos da álgebra booleana podemos analisar todos os fenômenos relativos à lógica digital que rege as operações internas dos computadores. O que nos falta agora é um meio físico de implementar os circuitos eletrônicos baseados nessa lógica. Transistores Um transistor é um componente usado em circuitos eletrônicos não digitais principalmente como oscilador e amplificador de sinais. Ele é capaz de executar essencialmente as mesmas funções das antigas válvulas à vácuo, porém consumindo pouquíssima energia e ocupando muito menos espaço (os transistores que compõem os modernos microprocessadores somente podem ser vistos usando um microscópio eletrônico). O transistor foi desenvolvido em 1948 nos laboratórios da Bell Telephone, nos EUA, pelos físicos Walter Brattain, John Bardeen e William Shockley, que receberam o Premio Nobel de 1956 pela descoberta. O transistor é um pequeno grão de material semicondutor (germânio ou silício) cujas propriedades eletrocondutoras foram alteradas mediante a adição de impurezas, ao qual são ligados três ou mais terminais. No tipo mais simples, o "transistor bipolar", os terminais são denominados "emissor", "coletor" e "base" (que, nas válvulas à vácuo, correspondem, respectivamente, a catodo, anodo e grade). Há diversos tipos de transistores. O tipo usado para ilustrar os fenômenos que discutiremos adiante será um transistor do tipo NPN, cujo símbolo é o mostrado na Fig. 1, na qual são assinalados seus três terminais. Figura 1 Os transistores podem cumprir diversas funções. Seu estudo constitui um ramo da eletrônica razoavelmente complexo. Mas, no que nos diz respeito, interessa apenas uma das características dos transistores, a que lhes permite serem empregados como "chave", ou seja, um dispositivo que controla a passagem de corrente elétrica, sua principal utilização nos circuitos digitais. Esta característica decorre de uma propriedade dos transistores que faz com que, quando inserido em um circuito adequado, a corrente entre base e emissor controle a corrente entre coletor e emissor. Uma coisa aparentemente complicada mas que na verdade é muito simples. Imagine que o transistor da Fig. 1 seja inserido no circuito da Fig. 2. Figura 2 O emissor está ligado a terra, enquanto o coletor e a base estão ligados aos polos positivos de duas baterias. Entre a base e sua bateria, há um interruptor que na figura está aberto. Enquanto este interruptor estiver aberto, não haverá tensão alguma aplicada à base. Portanto, não haverá corrente entre a base e o emissor. Nestas condições, forma-se uma grande resistência elétrica entre o coletor e o emissor, que impede o fluxo da corrente elétrica entre estes dois terminais. Portanto, mesmo havendo uma tensão aplicada ao coletor, esta resistência impede que se estabeleça uma corrente entre ele e o emissor enquanto não houver uma corrente entre a base e o emissor. Agora, imagine que se feche o interruptor situado entre a base e a bateria. Isto aplicará à base a mesma tensão da bateria. A presença de uma tensão na base fará uma pequena corrente fluir entre base e emissor. Devido às características próprias do transistor, a presença desta corrente, mesmo pequena, provocará uma brusca redução da resistência elétrica entre coletor e emissor. Uma corrente passará então a fluir entre estes dois pontos em virtude da tensão aplicada ao coletor pela segunda bateria. Na maioria dos circuitos eletrônicos essa característica é aproveitada para fazer o transistor funcionar como amplificador de corrente (e de sinal), já que a corrente formada entre coletor e emissor é muito maior, porém proporcional, à corrente entre base e emissor. Nos circuitos digitais, onde não interessa o valor da corrente (ou da tensão), mas sim sua presença ou ausência (a presença da corrente ou tensão eqüivale ao valor "um" ou "verdadeiro", enquanto a ausência eqüivale ao valor "zero" ou "falso"), os transistores são empregados apenas como chaveadores de corrente. Quando se aplica uma tensão à base, a resistência interna entre coletor e emissor cai até praticamente se anular, o transistor "abre" e se estabelece uma corrente entre coletor e emissor. Quando não se aplica uma tensão à base, a resistência interna aumenta bruscamente, o transistor "fecha" e não haverá corrente entre coletor e emissor. Essa é a única propriedade do transistor que nos interessa. Ela será usada para a montagem de todos os circuitos internos ativos de um computador. Vejamos como isso é possível. Portas lógicas (logical gates) O circuito da Fig. 2 não deve ser construído na prática. Isto porque tão logo o interruptor seja fechado, a resistência interna do transistor cairá até valores desprezíveis, próximos de zero. Como o valor da corrente elétrica é diretamente proporcional à tensão aplicada e inversamente proporcional à resistência, mesmo que a tensão aplicada ao coletor seja baixa, tende-se a formar uma corrente muito elevada entre ele e o emissor, já que a resistência é praticamente nula. O valor desta corrente será tão grande que fará com que o transistor "queime". Para evitar que isto ocorra, basta intercalar um resistor entre o coletor e sua bateria, como no circuito da Fig. 3. Além disso, para facilitar nossa análise, instalemos duas lâmpadas, a primeira no ponto "A", entre o interruptor e sua bateria, e a segunda no ponto "S", entre a bateria que alimenta o coletor e a terra, em paralelo com o transistor. Agora, analisemos o novo circuito. Figura 3 Trata-se de um circuito muito simples cujo funcionamento pode ser facilmente entendido mesmo por quem não tem noção alguma de eletrônica. Vejamos: o Emissor "E" do transistor está ligado à terra, enquanto seu coletor "C" está ligado ao polo positivo de uma bateria através de um resistor. Portanto, se o transistor permitir a passagem de uma corrente elétrica, ela fluirá entre coletor e emissor. Em paralelo com o transistor, há uma lâmpada, S. Quando o transistor conduz, o faz com resistência muito baixa. Portanto, a corrente fluirá preferentemente por ele e não pela lâmpada, cuja resistência é maior. Logo, quando há corrente entre coletor e emissor, a lâmpada S se mantém apagada. Em contrapartida, quando o transistor se opõe à passagem da corrente, o faz com elevada resistência. A corrente é então obrigada a atravessar a lâmpada S ao escoar para a terra, o que faz a lâmpada acender. Portanto, quando o transistor não conduz corrente entre coletor e emissor, a lâmpada S acende. E quando o transistor conduz entre coletor e emissor, a lâmpada não acende. A base está ligada ao polo positivo de uma segunda bateria, porém entre elas há uma lâmpada "A"e um interruptor. Nas condições da figura, o interruptor está aberto. Logo, a lâmpada A está apagada e a tensão elétrica aplicada à base é nula (não há corrente através da lâmpada nem tensão na base porque o interruptor está aberto). Quando o interruptor se fecha, a tensão da bateria é aplicada à base do transistor, forçando a formação de uma corrente entre base e emissor, o que faz a lâmpada A acender. Portanto, quando há corrente entre base e emissor, a lâmpada A acende. Quando não há corrente entre base e emissor, ela se mantém apagada. Examinemos as características do circuito nas condições exibidas pela Fig. 3. Com o interruptor aberto, a lâmpada A está apagada e não há tensão na base. Portanto, não há corrente entre base e emissor. Logo, de acordo com a propriedade do transistor, a resistência entre coletor e emissor é elevada e não haverá corrente entre eles. A tensão aplicada pela segunda bateria ao coletor forçará a formação de uma corrente elétrica entre aquele ponto e a terra. Como esta corrente não pode atravessar o transistor devido à alta resistência, fluirá através da lâmpada S. Que, portanto, se manterá acesa. Se seus conhecimentos de eletricidade não são suficientes para que você entenda a explicação acima, não se preocupe. Apenas lembre-se do que é realmente importante: nas condições da Fig. 3, a lâmpada A está apagada e a lâmpada S acesa. Agora, fechemos o interruptor. O circuito assume então a configuração mostrada na Fig. 4. Figura 4 Nesta configuração, há tensão na base do transistor, uma vez que ela está ligada ao polo positivo de sua bateria através da lâmpada A. Isto obriga uma corrente a fluir entre a base e o emissor. O que provoca dois efeitos: a lâmpada A acende (devido à passagem da corrente) e a resistência entre coletor e emissor cai praticamente a zero. Nestas condições a corrente escoa apenas atravessando o transistor do coletor ao emissor, já que a resistência oferecida pela lâmpada S é mais elevada. Esta lâmpada, portanto, se mantém apagada. Novamente: se seus conhecimentos de eletricidade não são suficientes para entender a explicação acima, apenas tenha em mente que nas condições da Fig. 4, a lâmpada A está acesa e a lâmpada S está apagada. Se representarmos a presença de corrente (ou tensão) com "1" e a ausência com "0" esta situação pode ser resumida na seguinte tabela: A 0 1 S 1 0 Por incrível que pareça, todos os circuitos ativos de um computador são baseados nesta coisa aparentemente tão singela. E por mais complexos que sejam, estes circuitos serão sempre constituídos a partir de combinações desta simples configuração. Por exemplo: examinemos a Fig 5 no qual dois transistores estão ligados em série de tal forma que o coletor de um está conectado ao emissor do outro. Analisemos o funcionamento deste circuito, prestando atenção especialmente ao estado das lâmpadas inseridas nas posições mostradas na Fig. 5. Figura 5 Na situação da Fig. 5, com ambos os interruptores abertos, não há tensão em nenhuma das duas bases. Portanto não haverá corrente entre bases e coletores. Sendo assim, conforme a conhecida propriedade dos transistores, a resistência interna entre coletor e emissor em ambos os transistores é elevada e nenhum deles se deixará atravessar pela corrente. As lâmpadas A e B estão apagadas, já que os interruptores estão abertos. Já a lâmpada S estará acesa, posto que a corrente não pode atravessar os transistores e escoa através dela. Figura 6 Imagine-se agora um dos interruptores seja fechado. Por exemplo, o que alimenta a base do transistor superior (o que fará acender a lâmpada A, posto que independentemente das condições de condução entre os terminais do transistor, a corrente pode atravessar a lâmpada escoando para terra através do resistor que liga a lâmpada à terra). Havendo tensão na base, poderia formar-se uma corrente entre base e emissor, o que faria a resistência do transistor cair bruscamente até um valor desprezível. No entanto, isto não ocorre, posto que o transistor inferior não conduz, já que a tensão em sua base é nula. Desta forma, os transistores bloqueiam o fluxo da corrente, que é obrigada a escoar para a terra através da lâmpada S, que portanto se mantém acesa. A lâmpada B, cujo interruptor mantém-se fechado, evidentemente permanece apagada. Esta situação é mostrada na Fig. 6 onde se vê que a lâmpada A está acesa, a lâmpada B apagada e a lâmpada S acesa. Figura 7 Uma situação análoga ocorre caso se feche apenas o interruptor que alimenta a base do transistor inferior, mantendo aberto o outro. Uma análise do circuito mostra que a corrente fluirá entre base e emissor deste transistor (acendendo a lâmpada B) o que fará a resistência entre seu coletor e emissor cair até valores desprezíveis. No entanto, a corrente elétrica não pode atravessar estes dois terminais porque está bloqueada pelo transistor superior, que não conduz por não haver tensão em sua base em virtude do interruptor que a alimenta estar aberto (o que, por sua vez, mantém a lâmpada A apagada). O resultado disso é que a corrente, bloqueada pelos transistores, atravessa a lâmpada S, que acende. A situação é a mostrada na Fig. 7: a lâmpada A apagada e as lâmpadas B e S acesas. Figura 8 Agora vejamos o que ocorre quando se fecham os dois interruptores, alimentando ambas as bases. Nestas condições, haverá a formação de corrente entre a base e o coletor de ambos os transistores. Tanto a lâmpada A quanto a lâmpada B se acendem. A resistência entre coletro e emissor de ambos os transistores cai até valores desprezíveis, portanto podem conduzir corrente. Como ambos estão ligados em série, a corrente os atravessa, pois a soma de suas resistências é muito menor que a oferecida pela lâmpada S – que, portanto, se mantém apagada. A situação é mostrada na Fig. 8, onde as lâmpadas A e B se mantêm acesas e a lâmpada S apagada. Ainda representando a lâmpada acesa com "1" e apagada com "0" poderemos representar as diversas configurações de um circuito com dois transistores ligados em série com a tabela: A 0 0 1 1 B 0 1 0 1 S 1 1 1 0 Finalmente investiguemos o que acontece com um circuito formado por dois transistores ligados em paralelo, como o exibido na Fig. 9. Figura 9 Na situação da Fig. 9, com ambos os interruptores abertos, as lâmpadas A e B mantêm-se apagadas e não há tensão em nenhuma das duas bases. Portanto, de acordo com a conhecida propriedade dos transistores, a resistência entre seus coletores e emissores é alta e não haverá corrente através destes terminais. Nestas condições, a corrente é obrigada a escoar através da lâmpada S, que se acende. Portanto, nas condições exibidas na Fig. 9, as lâmpadas A e B permanecem apagadas e a lâmpada S acesa. Figura 10 Agora imagine-se que um dos interruptores seja fechado. Por exemplo, o que alimenta a base do transistor da esquerda. Neste caso a lâmpada A se acende e há tensão na base do transistor, provocando uma corrente entre ela e seu emissor. Isto faz a resistência entre coletor e emissor cair bruscamente, assumindo um valor desprezível. Portanto a corrente escoa para terra através deste transistor e não através da lâmpada S, de maior resistência, que então permanece apagada. Note que o transistor da direita não conduz, já que não há tensão em sua base posto que seu interruptor permanece aberto (o que faz a lâmpada B permanecer apagada). Mas isto não exerce influência quanto ao estado da lâmpada S. Portanto, na configuração mostrada no circuito da esquerda da Fig. 10, a lâmpada A permanece acesa, a B apagada e a S igualmente apagada. A análise do circuito quando se fecha o interruptor que alimenta a base do transistor da direita mantendo-se aberto o outro, leva a um resultado análogo: a lâmpada A se mantém apagada, a B acesa e a S apagada. Esta configuração pode ser apreciada no circuito do centro da Fig. 10. Se um único transistor conduzindo entre coletor e emissor basta para criar um caminho preferencial e escoar a corrente diretamente para terra, mantendo a lâmpada S apagada, com muito mais razão o mesmo ocorrerá caso ambos os interruptores se fechem (acendendo ambas as lâmpadas A e B). Nesta configuração, as lâmpadas A e B permanecem acesas e a lâmpada S apagada, conforme exibido no circuito da direita da Fig. 10. Ainda representando a presença de tensão com "1" e a ausência com "0" poderemos representar as diversas configurações de um circuito formado por dois transistores ligados em paralelo pela tabela: A 0 0 1 1 B 0 1 0 1 S 1 0 0 0 Ora, a simples comparação das tabelas exibidas neste item com as tabelas verdade das operações mostrada no item referente à álgebra booleana torna claro que, no que diz respeito à presença de tensões nos terminais (ou ao fato das lâmpadas aí localizadas permanecerem acesas ou apagadas), um único transistor apresenta um comportamento idêntico ao de uma operação NOT, dois transistores em série ao de uma operação NAND e dois transistores em paralelo ao de uma operação NOR. Portanto, é perfeitamente possível usar aqueles circuitos eletrônicos para implementar fisicamente estas operações e, o que é igualmente importante, utilizar os circuitos para analisar o comportamento de expressões da álgebra booleana. Em outras palavras: os circuitos examinados são a representação física das operações lógicas da álgebra booleana. Circuitos deste tipo, ou seja, circuitos que produzam uma saída (na lâmpada S) que represente o resultado de uma operação da álgebra booleana usando como operandos os sinais de entrada (nas lâmpadas A e B), são chamados "portas lógicas". Uma análise superficial das tabelas verdade das operações de lógica booleana e das propriedades dos transistores leva facilmente à conclusão que, combinando-se transistores judiciosamente, pode-se gerar circuitos (ou portas lógicas) que representem todas as operações fundamentais. Por exemplo: acrescentando-se um transistor aos circuitos anteriormente discutidos, criando as configurações exibidas na Fig. 11, inverte-se o sinal de saída. Assim conseguem-se implementar as portas lógicas AND e OR (use seus conhecimentos sobre transistores para examinar o comportamento dos circuitos da Fig. 11 e confirme que o da esquerda representa uma porta AND e o da direita uma porta OR). Figura 11 Isto demonstra que pode-se implementar qualquer porta lógica utilizando-se apenas transistores. E como as portas lógicas replicam o comportamento das operações lógicas da álgebra booleana, pode-se representar qualquer expressão (e analisar seus resultados) utilizando-se exclusivamente transistores adequadamente combinados em circuitos eletrônicos. Este tipo de circuito, nos quais não interessa o valor numérico da tensão, mas apenas o fato de haver ou não tensão em determinados terminais, é denominado circuito digital. Os valores das tensões nos circuitos digitais admitem uma certa tolerância. Assim, considera-se que há tensão (representando o "1" lógico) quando seu valor se situa entre 2 Volts e 5 Volts, e que não há tensão (representando o "0" lógico) quando seu valor for inferior a 1 Volt. Tensões entre 1 Volt e 2 Volts não são usadas nos circuitos digitais. Apostila Saneamento (181 KB) Apresentação Saneamento (1233 KB) URL: http://www.bpiropo.com.br Copyright © Benito Piropo Da-Rin Atualizada em 08/12/2007 23:58:32 (MM/DD/AA) + Hora WebMaster: [ Wagner Ribeiro ] Topo da Página