UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 4 – Portas Lógicas Prof. Leonardo Augusto Casillo Analisando o circuito (1)... A S Acesa Apagada Apagada Acesa O emissor do transistor está ligado ao terra. O coletor está ligado ao pólo positivo através de um resistor cuja função é limitar a corrente. A base do transistor é ligada também ao pólo positivo através de um outro resistor cuja função é reduzir a tensão de modo que a tensão aplicada à base seja inferior à aplicada ao coletor. 2 Analisando o circuito (1)... Com a chave aberta, a lâmpada A está apagada, enquanto a lâmpada S está acesa. A base do transistor não recebe tensão e por isso não há corrente através dela. Sem tensão aplicada à base o transistor se comporta como um resistor de resistência praticamente infinita, ou seja, não conduz corrente elétrica apesar de haver uma tensão aplicada ao coletor. Como este coletor também está ligado ao terra através da lâmpada S, a corrente escoará por este caminho (o de menor resistência). Quando se aplica tensão à base de um transistor, a resistência entre seu coletor e emissor torna-se praticamente nula, oferecendo um caminho preferencial para a passagem da corrente. 3 Analisando o circuito (1)... Quando Vin estiver no nível lógico baixo, Vout estará no nível alto, e vice-versa. Base (Vin) Coletor (Vout) 1 0 0 1 4 Analisando o circuito (1)... Quando Vin estiver abaixo de um certo valor, o transistor desliga e passa a agir como uma resistência infinita (está em aberto) ◦ Vout assume um valor próximo a Vcc ◦ Vcc é uma tensão regulada, geralmente a +5V em transistores bipolares. Quando Vin ultrapassa um certo valor, o transistor comuta e passa a agir como um fio sem resistência. ◦ Vout fica conectado logicamente à terra (0 Volt) Transistor = Porta Lógica Not (inversor) Analisando o circuito (2) ... Dois transistores estão ligados em série de tal forma que o coletor de um está conectado ao emissor do outro (o resistor adicional situado entre a lâmpada A e a terra tem por função drenar a corrente quando o transistor de 6 baixo não conduz). Analisando o circuito (2) ... Com ambos os interruptores desligados, as lâmpadas A e B permanecerão apagadas. Além disso, não haverá tensão em nenhuma das bases dos transistores. Portanto não haverá corrente entre bases e coletores. Sem tensão na base, a resistência interna entre coletor e emissor em ambos os transistores é elevada e nenhum deles se deixará atravessar pela corrente. Como existe uma tensão aplicada ao coletor do transistor de cima, ligado ao terra através da lâmpada S, haverá uma corrente atravessando esta lâmpada, que corresponde ao trajeto de menor resistência. A lâmpada S, portanto, permanecerá acesa. 7 Analisando o circuito (2) ... Quando se aplica tensão à base de um transistor, a resistência entre seu coletor e emissor torna-se praticamente nula, oferecendo um caminho preferencial para a passagem da corrente. A B S Apagada Apagada Acesa Apagada Acesa Acesa Acesa Apagada Acesa Acesa Acesa Apagada 8 Dois transistores ligados em série Se V1 e V2 estiverem no nível lógico alto, Vout vai assumir nível lógico baixo. Se V1 ou V2 estiver no nível lógico baixo, o transistor correspondente estará cortado e a saída será alta. Porta lógica NAND correspondente: Analisando o circuito (3) ... Circuito formado por dois transistores em paralelo. Com ambos os interruptores abertos, as lâmpadas A e B mantêm-se apagadas. 10 Analisando o circuito (3) ... Quando não há tensão em nenhuma das bases dos dois transistores, a resistência entre seus coletores e emissores é elevadíssima, fazendo com que a corrente não flua através deles. Quando se aplica tensão à base de um transistor, a resistência entre seu coletor e emissor torna-se praticamente nula, oferecendo um caminho preferencial para a passagem da corrente A B S Apagada Apagada Acesa Apagada Acesa Apagada Acesa Apagada Apagada Acesa Acesa Apagada 11 Dois transistores ligados em paralelo Se V1 ou V2 estiverem no nível lógico alto, Vout vai assumir nível lógico baixo. Se V1 e V2 estiver no nível lógico baixo, o transistor correspondente estará cortado e a saída será alta. Porta NOR lógica correspondente: Analisando o circuito (4) ... Circuitos 1 e 2 combinados, colocando um transistor na configuração do Circuito 1 na saída (ou seja, no lugar da lâmpada S) do Circuito 2. 13 Analisando o circuito (4) ... A B S Apagada Apagada Apagada Apagada Acesa Apagada Acesa Apagada Apagada Acesa Acesa Acesa 14 Dois transistores em série ligados a um inversor Porta lógica correspondente: And Analisando o circuito (5) ... Circuitos 1 e 3 combinados, colocando um transistor na configuração do Circuito 1 na saída (ou seja, no lugar da lâmpada S) do Circuito 3. 16 Analisando o circuito (5) ... A B S Apagada Apagada Apagada Apagada Acesa Acesa Acesa Apagada Acesa Acesa Acesa Acesa 17 Dois transistores em paralelo ligados a um inversor Porta lógica correspondente: Or Transistores Portas Lógicas Operações Lógicas dos Circuitos 1 a 5 – tabela verdade A B C1 C2 C3 C4 C5 0 0 1 1 1 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 A B NOT A A NAND B A NOR B A AND B A OR B 0 0 1 1 1 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 Transistores Portas Lógicas As portas NAND e NOR precisam de dois transistores (do tipo bipolar), enquanto as portas AND e OR precisam de três. Muitos circuitos são baseados nas portas NAND e NOR, em vez das AND e OR. Na prática, existem outros tipos de implementações de portas lógicas, mas geralmente as portas NAND e NOR são mais simples que as AND e OR. É possível combinar circuitos para implementar fisicamente qualquer conjunto de operações lógicas, ou seja, mediante a combinação de circuitos pode-se montar um circuito mais complexo que reproduza fisicamente o comportamento de qualquer expressão da álgebra booleana. Os circuitos são a representação física das operações lógicas da álgebra booleana Portas Lógicas Portas Lógicas ◦ Estruturas eletrônicas (componentes primitivos) capazes de calcular diversas funções utilizando sinais elétricos. ◦ Formam a base de construção de inúmeros circuitos digitais e do hardware dos computadores. ◦ Os circuitos digitais operam de modo binário, onde cada tensão de entrada ou de saída tem valor 0 ou 1. Visto que o 0 e o 1 lógicos representam intervalos de tensão predefinidos (0-0,8V / 2-5V), esta característica permite utilizar a álgebra booleana como ferramenta para análise e projeto de circuitos digitais. 21 Portas Lógicas Lógica Digital -> Lógica Booleana Nível Lógico 0 Falso Desligado OFF Baixo Não Chave aberta Nível Lógico 1 Verdadeiro Ligado ON Alto Sim Chave fechada 22 Portas Lógicas Portas lógicas são Construídas a partir de transistores, diodos e resistores conectados de um modo pelo qual a saída do circuito seja o resultado da operação lógica básica realizada sobre suas entradas. Operações básicas: ◦ NOT (Não), OR (ou) e AND (e) Operações “combinatórias”: ◦ NAND (Not+And), NOR(Not+Or) Operações complementares: ◦ XOR (Exclusive Or), XNOR (Not Exclusive Or) Famílias Lógicas Bipolar ◦ TTL (Transistor-Transistor-Logic) ◦ ECL (Emitter-Coupled Logic) MOS (Metal Oxide Semiconductor) Consomem menos energia e ocupam menos espaço Mais lentas ◦ PMOS, NMOS, ... ◦ CMOS (Complementary Metal Oxide Semiconductor) Utiliza +3,3V para funcionar. Utilizado na maioria dos processadores e memórias Operação NOT (inversor) A S 0 1 1 0 Operação NOT (inversor) Expressão Lógica: X = not A Expressão booleana: X = Ā (X = A’) Este circuito tem sempre uma única entrada e o nível lógico de sua saída é o oposto ao nível lógico da entrada. ◦ (Palavras-chave: inverso, complemento, negação) A porta lógica NOT realiza a operação de negação (complemento) sobre a entrada do circuito. Também lê-se “A barra” ou “A barrado” Operação AND Expressão Lógica: X = A and B ◦ (X = A e B) Expressão booleana: X = A . B ◦ (X = AB) A saída X é igual a 1 para as combinações dos níveis de entrada onde todas as entradas são iguais a 1. ◦ (palavras-chave: se e somente se, ambas, todas) Lembrar de não confundir o . com a multiplicação algébrica, apesar da tabela verdade ser idêntica a esta operação. Operação AND A B X 0 0 0 0 1 0 1 0 0 1 1 1 Operação OR Expressão Lógica: X = A or B ◦ (X = A ou B) Expressão booleana: X = A + B A saída X é igual a 1 para todas as combinações dos níveis de entrada onde uma ou mais entradas são iguais a 1. ◦ (palavras-chave: qualquer, pelo menos) Lembrar de não confundir o + com a soma algébrica. Na álgebra booleana, 1 é maior valor que pode ser obtido. Operação OR A B X 0 0 0 0 1 1 1 0 1 1 1 1 Operação NAND (NOT AND) Expressão Lógica: X = A nand B ◦ X = not (A e B) Expressão booleana: X = A . B ◦ (X = AB) Definida como o complemento da operação AND (aplica-se a AND e inverte-se o resultado). Portas NAND com mais de duas entradas apresentam essa mesma característica. Operação NAND (NOT AND) A B X 0 0 1 0 1 1 1 0 1 1 1 0 Operação NOR (NOT OR) Expressão Lógica: X = A nor B ◦ X = not(A or B) Expressão booleana: X = A + B Definida como o complemento da operação OR (aplicase a OR e inverte-se o resultado). Portas NOR com mais de duas entradas apresentam essa mesma característica. Operação NOR (NOT OR) A B X 0 0 1 0 1 0 1 0 0 1 1 0 Operação XOR (EXCLUSIVE OR) Expressão Lógica: X = A xor B Expressão booleana: X = A B Definida como um caso particular da operação OR, a saída da operação será verdade se exclusivamente um ou outra entrada for verdade. Portas XOR com mais de duas entradas não podem ser calculadas de uma única vez. A operação XOR é realizada de duas a duas entradas. A B X 0 0 0 0 1 1 1 0 1 1 1 0 Operação XNOR (EXCLUSIVE NOT OR) Expressão Lógica: X = A xnor B Expressão booleana: X = (A B ) Também conhecida como operação “coincidência”, é definida como o inverso da função XOR. Portas XNOR com mais de duas entradas não podem ser calculadas de uma única vez. A operação XNOR é realizada de duas a duas entradas. A B X 0 0 1 0 1 0 1 0 0 1 1 1 Resumo Exemplo: A expressão (A OR B) AND (NOT C) =S combina três variáveis lógicas:A, B e C. O circuito que a representa terá três entradas e uma saída S que corresponde ao valor da expressão. As duas variáveis A e B são, inicialmente, submetidas a uma operação OR, enquanto a variável C é submetida a uma operação NOT, gerando dois resultados parciais: ◦ S1 = A OR B ◦ S2 = NOT C Em seguida, estes resultados parciais são submetidos a uma operação AND, gerando o resultado da expressão: ◦ S = S1 AND S2 Exemplo: Avaliando a expressão para os valores A = 0, B = 1 e C = 1, tem-se: S1 = A OR B 0 OR 1 = 1 S2 = NOT C NOT 1 = 0 S = S1 AND S2 1 AND 0 = 0 Resultado: (A OR B) AND (NOT C) vale S = 0 quando suas variáveis A, B e C assumem, respectivamente, os valores 0, 1 e 1. Exemplo: Ao se fazer este procedimento para TODAS as combinações das variáveis de entrada, temos o comportamento da tabela-verdade da expressão. A B C S 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 0 Exemplo: Circuito que reproduz fisicamente o comportamento da expressão utilizando as operações elementares: Exemplo: Circuito que reproduz o comportamento da expressão utilizando a simbologia de portas lógicas. Exercícios Seja A = 0110 e B = 1101, calcular o valor de X para as operações lógicas básicas e complementares. ◦ ◦ ◦ ◦ ◦ ◦ ◦ AND = 0100 OR = 1111 NOT A = 1001 NOT B = 0010 NAND = 1011 NOR = 0000 XOR = 1011 0110 1101 Exercícios Seja A = 0101, B = 0011 e C = 1111, calcular as operações lógicas: ◦ ◦ ◦ ◦ ◦ ◦ ◦ AND = OR = NOT A = NOT B = NAND = NOR = XOR = 0101 0011 1111 Exercícios Seja A = 1001 e B = 0101, calcular: ◦ X =A + B ◦ X =A + B ◦ X = AB ◦ X =A B Exercícios Seja A = 11110, B = 10011 e C =00100, calcular X = AB C 11110 10011 -------10010 01101 00100 11011 ------11011 01101 01001