of 60 /60
Sistemas Digitais Módulo 5 Teoremas Lógicos, Simplificação Algébrica e Projeto de Circuitos Lógicos Graduação em Sistemas de Informação Prof. Dr. Daniel A. Furtado Universidade Federal de Uberlândia Faculdade de Computação

Sistemas Digitais Módulo 5 - daniel.prof.ufu.br · Conteúdo Avaliação das Saídas dos Circuitos Lógicos Análise de Circuitos por Tabela Verdade Teoremas Lógicos •Teoremas

Embed Size (px)

Text of Sistemas Digitais Módulo 5 - daniel.prof.ufu.br · Conteúdo Avaliação das Saídas dos Circuitos...

  • Sistemas Digitais Mdulo 5

    Teoremas Lgicos, Simplificao Algbrica e Projeto de Circuitos Lgicos

    Graduao em Sistemas de Informao

    Prof. Dr. Daniel A. Furtado

    Universidade Federal de Uberlndia Faculdade de Computao

  • Contedo

    Avaliao das Sadas dos Circuitos Lgicos

    Anlise de Circuitos por Tabela Verdade

    Teoremas Lgicos

    Teoremas Bsicos

    Teoremas de DeMorgan

    Simplificao Algbrica de Expresses Lgicas

    Simplificao de Circuitos Lgicos

    Projeto de Circuitos Lgicos Combinacionais

    Prof. Daniel A. Furtado

  • Avaliando as Sadas dos Circuitos Lgicos

    Exemplo 1: determinar o nvel lgico da sada do circuito acima para o caso

    em que = 0, = 1, = 1 e = 1:

    = + = 0 1 1 0 + 1 = 1 1 1 0 + 1 = 1 1 1 (1 ) = 1 1 1 0 = 0

    Prof. Daniel A. Furtado

  • Avaliando as Sadas dos Circuitos Lgicos

    Exemplo 2: determinar o nvel lgico da sada do circuito acima para o caso

    em que = 0, = 0, = 1, = 1 e = 1:

    = + +

    = 1 + 0 + 0 1 1

    = 1 + 0 1 1 = 1 + 0 1 = 1 + 1 1 = 1

    = + +

    Prof. Daniel A. Furtado

  • Anlise do Circuito por Tabela Verdade

    Uma anlise detalhada do circuito lgico pode ser necessria em algumas situaes;

    Por exemplo, dado um circuito lgico, pode-se desejar saber quais so as combinaes de valores das entradas que levam ao valor lgico 1 na sada;

    Tambm pode ser necessrio conhecer os possveis valores lgicos em um n intermedirio do circuito (para fins de anlise de defeitos, por exemplo);

    Uma forma de realizar tais avaliaes construindo uma tabela verdade que apresente todos os possveis valores lgicos nos ns intermedirios e no n final do circuito.

    Prof. Daniel A. Furtado

  • (a) (b) (c)

    (d)

    Circuito exemplo

    Tabela verdade completa do circuito

  • Simplificao Algbrica

  • Simplificao Algbrica Introduo

    Expresses lgicas e circuitos lgicos frequentemente pode ser simplificados;

    Circuitos lgicos mais simples podem ser analisados com maior facilidade e geralmente so implementados com um custo menor;

    Em softwares, expresses lgicas mais simples tambm trazem benefcios bvios.

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Introduo

    Por exemplo, os circuitos (a) e (b) a seguir so equivalentes. Entretanto, o circuito (b) muito mais simples e obviamente deveria ser escolhido no caso de uma eventual implementao.

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Introduo

    A simplificao algbrica uma forma de realizar simplificaes em expresses lgicas utilizando uma coleo de teoremas lgicos da lgebra booleana;

    Alguns desses teoremas so apresentados a seguir.

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Teoremas Booleanos

    1. 0 = 0

    2. 1 =

    3. =

    4. = 0

    0

    0

    1

    0

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Teoremas Booleanos

    5. + 0 =

    6. + 1 = 1

    7. + =

    8. + = 1

    0

    1

    1

    1

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Teoremas Booleanos

    9. + = + (a operao OR comutativa)

    10. = (a operao AND comutativa)

    11. + + = + + = + + (OR associativa)

    12. = = (AND associativa)

    13. (a) + = +

    13. (b) + + = + + +

    14. + =

    15. (a) x + x y = x + y

    15. (b) x + xy = x + y

    Propriedade distributiva: podemos colocar termos comuns em evidncia (fatorar)

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Teoremas Booleanos

    Os teoremas booleanos so fundamentais na simplificao algbrica de expresses lgicas;

    As variveis , e nos teoremas booleanos podem representar expresses com mais de uma varivel:

    Por exemplo, utilizando o teorema 4, pode-se deduzir que = 0. Neste caso, basta considerar = .

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Duplas Inverses

    Duas inverses em sequncia se anulam, ou seja:

    A + B + C = A + B + C

    A B = AB

    A = A

    Entretanto:

    A B AB

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplos

    Exemplo 1: utilize os teoremas booleanos para simplificar a expresso = AB D + AB D

    = AB D + AB D

    = AB D + D (coloca-se em evidncia , teorema 13)

    = AB 1 (teorema 8)

    = AB (teorema 2)

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplos

    Exemplo 2: utilize os teoremas booleanos para simplificar a expresso = + +

    = A + B A + B

    = A A + A B + BA + BB (distribuio, teorema 13b)

    = 0 + A B + BA + B (teoremas 3 e 4)

    = A B + BA + B (0 + = , teorema 5)

    = B(A + A + 1) (pode-se colocar B em evidncia, teor. 13)

    = B(1) ( + 1 = 1, teorema 6)

    = B ( 1 = )

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplos

    Exemplo 3: utilize os teoremas booleanos para simplificar a expresso = ACD + A BCD

    = ACD + A BCD

    = CD(A + A B) (coloca-se CD em evidncia, teor. 13)

    = CD(A + B) (A + A B = A + B; teorema 15a)

    = ACD + BCD (distribuio, teor. 13)

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exerccios

    Exerccio. Utilize os teoremas lgicos para simplificar:

    AC + ABC

    A B CD + A B C D

    A D + ABD

    A BC + ABC + BC D

    ABC + AB (A + C)

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Teoremas de DeMorgan

    Dois outros teoremas lgicos possuem especial importncia no processo de simplificao algbrica de expresses lgicas;

    Eles foram propostos pelo matemtico britnico Augustus De Morgan:

    1. x + y = x y

    2. x y = x + y

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplos

    Exemplo 4: simplifique a expresso x = AB + C

    AB + C = AB C (DeMorgan, x + y = x y )

    = A + B C (DeMorgan, xy = x + y )

    = A + B C

    = A C + BC

    Prof. Daniel A. Furtado

  • Formas Cannicas de uma Expresso Lgica

    Uma expresso lgica est na forma soma-de-produtos quando constituda por dois ou mais termos AND conectados por operaes OR, onde:

    Cada termo AND consiste em um grupo de variveis conectadas pela operao AND e denominado mintermo;

    As variveis em um termo AND podem aparecer individualmente na forma complementada ou no;

    Exemplos: AB + CD + AD (expresso com 3 mintermos)

    AB + B C D + D + A BD (expresso com 4 mintermos)

    Ateno: na soma-de-produtos no permitida a inverso de um grupo de variveis, isto , uma barra no pode cobrir mais que uma varivel ao mesmo tempo, como em ABC ou BCD.

    Prof. Daniel A. Furtado

  • Formas Cannicas de uma Expresso Lgica

    Uma expresso lgica est na forma produto-das-somas quando

    constituda por dois ou mais termos OR conectados por operaes AND, onde: Cada termo OR consiste em um grupo de variveis conectadas pela

    operao OR e comumente denominado maxtermo;

    As variveis em um termo OR podem aparecer individualmente na forma complementada ou no;

    Exemplos: (A + B + C )(A + D )

    (A + B )(A + D)(B + A + C)(D)

    Ateno: no produto-das-somas no permitida a inverso de um grupo de variveis, como em (A + B + C)(C + D ).

    Prof. Daniel A. Furtado

  • Simplificao Algbrica

    Pode-se utilizar a forma soma-de-produtos e os teoremas lgicos para simplificar expresses lgicas;

    Passos:

    1. Coloca-se a expresso na forma soma-de-produtos (se

    possvel, aplica-se DeMorgan, multiplicaes, etc.);

    2. Procura-se por fatores comuns entre os termos a fim de

    coloc-los em evidncia:

    o objetivo tentar eliminar um ou mais termos;

    d preferncia para os fatores maiores;

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplo 5

    Simplifique a expresso y = ABC + AB A C

    ABC + AB A C = ABC + AB (A + C ) (DeMorgan) = ABC + AB (A + C)

    = ABC + AAB + AB C = ABC + +

    = ABC + AB (x + xy = x)

    = A BC + B

    = A(B + C) (x + xy = x + y)

    = AB +AC

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplo 6

    Simplifique a expresso (A + C) (B + D )

    (A + C) (B + D ) = (A + C) + (B + D )

    = A C + B D

    = AC + B D

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplo 7

    Simplificar a expresso x = (A + B)(A + B + D)D

    = A AD + A BD + A DD + BAD + BBD + BDD (Distribui)

    = 0 + A BD + 0 + BAD + BD + 0 (x x = 0)

    = A BD + ABD + BD (Reescreve)

    = BD (A + A + 1) (Fatora)

    = BD (1) (1 + x = 1)

    = BD (x 1 = x)

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplo 8

    Simplificar a expresso z = A C A BD + A BC D + AB C

    Passo 1: colocar na forma soma-de-produtos:

    z = A C A BD + A BC D + AB C

    = A C + + + A BC D + AB C [DeMorgan]

    = A CA + A CB + A CD + A BC D + AB C [Multiplica]

    Passo 2: fatorar/simplificar (1 forma)

    = + A CB + A CD + A BC D + AB C

    = 0 + A CB + A CD + A BC D + AB C [A A = 0]

    = A B C + A CD + A BC D + AB C [Reorganiza]

    = B C A + A + A D (C + BC ) [Fatora]

    = B C + A D (C + C B) [A + A = 1]

    = B C + A D (C + B) [C + C B = C + B, teor. 15]

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exemplo 8

    Passo 2: fatorar/simplificar (2 forma)

    = + A CB + A CD + A BC D + AB C

    = 0 + A B + A D + A BC D + AB [A A = 0]

    = C A + A D + A + A BC D [Fatora]

    = C B A + A + A D + A BC D [Fatora]

    = C B 1 + A D + A BC D [A + A = 1]

    = B C + A CD + A BC D [Distribui]

    = B C + A D (C + BC ) [Fatora]

    = + ( + ) [C + C B = C + B, teor. 15]

    Prof. Daniel A. Furtado

  • Simplificao Algbrica

    Pode-se observar na simplificao algbrica que:

    possvel ter diversos caminhos no processo de simplificao;

    Nem sempre bvio escolher as melhores variveis para fatorar;

    Nem sempre fcil saber se a expresso resultante ainda pode ser simplificada;

    Muitas vezes temos um processo de tentativa e erro;

    Nem sempre o resultado obtido corresponde forma mais simples da expresso. Por exemplo, a forma mais simples da ltima expresso simplificada = +

    Prof. Daniel A. Furtado

  • Simplificao Algbrica Exerccio

    Utilize a lgebra booleana para simplificar as expresses:

    a. q = RST(R + S + T) b. r = (ABA)(ABB)

    Prof. Daniel A. Furtado

  • Simplificao Algbrica e Circuitos Lgicos

    possvel utilizar a simplificao algbrica para simplificar circuitos lgicos;

    Basta obter a expresso lgica equivalente ao circuito a ser simplificado, simplificar a expresso e ento gerar um novo circuito a partir da expresso simplificada;

    Prof. Daniel A. Furtado

  • Simplificao de Circuitos

    Exemplo. Utilizar o processo de simplificao algbrica para simplificar o circuito lgico:

    Prof. Daniel A. Furtado

  • Simplificao de Circuitos

    Soluo

    Passo 1: Obter a expresso lgica equivalente sada do circuito;

    z = ABC + AB (A C )

    Prof. Daniel A. Furtado

  • Simplificao de Circuitos

    Soluo

    Passo 2: Simplificar a expresso lgica

    ABC + AB A C

    = ABC + AB (A + C) (DeMorgan) = ABC + AAB + AB C = ABC + +

    = ABC + AB (x + xy = x)

    = A BC + B

    = A(B + C) (x + xy = x + y)

    Prof. Daniel A. Furtado

  • Simplificao de Circuitos

    Soluo

    Passo 3: Montar o circuito correspondente expresso simplificada.

    A(B + C)

    Prof. Daniel A. Furtado

  • Simplificao de Circuitos Exerccio

    Simplificar o circuito a seguir utilizando a lgebra booleana:

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais

  • Projeto de Circuitos Combinacionais

    Quando se conhece o valor de sada de um circuito lgico para cada combinao de entradas, pode-se montar uma tabela verdade e projetar o circuito lgico a partir dessa tabela;

    Exemplo 1

    Entradas Sada

    A B

    0 0 0

    0 1 1

    1 0 0

    1 1 0

    Tabela Verdade do Circuito

    A

    B = A B

    Circuito correspondente

    A B

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais

    Exemplo 2. Trs entradas com uma nica sada em alta

    Entradas Sada

    A B C

    0 0 0 0

    0 0 1 0

    0 1 0 0

    0 1 1 0

    1 0 0 1

    1 0 1 0

    1 1 0 0

    1 1 1 0

    Tabela Verdade do Circuito

    A

    B x = AB C

    C

    Circuito correspondente

    AB C

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais

    Exemplo 3. Duas entradas e duas combinaes de entrada que resultam em sada alta;

    Tabela Verdade do Circuito

    Entradas Sada

    A B

    0 0 0

    0 1 1

    1 0 1

    1 1 0

    A B

    AB = A B + AB

    A

    B

    = A B + AB

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais

    Exemplo 4

    Entradas Sada

    A B C

    0 0 0 0

    0 0 1 1

    0 1 0 0

    0 1 1 0

    1 0 0 1

    1 0 1 1

    1 1 0 0

    1 1 1 0

    Tabela Verdade do Circuito

    A B C

    AB C

    AB C

    x = A B C + AB C + AB C

    = B C A + A + AB C = B C + AB C = B C + AC = B (C + A)

    B

    C

    A

    x = B (C + A)

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Procedimento Completo

    1. Interprete o problema e construa uma tabela-verdade para descrever seu funcionamento;

    2. Escreva o termo AND (produto) para cada caso em que a sada seja 1;

    3. Escreva a expresso soma-de-produtos para a sada;

    4. Simplifique a expresso de sada, se possvel;

    5. Implemente o circuito para a expresso final, simplificada.

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais Exemplo 5

    Em um determinado modelo de automvel, uma luz de advertncia

    deve acender no painel de instrumentos do veculo quando uma das

    seguintes situaes ocorrer:

    O motorista acende os faris com a ignio desligada;

    O motorista abre a porta com a ignio ligada;

    Projete um circuito lgico para simular esses eventos. A sada do

    circuito dever indicar o estado da luz de emergncia (ligada/desligada).

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais Exemplo 5

    Soluo:

    Passo 1a. Utilizar trs variveis lgicas para representar,

    respectivamente, o estado dos faris, da ignio e da porta:

    Varivel : estado dos faris (0 = desligado; 1 = ligado);

    Varivel : estado da ignio (0 = desligada; 1 = ligada);

    Varivel : estado da porta (0 = fechada; 1 = aberta);

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais Exemplo 5

    Soluo:

    Passo 1b. Construo da tabela verdade contendo todas as

    combinaes possveis de entrada e as respectivas sadas:

    Entradas Sada

    0 0 0

    0 0 1

    0 1 0

    0 1 1

    1 0 0

    1 0 1

    1 1 0

    1 1 1

    O motorista acende os faris

    com a ignio desligada;

    O motorista abre a porta

    com a ignio ligada;

    Condies para acender a luz

    1

    1

    1

    1

    0

    0

    0

    0

    0

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais Exemplo 5

    Soluo:

    Passo 2. Obter os mintermos para cada sada igual a 1

    Entradas Sada

    0 0 0

    0 0 1

    0 1 0

    0 1 1

    1 0 0

    1 0 1

    1 1 0

    1 1 1

    1

    1

    1

    1

    0

    0

    0

    0

    0

    F I P

    F I P

    F I P

    F I P

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais Exemplo 5

    Soluo:

    Passo 3. Escrever a expresso da sada na forma soma-de-produtos

    Entradas Sada

    0 0 0

    0 0 1

    0 1 0

    0 1 1

    1 0 0

    1 0 1

    1 1 0

    1 1 1

    1

    1

    1

    1

    0

    0

    0

    0

    0

    x = F IP + FI P + FI P + FIP F I P

    F I P

    F I P

    F I P

    Prof. Daniel A. Furtado

  • Projeto de Circuitos Combinacionais Exemplo 5

    Soluo:

    Passo 4. Simplificar a expresso da sada

    Passo 5. Projetar o circuito para a expresso simplificada

    x = F IP + FI P + FI P + FIP

    = IP F + F + FI P + P = IP 1 + FI 1 = +

    I

    P

    F

    = IP + I F

    Prof. Daniel A. Furtado

  • Suficincia da Portas NAND e NOR

  • Teoremas de DeMorgan e Portas Lgicas

    Os teoremas de DeMorgan podem ser usados para estabelecer equivalncias de portas lgicas;

    Uma porta NOR equivalente a uma porta AND com duas inverses nas entradas:

    Prof. Daniel A. Furtado

    Teorema 1: x + y = x y

  • Teoremas de DeMorgan e Portas Lgicas

    Da mesma forma, uma porta NAND equivalente a uma porta OR com duas inverses nas entradas:

    Prof. Daniel A. Furtado

    Teorema 2: x y = x + y

  • Suficincia da Porta NAND

    Qualquer circuito lgico pode ser representado utilizando apenas portas NAND.

    Prof. Daniel A. Furtado

  • Suficincia da Porta NOR

    Qualquer circuito lgico pode ser representado utilizando apenas portas NOR.

    Prof. Daniel A. Furtado

  • Suficincia das Portas NAND e NOR

    Suponha que a expresso lgica = + tenha que ser implementada como um circuito para controle de uma esteira de transporte;

    Suponha ainda que os seguintes circuitos integrados (CIs) estejam disponveis:

    Qual seria a melhor forma de criar o circuito?

    74LS00 74LS32 74LS08

    Prof. Daniel A. Furtado

  • Suficincia das Portas NAND e NOR Opo 1: Implementar o circuito a seguir utilizando um CI

    74LS08 (portas AND) e um CI 74LS32 (porta OR)

    74LS00 74LS32 74LS08

    Prof. Daniel A. Furtado

  • Suficincia das Portas NAND e NOR

    Opo 2: Tentar simplificar o circuito utilizando apenas portas NAND:

    Prof. Daniel A. Furtado

  • Suficincia das Portas NAND e NOR Circuito equivalente aps substituio das portas AND e OR por portas NAND:

    Aps eliminao das duplas inverses:

    Prof. Daniel A. Furtado

  • Suficincia das Portas NAND e NOR Assim, o circuito equivalente expresso lgica = + que utiliza

    apenas portas NAND poderia ser implementado utilizando apenas um CI 74LS00, ao invs de dois CIs diferentes, como na primeira proposta.

    Prof. Daniel A. Furtado

    74LS00

  • Referncias

    TOCCI, R. J.; WIDMER, N. S.; MOSS, G. L. Sistemas Digitais: princpios e aplicaes. 11.ed. So Paulo: Pearson Prentice Hall, 2011.

    Leitura recomendada: Pginas 49-75.

    Prof. Daniel A. Furtado