apostila sistemas logicos e digitais

70
UNIVERSIDADE DE FORTALEZA FUNDAÇÃO EDSON QUEIROZ ENSINANDO E APRENDENDO APOSTILA DE SISTEMAS LÓGICOS E DIGITAIS MONITORES: RUDDY PAZ PERSIVO CUNHA VICTOR HUGO CARLOS RENATO ORIENTADOR: LÚCIO GUIMARÃES FORTALEZA 2006.2

Upload: william-evangelista-de-jesus

Post on 21-Nov-2015

61 views

Category:

Documents


24 download

DESCRIPTION

bom.

TRANSCRIPT

  • UNIVERSIDADE DE FORTALEZAFUNDAO EDSON QUEIROZ

    ENSINANDO E APRENDENDO

    APOSTILA DE SISTEMAS LGICOS E DIGITAIS

    MONITORES: RUDDY PAZ PERSIVO CUNHAVICTOR HUGOCARLOS RENATO

    ORIENTADOR: LCIO GUIMARES

    FORTALEZA 2006.2

  • INTRODUO

    Compilando alguns conceitos, definies e exemplos do livro ELEMENTOS DAELETRNICA DIGITAL, 6 edio, dos autores Ivan V. Idoeta e Francisco Gabriel Capuano,esta apostila tem por intuito facilitar o estudo da disciplina SISTEMAS LGICOS E DIGITAISe, sem querer substituir a referida obra, tenta condensar os ensinamentos ali transmitidos demodo a, aproveitando-se de sua didtica simples e objetiva, dos exemplos resolvidos e dosexerccios propostos no final dos tpicos, permitir uma viso abrangente de todo o trabalhodos citados autores.

    E se a leitura da apostila no dispensa a utilizao do livro para um reforo doaprendizado, ela, porm, permite que se tenha, em poucas pginas, uma viso sistmica dadisciplinam o que facilita sua compreenso.

  • NDICE

    CAPTULO 01 SISTEMA DE NUMERAO

    1.1 Sistema Binrio de Numerao....................................................................................1.1.1 Converso do Sistema Binrio para o Sistema Decimal.................................1.1.2 Convero do Sistema Decimal para o Sistema Binrio.................................1.1.3 Converso de Nmeros Binrios Fracionrios em Decimais..........................1.1.4 Converso de Nmeros Decimais Fracionrios em Binrios..........................

    1.2 Sistema Octal...............................................................................................................1.2.1 Converso do Sistema Octal para Sistema Decimal...........................................1.2.2 Converso do Sistema Decimal para Sistema Octal......................................1.2.3 Converso do Sistema Octal para o Sistema Binrio.....................................1.2.4 Converso do Sistema Binrio para o Sistema Octal.....................................

    1.3 Sistema de Numerao Hexadecimal..........................................................................1.3.1 Converso do Sistema Hexadecimal para o Sistema Decimal.......................1.3.2 Converso do Sistema Decimal para o Sistema Hexadecimal.......................1.3.3 Converso do Sistema Hexadecimal para o Sistema Binrio.........................1.3.4 Converso do Sistema Binrio oara o Sistema Hexadecimal.........................

    1.4 Operaes Aritmticas no Sistema Binrio..................................................................1.4.1 Adio no Sistema Binrio..............................................................................1.4.2 Subtrao no Sistema Binrio.........................................................................1.4.3 Multiplicao no Sistema Binrio....................................................................1.4.4 Diviso do Sistema Binrio.............................................................................1.4.5 Complemento 2...............................................................................................

    1.4.5.1 Utilizao do Complemento 2 em Operaes Aritmticas................

    CAPTULO 02 FUNES E PORTAS LGICAS..............................................................

    2.1 Funes Lgicas AND, OR, NOT, NAND e NOR.........................................................2.1.1 Funo AND....................................................................................................2.1.2 Funo OR......................................................................................................2.1.3 Funo NOT....................................................................................................2.1.4 Funo NAND.................................................................................................2.1.5 Funo NOR...................................................................................................

    2.2 Expresses Booleanas Obtidas de Circuitos Lgicos...................................................

    2.3 Circuitos Obtidos de Expresses Booleanas................................................................

    2.4 Tabelas Verdade Obtidas de Expresses Booleanas..................................................

    2.5 Expresses Booleanas Obtidas de Tabelas Verdade..................................................

    2.6 Blocos Lgicos OU EXCLUSIVO e COINCIDNCIA....................................................2.6.1 Bloco OU EXCLUSIVO...................................................................................2.6.2 Bloco COINCIDNCIA....................................................................................

    0101020202

    03

    040405

    0506060707

    09091010111215

    04

    15

    151616171718

    19

    20

    21

    22

    242425

  • CAPTULO 03 LGEBRA DE BOOLE E MAPA DE VEICTH-KARNAUGH......................

    3.1 Variveis e Expresses na lgebra de Boole...............................................................

    3.2 Simplificao de Expresses Booleanas......................................................................

    3.3 Simplificao de Expresses Booleanas atravs dos Diagramas de Veicth-Karnaugh........................................................................................................................

    3.3.1 Diagrama de Veicth-Karnaugh para 2 variveis.............................................. 3.3.2 Diagrama de Veicth-Katnaugh para 3 variveis..............................................3.3.3 Diagrama de Veicth-Katnaugh para 4 variveis..............................................3.3.4 Diagramao com Condies Irrelevantes.....................................................3.3.5 Casos que No Admitem Simplificao..........................................................3.3.6 Outra Forma de Apresentao do Diagrama de Veicth-Karnaugh.................

    CAPTULO 04 CIRCUITOS ARITMTICOS......................................................................

    4.1 Meio Somador..............................................................................................................

    4.2 Somador Completo......................................................................................................

    4.3 Meio Subtrator..............................................................................................................

    4.4 Subtrator Completo......................................................................................................

    4.5 Somador/Subtrator Completo.......................................................................................

    CAPTULO 05 CIRCUITOS COMBINACIONAIS(PROJETO)...........................................

    5.1 Projetos de Circuitos Combinacionais..........................................................................5.1.1 Circuitos com 2 variveis................................................................................5.1.2 Circuitos com 3 variveis................................................................................5.1.3 Circuitos com 4 variveis................................................................................

    BIBLIOGRAFIA.....................................................................................................................

    26

    26

    27

    29293337434547

    48

    48

    49

    51

    52

    54

    57

    57576063

    66

  • 1 - SISTEMA DE NUMERAO

    Existem vrios sistemas nmericos, dentre os quais se destacam: o sistema decimal,o binrio, o octal e o hexadecimal.

    1.1 Sistema Binrio de Numerao

    No sistema binrio de numerao, existem apenas 2 algarismos: o algarismo 0 (zero) e o algarismo 1 (um)

    No sistema decimal, ns no possumos o algarismo dez e representamos aquantidade de uma dezena 1 seguido do algarismo 0.

    No sistema binrio, agimos da mesma forma. Para representamos a quantidade dois,utilizamos o algarismo 1 seguido do algarismo 0. O algarismo 1 significar que temos umgrupo de dois elementos e o 0 um grupo de nenhuma unidade, representando o nmerodois.

    Cada dgito do sistema binrio recebe a denominao de bit(binary digit) Um conjunto de 8 bits denominado de byte.

    1.1.1 Converso do Sistema Binrio para o Sistema Decimal

    Do binrio para o decimal basta multiplicar o(s) digito(s) binrio(s) por dois elevado aoexpoente de posio e depois soma-los.

    Ex.: (1101)2

    1 1 0 11 x 2 + 1 x 2 + 0 x 2 + 1 x 2 8 + 4 + 0 + 1 = 13

    Note que a posio do expoente do 2, comea do bit menos significativo.

    Exerccios:

    1. Converta para o sistema decimal:

    a.(11001)2 d.(11011)2b.(01101)2 e.(00111)2c.(11010)2 f.(10001)2

    01

    DECIMAL BINRIO0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 1

  • 1.1.2 Converso do Sistema Decimal para o Sistema Binrio

    Do decimal para o binrio basta dividir o nmero por 2 e quando no der mais paradividir, pega o nmero do ltimo quociente, ltimo resto at o primeiro resto.

    Ex.: 5910

    59 |_2___ 1 29 |_2____

    1 14 |_2_____ 0 7 |_2______

    1 3 |_2_____ 1 1 Resposta: (111011)2

    Perceba que o nmero binrio comea do meu ultimo quociente e termina no meuprimeiro resto.

    Exerccios:

    1. Converta para o sistema binrio:

    a) 12010 d) 89610b) 55910 e) 26510c) 8510 f) 6710

    1.1.3 Converso de Nmeros Binrios Fracionrios em Decimais

    At agora s estudamos nmeros inteiros. Agora vamos estudar com fracionrios.A converso de fracionrios binrios para decimais simples, basta imaginar que a

    vrgula o ponto neutro e a direita dela, a posio 0 depois a 1 e assim em diante, e aesquerda, a posio -1 depois a -2 e assim sucessivamente. Para clarearmos est idia,vejamos o exemplo:

    Ex.: (101,11)2

    1 0 1 , 1 1 1 x 2 + 0 x 2 + 1 x 2 , 1 x 2-1 + 1 x 2-2 4 + 0 + 1 , (0.5) + (0.25) = 5,75

    Exerccios:

    1. Converta o nmero binrio (1101,01)2 em decimal.2. Converta o nmero binrio (111,111)2 em decimal.

    1.1.4 Converso de Nmeros Decimais Fracionrios em Binrios

    A converso de decimal fracionrio para binrio basta dividir a parte inteira por 2, atquando for possvel, e pegar o ltimo quociente, o ltimo resto, at o primeiro resto, como jvimos. A parte fracionria multiplicamos por 2 e o nmero depois da vrgula coloca no restodo nmero binrio. Vejamos o exemplo para melhor enterdermos:

    02

  • Ex.: Converta o nmero 23,8510 para binrio com 8 casas fracionrias.

    23 |_2____ 1 11 |_2____ 1 5 |_2____

    1 2 |_2____ 0 1

    0,85 0,70 0,40 0,80 0,60 0,20 0,40 0,80x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 21,70 1,40 0,80 1,60 1,20 0,40 0,80 1,60

    Resposta: (10111,11011001)2

    Note que parte fracionria, multiplicamos por 2 e quando o resultado igual a 1,__ retiramos o 1 o colocamos no nmero binrio e quando vamos multiplicar novamentefazemos agora com 0,_ _.

    Exerccios:

    1. Converta o nmero 31,79 em binrio com 5 casas fracionrias.2. Converta o nmero 57,25 em binrio.

    1.2 Sistema Octal de Numerao

    O sistema octal de numerao um sistema de base 8 no qual existem 8 algarismosassim enumerados: 0,1,2,3,4,5, e 7.

    Atualmente o sistema octal pouco utilizado, tratando-se apenas um sistemanmerico intermedirio dos sistemas binrio e hexadecimal.

    A tabela abaixo mostra a sequncia de numerao do sistema octal at a quantidadedezesseis.

    03

    DECIMAL OCTAL0 01 12 23 34 45 56 67 78 109 1110 1211 1312 1413 1514 1615 1716 20

  • 1.2.1 Converso do Sistema Octal para Sistema Decimal

    A converso do sistema octal para o decimal, basta multiplicar cada algarismo poroito elevado ao expoente de sua posio.

    Ex.: 1448

    1 4 4 1 x 8 + 4 x 8 + 4 x 8 = 10010

    Perceba que mto parecido com a forma de converso binria para o decimal.

    1.2.2 Converso do Sistema Decimal para Sistema Octal

    O processo parecido com a converso do sistema decimal para o binrio, s quenesse caso dividimos o nmero por 8.

    Ex.:6410

    64 |_8___ 0 8 |_8___ 0 1 Resposta: 1008

    Exerccios:

    1. Converta o nmero 8510 em octal.2. Converta o nmero 27810 em octal.3. Converta o nmero 81910 em octal.

    1.2.3 Converso do Sistema Octal para o Sistema Binrio

    Transforma cada dgito em seu correspondente binrio de 3 dgitos. O nmero 518servir como exemplo.

    Ex.: 518 5 1101 001

    Resposta: (101001)2

    Exerccios:

    1. Converta os seguintes nmeros octais em binrios.

    a) 478b) 2568c) 15328

    04

  • 1.2.4 Converso do Sistema Binrio para o Sistema Octal

    Agrupa-se de 3 em 3 bits os nmeros binrios da direita para a esquerda. Veja oexemplo:

    Ex.: 110018

    011 001 3 1

    Resposta: 318

    Exerccios:

    1. Converta os seguintes nmeros binrios para o sistema octal.

    a) 1111008b) 11118c) 101010108

    1.3 Sistema de Numerao Hexadecimal

    O Sistema hexadecimal possui 16 algarismo, sendo a sua base igual a 16. Osalgarismos so assim enumerados: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

    Note que a letra A representa o algarismo A, que por sua vez representa aquantidade dez. A letra B representa o algarismo B, que reprenta a quantidade onze, eassim continua at a letra F, que representa quinze.

    A tabela abaixo mostra a sequncia de numerao do sistema hexadecimal at aquantidade vinte.

    05

    DECIMAL HEXADECIMAL0 01 12 23 34 45 56 67 78 89 910 A11 B12 C13 D14 E15 F16 1017 1118 1219 1320 14

  • Esse sistema muito utilizado na rea dos microprocessadores e tambm nomapeamento de memrias em sistemas digitais, tratando-se de um sistema nmericoimportante, sendo aplicado em projetos de software e hardware.

    1.3.1 Converso do Sistema Hexadecimal para o Sistema Decimal

    O processo semelhante de outros sistemas, somente neste caso, a base 16.Vamos utilizar o nmero 5E16 como exemplo.

    Ex.: (5E)16

    5 E5 x 16 + E x 16 =

    O nmero E16 = 1410 substituindo:

    5 E5 x 16 + 14 x 16 => 80 + 14 = (94)10

    Exerccios:

    1. Converta para decimal:

    a) (B17)16b) (345)16c) (2CA9)16

    1.3.2 Converso do Sistema Decimal para o Sistema Hexadecimal

    A converso feita apartir de sucessivas divises pela base 16 at quando forpossvel, depois pegamos o ltimo quociente, ltimo resto at o primeiro resto. Vamostransforma o nmero 78910 para hexadecimal, para exemplificar.

    Ex.: 78910

    789 |_16____ 5 49 |_16____

    1 3 Resposta: (315)16

    Exerccios:

    1. Converta para o sistema hexadecimal:

    a) (129)10b) (415)10c) (4002)10

    06

  • 1.3.2 Converso do Sistema Hexadecimal para o Sistema Binrio

    A converso semelhante ao do sistema octal para o binrio, somente que, nestecaso necessita-se de 4 bits para reprensentar cada algarismo hexadecimal, pois 24 = 16, naqual 16 a base do sistema hexadecimal.

    O nmero B1616 para o sistema binrio:

    Ex.: (B16)16

    B igual a 11 no sistema decimal e 11 em binrio 1011.1 0001.6 0110 .

    B 1 61011 0001 0110 Resposta: B1616 = (101100010110)2

    Agora se o nmero fosse fracionrio, como faramos a converso?Vamos usar o nmero C25,A216 como exemplo.

    Ex.: (C25,A4)16

    A parte inteira: A parte fracionria

    C 1100. A igual 1010.2 0010. 4 igual 0100.5 0101. Resposta: (110000100101,10100100)2

    Note que o sistema hexadecimal simplifica muito os nmeros binrios.

    Exerccios:

    1. Converta para o sistema binrio:

    a) (2FA)16b) (1BC)16c) (A21)16

    1.3.3 Converso do Sistema Binrio para o Sistema Hexadecimal

    Semelhante converso do sistema binrio para o octal, a diferena queagrupamos de 4 em 4 bits da direita para a esquerda.

    Ex.: (10001010)2

    1000 = 8161010 = A16

    1000 1010 8 A = (8A)16

    07

  • Quando no der para agrupar em 4 em 4 bits, colocamos zero a esquerda donmero. Veja o exemplo:

    Ex.: (110010)2

    11 0100 Perceba que possumos um grupo de 4 bits e outro de 2, quando um caso deste ocorrer, colocamos zero a esquerda at formar um grupo de 4 bits.

    0011 0100

    0011 = 3160100 = 416

    Ento o nmero (110010)2 em hexadecimal (36)16.

    Para converter nmeros binrios fracionrios para o sistema hexadecimal, bastaimaginar que a vrgula o ponto de partida e que apartir dela que agrupamos de 4 em 4bits. Veja o exemplo:

    Ex.: (11111,1)2

    0001 1111 , 1000

    0001 = 1161111 = F161000 = 816

    Ento o nmero (11111,1)2 em hexadecimal (1F,8)16.

    Perceba que quando no conseguimos agrupar de 4 em 4 bits, a esquerda da vrgulacolocamos zero no incio do nmero e a direita da vrgula colocamos zero no fim do nmero.

    Exerccios:

    1. Converta para o sistema hexadecimal

    a) (1010110)2b) (111110100001)2c) (10001,101011)2

    08

  • 1.4 Operaes Aritmticas no Sistema Binrio

    Operaes aritmticas em binrio muito importante pois estas sero utilizados emcircuitos aritmticos, que ser visto posteriormente.

    1.4.1 Adio no Sistema Binrio

    Devemos somar da mesma forma que no sistema decimal, lembrando que no sistemabinrio, possu somente 2 algarismos.

    0 0 1 1 + 0 + 1 + 0 + 1

    0 1 1 10

    Note que 1 + 1 = 102, j que no sistema binrio 102 igual a 2 no sistema decimal.Pela regra de transporte para a prxima coluna, 1 + 1 = 0 e vai um para a prxima

    coluna.Este tranporte chamado carry.

    Para exemplificar somaremos os nmeros (11)2 e (10)2.

    13 ====> 11

    + 2 ====> + 10 5 ====> 101

    Perceba que quando somamos (1 + 1) o resultado zero e vai um para a prximacoluna.

    Vamos usar outro exemplo, agora os nmeros sero (101)2 e (1101)2.

    1 1 1 1 7 ====> 111

    + 13 ====> + 1101 20 ====> 10100

    Na adio de binrio, aconselhvel a soma ser feita em 2 e 2 bits. Veja o caso dacoluna 3, onde est 1 + 1 + 1. Primeiramente somamos (1 + 1) na qual o valor zero e vaium, depois de levarmos o 1 para a prxima coluna somamos agora o (0 + 1) na qual aresposta 1. Veja o passo-a-passo logo abaixo da operao feita na terceira coluna.

    1. Soma-se 1 + 1 = 0 e vai um.2. Soma agora o 1 restante com o resultado anterior, ou seja, 0 + 1 = 1.

    Exerccios:

    1. Efetue as operaes no sistema binrio:

    a) (11101)2 + (1010)2 c) (1010)2 + (1010)2b) (1011)2 + (1111)2

    09

  • 1.4.2 Subtrao no Sistema Binrio

    De forma semelhante a uma subtrao no sistema decimal, mas somente com doisalgarismos.

    0 0 1 1 - 0 - 1 - 0 - 1

    0 1 1 0

    Note que 0 - 1 = 12, porm vai um para a prxima coluna, subtraindo do minuendo.

    Usaremos os nmeros (11)2 e (10)2 como exemplo.

    3 ====> 11 - 2 ====> - 10

    1 ====> 01

    Vamos agora a outro exemplo, os nmeros agora so (1101)2 e (111)2.

    8 ====> 1000- 7 ====> - 111

    ___ 1 1 1 1 ====> 0001

    Veja que agora o 1 vai para debaixo do nmero, agora no mais em cima.

    Exerccios:

    1. Efetue as operaes no sistema binrio.

    a) (10101)2 (1000)2 c) (11000)2 (101)2b) (1111)2 (111)2

    1.4.3 Multiplicao no Sistema Binrio

    Da mesma forma que a multiplicao do sistema decimal. Veja:

    0 x 0 = 0 1 x 0 = 00 x 1 = 0 1 x 1 = 1

    Ex.: (1111)2 x (100)2

    15 =====> 1111x 4 =====> x 100 0000

    0000 1111

    60 ====> 111100

    10

  • Exerccios:

    1. Efetue as multiplicaes no sistema binrio.

    a) (1000)2 x (10)2b) (111)2 x (111)2c) (10100)2 x (101)2

    1.4.4 Diviso no Sistema Binrio

    A diviso a mais complexa das operaes aritmticas binrias, pois abrangeoperaes de multiplicao e de subtrao. Por isso devemos lhe dar uma maior ateno.

    A diviso feita da seguinte forma:

    Vamos usar como exemplo a diviso de (110001)2 por (111)2.

    1. Inicialmente, o processo igual ao da diviso decimal: verifica-se se o dividendo maior ou igual ao divisor e, caso no seja, coloca-se tantos zeros no quociente (e omesmo nmero direita do dividendo), at que o dividendo se torne maior ou igualao divisor.

    2. O prximo passo subtrair o dividendo pelo divisor pelo nmero de casas deste,caso seja maior o divisor, avana uma casa a direita, veja o exemplo criado abaixo.

    Ex.: 110001 |_111____ 111 1

    Note que deveramos colocar 111 no incio do dividendo, mas perceba que 110 menor que 111, por isso avanamos mais uma casa. E iremos subtrair 111 de 1100.

    Ex.: 110001 |_111____ - 111 1 0101

    Agora pegamos um dgito e descemos at o resto no nosso exemplo ficar 1010, ecomo maior que o divisor, colocamos um no quociente e subtraimos 1010 por 111.

    Ex.: 110001 |_111____ - 111 11 01010 - 111

    11

    Descemos agora o ltimo digito do dividendo at o resto e subtraimos pelo divisor.

    Ex.: 110001 |_111____ - 111 111 01010 - 111

    111 - 111

    000 Resposta: (111)2

    11

  • Vamos agora a um outro exemplo para esclarecer melhor a diviso, vamos dividir(10100)2 por (100)2.

    Ex.: 10100 |_100___ -100 1 001

    Veja que (101)2 maior que (100)2 por isso subtramos no incio do dividendo. Oprximo passo descer o prximo dgito do dividendo at o resto.

    Ex.: 10100 |_100___ -100 10 0010

    Como o resto menor que o divisor colocamos um zero no quociente e depoisdescemos o prximo dgito do dividendo at o resto.

    Ex.: 10100 |_100___ -100 101 00100 -100 000 Resposta: (101)2

    Exerccios:

    1. Faa as divises no sistema binrio.

    a) (11001)2 por (101)2b) (100100)2 por (111)2 com 8 casas fracionriasc) (1111)2 por (11)2

    1.4.5 Complemento 2

    Representam-se positivos e negativos pelos sinais + e - respectivamente, mas naprtica, em hardware dos sistemas digitais que realizam operaes aritmticas, tudo deveser codificado em 0 ou 1.

    Um maneira de denominar se um nmero positivo ou negativo acrescentando 0ou 1 esquerda do MSB (algarismo mais significativo). Se o nmero for positivo coloca-se 0se no coloca 1.

    Vamos exemplificar usando o complemento 2 do nmero (54)10.

    Ex.: O nmero binrio de 5410 (110110)2

    Ento o + 5410 = (0110110)2

    Para um nmero se tornar positivo basta achar o seu binrio correspondente eacrescentar um zero antes do MSB.

    12

  • Agora, para achar seu negativo, tem que fazer os seguintes passos:

    1. Achar o positivo do nmero.2. Inverter bit a bit.3. Somar mais um.

    Veja o exemplo a seguir usando o nmero (54)10

    1. Sabemos que o positivo do nmero (0110110)22. Depois invertermos bit a bit.

    0 1 1 0 1 1 0

    1 0 0 1 0 0 1

    3. Agora somamos o nmero invertido bit a bit com 1.

    7 ====> 1 0 0 1 0 0 1 + 13 ====> + dddd 1

    20 ====> 1 0 0 1 0 1 0

    Ento o 5410 (1001010)2

    Note que comea com 1 indicando que negativo.

    Para o nmero negativo voltar para o que era, simples, basta inverter o nmero bit abit e somar com 1. Peguemos o 54 para voltar a 54.

    - 54 = 1 0 0 1 0 1 0 0 1 1 0 1 0 1

    + 13 ====> + dddd 1 20 ====> 0 1 1 0 1 1 0 ====> (54)10

    Exerccios:

    1. Ache o complemento 2 dos nmeros a seguir.

    a) (5)10b) (27)10c) (369)10

    13

  • 1.4.5.1 Utilizao do Complemento 2 em operaes Aritmticas

    Quando fazemos operaes do tipo (3 - 5) o mesmo que somar o primeiro nmeroao negativo do outro (3 + (-5)), neste caso achamos o complemento 2 de 5.

    Veja o exemplo: 1 1

    + 5 = 0101 - 3 ====> 0 1 1 1010 (+) + 1 - 5 ====> 1 0 1 1 1011 ====> - 5 - 2 1 1 1 0

    Veja que (3 - 5 = - 2), e (- 2) em complemento -2 (110)2, ento porque apareceuesse 1 a mais? Do mesmo modo que 0 a esquerda no interfere num nmero positivo.

    Ex.: (0001)2 = 12

    1 a esquerda tambm no interfere num nmero negativo.

    Ex.: (1110)2 = (110)2

    Exerccios:

    1. Faa as seguintes operaes em binrio.

    a) 810 1010b) 510 910c) A516 B816

    14

  • 2 - FUNES E PORTAS LGICAS

    Em 1854, o matemtico George Boole(1815-1864), apresentou um sistemamatemtico de anlise lgica conhecido como lgebra de Boole.

    No incio da era eletrnica, todos os tipos de problemas eram resolvidos porsistemas analgicos.

    Somente em 1938, o engenheiro americano Claude Elwood Shannon utilizou asteorias da lgebra de Boole para a soluo de problemas de circuitos de telefonia.

    Esse ramo da eletrnica emprega um pequeno grupo de circuitos bsicospadronizados conhecidos como portas lgicas.

    Atravs da utilizao conveniente destas portas, podemos implementar todas asexpresses geradas pela lgebra de Boole.

    2.1 Funes Lgicas AND, OR, NOT, NAND e NOR

    Estudaremos a seguir as principais funes lgicas que derivam da lgebra de Boole,sendo as variveis e expresses envolvidas denominadas de booleanas.

    Temos apenas dois estados distintos nas funes lgicas o estado 0 e o 1.O estado 0 representar, por exemplo: luz apagada, som desligado, alarme

    desativado, etc. O estado 1 representar ento: luz acesa, som ligado, alarme ativado, etc.Perceba ento, que se representarmos por 0 uma situao, representamos por 1 a

    situao contrria. Saiba que cada varivel booleana da funo lgica pode assumirsomente 2 situaes diferentes 0 e 1.

    2.1.1 Funo AND

    A porta AND aquela que executa a multiplicao de 2 ou mais vriaveis booleanas.Sua representao algbrica para 2 vriaveis S = AB, onde l se S = A e B.

    - Tabela verdade de uma funo AND

    Chamamos tabela verdade um mapa onde colocamos todas as possveis situaescom seus respectivos resultados. Na tabela encontramos o modo como a funo decomporta. Veja a seguir uma tabela verdade de uma funo AND para 2 vriaveis deentrada.

    Tabela verdade de 2 vriaveis numa porta AND.

    - Porta AND

    A porta AND um circuito que executa a funo AND, sendo representada na prtica,atravs do smbolo abaixo.

    15

    U1C

    A B S0 0 00 1 01 0 01 1 1

  • Sabendo que a porta AND, executa a tabela verdade da funo AND, ou seja,somente teremos sada 1, quando todas as entradas estiverem em 1.

    J sabemos descrever a funo AND para 2 vriaveis de entrada. Agora iremosampliar este conceito para qualquer nmero de entradas. Para exemplificar, mostraremosuma porta AND de 3 vriaveis de entrada, e sua tabela verdade.

    Tabela verdade de 3 vriaveis numa porta AND.

    Notamos que a tabela verdade mostra as 8 possveis combinaes das vriaveis deentrada e seus respectivos resultados na sada.

    O nmero de situaes possveis igual a 2N, onde N o nmero de entradas. Noexemplo: N=3 e 2 = 8.

    2.1.2 Funo OR

    A funo OR assume valor 1 quando uma ou mais vriaveis de entrada forem iguaisa 1 e assume valor 0 quando nenhuma vriavel assumir valor 1. Sua representaoalgbrica para 2 vriaveis de entrada S = A + B, onde se l S = A ou B.

    - Tabela verdade da funo OR

    Nesta tabela verdade, teremos todas as possveis situaes de uma funo OR com2 vriaveis de entrada.

    - Porta OR

    a porta que executa a funo OR. A representao da porta OR atravs dosmbolo abaixo.

    16

    U11A

    U11A

    A B S0 0 00 1 11 0 11 1 1

    A B C S0 0 0 00 0 1 00 1 0 00 1 1 01 0 0 01 0 1 01 1 0 01 1 1 1

  • 2.1.3 Funo NOT

    A funo NOT aquela que inverte a vriavel de entrada, ou seja, se a vriavel deentrada 0 a sada ser 1, e se a entrada estiver em 1 a sada vai para 0. Suarepresentao algbrica da seguinte maneira: S = A ou S = A', l-se A barra ou NO A.

    - Tabela verdade da funo NOT

    A tabela abaixo mostra os possveis casos da funo NOT.

    - Porta NOT

    O inversor o bloco lgico que executa a funo NOT.

    2.1.4 Funo NAND

    J estudamos as trs portas lgicas primitivas que foram a AND, OR e NOT. A partirde agora estudaremos funes relacionando estas trs funes primitivas.

    Essa funo como o prprio nome NO AND diz: a juno das funes lgicasAND com a NOT, ou seja, teremos a funo AND invertida. representada da seguinteforma: S = A.B, onde a barra indica que A.B est invertida.

    - Tabela verdade da funo NAND

    Veja a tabela verdade abaixo da funo NAND com duas variveis de entrada.

    Perceba que a tabela exatamente o contrrio da AND.

    - Porta NAND

    A sua representao simblica vista logo abaixo.

    17

    A S0 11 0

    U2D

    A B S0 0 10 1 11 0 11 1 0

    U1@

  • Repare que a porta NAND uma porta AND com um inversor na sua sada.

    2.1.5 Funo NOR

    Semelhante funo NAND, a funo NOR a juno das funes NOT com aNOR, ou seja, a funo NOR a inverso da funo OR. representada da seguintemaneira:

    S = A + B, onde a barra indica a inverso da soma booleana A + B.

    - Tabela verdade da funo NOR

    Note que a tabela verdade da funo NOR representar a funo OR invertida.

    - Porta NOR

    A porta NOR o bloco lgico que executa a funo NOR. Sua representaosimblica :

    De maneira semelhante, podemos formar uma porta OR utilizando um inversor nasua sada.

    18

    A B S0 0 10 1 01 0 01 1 0

    U1@

    U1A

    7400N

    U2C

    7406N

    U1B

    7406N

    U2D

    7432N

  • 2.2 Expresses Booleanas Obtidas de Circuitos Lgicos

    Todo circuito lgico executa uma expresso booleana e, por mais complexo que seja, formado pela interligao das portas lgicas bsicas. Podemos obter a expressobooleana que executada por um circuito lgico qualquer. Para mostrar o procedimento,vamos obter a expresso que o circuito do exemplo abaixo executa.

    Para facilitar, vamos dividir o circuito em 2 partes:

    Na sada S1, teremos a soma A + B, pois sendo este bloco uma por OR, suaexpresso de sada ser: S1 = A + B. Como S1 injetada em uma das entradas da portaAND pertencente segunda parte do circuito e na outra entrada est a vrialvel C, aexpresso de sada ser: S = S1C.

    Para determinamos a expresso final, substitumo o S1 por (A + B) na expresso final.S = (A + B)Cque a expresso que o circuito executa.

    Exerccios:

    1. Escreva a expresso booleana dos circuitos abaixo:

    a)

    19

    AB

    C

    S2

    S1

    U1A

    7408N

    U2A

    7432N

    U1A

    7408N

    U2A

    7432N

    U1A

    7408N

    U2A

    7432N

    A + B(A + B).C

    U1A

    7408N

    U2A

    7432NU3A

    7432N

  • b)

    c)

    2.3 Circuitos Obtidos de Expresses Booleanas

    J vimos que podemos obter uma expresso booleana atravs que um circuito lgicoexecuta. Podemos tambm desenhar um circuito atravs de uma expresso booleanaqualquer.

    A forma para a soluo consiste em identificar as portas lgicas na expresso edesenh-las com as respectivas ligaes, a partir das variveis de entrada. O circuito S =(A + B).C.(B + D) servir como exemplo.

    Solucionaremos respeitando a hierarquia das funes da aritmtica elementar, ouseja, iniciaremos a soluo primeiramente pelos parnteses.

    Para o primeiro parntese, temos a soma booleana A + B, logo, o circuito ser umaporta OR. Para o segundo temos a soma booleana B + D, logo, o circuito ser uma portaOR. Temos ento, at a, os seguintes circuitos:

    20

    U1A

    7408NU4B

    7404NU5A

    7408N

    U6

    OR3

    U1

    NOT

    U2

    NOTU3

    NOT

    U4

    AND2U5

    AND2

    U6

    NAND2

    U9

    OR2

    U7

    OR3

    U3A 7432N

    (A + B) = S1AB

    S1

    U2A 7432N

    (C + D) = S2CD

    S2

  • Logo em seguida, temos uma multiplicao booleana dos dois parnteses,juntamente com a vrialvel C, sendo o circuito que executa esta multiplicao uma portaAND:

    Substituindo as sadas S1 e S2, obtemos o circuito completo.

    Exerccios:

    1. Desenhe o circuito das expresses booleanas abaixo:

    a) ABC + (A + B)C c)[(A.B) + (C.D)].E + A.(A.D.E. + C.D.E) b) [(A + B) + (C.D)]D

    2.4 Tabelas Verdade Obtidas de Expresses Booleanas

    Uma maneira de se fazer o estudo de uma funo booleana a utilizao da tabelaverdade.

    Para extrairmos a tabela verdade de uma expresso, acompanhamos o seguinteprocedimento:

    1 Montamos o quadro de possibilidades.2 Montamos colunas para cada membro da expresso.3 Preenchemos estas colunas com seus resultados.4 Montamos uma coluna para o resultado final.5 Preenchemos esta coluna com os resultados finais.

    Para esclarecer este processo, vamos utilizar a expresso S = AB.C + A.D + A.B.D

    Temos na expresso 4 variveis: A, B, C e D, logo, teremos 24 possibilidades desada.

    Veja a seguir, a tabela verdade da expresso com 4 variveis, colunas auxiliares paracada membro da expresso e uma coluna para a sada.

    21

    U2

    AND3

    S1S2C

    S

    U2

    OR2

    U3

    OR2

    U9

    AND3

    AB

    C

    D

  • Note que primeiramente fazemos a tabela verdade de cada expresso e como estoligadas numa porta OR fazemos a soma booleana, no que ser o resultado final.

    Exerccios:

    1. Monte a tabela verdade de cada expresso booleana

    a) (A + B) + ACD + (B + D)C.b) [(B + C)A] + [D + (A + C)]c) (A + B)(BC)

    2.5 Expresses Booleanas Obtidas de Tabelas Verdade

    Para obter expresses e circuitos a partir de tabelas verdade, usamos duas formas,as dos Mintermos(Soma de Produtos) e a dos Maxtermos(Produto de Somas).

    Usaremos a tabela abaixo como exemplo.

    - Mintermos

    Tambm chamado de Soma de Produtos pois so Portas AND ligadas a uma portaOR. Neste caso para obter o circuito lgico, pegamos as sadas com nvel lgico 1 e cadavarivel de entrada ser tratada da seguinte forma, se for de nvel lgico 0, ser barrada X'e caso seja de nvel lgico 1 ser X.

    Veja o passo-a-passo para obter o circuito da tabela verdade usando o mtodo dosMintermos.

    22

    A B C S0 0 0 00 0 1 00 1 0 10 1 1 11 0 0 11 0 1 01 1 0 11 1 1 0

    1 Membro 2 Membro 3 MembroA B C D AD' S0 0 0 0 0 0 0 00 0 0 1 0 0 0 00 0 1 0 0 0 0 00 0 1 1 0 0 0 00 1 0 0 0 0 0 00 1 0 1 0 0 1 10 1 1 0 0 0 0 00 1 1 1 0 0 1 11 0 0 0 0 1 0 11 0 0 1 0 0 0 01 0 1 0 1 1 0 11 0 1 1 1 0 0 11 1 0 0 0 1 0 11 1 0 1 0 0 0 01 1 1 0 0 1 0 11 1 1 1 0 0 0 0

    AB'C A'BD

  • 1 Passo: Pegar as combinaes de entradas com sada 1. No nosso exemplo soABC, ABC, AB.C e ABC. Note que as entradas que esto em zero, colocamos um inversor.

    2 Passo: Unimos todas as entradas numa porta OR. O circuito lgico obtido databela verdade a partir dos Mintermos ser:

    - Maxtermos

    Tambm chamado de Produto de Somas pois so Portas OR ligadas a uma portaAND. Neste caso para obter o circuito lgico, pegamos as sadas com nvel lgico 0 e cadavarivel de entrada ser tratada da seguinte forma, se for de nvel lgico 1, ser barrada X'e caso seja de nvel lgico 0 ser X.

    Veja o passo-a-passo para obter o circuito da tabela verdade usando o mtodo dosMaxtermos

    1 Passo: Pegar as combinaes de entradas com sada 0. No nosso exemplo so(A + B + C), (A + B + C), (A + B + C) e (A + B + C). Note que as entradas que esto em um,colocamos um inversor.

    2 Passo: Unimos todas as entradas numa porta AND. O circuito lgico obtido databela verdade a partir dos Mintermos ser:

    U1NOT

    U2NOT

    U6NOT

    U3

    AND3U4

    AND3

    U5

    AND3U7

    AND3

    U8

    OR4

    A B C

    S

  • Exerccios:

    1. Determine a expresso que executa a tabela e desenhe o circuito lgico, pelosmtodos dos Mintermos e Maxtermos.

    2.6 Blocos Lgicos OU EXCLUSIVO e COINCIDNCIA

    Estudaremos agora, os blocos OU Exclusivo e Coincidncia so muito importantes narea de Eletrnica Digital, pois juntamente com as outras portas lgicas formam outroscircuitos elementares dentro dos sistemas digitais.

    2.6.1 Bloco OU EXCLUSIVO

    A funo que ele executa, consiste em fornecer 1 quando as variveis de entradaforem diferentes. Veja logo abaixo sua tabela verdade.

    A B C S0 0 0 10 0 1 00 1 0 00 1 1 11 0 0 01 0 1 11 1 0 01 1 1 1

    A B S0 0 00 1 11 0 11 1 0

    U1NOT

    U2NOT

    U3NOT

    S

    U4

    OR3

    U5

    OR3

    U6

    OR3U7

    OR3

    U8

    AND4

    A B C

    23

  • Da tabela sua expresso caracterstica: 24S = A.B + A.B

    A notao algbrica que representa a funo XOR (OU Exclusivo) S = A B,onde se l A OU Exclusivo B, sendo S = A B = A.B + A.B. O circuito XOR podeser reprensentado pelo circuito a seguir:

    Uma importante observao que, ao contrrio de outros blocos lgicos bsicos, ocircuito XOR s pde ter 2 variveis de entrada, fato esse devido a sua definio bsica.

    2.6.2 Bloco COINCIDNCIA

    A funo que ele executa, como seu prprio nome diz, a de fornecer 1 sadaquando houver uma coincidncia nos valores das variveis de entrada.

    Sua expresso : S = A.B + AB

    A notao algbrica que representa a funo Coincidncia S = A B, onde se l ACoincidncia B, sendo S = A B = A.B + AB. O smbolo do circuito Coincidncia vistologo abaixo:

    Se compararmos as tabelas verdades dos blocos XOR e Coincidncia, iremosconcluir que estes so complementares, ou seja, teremos a sada de uma invertida emrelao a sada do outro. Assim sendo, podemos escrever:

    A B=(A B)

    O bloco Coincidncia tambm denominado de NXOR.

    Da mesma forma que a XOR, a NXOR defenido apenas para 2 variveis deentrada.

    AB

    SV@

    A B S0 0 10 1 01 0 01 1 1

    U3A

  • 25

    3 LGEBRA DE BOOLE E MAPA DE VEITCH-KARNAUGH

    Estudamos at aqui circuitos lgicos sem nos preocuparmos com simplificaes.Porm, na prtica, estes circuitos podem admitir simplificaes.

    Teremos agora um breve estudo sobre a lgebra de Boole, pois ser atravs de suaspropriedades, teoremas fundamentais e identidades que efetuamos as simplificaes.

    3.1 Variveis e Expresses na lgebra de Boole

    Como j vimos nos captulos anteriores, as variveis booleanas so representadasatravs de letras, podendo assumir somente dois valores: 0 ou 1. Denominamos expressobooleana sentena matemtica composta de termos cujas variveis so booleanas, damesma forma, podendo assumir como resultado final 0 ou 1.

    *** TEOREMAS ***

    1. A . A = 0

    2. A . A = A

    3. A + A = 1

    4. A + A = A

    5. A + A.B = A

    6. A + A.B = A + B

    7. A.B + A.C + B.C = A.B + A.C

    8. A + B + C + ... + N = A.B.C ... N

    9. A . B . C ... N = A + B + C + ... + N

    10. A + 0 = A

    11. A + 1 = 1

    12. A . 0 = 0

    13. A . 1 = A

    14. (A + B).(A + C) = A + B.C

    15. A + B = B + A

    16. A.B = B.A

    17. A = A

    18. A + (B + C) = (A + B) + C = A + B + C

    19. A . (B.C) = (A.B) . C = A.B.C

    20. (A + B) . (A + C) = A + B.C

  • 26

    3.2 Simplificao de Expresses Booleanas

    Usando os teoremas da lgebra de Boole, podemos simplificar expresses econseqentemente circuitos.

    Para efetuarmos estas configuraes, existem, basicamente, dois processos. Oprimeiro deles a simplificao atravs da lgebra de Boole, o segundo a vinculao dosmapas de Veitch-Karnaugh, como veremos logo adiante. Para estudar, vamos utilizar, porexemplo, a expresso:

    S = A.B.C + A.C + A.B

    Primeiramente, colocamos em evidncia a varivel A

    S = A.(B.C + C + B)

    Atravs do teorema 6, fazemos a simplificao de B.C + C.

    S = A.(B + C + B)

    Agora usamos o teorema 3, onde B + B = 1.

    S = A.(1 + C)

    O teorema 11 ser usado agora em 1 + C = 1.

    S = A.1

    Para finalizar usamos o teorema 13, onde A.1 = A. Como no temos mais o quesimplificar, a sada final :

    S = A

    Esta expresso mostra a importncia e a conseqente minimizao do circuito, poisos resultados so idnticos aos valores assumidos pela varivel A, assim sendo, todo ocircuito pode ser substitudo por um nico fio ligado varivel

    Como um outro exemplo, vamos simplificar a expresso:

    S = (A B).[B(A + C)+ D(A + B + C)]

    Primeiramente, simplificamos o parntese, usando o teorema 8, o teorema deMorgan.

    S = (A B).[B(A + C)+ D(A.B.C)]

    Agora multiplicamos as variveis do colchete, usando a propriedadedistributiva.

    S = (A B).[A.B + B.C + A.B.C.D]

    Colocamos em evidncia a varivel A de dentro do colchete.

    S = (A B).[A.(B + B.C.D) + B.C]

    O teorema 6 ser usado no parntese dentro do colchete. Veja que em

  • (B + B.C.D) podemos fazer com que C.D o B do teorema, e a o B o A. Ficando assim:

    teorema 6: A + AB = A + BNosso exemplo: B + B.C.D = B + C.D

    Ento nossa expresso ficar assim:

    S = (A B).[A.(B + C.D) + B.C]

    Mais uma vez a propriedade distributiva:

    S = (A B).[A.B + A.C.D + B.C]

    Faremos agora a substituio da expresso (A B) por A.B + A.B. Tambmusaremos o teorema 8, o teorema de Morgan.

    S = (A.B + A.B).[(A.B).(ACD).(BC)]

    Novamente usando o teorema de Morgan, s que agora usando o teorema 9.

    S = (A.B + A.B).[(A + B).(A + C + D).(B + C)]

    Usando a propriedade distributiva:

    S = (A.B + A.B).[(A + A.C + A.D + A.B + B.C+ B.D).(B + C)]

    Colocamos em evidncia a varivel A:

    S = (A.B + A.B).{ [A.(1 + C + D + B) + B.C + B.D].(B + C) }

    Lembrando o teorema 11 e logo em seguida o teorema 13.

    S = (A.B + A.B).[(A + B.C + B.D)(B + C)]

    A propriedade distributiva ser usada agora:

    S = (A.B + A.B).[A.B + A.C + B.B.C + B.C.C + B.B.D + B.C.D]

    Usando os teoremas 2 e 1, ficar assim nossa expresso:

    S = (A.B + A.B).[A.B + A.C + B.C + B.0 + B.D + B.C.D]

    Colocando em evidncia a varivel B.D e usando o teorema 12, ficar assim:

    S = (A.B + A.B).[A.B + A.C + B.C + 0 + B.D.(1 + C)]

    Usando agora os teoremas 11 e 13.

    S = (A.B + A.B).[A.B + A.C + B.C + B.D]

    O teorema 7 ser usado na expresso (A.B + A.C + B.C).

    S = (A.B + A.B).[A.C + B.C + B.D]

  • 28

    Agora faremos a propriedade distributiva:

    S = A.A.B.C + A.B.B.C + A.B.B.D + A.A.B.C + A.B.B.C + A.B.B.D

    Nossa expresso final fica assim:

    S = A.B.C + A.B.C + A.B.D

    Exerccios:

    1. Simplifique as expresses abaixo:

    a. S = A.B.C + A.B.C + A.B.C + A.B.C + A.B.C

    b. S = [(B + C + D).(A + B + C) + C] + A.B.C + B.(A + C)

    3.3 Simplificao de Expresses Booleanas atravs dos Diagramas deVeitch-Karnaugh

    At aqui vimos a simplificao de expresses mediante a utilizao dos teoremas epropriedades da lgebra de Boole. Nestes tens, vamos tratar da simplificao deexpresses por meio dos diagramas de Veitch-Karnaugh.

    Estes mapas ou diagramas permitem a simplificao de maneira mais rpida doscasos extrados de tabela verdade, obtida de situao qualquer. Sero estudados osdiagramas para 2,3 e 4 variveis.

    3.3.1 Diagrama de Veitch-Karnaugh para 2 variveis

    A figura abaixo mostra um diagrama de Veitch-Karnaugh para 2 variveis:

    B B

    A

    A

    No mapa, encontraremos todas as possibilidades assumidas entre as variveis A e B.Logo abaixo so mostradas todas as regies do mapa.

    B B B B B B B B

    A A A A

    A A A A

    (a) (b) (c) (d)

  • 29

    (a) regio onde A = 1.

    (b) regio onde A = 0 (A = 1).

    (c) regio onde B = 1.

    (d) regio onde B = 0 (B = 1).

    Com 2 variveis, podemos obter 4 possibilidades:

    No caso 0, temos: A = 0 e B = 0. A regio do diagrama que mostra esta condio ainterseco das regies onde A = 0 e B = 0.

    No caso 1, temos: A = 0 e B = 1. A regio do diagrama que mostra esta condio ada interseco das regies onde A = 0 (A = 1) e B = 1.

    No caso 2, temos a interseco da regio onde A = 1 e B = 0 (B = 1). Fazendo estainterseco, temos:

    A B0 00 11 01 1

    - - - caso 0 - - - caso 1 - - - caso 2 - - - caso 3

    A

    A

    B B

    Esta regio tambm pode ser chamada de regio A.B.

    A

    A

    B B

    Esta regio tambm pode ser chamada de regio A.B.

    A

    A

    B B

    Esta regio tambm pode ser chamada de regio A.B.

  • 30

    No caso 3, temos a interseco da regio onde A = 1 e B = 1. Fazendo estainterseco, temos:

    Podemos distribuir, ento, as 4 possibilidades neste diagrama, da seguinte forma:

    Logo, notamos que cada linha da tabela verdade possui sua regio prpria nodiagrama de Veitch-Karnaugh.

    Essas regies so, portanto, os locais onde devem ser colocados os valores que aexpresso assume nas diferentes possibilidades.

    Para entendermos melhor o significado destes conceitos vamos utilizar o exemplo:

    1 A tabela verdade mostra o estudo de uma funo de 2 variveis. Vamos colocarseus resultados no Diagrama de Veitch-Karnaugh.

    Utilizando o mtodo desenvolvido no captulo 2, obtemos a expresso caractersticada funo:

    S = A.B + A.B + A.B

    Passando para o mapa os casos da tabela verdade, conforme o esquema decolocao visto anteriormente:

    Esta regio tambm pode ser chamada de regio A.B.

    A

    A

    B B

    A

    A

    B BCaso 0

    A.B0 0

    Caso 1A.B0 1

    Caso 2A.B1 0

    Caso 3A.B1 1

    A B S0 0 00 1 11 0 11 1 1

    - - - caso 0 - - - caso 1 - - - caso 2 - - - caso 3

    A

    A

    B B

    0 1

    1 1

  • 31

    Uma vez entendida a colocao dos valores assumidos pela expresso em cada casono diagrama de Veitch-Karnaugh, vamos verificar como podemos efetuar as simplificaes.

    Para obtermos a expresso simplificada do diagrama, utilizamos o seguinte mtodo:

    Tentamos agrupar as regies onde S igual a 1, no menor nmero possvel deagrupamentos. As regies onde S 1, que no puderem ser agrupadas, sero consideradasisoladamente. Para um diagrama de 2 variveis, os agrupamentos possveis so osseguintes:

    a) Quadra:

    Conjunto de 4 regies, onde S igual a 1. No diagrama de 2 variveis, oagrupamento mximo, proveniente de uma tabela onde todos os casos valem 1. Assimsendo, a expresso final simplificada obtida S = 1.A.

    b) Pares:

    Conjunto de 2 regies onde S 1, que tem um lado em comum, ou seja, sovizinhos. As figuras abaixo mostram exemplos de 2 pares agrupados e suas respectivasexpresses, dentre os 4 possveis em 2 variveis.

    Notamos que nenhum 1 ficou de fora dos agrupamentos, e ainda que o mesmo1 pode pertencer a mais de um agrupamento.

    A

    A

    B B

    1

    1 1

    1Quadra : S = 1

    A

    A

    B B

    0

    1 1

    0Par : S = A

    Pares : S = A + BA

    A

    B B

    0

    1 1

    1

  • 32

    c) Termos isoladas:

    Regies onde S 1, sem vizinhana para grupamentos. So os prprios casosde entrada, sem simplificao. Logo abaixo duas figuras exemplificam 2 termos isolados,sem possibilidade de agrupamento.

    3.3.2 Diagrama de Veitch-Karnaugh para 3 variveis

    O diagrama de Veitch-Karnaugh para 3 variveis:

    No mapa, encontramos todas as possibilidades assumidas entre as variveis A, B eC: A figura abaixo mostra as regies deste mapa.

    (a) regio na qual A = 1. (e) regio na qual C = 1.(b) regio na qual A = 1 (A = 0). (f) regio na qual C = 1 (C = 0).(c) regio na qual B = 1.(d) regio na qual B = 1 (B = 0).

    A

    A

    B B

    0

    1 0

    1S = A.B + A.B

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    (a) (b) (c)

    (d) (e) (f)

  • 33Neste diagrama, tambm temos uma regio para cada caso da tabela verdade. A

    tabela e a figura abaixo mostram os casos para 3 variveis e as respectivas localizaes nomapa.

    Para melhor compreenso, vamos, como exemplo, transpor para o diagrama a sadaexpresso:

    S = A.B.C + A.B.C + A.B.C + A.B.C + A.B.C

    Tabela verdade extrada da expresso:

    Transpondo a tabela para o diagrama, temos:

    Para efetuarmos a simplificao, seguimos o mesmo processo visto anteriormente,somente que, os agrupamentos possveis so os seguintes:

    Caso A B C0 0 0 01 0 0 12 0 1 03 0 1 14 1 0 05 1 0 16 1 1 07 1 1 1

    A

    A

    B B

    C CC

    Caso 00 0 0A B C

    Caso 10 0 1A B C

    Caso 30 1 1A B C

    Caso 20 1 0A B C

    Caso 41 0 0A B C

    Caso 51 0 1A B C

    Caso 71 1 1A B C

    Caso 61 1 0A B C

    A B C S0 0 0 10 0 1 00 1 0 10 1 1 11 0 0 11 0 1 01 1 0 11 1 1 0

    A

    A

    B B

    C CC

    Caso 01

    Caso 10

    Caso 31

    Caso 21

    Caso 41

    Caso 50

    Caso 70

    Caso 61

  • 34a) Oitava:

    Agrupamento mximo, onde todas as localidades valem 1.

    b) Quadra:

    Quadras so agrupamentos de 4 regies, onde S igual a 1, adjacentes ouseqncia. Vamos agora formar algumas quadras possveis num diagrama de 3 variveis, attulo de exemplo:

    (a) (b) (c)

    (a) Quadra A. (b) Quadra B. (c) Quadra C.

    c) Pares:

    A figura abaixo apresenta, como exemplo, 2 pares entre os 12 possveis emum diagrama de 3 variveis:

    d) Termos isolados:

    Vejamos alguns exemplos de termos isolados, que, como j dissemos, so oscasos de entrada sem simplificao.

    A

    A

    B B

    C CC

    1 1 1 11 1 1 1

    Oitava : S = 1

    A

    A

    B B

    C CC

    A

    A

    B B

    C CC

    1 1 1

    1 1

    1 11

    0 0 0 0

    0 0

    0 0

    A

    A

    B B

    C CC

    1

    1

    1

    10

    0

    0

    0

    A

    A

    B B

    C CC

    => Par A.C (est localizado na interseco das regies A e C)

    Par A.C (est localizado na interseco das regies A e C)

    A

    A

    B B

    C CC

    1

    1

    1

    0

    0

    00

    0 => Termo A.B.C

    => Termo A.B.C

    Termo A.B.C

    1 1

    1 1

    0 0

    00

  • 35Para o exemplo, agrupamos primeiramente uma quadra e, logo aps, um par.

    Notamos que esse par no depende de C, pois est localizado tanto em C como emC, resultando sua expresso independente de C, ou seja, o termo A.B.

    O passo final somarmos as expresses referentes aos agrupamentos. A expressofinal minimizada ser: S = A.B + C.

    Como outro exemplo, vamos minimizar o circuito que executa a tabela abaixo:

    Transpondo para o diagrama, temos:

    Efetuando os agrupamentos, notamos que obtemos apenas 3 pares:

    A expresso minimizada ser: S = A.C + A.B + A.C

    A

    A

    B B

    C CC

    1 1

    1 1

    0 1

    0 0

    => Par A.B

    => Quadra C

    A B C S0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 11 0 1 11 1 0 11 1 1 0

    A

    A

    B B

    C CC

    0 1 1 0

    1 1 0 1

    A

    A

    B B

    C CC

    0 1 1 0

    1 1 0 1

    => Par A.C

    => Pares: A.C e A.B

  • 36Poderamos tambm ter agrupado de outra maneira:

    A expresso gerada, seria, ento: S = A.C + A.C + B.C

    Estas duas expresses, aparentemente diferentes, possuem o mesmocomportamento em cada possibilidade, fato este comprovado, levantando-se as respectivastabelas verdade.

    3.3.3 Diagrama de Veitch-Karnaugh para 4 variveis

    O diagrama para 4 variveis visto logo abaixo:

    Abaixo so mostradas as regies assumidas pelas variveis A, B, C e D neste mapa.

    A

    A

    B B

    C CC

    0 1 1 0

    1 1 0 1

    A

    AB

    B

    B

    C C

    D D D

    A

    AB

    B

    BC C

    D D D

    A

    AB

    B

    BC C

    D D D

    (a) Regio onde A = 1. (b) Regio onde A = 1(A = 0).

  • 37

    Neste tipo de diagrama, tambm temos uma regio para cada caso da tabelaverdade, como podemos verificar no diagrama completo:

    A

    AB

    B

    BC C

    D D D

    A

    AB

    B

    BC C

    D D D

    (c) Regio onde B = 1. (d) Regio onde B = 1(B = 0).

    A

    AB

    B

    BC C

    D D D

    A

    AB

    B

    BC C

    D D D

    (e) Regio onde C = 1. (f) Regio onde C = 1(C = 0).

    A

    AB

    B

    BC C

    D D D

    A

    AB

    B

    BC C

    D D D

    (g) Regio onde D = 1. (h) Regio onde D = 1(D = 0).

  • 38

    Vamos analisar a colocao de uma das possibilidades, visto que as outras soanlogas.

    Tomemos, como exemplo, o caso 8:

    A B C D => 1 0 0 0

    A = 1, B = 0 (B = 1), C = 0 (C = 1) e D = 0 (D = 1)

    Da interseco dessas regies, obtemos a regio A B C D, que a referente ao caso8:

    Para esclarecermos melhor a colocao do diagrama e analisarmos outros casos,vamos transpor para o mesmo a tabela abaixo:

    Casos A B C D0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 110 1 0 1 011 1 0 1 112 1 1 0 013 1 1 0 114 1 1 1 015 1 1 1 1

    A

    A

    B

    B

    B

    C C

    D D D

    Caso 0A B C D0 0 0 0

    Caso 1A B C D

    10 0 0

    Caso 3A B C D

    10 0 1

    Caso 2A B C D

    00 0 1Caso 6A B C D

    00 1 1

    Caso 7A B C D

    10 1 1

    Caso 5A B C D

    10 1 0

    Caso 4A B C D

    00 1 0Caso 14A B C D

    01 1 1

    Caso 15 A B C D

    11 1 1

    Caso 13A B C D

    11 1 0

    Caso 12A B C D

    01 1 0Caso 10A B C D

    01 0 1

    Caso 11A B C D

    11 0 1

    Caso 9A B C D

    11 0 0

    Caso 8A B C D

    01 0 0

    A

    AB

    B

    B

    C C

    D D D

    39

  • Transpondo a tabela para o diagrama, temos:

    Para efetuarmos a simplificao, seguimos o mesmo processo para os diagramas de

    3 variveis, somente que neste caso, o principal agrupamento ser a oitava.

    Devemos ressaltar aqui, que no diagrama, os lados extremos opostos se comunicam,ou seja, podemos formar oitavas, quadras e pares com os termos localizados nos ladosextremos opostos.

    Vamos, como exemplo, verificar alguns desses casos no diagrama:

    a) Exemplos de Pares:

    40

    A B C D S0 0 0 0 00 0 0 1 10 0 1 0 10 0 1 1 10 1 0 0 00 1 0 1 10 1 1 0 00 1 1 1 11 0 0 0 11 0 0 1 11 0 1 0 01 0 1 1 11 1 0 0 11 1 0 1 11 1 1 0 01 1 1 1 1

    A

    AB

    B

    B

    C C

    D D D

    0 1 1 1

    0 1 1 0

    1 1 1 0

    1 1 1 0

    A

    AB

    B

    B

    C C

    D D D

    1

    1

    1

    1 => Par A.B.D

    Par B.C.D

  • b) Exemplos de Quadras:

    c) Exemplos de Oitavas:

    Convm observar que, neste mapa, as oitavas representam as prprias regies A, A,B, B, C, C, D e D e que o agrupamento mximo (mapa totalmente preenchido com 1)constitui-se uma hexa, ou seja, agrupamento com 16 regies valendo 1.

    Aps essa ressalva, vamos minimizar a expresso do nosso exemplo. Inicialmente,agrupamos as oitavas, em seguida as quadras, a seguir os pares e, por ltimo, os termosisolados, se existirem. Expresses dos agrupamentos:

    41

    A

    AB

    B

    B

    C C

    D D D

    A

    AB

    B

    B

    C C

    D D D

    1 1

    1 1

    11

    11

    11

    11

    => Quadra B.D

    Quadra B.D => Quadra B.D

    A

    AB

    B

    B

    C C

    D D D

    A

    AB

    B

    B

    C C

    D D D

    11

    11

    11

    11

    1 1 1 1

    1 1 1 1

    => Oitava D

    => Oitava B

    A

    AB

    B

    B

    C C

    D D D

    0 1 1 1

    0 1 1 0

    1 1 1 0

    1 1 1 0

    Oitava: D

    Quadra: A.C

    Par: A.B.C

    Quadra

    Par

    Oitava

  • Somando as expresses, teremos a expresso final minimizada: S = D + A.C + A.B.C

    Como outro exemplo, vamos minimizar o circuito que executa a tabela verdadeabaixo:

    Transpondo a tabela verdade para o diagrama, temos:

    No diagrama, temos: 2 quadras, 1 par e 1 termo isolado.

    A expresso minimizada de S ser a soma de todos esses agrupamentos:

    S = A.B.C.D + B.C.D + A.B + A.D 42

    A B C D S0 0 0 0 00 0 0 1 10 0 1 0 00 0 1 1 10 1 0 0 10 1 0 1 10 1 1 0 10 1 1 1 11 0 0 0 01 0 0 1 01 0 1 0 11 0 1 1 01 1 0 0 01 1 0 1 01 1 1 0 01 1 1 1 1

    A

    AB

    B

    B

    C C

    D D D

    00

    0 0

    0 0 0

    0

    1 1 1 1

    1 1

    1

    1

    A

    AB

    B

    B

    C C

    D D D

    00

    0 0

    0 0 0

    0

    1 1 1 1

    1 1

    1

    1

    Quadra A.D

    Quadra A.B

    Par B.C.D

    Termo isolado A.B.C.D

  • Exerccios:

    1. Atravs das expresses abaixo, ache a tabela verdade e simplifique via mapa deVeitch-Karnaugh:

    a. S = A.B + A.B + A.B

    b. S = A.B.C + B.C + A.C

    c. S = A + B.C + A.B

    d. S = A.B.C + B.D + A.C + A B

    3.3.4 Diagramao com Condies Irrelevantes

    Chamamos de condio irrelevante (x) a situao de entrada onde a sada podeassumir 0 ou 1 indiferentemente. Esta condio ocorre principalmente pela impossibilidadeprtica do caso de entrada acontecer, sendo utilizada em vrias situaes nos captulosposteriores. Para sua utilizao em diagramas de Veitch-Harnaugh, devemos, para cadacondio irrelevante, adotar 0 ou 1, dos dois, aquele que possibilitar melhor agrupamento econseqentemente maior simplificao.

    Para esclarecer este processo, vamos utilizar a tabela abaixo:

    Transpondo esta tabela para o diagrama, temos:

    O smbolo (x) indica que neste caso a sada pode assumir 0 ou 1, indiferentemente,pois, ou indica, possibilita qualquer dos 2 valores na sada. Para fins de simplificao,devemos adotar x = 1, pois assim sendo, agrupamos uma quadra, ao invs de 2 pares (nocaso de x = 0), representando uma maior simplificao da expresso de sada: S = A.

    Convm ressaltar que, em uma tabela verdade, podemos ter varias condiesirrelevantes que devem ser independentemente, conforme agrupamento em que seencontram. Para exemplificar, vamos simplificar a expresso extrada da tabela abaixo.

    43

    A B C S0 0 0 X0 0 1 10 1 0 10 1 1 11 0 0 01 0 1 01 1 0 01 1 1 0

    A

    A

    B B

    C CC

    X 1 1 1

    0 0 0 0

  • O prximo passo agrupar as regies que valem 1, utilizando a condio irrelevante(x) para completar o agrupamento. Convm lembrar que, para maior simplificao, devemoster um nmero mnimo de agrupamentos, cada um deles, porm, com o maior nmero deblocos possveis. Assim sendo, temos:

    Notamos que as condies irrelevantes pertencentes aos agrupamentos receberamvalor 1, enquanto as deixadas de fora, valor 0.

    A expresso simplificada ser composta por 2 quadras e um par, sendo esta:

    S = A.C + A.D + A.C.D.

    Exerccios:

    1. Determine a expresso simplificada:

    a.

    A B C D S0 0 0 0 X0 0 0 1 00 0 1 0 10 0 1 1 X0 1 0 0 10 1 0 1 00 1 1 0 10 1 1 1 11 0 0 0 01 0 0 1 11 0 1 0 X1 0 1 1 01 1 0 0 01 1 0 1 X1 1 1 0 01 1 1 1 X

    Passando para o diagrama de 4 variveis:

    A

    AB

    B

    B

    C C

    D D D

    X 0 X 1

    1 0 1 1

    0 X X 0

    0 1 0 X

    A

    AB

    B

    B

    C C

    D D D

    X 0 X 1

    1 0 1 1

    0 X X 0

    0 1 0 X

    Quadra A.D Quadra A.C

    Par A.C.D

    A B C S0 0 0 10 0 1 X0 1 0 00 1 1 11 0 0 X1 0 1 11 1 0 X1 1 1 X 44

  • b.

    3.3.5 Casos que no Admitem Simplificao

    Vamos, neste tpico, efetuar uma anlise das expresses representativas dasfunes XOR e NXOR, no que se refere s suas colocaes nos diagramas de Veitch-Karnaugh.

    A figura abaixo mostra a colocao destas expresses nos diagramas, no caso de 2variveis,

    (a) S = A B = A.B + A.B

    (b) S = A B = A.B + A.B

    Pela figura, notamos que as expresses encontram-se na forma de mximasimplificao, no havendo outra possibilidade, pois em cada diagrama temos 2 termosisolados que so as prprias expresses entrada.

    No caso de utilizarmos 3 vriaveis, as expresses so, respectivamente, S= A B C e S = A B C. Para levantarmos suas tabelas verdades, devemos tomaras variveis de 2 em 2, ou seja, efetuar primeiro as operaes entre 2 das variveis e com oresultado obtido efetuar a operao com a terceira varivel. Esse processo se deve ao fatode as portas XOR e NXOR no serem vlidas para mais de 2 variveis de entrada, podendoser aplicado, tomando primeiramente 2 quaisquer das 3 variveis da expresso,

    indiferentemente. As tabelas abaixo mostram os resultados das operaes S= A B C e S = A B C, em todas sa possibilidades.

    45

    A

    A

    B B

    1

    1 0

    0

    A B C D S0 0 0 0 10 0 0 1 X0 0 1 0 10 0 1 1 00 1 0 0 10 1 0 1 10 1 1 0 10 1 1 1 01 0 0 0 11 0 0 1 01 0 1 0 X1 0 1 1 11 1 0 0 X1 1 0 1 11 1 1 0 X1 1 1 1 0

    A

    A

    B B

    1

    10

    0

    (a) (b)

  • Passando a coluna S (iguais em todos os casos) para o diagrama, temos:

    Da mesma forma, temos apenas termos isolados, no havendo possibilidade desimplificao.

    Extraindo a expresso da tabela inicial ou do diagrama, temos:

    S = A.B.C + A.B.C + A.B.C + A.B.C

    Evidenciando A e A, temos:

    S = A.(B.C + B.C) + A.(B.C + B.C)

    Substituindo-se os parnteses respectivamente por: B C e B C, temos:

    S = A.(B C) + A.(B C)

    Como B C = B C, reescrevemos:

    S = A.(B C) + A.(B C)

    Chamado (B C) de X, temos:

    S = A.X + A.X = A X

    46

    A B C (A B) C A (B C) (A C) B0 0 0 0 0 00 0 1 1 1 10 1 0 1 1 10 1 1 0 0 01 0 0 1 1 11 0 1 0 0 01 1 0 0 0 01 1 1 1 1 1

    A B C (A B) C A (B C) (A C) B0 0 0 0 0 00 0 1 1 1 10 1 0 1 1 10 1 1 0 0 01 0 0 1 1 11 0 1 0 0 01 1 0 0 0 01 1 1 1 1 1

    A

    A

    B B

    C CC

    0 1 0 1

    1 0 1 0

  • Substituindo X, temos:

    S = A B C

    Inicialmente, se tivssemos evidenciando outras variveis, teramos outras ordens noresultado, de conformidade com as tabelas levantandas. Ainda, se tivssemos substitudoB C por (B C), obteramos S = A B C, que analogamente, conforme as tabelas equivalente a S = A B C.

    Se estendermos o estudo para mais variveis, obteremos:

    Para 4 variveis: S = A B C D = A B C D

    Para 5 variveis: S = A B C D E = A B C D E

    De posse de resultados, conclumos que para um nmero par de variveis, temos afuno XOR como sendo complemento da NXOR e para um nmero mpar de variveistemos a funo XOR como sendo igual a NXOR.

    3.3.6 Outra Forma de Apresentao do Diagrama de Veitch-Karnaugh

    Ao invs de representarmos o diagrama dividindo-o em regies, como visto at aqui,podemos reprent-lo de uma forma anloga, conforme a figura abaixo:

    (a) 2 variveis.

    (b) 3 variveis.

    (c) 4 variveis.

    Pela figura, podemos notar que os diagramas so semelhantes, possundo apenas aidentificao das regies pelo valor assumido pela varivel (exemplo: A = 0 => regio A,A = 1 => regio A). Tanto a colocao dos casos, bem como os agrupamentos obtidos sefazem de maneira anloga, levando aos mesmos resultados

    47

    BA 0 1

    0

    1

    BCA

    0

    1

    00 01 11 10 ABCD

    00 01 11 1000

    01

    11

    10(a) (b)

    (c)

  • 4 CIRCUITOS ARITMTICOS

    Dentro do conjunto de circuitos combinacionais aplicados para finalidade especficanos sistemas digitais, destacam-se os circuitos aritmticos. So utilizados, principalmente,para construir a ULA (Unidade Lgica Aritmtica) dos microprocessadores e, ainda,encontrados disponveis em circuitos integrados comerciais.

    4.1 Meio Somador

    Antes de iniciarmos o assunto, vamos relembrar alguns tpicos importantes da somade 2 nmeros binrios:

    10 0 1 1

    + 0 + 1 + 0 + 1 0 1 1 10

    Aps essa breve introduo, vamos montar uma tabela verdade da soma de 2nmeros binrios de 1 algarismo:

    Representando cada nmero por 1 bit, podemos ento, montar um circuito que possuicomo entradas A e B, e como sada, a soma dos algarismos (S) e o respectivo carry out(C).As expresses caractersticas do circuito, extradas da tabela so:

    S = A B

    C = A.B

    O circuito e a representao em bloco visto abaixo:

    Este circuito Meio Somador tambm conhecido como Half Adder, sendo a sada detransporte denominada carry out, ambos os termos derivados do ingls.

    48

    A B S C0 0 0 00 1 1 01 0 1 01 1 0 1

    C => Carry Out(0 + 0 = 0 => C = 0)(0 + 1 = 1 => C = 0)(1 + 0 = 1 => C = 0)(1 + 1 = 0 => C = 1)

    transporte

    (circuito) (representao em bloco)

  • 4.2 Somador Completo

    O Meio Somador possibilita efetuar a soma de nmeros binrios com 1 algarismo.Para se fazer a soma de nmeros binrios de mais algarismos, esse circuito torna-seinsuficiente, pois no possibilita a introduo do transporte de entrada proveniente da colunaanterior. Para melhor compreenso, vamos analisar o caso da soma: 10012 + 1012. Assimsendo, temos:

    1 1 11 1 1 0

    + 0 1 1 0 1 0 1 0 0

    A coluna 1 tem como resultado o carry out igual a 0. A coluna 2 tem como resultado 0e um carry out igual a 1. A coluna 3 tem um carry in igual a 1 (carry out da coluna anterior),possui resultado 1 e carry out igual a 1. A coluna 4 tem carry in igual a 1, resultado igual a 0e carry out 1. A coluna 5 possui apenas um carry in (carry out da coluna 4) e, obviamente,seu resultado ser igual a 1.

    Para fazermos a soma de 2 nmeros binrios de mais algarismos, basta somarmoscoluna a coluna, levando em conta o carry in que nada mais que o carry out da colunaanterior.

    O Somador Completo um circuito para efetuar a soma completa de uma coluna,considerando o carry in. Vamos, agora, montar uma tabela verdade deste circuito.

    Vamos, ento, escrever as expresses caractersticas, sem simplificao, de umSomador Completo:

    S = A.B.Ci + A.B.Ci + A.B.Ci + A.B.Ci

    Cout = A.B.Ci + A.B.Ci + A.B.Ci + A.B.Ci

    Transpondo para o diagrama de Veitch-Karnaugh, temos:

    S:

    49

    A B C S Ci0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 11 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 1

    A

    A

    B B

    Ci Ci Ci

    0 1 0 1

    1 0 1 0

    Ci => Carry in(0 + 0 + 0 = 0 e Ci = 0)(0 + 0 + 1 = 1 e Ci = 0)(0 + 1 + 0 = 1 e Ci = 0)(0 + 1 + 1 = 0 e Ci = 1)(1 + 0 + 0 = 1 e Ci = 0)(1 + 0 + 1 = 0 e Ci = 1)(1 + 1 + 0 = 0 e Ci = 1)(1 + 1 + 1 = 1 e Ci = 1)

  • Conforme j estudado, podemos escrever:

    S = A B Ci

    Cout:

    Vamos atravs das expresses, esquematizar o circuito Somador Completo:

    Da mesma forma, o circuito apresentado em bloco visto abaixo:

    O circuito Somador Completo tambm conhecido como Full Adder, sendo aentrada de transporte denominada carry in, ambos os termos derivados do ingls.

    50

    A

    A

    B B

    Ci Ci Ci

    0 0 1 0

    0 1 1 1Cout = B.Ci + A.Ci + A.B

    SomadorCompleto

    A

    Ci

    B

    S

    Cout

    U1

    AND2

    U2

    AND2U3

    AND2

    U4

    EOR2

    U5

    EOR2

    U6

    OR3

    AB

    Cin

    S

    Cout

  • Vamos, para exemplo de aplicao, montar um sistema em blocos que efetua a somade 2 nmeros de 4 bits, conforme o esquema a seguir:

    X3 X2 X1 X0

    + Y 3 Y 2 Y 1 Y 0

    Cout S3 S2 S1 S0

    Para efetuar a soma dos bits X0 e Y0 dos nmeros (1 coluna), vamos utilizar um MeioSomador, pois no existe carry in, mas para as outras colunas utilizaremos SomadoresCompletos, pois necessitaremos considerar os transportes provenientes das colunasanteriores. O sistema montado visto logo abaixo:

    4.3 Meio Subtrator

    Antes de iniciarmos o assunto, vamos relembrar alguns pontos importantes dasubtrao de nmeros binrios:

    0 - 0 = 0

    0 - 1 = 1 e vai um

    1 - 0 = 1

    1 - 1 = 0

    Vamos montar a tabela verdade de uma subtrao de dois nmeros binrios de 1algarismo:

    51

    A B S Cout0 0 0 00 1 1 11 0 1 01 1 0 0

    0 - 0 = 00 - 1 = 1 1 - 0 = 11 - 1 = 0

  • Representado cada nmero por 1 bit, podemos montar um circuito com as entradas Ae B, e como sada, a subtrao (S) e o transporte de sada (Cout).

    As expresses caractersticas do circuito, extradas da tabela, so:

    S = A B

    Cout = A.B

    O circuito a partir destas, visto abaixo:

    Em bloco, o circuito recebe a reprentao abaixo:

    Do ingls, o circuito recebe a denominao Half Subtractor.

    4.4 Subtrator Completo

    O Meio Subtrator possibilita-nos efetuar a subtrao de nmeros binrios de 1algarismo. Para se fazer uma subtrao com nmeros de mais algarismos, este circuitotorna-se insuficiente, pois no possibilita a entrada de transporte (Carry in), proveniente dacoluna anterior.

    Para compreendermos melhor, vamos analisar a subtrao:

    11002 + 112. Assim sendo, temos:

    1 1 0 01 1

    + 1 1 1 0 0 1

    A coluna 1 tem como resultado de sada 1 e apresenta um carry out igual a 1. Acoluna 2 tem um carry in igual a 1 (carry out da coluna anterior), um resultado igual a 0 eCout = 1. A coluna 3 tem: Ci = 1, resultado igual a 0 e Cout = 0. A coluna 4 tem: Ci = 0,resultado igual a 1 e Cout = 0.

    52

    MeioSomador

    A

    B

    S

    Cout

    A

    B

    S

    Cout

    U7

    EOR2U8

    NOT

    U9

    AND2

  • Para fazermos a subtrao de nmeros binrios de mais algarismos, bastasubtrairmos coluna a coluna, levando em conta o carry in, que nada mais que o carry outda coluna anterior.

    O Subtrator Completo um circuito que efetua a subtrao completa de uma coluna,ou seja, considera o carry in provenjiente da coluna anterior. Vamos, agora, montar atabelka verdade deste circuito:

    As expresses caractersticas extradas da tabela so:

    S = A.B.Ci + A.B.Ci + A.B.Ci + A.B.Ci

    Cout = A.B.Ci + A.B.Ci + A.B.Ci + A.B.Ci

    Vamos simplificar estas expresses:

    S: Cout:

    O circuito derivado das expresses visto abaixo:

    A B C S Cout0 0 0 0 00 0 1 1 10 1 0 1 10 1 1 0 11 0 0 1 01 0 1 0 01 1 0 0 01 1 1 1 1

    A

    A

    B B

    Ci Ci Ci

    0 1 0 1

    1 0 1 0

    A

    A

    B B

    Ci Ci Ci

    0 0 1 0

    0 1 1 1

    (a) S = A B Ci (b) S = A.B + A.Ci + B.Ci

    U1

    AND2U2

    AND2U3

    AND2

    U4

    OR3

    U5

    EOR2

    U6

    EOR2

    U7NOT

    AB

    Cin

    Cout

    S

    53

  • Em bloco, recebe a representao da figura abaixo:

    A denominao derivada do ingls Full Subtractor.

    Da mesma forma, podemos esquematizar um sistema subtrator para 2 nmeros de mbits (m = n + 1). A figura abaixo mostra um sistema subtrator genrico para 2 nmeros de mbits.

    Neste sistema, o carry out do ltimo bloco torna-se desnecessria se o nmeroAn...A0 (minuendo) for maior ou igual a Bn...B0 (subtraendo), porm podera ser utilizada nocaso contrrio para sinalizar que o resultado negativo, estando, ento, na notao docomplemento 2.

    4.5 Somador/Subtrator Completo

    Podemos esquematizar um circuito que efetue as duas operaes. Para isso, vamosintroduzir uma outra entrada que permanecendo em nvel 0, faz o circuito efetuar uma somacompleta, e permanecendo em nvel 1, faz efetuar uma subtrao completa.

    Vamos, agora, montar a tabela verdade do circuito, sendo M a varivel de controle (M= 0 => soma e M = 1 => subtrao):

    54

    SubtratorCompleto

    A

    B

    S

    Cout

    M A B Ci S Cout0 0 0 0 0 00 0 0 1 1 00 0 1 0 1 00 0 1 1 0 10 1 0 0 1 00 1 0 1 0 10 1 1 0 0 10 1 1 1 1 1

    M A B Ci S Cout1 0 0 0 0 01 0 0 1 1 11 0 1 0 1 11 0 1 1 0 11 1 0 0 1 01 1 0 1 0 01 1 1 0 0 01 1 1 1 1 1

    Soma Completa (M = 0) Subtrao Completa (M = 1)

    An Bn An-1 Bn-1 A1 B1 A0 B0

    SUBTRATOR COMPLETO

    SUBTRATOR COMPLETO

    SUBTRATOR COMPLETO

    SUBTRATOR COMPLETO

    A B Cin A B Cin A B Cin A B

    Cout S Cout S Cout S Cout S

    Sn Sn-1 S1 S2

  • Vamos simplificar as sadas S e Cout, atravs dos diagramas de Veitch-Karnaugh:

    No diagrama, obtemos;

    S = A.B.Ci + A.B.Ci + A.B.Ci + A.B.Ci

    Fatorando a expresso, temos:

    S = A.(B.Ci + B.Ci) + A.(B.Ci + B.Ci)

    S = A.(B Ci) + A.(B Ci)

    S = A.(B CI) + A.(B Ci)

    S = A B Ci

    Cout:

    Do diagrama, obtemos: Cout = B.Ci + M.A.B + M.A.Ci + M.A.B + M.A.Ci

    Fatorando a expresso, temos:

    Cout = B.Ci + B(M.A + M.A) + Ci.(M.A + M.A)

    Cout = B.Ci + B.(M A) + Ci.(M A)

    Cout = B.Ci + (M A).(B + Ci)

    55

    A

    AB

    B

    B

    C C

    D D D

    0 1 0 1

    1 0 1 0

    1 0 1 0

    0 1 0 1

    A

    AB

    B

    B

    C C

    D D D

    0 0 1 0

    0 1 1 1

    0 0 1 0

    0 1 1 1

  • Vamos ento esquematizar o circuito:

    A figura abaixo mostra a reprentao deste circuito Somador/Subtrator Completo embloco:

    Exerccios:

    1. Projete e mostre a simulao de um circuito somador onde A = 5 e B = 3.

    2. Projete um circuito Somador/Subtrator para realizar A B onde A = +2 e B = -5. Mostre a simulao.

    56

    Somador/SubtratorCompleto

    A

    Ci

    B

    S

    CoutM

    U1

    EOR2

    U2

    EOR2

    U3

    EOR2

    U4

    AND2

    U5

    AND2

    U6

    OR2

    U7

    OR2

    A

    B

    Cin

    Cout

    S

    M

  • 5 CIRCUITOS COMBINACIONAIS (PROJETO)

    O circuito combinacional aquele em que a sada depende nica e exclusivamentedas combinaes entre as variveis de entrada.

    Podemos utilizar um circuito lgico combinacional para solucionar problemas em quenecessitamos de uma resposta, quando acontecerem determinadas situaes,representadas pelas variveis de entrada.

    A figura abaixo ilustra a seqncia do processo, onde, a partir da situao, obtemos aatbela verdade verdade e a partir desta, atravs das tecnicas j conhecidas, a expressosimplificada e o circuito final.

    5.1 Projetos de Circuitos Combinacionais

    Nos itens subseqentes, mostraremos como obter um circuito para resolver umproblema utilizando a Eletrnica Digital a partir de uma situao prtica. A figura abaixomostra o esquema geral de um ciruito combinacional composto pelas variveis de entrada, ocircuito propriamente dito e sua(s) sada(s).

    Notamos que o circuito lgico pode assumir diversas variveis de entrada e uma oumais sadas conforme o caso do projeto. A seguir, estudaremos, a ttulo de exemplo, casosde 2, 3 e 4 variveis.

    5.1.1 Circuitos com 2 Variveis

    57

    SITUAO TABELAVERDADE

    EXPRESSOSIMPLIFI-

    CADACIRCUITO

    CIRCUITOLGICO

    ABC

    Z

    S0

    S1

    S2

    SN

    .

    .

    .

    .

    .

    .

    RUA APREFERENCIAL

    SEMFORO 1

    SEMFORO 1

    SEMFORO 2

    SEMFORO 2

  • A figura acima representa o cruzamento das A e B. Neste cruzamento, queremosinstalar um sistema automtico para os semforos, com as seguintes caractersticas:

    1 Quando houver carros transitando somente na Rua B, o semforo 2 deverpermanecer verde para que estes automveis possam trafegar livremente.

    2 Quando houver carros transitando somente ba rua A, o semforo 1 deverpermanecer verde pelo mesmo motivo.

    3 Quando houver carros transitando nas duas ruas, deveremos abrir o semforopara a Rua A, pois a preferencial.

    Para solucionarmos este problema, podemos utilizar um circuito lgico. Paramontarmos este circuito lgico, necessitamos de sua expresso. Vamos, agora, analisandoa situao, obter sua tabela verdade.

    Primeiramente, vamos estabelecer regras:

    a. Existncia de carro na rua A: A = 1.

    b. No existncia de carro na rua A: A = 0 ou A = 1.

    c. Existncia de carro na rua B: B = 1.

    d. No existncia de carro na rua B: B = 0 ou B = 1.

    e. Verde do sinal 1 aceso: V1 = 1.

    f. Verde do sinal 2 aceso: V2 = 1.

    g. Quando V1 = 1 => vermelho do semforo 1 apagado: Vm1 = 0.

    verde do semforo 2 apagado V2 = 0. e vermelho do semforo 2 aceso: Vm2 = 1.

    h. Quando V2 = 1 => V1 = 0, Vm2 = 0 e Vm1 = 1.

    Vamos montar a tabela verdade:

    A situao 0 (A = 0 e B = 0) representa a ausncia de veculos em ambas as ruas. Seno temos carros, tanto faz qual sinal est aberto. Vamos adotar, por exemplo, que o verdedo sinal 2 permanea aceso. Neste caso, preenchemos a tabela verdade da seguintemaneira:

    58

    Situao A B0 0 01 0 12 1 03 1 1

    V1

    Vm1

    V2

    Vm2

    Situao A B0 0 0 0 1 1 0

    V1

    Vm1

    V2

    Vm2

    (V2 = 1 => V

    1 = 0, V

    m1 = 1 e V

    m2 = 0)

  • A situao 1 (A = 0 e B = 1) representa de veculo na Rua B e ausncia de veculo naRua A, logo, devemos acender o sinal verde para a Rua B (V2 = 1). Temos ento:

    A situao 2 (A = 1 e B = 0) representa de veculo na Rua A e ausncia de veculo naRua B, logo, devemos acender o sinal verde para a Rua B (V1 = 1). Temos ento:

    A situao 3 (A = 1 e B = 1) representa a presena de veculos em ambas as ruas,logo, devemos acender o sinal verde para a Rua A, pois esta a preferencial. Temos ento:

    A tabela totalmente preenchida vista a seguir:

    Vamos transpor a tabela para diagramas de Veitch-Karnaugh e agrupar paraobtermos as expresses simplificadas das sadas V1 , V2, Vm1 e Vm2 :

    59

    Situao A B1 0 1 0 1 1 0

    V1

    Vm1

    V2

    Vm2

    (V2 = 1 => V

    1 = 0, V

    m1 = 1 e V

    m2 = 0)

    Situao A B2 1 0 1 0 0 1

    V1

    Vm1

    V2

    Vm2

    (V1 = 1 => V

    2 = 0, V

    m2 = 1 e V

    m1 = 0)

    Situao A B3 1 1 1 0 0 1

    V1

    Vm1

    V2

    Vm2

    (V1 = 1 => V

    m1 = 0, V

    2 = 0 e V

    m2 = 1 )

    Situao A B0 0 0 0 1 1 01 0 1 0 1 1 02 1 0 1 0 0 13 1 1 1 0 0 1

    V1

    Vm1

    V2

    Vm2

    A

    A

    B B

    0 0

    1 1

    A

    A

    B B0 0

    1 1

    A

    A

    B B

    0 0

    1 1

    (a)V1

    (b)Vm1

    A

    A

    B B0 0

    1 1

    (c)V2 (d)Vm2

  • Pela tabela ou pelos diagramas, notamos que as expresses simplificadas so:

    V1 = Vm2 = A e V2 e Vm1 = A.

    O circuito, a partir destas expresses, visto abaixo:

    Analisando as expresses obtidas, conclumos que a presena de carros na viapreferencial (A = 1) acarreta o acendimento do verde do semforo 1 e o vermelho do 2 (V1 =Vm2 = 1) e, ainda, devido a ao do inversor do circuito, o apagamento do verde dosemforo 2 e vermelho do sinal 1 (V2 = Vm1 = 0). Da mesma forma, a ausncia de carrosnesta via (A = 0), causa a condio contrria (V1 = Vm2 =0 e V2 = Vm1 = 1), que possibilitaa abertura da via secundria, sendo a varivel B (indicadora dos veculos na Rua B)eliminada das expresses pelo processo de simplificao, pois torna-se desnecessria emfuno das situaes consideradas no projeto.

    5.1.2 Circuitos com 3 Variveis

    Deseja-se ulilizar um amplificador para ligar trs aparelhos: uma vitrola, um mp3player e um rdio AM. Vamos elaborar um circuito lgico que nos permitir ligar osaparelhos, obedecendo as seguintes prioridades:

    1 prioridade: mp3 player2 prioridade: vitrola3 prioridade: rdio AM

    Isto significa que quando no ligarmos nem o mp3 player, nem a vitrola, o rdio AM,se ligado, ser conectado ao amplificador. Se ligarmos a vitrola, automaticamente o circuitoconect-lo- entrada do amplificador, pois possui prioridade sobre o rdio AM. Se, ento,ligarmos o mp3 player, este ser conectado ao amplificador, pois representa a 1 prioridade.A partir disto, podemos montar o diagrama de blocos com as respectivas ligaes:

    60

    V1

    Vm2

    V2

    Vm1

    A

    Mp3 PlayerA

    VitrolaB

    Rdio AMC

    Amplificador

    SA

    CH 1 SB SC CH 3CH 2

  • Neste projeto, o circuito lgico receber as informaes das variveis de entrada A, Be C, representando os aparelhos, e atravs das sadas SA, SB e SC comutar as chavesCH1, CH2 e CH3 para fazer a conexo conforme a situao requerida.

    Convenes utilizadas

    => Variveis de entrada (A, B e C): aparelho desligado = 0 e ligado = 1.

    => Sadas (SA, SB e SC): S = 0 => chave aberta e S = 1 => chave fechada.

    Para preenchermos a tabela, vamos analisar todas as oito situaes possveis:

    Caso 0 Os 3 esto desligados, logo, condio => irrelevante, pois no importa qual chave deve ser ligada.

    Caso 1 Est ligado apenas o AM, logo somente => SC assume valor 1.

    Caso 2 Est ligado apenas a vitrola, logo somen => te SB assume valor 1.

    Caso 3 Esto ligados o AM e a vitrola. A vitrola => tem prioridade sobre o AM, logo somen te SB assume valor 1.

    Caso 4 Est ligado apenas o mp3 player, logo => somente o SA assume valor 1.

    caso 5 Esto ligados o mp3 player e o AM. O => mp3 player a 1 prioridade, logo somen te SA assume valor 1.

    caso 6 anlogo ao caso 5. =>

    caso 7 anlogo ao caso 5 ou 6 =>

    Feita a anlise de cada situao, podemos preencher a tabela verdade:

    61

    Situao A B C0 0 0 01 0 0 12 0 1 03 0 1 14 1 0 05 1 0 16 1 1 07 1 1 1

    SA SB SC

    X X XS

    AS

    BS

    C

    0 0 1

    0 1 0

    0 1 0

    1 0 0

    1 0 0

    1 0 0

    1 0 0

  • Transpondo para os diagramas, temos:

    O circuito, obtido a partir das expresses, visto abaixo:

    62

    Situao A B C0 0 0 0 X X X1 0 0 1 0 0 12 0 1 0 0 1 03 0 1 1 0 1 04 1 0 0 1 0 05 1 0 1 1 0 06 1 1 0 1 0 07 1 1 1 1 0 0

    SA

    SB

    SC

    A

    A

    B B

    C CC(a)

    X 0 0 0

    1 1 1 1

    A

    A

    B B

    C CC

    X 0 1 1

    0 0 0 0

    (b)

    A

    A

    B B

    C CC

    X 1 0 0

    0 0 0 0

    (c)

    => SA = A

    => SB = A.B

    => SC = A.B

    U1

    AND2

    U2

    AND2

    U3NOT

    U4NOT

    A B

    SA

    SB

    SC

  • Analisando as expresses obtidas, conclumos que o mp3 player ser conectado aoamplificador (SA = 1 => CH1 fechada), quando for ligado (A = 1), independentemente dosoutros aparelhos, pois SA = A; que a vitrola ser conectado (SB = 1 => CH2 fechada) quandoligado (B = 1) e quando o mp3 player no o for (A = 0), pois sua expresso SB = A.B e queo rdio AM apenas ser conectado (SC = 1 => CH3 fechada), quando os outros dois no oestiverem (A = 0 e B = 0), pois SC = A.B. Um outro ponto importante a ser observado quepelo fato de termos considerado a condio irrelevante do terceiro diagrama como 1 paramaior simplificao, a varivel C foi eliminada da expresso, bastando apenas os outrosestarem desligados para que a conexo do rdio AM seja feita, sendo evidente que seufuncionamento prtico, em termos de adio, fique vinculado a sua ligao.

    5.1.3 Circuitos com 4 Variveis

    Vamos supor agora, que uma empresa queira implantar um sistema de prioridade nosseus intercomunicadores, da seguinte maneira:

    Presidente: 1 prioridade

    Vice-Presidente: 2 prioridade

    Engenharia: 3 prioridade

    Chefe de seo: 4 prioridade

    Esquematicamente, temos:

    Primeiramente, vamos estabelecer as variveis de entrada e sada do circuito lgica eas convenes do projeto:

    Variveis de entrada:

    => intercomunicador do presidente: A

    => intercomunicador do vice-presidente: B

    => intercomunicador da engenharia: C

    => intercomunicador do chefe de seo: D

    Convees utilizadas:

    => presena de chamada: 1 63

    PRES. V. PRES. ENG.CHEFE

    DESEO

    A DB CS

    ACH 1 S

    BS

    CCH 3CH 2 SD CH 4

    INTER.CENTRAL

  • => ausncia de chamada: 0

    Sadas: SA, SB, SC e SD

    Convees utilizadas:

    => efetivao de chamada: 1

    => no efetivao de chamada: 0

    Estabelecidas as convenes, montamos a tabela verdade:

    Logo aps, obtemos as expresses de sada simplificadas atravs dos diagramas deVeitch-Karnaugh:

    64

    A B C D SA SB SC SD0 0 0 0 0 0 0 00 0 0 1 0 0 0 10 0 1 0 0 0 1 00 0 1 1 0 0 1 00 1 0 0 0 1 0 00 1 0 1 0 1 0 00 1 1 0 0 1 0 00 1 1 1 0 1 0 01 0 0 0 1 0 0 01 0 0 1 1 0 0 01 0 1 0 1 0 0 01 0 1 1 1 0 0 01 1 0 0 1 0 0 01 1 0 1 1 0 0 01 1 1 0 1 0 0 01 1 1 1 1 0 0 0

    no efetua chamada

    efetua chamada do chefe da seo

    Efetua chamada da engenharia

    Efetua chamada da engenharia, pois prioritria;

    Efetua chamada do vice-presidente

    Efetua chamada da engenharia, pois prioritrio

    Efetua chamada do presidente

    Efetua chamada do presidente, pois a 1 prioridade.

    A

    A

    D DD

    B

    B

    B

    C C

    (a) SA = A

    0 0 0 0

    0 0 0 0

    1 1 1 1

    1 1 1 1

    A

    A

    D DD

    B

    B

    B

    C C

    1 1 1 1

    0 0 0 0

    0 0 0 0

    0 0 0 0

    (b) SB = A.B

    A

    A

    D DD

    B

    B

    B

    C C

    0 0 0 0

    0 0 0 0

    0 0 0 0

    0 0 1 1

    (c) SC = A.B.C

    A

    A

    D DD

    B

    B

    B

    C C

    0 0 0 0

    0 0 0 0

    0 0 0 0

    0 1 0 0

    (d) Sd = A.B.C.D

  • Por ltimo, obtemos o circuito, que visto na figura a seguir:

    Da mesma forma que no exemplo com 3 variveis, a sada ser acionada (1) quandohouver inteno de que tal situao ocorra (varivel respectiva = 1) e no haja acionamentodos anteriores por ordem de prioridade (variveis barradas = 0). Analogamente, podemosaplicar o mesmo processo para os outros tipos de sistuaes prticas que envolvam casosde prioridades, bem como, de mais variveis.

    Exerccios:

    1. Projete um circuito de votao eletrnica para ser usado por trs diretores de umacompanhia. Assumir que um voto SIM represente um nvel lgico 1 e um voto NO sejadado por um nvel lgico 0. No a voto preferencial, o sistema o da maioria.

    a. Encontre as expresses nas formas padres de mintermos e maxtermos.b. Desenhe o circuitos lgicos referentes as formas padres.

    2. Um hotel tem 4 quartos (w,x,y,z) e 2 office-boys